1var icms = icms || {}; 2 3$(document).ready(function(){ 4 5 for(var module in icms){ 6 if ( typeof(icms[module].onDocumentReady) === 'function' ) { 7 icms[module].onDocumentReady(); 8 } 9 } 10 11 renderHtmlAvatar(); 12 13 $('.widget_tabbed').each(function(){ 14 15 $('.tabs .tab a', $(this)).click(function(){ 16 var wid = $(this).data('id'); 17 var block = $(this).parent('li').parent('ul').parent('.tabs').parent('.widget_tabbed'); 18 $('.body', block).hide(); 19 $('.links-wrap', block).hide(); 20 $('#widget-'+wid, block).show(); 21 $('#widget-links-'+wid, block).show(); 22 $('.tabs a', block).removeClass('active'); 23 $(this).addClass('active'); 24 return false; 25 }); 26 27 }); 28 29 $('.messages.ajax-modal a').on('click', function(){ 30 $('#popup-manager').addClass('nyroModalMessage'); 31 }); 32 33}); 34 35icms.menu = (function ($) { 36 37 this.onDocumentReady = function(){ 38 39 $(document).on('click', function(event) { 40 if ($(event.target).closest('.dropdown_menu').length) { 41 $('.dropdown_menu > input').not($(event.target).closest('.dropdown_menu > input')).prop('checked', false); 42 return; 43 } 44 $('.dropdown_menu > input').prop('checked', false); 45 }); 46 47 // var dropdown = $('<select class="mobile_menu_select" />').appendTo("nav"); 48 // $("<option value='/'></option>").appendTo(dropdown); 49 // 50 // $("nav .menu li > a").each(function() { 51 // var el = $(this); 52 // var nav_level = $("nav .menu").parents().length; 53 // var el_level = $(this).parents().length - nav_level; 54 // var pad = new Array(el_level-2 + 1).join('-') + ' '; 55 // var attr = { 56 // value : el.attr('href'), 57 // text : pad + el.text() 58 // }; 59 // if(window.location.pathname.indexOf(el.attr('href')) === 0){ 60 // attr.selected = true; 61 // } 62 // $("<option>", attr).appendTo(dropdown); 63 // }); 64 // 65 // $("nav select.mobile_menu_select").change(function() { 66 // window.location = $(this).find("option:selected").val(); 67 // }); 68 69 if ($('.tabs-menu').length){ 70 71 $(".tabs-menu").each(function() { 72 73 var tabs = $(this); 74 75 var dropdown = $('<select class="mobile_menu_select" />').prependTo(tabs); 76 $("> ul > li > a", tabs).each(function() { 77 var el = $(this); 78 var attr = { 79 value : el.attr('href'), 80 text : el.text() 81 }; 82 if(el.parent('li').hasClass('active')){ 83 attr.selected = true; 84 } 85 $("<option>", attr).appendTo(dropdown); 86 }); 87 88 $(dropdown).change(function() { 89 window.location = $(this).find("option:selected").val(); 90 }); 91 92 }); 93 94 } 95 96 if($('div.widget.fixed_actions_menu').length){ 97 if ($('#breadcrumbs').length){ 98 $('#breadcrumbs').prepend($('div.widget.fixed_actions_menu')); 99 $('div.widget.fixed_actions_menu').on('click', function (){ 100 if($(this).hasClass('clicked')){ return; } 101 var __menu = $(this).addClass('clicked'); 102 var hide_func = function (){ 103 $(document).one('click', function(event) { 104 if ($(event.target).closest(__menu).length) { hide_func(); return; } 105 $(__menu).removeClass('clicked'); 106 }); 107 }; 108 hide_func(); 109 }); 110 } else { 111 $('div.widget.fixed_actions_menu').removeClass('fixed_actions_menu'); 112 } 113 }; 114 115 }; 116 117 return this; 118 119}).call(icms.menu || {},jQuery); 120 121icms.forms = (function ($) { 122 123 this.wysiwygs_insert_pool = {insert: {}, add: {}, init: {}, save: {}}; 124 this.submitted = false;
125 this.form_changed = false; 126 this.csrf_token = false; 127 128 var _this = this; 129 130 this.addWysiwygsInsertPool = function (field_name, callback){ 131 this.wysiwygs_insert_pool.insert[field_name] = callback; 132 }; 133 134 this.addWysiwygsAddPool = function (field_name, callback){ 135 this.wysiwygs_insert_pool.add[field_name] = callback; 136 }; 137 138 this.addWysiwygsInitPool = function (field_name, callback){ 139 this.wysiwygs_insert_pool.init[field_name] = callback; 140 }; 141 142 this.addWysiwygsSavePool = function (field_name, callback){ 143 this.wysiwygs_insert_pool.save[field_name] = callback; 144 }; 145 146 this.wysiwygBeforeSubmit = function (){ 147 for(var field_name in this.wysiwygs_insert_pool.save) { 148 if(this.wysiwygs_insert_pool.save.hasOwnProperty(field_name)){ 149 if (typeof(this.wysiwygs_insert_pool.save[field_name]) === 'function') { 150 this.wysiwygs_insert_pool.save[field_name](field_name); 151 } 152 } 153 } 154 return this; 155 }; 156 157 this.wysiwygInit = function (field_name){ 158 if (typeof(this.wysiwygs_insert_pool.init[field_name]) === 'function') { 159 this.wysiwygs_insert_pool.init[field_name](field_name); 160 } 161 return this; 162 }; 163 164 this.wysiwygInsertText = function (field_name, text){ 165 if (typeof(this.wysiwygs_insert_pool.insert[field_name]) === 'function') { 166 this.wysiwygs_insert_pool.insert[field_name](field_name, text); 167 } else { 168 $('#'+field_name).val(text).focus(); 169 } 170 return this; 171 }; 172 173 this.wysiwygAddText = function (field_name, text){ 174 if (typeof(this.wysiwygs_insert_pool.add[field_name]) === 'function') { 175 this.wysiwygs_insert_pool.add[field_name](field_name, text); 176 } else { 177 addTextToPosition($('#'+field_name), text); 178 } 179 return this; 180 }; 181 182 this.getCsrfToken = function (){ 183 if(this.csrf_token === false){ 184 this.csrf_token = $('meta[name="csrf-token"]').attr('content'); 185 } 186 return this.csrf_token; 187 }; 188 189 this.setCsrfToken = function (csrf_token){ 190 this.csrf_token = csrf_token; 191 }; 192 193 this.getFilterFormParams = function(form){ 194 195 var form_params = _this.toJSON(form); 196 197 var o = {}; 198 for(var name in form_params){if(form_params.hasOwnProperty(name)){ 199 if(name === 'page'){ continue; } 200 if(form_params[name] && form_params[name] !== '0'){ 201 o[name] = form_params[name]; 202 } 203 }} 204 205 return o; 206 207 }; 208 209 this.initFilterForm = function(selector){ 210 211 var change = function (){ 212 213 var form = $(this.closest('form')); 214 215 var sbutton = $(form).find('.buttons input[type = submit]'); 216 var spinner = $(form).find('.spinner.filter_loader'); 217 218 $(sbutton).prop('disabled', true); 219 $(spinner).show(); 220 221 var o = _this.getFilterFormParams(form); 222 223 if(Object.keys(o).length > 0){ 224 var submit_uri = $(form).attr('action'); 225 } else { 226 var submit_uri = $(form).find('.cancel_filter_link').attr('href'); 227 } 228 229 o.show_count = 1; 230 231 var query_string = $.param(o); 232 233 $.get(submit_uri+'?'+query_string, function(result){ 234 if(result.filter_link){ 235 $(form).data('filter_link', result.filter_link); 236 } else { 237 $(form).removeData('filter_link'); 238 } 239 $(sbutton).val(result.hint).prop('disabled', false); 240 $(spinner).fadeOut('slow'); 241 }, 'json'); 242 243 }; 244 245 var delay = function () { 246 var timer = 0; 247 return function () { 248 var context = this, args = arguments; 249 clearTimeout(timer); 250 timer = setTimeout(function () { 251 change.apply(context, args); 252 }, 500); 253 }; 254 } 255 256 $(selector).find('select, input[type=checkbox]').on('change', change);
257 $(selector).find('input:not([type=checkbox]), textarea').on('input', delay()); 258 259 $(selector).find('.buttons input[type = submit]').on('click', function (){ 260 261 var form = $(this.closest('form')); 262 263 var filter_link = $(form).data('filter_link'); 264 265 if(filter_link){ 266 window.location.href = filter_link; 267 return false; 268 } 269 270 var submit_uri = $(form).attr('action'); 271 272 var o = _this.getFilterFormParams(form); 273 274 var query_string = $.param(o); 275 if(query_string.length > 0){ 276 window.location.href = submit_uri+'?'+query_string; 277 } else { 278 window.location.href = $(form).find('.cancel_filter_link').attr('href'); 279 } 280 281 return false; 282 283 }); 284 285 }; 286 287 this.initUnsaveNotice = function(){ 288 289 var init_data = {}; 290 291 $('form').each(function(i){ 292 init_data[i] = _this.toJSON($(this)); 293 $(this).attr('data-notice_id', i); 294 }); 295 296 $(document).on('change', '.form-tabs input, .form-tabs select, .form-tabs textarea', function (e) { 297 var form = $(this).closest('form'); 298 _this.form_changed = (JSON.stringify(init_data[form.attr('data-notice_id')]) !== JSON.stringify(_this.toJSON(form))) ? true : false; 299 }); 300 $(document).on('submit', 'form', function () { 301 icms.forms.submitted = true; 302 }); 303 $(window).on('beforeunload', function (e) { 304 if (icms.forms.form_changed && !icms.forms.submitted) { 305 var e = e || window.event; 306 var msg = LANG_SUBMIT_NOT_SAVE; 307 if (e) { 308 e.returnValue = msg; 309 } 310 return msg; 311 } 312 }); 313 314 }; 315 316 this.toJSON = function(form) { 317 _this.wysiwygBeforeSubmit(); 318 var o = {}; 319 var a = form.serializeArray(); 320 $.each(a, function() { 321 if (o[this.name] !== undefined) { 322 if (!o[this.name].push) { 323 o[this.name] = [o[this.name]]; 324 } 325 o[this.name].push(this.value || ''); 326 } else { 327 o[this.name] = this.value || ''; 328 } 329 }); 330 return o; 331 }; 332 333 this.submit = function(selector){ 334 selector = selector || '.button-submit'; 335 icms.forms.submitted = true; 336 $(selector).trigger('click'); 337 }; 338 339 this.updateChildList = function (child_id, url, value, current_value){ 340 341 var child_list = $('#'+child_id); 342 343 if ($('#f_'+child_id+' .loading').length==0){ 344 $('#f_'+child_id+' label').append(' <div class="loading"></div>'); 345 } 346 347 child_list.html(''); 348 349 current_value = current_value || ''; 350 351 if(!$.isArray(current_value)){ 352 current_value = [current_value]; 353 } 354 355 $.post(url, {value: value}, function(result){ 356 357 for(var k in result){if(result.hasOwnProperty(k)){ 358 if(typeof result[k].value !== 'undefined'){ 359 var _value = result[k].value; 360 var title = result[k].title; 361 }else{ 362 var _value = k; 363 var title = result[k]; 364 } 365 child_list.append('<option value="'+_value+'"'+($.inArray(_value, current_value) !== -1 ? ' selected' : '')+'>'+title+'</option>'); 366 }} 367 368 $(child_list).trigger('chosen:updated'); 369 370 $('#f_'+child_id+' .loading').remove(); 371 372 icms.events.run('icms_forms_updatechildlist', result); 373 374 }, 'json'); 375 376 }; 377 378 this.submitAjax = function(form, additional_params){ 379 380 icms.forms.submitted = true; 381 382 var form_data = this.toJSON($(form)); 383 384 if(additional_params){ 385 $.extend(form_data, additional_params); 386 } 387 388 var url = $(form).attr('action'); 389 390 var submit_btn = $(form).find('.button-submit'); 391 392 $(submit_btn).prop('disabled', true); 393 394 $.post(url, form_data, function(result){ 395 396 $(submit_btn).prop('disabled', false); 397 398 if (result.errors == false){ 399 if ("callback" in result){ 400 window[result.callback](form_data, result); return; 401 } 402 if (result.success_text){ 403 icms.modal.alert(result.success_text); 404 } 405 return; 406 } 407 408 if (typeof(result.errors)=='object'){ 409 410 $('.field_error', form).removeClass('field_error'); 411 $('.error_text', form).remove(); 412 413 for(var field_id in result.errors){ 414 var id = field_id.replace(':', '_'); 415 $('#f_'+id, form).addClass('field_error'); 416 $('#f_'+id, form).prepend('<div class="error_text">' + result.errors[field_id] + '</div>'); 417 $(form).find('ul.tabbed > li > a[href = "#'+$('#f_'+id, form).parents('.tab').attr('id')+'"]').trigger('click'); 418 } 419 420 icms.events.run('icms_forms_submitajax', result); 421 422 icms.modal.resize(); 423 424 icms.forms.submitted = false;
425 426 return; 427 428 } 429 430 }, 'json'); 431 432 return false; 433 434 }; 435 436 this.initSymbolCount = function (field_id, max, min){ 437 $('#f_'+field_id).append('<div class="symbols_count"><span class="symbols_num"></span><span class="symbols_spell"></span></div>'); 438 var symbols_count = $('#f_'+field_id+' > .symbols_count'); 439 var symbols_num = $('.symbols_num', symbols_count); 440 var symbols_spell = $('.symbols_spell', symbols_count); 441 if(max){ 442 var type = 'left'; 443 } else { 444 var type = 'total'; 445 } 446 if(min){ 447 type = 'total'; 448 } 449 var field_id_el = $('#'+field_id); 450 451 $(symbols_num).on('click', function (){ 452 if(max){ 453 if(type === 'total'){ 454 type = 'left'; 455 } else { 456 type = 'total'; 457 } 458 render_symbols_count(); 459 } 460 }); 461 var render_symbols_count = function (){ 462 var num = +$(field_id_el).val().length; 463 if(!num){ 464 $(symbols_num).html(''); $(symbols_count).hide(); return; 465 } 466 if(min){ if(num < min){ 467 $(symbols_num).addClass('overflowing_min'); 468 } else { 469 $(symbols_num).removeClass('overflowing_min'); 470 }} 471 if(max && num > max){ 472 $(symbols_num).addClass('overflowing'); 473 } else { 474 $(symbols_num).removeClass('overflowing'); 475 } 476 if(type === 'total'){ 477 $(symbols_count).fadeIn(); 478 $(symbols_num).html(num); 479 $(symbols_spell).html(spellcount(num, LANG_CH1, LANG_CH2, LANG_CH10)); 480 } else { 481 $(symbols_count).fadeIn(); 482 if(num > max){ 483 num = max; 484 $(field_id_el).val($(field_id_el).val().substr(0, max)); 485 } 486 $(symbols_num).html((max - num)); 487 $(symbols_spell).html(spellcount(num, LANG_CH1, LANG_CH2, LANG_CH10)+' '+LANG_ISLEFT); 488 } 489 }; 490 $(field_id_el).on('input', render_symbols_count); 491 icms.events.on('autocomplete_select', function(){ render_symbols_count(); }); 492 render_symbols_count(); 493 }; 494 495 this.getInputVal = function(el){ 496 if($(el).is(':checkbox,:radio')){ 497 var v = $(el+':checked').val(); 498 return typeof v === 'undefined' ? '0' : v; 499 } 500 return $(el).val(); 501 }; 502 this.inputNameToId = function(name){ 503 name = name.replace(/\:|\|/g,'_'); 504 return name; 505 }; 506 this.inputNameToElName = function(name){ 507 name = name.split(':'); 508 return (typeof name !== 'string' && name.length > 1) ? name.shift()+'['+name.join('][')+']' : name; 509 }; 510 this.VDListeners = {}; 511 this.VDRules = {from:{},depends:{}}; 512 this.addVisibleDepend = function(form_id, field_id, rules){ 513 if(typeof this.VDRules.depends[form_id+'-'+field_id] === 'undefined'){ /* здеÑÑ Ð²Ñе завиÑимоÑÑи Ð¿Ð¾Ð»Ñ field_name */ 514 this.VDRules.depends[form_id+'-'+field_id] = rules; /* array('is_cats' => array('show' => array('1'))) */ 515 }else{ 516 $.extend(this.VDRules.depends[form_id+'-'+field_id], rules); 517 } 518 for(var f in rules){if(rules.hasOwnProperty(f)){ 519 if(typeof this.VDRules.from[form_id+'-'+f] === 'undefined'){this.VDRules.from[form_id+'-'+f] = {};} 520 if(typeof this.VDRules.from[form_id+'-'+f][field_id] === 'undefined'){ /* здеÑÑ Ð²Ñе, кÑо завиÑÐ¸Ñ Ð¾Ñ Ð¿Ð¾Ð»Ñ f */ 521 this.VDRules.from[form_id+'-'+f][field_id] = rules[f]; /* array('show' => array('1')) */ 522 }else{ 523 $.extend(this.VDRules.from[form_id+'-'+f][field_id], rules[f]); 524 } 525 if(typeof this.VDListeners[form_id+'-'+f] === 'undefined'){ 526 this.VDListeners[form_id+'-'+f] = '#'+form_id+' [name="'+this.inputNameToElName(f)+'"]'; 527 $('#'+form_id+' [name="'+this.inputNameToElName(f)+'"]').on('change', function (){ 528 for(var field in _this.VDRules.from[form_id+'-'+f]){if(_this.VDRules.from[form_id+'-'+f].hasOwnProperty(field)){ /* пеÑÐµÐ±Ð¾Ñ ÑеÑ
528 , кÑо завиÑÐ¸Ñ Ð¾Ñ ÑÑого Ð¿Ð¾Ð»Ñ f */ 529 var display = null; /* еÑли не бÑÐ´ÐµÑ show */ 530 531 for(var _from in _this.VDRules.depends[form_id+'-'+field]){if(_this.VDRules.depends[form_id+'-'+field].hasOwnProperty(_from)){ /* пеÑÐµÐ±Ð¾Ñ ÑÐµÑ , Ð¾Ñ ÐºÐ¾Ð³Ð¾ завиÑÐ¸Ñ Ð¿Ð¾Ð»Ðµ field */ 532 if(typeof _this.VDRules.depends[form_id+'-'+field][_from]['show'] !== 'undefined'){ 533 if($.inArray(_this.getInputVal('#'+form_id+' [name="'+_this.inputNameToElName(_from)+'"]'), _this.VDRules.depends[form_id+'-'+field][_from]['show']) !== -1){ 534 display = true; 535 break; 536 }else{ 537 display = false; 538 } 539 } 540 }} 541 542 if(display === null){display = true;} 543 544 if(display){ /* ÑкÑÑÑие ÑилÑнее показа */ 545 for(var _from in _this.VDRules.depends[form_id+'-'+field]){if(_this.VDRules.depends[form_id+'-'+field].hasOwnProperty(_from)){ /* пеÑÐµÐ±Ð¾Ñ ÑÐµÑ , Ð¾Ñ ÐºÐ¾Ð³Ð¾ завиÑÐ¸Ñ Ð¿Ð¾Ð»Ðµ field */ 546 if(typeof _this.VDRules.depends[form_id+'-'+field][_from]['hide'] !== 'undefined'){ 547 if($.inArray(_this.getInputVal('#'+form_id+' [name="'+_this.inputNameToElName(_from)+'"]'), _this.VDRules.depends[form_id+'-'+field][_from]['hide']) !== -1){ 548 display = false; 549 break; 550 }else{ 551 display = true; 552 } 553 } 554 }} 555 } 556 557 if(display){ 558 $('#f_'+_this.inputNameToId(field)).removeClass('hide_field').prev('.field_tabbed').removeClass('hide_field'); 559 } else { 560 $('#f_'+_this.inputNameToId(field)).addClass('hide_field').prev('.field_tabbed').addClass('hide_field'); 561 } 562 563 }} 564 }); 565 } 566 }} 567 return this; 568 }; 569 this.VDReInit = function(){ 570 for(var l in this.VDListeners){if(this.VDListeners.hasOwnProperty(l)){ 571 $(this.VDListeners[l]).triggerHandler('change'); 572 }} 573 }; 574 575 return this; 576 577}).call(icms.forms || {},jQuery); 578 579icms.events = (function ($) { 580 581 this.listeners = {}; 582 583 this.on = function(name, callback){ 584 if (typeof(this.listeners[name]) == 'object'){ 585 this.listeners[name].push(callback); 586 } else { 587 this.listeners[name] = [callback]; 588 } 589 return this; 590 }; 591 592 this.run = function(name, params){ 593 params = params || {}; 594 for(var event_name in this.listeners[name]) { 595 if(this.listeners[name].hasOwnProperty(event_name)){ 596 if (typeof(this.listeners[name][event_name]) == 'function') { 597 this.listeners[name][event_name](params); 598 } 599 } 600 } 601 return this; 602 }; 603 604 return this; 605 606}).call(icms.events || {},jQuery); 607 608icms.pagebar = function(id, initial_page, has_next, is_modal){ 609 610 initial_page = initial_page || 1; 611 612 var page = 1; 613 614 var link = $(id); 615 616 var showMore = function(){ 617 618 var list_wrap = $(link).prev(); 619 620 if(!has_next){ 621 if(initial_page > 1){ 622 return true; 623 } 624 $('body,html').animate({ 625 scrollTop: $(list_wrap).offset().top 626 }, 500 627 ); 628 return false; 629 } 630 631 $(link).addClass('show_spinner'); 632 633 page += 1; 634 635 var post_params = $(link).data('url-params'); 636 post_params.page = page; 637 638 $.post($(link).data('url'), post_params, function(data){ 639 640 var first_page_url = $(link).data('first-page-url'); 641 642 $(link).removeClass('show_spinner'); 643 644 if (!data.html) { return; } 645 646 has_next = data.has_next; 647 page = data.page; 648 649 $(list_wrap).append(data.html); 650 651 if(!has_next){ 652 $('span', link).html($('span', link).data('to-first')); 653 $(link).attr('href', first_page_url); 654 } 655 656 var _sep = first_page_url.indexOf('?') !== -1 ? '&' : '?'; 657 658 if(!is_modal){ 659 window.history.pushState({link: first_page_url+_sep+'page='+page}, '', first_page_url+_sep+'page='+page); 660 } 661 662 if(is_modal){ 663 icms.modal.resize(); 664 } 665 666 }, 'json'); 667 668 return false;
669 670 }; 671 672 $(link).on('click', function (){ 673 return showMore(); 674 }); 675 676}; 677 678$.expr[':'].Contains = $.expr.createPseudo(function(arg) { 679 return function( elem ) { 680 return $(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0; 681 }; 682}); 683function setCaretPosition(field, pos) { 684 var $field = $(field); 685 if ($field[0].setSelectionRange) { 686 $field.focus(); 687 $field[0].setSelectionRange(pos, pos); 688 } else if ($field[0].createTextRange) { 689 var range = $field[0].createTextRange(); 690 range.collapse(true); 691 range.moveEnd('character', pos); 692 range.moveStart('character', pos); 693 range.select(); 694 } 695} 696function getCaretPosition(field) { 697 var $field = $(field); 698 if($field.length){ 699 if (document.selection) { 700 $field.focus(); 701 var Sel = document.selection.createRange(); 702 Sel.moveStart ('character', -$field.val().length); 703 return Sel.text.length; 704 } else { 705 return $field[0].selectionStart || 0; 706 } 707 } 708 return 0; 709} 710function addTextToPosition(field_id, text, spacer, spacer_stop){ 711 var field = $(field_id); 712 var value = $(field).val(); 713 var pos = getCaretPosition(field); 714 var value1 = value.substring(0, pos); 715 var value2 = value.substring(pos, value.length); 716 if(spacer){ 717 var check1 = function(spacer){ // пÑовеÑка пеÑед вÑÑавлÑемÑм 718 if(value1.length >= spacer.length){ 719 if(value1.substring(pos - spacer.length, pos) !== spacer){ 720 return true; 721 } 722 } 723 return false; 724 }; 725 var check2 = function(spacer){ // пÑовеÑка поÑле вÑÑавлÑемого ÑекÑÑа 726 if(value2.length >= spacer.length){ 727 if(value2.substring(0, spacer.length) !== spacer){ 728 return true; 729 } 730 } 731 return false; 732 }; 733 var insert1 = true, insert2 = true; 734 if(spacer_stop){ 735 for(var ss in spacer_stop){if(spacer_stop.hasOwnProperty(ss)){ 736 if(insert1 && (!spacer_stop[ss] || spacer_stop[ss] == 1) && !check1(ss)){ 737 insert1 = false; 738 } 739 if(insert2 && (!spacer_stop[ss] || spacer_stop[ss] == 2) && !check2(ss)){ 740 insert2 = false; 741 } 742 }} 743 } 744 745 if(insert1 && check1(spacer)){ 746 text = spacer+text; 747 } 748 if(insert2 && check2(spacer)){ 749 text += spacer; 750 } 751 } 752 $(field).val(value1 + text + value2).trigger('input'); 753 setCaretPosition(field, pos+text.length); 754 return false; 755} 756function toggleFilter(){ 757 var filter = $('.filter-panel'); 758 $('.filter-link', filter).toggle('fast'); 759 $('.filter-container', filter).slideToggle('fast'); 760} 761function goBack(){ 762 window.history.go(-1); 763} 764function spellcount (num, one, two, many){ 765 if (num%10==1 && num%100!=11){ 766 str = one; 767 } else if(num%10>=2 && num%10<=4 && (num%100<10 || num%100>=20)){ 768 str = two; 769 } else { 770 str = many; 771 } 772 return str; 773} 774function renderHtmlAvatar(wrap){ 775 wrap = wrap || document; 776 $('div.default_avatar', wrap).each(function(){ 777 var a = this; 778 var i = $('img', this); 779 var isrc = $(i).attr('src'); 780 $(i).attr('src', ''); 781 $(i).attr('src', isrc); 782 $(i).load(function() { 783 var h = +$(this).height(); 784 $(a).css({ 785 'line-height': h+'px', 786 'font-size': Math.round((h*0.625))+'px' 787 }); 788 }); 789 }); 790} 791function initMultyTabs(selector, tab_wrap_field){ 792 tab_wrap_field = tab_wrap_field || '.field'; 793 $(selector).each(function(indx, element){ 794 var tab = $(' > li > a', $(this)); 795 $(tab).closest('li').eq(0).addClass('active'); 796 $(tab).on('click', function() { 797 var tab_field = $(this).attr('href'); 798 $(this).closest('li').addClass('active').siblings().removeClass('active'); 799 $(element).nextAll(tab_wrap_field+':lt('+$(tab).closest('li').length+')').hide(); 800 $(tab_field).show(); 801 return false;
802 }); 803 }); 804} 805function initTabs(selector){ 806 $(selector+' .tab').hide(); 807 $(selector+' .tab').eq(0).show(); 808 $(selector+' ul.tabbed > li').eq(0).addClass('active'); 809 $(selector+' ul.tabbed > li > a').click(function(){ 810 $(selector+' li').removeClass('active'); 811 $(this).parent('li').addClass('active'); 812 $(selector+' .tab').hide(); 813 $(selector+' '+$(this).attr('href')).show(); 814 icms.events.run('icms_tab_cliked', this); 815 return false; 816 }); 817 $(selector+' .field').each(function(indx, element){ 818 if($(element).hasClass('field_error')){ 819 $(selector+' ul.tabbed > li > a[href = "#'+$(element).parents('.tab').attr('id')+'"]').trigger('click'); 820 } 821 }); 822 $('select.mobile_menu_select', selector).change(function() { 823 $(selector+' ul.tabbed > li > a[href = "'+$(this).find("option:selected").val()+'"]').trigger('click'); 824 }); 825} 826function insertJavascript(filepath, onloadCallback) { 827 if ($('head script[src="'+filepath+'"]').length > 0){ 828 return; 829 } 830 var el = document.createElement('script'); 831 el.setAttribute('type', 'text/javascript'); 832 el.setAttribute('src', filepath); 833 if (typeof(onloadCallback) == 'function') { 834 el.setAttribute('onload', function() { 835 onloadCallback(); 836 }); 837 } 838 $('head').append(el); 839}
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.