PageSourceSearch

https://oktlife.ru/local/templates/oktlife_new/assets/plugins/logi…/js/main.js?14509315965026

js oktlife.ru collected 2026-09-26 05:18:37 UTC 5,026 bytes, 147 lines download raw bytes

1jQuery(document).ready(function($) {
2  var $form_modal = $('.cd-user-modal'),
3    $form_login = $form_modal.find('#cd-login'),
4    $form_signup = $form_modal.find('#cd-signup'),
5    $form_forgot_password = $form_modal.find('#cd-reset-password'),
6    $form_modal_tab = $('.cd-switcher'),
7    $tab_login = $form_modal_tab.children('li').eq(0).children('a'),
8    $tab_signup = $form_modal_tab.children('li').eq(1).children('a'),
9    $forgot_password_link = $form_login.find('.cd-form-bottom-message a'),
10    $back_to_login_link = $form_forgot_password.find('.cd-form-bottom-message a'),
11    $main_nav = $('.cd-log_reg');
12
13  //open modal
14  $main_nav.on('click', function(event) {
15
16    if ($(event.target).is($main_nav)) {
17      // on mobile open the submenu
18      $(this).children('ul').toggleClass('is-visible');
19    } else {
20      // on mobile close submenu
21      $main_nav.children('ul').removeClass('is-visible');
22      //show modal layer
23      $form_modal.addClass('is-visible');
24      //show the selected form
25      ($(event.target).is('.cd-signup')) ? signup_selected() : login_selected();
26    }
27
28  });
29
30  //close modal
31  $('.cd-user-modal').on('click', function(event) {
32    if ($(event.target).is($form_modal) || $(event.target).is('.cd-close-form')) {
33      $form_modal.removeClass('is-visible');
34    }
35  });
36  //close modal when clicking the esc keyboard button
37  $(document).keyup(function(event) {
38    if (event.which == '27') {
39      $form_modal.removeClass('is-visible');
40    }
41  });
42
43  //switch from a tab to another
44  $form_modal_tab.on('click', function(event) {
45    event.preventDefault();
46    ($(event.target).is($tab_login)) ? login_selected() : signup_selected();
47  });
48
49  //hide or show password
50  $('.hide-password').on('click', function() {
51    var $this = $(this),
52      $password_field = $this.prev('input');
53
54    ('password' == $password_field.attr('type')) ? $password_field.attr('type', 'text') : $password_field.attr('type', 'password');
55    ('Hide' == $this.text()) ? $this.text('Show') : $this.text('Hide');
56    //focus and move cursor to the end of input field
57    $password_field.putCursorAtEnd();
58  });
59
60  //show forgot-password form
61  $forgot_password_link.on('click', function(event) {
62    event.preventDefault();
63    forgot_password_selected();
64  });
65
66  //back to login from the forgot-password form
67  $back_to_login_link.on('click', function(event) {
68    event.preventDefault();
69    login_selected();
70  });
71
72  function login_selected() {
73    $form_login.addClass('is-selected');
74    $form_signup.removeClass('is-selected');
75    $form_forgot_password.removeClass('is-selected');
76    $tab_login.addClass('selected');
77    $tab_signup.removeClass('selected');
78  }
79
80  function signup_selected() {
81    $form_login.removeClass('is-selected');
82    $form_signup.addClass('is-selected');
83    $form_forgot_password.removeClass('is-selected');
84    $tab_login.removeClass('selected');
85    $tab_signup.addClass('selected');
86  }
87
88  function forgot_password_selected() {
89    $form_login.removeClass('is-selected');
90    $form_signup.removeClass('is-selected');
91    $form_forgot_password.addClass('is-selected');
92  }
93
94  //REMOVE THIS - it's just to show error messages
95  $form_login.find('input[type="submit"]').on('click', function(event) {
96    event.preventDefault();
97    $form_login.find('input[type="email"]').toggleClass('has-error').next('span').toggleClass('is-visible');
98  });
99  $form_signup.find('input[type="submit"]').on('click', function(event) {
100    event.preventDefault();
101    $form_signup.find('input[type="email"]').toggleClass('has-error').next('span').toggleClass('is-visible');
102  });
103
104
105  //IE9 placeholder fallback
106  //credits http://www.hagenburger.net/BLOG/HTML5-Input-Placeholder-Fix-With-jQuery.html
107  if (!Modernizr.input.placeholder) {
108    $('[placeholder]').focus(function() {
109      var input = $(this);
110      if (input.val() == input.attr('placeholder')) {
111        input.val('');
112      }
113    }).blur(function() {
114      var input = $(this);
115      if (input.val() == '' || input.val() == input.attr('placeholder')) {
116        input.val(input.attr('placeholder'));
117      }
118    }).blur();
119    $('[placeholder]').parents('form').submit(function() {
120      $(this).find('[placeholder]').each(function() {
121        var input = $(this);
122        if (input.val() == input.attr('placeholder')) {
123          input.val('');
124        }
125      })
126    });
127  }
128
129});
130
131
132//credits http://css-tricks.com/snippets/jquery/move-cursor-to-end-of-textarea-or-input/
133jQuery.fn.putCursorAtEnd = function() {
134  return this.each(function() {
135    // If this function exists...
136    if (this.setSelectionRange) {
137      // ... then use it (Doesn't work in IE)
138      // Double the length because Opera is inconsistent about whether a carriage return is one character or two. Sigh.
139      var len = $(this).val().length * 2;
140      this.setSelectionRange(len, len);
141    } else {
142      // ... otherwise replace the contents with itself
143      // (Doesn't work in Google Chrome)
144      $(this).val($(this).val());
145    }
146  });
147};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.