国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

348 rindas
16KB

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  6. <title>修改栏目</title>
  7. <link rel="stylesheet" href="../static/web/font/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. <script src="../static/web/js/jquery.min.js"></script>
  11. <script src="js/main.js"></script>
  12. </head>
  13. <body>
  14. <form name="form1" action="catalog_edit.php" method="post" onSubmit="return checkSubmit()">
  15. <input type="hidden" name="dopost" value="save">
  16. <input type="hidden" name="id" value="<?php echo $id;?>">
  17. <input type="hidden" name="topid" value="<?php echo $myrow['topid'];?>">
  18. <table cellspacing="0" cellpadding="0" align="center" class="table maintable my-3">
  19. <tr>
  20. <td bgcolor="#f5f5f5" colspan="4">修改栏目</td>
  21. </tr>
  22. <tr>
  23. <td width="10%">是否支持投稿:</td>
  24. <td width="40%">
  25. <label><input type="radio" name="issend" value="1" <?php if ($myrow['issend']=="1") echo "checked='1'";?>> 支持</label>
  26. <label><input type="radio" name="issend" value="0" <?php if ($myrow['issend']=="0") echo "checked='1'";?>> 不支持</label>
  27. </td>
  28. <td width="10%">是否隐藏栏目:</td>
  29. <td width="40%">
  30. <label><input type="radio" name="ishidden" value="0" <?php if ($myrow['ishidden']=="0") echo "checked='1'";?>> 显示</label>
  31. <label><input type="radio" name="ishidden" value="1" <?php if ($myrow['ishidden']=="1") echo "checked='1'";?>> 隐藏</label>
  32. </td>
  33. </tr>
  34. <tr>
  35. <td>文档模型:</td>
  36. <td>
  37. <input type="hidden" value="{style}" name="dfstyle">
  38. <select name="channeltype" id="channeltype" onChange="ParTemplet(this)" class="admin-input-sm">
  39. <?php
  40. foreach($channelArray as $k=>$arr)
  41. {
  42. if ($k==$channelid) echo " <option value='{$k}' selected>{$arr['typename']} {$arr['nid']}</option>";
  43. else echo " <option value='{$k}'>{$arr['typename']} {$arr['nid']}</option>";
  44. }
  45. ?>
  46. </select>
  47. <div id="smclass" class="mt-2" style="<?php echo ($channelid<0 ? '' : 'display:none');?>">
  48. <select name="smalltype[]" multiple="yes" class="admin-input-lg">
  49. <?php
  50. $smtypes = explode(',',trim($myrow['smalltypes']));
  51. $sql = "SELECT * FROM `#@__sys_enum` WHERE egroup LIKE 'infotype' ORDER BY disorder ASC, id DESC ";
  52. $dsql->Execute('s',$sql);
  53. while($arr = $dsql->GetArray('s'))
  54. {
  55. if (in_array($arr['evalue'],$smtypes)) {
  56. $selstr = " selected='1' ";
  57. } else {
  58. $selstr = '';
  59. }
  60. if ($arr['evalue']%500==0) {
  61. echo "<option value='{$arr['evalue']}'{$selstr}>{$arr['ename']}</option>";
  62. } else if (preg_match("#\.#", $arr['evalue'])) {
  63. echo "<option value='{$arr['evalue']}'{$selstr}>└─ {$arr['ename']}</option>";
  64. } else {
  65. echo "<option value='{$arr['evalue']}'{$selstr}>{$arr['ename']}</option>";
  66. }
  67. }
  68. ?>
  69. </select>
  70. <span>(支持多选)</span>
  71. </div>
  72. </td>
  73. <td>上级目录:</td>
  74. <td>
  75. <?php
  76. $pardir = '{cmspath}'.$cfg_arcdir;
  77. if (!empty($typedir)) $pardir = $typedir.'/';
  78. $pardir = preg_replace("#\/{1,}#", '/', $pardir);
  79. echo $pardir;
  80. ?>
  81. <input type="hidden" name="nextdir" id="nextdir" value="<?php echo $pardir?>">
  82. </td>
  83. </tr>
  84. <tr>
  85. <td>中文名称:</td>
  86. <td><input type="text" name="typename" value="<?php echo $myrow['typename']?>" class="admin-input-lg"></td>
  87. <td>中文概述:</td>
  88. <td><input type="text" name="cnoverview" value="<?php echo $myrow['cnoverview']?>" class="admin-input-lg"></td>
  89. </tr>
  90. <tr>
  91. <td>英文名称:</td>
  92. <td><input type="text" name="enname" value="<?php echo $myrow['enname']?>" class="admin-input-lg"></td>
  93. <td>英文概述:</td>
  94. <td><input type="text" name="enoverview" value="<?php echo $myrow['enoverview']?>" class="admin-input-lg"></td>
  95. </tr>
  96. <tr>
  97. <td>栏目大图:</td>
  98. <td>
  99. <input type="text" name="bigpic" value="<?php echo $myrow['bigpic']?>" class="admin-input-lg">
  100. <input type="button" class="btn btn-success btn-sm" value="选择" onclick="SelectImage('form1.bigpic');">
  101. </td>
  102. <td>栏目小图:</td>
  103. <td>
  104. <input type="text" name="litimg" value="<?php echo $myrow['litimg']?>" class="admin-input-lg">
  105. <input type="button" class="btn btn-success btn-sm" value="选择" onclick="SelectImage('form1.litimg');">
  106. </td>
  107. </tr>
  108. <tr>
  109. <td>排列顺序:</td>
  110. <td><input type="text" name="sortrank" value="<?php echo $myrow['sortrank']?>" class="admin-input-sm">(由低 &gt; 高)</td>
  111. <td>浏览权限:</td>
  112. <td>
  113. <select name="corank" id="corank" class="admin-input-sm">
  114. <?php
  115. $dsql->SetQuery("SELECT * FROM `#@__arcrank` where `rank` >= 0");
  116. $dsql->Execute('cc');
  117. while($row = $dsql->GetObject('cc'))
  118. {
  119. if ($myrow['corank']==$row->rank)
  120. echo "<option value='".$row->rank."' selected>".$row->membername."</option>";
  121. else
  122. echo "<option value='".$row->rank."'>".$row->membername."</option>";
  123. }
  124. ?>
  125. </select>
  126. </td>
  127. </tr>
  128. <tr>
  129. <td>文件保存目录:</td>
  130. <td><input type="text" name="typedir" id="typedir" value="<?php echo $myrow['typedir']?>" class="admin-input-lg">(标签“{cmspath}”请勿删除)</td>
  131. <td>继承选项:</td>
  132. <td><label><input type="checkbox" name="upnext" id="upnext" value="1"> 同时继承下级栏目浏览权限、文档类型、模板风格、命名规则等通用属性</label></td>
  133. </tr>
  134. <tr>
  135. <td>栏目列表选项:</td>
  136. <td>
  137. <label><input type="radio" name="isdefault" value="1" <?php if ($myrow['isdefault']==1) echo "checked='1'";?>> 链接到默认页</label>
  138. <label><input type="radio" name="isdefault" value="0" <?php if ($myrow['isdefault']==0) echo "checked='1'";?>> 链接到列表第一页</label>
  139. <label><input type="radio" name="isdefault" value="-1" <?php if ($myrow['isdefault']==-1) echo "checked='1'";?>> 使用动态页</label>
  140. </td>
  141. <td>默认页的名称:</td>
  142. <td><input type="text" name="defaultname" value="<?php echo $myrow['defaultname']?>" class="admin-input-lg"></td>
  143. </tr>
  144. <tr>
  145. <td>栏目属性:</td>
  146. <td>
  147. <label><input type="radio" name="ispart" value="0" <?php if ($myrow['ispart']==0) echo "checked='1'";?>> 列表栏目(允许发布文档)</label>
  148. <label><input type="radio" name="ispart" value="1" <?php if ($myrow['ispart']==1) echo "checked='1'";?>> 封面栏目(不允许发布文档)</label>
  149. <label><input type="radio" name="ispart" value="2" <?php if ($myrow['ispart']==2) echo "checked='1'";?>> 外部栏目(文件保存目录处填写链接)</label>
  150. </td>
  151. <td>栏目交叉:</td>
  152. <td>
  153. <label class="l-height-28"><input type="radio" name="cross" id="cross0" value="0" onclick="CheckCross()" <?php if ($myrow['cross']==0) echo "checked='1'";?>> 不交叉</label>
  154. <label class="l-height-28"><input type="radio" name="cross" id="cross1" value="1" onclick="CheckCross()" <?php if ($myrow['cross']==1) echo "checked='1'";?>> 自动获取同名栏目文档</label>
  155. <label class="l-height-28"><input type="radio" name="cross" id="cross2" value="2" onclick="CheckCross()" <?php if ($myrow['cross']==2) echo "checked='1'";?>> 手工指定交叉栏目id(用英文逗号)</label>
  156. <span onclick="ShowHide('helpvarco')" title="帮助" class="btn btn-success btn-sm"><i class="fa fa-question-circle"></i></span><br>
  157. <textarea name="crossid" id="crossid" class="admin-textarea-sm" style="<?php if ($myrow['cross']!=2) echo'display:none';?>"><?php echo $myrow['crossid'];?></textarea>
  158. <div id="helpvarco" class="alert alert-warning my-2" style="display:none">交叉栏目是指一个大栏目与另一个非下级的子栏目出现交叉的情况,相当于系统原来的副栏目功能,不过现在改在栏目里预先设置好。注:会自动索引交叉栏目的文档,但不会索引交叉栏目下级栏目的文档,这种应用也适用于按地区划分资讯的站点</div>
  159. </td>
  160. </tr>
  161. <tr>
  162. <td width="260">多站点支持:</td>
  163. <td>
  164. <label><input type="radio" name="moresite" value="1" <?php if ($myrow['moresite']==1) echo "checked='1'";?>> 启用</label>
  165. <label><input type="radio" name="moresite" value="0" <?php if ($myrow['moresite']==0) echo "checked='1'";?>> 不启用</label>(只需要顶级栏目设置,子级栏目修改无效)
  166. </td>
  167. <td>绑定域名:</td>
  168. <td><input type="text" name="siteurl" id="siteurl" value="<?php echo $myrow['siteurl']?>" class="admin-input-lg">(需要加http开头的链接)</td>
  169. </tr>
  170. <tr>
  171. <td>列表模板:</td>
  172. <td>
  173. <input type="text" name="templist" value="<?php echo $myrow['templist']?>" class="admin-input-lg">
  174. <button type="button" name="set1" class="btn btn-success btn-sm" onclick="SelectTemplets('form1.templist')">选择</button>
  175. </td>
  176. <td>封面模板:</td>
  177. <td>
  178. <input type="text" name="tempindex" value="<?php echo $myrow['tempindex']?>" class="admin-input-lg">
  179. <button type="button" name="set2" class="btn btn-success btn-sm" onclick="SelectTemplets('form1.tempindex')">选择</button>
  180. <span onclick="ShowHide('helpvar1')" title="帮助" class="btn btn-success btn-sm"><i class="fa fa-question-circle"></i></span>
  181. <div id="helpvar1" class="alert alert-warning my-2" style="display:none">
  182. <p>{tid} 栏目id</p>
  183. <span>{cid} 栏目模型名字id</span>
  184. </div>
  185. </td>
  186. </tr>
  187. <tr>
  188. <td>文档模板:</td>
  189. <td>
  190. <input type="text" name="temparticle" value="<?php echo $myrow['temparticle']?>" class="admin-input-lg">
  191. <button type="button" name="set3" class="btn btn-success btn-sm" onclick="SelectTemplets('form1.temparticle')">选择</button>
  192. </td>
  193. <td>列表命名规则:</td>
  194. <td>
  195. <input type="text" name="namerule2" id="namerule2" value="<?php echo $myrow['namerule2']?>" class="admin-input-lg">
  196. <span onclick="ShowHide('helpvar2')" title="帮助" class="btn btn-success btn-sm"><i class="fa fa-question-circle"></i></span>
  197. <div id="helpvar2" class="alert alert-warning my-2" style="display:none">
  198. <p>静态规则</p>
  199. <p>{tid} 栏目id</p>
  200. <p>{page} 栏目页码数</p>
  201. <p>伪静态规则(Nginx)</p>
  202. <p>rewrite ^/list-([0-9]+)$ /apps/list.php?tid=$1;</p>
  203. <span>rewrite ^/list-([0-9]+)-([0-9]+)$ /apps/list.php?tid=$1&PageNo=$2;</span>
  204. </div>
  205. </td>
  206. </tr>
  207. <tr>
  208. <td>文档命名规则:</td>
  209. <td>
  210. <input type="text" name="namerule" id="namerule" value="<?php echo $myrow['namerule']?>" class="admin-input-lg">
  211. <span onclick="ShowHide('helpvar3')" title="帮助" class="btn btn-success btn-sm"><i class="fa fa-question-circle"></i></span>
  212. <div id="helpvar3" class="alert alert-warning my-2" style="display:none">
  213. <p>静态规则</p>
  214. <p>{Y}{M}{D} 年月日</p>
  215. <p>{timestamp} INT类型的UNIX时间戳</p>
  216. <p>{aid} 文档id</p>
  217. <p>{pinyin} 拼音加文档id</p>
  218. <p>{py} 拼音部首加文档id</p>
  219. <p>{typedir} 栏目保存目录</p>
  220. <p>{cc} 日期加混编id后用转换为适合字母</p>
  221. <p>伪静态规则(Nginx)</p>
  222. <p>rewrite ^/([0-9]+).html$ /apps/view.php?arcID=$1;</p>
  223. <span>rewrite ^/([0-9]+)-([0-9]+).html$ /apps/view.php?aid=$1&pageno=$2;</span>
  224. </div>
  225. </td>
  226. <td>SEO标题:</td>
  227. <td>
  228. <input type="text" name="seotitle" id="seotitle" value="<?php echo $myrow['seotitle']?>" class="admin-input-lg">
  229. <span>(标签“{dede:field.seotitle/}”调用)</span>
  230. </td>
  231. </tr>
  232. <tr>
  233. <td>关键词:</td>
  234. <td>
  235. <textarea name="keywords" cid="keywords" class="admin-textarea-sm"><?php echo $myrow['keywords']?></textarea>
  236. <span>(标签“{dede:field.keywords/}”调用)</span>
  237. </td>
  238. <td>描述:</td>
  239. <td>
  240. <textarea name="description" id="description" class="admin-textarea-sm"><?php echo $myrow['description']?></textarea>
  241. <span>(标签“{dede:field.description/}”调用)</span>
  242. </td>
  243. </tr>
  244. <tr>
  245. <td>栏目文档:</td>
  246. <td>(标签“{dede:field.content/}”调用)</td>
  247. <td>是否支持跨站调用:</td>
  248. <td>
  249. <input value="<?php echo $myrow['apikey']?>" type="text" name="apikey" id="apikey" class="admin-input-lg" placeholder="请输入跨站调用秘钥">
  250. <span class="btn btn-success btn-sm mr-2" title="更新秘钥" onclick="makeAPIKey()"><i class="fa fa-repeat"></i></span>
  251. <label><input type="radio" name="apienabled" value="1" <?php if ($myrow['apienabled']=="1") echo "checked='1'";?>> 支持</label>
  252. <label><input type="radio" name="apienabled" value="0" <?php if ($myrow['apienabled']=="0") echo "checked='1'";?>> 不支持</label>
  253. </td>
  254. </tr>
  255. <tr>
  256. <td colspan="4"><?php GetEditor("content",$myrow['content'],"400","Default","print","false");?></td>
  257. </tr>
  258. <tr>
  259. <td bgcolor="#f5f5f5" align="center" colspan="4">
  260. <button type="submit" class="btn btn-success btn-sm">保存</button>
  261. <a href="catalog_main.php" class="btn btn-outline-success btn-sm">返回</a>
  262. </td>
  263. </tr>
  264. </table>
  265. </form>
  266. <script>
  267. var channelArray = new Array();
  268. <?php
  269. $i = 0;
  270. foreach($channelArray as $k=> $arr)
  271. {
  272. echo "channelArray[$k] = \"{$arr['nid']}\";";
  273. }
  274. ?>
  275. function Nav() {
  276. if (window.navigator.userAgent.indexOf("MSIE") >= 1) return 'IE';
  277. else if (window.navigator.userAgent.indexOf("Firefox") >= 1) return 'FF';
  278. else return "OT";
  279. }
  280. function SelectTemplets(fname) {
  281. var pos = GetWinPos(800,600);
  282. window.open("./dialog/select_templets.php?f=" + fname, "poptempWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
  283. }
  284. function ShowHide(objname) {
  285. var obj = document.getElementById(objname);
  286. if (obj.style.display != "none")
  287. obj.style.display = "none";
  288. else {
  289. if (Nav() == 'IE') obj.style.display = "block";
  290. else obj.style.display = "block";
  291. }
  292. }
  293. function ShowObj(objname) {
  294. var obj = document.getElementById(objname);
  295. if (Nav() == 'IE') obj.style.display = "block";
  296. else obj.style.display = "block";
  297. }
  298. function HideObj(objname) {
  299. var obj = document.getElementById(objname);
  300. obj.style.display = "none";
  301. }
  302. function CheckTypeDir() {
  303. var upinyin = document.getElementById('upinyin');
  304. var tpobj = document.getElementById('typedir');
  305. if (upinyin.checked) tpobj.style.display = "none";
  306. else tpobj.style.display = "inline-block";
  307. }
  308. function ParTemplet(obj) {
  309. var sevvalue = channelArray[obj.value];
  310. var tobj = document.getElementById('smclass');
  311. var tempindex = document.getElementsByName('tempindex');
  312. var templist = document.getElementsByName('templist');
  313. var temparticle = document.getElementsByName('temparticle');
  314. var dfstyle = document.getElementsByName('dfstyle');
  315. var dfstyleValue = dfstyle[0].value;
  316. tempindex[0].value = dfstyleValue + "/index_" + sevvalue + ".htm";
  317. templist[0].value = dfstyleValue + "/list_" + sevvalue + ".htm";
  318. temparticle[0].value = dfstyleValue + "/article_" + sevvalue + ".htm";
  319. if (obj.value < 0) {
  320. if (Nav() == 'IE') tobj.style.display = "block";
  321. else tobj.style.display = "block";
  322. } else {
  323. tobj.style.display = "none";
  324. }
  325. }
  326. function checkSubmit() {
  327. if (document.form1.typename.value == "") {
  328. alert("栏目名称不能为空");
  329. document.form1.typename.focus();
  330. return false;
  331. }
  332. return true;
  333. }
  334. function CheckCross() {
  335. var cross2 = document.getElementById('cross2');
  336. var crossid = document.getElementById('crossid');
  337. if (cross2.checked) crossid.style.display = 'block';
  338. else crossid.style.display = 'none';
  339. }
  340. function makeAPIKey(){
  341. var apikey = document.getElementById('apikey');
  342. jQuery.get("sys_info.php?dopost=make_encode", function(data) {
  343. jQuery("#apikey").val(data);
  344. });
  345. }
  346. </script>
  347. </body>
  348. </html>