| @@ -1 +1 @@ | |||||
| .menu-body{margin:0;padding:0 10px}.menu-left{padding-top:1rem}.menu-right{width:100%;background:#fff;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,.075);border-radius:0 0 .2rem .2rem}a.menu-item div{margin-bottom:5px;width:40px;height:28px;line-height:28px;color:#545b62;background:#fff;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,.075);border-radius:.2rem 0 0 .2rem;text-align:center;transition:all .3s;cursor:pointer}a.menu-item div:hover{color:#fff;background:#545b62}a.menu-active div{margin-bottom:5px;width:40px;height:28px;line-height:28px;color:#fff;background:#545b62;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,.075);border-radius:.2rem 0 0 .2rem;text-align:center}dl.bitem{margin:1rem 0 10px 0;padding:0 10px}dl.bitem dt{margin-bottom:10px;padding-left:10px;height:28px;line-height:28px;background:#f6f6f6;border-radius:.2rem;cursor:pointer}dl.bitem dt b{color:#545b62}dl.bitem dt b i{margin-right:10px;width:10px}.sitemu li{display:block;padding-left:30px;height:26px;line-height:26px}.fllct{float:left}.flrct{float:right}.fa-minus-circle{color:#dc3545}.fa-plus-circle{color:#28a745}#browsehappy{padding:20px 30px;font-size:14px;line-height:16px;color:#856404;background:#fff3cd;border-radius:.25rem;border:0}.browsehappy-close{float:right;cursor:pointer} | |||||
| .menu-box{margin:0;padding:1rem 5px;background:#ffff}.menu{width:100%;background:#fff;border-radius:.2rem;box-shadow:0 .125rem .25rem rgba(0,0,0,.075)}.menu .link{position:relative;padding-left:50px;display:block;height:40px;line-height:40px;cursor:pointer;transition:all .3s}.menu li:last-child .link{border-bottom:0}.menu li i{position:absolute;top:12px;left:20px;color:#545b62}.menu li i.fa-angle-down{right:20px;left:auto}.menu li.open .link,.menu li.open i{color:#28a745}.menu li.open i.fa-angle-down{transform:rotate(180deg)}.submenu{display:none;padding:5px 0;background:#adb5bd;border-radius:0 0 .2rem .2rem}.submenu li{height:40px;line-height:40px;transition:all .3s}.submenu li:hover{background:#28a745}.submenu a{float:left;display:block;padding:0 10px 0 50px;color:#fff}.submenu-right{float:right!important;padding:0 20px 0 10px!important} | |||||
| @@ -9,6 +9,7 @@ | |||||
| * @link https://www.dedebiz.com | * @link https://www.dedebiz.com | ||||
| */ | */ | ||||
| require_once(dirname(__FILE__)."/../config.php"); | require_once(dirname(__FILE__)."/../config.php"); | ||||
| require_once(dirname(__FILE__)."/inc_menu_module.php"); | |||||
| //载入可发布频道 | //载入可发布频道 | ||||
| $addset = ''; | $addset = ''; | ||||
| //检测可用的内容模型 | //检测可用的内容模型 | ||||
| @@ -34,21 +35,21 @@ $gitUrl = DEDEBIZURL."/git"; | |||||
| $dedebizUrl = DEDEBIZURL; | $dedebizUrl = DEDEBIZURL; | ||||
| $adminMenu1 = $adminMenu2 = ''; | $adminMenu1 = $adminMenu2 = ''; | ||||
| if ($cuserLogin->getUserType() >= 10) { | if ($cuserLogin->getUserType() >= 10) { | ||||
| $adminMenu1 = (DEDEBIZ_SAFE_MODE? "" : "<m:top item='7_' name='模板管理' display='block' rank='temp_One,temp_Other,temp_MyTag,temp_test,temp_All'> | |||||
| $adminMenu1 = (DEDEBIZ_SAFE_MODE? "" : "<m:top item='7_' name='模板管理' rank='temp_One,temp_Other,temp_MyTag,temp_test,temp_All' icon='fa-cube'> | |||||
| <m:item name='默认模板管理' link='templets_main.php' rank='temp_All' target='main' /> | <m:item name='默认模板管理' link='templets_main.php' rank='temp_All' target='main' /> | ||||
| <m:item name='标签源码管理' link='templets_tagsource.php' rank='temp_All' target='main' /> | <m:item name='标签源码管理' link='templets_tagsource.php' rank='temp_All' target='main' /> | ||||
| <m:item name='自定义宏标记' link='mytag_main.php' rank='temp_MyTag' target='main' /> | <m:item name='自定义宏标记' link='mytag_main.php' rank='temp_MyTag' target='main' /> | ||||
| <m:item name='智能标记向导' link='mytag_tag_guide.php' rank='temp_Other' target='main' /> | <m:item name='智能标记向导' link='mytag_tag_guide.php' rank='temp_Other' target='main' /> | ||||
| <m:item name='全局标记测试' link='tag_test.php' rank='temp_Test' target='main' /> | <m:item name='全局标记测试' link='tag_test.php' rank='temp_Test' target='main' /> | ||||
| </m:top>")." | </m:top>")." | ||||
| <m:top item='1_7_' name='频道模型' display='block' rank='t_List,t_AccList,c_List,temp_One'> | |||||
| <m:top item='1_7_' name='频道模型' rank='t_List,t_AccList,c_List,temp_One' icon='fa-area-chart'> | |||||
| <m:item name='内容模型管理' link='mychannel_main.php' rank='c_List' target='main' /> | <m:item name='内容模型管理' link='mychannel_main.php' rank='c_List' target='main' /> | ||||
| <m:item name='单页文档管理' link='templets_one.php' rank='temp_One' target='main' /> | <m:item name='单页文档管理' link='templets_one.php' rank='temp_One' target='main' /> | ||||
| <m:item name='联动类别管理' link='stepselect_main.php' rank='c_Stepseclect' target='main' /> | <m:item name='联动类别管理' link='stepselect_main.php' rank='c_Stepseclect' target='main' /> | ||||
| <m:item name='自由列表管理' link='freelist_main.php' rank='c_List' target='main' /> | <m:item name='自由列表管理' link='freelist_main.php' rank='c_List' target='main' /> | ||||
| <m:item name='自定义表单' link='diy_main.php' rank='c_List' target='main' /> | <m:item name='自定义表单' link='diy_main.php' rank='c_List' target='main' /> | ||||
| </m:top>"; | </m:top>"; | ||||
| $adminMenu2 = "<m:top item='6_' name='支付工具' display='block' rank='sys_Data'> | |||||
| $adminMenu2 = "<m:top item='6_' name='支付工具' rank='sys_Data' icon='fa-credit-card'> | |||||
| <m:item name='点卡产品分类' link='cards_type.php' rank='sys_Data' target='main' /> | <m:item name='点卡产品分类' link='cards_type.php' rank='sys_Data' target='main' /> | ||||
| <m:item name='点卡产品管理' link='cards_manage.php' rank='sys_Data' target='main' /> | <m:item name='点卡产品管理' link='cards_manage.php' rank='sys_Data' target='main' /> | ||||
| <m:item name='会员产品分类' link='member_type.php' rank='sys_Data' target='main' /> | <m:item name='会员产品分类' link='member_type.php' rank='sys_Data' target='main' /> | ||||
| @@ -57,7 +58,7 @@ if ($cuserLogin->getUserType() >= 10) { | |||||
| <m:item name='支付接口设置' link='sys_payment.php' .php' rank='sys_Data' target='main' /> | <m:item name='支付接口设置' link='sys_payment.php' .php' rank='sys_Data' target='main' /> | ||||
| <m:item name='配货方式设置' link='shops_delivery.php' rank='sys_Data' target='main' /> | <m:item name='配货方式设置' link='shops_delivery.php' rank='sys_Data' target='main' /> | ||||
| </m:top> | </m:top> | ||||
| <m:top item='10_' name='系统设置' display='block' rank='sys_User,sys_Group,sys_Edit,sys_Log,sys_Data'> | |||||
| <m:top item='10_' name='系统设置' rank='sys_User,sys_Group,sys_Edit,sys_Log,sys_Data' icon='fa-cog'> | |||||
| <m:item name='系统配置变量' link='sys_info.php' rank='sys_Edit' target='main' /> | <m:item name='系统配置变量' link='sys_info.php' rank='sys_Edit' target='main' /> | ||||
| <m:item name='系统用户管理' link='sys_admin_user.php' rank='sys_User' target='main' /> | <m:item name='系统用户管理' link='sys_admin_user.php' rank='sys_User' target='main' /> | ||||
| <m:item name='用户组设定' link='sys_group.php' rank='sys_Group' target='main' /> | <m:item name='用户组设定' link='sys_group.php' rank='sys_Group' target='main' /> | ||||
| @@ -73,7 +74,7 @@ if ($cuserLogin->getUserType() >= 10) { | |||||
| <m:item name='系统错误修复' link='sys_repair.php' rank='sys_verify' target='main' /> | <m:item name='系统错误修复' link='sys_repair.php' rank='sys_verify' target='main' /> | ||||
| </m:top>"; | </m:top>"; | ||||
| } | } | ||||
| $menusMain = "<m:top item='1_' name='常用操作' display='block'> | |||||
| $menusMain = "<m:top item='1_' name='常用操作' icon='fa-desktop'> | |||||
| <m:item name='网站栏目管理' link='catalog_main.php' ischannel='1' addalt='创建栏目' linkadd='catalog_add.php?listtype=all' rank='t_List,t_AccList' target='main' /> | <m:item name='网站栏目管理' link='catalog_main.php' ischannel='1' addalt='创建栏目' linkadd='catalog_add.php?listtype=all' rank='t_List,t_AccList' target='main' /> | ||||
| <m:item name='所有文档列表' link='content_list.php' rank='a_List,a_AccList' target='main' /> | <m:item name='所有文档列表' link='content_list.php' rank='a_List,a_AccList' target='main' /> | ||||
| <m:item name='等审核的文档' link='content_list.php?arcrank=-1' rank='a_Check,a_AccCheck' target='main' /> | <m:item name='等审核的文档' link='content_list.php?arcrank=-1' rank='a_Check,a_AccCheck' target='main' /> | ||||
| @@ -81,17 +82,17 @@ $menusMain = "<m:top item='1_' name='常用操作' display='block'> | |||||
| <m:item name='评论管理' link='feedback_main.php' rank='sys_Feedback' target='main' /> | <m:item name='评论管理' link='feedback_main.php' rank='sys_Feedback' target='main' /> | ||||
| <m:item name='文档回收站' link='recycling.php' ischannel='1' addalt='清空回收站' addico='fa-minus-circle' linkadd='archives_do.php?dopost=clear&aid=no&recycle=1' rank='a_List,a_AccList,a_MyList' target='main' /> | <m:item name='文档回收站' link='recycling.php' ischannel='1' addalt='清空回收站' addico='fa-minus-circle' linkadd='archives_do.php?dopost=clear&aid=no&recycle=1' rank='a_List,a_AccList,a_MyList' target='main' /> | ||||
| </m:top> | </m:top> | ||||
| <m:top item='1_' name='内容管理' display='block'> | |||||
| <m:top item='1_' name='内容管理' icon='fa-file-text'> | |||||
| $addset | $addset | ||||
| <m:item name='专题管理' ischannel='1' link='content_s_list.php' linkadd='spec_add.php' channelid='-1' rank='spec_New' target='main' /> | <m:item name='专题管理' ischannel='1' link='content_s_list.php' linkadd='spec_add.php' channelid='-1' rank='spec_New' target='main' /> | ||||
| </m:top> | </m:top> | ||||
| <m:top item='1_' name='附件管理' display='none' rank='sys_Upload,sys_MyUpload,plus_文件管理器'> | |||||
| <m:top item='1_' name='附件管理' rank='sys_Upload,sys_MyUpload,plus_文件管理器' icon='fa-folder'> | |||||
| <m:item name='上传新文件' link='media_add.php' rank='' target='main' /> | <m:item name='上传新文件' link='media_add.php' rank='' target='main' /> | ||||
| <m:item name='附件数据管理' link='media_main.php' rank='sys_Upload,sys_MyUpload' target='main' /> | <m:item name='附件数据管理' link='media_main.php' rank='sys_Upload,sys_MyUpload' target='main' /> | ||||
| <m:item name='文件式管理器' link='media_main.php?dopost=filemanager' rank='plus_文件管理器' target='main' /> | <m:item name='文件式管理器' link='media_main.php?dopost=filemanager' rank='plus_文件管理器' target='main' /> | ||||
| </m:top> | </m:top> | ||||
| $adminMenu1 | $adminMenu1 | ||||
| <m:top item='1_' name='批量维护' display='block'> | |||||
| <m:top item='1_' name='批量维护' icon='fa-circle-o-notch'> | |||||
| <m:item name='文档批量维护' link='content_batch_up.php' rank='sys_ArcBatch' target='main' /> | <m:item name='文档批量维护' link='content_batch_up.php' rank='sys_ArcBatch' target='main' /> | ||||
| <m:item name='搜索关键词维护' link='search_keywords_main.php' rank='sys_Keyword' target='main' /> | <m:item name='搜索关键词维护' link='search_keywords_main.php' rank='sys_Keyword' target='main' /> | ||||
| <m:item name='文档关键词维护' link='article_keywords_main.php' rank='sys_Keyword' target='main' /> | <m:item name='文档关键词维护' link='article_keywords_main.php' rank='sys_Keyword' target='main' /> | ||||
| @@ -100,7 +101,8 @@ $adminMenu1 | |||||
| <m:item name='Tag标签管理' link='tags_main.php' rank='sys_Keyword' target='main' /> | <m:item name='Tag标签管理' link='tags_main.php' rank='sys_Keyword' target='main' /> | ||||
| ".(DEDEBIZ_SAFE_MODE? "" : "<m:item name='数据库内容替换' link='sys_data_replace.php' rank='sys_ArcBatch' target='main' />")." | ".(DEDEBIZ_SAFE_MODE? "" : "<m:item name='数据库内容替换' link='sys_data_replace.php' rank='sys_ArcBatch' target='main' />")." | ||||
| </m:top> | </m:top> | ||||
| <m:top item='5_' name='更新任务' display='block' notshowall='1' rank='sys_MakeHtml'> | |||||
| {$GLOBALS['menusMoudle']} | |||||
| <m:top item='5_' name='更新任务' rank='sys_MakeHtml' icon='fa-repeat'> | |||||
| <m:item name='更新整站' link='makehtml_all.php' rank='sys_MakeHtml' target='main' /> | <m:item name='更新整站' link='makehtml_all.php' rank='sys_MakeHtml' target='main' /> | ||||
| <m:item name='更新首页' link='makehtml_homepage.php' rank='sys_MakeHtml' target='main' /> | <m:item name='更新首页' link='makehtml_homepage.php' rank='sys_MakeHtml' target='main' /> | ||||
| <m:item name='更新栏目' link='makehtml_list.php' rank='sys_MakeHtml' target='main' /> | <m:item name='更新栏目' link='makehtml_list.php' rank='sys_MakeHtml' target='main' /> | ||||
| @@ -109,14 +111,14 @@ $adminMenu1 | |||||
| <m:item name='更新专题' link='makehtml_spec.php' rank='sys_MakeHtml' target='main' /> | <m:item name='更新专题' link='makehtml_spec.php' rank='sys_MakeHtml' target='main' /> | ||||
| <m:item name='更新缓存' link='sys_cache_up.php' rank='sys_ArcBatch' target='main' /> | <m:item name='更新缓存' link='sys_cache_up.php' rank='sys_ArcBatch' target='main' /> | ||||
| </m:top> | </m:top> | ||||
| <m:top item='6_' name='会员管理' display='block' rank='member_List,member_Type'> | |||||
| <m:top item='6_' name='会员管理' rank='member_List,member_Type' icon='fa-user-circle'> | |||||
| <m:item name='注册会员列表' link='member_main.php' rank='member_List' target='main' /> | <m:item name='注册会员列表' link='member_main.php' rank='member_List' target='main' /> | ||||
| <m:item name='会员级别设置' link='member_rank.php' rank='member_Type' target='main' /> | <m:item name='会员级别设置' link='member_rank.php' rank='member_Type' target='main' /> | ||||
| <m:item name='积分头衔设置' link='member_scores.php' rank='member_Type' target='main' /> | <m:item name='积分头衔设置' link='member_scores.php' rank='member_Type' target='main' /> | ||||
| <m:item name='会员短信管理' link='member_pm.php' rank='member_Type' target='main' /> | <m:item name='会员短信管理' link='member_pm.php' rank='member_Type' target='main' /> | ||||
| </m:top> | </m:top> | ||||
| $adminMenu2 | $adminMenu2 | ||||
| <m:top item='5_10_' name='系统帮助' display='none'> | |||||
| <m:top item='5_10_' name='系统帮助' icon='fa-info-circle'> | |||||
| <m:item name='系统概况' link='$cfg_biz_helpUrl' rank='' target='_blank' /> | <m:item name='系统概况' link='$cfg_biz_helpUrl' rank='' target='_blank' /> | ||||
| <m:item name='代码托管' link='$cfg_biz_gitUrl' rank='' target='_blank' /> | <m:item name='代码托管' link='$cfg_biz_gitUrl' rank='' target='_blank' /> | ||||
| </m:top>"; | </m:top>"; | ||||
| @@ -10,8 +10,8 @@ | |||||
| */ | */ | ||||
| require_once(dirname(__FILE__)."/../config.php"); | require_once(dirname(__FILE__)."/../config.php"); | ||||
| require_once(DEDEINC."/dedetag.class.php"); | require_once(DEDEINC."/dedetag.class.php"); | ||||
| $headTemplet = "<dl id='sunitems~cc~' class='bitem'><dt onClick='showHide(\"items~cc~\",this)'><b><i class='fa fa-angle-down'></i>~channelname~</b></dt><dd id='items~cc~' class='sitem' style='display:~display~'><ul class='sitemu'>"; | |||||
| $footTemplet = "</ul></dd></dl>"; | |||||
| $headTemplet = '<li><div class="link"><i class="fa ~icon~"></i>~channelname~<i class="fa fa-angle-down"></i></div><ul class="submenu">'; | |||||
| $footTemplet = "</ul></li>"; | |||||
| $itemTemplet = "<li>~link~</li>"; | $itemTemplet = "<li>~link~</li>"; | ||||
| function GetMenus($userrank, $topos = 'main') | function GetMenus($userrank, $topos = 'main') | ||||
| { | { | ||||
| @@ -28,22 +28,15 @@ function GetMenus($userrank, $topos = 'main') | |||||
| $dtp->LoadSource($menus); | $dtp->LoadSource($menus); | ||||
| $dtp2 = new DedeTagParse(); | $dtp2 = new DedeTagParse(); | ||||
| $dtp2->SetNameSpace('m', '<', '>'); | $dtp2->SetNameSpace('m', '<', '>'); | ||||
| $m = 0; | |||||
| foreach ($dtp->CTags as $i => $ctag) { | foreach ($dtp->CTags as $i => $ctag) { | ||||
| if ($ctag->GetName() == 'top' && ($ctag->GetAtt('rank') == '' || TestPurview($ctag->GetAtt('rank')))) { | if ($ctag->GetName() == 'top' && ($ctag->GetAtt('rank') == '' || TestPurview($ctag->GetAtt('rank')))) { | ||||
| if ($openitem != 999 && !preg_match("#".$openitem.'_'."#", $ctag->GetAtt('item')) && $openitem != 100) continue; | if ($openitem != 999 && !preg_match("#".$openitem.'_'."#", $ctag->GetAtt('item')) && $openitem != 100) continue; | ||||
| $m++; | |||||
| echo "<!--".($m + 1)."-->"; | |||||
| $htmp = str_replace("~channelname~", $ctag->GetAtt("name"), $headTemplet); | $htmp = str_replace("~channelname~", $ctag->GetAtt("name"), $headTemplet); | ||||
| if (empty($openitem) || $openitem == 100) { | |||||
| if ($ctag->GetAtt('notshowall') == '1') continue; | |||||
| $htmp = str_replace('~display~', $ctag->GetAtt('display'), $htmp); | |||||
| } else { | |||||
| if ($openitem == $ctag->GetAtt('item') || preg_match("#".$openitem.'_'."#", $ctag->GetAtt('item')) || $openitem == '-1') | |||||
| $htmp = str_replace('~display~', 'block', $htmp); | |||||
| else | |||||
| $htmp = str_replace('~display~', 'none', $htmp); | |||||
| $icon = 'fa-desktop'; | |||||
| if ($ctag->GetAtt('icon') != '') { | |||||
| $icon = $ctag->GetAtt('icon'); | |||||
| } | } | ||||
| $htmp = str_replace('~icon~', $icon, $htmp); | |||||
| $htmp = str_replace('~cc~', $m.'_'.$openitem, $htmp); | $htmp = str_replace('~cc~', $m.'_'.$openitem, $htmp); | ||||
| echo $htmp; | echo $htmp; | ||||
| $dtp2->LoadSource($ctag->InnerText); | $dtp2->LoadSource($ctag->InnerText); | ||||
| @@ -52,17 +45,12 @@ function GetMenus($userrank, $topos = 'main') | |||||
| if ($ctag2->GetName() == 'item' && ($ctag2->GetAtt('rank') == '' || TestPurview($ctag2->GetAtt('rank')))) { | if ($ctag2->GetName() == 'item' && ($ctag2->GetAtt('rank') == '' || TestPurview($ctag2->GetAtt('rank')))) { | ||||
| $link = "<a href='".$ctag2->GetAtt('link')."' target='".$ctag2->GetAtt('target')."'>".$ctag2->GetAtt('name')."</a>"; | $link = "<a href='".$ctag2->GetAtt('link')."' target='".$ctag2->GetAtt('target')."'>".$ctag2->GetAtt('name')."</a>"; | ||||
| if ($ischannel == '1') { | if ($ischannel == '1') { | ||||
| if ($ctag2->GetAtt('addalt') != '') { | |||||
| $addalt = $ctag2->GetAtt('addalt'); | |||||
| } else { | |||||
| $addalt = '录入新内容'; | |||||
| } | |||||
| if ($ctag2->GetAtt('addico') != '') { | if ($ctag2->GetAtt('addico') != '') { | ||||
| $addico = $ctag2->GetAtt('addico'); | $addico = $ctag2->GetAtt('addico'); | ||||
| } else { | } else { | ||||
| $addico = 'fa-plus-circle'; | $addico = 'fa-plus-circle'; | ||||
| } | } | ||||
| $link = "<div class='items'><div class='fllct'>$link</div><div class='flrct'><a href='".$ctag2->GetAtt('linkadd')."' target='".$ctag2->GetAtt('target')."'><i class='fa $addico' title='$addalt'></i></a></div></div>"; | |||||
| $link = "$link<a href='".$ctag2->GetAtt('linkadd')."' class='submenu-right' target='".$ctag2->GetAtt('target')."'><span class='fa $addico' title='$addalt'></span></a>"; | |||||
| } else { | } else { | ||||
| $link .= ""; | $link .= ""; | ||||
| } | } | ||||
| @@ -71,7 +59,6 @@ function GetMenus($userrank, $topos = 'main') | |||||
| } | } | ||||
| } | } | ||||
| echo $footTemplet; | echo $footTemplet; | ||||
| echo "<!--".($m + 1)."-->"; | |||||
| } | } | ||||
| } | } | ||||
| }//End Function | }//End Function | ||||
| @@ -2,22 +2,13 @@ | |||||
| /** | /** | ||||
| * 模块菜单 | * 模块菜单 | ||||
| * | * | ||||
| * @version $Id: inc_menu_module.php 1 10:32 2010年7月21日 tianya $ | |||||
| * @version $Id: inc_menu_module.php 1 10:32 2010年7月21日Z tianya $ | |||||
| * @package DedeBIZ.Administrator | * @package DedeBIZ.Administrator | ||||
| * @copyright Copyright (c) 2022, DedeBIZ.COM | * @copyright Copyright (c) 2022, DedeBIZ.COM | ||||
| * @license https://www.dedebiz.com/license | * @license https://www.dedebiz.com/license | ||||
| * @link https://www.dedebiz.com | * @link https://www.dedebiz.com | ||||
| */ | */ | ||||
| require_once(dirname(__FILE__)."/../config.php"); | require_once(dirname(__FILE__)."/../config.php"); | ||||
| /* | |||||
| 模块菜单一般在不要直接改此文件,直接保存在#@__sys_module表即可,格式为 | |||||
| <m:top name='问答模块管理' c='6,' display='block' rank=''> | |||||
| <m:item name='问答栏目管理' link='ask_type.php' rank='' target='main' /> | |||||
| <m:item name='问答问题管理' link='ask_admin.php' rank='' target='main' /> | |||||
| <m:item name='问答答案管理' link='ask_answer.php' rank='' target='main' /> | |||||
| </m:top> | |||||
| 这个菜单可在生成模块时指定 | |||||
| */ | |||||
| //载入模块菜单 | //载入模块菜单 | ||||
| $moduleset = ''; | $moduleset = ''; | ||||
| $dsql->SetQuery("SELECT * FROM `#@__sys_module` ORDER BY id DESC"); | $dsql->SetQuery("SELECT * FROM `#@__sys_module` ORDER BY id DESC"); | ||||
| @@ -35,7 +26,7 @@ while ($row = $dsql->GetObject()) { | |||||
| } | } | ||||
| $adminMenu = ''; | $adminMenu = ''; | ||||
| if ($cuserLogin->getUserType() >= 10) { | if ($cuserLogin->getUserType() >= 10) { | ||||
| $adminMenu = DEDEBIZ_SAFE_MODE? "" : "<m:top name='模块管理' c='6,' display='block'> | |||||
| $adminMenu = DEDEBIZ_SAFE_MODE? "" : "<m:top name='模块管理' c='6,' icon='fa-database'> | |||||
| <m:item name='模块管理' link='module_main.php' rank='sys_module' target='main' /> | <m:item name='模块管理' link='module_main.php' rank='sys_module' target='main' /> | ||||
| <m:item name='上传新模块' link='module_upload.php' rank='sys_module' target='main' /> | <m:item name='上传新模块' link='module_upload.php' rank='sys_module' target='main' /> | ||||
| <m:item name='模块打包' link='module_make.php' rank='sys_module' target='main' /> | <m:item name='模块打包' link='module_make.php' rank='sys_module' target='main' /> | ||||
| @@ -43,10 +34,9 @@ if ($cuserLogin->getUserType() >= 10) { | |||||
| } | } | ||||
| $menusMoudle = " | $menusMoudle = " | ||||
| $adminMenu | $adminMenu | ||||
| <m:top item='7' name='辅助插件' display='block'> | |||||
| <m:top item='7' name='辅助插件' icon='fa-plug'> | |||||
| <m:item name='插件管理器' link='plus_main.php' rank='10' target='main' /> | <m:item name='插件管理器' link='plus_main.php' rank='10' target='main' /> | ||||
| $plusset | $plusset | ||||
| </m:top> | </m:top> | ||||
| $moduleset | $moduleset | ||||
| "; | |||||
| ?> | |||||
| "; | |||||
| @@ -1,25 +0,0 @@ | |||||
| <?php | |||||
| /** | |||||
| * 载入菜单 | |||||
| * | |||||
| * @version $Id: index_menu_load.php 1 8:48 2010年7月13日 tianya $ | |||||
| * @package DedeBIZ.Administrator | |||||
| * @copyright Copyright (c) 2022, DedeBIZ.COM | |||||
| * @license https://www.dedebiz.com/license | |||||
| * @link https://www.dedebiz.com | |||||
| */ | |||||
| require_once(dirname(__FILE__).'/config.php'); | |||||
| AjaxHead(); | |||||
| if ($openitem != 100) { | |||||
| require(dirname(__FILE__).'/inc/inc_menu.php'); | |||||
| require(DEDEADMIN.'/inc/inc_menu_func.php'); | |||||
| GetMenus($cuserLogin->getUserRank(), 'main'); | |||||
| exit(); | |||||
| } else { | |||||
| $openitem = 0; | |||||
| require(dirname(__FILE__).'/inc/inc_menu_module.php'); | |||||
| require(DEDEADMIN.'/inc/inc_menu_func.php'); | |||||
| GetMenus($cuserLogin->getUserRank(), 'module'); | |||||
| exit(); | |||||
| } | |||||
| ?> | |||||
| @@ -1,129 +0,0 @@ | |||||
| function showHide(objname, o) | |||||
| { | |||||
| //只对主菜单设置cookie | |||||
| var obj = document.getElementById(objname); | |||||
| var objsun = document.getElementById('sun'+objname); | |||||
| if(objname.indexOf('_1')<0 || objname.indexOf('_10')>0) | |||||
| { | |||||
| if(obj.style.display == 'block' || obj.style.display =='') | |||||
| { | |||||
| obj.style.display = 'none'; | |||||
| o.querySelector("i").className = "fa fa-angle-right" | |||||
| } else { | |||||
| obj.style.display = 'block'; | |||||
| o.querySelector("i").className = "fa fa-angle-down" | |||||
| } | |||||
| return true; | |||||
| } | |||||
| //正常设置cookie | |||||
| var ckstr = getCookie('menuitems'); | |||||
| var ckstrs = null; | |||||
| var okstr =''; | |||||
| var ischange = false; | |||||
| if(ckstr==null) ckstr = ''; | |||||
| ckstrs = ckstr.split(','); | |||||
| objname = objname.replace('items',''); | |||||
| if(obj.style.display == 'block' || obj.style.display =='') | |||||
| { | |||||
| obj.style.display = 'none'; | |||||
| for(var i=0; i < ckstrs.length; i++) | |||||
| { | |||||
| if(ckstrs[i]=='') continue; | |||||
| if(ckstrs[i]==objname){ ischange = true; } | |||||
| else okstr += (okstr=='' ? ckstrs[i] : ','+ckstrs[i] ); | |||||
| } | |||||
| o.querySelector("i").className = "fa fa-angle-right" | |||||
| } else { | |||||
| obj.style.display = 'block'; | |||||
| ischange = true; | |||||
| for(var i=0; i < ckstrs.length; i++) | |||||
| { | |||||
| if(ckstrs[i]==objname) { ischange = false; break; } | |||||
| } | |||||
| if(ischange) | |||||
| { | |||||
| ckstr = (ckstr==null ? objname : ckstr+','+objname); | |||||
| setCookie('menuitems',ckstr,7); | |||||
| } | |||||
| o.querySelector("i").className = "fa fa-angle-down" | |||||
| } | |||||
| } | |||||
| //读写cookie函数 | |||||
| function getCookie(c_name) | |||||
| { | |||||
| if (document.cookie.length > 0) | |||||
| { | |||||
| c_start = document.cookie.indexOf(c_name + "=") | |||||
| if (c_start != -1) | |||||
| { | |||||
| c_start = c_start + c_name.length + 1; | |||||
| c_end = document.cookie.indexOf(";",c_start); | |||||
| if (c_end == -1) | |||||
| { | |||||
| c_end = document.cookie.length; | |||||
| } | |||||
| return unescape(document.cookie.substring(c_start,c_end)); | |||||
| } | |||||
| } | |||||
| return null | |||||
| } | |||||
| function setCookie(c_name,value,expiredays) | |||||
| { | |||||
| var exdate = new Date(); | |||||
| exdate.setDate(exdate.getDate() + expiredays); | |||||
| document.cookie = c_name + "=" +escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString()); //使设置的有效时间正确。增加toGMTString() | |||||
| } | |||||
| //检查以前用户展开的菜单项 | |||||
| var totalitem = 12; | |||||
| function CheckOpenMenu() | |||||
| { | |||||
| var ckstr = getCookie('menuitems'); | |||||
| var curitem = ''; | |||||
| var curobj = null; | |||||
| if(ckstr==null) | |||||
| { | |||||
| ckstr='1_1,2_1,3_1'; | |||||
| setCookie('menuitems',ckstr,7); | |||||
| } | |||||
| ckstr = ','+ckstr+','; | |||||
| for(i=0;i<totalitem;i++) | |||||
| { | |||||
| curitem = i+'_'+curopenItem; | |||||
| curobj = document.getElementById('items'+curitem); | |||||
| if(ckstr.indexOf(curitem) > 0 && curobj != null) | |||||
| { | |||||
| curobj.style.display = 'block'; | |||||
| } else { | |||||
| if(curobj != null) curobj.style.display = 'none'; | |||||
| } | |||||
| } | |||||
| } | |||||
| var curitem = 1; | |||||
| function ShowMainMenu(n) | |||||
| { | |||||
| var curLink = $DE('link'+curitem); | |||||
| var targetLink = $DE('link'+n); | |||||
| var curCt = $DE('ct'+curitem); | |||||
| var targetCt = $DE('ct'+n); | |||||
| if(curitem==n) return false; | |||||
| if(targetCt.innerHTML!='') | |||||
| { | |||||
| curCt.style.display = 'none'; | |||||
| targetCt.style.display = 'block'; | |||||
| curLink.className = 'menu-item'; | |||||
| targetLink.className = 'menu-active'; | |||||
| curitem = n; | |||||
| } else { | |||||
| fetch("index_menu_load.php?openitem="+n).then(resp=>resp.text()).then((d)=>{ | |||||
| targetCt.innerHTML = d; | |||||
| if(targetCt.innerHTML!='') | |||||
| { | |||||
| curCt.style.display = 'none'; | |||||
| targetCt.style.display = 'block'; | |||||
| curLink.className = 'menu-item'; | |||||
| targetLink.className = 'menu-active'; | |||||
| curitem = n; | |||||
| } | |||||
| }); | |||||
| } | |||||
| } | |||||
| @@ -34,8 +34,8 @@ | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td> | <td> | ||||
| 开始ID:<input type="text" name="sid" id="sid" class="biz-input-sm"> | |||||
| 结束ID:<input type="text" name="eid" id="eid" class="biz-input-sm"> | |||||
| 开始id:<input type="text" name="sid" id="sid" class="biz-input-sm"> | |||||
| 结束id:<input type="text" name="eid" id="eid" class="biz-input-sm"> | |||||
| </td> | </td> | ||||
| <td></td> | <td></td> | ||||
| </tr> | </tr> | ||||
| @@ -63,8 +63,7 @@ | |||||
| </div> | </div> | ||||
| <div class="col-md-6 mt-3 mb-3 updatenews"> | <div class="col-md-6 mt-3 mb-3 updatenews"> | ||||
| <div class="card"> | <div class="card"> | ||||
| <div class="card-header"> | |||||
| <a href="javascript:copyFn()"><i class="fa fa-gear"></i> 系统信息</a> | |||||
| <div class="card-header"><a href="javascript:copyFn()"><i class="fa fa-gear"></i> 系统信息</a> | |||||
| <span id="text">软件:<?php echo $cfg_version_detail;?>|操作系统:<?php echo PHP_OS;?>|Web服务器:<?php echo $_SERVER['SERVER_SOFTWARE'];?>|PHP:<?php echo @phpversion();?>|数据库:<?php echo $dsql->GetVersion();?></span> | <span id="text">软件:<?php echo $cfg_version_detail;?>|操作系统:<?php echo PHP_OS;?>|Web服务器:<?php echo $_SERVER['SERVER_SOFTWARE'];?>|PHP:<?php echo @phpversion();?>|数据库:<?php echo $dsql->GetVersion();?></span> | ||||
| </div> | </div> | ||||
| <div class="card-body"> | <div class="card-body"> | ||||
| @@ -116,7 +115,9 @@ | |||||
| </div> | </div> | ||||
| <div class="col-md-6 mt-3 mb-3"> | <div class="col-md-6 mt-3 mb-3"> | ||||
| <div class="card"> | <div class="card"> | ||||
| <div class="card-header"><a name="statChart"><i class="fa fa-line-chart"></i> 流量统计图</a></div> | |||||
| <div class="card-header"> | |||||
| <a name="statChart"><i class="fa fa-line-chart"></i> 流量统计图</a> | |||||
| </div> | |||||
| <div class="card-body"> | <div class="card-body"> | ||||
| <canvas id="statChart"></canvas> | <canvas id="statChart"></canvas> | ||||
| </div> | </div> | ||||
| @@ -7,53 +7,35 @@ | |||||
| <link rel="stylesheet" href="../static/web/font/css/font-awesome.min.css"> | <link rel="stylesheet" href="../static/web/font/css/font-awesome.min.css"> | ||||
| <link rel="stylesheet" href="../static/web/css/admin.css"> | <link rel="stylesheet" href="../static/web/css/admin.css"> | ||||
| <link rel="stylesheet" href="css/menu.min.css"> | <link rel="stylesheet" href="css/menu.min.css"> | ||||
| <?php echo "<script>var curopenItem = '$openitem';</script>";?> | |||||
| <script src="../static/web/js/webajax.js"></script> | |||||
| <script src="../static/web/js/jquery.min.js"></script> | <script src="../static/web/js/jquery.min.js"></script> | ||||
| <script src="js/leftmenu.js"></script> | |||||
| <base target="main"> | |||||
| </head> | </head> | ||||
| <body class="menu-body"> | |||||
| <table cellspacing="0" cellpadding="0"> | |||||
| <tr> | |||||
| <td valign="top" class="menu-left"> | |||||
| <a id="link1" class="menu-active"> | |||||
| <div onClick="ShowMainMenu(1)"><b>运维</b></div> | |||||
| </a> | |||||
| <a id="link100" class="menu-item"> | |||||
| <div onClick="ShowMainMenu(100)"><b>插件</b></div> | |||||
| </a> | |||||
| <a id="link5" class="menu-item"> | |||||
| <div onClick="ShowMainMenu(5)"><b>更新</b></div> | |||||
| </a> | |||||
| <a id="link6" class="menu-item"> | |||||
| <div onClick="ShowMainMenu(6)"><b>会员</b></div> | |||||
| </a> | |||||
| <?php if ($cuserLogin->getUserType()>=10){?> | |||||
| <a id="link7" class="menu-item"> | |||||
| <div onClick="ShowMainMenu(7)"><b>模板</b></div> | |||||
| </a> | |||||
| <a id="link10" class="menu-item"> | |||||
| <div onClick="ShowMainMenu(10)"><b>系统</b></div> | |||||
| </a> | |||||
| <?php }?> | |||||
| </td> | |||||
| <td valign="top" class="menu-right"> | |||||
| <div id="ct1"><?php GetMenus($cuserLogin->getUserRank(),'main');?></div> | |||||
| <div id="ct100"></div> | |||||
| <div id="ct3"></div> | |||||
| <div id="ct5"></div> | |||||
| <div id="ct6"></div> | |||||
| <div id="ct7"></div> | |||||
| <div id="ct20"></div> | |||||
| <div id="ct10"></div> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <?php if (!empty($openitem) && $openitem!=1){?> | |||||
| <body class="menu-box"> | |||||
| <ul id="menu" class="menu"> | |||||
| <?php | |||||
| $openitem=100; | |||||
| GetMenus($cuserLogin->getUserRank(),'main'); | |||||
| ?> | |||||
| </ul> | |||||
| <script> | <script> | ||||
| ShowMainMenu(100); | |||||
| $(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); | |||||
| }); | |||||
| </script> | </script> | ||||
| <?php }?> | |||||
| </body> | </body> | ||||
| </html> | </html> | ||||
| @@ -20,42 +20,42 @@ | |||||
| <div class="d-flex flex-md-row align-items-center shadow-sm biz-head mb-5"> | <div class="d-flex flex-md-row align-items-center shadow-sm biz-head mb-5"> | ||||
| <div class="container"> | <div class="container"> | ||||
| <div class="row"> | <div class="row"> | ||||
| <div class="col-6 text-left"> | |||||
| <div class="logo"><img src="../static/web/img/logo.png" title="<?php echo $cfg_soft_enname;?>" class="logo"></div> | |||||
| </div> | |||||
| <div class="col-6 text-right d-flex justify-content-end biz-nav"> | |||||
| <a href="/" target="_blank" class="biz-nav-a"><i class="fa fa-home"></i> 网站首页</a> | |||||
| </div> | |||||
| <div class="col-6 col-md-4 text-left"><img src="../static/web/img/logo.png" title="<?php echo $cfg_soft_enname;?>" class="logo"></div> | |||||
| <div class="col-6 col-md-8 text-right d-flex justify-content-end biz-nav"><a href="/" target="_blank" class="biz-nav-a"><i class="fa fa-home"></i> 网站首页</a></div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="container"> | <div class="container"> | ||||
| <div class="login-from"> | |||||
| <?php echo $redmsg;?> | |||||
| <div class="login-area shadow-sm"> | |||||
| <h2 class="mb-4 text-center">后台登录</h2> | |||||
| <form name="form1" method="post" action="login.php"> | |||||
| <input type="hidden" name="gotopage" value="<?php if (!empty($gotopage)) echo RemoveXSS($gotopage);?>"> | |||||
| <input type="hidden" name="dopost" value="login"> | |||||
| <input type="hidden" name="adminstyle" value="newDedeBIZ"> | |||||
| <div class="form-group"> | |||||
| <label for="iptUserid">用户名</label> | |||||
| <input type="text" name="userid" id="iptUserid" class="form-control"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="iptPassword">密码</label> | |||||
| <input type="password" name="pwd" id="iptPassword" class="form-control"> | |||||
| <div class="row"> | |||||
| <div class="col-md-12"> | |||||
| <div class="login-from"> | |||||
| <?php echo $redmsg;?> | |||||
| <div class="login-area shadow-sm"> | |||||
| <h2 class="text-center mb-3">后台登录</h2> | |||||
| <form name="form1" method="post" action="login.php"> | |||||
| <input type="hidden" name="gotopage" value="<?php if (!empty($gotopage)) echo RemoveXSS($gotopage);?>"> | |||||
| <input type="hidden" name="dopost" value="login"> | |||||
| <input type="hidden" name="adminstyle" value="newDedeBIZ"> | |||||
| <div class="form-group"> | |||||
| <label for="iptUserid">用户名</label> | |||||
| <input type="text" name="userid" id="iptUserid" class="form-control"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="iptPassword">密码</label> | |||||
| <input type="password" name="pwd" id="iptPassword" class="form-control"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="iptValidate">验证码</label> | |||||
| <div class="input-group"> | |||||
| <input type="text" name="validate" id="iptValidate" class="form-control text-uppercase"> | |||||
| <img src="../apps/vdimgck.php" onclick="this.src='../apps/vdimgck.php?'+new Date().getTime()+Math.round(Math.random() * 10000)" title="验证码" id="validateimg"> | |||||
| </div> | |||||
| </div> | |||||
| <div><button type="submit" class="btn btn-success w-100">登录</button></div> | |||||
| <div class="login-power"><?php echo $cfg_powerby;?></div> | |||||
| </form> | |||||
| </div> | </div> | ||||
| <div class="form-group"> | |||||
| <label for="iptValidate">验证码</label> | |||||
| <div class="input-group"> | |||||
| <input type="text" name="validate" id="iptValidate" class="form-control text-uppercase"> | |||||
| <img src="../apps/vdimgck.php" onclick="this.src='../apps/vdimgck.php?'+new Date().getTime()+Math.round(Math.random() * 10000)" title="验证码" id="validateimg"> | |||||
| </div> | |||||
| </div> | |||||
| <div><button type="submit" class="btn btn-success w-100">登录</button></div> | |||||
| <div class="login-power"><?php echo $cfg_powerby;?></div> | |||||
| </form> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -36,8 +36,8 @@ | |||||
| <td><input type="text" name="startid" id="startid" class="biz-input-sm">(空或0表示从头开始)</td> | <td><input type="text" name="startid" id="startid" class="biz-input-sm">(空或0表示从头开始)</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>结束ID:</td> | |||||
| <td><input type="text" name="endid" id="endid" class="biz-input-sm">(空或0表示直到结束ID)</td> | |||||
| <td>结束id:</td> | |||||
| <td><input type="text" name="endid" id="endid" class="biz-input-sm">(空或0表示直到结束id)</td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>每页生成:</td> | <td>每页生成:</td> | ||||
| @@ -19,8 +19,8 @@ | |||||
| <td><input type="text" name="startid" id="startid" size="10" <?php if (!empty($aid)) echo " value='$aid'";?>>(空或0表示从头开始)</td> | <td><input type="text" name="startid" id="startid" size="10" <?php if (!empty($aid)) echo " value='$aid'";?>>(空或0表示从头开始)</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>结束ID:</td> | |||||
| <td><input type="text" name="endid" id="endid" size="10" <?php if (!empty($aid)) echo " value='$aid'";?>>(空或0表示直到结束ID)</td> | |||||
| <td>结束id:</td> | |||||
| <td><input type="text" name="endid" id="endid" size="10" <?php if (!empty($aid)) echo " value='$aid'";?>>(空或0表示直到结束id)</td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>每批生成:</td> | <td>每批生成:</td> | ||||
| @@ -42,8 +42,8 @@ | |||||
| <td><input type="text" name="startid" id="startid" class="biz-input-sm">(空或0表示从头开始)</td> | <td><input type="text" name="startid" id="startid" class="biz-input-sm">(空或0表示从头开始)</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>结束ID:</td> | |||||
| <td><input type="text" name="endid" id="endid" class="biz-input-sm">(空或0表示直到结束ID)</td> | |||||
| <td>结束id:</td> | |||||
| <td><input type="text" name="endid" id="endid" class="biz-input-sm">(空或0表示直到结束id)</td> | |||||
| </tr> | </tr> | ||||
| <?php }?> | <?php }?> | ||||
| <tr> | <tr> | ||||
| @@ -29,13 +29,13 @@ | |||||
| <td colspan="5" bgcolor="#f8f8f8">积分头衔设置</td> | <td colspan="5" bgcolor="#f8f8f8">积分头衔设置</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td width="6%" align="center" bgcolor="#fbfce2"><input type="checkbox" name="chkall" id="chkall" onClick="CheckAll(this.form)"> 全选删除</td> | |||||
| <td width="6%" align="center" bgcolor="#fbfce2"><input type="checkbox" name="chkall" id="chkall" onClick="CheckAll(this.form)"> 全选</td> | |||||
| <td width="23%" align="center" bgcolor="#fbfce2">积分大于</td> | <td width="23%" align="center" bgcolor="#fbfce2">积分大于</td> | ||||
| <td width="30%" align="center" bgcolor="#fbfce2">星星数</td> | <td width="30%" align="center" bgcolor="#fbfce2">星星数</td> | ||||
| <td width="23%" align="center" bgcolor="#fbfce2">级别头衔</td> | <td width="23%" align="center" bgcolor="#fbfce2">级别头衔</td> | ||||
| <td width="30%" align="center" bgcolor="#fbfce2">是否默认</td> | <td width="30%" align="center" bgcolor="#fbfce2">是否默认</td> | ||||
| </tr> | </tr> | ||||
| <?php foreach($Scores as $v){ ?> | |||||
| <?php foreach($Scores as $v){?> | |||||
| <tr onmousemove="javascript:this.bgColor='#fbfce2';" onmouseout="javascript:this.bgColor='#ffffff';"> | <tr onmousemove="javascript:this.bgColor='#fbfce2';" onmouseout="javascript:this.bgColor='#ffffff';"> | ||||
| <td align="center"><input type="checkbox" name="Ids-<?php echo $v['id']?>" id="Ids-<?php echo $v['id']?>" value="1"></td> | <td align="center"><input type="checkbox" name="Ids-<?php echo $v['id']?>" id="Ids-<?php echo $v['id']?>" value="1"></td> | ||||
| <td align="center"><input type="text" name="integral-<?php echo $v['id']?>" id="integral-<?php echo $v['id']?>" value="<?php echo $v['integral']?>" class="biz-input-sm"></td> | <td align="center"><input type="text" name="integral-<?php echo $v['id']?>" id="integral-<?php echo $v['id']?>" value="<?php echo $v['integral']?>" class="biz-input-sm"></td> | ||||
| @@ -12,15 +12,15 @@ | |||||
| <script src="../static/web/js/style.js"></script> | <script src="../static/web/js/style.js"></script> | ||||
| <style>.col-form-label{padding-top:0}</style> | <style>.col-form-label{padding-top:0}</style> | ||||
| <script> | <script> | ||||
| function checkall(form, prefix, checkall) { | |||||
| var checkall = checkall ? checkall : 'all'; | |||||
| for (var i = 0; i < form.elements.length; i++) { | |||||
| var e = form.elements[i]; | |||||
| if (e.name && e.name != checkall && (!prefix || (prefix && e.name.match(prefix)))) { | |||||
| e.checked = form.elements[checkall].checked; | |||||
| } | |||||
| } | |||||
| } | |||||
| function CheckAll(form, prefix, checkall) { | |||||
| var checkall = checkall ? checkall : 'chkall'; | |||||
| for (var i = 0; i < form.elements.length; i++) { | |||||
| var e = form.elements[i]; | |||||
| if (e.name && e.name != checkall && (!prefix || (prefix && e.name.match(prefix)))) { | |||||
| e.checked = form.elements[checkall].checked; | |||||
| } | |||||
| } | |||||
| } | |||||
| function UpdateOne(tid) { | function UpdateOne(tid) { | ||||
| location = "tags_main.php?action=update&count=" + document.getElementById('count' + tid).value + "&tid=" + tid; | location = "tags_main.php?action=update&count=" + document.getElementById('count' + tid).value + "&tid=" + tid; | ||||
| } | } | ||||
| @@ -78,8 +78,8 @@ | |||||
| <table width="98%" cellpadding="1" cellspacing="1" align="center" class="table maintable mt-3 mb-3"> | <table width="98%" cellpadding="1" cellspacing="1" align="center" class="table maintable mt-3 mb-3"> | ||||
| <tr bgcolor="#f8f8f8"> | <tr bgcolor="#f8f8f8"> | ||||
| <form name="form1" action="tags_main.php?action=fetch" method="post"> | <form name="form1" action="tags_main.php?action=fetch" method="post"> | ||||
| <td width="180"><input type="text" name="startaid" placeholder="请输入开始ID" class="biz-input-sm"></td> | |||||
| <td width="170"><input type="text" name="endaid" placeholder="请输入结束ID" class="biz-input-sm"></td> | |||||
| <td width="180"><input type="text" name="startaid" placeholder="请输入开始id" class="biz-input-sm"></td> | |||||
| <td width="170"><input type="text" name="endaid" placeholder="请输入结束id" class="biz-input-sm"></td> | |||||
| <td> | <td> | ||||
| <button name="submit" type="submit" class="btn btn-success btn-sm">获取标签</button> | <button name="submit" type="submit" class="btn btn-success btn-sm">获取标签</button> | ||||
| <a href="makehtml_taglist.php" name="sb" class="btn btn-success btn-sm">生成</a> | <a href="makehtml_taglist.php" name="sb" class="btn btn-success btn-sm">生成</a> | ||||
| @@ -91,17 +91,17 @@ | |||||
| <tr> | <tr> | ||||
| <td colspan="8" bgcolor="#f8f8f8">标签管理</td> | <td colspan="8" bgcolor="#f8f8f8">标签管理</td> | ||||
| </tr> | </tr> | ||||
| <tr align="center" bgcolor="#fbfce2"> | |||||
| <td width="8%">选择</td> | |||||
| <td width="5%">id</td> | |||||
| <td width="30%">标签</td> | |||||
| <td width="10%"><a href="tags_main.php?tag=<?php echo $tag;?>&orderby=count&orderway=<?php echo $neworderway;?>">点击</a></td> | |||||
| <td width="10%"><a href="tags_main.php?tag=<?php echo $tag;?>&orderby=total&orderway=<?php echo $neworderway;?>">文档数</a></td> | |||||
| <td width="10%"><a href="tags_main.php?tag=<?php echo $tag;?>&orderby=addtime&orderway=<?php echo $neworderway;?>">添加时间</a></td> | |||||
| <td width="10%">更新时间</td> | |||||
| <td width="22%">操作</td> | |||||
| </tr> | |||||
| <form name="form3" action="tags_main.php?action=delete" method="post"> | <form name="form3" action="tags_main.php?action=delete" method="post"> | ||||
| <tr align="center" bgcolor="#fbfce2"> | |||||
| <td width="6%"><input type="checkbox" name="chkall" id="chkall" onClick="CheckAll(this.form)"> 全选</td> | |||||
| <td width="6%">id</td> | |||||
| <td width="30%">标签</td> | |||||
| <td width="10%"><a href="tags_main.php?tag=<?php echo $tag;?>&orderby=count&orderway=<?php echo $neworderway;?>">点击</a></td> | |||||
| <td width="10%"><a href="tags_main.php?tag=<?php echo $tag;?>&orderby=total&orderway=<?php echo $neworderway;?>">文档数</a></td> | |||||
| <td width="10%"><a href="tags_main.php?tag=<?php echo $tag;?>&orderby=addtime&orderway=<?php echo $neworderway;?>">添加时间</a></td> | |||||
| <td width="10%">更新时间</td> | |||||
| <td>操作</td> | |||||
| </tr> | |||||
| {dede:datalist empty='<tr><td colspan="8"><center>暂无内容</center></td></tr>'} | {dede:datalist empty='<tr><td colspan="8"><center>暂无内容</center></td></tr>'} | ||||
| <?php | <?php | ||||
| $fields['addtime'] = GetDateMk($fields['addtime']); | $fields['addtime'] = GetDateMk($fields['addtime']); | ||||
| @@ -125,10 +125,7 @@ | |||||
| </tr> | </tr> | ||||
| {/dede:datalist} | {/dede:datalist} | ||||
| <tr> | <tr> | ||||
| <td colspan="8"> | |||||
| <label class="mr-2"><input type="checkbox" onclick="checkall(this.form,'ids')" name="all"> 全选</label> | |||||
| <button type="button" onclick="document.form3.submit()" class="btn btn-danger btn-sm">删除</button> | |||||
| </td> | |||||
| <td colspan="8"><button type="button" onclick="document.form3.submit()" class="btn btn-danger btn-sm">删除</button></td> | |||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td colspan="8" bgcolor="#f8f8f8" align="center" class="py-2">{dede:pagelist/}</td> | <td colspan="8" bgcolor="#f8f8f8" align="center" class="py-2">{dede:pagelist/}</td> | ||||
| @@ -11,16 +11,14 @@ | |||||
| <script src="../static/web/js/popper.min.js"></script> | <script src="../static/web/js/popper.min.js"></script> | ||||
| <script src="../static/web/js/bootstrap.bundle.min.js"></script> | <script src="../static/web/js/bootstrap.bundle.min.js"></script> | ||||
| <script src="../static/web/js/style.js"></script> | <script src="../static/web/js/style.js"></script> | ||||
| <style>*{margin:0;padding:0;letter-spacing:.6px;box-sizing:border-box}body{line-height:1.5;font:14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif;color:#545b62;background:#f8f8f8}a{color:#545b62}input,select,.btn{font-size:14px!important}.install-box{margin:0 auto;width:860px}.biz-head{padding:1rem 0;background:#fff}.logo{height:36px}.biz-nav{height:36px;line-height:36px}.biz-nav-a{padding-right:30px}.biz-btn{color:#545b62}.dropdown-menu{min-width:8rem;font-size:14px}.dropdown-item{padding:0 1rem;height:36px;line-height:36px;font-size:14px;color:#545b62!important}@media (max-width:760px){.install-box{margin:0 auto;padding:0 15px;width:100%}.biz-head{padding:1rem 15px}.biz-nav-a{display:none!important}}</style> | |||||
| <style>*{margin:0;padding:0;letter-spacing:.6px;box-sizing:border-box}body{line-height:1.5;font:14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif;color:#545b62;background:#f8f8f8}a{color:#545b62}input,select,.btn{font-size:14px!important}.install-box{margin:0 auto;width:860px}.biz-head{padding:1rem 0;background:#fff}.logo{height:36px}.biz-nav{height:36px;line-height:36px}.biz-nav-a{padding-right:30px}.biz-btn{color:#545b62}.dropdown-menu{min-width:8rem;font-size:14px}.dropdown-item{padding:0 1rem;height:36px;line-height:36px;font-size:14px;color:#545b62!important}@media (max-width:760px){.install-box{width:100%}.biz-head{padding:1rem 15px}.biz-nav-a{display:none!important}}</style> | |||||
| </head> | </head> | ||||
| <body> | <body> | ||||
| <div class="d-flex flex-md-row align-items-center shadow-sm biz-head mb-5"> | <div class="d-flex flex-md-row align-items-center shadow-sm biz-head mb-5"> | ||||
| <div class="container"> | <div class="container"> | ||||
| <div class="row"> | <div class="row"> | ||||
| <div class="col-6 text-left"> | |||||
| <div class="logo"><img src="../static/web/img/logo.png" title="<?php echo $cfg_soft_enname;?>" class="logo"></div> | |||||
| </div> | |||||
| <div class="col-6 text-right d-flex justify-content-end biz-nav"> | |||||
| <div class="col-6 col-md-4 text-left"><img src="../static/web/img/logo.png" title="<?php echo $cfg_soft_enname;?>" class="logo"></div> | |||||
| <div class="col-6 col-md-8 text-right d-flex justify-content-end biz-nav"> | |||||
| <a href="https://www.dedebiz.com/help" target="_blank" class="biz-nav-a"><i class="fa fa-info-circle"></i> 帮助中心</a> | <a href="https://www.dedebiz.com/help" target="_blank" class="biz-nav-a"><i class="fa fa-info-circle"></i> 帮助中心</a> | ||||
| <a href="https://www.dedebiz.com/service" target="_blank" class="biz-nav-a"><i class="fa fa-handshake-o"></i> 技术服务</a> | <a href="https://www.dedebiz.com/service" target="_blank" class="biz-nav-a"><i class="fa fa-handshake-o"></i> 技术服务</a> | ||||
| </div> | </div> | ||||
| @@ -28,93 +26,90 @@ | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="container install-box"> | <div class="container install-box"> | ||||
| <?php | |||||
| if (count($arrMsg) > 0){ | |||||
| foreach($arrMsg as $msg){ | |||||
| ?> | |||||
| <div class="alert alert-warning"><?php echo $msg ?></div> | |||||
| <?php }}?> | |||||
| <div class="alert alert-warning">请先阅读<a href="https://www.dedebiz.com/license?from=install" target="_blank" class="text-success">《站点授权协议》</a></div> | |||||
| <div class="card shadow-sm mb-3"> | |||||
| <div class="card-header bg-success text-white"> | |||||
| <h5 class="my-0 fw-normal text-center">欢迎使用DedeCMSV<?php echo $cfg_version_detail;?></h5> | |||||
| </div> | |||||
| <div class="card-body"> | |||||
| <form action="index.php" method="post" name="form1"> | |||||
| <input type="hidden" name="step" value="2" /> | |||||
| <input type="hidden" name="cookieencode" value="<?php echo $rnd_cookieEncode; ?>"> | |||||
| <input type="hidden" name="adminmail" value="admin@dedebiz.com"> | |||||
| <legend>数据库设置</legend> | |||||
| <hr> | |||||
| <div class="form-group"> | |||||
| <label for="dbtype" class="form-label">数据库类型</label> | |||||
| <select id="dbtype" name="dbtype" class="form-control form-select"> | |||||
| <option value="mysql" selected>MySQL</option> | |||||
| <option value="sqlite">SQLite</option> | |||||
| </select> | |||||
| <div class="form-text text-danger">数据库类型一般为MySQL,SQLite仅用于开发调试,不建议生产中使用。</div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbhost" class="form-label">数据库主机</label> | |||||
| <input id="dbhost" name="dbhost" type="text" class="form-control" placeholder="localhost"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbuser" class="form-label">数据库用户</label> | |||||
| <input name="dbuser" id="dbuser" type="text" class="form-control" placeholder="root"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="exampleInputPassword1" class="form-label">数据库密码</label> | |||||
| <input name="dbpwd" type="text" class="form-control" id="dbpwd"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbprefix" class="form-label">数据表前缀</label> | |||||
| <input name="dbprefix" type="text" class="form-control" id="dbprefix" placeholder="biz_"> | |||||
| <div class="form-text text-danger">请注意数据库名称默认为biz_</div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbname" class="form-label">数据库名称</label> | |||||
| <div class="input-group mb-3"> | |||||
| <input id="dbname" name="dbname" type="text" class="form-control" placeholder="DedeBIZ"> | |||||
| <div class="input-group-append"> | |||||
| <button class="btn btn-success" type="button" id="btnCheckConnect">检查连接</button> | |||||
| <div class="row"> | |||||
| <div class="col-md-12"> | |||||
| <?php | |||||
| if (count($arrMsg) > 0){ | |||||
| foreach($arrMsg as $msg){ | |||||
| ?> | |||||
| <div class="alert alert-warning"><?php echo $msg ?></div> | |||||
| <?php }}?> | |||||
| <div class="alert alert-warning">请先阅读<a href="https://www.dedebiz.com/license?from=install" target="_blank" class="text-success">《站点授权协议》</a></div> | |||||
| <div class="card shadow-sm mb-3"> | |||||
| <div class="card-header bg-success text-white"> | |||||
| <h4 class="text-center my-0">欢迎使用DedeCMSV<?php echo $cfg_version_detail;?></h4> | |||||
| </div> | |||||
| <div class="card-body"> | |||||
| <form action="index.php" method="post" name="form1"> | |||||
| <input type="hidden" name="step" value="2" /> | |||||
| <input type="hidden" name="cookieencode" value="<?php echo $rnd_cookieEncode; ?>"> | |||||
| <input type="hidden" name="adminmail" value="admin@dedebiz.com"> | |||||
| <legend>数据库设置</legend> | |||||
| <hr> | |||||
| <div class="form-group"> | |||||
| <label for="dbtype" class="form-label">数据库类型</label> | |||||
| <select id="dbtype" name="dbtype" class="form-control form-select"> | |||||
| <option value="mysql" selected>MySQL</option> | |||||
| <option value="sqlite">SQLite</option> | |||||
| </select> | |||||
| <div class="form-text text-danger">数据库类型一般为MySQL,SQLite仅用于开发调试,不建议生产中使用。</div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbhost" class="form-label">数据库主机</label> | |||||
| <input type="text" name="dbhost" id="dbhost" class="form-control" placeholder="localhost"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbuser" class="form-label">数据库用户</label> | |||||
| <input type="text" name="dbuser" id="dbuser" class="form-control" placeholder="root"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="exampleInputPassword1" class="form-label">数据库密码</label> | |||||
| <input type="text" name="dbpwd" id="dbpwd" class="form-control"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbprefix" class="form-label">数据表前缀</label> | |||||
| <input type="text" name="dbprefix" id="dbprefix" class="form-control" placeholder="biz_"> | |||||
| <div class="form-text text-danger">请注意数据库名称默认为biz_</div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="dbname" class="form-label">数据库名称</label> | |||||
| <div class="input-group"> | |||||
| <input id="dbname" name="dbname" type="text" class="form-control" placeholder="DedeBIZ"> | |||||
| <div class="input-group-append"><button type="button" id="btnCheckConnect" class="btn btn-success">检查连接</button></div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | |||||
| <div id="alertConnect"></div> | |||||
| <legend>站点设置</legend> | |||||
| <hr> | |||||
| <div class="form-group"> | |||||
| <label for="baseurl" class="form-label">网站网址</label> | |||||
| <input name="baseurl" type="text" class="form-control" id="baseurl" placeholder="<?php echo $baseurl; ?>"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="webname" class="form-label">网站名称</label> | |||||
| <input name="webname" type="text" class="form-control" id="webname" placeholder="某某公司"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="adminuser" class="form-label">用户名</label> | |||||
| <input name="adminuser" type="text" class="form-control" id="adminuser" placeholder="admin"> | |||||
| <div class="form-text text-dark">只能用[0-9a-zA-Z_@!.-]以内范围的字符</div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="adminpwd" class="form-label">密码</label> | |||||
| <input name="adminpwd" type="text" class="form-control" id="adminpwd" placeholder="admin"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="cmspath" class="form-label">安装目录</label> | |||||
| <input name="cmspath" type="text" class="form-control" id="cmspath" value="<?php echo $basepath; ?>" placeholder="<?php echo $basepath; ?>"> | |||||
| <div class="form-text text-danger">在根目录安装时不必理会</div> | |||||
| </div> | |||||
| <div class="text-right"> | |||||
| <button type="submit" class="btn btn-success">立即安装</button> | |||||
| </div> | |||||
| </form> | |||||
| <div id="alertConnect"></div> | |||||
| <legend>站点设置</legend> | |||||
| <hr> | |||||
| <div class="form-group"> | |||||
| <label for="baseurl" class="form-label">网站网址</label> | |||||
| <input type="text" name="baseurl" id="baseurl" class="form-control" placeholder="<?php echo $baseurl; ?>"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="webname" class="form-label">网站名称</label> | |||||
| <input type="text" name="webname" id="webname" class="form-control" placeholder="某某公司"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="adminuser" class="form-label">用户名</label> | |||||
| <input type="text" name="adminuser" id="adminuser" class="form-control" placeholder="admin"> | |||||
| <div class="form-text text-dark">只能用[0-9a-zA-Z_@!.-]以内范围的字符</div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="adminpwd" class="form-label">密码</label> | |||||
| <input type="text" name="adminpwd" id="adminpwd" class="form-control" placeholder="admin"> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label for="cmspath" class="form-label">安装目录</label> | |||||
| <input type="text" name="cmspath" id="cmspath" class="form-control" value="<?php echo $basepath; ?>" placeholder="<?php echo $basepath; ?>"> | |||||
| <div class="form-text text-danger">在根目录安装时不必理会</div> | |||||
| </div> | |||||
| <div class="text-right"><button type="submit" class="btn btn-success">立即安装</button></div> | |||||
| </form> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="row"> | |||||
| <div class="col-12"> | |||||
| <p>Powered by <a href="https://www.dedebiz.com" target="_blank" class="text-dark">DedeBIZ开发团队</a></p> | |||||
| </div> | |||||
| <div class="col-md-12"> | |||||
| <p>Powered by <a href="https://www.dedebiz.com" target="_blank" class="text-dark">DedeBIZ开发团队</a></p> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <script> | <script> | ||||
| @@ -1,38 +0,0 @@ | |||||
| "Kama" Skin | |||||
| ==================== | |||||
| "Kama" is the default skin of CKEditor 3.x. | |||||
| It's been ported to CKEditor 4 and fully featured. | |||||
| For more information about skins, please check the [CKEditor Skin SDK](https://ckeditor.com/docs/ckeditor4/latest/guide/skin_sdk_intro.html) | |||||
| documentation. | |||||
| Directory Structure | |||||
| ------------------- | |||||
| CSS parts: | |||||
| - **editor.css**: the main CSS file. It's simply loading several other files, for easier maintenance, | |||||
| - **mainui.css**: the file contains styles of entire editor outline structures, | |||||
| - **toolbar.css**: the file contains styles of the editor toolbar space (top), | |||||
| - **richcombo.css**: the file contains styles of the rich combo ui elements on toolbar, | |||||
| - **panel.css**: the file contains styles of the rich combo drop-down, it's not loaded | |||||
| until the first panel open up, | |||||
| - **elementspath.css**: the file contains styles of the editor elements path bar (bottom), | |||||
| - **menu.css**: the file contains styles of all editor menus including context menu and button drop-down, | |||||
| it's not loaded until the first menu open up, | |||||
| - **dialog.css**: the CSS files for the dialog UI, it's not loaded until the first dialog open, | |||||
| - **reset.css**: the file defines the basis of style resets among all editor UI spaces, | |||||
| - **preset.css**: the file defines the default styles of some UI elements reflecting the skin preference, | |||||
| - **editor_XYZ.css** and **dialog_XYZ.css**: browser specific CSS hacks. | |||||
| Other parts: | |||||
| - **skin.js**: the only JavaScript part of the skin that registers the skin, its browser specific files and its icons and defines the Chameleon feature, | |||||
| - **icons/**: contains all skin defined icons, | |||||
| - **images/**: contains a fill general used images. | |||||
| License | |||||
| ------- | |||||
| Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. | |||||
| For licensing, see LICENSE.md or [https://ckeditor.com/legal/ckeditor-oss-license](https://ckeditor.com/legal/ckeditor-oss-license) | |||||
| @@ -1,8 +0,0 @@ | |||||
| /* | |||||
| Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. | |||||
| For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license | |||||
| */ | |||||
| CKEDITOR.skin.name="kama";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8"; | |||||
| CKEDITOR.skin.chameleon=function(d,c){var b,a="."+d.id;"editor"==c?b=a+" .cke_inner,"+a+" .cke_dialog_tab{background-color:$color;linear-gradient( to bottom,#fff -15px,$color 40px );}"+a+" .cke_toolgroup{linear-gradient( to bottom,#fff,$color 100px );}"+a+" .cke_combo_button{linear-gradient( to top,#fff,$color 100px );}"+a+" .cke_dialog_contents,"+a+" .cke_dialog_footer{background-color:$color !important;}"+a+" .cke_dialog_tab:hover,"+a+" .cke_dialog_tab:active,"+a+" .cke_dialog_tab:focus,"+a+" .cke_dialog_tab_selected{background-color:$color;background-image:none;}": | |||||
| "panel"==c&&(b=".cke_menubutton_icon{background-color:$color !important;border-color:$color !important;}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:$color !important;border-color:$color !important;}.cke_menubutton:hover .cke_menubutton_label,.cke_menubutton:focus .cke_menubutton_label,.cke_menubutton:active .cke_menubutton_label{background-color:$color !important;}.cke_menubutton_disabled:hover .cke_menubutton_label,.cke_menubutton_disabled:focus .cke_menubutton_label,.cke_menubutton_disabled:active .cke_menubutton_label{background-color: transparent !important;}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{background-color:$color !important;border-color:$color !important;}.cke_menubutton_disabled .cke_menubutton_icon{background-color:$color !important;border-color:$color !important;}.cke_menuseparator{background-color:$color !important;}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:$color !important;}"); | |||||
| return b}; | |||||
| @@ -1,49 +0,0 @@ | |||||
| "Moono" Skin | |||||
| ==================== | |||||
| This skin has been chosen for the **default skin** of CKEditor 4.x.x (replaced by "Moono-lisa" skin since CKEditor 4.6.0), | |||||
| elected from the CKEditor [skin contest](https://ckeditor.com/blog/CKEditor-4-Skin-Contest-Winner/) and further shaped by | |||||
| the CKEditor team. "Moono" is maintained by the core developers. | |||||
| For more information about skins, please check the [CKEditor Skin SDK](https://ckeditor.com/docs/ckeditor4/latest/guide/skin_sdk_intro.html) | |||||
| documentation. | |||||
| Features | |||||
| ------------------- | |||||
| "Moono" is a monochromatic skin, which offers a modern look coupled with gradients and transparency. | |||||
| It comes with the following features: | |||||
| - Chameleon feature with brightness, | |||||
| - high-contrast compatibility, | |||||
| - graphics source provided in SVG. | |||||
| Directory Structure | |||||
| ------------------- | |||||
| CSS parts: | |||||
| - **editor.css**: the main CSS file. It's simply loading several other files, for easier maintenance, | |||||
| - **mainui.css**: the file contains styles of entire editor outline structures, | |||||
| - **toolbar.css**: the file contains styles of the editor toolbar space (top), | |||||
| - **richcombo.css**: the file contains styles of the rich combo ui elements on toolbar, | |||||
| - **panel.css**: the file contains styles of the rich combo drop-down, it's not loaded | |||||
| until the first panel open up, | |||||
| - **elementspath.css**: the file contains styles of the editor elements path bar (bottom), | |||||
| - **menu.css**: the file contains styles of all editor menus including context menu and button drop-down, | |||||
| it's not loaded until the first menu open up, | |||||
| - **dialog.css**: the CSS files for the dialog UI, it's not loaded until the first dialog open, | |||||
| - **reset.css**: the file defines the basis of style resets among all editor UI spaces, | |||||
| - **preset.css**: the file defines the default styles of some UI elements reflecting the skin preference, | |||||
| - **editor_XYZ.css** and **dialog_XYZ.css**: browser specific CSS hacks. | |||||
| Other parts: | |||||
| - **skin.js**: the only JavaScript part of the skin that registers the skin, its browser specific files and its icons and defines the Chameleon feature, | |||||
| - **icons/**: contains all skin defined icons, | |||||
| - **images/**: contains a fill general used images, | |||||
| - **dev/**: contains SVG source of the skin icons. | |||||
| License | |||||
| ------- | |||||
| Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. | |||||
| For licensing, see LICENSE.md or [https://ckeditor.com/legal/ckeditor-oss-license](https://ckeditor.com/legal/ckeditor-oss-license) | |||||
| @@ -1,10 +0,0 @@ | |||||
| /* | |||||
| Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. | |||||
| For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license | |||||
| */ | |||||
| CKEDITOR.skin.name="moono";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8"; | |||||
| CKEDITOR.skin.chameleon=function(){var b=function(){return function(b,e){for(var a=b.match(/[^#]./g),c=0;3>c;c++){var f=c,d;d=parseInt(a[c],16);d=("0"+(0>e?0|d*(1+e):0|d+(255-d)*e).toString(16)).slice(-2);a[f]=d}return"#"+a.join("")}}(),c=function(){var b=new CKEDITOR.template("background:#{to};background-image:linear-gradient(to bottom,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType\x3d0,startColorstr\x3d'{from}',endColorstr\x3d'{to}');");return function(c,a){return b.output({from:c, | |||||
| to:a})}}(),f={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "), | |||||
| panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")}; | |||||
| return function(g,e){var a=g.uiColor,a={id:"."+g.id,defaultBorder:b(a,-.1),defaultGradient:c(b(a,.9),a),lightGradient:c(b(a,1),b(a,.7)),mediumGradient:c(b(a,.8),b(a,.5)),ckeButtonOn:c(b(a,.6),b(a,.7)),ckeResizer:b(a,-.4),ckeToolbarSeparator:b(a,.5),ckeColorauto:b(a,.8),dialogBody:b(a,.7),dialogTabSelected:c("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:b(a,-.6),elementsPathBg:a,menubuttonIcon:b(a,.5),menubuttonIconHover:b(a,.3)};return f[e].output(a).replace(/\[/g,"{").replace(/\]/g, | |||||
| "}")}}(); | |||||
| @@ -513,4 +513,9 @@ span.page-link { | |||||
| width:20px; | width:20px; | ||||
| height:20px; | height:20px; | ||||
| border-radius:.2rem | border-radius:.2rem | ||||
| } | |||||
| @media (min-width:576px) { | |||||
| .modal-dialog { | |||||
| max-width:520px | |||||
| } | |||||
| } | } | ||||
| @@ -75,9 +75,8 @@ class ListView | |||||
| $this->Fields['id'] = $typeid; | $this->Fields['id'] = $typeid; | ||||
| $this->Fields['position'] = $this->TypeLink->GetPositionLink(true); | $this->Fields['position'] = $this->TypeLink->GetPositionLink(true); | ||||
| $this->Fields['title'] = preg_replace("/[<>]/", " / ", $this->TypeLink->GetPositionLink(false)); | $this->Fields['title'] = preg_replace("/[<>]/", " / ", $this->TypeLink->GetPositionLink(false)); | ||||
| //添加联动多筛选 | |||||
| if (isset($_REQUEST['tid'])) | |||||
| { | |||||
| //添加联动单筛选 | |||||
| if (isset($_REQUEST['tid'])) { | |||||
| foreach($_GET as $key => $value) { | foreach($_GET as $key => $value) { | ||||
| if ($key!="tid" && $key!="TotalResult" && $key!="PageNo") { | if ($key!="tid" && $key!="TotalResult" && $key!="PageNo") { | ||||
| $this->Fields[string_filter($key)] = string_filter(urldecode($value)); | $this->Fields[string_filter($key)] = string_filter(urldecode($value)); | ||||
| @@ -131,11 +130,9 @@ class ListView | |||||
| { | { | ||||
| global $cfg_list_son,$cfg_need_typeid2,$cfg_cross_sectypeid; | global $cfg_list_son,$cfg_need_typeid2,$cfg_cross_sectypeid; | ||||
| if (empty($cfg_need_typeid2)) $cfg_need_typeid2 = 'N'; | if (empty($cfg_need_typeid2)) $cfg_need_typeid2 = 'N'; | ||||
| //获得附加表的相关信息 | |||||
| $addtable = $this->ChannelUnit->ChannelInfos['addtable']; | |||||
| $filtersql = ''; | |||||
| if ($addtable!="") | |||||
| { | |||||
| //获得附加表的相关信息,联动单筛选 | |||||
| $addtable = $this->ChannelUnit->ChannelInfos['addtable']; | |||||
| if ($addtable!="") { | |||||
| $addJoin = " LEFT JOIN `$addtable` ON arc.id = ".$addtable.'.aid '; | $addJoin = " LEFT JOIN `$addtable` ON arc.id = ".$addtable.'.aid '; | ||||
| $addField = ''; | $addField = ''; | ||||
| $fields = explode(',',$this->ChannelUnit->ChannelInfos['listfields']); | $fields = explode(',',$this->ChannelUnit->ChannelInfos['listfields']); | ||||
| @@ -143,29 +140,21 @@ class ListView | |||||
| { | { | ||||
| $nfields[$v] = $k; | $nfields[$v] = $k; | ||||
| } | } | ||||
| if (is_array($this->ChannelUnit->ChannelFields) && !empty($this->ChannelUnit->ChannelFields)) | |||||
| { | |||||
| if (is_array($this->ChannelUnit->ChannelFields) && !empty($this->ChannelUnit->ChannelFields)) { | |||||
| foreach($this->ChannelUnit->ChannelFields as $k=>$arr) | foreach($this->ChannelUnit->ChannelFields as $k=>$arr) | ||||
| { | { | ||||
| if (isset($nfields[$k])) | |||||
| { | |||||
| if (isset($nfields[$k])) { | |||||
| if (!empty($arr['rename'])) { | if (!empty($arr['rename'])) { | ||||
| $addField .= ','.$addtable.'.'.$k.' as '.$arr['rename']; | $addField .= ','.$addtable.'.'.$k.' as '.$arr['rename']; | ||||
| } | |||||
| else { | |||||
| } else { | |||||
| $addField .= ','.$addtable.'.'.$k; | $addField .= ','.$addtable.'.'.$k; | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| if (isset($_REQUEST['tid'])) | |||||
| { | |||||
| foreach($_GET as $key => $value) { | |||||
| $value1 = explode("|", $value); | |||||
| foreach ($value1 as $valuea) | |||||
| { | |||||
| $filtersql .= ($key!="tid" && $key!="TotalResult" && $key!="PageNo") ? " AND find_in_set('".string_filter(urldecode($valuea))."', ".$addtable.".".string_filter($key).")" : ''; | |||||
| } | |||||
| if (isset($_REQUEST['tid'])) { | |||||
| foreach ($_GET as $key => $value) { | |||||
| $filtersql .= ($key!="tid" && $key!="TotalResult" && $key!="PageNo") ? " AND $addtable.".string_filter($key)." = '".string_filter(urldecode($value))."'" : ''; | |||||
| } | } | ||||
| } | } | ||||
| } else { | } else { | ||||
| @@ -218,8 +207,8 @@ class ListView | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| if ($this->TotalResult==-1) | |||||
| { | |||||
| if ($this->TotalResult==-1) { | |||||
| //添加联动单筛选 | |||||
| $cquery = "SELECT COUNT(*) AS dd FROM `#@__arctiny` arc $addJoin WHERE ".$this->addSql.$filtersql; | $cquery = "SELECT COUNT(*) AS dd FROM `#@__arctiny` arc $addJoin WHERE ".$this->addSql.$filtersql; | ||||
| $row = $this->dsql->GetOne($cquery); | $row = $this->dsql->GetOne($cquery); | ||||
| if (is_array($row)) { | if (is_array($row)) { | ||||
| @@ -632,9 +621,8 @@ class ListView | |||||
| } else { | } else { | ||||
| $ordersql = " ORDER BY arc.sortrank $orderWay"; | $ordersql = " ORDER BY arc.sortrank $orderWay"; | ||||
| } | } | ||||
| $filtersql = ''; | |||||
| //获得附加表的相关信息 | //获得附加表的相关信息 | ||||
| $addtable = $this->ChannelUnit->ChannelInfos['addtable']; | |||||
| $addtable = $this->ChannelUnit->ChannelInfos['addtable']; | |||||
| if ($addtable!="") | if ($addtable!="") | ||||
| { | { | ||||
| $addJoin = " LEFT JOIN `$addtable` ON arc.id = ".$addtable.'.aid '; | $addJoin = " LEFT JOIN `$addtable` ON arc.id = ".$addtable.'.aid '; | ||||
| @@ -659,14 +647,11 @@ class ListView | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| if (isset($_REQUEST['tid'])) | |||||
| { | |||||
| foreach($_GET as $key => $value) { | |||||
| $value1 = explode("|", $value); | |||||
| foreach ($value1 as $valuea) | |||||
| { | |||||
| $filtersql .= ($key!="tid" && $key!="TotalResult" && $key!="PageNo") ? " AND find_in_set('".string_filter(urldecode($valuea))."', ".$addtable.".".string_filter($key).")" : ''; | |||||
| } | |||||
| //添加联动单筛选 | |||||
| if (isset($_REQUEST['tid'])) { | |||||
| foreach($_GET as $key => $value) | |||||
| { | |||||
| $filtersql .= ($key!="tid" && $key!="TotalResult" && $key!="PageNo") ? " AND $addtable.".string_filter($key)." = '".string_filter(urldecode($value))."'" : ''; | |||||
| } | } | ||||
| } | } | ||||
| } else { | } else { | ||||
| @@ -681,7 +666,7 @@ class ListView | |||||
| else { | else { | ||||
| $t1 = ExecTime(); | $t1 = ExecTime(); | ||||
| $ids = array(); | $ids = array(); | ||||
| $query = "SELECT id FROM `#@__arctiny` arc $addJoin WHERE {$this->addSql} $filtersql $ordersql LIMIT $limitstart,$row "; | |||||
| $query = "SELECT id FROM `#@__arctiny` arc $addJoin WHERE {$this->addSql} $filtersql $ordersql LIMIT $limitstart,$row"; | |||||
| $this->dsql->SetQuery($query); | $this->dsql->SetQuery($query); | ||||
| $this->dsql->Execute(); | $this->dsql->Execute(); | ||||
| while ($arr = $this->dsql->GetArray()) { | while ($arr = $this->dsql->GetArray()) { | ||||
| @@ -875,9 +860,7 @@ class ListView | |||||
| } | } | ||||
| for ($j; $j <= $total_list; $j++) { | for ($j; $j <= $total_list; $j++) { | ||||
| if ($j == $this->PageNo) { | if ($j == $this->PageNo) { | ||||
| //$listdd .= "<li class='page-item active'><span class='page-link'>$j</span></li>\r\n"; | |||||
| $listdd .= "<li class='page-item'><a class='page-link' href='".$typedir."'>'.$j.'</a></li>\r\n"; | |||||
| $listdd .= "<li class='page-item active'><span class='page-link'>$j</span></li>\r\n"; | |||||
| } else { | } else { | ||||
| $listdd .= "<li class='page-item'><a class='page-link' href='".str_replace("{page}", $j, $tnamerule)."'>".$j."</a></li>\r\n"; | $listdd .= "<li class='page-item'><a class='page-link' href='".str_replace("{page}", $j, $tnamerule)."'>".$j."</a></li>\r\n"; | ||||
| } | } | ||||
| @@ -927,20 +910,22 @@ class ListView | |||||
| $geturl = "tid=".$this->TypeID."&TotalResult=".$this->TotalResult."&"; | $geturl = "tid=".$this->TypeID."&TotalResult=".$this->TotalResult."&"; | ||||
| $purl .= '?'.$geturl; | $purl .= '?'.$geturl; | ||||
| $optionlist = ''; | $optionlist = ''; | ||||
| //$hidenform = "<input type='hidden' name='tid' value='".$this->TypeID."'>\r\n"; | |||||
| //$hidenform .= "<input type='hidden' name='TotalResult' value='".$this->TotalResult."'>\r\n"; | |||||
| //添加联动单筛选 | |||||
| foreach($_GET as $key => $value) { | |||||
| $pageaddurl .= ($key!="tid" && $key!="TotalResult" && $key!="PageNo") ? "&".string_filter($key)."=".string_filter($value) : ''; | |||||
| } | |||||
| //获得上一页和下一页的链接 | //获得上一页和下一页的链接 | ||||
| if ($this->PageNo != 1) { | if ($this->PageNo != 1) { | ||||
| $prepage .= "<li class='page-item'><a href='".$purl."PageNo=$prepagenum' class='page-link'>上一页</a></li>\r\n"; | |||||
| $indexpage = "<li class='page-item'><a href='".$purl."PageNo=1' class='page-link'>首页</a></li>\r\n"; | |||||
| $prepage .= "<li class='page-item'><a href='".$purl."PageNo=$prepagenum".$pageaddurl."' class='page-link'>上一页</a></li>\r\n"; | |||||
| $indexpage = "<li class='page-item'><a href='".$purl."PageNo=1".$pageaddurl."' class='page-link'>首页</a></li>\r\n"; | |||||
| } else { | } else { | ||||
| $indexpage = "<li class='page-item'><a class='page-link'>首页</a></li>\r\n"; | |||||
| $indexpage = "<li class='page-item'><span class='page-link'>首页</span></li>\r\n"; | |||||
| } | } | ||||
| if ($this->PageNo != $totalpage && $totalpage > 1) { | if ($this->PageNo != $totalpage && $totalpage > 1) { | ||||
| $nextpage .= "<li class='page-item'><a href='".$purl."PageNo=$nextpagenum' class='page-link'>下一页</a></li>\r\n"; | |||||
| $endpage = "<li class='page-item'><a href='".$purl."PageNo=$totalpage' class='page-link'>末页</a></li>\r\n"; | |||||
| $nextpage .= "<li class='page-item'><a href='".$purl."PageNo=$nextpagenum".$pageaddurl."' class='page-link'>下一页</a></li>\r\n"; | |||||
| $endpage = "<li class='page-item'><a href='".$purl."PageNo=$totalpage".$pageaddurl."' class='page-link'>末页</a></li>\r\n"; | |||||
| } else { | } else { | ||||
| $endpage = "<li class='page-item'><a class='page-link'>末页</a></li>\r\n"; | |||||
| $endpage = "<li class='page-item'><span class='page-link'>末页</span></li>\r\n"; | |||||
| } | } | ||||
| //获得数字链接 | //获得数字链接 | ||||
| $listdd = ""; | $listdd = ""; | ||||
| @@ -959,9 +944,9 @@ class ListView | |||||
| } | } | ||||
| for ($j; $j <= $total_list; $j++) { | for ($j; $j <= $total_list; $j++) { | ||||
| if ($j == $this->PageNo) { | if ($j == $this->PageNo) { | ||||
| $listdd .= "<li class='page-item active'><a class='page-link'>$j</a></li>\r\n"; | |||||
| $listdd .= "<li class='page-item active'><span class='page-link'>$j</span></li>\r\n"; | |||||
| } else { | } else { | ||||
| $listdd .= "<li class='page-item'><a href='".$purl."PageNo=$j' class='page-link'>".$j."</a></li>\r\n"; | |||||
| $listdd .= "<li class='page-item'><a href='".$purl."PageNo=$j".$pageaddurl."' class='page-link'>".$j."</a></li>\r\n"; | |||||
| } | } | ||||
| } | } | ||||
| $plist = ""; | $plist = ""; | ||||
| @@ -500,14 +500,14 @@ class TagList | |||||
| $purl = $this->tagsDir.'/'.$this->TagInfos['id']; | $purl = $this->tagsDir.'/'.$this->TagInfos['id']; | ||||
| //获得上一页和下一页的链接 | //获得上一页和下一页的链接 | ||||
| if ($this->PageNo != 1) { | if ($this->PageNo != 1) { | ||||
| $prepage .= "<li class='page-item'><a class='page-link' href='".$purl."/$prepagenum/'>上一页</a></li>\r\n"; | |||||
| $indexpage = "<li class='page-item'><a class='page-link' href='".$purl."/1/'>首页</a></li>\r\n"; | |||||
| $prepage .= "<li class='page-item'><a href='".$purl."/$prepagenum/' class='page-link'>上一页</a></li>\r\n"; | |||||
| $indexpage = "<li class='page-item'><a href='".$purl."/1/' class='page-link'>首页</a></li>\r\n"; | |||||
| } else { | } else { | ||||
| $indexpage = "<li class='page-item'><span class='page-link'>首页</span></li>\r\n"; | $indexpage = "<li class='page-item'><span class='page-link'>首页</span></li>\r\n"; | ||||
| } | } | ||||
| if ($this->PageNo != $totalpage && $totalpage > 1) { | if ($this->PageNo != $totalpage && $totalpage > 1) { | ||||
| $nextpage .= "<li class='page-item'><a class='page-link' href='".$purl."/$nextpagenum/'>下一页</a></li>\r\n"; | |||||
| $endpage = "<li class='page-item'><a class='page-link' href='".$purl."/$totalpage/'>末页</a></li>\r\n"; | |||||
| $nextpage .= "<li class='page-item'><a href='".$purl."/$nextpagenum/' class='page-link'>下一页</a></li>\r\n"; | |||||
| $endpage = "<li class='page-item'><a href='".$purl."/$totalpage/' class='page-link'>末页</a></li>\r\n"; | |||||
| } else { | } else { | ||||
| $endpage = "<li class='page-item'><span class='page-link'>末页</span></li>\r\n"; | $endpage = "<li class='page-item'><span class='page-link'>末页</span></li>\r\n"; | ||||
| } | } | ||||
| @@ -530,7 +530,7 @@ class TagList | |||||
| if ($j == $this->PageNo) { | if ($j == $this->PageNo) { | ||||
| $listdd .= "<li class='page-item active'><span class='page-link'>$j</span></li>\r\n"; | $listdd .= "<li class='page-item active'><span class='page-link'>$j</span></li>\r\n"; | ||||
| } else { | } else { | ||||
| $listdd .= "<li class='page-item'><a class='page-link' href='".$purl."/$j/'>".$j."</a></li>\r\n"; | |||||
| $listdd .= "<li class='page-item'><a href='".$purl."/$j/' class='page-link'>".$j."</a></li>\r\n"; | |||||
| } | } | ||||
| } | } | ||||
| $plist = ""; | $plist = ""; | ||||
| @@ -467,7 +467,7 @@ if (!function_exists('pasterTempletDiy')) { | |||||
| $dtp->Display(); | $dtp->Display(); | ||||
| } | } | ||||
| } | } | ||||
| //多选联动筛选标签{dede:php}AddFilter(模型id,类型,"字段1,字段2");{/dede:php} | |||||
| //联动单筛选标签{dede:php}AddFilter(模型id,类型,'字段1,字段2');{/dede:php} | |||||
| function litimgurls($imgid = 0) | function litimgurls($imgid = 0) | ||||
| { | { | ||||
| global $lit_imglist, $dsql; | global $lit_imglist, $dsql; | ||||
| @@ -499,72 +499,66 @@ function string_filter($str, $stype = "inject") | |||||
| } | } | ||||
| return $str; | return $str; | ||||
| } | } | ||||
| //联动筛选载入自定义表单发布 | |||||
| function AddFilter($channelid, $type = 1, $fieldsnamef = "", $defaulttid = 0, $loadtype = 'autofield') | |||||
| //联动单筛选自定义表单发布 | |||||
| function AddFilter($channelid, $type=1, $fieldsnamef=array(), $defaulttid=0, $toptid=0, $loadtype='autofield') | |||||
| { | { | ||||
| global $tid, $dsql, $id; | |||||
| global $tid, $dsql, $id, $aid; | |||||
| $tid = $defaulttid ? $defaulttid : $tid; | $tid = $defaulttid ? $defaulttid : $tid; | ||||
| $id = intval($id); | |||||
| $tid = intval($tid); | |||||
| $channelid = intval($channelid); | |||||
| if ($id != "") { | |||||
| $tidsq = $dsql->GetOne("SELECT typeid FROM `#@__archives` WHERE id='$id'"); | |||||
| $tid = $tidsq["typeid"]; | |||||
| if ($id!="" || $aid!="") | |||||
| { | |||||
| $arcid = $id!="" ? $id : $aid; | |||||
| $tidsq = $dsql->GetOne("SELECT * FROM `#@__archives` WHERE id='$arcid'"); | |||||
| $tid = $toptid==0 ? $tidsq["typeid"] : $tidsq["topid"]; | |||||
| } | } | ||||
| $nofilter = (isset($_REQUEST['TotalResult']) ? "&TotalResult=".(int)$_REQUEST['TotalResult'] : '').(isset($_REQUEST['PageNo']) ? "&PageNo=".(int)$_REQUEST['PageNo'] : ''); | |||||
| $filterarr = string_filter(stripos($_SERVER['REQUEST_URI'], "list.php?tid=") ? str_replace($nofilter, '', $_SERVER['REQUEST_URI']) : $GLOBALS['cfg_cmsurl']."/apps/list.php?tid=".$tid); | |||||
| $nofilter = (isset($_REQUEST['TotalResult']) ? "&TotalResult=".$_REQUEST['TotalResult'] : '').(isset($_REQUEST['PageNo']) ? "&PageNo=".$_REQUEST['PageNo'] : ''); | |||||
| $filterarr = string_filter(stripos($_SERVER['REQUEST_URI'], "list.php?tid=") ? str_replace($nofilter, '', $_SERVER['REQUEST_URI']) : $GLOBALS['cfg_cmsurl']."/plus/list.php?tid=".$tid); | |||||
| $cInfos = $dsql->GetOne("SELECT * FROM `#@__channeltype` WHERE id='$channelid'"); | $cInfos = $dsql->GetOne("SELECT * FROM `#@__channeltype` WHERE id='$channelid'"); | ||||
| $fieldset = stripslashes($cInfos['fieldset']); | |||||
| $fieldset=$cInfos['fieldset']; | |||||
| $dtp = new DedeTagParse(); | $dtp = new DedeTagParse(); | ||||
| $dtp->SetNameSpace('field', '<', '>'); | |||||
| $dtp->SetNameSpace('field','<','>'); | |||||
| $dtp->LoadSource($fieldset); | $dtp->LoadSource($fieldset); | ||||
| $dede_addonfields = ''; | $dede_addonfields = ''; | ||||
| if (is_array($dtp->CTags)) { | |||||
| foreach ($dtp->CTags as $tida => $ctag) { | |||||
| if(is_array($dtp->CTags)) | |||||
| { | |||||
| foreach($dtp->CTags as $tida=>$ctag) | |||||
| { | |||||
| $fieldsname = $fieldsnamef ? explode(",", $fieldsnamef) : explode(",", $ctag->GetName()); | $fieldsname = $fieldsnamef ? explode(",", $fieldsnamef) : explode(",", $ctag->GetName()); | ||||
| if (($loadtype != 'autofield' || ($loadtype == 'autofield' && $ctag->GetAtt('autofield') == 1)) && in_array($ctag->GetName(), $fieldsname)) { | |||||
| if(($loadtype!='autofield' || ($loadtype=='autofield' && $ctag->GetAtt('autofield')==1)) && in_array($ctag->GetName(), $fieldsname) ) | |||||
| { | |||||
| $href1 = explode($ctag->GetName().'=', $filterarr); | $href1 = explode($ctag->GetName().'=', $filterarr); | ||||
| $href2 = explode('&', $href1[1]); | $href2 = explode('&', $href1[1]); | ||||
| $fields_value = $href2[0]; | $fields_value = $href2[0]; | ||||
| $fields_value1 = explode('|', $fields_value); | |||||
| $dede_addonfields .= ''.$ctag->GetAtt('itemname').':'; | |||||
| switch ($type) { | switch ($type) { | ||||
| case 1: | case 1: | ||||
| $dede_addonfields .= (preg_match("/&".$ctag->GetName()."=/is", $filterarr, $regm) ? '<a href="'.str_replace("&".$ctag->GetName()."=".$fields_value, "", $filterarr).'" style="display:inline-block;padding:.25rem .5rem;line-height:1.5;color:#fff;background:#1eb867;border-color:#1eb867;border-radius:.2rem">全部</a>' : '<span style="display:inline-block;padding:.25rem .5rem;line-height:1.5;color:#fff;background:#dc3545;border-color:#dc3545;border-radius:.2rem">全部</span>').' '; | |||||
| $addonfields_items = explode(",", $ctag->GetAtt('default')); | |||||
| for ($i = 0; $i < count($addonfields_items); $i++) { | |||||
| $href = stripos($filterarr, $ctag->GetName().'=') ? str_replace("=".$fields_value, "=".$fields_value."|".urlencode($addonfields_items[$i]), $filterarr) : $filterarr.'&'.$ctag->GetName().'='.urlencode($addonfields_items[$i]); | |||||
| $is_select = in_array(urlencode($addonfields_items[$i]), $fields_value1) ? 1 : 0; | |||||
| $fields_value2 = ""; | |||||
| for ($j = 0; $j < count($fields_value1); $j++) { | |||||
| $fields_value2 .= $fields_value1[$j] != urlencode($addonfields_items[$i]) ? $fields_value1[$j].($j < count($fields_value1) - 1 ? "|" : "") : ""; | |||||
| } | |||||
| $fields_value2 = rtrim($fields_value2, "|"); | |||||
| $href3 = str_replace(array("&".$ctag->GetName()."=".$fields_value, $ctag->GetName()."=".$fields_value, "&".$ctag->GetName()."=&"), array("&".$ctag->GetName()."=".$fields_value2, $ctag->GetName()."=".$fields_value2, "&"), $filterarr); | |||||
| $href3 = !end(explode("=", $href3)) ? str_replace("&".end(explode("&", $href3)), "", $href3) : $href3; | |||||
| $dede_addonfields .= ($fields_value != urlencode($addonfields_items[$i]) && $is_select != 1 ? '<a title="'.$addonfields_items[$i].'" href="'.$href.'" style="display:inline-block;padding:.25rem .5rem;line-height:1.5;color:#fff;background:#1eb867;border-color:#1eb867;border-radius:.2rem">'.$addonfields_items[$i].'</a>' : '<a title="'.$addonfields_items[$i].'" href="'.$href3.'" style="display:inline-block;padding:.25rem .5rem;line-height:1.5;color:#fff;background:#dc3545;border-color:#dc3545;border-radius:.2rem">'.$addonfields_items[$i].'<span style="margin-left:6px;color:#fff">×</span></a>')." "; | |||||
| } | |||||
| $dede_addonfields .= '<br>'; | |||||
| break; | |||||
| $dede_addonfields .= (preg_match("/&".$ctag->GetName()."=/is",$filterarr,$regm) ? '<a href="'.str_replace("&".$ctag->GetName()."=".$fields_value,"",$filterarr).'">全部</a>' : '<a class="current" href="'.str_replace("&".$ctag->GetName()."=".$fields_value,"",$filterarr).'">全部</a>'); | |||||
| $addonfields_items = explode(",",$ctag->GetAtt('default')); | |||||
| for ($i=0; $i<count($addonfields_items); $i++) | |||||
| { | |||||
| $href = stripos($filterarr,$ctag->GetName().'=') ? str_replace("=".$fields_value,"=".urlencode($addonfields_items[$i]),$filterarr) : $filterarr.'&'.$ctag->GetName().'='.urlencode($addonfields_items[$i]); | |||||
| $dede_addonfields .= ($fields_value!=urlencode($addonfields_items[$i]) ? '<a title="'.$addonfields_items[$i].'" href="'.$href.'">'.$addonfields_items[$i].'</a>' : '<a class="current" href="'.$href.'">'.$addonfields_items[$i].'</a>'); | |||||
| } | |||||
| break; | |||||
| case 2: | case 2: | ||||
| $dede_addonfields .= (preg_match("/&".$ctag->GetName()."=/is", $filterarr, $regm) ? '<a href="'.str_replace("&".$ctag->GetName()."=".$fields_value, "", $filterarr).'">全部</a>' : '<span>全部</span>').' '; | |||||
| $addonfields_items = explode(",", $ctag->GetAtt('default')); | |||||
| for ($i = 0; $i < count($addonfields_items); $i++) { | |||||
| $href = stripos($filterarr, $ctag->GetName().'=') ? str_replace("=".$fields_value, "=".$fields_value."|".urlencode($addonfields_items[$i]), $filterarr) : $filterarr.'&'.$ctag->GetName().'='.urlencode($addonfields_items[$i]); | |||||
| $is_select = in_array(urlencode($addonfields_items[$i]), $fields_value1) ? 1 : 0; | |||||
| $fields_value2 = ""; | |||||
| for ($j = 0; $j < count($fields_value1); $j++) { | |||||
| $fields_value2 .= $fields_value1[$j] != urlencode($addonfields_items[$i]) ? $fields_value1[$j].($j < count($fields_value1) - 1 ? "|" : "") : ""; | |||||
| } | |||||
| $fields_value2 = rtrim($fields_value2, "|"); | |||||
| $href3 = str_replace(array("&".$ctag->GetName()."=".$fields_value, $ctag->GetName()."=".$fields_value, "&".$ctag->GetName()."=&"), array("&".$ctag->GetName()."=".$fields_value2, $ctag->GetName()."=".$fields_value2, "&"), $filterarr); | |||||
| $href3 = !end(explode("=", $href3)) ? str_replace("&".end(explode("&", $href3)), "", $href3) : $href3; | |||||
| $dede_addonfields .= ($fields_value != urlencode($addonfields_items[$i]) && $is_select != 1 ? '<input type="checkbox" title="'.$addonfields_items[$i].'" value="'.$href.'" onclick="window.location=this.value"> <a title="'.$addonfields_items[$i].'" href="'.$href.'">'.$addonfields_items[$i].'</a>' : '<input type="checkbox" checked="checked" title="'.$addonfields_items[$i].'" value="'.$href3.'" onclick="window.location=this.value"> <a title="'.$addonfields_items[$i].'" href="'.$href3.'" class="cur">'.$addonfields_items[$i].'</a>')." "; | |||||
| } | |||||
| $dede_addonfields .= '<br>'; | |||||
| break; | |||||
| $dede_addonfields .= '<select name="filter'.$ctag->GetName().'" onchange="window.location=this.options[this.selectedIndex].value"> | |||||
| '.'<option value="'.str_replace("&".$ctag->GetName()."=".$fields_value,"",$filterarr).'">全部</option>'; | |||||
| $addonfields_items = explode(",",$ctag->GetAtt('default')); | |||||
| for ($i=0; $i<count($addonfields_items); $i++) | |||||
| { | |||||
| $href = stripos($filterarr,$ctag->GetName().'=') ? str_replace("=".$fields_value,"=".urlencode($addonfields_items[$i]),$filterarr) : $filterarr.'&'.$ctag->GetName().'='.urlencode($addonfields_items[$i]); | |||||
| $dede_addonfields .= '<option value="'.$href.'"'.($fields_value==urlencode($addonfields_items[$i]) ? ' selected="selected"' : '').'>'.$addonfields_items[$i].'</option> | |||||
| '; | |||||
| } | |||||
| $dede_addonfields .= '</select>'; | |||||
| break; | |||||
| case 3: | |||||
| $dede_addonfields .= (preg_match("/&".$ctag->GetName()."=/is",$filterarr,$regm) ? '<a title="全部" href="'.str_replace("&".$ctag->GetName()."=".$fields_value,"",$filterarr).'"><input type="radio" name="filter'.$ctag->GetName().'" value="'.str_replace("&".$ctag->GetName()."=".$fields_value,"",$filterarr).'" onclick="window.location=this.value">全部</a>' : '<span><input type="radio" name="filter'.$ctag->GetName().'" checked="checked">全部</span>'); | |||||
| $addonfields_items = explode(",",$ctag->GetAtt('default')); | |||||
| for ($i=0; $i<count($addonfields_items); $i++) | |||||
| { | |||||
| $href = stripos($filterarr,$ctag->GetName().'=') ? str_replace("=".$fields_value,"=".urlencode($addonfields_items[$i]),$filterarr) : $filterarr.'&'.$ctag->GetName().'='.urlencode($addonfields_items[$i]); | |||||
| $dede_addonfields .= ($fields_value!=urlencode($addonfields_items[$i]) ? '<a title="'.$addonfields_items[$i].'" href="'.$href.'"><input type="radio" name="filter'.$ctag->GetName().'" value="'.$href.'" onclick="window.location=this.value">'.$addonfields_items[$i].'</a>' : '<span><input type="radio" name="filter'.$ctag->GetName().'" checked="checked">'.$addonfields_items[$i].'</span>'); | |||||
| } | |||||
| break; | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| @@ -7,7 +7,7 @@ | |||||
| * @link https://www.dedebiz.com | * @link https://www.dedebiz.com | ||||
| */ | */ | ||||
| //如果启用安全模式,后台将禁用例如:模板管理、标签管理、数据库管理等存在较高安全风险的功能,关闭安全模式`TRUE`改为`FALSE` | //如果启用安全模式,后台将禁用例如:模板管理、标签管理、数据库管理等存在较高安全风险的功能,关闭安全模式`TRUE`改为`FALSE` | ||||
| define('DEDEBIZ_SAFE_MODE', FALSE); | |||||
| define('DEDEBIZ_SAFE_MODE', TRUE); | |||||
| //生产环境使用`production`,如果采用`dev`模式,会有一些php的报错信息提示,便于开发调试 | //生产环境使用`production`,如果采用`dev`模式,会有一些php的报错信息提示,便于开发调试 | ||||
| if (!defined('DEDE_ENVIRONMENT')) { | if (!defined('DEDE_ENVIRONMENT')) { | ||||
| define('DEDE_ENVIRONMENT', 'production'); | define('DEDE_ENVIRONMENT', 'production'); | ||||
| @@ -364,8 +364,8 @@ function FillUrl($refurl, $surl) | |||||
| * @access public | * @access public | ||||
| * @param string $regxurl 正则地址 | * @param string $regxurl 正则地址 | ||||
| * @param string $handurl 操作地址 | * @param string $handurl 操作地址 | ||||
| * @param string $startid 开始ID | |||||
| * @param string $endid 结束ID | |||||
| * @param string $startid 开始id | |||||
| * @param string $endid 结束id | |||||
| * @param string $addv 增值 | * @param string $addv 增值 | ||||
| * @param string $usemore 使用更多 | * @param string $usemore 使用更多 | ||||
| * @param string $batchrule 列表规则 | * @param string $batchrule 列表规则 | ||||