/** * Создает запись в таблице * @return type */ public function create() { if ($this->bind_data['is_spec']) { $add_prof = $this->needAddProf($this->bind_data['user_id'], $this->bind_data['prof_id']); if ($add_prof == 1) { //Добавляем доп.специализацию professions::UpdateProfsAddSpec($this->bind_data['user_id'], 0, $this->bind_data['prof_id'], 0); } elseif ($add_prof == 2) { //Устанавливаем основную специализацию $frl = new freelancer(); $frl->spec = $this->bind_data['prof_id']; $frl->spec_orig = $this->bind_data['prof_id']; professions::setLastModifiedSpec($this->bind_data['user_id'], $this->bind_data['prof_id']); $frl->Update($this->bind_data['user_id'], $res); } } $ok = $this->db->insert($this->TABLE, $this->bind_data); if ($ok) { freelancer::clearCacheFromProfIdNow($this->bind_data['prof_id'], $this->bind_data['is_spec']); return true; } return false; }
$saved_prof_id = intval($_POST['prof_id']); break; case "spec_change": $spec = trim($_POST['spec']); require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/professions.php"; $or_spec = professions::GetProfessionOrigin($spec); $frl = new freelancer(); $frl->spec = $spec; $frl->spec_orig = $or_spec; professions::setLastModifiedSpec($uid, $spec); $error .= $frl->Update($uid, $res); $_SESSION['specs'] = $frl->GetAllSpecs($uid); break; case "save_spec_add": require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/professions.php"; if (professions::UpdateProfsAddSpec($uid, __paramInit('int', NULL, 'oldprof_id'), __paramInit('int', NULL, 'prof_id'), __paramInit('int', NULL, 'paid_id'))) { $_SESSION['specs'] = freelancer::GetAllSpecs($uid); header("Location: /users/{$login}/setup/specaddsetup/"); exit; } break; case "portf_choise": unset($_SESSION['text_spec']); $params = $_POST['prof']; if (is_array($params)) { $firstProf = "#prof" . $params[0]; } else { $firstProf = ""; } if (!($params && is_array($params))) { $params = array(-3);
/** * Если у пользователя нет указанной специализации, то добавить ее * Предпочтительно в качестве основной * * @param type $user_id ИД польователя * @param type $prof_id ИД специализации */ private function addProfToUserIfNeed($user_id, $prof_id) { $add_key = self::needAddProf($user_id, $prof_id); if ($add_key == 1) { //Добавляем доп.специализацию professions::UpdateProfsAddSpec($user_id, 0, $prof_id, 0); } elseif ($add_key == 2) { //Устанавливаем основную специализацию $frl = new freelancer(); $frl->spec = $prof_id; $frl->spec_orig = $prof_id; professions::setLastModifiedSpec($user_id, $prof_id); $frl->Update($user_id, $res); } }