Esempio n. 1
0
 function LoadItems($class, &$db_records)
 {
     $db = db_class::get_instance();
     for ($i = 0; $i < count($db_records); $i++) {
         $collection_item = new $class();
         $collection_item->LoadItem($db_records[$i]);
         $this->_collection[] = $collection_item;
     }
 }
Esempio n. 2
0
 public function Delete()
 {
     if ($this->_v['role_id'] > 0 && $this->_v['file_id'] > 0) {
         $db = db_class::get_instance();
         $query = 'DELETE FROM "' . TABLE_FILE_ROLE . '" WHERE "role_id"=\'' . $db->str2base($this->_v['role_id']) . '\' AND "file_id"=\'' . $db->str2base($this->_v['file_id']) . '\'';
         $db->query($query);
         return true;
     }
     return false;
 }
Esempio n. 3
0
 public function Delete()
 {
     if ($this->_v['id_module_action'] > 0) {
         $db = db_class::get_instance();
         $query = 'DELETE FROM "' . TABLE_MODULE_ACTION . '" WHERE "id_module_action"=\'' . $db->str2base($this->_v['id_module_action']) . '\'';
         $db->query($query);
         return true;
     }
     return false;
 }
Esempio n. 4
0
 public function Delete()
 {
     if ($this->_v['last_active_date'] > 0 && $this->_v['employee_id'] > 0) {
         $db = db_class::get_instance();
         $query = 'DELETE FROM "' . TABLE_EMPLOYEE_ONLINE . '" WHERE "last_active_date"=\'' . $db->str2base($this->_v['last_active_date']) . '\' AND "employee_id"=\'' . $db->str2base($this->_v['employee_id']) . '\'';
         $db->query($query);
         return true;
     }
     return false;
 }
Esempio n. 5
0
 public function Delete()
 {
     if ($this->_v['item_id'] > 0 && $this->_v['file_id'] > 0 && $this->_v['type'] != '') {
         $db = db_class::get_instance();
         $query = 'DELETE FROM "' . TABLE_FILE_ATTACH . '" WHERE "item_id"=\'' . $db->str2base($this->_v['item_id']) . '\' AND "file_id"=\'' . $db->str2base($this->_v['file_id']) . '\' AND "type"=\'' . $db->str2base($this->_v['type']) . '\'';
         $db->query($query);
         return true;
     }
     return false;
 }
Esempio n. 6
0
 public function __construct()
 {
     $db = db_class::get_instance();
     $sql = 'SELECT id_module, module FROM ' . TABLE_MODULE;
     $db->query($sql);
     $resources = $db->value;
     $sql = 'SELECT id_role, name FROM ' . TABLE_ROLE;
     $db->query($sql);
     $roles = $db->value;
     $sql = 'SELECT module_action_id, auto_enabled_action_id FROM ' . TABLE_MODULE_AUTO_ACTION;
     $db->query($sql);
     $auto_actions = $db->value;
     $enable_action = array();
     foreach ($auto_actions as $a) {
         $enable_action[$a['module_action_id']][] = $a['auto_enabled_action_id'];
     }
     $res = array();
     foreach ($resources as $r) {
         $resource = new Zend_Acl_Resource($r['module']);
         $this->add($resource);
         $res[$r['id_module']] = $resource;
     }
     foreach ($roles as $r) {
         $role = new Zend_Acl_Role($r['name']);
         $this->addRole($role);
         $this->allow($role, 'news', 'view');
         //Разрешение на просмотр объявлений всем
         $sql = '
                     SELECT id_module_action, action, module_id
                     FROM ' . TABLE_MODULE_ACTION . '
                     RIGHT JOIN ' . TABLE_ROLE_ACTION . ' ON module_action_id=id_module_action
                     WHERE role_id = ' . $r['id_role'] . ' AND public_flag=\'yes\'
                  ';
         $db->query($sql);
         $actions = $db->value;
         foreach ($actions as $a) {
             $this->allow($role, $res[$a['module_id']], $a['action']);
             if (array_key_exists($a['id_module_action'], $enable_action) && count($enable_action[$a['id_module_action']]) > 0) {
                 $sql = '
                             SELECT action, module_id
                             FROM ' . TABLE_MODULE_ACTION . '
                             WHERE id_module_action IN (' . join(',', $enable_action[$a['id_module_action']]) . ') AND public_flag=\'no\'
                         ';
                 $db->query($sql);
                 $auto_actions = $db->value;
                 foreach ($auto_actions as $action) {
                     $this->allow($role, $res[$action['module_id']], $action['action']);
                 }
             }
         }
     }
     $this->allow('Администратор', null, null);
 }
Esempio n. 7
0
 public function CheckActionEnable(&$STORAGE, $action)
 {
     if (check_current_employee_admin($STORAGE)) {
         return true;
     }
     $db = db_class::get_instance();
     switch ($action) {
         case 'view':
         case 'edit':
         case 'delete':
             return true;
         default:
             return false;
     }
     return false;
 }
Esempio n. 8
0
 public function IsValidData()
 {
     $errors = array();
     if (!is_numeric($this->_v['id_module'])) {
         $errors[] = '[SYSTEM] id_module должно быть числом';
     }
     if (!trim($this->_v['name'])) {
         $errors[] = 'Название роли обязательно к заполнению';
     } else {
         $db = db_class::get_instance();
         $query = 'SELECT "id_module" FROM "' . TABLE_MODULE . '" WHERE ';
         if ($this->_v['id_module'] > 0) {
             $query .= ' id_module!=' . $this->_v['id_module'] . ' AND ';
         }
         $query .= ' "name"=\'' . $this->_v['name'] . '\'';
         $db->query($query);
         if (count($db->value) > 0) {
             $errors[] = 'Роль с таким названием уже существует';
         }
     }
     return $errors;
 }
Esempio n. 9
0
<?php

header("Content-type:text/xml");
$id = get_request_variable('id', 'root');
if ($id != 'root') {
    $id = intval($id);
}
$db = db_class::get_instance();
if ($id === 0) {
    echo '<?xml version="1.0" ?>' . "\n";
}
if ($id === 'root') {
    $categories = new io_categories();
    $categories->id = null;
    $childs = $categories->ChildExists();
    echo '<tree id="root">' . "\n";
    echo '<item text="ККС СИТО" id="0" child="' . ($childs ? 1 : 0) . '"></item>';
    echo '</tree>' . "\n";
} else {
    $type_collection = new collection();
    $type_collection->Load(TABLE_CATEGORIES, false, $id > 0 ? 'id=' . $id . ' AND is_main=TRUE' : 'is_main=TRUE', ' name ASC');
    echo '<tree id="' . $id . '">' . "\n";
    for ($i = 0; $i < count($type_collection->_collection); $i++) {
        $childs = $type_collection->_collection[$i]->ChildExists();
        if ($id == 0) {
            echo '<item child="' . ($childs ? 1 : 0) . '" id="' . $type_collection->_collection[$i]->id . '" text="' . escape($type_collection->_collection[$i]->name) . '" im0="folderOpen.gif" im1="folderOpen.gif" im2="folderClosed.gif">';
        }
        if ($childs == true) {
            $child = $type_collection->_collection[$i]->id_child;
            if ($child > 0 && $id > 0) {
                $type_coll = new collection();
Esempio n. 10
0
 public function DeleteRoleVariables()
 {
     if ($this->_v['id_role'] > 0) {
         $db = db_class::get_instance();
         $query = 'DELETE FROM "' . TABLE_ROLE_VARIABLE . '" WHERE "role_id"=' . $this->_v['id_role'];
         $db->query($query);
         return true;
     }
     return false;
 }
Esempio n. 11
0
 function MoveSource($source, $destination)
 {
     $from = dirname(preg_replace('/[\\/]{2,}/', '/', $source . '/')) . '/';
     $to = preg_replace('/[\\/]{2,}/', '/', $destination . '/');
     $db = db_class::get_instance();
     $query = '
             UPDATE "' . TABLE_FILE . '"
             SET
                 path = CONCAT(\'' . $db->str2base($to) . '\', SUBSTRING(path, CHAR_LENGTH(\'' . $db->str2base($from) . '\')+1))
             WHERE LOCATE(\'' . $db->str2base($from) . '\', path)=1
          ';
     $db->query($query);
 }
Esempio n. 12
0
 public function GetNextOrder()
 {
     $db = db_class::get_instance();
     $query = 'SELECT MAX(order) AS next FROM "' . TABLE_VARIABLE . '" WHERE "module"=\'' . $db->str2base($this->_v['module']) . '\'';
     $db->query($query);
     return intval($db->value[0]['next']) + 1;
 }
Esempio n. 13
0
 public function UpdateLastActive()
 {
     if ($this->EmployeeDayExist()) {
         $db = db_class::get_instance();
         $query = 'UPDATE "' . TABLE_EMPLOYEE_DAY . '" ' . 'SET "last_active"=\'' . $db->str2base($this->_v['last_active']) . '\'' . 'WHERE "employee_id"=\'' . $this->_v['employee_id'] . '\' ' . 'AND "date"=\'' . $db->str2base($this->_v['date']) . '\'';
         $db->query($query);
     }
 }
Esempio n. 14
0
 public function ObjectExists()
 {
     $db = db_class::get_instance();
     if (is_null($this->_v['id'])) {
         $query = 'SELECT COUNT(*) AS num FROM ' . TABLE_IO_RUBRICATOR . ' WHERE id_rubric IS NULL';
     } else {
         $query = 'SELECT COUNT(*) AS num FROM ' . TABLE_IO_RUBRICATOR . ' WHERE id_rubric=' . intval($this->_v['id']);
     }
     $db->query($query);
     if ($db->value[0]['num'] > 0) {
         return true;
     }
     return false;
 }