1var n = {farosToken: '', aboToken: '', dayToken: '', usr: '', pwd:'',firstname:'',lastname:'',expireAbo:'',subscription:'',jwt:''}; 2 3// voglio mandare i dati a matomo come il numero dell'abbonato 4var noabbo 5var larRedirectContent_id = ''; 6 7App.prototype.checkLarLoginJwt = function (el) { 8 9 // questo evita che la procedura di login venga chiamata due volte senza motivo 10 if (checkLarLoginJwtExecuted) { 11 return true; 12 } 13 checkLarLoginJwtExecuted = true; 14 15 16 app.debugLarLogin('funzione checkLarLogin richiamata JWT'); 17 18 larLogin = app.getStorage('larLogin') || '-1'; 19 20 //debug.log('larLogin'+larLogin); 21 jwtAboshop = larGetCookies('larAboshop') || '-1'; 22 larDayToken = larGetCookies('larDayToken') || '-1'; 23 /*jwtAboshop = -1;*/ 24 25 var params = (typeof larGetSearchParameters === 'function') ? larGetSearchParameters() : {}; 26 var epaperlink = params.epaperlink; 27 if (!epaperlink && typeof URLSearchParams !== 'undefined') { 28 try { 29 var urlParams = new URLSearchParams(window.location.search); 30 epaperlink = urlParams.get('epaperlink'); 31 } catch(e) {} 32 } 33 if (epaperlink && epaperlink !== -1 && epaperlink !== '-1') { 34 if (jQuery('#LOGIN_HTTP_REFERER').length) {
35 jQuery('#LOGIN_HTTP_REFERER').val(epaperlink); 36 } 37 } 38 39 if (larLogin=='-1' && jwtAboshop == '-1') { 40 var divloginLaregHeader = jQuery('#loginLaregHeaderLogin').html() || '-1'; // se questo campo è definito vuol dire che è attivo il nuovo login 41 42 if (divloginLaregHeader !== '-1') { 43 app.laregUser = {login : false}; 44 } 45 46 jQuery('#loginLaregHeaderMsg').hide(); 47 jQuery('#loginLaregHeaderLogin').show(); 48 jQuery('#loginLaregHeaderDiv').show(); 49 50 app.debugLarLogin('larLogin == -1 - storage larLogin vuoto'); 51 app.viewLarLoginForm(false); 52 53 // attivo il messaggio promo 54 $('#larPromoArticle-free').show(); 55 $('#divContentSignature').show(); 56 57 return false; // non c'è login 58 } 59 60 61 app.debugLarLogin('storage larLogin esistente'); 62 63 var onlineJson = larLogin; 64 const arr = JSON.parse(onlineJson); 65 app.debugLarLogin('storage larLogin<br />'); 66 for (const key in arr) { 67 app.debugLarLogin(`${key}:<br /> ${arr[key]}`); 68 } 69 app.debugLarLogin('<br />storage jwtAboshop<br />'+jwtAboshop); 70 var httpPage = ''; 71 var httpPage = jQuery('#divLarLoginLeggi').attr('data-loginLar') || ''; 72 73 app.debugLarLogin('page name: *'+httpPage+'*'); 74 75 var params = larGetSearchParameters(); // ritorna i parametri di GET 76 77 var epaperlink = params.epaperlink || -1; 78 if (epaperlink !== -1) {
79 jQuery('#LOGIN_HTTP_REFERER').val(epaperlink); 80 } 81 // check redirect id_contents 82 var larRedirectContent_id = params.larRedirectContent_id || -1; 83 app.debugLarLogin('larRedirectContent_id: *'+larRedirectContent_id+'*'); 84 85 var larDayTokenString = larDayToken; 86 jwtAboshop = JSON.stringify(jwtAboshop); 87 larDayToken = JSON.stringify(larDayToken); 88 89 90 var urlEpaper = $('#todayEpaperUrl').attr('href') || -1; 91 var dataToken = $('#todayEpaperUrl').attr('data-token') || -1; 92 if (urlEpaper !== -1 && dataToken==-1) { 93 urlEpaper = urlEpaper+'?token='+larDayTokenString; 94 $('#todayEpaperUrl').attr('data-token',1); 95 $('#todayEpaperUrl').attr('href',urlEpaper); 96 } 97 98 var json = '{"onlineData":'+onlineJson+',"jwtAboshop":'+jwtAboshop+',"larDayToken":'+larDayToken+',"httpPage":"'+httpPage+'"}'; 99 debug.log(json); 100 debug.log(jwtAboshop); 101 102 var url = '/ext/lar/aboApi.php?action=checkLoginJwt&call=checkData'; 103 var forceRequestToken = 0; 104 if (typeof jQuery(el).attr('data-forceRequestToken') !== undefined){ 105 forceRequestToken = jQuery(el).attr('data-forceRequestToken'); 106 } 107 108 109 app.debugLarLogin('checkLoginJwt url<br />'+url); 110 111 try { 112 $.ajax({ 113 type : 'POST', 114 url : url, 115 cache : false, 116 data: {"data_out":json,"forceRequestToken":forceRequestToken,"isApp":0}, 117 jsonp: "callback", 118 success: function (js) { 119 120 //debug.log(js); // per debug 121 122 app.debugLarLogin('risposta da checkLarLoginAjaxJwt<br />'); 123 app.debugLarLogin('Status: '+js.status+'<br />js.type: '+js.type+'<br />js.ispaywall: '+js.ispaywall); 124 msg = js.msg || ''; 125 responseApi = js.responseApi || ''; 126 127 //responseApiTest = responseApi; 128 if (typeof responseApi === 'object' && responseApi !== null) { 129 app.debugLarLogin('JSON risposta da api.laregione.ch <br />'+JSON.stringify(responseApi)); 130 debug.log(responseApi); 131 } else { 132 app.debugLarLogin('risposta da api.laregione.ch<br />'+responseApi); 133 } 134 135 // risposte necessarie 136 loginLaregHeader = js.html || jQuery('#loginLaregHeader').html(); 137 htmlMobile = js.htmlMobile || jQuery('#loginLaregHeaderMobile').html(); 138 divLarLoginBuongiorno = js.divLarLoginBuongiorno || jQuery('#divLarLoginBuongiorno').html(); 139 divLarLoginLeggi = js.divLarLoginLeggi || jQuery('#divLarLoginLeggi').html(); 140 loginNominativo = js.nominativo || jQuery('#loginNominativo').html(); 141 loginUrlLeggi = js.loginUrlLeggi || '/login/leggi'; 142 143 disableRedirectEpaper = js.disableRedirectEpaper || -1; 144 145 type = js.type || ''; 146 localStorageLarLogin = js.localStorageLarLogin || onlineJson; // contiene jwt 147 jwtAboshop = js.jwtAboshop || jwtAboshop; // contiene jwt 148 larDayToken = js.larDayToken || larDayToken; // contiene jwt 149 ispaywall = js.ispaywall || -1; 150 151 errorJs = js.error || ''; 152 debugHtml = js.debugHtml || ''; 153 154 if (errorJs > '') {app.debugLarLogin('errorFromAjax: '+errorJs+'<br />');} 155 if (debugHtml > '') {app.debugLarLogin('debugFromAjax: '+debugHtml+'<br />');} 156 157 if (js.status==1) { 158 if (type =='apiDayToken' && localStorageLarLogin > '') { 159 larSetLocalStorage(localStorageLarLogin,jwtAboshop,larDayToken); 160 } 161 // se epaper.laregione.ch come referer allora lo mando con il token se è buono 162 var LOGIN_HTTP_REFERER = jQuery('#LOGIN_HTTP_REFERER').val() || '/login'; 163 164 //if (LOGIN_HTTP_REFERER=='https://epaper.laregione.ch/laregione' && loginUrlLeggi !== '/login/leggi') { 165 if (LOGIN_HTTP_REFERER.includes('https://epaper.laregione.ch/laregione') && loginUrlLeggi !== '/login/leggi') { 166 167 // riprende il link originale e poi rimanda 168 if (epaperlink !== -1 && larDayToken !== '-1') { 169 loginUrlLeggi = epaperlink+'?token='+larDayToken; 170 } 171 172/*
173 console.log(jQuery('#LOGIN_HTTP_REFERER').val()); 174 console.log('loginUrlLeggi '+loginUrlLeggi);return true; 175*/ 176 if (disableRedirectEpaper !== 1) { 177 //alert('di qui 3'); 178 _this.goToUrl(loginUrlLeggi); 179 return true; 180 } 181 } 182 183 // se c'è un ID redirect larRedirectContent_id 184 if (larRedirectContent_id > 0 && larDayToken !== '-1') { 185 // redirect contenuto 186 larRedirectContent_id = larRedirectContent_id.replace(/-/g, "/"); 187 //alert('di qui 4'); 188 _this.goToUrl('/'+larRedirectContent_id); 189 190 191 192 return true; 193 } 194 195 jQuery('#loginLaregHeader').html(loginLaregHeader); 196 jQuery('#loginLaregHeaderMobile').html(htmlMobile); 197 jQuery('#divLarLoginBuongiorno').html(divLarLoginBuongiorno); 198 jQuery('#divLarLoginLeggi').html(divLarLoginLeggi); 199 200 jQuery('#loginNominativo').html(loginNominativo); 201 jQuery('#loginUrlLeggi').attr('data-url',loginUrlLeggi); 202 jQuery('#loginUrlLeggi').attr('href',loginUrlLeggi); 203 jQuery('#h2larleggimsg').hide(); 204 205 app.parseLinks(); 206 207 app.viewLarLoginForm(true); 208 209 210 } else { 211 212 $('#larPromoArticle-free').show(); 213 $('#divContentSignature').show(); 214 debug.log('larLogin non valido'); 215 app.debugLarLogin('larLogin non valido'); 216 217 218 219 if (typeof js === 'object' && js !== null) { 220 var jsRes = JSON.stringify(js); 221 } else { 222 var jsRes = js; 223 } 224 225 226 app.debugLarLogin('<div style="background-color:#CCCCCC;padding:5px"><b>Result Ajax:</b><br />'+jsRes+'</div>'); 227 //debug.log('result'); 228 //debug.log(js); 229 230 231 232 jQuery('#loginLaregHeaderMsg').hide(); 233 jQuery('#loginLaregHeaderLogin').show(); 234 jQuery('#loginLaregHeaderDiv').show(); 235 app.viewLarLoginForm(false) 236 237 } 238 239 }, 240 error: function(e) { 241 debug.log('larLogin-1: operazione non riuscita errore: '); 242 debug.log(e.responseText); 243 app.debugLarLogin('larLogin-1: operazione non riuscita errore e: '+e.responseText); 244 245 $('#larPromoArticle-free').show(); 246 $('#divContentSignature').show(); 247 248 jQuery('#loginLaregHeaderMsg').hide(); 249 jQuery('#loginLaregHeaderLogin').show(); 250 jQuery('#loginLaregHeaderDiv').show(); 251 app.viewLarLoginForm(false) 252 253 254 } 255 }); 256 } catch(e) { 257 e = e || ''; 258 debug.log('larLogin-2: Operazione non riuscita: '); 259 260 $('#larPromoArticle-free').show(); 261 $('#divContentSignature').show(); 262 263 jQuery('#loginLaregHeaderMsg').hide(); 264 jQuery('#loginLaregHeaderLogin').show(); 265 jQuery('#loginLaregHeaderDiv').show(); 266 267 app.debugLarLogin('larLogin-2: Operazione non riuscita: '+e); 268 269 app.viewLarLoginForm(false) 270 271 } 272 273 return false; 274} 275 276 277App.prototype.larFormLoginJwtCallBack = function () { 278 279 if (dataResult.status==1 || dataResult.status=='ok') { 280 jQuery('#divLarVerifica').show(); 281 jQuery('#divLarLogin').hide(); 282 283 larSetLocalStorage(dataResult.result.newResult,dataResult.result.jwtAboshop,dataResult.result.larDayToken); 284 285 // faccio il redirect? 286 var LOGIN_HTTP_REFERER = jQuery('#LOGIN_HTTP_REFERER').val() || '/login'; 287 288 var epaperlink = null; 289 try { 290 if (typeof URLSearchParams !== 'undefined') { 291 var urlParams = new URLSearchParams(window.location.search); 292 epaperlink = urlParams.get('epaperlink'); 293 } 294 } catch(e) {} 295 if (!epaperlink && typeof larGetSearchParameters === 'function') { 296 var params = larGetSearchParameters(); 297 if (params && params.epaperlink) { 298 epaperlink = params.epaperlink; 299 } 300 } 301 302 if (epaperlink && epaperlink !== -1 && epaperlink !== '-1') { 303 LOGIN_HTTP_REFERER = epaperlink; 304 } else if (LOGIN_HTTP_REFERER=='https://epaper.laregione.ch/laregione') { 305 LOGIN_HTTP_REFERER = LOGIN_HTTP_REFERER+'?token='+n.dayToken; 306 } 307 308 //alert('di qui 1'+LOGIN_HTTP_REFERER); 309 if (dataResult.result.error=='') { 310 if (typeof _this !== 'undefined' && _this && _this.goToUrl) { 311 _this.goToUrl(LOGIN_HTTP_REFERER); 312 } else if (typeof app !== 'undefined' && app && app.goToUrl) { 313 app.goToUrl(LOGIN_HTTP_REFERER); 314 } else { 315 window.location.href = LOGIN_HTTP_REFERER; 316 } 317 } else { 318 jQuery('#divLarVerifica').hide(); 319 jQuery('#divLarLogin').show(); 320 setLarLoginCredenzialiError(dataResult.result.error); 321 322 } 323 324 325 return true; 326 } 327} 328 329function larSetLocalStorage(localStorageLarLogin,jwtAboshop,larDayToken) { 330 var jwt = localStorageLarLogin.jwt || '-1'; 331 if (localStorageLarLogin.jwt !== undefined) { 332 n.jwt = localStorageLarLogin.jwt; 333 } 334 if (localStorageLarLogin.dayToken !== undefined) { 335 n.dayToken = localStorageLarLogin.dayToken; 336 } 337 if (localStorageLarLogin.firstname !== undefined) { 338 n.firstname = localStorageLarLogin.firstname; 339 } 340 if (localStorageLarLogin.lastname !== undefined) { 341 n.lastname = localStorageLarLogin.lastname; 342 } 343 if (localStorageLarLogin.subscription !== undefined) { 344 n.subscription = localStorageLarLogin.subscription; 345 } 346 //return false;
347 348 app.setStorage('larLogin',JSON.stringify(localStorageLarLogin)); 349 //larSetCookies('larLogin',JSON.stringify(localStorageLarLogin),360); // problema con safari e gli accenti 350 larSetCookies('larJwt',jwt,360); // uso solo il JWT 351 larSetCookies('larDayToken',larDayToken,360); // uso solo il JWT 352 larSetCookies('larAboshop',jwtAboshop,360); 353} 354 355function larRefreshLogin () { 356 357 $('#divLarBtnRefresh').hide(); 358 $('#divLarBtnRefreshWait').show(); 359 360 var larJwt = sessionStorage.getItem('larJwt'); 361 if (larJwt == null) { 362 larJwt = localStorage.getItem('larJwt'); 363 } 364 if (larJwt == null) { 365 larJwt = larGetCookies('larJwt'); 366 } 367 368 const url = 'https://api.laregione.ch/v2/abo/refreshJwt'; 369 370 const onlineData = { 371 jwt: larJwt, 372 }; 373 374 fetch(url, { 375 method: 'POST', 376 headers: { 377 'Content-Type': 'application/json' 378 }, 379 body: JSON.stringify(onlineData) 380 }) 381 .then(response => { 382 if (!response.ok) { 383 $('#divLarBtnRefresh').show(); 384 $('#divLarBtnRefreshWait').hide(); 385 setLarLoginCredenzialiError('Operazione non possibile, riprova più tardi'); 386 throw new Error('Operazione non possibile'); 387 } 388 return response.json(); 389 }) 390 .then(data => { 391 jwt = data.jwt || larJwt; 392 larSetCookies('larJwt',jwt,360); 393 location.reload(); 394 }) 395 .catch(error => { 396 $('#divLarBtnRefresh').show(); 397 $('#divLarBtnRefreshWait').hide(); 398 console.error('Si è verificato un problema con la tua richiesta fetch:', error); 399 }); 400} 401 402async function larCallAfterPurchase() { 403 404 app.debugLarLogin('call larCallAfterPurchase'); 405 var larDayToken = $('#larDayToken').html(); 406 var larRedirectContent_id = $('#id_content').html(); 407 408 // ora vado a recuperare i dati di autenticazione in base a daytoken 409 const url = $('#checkApiUrl').html(); 410 411 try { 412 $.ajax({ 413 type : 'GET', 414 url : url, 415 cache : false, 416 success: function (js) { 417 //console.log(js); 418 message = js.message || -1; 419 if (js.status==1) { 420 // cancellazione degli evvenutali cookies di login 421 app.setStorage('larLogin','-1'); 422 larSetCookies('larJwt','-1',1); 423 larSetCookies('larUid','',1); 424 larSetCookies('larAboshop','-1',1); 425 larSetCookies('larDayToken','-1',1); 426 427 // setting dati di autenticazione 428 larSetLocalStorage(js.result,js.result.jwtAboshop,larDayToken); 429 430 // redirect contenuto 431 larRedirectContent_id = larRedirectContent_id.replace(/-/g, "/"); 432 //alert('di qui 2'); 433 _this.goToUrl('/'+larRedirectContent_id); 434 return false; 435 436 } else { 437 438 if (message !== -1) { 439 $('#addJsMsg').html(message); 440 $('#addJsMsg').show(); 441 } 442 $('#divNewPurchaseMsg').show(); 443 $('#divNewPurchaseMsgIncorso').hide(); 444 } 445 }, 446 error: function(e) { 447 448 $('#divNewPurchaseMsg').show(); 449 $('#divNewPurchaseMsgIncorso').hide(); 450 451 app.debugLarLogin('Richiesta non disponibile'); 452 console.error('Richiesta non disponibile',e); 453 } 454 }); 455 } catch(e) { 456 457 $('#divNewPurchaseMsg').show(); 458 $('#divNewPurchaseMsgIncorso').hide(); 459 e = e || ''; 460 app.debugLarLogin('Richiesta non disponibile '); 461 console.error('Richiesta non disponibile',e); 462 jQuery(el).html(htmlBtn); 463 } 464 return false; 465} 466 467function setLarLoginCredenzialiError(msg) { 468 $('#larLoginCredenzialiError').html(msg); 469 $('#larLoginCredenzialiError').removeClass('alert-success').addClass('alert-danger'); 470 $('#larLoginCredenzialiError').show(); 471}
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.