SPRPE11000_MailSMS발송.xrw 25 KB

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