1jQuery(document).ready(function ($) { 2 3 // Login Signup Password Show Hide 4 jQuery('input[name="pt_user_pass"]').siblings('.jobsearch-user-showpass').on('click', function(e){ 5 e.preventDefault(); 6 var $passwordField = jQuery(this).siblings('input[name="pt_user_pass"]'); 7 var fieldType = $passwordField.attr('type'); 8 if (fieldType === 'password') { 9 $passwordField.attr('type', 'text'); 10 jQuery(this).addClass('jobsearch-user-hidepass'); 11 } else { 12 $passwordField.attr('type', 'password'); 13 jQuery(this).removeClass('jobsearch-user-hidepass'); 14 } 15 }); 16 17 // Function to toggle password visibility for confirmation password field 18 jQuery('input[name="pt_user_cpass"]').siblings('.jobsearch-user-showpass').on('click', function(e){ 19 e.preventDefault(); 20 var $passwordField = jQuery(this).siblings('input[name="pt_user_cpass"]'); 21 var fieldType = $passwordField.attr('type'); 22 if (fieldType === 'password') { 23 $passwordField.attr('type', 'text'); 24 jQuery(this).addClass('jobsearch-user-hidepass'); 25 } else { 26 $passwordField.attr('type', 'password'); 27 jQuery(this).removeClass('jobsearch-user-hidepass'); 28 } 29 }); 30 31 // Check if password field has a value on page load 32 jQuery('input[name="pt_user_pass"], input[name="pt_user_cpass"]').on('keyup', function() { 33 var $passwordField = jQuery(this); 34 var $icon = $passwordField.siblings('.jobsearch-user-showpass'); 35 if ($passwordField.val().trim() !== '') { 36 $icon.show(); 37 } else { 38 $icon.hide(); 39 } 40 }).trigger('keyup'); 41 42 43 44 45 46 // demo login 47 $(document).on('click', '.jobsearch-demo-login-btn', function () { 48 var _this = jQuery(this); 49 var user_type = 'candidate'; 50 var icon_class = 'jobsearch-icon jobsearch-user'; 51 if (_this.hasClass('employer-login-btn')) { 52 user_type = 'employer'; 53 icon_class = 'jobsearch-icon jobsearch-building'; 54 } 55 56 _this.find('i').attr('class', 'fa fa-refresh fa-spin'); 57 58 var request = $.ajax({ 59 url: jobsearch_login_register_common_vars.ajax_url, 60 method: "POST", 61 data: { 62 'user_type': user_type, 63 '_nonce': jobsearch_comon_script_vars.nonce, 64 'action': 'jobsearch_demo_user_login', 65 }, 66 dataType: "json" 67 }); 68 request.done(function (response) { 69 if (typeof response.redirect !== 'undefined') { 70 window.location.href = response.redirect; 71 return false; 72 } 73 window.location.reload(true); 74 }); 75 76 request.fail(function (jqXHR, textStatus) { 77 _this.find('i').attr('class', icon_class); 78 }); 79 }); 80 81 // Post login form 82 $(document).on('click', '.jobsearch-login-submit-btn', function (e) { 83 e.preventDefault(); 84 var _this = $(this), 85 this_id = $(this).data('id'), 86 login_form = $('#login-form-' + this_id), 87 msg_con = login_form.find('.login-reg-errors'), 88 loader_con = login_form.find('.form-loader'); 89 var button = $(this).find('button'); 90 var btn_html = button.html(); 91 msg_con.hide(); 92 _this.addClass('disabled-btn'); 93 _this.attr('disabled', 'disabled'); 94 //button.html('loading'); 95 loader_con.show(); 96 loader_con.html('<i class="fa fa-refresh fa-spin"></i>'); 97 $.post(jobsearch_login_register_common_vars.ajax_url, login_form.serialize(), function (data) { 98 99 var obj = $.parseJSON(data); 100 msg_con.html(obj.message); 101 102 loader_con.hide(); 103 loader_con.html(''); 104 _this.removeClass('disabled-btn'); 105 _this.removeAttr('disabled'); 106 msg_con.slideDown('slow'); 107 if (obj.error == false) { 108 // $('#pt-user-modal .modal-dialog').addClass('loading'); 109 //window.location.reload(true); 110 if (typeof obj.redirect !== 'undefined') { 111 window.location.href = obj.redirect; 112 } 113 button.hide(); 114 } 115 116 button.html(btn_html); 117 }); 118 });
119 // end login post 120 121 // Reset Password 122 // Switch forms login/register 123 $(document).on('click', '.lost-password', function (e) { 124 e.preventDefault(); 125 var this_id = $(this).data('id'); 126 $('.login-form-' + this_id).slideUp(); 127 $('.reset-password-' + this_id).slideDown(); 128 }); 129 $(document).on('click', '.login-form-btn', function (e) { 130 e.preventDefault(); 131 var this_id = $(this).data('id'); 132 $('.login-form-' + this_id).slideDown(); 133 $('.reset-password-' + this_id).slideUp(); 134 }); 135 $(document).on('click', '.register-form', function (e) { 136 e.preventDefault(); 137 var login_form = jQuery('#JobSearchModalLogin').find('form[id^="login-form-"]'); 138 var rgistr_form = jQuery('#JobSearchModalLogin').find('form[id^="registration-form-"]'); 139 var this_id = $(this).data('id'); 140 $('.reset-password-' + this_id).slideUp(); 141 $('.register-' + this_id).slideDown(); 142 $('.login-form-' + this_id).slideUp(); 143 144 // for redirect url 145 var redrct_hiden_field = login_form.find('input[name="jobsearch_wredirct_url"]'); 146 if (redrct_hiden_field.length > 0) { 147 var redrct_hiden_val = redrct_hiden_field.val(); 148 rgistr_form.append('<input type="hidden" name="jobsearch_wredirct_url" value="' + redrct_hiden_val + '">'); 149 if (rgistr_form.find('input[name="jobsearch_job_id"]').length == 0) { 150 var form_job_id = rgistr_form.attr('data-jid'); 151 rgistr_form.append('<input type="hidden" name="jobsearch_job_id" value="' + form_job_id + '">'); 152 } 153 redrct_hiden_field.remove(); 154 } 155 156 // for packages 157 var pkginfo_hiden_field = login_form.find('input[name="extra_login_params"]'); 158 if (pkginfo_hiden_field.length > 0) { 159 var pkginfo_hiden_val = pkginfo_hiden_field.val(); 160 rgistr_form.append('<input type="hidden" name="extra_login_params" value="' + pkginfo_hiden_val + '">'); 161 pkginfo_hiden_field.remove(); 162 } 163 }); 164 $(document).on('click', '.reg-tologin-btn', function (e) { 165 e.preventDefault(); 166 var login_form = jQuery('#JobSearchModalLogin').find('form[id^="login-form-"]'); 167 var rgistr_form = jQuery('#JobSearchModalLogin').find('form[id^="registration-form-"]'); 168 var this_id = $(this).data('id'); 169 $('.reset-password-' + this_id).slideUp(); 170 $('.register-' + this_id).slideUp(); 171 $('.login-form-' + this_id).slideDown(); 172 173 // for redirect url 174 var redrct_hiden_field = rgistr_form.find('input[name="jobsearch_wredirct_url"]'); 175 if (redrct_hiden_field.length > 0) { 176 var redrct_hiden_val = redrct_hiden_field.val(); 177 login_form.append('<input type="hidden" name="jobsearch_wredirct_url" value="' + redrct_hiden_val + '">'); 178 redrct_hiden_field.remove(); 179 } 180 181 // for packages 182 var pkginfo_hiden_field = rgistr_form.find('input[name="extra_login_params"]'); 183 if (pkginfo_hiden_field.length > 0) { 184 var pkginfo_hiden_val = pkginfo_hiden_field.val(); 185 login_form.append('<input type="hidden" name="extra_login_params" value="' + pkginfo_hiden_val + '">'); 186 pkginfo_hiden_field.remove(); 187 } 188 }); 189 190 $(document).on('click', '.user-type-chose-btn', function () { 191 var this_type = $(this).attr('data-type'); 192 if (this_type != 'jobsearch_employer' && this_type != 'jobsearch_candidate') {
193 $('.user-candidate-spec-field').slideUp(); 194 $('.user-employer-spec-field').slideUp(); 195 $('.employer-cus-field').slideUp(); 196 $('.candidate-cus-field').slideUp(); 197 198 $('.' + this_type + '-spec-field').slideDown(); 199 } else { 200 if (this_type == 'jobsearch_employer') { 201 $('.user-candidate-spec-field').slideUp(); 202 $('.user-employer-spec-field').slideDown(); 203 $('.employer-cus-field').slideDown(); 204 $('.candidate-cus-field').slideUp(); 205 206 $('.jobsearch_recruiter-spec-field').slideUp(); 207 208 $('.jobsearch-register-form').find('.jobsearch-box-title-sub').slideUp(); 209 $('.jobsearch-register-form').find('.jobsearch-login-media').slideUp(); 210 } else { 211 $('.user-candidate-spec-field').slideDown(); 212 $('.user-employer-spec-field').slideUp(); 213 $('.employer-cus-field').slide
213Up(); 214 $('.candidate-cus-field').slideDown(); 215 216 $('.jobsearch_recruiter-spec-field').slideUp(); 217 218 $('.jobsearch-register-form').find('.jobsearch-box-title-sub').slideDown(); 219 $('.jobsearch-register-form').find('.jobsearch-login-media').slideDown(); 220 } 221 } 222 $(this).parents('.jobsearch-user-type-choose').find('li').removeClass('active'); 223 $(this).parent('li').addClass('active'); 224 $(this).parents('form').find('input[name="pt_user_role"]').val(this_type); 225 }); 226 227 $(document).on('change', 'input[type="radio"][name="pt_user_role"], select[name="pt_user_role"]', function () { 228 var this_type = $(this).val(); 229 if (this_type != 'jobsearch_employer' && this_type != 'jobsearch_candidate') { 230 $('.user-candidate-spec-field').slideUp(); 231 $('.user-employer-spec-field').slideUp(); 232 $('.employer-cus-field').slideUp(); 233 $('.candidate-cus-field').slide
233Up(); 234 235 $('.' + this_type + '-spec-field').slideDown(); 236 } else { 237 if (this_type == 'jobsearch_employer') { 238 $('.user-candidate-spec-field').slideUp(); 239 $('.user-employer-spec-field').slideDown(); 240 $('.employer-cus-field').slideDown(); 241 $('.candidate-cus-field').slideUp(); 242 $('.jobsearch_recruiter-spec-field').slideUp(); 243 } else { 244 $('.user-candidate-spec-field').slideDown(); 245 $('.user-employer-spec-field').slideUp(); 246 $('.employer-cus-field').slideUp(); 247 $('.candidate-cus-field').slideDown(); 248 $('.jobsearch_recruiter-spec-field').slideUp(); 249 } 250 } 251 }); 252 253 $(document).on('click', '.jobsearch-reset-password-submit-btn', function (e) { 254 e.preventDefault(); 255 var _this = $(this), 256 this_id = $(this).data('id'), 257 reset_password_form = $('#reset-password-form-' + this_id), 258 msg_con = reset_password_form.find('.reset-password-errors'), 259 loader_con = reset_password_form.find('.form-loader'); 260 var button = $(this).find('button'); 261 var btn_html = button.html(); 262 //button.html('loading'); 263 msg_con.hide(); 264 _this.addClass('disabled-btn'); 265 _this.attr('disabled', 'disabled'); 266 loader_con.show(); 267 loader_con.html('<i class="fa fa-refresh fa-spin"></i>'); 268 269 var reset_password_form_o = $('#reset-password-form-' + this_id)[0]; 270 var formData = new FormData(reset_password_form_o); 271 formData.append('_nonce', jobsearch_comon_script_vars.nonce); 272 var request = $.ajax({ 273 url: jobsearch_login_register_common_vars.ajax_url, 274 method: "POST", 275 processData: false, 276 contentType: false, 277 data: formData, 278 dataType: "json" 279 }); 280 request.done(function (response) { 281 msg_con.html(response.message); 282 283 msg_con.slideDown('slow'); 284 285 _this.removeClass('disabled-btn'); 286 _this.removeAttr('disabled'); 287 288 loader_con.hide(); 289 loader_con.html(''); 290 291 button.html(btn_html); 292 }); 293 request.fail(function (jqXHR, textStatus) { 294 _this.removeClass('disabled-btn'); 295 _this.removeAttr('disabled'); 296 loader_con.hide(); 297 loader_con.html(''); 298 }); 299 }); 300 // end reset password 301 302 // Post register form 303 $(document).on('click', '.jobsearch-register-submit-btn', function (e) { 304 e.preventDefault(); 305 var _this = $(this), 306 this_id = $(this).data('id'), 307 registration_form = $('#registration-form-' + this_id), 308 msg_con = registration_form.find('.registration-errors'), 309 loader_con = registration_form.find('.form-loader'); 310 311 var reg_user_role = 'jobsearch_candidate'; 312 var user_role_con = registration_form.find('input[name=pt_user_role]'); 313 if (user_role_con.attr('type') == 'radio') { 314 reg_user_role = registration_form.find('input[name=pt_user_role]:checked').val(); 315 } else { 316 reg_user_role = user_role_con.val(); 317 } 318 319 if (registration_form.find('input[class="jobsearch-check-userph-check"]').length > 0) { 320 if (typeof confirmationResult === 'undefined') { 321 return false; 322 } 323 } 324 325 var _form_error = false; 326 327 var form_req_fields = registration_form.find('.jobsearch-regrequire-field'); 328 if (form_req_fields.length > 0) { 329 jQuery.each(form_req_fields, function () { 330 var _this_obj = jQuery(this); 331 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')) { 332 var field_type = 'text'; 333 if (_this_obj.parent('.jobsearch-profile-select').length > 0) { 334 field_type = 'select'; 335 } 336 if (_this_obj.attr('type') == 'checkbox' || _this_obj.attr('type') == 'radio') { 337 var chek_field_name = _this_obj.attr('name'); 338 if ((jQuery('input[name="' + chek_field_name + '"]:checked').length) <= 0) { 339 _form_error = true; 340 _this_obj.parents('.jobsearch-cusfield-checkbox').css({"border": "1p
340x solid #ff0000"}); 341 } else { 342 _this_obj.parents('.jobsearch-cusfield-checkbox').css({"border": "none"}); 343 } 344 } else { 345 if (_this_obj.val() == '' || _this_obj.val() === null) { 346 if (field_type == 'select') { 347 if (_this_obj.parents('li').is(':visible')) { 348 _form_error = true; 349 _this_obj.parent('.jobsearch-profile-select').css({"border": "1px solid #ff0000"}); 350 } 351 } else { 352 if (_this_obj.parents('li').is(':visible')) { 353 _form_error = true; 354 _this_obj.css({"border": "1px solid #ff0000"}); 355 } 356 } 357 } else { 358 if (field_type == 'select') { 359 _this_obj.parent('.jobsearch-profile-select').css({"border": "none"}); 360 } else { 361 if (!_this_obj.hasClass('phone-input-error')) { 362 _this_obj.css({"border": "1px solid #efefef"}); 363 } 364 } 365 } 366 } 367 } 368 }); 369 } 370 var req_li_fields = registration_form.find('.regrequire-field-li'); 371 if (req_li_fields.length > 0) { 372 jQuery.each(req_li_fields, function () { 373 var _this_li = jQuery(this); 374 var _this_obj = _this_li.find('input[type="text"],select'); 375 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')) { 376 var field_type = 'text'; 377 if (_this_obj.parent('.jobsearch-profile-select').length > 0) { 378 field_type = 'select'; 379 } 380 if (_this_obj.val() == '' || _this_obj.val() === null) { 381 if (field_type == 'select') { 382 if (_this_obj.parents('li').is(':visible')) { 383 _form_error = true; 384 _this_obj.parent('.jobsearch-profile-select').css({"border": "1px solid #ff0000"}); 385 } 386 } else { 387 if (_this_obj.parents('li').is(':visible')) { 388 _form_error = true; 389 _this_obj.css({"border": "1px solid #ff0000"}); 390 } 391 } 392 } else { 393 if (field_type == 'select') { 394 _this_obj.parent('.jobsearch-profile-select').css({"border": "none"}); 395 } else { 396 if (!_this_obj.hasClass('phone-input-error')) { 397 _this_obj.css({"border": "1px solid #efefef"}); 398 } 399 } 400 } 401 } 402 }); 403 } 404 405 var user_email = registration_form.find('input[name=pt_user_email]'); 406 407 var cv_file = registration_form.find('input[name="candidate_cv_file"]'); 408 409 if (cv_file.length > 0 && cv_file.val() == '' && cv_file.hasClass('cv_is_req') && reg_user_role == 'jobsearch_candidate') { 410 _form_error = true; 411 jQuery('#jobsearch-upload-cv-main' + this_id).css({"border": "1px solid #ff0000"}); 412 } else { 413 jQuery('#jobsearch-upload-cv-main' + this_id).css({"border": "none"}); 414 } 415 416 if (!_form_error) { 417 418 var user_phone = registration_form.find('input[name="pt_user_phone"]'); 419 420 var get_terr_val = jobsearch_accept_terms_cond_pop(registration_form); 421 if (get_terr_val != 'yes') { 422 return false; 423 } 424 425 if (registration_form.find('.other-conds-con').length > 0) { 426 var other_func = registration_form.find('.other-conds-con').attr('data-key'); 427 if (!jobsearch_js_call_user_func(other_func, [_this])) { 428 return false; 429 } 430 } 431 432 var error = 0; 433 // 434 if (user_phone.hasClass('phone-input-error')) {
435 jQuery('.phone-input-error').css({"border": "1px solid #ff0000"}); 436 error = 1; 437 } 438 439 if (error == 0) { 440 var button = $(this).find('button'); 441 var btn_html = button.html(); 442 //button.html('loading'); 443 msg_con.hide(); 444 _this.addClass('disabled-btn'); 445 _this.attr('disabled', 'disabled'); 446 loader_con.show(); 447 loader_con.html('<i class="fa fa-refresh fa-spin"></i>'); 448 //var form_data = registration_form.serialize(); 449 var reg_ser_form = $('#registration-form-' + this_id)[0]; 450 var formData = new FormData(reg_ser_form); 451 452 var request = $.ajax({ 453 url: jobsearch_login_register_common_vars.ajax_url, 454 method: "POST", 455 processData: false, 456 contentType: false, 457 data: formData, 458 dataType: "json" 459 }); 460 request.done(function (response) { 461 if (typeof response.message !== 'undefined') { 462 msg_con.html(response.message); 463 msg_con.slideDown('slow'); 464 button.html(btn_html); 465 _this.removeClass('disabled-btn'); 466 _this.removeAttr('disabled'); 467 468 if (typeof response.error !== 'undefined' && response.error == true) { 469 loader_con.hide(); 470 loader_con.html(''); 471 return false; 472 } 473 474 if (typeof response.redirect !== 'undefined') { 475 window.location.href = response.redirect; 476 } else { 477 if (typeof response.email_auth !== 'undefined' && response.email_auth == '1') { 478 var closePopOpnVrify = setInterval(function() { 479 loader_con.html(''); 480 jQuery('.jobsearch-modal').removeClass('fade-in').addClass('fade'); 481 jQuery('body').removeClass('jobsearch-modal-active'); 482 jQuery('#JobSearchModalAccountActivationForm').find('input[name="user_email"]').val(user_email.val()); 483 jQuery('#JobSearchModalAccountActivationForm').find('input[name="user_email"]').attr('value', user_email.val()); 484 jobsearch_modal_popup_open('JobSearchModalAccountActivationForm'); 485 clearInterval(closePopOpnVrify); 486 }, 2000); 487 } else { 488 loader_con.html(''); 489 } 490 } 491 } 492 }); 493 request.fail(function (jqXHR, textStatus) { 494 _this.removeClass('disabled-btn'); 495 _this.removeAttr('disabled'); 496 loader_con.hide(); 497 loader_con.html(''); 498 }); 499 } 500 } 501 }); 502}); 503 504jQuery(document).on('click', '.jobsearch-resend-accactbtn', function (e) { 505 e.preventDefault(); 506 var _this = jQuery(this); 507 var user_login = _this.attr('data-login'); 508 _this.find('i').remove(); 509 var _this_html = _this.html(); 510 // 511 var thisemail_err_con = _this.parents('.login-reg-errors').find('.email-exceed-err'); 512 thisemail_err_con.hide(); 513 // 514 _this.html(_this_html + '<i class="fa fa-refresh fa-spin"></i>'); 515 var request = jQuery.ajax({ 516 url: jobsearch_plugin_vars.ajax_url, 517 method: "POST", 518 data: { 519 user_login: user_login, 520 _nonce: jobsearch_comon_script_vars.nonce, 521 action: 'jobsearch_resend_user_acc_approval_email', 522 }, 523 dataType: "json" 524 });
525 526 request.done(function (response) { 527 if (typeof response.success !== 'undefined' && response.success == '1') { 528 _this.html(_this_html + '<i class="fa fa-check"></i>'); 529 window.location.reload(true); 530 } else { 531 _this.html(_this_html + '<i class="fa fa-times"></i>'); 532 if (thisemail_err_con.length > 0) { 533 thisemail_err_con.html(response.msg); 534 } else { 535 _this.parents('.login-reg-errors').append('<div class="alert alert-danger email-exceed-err">' + response.msg + '</div>'); 536 } 537 thisemail_err_con.removeAttr('style'); 538 } 539 }); 540 541 request.fail(function (jqXHR, textStatus) { 542 _this.html(_this_html + '<i class="fa fa-times"></i>'); 543 }); 544}); 545 546jQuery(document).on('click', '.user-passreset-submit-btn', function (e) { 547 e.preventDefault(); 548 var _this = jQuery(this); 549 var _user_id = _this.attr('data-id'); 550 var _user_key = _this.attr('data-key'); 551 552 var this_form = _this.parents('form'); 553 var this_loader = this_form.find('.loader-box'); 554 var this_msg_con = this_form.find('.message-box'); 555 556 var new_pass = this_form.find('input[name="new_pass"]'); 557 var conf_pass = this_form.find('input[name="conf_pass"]'); 558 var password_nonce = this_form.find('input[name="password_nonce"]'); 559 560 var error = 0; 561 if (new_pass.val() == '') { 562 error = 1; 563 new_pass.css({"border": "1px solid #ff0000"}); 564 } else { 565 new_pass.css({"border": "1px solid #d3dade"}); 566 } 567 if (conf_pass.val() == '') { 568 error = 1; 569 conf_pass.css({"border": "1px solid #ff0000"}); 570 } else { 571 conf_pass.css({"border": "1px solid #d3dade"}); 572 } 573 574 if (error == 0) { 575 576 this_msg_con.hide(); 577 this_loader.html('<i class="fa fa-refresh fa-spin"></i>'); 578 var request = jQuery.ajax({ 579 url: jobsearch_plugin_vars.ajax_url, 580 method: "POST", 581 data: { 582 user_id: _user_id, 583 user_key: _user_key, 584 new_pass: new_pass.val(), 585 conf_pass: conf_pass.val(), 586 password_nonce: password_nonce.val(), 587 action: 'jobsearch_pass_reseting_by_redirect_url', 588 }, 589 dataType: "json" 590 }); 591 592 request.done(function (response) { 593 var msg_before = ''; 594 var msg_after = ''; 595 if (typeof response.error !== 'undefined') { 596 if (response.error == '1') { 597 msg_before = '<div class="alert alert-danger"><i class="fa fa-times"></i>'; 598 msg_after = '</div>'; 599 } else if (response.error == '0') { 600 msg_before = '<div class="alert alert-success"><i class="fa fa-check"></i>'; 601 msg_after = '</div>'; 602 } 603 } 604 if (typeof response.msg !== 'undefined') { 605 this_msg_con.html(msg_before + response.msg + msg_after); 606 this_msg_con.slideDown(); 607 if (typeof response.error !== 'undefined' && response.error == '0') { 608 new_pass.val(''); 609 conf_pass.val(''); 610 this_form.find('ul.email-fields-list').slideUp(); 611 } 612 } else { 613 this_msg_con.html(jobsearch_plugin_vars.error_msg); 614 } 615 this_loader.html(''); 616 617 }); 618 619 request.fail(function (jqXHR, textStatus) { 620 this_loader.html(jobsearch_plugin_vars.error_msg); 621 }); 622 } 623});
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.