PageSourceSearch

https://equipoadip.com.ar/wp-content/plugins/wp-jobsearch/modules/…/js/login-registration.js?ver=7.1.2

js equipoadip.com.ar collected 2026-10-05 22:05:04 UTC 34,975 bytes, 716 lines download raw bytes

1/* The 6-digit activation OTP builder (window.jobsearchOtpFieldHtml) and its
2 * delegated controller live in the globally-enqueued js/jobsearch-plugin.js,
3 * so they're available on every front-end page where an activation field can
4 * appear (login popup, registration, apply-job). Don't redefine them here. */
5jQuery(document).ready(function ($) {
6
7    // Login Signup Password Show Hide
8    jQuery('input[name="pt_user_pass"]').siblings('.jobsearch-user-showpass').on('click', function(e){
9        e.preventDefault();
10        var $passwordField = jQuery(this).siblings('input[name="pt_user_pass"]');
11        var fieldType = $passwordField.attr('type');
12        if (fieldType === 'password') {
13            $passwordField.attr('type', 'text');
14            jQuery(this).addClass('jobsearch-user-hidepass');
15        } else {
16            $passwordField.attr('type', 'password');
17            jQuery(this).removeClass('jobsearch-user-hidepass');
18        }
19    });
20
21    // Function to toggle password visibility for confirmation password field
22    jQuery('input[name="pt_user_cpass"]').siblings('.jobsearch-user-showpass').on('click', function(e){
23        e.preventDefault();
24        var $passwordField = jQuery(this).siblings('input[name="pt_user_cpass"]');
25        var fieldType = $passwordField.attr('type');
26        if (fieldType === 'password') {
27            $passwordField.attr('type', 'text');
28            jQuery(this).addClass('jobsearch-user-hidepass');
29        } else {
30            $passwordField.attr('type', 'password');
31            jQuery(this).removeClass('jobsearch-user-hidepass');
32        }
33    });
34
35    // Check if password field has a value on page load
36    jQuery('input[name="pt_user_pass"], input[name="pt_user_cpass"]').on('keyup', function() {
37        var $passwordField = jQuery(this);
38        var $icon = $passwordField.siblings('.jobsearch-user-showpass');
39        if ($passwordField.val().trim() !== '') {
40            $icon.show();
41        } else {
42            $icon.hide();
43        }
44    }).trigger('keyup');
45
46
47
48
49
50    // demo login
51    $(document).on('click', '.jobsearch-demo-login-btn', function () {
52        var _this = jQuery(this);
53        var user_type = 'candidate';
54        var icon_class = 'jobsearch-icon jobsearch-user';
55        if (_this.hasClass('employer-login-btn')) {
56            user_type = 'employer';
57            icon_class = 'jobsearch-icon jobsearch-building';
58        }
59
60        _this.find('i').attr('class', 'fa fa-refresh fa-spin');
61
62        var request = $.ajax({
63            url: jobsearch_login_register_common_vars.ajax_url,
64            method: "POST",
65            data: {
66                'user_type': user_type,
67                '_nonce': jobsearch_comon_script_vars.nonce,
68                'action': 'jobsearch_demo_user_login',
69            },
70            dataType: "json"
71        });
72        request.done(function (response) {
73            // Success = no error flag. Redirect to the dashboard when provided,
74            // otherwise reload (the auth cookie is already set).
75            if (response && (typeof response.error === 'undefined' || response.error === '0' || response.error === 0)) {
76                if (response.redirect) {
77                    window.location.href = response.redirect;
78                } else {
79                    window.location.reload(true);
80                }
81                return false;
82            }
83            // Failure: restore the icon and SHOW the server message instead of
84            // silently reloading (which previously hid "disabled"/"not allowed").
85            _this.find('i').attr('class', icon_class);
86            var msg = (response && response.msg) ? response.msg : 'Demo login failed. Please try again.';
87            if (typeof jobsearchAlert === 'function') {
88                jobsearchAlert('error', msg);
89            } else {
90                window.alert(msg);
91            }
92        });
93
94        request.fail(function (jqXHR, textStatus) {
95            _this.find('i').attr('class', icon_class);
96            if (typeof jobsearchAlert === 'function') {
97                jobsearchAlert('error', 'Demo login request failed. Please try again.');
98            }
99        });
100    });
101
102    // Post login form
103    $(document).on('click', '.jobsearch-login-submit-btn', function (e) {
104        e.preventDefault();
105        var _this = $(this),
106                this_id = $(this).data('id'),
107                login_form = $('#login-form-' + this_id),
108                msg_con = login_form.find('.login-reg-errors'),
109                loader_con = login_form.find('.form-loader');
110        var button = $(this).find('button');
111        var btn_html = button.html();
112        msg_con.hide();
113        _this.addClass('disabled-btn');
114        _this.attr('disabled', 'disabled');
115        //button.html('loading');
116        loader_con.show();
117        loader_con.html('<i class="fa fa-refresh fa-spin"></i>');
118        $.post(jobsearch_login_register_common_vars.ajax_url, login_form.serialize(), function (data) {
119
120            var obj = $.parseJSON(data);
121            var is_not_active = (typeof obj.not_active !== 'undefined' && obj.not_active == '1');
122            var alert_type = (typeof obj.error !== 'undefined' && obj.error) ? 'error' : (is_not_active ? 'info' : 'success');
123            jobsearchAlert(alert_type, obj.message);
124
125            loader_con.hide();
126            loader_con.html('');
127            _this.removeClass('disabled-btn');
128            _this.removeAttr('disabled');
129            msg_con.slideDown('slow');
130
131            // Account not active: surface the activation popup automatically (prefilled email).
132            if (is_not_active) {
133                var actv_popup = jQuery('#JobSearchModalAccountActivationForm');
134                var actv_email = (typeof obj.user_email !== 'undefined' && obj.user_email) ? obj.user_email : login_form.find('input[name="pt_user_login"]').val();
135                actv_popup.find('input[name="user_email"]').val(actv_email).attr('value', actv_email);
136                jQuery('.jobsearch-modal').removeClass('fade-in').addClass('fade');
137                jQuery('body').removeClass('jobsearch-modal-active');
138                jobsearch_modal_popup_open('JobSearchModalAccountActivationForm');
139            }
140
141            if (obj.error == false) {
142                // $('#pt-user-modal .modal-dialog').addClass('loading');
143                //window.location.reload(true);
144                if (typeof obj.redirect !== 'undefined') {
145                    window.location.href = obj.redirect;
146                }
147                button.hide();
148            }
149
150            button.html(btn_html);
151        });
152    });
153    // end login post
154
155    // Reset Password
156    // Switch forms login/register
157    $(document).on('click', '.lost-password', function (e) {
158        e.preventDefault();
159        var this_id = $(this).data('id');
160        $('.login-form-' + this_id).slideUp();
161        $('.reset-password-' + this_id).slideDown();
162    });
163    $(document).on('click', '.login-form-btn', function (e) {
164        e.preventDefault();
165        var this_id = $(this).data('id');
166        $('.login-form-' + this_id).slideDown();
167        $('.reset-password-' + this_id).slideUp();
168    });
169    $(document).on('click', '.register-form', function (e) {
170        e.preventDefault();
171        var login_form = jQuery('#JobSearchModalLogin').find('form[id^="login-form-"]');
172        var rgistr_form = jQuery('#JobSearchModalLogin').find('form[id^="registration-form-"]');
173        var this_id = $(this).data('id');
174        $('.reset-password-' + this_id).slideUp();
175        $('.register-' + this_id).slideDown();
176        $('.login-form-' + this_id).slideUp();
177        
178        // for redirect url
179        var redrct_hiden_field = login_form.find('input[name="jobsearch_wredirct_url"]');
180        if (redrct_hiden_field.length > 0) {
181            var redrct_hiden_val = redrct_hiden_field.val();
182            rgistr_form.append('<input type="hidden" name="jobsearch_wredirct_url" value="' + redrct_hiden_val + '">');
183            if (rgistr_form.find('input[name="jobsearch_job_id"]').length == 0) {
184                var form_job_id = rgistr_form.attr('data-jid');
185                rgistr_form.append('<input type="hidden" name="jobsearch_job_id" value="' + form_job_id + '">');
186            }
187            redrct_hiden_field.remove();
188        }
189
190        // for packages
191        var pkginfo_hiden_field = login_form.find('input[name="extra_login_params"]');
192        if (pkginfo_hiden_field.length > 0) {
193            var pkginfo_hiden_val = pkginfo_hiden_field.val();
194            rgistr_form.append('<input type="hidden" name="extra_login_params" value="' + pkginfo_hiden_val + '">');
195            pkginfo_hiden_field.remove();
196        }
197    });
198    $(document).on('click', '.reg-tologin-btn', function (e) {
199        e.preventDefault();
200        var login_form = jQuery('#JobSearchModalLogin').find('form[id^="login-form-"]');
201        var rgistr_form = jQuery('#JobSearchModalLogin').find('form[id^="registration-form-"]');
202        var this_id = $(this).data('id');
203        $('.reset-password-' + this_id).slideUp();
204        $('.register-' + this_id).slideUp();
205        $('.login-form-' + this_id).slideDown();
206        
207        // for redirect url
208        var redrct_hiden_field = rgistr_form.find('input[name="jobsearch_wredirct_url"]');
209        if (redrct_hiden_field.length > 0) {
210            var redrct_hiden_val = redrct_hiden_field.val();
211            login_form.append('<input type="hidden" name="jobsearch_wredirct_url" value="' + redrct_hiden_val + '">');
212            redrct_hiden_field.remove();
213        }
214
215        // for packages
216        var pkginfo_hiden_field = rgistr_form.find('input[name="extra_login_params"]');
217        if (pkginfo_hiden_field.length > 0) {
218            var pkginfo_hiden_val = pkginfo_hiden_field.val();
219            login_form.append('<input type="hidden" name="extra_login_params" value="' + pkginfo_hiden_val + '">');
220            pkginfo_hiden_field.remove();
221        }
222    });
223
224    $(document).on('click', '.user-type-chose-btn', function () {
225        var this_type = $(this).attr('data-type');
226        if (this_type != 'jobsearch_employer' && this_type != 'jobsearch_candidate') {
227            $('.user-candidate-spec-field').slideUp();
228            $('.user-employer-spec-field').slideUp();
229            $('.employer-cus-field').slideUp();
230            $('.candidate-cus-field').slideUp();
231            
232            $('.' + this_type + '-spec-field').slideDown();
233        } else {
234            if (this_type == 'jobsearch_employer') {
235                $('.user-candidate-spec-field').slideUp();
236                $('.user-employer-spec-field').slideDown();
237                $('.employer-cus-field').slideDown();
238                $('.candidate-cus-field').slideUp();
239                
240                $('.jobsearch_recruiter-spec-field').slideUp();
241                
242                $('.jobsearch-register-form').find('.jobsearch-box-title-sub').slideUp();
243                $('.jobsearch-register-form').find('.jobsearch-login-media').slideUp();
244            } else {
245                $('.user-candidate-spec-field').slideDown();
246                $('.user-employer-spec-field').slideUp();
247                $('.employer-cus-field').slide
247Up();
248                $('.candidate-cus-field').slideDown();
249                
250                $('.jobsearch_recruiter-spec-field').slideUp();
251                
252                $('.jobsearch-register-form').find('.jobsearch-box-title-sub').slideDown();
253                $('.jobsearch-register-form').find('.jobsearch-login-media').slideDown();
254            }
255        }
256        $(this).parents('.jobsearch-user-type-choose').find('li').removeClass('active');
257        $(this).parent('li').addClass('active');
258        $(this).parents('form').find('input[name="pt_user_role"]').val(this_type);
259    });
260
261    $(document).on('change', 'input[type="radio"][name="pt_user_role"], select[name="pt_user_role"]', function () {
262        var this_type = $(this).val();
263        if (this_type != 'jobsearch_employer' && this_type != 'jobsearch_candidate') {
264            $('.user-candidate-spec-field').slideUp();
265            $('.user-employer-spec-field').slideUp();
266            $('.employer-cus-field').slideUp();
267            $('.candidate-cus-field').slide
267Up();
268            
269            $('.' + this_type + '-spec-field').slideDown();
270        } else {
271            if (this_type == 'jobsearch_employer') {
272                $('.user-candidate-spec-field').slideUp();
273                $('.user-employer-spec-field').slideDown();
274                $('.employer-cus-field').slideDown();
275                $('.candidate-cus-field').slideUp();
276                $('.jobsearch_recruiter-spec-field').slideUp();
277            } else {
278                $('.user-candidate-spec-field').slideDown();
279                $('.user-employer-spec-field').slideUp();
280                $('.employer-cus-field').slideUp();
281                $('.candidate-cus-field').slideDown();
282                $('.jobsearch_recruiter-spec-field').slideUp();
283            }
284        }
285    });
286
287    $(document).on('click', '.jobsearch-reset-password-submit-btn', function (e) {
288        e.preventDefault();
289        var _this = $(this),
290                this_id = $(this).data('id'),
291                reset_password_form = $('#reset-password-form-' + this_id),
292                msg_con = reset_password_form.find('.reset-password-errors'),
293                loader_con = reset_password_form.find('.form-loader');
294        var button = $(this).find('button');
295        var btn_html = button.html();
296        //button.html('loading');
297        msg_con.hide();
298        _this.addClass('disabled-btn');
299        _this.attr('disabled', 'disabled');
300        loader_con.show();
301        loader_con.html('<i class="fa fa-refresh fa-spin"></i>');
302        
303        var reset_password_form_o = $('#reset-password-form-' + this_id)[0];
304        var formData = new FormData(reset_password_form_o);
305        formData.append('_nonce', jobsearch_comon_script_vars.nonce);
306        var request = $.ajax({
307            url: jobsearch_login_register_common_vars.ajax_url,
308            method: "POST",
309            processData: false,
310            contentType: false,
311            data: formData,
312            dataType: "json"
313        });
314        request.done(function (response) {
315            jobsearchAlert((typeof response.error !== 'undefined' && response.error) ? 'error' : 'success', response.message);
316
317            msg_con.slideDown('slow');
318
319            _this.removeClass('disabled-btn');
320            _this.removeAttr('disabled');
321
322            loader_con.hide();
323            loader_con.html('');
324
325            button.html(btn_html);
326        });
327        request.fail(function (jqXHR, textStatus) {
328            _this.removeClass('disabled-btn');
329            _this.removeAttr('disabled');
330            loader_con.hide();
331            loader_con.html('');
332        });
333    });
334    // end reset password
335
336    // Post register form
337    $(document).on('click', '.jobsearch-register-submit-btn', function (e) {
338        e.preventDefault();
339        var _this = $(this),
340                this_id = $(this).data('id'),
341                registration_form = $('#registration-form-' + this_id),
342                msg_con = registration_form.find('.registration-errors'),
343                loader_con = registration_form.find('.form-loader');
344               
345        var reg_user_role = 'jobsearch_candidate';
346        var user_role_con = registration_form.find('input[name=pt_user_role]');
347        if (user_role_con.attr('type') == 'radio') {
348            reg_user_role = registration_form.find('input[name=pt_user_role]:checked').val();
349        } else {
350            reg_user_role = user_role_con.val();
351        }
352
353        if (registration_form.find('input[class="jobsearch-check-userph-check"]').length > 0) {
354            if (typeof confirmationResult === 'undefined') {
355                return false;
356            }
357        }
358        
359        var _form_error = false;
360        
361        var form_req_fields = registration_form.find('.jobsearch-regrequire-field');
362        if (form_req_fields.length > 0) {
363            jQuery.each(form_req_fields, function () {
364                var _this_obj = jQuery(this);
365                if (typeof _this_obj.attr('name') !== undefined && _this_obj.attr('name') != '' && _this_obj.attr('name') != 'undefined' && !_this_obj.hasClass('selectize-control') && !_this_obj.hasClass('selectize-dropdown')) {
366                    var field_type = 'text';
367                    if (_this_obj.parent('.jobsearch-profile-select').length > 0) {
368                        field_type = 'select';
369                    }
370                    if (_this_obj.attr('type') == 'checkbox' || _this_obj.attr('type') == 'radio') {
371                        var chek_field_name = _this_obj.attr('name');
372                        if ((jQuery('input[name="' + chek_field_name + '"]:checked').length) <= 0) {
373                            _form_error = true;
374                            _this_obj.parents('.jobsearch-cusfield-checkbox').css({"border": "1p
374x solid #ff0000"});
375                        } else {
376                            _this_obj.parents('.jobsearch-cusfield-checkbox').css({"border": "none"});
377                        }
378                    } else {
379                        if (_this_obj.val() == '' || _this_obj.val() === null) {
380                            if (field_type == 'select') {
381                                if (_this_obj.parents('li').is(':visible')) {
382                                    _form_error = true;
383                                    _this_obj.parent('.jobsearch-profile-select').css({"border": "1px solid #ff0000"});
384                                }
385                            } else {
386                                if (_this_obj.parents('li').is(':visible')) {
387                                    _form_error = true;
388                                    _this_obj.css({"border": "1px solid #ff0000"});
389                                }
390                            }
391                        } else {
392                            if (field_type == 'select') {
393                                _this_obj.parent('.jobsearch-profile-select').css({"border": "none"});
394                            } else {
395                                if (!_this_obj.hasClass('phone-input-error')) {
396                                    _this_obj.css({"border": "1px solid #efefef"});
397                                }
398                            }
399                        }
400                    }
401                }
402            });
403        }
404        var req_li_fields = registration_form.find('.regrequire-field-li');
405        if (req_li_fields.length > 0) {
406            jQuery.each(req_li_fields, function () {
407                var _this_li = jQuery(this);
408                var _this_obj = _this_li.find('input[type="text"],select');
409                if (typeof _this_obj.attr('name') !== undefined && _this_obj.attr('name') != '' && _this_obj.attr('name') != 'undefined' && !_this_obj.hasClass('selectize-control') && !_this_obj.hasClass('selectize-dropdown')) {
410                    var field_type = 'text';
411                    if (_this_obj.parent('.jobsearch-profile-select').length > 0) {
412                        field_type = 'select';
413                    }
414                    if (_this_obj.val() == '' || _this_obj.val() === null) {
415                        if (field_type == 'select') {
416                            if (_this_obj.parents('li').is(':visible')) {
417                                _form_error = true;
418                                _this_obj.parent('.jobsearch-profile-select').css({"border": "1px solid #ff0000"});
419                            }
420                        } else {
421                            if (_this_obj.parents('li').is(':visible')) {
422                                _form_error = true;
423                                _this_obj.css({"border": "1px solid #ff0000"});
424                            }
425                        }
426                    } else {
427                        if (field_type == 'select') {
428                            _this_obj.parent('.jobsearch-profile-select').css({"border": "none"});
429                        } else {
430                            if (!_this_obj.hasClass('phone-input-error')) {
431                                _this_obj.css({"border": "1px solid #efefef"});
432                            }
433                        }
434                    }
435                }
436            });
437        }
438        
439        var user_email = registration_form.find('input[name=pt_user_email]');
440        
441        var cv_file = registration_form.find('input[name="candidate_cv_file"]');
442        
443        if (cv_file.length > 0 && cv_file.val() == '' && cv_file.hasClass('cv_is_req') && reg_user_role == 'jobsearch_candidate') {
444            _form_error = true;
445            jQuery('#jobsearch-upload-cv-main' + this_id).css({"border": "1px solid #ff0000"});
446        } else {
447            jQuery('#jobsearch-upload-cv-main' + this_id).css({"border": "none"});
448        }
449        
450        if (!_form_error) {
451
452            var user_phone = registration_form.find('input[name="pt_user_phone"]');
453
454            var get_terr_val = jobsearch_accept_terms_cond_pop(registration_form);
455            if (get_terr_val != 'yes') {
456                return false;
457            }
458            
459            if (registration_form.find('.other-conds-con').length > 0) {
460                var other_func = registration_form.find('.other-conds-con').attr('data-key');
461                if (!jobsearch_js_call_user_func(other_func, [_this])) {
462                    return false;
463                }
464            }
465
466            var error = 0;
467            //
468            if (user_phone.hasClass('phone-input-error')) {
469                jQuery('.phone-input-error').css({"border": "1px solid #ff0000"});
470                error = 1;
471            }
472
473            if (error == 0) {
474                var button = $(this).find('button');
475                var btn_html = button.html();
476                //button.html('loading');
477                msg_con.hide();
478                _this.addClass('disabled-btn');
479                _this.attr('disabled', 'disabled');
480                loader_con.show();
481                loader_con.html('<i class="fa fa-refresh fa-spin"></i>');
482                //var form_data = registration_form.serialize();
483                var reg_form_con = $('#registration-form-' + this_id);
484                var reg_ser_form = $('#registration-form-' + this_id)[0];
485                var formData = new FormData(reg_ser_form);
486
487                var request = $.ajax({
488                    url: jobsearch_login_register_common_vars.ajax_url,
489                    method: "POST",
490                    processData: false,
491                    contentType: false,
492                    data: formData,
493                    dataType: "json"
494                });
495                request.done(function (response) {
496                    if (typeof response.message !== 'undefined') {
497                        var reg_not_active = (typeof response.not_active !== 'undefined' && response.not_active == '1');
498                        var reg_alert_type = (typeof response.error !== 'undefined' && response.error) ? 'error' : (reg_not_active ? 'info' : 'success');
499                        jobsearchAlert(reg_alert_type, response.message);
500                        msg_con.slideDown('slow');
501                        button.html(btn_html);
502                        _this.removeClass('disabled-btn');
503                        _this.removeAttr('disabled');
504
505                        // Email already registered but not activated: surface the activation popup (prefilled email).
506                        if (reg_not_active) {
507                            loader_con.hide();
508                            loader_con.html('');
509                            var reg_actv_popup = jQuery('#JobSearchModalAccountActivationForm');
510                            var reg_actv_email = (typeof response.user_email !== 'undefined' && response.user_email) ? response.user_email : user_email.val();
511                            reg_actv_popup.find('input[name="user_email"]').val(reg_actv_email).attr('value', reg_actv_email);
512                            jQuery('.jobsearch-modal').removeClass('fade-in').addClass('fade');
513                            jQuery('body').removeClass('jobsearch-modal-active');
514                            jobsearch_modal_popup_open('JobSearchModalAccountActivationForm');
515                            return false;
516                        }
517
518                        if (typeof response.error !== 'undefined' && response.error == true) {
519                            loader_con.hide();
520                            loader_con.html('');
521                            return false;
522                        }
523
524                        if (typeof response.check_activation !== 'undefined' && response.check_activation == '1') {
525                            
526                            if (reg_form_con.closest('.jobsearch-modal').length) {
527                                var form_main_fields = reg_form_con.find('>.jobsearch-user-form > ul > li');
528                                var codefield_html = window.jobsearchOtpFieldHtml({ liClass: 'jobsearch-email-codechkfield jobsearch-user-form-coltwo-full', label: jobsearch_login_register_common_vars.actvcode_fieldlbl });
529                            } else {
530                                var form_main_fields = reg_form_con.find('> ul > li');
531                                var codefield_html = window.jobsearchOtpFieldHtml({ liClass: 'jobsearch-email-codechkfield', label: jobsearch_login_register_common_vars.actvcode_fieldlbl });
532                            }
533                            form_main_fields.each(function() {
534                                var _this_field = jQuery(this);
535                                if (!_this_field.hasClass('regsend-submit-btncon')) {
536                                    _this_field.hide();
537                                }
538                            });
539                            //
540                            reg_form_con.find('>.jobsearch-box-title').hide();
541                            reg_form_con.find('>.jobsearch-user-options').hide();
542                            
543                            var sbmitbtn_con = reg_form_con.find('.regsend-submit-btncon');
544                            if (!reg_form_con.find('.jobsearch-email-codechkfield').length) {
545                                if (!reg_form_con.find('.jobsearch-activ-notice').length) {
546                                    var rg_actv_email = user_email.length ? user_email.val() : '';
547                                    var rg_notice_html = '<li class="jobsearch-activ-notice-li jobsearch-user-form-coltwo-full"><div class="jobsearch-activ-notice">'
548                                        + '<span class="jobsearch-activ-notice-icon"><i class="fa fa-envelope-o"></i></span>'
549                                        + '<div class="jobsearch-activ-notice-text">'
550                                        + '<p>' + jobsearch_login_register_common_vars.activ_notice_msg1 + '</p>'
551                                        + '<p><a href="javascript:void(0);" class="jobsearch-resend-accactbtn" data-login="' + rg_actv_email + '">' + jobsearch_login_register_common_vars.activ_notice_lnk + '</a> ' + jobsearch_login_register_common_vars.activ_notice_msg2 + '</p>'
552                                        + '</div></div></li>';
553                                    sbmitbtn_con.before(rg_notice_html);
554                                }
555                                sbmitbtn_con.before(codefield_html);
556                            }
557                            sbmitbtn_con.find('input[type="submit"]').attr('value', jobsearch_login_register_common_vars.verify_btnlbl);
558                            sbmitbtn_con.find('button[type="submit"]').html(jobsearch_login_register_common_vars.verify_btnlbl);
559                            sbmitbtn_con.find('.terms-priv-chek-con').hide();
560                            sbmitbtn_con.find('.jobsearch-user-form-info').hide();
561                            reg_form_con.find('.jobsearch-login-media').hide();
562                            loader_con.html('');
563
564                            return false;
565                        }
566
567                        if (typeof response.redirect !== 'undefined') {
568                            window.location.href = response.redirect;
569                        } else {
570                            if (typeof response.email_auth !== 'undefined' && response.email_auth == '1') {
571                                var closePopOpnVrify = setInterval(function() {
572                                    loader_con.html('');
573                                    jQuery('.jobsearch-modal').removeClass('fade-in').addClass('fade');
574                                    jQuery('body').removeClass('jobsearch-modal-active');
575                                    jQuery('#JobSearchModalAccountActivationForm').find('input[name="user_email"]').val(user_email.val());
576                                    jQuery('#JobSearchModalAccountActivationForm').find('input[name="user_email"]').attr('value', user_email.val());
577                                    jobsearch_modal_popup_open('JobSearchModalAccountActivationForm');
578                                    clearInterval(closePopOpnVrify);
579                                }, 2000);
580                            } else {
581                                loader_con.html('');
582                            }
583                        }
584                    }
585                });
586                request.fail(function (jqXHR, textStatus) {
587                    _this.removeClass('disabled-btn');
588                    _this.removeAttr('disabled');
589                    loader_con.hide();
590                    loader_con.html('');
591                });
592            }
593        }
594    });
595});
596
597jQuery(document).on('click', '.jobsearch-resend-accactbtn', function (e) {
598    e.preventDefault();
599    var _this = jQuery(this);
600    var user_login = _this.attr('data-login');
601    // The account-activation popup link has no data-login; fall back to the email entered in the form.
602    if (!user_login) {
603        user_login = _this.closest('form').find('input[name="user_email"]').val();
604    }
605    if (!user_login) {
606        jobsearchAlert('error', jobsearch_plugin_vars.error_msg);
607        return false;
608    }
609    _this.find('i').remove();
610    var _this_html = _this.html();
611    //
612    var thisemail_err_con = _this.parents('.login-reg-errors').find('.email-exceed-err');
613    thisemail_err_con.hide();
614    //
615    _this.html(_this_html + '<i class="fa fa-refresh fa-spin"></i>');
616    var request = jQuery.ajax({
617        url: jobsearch_plugin_vars.ajax_url,
618        method: "POST",
619        data: {
620            user_login: user_login,
621            _nonce: jobsearch_comon_script_vars.nonce,
622            action: 'jobsearch_resend_user_acc_approval_email',
623        },
624        dataType: "json"
625    });
626
627    request.done(function (response) {
628        if (typeof response.success !== 'undefined' && response.success == '1') {
629            _this.html(_this_html + '<i class="fa fa-check"></i>');
630            if (response.msg) {
631                jobsearchAlert('success', response.msg);
632            }
633            // Inside the activation popup / inline verify form: keep it open so the user can enter the new code.
634            if (!_this.closest('.jobsearch-modal, form').length) {
635                window.location.reload(true);
636            }
637        } else {
638            _this.html(_this_html + '<i class="fa fa-times"></i>');
639            if (response.msg) {
640                jobsearchAlert('error', response.msg);
641            }
642        }
643    });
644
645    request.fail(function (jqXHR, textStatus) {
646        _this.html(_this_html + '<i class="fa fa-times"></i>');
647    });
648});
649
650jQuery(document).on('click', '.user-passreset-submit-btn', function (e) {
651    e.preventDefault();
652    var _this = jQuery(this);
653    var _user_id = _this.attr('data-id');
654    var _user_key = _this.attr('data-key');
655
656    var this_form = _this.parents('form');
657    var this_loader = this_form.find('.loader-box');
658    var this_msg_con = this_form.find('.message-box');
659
660    var new_pass = this_form.find('input[name="new_pass"]');
661    var conf_pass = this_form.find('input[name="conf_pass"]');
662    var password_nonce = this_form.find('input[name="password_nonce"]');
663    
664    var error = 0;
665    if (new_pass.val() == '') {
666        error = 1;
667        new_pass.css({"border": "1px solid #ff0000"});
668    } else {
669        new_pass.css({"border": "1px solid #d3dade"});
670    }
671    if (conf_pass.val() == '') {
672        error = 1;
673        conf_pass.css({"border": "1px solid #ff0000"});
674    } else {
675        conf_pass.css({"border": "1px solid #d3dade"});
676    }
677
678    if (error == 0) {
679
680        this_msg_con.hide();
681        this_loader.html('<i class="fa fa-refresh fa-spin"></i>');
682        var request = jQuery.ajax({
683            url: jobsearch_plugin_vars.ajax_url,
684            method: "POST",
685            data: {
686                user_id: _user_id,
687                user_key: _user_key,
688                new_pass: new_pass.val(),
689                conf_pass: conf_pass.val(),
690                password_nonce: password_nonce.val(),
691                action: 'jobsearch_pass_reseting_by_redirect_url',
692            },
693            dataType: "json"
694        });
695
696        request.done(function (response) {
697            if (typeof response.msg !== 'undefined') {
698                jobsearchAlert(response.error == '0' ? 'success' : (response.error == '2' ? 'warning' : 'error'), response.msg);
699                if (typeof response.error !== 'undefined' && response.error == '0') {
700                    new_pass.val('');
701                    conf_pass.val('');
702                    jQuery('.jobsearch-modal').removeClass('fade-in').addClass('fade');
703                    jQuery('body').removeClass('jobsearch-modal-active');
704                }
705            } else {
706                jobsearchAlert('error', jobsearch_plugin_vars.error_msg);
707            }
708            this_loader.html('');
709
710        });
711
712        request.fail(function (jqXHR, textStatus) {
713            jobsearchAlert('error', jobsearch_plugin_vars.error_msg);
714        });
715    }
716});

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.