示例#1
0
 function usersCommon()
 {
     parent::__construct(__CLASS__);
     $this->_tree->setObject('_ROOT', array('LastModified'));
     //'Roles'-serialized array
     $this->_tree->setObject('_USERGROUP', array('LastModified', 'Name', 'Roles'), array('_ROOT'));
     $this->_tree->setObject('_SUPERADMIN', array('LastModified', 'Password', 'Name', 'Email'), array('_ROOT'));
     $this->_tree->setObject('_USER', array('LastModified', 'Password', 'Name', 'Email'), array('_USERGROUP'));
     /*    $this->_tree->delete()->where(array('@id','>',1))->run();
             
     
          $id   = $this->_tree->initTreeObj(1, '%SAMEASID%', '_USERGROUP', array(
                 'StartPage' => ''
             ));
             
             $this->_tree->initTreeObj(1, 'admin', '_SUPERADMIN', array(
                 'Password' => md5(strrev('dexter')),
                 'Email'=>'*****@*****.**'
             ));
             
          */
     $this->rolesTree = new xte('usersRoles_container', xRegistry::get('xPDO'));
     $this->rolesTree->setObject('_ROOT', array('LastModified'));
     $this->rolesTree->setObject('_ROLE', array('Name'), '_ROOT');
     $this->rolesTree->setObject('_MODULE', array('is_accesible'), '_ROLE');
     $this->rolesTree->setObject('_PERMISSION', array('module', 'obj_id', 'read', 'write', 'delete', 'deep'), '_ROLE');
     $this->rv = array('update' => 1, 'delete' => 2, 'add' => 4, 'read' => 8);
 }
示例#2
0
文件: core.php 项目: umaxfun/x4m
 function __construct()
 {
     $this->_TMS = xRegistry::get('TMS');
     $this->_EVM = xRegistry::get('EVM');
 }
示例#3
0
文件: adm.class.php 项目: umaxfun/x4m
 function __construct()
 {
     $this->_TMS = xRegistry::get('TMS');
     xNameSpaceHolder::addObjectToNS('module.adminPanel.back', $this);
 }
示例#4
0
 public function getPageIdByPath($path)
 {
     global $REQUEST_VARS;
     $treePath = XARRAY::clearEmptyItems(explode('/', $path), true);
     $this->root = $this->_tree->getNodeInfo(1);
     $this->domain = $this->_tree->selectStruct('*')->selectParams('*')->where(array('@basic', '=', HTTP_HOST), array('@ancestor', '=', 1))->run();
     $this->domain = $this->domain[0];
     $langVersions = $this->getLangVersions($this->domain['id']);
     $langVersionsStack = XARRAY::arr_to_keyarr($langVersions, 'id', 'basic');
     if (!$treePath) {
         if (!$this->domain['params']['StartPage']) {
             return;
         }
         //здесь заглушка - по умолчанию должен выбирать первую языковую версию если другое не указано
         $this->langVersion = $langVersions[$langVersionsStack[$this->domain['params']['StartPage']]];
         if (!$this->langVersion['params']['StartPage']) {
             return;
         }
         //здесь заглушка - по умолчанию должен выбирать первую страницу
         $this->page = $this->_tree->getNodeInfo($this->langVersion['params']['StartPage']);
         if ($this->pageFinalPoint() === false) {
             return false;
         } else {
             return true;
         }
     } else {
         if (($lang = array_search($treePath[0], $langVersionsStack) !== false) && $langVersions[$treePath[0]]) {
             $this->langVersion = $langVersions[$treePath[0]];
         } else {
             foreach ($langVersions as $lKey => $lVersion) {
                 if ($this->domain['params']['StartPage'] == $lVersion['id']) {
                     $this->langVersion = $langVersions[$lKey];
                 }
             }
             reset($langVersions);
             if (!$this->langVersion) {
                 $this->langVersion = current($langVersions);
             }
             array_unshift($treePath, $this->langVersion['basic']);
             $this->_commonObj->nativeLangVersion = $this->langVersion['basic'];
         }
         array_unshift($treePath, HTTP_HOST);
         if (!($node = $this->_tree->idByBasicPath($treePath, array('_DOMAIN', '_LVERSION', '_PAGE', '_GROUP'), true))) {
             return false;
         }
         $this->page = $this->_tree->getNodeInfo($node['id']);
         if ($this->page['obj_type'] == '_PAGE') {
             if ($this->_tree->readNodeParam($this->page['ancestor'], 'StartPage') == $this->page['id']) {
                 if (xRegistry::get('TPA')->pathParams) {
                     $pathParams = '/~' . xRegistry::get('TPA')->pathParams;
                 }
                 $this->move_301_permanent(CHOST . '/' . $this->_commonObj->createPagePath($this->page['id'], true) . $pathParams);
             }
         }
         if ($this->pageFinalPoint() === false) {
             return false;
         } else {
             $bones = array_slice($this->page['path'], 3);
             $bones[] = $this->page['id'];
             if (!empty($bones)) {
                 $this->bones = $this->_tree->selectStruct('*')->selectParams('*')->getBasicPath('/', true)->where(array('@id', '=', $bones))->format('keyval', 'id')->run();
             }
             array_unshift($this->bones, $this->langVersion);
             return true;
         }
     }
 }