AddField(new CEdit('surname', 'Фамилия', 50, true, TEXT, "")); $form->AddField(new CEdit('name', 'Имя', 50, true, TEXT, "")); $form->AddField(new CEdit('middlename', 'Отчество', 50, false, TEXT, "")); } $form->AddField(new CEdit('pass', 'Пароль', 100, true, TEXT, "")); $form->AddField(new CEdit('email', 'Адрес электронной почты', 100, true, EMAIL, "")); $form->AddConst('login_error', isset($_GET['loginerror']) ? $_GET['loginerror'] : 0); $form->AddConst('redirect_url', isset($_GET['redirect_url']) ? $_GET['redirect_url'] : (isset($_POST['redirect_url']) ? $_POST['redirect_url'] : "")); $form->AddConst('company', $company); if ($company > 0) { $form->AddField(new CEdit('company_name', 'Фамилия', 400, true, TEXT, "")); $form->AddField(new CEdit('company_inn', 'ИНН', 50, true, TEXT, "")); $form->AddField(new CEdit('company_kpp', 'КПП', 50, true, TEXT, "")); $form->AddField(new CEdit('company_ogrn', 'ОГРН', 50, true, TEXT, "")); $form->AddField(new CEdit('company_address', 'Юридический адрес компании', 400, true, TEXT, "")); $form->AddField(new CEdit('company_leadership_position', 'Должность руководителя', 400, true, TEXT, "")); $form->AddField(new CEdit('company_leadership_fio', 'ФИО руководителя', 400, true, TEXT, "")); $form->AddField(new CEdit('company_leadership_position_main', 'Должность руководителя в именительном падеже', 400, true, TEXT, "")); $form->AddField(new CEdit('company_leadership_fio_main', 'ФИО руководителя в именительном падеже', 400, true, TEXT, "")); $form->AddField(new CEdit('company_document', 'На основании чего действует руководитель', 400, true, TEXT, "")); $form->AddField(new CEdit('company_bank', 'Банковские реквизиты', 400, true, TEXT, "")); $form->AddField(new CEdit('company_ip_addresses', 'IP-адреса', 50, false, TEXT, "")); } if ($form->IsSubmitted()) { $data = $form->GetSubmittedData(); $email = EscapeAndDeleteTags($data['email']); EDBConnect(); $id_user = GetSQLValue("emag_users", "id_user", "login='".$email."'"); if (is_numeric($id_user)) { $form->AddConst("user_error", 1); $form->OnUserError(); } else if ($company == 0) { $list = array("surname", "name", "middlename", "email"); $fields[] = "login"; $values[] = $email; for ($i = 0; $i < count($list); $i++) { $fields[] = $list[$i]; $values[] = EscapeAndDeleteTags(isset($data[$list[$i]]) ? $data[$list[$i]] : ""); } $fields[] = "pass"; $values[] = md5($data['pass']); $trans = new CTransliterationFilter(); $fields[] = "surname_eng"; $fields[] = "name_eng"; $fields[] = "middlename_eng"; $values[] = EscapeAndDeleteTags ($trans->rus2translit($data['surname'])); $values[] = EscapeAndDeleteTags ($trans->rus2translit($data['name'])); $values[] = EscapeAndDeleteTags ($trans->rus2translit(isset($data['middlename']) ? $data['middlename'] : '')); $fields[] = "user_type"; $values[] = 2; $fields[] = "unconfirmed"; $values[] = 1; $fields[] = "register_date"; $values[] = date("Y-m-d H:i:s"); $emptyFields = array("workname", "work_phone", "home_phone", "mobile_phone", "work_university", "science_degree", "cathedra", "my_mags"); for ($i = 0; $i < count($emptyFields); $i++) { $fields[] = $emptyFields[$i]; $values[] = ""; } DoInsertQuery("emag_users", $fields, $values); $id_user = GetSQLValue("emag_users", "id_user", "login = '".$email."' ORDER BY id_user DESC"); MakeLogin(-$id_user); RedirectAfterLoginOrRegister(); } else if ($company > 0) { $ip_errror_count = false; $ip_errror = false; if (isset($data["company_ip_addresses"])) { $ips = explode(",", $data["company_ip_addresses"]); if (count($ips) > 1) $ip_errror_count = true; for ($i=0; $i< count($ips); $i++) { $ip = trim($ips[$i]); if(!filter_var($ip, FILTER_VALIDATE_IP)) { $ip_errror = true; break; } } } DBConnect(); $id_user = GetSQLValue("nb_library_users", "id_user", "login='".$email."'"); if (is_numeric($id_user)) { $form->AddConst("user_error", 1); $form->OnUserError(); } else if ($ip_errror_count == true) { $form->AddConst("user_error", 3); $form->OnUserError(); } else if ($ip_errror == true) { $form->AddConst("user_error", 2); $form->OnUserError(); } else { $fields[] = "name"; $values[] = EscapeAndDeleteTags($data["company_name"]); $fields[] = "inn"; $values[] = EscapeAndDeleteTags($data["company_inn"]); $fields[] = "kpp"; $values[] = EscapeAndDeleteTags($data["company_kpp"]); $fields[] = "ogrn"; $values[] = EscapeAndDeleteTags($data["company_ogrn"]); $fields[] = "leadership_position"; $values[] = EscapeAndDeleteTags($data["company_leadership_position"]); $fields[] = "leadership_fio"; $values[] = EscapeAndDeleteTags($data["company_leadership_fio"]); $fields[] = "leadership_position_main"; $values[] = EscapeAndDeleteTags($data["company_leadership_position_main"]); $fields[] = "leadership_fio_main"; $values[] = EscapeAndDeleteTags($data["company_leadership_fio_main"]); $fields[] = "bank"; $values[] = EscapeAndDeleteTags($data["company_bank"]); $fields[] = "ip_addresses"; $values[] = EscapeAndDeleteTags(isset($data["company_ip_addresses"]) ? $data["company_ip_addresses"] : ""); $fields[] = "document"; $values[] = EscapeAndDeleteTags($data["company_document"]); $fields[] = "address"; $values[] = EscapeAndDeleteTags($data["company_address"]); $fields[] = "id_company"; $values[] = "-1"; $fields[] = "login"; $values[] = $email; $fields[] = "pass"; $values[] = md5($data['pass']); $fields[] = "pay_via_agency"; $values[] = $company - 1; DoInsertQuery("nb_library_users", $fields, $values); $id_user = GetSQLValue("nb_library_users", "id_user", "login = '".$email."' ORDER BY id_user DESC"); MakeLogin($id_user); RedirectAfterLoginOrRegister(); die(); } DBDisconnect(); } } ShowTopPart(); $form->EnableValidationByJS('register'); $form->Show(); ShowBottomPart(); ?>