/**
* Предложение на создание нового промо сообщества.
*
* @param    array   $frm    Данные введенные пользователем
*
* @return   object          xajaxResponse
*/
function NewPromoCommune($frm)
{
    global $session;
    session_start();
    $objResponse = new xajaxResponse();
    $errors = array();
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/captcha.php';
    $captcha = new captcha();
    $rnd = $frm['rndnum'];
    if (!$captcha->checkNumber(trim($rnd))) {
        $errors[] = 'captcha';
    }
    if (trim($frm['name']) == '') {
        $errors[] = 'name';
    }
    if (trim($frm['msg']) == '') {
        $errors[] = 'msg';
    }
    $objResponse->script('$("popup_promo_commune").getElements("div[id^=popup_promo_commune_err]").setStyle("display", "none");');
    if (count($errors)) {
        foreach ($errors as $error) {
            $objResponse->script('$("popup_promo_commune_err_' . $error . '").setStyle("display", "block");');
        }
    } else {
        $objResponse->script('$("btn_promo_new").setStyle("display", "none");');
        $objResponse->script('$("btn_promo_ok").setStyle("display", "block");');
        $objResponse->script('$("popup_promo_commune").setStyle("display", "none");');
        $objResponse->script('$("claim-name").set("value","");');
        $objResponse->script('$("claim-idea").set("value","");');
        $objResponse->script('$("claim-cap").set("value","");');
        $sm = new smail();
        $sm->NewPromoCommune($frm['name'], $frm['msg']);
    }
    $objResponse->script('$("captcha").set("src","/image.php?r="+Math.random());');
    $objResponse->assign('claim-cap', 'value', '');
    return $objResponse;
}
 public function registration($type_wizard = step_wizard_registration::TYPE_WIZARD_EMP)
 {
     require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/captcha.php";
     $action = __paramInit('string', null, 'action');
     if ($this->status == step_wizard::STATUS_CONFIRM) {
         if ($_SESSION['email'] == 0) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/users.php";
             $user = new users();
             $email = $user->GetField(wizard::getUserIDReg(), $error, "email");
             $_SESSION['email'] = $email;
         }
         if ($action == registration::ACTION_SEND_MAIL) {
             $send = registration::actionSendMail(false);
             if ($send) {
                 header("Location: /wizard/registration/");
                 exit;
             }
         }
     }
     $type_user = $type_wizard;
     if ($action == 'registration' && $this->status == 0) {
         $error = array();
         if (!$_SESSION["regform_captcha_entered"]) {
             session_start();
             $captchanum = __paramInit('string', null, 'captchanum');
             $num = __paramInit('string', null, 'rndnum');
             $_SESSION['w_reg_captcha_num'] = $captchanum;
             $captcha = new captcha($captchanum);
             if (!$captcha->checkNumber($num)) {
                 $error['captcha'] = 'Неверный код. Попробуйте еще раз';
                 unset($_SESSION['w_reg_captcha_num']);
             }
         }
         if ($type_wizard == step_wizard_registration::TYPE_WIZARD_EMP) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/employer.php";
         } else {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/freelancer.php";
         }
         $login = trim(__paramInit('string', null, 'login'));
         $email = trim(__paramInit('string', null, 'email'));
         $agree = trim(__paramInit('string', null, 'agree'));
         $phone = trim(__paramInit('string', null, 'phone'));
         $smscode = trim(__paramInit('string', null, 'smscode'));
         // пароль берем напрямую из $_POST, а то __paramInit режет спецсимволы (пароль хешируется - SQL инъекция невозможна)
         $passwd = $_POST['password'];
         if (!$agree) {
             $error['agree'] = 'Прочтите и согласитесь с правилами';
         }
         if ($passwd == '') {
             $error['pwd'] = 'Введите пароль';
         }
         if (!preg_match("/^[a-zA-Z0-9]+[-a-zA-Z0-9_]{2,}\$/", $login)) {
             $error['login'] = '******';
         }
         if (in_array(strtolower($login), $GLOBALS['disallowUserLogins'])) {
             $error['login'] = '******';
         }
         if (!is_email($email)) {
             $error['email'] = 'Поле заполнено некорректно';
         }
         if ($smscode != $_SESSION["smsCode"]) {
             $error['smscode'] = 'Код не совпал';
         }
         if ($phone != $_SESSION["reg_phone"]) {
             $error['phone'] = 'Вы вводили другой номер при запросе кода';
         }
         $phone = preg_replace("#^\\+#", "", $_SESSION["reg_phone"]);
         if (empty($error['login'])) {
             $sql = "SELECT uid FROM users WHERE lower(login) = ?";
             if ($this->_db->val($sql, strtolower($login))) {
                 $error['login'] = '******';
             }
         }
         if (empty($error['email']) && empty($error['captcha'])) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/temp_email.php";
             if (temp_email::isTempEmail($email)) {
                 $error['email'] = 'К сожалению, регистрация аккаунта на указанный адрес электронной почты невозможна. Пожалуйста, для регистрации воспользуйтесь почтовым адресом другого домена';
             } else {
                 $sql = "SELECT uid FROM users WHERE lower(email) = ?";
                 if ($this->_db->val($sql, strtolower($email))) {
                     $error['email'] = 'Указанная вами электронная почта уже зарегистрирована. Авторизуйтесь на сайте или укажите другую электронную почту.';
                 }
             }
         }
         if (count($error) == 0) {
             if ($type_wizard == step_wizard_registration::TYPE_WIZARD_EMP) {
                 $newuser = new employer();
             } else {
                 $newuser = new freelancer();
             }
             $newuser->checked_name = false;
             if ($type_wizard == step_wizard_registration::TYPE_WIZARD_EMP) {
                 $newuser->role = 1;
             } else {
                 $newuser->role = 0;
             }
             $newuser->login = substr($login, 0, 15);
             $newuser->email = substr($email, 0, 64);
             $newuser->passwd = substr($passwd, 0, 24);
             $id = $newuser->Create($rerror, $error);
             if ($id && !$error) {
                 require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/activate_code.php";
                 $this->parent->saveActionWizard($this, step_wizard::STATUS_CONFIRM);
                 $this->parent->bindUserIDReg($id);
                 unset($_SESSION['ref_uri']);
                 require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/smail.php';
                 $smail = new smail();
                 $bSuspect = users::isSuspiciousUser($id, $newuser->login, '', $newuser->uname, '', $newuser->usurname, '');
                 $sPasswd = $bSuspect ? $newuser->passwd : '';
                 // чтобы из админки можно было выслать $smail->NewUser
                 $code = activate_code::Create($id, $newuser->login, $sPasswd, $error);
                 if (!$bSuspect) {
                     $_SESSION['suspect'] = false;
                     // юзер не подозрительный - сразу отпавляем юзеру письмо с кодом активации
                     $smail->NewUser($newuser->login, false, $code, $this->getWizardUserID(), $newuser->role ? 'emp' : 'frl');
                 } else {
                     $_SESSION['suspect'] = true;
                     // отправляем уведомление админу о том, что зарегистрировался подозрительный юзер
                     // если админ его одобрит - то письмо с кодом активации уйдет из админки
                     $smail->adminNewSuspectUser($newuser->login, $newuser->uname, $newuser->usurname);
                 }
                 //Записываем подтвержденный номер телефона в финансы
                 require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/sms_gate.php";
                 $phone = '+' . preg_replace("#^\\+#", "", $_SESSION["reg_phone"]);
                 unset($_SESSION["regform_captcha_entered"]);
                 sms_gate::saveSmsInfo($phone, $_SESSION["reg_sms_isnn"], $_SESSION["smsCode"], $_SESION["reg_sms_date_send"], $id);
                 // стираем куку, чтобы показался блок "Вы успешно зарегистрировались"
                 setcookie('master_auth', "", time() - 3600, '/');
                 // Серый список IP ----------------------
                 require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/gray_ip.php';
                 $aGrayList = gray_ip::getGrayListByRegIp(getRemoteIP());
                 if ($aGrayList) {
                     // есть записи в списке первичных IP
                     gray_ip::addSecondaryIp($id, $newuser->login, $newuser->role, $aGrayList);
                 }
                 //---------------------------------------
                 $_SESSION['email'] = $newuser->email;
                 header("Location: /wizard/registration/");
                 exit;
             }
         }
     } elseif ($action == 'authorization') {
         $auth_error = $this->authorization($auth_login);
     }
     include $_SERVER['DOCUMENT_ROOT'] . "/wizard/registration/steps/tpl.step.reg.php";
 }
Exemple #3
0
 /**
  * Основной метод регистрации пользователей
  * @param bool $is_preset Флаг, показывающий наличие подготовленных данных
  * @return type
  */
 public function actionRegistration($is_preset = false)
 {
     require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/sbr_meta.php";
     if (!$is_preset) {
         $this->setFieldInfo('role', __paramInit('int', null, 'role'));
         $this->setFieldInfo('login', trim(__paramInit('string', null, 'login')));
         $this->setFieldInfo('email', trim(__paramInit('string', null, 'email')));
         $this->setFieldInfo('subscr_news', trim(__paramInit('bool', null, 'subscribe')));
         //$this->setFieldInfo('smscode', trim(__paramInit('string', null, 'smscode')));
         //$this->setFieldInfo('phone', $_SESSION["reg_phone"]);
         // пароль берем напрямую из $_POST, а то __paramInit режет спецсимволы (пароль хешируется - SQL инъекция невозможна)
         $this->setFieldInfo('password', stripslashes($_POST['password']));
         $this->checkedFields();
         session_start();
         $this->setFieldInfo('captchanum', __paramInit('string', null, 'captchanum'));
         $num = __paramInit('string', null, 'rndnum');
         if (!$_SESSION["regform_captcha_entered"]) {
             $_SESSION['reg_captcha_num'] = $this->captchanum;
             $captcha = new captcha($this->captchanum);
             if (!$captcha->checkNumber($num)) {
                 $this->error['captcha'] = 'Неверный код. Попробуйте еще раз';
                 $this->is_validate = false;
                 unset($_SESSION['reg_captcha_num']);
             }
         }
     }
     //if ( (is_release() || $_SESSION["reg_phone"] != 71111112222) && sbr_meta::findSafetyPhone($_SESSION["reg_phone"], __paramInit('string', null, 'role') == 2 ? 'emp' : 'frl') ) {
     //    $this->error['phone'] = 'Пользователь с таким номером уже зарегистрирован';
     //    $this->is_validate = false;
     //    unset($_SESSION['reg_captcha_num']);
     //}
     if ($this->is_validate) {
         //unset($_SESSION['smsIsRequested']);
         if ($this->role == self::ROLE_FREELANCER) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/freelancer.php";
             $newuser = new freelancer();
             $newuser->role = 0;
         } else {
             if ($this->role == self::ROLE_EMPLOYER) {
                 require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/employer.php";
                 $newuser = new employer();
                 $newuser->role = 1;
             }
         }
         $newuser->login = substr($this->login, 0, 15);
         $newuser->email = substr($this->email, 0, 64);
         $newuser->passwd = substr($this->password, 0, 24);
         $newuser->subscr = '1111111' . (int) $this->subscr_news . '11111111';
         $newuser->uid = $newuser->Create($rerror, $error);
         if ($newuser->uid && !$error) {
             $ok = $this->completedRegistration($newuser);
             if ($ok) {
                 //require_once $_SERVER['DOCUMENT_ROOT']."/classes/sms_gate.php";
                 //$phone = '+' . preg_replace("#^\+#", "", $_SESSION["reg_phone"]);
                 unset($_SESSION["regform_captcha_entered"]);
                 unset($_SESSION["login_generated"]);
                 $tu_ref_uri = @$_SESSION['tu_ref_uri'];
                 //unset($_SESSION["reg_phone"]);
                 //unset($_SESSION['send_sms_time']);
                 //sms_gate::saveSmsInfo($phone, $_SESSION["reg_sms_isnn"], $_SESSION["smsCode"], $_SESION["reg_sms_date_send"], $newuser->uid);
                 $_SESSION['email'] = $newuser->email;
                 $_SESSION['rrole'] = $this->role;
                 // Если пришли сюда регистрироватся то после нажатия кнопки регистрации удаляем куки регистрации иначе после активации нас перекинет на мастер
                 $wizard = new wizard();
                 $wizard->clearCookiesById($newuser->role == 1 ? 1 : 2);
                 // В зависимоти от того кого регистрируем
                 // На всякий случай при новой регистрации удаляем переменную проверки
                 self::resetCheckAccess();
                 $_user_action = isset($_REQUEST['user_action']) && $_REQUEST['user_action'] ? substr(htmlspecialchars($_REQUEST['user_action']), 0, 25) : '';
                 $_user_action = trim($_user_action);
                 login($newuser->login, users::hashPasswd(trim(stripslashes($newuser->passwd))), 1, false);
                 if (is_emp($newuser->role)) {
                     $_SESSION['reg_role'] = 'Employer';
                     $ref_uri = isset($_SESSION['ref_uri'], $_SESSION['was_customer_wizard']) ? urldecode($_SESSION['ref_uri']) : null;
                     unset($_SESSION['was_customer_wizard']);
                     $redirect_to = $ref_uri ? $ref_uri : '/public/?step=1&kind=1';
                     //По умолчанию, при регистрации заказчика, перенаправляем его на публикацию проекта
                     if (strpos($_user_action, 'project_to_')) {
                         $login = str_replace('add_project_to_', '', $_user_action);
                         $redirect_to = '/public/?step=1&kind=9&exec=' . $login;
                     }
                     $redirect = __paramInit('link', NULL, 'redirect');
                     if ($redirect && !$ref_uri) {
                         $redirect_to = urldecode($redirect);
                     }
                 } else {
                     $_SESSION['reg_role'] = 'Freelancer';
                     $redirect_to = $redirect_to = "/registration/profession.php" . (!empty($user_action) ? "?user_action={$user_action}" : '');
                     //Очищаем чтобы далее небыло редиректа
                     //@todo: согласно https://beta.free-lance.ru/mantis/view.php?id=28862
                     $_user_action = '';
                 }
                 switch ($_user_action) {
                     case 'tu':
                         if ($tu_ref_uri) {
                             $redirect_to = HTTP_PFX . $_SERVER["HTTP_HOST"] . urldecode($tu_ref_uri);
                         }
                         break;
                     case 'new_tu':
                         if (!is_emp($newuser->role)) {
                             $redirect_to = HTTP_PFX . $_SERVER["HTTP_HOST"] . '/users/' . $newuser->login . '/tu/new/';
                         } else {
                             $redirect_to = HTTP_PFX . $_SERVER["HTTP_HOST"] . '/tu/';
                         }
                         break;
                     case 'promo_verification':
                         $redirect_to = '/promo/verification/';
                         break;
                     case 'buypro':
                         if (is_emp($newuser->role)) {
                             $redirect_to = '/payed-emp/';
                         } else {
                             $redirect_to = '/payed/';
                         }
                         break;
                     case 'add_order':
                         $url = __paramInit('link', NULL, 'redirect');
                         $redirect_to = HTTP_PFX . $_SERVER["HTTP_HOST"] . urldecode($url);
                         break;
                 }
                 if (!is_emp($newuser->role)) {
                     $_SESSION['activate_password'] = $newuser->passwd;
                     $_SESSION['subscr_news'] = (int) $this->subscr_news;
                     //Создаем новый экземпляр, т.к. нужно обновить только подписки
                     //Отписываем от всего, кроме личных сообщений
                     $freelancer = new freelancer();
                     $freelancer->UpdateSubscr($newuser->uid, 1, array(), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false, 0);
                 }
                 //Обработать действия по событию успешной регистрации
                 $this->afterSuccessRegistation($newuser);
                 if ($is_preset) {
                     return array('success' => true, 'user_id' => $newuser->uid, 'redirect' => $redirect_to);
                 } else {
                     header("Location: " . $redirect_to);
                     exit;
                 }
             }
         }
     } else {
         return $this->error;
     }
 }
Exemple #4
0
 require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/attachedfiles.php";
 $attachedfiles = new attachedfiles($attachedfiles_session);
 $attachedfiles_info = $attachedfiles->calcFiles();
 if ((!$msg || trim($msg) == "") && !(sizeof($files) || $attachedfiles_info['count'])) {
     $error_flag = 1;
     $alert[2] = "Поле заполнено некорректно";
 } elseif ($msg && strlen($msg) > messages::MAX_MSG_LENGTH) {
     $error_flag = 1;
     $alert[2] = "Вы ввели слишком большое сообщение. Текст сообщения не должен превышать 20 000 символов.";
 }
 if ($isNeedUseCaptcha) {
     require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/captcha.php";
     $captchanum = $_POST['captchanum'];
     $captcha = new captcha($captchanum);
     $rnd = $_POST['rndnum'];
     if (!$captcha->checkNumber(trim($rnd))) {
         $error_flag = 1;
         $alert[4] = "Вы ввели неверную комбинацию символов";
     }
 }
 // если запрошено обновление капчи в PDA
 $newCaptcha = $_POST['newcaptcha'];
 if ($newCaptcha) {
     $alert = array();
 }
 if ($chat_with != $_SESSION['login'] && !$error_flag) {
     list($alert, $error) = messages::Add(get_uid(), $chat_with, $msg, $files, 0, false, $attachedfiles_session);
     if (!$error && isNulArray($alert)) {
         messages::updateSendLog(get_uid(false));
         if ($draft_id) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/drafts.php";
Exemple #5
0
/**
 * напоминание пароля через телефон и логин.
 *
 * @param $phone
 * @param $login
 * @param $rnd
 * @param $captchanum
 *
 * @return xajaxResponse
 */
function RemindByPhoneAndLogin($phone, $login, $rnd, $captchanum)
{
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sms_gate_a1.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sbr_meta.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/users.php';
    session_start();
    $objResponse = new xajaxResponse();
    $phone = trim($phone);
    $login = trim($login);
    // проверка капчи
    $captcha = new captcha($captchanum);
    if (!$captcha->checkNumber(trim($rnd))) {
        $captcha->setNumber();
        $error = 'Вы ввели неверную комбинацию букв';
        sendPhoneRemindError($objResponse, $error, $captchanum, 'captcha');
        return $objResponse;
    }
    // проверка правильности введенного номера
    $i_phone = users::CheckSafetyPhone($phone);
    if ($phone && $i_phone['error_flag']) {
        $captcha->setNumber();
        $error = 'Вы ввели телефон в недопустимом формате';
        sendPhoneRemindError($objResponse, $error, $captchanum, 'phone');
        return $objResponse;
    }
    // проверка наличия номера в базе
    if ($phone) {
        $safetyPhones = sbr_meta::findSafetyPhones($phone);
        if (!count($safetyPhones)) {
            $error = 'Этот номер телефона не связан ни с одним аккаунтом. Попробуйте восстановить доступ через логин или email';
            $captcha->setNumber();
            sendPhoneRemindError($objResponse, $error, $captchanum, 'phone');
            return $objResponse;
        }
        foreach ($safetyPhones as $safetyPhone) {
            $checkUser = new users();
            $checkUser->GetUser($safetyPhone['login']);
            if ($checkUser->is_banned) {
                $error = 'Аккаунт с указанным номером телефона заблокирован или удален.\\nСожалеем, но восстановить пароль к нему в данный момент нельзя.';
                $captcha->setNumber();
                sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
                return $objResponse;
            }
        }
        // если на один номер несколько аккаунтов и логин не указан
        if (count($safetyPhones) > 1 && !$login) {
            $captcha->setNumber();
            $error = 'Вы не указали логин. Поле обязательно для заполнения, т.к. номер телефона привязан к нескольким аккаунтам';
            sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
            return $objResponse;
        }
        // если номер не уникальный и указан логин
        if (count($safetyPhones) > 1 || $login) {
            foreach ($safetyPhones as $value) {
                if ($value['login'] == $login) {
                    $safety = $value;
                    break;
                }
            }
            if (!$safety) {
                $error = 'Этот логин и номер телефона не связаны. Попробуйте восстановить доступ через логин или email';
                $captcha->setNumber();
                sendPhoneRemindError($objResponse, $error, $captchanum, 'phone login');
                return $objResponse;
            }
        }
        if (count($safetyPhones) === 1 && !$login) {
            $safety = $safetyPhones[0];
        }
    }
    // если указан логин и не указан номер
    if ($login && !$phone) {
        // проверяем существует ли пользователь с таким логином
        $user = new users();
        $user->GetUser($login);
        if (!$user->uid) {
            $error = 'Вы указали некорректный логин';
            $captcha->setNumber();
            sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
            return $objResponse;
        }
        if ($user->is_banned) {
            $error = 'Аккаунт с указанным логином заблокирован или удален.\\nСожалеем, но восстановить пароль к нему в данный момент нельзя.';
            $captcha->setNumber();
            sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
            return $objResponse;
        }
        $safety = sbr_meta::findSafetyPhoneByLogin($login);
        if (!$safety) {
            $error = 'Этот логин не связан ни с одним номером телефона. Попробуйте восстановить доступ через логин или email';
            $captcha->setNumber();
            sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
            return $objResponse;
        }
        $phone = $safety['phone'];
    }
    $passwd = users::ResetPasswordSMS($safety['uid'], $phone);
    $sms_gate = new sms_gate_a1($phone);
    $sms_gate->sendSMS($sms_gate->getTextMessage(sms_gate::TYPE_PASS, $passwd));
    if ($sms_gate->getHTTPCode() != 200) {
        $error = 'Ошибка отправки СМС на указанный номер';
        $captcha->setNumber();
        sendPhoneRemindError($objResponse, $error, $captchanum);
        return $objResponse;
    }
    $html = '<span class="b-icon b-icon_sbr_gattent"></span>На указанный вами номер выслан новый пароль для входа в систему.';
    if (SMS_GATE_DEBUG) {
        $html .= ' <strong style="color:red">(DEBUG TEST: ' . $passwd . ')</strong>';
    }
    $objResponse->script("\n        \$('remind_button_phone').removeClass('b-button_rectangle_color_disable');\n        \$('remind_phone_msg').addClass('b-layout__txt_hide');\n        var e = new Element('div', {html: '{$html}', class: 'b-layout__txt b-layout__txt_padtop_15'});\n        \$('sms_remind').getElement('table').destroy();\n        \$('sms_remind').getElement('h3').grab(e, 'after');");
    return $objResponse;
}
Exemple #6
0
/*
if(in_array($type, array('new_projects')) && $info["role"][0] != 0){
    include ABS_PATH . '/404.php';
    exit;
}
*/
$alert = '';
//TODO: Избавиться от этого сообщения
if (!$ukey) {
    $alert = 'Не удалось найти пользователя';
}
if ($action == 'unsubscribe') {
    $num = __paramInit('string', null, 'rndnum');
    $captchanum = __paramInit('string', null, 'captchanum');
    $captcha = new captcha($captchanum);
    if (!$captcha->checkNumber($num)) {
        $alert = 'Введены неверные символы';
    }
    if (!$alert) {
        $class = 'users';
        $vacancy = 0;
        if ($info['role'][0] == 0) {
            $class = 'freelancer';
            $vacancy = array();
        }
        $user = new $class();
        global $DB;
        if ($type == 'new_projects') {
            if ($info['role'][0] == 1) {
                //@todo: UpdateSubscr2 пока только для работодателей
                $info['subscr'][12] = 0;
Exemple #7
0
$TML->assignCompanyInfoAndTheme();
$errors = array();
$page = array();
$department = (int) $_REQUEST["department_db_id"];
$canChangeName = Visitor::getInstance()->canVisitorChangeName();
$v = GetVisitorFromRequestAndSetCookie();
$visitorid = $v['id'];
$captcha_num = $v['captcha'];
$message = get_mandatory_param('message');
$has_errors = false;
if (count($_POST) == 0 && count($_FILES) == 0) {
    //костыль. при отправке на сервер большого файла приходит пустой request  и files, как по длругому определить, пока не придумал
    $has_errors = true;
    $errors[0] = 6;
    $errors[1] = iconv("UTF-8", "WINDOWS-1251//IGNORE", "Файл очень велик");
} elseif (!$captcha->checkNumber($captcha_num)) {
    $has_errors = true;
    $errors[0] = 5;
    $errors[1] = iconv("UTF-8", "WINDOWS-1251//IGNORE", "Неверно введен текст");
} elseif (empty($message) || $message == '') {
    $has_errors = true;
    $errors[0] = 4;
    $errors[1] = iconv("UTF-8", "WINDOWS-1251//IGNORE", "Заполните это поле");
} elseif (!$department) {
    $has_errors = true;
    $errors[0] = 7;
    $errors[1] = iconv("UTF-8", "WINDOWS-1251//IGNORE", "Неверно введен текст");
}
$fileIndex = 1;
if (!$has_errors) {
    $files = array();