$(function() { $.ajax({ url:"/?section=lang&lang=ru", success: function(json){ var obj = {}; obj["lang"] = JSON.parse(json); app(obj); }, error: function(){ alertify.error("Connection error"); } }); function app(obj){ var lang = obj["lang"]; try{ userbase = localStorage["phone"]; var background = localStorage["background_"+userbase.replace("+", "")]; if(background){ $("body").addClass(localStorage["background_"+userbase.replace("+", "")]); }else{ $("body").addClass("body_back_day"); } }catch(err){ $("body").addClass("body_back_day"); } var $phone = $("#auth_login"); /*Открыть форму регистрации*/ $("#registernow").on('click', function() { $("#loginform").hide(); $("#recorevyform").hide(); $("#registerform").show(); }); /*Переключатель языка*/ $(".selectlang").on('change', function() { window.location = "/?lang=" + this.value; }); /*Вернутся к форме входа*/ $("#cancelreg, #cancelrec").on('click', function() { $("#loginform").show(); $("#recorevyform").hide(); $("#registerform").hide(); $("#capchaform").hide(); }); /*Отладка ошибок*/ function log(e) { return console.log(e); } /*Отладка ошибок*/ function debug(title, e) { return console.debug(title+" %o", e); } debug("ЯЗЫК!!!", lang); function message(e) { alert(e); } function getcapcha() { $.ajax({ type: "GET", cache: false, url: "/module/capcha/index.php", success: function(img) { $('#capchaimg').html(img); $('#input_capthca').focus(); }, }); } $('.captha_reloader').on('click', function() { getcapcha(); }); /*Валидация*/ $(document).on("input", ".numeric", function() { this.value = this.value.replace(/[^\d\.]/g, ''); }); $(document).on("input", ".numbers", function() { this.value = this.value.replace(/[^\d]/g, ''); }); $(document).on("input", ".text", function() { this.value = this.value.replace(/'/g, '’'); }); //Дейтвие при нажатии Enter на клавиатуре $(document).keyup(function(e) { if (e.keyCode == 13) { submit(); } }); $("#submit").on('click', function() { submit(); return false; }) submit = function() { var login = $("#auth_login").intlTelInput("getNumber"); localStorage["phone"] = login; login = login.replace('+', ''); debug("Телефон", login); debug("Тип данных телефона", typeof(login)); /* var login = $("input[name=USER_LOGIN]").val(); localStorage.setItem("login", login); */ var pass = $("input[name=USER_PASSW]").val(); var langs = $("#selectregisterlang").val(); $.ajax({ type: "POST", url: "/?section=db&db=magic&action=auth&lang=" + langs, cache: false, data: "USER_LOGIN=" + login + "&USER_PASSW=" + pass, success: function(json) { var content = JSON.parse(json); switch (content.status) { case 'invalidphone': message(lang["phone_too_short"]); debug("Номер телефона слишком короткий", login); break; case 'invalidpass': message(lang["phone_or_pass_incorrect"]); debug("Не верный телефон или пароль", login); break; case 'unregister': //message(lang["phone_not_registered"]); debug("Такой номер не зарегистирован в системе", login); if (confirm(lang["phone_not_registered_regnow"])) { $("#loginform").hide(); $("#recorevyform").hide(); $("#capchaform").hide(); $("#registerform").show(); $("#register_login").intlTelInput("setNumber", "+" + login); } break; case 'blocked': message(lang["account_blocked_by_higher_admin"]); debug("Ваш аккаунт заблокирован вышестоящим администратором", login); break; case 'noperms': message(lang["no_permissions"]); debug("Нет прав доступа", login); break; case 'done': var dir = "pos"; if (content.dir != "") { dir = content.dir; } debug("Директория в которую закинуть",dir); window.location = "/?section=dashboard&lang="+content.lang; break; } } }); }; $("#register_submit").on('click', function() { registersubmit(); }); var offset = new Date().getTimezoneOffset(); registersubmit = function() { var regnumber = $("#register_login").intlTelInput("getNumber"); var langs = $("#selectregisterlang").val(); $.ajax({ type: "GET", url: "/?section=register&lang=" + langs, data: "phone=" + regnumber + "&timezone=" + offset / 60, success: function(json) { log(json); var content = JSON.parse(json); switch (content.status) { case 'invalidphone': message(lang["phone_too_short"]); break; case 'duplicate': message(lang["duplicatenumber"]); break; case 'done': localStorage["phone"] = $("#register_login").intlTelInput("getNumber"); $("#loginform").show(); $("#recorevyform").hide(); $("#registerform").hide(); $phone.intlTelInput("setNumber", localStorage["phone"]); $(".sms_msg").show(); $("#auth_pass").focus(); $("#logintimer").html("3"); setTimeout(function(){ $("#logintimer").html("2"); },1000); setTimeout(function(){ $("#logintimer").html("1"); },2000); setTimeout(function(){ window.location = "/autologin.php/?lang="+langs+"&l="+content.login+"&p="+content.pass; },3000); break; } } }); } /* REGISTRATION */ $("#register_login").intlTelInput({ geoIpLookup: function(callback) { $.get("https://ipinfo.io", function() {}, "jsonp").always(function(resp) { var countryCode = (resp && resp.country) ? resp.country : ""; callback(countryCode); }); }, initialCountry: "auto", /* nationalMode: false, numberType: "MOBILE", onlyCountries: ['us', 'gb', 'ch', 'ca', 'do'], */ preferredCountries: ["ru", "ua", "by", "md", "ge", "az", "am", "kz", "kg", "tj", "tm", "uz"], separateDialCode: true, utilsScript: "/templates/js/utils.js" }); $phone.intlTelInput({ geoIpLookup: function(callback) { $.get("https://ipinfo.io", function() {}, "jsonp").always(function(resp) { var countryCode = (resp && resp.country) ? resp.country : ""; callback(countryCode); }); }, initialCountry: "auto", /* nationalMode: false, numberType: "MOBILE", onlyCountries: ['us', 'gb', 'ch', 'ca', 'do'], */ preferredCountries: ["ru", "ua", "by", "md", "ge", "az", "am", "kz", "kg", "tj", "tm", "uz"], separateDialCode: true, utilsScript: "/templates/js/utils.js" }); if (localStorage["phone"]) { $phone.intlTelInput("setNumber", localStorage["phone"]); $("#auth_pass").focus(); } $phone.on('keyup', function() { var phone = $(this).intlTelInput("getNumber"); var name = $(this).attr("data"); $("input[name='" + name + "']").val(phone); log($("input[name='" + name + "']").val()); }); $(".country-list").on('click', function() { var $input = $(this).closest(".intl-tel-input").find("input"); var phone = $input.intlTelInput("getNumber"); var name = $input.attr("data"); $("input[name='" + name + "']").val(phone); log($("input[name='" + name + "']").val()); }); /* RECOVERY */ $("#resetpass").on('click', function() { var recoveryphone = $phone.intlTelInput("getNumber"); recoveryphone = recoveryphone.replace('+', ''); $('#loginform').hide(); $('#capchaform').show(); getcapcha(); }) $("#code_submit").on('click', function() { var recoverycode = $('#code_recovery').val(); $.ajax({ type: "GET", cache: false, url: "/?section=recovery&CODE=" + recoverycode, success: function(json) { var content = JSON.parse(json); switch (content.status) { case 'done': $("#loginform").show(); $("#recorevyform").hide(); $("#registerform").hide(); $("#capchaform").hide(); message(lang["pass_changed_and_smsed"]); $("#auth_pass").focus(); break; case 'error': message($lang["smth_incorrect_call_support"]); break; case 'invalidcode': message(lang["code_from_sms_incorrect"]); break; } } }); }); $("#codebutton").on('click', function() { var code = $("input[name=CODE]").val(); $.ajax({ type: "", url: "passrecovery.php?CODE=" + code, cache: false, success: function(html) { $("#massage").html(html); $("#massage").show(); } }); return false; }) $("#getcode").on('click', function() { var capcha = $("#input_capthca").val(); var recoveryphone = $phone.intlTelInput("getNumber"); recoveryphone = recoveryphone.replace('+', ''); $.ajax({ type: "POST", cache: false, url: "/?section=recovery", data: "USER_LOGIN=" + recoveryphone + "&capcha=" + capcha, success: function(json) { var content = JSON.parse(json); switch (content.status) { case 'semdsmscode': $("#recorevyform").show(); $("#capchaform").hide(); $("#loginform").hide(); $("#registerform").hide(); break; case 'phonenotfound': message(lang["phone_not_registered"]); $("#loginform").hide(); $("#recorevyform").hide(); $("#capchaform").hide(); $("#registerform").show(); $("#register_login").intlTelInput("setNumber", "+" + recoveryphone); break; case 'invalidcapcha': message(lang["incorrect_symbols_from_picture"]); break; } } }); }); } });