messageCopyEdit.jsp 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. <%@page language="java" pageEncoding="UTF-8"%>
  2. <%@include file="/commons/include/html_doctype.html"%>
  3. <html>
  4. <head>
  5. <%@include file="/commons/include/form.jsp" %>
  6. <title>提醒消息设置</title>
  7. <script type="text/javascript" src="${ctx}/servlet/ValidJs?form=message"></script>
  8. <script type="text/javascript" src="${ctx}/js/ckeditor/ckeditor.js"></script>
  9. <script type="text/javascript" src="${ctx}/js/ckeditor/ckeditor_remind.js"></script>
  10. <script type="text/javascript" src="${ctx}/js/hotent/platform/system/TemplateDialog.js"></script>
  11. <script type="text/javascript">
  12. var _conditionId = '${conditionId}',
  13. _actDefId = '${actDefId}',
  14. _messageList = '${messageList}',
  15. _messageSetType = '${messageSetType}';
  16. $(function() {
  17. $("input.send_type").change(function(){
  18. var name = $(this).attr("name"),
  19. state = $(this).attr("checked");
  20. if(state)
  21. $("#"+name+"-tr").show();
  22. else
  23. $("#"+name+"-tr").hide();
  24. });
  25. initMessage();
  26. });
  27. //初始化提醒消息设置
  28. function initMessage(){
  29. if(_messageList.trim()==""){
  30. callCkeditor();
  31. return;
  32. }
  33. var messageArr = eval("("+_messageList+")");
  34. for(var i=0,c;c=messageArr[i++];){
  35. var name = getMessageName(c.messageType),
  36. tr = $("#"+name+"-tr");
  37. //解码
  38. var content = c.content.jsonUnescape();
  39. $("input=[name='"+name+"']").attr("checked","checked").attr("msgid",c.messageId).trigger("change");
  40. $("input[name='subject']",tr).val(c.subject),
  41. $("textarea.message-content",tr).val(content);
  42. }
  43. callCkeditor();
  44. };
  45. function callCkeditor(){
  46. ckeditor('mailContent');
  47. ckeditor('innerContent');
  48. };
  49. //选择模板
  50. function slectTemplate(txtId,isText){
  51. var objcondExpCode=document.getElementById(txtId);
  52. TemplateDialog({isText:isText,callback:function(content){
  53. if(isText)
  54. jQuery.insertText(objcondExpCode,content);
  55. else{
  56. CKEDITOR.instances[txtId].setData(content);
  57. }
  58. }});
  59. };
  60. function getMessageType(s){
  61. return s=='mail'?1:s=='sms'?2:3;
  62. };
  63. function getMessageName(i){
  64. return i==1?'mail':i==2?'sms':'inner';
  65. };
  66. function validRequired(){
  67. var r = true;
  68. $("input.inputText").each(function(){
  69. var v = $(this).is(":hidden"),
  70. val = $(this).val();
  71. if(!v&&!val)
  72. r =false;
  73. });
  74. return r;
  75. };
  76. function save(){
  77. if(!validRequired()){
  78. $.ligerDialog.warn('请填写邮件或站内信的标题!','提示');
  79. return;
  80. }
  81. //从编辑器中获取数据 放到textarea中
  82. $("textarea.message-content").each(function(){
  83. if(!CKEDITOR.instances[$(this).attr('name')])return true;
  84. var data = CKEDITOR.instances[$(this).attr('name')].getData();
  85. $(this).val(data);
  86. });
  87. var json = [];
  88. if(!_actDefId){
  89. $.ligerDialog.warn('未获取流程定义的相关信息!','提示');
  90. return;
  91. }
  92. $("input.send_type").each(function(){
  93. var me = $(this),
  94. state = me.attr("checked");
  95. if(!state)return true;
  96. var name = me.attr("name"),
  97. tr = $("#"+name+"-tr"),
  98. val = me.attr("msgid"),
  99. jObject = {};
  100. if(!val)val = 0;
  101. var subject = $("input[name='subject']",tr).val(),
  102. content = $("textarea.message-content",tr).val();
  103. //转码
  104. content = content.jsonEscape();
  105. jObject.messageId = val;
  106. jObject.subject = subject;
  107. jObject.content = content;
  108. jObject.messageType = getMessageType(name);
  109. json.push(jObject);
  110. });
  111. json = JSON2.stringify(json);
  112. var url = __ctx + '/platform/system/message/saveCopyMessage.ht';
  113. $.post(url,{data:json,actDefId:_actDefId,conditionId:_conditionId,messageSetType:_messageSetType},function(d){
  114. var r = eval("("+d+")");
  115. if(r.result){
  116. $.ligerDialog.success(r.message,'提示',function(){
  117. window.opener.location.reload();
  118. window.close();
  119. });
  120. }
  121. else
  122. $.ligerDialog.err("提示信息","提醒消息保存失败!",r.message);
  123. });
  124. };
  125. </script>
  126. </head>
  127. <body>
  128. <div class="panel">
  129. <div class="panel-top">
  130. <div class="tbar-title">
  131. <span class="tbar-label">提醒消息设置</span>
  132. </div>
  133. <div class="panel-toolbar">
  134. <div class="toolBar">
  135. <div class="group"><a class="link save" onclick="save()" href="javascript:;">保存</a></div>
  136. <div class="l-bar-separator"></div>
  137. <div class="group"><a class="link close" href="javascript:;" onclick="window.close()">关闭</a></div>
  138. </div>
  139. </div>
  140. </div>
  141. <div class="panel-body">
  142. <table class="table-detail" cellpadding="0" cellspacing="0" border="0">
  143. <tr>
  144. <th width="20%" nowrap="nowarp">消息类型: </th>
  145. <td>
  146. <label><input class="send_type" name="inner" type="checkbox" />站内消息</label>
  147. <label><input class="send_type" name="mail" type="checkbox" />邮件</label>
  148. <label><input class="send_type" name="sms" type="checkbox" />短信</label>
  149. </td>
  150. </tr>
  151. <tr id="inner-tr" class="hidden">
  152. <th width="20%" nowrap="nowarp">站内消息: </th>
  153. <td>
  154. <input type="text" name="subject" value="${sysTemplate.title}" class="inputText" style="width:325px !important;margin:8px 0 18px 0;"/>
  155. <div>
  156. <a href="javascript:;" class="link var" title="选择模板" onclick="slectTemplate('innerContent',false)">选择模板</a>
  157. </div>
  158. <textarea id="innerContent" class="message-content" name="innerContent" rows="5" cols="50">${sysTemplate.innerContent}</textarea>
  159. </td>
  160. </tr>
  161. <tr id="mail-tr" class="hidden">
  162. <th width="20%" nowrap="nowarp">邮件内容: </th>
  163. <td>
  164. <input type="text" name="subject" value="${sysTemplate.title}" class="inputText" style="width:325px !important;margin:8px 0 18px 0;"/>
  165. <div>
  166. <a href="javascript:;" class="link var" title="选择模板" onclick="slectTemplate('mailContent',false)">选择模板</a>
  167. </div>
  168. <textarea id="mailContent" class="message-content" name="mailContent" rows="5" cols="50">${sysTemplate.mailContent}</textarea>
  169. </td>
  170. </tr>
  171. <tr id="sms-tr" class="hidden">
  172. <th width="20%">手机短信: </th>
  173. <td>
  174. <div>
  175. <a href="javascript:;" class="link var" title="选择模板" onclick="slectTemplate('smsContent',true)">选择模板</a>
  176. </div>
  177. <textarea id="smsContent" class="message-content" rows="5" cols="50">${sysTemplate.smsContent}</textarea>
  178. </td>
  179. </tr>
  180. </table>
  181. </div>
  182. </div>
  183. </body>
  184. </html>