xSPRPE11000_MailSMS발송.xrw 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>SPRPE11000_MailSMS발송</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <emaillist/>
  11. <smslist/>
  12. </main>
  13. <send>
  14. <messagegbn/>
  15. <email>
  16. <fromaddress/>
  17. <fromname/>
  18. <toaddress/>
  19. <ccaddress/>
  20. <subject/>
  21. <mailmsg/>
  22. </email>
  23. <recvrlist>
  24. </recvrlist>
  25. <replytelno/>
  26. <msgcnts/>
  27. <rsrvyn>0</rsrvyn>
  28. <bizabbr>mis</bizabbr>
  29. <passyn/>
  30. </send>
  31. <init>
  32. </init>
  33. <hidden>
  34. <bytecnt>0</bytecnt>
  35. </hidden>
  36. <temp>
  37. <req>
  38. <instcd/>
  39. <prfshipflag/>
  40. <apntfromdd/>
  41. <apnttodd/>
  42. <appjobkindcd/>
  43. <recufildcd/>
  44. <hopedeptcd/>
  45. <apntinfono/>
  46. </req>
  47. </temp>
  48. <gender>
  49. <label>남</label>
  50. <value>M</value>
  51. <label>여</label>
  52. <value>F</value>
  53. </gender>
  54. <passyn>
  55. <label>합격</label>
  56. <value>Y</value>
  57. <label>불합격</label>
  58. <value>N</value>
  59. </passyn>
  60. </root>
  61. </instance>
  62. <submission id="TRRPE11001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp/req" resultref="/root/main"/>
  63. <submission id="TXRPE11001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/hidden"/>
  64. <submission id="TXRPE11002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/email" resultref="/root/hidden"/>
  65. </model>
  66. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  67. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  68. <script type="javascript" src="../../../com/emailsenderweb/js/ZME001.js"/>
  69. <script type="javascript" src="../../../com/shortmsgweb/js/ZMS00100.js"/>
  70. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  71. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  72. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  73. <script type="javascript" ev:event="xforms-ready">
  74. <![CDATA[
  75. fInit();
  76. ]]>
  77. </script>
  78. <script type="javascript">
  79. <![CDATA[
  80. function fInit() {
  81. model.removenode("/root/main/emaillist");
  82. model.removenode("/root/main/smslist");
  83. model.toggle("case1");
  84. submit("TRRPE11001");
  85. model.refresh();
  86. }
  87. function fChangeName() {
  88. }
  89. ]]>
  90. </script>
  91. </xhtml:head>
  92. <xhtml:body scroll="auto" pagewidth="1000" pageheight="600">
  93. <caption id="caption2" class="tit_1" style="left:0px; top:5px; width:217px; height:13px; vertical-align:middle; ">Mail/SMS 발송</caption>
  94. <group id="group1" style="left:0px; top:18px; width:950px; height:547px; ">
  95. <button id="btn_sms" class="btn_sw" group="tab" selected="true" style="left:0px; top:2px; width:100px; height:22px; ">
  96. <caption>SMS 전송</caption>
  97. <script type="javascript" ev:event="DOMActivate">
  98. <![CDATA[
  99. model.setValue("/root/send/messagegbn", "S");
  100. model.toggle("case1");
  101. model.makeNode("/root/hidden/bytecnt");
  102. model.setValue("/root/hidden/bytecnt",ipt_contents.currentText.getByteLength());
  103. model.refresh();
  104. ]]>
  105. </script>
  106. </button>
  107. <button id="btn_email" class="btn_sw" group="tab" style="left:100px; top:2px; width:100px; height:22px; ">
  108. <caption>E-mail 전송</caption>
  109. <script type="javascript" ev:event="DOMActivate">
  110. <![CDATA[
  111. model.setValue("/root/send/messagegbn", "M");
  112. model.toggle("case2");
  113. model.refresh();
  114. ]]>
  115. </script>
  116. </button>
  117. <switch id="switch1" style="left:0px; top:24px; width:945px; height:516px; ">
  118. <case id="case1">
  119. <group id="group2" style="left:0px; top:2px; width:935px; height:508px; ">
  120. <button id="btn_cancelall" class="btn2_letter4" style="left:798px; top:49px; width:64px; height:19px; ">
  121. <caption>전체취소</caption>
  122. <script type="javascript" ev:event="DOMActivate">
  123. <![CDATA[
  124. for (var i = grd_smslist.fixedRows; i < grd_smslist.rows; i++ ) {
  125. grd_smslist.valueMatrix(i, grd_smslist.colRef("sendyn")) = 'N';
  126. }
  127. grd_smslist.clearStatus();
  128. ]]>
  129. </script>
  130. </button>
  131. <caption id="caption1" class="tit_2" style="left:0px; top:55px; width:122px; height:13px; ">지원자 명단</caption>
  132. <caption id="caption11" class="tit_2" style="left:0px; top:0px; width:122px; height:13px; ">SMS 메시지 설정</caption>
  133. <button id="button9" class="btn5_letter4" style="left:866px; top:49px; width:64px; height:19px; ">
  134. <caption>문자발송</caption>
  135. <script type="javascript" ev:event="DOMActivate">
  136. <![CDATA[
  137. var sCheckFlag = false;
  138. var sendmessage = ipt_contents.value;
  139. for (var i = grd_smslist.fixedRows; i < grd_smslist.rows; i++ ) {
  140. if( grd_smslist.valueMatrix(i, grd_smslist.colRef("sendyn")) == 'Y') {
  141. var korname = grd_smslist.valueMatrix(i,grd_smslist.colRef("korname"));
  142. var sendmessage1=sendmessage.replace("{name}",korname);
  143. grd_smslist.valueMatrix(i, grd_smslist.colRef("msg")) = sendmessage1;
  144. sCheckFlag = true;
  145. }
  146. }
  147. if(!sCheckFlag) {
  148. messageBox("문자 받을 사람을 ","C002");
  149. return;
  150. }
  151. if(!isRequiredControls("ipt_contents","ipt_replytelno")) return;
  152. if(ipt_replytelno.value < 9) {
  153. messageBox("발신자 번호는 9자리이상을 ", "C001");
  154. model.setFocus("ipt_replytelno");
  155. return;
  156. }
  157. model.setValue("/root/send/recvrlist",grd_smslist.getUpdateData());
  158. model.setValue("/root/send/messagegbn","S");
  159. model.refresh();
  160. if( submit("TXRPE11001") ) {
  161. messageBox(model.getValue("/root/hidden/msg/contents"), "I999");
  162. grd_smslist.clearStatus();
  163. btn_cancelall.dispatch("DOMActivate");
  164. }
  165. model.makeNode("/root/hidden/bytecnt");
  166. model.setValue("/root/hidden/bytecnt",ipt_contents.currentText.getByteLength());
  167. model.refresh();
  168. ]]>
  169. </script>
  170. </button>
  171. <line id="line2" class="line_1" style="x1:1px; y1:14px; x2:931px; y2:15px; "/>
  172. <line id="line3" class="line_1" style="x1:0px; y1:70px; x2:930px; y2:71px; "/>
  173. <caption id="cap_bytes" style="left:635px; top:19px; width:65px; height:19px; ">/80 bytes</caption>
  174. <button id="btn_selectall" class="btn2_letter4" style="left:733px; top:49px; width:64px; height:19px; ">
  175. <caption>전체선택</caption>
  176. <script type="javascript" ev:event="DOMActivate">
  177. <![CDATA[
  178. for (var i = grd_smslist.fixedRows; i < grd_smslist.rows; i++ ) {
  179. grd_smslist.valueMatrix(i, grd_smslist.colRef("sendyn")) = 'Y';
  180. grd_smslist.addStatus(i, "update");
  181. }
  182. ]]>
  183. </script>
  184. </button>
  185. <datagrid id="grd_smslist" nodeset="/root/main/smslist" caption="채용번호^제목^차수^수험번호^이름^성별^생년월일^합격여부^선택^핸드폰 번호^메세지내용" colsep="^" colwidth="60, 280, 40, 80, 80, 50, 100, 85, 40, 100, 100" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:74px; width:930px; height:428px; ">
  186. <col ref="apntinfono" style="text-align:center; "/>
  187. <col ref="titl"/>
  188. <col ref="scrngdg" style="text-align:center; "/>
  189. <col ref="examno" style="text-align:center; "/>
  190. <col ref="korname" style="text-align:center; "/>
  191. <col disabled="true" ref="gndr" type="combo" style="text-align:center; ">
  192. <choices>
  193. <itemset nodeset="/root/gender">
  194. <label ref="label"/>
  195. <value ref="value"/>
  196. </itemset>
  197. </choices>
  198. </col>
  199. <col disabled="true" ref="rregno" format="yy-mm-dd" style="text-align:center; "/>
  200. <col disabled="true" ref="passyn" type="combo" style="text-align:center; ">
  201. <choices>
  202. <itemset nodeset="/root/passyn">
  203. <label ref="label"/>
  204. <value ref="value"/>
  205. </itemset>
  206. </choices>
  207. </col>
  208. <col checkvalue="Y,N" ref="sendyn" type="checkbox"/>
  209. <col ref="phonno" type="input"/>
  210. <col ref="msg" visibility="hidden"/>
  211. <script type="javascript" ev:event="xforms-value-changed">
  212. <![CDATA[
  213. var row = grd_smslist.row;
  214. if( grd_smslist.colRef("phonno") == grd_smslist.col ) {
  215. if(grd_smslist.rowStatus(row) == '2') {
  216. ;
  217. }
  218. else {
  219. grd_smslist.removeStatus(row,"update");
  220. }
  221. }
  222. else if ( grd_smslist.colRef("sendyn") == grd_smslist.col ) {
  223. if( grd_smslist.valueMatrix(grd_smslist.row, grd_smslist.colRef("sendyn")) == 'N' ) {
  224. grd_smslist.removeStatus(grd_smslist.row,"update");
  225. }
  226. }
  227. for (var i = grd_smslist.fixedRows; i < grd_smslist.rows; i++ ) {
  228. if( grd_smslist.valueMatrix(i, grd_smslist.colRef("sendyn")) == 'N') {
  229. grd_smslist.removeStatus(i,"update");
  230. }
  231. }
  232. ]]>
  233. </script>
  234. </datagrid>
  235. <output id="opt_bytes" ref="/root/hidden/bytecnt" style="left:605px; top:19px; width:29px; height:19px; text-align:right; "/>
  236. <line id="line31" class="line_3" style="x1:0px; y1:40px; x2:932px; y2:40px; "/>
  237. <input id="ipt_contents" ref="/root/send/msgcnts" appearance="input" style="left:97px; top:19px; width:503px; height:19px; ">
  238. <script type="javascript" ev:event="onkeyup">
  239. <![CDATA[
  240. var opt_bytesValue = ipt_contents.currentText.getByteLength();
  241. var contents = ipt_contents.currentText;
  242. if (parseInt(opt_bytesValue) > 80)
  243. {
  244. messageBox("단문메시지는 80bytes 를 넘을 수 없습니다.", "I999");
  245. model.setValue("/root/send/msgcnts",contents.cut(80));
  246. ipt_contents.refresh();
  247. opt_bytesValue = ipt_contents.currentText.getByteLength(); // 글씨가 잘리고 나서의 byte를 보여주기 위해..
  248. }
  249. model.setValue("/root/hidden/bytecnt", opt_bytesValue);
  250. opt_bytes.refresh();
  251. ]]>
  252. </script>
  253. </input>
  254. <caption id="cap_replytelno" class="cell_1" style="left:700px; top:18px; width:95px; height:23px; text-align:center; vertical-align:middle; ">발신자 번호</caption>
  255. <input id="ipt_replytelno" ref="/root/send/replytelno" maxlength="11" format="99999999999" style="left:798px; top:19px; width:130px; height:19px; "/>
  256. <caption id="cap_contents" class="cell_1" style="left:0px; top:18px; width:95px; height:23px; text-align:center; vertical-align:middle; ">메시지 설정</caption>
  257. <caption id="caption17" visibility="hidden" style="left:95px; top:43px; width:350px; height:15px; ">"{name}" 을 입력하시면 이름을 일괄적으로 넣을수 있습니다.</caption>
  258. <select1 id="rdo_passyn" ref="/root/send/passyn" overflow="visible" appearance="full" cellspacing="15" cols="2" style="left:605px; top:49px; width:125px; height:20px; border-style:none; ">
  259. <choices>
  260. <itemset nodeset="/root/passyn">
  261. <label ref="label"/>
  262. <value ref="value"/>
  263. </itemset>
  264. </choices>
  265. <script type="javascript" ev:event="onclick">
  266. <![CDATA[
  267. var passyn = rdo_passyn.value;
  268. if( passyn == 'Y' ) {
  269. grd_smslist.clearStatus();
  270. for(var idx = grd_smslist.fixedRows; idx <= grd_smslist.rows; idx++ ) {
  271. if( grd_smslist.valueMatrix(idx, grd_smslist.colRef("passyn") ) == 'Y' ) {
  272. grd_smslist.valueMatrix(idx, grd_smslist.colRef("sendyn") ) = 'Y';
  273. grd_smslist.rowStatus(idx) = '2';
  274. }
  275. else {
  276. grd_smslist.valueMatrix(idx, grd_smslist.colRef("sendyn") ) = 'N';
  277. grd_smslist.removeStatus(idx, "update") ;
  278. }
  279. }
  280. }
  281. else {
  282. grd_smslist.clearStatus();
  283. for(var idx = grd_smslist.fixedRows; idx <= grd_smslist.rows; idx++ ) {
  284. if( grd_smslist.valueMatrix(idx, grd_smslist.colRef("passyn") ) == 'N' ) {
  285. grd_smslist.valueMatrix(idx, grd_smslist.colRef("sendyn") ) = 'Y';
  286. grd_smslist.rowStatus(idx) = '2';
  287. }
  288. else {
  289. grd_smslist.valueMatrix(idx, grd_smslist.colRef("sendyn") ) = 'N';
  290. grd_smslist.removeStatus(idx, "update") ;
  291. }
  292. }
  293. }
  294. model.refresh();
  295. ]]>
  296. </script>
  297. </select1>
  298. </group>
  299. </case>
  300. <case id="case2" selected="true">
  301. <group id="group3" style="left:0px; top:2px; width:940px; height:508px; ">
  302. <button id="button1" class="btn2_letter4" style="left:415px; top:3px; width:64px; height:19px; ">
  303. <caption>전체취소</caption>
  304. <script type="javascript" ev:event="DOMActivate">
  305. <![CDATA[
  306. for (var i = grd_emaillist.fixedRows; i < grd_emaillist.rows; i++ ) {
  307. grd_emaillist.valueMatrix(i, grd_emaillist.colRef("sendyn")) = 'N';
  308. grd_emaillist.valueMatrix(i, grd_emaillist.colRef("send")) = 'N';
  309. }
  310. grd_emaillist.clearStatus();
  311. rdo_mailpassyn.value = "A";
  312. model.refresh();
  313. ]]>
  314. </script>
  315. </button>
  316. <caption id="caption3" class="tit_2" style="left:0px; top:9px; width:122px; height:13px; ">지원자 명단</caption>
  317. <button id="button2" class="btn5_letter4" style="left:872px; top:3px; width:64px; height:19px; ">
  318. <caption>메일발송</caption>
  319. <script type="javascript" ev:event="DOMActivate">
  320. <![CDATA[
  321. if(!isRequiredControls("ipt_fromaddress", "ipt_fromname", "ipt_toaddress", "ipt_subject", "tar_mailmsg")) return;
  322. if (submit("TXRPE11002")) {
  323. messageBox(model.getValue("/root/hidden/msg/contents"), "I999");
  324. ipt_toaddress.value = "";
  325. for( var i = 1; i < grd_emaillist.rows; i++) {
  326. grd_emaillist.valueMatrix(i, grd_emaillist.colRef("sendyn")) = "N";
  327. grd_emaillist.removeStatus(i, "update");
  328. if( grd_emaillist.valueMatrix(i, grd_emaillist.colRef("send")) == 'C' ) {
  329. grd_emaillist.valueMatrix(i, grd_emaillist.colRef("send")) = 'Y';
  330. }
  331. }
  332. rdo_mailpassyn.value = "A";
  333. model.refresh();
  334. }
  335. ]]>
  336. </script>
  337. </button>
  338. <line id="line6" class="line_1" style="x1:0px; y1:24px; x2:529px; y2:25px; "/>
  339. <button id="btn_emailall" class="btn2_letter4" style="left:350px; top:3px; width:64px; height:19px; ">
  340. <caption>전체선택</caption>
  341. <script type="javascript" ev:event="DOMActivate">
  342. <![CDATA[
  343. for (var i = grd_emaillist.fixedRows; i < grd_emaillist.rows; i++ ) {
  344. grd_emaillist.valueMatrix(i, grd_emaillist.colRef("sendyn")) = 'Y';
  345. grd_emaillist.valueMatrix(i, grd_emaillist.colRef("send")) = 'C';
  346. grd_emaillist.addStatus(i, "update");
  347. }
  348. ]]>
  349. </script>
  350. </button>
  351. <datagrid id="grd_emaillist" nodeset="/root/main/emaillist" caption="채용번호^차수^수험번호^이름^성별^생년월일^합격여부^선택^이메일^발송여부" colsep="^" colwidth="60, 40, 60, 50, 40, 70, 60, 40, 200, 77" extendlastcol="l" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:28px; width:530px; height:475px; ">
  352. <col ref="apntinfono"/>
  353. <col ref="scrngdg"/>
  354. <col ref="examno"/>
  355. <col ref="korname"/>
  356. <col disabled="true" ref="gndr" type="combo">
  357. <choices>
  358. <itemset nodeset="/root/gender">
  359. <label ref="label"/>
  360. <value ref="value"/>
  361. </itemset>
  362. </choices>
  363. </col>
  364. <col ref="rregno" format="yy-mm-dd"/>
  365. <col disabled="true" ref="passyn" type="combo">
  366. <choices>
  367. <itemset nodeset="/root/passyn">
  368. <label ref="label"/>
  369. <value ref="value"/>
  370. </itemset>
  371. </choices>
  372. </col>
  373. <col checkvalue="Y,N" ref="sendyn" type="checkbox"/>
  374. <col ref="email" type="input"/>
  375. <col ref="send" visibility="hidden"/>
  376. <script type="javascript" ev:event="xforms-value-changed">
  377. <![CDATA[
  378. var row = grd_emaillist.row;
  379. if ( grd_emaillist.colRef("sendyn") == grd_emaillist.col ) {
  380. if( grd_emaillist.valueMatrix(grd_emaillist.row, grd_emaillist.colRef("sendyn")) == 'N' ) {
  381. grd_emaillist.removeStatus(grd_emaillist.row,"update");
  382. grd_emaillist.valueMatrix(grd_emaillist.row, grd_emaillist.colRef("send")) = "N";
  383. }
  384. else {
  385. grd_emaillist.addStatus(grd_emaillist.row,"update");
  386. grd_emaillist.valueMatrix(grd_emaillist.row, grd_emaillist.colRef("send")) = "C";
  387. }
  388. }
  389. for (var i = grd_emaillist.fixedRows; i < grd_emaillist.rows; i++ ) {
  390. if( grd_emaillist.valueMatrix(i, grd_emaillist.colRef("sendyn")) == 'N') {
  391. grd_emaillist.removeStatus(i,"update");
  392. }
  393. }
  394. ]]>
  395. </script>
  396. </datagrid>
  397. <input id="ipt_subject" ref="/root/send/email/subject" class="input_essential" style="left:600px; top:123px; width:337px; height:19px; "/>
  398. <caption id="cap_subject" class="cell_1" style="left:537px; top:122px; width:60px; height:23px; text-align:left; vertical-align:middle; ">제 목</caption>
  399. <caption id="cap_mailmsg" class="cell_1" style="left:537px; top:147px; width:60px; height:355px; text-align:left; vertical-align:middle; ">내 용</caption>
  400. <caption id="caption8" class="tit_2" style="left:539px; top:9px; width:196px; height:13px; ">E-Mail 내용</caption>
  401. <textarea id="tar_mailmsg" ref="/root/send/email/mailmsg" class="input_essential" style="left:600px; top:147px; width:337px; height:350px; "/>
  402. <line id="line5" class="line_1" style="x1:537px; y1:23px; x2:937px; y2:23px; "/>
  403. <line id="line7" class="line_3" style="x1:537px; y1:120px; x2:937px; y2:120px; "/>
  404. <line id="line8" class="line_3" style="x1:580px; y1:500px; x2:937px; y2:500px; "/>
  405. <button id="button4" class="btn2_letter3" style="left:810px; top:3px; width:53px; height:19px; ">
  406. <caption>초기화</caption>
  407. <script type="javascript" ev:event="DOMActivate">
  408. <![CDATA[
  409. model.removenode("/root/send/email");
  410. model.makeNode("/root/send/email/subject");
  411. model.makeNode("/root/send/email/fromaddress");
  412. model.makeNode("/root/send/email/fromname");
  413. model.makeNode("/root/send/email/toaddress");
  414. model.makeNode("/root/send/email/ccaddress");
  415. model.makeNode("/root/send/email/mailmsg");
  416. model.refresh();
  417. ]]>
  418. </script>
  419. </button>
  420. <line id="line9" class="line_2" style="x1:545px; y1:144px; x2:935px; y2:144px; "/>
  421. <input id="ipt_toaddress" ref="/root/send/email/toaddress" class="input_essential" disabled="true" navindex="2" style="left:600px; top:55px; width:337px; height:19px; "/>
  422. <input id="ipt_fromaddress" ref="/root/send/email/fromaddress" class="input_essential" navindex="1" style="left:600px; top:30px; width:189px; height:19px; "/>
  423. <line id="line24" class="line_2" style="x1:542px; y1:51px; x2:937px; y2:51px; "/>
  424. <caption id="cap_toaddress" class="cell_1" style="left:537px; top:54px; width:60px; height:23px; vertical-align:middle; ">받 는 이</caption>
  425. <caption id="caption7" class="hand" style="left:567px; top:103px; width:370px; height:15px; vertical-align:middle; ">수신자가 여러명일 경우 ";" 를 구분자로 하여 입력합니다.</caption>
  426. <input id="ipt_ccaddress" ref="/root/send/email/ccaddress" class="input_default" navindex="2" style="left:600px; top:79px; width:337px; height:19px; "/>
  427. <caption id="cap_fromaddress" class="cell_1" style="left:537px; top:29px; width:60px; height:23px; vertical-align:middle; ">보내는이</caption>
  428. <caption id="caption10" class="cell_1" style="left:537px; top:78px; width:60px; height:23px; vertical-align:middle; ">참 조</caption>
  429. <line id="line10" class="line_2" style="x1:542px; y1:76px; x2:937px; y2:76px; "/>
  430. <input id="ipt_fromname" ref="/root/send/email/fromname" class="input_essential" navindex="1" style="left:840px; top:30px; width:97px; height:19px; "/>
  431. <caption id="cap_fromname" class="cell_1" style="left:793px; top:29px; width:43px; height:23px; vertical-align:middle; ">이 름</caption>
  432. <line id="line11" class="line_2" style="x1:540px; y1:101px; x2:937px; y2:101px; "/>
  433. <button id="button5" class="btn5_letter2" style="left:488px; top:3px; width:42px; height:19px; ">
  434. <caption>추가</caption>
  435. <script type="javascript" ev:event="DOMActivate">
  436. <![CDATA[
  437. var sCheckFlag = false;
  438. for (var i = grd_emaillist.fixedRows; i < grd_emaillist.rows; i++ ) {
  439. if( grd_emaillist.valueMatrix(i, grd_emaillist.colRef("sendyn")) == 'Y')
  440. {
  441. sCheckFlag = true;
  442. }
  443. }
  444. if(!sCheckFlag)
  445. {
  446. messageBox("메일 받을 사람을 ","C002");
  447. return;
  448. }
  449. var toaddr = "";
  450. for (var i = grd_emaillist.fixedRows; i < grd_emaillist.rows; i++ ) {
  451. sendyn = grd_emaillist.valueMatrix(i, grd_emaillist.colRef("sendyn"));
  452. if(sendyn =='Y'){
  453. toaddr = toaddr + grd_emaillist.valueMatrix(i, grd_emaillist.colRef("email")) + ";" ;
  454. }
  455. }
  456. model.setValue("/root/send/email/toaddress", toaddr);
  457. model.refresh();
  458. ]]>
  459. </script>
  460. </button>
  461. <select1 id="rdo_mailpassyn" ref="/root/send/passyn" overflow="visible" appearance="full" cellspacing="15" cols="2" style="left:210px; top:5px; width:125px; height:20px; border-style:none; ">
  462. <choices>
  463. <itemset nodeset="/root/passyn">
  464. <label ref="label"/>
  465. <value ref="value"/>
  466. </itemset>
  467. </choices>
  468. <script type="javascript" ev:event="onclick">
  469. <![CDATA[
  470. var passyn = rdo_mailpassyn.value;
  471. var count = 0;
  472. if( passyn == 'Y' ) {
  473. grd_emaillist.clearStatus();
  474. for(var idx = grd_emaillist.fixedRows; idx <= grd_emaillist.rows; idx++ ) {
  475. if( grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("passyn") ) == 'Y'
  476. && grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) != 'Y'
  477. && count <= 49 ) {
  478. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("sendyn") ) = 'Y';
  479. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) = 'C';
  480. grd_emaillist.rowStatus(idx) = '2';
  481. count++;
  482. }
  483. else {
  484. if( grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) == 'Y' ) {
  485. ;
  486. }
  487. else {
  488. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("sendyn") ) = 'N';
  489. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) = 'N';
  490. grd_emaillist.removeStatus(idx, "update") ;
  491. }
  492. }
  493. }
  494. }
  495. else {
  496. grd_emaillist.clearStatus();
  497. for(var idx = grd_emaillist.fixedRows; idx <= grd_emaillist.rows; idx++ ) {
  498. if( grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("passyn") ) == 'N'
  499. && grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) != 'Y'
  500. && count <= 49 ) {
  501. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("sendyn") ) = 'Y';
  502. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) = 'C';
  503. grd_emaillist.rowStatus(idx) = '2';
  504. count++;
  505. }
  506. else {
  507. if( grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) == 'Y' ) {
  508. ;
  509. }
  510. else {
  511. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("sendyn") ) = 'N';
  512. grd_emaillist.valueMatrix(idx, grd_emaillist.colRef("send") ) = 'N';
  513. grd_emaillist.removeStatus(idx, "update") ;
  514. }
  515. }
  516. }
  517. }
  518. model.refresh();
  519. ]]>
  520. </script>
  521. </select1>
  522. </group>
  523. </case>
  524. </switch>
  525. </group>
  526. <line id="line1" class="line_1" style="x1:21px; y1:-36px; x2:761px; y2:-35px; "/>
  527. <line id="line4" class="line_1" style="x1:0px; y1:15px; x2:941px; y2:16px; "/>
  528. </xhtml:body>
  529. </xhtml:html>