Ejemplo n.º 1
0
 /**
  * Конструктор
  *
  * Вызывает конструктор родительского класса
  * Инициирует имя таблицы БД
  */
 public function __construct()
 {
     $arrBindFields = filesys::getSerializedData('core/data/vacancy.bindfields.mda') or $arrBindFields = array();
     $arrNoBindFields = filesys::getSerializedData('core/data/vacancy.nobindfields.mda') or $arrNoBindFields = array();
     $this->arrBindFields = array_merge($this->arrBindFields, $arrBindFields);
     $this->arrNoBindFields = array_merge($this->arrNoBindFields, $arrNoBindFields);
     $this->setTable('vacancy');
     parent::__construct(array('caching/vacancy.last.cache', 'caching/vacancy.api.last.cache'));
 }
Ejemplo n.º 2
0
 /**
  * Конструктор
  *
  * Вызывает конструктор родительского класса
  * Инициирует имя таблицы БД
  * Инициирует массив данных хранимых в XML-формате
  *
  */
 public function __construct()
 {
     $arrBindFields = filesys::getSerializedData('core/data/resume.bindfields.mda') or $arrBindFields = array();
     $arrNoBindFields = filesys::getSerializedData('core/data/resume.nobindfields.mda') or $arrNoBindFields = array();
     $this->arrBindFields = array_merge($this->arrBindFields, $arrBindFields);
     $this->arrNoBindFields = array_merge($this->arrNoBindFields, $arrNoBindFields);
     $this->arrFieldsXmlData['educations'][1] = filesys::getSerializedData('core/data/resume.education.mda') or $this->arrFieldsXmlData['educations'][1] = array();
     $this->arrFieldsXmlData['expires'][1] = filesys::getSerializedData('core/data/resume.expire.mda') or $this->arrFieldsXmlData['expires'][1] = array();
     $this->arrFieldsXmlData['languages'][2] = $this->arrFieldsXmlData['languages'][1] = filesys::getSerializedData('core/data/resume.language.mda') or $this->arrFieldsXmlData['languages'][2] = $this->arrFieldsXmlData['languages'][1] = array();
     $this->setTable('resume');
     parent::__construct(array('caching/resume_m.last.cache', 'caching/resume_v.last.cache', 'caching/resume.api.last.cache'));
 }
Ejemplo n.º 3
0
 /**
  * Функция возвращает массив доступной для показа рекламы (active) по ключу
  * @param string $key (один из ключей расположения рекламы)
  * @return array
  */
 public function get($key)
 {
     if (!in_array($key, self::$adPosition)) {
         return array();
     }
     $dbData = filesys::getSerializedData(self::$dbFile);
     $ret = array();
     foreach ($dbData[$key] as $value) {
         if ('active' == $value['token']) {
             $ret[] = $value;
         }
     }
     return $ret;
 }
Ejemplo n.º 4
0
 /**
  * Функция логирует входы в админку
  * Если вход выполнен успешно, вместо пароля будет записано true (в целях защиты инф-ции)
  * 
  * @param array $arrData - массив данных, для записи в лог (array('login' => $_POST['login'], 'password' => $_POST['password'] or false))
  * @param bool $status - признак авторизации. TRUE - успешно, FALSE - ошибка
  * 
  * @return void
  */
 static function logAdminAccess($arrData, $status)
 {
     /*
     $mess = "\n" . '================== ' . ($status ? 'SUCCESS' : 'FAIL') . ' (' . terms::currentDateTime()  . ') ==================' . "\n"
       	  . 'LOGIN: '******'login'] . "\n"
       	  . 'PASSWORD: '******'yes' === $arrData['password'] ? 'true' : $arrData['password']) . "\n"
     	  //. '$_POST DATA: ' . serialize($_POST) . "\n\n" - отключил, т.к. массив содержит логин и пароль администратора, что недопустимо логировать.
     	  . 'USER IP: ' . $_SERVER['REMOTE_ADDR'] . "\n"
     	  . 'USER ID: ' . (!isset($_SESSION['sd_user']['data']) ? 'false' : $_SESSION['sd_user']['data']['id']) . "\n"
     	  . 'USER LOGIN: '******'sd_user']['data']) ? 'false' : $_SESSION['sd_user']['data']['email']) . "\n"
     	  . '============================================================================' . "\n\n";
     
     @error_log($mess, 3, 'core/data/log/adm.access.log');
     */
     // Формируем данные для записи в MDA-файл
     $mdaData = filesys::getSerializedData('core/data/log/adm.access.mda');
     $mdaData[] = array('login' => $arrData['login'], 'password' => 'yes' === $arrData['password'] ? 'true' : $arrData['password'], 'ip' => $_SERVER['REMOTE_ADDR'], 'user_id' => !isset($_SESSION['sd_user']['data']) ? 'false' : $_SESSION['sd_user']['data']['id'], 'user_login' => !isset($_SESSION['sd_user']['data']) ? 'false' : $_SESSION['sd_user']['data']['email'], 'datetime' => terms::currentDateTime());
     filesys::putSerializedData('core/data/log/adm.access.mda', $mdaData);
 }
Ejemplo n.º 5
0
 /**
  * конструктор
  *
  * Инициирует private свойства $arrPayments и $subscription
  *
  */
 protected function __construct($arrCacheFilesAdd = false)
 {
     // инициируем список платных услуг
     !empty($GLOBALS['arrPayments']) ? $this->arrPayments =& $GLOBALS['arrPayments'] : null;
     // инициируем объект подписки
     $this->subscription = new subscription();
     // инициируем массив сортировки
     !($this->arrAnnSortList = filesys::getSerializedData('core/data/' . $this->retTableName() . '.list.sort.mda')) ? $this->arrAnnSortList = array('act_datetime' => 'ASC') : null;
     // массив (список) файлов кешируемых данных
     $arrCacheFiles = array();
     if (!CONF_DISABLE_AUTO_COUNTERS) {
         $arrCacheFiles = array('caching/region.cache', 'caching/city.cache', 'caching/section.cache', 'caching/profession.cache', 'caching/statistic.cache');
     }
     // добавляем в список данные
     !empty($arrCacheFilesAdd) && is_array($arrCacheFilesAdd) ? $arrCacheFiles = array_merge($arrCacheFiles, $arrCacheFilesAdd) : null;
     // формируем массив параметров для вызова конструктора родительского класса
     $arrParams = array('arrCacheFiles' => &$arrCacheFiles, 'tIdForce' => true);
     // вызываем конструктор родительского класса
     parent::__construct($arrParams);
 }
     }
     $arrResumeTitle = array('title' => array('discription' => ANNOUNCE_PAGE_TITLE_DESCRIPT_TITLE, 'varValue' => '&$return_data[\'title\']', 'varChecked' => false), 'id_section' => array('discription' => ANNOUNCE_PAGE_TITLE_DESCRIPT_ID_SECTION, 'varValue' => '&$arrDataSections[$return_data[\'id_section\']][\'name\']', 'varChecked' => false), 'id_profession' => array('discription' => ANNOUNCE_PAGE_TITLE_DESCRIPT_ID_PROFESSION, 'varValue' => '&$arrDataProfession[$return_data[\'id_profession\']][\'name\']', 'varChecked' => false), 'id_region' => array('discription' => ANNOUNCE_PAGE_TITLE_DESCRIPT_ID_REGION, 'varValue' => '&$arrDataRegions[$return_data[\'id_region\']][\'name\']', 'varChecked' => false), 'id_city' => array('discription' => ANNOUNCE_PAGE_TITLE_DESCRIPT_ID_CITY, 'varValue' => '&$arrDataCity[$return_data[\'id_city\']][\'name\']', 'varChecked' => false));
     $smarty->assign('pTitle', $arrTitle + $arrResumeTitle);
 }
 /**
  * Настройки анкеты - Резюме
  */
 if ($arrActions['confQuestResume']) {
     // инициируем "Наименование страницы" отображаемое в форме
     $arrNamePage[] = array('name' => MENU_ANNOUNCES_RESUMES, 'link' => false);
     $arrNamePage[] = array('name' => MENU_ANNOUNCES_CONFIG_QUESTIONARY, 'link' => false);
     $arrBindFields = filesys::getSerializedData('core/data/resume.bindfields.mda') or $arrBindFields = array();
     $arrNoBindFields = filesys::getSerializedData('core/data/resume.nobindfields.mda') or $arrNoBindFields = array();
     $arrEducation = filesys::getSerializedData('core/data/resume.education.mda') or $arrEducation = array();
     $arrExpire = filesys::getSerializedData('core/data/resume.expire.mda') or $arrExpire = array();
     $arrLanguage = filesys::getSerializedData('core/data/resume.language.mda') or $arrLanguage = array();
     $arrBasicFields = array('arrBindFields' => &$arrBindFields, 'arrNoBindFields' => &$arrNoBindFields);
     if (isset($_POST['save'])) {
         // сохраняем данные, переданные из формы
         /**
          * Определяем массивы, если пришел пустой результат
          */
         if (empty($_POST['arrBasicFields']['arrBindFields']) || !is_array($_POST['arrBasicFields']['arrBindFields'])) {
             $_POST['arrBasicFields']['arrBindFields'] = array();
         }
         if (empty($_POST['arrEducation']['arrBindFields']) || !is_array($_POST['arrEducation']['arrBindFields'])) {
             $_POST['arrEducation']['arrBindFields'] = array();
         }
         if (empty($_POST['arrExpire']['arrBindFields']) || !is_array($_POST['arrExpire']['arrBindFields'])) {
             $_POST['arrExpire']['arrBindFields'] = array();
         }
Ejemplo n.º 7
0
 /**
  * Функция получает кешированные данные из файла
  *
  * @param (string) $file - путь к файлу
  *
  * @return (array or bool)
  */
 static function getCahing($file)
 {
     return filesys::getSerializedData($file);
 }
Ejemplo n.º 8
0
 /**
  * Функция настройки робота для удаления файлов кеша
  * 
  * @param (array) $arrData - массив значений, содержащий список файлов кеша для удаления роботом
  * 
  * @return bool
  */
 static function putClearCacheData(&$arrData)
 {
     $arrRobotData = filesys::getSerializedData('core/data/robot.mda');
     $arrRobotData['clear_cache'] = $arrData;
     return filesys::putSerializedData('core/data/robot.mda', $arrRobotData);
 }
Ejemplo n.º 9
0
 static function saveLogData()
 {
     if (!empty(self::$logData)) {
         $logData = filesys::getSerializedData(CONF_UPDATES_PATH_TO_LOG_FILES . terms::currentDate() . '_update.log');
         if (is_array($logData)) {
             self::$logData = array_merge($logData, self::$logData);
         }
         filesys::putSerializedData(CONF_UPDATES_PATH_TO_LOG_FILES . terms::currentDate() . '_update.log', self::$logData);
         self::clearLogData();
     }
 }
Ejemplo n.º 10
0
 /**
  * static функция получения данных кто онлайн
  * 
  * @return array
  */
 static function getWhoOnline(&$arrXmlTemplate, &$objUser)
 {
     $sides = array_merge($arrXmlTemplate['left_side'], $arrXmlTemplate['right_side']);
     if (false !== array_search('block.who.online.tpl', $sides)) {
         $currTime = time();
         $currSessionId = session_id();
         if (!($arrWhoOnline = filesys::getSerializedData('core/data/who.online.mda'))) {
             $arrWhoOnline = array('guests' => array(), 'users' => array());
         } else {
             foreach ($arrWhoOnline as $type => $whoOnline) {
                 foreach ($whoOnline as $key => $timestamp) {
                     if ($currTime > $timestamp || $currSessionId === $key) {
                         unset($arrWhoOnline[$type][$key]);
                     }
                 }
             }
         }
         $keyWhoOnline = !$objUser->getAuthorized() ? 'guests' : 'users';
         $arrWhoOnline[$keyWhoOnline][$currSessionId] = $currTime + 180;
         filesys::putSerializedData('core/data/who.online.mda', $arrWhoOnline);
         $arrWhoOnline = array('guests' => count($arrWhoOnline['guests']), 'users' => count($arrWhoOnline['users']));
     } else {
         $arrWhoOnline = false;
     }
     return $arrWhoOnline;
 }
Ejemplo n.º 11
0
     $payments = new payments();
     // платные услуги
     $arrData = array('title' => trim($_POST['modTitle']), 'description' => trim($_POST['modDescr']));
     $strWhere = "id=" . secure::escQuoteData($_POST['savePamentModData']);
     if ($payments->getRecord($strWhere)) {
         if ($payments->updateRecords($arrData, $strWhere)) {
             echo ajax::sdgJSONencode(array('success' => true));
         } else {
             echo ajax::sdgJSONencode(array('error' => MESSAGE_CHANGE_NOT_SAVED));
         }
     } else {
         echo ajax::sdgJSONencode(array('error' => ERROR_COULD_NOT_FOUND_RECORD_TO_UPDATE));
     }
 } elseif (!empty($_POST['getUpdatesLogsDetail'])) {
     if (file_exists(CONF_UPDATES_PATH_TO_LOG_FILES . $_POST['getUpdatesLogsDetail'])) {
         $arrData = filesys::getSerializedData(CONF_UPDATES_PATH_TO_LOG_FILES . $_POST['getUpdatesLogsDetail']);
         if (!empty($arrData) && is_array($arrData)) {
             $smarty->assignByRef('arrData', $arrData);
             $smarty->display('adm.system.updates.logs.detail.tpl');
         } else {
             echo 'errorUncorrectParams';
         }
     } else {
         echo 'errorFileNotExists';
     }
 } elseif (!empty($_POST['deleteDBCache'])) {
     if (caching::dropCache()) {
         echo ajax::sdgJSONencode(array('success' => true));
     } else {
         echo ajax::sdgJSONencode(array('error' => true));
     }
Ejemplo n.º 12
0
 /**
  * Функция выполнения импорта
  * 
  * @return (string) - JSON-строка с описанием текущего состояния процесса импорта
  */
 static function mdsDoImportDB()
 {
     if ($arrData = filesys::getSerializedData('core/data/mdsImport.mda')) {
         foreach ($arrData as $table => &$arrDataTable) {
             $arrQueryData = array_shift($arrDataTable);
             $oldId =& $arrQueryData['old_id'];
             unset($arrQueryData['old_id']);
             $newId = db::dbInsertTable($table, secure::escQuoteData($arrQueryData));
             switch ($table) {
                 case USR_PREFIX . 'city':
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_city' => $newId, 'token' => 'reserved'), 'strWhere' => "id_city IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_city' => $newId, 'token' => 'deleted'), 'strWhere' => "id_city IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_city' => $newId, 'token' => 'reserved'), 'strWhere' => "id_city IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_city' => $newId, 'token' => 'deleted'), 'strWhere' => "id_city IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_city' => $newId, 'token' => 'reserved'), 'strWhere' => "id_city IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_city' => $newId, 'token' => 'deleted'), 'strWhere' => "id_city IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case USR_PREFIX . 'region':
                     $arrUpdateQuerys[USR_PREFIX . 'city'][] = array('arrData' => array('parent_id' => $newId, 'token' => 'reserved'), 'strWhere' => "parent_id IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_region' => $newId, 'token' => 'reserved'), 'strWhere' => "id_region IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_region' => $newId, 'token' => 'deleted'), 'strWhere' => "id_region IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_region' => $newId, 'token' => 'reserved'), 'strWhere' => "id_region IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_region' => $newId, 'token' => 'deleted'), 'strWhere' => "id_region IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_region' => $newId, 'token' => 'reserved'), 'strWhere' => "id_region IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_region' => $newId, 'token' => 'deleted'), 'strWhere' => "id_region IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case DB_PREFIX . 'profession':
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_profession' => $newId, 'token' => 'reserved'), 'strWhere' => "id_profession IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_profession' => $newId, 'token' => 'deleted'), 'strWhere' => "id_profession IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_profession' => $newId, 'token' => 'reserved'), 'strWhere' => "id_profession IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_profession' => $newId, 'token' => 'deleted'), 'strWhere' => "id_profession IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_profession' => $newId, 'token' => 'reserved'), 'strWhere' => "id_profession IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_profession' => $newId, 'token' => 'deleted'), 'strWhere' => "id_profession IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case DB_PREFIX . 'section':
                     $arrUpdateQuerys[DB_PREFIX . 'profession'][] = array('arrData' => array('parent_id' => $newId, 'token' => 'reserved'), 'strWhere' => "parent_id IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_section' => $newId, 'token' => 'reserved'), 'strWhere' => "id_section IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_section' => $newId, 'token' => 'deleted'), 'strWhere' => "id_section IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_section' => $newId, 'token' => 'reserved'), 'strWhere' => "id_section IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_section' => $newId, 'token' => 'deleted'), 'strWhere' => "id_section IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_section' => $newId, 'token' => 'reserved'), 'strWhere' => "id_section IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_section' => $newId, 'token' => 'deleted'), 'strWhere' => "id_section IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case DB_PREFIX . 'vacancy':
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_announce' => $newId, 'token' => 'reserved'), 'strWhere' => "id_announce IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_announce' => $newId, 'token' => 'deleted'), 'strWhere' => "id_announce IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case DB_PREFIX . 'resume':
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_announce' => $newId, 'token' => 'reserved'), 'strWhere' => "id_announce IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_announce' => $newId, 'token' => 'deleted'), 'strWhere' => "id_announce IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case USR_PREFIX . 'users':
                     $arrData[DB_PREFIX . 'conf_users'][$oldId]['id'] = $newId;
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_user' => $newId, 'token' => 'reserved'), 'strWhere' => "id_user IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'subscription'][] = array('arrData' => array('id_user' => $newId, 'token' => 'deleted'), 'strWhere' => "id_user IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_user' => $newId, 'token' => 'reserved'), 'strWhere' => "id_user IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('id_user' => $newId, 'token' => 'deleted'), 'strWhere' => "id_user IN ('{$oldId}') AND token IN ('archived')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_user' => $newId, 'token' => 'reserved'), 'strWhere' => "id_user IN ('{$oldId}') AND token IN ('active')");
                     $arrUpdateQuerys[DB_PREFIX . 'resume'][] = array('arrData' => array('id_user' => $newId, 'token' => 'deleted'), 'strWhere' => "id_user IN ('{$oldId}') AND token IN ('archived')");
                     break;
                 case DB_PREFIX . 'conf_users':
                     'competitor' !== $arrQueryData['user_type'] ? $arrUpdateQuerys[DB_PREFIX . 'vacancy'][] = array('arrData' => array('user_type' => $arrQueryData['user_type']), 'strWhere' => "id_user IN ('" . $arrQueryData['id'] . "')") : null;
                     break;
                 default:
                     break;
             }
             if (!empty($arrUpdateQuerys)) {
                 foreach ($arrUpdateQuerys as $keyT => &$valueT) {
                     foreach ($valueT as &$arrUpdData) {
                         db::dbUpdateTable($keyT, secure::escQuoteData($arrUpdData['arrData']), $arrUpdData['strWhere']);
                     }
                     db::dbUpdateTable($keyT, secure::escQuoteData(array('token' => 'active')), "token IN ('reserved')");
                     db::dbUpdateTable($keyT, secure::escQuoteData(array('token' => 'archived')), "token IN ('deleted')");
                 }
             }
             if (empty($arrDataTable)) {
                 unset($arrData[$table]);
             }
             DB_PREFIX . 'conf_users' == $table ? $table = USR_PREFIX . 'users' : null;
             if (!empty($arrData)) {
                 filesys::putSerializedData('core/data/mdsImport.mda', $arrData);
                 $result = array('onProgress' => true, 'table' => &$table);
             } else {
                 @unlink('core/data/mdsImport.mda');
                 caching::dropCache();
                 $result = array('onProgress' => false, 'table' => &$table);
             }
             return ajax::sdgJSONencode($result);
         }
     } else {
         caching::dropCache();
         return ajax::sdgJSONencode(array('onProgress' => false));
     }
 }
Ejemplo n.º 13
0
                }
            }
            if (!$flag) {
                $dbData[$_POST['ad_position']][] = array('code' => $_POST['advert'], 'htmlcode' => htmlentities($_POST['advert'], ENT_COMPAT, CONF_DEFAULT_CHARSET), 'token' => isset($_POST['token']) ? 'active' : 'disabled');
            }
        }
        if (filesys::putSerializedData(adsimple::$dbFile, $dbData)) {
            messages::messageChangeSaved(MOD_ADSIMPLE_MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=mods&s=adsimple');
        } else {
            $arrErrors[] = MOD_ADSIMPLE_ERROR_CHANGE_NOT_SAVED;
        }
    } else {
        $arrErrors[] = MOD_ADSIMPLE_ERROR_EMPTY_FIELDS;
        $smarty->assign('return_data', array('ad_position' => $_POST['ad_position'], 'advert' => $_POST['advert'], 'token' => isset($_POST['token']) ? true : false));
    }
}
if (isset($_POST['delete'])) {
    $dbData = filesys::getSerializedData(adsimple::$dbFile);
    foreach ($_POST as $key => $value) {
        if (is_array($value)) {
            $dbData[$key] = array_diff_key($dbData[$key], $value);
        }
    }
    if (filesys::putSerializedData(adsimple::$dbFile, $dbData)) {
        messages::messageChangeSaved(MOD_ADSIMPLE_MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=mods&s=adsimple');
    } else {
        $arrErrors[] = MOD_ADSIMPLE_ERROR_CHANGE_NOT_SAVED;
    }
}
$smarty->assign('advert', filesys::getSerializedData(adsimple::$dbFile));
$smarty->assign('errors', $arrErrors);
Ejemplo n.º 14
0
 /**
  * метод получает список существующих модов из файла БД,
  * если файла не существует, данные модов берутся из таблицы БД
  * @return array
  */
 protected function getMods()
 {
     if (@file_exists($this->dbFile)) {
         return filesys::getSerializedData($this->dbFile);
     } else {
         // Работаем с БД
         $arrMods = array();
         $arrRecords = $this->pGetRecords("token IN ('active','disabled')", array('name' => 'ASC'), false, false);
         if (!empty($arrRecords) && is_array($arrRecords)) {
             // Это необходимо, чтобы массив соответствовал массиву,
             // который мы получаем из файла.
             // в данном случае, в качестве ключа используется имя мода
             foreach ($arrRecords as $value) {
                 $arrMods[$value['name']] = $value;
             }
         }
         return $arrMods;
     }
 }
Ejemplo n.º 15
0
!defined('SDG') ? die('Triple protection!') : null;
/**
* иницализация массива подключаемых шаблонов: по умолчанию все значения - false
* для подключения шаблона, необходимо установить значение - true
* шаблоны подключаются в порядке установленном в файле головного шаблона
*/
$arrActions = array('mds' => false);
// определяем шаблон для отображения
isset($_GET['action']) && isset($arrActions[$_GET['action']]) ? $arrActions[$_GET['action']] = true : null;
// инициируем "Наименование страницы" отображаемое в форме
$arrNamePage = array(array('name' => MENU_ADMIN_MAIN, 'link' => CONF_ADMIN_FILE), array('name' => MENU_SYSTEM, 'link' => false), array('name' => MENU_SYSTEM_IMPORT, 'link' => false));
if (!empty($arrActions['mds'])) {
    // инициируем "Наименование страницы" отображаемое в форме
    $arrNamePage[] = array('name' => MENU_SYSTEM_IMPORT_MDS, 'link' => false);
    if (file_exists('core/data/mdsImport.mda')) {
        $arrData = filesys::getSerializedData('core/data/mdsImport.mda');
        foreach ($arrData as $table => &$arrDataTable) {
            if (empty($arrData[USR_PREFIX . 'users']) && DB_PREFIX . 'conf_users' === $table) {
                $table = USR_PREFIX . 'users';
            } elseif (DB_PREFIX . 'conf_users' === $table) {
                continue;
            }
            $arrResult[] = array('table' => $table, 'size' => USR_PREFIX . 'users' === $table ? count($arrDataTable) * 2 : count($arrDataTable));
        }
        // передаем данные для отображения прогресса импорта
        $smarty->assign('importData', ajax::sdgJSONencode($arrResult));
        // включаем страницу отображения прогресса импорта
        $smarty->assign('importContinueProgress', true);
        // включаем предупреждение
        $arrWarnings[] = FORM_SYSTEM_IMPORT_WARNING;
        $smarty->assign('warnings', $arrWarnings);
Ejemplo n.º 16
0
	powered by Script Developers Group (SD-Group)
	email: info@sd-group.org.ua
	url: http://sd-group.org.ua/
	Copyright 2010-2015 (c) SD-Group
	All rights reserved
=========================================================
	Логи - Вход администратора
********************************************************/
/**
* @package
* @todo
*/
!defined('SDG') ? die('Triple protection!') : null;
// инициируем "Наименование страницы" отображаемое в форме
$arrNamePage = array(array('name' => MENU_ADMIN_MAIN, 'link' => CONF_ADMIN_FILE), array('name' => MENU_LOGS, 'link' => false), array('name' => MENU_LOGS_ADMIN_ACCESS, 'link' => false));
// Получаем данные из файла
$logData = filesys::getSerializedData('core/data/log/adm.access.mda');
// действия
if (isset($_POST['action'])) {
    // очистка логов
    if ('clear' === $_POST['action']) {
        if (@unlink('core/data/log/adm.access.mda')) {
            filesys::putSerializedData('core/data/log/adm.access.mda', array_slice($logData, -10));
            messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=logs&s=admin');
        } else {
            $arrErrors[] = ERROR_FILES_NOT_DELETE;
        }
    }
}
$smarty->assignByRef('logData', $logData);
$smarty->assignByRef('errors', $arrErrors);