国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

209 line
9.8KB

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
  6. <title>添加自由列表</title>
  7. <link rel="stylesheet" href="/static/web/css/font-awesome.min.css">
  8. <link rel="stylesheet" href="/static/web/css/bootstrap.min.css">
  9. <link rel="stylesheet" href="/static/web/css/admin.css">
  10. <link rel="stylesheet" href="/static/web/css/codemirror.css">
  11. <script src="/static/web/js/jquery.min.js"></script>
  12. <script src="/static/web/js/bootstrap.min.js"></script>
  13. <script src="/static/web/js/codemirror.js"></script>
  14. <script src="/static/web/js/mode/xml/xml.js"></script>
  15. <script src="/static/web/js/mode/javascript/javascript.js"></script>
  16. <script src="/static/web/js/mode/css/css.js"></script>
  17. <script src="/static/web/js/mode/htmlmixed/htmlmixed.js"></script>
  18. <script src="/static/web/js/admin.main.js"></script>
  19. </head>
  20. <body>
  21. <ol class="breadcrumb">
  22. <li class="breadcrumb-item"><a href="index_body.php">后台面板</a></li>
  23. <li class="breadcrumb-item"><a href="freelist_main.php">自由列表管理</a></li>
  24. <li class="breadcrumb-item active">添加自由列表</li>
  25. </ol>
  26. <div class="card shadow-sm">
  27. <div class="card-header">添加自由列表</div>
  28. <div class="card-body">
  29. <div class="alert alert-info">freelist标签基本等同于arclist标签,区别是freelist标签支持分页,按自定义排序规则的文档列表,且自由列是独立编译的,轻松的实现统一化管理</div>
  30. <div id="list1" style="display:none"><p><a href="[field:arcurl/]">[field:title/]</a></p></div>
  31. <div id="list2" style="display:none"><p>[field:typelink/] - <a href="[field:arcurl/]">[field:title/]</a></p></div>
  32. <div id="list3" style="display:none"><p>[field:imglink/]</p><p>[field:textlink/]</p></div>
  33. <div id="list4" style="display:none"><p><a href="[field:arcurl/]">[field:title/]</a></p><p><a href="[field:arcurl/]">[field:description/]</a></p><p><span>日期:[field:pubdate function="MyDate('Y-m-d', @me)"/]</span><span>浏览:[field:click/]</span><span>好评:[field:scores/]</span></p></div>
  34. <form name="form1" action="freelist_add.php" method="post">
  35. <input type="hidden" name="dopost" value="save">
  36. <div class="table-responsive">
  37. <table class="table table-borderless">
  38. <tbody>
  39. <tr>
  40. <td colspan="4">
  41. <label><input type="radio" name="liststyle" onclick="ChangeListStyle();" value="1" checked><img src="/static/web/img/g_t2.jpg"></label>
  42. <label><input type="radio" name="liststyle" onclick="ChangeListStyle();" value="2"><img src="/static/web/img/g_t1.jpg"></label>
  43. <label><input type="radio" name="liststyle" onclick="ChangeListStyle();" value="3"><img src="/static/web/img/g_t3.jpg"></label>
  44. <label><input type="radio" name="liststyle" onclick="ChangeListStyle();" value="4"><img src="/static/web/img/g_t4.jpg"></label>
  45. </td>
  46. </tr>
  47. <tr>
  48. <td width="160">自由列表标题</td>
  49. <td width="550"><input type="text" name="title" id="title" class="admin-input-lg" required></td>
  50. <td width="160">列表生成目录</td>
  51. <td><input type="text" name="listdir" id="listdir" value="{cmspath}/a/freelist/" class="admin-input-lg"></td>
  52. </tr>
  53. <tr>
  54. <td>默认页名称</td>
  55. <td>
  56. <input type="text" name="defaultpage" id="defaultpage" value="index.html" class="admin-input-lg">
  57. <label><input type="checkbox" name="nodefault" id="nodefault" value="1"> 不使用默认首页</label>
  58. </td>
  59. <td>命名规则</td>
  60. <td><input type="text" name="namerule" id="namerule" value="{listdir}/index_{listid}_{page}.html" class="admin-input-lg">({listdir}列表存放目录)</td>
  61. </tr>
  62. <tr>
  63. <td>列表模板</td>
  64. <td>
  65. <input type="text" name="templet" id="templet" value="{style}/list_free.htm" class="admin-input-lg">
  66. <button type="button" onclick="SelectTemplets('form1.templet');" class="btn btn-success btn-sm">选择</button>
  67. </td>
  68. <td>最大列出页数</td>
  69. <td><input type="text" name="maxpage" id="maxpage" value="100" class="admin-input-sm"></td>
  70. </tr>
  71. <tr>
  72. <td>列表关键词</td>
  73. <td><input type="text" name="keywords" id="keywords" class="admin-input-lg"></td>
  74. <td>列表描述</td>
  75. <td><textarea name="description" id="description" class="admin-textarea-sm"></textarea></td>
  76. </tr>
  77. <tr>
  78. <td>调用栏目</td>
  79. <td>
  80. <?php
  81. echo "<select name='typeid' class='admin-input-sm'>";
  82. echo "<option value='0'>不限栏目</option>";
  83. $dsql->SetQuery("SELECT id,typename, channeltype FROM `#@__arctype`");
  84. $dsql->Execute();
  85. while($lrow = $dsql->GetObject()){
  86. $disable = '';
  87. if ($lrow->channeltype < -1) {
  88. $disable = 'disabled';
  89. }
  90. echo "<option value='{$lrow->ID}' $disable>{$lrow->typename}</option>";
  91. }
  92. echo "</select>";
  93. ?>
  94. </td>
  95. <td>限定模型</td>
  96. <td>
  97. <?php
  98. echo "<select name='channel' class='admin-input-sm'>";
  99. echo "<option value='0' selected>不限模型</option>";
  100. $dsql->SetQuery("SELECT id,typename FROM `#@__channeltype` WHERE id > 0");
  101. $dsql->Execute();
  102. while($row = $dsql->GetObject())
  103. {
  104. echo "<option value='{$row->ID}'>{$row->typename}</option>";
  105. }
  106. echo "</select>";
  107. ?>
  108. </td>
  109. </tr>
  110. <tr>
  111. <td>附加属性</td>
  112. <td>
  113. <?php
  114. echo "<select name='att' class='admin-input-sm'>";
  115. echo "<option value='0' selected>不限</option>";
  116. $dsql->SetQuery("SELECT * FROM `#@__arcatt`");
  117. $dsql->Execute();
  118. while($row = $dsql->GetObject())
  119. {
  120. echo "<option value='{$row->att}'>{$row->attname}</option>";
  121. }
  122. echo "</select>";
  123. ?>
  124. </td>
  125. <td>发布天数</td>
  126. <td><input type="text" name="subday" id="subday2" value="0" class="admin-input-sm">(0表示不限)</td>
  127. </tr>
  128. <tr>
  129. <td>每页记录数</td>
  130. <td><input type="text" name="pagesize" id="pagesize" value="30" class="admin-input-sm"></td>
  131. <td>显示列数</td>
  132. <td><input type="text" name="col" id="col3" value="1" class="admin-input-sm"></td>
  133. </tr>
  134. <tr>
  135. <td>标题长度</td>
  136. <td><input type="text" name="titlelen" id="titlelen" value="60" class="admin-input-sm">(1字节=0.5个中文字)</td>
  137. <td>高级筛选</td>
  138. <td>
  139. <label><input type="checkbox" name="types[]" id="type1" value="image"> 带缩略图</label>
  140. <label><input type="checkbox" name="types[]" id="type2" value="commend"> 推荐</label>
  141. <label><input type="checkbox" name="types[]" id="type3" value="spec"> 专题</label>
  142. </td>
  143. </tr>
  144. <tr>
  145. <td>关键词</td>
  146. <td><input type="text" name="keywordarc" id="keywordarc">(英文逗号隔开)</td>
  147. <td>排列顺序</td>
  148. <td>
  149. <select name="orderby" id="orderby" class="admin-input-sm">
  150. <option value="sortrank">置顶权限值</option>
  151. <option value="pubdate" selected>发布时间</option>
  152. <option value="senddate">录入时间</option>
  153. <option value="click">点击量</option>
  154. <option value="id">文档id</option>
  155. <option value="lastpost">最后评论时间</option>
  156. <option value="postnum">评论总数</option>
  157. </select>
  158. <label><input type="radio" name="order" value="desc" checked> 由高到低</label>
  159. <label><input type="radio" name="order" value="asc"> 由低到高</label>
  160. </td>
  161. </tr>
  162. <tr>
  163. <td colspan="4">
  164. <textarea name="innertext" id="myinnertext" class="admin-textarea-xl"></textarea>
  165. </td>
  166. </tr>
  167. <tr>
  168. <td colspan="4" align="center">
  169. <button type="submit" class="btn btn-success btn-sm">保存</button>
  170. <button type="reset" class="btn btn-outline-success btn-sm">重置</button>
  171. </td>
  172. </tr>
  173. </tbody>
  174. </table>
  175. </div>
  176. </form>
  177. </div>
  178. </div>
  179. <script>
  180. function ChangeListStyle() {
  181. var itxt = document.getElementById("myinnertext");
  182. var myems = document.getElementsByName("liststyle");
  183. if (myems[0].checked) editor.setValue(document.getElementById("list1").innerHTML);
  184. else if (myems[1].checked) editor.setValue(document.getElementById("list2").innerHTML);
  185. else if (myems[2].checked) editor.setValue(document.getElementById("list3").innerHTML);
  186. else if (myems[3].checked) editor.setValue(document.getElementById("list4").innerHTML);
  187. editor.setValue(editor.getValue().replace("<br>", "<br>"));
  188. editor.setValue(editor.getValue().toLowerCase());
  189. }
  190. function ShowHide(objname) {
  191. var obj = document.getElementById(objname);
  192. if (obj.style.display == "block" || obj.style.display == "")
  193. obj.style.display = "none";
  194. else
  195. obj.style.display = "block";
  196. }
  197. function SelectTemplets(fname) {
  198. var pos = GetWinPos(800,600);
  199. window.open("./dialog/select_templets.php?&activepath=<?php echo urlencode($cfg_templets_dir)?>&f=" + fname, "poptempWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
  200. }
  201. document.form1.innertext.value = document.getElementById("list1").innerHTML.toLowerCase();
  202. var editor = CodeMirror.fromTextArea(document.getElementById("myinnertext"), {
  203. lineNumbers: true,
  204. lineWrapping: true,
  205. mode: 'text/html',
  206. });
  207. </script>
  208. </body>
  209. </html>