Ejemplo n.º 1
0
 public function getAdminSidebarMenu()
 {
     Yii::import('ext.mbmenu.AdminMenu');
     $mod = new AdminMenu();
     $items = $mod->findMenu('shop');
     return $items['items'];
 }
Ejemplo n.º 2
0
 public static function submenu(Context $ctx, $query, array $pathinfo)
 {
     AdminPage::checkperm($ctx, $pathinfo);
     $router = new Router();
     $router->poll($ctx);
     $menu = new AdminMenu($router->getStatic());
     if (false === ($submenu = $menu->getSubMenu($ctx))) {
         throw new PageNotFoundException();
     }
     if (false === ($content = $submenu->getXML($ctx, 'content', array('type' => 'submenu')))) {
         throw new PageNotFoundException();
     }
     $page = new AdminPage($content);
     return $page->getResponse($ctx);
 }
Ejemplo n.º 3
0
 public static function newInstance()
 {
     if (!self::$instance instanceof self) {
         self::$instance = new self();
     }
     return self::$instance;
 }
Ejemplo n.º 4
0
 public static function Inst()
 {
     if (!isset(self::$inst)) {
         $class_name = __CLASS__;
         self::$inst = new $class_name();
     }
     return self::$inst;
 }
Ejemplo n.º 5
0
 public function run()
 {
     $this->menus = AdminMenu::GetUserMenu();
     //        foreach($menu as $name=>$m){
     //            $menuArray[] = array('label'=>$name,'url'=>array($m['url']));
     //        }
     //        $extraMenu = array(array('label'=>'Home', 'url'=>array('/site/index')),
     //            array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),
     //            array('label'=>'Contact', 'url'=>array('/site/contact')),
     //            array('label'=>'Login', 'url'=>array('/site/login'), 'visible'=>Yii::app()->user->isGuest),
     //            array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)
     //        );
     //        $this->menus = array_merge($menuArray,$extraMenu);
     $this->render('adminMenu');
 }
Ejemplo n.º 6
0
 function render()
 {
     $out = "<ul class='admin_menu_section' id='" . htmlentities($this->id) . "'>\n<li class='sect_head'>";
     if ($this->url) {
         $out .= "<a href='" . AdminMenu::formatUrl($this->url) . "'>" . $this->title . "</a>";
     } else {
         $out .= $this->title;
     }
     $out .= "\n<ul class='admin_menu_indent'>\n";
     foreach ($this->_items as $i) {
         if (is_string($i)) {
             $out .= $i;
         } else {
             $out .= $i->render();
         }
     }
     $out .= "</ul></li>\n</ul>\n";
     return $out;
 }
Ejemplo n.º 7
0
require_once LIB_PATH . 'osclass/frm/User.form.class.php';
require_once LIB_PATH . 'osclass/frm/Language.form.class.php';
require_once LIB_PATH . 'osclass/frm/SendFriend.form.class.php';
require_once LIB_PATH . 'osclass/frm/Alert.form.class.php';
require_once LIB_PATH . 'osclass/frm/Field.form.class.php';
require_once LIB_PATH . 'osclass/frm/Admin.form.class.php';
require_once LIB_PATH . 'osclass/frm/ManageItems.form.class.php';
require_once LIB_PATH . 'osclass/frm/BanRule.form.class.php';
require_once LIB_PATH . 'osclass/functions.php';
require_once LIB_PATH . 'osclass/helpers/hAdminMenu.php';
define('__OSC_LOADED__', true);
// Moved from BaseModel, since we need some session magic on index.php;)
Session::newInstance()->session_start();
if (OC_ADMIN) {
    // init admin menu
    AdminMenu::newInstance()->init();
    $functions_path = AdminThemes::newInstance()->getCurrentThemePath() . 'functions.php';
    if (file_exists($functions_path)) {
        require_once $functions_path;
    }
} else {
    // init Rewrite class only if it's the frontend
    Rewrite::newInstance()->init();
}
if (osc_timezone() != '') {
    date_default_timezone_set(osc_timezone());
}
function osc_show_maintenance()
{
    if (defined('__OSC_MAINTENANCE__')) {
        ?>
Ejemplo n.º 8
0
function osc_current_menu()
{
    $menu_id = '';
    $current_menu = 'dash';
    $something_selected = false;
    $aMenu = AdminMenu::newInstance()->get_array_menu();
    $url_actual = '?' . $_SERVER['QUERY_STRING'];
    if (preg_match('/(^.*action=\\w+)/', $url_actual, $matches)) {
        $url_actual = $matches[1];
    } else {
        if (preg_match('/(^.*page=\\w+)/', $url_actual, $matches)) {
            $url_actual = $matches[1];
        } else {
            if ($url_actual == '?') {
                $url_actual = '';
            }
        }
    }
    foreach ($aMenu as $key => $value) {
        $aMenu_actions = array();
        $url = $value[1];
        $url = str_replace(osc_admin_base_url(true), '', $url);
        $url = str_replace(osc_admin_base_url(), '', $url);
        array_push($aMenu_actions, $url);
        if (array_key_exists('sub', $value)) {
            $aSubmenu = $value['sub'];
            if ($aSubmenu) {
                foreach ($aSubmenu as $aSub) {
                    $url = str_replace(osc_admin_base_url(true), '', $aSub[1]);
                    array_push($aMenu_actions, $url);
                }
            }
        }
        if (in_array($url_actual, $aMenu_actions)) {
            $something_selected = true;
            $menu_id = $value[2];
        }
    }
    if ($something_selected) {
        return $menu_id;
    }
    // try again without action
    $url_actual = preg_replace('/(&action=.+)/', '', $url_actual);
    foreach ($aMenu as $key => $value) {
        $aMenu_actions = array();
        $url = $value[1];
        $url = str_replace(osc_admin_base_url(true), '', $url);
        $url = str_replace(osc_admin_base_url(), '', $url);
        array_push($aMenu_actions, $url);
        if (array_key_exists('sub', $value)) {
            $aSubmenu = $value['sub'];
            if ($aSubmenu) {
                foreach ($aSubmenu as $aSub) {
                    $url = str_replace(osc_admin_base_url(true), '', $aSub[1]);
                    array_push($aMenu_actions, $url);
                }
            }
        }
        if (in_array($url_actual, $aMenu_actions)) {
            $something_selected = true;
            $menu_id = $value[2];
        }
    }
    return $menu_id;
}
Ejemplo n.º 9
0
 private static function getPage(Context $ctx, array $data)
 {
     $content = empty($data['content']) ? '' : $data['content'];
     $content .= self::getToolBar();
     $content .= mcms::getSignatureXML($ctx);
     $menu = new AdminMenu();
     $content .= $menu->getXML($ctx);
     if (!empty($content)) {
         $content = html::em('content', $content);
     }
     return self::render($ctx, array(), $content);
 }
 /**
  * 用户登陆
  */
 public function userLogin($checkData)
 {
     $result = array('status' => false, 'message' => '发生错误,处理失败');
     // 检查
     if (!isset($checkData['status']) || false == $checkData['status'] || empty($checkData['userData'])) {
         $result['message'] = '登录失败';
         return $result;
     }
     // 用户资料
     $userData = $checkData['userData'];
     // 获取权限
     $groupList = CModel::factory('adminUserGroupModel')->getGroupList();
     // 不存在管理组
     if (!isset($groupList[$userData['groupId']])) {
         // 记录日志
         $result['message'] = '没有权限登录(group)';
         return $result;
     }
     // 填充组信息
     $userData['groupData'] = $groupList[$userData['groupId']];
     // 获取菜单
     $menuData = AdminMenu::getUserMenu($userData);
     // 保存菜单
     $userData['menu'] = $menuData['menu'];
     // 保存权限
     $userData['rightAll'] = $menuData['allRight'];
     $userData['isInternal'] = intval(IPArea::isInternalIP());
     // 获取导航
     // 登陆地
     if ($userData['isInternal'] == 1) {
         $userData['loginArea'] = '公司内部';
     } else {
         $userData['loginArea'] = IPArea::getArea(CRequest::getIp());
     }
     // 保存状态
     CSession::set('user', $userData);
     $result = array('status' => true, 'urlPram' => array('c' => 'admin', 'a' => 'index'));
     // 返回数据
     return $result;
 }
Ejemplo n.º 11
0
 public static function emptyAdminMenu()
 {
     $adminMenu = new AdminMenu();
     $adminMenu->emptyAll();
 }
Ejemplo n.º 12
0
 /**
  * Добавление маршрутов.
  * @route GET//api/admin/menu.xml
  */
 public static function on_get_menu(Context $ctx)
 {
     $router = new Router();
     $router->poll($ctx);
     $menu = new AdminMenu($router->getStatic());
     return new Response($menu->getXML($ctx), 'text/xml');
 }