1var icms = icms || {}; 2 3icms.subscriptions = (function ($) { 4 5 this.active_link = {}; 6 7 this.onDocumentReady = function () { 8 9 this.setSubscribe(); 10 11 $('.subscriber').on('click', function () { 12 13 icms.subscriptions.active_link = this; 14 15 icms.subscriptions.showLoader(); 16 17 $.get($(this).attr('href'), $(this).data('target'), function(data){ 18 icms.subscriptions.setResult(data); 19 }, 'json'); 20 21 return false; 22 23 }); 24 25 $('.subscribe_wrap > .count-subscribers').on('click', function () { 26 27 if(+$(this).text() === 0){ 28 return false; 29 } 30 31 var list_title = $(this).attr('title'); 32 33 $.get($(this).data('list_link'), {}, function(data){ 34 icms.modal.openHtml(data.html, list_title); 35 }, 'json'); 36 37 return false; 38 39 }); 40 41 }; 42 43 this.showLoader = function (){ 44 $(icms.subscriptions.active_link).closest('.subscribe_wrap').find('.spinner').show(); 45 }; 46 47 this.hideLoader = function (){ 48 $(icms.subscriptions.active_link).closest('.subscribe_wrap').find('.spinner').fadeOut(); 49 }; 50 51 this.setResult = function (data){ 52 53 icms.subscriptions.hideLoader(); 54 55 if(data.error){ 56 alert('error'); return; 57 } 58 59 if(data.confirm_url){ 60 icms.modal.openAjax(data.confirm_url, undefined, undefined, data.confirm_title); return; 61 } 62 63 if(data.confirm){ 64 icms.modal.openHtml(data.confirm, data.confirm_title); return; 65 } 66 67 if(data.modal_close){ 68 icms.modal.close(); 69 } 70 71 if(data.success_text){ 72 icms.modal.alert(data.success_text); 73 } 74 75 $(icms.subscriptions.active_link).data('issubscribe', data.is_subscribe); 76 icms.subscriptions.setSubscribe(icms.subscriptions.active_link); 77 $(icms.subscriptions.active_link).parent().find('.count-subscribers').html(data.count); 78 79 }; 80 81 this.setSubscribe = function (link){ 82 83 set = function (obj){ 84 var is_subscribe = $(obj).data('issubscribe'); 85 $('span', obj).html($(obj).data('text'+is_subscribe)); 86 $(obj).attr('href', $(obj).data('link'+is_subscribe)); 87 if(is_subscribe == 0){ 88 $(obj).removeClass('unsubscribe').addClass('subscribe'); 89 } else { 90 $(obj).removeClass('subscribe').addClass('unsubscribe'); 91 } 92 }; 93 94 if(link){ 95 set(link); return; 96 } 97 98 $('.subscriber').each(function(indx){ 99 set(this); 100 }); 101 102 }; 103 104 return this; 105 106}).call(icms.subscriptions || {},jQuery); 107 108function successSubscribe(form_data, result){ 109 icms.subscriptions.setResult(result); 110}
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.