File: /www/wwwroot/bs.kntsleep.com/system/admin/home/shortcut.class.php
<?php
/*
* Copyright (c) Huyin Information Technology Co., Ltd. All Rights Reserved.
* BOSSCMS Content Management System (https://www.bosscms.net/)
*/
defined('IS_OK') or exit('Access Forbidden');
into::basic_class('admin');
into::basic_json('navadm');
class shortcut extends admin
{
public function init()
{
global $G;
$data = json::decode($G['config']['shortcut']);
$n = count($data);
foreach($data as $k=>$v){
$data[$k]['sort'] = $n-$k;
$data[$k]['name'] = $v['name'];
}
echo $this->theme('home/shortcut',$data);
}
public function modify()
{
global $G;
if(isset($G['post']['id'])){
$shortcut = json::decode($G['config']['shortcut']);
$n = count($shortcut);
$data = array();
foreach($shortcut as $k=>$v){
if(in_array($k,$G['post']['id'])){
$data[$G['post']['sort'.$k].'.'.$k] = $v;
}else{
$data[$n-$k] = $v;
}
}
krsort($data);
mysql::select_set(array('name'=>'shortcut','value'=>json::enfilter(array_values($data)),'parent'=>'0','type'=>'1','lang'=>'0'),'config',array('value'));
alert('修改成功', url::mpf('home','shortcut','init'));
}else{
alert('没有提交信息');
}
}
public function edit()
{
global $G;
$shortcut = json::decode($G['config']['shortcut']);
if(isset($G['get']['id'])){
$data = $shortcut[$G['get']['id']];
}
$data['navadm'] = $this->navadm(true);
echo $this->theme('home/edit',$data);
}
public function add()
{
global $G;
if($G['post']){
$data = json::decode($G['config']['shortcut']);
$arr = array(
'name' => delFilter($G['post']['name']),
'link' => delFilter($G['post']['link']),
'icon' => delFilter($G['post']['icon'])
);
if(isset($G['get']['id'])){
$data[$G['get']['id']] = $arr;
}else{
$data[] = $arr;
}
mysql::select_set(array('name'=>'shortcut','value'=>json::enfilter($data),'parent'=>'0','type'=>'1','lang'=>'0'),'config',array('value'));
alert('保存成功', url::mpf('home','shortcut','edit',array('id'=>$id,'success'=>'ok')));
}
alert('没有提交信息');
}
public function delete()
{
global $G;
if(isset($G['post']['url']) && isset($G['get']['id'])){
$data = json::decode($G['config']['shortcut']);
$arr = explode(',',$G['get']['id']);
foreach($arr as $id){
unset($data[$id]);
}
mysql::select_set(array('name'=>'shortcut','value'=>json::enfilter(array_values($data)),'parent'=>'0','type'=>'1','lang'=>'0'),'config',array('value'));
alert('删除成功',url::mpf('home','shortcut','init',array('id'=>null)));
}
alert('没有提交信息');
}
public function navadm($font=false)
{
global $G;
$data = array();
foreach($G['navadm'] as $key=>$val){
foreach($val['child'] as $ke=>$va){
$data[$key.P.$ke] = $va['name'];
if(strstr($val['icon'],'plugin')){
$res = page::plugin_list();
foreach($res as $v){
$va['child'][] = array(
'mold' => $v['name'],
'part' => $v['name'],
'name' => arrExist(load::plugin($v['name']),'title')
);
}
}
foreach($va['child'] as $k=>$v){
$mp = $v['mold'].($v['part']?'&'.$v['part']:'');
if($G['manager']['level']==1 || strstr($G['manager']['permit'],"\"{$mp}\"")){
$data[$mp] = ($font?'<font> ⤷ </font>':'').$v['name'];
}
}
}
}
return $data;
}
}
?>