1 2//var url = "https://mt-api.elhuyar.eus/translate_string"; 3var url = "/wp-content/themes/orioudala/apitraductor/traducir.php"; 4 5 6 7 8var AppViewModel = function () { 9 10 var self = this; 11 self.url = url; 12 13 self.serviciosWeb = new ServiciosWeb(url); 14 15 self.theLanguage = ko.observable(); 16 17 self.oldHTML = ko.observable(); 18 self.esTraducido = ko.observable(false); 19 20 self.theLanguage(jQuery('html').attr('lang')); 21 console.log(self.theLanguage()); 22 23 24 self.traducido = ko.observable(); 25 26 27 28 self.cargarTraduccion = function (text,elementHtml, language_pair) { 29 30 var textpayload = { 31 /*api_id : api_id, 32 api_key : api_key,*/ 33 translation_engine : "nmt", 34 language_pair : language_pair, 35 content_type : "html", 36 text : text, 37 url : window.location.href 38 }; 39 40 self.serviciosWeb.post('guardarRespuestas', textpayload, function (data) { 41 42 self.traducido(data); 43 44 jQuery(elementHtml).html(data.translated_text); 45 46 self.esTraducido(true); 47 self.oldHTML(text); 48 self.language_pair(language_pair); 49 }, null); 50 }; 51 self.activeLanguage = ko.observable(null); 52 self.isActive = function(lang) { 53 return self.language_pair() == lang; 54 }; 55 self.language_pair = ko.observable(); 56 self.iniciarTraduccion2 = function (data,event,language_pair) { 57 language_pair = jQuery(event.currentTarget).attr("data-pair"); 58 let text = jQuery(".botonTraducctor."+language_pair).text().substr(0,2); 59 jQuery(".botonTraducctor." + language_pair).html(text + ' <i class="fa fa-spinner" aria-hidden="true"></i>'); 60 txt = document.getElementsByClassName("site-main"); 61 if(self.esTraducido()){ 62 self.cargarTraduccion(self.oldHTML(),'.site-main',language_pair); 63 64 }else{ 65 self.cargarTraduccion(txt[0].innerHTML,'.site-main',language_pair); 66 } 67 }; 68 69 self.continuarTraduccion= function (html,language_pair) { 70 71 self.cargarTraduccion(html,'.site-main',language_pair); 72 73 }; 74 75 /*jQuery(document).ready(function() { 76 if(self.theLanguage() == "es-es"){ 77 self.iniciarTraduccion2(); 78 } 79 });*/ 80 81 82}; 83 84 85 86 87 88var ListaViewModel = function (apiUrl, serviciosWeb, data) { 89 var self = this; 90 91 //lista de todos los items, sin filtrar 92 self.listaCompleta = []; 93 94 //url (Action web api, por ejemplo "faltas") 95 self.apiUrl = apiUrl; 96 97 self.lista = ko.observableArray([]); 98 99 100 101 self.cargar = function (data) { 102 103 serviciosWeb.get(self.apiUrl, data, function (data) { 104 105 self.lista(data); 106 107 108 109 }, null); 110 }; 111 112 113 114 115 116} 117 118var ServiciosWeb = function (uri, Usuario) { 119 120 var self = this; 121 122 self.token = ""; 123 124 self.setToken = function (token) { 125 126 self.token = token; 127 localStorage.setItem("token", token); 128 }; 129 130 self.getHeaders = function (token) { 131 //el header llevará el token de autenticación y el idioma. 132 133 var t = token; 134 135 if (t == null) 136 t = self.token; 137 var headers = { 138 }; 139 //if (t) { 140 //headers.AuthorizationToken = t; 141 // headers.Idioma = localStorage.getItem("idioma"); 142 //headers.MobileKey = localStorage.getItem("MobileKey"); 143 144 145 //} 146 147 return headers; 148 } 149 150 self.get = function (action, data, success, error, errorCallback, mostrarAlertaError, token) { 151 152 153 154 jQuery.ajax({ 155 url: url + action, 156 type: "GET", 157 headers: self.getHeaders(), 158 data: data, 159 success: success, 160 error: function (error) { 161 console.log(error); 162 163 }, 164 complete: function () { 165 166 167 } 168 169 }); 170 171 172 173 }; 174 175 176 self.post = function (action, data, success, error, token) { 177 178 179 //jQuery(".botonTraducctor").html('Traducir al español <i class="fas fa-spinner fa-spin"></i>'); 180 181 182 //jQuery.mobile.loading('show'); 183 jQuery.ajax({ 184 url: url , 185 type: "POST", 186 contentType: "application/json", 187 data: JSON.stringify(data), 188 success: function (data) { 189 if (success) 190 success(data); 191 192 }, 193 error: function (err) { 194 console.log(error); 195 196 }, 197 complete: function () { 198 console.log("traducido: " + vm.language_pair()) 199 //jQuery(".botonTraducctor."+vm.language_pair()).replaceWith(''); 200 jQuery("div.hizkuntzak a i").replaceWith(''); 201 } 202 }) 203 }; 204 205 206 self.inicializar = function () { 207 208 self.token = localStorage.getItem("token"); 209 210 211 } 212 213 214 215 216 217 218 219 220}; 221 222 223 224 var vm = new AppViewModel(); 225 ko.applyBindings(vm);
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.