国内流行的内容管理系统(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.

489 lines
19KB

  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. <link rel="stylesheet" href="../static/web/css/daterangepicker.css">
  11. <link rel="stylesheet" href="../static/web/css/cropper.min.css">
  12. <link rel="stylesheet" href="css/albumupload.min.css">
  13. <script>const cfg_uplitpic_cut = '<?php echo $cfg_uplitpic_cut;?>';</script>
  14. <script src="../static/web/js/jquery.min.js"></script>
  15. <script src="../static/web/js/bootstrap.min.js"></script>
  16. <script src="../static/web/js/webajax.js"></script>
  17. <script src="../static/web/js/moment.min.js"></script>
  18. <script src="../static/web/js/daterangepicker.js"></script>
  19. <script src="js/main.js"></script>
  20. <script src="js/album.js"></script>
  21. <script src="js/handlers.js"></script>
  22. <script src="../static/web/js/cropper.min.js"></script>
  23. <script>
  24. var swfu = null;
  25. var vcc = 0;
  26. var albums = [];
  27. function checkSubmit() {
  28. if (document.form1.title.value == "") {
  29. ShowMsg("请输入文档标题");
  30. document.form1.title.focus();
  31. return false;
  32. }
  33. }
  34. </script>
  35. </head>
  36. <body>
  37. <form name="form1" action="album_edit.php" enctype="multipart/form-data" method="post" onSubmit="return checkSubmitAlb();">
  38. <input type="hidden" name="channelid" value="<?php echo $channelid?>">
  39. <input type="hidden" name="id" value="<?php echo $aid?>">
  40. <input type="hidden" name="imagebody" value="">
  41. <input type="hidden" name="dopost" value="save">
  42. <input type="hidden" id="albums" name="albums" value="">
  43. <table width="98%" align="center" cellpadding="2" cellspacing="2" id="needset" class="admin-border my-3">
  44. <tr bgcolor="#f5f5f5">
  45. <td class="admin-td">修改图片文档</td>
  46. </tr>
  47. <tr>
  48. <td class="admin-td">
  49. <table cellspacing="0" cellpadding="0">
  50. <tr>
  51. <td width="90">图片标题:</td>
  52. <td width="400"><input type="text" name="title" id="title" value="<?php echo $arcRow['title'];?>" class="admin-input-lg"></td>
  53. <td width="90">简略标题:</td>
  54. <td><input type="text" name="shorttitle" id="shorttitle" value="<?php echo $arcRow['shorttitle'];?>" class="admin-input-sm"></td>
  55. </tr>
  56. </table>
  57. </td>
  58. </tr>
  59. <tr>
  60. <td class="admin-td">
  61. <table cellspacing="0" cellpadding="0">
  62. <tr>
  63. <td width="90">自定义属性:</td>
  64. <td>
  65. <?php
  66. $dsql->SetQuery("SELECT * FROM `#@__arcatt` ORDER BY sortid ASC");
  67. $dsql->Execute();
  68. while($trow = $dsql->GetObject())
  69. {
  70. if ($trow->att=='j') $jumpclick = " onclick='ShowUrlTr()'";
  71. else $jumpclick = '';
  72. if (preg_match("#".$trow->att."#", $arcRow['flag']))
  73. echo "<label class='mr-2'><input type='checkbox' name='flags[]' id='flags{$trow->att}' value='{$trow->att}' {$jumpclick} checked='checked'> {$trow->attname}[{$trow->att}]</label>";
  74. else
  75. echo "<label class='mr-2'><input type='checkbox' name='flags[]' id='flags{$trow->att}' value='{$trow->att}'{$jumpclick} /> {$trow->attname}[{$trow->att}]</label>";
  76. }
  77. ?>
  78. </td>
  79. </tr>
  80. </table>
  81. </td>
  82. </tr>
  83. <tr>
  84. <td class="admin-td" id="redirecturltr" style="display:<?php echo (empty($addRow['redirecturl']) ? 'none' : 'block');?>">
  85. <table cellspacing="0" cellpadding="0">
  86. <tr>
  87. <td width="90">跳转网址:</td>
  88. <td><input type="text" name="redirecturl" id="redirecturl" value="<?php echo $addRow['redirecturl']?>" class="admin-input-md"></td>
  89. </tr>
  90. </table>
  91. </td>
  92. </tr>
  93. <tr>
  94. <td class="admin-td">
  95. <table cellspacing="0" cellpadding="0">
  96. <tr>
  97. <td width="90">标签:</td>
  98. <td><input type="text" name="tags" id="tags" value="<?php echo $tags;?>" class="admin-input-md">(英文逗号分开,如“DedeBIZ,得德”)</td>
  99. <td width="60">权重:</td>
  100. <td><input type="text" name="weight" id="weight" value="<?php echo $arcRow['weight'];?>" class="admin-input-sm">(越小越靠前)</td>
  101. </tr>
  102. </table>
  103. </td>
  104. </tr>
  105. <tr id="pictable">
  106. <td class="admin-td">
  107. <table cellspacing="0" cellpadding="0">
  108. <tr>
  109. <td width="90">缩略图:</td>
  110. <td width="620">
  111. <input type="text" name="picname" id="picname" value="<?php echo $arcRow['litpic']?>" class="admin-input-md">
  112. <label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
  113. <span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
  114. <button type="button" name="Submit" onclick="SelectImage('form1.picname','');" class="btn btn-success btn-sm">选择图片</button>
  115. <button type="button" id="btnClearAll" class="btn btn-success btn-sm">清空</button>
  116. </td>
  117. <td><img src="<?php if ($arcRow['litpic']!='') echo $arcRow['litpic']; else echo '../static/web/img/thumbnail.jpg';?>" id="litPic" class="thumbnail-md"></td>
  118. </tr>
  119. </table>
  120. </td>
  121. </tr>
  122. <tr>
  123. <td class="admin-td">
  124. <table cellspacing="0" cellpadding="0">
  125. <tr>
  126. <td width="90">来源:</td>
  127. <td width="260">
  128. <input type="text" name="source" id="source" value="<?php echo $arcRow['source']?>" class="admin-input-sm">
  129. <button type="button" name="selsource" id="selsource" class="btn btn-success btn-sm">选择</button>
  130. </td>
  131. <td width="90">作者:</td>
  132. <td>
  133. <input type="text" name="writer" id="writer" value="<?php echo $arcRow['writer']?>" class="admin-input-sm">
  134. <button type="button" name="selwriter" id="selwriter" class="btn btn-success btn-sm">选择</button>
  135. </td>
  136. </tr>
  137. </table>
  138. </td>
  139. </tr>
  140. <tr>
  141. <td class="admin-td">
  142. <table cellspacing="0" cellpadding="0">
  143. <tr>
  144. <td width="90">发布栏目:</td>
  145. <td width="360">
  146. <?php
  147. $typeOptions = GetOptionList($arcRow['typeid'],$cuserLogin->getUserChannel(),$channelid);
  148. echo "<select name='typeid' id='typeid' class='admin-input-sm'>";
  149. if ($arcRow['typeid']=='0') echo "<option value='0' selected>请选择主分类</option>";
  150. echo $typeOptions;
  151. echo '</select>';
  152. ?>
  153. <i class="btn btn-sm fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $arcRow['typeid'];?>')" title="快捷选择"></i>
  154. </td>
  155. <td width="90">需要金币:</td>
  156. <td><input type="text" name="money" id="money" value="<?php echo $arcRow['money']?>" class="admin-input-sm"></td>
  157. </tr>
  158. </table>
  159. </td>
  160. </tr>
  161. <?php if ($cfg_need_typeid2=='Y') {?>
  162. <tr>
  163. <td class="admin-td">
  164. <table cellspacing="0" cellpadding="0">
  165. <tr>
  166. <td width="90">副栏目:</td>
  167. <td>
  168. <span id="typeid2ct"></span>
  169. <input type="text" name="typeid2" id="typeid2" value="<?php echo ($arcRow['typeid2']=='0' ? '' : $arcRow['typeid2']);?>" class="admin-input-sm">
  170. <i class="btn btn-sm fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目"></i>
  171. </td>
  172. </tr>
  173. </table>
  174. </td>
  175. </tr>
  176. <tr>
  177. <td class="admin-td">
  178. <table cellspacing="0" cellpadding="0">
  179. <tr>
  180. <td width="90">关键词:</td>
  181. <td><input type="text" name="keywords" id="keywords" value="<?php echo $arcRow['keywords']?>" class="admin-input-md"></td>
  182. </tr>
  183. </table>
  184. </td>
  185. </tr>
  186. <tr>
  187. <td class="admin-td">
  188. <table cellspacing="0" cellpadding="0">
  189. <tr>
  190. <td width="90">描述:</td>
  191. <td><textarea name="description" id="description" class="admin-textarea-sm"><?php echo $arcRow['description']?></textarea></td>
  192. </tr>
  193. </table>
  194. </td>
  195. </tr>
  196. <?php }?>
  197. <?php PrintAutoFieldsEdit(stripslashes($cInfos['fieldset']),$addRow,'autofield');?>
  198. <tr>
  199. <td class="admin-td">
  200. <table cellspacing="0" cellpadding="0">
  201. <tr>
  202. <td width="90">表现方式:</td>
  203. <td>
  204. <label><input type="radio" name="pagestyle" id="pagestyle1" onclick="checkMuList()" value="1" <?php if ($pagestyle==1) echo " checked='checked'";?>> <img src="../static/web/img/alb2.jpg" title="单页多图样式"></label>
  205. <label><input type="radio" name="pagestyle" id="pagestyle2" onclick="checkMuList()" value="2" <?php if ($pagestyle==2) echo " checked='checked'";?>> <img src="../static/web/img/alb1.jpg" title="幻灯片样式"></label>
  206. <label><input type="radio" name="pagestyle" id="pagestyle3" onclick="checkMuList()" value="3" <?php if ($pagestyle==3) echo " checked='checked'";?>> <img src="../static/web/img/alb3.jpg" title="多缩略图样式"></label>
  207. </td>
  208. </tr>
  209. </table>
  210. </td>
  211. </tr>
  212. <tr id="cfgmulist" style="<?php if ($pagestyle!=3) echo 'display:none';?>">
  213. <td class="admin-td">
  214. <table cellspacing="0" cellpadding="0">
  215. <tr>
  216. <td width="90">多列式参数:</td>
  217. <td>
  218. 行 <input type="text" name="row" id="row" value="<?php echo $irow;?>" size="6">
  219. 列 <input type="text" name="col" id="col" value="<?php echo $icol;?>" size="6">
  220. 缩略图宽度限制:<input type="text" name="ddmaxwidth" id="ddmaxwidth" value="<?php echo $ddmaxwidth;?>" size="6"> 像素
  221. </td>
  222. </tr>
  223. <tr>
  224. <td></td>
  225. <td>(系统仅是每页输出&quot;行x列&quot;张图片,实现需自行控制样式表)</td>
  226. </tr>
  227. </table>
  228. </td>
  229. </tr>
  230. <tr id="spagelist" style="<?php if ($pagestyle!=1) echo 'display:none';?>">
  231. <td class="admin-td">
  232. <table cellspacing="0" cellpadding="0">
  233. <tr>
  234. <td width="90">每页图片数:</td>
  235. <td><input name="pagepicnum" id="pagpicnum" size="10" value="<?php echo $pagepicnum;?>"> 单页多图显示需要设置此参数,这种模式下系统不会为每张图单独生成缩略图</td>
  236. </tr>
  237. </table>
  238. </td>
  239. </tr>
  240. <tr style="display:none">
  241. <td class="admin-td">
  242. <table cellspacing="0" cellpadding="0">
  243. <tr>
  244. <td width="90">限制宽度:</td>
  245. <td><input type="text" name="maxwidth" id="maxwidth" size="10" value="<?php echo $maxwidth?>">(防止图片太宽在模板页中溢出)</td>
  246. </tr>
  247. </table>
  248. </td>
  249. </tr>
  250. <tr id="htmlfield" style="display:none">
  251. <td class="admin-td">
  252. <table cellspacing="0" cellpadding="0">
  253. <tr>
  254. <td width="90">网上复制:</td>
  255. <td>
  256. 复制的源网址:<input type="text" name="copysource" value="http://" class="admin-input-md">(防盗链网站需填写您复制图片的其中一个网页网址)<br>
  257. 把图片从别的网页复制,在这里用Ctrl+V粘贴,提交后程序可直接获取这个区域的所有图片
  258. <input type="button" name="button" id="button" value="预览" onclick="LoadTestDiv()"><br>
  259. <div id="copyhtml" style="margin:10px 0;padding:10px;width:98%;height:200px;border:1px solid #ccc" contenteditable="true">粘贴到这里</div>
  260. </td>
  261. </tr>
  262. </table>
  263. </td>
  264. </tr>
  265. <tr>
  266. <td class="admin-td">
  267. <table width="100%">
  268. <tr>
  269. <td>
  270. <div id="thumbnailsEdit">
  271. <?php
  272. $j = 1;
  273. if ($imgurls!=""){
  274. $dtp = new DedeTagParse();
  275. $dtp->LoadSource($imgurls);
  276. if (is_array($dtp->CTags)) {
  277. foreach($dtp->CTags as $ctag)
  278. {
  279. if ($ctag->GetName()=="img") {
  280. $bigimg = trim($ctag->GetInnerText());
  281. if ($ctag->GetAtt('ddimg') != $bigimg && $ctag->GetAtt('ddimg')!='') {
  282. $litimg = $ctag->GetAtt('ddimg');
  283. } else {
  284. if (preg_match("#^(http|https):\/\/#i", $bigimg)) $litimg = $bigimg;
  285. else $litimg = 'swfupload.php?dopost=ddimg&img='.$bigimg;
  286. }
  287. $fhtml = '';
  288. $fhtml .= "<div class='albCt albEdit' id='albold{$j}'>";
  289. $fhtml .= "<input type='hidden' name='imgurl{$j}' value='{$bigimg}'>";
  290. $fhtml .= "<input type='hidden' name='imgddurl{$j}' value='{$litimg}'>";
  291. $fhtml .= "<img src='{$litimg}' id='lit{$j}'>";
  292. $fhtml .= "<div class='my-2'>标题:<input type='text' name='imgmsg{$j}' value='".$ctag->GetAtt('text')."' class='admin-input-sm'></div>";
  293. $fhtml .= "<div><span class='btn btn-success btn-sm fileinput-button'>更换<input type='file' name='imgfile{$j}' for='item{$j}' class='btnEdit'></span><a href=\"javascript:delAlbPicOld('$bigimg',$j)\" class=\"btn btn-success btn-sm\">删除</a></div>";
  294. $fhtml .= "</div>";
  295. echo $fhtml;
  296. $j++;
  297. }
  298. }
  299. }
  300. $dtp->Clear();
  301. }
  302. ?>
  303. </div>
  304. </td>
  305. </tr>
  306. </table>
  307. </td>
  308. </tr>
  309. <tr>
  310. <td class="admin-td">
  311. <table cellspacing="0" cellpadding="0">
  312. <tr>
  313. <td width="90">添加图片:</td>
  314. <td><span class="btn btn-success btn-sm fileinput-button">上传图片(支持多选)<input type="file" name="files[]" id="iptAlbumImages" multiple></span></td>
  315. </tr>
  316. </table>
  317. </td>
  318. </tr>
  319. <tr>
  320. <td class="admin-td">
  321. <table width="100%">
  322. <tr>
  323. <td>
  324. <div id="divFileProgressContainer"></div>
  325. <div id="thumbnails"></div>
  326. </td>
  327. </tr>
  328. </table>
  329. </td>
  330. </tr>
  331. <tr>
  332. <td class="admin-td">
  333. <table cellspacing="0" cellpadding="0">
  334. <tr>
  335. <td width="90">图片文档:</td>
  336. <td><?php GetEditor("body",$body,400,"Diy");?></td>
  337. </tr>
  338. </table>
  339. </td>
  340. </tr>
  341. <tr>
  342. <td class="admin-td">
  343. <table cellspacing="0" cellpadding="0">
  344. <tr>
  345. <td width="90">评论选项:</td>
  346. <td width="260">
  347. <label><input type="radio" name="notpost" value="0" <?php if ($arcRow['notpost']==0) echo "checked='1'";?>> 允许评论</label>
  348. <label><input type="radio" name="notpost" value="1" <?php if ($arcRow['notpost']==1) echo "checked='1'";?>> 禁止评论</label>
  349. </td>
  350. <td width="90">发布选项:</td>
  351. <td>
  352. <label><input type="radio" name="ishtml" value="1" <?php if ($arcRow["ismake"]!=-1) echo "checked";?>> 生成网页</label>
  353. <label><input type="radio" name="ishtml" value="0" <?php if ($arcRow["ismake"]==-1) echo "checked";?>> 仅动态浏览</label>
  354. </td>
  355. </tr>
  356. </table>
  357. </td>
  358. </tr>
  359. <tr>
  360. <td class="admin-td">
  361. <table cellspacing="0" cellpadding="0">
  362. <tr>
  363. <td width="90">文档排序:</td>
  364. <td width="260">
  365. <select name="sortup" id="sortup" class="admin-input-sm">
  366. <?php
  367. $subday = SubDay($arcRow["sortrank"],$arcRow["pubdate"]);
  368. echo "<option value='0'>正常排序</option>";
  369. if ($subday>0) echo "<option value='$subday' selected>置顶<span class='text-primary'>$subday</span>天</option>";
  370. ?>
  371. <option value="7">置顶一周</option>
  372. <option value="30">置顶一个月</option>
  373. <option value="90">置顶三个月</option>
  374. <option value="180">置顶半年</option>
  375. <option value="360">置顶一年</option>
  376. </select>
  377. </td>
  378. <td width="90">标题颜色:</td>
  379. <td>
  380. <input type="text" name="color" id="color" value="<?php echo $arcRow['color']?>" class="admin-input-sm">
  381. <button type="button" name="modcolor" id="modcolor" class="btn btn-success btn-sm" onclick="ShowColor(event,this)">选取</button>
  382. </td>
  383. </tr>
  384. </table>
  385. </td>
  386. </tr>
  387. <tr>
  388. <td class="admin-td">
  389. <table cellspacing="0" cellpadding="0">
  390. <tr>
  391. <td width="90">阅读权限:</td>
  392. <td width="260">
  393. <select name="arcrank" id="arcrank" class="admin-input-sm">
  394. <option value="<?php echo $arcRow['arcrank']?>"><?php echo $arcRow["rankname"]?></option>
  395. <?php
  396. $urank = $cuserLogin->getUserRank();
  397. $dsql->SetQuery("SELECT * FROM #@__arcrank where adminrank<='$urank'");
  398. $dsql->Execute();
  399. while($row = $dsql->GetObject()){
  400. echo "<option value='".$row->rank."'>".$row->membername."</option>";
  401. }
  402. ?>
  403. </select>
  404. </td>
  405. <td width="90">文件名称:</td>
  406. <td><input type="text" name="filename" id="filename" value="<?php echo $arcRow['filename']?>" class="admin-input-sm">(不包括后缀名如.html等)
  407. </td>
  408. </tr>
  409. </table>
  410. </td>
  411. </tr>
  412. <tr>
  413. <td class="admin-td">
  414. <table cellspacing="0" cellpadding="0">
  415. <tr>
  416. <td width="90">发布时间:</td>
  417. <td width="260">
  418. <?php
  419. $nowtime = GetDateTimeMk(time());
  420. echo "<input type='text' name='pubdate' value='$nowtime' id='pubdate' class='datepicker admin-input-sm'>";
  421. ?>
  422. </td>
  423. <td width="90">浏览次数:</td>
  424. <td><input type="text" name="click" value="<?php echo $arcRow['click'];?>" class="admin-input-sm"></td>
  425. </tr>
  426. </table>
  427. </td>
  428. </tr>
  429. <tr bgcolor="#f5f5f5">
  430. <td align="center" class="admin-td">
  431. <button type="submit" class="btn btn-success btn-sm">保存</button>
  432. <button type="button" class="btn btn-outline-success btn-sm" onclick="location.reload();">重置</button>
  433. </td>
  434. </tr>
  435. </table>
  436. </form>
  437. <script>InitPage();</script>
  438. <script>
  439. $(".btnEdit").change(function(val){
  440. var formData = new FormData();
  441. var fileData = val.target.files[0];
  442. formData.append('file', fileData);
  443. $.ajax({
  444. url: 'api.php?action=upload_image',
  445. type: 'POST',
  446. data: formData,
  447. processData: false,
  448. contentType: false,
  449. success: function (result) {
  450. if (result.code === 0) {
  451. let idx = val.target.getAttribute("for").replace("item","");
  452. $(`input[name='imgurl${idx}']`).val(result.data);
  453. $(`input[name='imgddurl${idx}']`).val(result.data);
  454. $("#lit"+idx).attr('src', result.data);
  455. }
  456. },
  457. error: function (xhr, status, error) {
  458. alert(error); //处理上传失败后的回调
  459. }
  460. });
  461. })
  462. $("#iptAlbumImages").change(function(val){
  463. for (let i = 0; i < val.target.files.length; i++) {
  464. const f = val.target.files[i];
  465. var formData = new FormData();
  466. var fileData = f;
  467. formData.append('file', fileData);
  468. $.ajax({
  469. url: 'api.php?action=upload_image',
  470. type: 'POST',
  471. data: formData,
  472. processData: false,
  473. contentType: false,
  474. success: function (result) {
  475. if (result.code === 0) {
  476. // console.log(result)
  477. addImage(result.data, 0);
  478. $("#iptAlbumImages").val('');
  479. }
  480. },
  481. error: function (xhr, status, error) {
  482. alert(error); //处理上传失败后的回调
  483. }
  484. });
  485. }
  486. })
  487. </script>
  488. </body>
  489. </html>