publish_article.php 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. <style type="text/css">
  2. #tbox {
  3. display: none;
  4. }
  5. </style>
  6. <div class="cms-content mt10">
  7. <form id="add_form" method="post" action="index.php?act=publish&op=publish_article_save">
  8. <input id="save_type" name="save_type" type="hidden" value="draft" />
  9. <input id="article_id" name="article_id" type="hidden" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_id'];?>" />
  10. <div class="cms-publish-content" id="main-nav-holder">
  11. <div class="cms-publish-sidebar" id="main-nav">
  12. <div class="upload-btn"><a href="javascript:void(0);"><span>
  13. <input type="file" name="article_image_upload" id="article_image_upload" multiple="" file_id="0" style="width:120px; height: 40px; cursor: pointer; opacity:0; filter: alpha(opacity=0)" size="1" hidefocus="true" />
  14. </span>
  15. <div class="upload-button"><i></i><?php echo $lang['cms_image_upload'];?></div>
  16. <input id="submit_button" style="display:none" type="button" value="&nbsp;" onClick="submit_form($(this))" />
  17. </a></div>
  18. <div class="upload-images-box">
  19. <ul id="article_image_list2" class="article-image-list" style="position:relative;">
  20. <?php $article_image_all = unserialize($output['article_detail']['article_image_all']);?>
  21. </ul>
  22. <!-- <div id="btn_image_list_up" class="up-btn" title="<?php echo $lang['cms_text_up'];?>"><i></i><?php echo $lang['cms_text_up'];?></div>-->
  23. <div class="upload-img-list" id="art-upload-scrollbar">
  24. <ul id="article_image_list" class="article-image-list" style="position:relative;">
  25. <?php if(!empty( $output['article_detail']['article_image_all'])) { ?>
  26. <?php if(!empty($article_image_all) && is_array($article_image_all)) { ?>
  27. <?php foreach ($article_image_all as $key=>$value) { ?>
  28. <li><div class="picture"><a href="Javascript: void(0);"><img alt="" src="<?php echo getCMSArticleImageUrl($output['article_detail']['article_attachment_path'], serialize($value), 'max');?>"></a></div>
  29. <div class="handle"><a nctype="btn_insert_article_image"><?php echo $lang['cms_text_insert'];?></a><a image_name="<?php echo $key;?>" nctype="btn_set_article_image"><?php echo $lang['cms_cover'];?></a> <a image_name="<?php echo $key;?>" nctype="btn_drop_article_image"><?php echo $lang['cms_delete'];?></a></div>
  30. <input type="hidden" value="<?php echo $key.','.$value['path'];?>" name="article_image_all[]">
  31. </li>
  32. <?php } ?>
  33. <?php } ?>
  34. <?php } ?>
  35. </ul>
  36. </div>
  37. <!-- <div id="btn_image_list_down" class="down-btn" title="<?php echo $lang['cms_text_down'];?>"/>
  38. <i></i><?php echo $lang['cms_text_down'];?></div>-->
  39. </div>
  40. </div>
  41. <table class="cms-publish-table">
  42. <tbody>
  43. <tr>
  44. <th><?php echo $lang['cms_article_class'];?></th>
  45. <td><select id="article_class" name="article_class">
  46. <?php if(!empty($output['article_class_list']) && is_array($output['article_class_list'])) {?>
  47. <?php foreach($output['article_class_list'] as $value) {?>
  48. <option value="<?php echo $value['class_id'];?>" <?php if($value['class_id'] == $output['article_detail']['article_class_id']) echo 'selected';?>><?php echo $value['class_name'];?></option>
  49. <?php } ?>
  50. <?php } ?>
  51. </select></td>
  52. <td rowspan="3" align="center" valign="middle" class="w200">
  53. <div id="div_article_image" class="edit-cover-pic">
  54. <?php if(!empty($output['article_detail']['article_image'])) { ?>
  55. <img alt="" src="<?php echo getCMSArticleImageUrl($output['article_detail']['article_attachment_path'],$output['article_detail']['article_image'], 'list');?>">
  56. <?php } ?>
  57. </div>
  58. <p class="edit-cover-text"><?php echo $lang['cms_cover'];?></p>
  59. <input id="article_image" name="article_image" type="hidden" value="<?php if(!empty($output['article_detail'])) echo getCMSImageName($output['article_detail']['article_image']);?>" /></td>
  60. </tr>
  61. <tr>
  62. <th><?php echo $lang['cms_title'];?><?php echo $lang['nc_colon'];?></th>
  63. <td><input id="article_title" class="text w300" name="article_title" type="text" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_title'];?>" />
  64. <div class="hint"><?php echo $lang['cms_title_explain'];?></div></td>
  65. </tr>
  66. <tr>
  67. <th><?php echo $lang['cms_title_short'];?><?php echo $lang['nc_colon'];?></th>
  68. <td><input id="article_title_short" class="text w300" name="article_title_short" type="text" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_title_short'];?>" />
  69. <div class="hint"><?php echo $lang['cms_title_short_explain'];?></div></td>
  70. </tr>
  71. <tr>
  72. <th><?php echo $lang['cms_article_abstract'];?><?php echo $lang['nc_colon'];?></th>
  73. <td colspan="2"><div class="abstract">
  74. <textarea id="article_abstract" class="textarea" name="article_abstract"><?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_abstract'];?>
  75. </textarea>
  76. <div class="hint"><?php echo $lang['cms_article_abstract_explain'];?></div>
  77. </div></td>
  78. </tr>
  79. <tr>
  80. <th><?php echo $lang['cms_article_content'];?><?php echo $lang['nc_colon'];?></th>
  81. <td colspan="2">
  82. <?php showEditor('article_content',$output['article_detail']['article_content'],'700px','400px','visibility:hidden;',"false",$output['editor_multimedia'],'simple');?>
  83. <div>
  84. <h2 style="color: red; font-size: 16px;">文章正文上传标准:</h2>
  85. <ul>
  86. <li>1. 文章正文只允许有文章的内容段落,不允许有文章的大标题,大标题放在标题部分。</li>
  87. <li>2. 文章正文字体大小为<span style="color: red;">18px</span>,颜色为#333333,没有特殊需要不要在编辑器内自定义文字大小,系统自动处理。</li>
  88. <li>3. 图片地址:<span style="color: red;">占一行图片</span>上传时必须加上宽高为<span style="color: red;">750</span>,否则系统不予处理,按原始大小显示。</li>
  89. <li>4. 段落特有分段小icon,例如:<img src="<?php echo RESOURCE_SITE_URL;?>/mobile/article/images/1.png" style="width: 25px;vertical-align: middle;"> ,地址为:<span style="color: red;"><?php echo RESOURCE_SITE_URL;?>/mobile/article/images/{ 1~10 }.png</span>宽高度必须为25*25。</li>
  90. <li>5. 图片下方的产品名称,必须为<span style="color: red;">链接</span>形式展示,必须占据一行。</li>
  91. </ul>
  92. </div>
  93. </td>
  94. </tr>
  95. <tr>
  96. <th><?php echo $lang['cms_text_publisher'];?><?php echo $lang['nc_colon'];?></th>
  97. <td colspan="2"><input id="article_author" class="text w100" name="article_author" type="text" value="<?php echo empty($output['article_detail']['article_author'])?$output['publisher_info']['name']:$output['article_detail']['article_author'];?>"/>
  98. <div class="hint"><?php echo $lang['cms_publisher_explain'];?></div></td>
  99. </tr>
  100. <tr>
  101. <th><?php echo $lang['cms_publish_time'];?><?php echo $lang['nc_colon'];?></th>
  102. <td colspan="2"><input id="article_publish_time" class="text w100" name="article_publish_time" type="text" value="<?php echo empty($output['article_detail']['article_publish_time'])?date('Y-m-d',time()):date('Y-m-d',$output['article_detail']['article_publish_time']);?>"/>
  103. <div class="hint"><?php echo $lang['cms_publish_time_explain'];?></div></td>
  104. </tr>
  105. <tr>
  106. <th><?php echo $lang['cms_article_orgin'];?><?php echo $lang['nc_colon'];?></th>
  107. <td colspan="3"><input id="article_origin" class="text w100" name="article_origin" type="text" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_origin'];?>"/>
  108. <span><?php echo $lang['cms_article_orgin_address'];?><?php echo $lang['nc_colon'];?></span>
  109. <input id="article_origin_address" class="text w200" name="article_origin_address" type="text" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_origin_address'];?>"/>
  110. <div class="hint"><?php echo $lang['cms_article_orgin_explain'];?></div></td>
  111. </tr>
  112. <tr>
  113. <th><?php echo $lang['cms_article_goods'];?><?php echo $lang['nc_colon'];?></th>
  114. <td colspan="2">
  115. <ul id="article_goods_list" class="article-goods-list">
  116. <?php if(!empty($output['article_goods_list'])) { ?>
  117. <?php foreach($output['article_goods_list'] as $value) { ?>
  118. <li nctype="btn_goods_select">
  119. <dl>
  120. <dt class="name"> <a target="_blank" href="<?php echo $value['url'];?>"><?php echo $value['title'];?></a> </dt>
  121. <dd nctype="btn_goods_select" class="image"> <img src="<?php echo $value['image'];?>" title="<?php echo $value['title'];?>"> </dd>
  122. <dd class="price"><?php echo $lang['cms_price'];?><?php echo $lang['nc_colon'];?><em><?php echo $value['price'];?></em></dd>
  123. </dl>
  124. <i><?php echo $lang['cms_article_goods_delete_explain'];?></i>
  125. <input type="hidden" value="<?php echo $value['url'];?>" name="article_goods_url[]">
  126. <input type="hidden" value="<?php echo $value['title'];?>" name="article_goods_title[]">
  127. <input type="hidden" value="<?php echo $value['image'];?>" name="article_goods_image[]">
  128. <input type="hidden" value="<?php echo $value['price'];?>" name="article_goods_price[]">
  129. <input type="hidden" value="<?php echo $value['type'];?>" name="article_goods_type[]">
  130. </li>
  131. <?php } ?>
  132. <?php } ?>
  133. </ul>
  134. <p>
  135. <input id="goods_search_type_url" value="goods_url" name="goods_search_type" type="radio" checked />
  136. <label for="goods_search_type_url"><?php echo $lang['cms_goods_link'];?></label>
  137. <input id="goods_search_type_title" value="goods_name" name="goods_search_type" type="radio" />
  138. <label for="goods_search_type_title"><?php echo $lang['cms_goods_name'];?></label>
  139. </p>
  140. <input id="goods_search_keyword" class="text w380" name="goods_search_keyword" type="text" />
  141. <input id="btn_goods_search" class="btn-type-s" type="button" value="<?php echo $lang['cms_text_add'];?>" />
  142. <div id="div_goods_select"> </div>
  143. <div class="hint"><?php echo $lang['cms_goods_explain'];?></div></td>
  144. </tr>
  145. <tr>
  146. <th><?php echo $lang['cms_tag'];?><?php echo $lang['nc_colon'];?></th>
  147. <td colspan="3"><?php if(!empty($output['tag_list']) && is_array($output['tag_list'])) {?>
  148. <ul>
  149. <?php $tag_selected = explode(',',$output['article_detail']['article_tag']);?>
  150. <?php foreach($output['tag_list'] as $value) {?>
  151. <li nctype="cms_tag" class="<?php echo in_array($value['tag_id'],$tag_selected)?'btn-cms-tag-selected':'btn-cms-tag';?>" tag_id="<?php echo $value['tag_id'];?>"><?php echo $value['tag_name'];?></li>
  152. <?php } ?>
  153. </ul>
  154. <?php } ?>
  155. <input id="article_tag" name="article_tag" type="hidden" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_tag'];?>"/>
  156. <div class="hint"></div></td>
  157. </tr>
  158. <tr>
  159. <th><?php echo $lang['cms_keyword'];?><?php echo $lang['nc_colon'];?></th>
  160. <td colspan="3"><input id="article_keyword" class="text w380" name="article_keyword" type="text" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_keyword'];?>"/>
  161. <div class="hint"><?php echo $lang['cms_keyword_expalin'];?></div>
  162. </td>
  163. </tr>
  164. <tr>
  165. <th><?php echo $lang['cms_other_article'];?><?php echo $lang['nc_colon'];?></th>
  166. <td colspan="2"><input id="article_link" name="article_link" type="hidden" value="<?php if(!empty($output['article_detail'])) echo $output['article_detail']['article_link'];?>"/>
  167. <ul id="article_link_list" class="article-link-list">
  168. <?php if(!empty($output['article_link_list'])) { ?>
  169. <?php foreach($output['article_link_list'] as $value) { ?>
  170. <li article_id="<?php echo $value['article_id'];?>" nctype="btn_article_select"><a target="_blank" href="<?php echo getCMSArticleUrl($value['article_id']);?>"> <?php echo $value['article_title'];?> </a> <i><?php echo $lang['cms_article_article_delete_explain'];?></i> </li>
  171. <?php } ?>
  172. <?php } ?>
  173. </ul>
  174. <div id="div_article_search" class="div_article_search">
  175. <p>
  176. <input id="article_search_type_id" name="article_search_type" type="radio" value="article_id" checked />
  177. <label for="article_search_type_id"><?php echo $lang['cms_article_id'];?></label>
  178. <input id="article_search_type_title" name="article_search_type" value="article_keyword" type="radio" />
  179. <label for="article_search_type_title"><?php echo $lang['cms_article_title'];?></label>
  180. </p>
  181. <input id="article_search_keyword" class="text w380" name="article_search_keyword" type="text" />
  182. <input id="btn_article_search" class="btn-type-s" type="button" value="<?php echo $lang['cms_text_search'];?>" />
  183. <div id="div_article_select"> </div>
  184. <div class="hint"><?php echo $lang['cms_article_expalin'];?></div></td>
  185. </tr>
  186. </tbody>
  187. <tfoot>
  188. <tr>
  189. <td colspan="20"><a id="btn_draft" class="btn-draft" href="javascript:void(0);"><?php echo $lang['cms_article_save_draft'];?></a> <a id="btn_publish" class="btn-publish" href="javascript:void(0);"><?php echo $lang['cms_text_publish'];?></a></td>
  190. </tr>
  191. </tfoot>
  192. </table>
  193. </form>
  194. </div>
  195. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/jquery-ui/jquery.ui.js"></script>
  196. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/jquery-ui/i18n/zh-CN.js" charset="utf-8"></script>
  197. <link rel="stylesheet" type="text/css" href="<?php echo RESOURCE_SITE_URL;?>/js/jquery-ui/themes/ui-lightness/jquery.ui.css" />
  198. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/jquery.validation.min.js" charset="utf-8"></script>
  199. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/fileupload/jquery.iframe-transport.js" charset="utf-8"></script>
  200. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/fileupload/jquery.ui.widget.js" charset="utf-8"></script>
  201. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/fileupload/jquery.fileupload.js" charset="utf-8"></script>
  202. <script type="text/javascript" src="<?php echo CMS_RESOURCE_SITE_URL;?>/js/waypoints.js"></script>
  203. <script type="text/javascript" src="<?php echo CMS_RESOURCE_SITE_URL;?>/js/cms_article_publish.js"></script>
  204. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/js/jquery.mousewheel.js"></script>
  205. <script type="text/javascript">
  206. $(document).ready(function(){
  207. //侧边滚动上传图片列表
  208. $('#main-nav-holder').waypoint(function(event, direction) {
  209. $(this).parent().parent().toggleClass('sticky', direction === "down");
  210. event.stopPropagation();
  211. });
  212. //发布时间选择
  213. $('#article_publish_time').datepicker();
  214. //自定义滚定条
  215. $('#art-upload-scrollbar').perfectScrollbar();
  216. //摘要计数
  217. $("#article_abstract").nc_text_count({max:140});
  218. $("#btn_draft").click(function(){
  219. $("#save_type").val('draft');
  220. $("#add_form").submit();
  221. });
  222. $("#btn_publish").click(function(){
  223. $("#save_type").val('publish');
  224. $("#add_form").submit();
  225. });
  226. $('#add_form').validate({
  227. errorPlacement: function(error, element){
  228. element.after(error);
  229. },
  230. success: function(label){
  231. label.addClass('valid');
  232. },
  233. rules : {
  234. article_title: {
  235. required : true,
  236. minlength : 4,
  237. maxlength : 24
  238. },
  239. article_title_short: {
  240. minlength : 4,
  241. maxlength : 12
  242. },
  243. article_abstract: {
  244. maxlength : 140
  245. }
  246. },
  247. messages : {
  248. article_title: {
  249. required : "<?php echo $lang['article_title_null'];?>",
  250. minlength: jQuery.validator.format("<?php echo $lang['article_title_error1'];?>"),
  251. maxlength : jQuery.validator.format("<?php echo $lang['article_title_error'];?>")
  252. },
  253. article_title_short: {
  254. minlength: jQuery.validator.format("<?php echo $lang['article_title_error1'];?>"),
  255. maxlength : jQuery.validator.format("<?php echo $lang['article_title_error'];?>")
  256. },
  257. article_abstract: {
  258. maxlength : jQuery.validator.format("<?php echo $lang['article_abstract_error'];?>")
  259. }
  260. }
  261. });
  262. });
  263. </script>