$Fields["UF_STATUS"] = 31; } else { $UserId = CustomUser::NewUser($Fields); } } else { $UserId = CustomUser::NewUser($Fields); } if ($UserId > 0) { /* if($Fields["UF_YOU_HAVE_18"] == 1){ CustomUser::AddUserGroupClosedCommunity(array("USER_ID"=> $UserId,"UF_YOU_HAVE_18" => 1)); } */ $USER->Authorize($UserId); $Fields["UF_FB_PROFILE"] = array($UserDate->id); CustomUser::UserUpdate($Fields); if ($ambassador) { $arGroups = CUser::GetUserGroup($UserId); $arGroups[] = 13; CUser::SetUserGroup($UserId, $arGroups); } } } } } if (strripos($_SERVER['HTTP_USER_AGENT'], "iphone") || strripos($_SERVER['HTTP_USER_AGENT'], "android") || strripos($_SERVER['HTTP_USER_AGENT'], "ipod") || strripos($_SERVER['HTTP_USER_AGENT'], "windows phone")) { $backurl = $APPLICATION->get_cookie("MQ_BACKURL"); if ($backurl) { $APPLICATION->set_cookie("MQ_BACKURL", "", time(), "/"); } LocalRedirect('http://' . $_SERVER['SERVER_NAME'] . "/?backurl=" . $backurl);
function MyOnBeforePrologHandler() { global $USER; global $APPLICATION; /** u - User Id p - Parent User d - Create user date */ if (isset($_GET["token"])) { $APPLICATION->set_cookie("MQ_REGISTRATION_TOKEN", $_GET["token"], time() + 60 * 60 * 24 * 30 * 12 * 4, "/"); } if (strstr($APPLICATION->GetCurDir(), '/signup/')) { return; } $Dir = explode("/", $_SERVER["REQUEST_URI"]); $Query_string = explode("&", $_SERVER["QUERY_STRING"]); $Query = explode("=", $Query_string[0]); $authString = explode("?", $_SERVER["REQUEST_URI"]); if ($authString[0] == '/vk.php' || $authString[0] == '/facebook.php' || $authString[0] == '/google.php' || $authString[0] == '/app.php' || $authString[0] == '/mail.php' || $Dir[1] == 'unsubscribe') { $socAuth = true; } if ($_GET["AUTH_SOCNET"]) { $Fields = array("UF_AUTH_SOCNET" => "1"); CustomUser::UserUpdate($Fields); } if ($USER->GetID() > 0 && !$USER->GetByID($USER->GetID())->Fetch()["UF_AUTH_SOCNET"] && $APPLICATION->GetCurDir() !== '/') { echo "<div class=\"after-login-message\">\r\n\t\t\t\t\t<div class=\"after-login-message-inner\">\r\n\t\t\t\t\t\t<h4>Для удобства использования социальной сети вы можете авторизоваться через:</h4>"; $APPLICATION->IncludeComponent("bitrix:system.auth.form", "myqube", array("REGISTER_URL" => "/club/group/search/", "PROFILE_URL" => "/user/profile/", "FORGOT_PASSWORD_URL" => "", "SHOW_ERRORS" => "Y", "ONLY_SOCNET" => "Y"), false); echo "<div class=\"after-login-message-n\"><a href=\"?AUTH_SOCNET=N\">ОТКАЗАТЬСЯ</a></div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>"; } // Редиректы со старого сайта if ($Dir[1] == "personal") { LocalRedirect(str_replace("personal", "user", $_SERVER["REQUEST_URI"])); } if ($Dir[1] == "club") { CModule::IncludeModule("iblock"); if ($Dir[2] == "group" && $Dir[3] == 6 && $Dir[4] == "post") { $res = CIBlockElement::GetList(array(), array("IBLOCK_ID" => 1, "PROPERTY_OLD_ID" => $Dir[5]), false, array(), array("ID")); while ($ob = $res->GetNextElement()) { $arFields = $ob->GetFields(); } if ($arFields["ID"] > 0) { LocalRedirect("/group/1/post/" . $arFields["ID"] . "/"); } else { LocalRedirect("/"); } } if ($Dir[2] == "group" && $Dir[3] == 6 && $Dir[4] == "events") { $res = CIBlockElement::GetList(array(), array("IBLOCK_ID" => 2, "PROPERTY_OLD_ID" => $Query[1]), false, array(), array("ID")); while ($ob = $res->GetNextElement()) { $arFields = $ob->GetFields(); } if ($arFields["ID"] > 0) { LocalRedirect("/group/1/events/" . $arFields["ID"] . "/"); } else { LocalRedirect("/"); } } if ($Dir[2] == "group" && $Dir[3] == 6 && $Dir[4] == "photo") { $res = CIBlockElement::GetList(array(), array("IBLOCK_ID" => 7, "PROPERTY_OLD_ID" => $Dir[6]), false, array(), array("ID")); while ($ob = $res->GetNextElement()) { $arFields = $ob->GetFields(); } if ($arFields["ID"] > 0) { LocalRedirect("/group/1/photo/" . $arFields["ID"] . "/"); } else { LocalRedirect("/"); } } } // Редиректы со старого сайта if ($Dir[1] == "group" && $Dir[2] == 1 && $Dir[3] !== "post" && !empty($Dir[3])) { $_SESSION["BackFromDetail"]["group_6"]["nPageSize"] = 1; } $CurentUser = array(); if (!empty($_GET["backurl"])) { $backurl = "&backurl=" . $_GET["backurl"]; } if (!$USER->IsAuthorized() && empty($_GET["POST_ID"]) && !empty($Dir[1]) && $Dir[1] !== 'group' && $Dir[1] !== 'bitrix' && !$socAuth && empty($backurl)) { LocalRedirect("/?backurl=" . $_SERVER["REQUEST_URI"]); } if (!$USER->IsAdmin()) { $CurentUserGroup = CUser::GetUserGroup($USER->GetID()); if (preg_match("#^/staff/#", $_SERVER["REQUEST_URI"])) { if (!in_array(9, $CurentUserGroup)) { LocalRedirect("/"); } } else { if (preg_match("#^/amplifiers/#", $_SERVER["REQUEST_URI"])) { if (!in_array(8, $CurentUserGroup)) { LocalRedirect("/"); } } else { if ($Dir[1] == "group" && $Dir[2] == 1) { if ($USER->IsAuthorized()) { $CurentUser = CUser::GetByID($USER->GetID())->Fetch(); if (!in_array(1, $CurentUser["UF_GROUPS"])) { // не член 1 группы if (empty($backurl) && !empty($Dir[3])) { LocalRedirect("/group/1/?backurl=" . $_SERVER["REQUEST_URI"]); } if (strlen($CurentUser["PERSONAL_BIRTHDAY"]) > 0) { // ДатаРождения заполнена /* if(CustomUser::UserCheckFields()) { // все поля заполнены корректно CustomUser::UserUpdate(array("UF_GROUPS" => array(1))); CModule::IncludeModule("iblock"); $filter = Array ("UF_GROUPS" => 1); //$rsUsers = CUser::GetList(($by="timestamp_x"), ($order="desc"), $filter); //CIBlockElement::SetPropertyValues(1, 4, $rsUsers->NavRecordCount, "USERS"); LocalRedirect("/group/1/".$backurl); } else */ if (18 <= date("Y") - date("Y", strtotime($CurentUser["PERSONAL_BIRTHDAY"]))) { // старше 18 лет, но не все поля заполнены if (!$CurentUser['UF_YOU_HAVE_18']) { CustomUser::UserUpdate(array("UF_YOU_HAVE_18" => true)); } if ($_GET["message"] !== "checking_user_fields") { LocalRedirect("/group/1/?message=checking_user_fields" . $backurl); } } elseif (18 > date("Y") - date("Y", strtotime($CurentUser["PERSONAL_BIRTHDAY"]))) { // младше 18 лет CustomUser::UserUpdate(array("UF_YOU_HAVE_18" => false, "UF_DO_YOU_SMOKE" => false)); if ($_GET["message"] !== "you_are_under_18") { LocalRedirect("/group/1/?message=you_are_under_18" . $backurl); } } else { echo "Какая-то другая ошибка"; } } else { // ДатаРождения не заполнена if ($_GET["message"] !== "birthday") { if ($_SERVER["REQUEST_URI"] == "/group/1/u_concept/") { $backurl = "&backurl=/group/1/u_concept/"; } LocalRedirect("/group/1/?message=birthday" . $backurl); } } } elseif (!empty($_GET["message"])) { LocalRedirect("/group/1/" . $backurl); } } elseif (!empty($Dir[3]) && empty($_GET["POST_ID"]) && empty($backurl) && $Dir[4] !== "u_creative" && $Dir[3] !== "u_concept" && $Dir[3] !== "concept.ural2015") { LocalRedirect("/?backurl=" . $_SERVER["REQUEST_URI"]); } } } } } if (!empty($_GET["backurl"]) && $USER->IsAuthorized() && empty($_GET["message"])) { LocalRedirect($_GET["backurl"]); } }