$f_category = isset($_POST['pf_categofy']) ? $_POST['pf_categofy'] : ''; if ((int) $_POST['comboe_column_id'] === 1 && $_POST['comboe_db_id'] > 0) { $f_category[1][$_POST['comboe_db_id']] = 1; } if ((int) $_POST['comboe_column_id'] === 0 && $_POST['comboe_db_id'] > 0) { $f_category[0][$_POST['comboe_db_id']] = 1; } // Временное решение list($f_country, $f_city) = split(": ", $_POST['location']); $_POST['pf_country'] = country::getCountryId($f_country); $_POST['pf_city'] = city::getCityIdByCountry($f_city, (int) $_POST['pf_country']); if ((int) $_POST['pf_cost_from'] == 0) { $_POST['pf_wo_budjet'] = 1; ##0028132 } $prj_filter->Save(get_uid(), $_POST['pf_cost_from'], $_POST['pf_cost_to'], $_POST['pf_currency'], isset($_POST['pf_wo_budjet']), $f_category, $_POST['pf_country'], $_POST['pf_city'], $_POST['pf_keywords'], isset($_POST['pf_my_specs']), $rerror, $error, 0, $filter_page, $kind == 1 || $kind == 2, $_POST['pf_only_sbr'], $_POST['pf_pro_only'], $_POST['pf_verify_only'], $_POST['pf_less_offers'], $_POST['pf_end_days_from'], $_POST['pf_end_days_to'], false, 4, $_POST['pf_urgent_only'], $_POST['pf_block_only'], isset($_POST['hide_exec'])); $location = '/projects/' . ($kind != 5 ? '?kind=' . $kind : ''); break; // Деактивация фильтра проектов // Деактивация фильтра проектов case "deletefilter": if ($PDA) { $prj_filter = new projects_filters_pda(); $prj_filter->UpdateActiveFilter(get_uid(), false); } else { $prj_filter = new projects_filters(); $prj_filter->DeleteFilter(get_uid()); } break; // Активация фильтра проектов // Активация фильтра проектов
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/professions.php'; // страницу могут смотреть только зарегистрированые фрилансеры $uid = get_uid(false); if (!$uid || is_emp()) { include $_SERVER['DOCUMENT_ROOT'] . '/403.php'; exit; } $profession_id = __paramInit('int', null, 'profession', null); if ($profession_id !== null) { $redirect_to = '/projects/'; if ($profession_id > 0) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects_filter.php'; //Создаем фильтр для проектов $f_category[1][$profession_id] = 1; $prj_filter = new projects_filters(); $prj_filter->Save($uid, '', '', 2, true, $f_category, '', '', '', false, $rerror, $error, 0, 0, false, false, false, false, false, false, false, false, 4, false, false); setcookie('new_pf0', 1, time() + 60 * 60 * 24 * 30, '/'); //Сохраняем как основную специализацию $or_spec = professions::GetProfessionOrigin($profession_id); $frl = new freelancer(); $frl->spec = $profession_id; $frl->spec_orig = $or_spec; professions::setLastModifiedSpec($uid, $profession_id); $frl->Update($uid, $error); $_SESSION['specs'] = $frl->GetAllSpecs($uid); } //Если есть редирект то он приоритетней if ($_SESSION['ref_uri']) { $redirect_to = urldecode($_SESSION['ref_uri']); } $_user_action = isset($_REQUEST['user_action']) && $_REQUEST['user_action'] ? substr(htmlspecialchars($_REQUEST['user_action']), 0, 25) : '';
/** * Получение списка настроек * * @param array $aParams массив входящих данных * @return array $aResult ответ */ protected function x____settings_filter_set($aParams = array()) { $this->_validDevice($aParams); require_once ABS_PATH . '/classes/projects_filter.php'; $nPage = self::$_aPlatform[$this->_sPlatform]['filter_page']; // какой фильтр сохранять $oPrjFilter = new projects_filters(); $bUseMain = intvalPgSql($aParams['enabled']) ? true : false; $sKeyword = iconv('utf-8', 'cp1251', $aParams['keyword']); $aProfs = array(array(), array()); if (is_array($aParams['items']) && $aParams['items']) { foreach ($aParams['items'] as $aOne) { $nGroupId = intvalPgSql($aOne['categories_group_id']); $nProfId = intvalPgSql($aOne['categories_id']); if (!empty($nProfId)) { $aProfs[1][$nProfId] = 1; } elseif (!empty($nGroupId)) { $aProfs[0][$nGroupId] = 0; } } } $prj_filter = new projects_filters(); $prj_filter->Save(get_uid(false), 0, 0, 2, true, $aProfs, 0, 0, $sKeyword, false, $rerror, $error, 0, $nPage, false, false, false, false, false, null, null, $bUseMain); if ($rerror || $error) { $this->error(EXTERNAL_ERR_SERVER_ERROR); } return array(); }