Browse Source

Merge branch 'xsblend' into develop

tags/6.2.12
tianya 7 months ago
parent
commit
19a5df7682
100 changed files with 855 additions and 1398 deletions
  1. +9
    -0
      docs/changelog.md
  2. +4
    -10
      src/admin/actionsearch_class.php
  3. +2
    -2
      src/admin/album_add.php
  4. +1
    -1
      src/admin/album_edit.php
  5. +1
    -1
      src/admin/archives_add.php
  6. +10
    -10
      src/admin/archives_do.php
  7. +1
    -1
      src/admin/archives_edit.php
  8. +1
    -1
      src/admin/archives_sg_add.php
  9. +1
    -1
      src/admin/archives_sg_edit.php
  10. +2
    -2
      src/admin/article_add.php
  11. +2
    -2
      src/admin/article_description_main.php
  12. +1
    -1
      src/admin/article_edit.php
  13. +2
    -2
      src/admin/article_keywords_select.php
  14. +0
    -43
      src/admin/article_string_mix.php
  15. +1
    -1
      src/admin/article_test_same.php
  16. +1
    -1
      src/admin/cards_make.php
  17. +1
    -1
      src/admin/catalog_add.php
  18. +1
    -1
      src/admin/catalog_del.php
  19. +3
    -3
      src/admin/catalog_do.php
  20. +4
    -4
      src/admin/content_batchup_action.php
  21. +1
    -1
      src/admin/css/codemirror.css
  22. +1
    -1
      src/admin/css/login.min.css
  23. +22
    -10
      src/admin/dialog/select_images.php
  24. +1
    -1
      src/admin/dialog/select_images_post.php
  25. +191
    -189
      src/admin/dialog/select_mimages.php
  26. +2
    -2
      src/admin/dialog/select_soft_post.php
  27. +1
    -1
      src/admin/dialog/select_templets_post.php
  28. +1
    -1
      src/admin/diy_edit.php
  29. +1
    -1
      src/admin/erraddsave.php
  30. +1
    -1
      src/admin/feedback_edit.php
  31. +1
    -1
      src/admin/feedback_main.php
  32. +1
    -1
      src/admin/file_class.php
  33. +1
    -1
      src/admin/file_manage_control.php
  34. +2
    -2
      src/admin/file_manage_view.php
  35. +1
    -1
      src/admin/friendlink_add.php
  36. +1
    -1
      src/admin/friendlink_edit.php
  37. +5
    -82
      src/admin/inc/inc_action_info.php
  38. +3
    -3
      src/admin/inc/inc_list_functions.php
  39. +2
    -3
      src/admin/inc/inc_menu.php
  40. +4
    -4
      src/admin/index_body.php
  41. +2
    -2
      src/admin/index_testenv.php
  42. +42
    -58
      src/admin/js/album.js
  43. +77
    -122
      src/admin/js/body.js
  44. +23
    -0
      src/admin/js/catalog.js
  45. +0
    -94
      src/admin/js/float.js
  46. +0
    -23
      src/admin/js/global.js
  47. +0
    -22
      src/admin/js/handlers.js
  48. +38
    -40
      src/admin/js/list.js
  49. +155
    -261
      src/admin/js/main.js
  50. +3
    -4
      src/admin/js/search.js
  51. +26
    -28
      src/admin/js/update.js
  52. +2
    -4
      src/admin/js/user.js
  53. +1
    -1
      src/admin/login.php
  54. +1
    -1
      src/admin/makehtml_all.php
  55. +4
    -4
      src/admin/makehtml_archives_action.php
  56. +2
    -2
      src/admin/makehtml_freelist_action.php
  57. +4
    -4
      src/admin/makehtml_homepage.php
  58. +3
    -3
      src/admin/makehtml_taglist_action.php
  59. +1
    -1
      src/admin/media_add.php
  60. +4
    -4
      src/admin/member_do.php
  61. +1
    -1
      src/admin/member_toadmin.php
  62. +8
    -8
      src/admin/module_main.php
  63. +1
    -1
      src/admin/module_upload.php
  64. +10
    -10
      src/admin/mychannel_edit.php
  65. +1
    -1
      src/admin/mychannel_field_add.php
  66. +1
    -1
      src/admin/mychannel_field_edit.php
  67. +1
    -1
      src/admin/plus_edit.php
  68. +2
    -2
      src/admin/soft_add.php
  69. +1
    -1
      src/admin/soft_edit.php
  70. +4
    -4
      src/admin/sys_admin_user_edit.php
  71. +0
    -109
      src/admin/sys_admin_user_tj.php
  72. +5
    -5
      src/admin/sys_data.php
  73. +2
    -2
      src/admin/sys_data_replace.php
  74. +5
    -6
      src/admin/sys_info.php
  75. +1
    -1
      src/admin/sys_info_mark.php
  76. +1
    -1
      src/admin/sys_safetest.php
  77. +17
    -17
      src/admin/sys_sql_query.php
  78. +1
    -1
      src/admin/tag_test_action.php
  79. +1
    -2
      src/admin/templets/action_search.htm
  80. +5
    -6
      src/admin/templets/ad_add.htm
  81. +5
    -6
      src/admin/templets/ad_edit.htm
  82. +2
    -2
      src/admin/templets/adtype_main.htm
  83. +5
    -6
      src/admin/templets/album_add.htm
  84. +7
    -8
      src/admin/templets/album_edit.htm
  85. +4
    -4
      src/admin/templets/archives_add.htm
  86. +5
    -5
      src/admin/templets/archives_edit.htm
  87. +3
    -3
      src/admin/templets/archives_sg_add.htm
  88. +3
    -3
      src/admin/templets/archives_sg_edit.htm
  89. +6
    -7
      src/admin/templets/article_add.htm
  90. +5
    -6
      src/admin/templets/article_edit.htm
  91. +4
    -8
      src/admin/templets/article_keywords_select.htm
  92. +6
    -6
      src/admin/templets/catalog_add.htm
  93. +34
    -41
      src/admin/templets/catalog_add_quick.htm
  94. +4
    -4
      src/admin/templets/catalog_edit.htm
  95. +1
    -22
      src/admin/templets/catalog_main.htm
  96. +1
    -1
      src/admin/templets/content_att.htm
  97. +6
    -6
      src/admin/templets/content_batch_up.htm
  98. +2
    -2
      src/admin/templets/content_i_list.htm
  99. +3
    -3
      src/admin/templets/content_list.htm
  100. +2
    -2
      src/admin/templets/content_s_list.htm

+ 9
- 0
docs/changelog.md View File

@@ -1,6 +1,15 @@
# 更新记录
通过访问 https://www.dedebiz.com/git 获取完整更新记录

# V6.2.12
- 优化后台部分代码面向对象,提高性能正确引导,致力于打造高效简单轻型CMS;
- 增强图片选择器,鼠标移动小图标预览;
- 调整前后台提示,在实际开发网站中diy;
- 调整前台默认模板采用标准HTML5元素利于SEO优化;
- 调整后台和默认模板及会员中心的JQ文件引用问题;
- 修正谷歌浏览器ID重复部分提示问题;
- 修正资源选择器上传回调问题;

# V6.2.11
- 增加商业版扩展DedeBIZ Search;
- 增加用户中心个人主页功能;


+ 4
- 10
src/admin/actionsearch_class.php View File

@@ -49,11 +49,10 @@ class ActionSearch
//进行权限判断
if (TestPurview($val['purview'])) {
//如果有操作权限
if ($this->_strpos($val['title'], $this->keyword) !== false || $this->_strpos($val['description'], $this->keyword) !== false) {
if ($this->_strpos($val['title'], $this->keyword) !== false) {
//一级项目匹配
$this->result[$i]['toptitle'] = $this->redColorKeyword($this->asarray[$key]['toptitle']);
$this->result[$i]['title'] = $this->redColorKeyword($this->asarray[$key]['title']);
$this->result[$i]['description'] = $this->redColorKeyword($this->asarray[$key]['description']);
//二级项目匹配
$this->result[$i]['soniterm'][] = $this->redColorKeyword($val);
}
@@ -74,17 +73,12 @@ class ActionSearch
{
if (is_array($text)) {
foreach ($text as $key => $value) {
if ($key == 'title' || $key == 'description') {
//仅对title,description进行数组替换
if ($key == 'description') {
$text[$key] = str_replace($this->keyword, '<span class="text-primary"><small>'.$this->keyword.'</small></span>', $text[$key]);
} else {
$text[$key] = str_replace($this->keyword, '<span class="text-primary">'.$this->keyword.'</span>', $text[$key]);
}
if ($key == 'title') {
$text[$key] = str_replace($this->keyword, '<b class="text-danger">'.$this->keyword.'</b>', $text[$key]);
}
}
} else {
$text = str_replace($this->keyword, '<span class="text-primary"><small>'.$this->keyword.'</small></span>', $text);
$text = str_replace($this->keyword, '<b class="text-danger">'.$this->keyword.'</b>', $text);
}
return $text;
}


+ 2
- 2
src/admin/album_add.php View File

@@ -66,7 +66,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_New')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}权限");
}
//对保存的文档进行处理
if (empty($writer)) $writer = $cuserLogin->getUserName();
@@ -194,7 +194,7 @@ if ($dopost != 'save') {
if (empty($addtable)) {
$dsql->ExecuteNoneQuery("DELETE FROM `#@__archives` WHERE id='$arcID'");
$dsql->ExecuteNoneQuery("DELETE FROM `#@__arctiny` WHERE id='$arcID'");
ShowMsg("没找到模型<span class='text-primary'>{$channelid}</span>主表信息,无法完成操作", "javascript:;");
ShowMsg("没找到模型{$channelid}主表信息,无法完成操作", "javascript:;");
exit();
}
$useip = GetIP();


+ 1
- 1
src/admin/album_edit.php View File

@@ -79,7 +79,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_Edit')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>文档权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}文档权限");
}
//对保存的文档进行处理
$pubdate = GetMkTime($pubdate);


+ 1
- 1
src/admin/archives_add.php View File

@@ -66,7 +66,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_New')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}权限");
}
//对保存的文档进行处理
if (empty($writer)) $writer = $cuserLogin->getUserName();


+ 10
- 10
src/admin/archives_do.php View File

@@ -190,7 +190,7 @@ else if ($dopost == "commendArchives") {
$dsql->ExecuteNoneQuery("UPDATE `{$maintable}` SET `flag`='$flag' WHERE aid='{$aid}' ");
}
}
ShowMsg("成功把所选文档设为推荐", $ENV_GOBACK_URL);
ShowMsg("成功把文档设为推荐", $ENV_GOBACK_URL);
exit();
}
//生成网页
@@ -208,7 +208,7 @@ else if ($dopost == "makeArchives") {
$i++;
$pageurl = MakeArt($aid, false);
}
ShowMsg("成功更新指定<span class='text-primary'>$i</span>个文件", $ENV_GOBACK_URL);
ShowMsg("成功更新指定".$i."个文档", $ENV_GOBACK_URL);
exit();
}
//审核文档
@@ -317,7 +317,7 @@ else if ($dopost == "checkArchives") {
$arc = new Archives($aid);
$arc->MakeHtml();
}
ShowMsg("成功移动<span class='text-primary'>$j</span>个文档", $ENV_GOBACK_URL);
ShowMsg("成功移动".$j."个文档", $ENV_GOBACK_URL);
exit();
}
}
@@ -373,7 +373,7 @@ else if ($dopost == "delArchives") {
$win->AddHidden("dopost", $dopost);
$win->AddHidden("qstr", $qstr);
$win->AddHidden("aid", $aid);
$win->AddTitle("您确定删除,序号<span class='text-primary'>$qstr</span>文档吗");
$win->AddTitle("您确定删除,序号".$qstr."文档吗");
$winform = $win->GetWindow("ok");
$win->Display();
}
@@ -424,7 +424,7 @@ else if ($dopost == 'clear') {
$win->AddHidden("qstr", $qstr);
$win->AddHidden("aid", $aid);
$win->AddHidden("recycle", $recycle);
$win->AddTitle("清空回收站<span class='text-primary'>$num</span>篇文档<br>您确定删除,序号<span class='text-primary'>$qstr</span>文档吗");
$win->AddTitle("清空回收站".$num."篇文档<br>您确定删除,序号".$qstr."文档吗");
$winform = $win->GetWindow("ok");
$win->Display();
}
@@ -462,7 +462,7 @@ else if ($dopost == 'del') {
$win->AddHidden("qstr", $qstr);
$win->AddHidden("aid", $aid);
$win->AddHidden("recycle", $recycle);
$win->AddTitle("您确要删除,序号<span class='text-primary'>$qstr</span>文档吗");
$win->AddTitle("您确要删除,序号".$qstr."文档吗");
$winform = $win->GetWindow("ok");
$win->Display();
}
@@ -556,7 +556,7 @@ else if ($dopost == 'quickEditSave') {
require_once(DEDEADMIN.'/inc/inc_archives_functions.php');
//权限检测
if (!TestPurview('a_Edit')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>文档权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}文档权限");
}
$title = dede_htmlspecialchars(cn_substrR($title, $cfg_title_maxlen));
$shorttitle = cn_substrR($shorttitle, 36);
@@ -584,7 +584,7 @@ else if ($dopost == 'quickEditSave') {
//更新网页
$artUrl = MakeArt($aid, TRUE, TRUE);
$backurl = !empty($_COOKIE['ENV_GOBACK_URL']) ? $_COOKIE['ENV_GOBACK_URL'] : '-1';
ShowMsg('成功更新一篇文档指定属性', $backurl);
ShowMsg('成功更新一篇文档属性', $backurl);
exit();
}
//分析并自动获取文档关键词
@@ -700,7 +700,7 @@ else if ($dopost == 'attsAdd') {
$dsql->ExecuteNoneQuery("UPDATE `{$maintable}` SET `flag`='$flag' WHERE aid='{$aid}' ");
}
}
ShowMsg("成功对选中文档添加指定属性", $ENV_GOBACK_URL);
ShowMsg("成功添加文档指定属性", $ENV_GOBACK_URL);
exit();
}
//批量删除属性
@@ -743,7 +743,7 @@ else if ($dopost == 'attsDel') {
$flag = trim(join(',', $okflags));
$dsql->ExecuteNoneQuery("UPDATE `{$maintable}` SET `flag`='$flag' WHERE {$idname}='{$aid}' ");
}
ShowMsg("成功对选中文档删除指定属性", $ENV_GOBACK_URL);
ShowMsg("成功删除文档指定属性", $ENV_GOBACK_URL);
exit();
}
//获得批量属性处理Ajax窗体


+ 1
- 1
src/admin/archives_edit.php View File

@@ -65,7 +65,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_Edit')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>文档权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}文档权限");
}
//对保存的文档进行处理
$pubdate = GetMkTime($pubdate);


+ 1
- 1
src/admin/archives_sg_add.php View File

@@ -54,7 +54,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_New')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}权限");
}
//对保存的文档进行处理
if (empty($writer)) $writer = $cuserLogin->getUserName();


+ 1
- 1
src/admin/archives_sg_edit.php View File

@@ -51,7 +51,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_Edit')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>文档权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}文档权限");
}
//对保存的文档进行处理
if (empty($flags)) $flag = '';


+ 2
- 2
src/admin/article_add.php View File

@@ -68,7 +68,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_New')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}权限");
}
//对保存的文档进行处理
if (empty($writer)) $writer = $cuserLogin->getUserName();
@@ -152,7 +152,7 @@ if ($dopost != 'save') {
if (empty($addtable)) {
$dsql->ExecuteNoneQuery("DELETE FROM `#@__archives` WHERE id='$arcID'");
$dsql->ExecuteNoneQuery("DELETE FROM `#@__arctiny` WHERE id='$arcID'");
ShowMsg("没找到模型<span class='text-primary'>{$channelid}</span>主表信息,无法完成操作", "javascript:;");
ShowMsg("没找到模型{$channelid}主表信息,无法完成操作", "javascript:;");
exit();
}
$useip = GetIP();


+ 2
- 2
src/admin/article_description_main.php View File

@@ -80,7 +80,7 @@ if ($dojob == '') {
}
$dvlen = $tjlen * 1;
$tjsta = "<div class='progress mb-3'><div class='progress-bar progress-bar-striped bg-success' role='progressbar' aria-valuenow='$dvlen%' aria-valuemin='0' aria-valuemax='100' style='width:$dvlen%'>$dvlen%</div></div>";
$tjsta .= "完成更新文档总数<span class='text-primary'>$tjlen</span>%";
$tjsta .= "完成更新文档总数$tjlen%";
$nurl = "article_description_main.php?totalnum=$totalnum&startdd={$startdd}&pagesize=$pagesize&table={$table}&field={$field}&dsize={$dsize}&msize={$msize}&channel={$channel}&dojob={$dojob}";
ShowMsg($tjsta, $nurl, 0, 500);
exit();
@@ -140,7 +140,7 @@ if ($dojob == '') {
}
$dvlen = $tjlen * 1;
$tjsta = "<div class='progress mb-3'><div class='progress-bar progress-bar-striped bg-success' role='progressbar' aria-valuenow='$dvlen%' aria-valuemin='0' aria-valuemax='100' style='width:$dvlen%'>$dvlen%</div></div>";
$tjsta .= "完成更新文档总数<span class='text-primary'>$tjlen</span>%";
$tjsta .= "完成更新文档总数$tjlen%";
if ($tjnum < $totalnum) {
$nurl = "article_description_main.php?totalnum=$totalnum&startdd=".($startdd + $pagesize)."&pagesize=$pagesize&table={$table}&field={$field}&dsize={$dsize}&msize={$msize}&channel={$channel}&dojob={$dojob}";
ShowMsg($tjsta, $nurl, 0, 500);


+ 1
- 1
src/admin/article_edit.php View File

@@ -71,7 +71,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_Edit')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>文档权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}文档权限");
}
//对保存的文档进行处理
$pubdate = GetMkTime($pubdate);


+ 2
- 2
src/admin/article_keywords_select.php View File

@@ -23,11 +23,11 @@ $dlist->Display();
function GetSta($sta)
{
if ($sta == 1) return " <span class='btn btn-success btn-sm'>已启用</span>";
else return " <span class='btn btn-outline-danger btn-sm'>禁用</span>";
else return " <span class='btn btn-outline-warning btn-sm'>禁用</span>";
}
function GetMan($sta)
{
if ($sta == 1) return " <span class='btn btn-danger btn-sm'>已禁用</span>";
if ($sta == 1) return " <span class='btn btn-warning btn-sm'>已禁用</span>";
else return " <span class='btn btn-outline-success btn-sm'>启用</span>";
}
?>

+ 0
- 43
src/admin/article_string_mix.php View File

@@ -1,43 +0,0 @@
<?php
/**
* 防采集工具
*
* @version $id:article_string_mix.php 14:31 2010年7月12日 tianya $
* @package DedeBIZ.Administrator
* @copyright Copyright (c) 2022 DedeBIZ.COM
* @license GNU GPL v2 (https://www.dedebiz.com/license)
* @link https://www.dedebiz.com
*/
require_once(dirname(__FILE__).'/config.php');
require_once(DEDEINC.'/libraries/oxwindow.class.php');
CheckPurview('sys_StringMix');
if (empty($dopost)) $dopost = '';
if (empty($allsource)) $allsource = '';
else $allsource = stripslashes($allsource);
$m_file = DEDEDATA."/downmix.data.inc";
//保存
if ($dopost == "save") {
CheckCSRF();
$fp = fopen($m_file, 'w');
flock($fp, 3);
fwrite($fp, $allsource);
fclose($fp);
echo "<script>alert('成功保存字符串混淆');</script>";
}
//读出
if (empty($allsource) && filesize($m_file) > 0) {
$fp = fopen($m_file, 'r');
$allsource = fread($fp, filesize($m_file));
fclose($fp);
}
make_hash();
$wecome_info = "防采集工具";
$win = new OxWindow();
$win->Init('article_string_mix.php', 'js/blank.js', 'POST');
$win->AddHidden('dopost', 'save');
$win->AddHidden('token', $_SESSION['token']);
$win->AddTitle("<div class='alert alert-info mb-0'>启用字符串混淆来防采集功能,文档模板需要的字段加上function='RndString(@me)'属性,如:{dede:field name='body' function='RndString(@me)'/}</div>");
$win->AddMsgItem("<tr><td><textarea name='allsource' id='allsource' class='admin-textarea-xl'>$allsource</textarea></td></tr>");
$winform = $win->GetWindow('ok');
$win->Display();
?>

+ 1
- 1
src/admin/article_test_same.php View File

@@ -71,7 +71,7 @@ else if ($dopost == 'delsel') {
}
}
$dsql->ExecuteNoneQuery(" OPTIMIZE TABLE `$maintable`;");
ShowMsg("一共删除了<span class='text-primary'>{$totalarc}</span>篇重复的文档", "javascript:;");
ShowMsg("成功删除{$totalarc}篇重复文档", "javascript:;");
exit();
}
//向导页


+ 1
- 1
src/admin/cards_make.php View File

@@ -50,6 +50,6 @@ elseif ($dopost == 'make') {
$dsql->ExecuteNoneQuery($inquery);
echo "成功生成积分:{$cardid}<br>";
}
echo "成功生成<span class='text-primary'>{$mnum}</span>个积分";
echo "成功生成{$mnum}个积分";
}
?>

+ 1
- 1
src/admin/catalog_add.php View File

@@ -169,7 +169,7 @@ if ($dopost == 'quick') {
$true_typedir = str_replace("{cmspath}", $cfg_cmspath, $typedir);
$true_typedir = preg_replace("#\/{1,}#", "/", $true_typedir);
if (!CreateDir($true_typedir)) {
ShowMsg("创建目录<span class='text-primary'>{$true_typedir}</span>失败,请检查您的路径是否存在问题", "-1");
ShowMsg("创建目录{$true_typedir}失败,请检查您的路径是否存在问题", "-1");
exit();
}
}


+ 1
- 1
src/admin/catalog_del.php View File

@@ -32,7 +32,7 @@ $win = new OxWindow();
$win->Init('catalog_del.php', 'js/blank.js', 'POST');
$win->AddHidden('id', $id);
$win->AddHidden('dopost', 'ok');
$win->AddTitle("您要确定要删除<span class='text-primary'>{$row['typename']}</span>栏目吗");
$win->AddTitle("您要确定要删除{$row['typename']}栏目吗");
$win->AddItem('栏目的文件保存目录:', $row['typedir']);
$winform = $win->GetWindow('ok');
$win->Display();

+ 3
- 3
src/admin/catalog_do.php View File

@@ -175,7 +175,7 @@ else if ($dopost == 'unitCatalog') {
$reid = $tl->TypeInfos['reid'];
$channelid = $tl->TypeInfos['channeltype'];
if (!empty($row['dd'])) {
ShowMsg("栏目<span style='text-primary'>$typename($typeid)</span>有子栏目,不能进行合并操作", '-1');
ShowMsg("栏目".$typename."有子栏目,不能进行合并操作", '-1');
exit();
}
$typeOptions = $tl->GetOptionArray(0, 0, $channelid);
@@ -188,7 +188,7 @@ else if ($dopost == 'unitCatalog') {
$win->AddHidden('channelid', $channelid);
$win->AddHidden('nextjob', 'unitok');
$win->AddTitle("合并目录时不会删除原来的栏目目录,合并后需手动更新目标栏目的文档网页和列表网页,栏目不能有下级子栏目,只允许子级到更高级或同级或不同父级的情况");
$win->AddItem('您选择的栏目是:', "<span class='text-primary'>$typename($typeid)</span>");
$win->AddItem('您选择的栏目是:', "$typename");
$win->AddItem('您希望合并到那个栏目', "<select name='unittype'>{$typeOptions}</select>");
$winform = $win->GetWindow('ok');
$win->Display();
@@ -237,7 +237,7 @@ else if ($dopost == 'moveCatalog') {
$win->AddHidden('channelid', $channelid);
$win->AddHidden('nextjob', 'unitok');
$win->AddTitle("移动目录时不会删除原来已创建的列表,移动后需重新对栏目创建网页,不允许从父级移动到子级目录,只允许子级到更高级或同级或不同父级的情况");
$win->AddItem('您选择的栏目是:', "$typename($typeid)");
$win->AddItem('您选择的栏目是:', "$typename");
$win->AddItem('您希望移动到那个栏目', "<select name='movetype'>\r\n<option value='0'>移动为顶级栏目</option>\r\n$typeOptions\r\n</select>");
$winform = $win->GetWindow('ok');
$win->Display();


+ 4
- 4
src/admin/content_batchup_action.php View File

@@ -80,7 +80,7 @@ else if ($action == 'del') {
while ($row = $dsql->GetObject('x')) {
if (DelArc($row->id)) $tdd++;
}
ShowMsg("成功删除<span class='text-primary'>$tdd</span>条记录", "javascript:;");
ShowMsg("成功删除".$tdd."条记录", "javascript:;");
exit();
}
//删除空标题文档
@@ -91,7 +91,7 @@ else if ($action == 'delnulltitle') {
while ($row = $dsql->GetObject('x')) {
if (DelArc($row->id)) $tdd++;
}
ShowMsg("成功删除<span class='text-primary'>$tdd</span>条记录", "javascript:;");
ShowMsg("成功删除".$tdd."条记录", "javascript:;");
exit();
}
//删除空文档
@@ -102,7 +102,7 @@ else if ($action == 'delnullbody') {
while ($row = $dsql->GetObject('x')) {
if (DelArc($row->aid)) $tdd++;
}
ShowMsg("成功删除<span class='text-primary'>$tdd</span>条记录", "javascript:;");
ShowMsg("成功删除".$tdd."条记录", "javascript:;");
exit();
}
//修正缩略图错误
@@ -165,7 +165,7 @@ else if ($action == 'delnulltitle') {
while ($row = $dsql->GetObject('x')) {
if (DelArc($row->id)) $tdd++;
}
ShowMsg("成功删除<span class='text-primary'>$tdd</span>条记录", "javascript:;");
ShowMsg("成功删除".$tdd."条记录", "javascript:;");
exit();
}
//修正缩略图错误


+ 1
- 1
src/admin/css/codemirror.css View File

@@ -3,7 +3,7 @@
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 400px;
height: 350px;
color: black;
direction: ltr;
}


+ 1
- 1
src/admin/css/login.min.css View File

@@ -1 +1 @@
body{line-height:1.6;letter-spacing:.6px;font-size:14px;font-family:Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif;color:#545b62;background:#f5f5f5}a{color:#545b62}a:hover{color:#ff8400;text-decoration:none}h2{line-height:1.2;font-size:24px;color:#393d49;font-weight:600}.btn,input,select{font-size:14px!important}.admin-head{padding:1rem 0;background:#fff}.admin-nav{height:36px;line-height:36px}.admin-nav-a{padding-right:30px}.dropdown-menu{min-width:8rem;font-size:14px}.dropdown-item{padding:0 1rem;height:30px;line-height:30px;font-size:14px;color:#545b62!important}.logo,.form-control{height:36px}.login-from{margin:5rem auto;width:500px}.login-box{padding:1.25rem;background:#fff}.login-box,.form-control,.btn-md,.alert,.rounded{border-radius:.5rem!important}.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label,.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label::after,.input-group:not(.has-validation)>.custom-select:not(:last-child),.input-group:not(.has-validation)>.form-control:not(:last-child){border-top-right-radius:0!important;border-bottom-right-radius:0!important}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0!important;border-bottom-left-radius:0!important}#validateimg{border-radius:0 .5rem .5rem 0;cursor:pointer}#browsehappy{padding:1rem 30px;font-size:14px;color:#856404;background:#fff3cd}.browsehappy-close{float:right;font-size:14px;cursor:pointer}@media (max-width:760px){.admin-head{padding:1rem 15px}.admin-nav-a{display:none!important}.login-from{width:100%}}
body{line-height:1.6;letter-spacing:0.6px;font-size:14px;font-family:Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif;color:#545b62;background:#f5f5f5}a{color:#545b62}a:hover{color:#ff8400;text-decoration:none}h2{line-height:1.2;font-size:24px;color:#393d49;font-weight:600}.btn,input,select{font-size:14px!important}.admin-head{padding:1rem 0;background:#fff}.admin-nav{height:36px;line-height:36px}.admin-nav-a{padding-right:30px}.dropdown-menu{min-width:8rem;font-size:14px}.dropdown-item{padding:0 1rem;height:30px;line-height:30px;font-size:14px;color:#545b62!important}.logo,.form-control{height:36px}.login-from{margin:5rem auto;width:500px}.login-box{padding:1.25rem;background:#fff}.login-box,.form-control,.btn-md,.alert,.rounded{border-radius:.5rem!important}.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label,.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label::after,.input-group:not(.has-validation)>.custom-select:not(:last-child),.input-group:not(.has-validation)>.form-control:not(:last-child){border-top-right-radius:0!important;border-bottom-right-radius:0!important}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0!important;border-bottom-left-radius:0!important}#validateimg{border-radius:0 .5rem .5rem 0;cursor:pointer}#browsehappy{padding:1rem 30px;font-size:14px;color:#856404;background:#fff3cd}.browsehappy-close{float:right;font-size:14px;cursor:pointer}@media (max-width:760px){.admin-head{padding:1rem 15px}.admin-nav-a{display:none!important}.login-from{width:100%}}

+ 22
- 10
src/admin/dialog/select_images.php View File

@@ -59,13 +59,10 @@ if (!empty($iseditor)) {
<link rel="stylesheet" href="../../static/web/font/css/font-awesome.min.css">
<link rel="stylesheet" href="../../static/web/css/bootstrap.min.css">
<link rel="stylesheet" href="../../static/web/css/admin.css">
<script src="../js/float.js"></script>
<script src="../../static/web/js/jquery.min.js"></script>
</head>
<body class="body-bg">
<div class="upload-bg shadow-sm">
<div id="floater" class="napisdiv">
<a href="javascript:nullLink();" onclick="document.getElementById('floater').style.display='none';"><img src="../../static/web/img/icon_img.png" id="picview" title="关闭预览"></a>
</div>
<table align="center" class="table icon">
<tr>
<td colspan="3">
@@ -139,7 +136,7 @@ if (!empty($iseditor)) {
else $lstyle = "";
$line = "<tr>
<td>
<a href=\"javascript:;\" onclick=\"ChangeImage('$reurl');\"><img src='$reurl' title='$file'></a>
<a href=\"$reurl\" class=\"toolimg\"><img src='$reurl' title='$file'></a>
<a href=\"javascript:;\" onclick=\"ReturnImg('$reurl');\" $lstyle>$file</a>
</td>
<td>$filesize KB</td>
@@ -154,7 +151,7 @@ if (!empty($iseditor)) {
else $lstyle = "";
$line = "<tr>
<td>
<a href=\"javascript:;\" onclick=\"ChangeImage('$reurl');\"><img src='$reurl' title='$file'></a>
<a href=\"$reurl\" class=\"toolimg\"><img src='$reurl' title='$file'></a>
<a href=\"javascript:;\" onclick=\"ReturnImg('$reurl');\" $lstyle>$file</a>
</td>
<td>$filesize KB</td>
@@ -171,10 +168,6 @@ if (!empty($iseditor)) {
function nullLink() {
return;
}
function ChangeImage(surl) {
document.getElementById('floater').style.display = 'block';
document.getElementById('picview').src = surl;
}
function TNav() {
if (window.navigator.userAgent.indexOf("MSIE") >= 1) return 'IE';
else if (window.navigator.userAgent.indexOf("Firefox") >= 1) return 'FF';
@@ -222,6 +215,25 @@ if (!empty($iseditor)) {
}
window.close();
}
$(function() {
var x = 10;
var y = 20;
$("a.toolimg").mouseover(function(e) {
var toolimg = "<div id='toolimg'><img src='" + this.href + "'></div>";
$("body").append(toolimg);
$("#toolimg").css({
"top": (e.pageY + y) + "px",
"left": (e.pageX + x) + "px"
}).show("fast");
}).mouseout(function() {
$("#toolimg").remove();
}).mousemove(function(e) {
$("#toolimg").css({
"top": (e.pageY + y) + "px",
"left": (e.pageX + x) + "px"
});
});
});
</script>
</body>
</html>

+ 1
- 1
src/admin/dialog/select_images_post.php View File

@@ -59,7 +59,7 @@ if (!preg_match("#^(image|video|audio|application)#i", $mime)) {
ShowMsg("仅支持媒体文件及应用程序上传", -1);
exit;
}
move_uploaded_file($imgfile, $fullfilename) or die("上传文件到<span class='text-primary'>$fullfilename</span>失败");
move_uploaded_file($imgfile, $fullfilename) or die("上传文件到".$fullfilename."失败");
@unlink($imgfile);
if (empty($resize)) {
$resize = 0;


+ 191
- 189
src/admin/dialog/select_mimages.php View File

@@ -5,209 +5,211 @@ include(DEDEDATA.'/mark/inc_photowatermark_config.php');
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="user-scalable=no,width=device-width,initial-scale=1.0,maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="format-detection" content="telephone=no">
<title>插入多图</title>
<link rel="stylesheet" href="../../static/web/font/css/font-awesome.min.css">
<style>body{margin:0;line-height:1.6;font-size:14px;font-family:Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif;color:#545b62;background:#fff}ul{margin:0;padding:0;list-style:none}input[type=radio],input[type=checkbox]{margin:0;height:auto;outline:none;box-shadow:none;vertical-align:text-top}button+button{margin-left:10px}#wrap{padding:10px}#topbar{padding:10px 0;border-bottom:1px solid #ccc;text-align:right}#topbar button{display:inline-block;padding:.25rem .65rem;line-height:1.6;font-size:12px;color:#fff;background:#1eb867;border-color:#1eb867;border-radius:.5rem;border:0;transition:all .5s;text-align:center}.topbar button+.topbar button{margin-left:10px}#topbar button:focus{background:#006829;border-color:#005b24;box-shadow:0 .125rem .25rem rgba(0,0,0,.075);outline:none}#file_list{display:grid;grid-gap:10px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding-top:10px}#file_list:empty:after{content:'拖拽图片到此处上传'}#file_list li{display:block;position:relative;padding:10px;vertical-align:top;border-radius:.5rem}#file_list li.up-now:after{content:'';display:block;position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,0.8) url(../../static/web/img/loadinglit.gif)center center no-repeat;border-radius:.5rem;z-index:999}#file_list li:hover{background:#f5f5f5}#file_list li .picbox{display:flex;flex:0 0 auto;position:relative;padding-top:90%;width:100%;align-items:center;justify-content:center;overflow:hidden}#file_list li .picbox img{display:block;max-width:100%;max-height:100%;position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);border-radius:.5rem}#file_list li .namebox{display:flex;padding:10px;justify-content:center;align-items:flex-start}#file_list li.up-over .picbox:after{position:absolute;bottom:10px;right:0;font-family:'FontAwesome';font-size:18px;color:#1eb867;content:'\f058';z-index:9}#file_list li .tools{display:none;position:absolute;bottom:12px;right:10px;z-index:99}#file_list li:hover .tools{display:block}#file_list li .tools .remove{cursor:pointer}#file_list li .tools .remove:after{font-family:'FontAwesome';font-size:18px;color:#dc3545;content:'\f1f8'}</style>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="user-scalable=no,width=device-width,initial-scale=1.0,maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="format-detection" content="telephone=no">
<title>插入多图</title>
<link rel="stylesheet" href="../../static/web/font/css/font-awesome.min.css">
<link rel="stylesheet" href="../../static/web/css/bootstrap.min.css">
<link rel="stylesheet" href="../../static/web/css/admin.css">
<style>#wrap{padding:10px}#topbar{padding:10px 0;border-bottom:1px solid #ccc;text-align:right}#file_list{display:grid;grid-gap:10px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding-top:10px}#file_list:empty:after{content:'拖拽图片到此处上传'}#file_list li{display:block;position:relative;padding:10px;vertical-align:top;border-radius:.5rem}#file_list li:hover{background:#f5f5f5}#file_list li .picbox{display:flex;flex:0 0 auto;position:relative;padding-top:90%;width:100%;align-items:center;justify-content:center;overflow:hidden}#file_list li .picbox img{display:block;max-width:100%;max-height:100%;position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);border-radius:.5rem}#file_list li .namebox{display:flex;padding:10px;justify-content:center;align-items:flex-start}#file_list li.up-over .picbox:after{position:absolute;bottom:10px;right:0;font-family:'FontAwesome';font-size:18px;color:#1eb867;content:'\f058';z-index:9}#file_list li .tools{display:none;position:absolute;bottom:12px;right:10px;z-index:99}#file_list li:hover .tools{display:block}#file_list li .tools .remove{cursor:pointer}#file_list li .tools .remove:after{font-family:'FontAwesome';font-size:18px;color:#dc3545;content:'\f1f8'}</style>
</head>
<body>
<div id="wrap">
<div id="topbar">
<label><input type="checkbox" name="isWater" id="isWater" <?php if ($photo_markup == '1') echo "checked";?>> 是否水印</label>
<button class="addfile">添加图片</button>
<button class="removeall">清空图片</button>
<button class="upall">全部上传</button>
<div id="wrap">
<div id="topbar">
<label class="mr-2"><input type="checkbox" name="isWater" id="isWater" <?php if ($photo_markup == '1') echo "checked";?>> 是否水印</label>
<button class="btn btn-success btn-sm addfile">添加图片</button>
<button class="btn btn-success btn-sm removeall">清空图片</button>
<button class="btn btn-success btn-sm upall">全部上传</button>
</div>
<ul id="file_list"></ul>
</div>
<ul id="file_list"></ul>
</div>
<script>
var axupimgs = {};
axupimgs.res = [];//存放本地文件的数组
var blobInfo = {file:null}
blobInfo.blob = function() {
return this.file;
}
var upload_handler = async(blobInfo, succFun, failFun) => {
var file = blobInfo.blob();
formData = new FormData();
formData.append('upload', file, file.name);
formData.append('format', "json");
if (document.querySelector('#isWater').checked) {
formData.append('needwatermark', 1);
} else {
//formData.append('needwatermark', 0);
<script>
var axupimgs = {};
axupimgs.res = [];//存放本地文件的数组
var blobInfo = {file:null}
blobInfo.blob = function() {
return this.file;
}
let res = await fetch('select_images_post.php', {
method: 'POST',
body: formData
});
let data = await res.json();
if (typeof data.msg !== 'undefined' && data.msg !== '') {
alert(data.msg)
return;
}
succFun(data.url);
};
var upload_base_path = axupimgs.images_upload_base_path;
//为列表添加排序
function reSort() {
document.querySelectorAll('#file_list li').forEach((el,i) => {
el.setAttribute('data-num',i);
});
}
function isFileImage(file) {
return file && file['type'].split('/')[0] === 'image';
}
function addList(files) {
var files_sum = files.length;
var vDom = document.createDocumentFragment();
for (let i=0;i<files_sum;i++) {
let file = files[i];
if (!isFileImage(file)) {
alert("选择非图片文件无法上传")
var upload_handler = async(blobInfo, succFun, failFun) => {
var file = blobInfo.blob();
formData = new FormData();
formData.append('upload', file, file.name);
formData.append('format', "json");
if (document.querySelector('#isWater').checked) {
formData.append('needwatermark', 1);
} else {
//formData.append('needwatermark', 0);
}
let res = await fetch('select_images_post.php', {
method: 'POST',
body: formData
});
let data = await res.json();
if (typeof data.msg !== 'undefined' && data.msg !== '') {
alert(data.msg)
return;
}
let blobUrl = window.URL.createObjectURL(file)
axupimgs.res.push({file:file,blobUrl:blobUrl,url:''});
let li = document.createElement('li');
li.setAttribute('class','up-no');
li.setAttribute('data-time',file.lastModified);
li.innerHTML='<div class="picbox"><img src="'+blobUrl+'"></div><div class="namebox"><span>'+file.name+'</span></div><div class="tools"><a class="remove"></a></div>';
vDom.appendChild(li);
}
document.querySelector('#file_list').appendChild(vDom);
//reSort();
}
//清空列表
document.querySelector('#topbar .removeall').addEventListener('click',() => {
axupimgs.res=[]
document.querySelectorAll('#file_list li').forEach((el,i) => {
el.parentNode.removeChild(el)
});
});
//拖拽添加
document.addEventListener('dragover', (e) => {
e.stopPropagation();
e.preventDefault();
e.dataTransfer.dropEffect = 'copy';
});
document.addEventListener('drop', (e) => {
e.stopPropagation();
e.preventDefault();
if (!e.dataTransfer.files) {
return false;
succFun(data.url);
};
var upload_base_path = axupimgs.images_upload_base_path;
//为列表添加排序
function reSort() {
document.querySelectorAll('#file_list li').forEach((el,i) => {
el.setAttribute('data-num',i);
});
}
var dropfiles = e.dataTransfer.files;
if (!(dropfiles.length > 0)) {
return false;
function isFileImage(file) {
return file && file['type'].split('/')[0] === 'image';
}
var exts='.png,.gif,.jpg,.jpeg'.replace(/(\s)+/g,'').toLowerCase().split(',');
var files=[];
for ( let file of dropfiles ) {
ext = file.name.split('.');
ext = '.'+ext[ext.length-1];
for (let s of exts) {
if (s==ext) {
files.push(file);
break;
function addList(files) {
var files_sum = files.length;
var vDom = document.createDocumentFragment();
for (let i=0;i<files_sum;i++) {
let file = files[i];
if (!isFileImage(file)) {
alert("选择非图片文件无法上传")
return;
}
let blobUrl = window.URL.createObjectURL(file)
axupimgs.res.push({file:file,blobUrl:blobUrl,url:''});
let li = document.createElement('li');
li.setAttribute('class','up-no');
li.setAttribute('data-time',file.lastModified);
li.innerHTML='<div class="picbox"><img src="'+blobUrl+'"></div><div class="namebox"><span>'+file.name+'</span></div><div class="tools"><a class="remove"></a></div>';
vDom.appendChild(li);
}
document.querySelector('#file_list').appendChild(vDom);
//reSort();
}
if (files.length > 0) {
addList(files)
}
});
//添加文件
document.querySelector('#topbar .addfile').addEventListener('click',() => {
var input = document.createElement('input');
input.setAttribute('type', 'file');
input.setAttribute('multiple', 'multiple');
input.setAttribute('accept', axupimgs.axupimgs_filetype);
input.click();
input.onchange = function() {
var files = this.files;
addList(files);
}
});
var file_i = 0;
function upAllFiles(n) {
var len = axupimgs.res.length;
file_i = n;
if (len == n) {
file_i=0;
document.querySelector('#topbar .upall').innerText='全部上传';
//返回
axupimgs.res.forEach((v,k) => {
let addonHTML = `<img src='${v.url}'>`;
window.opener.CKEDITOR.instances["<?php echo $f ?>"].insertHtml(addonHTML);
})
window.close();
return true;
}
if (axupimgs.res[n].url!='') {
n++;
upAllFiles(n)
} else {
blobInfo.file=axupimgs.res[n].file;
blobInfo.isWater = document.querySelector('#isWater').checked;
upload_handler(blobInfo,function(url) {
if (upload_base_path) {
if (upload_base_path.slice(-1)=='/' && url.substr(0,1)=='/') {
url = upload_base_path + url.slice(1);
} else if (upload_base_path.slice(-1)!='/' && url.substr(0,1)!='/') {
url = upload_base_path + '/' + url;
} else {
url = upload_base_path + url;
}
}
axupimgs.res[file_i].url = url;
filename = url.split('/').pop();
var li = document.querySelectorAll('#file_list li')[file_i];
li.setAttribute('class','up-over');
li.querySelector('.namebox span').innerText = filename;
n++
upAllFiles(n);
},function(err) {
//清空列表
document.querySelector('#topbar .removeall').addEventListener('click',() => {
axupimgs.res=[]
document.querySelectorAll('#file_list li').forEach((el,i) => {
el.parentNode.removeChild(el)
});
});
//拖拽添加
document.addEventListener('dragover', (e) => {
e.stopPropagation();
e.preventDefault();
e.dataTransfer.dropEffect = 'copy';
});
document.addEventListener('drop', (e) => {
e.stopPropagation();
e.preventDefault();
if (!e.dataTransfer.files) {
return false;
}
var dropfiles = e.dataTransfer.files;
if (!(dropfiles.length > 0)) {
return false;
}
var exts='.png,.gif,.jpg,.jpeg'.replace(/(\s)+/g,'').toLowerCase().split(',');
var files=[];
for ( let file of dropfiles ) {
ext = file.name.split('.');
ext = '.'+ext[ext.length-1];
for (let s of exts) {
if (s==ext) {
files.push(file);
break;
}
}
}
if (files.length > 0) {
addList(files)
}
});
//添加文件
document.querySelector('#topbar .addfile').addEventListener('click',() => {
var input = document.createElement('input');
input.setAttribute('type', 'file');
input.setAttribute('multiple', 'multiple');
input.setAttribute('accept', axupimgs.axupimgs_filetype);
input.click();
input.onchange = function() {
var files = this.files;
addList(files);
}
});
var file_i = 0;
function upAllFiles(n) {
var len = axupimgs.res.length;
file_i = n;
if (len == n) {
file_i=0;
document.querySelector('#topbar .upall').innerText='全部上传';
document.querySelectorAll('#file_list li.up-now').forEach((el,i) => {
el.setAttribute('class','up-no');
//返回
axupimgs.res.forEach((v,k) => {
let addonHTML = `<img src='${v.url}'>`;
window.opener.CKEDITOR.instances["<?php echo $f ?>"].insertHtml(addonHTML);
})
window.close();
return true;
}
if (axupimgs.res[n].url!='') {
n++;
upAllFiles(n)
} else {
blobInfo.file=axupimgs.res[n].file;
blobInfo.isWater = document.querySelector('#isWater').checked;
upload_handler(blobInfo,function(url) {
if (upload_base_path) {
if (upload_base_path.slice(-1)=='/' && url.substr(0,1)=='/') {
url = upload_base_path + url.slice(1);
} else if (upload_base_path.slice(-1)!='/' && url.substr(0,1)!='/') {
url = upload_base_path + '/' + url;
} else {
url = upload_base_path + url;
}
}
axupimgs.res[file_i].url = url;
filename = url.split('/').pop();
var li = document.querySelectorAll('#file_list li')[file_i];
li.setAttribute('class','up-over');
li.querySelector('.namebox span').innerText = filename;
n++
upAllFiles(n);
},function(err) {
document.querySelector('#topbar .upall').innerText='全部上传';
document.querySelectorAll('#file_list li.up-now').forEach((el,i) => {
el.setAttribute('class','up-no');
});
alert(err);
});
alert(err);
});
}
}
document.querySelector('#topbar .upall').addEventListener('click',(e) => {
if (e.target.innerText!='全部上传') {
return false;
}
if (axupimgs.res.length > 0) {
document.querySelectorAll('#file_list li.up-no').forEach((el,i) => {
el.classList ? el.classList.add('up-now') : el.className+=' up-now';
});
e.target.innerText='上传中';
upAllFiles(0);
}
}
});
var observ_flist = new MutationObserver( (muList,observe) => {
if (muList[0].addedNodes.length > 0) {
muList[0].addedNodes.forEach((el) => {
el.querySelector('.remove').addEventListener('click',(e) => {
var li = e.target.parentNode.parentNode;
var n = li.getAttribute('data-num');
var el = document.querySelectorAll('#file_list li')[n];
el.parentNode.removeChild(el);
axupimgs.res.splice(n,1);
document.querySelector('#topbar .upall').addEventListener('click',(e) => {
if (e.target.innerText!='全部上传') {
return false;
}
if (axupimgs.res.length > 0) {
document.querySelectorAll('#file_list li.up-no').forEach((el,i) => {
el.classList ? el.classList.add('up-now') : el.className+=' up-now';
});
});
}
reSort();
});
observ_flist.observe(document.querySelector('#file_list'),{childList:true});
</script>
e.target.innerText='上传中';
upAllFiles(0);
}
});
var observ_flist = new MutationObserver( (muList,observe) => {
if (muList[0].addedNodes.length > 0) {
muList[0].addedNodes.forEach((el) => {
el.querySelector('.remove').addEventListener('click',(e) => {
var li = e.target.parentNode.parentNode;
var n = li.getAttribute('data-num');
var el = document.querySelectorAll('#file_list li')[n];
el.parentNode.removeChild(el);
axupimgs.res.splice(n,1);
});
});
}
reSort();
});
observ_flist.observe(document.querySelector('#file_list'),{childList:true});
</script>
</body>
</html>

+ 2
- 2
src/admin/dialog/select_soft_post.php View File

@@ -28,7 +28,7 @@ $cfg_softtype = $cfg_softtype;
$cfg_softtype = str_replace('||', '|', $cfg_softtype);
$uploadfile_name = trim(preg_replace("#[ \r\n\t\*\%\\\/\?><\|\":]{1,}#", '', $uploadfile_name));
if (!preg_match("#\.(".$cfg_softtype.")#i", $uploadfile_name)) {
ShowMsg("您上传的<span class='text-primary'>{$uploadmbtype}</span>扩展名已被系统禁止", "-1");
ShowMsg("您上传的{$uploadmbtype}扩展名已被系统禁止", "-1");
exit();
}
$nowtme = time();
@@ -73,7 +73,7 @@ if (!preg_match("#^(image|video|audio|application)#i", $mime)) {
ShowMsg("仅支持媒体文件及应用程序上传", -1);
exit;
}
move_uploaded_file($uploadfile, $fullfilename) or die("上传文件到<span class='text-primary'>$fullfilename</span>失败");
move_uploaded_file($uploadfile, $fullfilename) or die("上传文件到".$fullfilename."失败");
@unlink($uploadfile);
if ($uploadfile_type == 'application/x-shockwave-flash') {
$mediatype = 2;


+ 1
- 1
src/admin/dialog/select_templets_post.php View File

@@ -34,7 +34,7 @@ if ($filename == '' || !preg_match("#\.(".$cfg_txttype.")#i", $filename)) {
exit();
}
$fullfilename = $cfg_basedir.$activepath."/".$filename;
move_uploaded_file($uploadfile, $fullfilename) or die("上传文件到<span class='text-primary'>$fullfilename</span>失败");
move_uploaded_file($uploadfile, $fullfilename) or die("上传文件到".$fullfilename."失败");
@unlink($uploadfile);
ShowMsg("成功上传文件", "select_templets.php?comeback=".urlencode($filename)."&f=$f&activepath=".urlencode($activepath)."&d=".time());
exit();

+ 1
- 1
src/admin/diy_edit.php View File

@@ -35,7 +35,7 @@ if ($dopost == "save") {
$win->AddHidden("job", "yes");
$win->AddHidden("dopost", $dopost);
$win->AddHidden("diyid", $diyid);
$win->AddTitle("删除自定义表单包括数据,您确定要删除<span class='text-primary'>".$row['name']."</span>自定义表单吗");
$win->AddTitle("删除自定义表单包括数据,您确定要删除".$row['name']."自定义表单吗");
$winform = $win->GetWindow("ok");
$win->Display();
exit();


+ 1
- 1
src/admin/erraddsave.php View File

@@ -78,7 +78,7 @@ if ($dopost == "delete") {
$win->AddHidden("fmdo", "yes");
$win->AddHidden("dopost", $dopost);
$win->AddHidden("id", $id);
$win->AddTitle("您确定要删除<span class='text-primary'>$id</span>错误提示吗");
$win->AddTitle("您确定要删除".$id."错误提示吗");
$winform = $win->GetWindow("ok");
$win->Display();
exit();


+ 1
- 1
src/admin/feedback_edit.php View File

@@ -22,7 +22,7 @@ if ($dopost == 'edit') {
$adminmsg = str_replace(">", "&gt;", $adminmsg);
$adminmsg = str_replace(" ", "&nbsp;&nbsp;", $adminmsg);
$adminmsg = str_replace("\r\n", "<br>\n", $adminmsg);
$msg = $msg."<br>\n"."<span class='text-primary'>管理员回复:$adminmsg</span>\n";
$msg = $msg."<br>\n"."管理员回复:$adminmsg\n";
}
$query = "UPDATE `#@__feedback` SET username='$username',msg='$msg',ischeck=1 WHERE id=$id";
$dsql->ExecuteNoneQuery($query);


+ 1
- 1
src/admin/feedback_main.php View File

@@ -16,7 +16,7 @@ require_once(DEDEINC."/typelink/typelink.class.php");
setcookie("ENV_GOBACK_URL", $dedeNowurl, time() + 3600, "/");
function IsCheck($st)
{
return $st == 1 ? '<span class="btn btn-success btn-sm">已审核</span>' : '<span class="btn btn-danger btn-sm">未审核</span>';
return $st == 1 ? '<span class="btn btn-success btn-sm">已审核</span>' : '<span class="btn btn-warning btn-sm">未审核</span>';
}
function jsTrimjajx($str, $len)
{


+ 1
- 1
src/admin/file_class.php View File

@@ -84,7 +84,7 @@ class FileManagement
ShowMsg("成功移动文件", "file_manage_main.php?activepath=$mpath", 0, 1000);
return 1;
} else {
ShowMsg("移动文件<span class='text-primary'>$oldfile</span>&gt;<span class='text-primary'>$truepath/$mfile</span>失败,某个位置权限不足", "file_manage_main.php?activepath=$mpath", 0, 1000);
ShowMsg("移动文件".$oldfile." - ".$truepath."/".$mfile."失败", "file_manage_main.php?activepath=$mpath", 0, 1000);
return 0;
}
} else {


+ 1
- 1
src/admin/file_manage_control.php View File

@@ -135,7 +135,7 @@ else if ($fmdo == "upload") {
$j++;
}
}
ShowMsg("成功上传<span class='text-primary'>$j</span>个文件到<span class='text-primary'>$activepath</span>", "file_manage_main.php?activepath=$activepath");
ShowMsg("成功上传".$j."个文件到".$activepath."", "file_manage_main.php?activepath=$activepath");
exit();
}
//空间检查


+ 2
- 2
src/admin/file_manage_view.php View File

@@ -75,9 +75,9 @@ else if ($fmdo == "del") {
$win->AddHidden("activepath", $activepath);
$win->AddHidden("filename", $filename);
if (@is_dir($cfg_basedir.$activepath."/$filename")) {
$msg = "<tr><td>您确定要删除<span class='text-primary'>$filename</span>目录吗</td></tr>";
$msg = "<tr><td>您确定要删除".$filename."目录吗</td></tr>";
} else {
$msg = "<tr><td>您确定要删除<span class='text-primary'>$filename</span>文件吗</td></tr>";
$msg = "<tr><td>您确定要删除".$filename."文件吗</td></tr>";
}
$win->AddTitle("删除文件确认");
$win->AddMsgItem($msg);


+ 1
- 1
src/admin/friendlink_add.php View File

@@ -34,7 +34,7 @@ if ($dopost == "add") {
ShowMsg("非图片格式文件,无法正常上传", -1);
exit;
}
move_uploaded_file($logoimg, $cfg_basedir.$imgurl) or die("复制文件到<span class='text-primary'>".$cfg_basedir.$imgurl."</span>失败");
move_uploaded_file($logoimg, $cfg_basedir.$imgurl) or die("复制文件到".$cfg_basedir.$imgurl."失败");
@unlink($logoimg);
} else {
$imgurl = $logo;


+ 1
- 1
src/admin/friendlink_edit.php View File

@@ -58,7 +58,7 @@ if ($dopost == "delete") {
}
$logoimg_name = trim(preg_replace("#[ \r\n\t\*\%\\\/\?><\|\":]{1,}#", '', $logoimg_name));
$fullfilename = DEDEROOT.'static/flink/'.$logoimg_name;
move_uploaded_file($logoimg, $fullfilename) or die("上传文件到<span class='text-primary'>$fullfilename</span>失败");
move_uploaded_file($logoimg, $fullfilename) or die("上传文件到".$fullfilename."失败");
@unlink($logoimg);
$logo = $cfg_cmspath.'/static/flink/'.$logoimg_name;
}


+ 5
- 82
src/admin/inc/inc_action_info.php View File

@@ -13,41 +13,34 @@ $cuserLogin = new userLogin();
//后台功能操作配置项
$actionSearch[0] = array(
'title' => '常用操作',
'description' => '后台常用操作',
'soniterm' => array(
0 => array(
'title' => '网站栏目管理',
'description' => '网站所有栏目管理',
'purview' => 't_List,t_AccList',
'linkurl' => 'catalog_main.php'
),
1 => array(
'title' => '待审核的文档',
'description' => '所有文档模型发表未审核列表',
'purview' => 'a_Check,a_AccCheck',
'linkurl' => 'content_list.php?arcrank=-1'
),
2 => array(
'title' => '我发布的文档',
'description' => '后台管理登录所发表的文档',
'purview' => 'a_List,a_AccList,a_MyList',
'linkurl' => 'content_list.php?mid=$cuserLogin->userID'
),
3 => array(
'title' => '标签管理',
'description' => '网站所有标签管理',
'purview' => 'sys_Keyword',
'linkurl' => 'tags_main.php'
),
4 => array(
'title' => '评论管理',
'description' => '网站所有评论管理',
'purview' => 'sys_Feedback',
'linkurl' => 'feedback_main.php'
),
5 => array(
'title' => '专题管理',
'description' => '网站所有专题管理',
'purview' => 'spec_New',
'linkurl' => 'content_s_list.php'
),
@@ -61,23 +54,14 @@ $actionSearch[0] = array(
);
$actionSearch[2] = array(
'title' => '附件管理',
'description' => '网站所有附件管理',
'soniterm' => array(
0 => array(
'title' => '上传新文件',
'description' => '上传图片、FLASH、视频音频、附件等其它附件',
'purview' => '',
'linkurl' => 'media_add.php'
),
1 => array(
'title' => '附件管理',
'description' => '网站所有附件管理',
'purview' => 'sys_Upload,sys_MyUpload',
'linkurl' => 'media_main.php'
),
2 => array(
1 => array(
'title' => '文件管理器',
'description' => '文件浏览式附件管理',
'purview' => 'plus_文件管理器',
'linkurl' => 'media_main.php?dopost=filemanager'
),
@@ -85,41 +69,34 @@ $actionSearch[2] = array(
);
$actionSearch[3] = array(
'title' => '文档模型',
'description' => '所有文档模型管理',
'soniterm' => array(
0 => DEDEBIZ_SAFE_MODE? null : array(
'title' => '文档模型管理',
'description' => '网站文档、图片、软件、专题、分类等模型管理',
'purview' => 'c_List',
'linkurl' => 'mychannel_main.php'
),
1 => array(
'title' => '文档单页管理',
'description' => '创建和管理单页面',
'purview' => 'temp_One',
'linkurl' => 'templets_one.php'
),
2 => array(
'title' => '联动类型管理',
'description' => '创建和管理所有联动类型',
'purview' => 'c_Stepseclect',
'linkurl' => 'stepselect_main.php?dopost=filemanager'
),
3 => array(
'title' => '自由列表管理',
'description' => '创建不同的列表形式',
'purview' => 'c_List',
'linkurl' => 'freelist_main.php'
),
3 => array(
'title' => '自定义文档属性',
'description' => '自定义文档属性管理',
'purview' => 'sys_Att',
'linkurl' => 'content_att.php'
),
4 => array(
'title' => '自定义表单管理',
'description' => '创建和管理自定义表单',
'purview' => 'c_List',
'linkurl' => 'diy_main.php'
),
@@ -127,41 +104,34 @@ $actionSearch[3] = array(
);
$actionSearch[4] = array(
'title' => '批量维护',
'description' => '网站数据维护',
'soniterm' => array(
0 => array(
'title' => '文档批量维护',
'description' => '某个栏目或者全部栏目的文档进行批量审核文档、更新网页、移动文档、删除文档',
'purview' => 'sys_ArcBatch',
'linkurl' => 'content_batch_up.php'
),
1 => array(
'title' => '文档重复检测',
'description' => '网站重复标题文档处理',
'purview' => 'sys_ArcBatch',
'linkurl' => 'article_test_same.php'
),
3 => array(
'title' => '文档关键词维护',
'description' => '所有文档关键词批量维护',
'purview' => 'sys_Keyword',
'linkurl' => 'article_keywords_main.php'
),
4 => array(
'title' => '搜索关键词维护',
'description' => '所有搜索关键词管理',
'purview' => 'sys_Keyword',
'linkurl' => 'search_keywords_main.php?dopost=filemanager'
),
5 => array(
'title' => '自动摘要分页',
'description' => '没有填写描述的文档或没分页的文档的自动分页标识自动更新',
'purview' => 'sys_Keyword',
'linkurl' => 'article_description_main.php'
),
6 => DEDEBIZ_SAFE_MODE? null : array(
'title' => '数据库字段替换',
'description' => '网站数据库字段批量替换',
'purview' => 'sys_ArcBatch',
'linkurl' => 'sys_data_replace.php'
),
@@ -169,29 +139,24 @@ $actionSearch[4] = array(
);
$actionSearch[5] = array(
'title' => '会员管理',
'description' => '网站所有会员管理',
'soniterm' => array(
0 => array(
'title' => '所有会员列表',
'description' => '所有会员修改删除,查看会员文档以及提升管理员',
'purview' => 'member_List',
'linkurl' => 'member_main.php'
),
1 => array(
'title' => '会员短信管理',
'description' => '会员发送的短消息,其中包含群发短消息和对单个会员发送短消息两种',
'purview' => 'member_Type',
'linkurl' => 'member_pm.php'
),
2 => array(
'title' => '会员级别设置',
'description' => '会员级别设置,通过不同会员的浏览权限来对会员级别进行一个扩展',
'purview' => 'member_Type',
'linkurl' => 'member_rank.php'
),
3 => array(
'title' => '积分头衔设置',
'description' => '会员积分等级设置,根据活动积分对会员进行头衔管理',
'purview' => 'member_Type',
'linkurl' => 'member_scores.php'
),
@@ -199,35 +164,29 @@ $actionSearch[5] = array(
);
$actionSearch[6] = array(
'title' => '支付工具',
'description' => '配置支付方式',
'soniterm' => array(
0 => array(
'title' => '积分产品管理',
'description' => '网站积分产品管理,生成积分以及查看积分使用状态',
'purview' => 'sys_Data',
'linkurl' => 'cards_manage.php'
),
1 => array(
'title' => '积分产品分类',
'description' => '网站积分产品分类,添加不同点数的积分产品类型',
'purview' => 'sys_Data',
'linkurl' => 'cards_type.php'
),
2 => array(
'title' => '会员消费记录',
'description' => '会员消费记录,查看消费充值订单的付款情况',
'purview' => 'sys_Data',
'linkurl' => 'member_operations.php'
),
3 => array(
'title' => '会员等级分类',
'description' => '会员等级分类划分,设置网站会员等级',
'purview' => 'sys_Data',
'linkurl' => 'member_type.php'
),
4 => array(
'title' => '支付接口设置',
'description' => '网站支付接口配置',
'purview' => 'sys_Data',
'linkurl' => 'sys_payment.php'
),
@@ -235,41 +194,34 @@ $actionSearch[6] = array(
);
$actionSearch[7] = array(
'title' => '更新任务',
'description' => '一键生成静态管理',
'soniterm' => array(
0 => array(
'title' => '更新网站',
'description' => '生成所有静态页面',
'purview' => 'sys_MakeHtml',
'linkurl' => 'makehtml_all.php'
),
1 => array(
'title' => '更新首页',
'description' => '生成网站首页面',
'purview' => 'sys_MakeHtml',
'linkurl' => 'makehtml_homepage.php'
),
2 => array(
'title' => '更新栏目',
'description' => '生成栏目页面',
'purview' => 'sys_MakeHtml',
'linkurl' => 'makehtml_list.php'
),
3 => array(
'title' => '更新文档',
'description' => '生成文档页面',
'purview' => 'sys_MakeHtml',
'linkurl' => 'makehtml_archives.php'
),
4 => array(
'title' => '更新专题',
'description' => '生成专题页面',
'purview' => 'sys_MakeHtml',
'linkurl' => 'makehtml_spec.php'
),
5 => array(
'title' => '更新缓存',
'description' => '更新栏目缓存、更新枚举缓存、清理文档调用缓存、清理过期会员浏览历史、删除过期会员短信',
'purview' => 'sys_ArcBatch',
'linkurl' => 'sys_cache_up.php'
),
@@ -277,35 +229,29 @@ $actionSearch[7] = array(
);
$actionSearch[8] = DEDEBIZ_SAFE_MODE? null : array(
'title' => '模板管理',
'description' => '网站主题模板管理',
'soniterm' => array(
0 => array(
'title' => '默认模板管理',
'description' => '网站主题模板文件管理',
'purview' => 'temp_All',
'linkurl' => 'templets_main.php'
),
1 => array(
'title' => '标签源码管理',
'description' => '系统标签文件修改',
'purview' => 'temp_All',
'linkurl' => 'templets_tagsource.php'
),
2 => array(
'title' => '自定义宏标记',
'description' => '所有自定义标记管理',
'purview' => 'temp_MyTag',
'linkurl' => 'mytag_main.php'
),
3 => array(
'title' => '智能标记向导',
'description' => '根据需要生成相应的调用标签',
'purview' => 'temp_Other',
'linkurl' => 'mytag_tag_guide.php'
),
4 => array(
'title' => '全局标记测试',
'description' => '全局标签调用测试',
'purview' => 'temp_Test',
'linkurl' => 'tag_test.php'
),
@@ -313,77 +259,54 @@ $actionSearch[8] = DEDEBIZ_SAFE_MODE? null : array(
);
$actionSearch[9] = array(
'title' => '系统设置',
'description' => '后台系统设置',
'soniterm' => array(
0 => array(
'title' => '系统设置',
'description' => '站点设置、核心设置、附件设置、会员设置、互动设置、性能选项、其它选项、添加新变量等功能设置',
'purview' => 'sys_Edit',
'linkurl' => 'sys_info.php'
),
1 => array(
'title' => '管理员管理',
'description' => '网站管理员管理',
'purview' => 'sys_User',
'linkurl' => 'sys_admin_user.php'
),
2 => array(
'title' => '会员组管理',
'description' => '网站管理员组权限管理',
'purview' => 'sys_Group',
'linkurl' => 'sys_group.php'
),
3 => array(
'title' => '日志管理',
'description' => '登录后台管理员操作进行记录',
'purview' => 'sys_Log',
'linkurl' => 'log_list.php'
),
5 => array(
'title' => '图片水印设置',
'description' => '上传图片添加水印设置',
'purview' => 'sys_Edit',
'linkurl' => 'sys_info_mark.php'
),
/*5 => array(
'title' => '云服务设置',
'description' => '主流云服务平台支持',
'purview' => 'sys_Edit',
'linkurl' => 'sys_cloud.php'
),*/
6 => array(
'title' => '软件下载设置',
'description' => '软件下载连接显示方式,下载方式等配置',
'purview' => 'sys_SoftConfig',
'linkurl' => 'soft_config.php'
),
7 => array(
'title' => '防采集工具',
'description' => '网站防采集工具',
'purview' => 'sys_StringMix',
'linkurl' => 'article_string_mix.php'
),
8 => DEDEBIZ_SAFE_MODE? null : array(
7 => DEDEBIZ_SAFE_MODE? null : array(
'title' => '数据库备份还原',
'description' => '数据库备份和还原数据备份',
'purview' => 'sys_data',
'linkurl' => 'sys_data.php'
),
9 => DEDEBIZ_SAFE_MODE? null : array(
8 => DEDEBIZ_SAFE_MODE? null : array(
'title' => 'SQL命令工具',
'description' => '数据表执行单行或者多行的SQL语句',
'purview' => 'sys_data',
'linkurl' => 'sys_sql_query.php'
),
10 => array(
9 => array(
'title' => '文件扫描工具',
'description' => '以DedeBIZ开发模式为标准对现有的文件进行扫描判断',
'purview' => 'sys_verifies',
'linkurl' => 'sys_safetest.php'
),
11 => array(
10 => array(
'title' => '系统修复工具',
'description' => '手动和自动升级错误处理',
'purview' => 'sys_verifies',
'linkurl' => 'sys_repair.php'
),


+ 3
- 3
src/admin/inc/inc_list_functions.php View File

@@ -77,11 +77,11 @@ function CheckPic($picname)
function IsHtmlArchives($ismake)
{
if ($ismake == 1) {
return ' <span class="btn btn-warning btn-sm">已生成</span>';
return '已生成';
} else if ($ismake == -1) {
return ' <span class="btn btn-warning btn-sm">仅动态</span>';
return '仅动态';
} else {
return ' <span class="btn btn-danger btn-sm">未生成</span>';
return '未生成';
}
}
//获得文档的限定级别名称


+ 2
- 3
src/admin/inc/inc_menu.php View File

@@ -50,9 +50,9 @@ if ($cuserLogin->getUserType() >= 10) {
<m:item name='自定义表单管理' link='diy_main.php' rank='c_List' target='main' />
</m:top>";
$adminMenu2 = "<m:top item='10_' name='财务管理' rank='sys_Data' icon='fa fa-credit-card'>
<m:item name='会员消费记录' link='member_operations.php' rank='sys_Data' target='main' />
<m:item name='积分产品管理' link='cards_manage.php' rank='sys_Data' target='main' />
<m:item name='积分产品分类' link='cards_type.php' rank='sys_Data' target='main' />
<m:item name='会员消费记录' link='member_operations.php' rank='sys_Data' target='main' />
<m:item name='会员等级分类' link='member_type.php' rank='sys_Data' target='main' />
<m:item name='支付接口设置' link='sys_payment.php' .php' rank='sys_Data' target='main' />
</m:top>
@@ -64,7 +64,6 @@ if ($cuserLogin->getUserType() >= 10) {
<m:item name='图片水印设置' link='sys_info_mark.php' rank='sys_Edit' target='main' />
<m:item name='自定义文档属性' link='content_att.php' rank='sys_Att' target='main' />
<m:item name='软件下载设置' link='soft_config.php' rank='sys_SoftConfig' target='main' />
<m:item name='防采集工具' link='article_string_mix.php' rank='sys_StringMix' target='main' />
".(DEDEBIZ_SAFE_MODE? "" : "<m:item name='数据备份还原' link='sys_data.php' rank='sys_Data' target='main' />")."
".(DEDEBIZ_SAFE_MODE? "" : "<m:item name='SQL命令工具' link='sys_sql_query.php' rank='sys_Data' target='main' />")."
<m:item name='文件扫描工具' link='sys_safetest.php' rank='sys_verify' target='main' />
@@ -115,7 +114,7 @@ $adminMenu1
<m:item name='积分头衔设置' link='member_scores.php' rank='member_Type' target='main' />
</m:top>
$adminMenu2
<m:top item='12_' name='系统帮助' icon='fa fa-info-circle'>
<m:top item='12_' name='系统帮助' icon='fa fa-question-circle'>
<m:item name='系统概况' link='$cfg_biz_helpUrl' rank='' target='_blank' />
<m:item name='代码托管' link='$cfg_biz_gitUrl' rank='' target='_blank' />
</m:top>";

+ 4
- 4
src/admin/index_body.php View File

@@ -50,10 +50,10 @@ if (empty($dopost)) {
if (count($arcArr) > 0) {
foreach($arcArr as $row)
{
if (trim($row['editcon'])=='') {
if (trim($row['editcon']) == '') {
$row['editcon'] = 'archives_edit.php';
}
$rowarcrank = $row['arcrank']==-1? "<span class='btn btn-danger btn-xs ml-2'>未审核</span>":"";
$rowarcrank = $row['arcrank'] == -1? " <span class='btn btn-danger btn-xs'>未审核</span>" : "";
$pubdate = GetDateMk($row['pubdate']);
echo "<tr><td><a href='{$row['editcon']}?aid={$row['id']}&channelid={$row['channel']}'>{$row['title']}</a>{$rowarcrank}</td><td width='100'>{$pubdate}</td></tr>";
}
@@ -90,10 +90,10 @@ if (empty($dopost)) {
$hasPowered = true;
}
}
$poweredStr = $hasPowered? "" : "请保留正确的<a href='https://www.dedebiz.com/powered_by_dedebiz' class='text-primary'>底部版权信息</a>,";
$poweredStr = $hasPowered? "" : "请保留正确的<a href='https://www.dedebiz.com/powered_by_dedebiz' class='text-success'>底部版权信息</a>,";
echo json_encode(array(
"code" => -1002,
"msg" => "当前站点已授权社区版,{$poweredStr}获取更多官方技术支持,请选择<a href='https://www.dedebiz.com/auth' class='text-primary'>商业版</a>",
"msg" => "当前站点已授权社区版,{$poweredStr}获取更多官方技术支持,请选择<a href='https://www.dedebiz.com/auth' class='text-success'>商业版</a>",
"result" => null,
));
exit;


+ 2
- 2
src/admin/index_testenv.php View File

@@ -123,7 +123,7 @@ if (!function_exists('IsWritable')) {
$safeMsg = array();
$dirname = str_replace('index_body.php', '', strtolower($_SERVER['PHP_SELF']));
if (!DEDEBIZ_SAFE_MODE) {
$safeMsg[] = '系统运行环境为开发模式,建议您启用安全模式<a href="index_body.php?dopost=safe_mode" class="btn btn-success btn-xs ml-2">详情</a>';
$safeMsg[] = '系统运行环境为开发模式,建议您启用安全模式 <a href="index_body.php?dopost=safe_mode" class="btn btn-success btn-xs">详情</a>';
}
if (!IsSSL()) {
$safeMsg[] = '检测到网址非安全链接,建议您部署https';
@@ -139,7 +139,7 @@ if (preg_match("#[\\|/]admin[\\|/]#", $dirname)) {
}
$rs = TestAdminPWD();
if ($rs < 0) {
$linkurl = '<a href="sys_admin_user.php" class="btn btn-success btn-xs ml-2">修改</a>';
$linkurl = ' <a href="sys_admin_user.php" class="btn btn-success btn-xs">修改</a>';
switch ($rs) {
case -1:
$msg = "检测到默认账号没有修改,建议您修改{$linkurl}";


+ 42
- 58
src/admin/js/album.js View File

@@ -1,76 +1,60 @@
function checkMuList(psid, cmid) {
if ($Obj("pagestyle3").checked) {
$Obj("cfgmulist").style.display = "table-row";
$Obj("spagelist").style.display = "none";
} else if ($Obj("pagestyle1").checked) {
$Obj("cfgmulist").style.display = "none";
$Obj("spagelist").style.display = "table-row";
} else {
$Obj("cfgmulist").style.display = "none";
$Obj("spagelist").style.display = "none";
}
}
function checkSubmitAlb() {
if ($("#gallery .atlas").length > 0) {
//这里从gallery中取出图片元素信息
$("#gallery .atlas").each(function () {
$("#gallery .atlas").each(function() {
albums.push({
"img": $(this).find("img").attr("src"),
"txt": $(this).find("input").val()
})
})
"txt": $(this).find("input").val(),
});
});
}
$("#albums").val(JSON.stringify(albums));
return true;
}
function checkMuList(psid, cmid) {
if ($Obj('pagestyle3').checked) {
$Obj('cfgmulist').style.display = 'table-row';
$Obj('spagelist').style.display = 'none';
} else if ($Obj('pagestyle1').checked) {
$Obj('cfgmulist').style.display = 'none';
$Obj('spagelist').style.display = 'table-row';
} else {
$Obj('cfgmulist').style.display = 'none';
$Obj('spagelist').style.display = 'none';
}
}
//删除已经上传的图片
function delAlbPic(pid) {
var tgobj = $Obj('atlasok' + pid);
fetch('swfupload.php?dopost=del&id=' + pid).then(resp => resp.text()).then((d) => {
var tgobj = $Obj("atlasok" + pid);
fetch("swfupload.php?dopost=del&id=" + pid).then(resp => resp.text()).then((d) => {
tgobj.innerHTML = d;
$Obj('gallery').removeChild(tgobj);
$Obj("gallery").removeChild(tgobj);
});
}
//删除已经上传的图片修改时用
function delAlbPicOld(picfile, pid) {
var tgobj = $Obj('albold' + pid);
fetch('swfupload.php?dopost=delold&picfile=' + picfile).then(resp => resp.text()).then((d) => {
var tgobj = $Obj("albold" + pid);
fetch("swfupload.php?dopost=delold&picfile=" + picfile).then(resp => resp.text()).then((d) => {
tgobj.innerHTML = d;
$Obj('galleryedit').removeChild(tgobj);
$Obj("galleryedit").removeChild(tgobj);
});
}
function seePicNewAlb(f, imgdid, frname, hpos, acname) {
var newobj = null;
if (f.value == '') return;
vImg = $Obj(imgdid);
picnameObj = document.getElementById('picname');
nFrame = $Nav() == 'IE' ? eval('document.frames.' + frname) : $Obj(frname);
nForm = f.form;
//修改form的action等参数
if (nForm.detachEvent) nForm.detachEvent("onsubmit", checkSubmitAlb);
else nForm.removeEventListener("submit", checkSubmitAlb, false);
nForm.action = 'archives_do.php';
nForm.target = frname;
nForm.dopost.value = 'uploadLitpic';
nForm.submit();
picnameObj.value = '';
newobj = $Obj('uploadwait');
if (!newobj) {
newobj = document.createElement("div");
newobj.id = 'uploadwait';
newobj.style.position = 'absolute';
newobj.className = 'uploadwait';
newobj.style.width = 120;
newobj.style.height = 20;
newobj.style.top = hpos;
newobj.style.left = 100;
document.body.appendChild(newobj);
newobj.innerHTML = '<img src="../../static/web/img/loadinglit.gif">';
var atlasimg = 0;
function addImage(src, pid) {
var newImgDiv = document.createElement("div");
var delstr = '';
atlasimg++;
if (pid != 0) {
atlasimg = 'ok' + pid;
delstr = '<div class="atlas-box"><a href="javascript:delAlbPic(' + pid + ')" class="btn btn-danger btn-sm">删除</a></p>';
} else {
atlasimg = 'err' + atlasimg;
}
newImgDiv.className = 'atlas';
newImgDiv.id = 'atlas' + atlasimg;
document.getElementById("gallery").appendChild(newImgDiv);
newImgDiv.innerHTML = '<div class="atlas-head"><img src="' + src + '"></div>' + delstr;
if (typeof arctype != 'undefined' && arctype == 'article') {
if (pid != 0) {
newImgDiv.innerHTML = '<div class="atlas-head"><img src="' + src + '" onclick="addtoEdit(' + pid + ')"></div>' + delstr;
}
}
newobj.style.display = 'block';
//提交后还原form的action等参数
nForm.action = acname;
nForm.dopost.value = 'save';
nForm.target = '';
nForm.litpic.disabled = true;
newImgDiv.innerHTML += '<div class="atlas-foot"><input type="text" name="picinfo' + atlasimg+ '" class="atlas-input" placeholder="请输入图片注释"></div>';
}

+ 77
- 122
src/admin/js/body.js View File

@@ -1,112 +1,4 @@
$(function () {
$.get("index_testenv.php",function (data) {
if (data !== '') {
$("#body-tips").html(data);
}
});
$.get("index_body.php?dopost=get_articles",function (data) {
if (data !== '') {
$("#system-word").html(data);
}
});
});
function Copyinfo() {
var val = document.getElementById('fz-0');
window.getSelection().selectAllChildren(val);
document.execCommand("Copy");
ShowMsg("成功复制环境配置信息");
}
//Dedebiz info
var dedebizInfo;
function ViewDedeBIZ() {
if (dedebizInfo === false) {
ShowMsg("启动商业组件失败");
return;
}
ShowMsg(`<table class="table table-borderless">
<tr>
<td width="25%">
<div class="web-info">
<p>版本号</p>
<span>${dedebizInfo.result.server_version}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>服务器系统</p>
<span>${dedebizInfo.result.server_goos}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>运行时间</p>
<span>${dedebizInfo.result.server_run_time}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>内存占用</p>
<span>${dedebizInfo.result.server_memory_usage}%</span>
</div>
</td>
</tr>
</table>`);
}
function LoadServer() {
$.get("index_body.php?dopost=system_info",function (data) {
let rsp = JSON.parse(data);
if (rsp.code === 200) {
if (rsp.result.core.code === 200) {
dedebizInfo = JSON.parse(rsp.result.core.data);
} else {
dedebizInfo = false;
}
let infoStr = `<table class="table table-borderless">`;
if (typeof rsp.result.domain !== "undefined") {
infoStr += `<tr>
<td width="25%">
<div class="web-info">
<p>授权域名</p>
<span>${rsp.result.domain}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>站点名称</p>
<span>${rsp.result.title}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>站点证书</p>
<span><a href="${cfg_biz_dedebizUrl}/auth/?domain=${rsp.result.domain}" target="_blank">查看证书</a></span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>商业组件</p>
<span><a href="javascript:ViewDedeBIZ()">组件状态</a></span>
</div>
</td>
</tr>`;
}
infoStr += "</table>";
$("#system-info").html(infoStr);
} else {
$("#system-info").html(`<table class="table table-borderless">
<tr>
<td>
<div class="web-info">
<p>${rsp.msg}</p>
<span>您已购买了商业版授权,登录DedeBIZ官网会员中心可查看相关授权信息</span>
</div>
</td>
</tr>
</table>`);
}
});
}
Date.prototype.Format = function (fmt) {
Date.prototype.Format = function(fmt) {
var o = {
"M+" : this.getMonth() + 1, //月份
"d+" : this.getDate(), //日
@@ -114,7 +6,7 @@ Date.prototype.Format = function (fmt) {
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth() + 3) / 3), //季度
"S" : this.getMilliseconds() //毫秒
"S" : this.getMilliseconds(), //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
@@ -122,7 +14,7 @@ Date.prototype.Format = function (fmt) {
return fmt;
}
function LoadStat() {
$.get("index_body.php?dopost=get_statistics",function (data) {
$.get("index_body.php?dopost=get_statistics",function(data) {
try {
let rsp = JSON.parse(data);
if (rsp.code == 200) {
@@ -134,7 +26,7 @@ function LoadStat() {
$("#today_uv").html(tuv);
$("#today_ip").html(tip);
$("#today_vv").html(tvv);
$.get("index_body.php?dopost=get_statistics&sdate=-1",function (data) {
$.get("index_body.php?dopost=get_statistics&sdate=-1",function(data) {
let rsp = JSON.parse(data);
if (rsp.code == 200) {
$("#total_pv").html(parseInt(rsp.result.pv) + tpv);
@@ -152,7 +44,7 @@ function LoadStat() {
d.setDate(d.getDate() - 1);
var s = d.Format("yyyy-MM-dd");
s = s.replaceAll("-", "");
$.get("index_body.php?dopost=get_statistics&sdate=" + s,function (data) {
$.get("index_body.php?dopost=get_statistics&sdate=" + s,function(data) {
try {
let rsp = JSON.parse(data);
if (rsp.code == 200) {
@@ -214,38 +106,101 @@ async function LoadStatChart() {
lineTension: .5,
borderColor: 'rgba(54, 162, 235, 1)',
backgroundColor: 'rgba(54, 162, 235, 0.1)',
borderWidth: 2
borderWidth: 2,
}, {
label: 'UV',
data: uvs,
lineTension: .5,
borderColor: 'rgba(255, 206, 86, 1)',
backgroundColor: 'rgba(255, 206, 86, 0.1)',
borderWidth: 2
borderWidth: 2,
}, {
label: 'IP',
data: ips,
lineTension: .5,
borderColor: 'rgba(255, 99, 132, 1)',
backgroundColor: 'rgba(255, 99, 132, 0.1)',
borderWidth: 2
borderWidth: 2,
}, {
label: 'VV',
data: vvs,
lineTension: .5,
borderColor: 'rgba(75, 192, 192, 1)',
backgroundColor: 'rgba(75, 192, 192, 0.1)',
borderWidth: 2
borderWidth: 2,
}
]
},
});
}
$(document).ready(function () {
LoadServer();
$(document).ready(function() {
$(function() {
$.get("index_testenv.php",function(data) {
if (data !== '') {
$("#body-tips").html(data);
}
});
$.get("index_body.php?dopost=get_articles",function(data) {
if (data !== '') {
$("#system-word").html(data);
}
});
});
$(function() {
var dedebizInfo;
$.get("index_body.php?dopost=system_info",function(data) {
let rsp = JSON.parse(data);
if (rsp.code === 200) {
if (rsp.result.core.code === 200) {
dedebizInfo = JSON.parse(rsp.result.core.data);
} else {
dedebizInfo = false;
}
let infoStr = `<table class="table table-borderless">`;
if (typeof rsp.result.domain !== "undefined") {
infoStr += `<tr>
<td width="25%">
<div class="web-info">
<p>授权域名</p>
<span>${rsp.result.domain}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>站点名称</p>
<span>${rsp.result.title}</span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>授权证书</p>
<span><a href="${cfg_biz_dedebizUrl}/auth/?domain=${rsp.result.domain}" target="_blank">查看证书</a></span>
</div>
</td>
<td width="25%">
<div class="web-info">
<p>授权时间</p>
<span>${rsp.result.auth_at}</span>
</div>
</td>
</tr>`;
}
infoStr += "</table>";
$("#system-info").html(infoStr);
} else {
$("#system-info").html(`<table class="table table-borderless">
<tr>
<td>
<div class="web-info">
<p>${rsp.msg}</p>
<span>您已购买了商业版授权,登录DedeBIZ官网会员中心可查看相关授权信息</span>
</div>
</td>
</tr>
</table>`);
}
});
});
LoadStat();
LoadStatChart();
setInterval(function () {
LoadServer();
}, 60000)
});

+ 23
- 0
src/admin/js/catalog.js View File

@@ -0,0 +1,23 @@
var BROWSER = {};
if (BROWSER.safari) {
BROWSER.firefox = true;
}
function LoadSuns(ctid, tid) {
if ($DE(ctid).innerHTML.length < 10) {
$DE('icon' + tid).className = 'fa fa-minus-square';
fetch('catalog_do.php?dopost=GetSunLists&cid=' + tid).then(resp => resp.text()).then((d) => {
$DE(ctid).innerHTML = d;
});
} else {
showHide(ctid, tid);
}
}
function showHide(objname, tid) {
if ($DE(objname).style.display == "none") {
$DE('icon' + tid).className = 'fa fa-minus-square';
$DE(objname).style.display = BROWSER.firefox ? "" : "block";
} else {
$DE('icon' + tid).className = 'fa fa-plus-square';
$DE(objname).style.display = "none";
}
}

+ 0
- 94
src/admin/js/float.js View File

@@ -1,94 +0,0 @@
self.onError=null;
currentX = currentY = 0;
whichIt = null;
lastScrollX = 0; lastScrollY = 0;
NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1 : 0;
function heartBeat() {
if (IE) { diffY = document.body.scrollTop; diffX = document.body.scrollLeft; }
if (NS) { diffY = self.pageYOffset; diffX = self.pageXOffset; }
if (diffY != lastScrollY) {
percent = .1 * (diffY - lastScrollY);
if (percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
if (IE) document.all.floater.style.pixelTop += percent;
if (NS) document.floater.top += percent;
lastScrollY = lastScrollY + percent;
} if (diffX != lastScrollX) {
percent = .1 * (diffX - lastScrollX);
if (percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
if (IE) document.all.floater.style.pixelLeft += percent;
if (NS) document.floater.left += percent;
lastScrollX = lastScrollX + percent;
}
}
function checkFocus(x, y) {
stalkerx = document.floater.pageX;
stalkery = document.floater.pageY;
stalkerwidth = document.floater.clip.width;
stalkerheight = document.floater.clip.height;
if ((x > stalkerx && x < (stalkerx + stalkerwidth)) && (y > stalkery && y < (stalkery + stalkerheight))) return true;
else return false;
}
function grabIt(e) {
if (IE) {
whichIt = event.srcElement;
while (whichIt.id.indexOf("floater") == -1) {
whichIt = whichIt.parentElement;
if (whichIt == null) { return true; }
}
whichIt.style.pixelLeft = whichIt.offsetLeft;
whichIt.style.pixelTop = whichIt.offsetTop;
currentX = (event.clientX + document.body.scrollLeft);
currentY = (event.clientY + document.body.scrollTop);
} else {
window.captureEvents(Event.MOUSEMOVE);
if (checkFocus(e.pageX, e.pageY)) {
whichIt = document.floater;
StalkerTouchedX = e.pageX - document.floater.pageX;
StalkerTouchedY = e.pageY - document.floater.pageY;
}
} return true;
}
function moveIt(e) {
if (whichIt == null) { return false; }
if (IE) {
newX = (event.clientX + document.body.scrollLeft);
newY = (event.clientY + document.body.scrollTop);
distanceX = (newX - currentX); distanceY = (newY - currentY);
currentX = newX; currentY = newY;
whichIt.style.pixelLeft += distanceX;
whichIt.style.pixelTop += distanceY;
if (whichIt.style.pixelTop < document.body.scrollTop) whichIt.style.pixelTop = document.body.scrollTop;
if (whichIt.style.pixelLeft < document.body.scrollLeft) whichIt.style.pixelLeft = document.body.scrollLeft;
if (whichIt.style.pixelLeft > document.body.offsetWidth - document.body.scrollLeft - whichIt.style.pixelWidth - 20) whichIt.style.pixelLeft = document.body.offsetWidth - whichIt.style.pixelWidth - 20;
if (whichIt.style.pixelTop > document.body.offsetHeight + document.body.scrollTop - whichIt.style.pixelHeight - 5) whichIt.style.pixelTop = document.body.offsetHeight + document.body.scrollTop - whichIt.style.pixelHeight - 5;
event.returnValue = false;
} else {
whichIt.moveTo(e.pageX - StalkerTouchedX, e.pageY - StalkerTouchedY);
if (whichIt.left < 0 + self.pageXOffset) whichIt.left = 0 + self.pageXOffset;
if (whichIt.top < 0 + self.pageYOffset) whichIt.top = 0 + self.pageYOffset;
if ((whichIt.left + whichIt.clip.width) >= (window.innerWidth + self.pageXOffset - 17)) whichIt.left = ((window.innerWidth + self.pageXOffset) - whichIt.clip.width) - 17;
if ((whichIt.top + whichIt.clip.height) >= (window.innerHeight + self.pageYOffset + 50)) whichIt.top = ((window.innerHeight + self.pageYOffset) - whichIt.clip.height) - 17;
return false;
}
return false;
}
function dropIt() {
whichIt = null;
if (NS) window.releaseEvents(Event.MOUSEMOVE);
return true;
}
if (NS) {
window.captureEvents(Event.MOUSEUPEvent.MOUSEDOWN);
window.onmousedown = grabIt;
window.onmousemove = moveIt;
window.onmouseup = dropIt;
}
if (IE) {
document.onmousedown = grabIt;
document.onmousemove = moveIt;
document.onmouseup = dropIt;
}
if (NS || IE) action = window.setInterval("heartBeat()", 1);

+ 0
- 23
src/admin/js/global.js View File

@@ -1,23 +0,0 @@
var BROWSER = {};
var USERAGENT = navigator.userAgent.toLowerCase();
browserVersion({'ie':'msie','firefox':'','chrome':'','opera':'','safari':'','maxthon':'','mozilla':'','webkit':''});
if (BROWSER.safari) {
BROWSER.firefox = true;
}
BROWSER.opera = BROWSER.opera ? opera.version() : 0;
function browserVersion(types) {
var other = 1;
for (i in types) {
var v = types[i] ? types[i] : i;
if (USERAGENT.indexOf(v) != -1) {
var re = new RegExp(v + '(\\/|\\s)([\\d\\.]+)', 'ig');
var matches = re.exec(USERAGENT);
var ver = matches != null ? matches[2] : 0;
other = ver !== 0 ? 0 : other;
} else {
var ver = 0;
}
eval('BROWSER.' + i + '= ver');
}
BROWSER.other = other;
}

+ 0
- 22
src/admin/js/handlers.js View File

@@ -1,22 +0,0 @@
var atlasimg = 0;
function addImage(src, pid) {
var newImgDiv = document.createElement("div");
var delstr = '';
atlasimg++;
if (pid != 0) {
atlasimg = 'ok' + pid;
delstr = '<div class="atlas-box"><a href="javascript:delAlbPic(' + pid + ')" class="btn btn-danger btn-sm">删除</a></p>';
} else {
atlasimg = 'err' + atlasimg;
}
newImgDiv.className = 'atlas';
newImgDiv.id = 'atlas' + atlasimg;
document.getElementById("gallery").appendChild(newImgDiv);
newImgDiv.innerHTML = '<div class="atlas-head"><img src="' + src + '"></div>' + delstr;
if (typeof arctype != 'undefined' && arctype == 'article') {
if (pid != 0) {
newImgDiv.innerHTML = '<div class="atlas-head"><img src="' + src + '" onclick="addtoEdit(' + pid + ')"></div>' + delstr;
}
}
newImgDiv.innerHTML += '<div class="atlas-foot"><input type="text" name="picinfo' + atlasimg+ '" class="atlas-input" placeholder="请输入图片注释"></div>';
}

+ 38
- 40
src/admin/js/list.js View File

@@ -1,82 +1,80 @@
function viewArc(aid) {
if (aid==0) aid = getOneItem();
window.open("archives_do.php?aid="+aid+"&dopost=viewArchives");
if (aid == 0) aid = getOneItem();
window.open("archives_do.php?aid=" + aid + "&dopost=viewArchives");
}
function kwArc(aid) {
var qstr=getCheckboxItem();
if (aid==0) aid = getOneItem();
if (qstr=='') {
var qstr = getCheckboxItem();
if (aid == 0) aid = getOneItem();
if (qstr == '') {
ShowMsg('请选择一个或多个文档');
return;
}
location="archives_do.php?aid="+aid+"&dopost=makekw&qstr="+qstr;
location="archives_do.php?aid=" + aid + "&dopost=makekw&qstr=" + qstr;
}
function editArc(aid) {
if (aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=editArchives";
if (aid == 0) aid = getOneItem();
location="archives_do.php?aid=" + aid + "&dopost=editArchives";
}
function updateArc(aid) {
var qstr=getCheckboxItem();
if (aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=makeArchives&qstr="+qstr;
var qstr = getCheckboxItem();
if (aid == 0) aid = getOneItem();
location = "archives_do.php?aid=" + aid + "&dopost=makeArchives&qstr=" + qstr;
}
function checkArc(aid) {
var qstr=getCheckboxItem();
if (aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=checkArchives&qstr="+qstr;
var qstr = getCheckboxItem();
if (aid == 0) aid = getOneItem();
location = "archives_do.php?aid=" + aid + "&dopost=checkArchives&qstr=" + qstr;
}
function moveArc(e, obj, cid){
var qstr=getCheckboxItem();
if (qstr=='') {
var qstr = getCheckboxItem();
if (qstr == '') {
ShowMsg('请选择一个或多个文档');
return;
}
LoadQuickDiv(e, 'archives_do.php?dopost=moveArchives&qstr='+qstr+'&channelid='+cid+'&rnd='+Math.random(), 'moveArchives', 'auto', '180px');
LoadQuickDiv(e, 'archives_do.php?dopost=moveArchives&qstr=' + qstr + '&channelid=' + cid + '&rnd=' + Math.random(), 'moveArchives', 'auto', '300px');
ChangeFullDiv('show');
}
function adArc(aid) {
var qstr=getCheckboxItem();
if (aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=commendArchives&qstr="+qstr;
var qstr = getCheckboxItem();
if (aid == 0) aid = getOneItem();
location = "archives_do.php?aid=" + aid + "&dopost=commendArchives&qstr=" + qstr;
}
function cAtts(jname, e, obj) {
var qstr=getCheckboxItem();
var qstr = getCheckboxItem();
var screeheight = document.body.clientHeight + 20;
if (qstr=='') {
if (qstr == '') {
ShowMsg('请选择一个或多个文档');
return;
}
LoadQuickDiv(e, 'archives_do.php?dopost=attsDlg&qstr='+qstr+'&dojob='+jname+'&rnd='+Math.random(), 'attsDlg', 'auto', '180px');
LoadQuickDiv(e, 'archives_do.php?dopost=attsDlg&qstr=' + qstr + '&dojob=' + jname + '&rnd=' + Math.random(), 'attsDlg', 'auto', '300px');
ChangeFullDiv('show', screeheight);
}
function delArc(aid) {
var qstr=getCheckboxItem();
if (aid==0) aid = getOneItem();
location="archives_do.php?qstr="+qstr+"&aid="+aid+"&dopost=delArchives";
var qstr = getCheckboxItem();
if (aid == 0) aid = getOneItem();
location = "archives_do.php?qstr=" + qstr + "&aid=" + aid + "&dopost=delArchives";
}
function QuickEdit(aid, e, obj) {
LoadQuickDiv(e, 'archives_do.php?dopost=quickEdit&aid='+aid+'&rnd='+Math.random(), 'quickEdit', 'auto', '300px');
LoadQuickDiv(e, 'archives_do.php?dopost=quickEdit&aid=' + aid + '&rnd=' + Math.random(), 'quickEdit', 'auto', '300px');
ChangeFullDiv('show');
}
//获得选中文件的文件名
function getCheckboxItem() {
var allSel="";
var allSel = "";
if (document.form2.arcID.value) return document.form2.arcID.value;
for (i=0;i<document.form2.arcID.length;i++) {
for (i = 0;i<document.form2.arcID.length;i++) {
if (document.form2.arcID[i].checked) {
if (allSel=="")
allSel=document.form2.arcID[i].value;
if (allSel == '')
allSel = document.form2.arcID[i].value;
else
allSel=allSel+"`"+document.form2.arcID[i].value;
allSel = allSel + "`" + document.form2.arcID[i].value;
}
}
return allSel;
}
//获得选中其中一个的id
function getOneItem() {
var allSel="";
var allSel = '';
if (document.form2.arcID.value) return document.form2.arcID.value;
for (i=0;i<document.form2.arcID.length;i++) {
for (i = 0;i<document.form2.arcID.length;i++) {
if (document.form2.arcID[i].checked) {
allSel = document.form2.arcID[i].value;
break;
@@ -88,9 +86,9 @@ function selAll() {
if (typeof document.form2.arcID.length === "undefined") {
document.form2.arcID.checked = true;
}
for (i=0;i<document.form2.arcID.length;i++) {
for (i = 0;i<document.form2.arcID.length;i++) {
if (!document.form2.arcID[i].checked) {
document.form2.arcID[i].checked=true;
document.form2.arcID[i].checked = true;
}
}
}
@@ -98,9 +96,9 @@ function noSelAll() {
if (typeof document.form2.arcID.length === "undefined") {
document.form2.arcID.checked = false;
}
for (i=0;i<document.form2.arcID.length;i++) {
for (i = 0;i<document.form2.arcID.length;i++) {
if (document.form2.arcID[i].checked) {
document.form2.arcID[i].checked=false;
document.form2.arcID[i].checked = false;
}
}
}

+ 155
- 261
src/admin/js/main.js View File

@@ -1,10 +1,3 @@
var fixupPos = false;
var canMove = false;
var leftLeaning = 0;
var nForm = null;
var nFrame = null;
var picnameObj = null;
var vImg = null;
function GetWinPos(w, h) {
var dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : window.screenX;
var dualScreenTop = window.screenTop !== undefined ? window.screenTop : window.screenY;
@@ -15,46 +8,6 @@ function GetWinPos(w, h) {
var top = (height - h) / 2 / systemZoom + dualScreenTop;
return { left: left, top: top };
}
function SeePicNew(f, imgdid, frname, hpos, acname) {
var newobj = null;
if (f.value == '') return;
vImg = $Obj(imgdid);
picnameObj = document.getElementById('picname');
nFrame = $Nav() == 'IE' ? eval('document.frames.' + frname) : $Obj(frname);
nForm = f.form;
//修改form的action等参数
if (nForm.detachEvent) nForm.detachEvent("onsubmit", checkSubmit);
else nForm.removeEventListener("submit", checkSubmit, false);
nForm.action = 'archives_do.php';
nForm.target = frname;
nForm.dopost.value = 'uploadLitpic';
nForm.submit();
picnameObj.value = '';
newobj = $Obj('uploadwait');
if (!newobj) {
newobj = document.createElement("div");
newobj.id = 'uploadwait';
newobj.style.position = 'absolute';
newobj.className = 'uploadwait';
newobj.style.width = 120;
newobj.style.height = 20;
newobj.style.top = hpos;
newobj.style.left = 100;
newobj.style.display = 'block';
document.body.appendChild(newobj);
newobj.innerHTML = '<img src="../../static/web/img/loadinglit.gif">';
}
newobj.style.display = 'block';
//提交后还原form的action等参数
nForm.action = acname;
nForm.dopost.value = 'save';
nForm.target = '';
nForm.litpic.disabled = true;
}
function SelectFlash() {
var pos = GetWinPos(800,600);
window.open("./dialog/select_media.php?f=form1.flashurl&noeditor=yes", "popUpFlashWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
}
function SelectMedia(fname) {
var pos = GetWinPos(800,600);
window.open("./dialog/select_media.php?f=" + fname + "&noeditor=yes", "popUpFlashWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
@@ -65,14 +18,14 @@ function SelectSoft(fname) {
}
function SelectImage(fname, stype, imgsel="") {
var pos = GetWinPos(800,600);
if (!fname) fname = 'form1.picname';
if (imgsel) imgsel = '&noeditor=yes';
if (!stype) stype = 'small';
if (!fname) fname = "form1.picname";
if (imgsel) imgsel = "&noeditor=yes";
if (!stype) stype = "small";
window.open("./dialog/select_images.php?f=" + fname + "&noeditor=yes&imgstick=" + stype + imgsel, "popUpImagesWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
}
function SelectImageN(fname, stype, vname) {
var pos = GetWinPos(800,600);
if (!fname) fname = 'form1.picname';
if (!fname) fname = "form1.picname";
if (!stype) stype = '';
window.open("./dialog/select_images.php?f=" + fname + "&imgstick=" + stype + "&v=" + vname, "popUpImagesWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
}
@@ -84,39 +37,38 @@ function OpenMyWin(surl) {
var pos = GetWinPos(800,600);
window.open(surl, "popUpMyWin", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
}
function OpenMyWinCoOne(surl) {
var pos = GetWinPos(800,600);
window.open(surl, "popUpMyWin2", "scrollbars=yes,resizable=yes,statebar=no,width=800,height=600,left=" + pos.left + ", top=" + pos.top);
}
function InitPage() {
var selsource = $Obj('selsource');
var selwriter = $Obj('selwriter');
var colorbt = $Obj('color');
if (selsource) { selsource.onmousedown = function (e) { SelectSource(e); } }
if (selwriter) { selwriter.onmousedown = function (e) { SelectWriter(e); } }
}
function $Nav() {
if (window.navigator.userAgent.indexOf("MSIE") >= 1) return 'IE';
else if (window.navigator.userAgent.indexOf("Firefox") >= 1) return 'FF';
else return "OT";
}
function $Obj(objname) {
return document.getElementById(objname);
}
function InitPage() {
var selsource = $Obj("selsource");
var selwriter = $Obj("selwriter");
var colorbt = $Obj("color");
if (selsource) {
selsource.onmousedown = function(e) {
SelectSource(e);
}
}
if (selwriter) {
selwriter.onmousedown = function(e) {
SelectWriter(e);
}
}
}
function ColorSel(c, oname) {
var tobj = $Obj(oname);
if (!tobj) tobj = eval('document.form1.' + oname);
if (!tobj) tobj = eval("document.form1." + oname);
if (!tobj) {
$Obj('colordlg').style.display = 'none';
$Obj("colordlg").style.display = "none";
return false;
} else {
tobj.value = c;
$Obj('colordlg').style.display = 'none';
$Obj("colordlg").style.display = "none";
return true;
}
}
function ShowColor(e, o) {
LoadNewDiv(e, '../../static/web/img/colornew.htm', 'colordlg');
LoadNewDiv(e, "../../static/web/img/colornew.htm", "colordlg");
}
function ShowHide(objname) {
var obj = $Obj(objname);
@@ -126,79 +78,66 @@ function ShowHide(objname) {
function ShowObj(objname) {
var obj = $Obj(objname);
if (obj == null) return false;
obj.style.display = ($Nav() == "IE" ? "inline-block" : "table-row");
obj.style.display = "table-row";
}
function ShowObjRow(objname) {
var obj = $Obj(objname);
obj.style.display = ($Nav() == "IE" ? "inline-block" : "table-row");
obj.style.display = "table-row";
}
function AddTypeid2() {
ShowObjRow('typeid2tr');
ShowObjRow("typeid2tr");
}
function HideObj(objname) {
var obj = $Obj(objname);
if (obj == null) return false;
obj.style.display = "none";
}
function SeePic(img, f) {
if (f.value != '') img.src = f.value;
}
function PutSource(str) {
var osource = $Obj('source');
var osource = $Obj("source");
if (osource) osource.value = str;
$Obj('mysource').style.display = 'none';
ChangeFullDiv('hide');
$Obj("mysource").style.display = "none";
ChangeFullDiv("hide");
}
function PutWriter(str) {
var owriter = $Obj('writer');
var owriter = $Obj("writer");
if (owriter) owriter.value = str;
$Obj('mywriter').style.display = 'none';
ChangeFullDiv('hide');
$Obj("mywriter").style.display = "none";
ChangeFullDiv("hide");
}
function ClearDivCt(objname) {
if (!$Obj(objname)) return;
$Obj(objname).innerHTML = '';
$Obj(objname).style.display = 'none';
$Obj(objname).style.display = "none";
ChangeFullDiv("hide");
}
function ChangeFullDiv(showhide, screenheigt) {
var newobj = $Obj('fullpagediv');
if (showhide == 'show') {
var newobj = $Obj("fullpagediv");
if (showhide == "show") {
if (!newobj) {
newobj = document.createElement("div");
newobj.id = 'fullpagediv';
newobj.style.position = 'absolute';
newobj.className = 'fullpagediv';
newobj.style.height = document.body.clientHeight + 50 + 'px';
newobj.id = "fullpagediv";
newobj.style.position = "absolute";
newobj.className = "fullpagediv";
newobj.style.height = document.body.clientHeight + 50 + "px";
document.body.appendChild(newobj);
} else {
newobj.style.display = 'block';
newobj.style.display = "block";
}
} else {
if (newobj) newobj.style.display = 'none';
if (newobj) newobj.style.display = "none";
}
}
function SelectSource(e) {
LoadNewDiv(e, 'article_select_sw.php?t=source&k=8&rnd=' + Math.random(), 'mysource');
LoadNewDiv(e, "article_select_sw.php?t=source&k=8&rnd=" + Math.random(), "mysource");
}
function SelectWriter(e) {
LoadNewDiv(e, 'article_select_sw.php?t=writer&k=8&rnd=' + Math.random(), 'mywriter');
LoadNewDiv(e, "article_select_sw.php?t=writer&k=8&rnd=" + Math.random(), "mywriter");
}
function LoadNewDiv(e, surl, oname) {
var pxStr = '';
if ($Nav() == 'IE') {
var posLeft = window.event.clientX - 20;
var posTop = window.event.clientY - 30;
//IE下scrollTop的兼容性问题
var scrollTop = document.documentElement.scrollTop || window.pageYOffset;
if (typeof (scrollTop) == 'undefined') scrollTop = document.body.scrollTop;
posTop += scrollTop;
} else {
var posLeft = e.pageX - 20;
var posTop = e.pageY - 30;
pxStr = 'px';
}
posLeft = posLeft - 100;
var posLeft = e.pageX - 20;
var posTop = e.pageY - 30;
pxStr = 'px';
var newobj = $Obj(oname);
if (!newobj) {
newobj = document.createElement("div");
@@ -213,36 +152,15 @@ function LoadNewDiv(e, surl, oname) {
newobj.style.display = "block";
}
if (newobj.innerHTML.length < 10) {
fetch(surl).then(resp => resp.text()).then((d) => { newobj.innerHTML = d });
}
}
function LoadNewDiv2(e, surl, oname, dlgcls) {
var posLeft = 300;
var posTop = 50;
var newobj = $Obj(oname);
if (!newobj) {
newobj = document.createElement("div");
newobj.id = oname;
newobj.style.position = 'absolute';
newobj.className = dlgcls;
newobj.style.top = posTop;
newobj.style.left = posLeft;
newobj.style.display = 'none';
document.body.appendChild(newobj);
fetch(surl).then(resp => resp.text()).then((d) => {
newobj.innerHTML = d;
});
}
newobj.innerHTML = '';
fetch(surl).then(resp => resp.text()).then((d) => {
newobj.innerHTML = d;
});
if (newobj.innerHTML == '') newobj.style.display = 'none';
else newobj.style.display = 'block';
jQuery(newobj).css('top', '50px').css('left', '300px');
DedeXHTTP = null;
}
function ShowUrlTr() {
var jumpTest = $Obj('flagsj');
var jtr = $Obj('redirecturltr');
var jf = $Obj('redirecturl');
var jumpTest = $Obj("flagsj");
var jtr = $Obj("redirecturltr");
var jf = $Obj("redirecturl");
if (jumpTest.checked) jtr.style.display = "block";
else {
jf.value = '';
@@ -251,88 +169,37 @@ function ShowUrlTr() {
}
function ShowUrlTrEdit() {
ShowUrlTr();
var jumpTest = $Obj('isjump');
var rurl = $Obj('redirecturl');
var jumpTest = $Obj("isjump");
var rurl = $Obj("redirecturl");
if (!jumpTest.checked) rurl.value = "";
}
function CkRemote() {
document.getElementById('picname').value = '';
}
//复制文档到剪切板
function copyToClipboard(txt) {
if (txt == null || txt == '') {
alert("没有选择任何文档");
return;
}
if (window.clipboardData) {
window.clipboardData.clearData();
window.clipboardData.setData("Text", txt);
} else if (navigator.userAgent.indexOf('Opera') != -1) {
window.location = txt;
} else {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
} catch (e) {
alert("浏览器已拒绝,请稍后重试");
}
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
if (!clip) return;
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
if (!trans) return;
trans.addDataFlavor('text/unicode');
var str = new Object();
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
var copytext = txt;
str.data = copytext;
trans.setTransferData("text/unicode", str, copytext.length * 2);
var clipid = Components.interfaces.nsIClipboard;
if (!clip) return false;
clip.setData(trans, null, clipid.kGlobalClipboard);
}
}
function getSelTxt() {
var g, r;
if (document.all) {
g = document.selection.createRange().text;
} else {
g = document.getSelection();
}
return g;
}
//文档列表快捷属性弹出
function LoadQuickDiv(e, surl, oname, w, h) {
var newobj = $Obj(oname);
if (!newobj) {
newobj = document.createElement("div");
newobj.id = oname;
newobj.style.position = 'fixed';
newobj.className = 'pubdlg';
newobj.style.position = "fixed";
newobj.className = "pubdlg";
newobj.style.width = w;
newobj.style.height = h + 30;
document.body.appendChild(newobj);
}
newobj.style.top = "50%";
newobj.style.left = "50%";
newobj.style.display = 'block';
newobj.style.display = "block";
newobj.style.transform = "translate(-50%, -201px)";
newobj.innerHTML = '<img src="../../static/web/img/loadinglit.gif">';
fetch(surl).then(resp => resp.text()).then((d) => {
newobj.innerHTML = d;
});
fixupPos = false;
}
//显示副栏目
function ShowCatMap(e, obj, cid, targetId, oldvalue) {
fixupPos = true;
LoadQuickDiv(e, 'archives_do.php?dopost=getCatMap&targetid=' + targetId + '&channelid=' + cid + '&oldvalue=' + oldvalue + '&rnd=' + Math.random(), 'getCatMap', '700px', '500px');
ChangeFullDiv('show');
LoadQuickDiv(e, "archives_do.php?dopost=getCatMap&targetid=" + targetId + "&channelid=" + cid + "&oldvalue=" + oldvalue + "&rnd=" + Math.random(), "getCatMap", "700px", "500px");
ChangeFullDiv("show");
}
function getSelCat(targetId) {
var selBox = document.quicksel.seltypeid;
var targetObj = $Obj(targetId);
var selvalue = '';
//副栏目多选
if (targetId == 'typeid2') {
var j = 0;
for (var i = 0; i < selBox.length; i++) {
@@ -344,14 +211,13 @@ function getSelCat(targetId) {
}
if (targetObj) targetObj.value = selvalue;
} else {
//主栏目单选
if (selBox) {
for (var i = 0; i < selBox.length; i++) {
if (selBox[i].checked) selvalue = selBox[i].value;
}
}
if (selvalue == '') {
alert('您没有选中任何栏目');
alert("您没有选中任何栏目");
return;
}
if (targetObj) {
@@ -374,35 +240,35 @@ function guid() {
var _DedeConfirmFuncs = {};
var _DedeConfirmFuncsClose = {};
function __DedeConfirmRun(modalID) {
_DedeConfirmFuncs[modalID]();
_DedeConfirmFuncs[modalID]();
}
function __DedeConfirmRunClose(modalID) {
_DedeConfirmFuncsClose[modalID]();
_DedeConfirmFuncsClose[modalID]();
}
function DedeConfirm(content = "", title = "确认提示") {
let modalID = guid();
return new Promise((resolve, reject) => {
_DedeConfirmFuncs[modalID] = ()=>{
resolve("success");
CloseModal(`DedeModal${modalID}`);
}
_DedeConfirmFuncsClose[modalID] = ()=>{
reject("cancel");
CloseModal(`DedeModal${modalID}`);
}
let footer = `<button type="button" class="btn btn-outline-success btn-sm" onclick="__DedeConfirmRunClose(\'${modalID}\')">取消</button><button type="button" class="btn btn-success btn-sm" onclick="__DedeConfirmRun(\'${modalID}\')">确定</button>`;
let modal = `<div id="DedeModal${modalID}" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="DedeModalLabel${modalID}"><div class="modal-dialog modal-dialog-centered" role="document"><div class="modal-content"><div class="modal-header"><h6 class="modal-title" id="DedeModalLabel${modalID}">${title}</h6>`;
modal += `<button type="button" class="update-close" data-dismiss="modal" aria-label="Close"><i class="fa fa-times"></i></button>`;
modal += `</div><div class="modal-body">${content}</div><div class="modal-footer">${footer}</div></div></div></div>`;
$("body").append(modal)
$("#DedeModal" + modalID).modal({
backdrop: 'static',
show: true
});
$("#DedeModal" + modalID).on('hidden.bs.modal', function (e) {
$("#DedeModal" + modalID).remove();
})
})
let modalID = guid();
return new Promise((resolve, reject) => {
_DedeConfirmFuncs[modalID] = ()=>{
resolve("success");
CloseModal(`DedeModal${modalID}`);
}
_DedeConfirmFuncsClose[modalID] = ()=>{
reject("cancel");
CloseModal(`DedeModal${modalID}`);
}
let footer = `<button type="button" class="btn btn-outline-success btn-sm" onclick="__DedeConfirmRunClose(\'${modalID}\')">取消</button><button type="button" class="btn btn-success btn-sm" onclick="__DedeConfirmRun(\'${modalID}\')">确定</button>`;
let modal = `<div id="DedeModal${modalID}" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="DedeModalLabel${modalID}"><div class="modal-dialog modal-dialog-centered" role="document"><div class="modal-content"><div class="modal-header"><h6 class="modal-title" id="DedeModalLabel${modalID}">${title}</h6>`;
modal += `<button type="button" class="update-close" data-dismiss="modal" aria-label="Close"><i class="fa fa-times"></i></button>`;
modal += `</div><div class="modal-body">${content}</div><div class="modal-footer">${footer}</div></div></div></div>`;
$("body").append(modal)
$("#DedeModal" + modalID).modal({
backdrop: 'static',
show: true
});
$("#DedeModal" + modalID).on('hidden.bs.modal', function(e) {
$("#DedeModal" + modalID).remove();
})
})
}
//函数会返回一个modalID,通过这个id可自已定义一些方法,这里用到了一个展开语法:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Spread_syntax
function ShowMsg(content, ...args) {
@@ -439,7 +305,7 @@ function ShowMsg(content, ...args) {
backdrop: 'static',
show: true
});
$("#GKModal" + modalID).on('hidden.bs.modal', function (e) {
$("#GKModal" + modalID).on('hidden.bs.modal', function(e) {
$("#GKModal" + modalID).remove();
})
return modalID;
@@ -447,7 +313,7 @@ function ShowMsg(content, ...args) {
//隐藏并销毁modal
function CloseModal(modalID) {
$("#" + modalID).modal('hide');
$("#" + modalID).on('hidden.bs.modal', function (e) {
$("#" + modalID).on('hidden.bs.modal', function(e) {
if ($("#" + modalID).length > 0) {
$("#" + modalID).remove();
}
@@ -456,12 +322,10 @@ function CloseModal(modalID) {
//获取缩略图
var litpicImgSrc = "";
var litpicImg = "";
var currentCID = 0;
var mdlCropperID = "";
var pubAt = 0;
var optCropper = {
preview: ".pv",
crop: function (e) {
crop: function(e) {
$("#cropWidth").text(Math.round(e.detail.height));
$("#cropHeight").text(Math.round(e.detail.width));
if ($(this).cropper("getCroppedCanvas")) {
@@ -471,9 +335,7 @@ var optCropper = {
}
},
aspectRatio: 4 / 3,
//拖动截取缩略图后,截取的缩略图更新到imageItems中
cropend: function (data) {
//这里的id要单独取出来
cropend: function(data) {
var dataUrl = $(this).cropper("getCroppedCanvas").toDataURL();
litpicImg = dataUrl;
$("#litPic").attr("src", litpicImg);
@@ -490,22 +352,22 @@ var cropperAspectRatio = {
function setAspectRatio(ar) {
var opts = optCropper;
opts.aspectRatio = cropperAspectRatio[ar];
$("#cropImg" + mdlCropperID).cropper('destroy').cropper(opts);
$("#cropImg" + mdlCropperID).cropper("destroy").cropper(opts);
}
function okImage(modalID) {
uploadImage(litpicImg);
$("#litPic").attr("src", litpicImg);
CloseModal('GKModal' + modalID);
CloseModal("GKModal" + modalID);
}
function useDefault(modalID) {
uploadImage(litpicImgSrc);
$("#litPic").attr("src", litpicImgSrc);
CloseModal('GKModal' + modalID);
CloseModal("GKModal" + modalID);
}
function uploadImage(litpicImgSrc) {
const formData = new FormData()
formData.append('litpic_b64', litpicImgSrc);
fetch('archives_do.php?dopost=upload_base64_image', {
formData.append("litpic_b64", litpicImgSrc);
fetch("archives_do.php?dopost=upload_base64_image", {
method: 'POST',
body: formData
})
@@ -523,25 +385,70 @@ function uploadImage(litpicImgSrc) {
alert("上传缩略图错误");
});
}
$(document).ready(function () {
$("#btnClearAll").click(function (event) {
litpicImgSrc = "";
litpicImg = "";
function SetThumb(srcURL) {
var footer = "<p><a href='javascript:useDefault(\"~modalID~\");' class='btn btn-success btn-sm'>使用原图</a><a href='javascript:okImage(\"~modalID~\")' class='btn btn-success btn-sm'>确定</a></p>";
var optButton = `<p><label for="aspectRatio">比例</label><select id="aspectRatio" onchange="setAspectRatio(this.selectedIndex)"><option>16:9</option><option selected>4:3</option><option>1:1</option><option>2:3</option><option>自定义</option></select></p>`;
mdlCropperID = ShowMsg('<div class="float-left" style="width:320px"><p><img id="cropImg~modalID~" src="' + srcURL + '"></p><p>宽度:<span id="cropWidth"></span>px,高度:<span id="cropHeight"></span>px</p>' + optButton + '</div><div class="pv float-right" style="width:200px;height:100px;overflow:hidden"></div>', {
footer: footer,
noClose: false,
title: '图片裁剪',
});
setTimeout(function() {
$("#cropImg" + mdlCropperID).cropper(optCropper);
}, 500);
}
$(document).ready(function() {
$("#togglemenu").click(function() {
if ($("body").attr("class") == "showmenu") {
$("body").attr("class", "hidemenu");
$(this).html('<i class="fa fa-indent"></i>');
} else {
$("body").attr("class", "showmenu");
$(this).html('<i class="fa fa-dedent"></i>');
}
});
$(function() {
var menu = function(el, multiple) {
this.el = el || {};
this.multiple = multiple || false;
var links = this.el.find(".link");
links.on("click", {
el: this.el,
multiple: this.multiple,
},
this.dropdown);
}
menu.prototype.dropdown = function(e) {
var $el = e.data.el;
$this = $(this),
$next = $this.next();
$next.slideToggle();
$this.parent().toggleClass("open");
if (!e.data.multiple) {
$el.find(".submenu").not($next).slideUp().parent().removeClass("open");
}
}
var menu = new menu($('#menu'), false);
$(".submenu li a").click(function(e) {
$(".submenu li").removeClass("active");
$(this).parent().addClass("active");
});
});
$("#btnClearAll").click(function(event) {
litpicImgSrc = '';
litpicImg = '';
$("#picname").val(litpicImg);
$("#litPic").attr("src", "/static/web/img/thumbnail.jpg");
})
//添加图片
$("#iptAddImages").change(function (event) {
$("#iptAddImages").change(function(event) {
var files = event.target.files;
for (var i = 0, f; f = files[i]; i++) {
//如果不是图片忽略
if (!f.type.match('image.*')) {
continue;
}
//将图片渲染到浏览器
var reader = new FileReader();
reader.onload = (function (theFile) {
return function (e) {
reader.onload = (function(theFile) {
return function(e) {
litpicImgSrc = e.target.result;
if (cfg_uplitpic_cut == 'Y') {
SetThumb(litpicImgSrc);
@@ -555,21 +462,8 @@ $(document).ready(function () {
}
$("#iptAddImages").val("");
});
//截取缩略图
function SetThumb(srcURL) {
var footer = "<p><a href='javascript:useDefault(\"~modalID~\");' class='btn btn-success btn-sm'>使用原图</a><a href='javascript:okImage(\"~modalID~\")' class='btn btn-success btn-sm'>确定</a></p>";
var optButton = `<p><label for="aspectRatio">比例</label><select id="aspectRatio" onchange="setAspectRatio(this.selectedIndex)"><option>16:9</option><option selected>4:3</option><option>1:1</option><option>2:3</option><option>自定义</option></select></p>`;
mdlCropperID = ShowMsg('<div class="float-left" style="width:320px"><p><img id="cropImg~modalID~" src="' + srcURL + '"></p><p>宽度:<span id="cropWidth"></span>px,高度:<span id="cropHeight"></span>px</p>' + optButton + '</div><div class="pv float-right" style="width:200px;height:100px;overflow:hidden"></div>', {
footer: footer,
noClose: false,
title: '图片裁剪',
});
setTimeout(function () {
$("#cropImg" + mdlCropperID).cropper(optCropper);
}, 500);
}
if ($.fn.daterangepicker) {
$('.datepicker').daterangepicker({
$(".datepicker").daterangepicker({
"singleDatePicker": true,
"autoApply": true,
"showDropdowns": true,
@@ -593,16 +487,16 @@ $(document).ready(function () {
monthNames: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
firstDay: 1
}
}, function (start) {
}, function(start) {
$(this).val(start.format("YYYY-MM-DD HH:mm:ss"));
});
$('.datepicker').on('show.daterangepicker', function (ev, picker) {
$(".datepicker").on("show.daterangepicker", function(ev, picker) {
if (picker.element.offset().top - $(window).scrollTop() + picker.container.outerHeight() > $(window).height()) {
picker.drops = 'up';
picker.drops = "up";
} else {
picker.drops = 'down';
picker.drops = "down";
}
picker.move();
})
});
}
});

src/admin/js/key.js → src/admin/js/search.js View File

@@ -13,12 +13,11 @@ function noselAll() {
}
}
}
//批量删除搜多关键字
function delall() {
DedeConfirm("您确定要删除选定的关键字吗").then((v)=>{
DedeConfirm("您确定要删除关键词吗").then((v) => {
document.form3.dopost.value = 'delall';
document.form3.submit();
}).catch((e)=>{
console.log(e)
}).catch((e) => {
console.log(e);
});
}

+ 26
- 28
src/admin/js/update.js View File

@@ -1,13 +1,11 @@
var currentStep = 1;
var hasNewVer = false;
//步骤
function dedeAlter(msg, t = 'info', loading = false) {
let loadingStr = loading ? '<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>' : '';
return `<div class="alert alert-${t}">${loadingStr}
${msg}
</div>`;
}
//显示步骤区域
function showStepArea(step) {
$(".stepArea").hide();
$(".btnStep").hide();
@@ -15,7 +13,7 @@ function showStepArea(step) {
$("#btnStep" + step).show();
}
function update() {
$.get("api.php?action=update", function (rs) {
$.get("api.php?action=update", function(rs) {
if (rs.code === 0) {
$("#_updateMsg").html(rs.msg);
if (rs.data.finish === false) {
@@ -29,10 +27,10 @@ function update() {
showStepArea(currentStep);
}
}
})
});
}
function hasNewVersion() {
$.get("api.php?action=has_new_version", function (rs) {
$.get("api.php?action=has_new_version", function(rs) {
try {
if (rs.code === 0) {
if (rs.result.HasNew === true) {
@@ -47,38 +45,38 @@ function hasNewVersion() {
showStepArea(0);
}
} catch (error) {
console.log("获取软件信息失败")
console.log("获取软件信息失败");
}
})
});
}
$(document).ready(function () {
$(document).ready(function() {
hasNewVersion();
$("#btnCancel").click(function () {
$("#btnCancel").click(function() {
currentStep = 1;
$("#_fileList").html(``);
})
$("#btnBackup").click(function () {
$("#btnBackup").click(function() {
let alertMsg = dedeAlter("正在备份差异文件", 'info', true);
$("#_msgInfo").html(alertMsg);
$("#_msgInfo").show();
$.get("api.php?action=update_backup", function (rs) {
$.get("api.php?action=update_backup", function(rs) {
if (rs.code === 0) {
alertMsg = dedeAlter(`成功备份差异文件,目录:${rs.data.backupdir}`, 'success');
$("#_msgInfo").html(alertMsg);
}
})
})
$("#systemUpdate").click(function () {
});
});
$("#systemUpdate").click(function() {
if (hasNewVer === false) {
currentStep = 5;
showStepArea(currentStep);
$('#mdlUpdate').modal('show');
$("#mdlUpdate").modal("show");
return;
}
$('#mdlUpdate').modal('show');
$("#mdlUpdate").modal("show");
showStepArea(currentStep);
currentStep++;
$.get("api.php?action=get_changed_files", function (rs) {
$.get("api.php?action=get_changed_files", function(rs) {
if (rs.code === 0) {
let fstr = '<ul class="list-group list-group-flush">';
let i = 1;
@@ -92,19 +90,19 @@ $(document).ready(function () {
} else {
showStepArea(0);
}
})
})
$('#mdlUpdate').on('hidden.bs.modal', function (event) {
});
});
$('#mdlUpdate').on('hidden.bs.modal', function(event) {
currentStep = 1;
$("#_msgInfo").html('');
$("#_msgInfo").hide();
})
$("#btnGoStep3").click(function () {
$("#btnGoStep3").click(function() {
currentStep++
$("#_msgInfo").html('');
$("#_msgInfo").hide();
showStepArea(currentStep);
$.get("api.php?action=get_update_versions", function (rs) {
$.get("api.php?action=get_update_versions", function(rs) {
if (rs.code === 0) {
let fstr = '<ul class="list-group list-group-flush">';
let i = 1;
@@ -117,16 +115,16 @@ $(document).ready(function () {
} else {
showStepArea(0);
}
})
})
$("#btnGoStep4").click(function () {
});
});
$("#btnGoStep4").click(function() {
currentStep++
$("#_msgInfo").html('');
$("#_msgInfo").hide();
showStepArea(currentStep);
update();
})
$("#btnOK").click(function () {
$("#btnOK").click(function() {
hasNewVersion();
})
})
});
});

+ 2
- 4
src/admin/js/user.js View File

@@ -7,7 +7,6 @@ function delArc(mid) {
if (mid==0) mid = getOneItem();
location="member_do.php?id="+qstr+"&dopost=delmembers";
}
//获得选中文件的文件名
function getCheckboxItem() {
var allSel="";
if (document.form2.mid.value) return document.form2.mid.value;
@@ -21,7 +20,6 @@ function getCheckboxItem() {
}
return allSel;
}
//获得选中其中一个的id
function getOneItem() {
var allSel="";
if (document.form2.mid.value) return document.form2.mid.value;
@@ -39,7 +37,7 @@ function selAll() {
}
for (i=0;i<document.form2.mid.length;i++) {
if (!document.form2.mid[i].checked) {
document.form2.mid[i].checked=true;
document.form2.mid[i].checked = true;
}
}
}
@@ -49,7 +47,7 @@ function noSelAll() {
}
for (i=0;i<document.form2.mid.length;i++) {
if (document.form2.mid[i].checked) {
document.form2.mid[i].checked=false;
document.form2.mid[i].checked = false;
}
}
}

+ 1
- 1
src/admin/login.php View File

@@ -30,7 +30,7 @@ if (is_dir(dirname(__FILE__).'/../install')) {
//检测后台目录是否更名
$cururl = GetCurUrl();
if (preg_match('/admin/', $cururl)) {
$redmsg = '<div class="alert alert-warning">后台管理目录名称中包含名称admin,建议后台管理目录修改为其它名称</div>';
$redmsg = '<div class="alert alert-warning">后台管理目录名称中包含admin,强烈建议后台管理目录修改为其它名称</div>';
} else {
$redmsg = '';
}


+ 1
- 1
src/admin/makehtml_all.php View File

@@ -82,7 +82,7 @@ if ($action == '') {
}
}
}
$fp = fopen($mkcachefile, 'w') or die("无法写入缓存文件<span class='text-primary'>{$mkcachefile}</span>所以无法更新栏目");
$fp = fopen($mkcachefile, 'w') or die("无法写入缓存文件{$mkcachefile}所以无法更新栏目");
if (count($typeidsok) > 0) {
fwrite($fp, "<"."?php\r\n");
$i = -1;


+ 4
- 4
src/admin/makehtml_archives_action.php View File

@@ -79,8 +79,8 @@ $ttime = time() - $sstime;
$ttime = number_format(($ttime / 60), 2);
//返回提示信息
$tjlen = $totalnum > 0 ? ceil(($tjnum / $totalnum) * 100) : 100;
$tjsta = "<div class='progress mb-3'><div class='progress-bar progress-bar-striped bg-success' role='progressbar' aria-valuenow='$tjlen%' aria-valuemin='0' aria-valuemax='100' style='width:$tjlen%'>$tjlen%</div></div>";
$tjsta .= "更新文档[id:".($startdd + $pagesize)."],用时<span class='text-primary'>{$ttime}</span>分钟,完成更新文档总数<span class='text-primary'>$tjlen%</span>";
$tjsta = "<div class='progress mb-3'><div class='progress-bar progress-bar-striped bg-success' role='progressbar' aria-valuenow='".$tjlen."%' aria-valuemin='0' aria-valuemax='100' style='width:".$tjlen."%'>".$tjlen."%</div></div>";
$tjsta .= "更新文档[id:".($startdd + $pagesize)."],用时{$ttime}分钟,完成更新文档总数".$tjlen."%";
//速度测试
if ($tjnum < $totalnum) {
$nurl = "makehtml_archives_action.php?endid=$endid&startid=$startid&typeid=$typeid";
@@ -90,10 +90,10 @@ if ($tjnum < $totalnum) {
exit();
} else {
if ($typeid != '') {
ShowMsg("更新文档<span class='text-primary'>$totalnum</span>,用时<span class='text-primary'>{$ttime}</span>分钟,开始更新栏目", "makehtml_list_action.php?typeid=$typeid&uptype=all&maxpagesize=50&upnext=1");
ShowMsg("更新文档".$totalnum.",用时{$ttime}分钟,开始更新栏目", "makehtml_list_action.php?typeid=$typeid&uptype=all&maxpagesize=50&upnext=1");
} else {
if ($uptype == '') {
ShowMsg("更新文档<span class='text-primary'>$totalnum</span>,用时<span class='text-primary'>{$ttime}</span>分钟,完成所有文档更新", "javascript:;");
ShowMsg("更新文档".$totalnum.",用时{$ttime}分钟,完成所有文档更新", "javascript:;");
} else {
ShowMsg("完成所有文档更新,开始更新首页", "makehtml_all.php?action=make&step=3&uptype=$uptype&mkvalue=$mkvalue");
}


+ 2
- 2
src/admin/makehtml_freelist_action.php View File

@@ -54,10 +54,10 @@ if ($nextpage == $totalpage) {
} else {
if ($finishType) {
$gourl = "makehtml_freelist_action.php?maxpagesize=$maxpagesize&startid=$startid&endid=$endid&pageno=$nextpage";
ShowMsg("更新列表<span class='text-primary'>".$tid."</span>,继续更新列表", $gourl, 0, 100);
ShowMsg("更新列表".$tid.",继续更新列表", $gourl, 0, 100);
} else {
$gourl = "makehtml_freelist_action.php?mkpage=$mkpage&maxpagesize=$maxpagesize&startid=$startid&endid=$endid&pageno=$pageno";
ShowMsg("更新列表<span class='text-primary'>".$tid."</span>,继续更新列表", $gourl, 0, 100);
ShowMsg("更新列表".$tid.",继续更新列表", $gourl, 0, 100);
}
}
$dsql->ExecuteNoneQuery("UPDATE `#@__freelist` SET nodefault='1' WHERE aid='$startid';");

+ 4
- 4
src/admin/makehtml_homepage.php View File

@@ -29,28 +29,28 @@ if ($dopost == "view") {
//设定dedebiz admin密码
if ($dedebiz_admin == "" || $dedebiz_admin !== $re_dedebiz_admin) {
echo "<link rel=\"stylesheet\" href=\"{$cfg_cmsurl}/static/web/css/bootstrap.min.css\"><style>.modal {position:static}</style>";
echo "<div class=\"alert alert-danger\">DedeBIZ操作密码为空或两次指定的密码不符</div><br>";
echo "<div class=\"alert alert-warning\">DedeBIZ操作密码为空或两次指定的密码不符</div><br>";
$client->Close();
exit;
}
$data = $client->AdminPWDCreate($dedebiz_admin);
if ($data->data != "ok") {
echo "<link rel=\"stylesheet\" href=\"{$cfg_cmsurl}/static/web/css/bootstrap.min.css\"><style>.modal {position:static}</style>";
echo "<div class=\"alert alert-danger\">DedeBIZ设定操作密码失败:${$data}</div><br>";
echo "<div class=\"alert alert-warning\">DedeBIZ设定操作密码失败:${$data}</div><br>";
$client->Close();
exit;
}
} else {
if ($dedebiz_admin == "") {
echo "<link rel=\"stylesheet\" href=\"{$cfg_cmsurl}/static/web/css/bootstrap.min.css\"><style>.modal {position:static}</style>";
echo "<div class=\"alert alert-danger\">DedeBIZ操作密码为空</div><br>";
echo "<div class=\"alert alert-warning\">DedeBIZ操作密码为空</div><br>";
$client->Close();
exit;
}
$data = $client->AdminSetIndexLockState($dedebiz_admin, $lockindex);
if ($data->data != "ok") {
echo "<link rel=\"stylesheet\" href=\"{$cfg_cmsurl}/static/web/css/bootstrap.min.css\"><style>.modal {position:static}</style>";
echo "<div class=\"alert alert-danger\">DedeBIZ操作密码失败,填写正确的操作密码</div><br>";
echo "<div class=\"alert alert-warning\">DedeBIZ操作密码失败,填写正确的操作密码</div><br>";
$client->Close();
exit;
}


+ 3
- 3
src/admin/makehtml_taglist_action.php View File

@@ -80,7 +80,7 @@ if (is_array($tag) && count($tag) > 0) {
$query = "UPDATE `#@__tagindex` SET mktime=uptime WHERE id='$ctagid' ";
$dsql->ExecuteNoneQuery($query);
$reurl .= '/'.$ctagid;
ShowMsg("更新标签<span class='text-primary'>".$tag['tag']."</span>,<a href='$reurl' target='_blank'>点击浏览</a>", "javascript:;");
ShowMsg("更新标签".$tag['tag'].",<a href='$reurl' target='_blank'>点击浏览</a>", "javascript:;");
}
exit();
} else {
@@ -93,12 +93,12 @@ if (is_array($tag) && count($tag) > 0) {
$nextpage = 0;
}
$gourl = "makehtml_taglist_action.php?maxpagesize=$maxpagesize&tagid=$tagid&pageno=$nextpage&upall=$upall&ctagid=$ctagid&startid=$startid&endid=$endid&mktime=$mktime";
ShowMsg("更新标签<span class='text-primary'>".$tag['tag']."</span>,继续更新标签", $gourl, 0, 100);
ShowMsg("更新标签".$tag['tag'].",继续更新标签", $gourl, 0, 100);
exit();
} else {
//继续当前这个
$gourl = "makehtml_taglist_action.php?mkpage=$mkpage&maxpagesize=$maxpagesize&tagid=$tagid&pageno=$pageno&upall=$upall&ctagid=$ctagid&startid=$startid&endid=$endid&mktime=$mktime";
ShowMsg("更新标签<span class='text-primary'>".$tag['tag']."</span>,继续更新标签", $gourl, 0, 100);
ShowMsg("更新标签".$tag['tag'].",继续更新标签", $gourl, 0, 100);
exit();
}
}


+ 1
- 1
src/admin/media_add.php View File

@@ -85,7 +85,7 @@ if ($dopost == "upload") {
$dsql->ExecuteNoneQuery($inquery);
}
}
ShowMsg("成功上传<span class='text-primary'>{$okdd}</span>个文件", "media_main.php");
ShowMsg("成功上传{$okdd}个文件", "media_main.php");
exit();
}
include DedeInclude('templets/media_add.htm');

+ 4
- 4
src/admin/member_do.php View File

@@ -66,8 +66,8 @@ if ($dopost == "delmember") {
$win->AddHidden("id", $id);
$win->AddHidden("randcode", $randcode);
$win->AddHidden("safecode", $safecode);
$win->AddTitle("您确定要删除id<span class='text-primary'>".$id."</span>会员吗");
$win->AddMsgItem("<tr><td>验证安全码:<input name='safecode' type='text' id='safecode' class='admin-input-lg'>(安全码:<span class='text-primary'>$safecode</span>)</td></tr>");
$win->AddTitle("您确定要删除id".$id."会员吗");
$win->AddMsgItem("<tr><td>验证安全码:<input name='safecode' type='text' id='safecode' class='admin-input-lg'>(安全码:$safecode)</td></tr>");
$winform = $win->GetWindow("ok");
$win->Display();
} else if ($dopost == "delmembers") {
@@ -113,8 +113,8 @@ if ($dopost == "delmember") {
$win->AddHidden("id", $id);
$win->AddHidden("randcode", $randcode);
$win->AddHidden("safecode", $safecode);
$win->AddTitle("您确定要删除id<span class='text-primary'>".$id."</span>会员吗");
$win->AddMsgItem("<tr><td>验证安全码:<input name='safecode' type='text' id='safecode' size='16' class='admin-input-lg' /> (安全码:<span class='text-primary'>$safecode</span>)</td></tr>");
$win->AddTitle("您确定要删除id".$id."会员吗");
$win->AddMsgItem("<tr><td>验证安全码:<input name='safecode' type='text' id='safecode' size='16' class='admin-input-lg' /> (安全码:$safecode)</td></tr>");
$winform = $win->GetWindow("ok");
$win->Display();
}


+ 1
- 1
src/admin/member_toadmin.php View File

@@ -71,7 +71,7 @@ if ($dopost == "toadmin") {
$floginid = $cuserLogin->getUserName();
$fromid = $cuserLogin->getUserID();
$subject = "恭喜您已经成功提升管理员";
$message = "亲爱的会员<span class='text-primary'>{$userid}</span>,您已经成功提升为<span class='text-primary'>{$row['typename']}</span>,具体操作权限请同网站超级管理员联系";
$message = "尊敬的{$userid}会员,您已经成功提升为{$row['typename']},具体操作权限请同网站超级管理员联系";
$sendtime = $writetime = time();
$inquery = "INSERT INTO `#@__member_pms` (`floginid`,`fromid`,`toid`,`tologinid`,`folder`,`subject`,`sendtime`,`writetime`,`hasview`,`isadmin`,`message`) VALUES ('$floginid','$fromid','$id','$userid','inbox','$subject','$sendtime','$writetime','0','0','$message'); ";
$dsql->ExecuteNoneQuery($inquery);


+ 8
- 8
src/admin/module_main.php View File

@@ -36,7 +36,7 @@ function ReWriteConfigAuto()
global $dsql;
$configfile = DEDEDATA.'/config.cache.inc.php';
if (!is_writeable($configfile)) {
echo "配置文件<span class='text-primary'>{$configfile}</span>不支持写入,无法修改系统配置参数";
echo "配置文件{$configfile}不支持写入,无法修改系统配置参数";
exit();
}
$fp = fopen($configfile, 'w');
@@ -86,8 +86,8 @@ if ($action == '') {
}
$authAt = date("Y-m-d", $devInfo['auth_at']);
if (!isset($info['dev_id'])) {
$devInfo['dev_name'] = $info['team']."<span class='btn btn-danger btn-sm'>未认证</span>";
$authAt = "未知";
$devInfo['dev_name'] = $info['team']."<span class='btn btn-warning btn-sm'>未认证</span>";
$authAt = "<span class='btn btn-warning btn-sm'>未知</span>";
}
ShowMsg("开发者名称:{$devInfo['dev_name']}<br>开发者id:{$devInfo['dev_id']}<br>认证于:{$authAt}", "-1");
exit;
@@ -153,7 +153,7 @@ if ($action == '') {
$win->AddHidden("action", 'setupstart');
$msg = "<tr>
<td colspan='2'>
<div class='alert alert-danger mb-0'>文件列表中涉及的目录权限可写入,后台管理目录和主题目录也权限可写入</div>
<div class='alert alert-warning mb-0'>文件列表中涉及的目录权限可写入,后台管理目录和主题目录也权限可写入</div>
</td>
</tr>
<tr>
@@ -203,7 +203,7 @@ if ($action == '') {
exit();
} else if ($action == 'setupstart') {
if (!is_writeable($mdir)) {
ShowMsg("目录<span class='text-primary'>{$mdir}</span>不支持写入,这导致程序安装没法正常创建", "-1");
ShowMsg("目录{$mdir}不支持写入,这导致程序安装没法正常创建", "-1");
exit();
}
$dm = new DedeModule($mdir);
@@ -262,7 +262,7 @@ if ($action == '') {
$dm = new DedeModule($mdir);
$infos = $dm->GetModuleInfo($hash);
$alertMsg = ($infos['lang'] == $cfg_soft_lang ? '' : '<br>该模块的语言编码与您系统的编码不一致,请向开发者确认它的兼容性');
$dev_id = empty($infos['dev_id'])? "<a href='{$cfg_biz_dedebizUrl}/developer' target='_blank' class='btn btn-danger btn-sm'>未认证</a>" : "{$infos['dev_id']} <a href='{$cfg_biz_dedebizUrl}/developer?dev_id={$infos['dev_id']}' target='_blank' class='btn btn-success btn-sm'>已认证</a>";
$dev_id = empty($infos['dev_id'])? "<a href='{$cfg_biz_dedebizUrl}/developer' target='_blank' class='btn btn-warning btn-sm'>未认证</a>" : "{$infos['dev_id']} <a href='{$cfg_biz_dedebizUrl}/developer?dev_id={$infos['dev_id']}' target='_blank' class='btn btn-success btn-sm'>已认证</a>";
$win = new OxWindow();
$win->Init("module_main.php", "js/blank.js", "post");
$wecome_info = "<a href='module_main.php'>模块管理</a> - 删除{$infos['name']}";
@@ -303,7 +303,7 @@ if ($action == '') {
} else if ($action == 'delok') {
$dm = new DedeModule($mdir);
$modfile = $mdir."/".$dm->GetHashFile($hash);
unlink($modfile) or die("删除文件<span class='text-primary'>{$modfile}</span>失败");
unlink($modfile) or die("删除文件{$modfile}失败");
ShowMsg("成功删除一个模块文件", "module_main.php");
exit();
} else if ($action == 'uninstall') {
@@ -319,7 +319,7 @@ if ($action == '') {
else $v['type'] = '文件';
$filelist .= "{$v['type']}|{$v['name']}\r\n";
}
$dev_id = empty($infos['dev_id'])? "<a href='{$cfg_biz_dedebizUrl}/developer' target='_blank' class='btn btn-danger btn-sm'>未认证</a>" : "{$infos['dev_id']} <a href='{$cfg_biz_dedebizUrl}/developer?dev_id={$infos['dev_id']}' target='_blank' class='btn btn-success btn-sm'>已认证</a>";
$dev_id = empty($infos['dev_id'])? "<a href='{$cfg_biz_dedebizUrl}/developer' target='_blank' class='btn btn-warning btn-sm'>未认证</a>" : "{$infos['dev_id']} <a href='{$cfg_biz_dedebizUrl}/developer?dev_id={$infos['dev_id']}' target='_blank' class='btn btn-success btn-sm'>已认证</a>";
$win = new OxWindow();
$win->Init("module_main.php", "js/blank.js", "post");
$wecome_info = "<a href='module_main.php'>模块管理</a> - 卸载{$infos['name']}";


+ 1
- 1
src/admin/module_upload.php View File

@@ -24,7 +24,7 @@ if ($action == 'upload') {
} else {
include_once(DEDEINC."/libraries/zip.class.php");
$tmpfilename = $mdir.'/'.ExecTime().mt_rand(10000, 50000).'.tmp';
move_uploaded_file($upfile, $tmpfilename) or die("上传文件移动到<span class='text-primary'>{$tmpfilename}</span>时失败,请检查<span class='text-primary'>{$mdir}</span>目录是否有写入权限");
move_uploaded_file($upfile, $tmpfilename) or die("上传文件移动到{$tmpfilename}时失败,请检查{$mdir}目录是否有写入权限");
$dm = new DedeModule($mdir);
$infos = $dm->GetModuleInfo($tmpfilename, 'file');
if (empty($infos['hash'])) {


+ 10
- 10
src/admin/mychannel_edit.php View File

@@ -51,7 +51,7 @@ if ($dopost == "show") {
$wecome_info = "<a href='mychannel_main.php'>文档模型管理</a> - 复制文档模型";
$win = new OxWindow();
$win->Init("mychannel_edit.php", "js/blank.js", "post");
$win->AddTitle("复制文档模型:<span class='text-primary'>".$row['typename']."</span>");
$win->AddTitle("复制文档模型:".$row['typename']."");
$win->AddHidden("cid", $id);
$win->AddHidden("id", $id);
$win->AddHidden("dopost", 'copysave');
@@ -99,7 +99,7 @@ if ($dopost == "show") {
$wecome_info = "<a href='mychannel_main.php'>文档模型管理</a> - 导出文档模型规则";
$win = new OxWindow();
$win->Init();
$win->AddTitle("导出<span class='text-primary'>{$row['typename']}</span>文档模型规则");
$win->AddTitle("导出{$row['typename']}文档模型规则");
$winform = $win->GetWindow("hand", "<link rel='stylesheet' href='css/codemirror.css'><script src='js/codemirror.js'></script><script src='js/mode/xml/xml.js'></script><script src='js/mode/javascript/javascript.js'></script><script src='js/mode/css/css.js'></script><script src='js/mode/htmlmixed/htmlmixed.js'></script><textarea name='config' id='content' class='form-control'>$channelconfig</textarea><script>var editor = CodeMirror.fromTextArea(document.getElementById('content'), {lineNumbers: true,lineWrapping: true,mode: 'text/html'});</script>");
$win->Display();
exit();
@@ -156,7 +156,7 @@ if ($dopost == "show") {
$row = $dsql->GetOne("SELECT * FROM `#@__channeltype` WHERE nid='{$fields['nid']}' ");
if (is_array($row)) {
GotoStaMsg("<tr>
<td>已经存在相同的<span class='text-primary'>{$fields['nid']}</span>模型</td>
<td>已经存在相同的{$fields['nid']}模型</td>
</tr>
<tr>
<td bgcolor='#f5f5f5' align='center'><button type='button' class='btn btn-success btn-sm' onclick=\"location='mychannel_main.php';\">文档模型管理</button></td>
@@ -249,9 +249,9 @@ if ($dopost == "show") {
}
if ($copytemplet == 1) {
$tmpletdir = $cfg_basedir.$cfg_templets_dir.'/'.$cfg_df_style;
copy("{$tmpletdir}/article_{$nid}.htm", "{$tmpletdir}/{$newnid}_article.htm");
copy("{$tmpletdir}/list_{$nid}.htm", "{$tmpletdir}/{$newnid}_list.htm");
copy("{$tmpletdir}/index_{$nid}.htm", "{$tmpletdir}/{$newnid}_index.htm");
copy("{$tmpletdir}/article_{$nid}.htm", "{$tmpletdir}/article_{$newnid}.htm");
copy("{$tmpletdir}/list_{$nid}.htm", "{$tmpletdir}/list_{$newnid}.htm");
copy("{$tmpletdir}/index_{$nid}.htm", "{$tmpletdir}/index_{$newnid}.htm");
}
$rs = $dsql->ExecuteNoneQuery($inquery);
if ($rs) {
@@ -277,7 +277,7 @@ if ($dopost == "show") {
}
$trueTable = str_replace("#@__", $cfg_dbprefix, $addtable);
if (!$dsql->IsTable($trueTable)) {
ShowMsg("系统找不到您所指定的<span class='text-primary'>$trueTable</span>表", "-1");
ShowMsg("系统找不到您所指定的".$trueTable."表", "-1");
exit();
}
$dsql->ExecuteNoneQuery($query);
@@ -290,7 +290,7 @@ if ($dopost == "show") {
$wecome_info = "<a href='mychannel_main.php'>文档模型管理</a> - 模型应用模板";
$win = new OxWindow();
$win->Init("", "js/blank.js", "");
$win->AddTitle("栏目<span class='text-primary'>".$row['typename']."</span>默认模板文件说明");
$win->AddTitle("栏目".$row['typename']."默认模板文件说明");
$defaulttemplate = $cfg_templets_dir.'/'.$cfg_df_style;
$msg = "<tr>
<td>
@@ -332,7 +332,7 @@ if ($dopost == "show") {
$win->AddHidden("job", "yes");
$win->AddHidden("dopost", $dopost);
$win->AddHidden("id", $id);
$win->AddTitle("您确定要删除<span class='text-primary'>".$row['typename']."</span>模型吗");
$win->AddTitle("您确定要删除".$row['typename']."模型吗");
$winform = $win->GetWindow("ok");
$win->Display();
exit();
@@ -572,7 +572,7 @@ if ($dopost == "show") {
echo "<script>var editor = CodeMirror.fromTextArea(document.getElementById('content'), {
lineNumbers: true,
lineWrapping: true,
mode: 'text/html'
mode: 'text/html',
});</script>";
echo $forms;
}


+ 1
- 1
src/admin/mychannel_field_add.php View File

@@ -24,7 +24,7 @@ if ($action == 'save') {
$mxlen = $maxlength;
if (preg_match("#^(select|radio|checkbox)$#i", $dtype)) {
if (!preg_match("#,#", $dfvalue)) {
ShowMsg("您设定了字段为<span class='text-primary'>{$dtype}</span>类型,必须在默认值中指定元素列表,如:'a,b,c' ", "-1");
ShowMsg("您设定了字段为{$dtype}类型,必须在默认值中指定元素列表,如:'a,b,c' ", "-1");
exit();
}
}


+ 1
- 1
src/admin/mychannel_field_edit.php View File

@@ -50,7 +50,7 @@ if ($action == 'save') {
$dfvalue = $vdefault;
if (preg_match("#^(select|radio|checkbox)#", $dtype)) {
if (!preg_match("#,#", $dfvalue)) {
ShowMsg("您设定了字段为<span class='text-primary'>{$dtype}</span>类型,必须在默认值中指定元素列表,如:'a,b,c' ", "-1");
ShowMsg("您设定了字段为{$dtype}类型,必须在默认值中指定元素列表,如:'a,b,c' ", "-1");
exit();
}
}


+ 1
- 1
src/admin/plus_edit.php View File

@@ -31,7 +31,7 @@ if ($dopost == "show") {
$win->AddHidden("job", "yes");
$win->AddHidden("dopost", $dopost);
$win->AddHidden("aid", $aid);
$win->AddTitle("您确定要删除<span class='text-primary'>".$title."</span>插件吗");
$win->AddTitle("您确定要删除".$title."插件吗");
$win->AddMsgItem("<tr><td>提示:仅删除插件导航,前往<a href='module_main.php?moduletype=plus'>模块管理</a>卸载删除</td></tr>");
$winform = $win->GetWindow("ok");
$win->Display();


+ 2
- 2
src/admin/soft_add.php View File

@@ -63,7 +63,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_New')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}权限");
}
//对保存的文档进行处理
if (empty($writer)) $writer = $cuserLogin->getUserName();
@@ -198,7 +198,7 @@ if ($dopost != 'save') {
if (empty($addtable)) {
$dsql->ExecuteNoneQuery("DELETE FROM `#@__archives` WHERE id='$arcID'");
$dsql->ExecuteNoneQuery("DELETE FROM `#@__arctiny` WHERE id='$arcID'");
ShowMsg("没找到模型<span class='text-primary'>{$channelid}</span>主表信息,无法完成操作", "javascript:;");
ShowMsg("没找到模型{$channelid}主表信息,无法完成操作", "javascript:;");
exit();
}
$daccess = isset($daccess) && is_numeric($daccess) ? $daccess : 0;


+ 1
- 1
src/admin/soft_edit.php View File

@@ -89,7 +89,7 @@ if ($dopost != 'save') {
exit();
}
if (!TestPurview('a_Edit')) {
CheckCatalog($typeid, "您没有操作栏目<span class='text-primary'>{$typeid}</span>文档权限");
CheckCatalog($typeid, "您没有操作栏目{$typeid}文档权限");
}
//对保存的文档进行处理
$pubdate = GetMkTime($pubdate);


+ 4
- 4
src/admin/sys_admin_user_edit.php View File

@@ -51,12 +51,12 @@ if ($dopost == 'saveedit') {
if ($olduserid !== $userid) {
$row = $dsql->GetOne("SELECT mid FROM `#@__member` WHERE userid LIKE '$userid' ");
if (is_array($row)) {
ShowMsg("您指定的账号<span class='text-primary'>{$userid}</span>已存在,请使用别的账号", "-1");
ShowMsg("您指定的账号{$userid}已存在,请使用别的账号", "-1");
exit();
}
$row = $dsql->GetOne("SELECT id FROM `#@__admin` WHERE userid LIKE '$userid' ");
if (is_array($row)) {
ShowMsg("您指定的账号<span class='text-primary'>{$userid}</span>已存在,请使用别的账号", "-1");
ShowMsg("您指定的账号{$userid}已存在,请使用别的账号", "-1");
exit();
}
$usql = ",userid='$userid'";
@@ -86,8 +86,8 @@ if ($dopost == 'saveedit') {
$win->AddHidden("randcode", $randcode);
$win->AddHidden("safecode", $safecode);
$win->AddHidden("id", $id);
$win->AddMsgItem("<tr><td>您确定要删除id<span class='text-primary'>$userid</span>管理员吗</td></tr>");
$win->AddMsgItem("<tr><td>验证安全码:<input name='safecode' type='text' id='safecode' class='admin-input-lg'>(安全码:<span class='text-primary'>$safecode</span>)</td></tr>");
$win->AddMsgItem("<tr><td>您确定要删除id".$userid."管理员吗</td></tr>");
$win->AddMsgItem("<tr><td>验证安全码:<input name='safecode' type='text' id='safecode' class='admin-input-lg'>(安全码:$safecode)</td></tr>");
$winform = $win->GetWindow("ok");
$win->Display();
exit();


+ 0
- 109
src/admin/sys_admin_user_tj.php View File

@@ -1,109 +0,0 @@
<?php
/**
* 管理员绩效统计
*
* @version $id:sys_admin_user_edit.php 16:22 2010年7月20日 tianya $
* @package DedeBIZ.Administrator
* @copyright Copyright (c) 2022 DedeBIZ.COM
* @license GNU GPL v2 (https://www.dedebiz.com/license)
* @link https://www.dedebiz.com
*/
require_once(dirname(__FILE__)."/config.php");
CheckPurview('sys_User');
if (isset($dopost) && $dopost == 'getone') {
$row = $dsql->GetOne("SELECT userid FROM `#@__admin` WHERE id='$uid';");
$userid = $row['userid'];
$y = intval(MyDate('Y', time()));
$m = intval(MyDate('m', time()));
$d = intval(MyDate('d', time()));
//全部
$sql = "SELECT addtable FROM `#@__channeltype` WHERE issystem='-1'";
$dsql->Execute('me', $sql);
while ($frow = $dsql->GetArray('me')) {
$dd = empty($dd) ? "0" : $dd;
$cc = empty($cc) ? "0" : $cc;
$row = $dsql->GetOne("SELECT COUNT(aid) AS dd,SUM(click) AS cc FROM `{$frow['addtable']}` WHERE mid='$uid';");
$dd += $row['dd'];
$cc += $row['cc'];
}
$row = $dsql->GetOne("SELECT COUNT(id) AS dd,SUM(click) AS cc FROM `#@__archives` WHERE mid='$uid';");
$dd = $row['dd'] + $dd;
$cc = $row['cc'] + $cc;
//季度
$starttime = 0;
if (preg_match("#[123]#", $m) && $m < 10) $starttime = $y."-01-01 00:00:00";
else if (preg_match("#[456]#", $m)) $starttime = $y."-04-01 00:00:00";
else if (preg_match("#[789]#", $m)) $starttime = $y."-07-01 00:00:00";
else $starttime = $y."-10-01 00:00:00";
$istarttime = GetMkTime($starttime);
$sql = "SELECT addtable FROM `#@__channeltype` WHERE issystem='-1'";
$dsql->Execute('me', $sql);
while ($frow = $dsql->GetArray('me')) {
$dds = empty($dds) ? "0" : $dds;
$ccs = empty($ccs) ? "0" : $ccs;
$row = $dsql->GetOne("SELECT COUNT(aid) AS dd,SUM(click) AS cc FROM `{$frow['addtable']}` WHERE senddate>$istarttime AND mid='$uid';");
$dds += $row['dd'];
$ccs += $row['cc'];
}
$row = $dsql->GetOne("SELECT COUNT(id) AS dd,SUM(click) AS cc FROM `#@__archives` WHERE senddate>$istarttime AND mid='$uid';");
$dds = $row['dd'] + $dds;
$ccs = $row['cc'] + $ccs;
//当月
$starttime = $y."-{$m}-01 00:00:00";
$istarttime = GetMkTime($starttime);
$sql = "SELECT addtable FROM `#@__channeltype` WHERE issystem='-1'";
$dsql->Execute('me', $sql);
while ($frow = $dsql->GetArray('me')) {
$ddm = empty($ddm) ? "0" : $ddm;
$ccm = empty($ccm) ? "0" : $ccm;
$row = $dsql->GetOne("SELECT COUNT(aid) AS dd,SUM(click) AS cc FROM `{$frow['addtable']}` WHERE senddate>$istarttime AND mid='$uid';");
$ddm += $row['dd'];
$ccm += $row['cc'];
}
$row = $dsql->GetOne("SELECT COUNT(id) AS dd,SUM(click) AS cc FROM `#@__archives` WHERE senddate>$istarttime AND mid='$uid';");
$ddm = $row['dd'] + $ddm;
$ccm = $row['cc'] + $ccm;
//七天
$starttime = $y."-{$m}-{$d} 00:00:00";
$istarttime = GetMkTime($starttime) - (7 * 24 * 3600);
$sql = "SELECT addtable FROM `#@__channeltype` WHERE issystem='-1'";
$dsql->Execute('me', $sql);
while ($frow = $dsql->GetArray('me')) {
$ddw = empty($ddw) ? "0" : $ddw;
$ccw = empty($ccw) ? "0" : $ccw;
$row = $dsql->GetOne("SELECT COUNT(aid) AS dd,SUM(click) AS cc FROM `{$frow['addtable']}` WHERE senddate>$istarttime AND mid='$uid';");
$ddw += $row['dd'];
$ccw += $row['cc'];
}
$row = $dsql->GetOne("SELECT COUNT(id) AS dd,SUM(click) AS cc FROM `#@__archives` WHERE senddate>$istarttime AND mid='$uid';");
$ddw = $row['dd'] + $ddw;
$ccw = $row['cc'] + $ccw;
//当天
$starttime = $y."-{$m}-{$d} 00:00:00";
$istarttime = GetMkTime($starttime);
$sql = "SELECT addtable FROM `#@__channeltype` WHERE issystem='-1'";
$dsql->Execute('me', $sql);
while ($frow = $dsql->GetArray('me')) {
$ddd = empty($ddd) ? "0" : $ddd;
$ccd = empty($ccd) ? "0" : $ccd;
$row = $dsql->GetOne("SELECT COUNT(aid) AS dd,SUM(click) AS cc FROM `{$frow['addtable']}` WHERE senddate>$istarttime AND mid='$uid';");
$ddd += $row['dd'];
$ccd += $row['cc'];
}
$row = $dsql->GetOne("SELECT COUNT(id) AS dd,SUM(click) AS cc FROM `#@__archives` WHERE senddate>$istarttime AND mid='$uid';");
$ddd = $row['dd'] + $ddd;
$ccd = $row['cc'] + $ccd;
$msg = "<div class='row'>
<div class='col-2'>管理员:{$userid}</div>
<div class='col-2'>文档/点击:{$dd}/{$cc}</div>
<div class='col-2'>季度:{$dds}/{$ccs}</div>
<div class='col-2'>当月:{$ddm}/{$ccm}</div>
<div class='col-2'>七天:{$ddw}/{$ccw}</div>
<div class='col-2'>当天:{$ddd}/{$ccd}</div>
</div>";
AjaxHead();
echo $msg;
exit();
}
include DedeInclude('templets/sys_admin_user_tj.htm');
?>

+ 5
- 5
src/admin/sys_data.php View File

@@ -15,7 +15,7 @@ if (DEDEBIZ_SAFE_MODE) {
CheckPurview('sys_Data');
if (empty($dopost)) $dopost = '';
if ($cfg_dbtype == 'sqlite') {
showMsg('备份系统根目录下/data/'.$cfg_dbname.'.db文件即可', 'javascript:;');
showMsg("备份系统根目录下/data/".$cfg_dbname.".db文件即可", "javascript:;");
exit();
}
//查看表结构
@@ -41,9 +41,9 @@ else if ($dopost == "opimize") {
} else {
$rs = $dsql->ExecuteNoneQuery("OPTIMIZE TABLE `$tablename`");
if ($rs) {
echo "执行优化表<span class='text-primary'>$tablename</span>完成<br>";
echo "执行优化表".$tablename."完成<br>";
} else {
echo "执行优化表<span class='text-primary'>$tablename</span>失败,原因是:".$dsql->GetError();
echo "执行优化表".$tablename."失败,原因是:".$dsql->GetError();
}
}
echo '</xmp>';
@@ -57,9 +57,9 @@ else if ($dopost == "repair") {
} else {
$rs = $dsql->ExecuteNoneQuery("REPAIR TABLE `$tablename`");
if ($rs) {
echo "修复表<span class='text-primary'>$tablename</span>完成<br>";
echo "修复表".$tablename."完成<br>";
} else {
echo "修复表<span class='text-primary'>$tablename</span>失败,原因是:".$dsql->GetError();
echo "修复表".$tablename."失败,原因是:".$dsql->GetError();
}
}
echo '</xmp>';


+ 2
- 2
src/admin/sys_data_replace.php View File

@@ -23,7 +23,7 @@ else if ($action == 'getfields') {
AjaxHead();
$dsql->GetTableFields($exptable);
echo "<div class='alert alert-info mb-0'>";
echo "<p>表<span class='text-primary'>".$exptable."</span>含有的字段:</p>";
echo "<p>表".$exptable."含有的字段:</p>";
while ($row = $dsql->GetFieldObject()) {
echo "<a href=\"javascript:pf('{$row->name}')\">".$row->name."</a>\r\n";
}
@@ -79,7 +79,7 @@ else if ($action == 'apply') {
}
}
$dsql->ExecuteNoneQuery("OPTIMIZE TABLE `$exptable`");
ShowMsg("共找到<span class='text-primary'>$tt</span>条记录,成功替换了<span class='text-primary'>$oo</span>条", "javascript:;");
ShowMsg("共找到".$tt."条记录,成功替换了".$oo."条", "javascript:;");
exit();
}
}

+ 5
- 6
src/admin/sys_info.php View File

@@ -17,7 +17,7 @@ function ReWriteConfig()
{
global $dsql, $configfile;
if (!is_writeable($configfile)) {
echo "配置文件<span class='text-primary'>{$configfile}</span>不支持写入,无法修改系统配置参数";
echo "配置文件{$configfile}不支持写入,无法修改系统配置参数";
exit();
}
$fp = fopen($configfile, 'w');
@@ -86,7 +86,7 @@ else if ($dopost == 'add') {
exit();
}
if (!is_writeable($configfile)) {
ShowMsg("成功保存变量,但由于<span class='text-primary'>$configfile</span>无法写入,因此不能更新配置文件", "sys_info.php?gp=$vargroup");
ShowMsg("成功保存变量,但由于".$configfile."无法写入,因此不能更新配置文件", "sys_info.php?gp=$vargroup");
exit();
} else {
ReWriteConfig();
@@ -114,11 +114,10 @@ EOT;
$dsql->SetQuery("SELECT * FROM `#@__sysconfig` WHERE info LIKE '%$keywords%' OR varname LIKE '%$keywords%' ORDER BY aid ASC");
$dsql->Execute();
while ($row = $dsql->GetArray()) {
$bgcolor = ($i++ % 2 == 0) ? "#f5f5f5" : "#ffffff";
$row['info'] = preg_replace("#{$keywords}#", '<span class="text-primary">'.$keywords.'</span>', $row['info']);
$row['varname'] = preg_replace("#{$keywords}#", '<span class="text-primary">'.$keywords.'</span>', $row['varname']);
$row['info'] = preg_replace("#{$keywords}#", '<b class="text-danger">'.$keywords.'</b>', $row['info']);
$row['varname'] = preg_replace("#{$keywords}#", '<b class="text-danger">'.$keywords.'</b>', $row['varname']);
?>
<tr align="center" bgcolor="<?php echo $bgcolor ?>">
<tr align="center">
<td width="300"><?php echo $row['info'];?>:</td>
<td align="left">
<?php


+ 1
- 1
src/admin/sys_info_mark.php View File

@@ -58,7 +58,7 @@ if ($action == "save") {
}
$configstr .= "\$photo_markimg = '{$photo_markimg}';\r\n";
$configstr = "<"."?php\r\n".$configstr."?".">\r\n";
$fp = fopen($ImageWaterConfigFile, "w") or die("写入文件<span class='text-primary'>$ImageWaterConfigFile</span>失败,请检查权限");
$fp = fopen($ImageWaterConfigFile, "w") or die("写入文件".$ImageWaterConfigFile."失败,请检查权限");
fwrite($fp, $configstr);
fclose($fp);
echo "<script>alert('修改配置成功');</script>\r\n";


+ 1
- 1
src/admin/sys_safetest.php View File

@@ -46,7 +46,7 @@ function TestOneFile($f)
if ($localFilehash === $remoteFilehash) {
return 0;
}
$message .= "<div class='mb-3'><span class='d-inline-block w-75'>发现可疑文件:{$trfile}</span><a href='file_manage_view.php?fmdo=edit&filename=$oldTrfile&activepath=' target='_blank' class='btn btn-light btn-sm'><i class='fa fa-eye'></i> 查看</a><a href='sys_safetest.php?action=viewdiff&filename=$oldTrfile' target='_blank' class='btn btn-light btn-sm'><i class='fa fa-pencil-square'></i> 修改</a><a href='file_manage_view.php?fmdo=del&filename=$oldTrfile&activepath=' target='_blank' class='btn btn-danger btn-sm'><i class='fa fa-trash'></i> 删除</a></div>\r\n";
$message .= "<p><span class='d-inline-block w-75'>发现可疑文件:{$trfile}</span><a href='file_manage_view.php?fmdo=edit&filename=$oldTrfile&activepath=' target='_blank' class='btn btn-light btn-sm'><i class='fa fa-eye'></i> 查看</a><a href='sys_safetest.php?action=viewdiff&filename=$oldTrfile' target='_blank' class='btn btn-light btn-sm'><i class='fa fa-pencil-square'></i> 修改</a><a href='file_manage_view.php?fmdo=del&filename=$oldTrfile&activepath=' target='_blank' class='btn btn-danger btn-sm'><i class='fa fa-trash'></i> 删除</a></p>\r\n";
return 1;
}
return 0;


+ 17
- 17
src/admin/sys_sql_query.php View File

@@ -35,8 +35,8 @@ else if ($dopost == "opimize") {
echo "没有指定表名";
} else {
$rs = $dsql->ExecuteNoneQuery("OPTIMIZE TABLE `$tablename`");
if ($rs) echo "执行优化表<span class='text-primary'>$tablename</span>完成<br>";
else echo "执行优化表<span class='text-primary'>$tablename</span>失败,原因是:".$dsql->GetError();
if ($rs) echo "执行优化表".$tablename."完成<br>";
else echo "执行优化表".$tablename."失败,原因是:".$dsql->GetError();
}
exit();
}
@@ -48,9 +48,9 @@ else if ($dopost == "opimizeAll") {
while ($row = $dsql->GetArray('t', MYSQL_BOTH)) {
$rs = $dsql->ExecuteNoneQuery("OPTIMIZE TABLE `{$row[0]}`");
if ($rs) {
echo "优化表<span class='text-primary'>{$row[0]}</span>完成<br>";
echo "优化表{$row[0]}完成<br>";
} else {
echo "优化表<span class='text-primary'>{$row[0]}</span>失败,原因是: ".$dsql->GetError()."<br>";
echo "优化表{$row[0]}失败,原因是: ".$dsql->GetError();
}
}
exit();
@@ -62,8 +62,8 @@ else if ($dopost == "repair") {
echo "没有指定表名";
} else {
$rs = $dsql->ExecuteNoneQuery("REPAIR TABLE `$tablename`");
if ($rs) echo "修复表<span class='text-primary'>$tablename</span>完成<br>";
else echo "修复表<span class='text-primary'>$tablename</span>失败,原因是:".$dsql->GetError();
if ($rs) echo "修复表".$tablename."完成<br>";
else echo "修复表".$tablename."失败,原因是:".$dsql->GetError();
}
exit();
}
@@ -75,9 +75,9 @@ else if ($dopost == "repairAll") {
while ($row = $dsql->GetArray('t', MYSQL_BOTH)) {
$rs = $dsql->ExecuteNoneQuery("REPAIR TABLE `{$row[0]}`");
if ($rs) {
echo "修复表<span class='text-primary'>{$row[0]}</span>完成<br>";
echo "修复表{$row[0]}完成<br>";
} else {
echo "修复表<span class='text-primary'>{$row[0]}</span>失败,原因是: ".$dsql->GetError()."<br><br>";
echo "修复表{$row[0]}失败,原因是: ".$dsql->GetError();
}
}
exit();
@@ -96,9 +96,9 @@ else if ($dopost == "query") {
$dsql->SetQuery($sqlquery);
$dsql->Execute();
if ($dsql->GetTotalRow() <= 0) {
echo "运行SQL:<span class='text-primary'>{$sqlquery}</span>,无返回记录<br>";
echo "运行SQL:{$sqlquery}无返回记录<br>";
} else {
echo "运行SQL:<span class='text-primary'>{$sqlquery}</span>,共有<span class='text-primary'>".$dsql->GetTotalRow()."</span>条记录,最大返回100条<br>";
echo "运行SQL:{$sqlquery}共有".$dsql->GetTotalRow()."条记录,最大返回100条";
}
$j = 0;
while ($row = $dsql->GetArray()) {
@@ -106,11 +106,11 @@ else if ($dopost == "query") {
if ($j > 100) {
break;
}
echo "<hr size=1 width='100%'/>";
echo "记录:<span class='text-primary'>$j</span>";
echo "<hr size=1 width='100%'/>";
echo "<hr>";
echo "记录:$j";
echo "<hr>";
foreach ($row as $k => $v) {
echo "<span class='text-primary'>{$k}:</span>{$v}<br>\r\n";
echo "{$k}:{$v}<br>\r\n";
}
}
exit();
@@ -131,15 +131,15 @@ else if ($dopost == "query") {
if ($errCode == "") {
$i++;
} else {
$nerrCode .= "执行<span class='text-primary'>$q</span>出错,错误提示:<span class='text-primary'>".$errCode."</span><br>";
$nerrCode .= "执行".$q."出错,错误提示:".$errCode."";
}
}
echo "成功执行<span class='text-primary'>{$i}</span>个SQL语句<br>";
echo "成功执行{$i}个SQL语句";
echo $nerrCode;
} else {
$dsql->ExecuteNoneQuery($sqlquery);
$nerrCode = trim($dsql->GetError());
echo "成功执行1个SQL语句<br>";
echo "成功执行1个SQL语句";
echo $nerrCode;
}
exit();


+ 1
- 1
src/admin/tag_test_action.php View File

@@ -26,7 +26,7 @@ if ($typeid > 0) $pv = new PartView($typeid);
else $pv = new PartView();
$pv->SetTemplet($partcode, "string");
if ($showsource == "" || $showsource == "yes") {
echo "<span class='text-primary'><pre>".dede_htmlspecialchars($partcode)."</pre></span>";
echo "<pre>".dede_htmlspecialchars($partcode)."</pre>";
echo "<hr>";
}
$pv->Display();

+ 1
- 2
src/admin/templets/action_search.htm View File

@@ -19,8 +19,7 @@
</tr>
<?php foreach ($row['soniterm'] as $rows) {?>
<tr>
<td><a href="<?php echo $rows['linkurl'] ?>" target="main"><?php echo $rows['title'] ?></a>
<p class="text-secondary"><small><?php echo $rows['description'] ?></small></p></td>
<td><a href="<?php echo $rows['linkurl'] ?>" target="main"><?php echo $rows['title'] ?></a></td>
</tr>
<?php }?>
<?php }?>


+ 5
- 6
src/admin/templets/ad_add.htm View File

@@ -71,8 +71,8 @@
<tr>
<td>投放时间:</td>
<td>
<label>从:<input type="text" name="starttime" id="starttime" value="<?php echo $startDay?>" class="admin-input-sm"></label>
<label>到:<input type="text" name="endtime" id="endtime" value="<?php echo $endDay?>" class="admin-input-sm"></label>
<label>从:<input type="text" name="starttime" id="starttime" value="<?php echo $startDay?>" class="datepicker admin-input-sm"></label>
<label>到:<input type="text" name="endtime" id="endtime" value="<?php echo $endDay?>" class="datepicker admin-input-sm"></label>
</td>
</tr>
<tr>
@@ -177,7 +177,7 @@
return false;
}
}
$(document).ready(function () {
$(document).ready(function() {
$('.datepicker').daterangepicker({
"singleDatePicker": true,
"autoApply": true,
@@ -185,7 +185,6 @@
"linkedCalendars": false,
"timePicker": true,
"timePicker24Hour": true,
//"timePickerSeconds": true,
"showCustomRangeLabel": false,
ranges: {
'今日': [moment(), moment()],
@@ -201,13 +200,13 @@
monthNames: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
firstDay: 1
}
}, function (start) {
}, function(start) {
$(this).val(start.format("YYYY-MM-DD HH:mm"));
});
})
</script>
<script>
(function ($) {
(function($) {
function showcode(idName) {
$("#advert").html("").html($("#formtxt>#" + idName).html());
$("#adstyle").val(idName);


+ 5
- 6
src/admin/templets/ad_edit.htm View File

@@ -62,8 +62,8 @@
<tr>
<td>投放时间:</td>
<td>
<label>从:<input type="text" name="starttime" id="starttime" value="<?php echo GetDateTimeMk($row['starttime'])?>" class="admin-input-sm"></label>
<label>到:<input type="text" name="endtime" id="endtime" value="<?php echo GetDateTimeMk($row['endtime'])?>" class="admin-input-sm"></label>
<label>从:<input type="text" name="starttime" id="starttime" value="<?php echo GetDateTimeMk($row['starttime'])?>" class="datepicker admin-input-sm"></label>
<label>到:<input type="text" name="endtime" id="endtime" value="<?php echo GetDateTimeMk($row['endtime'])?>" class="datepicker admin-input-sm"></label>
</td>
</tr>
<tr>
@@ -87,7 +87,7 @@
return false;
}
}
$(document).ready(function () {
$(document).ready(function() {
$('.datepicker').daterangepicker({
"singleDatePicker": true,
"autoApply": true,
@@ -95,7 +95,6 @@
"linkedCalendars": false,
"timePicker": true,
"timePicker24Hour": true,
//"timePickerSeconds": true,
"showCustomRangeLabel": false,
ranges: {
'今日': [moment(), moment()],
@@ -111,10 +110,10 @@
monthNames: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
firstDay: 1
}
}, function (start) {
}, function(start) {
$(this).val(start.format("YYYY-MM-DD HH:mm"));
});
})
});
</script>
</body>
</html>

+ 2
- 2
src/admin/templets/adtype_main.htm View File

@@ -12,7 +12,7 @@
<form name="form1" action="adtype_main.php" method="post">
<table align="center" class="table maintable my-3">
<tr>
<td bgcolor="#f5f5f5" colspan="3"><input type="hidden" name="dopost" value="save">广告分类管理<a href="ad_main.php" class="btn btn-success btn-sm ml-2">广告管理</a></td>
<td bgcolor="#f5f5f5" colspan="3"><input type="hidden" name="dopost" value="save">广告分类管理</td>
</tr>
<tr bgcolor="#e9ecef" align="center">
<td width="6%">id</td>
@@ -28,7 +28,7 @@
$k++;
?>
<tr>
<td><input type="hidden" name="ID_<?php echo $k?>" value="<?php echo $row->id?>" /><?php echo $row->id;?></td>
<td><input type="hidden" name="ID_<?php echo $k?>" value="<?php echo $row->id?>"><?php echo $row->id;?></td>
<td><input type="text" name="pname_<?php echo $k?>" value="<?php echo $row->typename?>" id="pname_<?php echo $k?>" class="w-100"></td>
<td><label><input type="checkbox" name="check_<?php echo $k?>" id="check_<?php echo $k?>" value="1" checked="checked"> 保留</label></td>
</tr>


+ 5
- 6
src/admin/templets/album_add.htm View File

@@ -16,10 +16,9 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
<script src="js/album.js"></script>
<script src="js/handlers.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
</head>
<body>
<form name="form1" action="album_add.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmitAlb();">
@@ -96,7 +95,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input type="text" name="picname" id="picname" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit2" onclick="SelectImage('form1.picname','small');" class="btn btn-success btn-sm">选择图片</button>
<button type="button" id="btnClearAll" class="btn btn-sm btn-success delete">清空</button>
@@ -139,7 +138,7 @@
echo "</select>";
?>
</span>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
<?php
if ($cfg_need_typeid2=='Y') {
echo "<a href='javascript:AddTypeid2();' class='btn btn-success btn-sm'>选择副栏目</a>";
@@ -160,7 +159,7 @@
<td>
<span id="typeid2ct"></span>
<input type="text" name="typeid2" id="typeid2" value="" class="admin-input-sm">
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2')" title="选择副栏目"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2')" title="选择副栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>
@@ -413,7 +412,7 @@
}
});
}
})
});
</script>
<script>InitPage();</script>
</body>

+ 7
- 8
src/admin/templets/album_edit.htm View File

@@ -16,10 +16,9 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
<script src="js/album.js"></script>
<script src="js/handlers.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
</head>
<body>
<form name="form1" action="album_edit.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmitAlb();">
@@ -97,7 +96,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input type="text" name="picname" id="picname" value="<?php echo $arcRow['litpic']?>" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit" onclick="SelectImage('form1.picname','');" class="btn btn-success btn-sm">选择图片</button>
<button type="button" id="btnClearAll" class="btn btn-success btn-sm">清空</button>
@@ -138,7 +137,7 @@
echo $typeOptions;
echo '</select>';
?>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $arcRow['typeid'];?>')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $arcRow['typeid'];?>')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
<td width="120">需要金币:</td>
<td><input type="text" name="money" id="money" value="<?php echo $arcRow['money']?>" class="admin-input-sm"></td>
@@ -155,7 +154,7 @@
<td>
<span id="typeid2ct"></span>
<input type="text" name="typeid2" id="typeid2" value="<?php echo ($arcRow['typeid2']=='0' ? '' : $arcRow['typeid2']);?>" class="admin-input-sm">
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>
@@ -341,7 +340,7 @@
<?php
$subday = SubDay($arcRow["sortrank"],$arcRow["pubdate"]);
echo "<option value='0'>正常排序</option>";
if ($subday>0) echo "<option value='$subday' selected>置顶<span class='text-primary'>$subday</span>天</option>";
if ($subday>0) echo "<option value='$subday' selected>置顶".$subday."天</option>";
?>
<option value="7">置顶一周</option>
<option value="30">置顶一个月</option>
@@ -447,7 +446,7 @@
ShowMsg(error); //处理上传失败后的回调
}
});
})
});
$("#iptAlbumImages").change(function(val) {
for (let i = 0; i < val.target.files.length; i++) {
const f = val.target.files[i];
@@ -474,7 +473,7 @@
}
});
}
})
});
</script>
<script>InitPage();</script>
</body>

+ 4
- 4
src/admin/templets/archives_add.htm View File

@@ -15,8 +15,8 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="js/main.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<form name="form1" action="archives_add.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmit()">
@@ -90,7 +90,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input type="text" name="picname" id="picname" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit2" onclick="SelectImage('form1.picname','small');" class='btn btn-success btn-sm'>选择图片</button>
<button type="button" id="btnClearAll" class="btn btn-success delete">清空</button>
@@ -140,7 +140,7 @@
echo "</select>";
?>
</span>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
<?php
if ($cfg_need_typeid2=='Y') {
echo "<a href='javascript:AddTypeid2();' class='btn btn-success btn-sm'>选择副栏目</a>";
@@ -161,7 +161,7 @@
<td>
<span id="typeid2ct"></span>
<input type="text" name="typeid2" id="typeid2" value="" class="admin-input-sm">
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2')" title="选择副栏目"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2')" title="选择副栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>


+ 5
- 5
src/admin/templets/archives_edit.htm View File

@@ -15,8 +15,8 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="js/main.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<form name="form1" action="archives_edit.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmit();">
@@ -92,7 +92,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input name="picname" type="text" id="picname" value="<?php echo $arcRow['litpic']?>" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit" onclick="SelectImage('form1.picname','');" class="btn btn-success btn-sm">选择图片</button>
<button id="btnClearAll" type="button" class="btn btn-success btn-sm">清空</button>
@@ -142,7 +142,7 @@
echo $typeOptions;
echo "</select>";
?>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
<td width="120">需要金币:</td>
<td><input name="money" type="text" id="money" value="<?php echo $arcRow['money']?>" class="admin-input-sm"></td>
@@ -159,7 +159,7 @@
<td>
<span id="typeid2ct"></span>
<input type="text" name="typeid2" id="typeid2" value="<?php echo ($arcRow['typeid2']=='0' ? '' : $arcRow['typeid2']);?>" class="admin-input-sm">
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>
@@ -227,7 +227,7 @@
<?php
$subday = SubDay($arcRow["sortrank"],$arcRow["pubdate"]);
echo "<option value='0'>正常排序</option>";
if ($subday>0) echo "<option value='$subday' selected>置顶<span class='text-primary'>$subday</span>天</option>";
if ($subday>0) echo "<option value='$subday' selected>置顶".$subday."天</option>";
?>
<option value="7">置顶一周</option>
<option value="30">置顶一个月</option>


+ 3
- 3
src/admin/templets/archives_sg_add.htm View File

@@ -15,8 +15,8 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="js/main.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<form name="form1" action="archives_sg_add.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmit()">
@@ -63,7 +63,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input type="text" name="picname" id="picname" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit2" onclick="SelectImage('form1.picname','small');" class="btn btn-success btn-sm">选择图片</button>
<button type="button" id="btnClearAll" class="btn btn-success btn-sm">清空</button>
@@ -93,7 +93,7 @@
echo "</select>";
?>
</span>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>


+ 3
- 3
src/admin/templets/archives_sg_edit.htm View File

@@ -15,8 +15,8 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="js/main.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<form name="form1" action="archives_sg_edit.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmit();">
@@ -67,7 +67,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input type="text" name="picname" id="picname" class="admin-input-lg" value="<?php echo $addRow['litpic']?>">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit" onclick="SelectImage('form1.picname','');" class="btn btn-success btn-sm">选择图片</button>
<button type="button" id="btnClearAll" class="btn btn-success btn-sm">清空</button>
@@ -95,7 +95,7 @@
echo $typeOptions;
echo "</select>";
?>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $addRow['typeid'];?>')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $addRow['typeid'];?>')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>


+ 6
- 7
src/admin/templets/article_add.htm View File

@@ -15,9 +15,8 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="js/main.js"></script>
<script src="js/handlers.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<form name="form1" action="article_add.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmit()">
@@ -90,7 +89,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input type="text" name="picname" id="picname" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit2" onclick="SelectImage('form1.picname','small');" class="btn btn-success btn-sm">选择图片</button>
<button type="button" id="btnClearAll" class="btn btn-success btn-sm">清空</button>
@@ -133,7 +132,7 @@
echo "</select>";
?>
</span>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
<?php
if ($cfg_need_typeid2=='Y') {
echo "<a href='javascript:AddTypeid2();' class='btn btn-success btn-sm'>选择副栏目</a>";
@@ -154,7 +153,7 @@
<td>
<span id="typeid2ct"></span>
<input type="text" name="typeid2" id="typeid2" value="" class="admin-input-sm">
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2')" title="选择副栏目"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2')" title="选择副栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>
@@ -208,8 +207,8 @@
<tr>
<td width="120">分页方式:</td>
<td>
<label class="l-height-30"><input type="radio" name="sptype" value="hand" <?php if ($cfg_arcautosp=='N') echo "checked='checked'"?>> 手动</label>
<label class="l-height-30"><input type="radio" name="sptype" value="auto" <?php if ($cfg_arcautosp=='Y') echo "checked='checked'"?>> 自动</label>
<label><input type="radio" name="sptype" value="hand" <?php if ($cfg_arcautosp=='N') echo "checked='checked'"?>> 手动</label>
<label><input type="radio" name="sptype" value="auto" <?php if ($cfg_arcautosp=='Y') echo "checked='checked'"?>> 自动</label>
<label>大小:<input name="spsize" type="text" id="spsize" value="<?php echo $cfg_arcautosp_size?>" class="admin-input-xs"> K(分页符为:#p#分页标题#e#)</label>
</td>
</tr>


+ 5
- 6
src/admin/templets/article_edit.htm View File

@@ -15,9 +15,8 @@
<script src="../static/web/js/webajax.js"></script>
<script src="../static/web/js/moment.min.js"></script>
<script src="../static/web/js/daterangepicker.js"></script>
<script src="js/main.js"></script>
<script src="js/handlers.js"></script>
<script src="../static/web/js/cropper.min.js"></script>
<script src="js/main.js"></script>
</head>
<body>
<form name="form1" action="article_edit.php" method="post" enctype="multipart/form-data" onSubmit="return checkSubmit();">
@@ -97,7 +96,7 @@
<td width="120">缩略图:</td>
<td width="630">
<input name="picname" type="text" id="picname" value="<?php echo $arcRow['litpic']?>" class="admin-input-lg">
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote" class="l-height-30"> 远程</label>
<label><input type="checkbox" name="ddisremote" value="1" id="ddisremote"> 远程</label>
<span class="btn btn-success btn-sm fileinput-button">上传图片<input type="file" name="files[]" id="iptAddImages"></span>
<button type="button" name="Submit" onclick="SelectImage('form1.picname','');" class="btn btn-success btn-sm">选择图片</button>
<button id="btnClearAll" type="button" class="btn btn-success btn-sm">清空</button>
@@ -138,7 +137,7 @@
echo $typeOptions;
echo "</select>";
?>
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $arcRow['typeid'];?>')" title="快捷选择"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid','<?php echo $arcRow['typeid'];?>')" title="选择主栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
<td width="120">需要金币:</td>
<td><input name="money" type="text" id="money" value="<?php echo $arcRow['money']?>" class="admin-input-sm"></td>
@@ -155,7 +154,7 @@
<td>
<span id="typeid2ct"></span>
<input type="text" name="typeid2" id="typeid2" value="<?php echo ($arcRow['typeid2']=='0'?'':$arcRow['typeid2']);?>" class="admin-input-sm">
<span class="btn btn-success btn-sm"><i class="fa fa-search" onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目"></i></span>
<a onclick="ShowCatMap(event,this,<?php echo $channelid;?>,'typeid2','<?php echo $arcRow['typeid2'];?>')" title="选择副栏目" class="btn btn-success btn-sm"><i class="fa fa-search"></i></a>
</td>
</tr>
</table>
@@ -227,7 +226,7 @@
<?php
$subday = SubDay($arcRow["sortrank"],$arcRow["pubdate"]);
echo "<option value='0'>正常排序</option>";
if ($subday>0) echo "<option value='$subday' selected>置顶<span class='text-primary'>$subday</span>天</option>";
if ($subday>0) echo "<option value='$subday' selected>置顶".$subday."天</option>";
?>
<option value="7">置顶一周</option>
<option value="30">置顶一个月</option>


+ 4
- 8
src/admin/templets/article_keywords_select.htm View File

@@ -46,16 +46,14 @@
</form>
<script>
//获得选中文件的文件名
function SelKw(kw)
{
function SelKw(kw) {
if (document.form2.keywords.value) {
document.form2.keywords.value += ","+kw;
} else {
document.form2.keywords.value = kw;
}
}
function ReturnValue()
{
function ReturnValue() {
if (window.opener.document.<?php echo $f?>.value) {
window.opener.document.<?php echo $f?>.value += ','+document.form2.keywords.value;
} else {
@@ -63,14 +61,12 @@
}
window.close();
}
function showHide(objname)
{
function showHide(objname) {
var obj = document.getElementById(objname);
if (obj.style.display=="none") obj.style.display = "block";
else obj.style.display="none";
}
function AddNewKw()
{
function AddNewKw() {
showHide("addnew");
}
</script>


+ 6
- 6
src/admin/templets/catalog_add.htm View File

@@ -167,9 +167,9 @@
</td>
<td>栏目交叉:</td>
<td>
<label class="l-height-30"><input type="radio" name="cross" id="cross0" value="0" onclick="CheckCross()" checked="checked"> 不交叉</label>
<label class="l-height-30"><input type="radio" name="cross" id="cross1" value="1" onclick="CheckCross()"> 自动获取同名栏目</label>
<label class="l-height-30"><input type="radio" name="cross" id="cross2" value="2" onclick="CheckCross()"> 指定交叉栏目id(英文逗号分开)</label>
<label><input type="radio" name="cross" id="cross0" value="0" onclick="CheckCross()" checked="checked"> 不交叉</label>
<label><input type="radio" name="cross" id="cross1" value="1" onclick="CheckCross()"> 自动获取同名栏目</label>
<label><input type="radio" name="cross" id="cross2" value="2" onclick="CheckCross()"> 指定交叉栏目id(英文逗号分开)</label>
<span onclick="ShowHide('helpvarco')" title="帮助" class="btn btn-success btn-sm"><i class="fa fa-question-circle"></i></span><br>
<textarea name="crossid" id="crossid" class="admin-textarea-sm" style="display:none"></textarea>
<div id="helpvarco" class="alert alert-info my-2" style="display:none">交叉栏目是大栏目与另一个非子栏目交叉的情况,相当于副栏目功能,需要在栏目里设置好</div>
@@ -266,9 +266,9 @@
<td>是否支持跨站调用:</td>
<td>
<input type="text" name="apikey" id="apikey" class="admin-input-lg" placeholder="请输入跨站调用秘钥">
<label class="l-height-30"><input type="radio" name="apienabled" value="1"> 支持</label>
<label class="l-height-30"><input type="radio" name="apienabled" value="0" checked="checked"> 不支持</label>
<span class="btn btn-success btn-sm ml-2" title="更新秘钥" onclick="makeAPIKey()"><i class="fa fa-repeat"></i></span>
<label><input type="radio" name="apienabled" value="1"> 支持</label>
<label><input type="radio" name="apienabled" value="0" checked="checked"> 不支持</label>
<span class="btn btn-success btn-sm" title="更新秘钥" onclick="makeAPIKey()"><i class="fa fa-repeat"></i></span>
</td>
</tr>
<tr>


+ 34
- 41
src/admin/templets/catalog_add_quick.htm View File

@@ -111,26 +111,26 @@
<td width="6%" class="border-top-0">排序</td>
<td width="16%" class="border-top-0">顶级栏目名称</td>
<td width="60%" class="border-top-0">子栏目名称(名称1,名称2)</td>
<td class="border-top-0"><button type="button" id="add" class="btn btn-success btn-sm">添加</button></td>
<td class="border-top-0"><button type="button" class="btn btn-success btn-sm add">添加</button></td>
</tr>
<tr align="center">
<td class="rank">
<input type="hidden" name="posttype" value="" class="pubinputs">
<input type="text" name="rank" id="rank" value="1" class="pubinputs admin-input-xs">
<input type="text" name="rank" value="1" class="pubinputs admin-input-xs">
</td>
<td><input type="text" name="toptype" id="toptype" class="pubinputs admin-input-sm"></td>
<td><input type="text" name="sontype" id="sontype" class="pubinputs w-100"></td>
<td><button name="" type="button" id="add" class="btn btn-danger btn-sm del">删除</button></td>
<td><input type="text" name="toptype" class="pubinputs admin-input-sm"></td>
<td><input type="text" name="sontype" class="pubinputs w-100"></td>
<td><button name="" type="button" class="btn btn-danger btn-sm del">删除</button></td>
</tr>
<?php for($i=2;$i<=10;$i++) {?>
<tr align="center" class="repeat">
<td class="rank">
<input type="hidden" name="posttype<?php echo $i;?>" value="<?php echo $i;?>">
<input type="text" name="rank<?php echo $i;?>" id="rank<?php echo $i;?>" value="<?php echo $i;?>" class="pubinputs admin-input-xs">
<input type="text" name="rank<?php echo $i;?>" value="<?php echo $i;?>" class="pubinputs admin-input-xs">
</td>
<td><input type="text" name="toptype<?php echo $i;?>" id="toptype<?php echo $i;?>" class="pubinputs admin-input-sm"></td>
<td><input type="text" name="sontype<?php echo $i;?>" id="sontype<?php echo $i;?>" class="pubinputs w-100"></td>
<td><button name="" type="button" id="add" class="btn btn-danger btn-sm del">删除</button></td>
<td><input type="text" name="toptype<?php echo $i;?>" class="pubinputs admin-input-sm"></td>
<td><input type="text" name="sontype<?php echo $i;?>" class="pubinputs w-100"></td>
<td><button name="" type="button" class="btn btn-danger btn-sm del">删除</button></td>
</tr>
<?php }?>
</table>
@@ -138,24 +138,24 @@
<tr bgcolor="#e9ecef" align="center">
<td width="6%">排序</td>
<td width="16%">栏目名称</td>
<td><button type="button" id="addrel" class="btn btn-success btn-sm">添加</button></td>
<td><button type="button" class="btn btn-success btn-sm addrel">添加</button></td>
</tr>
<tr align="center">
<td class="rank">
<input type="hidden" name="posttype" value="" class="pubinputs">
<input type="text" name="rank" id="rank" value="1" class="pubinputs admin-input-xs">
<input type="text" name="rank" value="1" class="pubinputs admin-input-xs">
</td>
<td><input type="text" name="reltype" id="reltype" class="pubinputs admin-input-sm"></td>
<td><button name="" type="button" id="add" class="btn btn-danger btn-sm del">删除</button></td>
<td><input type="text" name="reltype" class="pubinputs admin-input-sm"></td>
<td><button name="" type="button" class="btn btn-danger btn-sm del">删除</button></td>
</tr>
<?php for($i=2;$i<=10;$i++) {?>
<tr align="center" class="repeat">
<td class="rank">
<input type="hidden" name="posttype<?php echo $i;?>" value="<?php echo $i;?>">
<input type="text" name="rank<?php echo $i;?>" id="rank<?php echo $i;?>" value="<?php echo $i;?>" class="pubinputs admin-input-xs">
<input type="text" name="rank<?php echo $i;?>" value="<?php echo $i;?>" class="pubinputs admin-input-xs">
</td>
<td><input type="text" name="reltype<?php echo $i;?>" id="reltype<?php echo $i;?>" class="pubinputs admin-input-sm"></td>
<td><button type="button" id="add" class="btn btn-danger btn-sm del">删除</button></td>
<td><input type="text" name="reltype<?php echo $i;?>" class="pubinputs admin-input-sm"></td>
<td><button type="button" class="btn btn-danger btn-sm del">删除</button></td>
</tr>
<?php }?>
</table>
@@ -171,40 +171,33 @@
</form>
<script>
var $ = jQuery;
$(document).ready(function () {
//删除按钮事件
$("#addQuick .del").click(function () {
$(this).parents(".repeat").remove();
});
$(document).ready(function() {
//添加按钮事件
$("#add").click(function () {
$("#addQuick .add").click(function() {
var id = $("#addQuick tr").prevAll("tr").length + 1;
$("#addQuick tr:eq(1)").clone(true).addClass("repeat")
.find(".rank input")
.attr("value", function () { return id })
.end()
.find(".pubinputs")
.attr("name", function () { return this.name + id })
.attr("id", function () { return this.id + id })
.end()
.appendTo($("#addQuick"));
.find(".rank input").attr("value", function() {
return id;
}).end().find(".pubinputs").attr("name", function() {
return this.name + id;
}).end().appendTo($("#addQuick"));
});
//删除按钮事件
$("#addQuick .del").click(function() {
$(this).parents(".repeat").remove();
});
//删除按钮事件
$("#addQuickRel .del").click(function () {
$("#addQuickRel .del").click(function() {
$(this).parents(".repeat").remove();
});
//添加按钮事件
$("#addrel").click(function () {
$("#addQuickRel .addrel").click(function() {
var id = $("#addQuickRel tr").prevAll("tr").length + 1;
$("#addQuickRel tr:eq(1)").clone(true).addClass("repeat")
.find(".rank input")
.attr("value", function () { return id })
.end()
.find(".pubinputs")
.attr("name", function () { return this.name + id })
.attr("id", function () { return this.id + id })
.end()
.appendTo($("#addQuickRel"));
$("#addQuickRel tr:eq(1)").clone(true).addClass("repeat").find(".rank input").attr("value", function() {
return id;
}).end().find(".pubinputs").attr("name", function() {
return this.name + id;
}).end().appendTo($("#addQuickRel"));
});
});
function ShowHide(objname) {


+ 4
- 4
src/admin/templets/catalog_edit.htm View File

@@ -152,9 +152,9 @@
</td>
<td>栏目交叉:</td>
<td>
<label class="l-height-30"><input type="radio" name="cross" id="cross0" value="0" onclick="CheckCross()" <?php if ($myrow['cross']==0) echo "checked='checked'";?>> 不交叉</label>
<label class="l-height-30"><input type="radio" name="cross" id="cross1" value="1" onclick="CheckCross()" <?php if ($myrow['cross']==1) echo "checked='checked'";?>> 自动获取同名栏目</label>
<label class="l-height-30"><input type="radio" name="cross" id="cross2" value="2" onclick="CheckCross()" <?php if ($myrow['cross']==2) echo "checked='checked'";?>> 指定交叉栏目id(英文逗号分开)</label>
<label><input type="radio" name="cross" id="cross0" value="0" onclick="CheckCross()" <?php if ($myrow['cross']==0) echo "checked='checked'";?>> 不交叉</label>
<label><input type="radio" name="cross" id="cross1" value="1" onclick="CheckCross()" <?php if ($myrow['cross']==1) echo "checked='checked'";?>> 自动获取同名栏目</label>
<label><input type="radio" name="cross" id="cross2" value="2" onclick="CheckCross()" <?php if ($myrow['cross']==2) echo "checked='checked'";?>> 指定交叉栏目id(英文逗号分开)</label>
<span onclick="ShowHide('helpvarco')" title="帮助" class="btn btn-success btn-sm"><i class="fa fa-question-circle"></i></span><br>
<textarea name="crossid" id="crossid" class="admin-textarea-sm" style="<?php if ($myrow['cross']!=2) echo'display:none';?>"><?php echo $myrow['crossid'];?></textarea>
<div id="helpvarco" class="alert alert-info my-2" style="display:none">交叉栏目是大栏目与另一个非子栏目交叉的情况,相当于副栏目功能,需要在栏目里设置好</div>
@@ -251,7 +251,7 @@
<input value="<?php echo $myrow['apikey']?>" type="text" name="apikey" id="apikey" class="admin-input-lg" placeholder="请输入跨站调用秘钥">
<label><input type="radio" name="apienabled" value="1" <?php if ($myrow['apienabled']=="1") echo "checked='checked'";?>> 支持</label>
<label><input type="radio" name="apienabled" value="0" <?php if ($myrow['apienabled']=="0") echo "checked='checked'";?>> 不支持</label>
<span class="btn btn-success btn-sm ml-2" title="更新秘钥" onclick="makeAPIKey()"><i class="fa fa-repeat"></i></span>
<span class="btn btn-success btn-sm" title="更新秘钥" onclick="makeAPIKey()"><i class="fa fa-repeat"></i></span>
<span class="btn btn-success btn-sm" title="秘钥标签" onclick="showAPI(<?php echo $id;?>)"><i class="fa fa-question-circle"></i></span>
</td>
</tr>


+ 1
- 22
src/admin/templets/catalog_main.htm View File

@@ -10,7 +10,7 @@
<style>.admin-td{border-bottom:1px solid #dee2e6!important}</style>
<script src="../static/web/js/jquery.min.js"></script>
<script src="../static/web/js/webajax.js"></script>
<script src="js/global.js"></script>
<script src="js/catalog.js"></script>
</head>
<body>
<table align="center" class="table maintable my-3">
@@ -47,26 +47,5 @@
</tr>
</table>
</form>
<script>
function LoadSuns(ctid, tid) {
if ($DE(ctid).innerHTML.length < 10) {
$DE('img' + tid).className = 'fa fa-minus-square';
fetch('catalog_do.php?dopost=GetSunLists&cid=' + tid).then(resp => resp.text()).then((d) => {
$DE(ctid).innerHTML = d;
});
} else {
showHide(ctid, tid);
}
}
function showHide(objname, tid) {
if ($DE(objname).style.display == "none") {
$DE('img' + tid).className = 'fa fa-minus-square';
$DE(objname).style.display = BROWSER.firefox ? "" : "block";
} else {
$DE('img' + tid).className = 'fa fa-plus-square';
$DE(objname).style.display = "none";
}
}
</script>
</body>
</html>

+ 1
- 1
src/admin/templets/content_att.htm View File

@@ -17,7 +17,7 @@
</tr>
<tr>
<td colspan="3">
<div class="alert alert-info mb-0">自定义属性说明:文档发布时选择属性后arclist标签加上flag='自定义属性',例:{dede:arclist flag='h,c'}h,c表示组合属性头条和推荐</div>
<div class="alert alert-info mb-0">自定义属性说明:文档发布时选择属性后arclist标签加上flag='自定义属性',例:{dede:arclist flag='h,c'}h,c表示组合属性头条和推荐</div>
</td>
</tr>
<tr bgcolor="#e9ecef" align="center">


+ 6
- 6
src/admin/templets/content_batch_up.htm View File

@@ -51,8 +51,8 @@
<td>
<label><input type="checkbox" name="seltime" id="seltime" value="1" onclick="ShowHideTime()"> 启用时间筛选(仅移动或删除文档可用该选项)</label>
<div id="seltimeField" style="display:none">
<label>开始:<?php $nowtime = GetDateTimeMk(time()-(24*3600*30));?> <input type="text" name="starttime" id="starttime" class="admin-input-sm" value="<?php echo $nowtime;?>"></label>
<label>结束:<?php $nowtime = GetDateTimeMk(time());?> <input type="text" name="endtime" id="endtime" class="admin-input-sm" value="<?php echo $nowtime;?>"></label>
<label>开始:<?php $nowtime = GetDateTimeMk(time()-(24*3600*30));?> <input type="text" name="starttime" id="starttime" class="datepicker admin-input-sm" value="<?php echo $nowtime;?>"></label>
<label>结束:<?php $nowtime = GetDateTimeMk(time());?> <input type="text" name="endtime" id="endtime" class="datepicker admin-input-sm" value="<?php echo $nowtime;?>"></label>
</div>
</td>
</tr>
@@ -87,13 +87,13 @@
function ShowHideTime() {
var selBox = document.getElementById('seltime');
var obj = document.getElementById('seltimeField');
if (selBox.checked) obj.style.display = "block";
if (selBox.checked) obj.style.display = "inline-block";
else obj.style.display = "none";
}
function ShowHideMove() {
var selBox = document.getElementById('moveradio');
var obj = document.querySelectorAll('.moveField').forEach(v=>{
if (selBox.checked) v.style.display = "block";
var obj = document.querySelectorAll('.moveField').forEach(v => {
if (selBox.checked) v.style.display = "inline-block";
else v.style.display = "none";
})
}
@@ -124,7 +124,7 @@
}, function (start) {
$(this).val(start.format("YYYY-MM-DD HH:mm:ss"));
});
})
});
</script>
</body>
</html>

+ 2
- 2
src/admin/templets/content_i_list.htm View File

@@ -78,7 +78,7 @@
</tr>
{dede:datalist empty='<tr><td colspan="10" align="center">暂无记录</td></tr>'}
<tr align="center">
<td width="6%"><input type="checkbox" name="arcID" id="arcID" value="{dede:field.id/}"></td>
<td width="6%"><input type="checkbox" name="arcID" value="{dede:field.id/}"></td>
<td width="6%">{dede:field.id/}</td>
<td width="26%" align="left">
<img src="{dede:field.litpic function='CheckPic(@me)'/}" class="thumbnail-sm">
@@ -137,7 +137,7 @@
$('#timerange').on('cancel.daterangepicker', function(ev, picker) {
$(this).val('');
});
})
});
</script>
</body>
</html>

+ 3
- 3
src/admin/templets/content_list.htm View File

@@ -81,9 +81,9 @@
</tr>
{dede:datalist empty='<tr><td colspan="10" align="center">暂无记录</td></tr>'}
<tr align="center">
<td><input type="checkbox" name="arcID" id="arcID" value="{dede:field.id/}"></td>
<td><input type="checkbox" name="arcID" value="{dede:field.id/}"></td>
<td>{dede:field.id/}</td>
<td align="left"><span id="arc{dede:field.id/}"><a href="archives_do.php?aid={dede:field.id/}&dopost=editArchives">{dede:field.title/}</a></span>{dede:field.flag function='IsCommendArchives(@me)'/}</td>
<td align="left"><a href="archives_do.php?aid={dede:field.id/}&dopost=editArchives">{dede:field.title/}</a>{dede:field.flag function='IsCommendArchives(@me)'/}</td>
<td>{dede:field.senddate function='GetDateMk(@me)'/}</td>
<td><a href="content_list.php?cid={dede:field.typeid/}">{dede:field.typeid function='GetTypename(@me)'/}</a></td>
<td>{dede:field.click/}</td>
@@ -136,7 +136,7 @@
$('#timerange').on('cancel.daterangepicker', function(ev, picker) {
$(this).val('');
});
})
});
</script>
</body>
</html>

+ 2
- 2
src/admin/templets/content_s_list.htm View File

@@ -59,7 +59,7 @@
</tr>
{dede:datalist empty='<tr><td colspan="9" align="center">暂无记录</td></tr>'}
<tr align="center">
<td><input type="checkbox" name="arcID" id="arcID" value="{dede:field.id/}"></td>
<td><input type="checkbox" name="arcID" value="{dede:field.id/}"></td>
<td>{dede:field.id/}</td>
<td align="left"><a href="archives_do.php?aid={dede:field.id/}&dopost=editArchives">{dede:field.title/}</a></td>
<td><?php echo MyDate("Y-m-d H:i:s",$fields['senddate'])?></td>
@@ -108,7 +108,7 @@
$('#timerange').on('cancel.daterangepicker', function(ev, picker) {
$(this).val('');
});
})
});
</script>
</body>
</html>

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save