예제 #1
0
 public function proc()
 {
     //reg::setKey('/users/errorCountCapcha', system::POST('errorCountCapcha'));
     reg::setKey('/users/errorCountBlock', system::POST('errorCountBlock'));
     reg::setKey('/users/reg', system::POST('reg', isBool));
     reg::setKey('/users/activation', system::POST('activation', isBool));
     reg::setKey('/users/confirm', system::POST('confirm', isBool));
     reg::setKey('/users/ask_email', system::POST('ask_email', isBool));
     //авторизация чере соц. сети
     reg::setKey('/users/twitter_bool', system::POST('twitter_bool'), isBool);
     reg::setKey('/users/twitter_id', system::POST('twitter_id'), isString);
     reg::setKey('/users/twitter_secret', system::POST('twitter_secret'), isString);
     reg::setKey('/users/vk_bool', system::POST('vk_bool'), isBool);
     reg::setKey('/users/vk_id', system::POST('vk_id'), isString);
     reg::setKey('/users/vk_secret', system::POST('vk_secret'), isString);
     reg::setKey('/users/ok_bool', system::POST('ok_bool'), isBool);
     reg::setKey('/users/ok_id', system::POST('ok_id'), isString);
     reg::setKey('/users/ok_public', system::POST('ok_public'), isString);
     reg::setKey('/users/ok_secret', system::POST('ok_secret'), isString);
     reg::setKey('/users/facebook_bool', system::POST('facebook_bool'), isBool);
     reg::setKey('/users/facebook_id', system::POST('facebook_id'), isString);
     reg::setKey('/users/facebook_secret', system::POST('facebook_secret'), isString);
     reg::setKey('/users/yandex_bool', system::POST('yandex_bool'), isBool);
     reg::setKey('/users/google_bool', system::POST('google_bool'), isBool);
     ui::MessageBox(lang::get('CONFIG_SAVE_OK'), lang::get('CONFIG_SAVE_OK_MSG'));
     reg::clearCache();
     system::log(lang::get('CONFIG_LOG_SAVE'), warning);
     system::redirect('/users/settings');
 }
예제 #2
0
 public function proc()
 {
     reg::setKey('/comments/only_reg', system::POST('only_reg', isBool));
     reg::setKey('/comments/com_moderation', system::POST('com_moderation', isBool));
     reg::setKey('/comments/text_length', system::POST('text_length', isInt));
     ui::MessageBox(lang::get('CONFIG_SAVE_OK'), lang::get('CONFIG_SAVE_OK_MSG'));
     system::redirect('/comments/settings');
 }
예제 #3
0
 public function proc()
 {
     reg::setKey('/subscription/count_mails', system::POST('count_mails', isInt));
     reg::setKey('/subscription/count_mails_day', system::POST('count_mails_day', isInt));
     reg::clearCache();
     ui::MessageBox(lang::get('CONFIG_SAVE_OK'), lang::get('CONFIG_SAVE_OK_MSG'));
     system::redirect('/subscription/settings');
 }
예제 #4
0
 function changeText($id, $obj)
 {
     if (!empty($id)) {
         reg::setKey($id, $obj['text'], $obj['description']);
     } else {
         if (!empty($obj['text'])) {
             reg::addToList(ormPages::getPrefix() . '/minitext', $obj['text'], $obj['description']);
         }
     }
     return true;
 }
예제 #5
0
 public function proc()
 {
     reg::setKey('/eshop/only_reg', system::POST('only_reg', isBool));
     reg::setKey('/eshop/check_count', system::POST('check_count', isBool));
     reg::setKey('/eshop/dubl_to_email', system::POST('dubl_to_email', isBool));
     reg::setKey('/eshop/fisrt_state', system::POST('fisrt_state', isInt));
     $min_count = system::POST('min_count', isInt);
     if (empty($min_count)) {
         $min_count = '0';
     }
     reg::setKey('/eshop/min_count', $min_count);
     reg::clearCache();
     ui::MessageBox(lang::get('CONFIG_SAVE_OK'), lang::get('CONFIG_SAVE_OK_MSG'));
     system::redirect('/eshop/settings');
 }
예제 #6
0
 public function proc()
 {
     if (system::isAjax() && system::issetUrl(2)) {
         if (system::url(2) == 'start') {
             searchIndex::clear();
             reg::setKey(ormPages::getPrefix('search') . '/index_date', date('d.m.Y'));
             $sel = new ormSelect();
             $sel->fields('name');
             $sel->findInPages();
             $sel->where('active', '=', 1);
             $sel->where('in_search', '=', 1);
             echo $sel->getCount();
         } else {
             if (system::url(2) == 'info') {
                 $data = reg::getKey(ormPages::getPrefix('search') . '/index_date');
                 if (empty($data)) {
                     $data = '-';
                 }
                 system::json(array('pages' => searchIndex::getCountPages(), 'words' => searchIndex::getCountWords(), 'data' => $data));
             } else {
                 $sel = new ormSelect();
                 $sel->findInPages();
                 $sel->where('active', '=', 1);
                 $sel->where('in_search', '=', 1);
                 $sel->limit(system::url(2), 1);
                 searchIndex::indexPage($sel->getObject());
                 echo 'ok';
             }
         }
         system::stop();
     }
     if (system::POST('parram') == 'clear') {
         searchIndex::clear();
     }
     system::redirect('/search/index');
 }
예제 #7
0
 public function save()
 {
     if (!$this->issetErrors() && (empty($this->values['d_name']) || empty($this->values['d_def_lang']) || empty($this->values['d_email']) || empty($this->values['d_sitename']))) {
         $this->newError(61, 'Не все обязательные поля были заполнены!');
     }
     if ($this->issetErrors()) {
         return false;
     } else {
         if (!empty($this->id)) {
             // Изменение домена
             $sql = $this->getSql();
             if (!empty($sql)) {
                 db::q('UPDATE <<domains>> SET ' . $sql . ' WHERE d_id = "' . $this->id . '";');
             }
             system::log('Изменен домен "' . $this->values['d_name'] . '" (id:' . $this->id . ')', warning);
             // Переименовываем папки с шаблонами
             if ($this->old_name != $this->values['d_name']) {
                 $lang = languages::getAll();
                 while (list($key, $val) = each($lang)) {
                     if ($this->id != 1 || $val['l_id'] != 1) {
                         $old_name = '/__' . str_replace('.', '_', $this->old_name) . '_' . $val['l_prefix'];
                         $new_name = '/__' . str_replace('.', '_', $this->values['d_name']) . '_' . $val['l_prefix'];
                         @rename(TEMPL_DIR . $old_name, TEMPL_DIR . $new_name);
                     }
                 }
             }
             return true;
         } else {
             // Добавление домена
             $sql = $this->getSql();
             if (!empty($sql)) {
                 $this->id = db::q('INSERT INTO <<domains>> SET ' . $sql . ';');
             }
             if (!empty($this->id)) {
                 $lang = languages::getAll();
                 while (list($key, $val) = each($lang)) {
                     rights::createForStructure($this->id, $val['id']);
                     $templ = new template();
                     $templ->setName('default');
                     $templ->setFile('default');
                     $templ->setLangId($val['id']);
                     $templ->setDomainId($this->id);
                     $templ->save();
                     reg::setKey('/structure/' . $this->id . '/' . $val['id'] . '/title_prefix', '%text% | ' . $this->values['d_sitename']);
                     reg::setKey('/structure/' . $this->id . '/' . $val['id'] . '/view_as_tree', 1);
                     $dname = '/__' . str_replace('.', '_', $this->values['d_name']) . '_' . $val['l_prefix'];
                     $this->copyDir(TEMPL_DIR, TEMPL_DIR . $dname);
                 }
                 system::log('Создан домен "' . $this->values['d_name'] . '" (id:' . $this->id . ')', warning);
                 return true;
             } else {
                 $this->newError(62, 'Произошла ошибка при добавлении домена!');
                 system::log('Произошла ошибка при добавлении домена!', error);
                 return false;
             }
         }
     }
 }
예제 #8
0
    static function clear()
    {
        db::q('DELETE FROM <<search_rankings>>
    		   WHERE sr_lang_id = "' . languages::curId() . '" and
			    	 sr_domain_id = "' . domains::curId() . '";');
        db::q('DELETE FROM <<search_words>>
		       WHERE NOT EXISTS (
		       		SELECT * FROM <<search_rankings>>
					WHERE sr_word_id = w_id
				);');
        reg::setKey(ormPages::getPrefix('search') . '/index_date', '');
    }
예제 #9
0
 public function save()
 {
     if (!$this->issetErrors() && (empty($this->values['l_name']) || empty($this->values['l_prefix']))) {
         $this->newError(52, 'Поля "Название" и "Префикс" обязательны для заполнения!');
     }
     if ($this->issetErrors()) {
         return false;
     } else {
         if (!empty($this->id)) {
             // Изменение языка
             $sql = $this->getSql();
             if (!empty($sql)) {
                 db::q('UPDATE <<langs>> SET ' . $sql . ' WHERE l_id = "' . $this->id . '";');
             }
             system::log('Изменена языковая версия сайта "' . $this->values['l_name'] . '" (id:' . $this->id . ')', warning);
             // Переименовываем папки с шаблонами
             if ($this->old_prefix != $this->values['l_prefix']) {
                 $domain = domains::getAll();
                 while (list($key, $val) = each($domain)) {
                     if ($this->id != 1 || $val['d_id'] != 1) {
                         $old_name = '/__' . str_replace('.', '_', $val['d_name']) . '_' . $this->old_prefix;
                         $new_name = '/__' . str_replace('.', '_', $val['d_name']) . '_' . $this->values['l_prefix'];
                         @rename(TEMPL_DIR . $old_name, TEMPL_DIR . $new_name);
                     }
                 }
             }
             return true;
         } else {
             // Добавление языка
             $sql = $this->getSql();
             if (!empty($sql)) {
                 $this->id = db::q('INSERT INTO <<langs>> SET ' . $sql . ';');
             }
             if (is_numeric($this->id)) {
                 // Добавляем для каждого домена право и шаблон
                 $domain = domains::getAll();
                 while (list($key, $val) = each($domain)) {
                     rights::createForStructure($val['id'], $this->id);
                     $templ = new template();
                     $templ->setName('default');
                     $templ->setFile('default');
                     $templ->setLangId($this->id);
                     $templ->setDomainId($val['id']);
                     $templ->save();
                     reg::setKey('/structure/' . $val['id'] . '/' . $this->id . '/title_prefix', '%text% | ' . $val['d_sitename']);
                     reg::setKey('/structure/' . $val['id'] . '/' . $this->id . '/view_as_tree', 1);
                     // Создаем папки с шаблонами
                     $dname = '/__' . str_replace('.', '_', $val['d_name']) . '_' . $this->values['l_prefix'];
                     $this->copyDir(TEMPL_DIR, TEMPL_DIR . $dname);
                 }
                 system::log('Создана новая языковая версия сайта "' . $this->values['l_name'] . '" (id:' . $this->id . ')', warning);
                 return true;
             } else {
                 $this->newError(53, 'Произошла ошибка при добавление языка!');
                 system::log('Произошла ошибка при добавление языка!', error);
                 return false;
             }
         }
     }
 }
예제 #10
0
 public function proc()
 {
     reg::setKey('/core/gzip', system::POST('gzip', isBool));
     reg::setKey('/core/delToTrash', system::POST('delToTrash', isBool));
     reg::setKey('/core/scaleBigJpeg', system::POST('scaleBigJpeg', isBool));
     reg::setKey('/core/sizeBigJpeg', system::POST('sizeBigJpeg', isInt));
     reg::setKey('/core/noIE6', system::POST('noIE6', isBool));
     reg::setKey('/core/noIE7', system::POST('noIE7', isBool));
     reg::setKey('/core/noIE8', system::POST('noIE8', isBool));
     reg::setKey('/core/noDelMiniTexts', system::POST('noDelMiniTexts', isBool));
     // Загрузка ватермарка
     if (isset($_FILES['file_watermark']) && !empty($_FILES['file_watermark']['name'])) {
         if (system::fileExtIs($_FILES['file_watermark']['name'], array('png'))) {
             $watermark = system::copyFile($_FILES['file_watermark']['tmp_name'], $_FILES['file_watermark']['name'], '/upload/image');
         } else {
             ui::MessageBox(lang::get('CONFIG_SAVE_ERROR'), lang::get('CONFIG_WATERMARK_ERROR'));
         }
     }
     if (!isset($watermark) && isset($_POST['watermark'])) {
         if (system::fileExtIs($_POST['watermark'], array('png')) || empty($_POST['watermark'])) {
             $watermark = system::checkVar($_POST['watermark'], isString);
         } else {
             ui::MessageBox(lang::get('CONFIG_SAVE_ERROR'), lang::get('CONFIG_WATERMARK_ERROR') . '123');
         }
     }
     if (isset($watermark) && $watermark != reg::getKey('/core/watermark')) {
         reg::setKey('/core/watermark', $watermark);
         $this->deleteCacheWatermark($watermark);
     }
     // ******************	Сохранение доменов 	***************************
     function changeDomain($id, $data)
     {
         $online = isset($data['d_online']) ? $data['d_online'] : 0;
         $isAdd = empty($id) ? true : false;
         $obj = new domain($id);
         $obj->setName($data['d_name']);
         $obj->setOnline($online);
         $obj->setDefLang($data['d_def_lang']);
         $obj->setEmail($data['d_email']);
         $obj->setSiteName($data['d_sitename']);
         $id = $obj->save();
         if ($id === false) {
             ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText());
         } else {
             if ($isAdd) {
                 ui::MessageBox(lang::get('CONFIG_DOMAIN_ADD'), lang::get('CONFIG_DOMAIN_TEXT'));
             }
         }
         return true;
     }
     function delDomain($id)
     {
         $obj = new domain($id);
         if ($obj->delete() === false) {
             ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText());
         }
     }
     $form = new uiMultiForm('domains');
     $form->process('changeDomain', 'delDomain');
     // ******************	Сохранение языков 	***************************
     function changeLang($id, $data)
     {
         $isAdd = empty($id) ? true : false;
         $obj = new language($id);
         $obj->setName($data['l_name']);
         $obj->setPrefix($data['l_prefix']);
         $id = $obj->save();
         if ($id === false) {
             ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText());
         } else {
             if ($isAdd) {
                 ui::MessageBox(lang::get('CONFIG_LANG_ADD'), lang::get('CONFIG_LANG_TEXT'));
             }
         }
         return true;
     }
     function delLang($id)
     {
         $obj = new language($id);
         if ($obj->delete() === false) {
             ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText());
         }
     }
     $form = new uiMultiForm('langs');
     $form->process('changeLang', 'delLang');
     // Если в системе только один язык, сохраняем его данные в реестр для быстрой подгрузки
     if (count(languages::getAll(true)) == 1) {
         reg::setKey('/core/cur_lang/id', languages::get(1, true)->id());
         reg::setKey('/core/cur_lang/prefix', languages::get(1, true)->getPrefix());
         reg::setKey('/core/cur_lang/name', languages::get(1, true)->getName());
     } else {
         reg::delKey('/core/cur_lang');
     }
     // Если в системе только один домен, сохраняем его данные в реестр для быстрой подгрузки
     if (count(domains::getAll(true)) == 1) {
         reg::setKey('/core/cur_domain/id', domains::get(1, true)->id());
         reg::setKey('/core/cur_domain/name', domains::get(1, true)->getName());
         reg::setKey('/core/cur_domain/def_lang', domains::get(1, true)->getDefLang());
         reg::setKey('/core/cur_domain/sitename', domains::get(1, true)->getSiteName());
         reg::setKey('/core/cur_domain/email', domains::get(1, true)->getEmail());
         reg::setKey('/core/cur_domain/online', domains::get(1, true)->online());
         reg::setKey('/core/cur_domain/offline_msg', domains::get(1, true)->getOfflineMsg());
         reg::setKey('/core/cur_domain/error_msg', domains::get(1, true)->getErrorMsg());
     } else {
         reg::delKey('/core/cur_domain');
     }
     ui::MessageBox(lang::get('CONFIG_SAVE_OK'), lang::get('CONFIG_SAVE_OK_MSG'));
     reg::clearCache();
     system::log(lang::get('CONFIG_LOG_SAVE'), warning);
     system::redirect('/core/change');
 }
예제 #11
0
 public function proc()
 {
     // ******************	Основные настройки	***************************
     reg::setKey(ormPages::getPrefix() . '/title_prefix', system::POST('title_prefix'));
     reg::setKey(ormPages::getPrefix() . '/keywords', system::POST('keywords'));
     reg::setKey(ormPages::getPrefix() . '/description', system::POST('description'));
     reg::setKey('/structure/' . domains::curId() . '/cur_date', system::POST('cur_date', isBool));
     reg::setKey(ormPages::getPrefix() . '/no_view_no_edit', system::POST('no_view_no_edit', isBool));
     reg::setKey(ormPages::getPrefix() . '/view_as_tree', system::POST('view_as_tree', isBool));
     reg::setKey(ormPages::getPrefix('search') . '/auto_index', system::POST('auto_index', isBool));
     // Сохраняем информацию о части файла Robots.txt
     if (isset($_POST['robots'])) {
         $file = ROOT_DIR . '/robots_part_' . domains::curDomain()->getName() . '.txt';
         if (empty($_POST['robots']) && file_exists($file)) {
             unlink($file);
         } else {
             if (!empty($_POST['robots'])) {
                 $f = fopen($file, "w");
                 fwrite($f, $_POST['robots']);
                 fclose($f);
             }
         }
     }
     // Управление отображением
     reg::delKey(ormPages::getPrefix() . '/no_view');
     if (isset($_POST['no_view_classes'])) {
         while (list($num, $val) = each($_POST['no_view_classes'])) {
             if (!empty($val)) {
                 reg::setKey(ormPages::getPrefix() . '/no_view/' . $num, $val);
             }
         }
     }
     reg::delKey(ormPages::getPrefix() . '/no_edit');
     if (isset($_POST['no_edit_classes'])) {
         while (list($num, $val) = each($_POST['no_edit_classes'])) {
             if (!empty($val)) {
                 reg::setKey(ormPages::getPrefix() . '/no_edit/' . $num, $val);
             }
         }
     }
     // ******************	Сохранение шаблонов	***************************
     function changeTempl($id, $obj, $form_name)
     {
         $type = $form_name == 'page_tpl' ? 0 : 1;
         $templ = new template($id);
         $templ->setName($obj['t_name']);
         $templ->setFile($obj['t_file']);
         $templ->setDestination($type);
         $templ->setLangId(languages::curId());
         $templ->setDomainId(domains::curId());
         $templ->save();
         return true;
     }
     function delTempl($id)
     {
         $templ = new template($id);
         $templ->delete();
     }
     $form = new uiMultiForm('page_tpl');
     $form->process('changeTempl', 'delTempl');
     $form = new uiMultiForm('obj_tpl');
     $form->process('changeTempl', 'delTempl');
     ormPages::clearCache();
     if ($_POST['parram'] == 'apply') {
         system::redirect('/structure/settings');
     } else {
         if ($_SESSION['STRUCTURE_LIST_FLAG']) {
             system::redirect('/structure/list');
         } else {
             system::redirect('/structure/tree');
         }
     }
 }