function errShow(errContent) { //window.history.back(); $('#modContent').html('\ \ '); $('#modFrm').modal(); } $(document).ajaxError(function (ev, jqXHR, ajaxSettings, thrownError) { //loaderShow(false); errShow(jqXHR.status + ': ' + jqXHR.statusText); }); // SelectAjax (function ($) { $.fn.selectajax = function (opt) { var settings = $.extend( { url : '/api' }, opt); var selectbtn = this.children('button.selectajax-btn'); var selectinp = this.children('input[type=text].selectajax-inp'); var selecthid = this.children('input[type=hidden].selectajax-hid'); var selectul = this.children('ul.selectajax-ul'); var selectajax_click = function(){ var a = $(this).children('a'); var hr = a.attr('href'); var tx = a.text(); selecthid.val(hr.substr(1)); console.debug(tx); selectbtn.text(tx).removeClass('hidden'); selectinp.addClass('hidden').val(tx); }; var refresh = function(){ $.getJSON(settings.url, {'s': this.value}, function (r) { selectul.empty(); r.forEach(function (o) { var li = $('
  • ' + o.name + ": " + o.fio + '
  • '); selectul.append(li); li.on('click', selectajax_click) }); }); }; selectinp.on('keyup', refresh).on('focusin',refresh); selectbtn.on('click',function(){ selectinp.removeClass('hidden'); $(this).addClass('hidden'); selectinp.focus().trigger('click.bs.dropdown'); return false; }); selectul.children().on('click', selectajax_click); }; })(jQuery); $(document).ready(function () { // ajax tabs $('.nav-tabs a').on('show.bs.tab', function (e) { var ct = $(e.target).attr('href'); var remoteUrl = $(this).attr('data-tab-remote'); if (remoteUrl !== '') { $(ct).load(remoteUrl); } }); // Live html5 image preview if (window.File && window.FileReader && window.FileList && window.Blob) { $('input[type=file].live_review').on('change', function () { var reader = new FileReader(); var img = $('img[alt=ava]')[0]; reader.readAsDataURL(this.files[0]); reader.onload = function (e) { img.src = e.target.result; } }); } else { console.warn("Ваш браузер не поддерживает FileAPI"); } // Validate inputs of form $('input.form-control[pattern]').keyup(function () { var pr = $(this).closest('.form-group-sm,.form-group'); pr.removeClass('has-success'); pr.removeClass('has-error'); pr.find('.form-control-feedback').remove(); if ($(this)[0].checkValidity()) { pr.addClass('has-success'); $(this).after(''); } else { pr.addClass('has-error'); $(this).after(''); } }); $('div.selectajax').selectajax({ url: '/abons/api/abon_filter' }); });