1/** 2 * Vérifie que les deux champs de saisie sont remplis. 3 */ 4function login_validerForm() { 5 var valide = true; 6 var l = document.getElementById('username'); 7 var p = document.getElementById('password'); 8 if (l.value === "") { 9 l.style.background = "#FFB5B5"; 10 l.focus(); 11 alert("Veuillez saisir votre identifiant de connexion."); 12 valide = false; 13 } 14 if (p.value === "") { 15 p.style.background = "#FFB5B5"; 16 p.focus(); 17 alert("Veuillez saisir votre mot de passe."); 18 valide = false; 19 } 20 return valide; 21} 22 23function getXMLHttpRequest() { 24 var xhr = null; 25 if (window.XMLHttpRequest || window.ActiveXObject) { 26 if (window.ActiveXObject) { 27 try { 28 xhr = new ActiveXObject("Msxml2.XMLHTTP"); 29 } catch (e) { 30 xhr = new ActiveXObject("Microsoft.XMLHTTP"); 31 } 32 } else { 33 xhr = new XMLHttpRequest(); 34 } 35 } else { 36 alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest..."); 37 return null; 38 } 39 return xhr; 40} 41 42 43function initSaiku(url, userName, password) { 44 var isConnected = (getCookie("isConnCookie") === 'true'); 45 if (!isConnected) { 46 loginSessionSaiku(url, userName, password); 47 } else { 48 refreshCacheSaiku(url, userName); 49 } 50} 51 52/** 53 * Authentification de l'utilisateur connecté à Web Aurion 54 * 55 * @param {type} url 56 * @param {type} userName 57 * @param {type} password 58 * @returns {undefined} 59 */ 60function loginSessionSaiku(url, userName, password) { 61 var xhr = getXMLHttpRequest(); 62 xhr.open("POST", url + "/rest/saiku/session/", false); 63 xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 64 xhr.send("username=" + userName + "&password=" + password); 65 var isConnected = checkConnectionSaiku(url); 66 setCookie("isConnCookie", isConnected, 30); 67 68 if (isConnected) { 69 refreshCacheSaiku(url, userName); 70 } 71} 72 73/** 74 * Deconnexion de l(utilisateur 75 * 76 * @param {type} url 77 * @returns {undefined} 78 */ 79function logoutSessionSaiku(url) { 80 var xhr = getXMLHttpRequest(); 81 xhr.open("DELETE", url + "/rest/saiku/session/", false); 82 xhr.send();
83 setCookie("isConnCookie", false, 30); 84} 85 86/** 87 * Vérifier si l'utilisateur est d"ja connecté 88 * 89 * @param {type} url 90 * @returns {Boolean} 91 */ 92function checkConnectionSaiku(url) { 93 var xhr = getXMLHttpRequest(); 94 xhr.open("GET", url + "/rest/saiku/session/", false); 95 xhr.send(); 96 return (xhr.responseText).indexOf("sessionid") !== -1; 97} 98 99/** 100 * Rafrichir le cache sa Saiku pour charger les nouveaux fichiers 101 * 102 * @param {type} url 103 * @param {type} user 104 * @returns {undefined} 105 */ 106function refreshCacheSaiku(url, user) { 107 var xhr = getXMLHttpRequest(); 108 xhr.open("GET", url + "/rest/saiku/" + user + "/discover/refresh", false); 109 xhr.send(); 110} 111 112function setCookie(cname, cvalue, exdays) { 113 var d = new Date(); 114 d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); 115 var expires = "expires=" + d.toUTCString(); 116 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/saiku"; 117} 118 119function getCookie(cname) { 120 var name = cname + "="; 121 var ca = document.cookie.split(';'); 122 for (var i = 0; i < ca.length; i++) { 123 var c = ca[i]; 124 while (c.charAt(0) === ' ') { 125 c = c.substring(1); 126 } 127 if (c.indexOf(name) === 0) { 128 return c.substring(name.length, c.length); 129 } 130 } 131 return ""; 132} 133 134/** 135 * Fiche Mantis 11422 : "Désactiver les raccourcis clavier du navigateur "touche retour arrière" et "touche entrée" qui peuvent faire perdre la saisie en cours." 136 * Code inspiré par : http://stackoverflow.com/questions/6309693/disabling-backspace-key-works-in-all-browsers-but-ie/6309833#6309833 137 */ 138function disableShortcuts() { 139 $(document).keydown(function(e) { 140 var nodeName = e.target.nodeName.toLowerCase(); 141 142 if (e.which === 8) { // 8 = touche retour arrière 143 if ((nodeName === 'input' && (e.target.type === 'text' || e.target.type === 'password')) || nodeName === 'textarea') { 144 // ne rien faire 145 } else { 146 e.preventDefault(); 147 } 148 } 149 else if (e.which === 13) { // 13 = touche entrée 150 /* #16737: EXCELIA-GROUP - Tickets - WebNotes 2 151 * Empecher le retour en arrière lorsque l'on appuie sur entrée au niveauv du checkbox 152 * #16794: Page réinitialisation de mot de passe: la touche entrée ne valide pas mais revient en arrièrea 153 */ 154 if (nodeName === 'input' && (e.target.type === 'text' || e.target.type === 'password' || e.target.type === 'checkbox')) { 155 e.preventDefault(); 156 } else { 157 // ne rien faire 158 } 159 } 160 }); 161}
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.