1 2 3class CrawlerController { 4 5 /* 6 */ 7 constructor( jquery_area ) 8 { 9 console.log('Init crawler controller on : ', jquery_area ); 10 this.instance = jquery_area; 11 this.api_source = jquery_area.data('source'); 12 this.api_items = jquery_area.data('items'); 13 this.api_excerpt = jquery_area.data('excerpt'); 14 this.api_target = jquery_area.data('target'); 15 this.api_lang = jquery_area.data('lang'); 16 17 var form_data = new FormData(); 18 var form_action = wp_crawler_script_vars.action_request; 19 form_data.append('action', form_action); 20 form_data.append('origen', this.api_source); 21 form_data.append('items', this.api_items); 22 form_data.append('excerpt', this.api_excerpt); 23 form_data.append('target', this.api_target); 24 form_data.append('lang', this.api_lang); 25 26 this.sendRequest( form_data ); 27 } 28 29 /* 30 */ 31 32 33 /* 34 ============================================================================ 35 ============================================================================ 36 */ 37 38 /* 39 */ 40 sendRequest( form_data ) 41 { 42 var self = this; 43 44 // Send request 45 var ajax_url = wp_crawler_script_vars.ajaxurl; 46 jQuery.ajax({ 47 url: ajax_url, 48 type: 'POST', 49 contentType: false, 50 processData: false, 51 data: form_data, 52 beforeSend: function() { 53 self.addLoading( self.instance ); 54 }, 55 success: function (response) { 56 57 if(response.status == 'success'){ 58 // 59 self.buildResponse( response.data ); 60 } 61 }, 62 complete: function() { 63 self.removeLoading( self.instance ); 64 } 65 }); 66 67 } 68 69 /* 70 ============================================================================ 71 ============================================================================ 72 */ 73 74 /* 75 */ 76 buildResponse ( data ) 77 { 78 var destiny = this.instance.find('.layout'); 79 destiny.html( data ); 80 } 81 82 /* 83 */ 84 addLoading( where ) 85 { 86 //var spinner = '<div class="spinner-grow center margin-auto" role="status"></div>'; 87 var spinner = '<div class="spinner-area"><div class="spinner-grow center margin-auto" role="status"></div></div>'; 88 //var padre = where.parent(); 89 //jQuery(padre).append(spinner); 90 jQuery(where).append(spinner); 91 } 92 93 /* 94 */ 95 removeLoading( where ) 96 { 97 //var padre = where.parent(); 98 //var spinner = jQuery(padre).find('.spinner-area'); 99 //var spinner = jQuery('.spinner-area'); 100 var spinner = jQuery(where).find('.spinner-area'); 101 jQuery(spinner).remove(); 102 } 103 104//_____________________________________________________________________________________________ 105} 106//_____________________________________________________________________________________________ 107// VARIABLES _____________________________________________________________________________________________ 108//_____________________________________________________________________________________________ 109 110CrawlerController.instances = undefined; 111 112 113//_____________________________________________________________________________________________ 114//_____________________________________________________________________________________________ 115 116 117jQuery(document).ready(function ($) { 118 // Autoload 119 var areas = jQuery('.crawler-ajax'); 120 jQuery.each( areas , function( index, area_value ) { 121 var area = jQuery(area_value); 122 var instance = new CrawlerController( area ); 123 });//_each 124 125 if(jQuery(".emprenderSeccion").length){ 126 127 jQuery(".emprenderSeccion .der-bloques .botones a").click(function(e){ 128 e.preventDefault(); 129 130 if(!jQuery(this).hasClass("activa")){ 131 var actual = jQuery(this).attr("class"); 132 console.log(actual); 133 jQuery(".emprenderSeccion .der-bloques .botones a").removeClass("activa"); 134 jQuery(this).addClass("activa"); 135 jQuery(".emprenderSeccion .der-bloques .bloques .bloque").removeClass("activa"); 136 jQuery(".emprenderSeccion .der-bloques .bloques .cont-"+actual).addClass("activa"); 137 } 138 139 140 141 }); 142 } 143 144 145 146 147});
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.