Advertisement
Guest User

aasa

a guest
Jul 27th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.99 KB | None | 0 0
  1. function onKeyUpPhone(idPhone) {
  2.  
  3. var str = $("#" + idPhone).val();
  4. var strNum = str.replace(/\D+/g,""); // оставляем только цифры
  5.  
  6. //console.log('str='+str);
  7.  
  8. if (strNum.length > 4) {
  9. var flag = false; // признак недопустимости номера
  10.  
  11. if (str.substring(0, 3) !== '+380') {
  12. flag = true;
  13. } else {
  14. var prefix = strNum.substring(3, 5); // префикс оператора
  15. flag = true;
  16. // массив префиксов мобильных телефонов:
  17. arrPrefix.forEach(function(item, i, arr) {
  18. //console.log('item='+item);
  19. if (item == prefix) flag = false;
  20. });
  21. }
  22.  
  23. // если недопустимый номер:
  24. if (flag) {
  25. $("#" + idPhone).val("+380"); // начальное значение
  26. strNum = '380';
  27. /*$('#phone').mask("+38999 999 9999", {
  28. autoclear: false
  29. });*/
  30. $("#" + idPhone).focus(); // установить фокус
  31. $("#" + idPhone).selectionStart = 4; // позиция курсора
  32. }
  33.  
  34. // делаем активными/неактивными элементы формы:
  35. if ((strNum.length == 12) && (document.getElementById("regCodereg").value.length == 0)) {
  36. if (flagReg.reCaptcha) {
  37. $('#buttonGetCode').removeAttr('disabled');
  38. }
  39. flagReg.phone = true;
  40. } else {
  41. $('#buttonGetCode').attr('disabled', true);
  42. flagReg.phone = false;
  43. }
  44. // console.log(flagReg);
  45.  
  46. }
  47.  
  48. return true;
  49. }
  50.  
  51. /**
  52. * обрабатывает onkeyUp на поле ввода промокода
  53. */
  54. function onkeyUpPromoCode() {
  55.  
  56. $('#buttonRefreshProduct').removeAttr('disabled');
  57. return false;
  58. }
  59.  
  60. function onClickGetCode() {
  61. if (!flagReg.phone || !flagReg.reCaptcha) return false;
  62.  
  63. ga('send', 'pageview', '/poluchit-kod-na-telefon'); // аналитика
  64. $("#mobile-phone").val($("#phone").val());
  65. //sendCodeReg($("#phone").val(), $("#captcha").val()); // отправляем код
  66. sendCodeReg($("#phone").val(), $("#g-recaptcha-response").val()); // отправляем код
  67. }
  68.  
  69. function sendCodeReg(phone, captcha) {
  70.  
  71. // получаем язык сайта
  72. var lang = document.getElementById('lang').innerHTML;
  73.  
  74. var url = "/ru/?ajax";
  75. var data = {
  76. typeData: 'sendCodeReg',
  77. phone: phone,
  78. captcha: captcha,
  79. lang: lang
  80. };
  81.  
  82. // console.log(data);
  83.  
  84. $.ajax({
  85. url: url,
  86. type: 'POST',
  87. data: {data: data},
  88. dataType: 'json',
  89. //dataType: 'html',
  90. success: function(json){
  91. if(json) {
  92. //var js = JSON.parse(json);
  93. var js = json;
  94. if (js.message == 'OK') {
  95. $("#errorCaptcha").addClass("hidden");
  96. $("#code-modal").modal("show"); // показать модальное окно ввода кода
  97. } else {
  98. $("#errorCaptcha").removeClass("hidden");
  99. grecaptcha.reset(); // сброс капчи
  100. $('#buttonGetCode').attr('disabled', true);
  101. flagReg.reCaptcha = false;
  102. }
  103.  
  104. // console.log(js);
  105. };
  106. },
  107.  
  108. error: function(jqXHR, textStatus, errorThrown){
  109. // console.log(jqXHR); // вывод JSON в консоль
  110. console.log('Сообщение об ошибке от сервера: '+textStatus); // вывод JSON в консоль
  111. // console.log(errorThrown); // вывод JSON в консоль
  112. }
  113. });
  114.  
  115. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement