Commit 8480b6b0 authored by Eric Seigne's avatar Eric Seigne
Browse files

reorganisation de code

parent 55b182f5
......@@ -293,6 +293,12 @@ select::-ms-expand {
float: right;
}
#home {
font-size: 28px;
margin-left: 10px;
margin-top: 10px;
}
#titreDoliScan {
font-size: 28px;
margin-left: 10px;
......
......@@ -23,7 +23,7 @@ function distanceAutomatique(depart, arrivee) {
*/
$.ajax({
type: "GET",
timeout: 20000,
timeout: 5000,
url: "https://geo.doliscan.fr/api/geo/" + depart + "/" + arrivee,
success: function (result) {
if (result != 'undefined') {
......
......@@ -7,131 +7,135 @@
// et pas de choix (champ hidden) s'il n'y en a qu'un
//storageKey = vehicules ou vehiculesPro
function feedVehicules(storageKey) {
// myDebug("feedVehicules");
// <label for=\"vehicule\">Véhicule</label>";
let htmlCode = "";
let html = "";
let htmlSingleVehicule = "";
let hasVehicule = false;
let hasMultiVehicules = false;
let v = localGetData(storageKey);
if (v == null) {
return;
}
vehicules = JSON.parse(v);
// myDebug("feedVehicules");
// <label for=\"vehicule\">Véhicule</label>";
let htmlCode = "";
let html = "";
let htmlSingleVehicule = "";
let hasVehicule = false;
let hasMultiVehicules = false;
let v = localGetData(storageKey);
if (v == null) {
return;
}
vehicules = JSON.parse(v);
for (let i = 0; i < vehicules.length && i < 4; i++) {
let vA = vehicules[i]['nom'];
let vE = vehicules[i]['energie'];
let vP = vehicules[i]['puissance'];
let vT = vehicules[i]['type'];
let vKM = vehicules[i]['kmbefore'];
let option = vA + ";" + vE + ";" + vP + ";" + vT + ";" + vKM;
for (let i = 0; i < vehicules.length && i < 4; i++) {
let vA = vehicules[i]['nom'];
let vE = vehicules[i]['energie'];
let vP = vehicules[i]['puissance'];
let vT = vehicules[i]['type'];
let vKM = vehicules[i]['kmbefore'];
let option = vA + ";" + vE + ";" + vP + ";" + vT + ";" + vKM;
if (vA != null) {
// html += ("<option value=\"" + option + "\">" + vA + "</option>");
html += "<div class=\"segment__item\">";
html += " <input type=\"radio\" name=\"vehicule\" id=\"vehicule-" + i + "\" value=\"" + option + "\" checked=\"checked\" class=\"segment__input\" />";
html += " <div class=\"segment__button\">" + vA + "</div>";
html += "</div>";
htmlSingleVehicule = option;
if (hasVehicule == true) {
hasMultiVehicules = true;
}
hasVehicule = true;
if (vA != null) {
// html += ("<option value=\"" + option + "\">" + vA + "</option>");
html += "<div class=\"segment__item\">";
html += " <input type=\"radio\" name=\"vehicule\" id=\"vehicule-" + i + "\" value=\"" + option + "\" checked=\"checked\" class=\"segment__input\" />";
html += " <div class=\"segment__button\">" + vA + "</div>";
html += "</div>";
htmlSingleVehicule = option;
if (hasVehicule == true) {
hasMultiVehicules = true;
}
hasVehicule = true;
}
}
if (hasVehicule == false) {
html += "<p id=\"vehicule\">Vous n'avez pas encore de véhicule, veuillez <a href=\"#\" onclick=\"gotoPage('config.html', false);\">configurer vos véhicules</a></p>";
if (hasVehicule == false) {
html += "<p id=\"vehicule\">Vous n'avez pas encore de véhicule, veuillez <a href=\"#\" onclick=\"gotoPage('config.html', false);\">configurer vos véhicules</a></p>";
}
else {
if (hasMultiVehicules == true) {
htmlCode += "<fieldset data-role=\"controlgroup\" data-type=\"horizontal\" data-mini=\"true\">";
htmlCode += " <div class=\"segment\" style=\"width:100%; margin: 0 auto;\">";
// htmlCode += "<select name=\"vehicule\" id=\"vehicule\">";
htmlCode += html;
// htmlCode += "</select>";
htmlCode += "</div>";
htmlCode += "</fieldset>";
}
else {
if (hasMultiVehicules == true) {
htmlCode += "<fieldset data-role=\"controlgroup\" data-type=\"horizontal\" data-mini=\"true\">";
htmlCode += " <div class=\"segment\" style=\"width:100%; margin: 0 auto;\">";
// htmlCode += "<select name=\"vehicule\" id=\"vehicule\">";
htmlCode += html;
// htmlCode += "</select>";
htmlCode += "</div>";
htmlCode += "</fieldset>";
}
else {
//Un seul véhicule on ne l'affiche pas
htmlCode = "<input type=\"hidden\" name=\"vehicule\" id=\"vehicule\" value=\"" + htmlSingleVehicule + "\">";
}
//Un seul véhicule on ne l'affiche pas
htmlCode = "<input type=\"hidden\" name=\"vehicule\" id=\"vehicule\" value=\"" + htmlSingleVehicule + "\">";
}
// myDebug("feedVehicules, retour " + htmlCode);
return htmlCode;
}
// myDebug("feedVehicules, retour " + htmlCode);
//On insere les donnnes dans l'objet formField a partir de ce qui est contenu dans storageKey
function feedVehiculesConfig(formField, storageKey) {
$(formField).empty();
let v = localGetData(storageKey);
if (v != null) {
let vehicules = JSON.parse(v);
let html = "<ul>";
for (var i = 0; i < vehicules.length && i < 4; i++) {
let vA = vehicules[i]['nom'];
let vE = vehicules[i]['energie'];
let vP = vehicules[i]['puissance'];
let vT = vehicules[i]['type'];
return htmlCode;
}
if (vA != null) {
html += "<li>" + vA + " (" + vT + " " + vE + " " + vP + ") - <a href=\"#\" onclick=\"rmVehicule('" + storageKey + "'," + i + ");feedVehiculesConfig('" + formField + "','" + storageKey + "');\">Supprimer</a></li>\n";
}
//On insere les donnnes dans l'objet formField a partir de ce qui est contenu dans storageKey
function feedVehiculesConfig(formField, storageKey) {
$(formField).empty();
let v = localGetData(storageKey);
if (v != null) {
let vehicules = JSON.parse(v);
let html = "<ul>";
for (var i = 0; i < vehicules.length && i < 4; i++) {
let vA = vehicules[i]['nom'];
let vE = vehicules[i]['energie'];
let vP = vehicules[i]['puissance'];
let vT = vehicules[i]['type'];
if (vA != null) {
html += "<li>" + vA + " (" + vT + " " + vE + " " + vP + ") - <a href=\"#\" onclick=\"rmVehicule('" + storageKey + "'," + i + ");feedVehiculesConfig('" + formField + "','" + storageKey + "');\">Supprimer</a></li>\n";
}
html += "</ul>";
$(formField).append(html);
}
html += "</ul>";
$(formField).append(html);
}
}
//Liste des facturettes en attente de synchronisation ...
function feedToSync(formField) {
myDebug("feedToSync");
$(formField).empty();
if (globalDB != null) {
myDebug("SQL : select * from ldfsToSync");
//Liste des facturettes en attente de synchronisation ...
function feedToSync(formField) {
let htmlFTS = "";
myDebug("feedToSync pour " + formField);
$(formField).empty();
if (globalDB != null) {
myDebug("ldfsToSync : select * from ldfsToSync");
globalDB.readTransaction(function (t) {
t.executeSql('SELECT * FROM ldfsToSync', [],
function (tx, rs) {
globalDB.readTransaction(function (t) {
t.executeSql('SELECT * FROM ldfsToSync', [],
function (tx, rs) {
let html = "";
myDebug(" -> SQL SELECT * OK: res " + rs.rows.length);
let nbRes = rs.rows.length;
let i = 0;
for (i = 0; i < nbRes; i++) {
let id = rs.rows.item(i).id;
let url = rs.rows.item(i).url;
let jsonData = rs.rows.item(i).jsonData;
let localFileName = rs.rows.item(i).localFileName;
myDebug(" ldfsToSync -> SQL SELECT * OK: res " + rs.rows.length);
let nbRes = rs.rows.length;
let iFTS = 0;
for (iFTS = 0; iFTS < nbRes; iFTS++) {
let id = rs.rows.item(iFTS).id;
let url = rs.rows.item(iFTS).url;
let jsonData = rs.rows.item(iFTS).jsonData;
let localFileName = rs.rows.item(iFTS).localFileName;
let data = JSON.parse(jsonData);
let data = JSON.parse(jsonData);
// myDebug(" ldfsToSync res " + iFTS + " : " + id + " / " + jsonData);
html += "<div style=\"clear:both\">" + id + ": " + data.typeFrais + " du " + data.ladate + " (" + data.label + ", " + nbFR(data.ttc) + " ) <br /><div style=\"float:right\"><ons-button modifier=\"material\" onclick=\"rSyncOne(" + id + ");\">Synchroniser</ons-button> <ons-button modifier=\"material\" onclick=\"rSyncDeleteConfirm(" + id + ");\">Supprimer</ons-button></div></div><hr />\n";
}
$(formField).append(html);
},
function () {
myDebug(" -> SQL Erreur de SELECT * FROM ldfsToSync");
});
});
}
myDebug("end feedToSync ...");
htmlFTS += "<div style=\"clear:both\">" + id + ": " + data.typeFrais + " du " + data.ladate + " (" + data.label + ", " + nbFR(data.ttc) + " ) <br /><div style=\"float:right\"><ons-button modifier=\"material\" onclick=\"rSyncOne(" + id + ");\">Synchroniser</ons-button> <ons-button modifier=\"material\" onclick=\"rSyncDeleteConfirm(" + id + ");\">Supprimer</ons-button></div></div><hr />\n";
// myDebug(" ldfsToSync res " + iFTS + " : " + id + " : " + data.ladate);
}
// myDebug(" ldfsToSync fin de la boucle");
$(formField).append(htmlFTS);
},
function () {
myDebug(" ldfsToSync -> SQL Erreur de SELECT * FROM ldfsToSync");
});
});
}
myDebug("end feedToSync ..." + htmlFTS);
return htmlFTS;
}
//Ajoute quelques informations
function feedDoliscanInfos() {
if ($("#feedDoliscanInfos")) {
$("#feedDoliscanInfos").empty();
let html = "<ons-list>";
html += "<ons-list-item>Compte " + localGetData("email") + "</ons-list-item>";
html += "<ons-list-item>Serveur " + localGetData("name_server") + "</ons-list-item>";
html += "<ons-list-item>Version " + globalAppVersion + "</ons-list-item>";
html += "</ons-list>";
$("#feedDoliscanInfos").append(html);
}
//Ajoute quelques informations
function feedDoliscanInfos() {
if ($("#feedDoliscanInfos")) {
$("#feedDoliscanInfos").empty();
let html = "<ons-list>";
html += "<ons-list-item>Compte " + localGetData("email") + "</ons-list-item>";
html += "<ons-list-item>Serveur " + localGetData("name_server") + "</ons-list-item>";
html += "<ons-list-item>Version " + globalAppVersion + "</ons-list-item>";
html += "</ons-list>";
$("#feedDoliscanInfos").append(html);
}
}
......@@ -100,7 +100,8 @@ function sendForm() {
gotoPage('messageDone.html', false);
}
else {
gotoPage('messageError.html', false);
ons.notification.alert("Le serveur n'est pas accessible. Votre document est enregistré sur votre téléphone, pensez à le synchroniser avec le serveur dès que vous retrouverez une bonne connexion (utilisez le menu synchronisation à ce moment là).", { title: "Réseau lent" });
gotoPage('menu.html', false);
}
},
error: function (request, textStatus, errorThrown) {
......@@ -114,7 +115,8 @@ function sendForm() {
gotoPage('messageDone.html', false);
}
else {
gotoPage('messageError.html', false);
ons.notification.alert("Le serveur n'est pas accessible. Votre document est enregistré sur votre téléphone, pensez à le synchroniser avec le serveur dès que vous retrouverez une bonne connexion (utilisez le menu synchronisation à ce moment là).", { title: "Réseau lent" });
gotoPage('menu.html', false);
}
}
});
......@@ -157,33 +159,33 @@ function sendForm() {
if (globalDB != null && globalSyncInProgress == false) {
globalDB.executeSql('INSERT INTO ldfsToSync(url,jsonData,localFileName) VALUES (?,?,?);', [localGetData("api_server") + "/api/LdeFrais", formDataInJSON, filename],
function (results) {
myDebug(' localStoreData SQL INSERT OK for ' + filename);
myDebug(' ldfsToSync SQL INSERT OK for ' + filename);
globalLastInsertId = results.insertId;
myDebug(' localStoreData SQL -> globalLastInsertId ' + globalLastInsertId);
myDebug(' ldfsToSync SQL -> globalLastInsertId ' + globalLastInsertId);
},
function (error) {
myDebug(' SQL INSERT error for: ' + filename + " message: " + error.message);
myDebug(' ldfsToSync SQL INSERT error for: ' + filename + " message: " + error.message);
});
}
else {
if (globalSyncInProgress == true) {
myDebug(" endSendForm ERR: Accès à globalDB impossible pour sauvegarder les donnees avant upload...");
myDebug(" endSendForm on evite de sauvegarder les donnees avant upload car on est en synchronisation...");
}
}
let ajaxURL = localGetData("api_server") + "/api/LdeFrais";
let ajaxTYPE = "POST";
myDebug(" endSendForm on se connecte sur " + ajaxURL);
var ajaxRequest = $.ajax({
url: ajaxURL,
timeout: 40000,
type: ajaxTYPE,
type: "POST",
data: formdata,
processData: false,
cache: false,
contentType: false,
tryCount: 0,
retryLimit: 3,
retryLimit: 1,
beforeSend: function (xhr) {
xhr.setRequestHeader('Authorization', 'Bearer ' + localGetData("api_token"));
},
......@@ -199,40 +201,41 @@ function sendForm() {
if (globalDB != null) {
myDebug("globalLastInsertId : " + globalLastInsertId);
if (globalLastInsertId > 0) {
myDebug("SQL DELETE FROM ldfsToSync WHERE ID=" + globalLastInsertId);
myDebug(" ldfsToSync SQL DELETE FROM ldfsToSync WHERE ID=" + globalLastInsertId);
globalDB.executeSql('DELETE FROM ldfsToSync WHERE ID=?;', [globalLastInsertId]);
myDebug("SQL DELETE FROM ... : ok");
myDebug(" ldfsToSync SQL DELETE FROM ... : ok");
globalLastInsertId = "";
}
}
gotoPage('messageDone.html', false);
}
else {
ons.notification.alert("Reconnexion en cours, patientez.", { title: "Réseau lent" });
ons.notification.alert("Erreur de transfert avec le serveur. Votre document est enregistré sur votre téléphone, pensez à le synchroniser avec le serveur dès que vous retrouverez une bonne connexion (utilisez le menu synchronisation à ce moment là).", { title: "Réseau lent" });
gotoPage('menu.html', false);
}
},
error: function (request, textStatus, errorThrown) {
hideWait();
myDebug("Request finished (error signal) : " + textStatus);
if (textStatus == 'timeout') {
ons.notification.alert("Reconnexion en cours, patientez.", { title: "Réseau lent" });
ons.notification.alert("Erreur de transfert avec le serveur. Votre document est enregistré sur votre téléphone, pensez à le synchroniser avec le serveur dès que vous retrouverez une bonne connexion (utilisez le menu synchronisation à ce moment là).", { title: "Réseau lent" });
myDebug('timeout, try again ...');
this.tryCount++;
if (this.tryCount <= this.retryLimit) {
//try again
$.ajax(this);
return;
}
// this.tryCount++;
// if (this.tryCount <= this.retryLimit) {
// //try again
// $.ajax(this);
// return;
// }
return;
}
if (request.status == 500) {
//TODO message a faire
gotoPage('messageError.html', false);
// window.location.replace('index.html');
ons.notification.alert("Le serveur n'est pas accessible. Votre document est enregistré sur votre téléphone, pensez à le synchroniser avec le serveur dès que vous retrouverez une bonne connexion (utilisez le menu synchronisation à ce moment là).", { title: "Réseau lent" });
gotoPage('menu.html', false);
} else {
//TODO message a faire
gotoPage('messageError.html', false);
window.location.replace('index.html');
ons.notification.alert("Le serveur n'est pas accessible. Votre document est enregistré sur votre téléphone, pensez à le synchroniser avec le serveur dès que vous retrouverez une bonne connexion (utilisez le menu synchronisation à ce moment là).", { title: "Réseau lent" });
gotoPage('menu.html', false);
}
},
complete: function (request, textStatus, errorThrown) {
......@@ -243,14 +246,13 @@ function sendForm() {
if (globalDB != null) {
myDebug("globalLastInsertId : " + globalLastInsertId);
if (globalLastInsertId > 0) {
myDebug("SQL DELETE FROM ldfsToSync WHERE ID=" + globalLastInsertId);
myDebug(" ldfsToSync SQL DELETE FROM ldfsToSync WHERE ID=" + globalLastInsertId);
globalDB.executeSql('DELETE FROM ldfsToSync WHERE ID=?;', [globalLastInsertId]);
myDebug("SQL DELETE FROM ... : ok");
myDebug(" ldfsToSync SQL DELETE FROM ... : ok");
globalLastInsertId = "";
}
}
gotoPage('messageDone.html', false);
}
else {
......
......@@ -71,7 +71,7 @@ function gotoPage(destination, saveHistory = true) {
//Si on est sur un formulaire on remplace le bouton menu par un bouton save
if (destination.indexOf("frais-") >= 0) {
$('#menuHautDroite').replaceWith('<div id="menuHautDroite" class="right"><ons-toolbar-button onclick="checkForm();"><ons-icon icon="md-check"></ons-icon></ons-toolbar-button></div>');
$('#menuHautDroite').replaceWith('<div id="menuHautDroite" class="right"><ons-toolbar-button onclick="checkForm();"><i class="fas fa-check"></i></ons-toolbar-button></div>');
}
menu.close();
}
......
......@@ -302,7 +302,7 @@ function selectLabel(objet) {
//Permet de choisir le texte / titre de la page depuis la page elle même et non dans l'appel de gotoPage
function setPageTitle(titre) {
globalCurrentTitle = titre;
$('#titreDoliScan').replaceWith('<div id="titreDoliScan" class="left" onclick="fn.back();"><i class="zmdi zmdi-chevron-left"></i> ' + titre + '</div>');
$('#titreDoliScan').replaceWith('<div id="titreDoliScan" class="left" onclick="fn.back();"><i class="zmdi chevron-circle-left"></i> ' + titre + '</div>');
}
//sera appellee lorsque la page sera bien chargee
......
......@@ -34,10 +34,15 @@ function dateFormatYYYYMMDD(ladate) {
return (y + "-" + m + "-" + d);
}
var nbFR = new Intl.NumberFormat('fr-FR', {
style: 'currency',
currency: 'EUR',
});
function nbFR(nb) {
res = new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR' }).format(nb);
return res;
}
// var nbFR = new Intl.NumberFormat('fr-FR', {
// style: 'currency',
// currency: 'EUR',
// });
//basename d'un fichier
function basename(path) {
......@@ -88,11 +93,14 @@ function compareVersions(a, b) {
//Affiche un "wait" message ... un sablier quoi
function showWait() {
myDebug("Appel a showWait");
$("#sablier").show();
setTimeout(function () { hideWait() }, 120000);
}
//Cache le sablier
function hideWait() {
myDebug("Appel a hideWait");
$("#sablier").hide();
}
......
......@@ -5,13 +5,13 @@
//Supprime un id en attente de synchronisation
function rSyncDelete(idToDelete) {
if (globalDB != null) {
myDebug("SQL DELETE FROM ldfsToSync WHERE ID=" + idToDelete);
myDebug(" ldfsToSync SQL DELETE FROM ldfsToSync WHERE ID=" + idToDelete);
globalDB.executeSql('DELETE FROM ldfsToSync WHERE ID=?;', [idToDelete]);
myDebug("SQL DELETE FROM ... : ok");
myDebug(" ldfsToSync SQL DELETE FROM ... : ok");
gotoPage('sync.html', false);
}
else {
myDebug("ERREUR SQL DELETE impossible (rsyncdelete)");
myDebug(" ldfsToSync ERREUR SQL DELETE impossible (rsyncdelete)");
gotoPage('sync.html', false);
}
}
......@@ -25,12 +25,12 @@ function rSyncOne(idToSync) {
globalSyncInProgress = true;
myDebug("start rsyncOne ...");
if (globalDB != null) {
myDebug("SQL : select * from ldfsToSync WHERE id=" + idToSync);
myDebug(" ldfsToSync SQL : select * from ldfsToSync WHERE id=" + idToSync);
globalDB.readTransaction(function (t) {
t.executeSql('SELECT * FROM ldfsToSync WHERE id=?', [idToSync],
function (tx, rs) {
myDebug(" -> SQL SELECT OK: res " + rs.rows.length);
myDebug(" ldfsToSync -> SQL SELECT OK: res " + rs.rows.length);
let nbRes = rs.rows.length;
let i = 0;
let id = rs.rows.item(i).sid;
......@@ -83,7 +83,7 @@ function rSyncOne(idToSync) {
});
},
function () {
myDebug(" -> SQL Erreur de SELECT FROM ldfsToSync");
myDebug(" ldfsToSync -> SQL Erreur de SELECT FROM ldfsToSync");
});
});
}
......
......@@ -3,7 +3,8 @@
<div id="titreDoliScan" class="left" onclick="gotoPage('menu.html',false);">
Doliscan
</div>
<div class="center">
<div id="home" class="left" onclick="gotoPage('menu.html',false);">
<i class="fas fa-home"></i>
</div>
<div id="menuHautDroite" class="right">
<ons-toolbar-button onclick="fn.open()">
......@@ -18,8 +19,8 @@
<script type="text/javascript">
//Si c'est la 1ere fois on envoie vers l'assistant
//Sinon direction le menu normal
var vA=localGetData("configMode");
if(vA == null) {
var vA = localGetData("configMode");
if (vA == null) {
gotoPage("bienvenue.html", true)
}
else {
......
......@@ -17,7 +17,7 @@
<script type="text/javascript">
$(document).ready(function () {
$('#titreDoliScan').replaceWith('<div id="titreDoliScan" class="left" onclick="gotoPage(\'menu.html\', false);">Doliscan</div>');
// $('#menuHautDroite').replaceWith('');
$('#menuHautDroite').replaceWith('<div id="menuHautDroite" class="right"><ons-toolbar-button onclick="fn.open()"><ons-icon icon="md-menu"></ons-icon></ons-toolbar-button></div>');
globalCurrentTitle = 'UploadOK';
});
</script>
......@@ -12,7 +12,7 @@
<script type="text/javascript">
$(document).ready(function () {
$('#titreDoliScan').replaceWith('<div id="titreDoliScan" class="left" onclick="gotoPage(\'menu.html\', false);">Doliscan</div>');
// $('#menuHautDroite').replaceWith('');
$('#menuHautDroite').replaceWith('<div id="menuHautDroite" class="right"><ons-toolbar-button onclick="fn.open()"><ons-icon icon="md-menu"></ons-icon></ons-toolbar-button></div>');
globalCurrentTitle = 'UploadErr';
});
</script>
......
......@@ -18,6 +18,9 @@
<script language="javascript">
feedToSync("#feedToSync");
// if (document.getElementById('feedToSync')) {
// $("#feedToSync").append(feedToSync("feedToSync"));
// }
$(document).ready(function () {
setPageTitle("Synchronisation");
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment