editoneimagetext.jsp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  4. <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  5. <%
  6. String path = request.getContextPath();
  7. String basePath = path + "/common/";
  8. %>
  9. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  10. <html>
  11. <head>
  12. <meta charset="utf-8">
  13. <meta name="renderer" content="webkit|ie-comp|ie-stand">
  14. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  15. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
  16. <meta http-equiv="Cache-Control" content="no-siteapp" />
  17. <LINK rel="Bookmark" href="/favicon.ico" >
  18. <LINK rel="Shortcut Icon" href="/favicon.ico" />
  19. <!--[if lt IE 9]>
  20. <script type="text/javascript" src="lib/html5.js"></script>
  21. <script type="text/javascript" src="lib/respond.min.js"></script>
  22. <script type="text/javascript" src="lib/PIE_IE678.js"></script>
  23. <![endif]-->
  24. <link href="<%=basePath %>admin/css/H-ui.min.css" rel="stylesheet" type="text/css" />
  25. <link href="<%=basePath %>admin/css/H-ui.admin.css" rel="stylesheet" type="text/css" />
  26. <link href="<%=basePath %>admin/css/style.css" rel="stylesheet" type="text/css" />
  27. <link href="<%=basePath %>admin/lib/Hui-iconfont/1.0.1/iconfont.css" rel="stylesheet" type="text/css" />
  28. <!--[if IE 6]>
  29. <script type="text/javascript" src="http://lib.h-ui.net/DD_belatedPNG_0.0.8a-min.js" ></script>
  30. <script>DD_belatedPNG.fix('*');</script>
  31. <![endif]-->
  32. <title>单图文编辑</title>
  33. <style type="text/css">
  34. .matext{font-size: 16px; color: #0088CC; font-weight: bold;}
  35. .maimg{width: 100%; height: 150px;}
  36. </style>
  37. </head>
  38. <body>
  39. <nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页 <span class="c-gray en">&gt;</span> 微信管理 <span class="c-gray en">&gt;</span> 单图文编辑 <a class="btn btn-success radius r mr-20" style="line-height:1.6em;margin-top:3px" href="javascript:location.replace(location.href);" title="刷新" ><i class="Hui-iconfont">&#xe68f;</i></a></nav>
  40. <div class="pd-20" align="center">
  41. <div class="text-c bk-gray radius box-shadow" style="width: 800px;">
  42. <div class="text-l bk-gray radius pd-5 f-16 c-black" style="background-color: #E8F5FF; font-weight: bold;">&nbsp;修改单图文</div>
  43. <div class="text-c radius pt-10 pb-10" style="float: inherit;padding-left: 2%; padding-right: 2%;">
  44. <!-- 显示在左侧的素材 -->
  45. <div class="text-c f-l mt-10" style="width: 375px;background-color: #F8F8F8;">
  46. <!-- 一个图文素材 -->
  47. <div class="text-c bk-gray radius box-shadow">
  48. <div class="text-l pl-10 pt-10 pr-10">
  49. <span class="matext" id="oneImageTextTitleEG">${imageTextInfo.title }</span>
  50. <p><fmt:formatDate value="${imageTextInfo.createTime }" pattern="yyyy-MM-dd"/></p>
  51. </div>
  52. <div class="text-c pl-10 pb-10 pr-10">
  53. <img id="imageReturn" src="${imageTextInfo.imageUrl }" alt="图片" class="maimg">
  54. </div>
  55. </div>
  56. </div>
  57. <!-- 显示在右侧的素材 -->
  58. <div class="text-c f-r mt-10" style="width: 375px; background-color: #F8F8F8;">
  59. <form action="${pageContext.request.contextPath }/admin/wx/addOrUpdateOneImageText/${operationType}/${token}" method="post" id="myForm">
  60. <input type="hidden" name="updateImageTextId" id="updateImageTextId" value="${imageTextInfo.imageTextMD5 }">
  61. <!-- 一个图文素材 -->
  62. <div class="text-c bk-gray radius box-shadow">
  63. <div class="text-l pl-10 pt-10 pr-10">
  64. <span class="f-16">标题<font style="color: red;">*</font><font style="font-size: 13px;">(必填,不能超过64个字)</font></span>
  65. <p><input type="text" value="${imageTextInfo.title }" id="oneImageTextTitle" name="oneImageTextTitle" class="input-text radius size-M"/></p>
  66. </div>
  67. <div class="text-l pl-10 pt-5 pr-10">
  68. <span class="f-16">封面<font style="color: red;">*</font><font style="font-size: 13px;">(必须上传一张图片, 大图片建议尺寸:360像素 * 200像素)</font></span>
  69. <p style="width: 300px;">
  70. <span class="btn-upload form-group" style="width: 300px;">
  71. <input class="input-text upload-url radius" style="width: 180px;" value="${imageTextInfo.imageUrl }" type="text" name="oneImageTextImage" id="imageUrl" readonly><a href="javascript:void();" class="btn btn-primary radius"><i class="Hui-iconfont" >&#xe642;</i> 浏览图片</a>
  72. <input type="button" name="" id="image1" style="width: 180px;" class="input-file">
  73. </span>
  74. </p>
  75. </div>
  76. <div class="text-l pl-10 pt-5 pr-10">
  77. <c:if test="${empty imageTextInfo.digest }">
  78. <span class="f-16" id="addsummary"><a href="javascript:void();" style="color:#0088CC; text-decoration: none;">添加摘要</a></span>
  79. <p id="addsummary1" style="display: none;"><textarea rows='3' cols='30' id='oneImageTextsummary' name='oneImageTextsummary' style='width:100%;'></textarea></p>
  80. </c:if>
  81. <c:if test="${!empty imageTextInfo.digest }">
  82. <span class="f-16" id="addsummary">摘要 (不能超过120个字)</span>
  83. <p><textarea rows='3' cols='30' id='oneImageTextsummary' name='oneImageTextsummary' style='width:100%;'>${imageTextInfo.digest }</textarea></p>
  84. </c:if>
  85. </div>
  86. <div class="text-l pl-10 pt-10 pr-10">
  87. <span class="f-16">正文<font style="color: red;">*</font><font style="font-size: 13px;">(必填,不能超过10000个字符)</font></span>
  88. <p><textarea rows='10' cols='30' name="oneImageTextMainText" id="oneImageTextMainText" style='width:100%;'>${imageTextInfo.mainText }</textarea></p>
  89. </div>
  90. <div class="text-l pl-10 pt-5 pr-10">
  91. <c:if test="${empty imageTextInfo.clickOutUrl }">
  92. <span class="f-16" id="outlink"><a href="javascript:void();" style="color:#0088CC; text-decoration: none;">添加外链接</a></span>
  93. <p id="outlink1" style="display: none;"><input type='text' id="externalLlink" name='externalLlink' class='input-text radius size-M'/></p>
  94. </c:if>
  95. <c:if test="${!empty imageTextInfo.clickOutUrl }">
  96. <span class="f-16" id="outlink"><span class='f-16'>外链接地址<br/><font style='font-size: 13px;'>(设置后,点击图文消息,不会进入图文详情,而进入外链所设地址)</font></span></span>
  97. <p><input type='text' value="${imageTextInfo.clickOutUrl }" id="externalLlink" name='externalLlink' class='input-text radius size-M'/></p>
  98. </c:if>
  99. </div>
  100. <div class="text-l pl-10 pt-5 pr-10">
  101. <c:if test="${empty imageTextInfo.sourceUrl }">
  102. <span class="f-16" id="originallink"><a href="javascript:void();" style="color:#0088CC; text-decoration: none;">添加原文链接</a></span>
  103. <p id="originallink1" style="display: none;"><input type='text' name='originalLink' id="originalLink" class='input-text radius size-M'/></p>
  104. </c:if>
  105. <c:if test="${!empty imageTextInfo.sourceUrl }">
  106. <span class="f-16" id="originallink"><span class='f-16'>原文链接<font style='font-size: 13px;'>(在图文详情页面中会生成“阅读原文”链接)</font></span></span>
  107. <p><input type='text' value="${imageTextInfo.sourceUrl }" name='originalLink' id="originalLink" class='input-text radius size-M'/></p>
  108. </c:if>
  109. </div>
  110. <div class="text-l pl-10 pt-20 pr-10 pb-20">
  111. <input class="btn btn-success radius" type="button" id="submitForm" value="保存">&nbsp;&nbsp;&nbsp;
  112. <input class="btn disabled radius" type="button" value="取消">
  113. </div>
  114. </div>
  115. </div>
  116. </form>
  117. </div>
  118. </div>
  119. </div>
  120. <script type="text/javascript" src="<%=basePath %>admin/lib/jquery/1.9.1/jquery.min.js"></script>
  121. <script type="text/javascript" src="<%=basePath %>admin/lib/Validform/5.3.2/Validform.min.js"></script>
  122. <script type="text/javascript" src="<%=basePath %>admin/lib/layer/1.9.3/layer.js"></script>
  123. <script type="text/javascript" src="<%=basePath %>admin/js/H-ui.js"></script>
  124. <script type="text/javascript" src="<%=basePath %>admin/js/H-ui.admin.js"></script>
  125. <script charset="utf-8" src="<%=basePath %>other/kingedit/kindeditor-min.js"></script>
  126. <script charset="utf-8" src="<%=basePath %>other/kingedit/lang/zh_CN.js"></script>
  127. <script type="text/javascript">
  128. $(function() {
  129. //表单提交
  130. $("#submitForm").click(function() {
  131. var id = $("#updateImageTextId").val();
  132. var title = $("#oneImageTextTitle").val();
  133. var summary = $("#oneImageTextsummary").val();
  134. var imageUrl = $("#imageUrl").val();
  135. var mainText = $("#oneImageTextMainText").val();
  136. var externalLlink = $("#externalLlink").val();
  137. var originalLink = $("#originalLink").val();
  138. if(title.length > 64 ||title.length < 1) {
  139. layer.msg('标题长度在1至64个字符长度!',{icon:1,time:2000});
  140. } else if(imageUrl.length == 0) {
  141. layer.msg('请上传封面图片',{icon:1,time:2000});
  142. } else if(mainText == "" && externalLlink == "") {
  143. layer.msg('正文和外链接至少填写一个',{icon:1,time:2000});
  144. } else {
  145. var url = $("#myForm").attr("action");
  146. var json = {
  147. "imageTextMD5":id,
  148. "title":title,
  149. "imageUrl":imageUrl,
  150. "digest":summary,
  151. "mainText":mainText,
  152. "clickOutUrl":externalLlink,
  153. "sourceUrl":originalLink
  154. };
  155. $.post(url, json, function(result) {
  156. if(result.msg == 'success') {
  157. layer.msg('修改成功!',{icon:1,time:2000});
  158. location.href = "<%= path %>/admin/wx/showMaterialList";
  159. } else {
  160. layer.msg(result.msg,{icon:5,time:2000});
  161. }
  162. })
  163. }
  164. });
  165. //点击内容摘要,显示内容摘要的文本框
  166. $("#addsummary").click(function() {
  167. $("#addsummary").html("摘要 (不能超过120个字)");
  168. $("#addsummary1").css("display", "block");
  169. });
  170. //点击添加外链接
  171. $("#outlink").click(function() {
  172. $("#outlink").html("<span class='f-16'>外链接地址<br/><font style='font-size: 13px;'>(设置后,点击图文消息,不会进入图文详情,而进入外链所设地址)</font></span>");
  173. $("#outlink1").css("display", "block");
  174. });
  175. //点击添加原文链接
  176. $("#originallink").click(function() {
  177. $("#originallink").html("<span class='f-16'>原文链接<font style='font-size: 13px;'>(在图文详情页面中会生成“阅读原文”链接)</font></span>");
  178. $("#originallink1").css("display", "block");
  179. });
  180. //标题的实时监控
  181. $("#oneImageTextTitle").bind("input propertychange", function(){
  182. $("#oneImageTextTitleEG").html($("#oneImageTextTitle").val());
  183. });
  184. //标题失去焦点
  185. $("#oneImageTextTitle").blur(function() {
  186. if($("#oneImageTextTitle").val().length == 0 ) {
  187. $("#oneImageTextTitleEG").html("标题");
  188. } else if($("#oneImageTextTitle").val().length >= 64) {
  189. layer.msg('标题长度不能超过64个字符!',{icon: 5,time:2000});
  190. }
  191. });
  192. });
  193. </script>
  194. <script type="text/javascript">
  195. //初始化页面时
  196. $(document).ready(function() {
  197. if(${!empty msg}) {
  198. layer.msg('${msg}',{icon:1,time:2000});
  199. }
  200. });
  201. </script>
  202. <script type="text/javascript">
  203. KindEditor.ready(function(K) {
  204. window.editor = K.create('#oneImageTextMainText',{
  205. fileManagerJson : '<%= path %>/common/other/kingedit/jsp/file_manager_json.jsp',
  206. uploadJson : '<%= path %>/common/other/kingedit/jsp/upload_json.jsp',
  207. allowFileManager : true,
  208. afterBlur: function(){this.sync();},
  209. items : ['fullscreen', 'formatblock', 'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold',
  210. 'italic', 'underline', 'strikethrough', 'lineheight', 'removeformat', '|', 'image',
  211. 'emoticons','insertorderedlist', 'insertunorderedlist']
  212. });
  213. });
  214. //配置上传插件
  215. KindEditor.ready(function(K) {
  216. var editor = K.editor({
  217. fileManagerJson : '<%= path %>/common/other/kingedit/jsp/file_manager_json.jsp',
  218. uploadJson : '<%= path %>/common/other/kingedit/jsp/upload_json.jsp',
  219. allowFileManager : true
  220. });
  221. K('#image1').click(function() {
  222. editor.loadPlugin('image', function() {
  223. editor.plugin.imageDialog({
  224. imageUrl : K('#imageUrl').val(),
  225. clickFn : function(url, title, width, height, border, align) {
  226. K('#imageUrl').val(url);
  227. //将图片回显到左侧的样板上
  228. $("#imageReturn").attr("src", url);
  229. editor.hideDialog();
  230. }
  231. });
  232. });
  233. });
  234. });
  235. </script>
  236. </body>
  237. </html>