国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

337 lines
12KB

  1. {dede:config.pagesize value='30'/}
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  7. <title>联动类型管理</title>
  8. <link rel="stylesheet" href="../static/web/font/css/font-awesome.min.css">
  9. <link rel="stylesheet" href="../static/web/css/bootstrap.min.css">
  10. <link rel="stylesheet" href="../static/web/css/admin.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/webajax.js"></script>
  14. <script src="js/main.js"></script>
  15. <script>
  16. function updateItem(aid) {
  17. var upenumf = document.getElementById('upenumf');
  18. upenumf.ename.value = $DE('ename' + aid).value;
  19. upenumf.disorder.value = $DE('disorder' + aid).value;
  20. upenumf.aid.value = aid;
  21. upenumf.submit();
  22. }
  23. function GetSelType() {
  24. var selvalue = $DE('egroup1').options[$DE('egroup1').selectedIndex].value;
  25. return selvalue;
  26. }
  27. function AddType() {
  28. fetch('stepselect_main.php?action=addnew').then(resp=>{
  29. if (resp.ok) {
  30. return resp.text()
  31. }
  32. throw new Error('系统错误,无法获取数据');
  33. }).then((d) => {
  34. $DE('edsta').innerHTML = d;
  35. }).catch((error) => {
  36. $DE('edsta').innerHTML = errMsg;
  37. });
  38. }
  39. function AddEnum() {
  40. var id = GetSelType();
  41. if (id == 0) {
  42. ShowMsg("必须选择一个类别");
  43. return false;
  44. }
  45. fetch('stepselect_main.php?action=addenum&id=' + id).then(resp=>{
  46. if (resp.ok) {
  47. return resp.text()
  48. }
  49. throw new Error('系统错误,无法获取数据');
  50. }).then((d) => {
  51. $DE('edsta').innerHTML = d;
  52. }).catch((error) => {
  53. $DE('edsta').innerHTML = errMsg;
  54. });
  55. $DE('edsta').style.display = 'block';
  56. }
  57. function EditType() {
  58. var id = GetSelType();
  59. if (id == 0) {
  60. ShowMsg("必须选择一个类别");
  61. return false;
  62. }
  63. fetch('stepselect_main.php?action=edit&id=' + id).then(resp=>{
  64. if (resp.ok) {
  65. return resp.text()
  66. }
  67. throw new Error('系统错误,无法获取数据');
  68. }).then((d) => {
  69. $DE('edsta').innerHTML = d;
  70. }).catch((error) => {
  71. $DE('edsta').innerHTML = errMsg;
  72. });
  73. }
  74. function ViewType() {
  75. var id = GetSelType();
  76. if (id == 0) {
  77. ShowMsg("必须选择一个类别");
  78. return false;
  79. }
  80. fetch('stepselect_main.php?action=view&id=' + id).then(resp=>{
  81. if (resp.ok) {
  82. return resp.text()
  83. }
  84. throw new Error('系统错误,无法获取数据');
  85. }).then((d) => {
  86. $DE('edsta').innerHTML = d;
  87. }).catch((error) => {
  88. $DE('edsta').innerHTML = errMsg;
  89. });
  90. }
  91. function DelType() {
  92. DedeConfirm("您确实要删除这个分类吗").then((v) => {
  93. var id = GetSelType();
  94. if (id == 0) {
  95. ShowMsg("必须选择一个类别");
  96. return false;
  97. }
  98. location.href = 'stepselect_main.php?action=del&id=' + id;
  99. }).catch((e) => {
  100. console.log(e)
  101. });
  102. }
  103. function ChangePage(sobj) {
  104. var ntxt = sobj.options[sobj.selectedIndex].text;
  105. if (sobj.options[sobj.selectedIndex].value == 0) {
  106. location.href = 'stepselect_main.php';
  107. } else {
  108. var ns = ntxt.split('|');
  109. location.href = 'stepselect_main.php?egroup=' + ns[0];
  110. }
  111. }
  112. function TogSel() {
  113. var ems = document.getElementsByName('ids[]');
  114. for (i = 0; i < ems.length; i++) {
  115. if (ems[i].checked == false) ems[i].checked = true;
  116. else ems[i].checked = false;
  117. }
  118. }
  119. function DelSel() {
  120. DedeConfirm("您确实要删除这些分类吗").then((v) => {
  121. document.form1.submit();
  122. }).catch((e) => {
  123. console.log(e)
  124. });
  125. }
  126. function ChangePage2(sobj) {
  127. var nv = sobj.options[sobj.selectedIndex].value;
  128. if (sobj.options[sobj.selectedIndex].value == 0) {
  129. location.href = 'stepselect_main.php?egroup=<?php echo $egroup;?>';
  130. } else {
  131. location.href = 'stepselect_main.php?egroup=<?php echo $egroup;?>&topvalue=' + nv;
  132. }
  133. }
  134. </script>
  135. </head>
  136. <body>
  137. <table align="center" class="table maintable my-3">
  138. <tr>
  139. <td bgcolor="#f5f5f5">
  140. <select name="egroup1" id="egroup1" onChange="ChangePage(this)" class="admin-input-sm mr-3">
  141. <option value="0">所有组</option>
  142. <?php
  143. $selgroup = '';
  144. foreach($etypes as $arr)
  145. {
  146. $stylecolor = "";
  147. if ($arr['issystem']==1) $stylecolor = " style='color:#999' ";
  148. if ($egroup==$arr['egroup']) {
  149. $selgroup = $arr['itemname'];
  150. echo "<option value='{$arr['id']}' $stylecolor selected='1'>{$arr['egroup']}|{$arr['itemname']}</option>";
  151. } else {
  152. echo "<option value='{$arr['id']}' $stylecolor>{$arr['egroup']}|{$arr['itemname']}</option>";
  153. }
  154. }
  155. ?>
  156. </select>
  157. <button type="button" name="gedit" id="gedit" class="btn btn-success btn-sm" onclick="EditType()">修改</button>
  158. <button type="button" name="gdel" id="gdel" class="btn btn-success btn-sm" onclick="DelType()">删除</button>
  159. <button type="button" name="gview" id="gview" class="btn btn-success btn-sm" onclick="ViewType()">预览</button>
  160. <button type="button" name="addnew" id="addnew" class="btn btn-success btn-sm" onclick="AddType()">新增联动组</button>
  161. <a href="stepselect_main.php?action=upallcache" class="btn btn-success btn-sm">更新所有缓存</a>
  162. </td>
  163. </tr>
  164. </table>
  165. <?php
  166. if (!empty($egroup)) {
  167. $arr = $dsql->GetOne("SELECT * FROM `#@__stepselect` WHERE egroup='{$egroup}' ");
  168. $dsql->Execute('out',"SELECT evalue,ename FROM `#@__sys_enum` WHERE egroup='{$arr['egroup']}' ORDER BY disorder ASC,evalue ASC");
  169. $options = '';
  170. while($row1 = $dsql->GetArray('out'))
  171. {
  172. if (!preg_match("#\.#", $row1['evalue']))
  173. {
  174. $row1['ename'] = ($row1['evalue'] % 500 == 0)? $row1['ename'] : '└─ '.$row1['ename'];
  175. if ($topvalue != $row1['evalue']) $options .= "<option value='{$row1['evalue']}'>{$row1['ename']}</option>";
  176. else $options .= "<option value='{$row1['evalue']}' selected='selected'>{$row1['ename']}</option>";
  177. }
  178. }
  179. //如果添加3级之类
  180. if ($topvalue % 500 != 0) $arr['issign'] = 2;
  181. ?>
  182. <table align="center" class="table maintable mb-3">
  183. <tr>
  184. <td bgcolor="#f5f5f5" colspan="8">
  185. <span class="float-left"><?php echo $selgroup;?> - 子分类管理</span>
  186. <span class="float-right">
  187. <?php
  188. if ($egroup=='nativeplace') {
  189. echo "<a href='stepselect_main.php?action=exarea' class='btn btn-success btn-sm'>导入默认省市地区表</a>";
  190. }
  191. ?>
  192. </span>
  193. </td>
  194. </tr>
  195. <tr>
  196. <td>
  197. <form action="stepselect_main.php" method="post">
  198. <input type="hidden" name="action" value="addenum_save">
  199. <input type="hidden" name="issign" value="<?php echo $arr['issign'];?>">
  200. <input type="hidden" name="egroup" value="<?php echo $arr['egroup'];?>">
  201. <span>隶属分类:</span>
  202. <select name="topvalue" onChange="ChangePage2(this)" class="admin-input-sm">
  203. <option value="0"><?php echo $selgroup;?></option>
  204. <?php echo $options;?>
  205. </select>
  206. <span>分类名称:</span>
  207. <input type="text" name="ename" class="admin-input-lg"></span>
  208. <button type="submit" name="sb2" class="btn btn-success btn-sm">添加分类</button>
  209. </form>
  210. </td>
  211. </tr>
  212. </table>
  213. <form action="stepselect_main.php" name="upenumf" method="post" id="upenumf">
  214. <input type="hidden" name="action" value="upenum">
  215. <input type="hidden" name="aid" value="">
  216. <input type="hidden" name="ename" value="">
  217. <input type="hidden" name="disorder" value="">
  218. </form>
  219. <form name="form1" action="stepselect_main.php" method="post">
  220. <input type="hidden" name="action" value="delenumAllSel">
  221. <table align="center" class="table maintable">
  222. <tr>
  223. <td bgcolor="#f5f5f5" colspan="8"><a href="stepselect_main.php">联动类型管理</a> - <a href="stepselect_main.php?egroup=<?php echo $egroup;?>"><?php echo $selgroup;?></a> - 子分类列表</td>
  224. </tr>
  225. <tr bgcolor="#e9ecef" align="center">
  226. <td width="6%">选择</td>
  227. <td width="6%">id</td>
  228. <td width="20%">枚举名</td>
  229. <td width="20%">类别名</td>
  230. <td width="10%">枚举类型</td>
  231. <td width="10%">枚举值</td>
  232. <td width="10%">组内排序</td>
  233. <td>操作</td>
  234. </tr>
  235. {dede:datalist empty='<tr><td colspan="8" align="center">暂无记录</td></tr>'}
  236. <tr align="center">
  237. <td><input type="checkbox" name="ids[]" value="{dede:field.id/}"></td>
  238. <td>{dede:field.id/}</td>
  239. <td>
  240. <?php
  241. if (!preg_match("#\.#", $fields['evalue'])) {
  242. if ($fields['evalue']>500 && $fields['evalue']%500 != 0) $fields['ename'] = "└─ ".$fields['ename'];
  243. } else {
  244. $fields['ename'] = "└── ".$fields['ename'];
  245. }
  246. ?>
  247. <input type='text' id='ename{dede:field.id/}' value='{dede:field.ename/}'>
  248. </td>
  249. <td>{dede:field.egroup/}</td>
  250. <td>
  251. <?php
  252. if (!preg_match("#\.#", $fields['evalue'])) {
  253. if ($fields['evalue']>500 && $fields['evalue']%500 != 0) echo '二级选择';
  254. else echo '一级选择';
  255. } else {
  256. echo "三级选择";
  257. }
  258. ?>
  259. </td>
  260. <td>{dede:field.evalue/}</td>
  261. <td><input type='text' id='disorder{dede:field.id/}' value='{dede:field.disorder/}'></td>
  262. <td>
  263. <?php
  264. if (!empty($egroup)) {
  265. ?>
  266. <a href='javascript:updateItem({dede:field.id/});' class='btn btn-success btn-sm'><i class='fa fa-repeat'></i> 更新</a>
  267. <a href='stepselect_main.php?action=delenum&id={dede:field.id/}' class='btn btn-success btn-sm'><i class='fa fa-trash'></i> 删除</a>
  268. <?php
  269. } else {
  270. echo "<a href='stepselect_main.php?egroup={$fields['egroup']}'>".$egroups[$fields['egroup']]."</a>";
  271. }
  272. ?>
  273. </td>
  274. </tr>
  275. {/dede:datalist}
  276. <tr>
  277. <td colspan="8">
  278. <a href="javascript:TogSel();" class="btn btn-success btn-sm">选择</a>
  279. <a href="javascript:DelSel();" class="btn btn-danger btn-sm">删除</a>
  280. </td>
  281. </tr>
  282. <tr>
  283. <td bgcolor="#f5f5f5" colspan="8" align="center">{dede:pagelist listsize='6'/}</td>
  284. </tr>
  285. </table>
  286. </form>
  287. <?php
  288. } else {
  289. ?>
  290. <table align="center" class="table maintable mb-3">
  291. <tr>
  292. <td bgcolor="#f5f5f5" colspan="7">联动类型管理</td>
  293. </tr>
  294. <tr bgcolor="#e9ecef" align="center">
  295. <td width="6%">选择</td>
  296. <td width="6%">id</td>
  297. <td width="30%">类别名</td>
  298. <td width="10%">级数</td>
  299. <td width="10%">系统</td>
  300. <td width="10%">缓存名</td>
  301. <td>操作</td>
  302. </tr>
  303. {dede:datalist}
  304. <tr align="center">
  305. <td><input type="checkbox" name="ids[]" value="{dede:field.id/}"></td>
  306. <td>{dede:field.id/}</td>
  307. <td><a href="stepselect_main.php?egroup={dede:field.egroup/}">{dede:field.itemname/}</a></td>
  308. <td>
  309. <?php
  310. switch ($fields['issign']) {
  311. case 0:
  312. echo "一级选择";
  313. break;
  314. case 1:
  315. echo "二级选择";
  316. break;
  317. case 2:
  318. echo "三级选择";
  319. break;
  320. }
  321. ?>
  322. </td>
  323. <td> {dede:field.issystem function="@me==1 ? '是' : '否'"/} </td>
  324. <td>{dede:field.egroup/}</td>
  325. <td>
  326. <a href="stepselect_main.php?action=upallcache&egroup={dede:field.egroup/}" class="btn btn-light btn-sm"><i class="fa fa-repeat"></i> 更新</a>
  327. <a href="stepselect_main.php?egroup={dede:field.egroup/}" class="btn btn-light btn-sm"><i class="fa fa-eye"></i> 查看</a>
  328. </td>
  329. </tr>
  330. {/dede:datalist}
  331. <tr>
  332. <td bgcolor="#f5f5f5" colspan="7" align="center">{dede:pagelist listsize='6'/}</td>
  333. </tr>
  334. </table>
  335. <?php }?>
  336. </body>
  337. </html>