v20200624
authorKilian Saffran <ksaffran@dks.lu>
Wed, 24 Jun 2020 06:24:05 +0000 (08:24 +0200)
committerKilian Saffran <ksaffran@dks.lu>
Wed, 24 Jun 2020 06:24:05 +0000 (08:24 +0200)
110 files changed:
.gitignore
.htaccess [deleted file]
TODO/modules_todo/bilan/accountingyear.html [deleted file]
TODO/modules_todo/bilan/js/accountingyear.js [deleted file]
TODO/modules_todo/bychild/accountingchild.html [deleted file]
TODO/modules_todo/bychild/js/accountingchild.js [deleted file]
TODO/modules_todo/calendar/calorganisation.html [deleted file]
TODO/modules_todo/calendar/calvacancy.html [deleted file]
TODO/modules_todo/calendar/js/calactivity.js [deleted file]
TODO/modules_todo/calendar/js/calvacancy.js [deleted file]
TODO/modules_todo/checkservice/checkservice.html [deleted file]
TODO/modules_todo/checkservice/js/checkservice.js [deleted file]
TODO/modules_todo/company/company.html [deleted file]
TODO/modules_todo/company/js/company.js [deleted file]
TODO/modules_todo/company/js/locations.js [deleted file]
TODO/modules_todo/company/locations.html [deleted file]
TODO/modules_todo/forms/forms.html [deleted file]
TODO/modules_todo/forms/forms.xul [deleted file]
TODO/modules_todo/forms/img/doc.png [deleted file]
TODO/modules_todo/forms/img/form.png [deleted file]
TODO/modules_todo/forms/js/forms.js [deleted file]
TODO/modules_todo/logbook/img/logbook.png [deleted file]
TODO/modules_todo/logbook/js/logactivity.js [deleted file]
TODO/modules_todo/logbook/js/logactivity_basic.js [deleted file]
TODO/modules_todo/logbook/js/logchild.js [deleted file]
TODO/modules_todo/logbook/js/logcominterne.js [deleted file]
TODO/modules_todo/logbook/js/logcominterne_basic.js [deleted file]
TODO/modules_todo/logbook/js/logstaff.js [deleted file]
TODO/modules_todo/logbook/logactivity.html [deleted file]
TODO/modules_todo/logbook/logactivity_basic.html [deleted file]
TODO/modules_todo/logbook/logbook.xul [deleted file]
TODO/modules_todo/logbook/logbook_basic.xul [deleted file]
TODO/modules_todo/logbook/logchild.html [deleted file]
TODO/modules_todo/logbook/logcominterne.html [deleted file]
TODO/modules_todo/logbook/logcominterne_basic.html [deleted file]
TODO/modules_todo/logbook/logstaff.html [deleted file]
TODO/modules_todo/monthly/accounting.html [deleted file]
TODO/modules_todo/monthly/js/accounting.js [deleted file]
TODO/modules_todo/multisite/img/profile.png [deleted file]
TODO/modules_todo/multisite/js/multisite_reader.js [deleted file]
TODO/modules_todo/multisite/multisite.xul [deleted file]
TODO/modules_todo/openinvoices/accountingopeninvoice.html [deleted file]
TODO/modules_todo/openinvoices/js/accountingopeninvoice.js [deleted file]
TODO/modules_todo/reports/css/print.css [deleted file]
TODO/modules_todo/reports/dlg/dlgpdfviewer.xul [deleted file]
TODO/modules_todo/reports/dlg/dlgprint.xul [deleted file]
TODO/modules_todo/reports/img/logoprint.png [deleted file]
TODO/modules_todo/reports/img/print.png [deleted file]
TODO/modules_todo/reports/img/save.png [deleted file]
TODO/modules_todo/reports/img/settings.png [deleted file]
TODO/modules_todo/reports/js/print.js [deleted file]
TODO/modules_todo/reports/js/print_book.js [deleted file]
TODO/modules_todo/reports/js/print_calendar.js [deleted file]
TODO/modules_todo/reports/js/print_child.js [deleted file]
TODO/modules_todo/reports/js/print_loaddata.js [deleted file]
TODO/modules_todo/reports/js/print_logchild.js [deleted file]
TODO/modules_todo/reports/js/print_multilist.js [deleted file]
TODO/modules_todo/reports/js/print_table.js [deleted file]
TODO/modules_todo/reports/js/printpdf.js [deleted file]
TODO/modules_todo/reports/js/printutils.js [deleted file]
TODO/modules_todo/reports/print_book.html [deleted file]
TODO/modules_todo/reports/print_calendar.html [deleted file]
TODO/modules_todo/reports/print_child.html [deleted file]
TODO/modules_todo/reports/print_list.html [deleted file]
TODO/modules_todo/reports/print_logchild.html [deleted file]
TODO/modules_todo/reports/print_multilist.html [deleted file]
TODO/modules_todo/reports/print_table.html [deleted file]
TODO/modules_todo/reports/reports.xul [deleted file]
TODO/modules_todo/support/img/info.png [deleted file]
TODO/modules_todo/support/js/multisite.js [deleted file]
TODO/modules_todo/support/js/update.js [deleted file]
TODO/modules_todo/support/multisite.html [deleted file]
TODO/modules_todo/support/support.xul [deleted file]
TODO/modules_todo/support/update.html [deleted file]
apps/api/lib/pgsql.pm
apps/data/db/lechatpotte.sqlite
apps/data/db/underatert.sqlite
apps/index.cgi
apps/js/app.js
apps/js/apps.js
apps/js/webdatabase.js
apps/lib.par [deleted file]
apps/tmpl/creorga/modules/staff/js/coworker.js
apps/tmpl/skeleton/login.tt
css/site.css [deleted file]
dev/db/changes.sql [deleted file]
dev/db/dks_lu.pgsql.basedata.sql [deleted file]
dev/db/dks_lu.pgsql.schema.sql [deleted file]
dev/db/lechatpotte.new.schema.sql [deleted file]
dev/db/lechatpotte.old.schema.sql [deleted file]
dev/db/lechatpotte.old.sqlite [deleted file]
dev/db/underatert.new.schema.sql [deleted file]
dev/db/underatert.old.schema.sql [deleted file]
dev/db/underatert.old.sqlite [deleted file]
download/.DS_Store [deleted file]
img/Creorga_1000px.png [deleted file]
img/applescript.png [deleted file]
img/apps/cashboxlogo.svg [deleted file]
img/apps/coloradiologo.svg [deleted file]
img/apps/creorgalogo.svg [deleted file]
img/apps/dkstools.svg [deleted file]
img/apps/dksvpn.svg [deleted file]
img/apps/hourtraxlogo.svg [deleted file]
img/apps/invoicejournallogo.svg [deleted file]
img/apps/qrcodegenerateorlogo.svg [deleted file]
img/apps/websiteeditorlogo.svg [deleted file]
img/bash.png [deleted file]
img/bg.jpg [deleted file]
img/bg_bw.jpg [deleted file]
img/bg_creorga.jpg [deleted file]

index eee9c0b..618bed7 100644 (file)
@@ -1,2 +1,3 @@
-apps/node_modules/*
-.DSStore
+cms/lib/perl5
+apps/lib
+
diff --git a/.htaccess b/.htaccess
deleted file mode 100644 (file)
index 5f8b6c7..0000000
--- a/.htaccess
+++ /dev/null
@@ -1,10 +0,0 @@
-RewriteEngine On 
-
-DirectoryIndex index.cgi index.html 
-AddHandler cgi-script .cgi
-#devmode end
-RewriteCond %{REQUEST_FILENAME} !-f
-RewriteCond %{REQUEST_FILENAME} !-d
-
-RewriteRule "^(.*)$" "index.cgi"  [NC,L,QSA]
-
diff --git a/TODO/modules_todo/bilan/accountingyear.html b/TODO/modules_todo/bilan/accountingyear.html
deleted file mode 100644 (file)
index f090cb7..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Bilan</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: -30px;
-    }
-    td {
-      vertical-align: top;
-    }
-    td:last-child{
-      font-weight: bold;
-    }
-  </style>
-</head>
-
-<body>
-   <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" id="mnuacc">
-      <div class="input-group month btn-group">
-        <span class="input-group-addon">du année:</span>
-        <select id="accyear" class="form-control" style="width: 80px;" onchange="set_accyear();"></select>
-      </div>
-      <div class="input-group btn-group">
-        <span class="input-group-addon">montants Ã  visualiser:</span>
-        <select id="filter_amounts" class="form-control" multiple="multiple" onchange="onselamount();">
-        </select>
-      </div>
-    </div>
-   <div>
-    <table class="display dataTable cell-border" style="width: 100%;" id="tbl_accounting" role="grid"></table>
-   </div>
-   
-   </div>
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/accountingyear.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/bilan/js/accountingyear.js b/TODO/modules_todo/bilan/js/accountingyear.js
deleted file mode 100644 (file)
index 481a9ac..0000000
+++ /dev/null
@@ -1,501 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg ) 
-
-var pconfig = {};
-var cdate = null;
-var initdate = new Date();
-initdate.setDate(1);
-var winh= window.innerHeight -120;
-var tblacc = null;
-var curchilduuid = '';
-var crecheuuid = null;
-var importpath = null;
-//var lictype = apppref.getpreference("support.lictype"); 
-//var amonth = ['','Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Aôut','Septembre','Novembre','Décembre'];
-//var amonth = ['','Janv','Févr','Mars','Avril','Mai','Juin','Juil','Aôut','Sept','Nov','Déc'];
-var defamountcolors ={ "invoiced":"#003300","payed":"#660066","benefit":"#663300","openinvoices":"#cc0000","income":"#000000"};
-//"preview":"#ff6600","calculated":"#003366",
-var defamounttitles ={
-  //"calculated":"calculées",
-      "invoiced":"facturées",
-      "payed":"payées",
-      "benefit":"prestations",
-      "openinvoices":"factures ouverts",
-      "income":"revenu (facturées + prestations)"
-      //"preview":"prévision"
-      };
-      
-function initdata(){
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.accountingyear");
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  if (!pconfig.printlayout) {
-    pconfig.printlayout = 'list';
-    apppref.setpreference("pageconfig.accountingyear",pconfig);
-  }
-  if (!pconfig.amountcolors) {
-    pconfig.amountcolors = defamountcolors;
-  }
-  if (!pconfig.filteramount) {
-    pconfig.filteramount = ["calculated","openinvoices","income"];
-  }
-  if ((!pconfig) || (!pconfig.accyear)){
-    pconfig.accyear=new Date().toLocaleFormat("%Y");
-    apppref.setpreference("pageconfig.accountingyear",pconfig);
-  }
-  //if (lictype != "free"){
-  //  $("#mnuacc").css({"position":"absolute","z-index":"1000"});
-  //}
-  set_selectyears();
-  load_amount_selection("filter_amounts");
-
-  
-  set_infoheader( "Année " + pconfig.accyear);
-  load_accounting_table();
-  
-}
-
-function print_list(){
-  globelreq.send_request({page:'preview2',data:{page: 'accounting'}});
-}
-
-function load_accounting_table(){
-  
-  var daterangesql = "select case when strftime('%Y',date(yeardaybegin)) == '"+pconfig.accyear+"' then yeardaybegin else strftime('%Y-%m-%d',date(date(yeardaybegin),'+7 days')) end as yeardaybegin,"+
-  "strftime('%Y-%m-%d',date(date(yeardayend),'+6 days')) as yeardayend "+
-  "from ( " +
-  "select case when strftime('%w','"+pconfig.accyear+"-01-01') = '1' then strftime('%Y-%m-%d','"+pconfig.accyear+"-01-01') else strftime('%Y-%m-%d', date(date('"+pconfig.accyear+"-01-01','-7 days'),'weekday 1')) end as yeardaybegin, "+
-  "case when strftime('%w','"+pconfig.accyear+"-12-31') = '1' then strftime('%Y-%m-%d','"+pconfig.accyear+"-12-31') else strftime('%Y-%m-%d', date(date('"+pconfig.accyear+"-12-31','-7 days'),'weekday 1')) end as yeardayend "+
-  ");";
-  var daterange = appdb.dbquery(daterangesql);
-  daterange = daterange.sqldata[0];
-  var ydaybegin = daterange.yeardaybegin;
-  var ydayend = daterange.yeardayend;
-  
-  var accsql = "SELECT childname, CAST(substr(calmonth,1,2) as int) as calmonth, substr(calmonth,4) as calyear, ";
-  //if ((pconfig.filteramount.indexOf("calculated") != -1)  ){
-  //  accsql += "case when substr(calmonth,4) || substr(calmonth,1,2) <= strftime('%Y%m',date('now')) then printf(\"%.2f\",SUM(weektotalhourcosts + weektotallunchcosts)) else null end AS calculatedamount, ";
-  //}
-  //if ((pconfig.filteramount.indexOf("preview") != -1)  ){
-  //  accsql += "case when substr(calmonth,4) || substr(calmonth,1,2) > strftime('%Y%m',date('now')) then printf(\"%.2f\",SUM(weektotalhourcosts + weektotallunchcosts))  else null end AS previewamount, ";
-  //}
-  if (pconfig.filteramount.indexOf("invoiced") != -1) {
-    accsql += "case when invoiceamount is not null then printf(\"%.2f\",invoiceamount) else null end as invoicedamount, ";
-  }
-  if (pconfig.filteramount.indexOf("payed") != -1) {
-    accsql += "case when payedamount is not null then printf(\"%.2f\",payedamount) else null end as payedamount, ";
-  }
-  if (pconfig.filteramount.indexOf("benefit") != -1) {
-    accsql += "case when benefitamount is not null then printf(\"%.2f\",benefitamount) else null end as benefitamount, ";
-  }
-  if (pconfig.filteramount.indexOf("openinvoices") != -1) {
-    accsql += "case when invoiceamount is not null and (payedamount is null or payedamount < invoiceamount) is not null then printf(\"%.2f\",invoiceamount - coalesce(payedamount,0.00)) else null end as openinvoicesamount, ";
-  }
-  if (pconfig.filteramount.indexOf("income") != -1) {
-    accsql += "case when benefitamount is not null or invoiceamount is not null then printf(\"%.2f\",coalesce(benefitamount,0.00) + coalesce(invoiceamount,0.00)) else null end as incomeamount, ";
-  }
-
-accsql += "null as nouse FROM ( SELECT childname, ttl.childuuid, calmonth, sumdurationcalweek * weekhourcosts AS weektotalhourcosts, sumlunchcalweek * weeklunchcosts AS weektotallunchcosts, acc.invoiceamount, acc.payedamount, benefitamount " +
-"FROM ( SELECT pch.childname, pch.childuuid, px.calweek, px.calmonth, px.sumdurationcalweek, px.sumlunchcalweek, " +
-
-"CASE WHEN px.sumdurationcalweek IS NOT NULL AND pch.checkservicenumber IS NOT NULL THEN ( SELECT coalesce(wc0.costsperhour,0.00) FROM costs wc0 WHERE wc0.startdate < date('"+ydaybegin+"','+' || caldays || ' days') and wc0.weeklyhourslimit <= px.sumdurationcalweek ORDER BY wc0.startdate DESC,wc0.weeklyhourslimit DESC LIMIT 1 ) WHEN px.sumdurationcalweek IS NOT NULL AND pch.checkservicenumber IS NULL THEN ( SELECT coalesce(wc0.costperhourfallback,0.00) FROM costs wc0 WHERE wc0.startdate < date('"+ydaybegin+"','+' || caldays || ' days') and wc0.weeklyhourslimit <= px.sumdurationcalweek ORDER BY wc0.startdate DESC,wc0.weeklyhourslimit DESC LIMIT 1 ) ELSE NULL END AS weekhourcosts,"+
-
-"CASE WHEN px.sumlunchcalweek IS NOT NULL  THEN ( SELECT coalesce(wc0.dailylunchcosts,0.00) FROM costs wc0 WHERE wc0.startdate < date('"+ydaybegin+"','+' || caldays || ' days') and wc0.weeklyhourslimit <= px.sumdurationcalweek ORDER BY wc0.startdate DESC,wc0.weeklyhourslimit DESC LIMIT 1) ELSE NULL END AS weeklunchcosts " +
-
-"FROM ( SELECT COALESCE(ch.prename,'') || ' ' || COALESCE(ch.surname,'') || '<br>(' || COALESCE(ch.checkservicenumber,'') || ')' AS childname, ch.uuid AS childuuid,ch.checkservicenumber FROM childs ch JOIN planning pl ON ( ch.uuid=pl.childuuid) ) pch " +
-"LEFT JOIN ( SELECT childuuid, calweek,case when strftime('%w',date(calyear ||'-01-01')) in ('1','2','3','4') then (cast(calweek as int)*7)-7 else (cast(calweek as int)*7) end as caldays, calmonth, sumlunchcalweek, " +
-"COALESCE(SUM(monduration + tueduration + wedduration + thuduration + friduration),0.0) AS sumdurationcalweek " +
-"FROM ( SELECT childuuid, daydate,calmonth,calyear, " +
-"CASE WHEN strftime('%w',DATE(calyear ||'-01-01')) IN ('1', '2', '3', '4') THEN CASE WHEN calweek < '10' THEN '0' ELSE '' END || CAST(calweek AS INT)+1 ELSE calweek END AS calweek, " +
-"MAX(monlunch) + MAX(tuelunch) + MAX(wedlunch) + MAX(thulunch) + MAX(frilunch) AS sumlunchcalweek, " +
-"MAX(monduration) + MAX(monduration2) AS monduration, " +
-"MAX(tueduration) + MAX(tueduration2) AS tueduration, " +
-"MAX(wedduration) + MAX(wedduration2) AS wedduration, " +
-"MAX(thuduration) + MAX(thuduration2) AS thuduration, " +
-"MAX(friduration) + MAX(friduration2) AS friduration " +
-"FROM ( SELECT xx.childuuid, xx.daydate, strftime('%Y',xx.daydate) AS calyear, " +
-"CASE WHEN strftime('%w',xx.daydate)='0' THEN strftime('%W',DATE(xx.daydate,'-6 days')) ELSE strftime('%W',DATE(DATE(xx.daydate),'-' || strftime('%w',DATE(xx.daydate)) || ' days', '+1 day')) END AS calweek, " +
-"CASE WHEN strftime('%w',xx.daydate)='0' THEN strftime('%m.%Y',DATE(xx.daydate,'-6 days')) ELSE strftime('%m.%Y',DATE(DATE(xx.daydate),'-' || strftime('%w',DATE(xx.daydate)) || ' days', '+1 day')) END AS calmonth, " +
-"CASE WHEN lunch=1 AND status IN (1,5) AND strftime('%w',daydate) = '1' THEN 1 ELSE 0 END AS monlunch, " +
-"CASE WHEN lunch=1 AND status IN (1,5) AND strftime('%w',daydate) = '2' THEN 1 ELSE 0 END AS tuelunch, " +
-"CASE WHEN lunch=1 AND status IN (1,5) AND strftime('%w',daydate) = '3' THEN 1 ELSE 0 END AS wedlunch, " +
-"CASE WHEN lunch=1 AND status IN (1,5) AND strftime('%w',daydate) = '4' THEN 1 ELSE 0 END AS thulunch, " +
-"CASE WHEN lunch=1 AND status IN (1,5) AND strftime('%w',daydate) = '5' THEN 1 ELSE 0 END AS frilunch, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend THEN CAST(( (( CAST(SUBSTR(xx.montimeend,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.montimeend,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.montimebegin,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.montimebegin,4, 2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS monduration, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '2' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend THEN CAST(( (( CAST(SUBSTR(xx.tuetimeend,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.tuetimeend,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.tuetimebegin,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.tuetimebegin,4, 2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS tueduration, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '3' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend THEN CAST(( (( CAST(SUBSTR(xx.wedtimeend,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.wedtimeend,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.wedtimebegin,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.wedtimebegin,4, 2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS wedduration, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '4' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend THEN CAST(( (( CAST(SUBSTR(xx.thutimeend,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.thutimeend,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.thutimebegin,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.thutimebegin,4, 2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS thuduration, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '5' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend THEN CAST(( (( CAST(SUBSTR(xx.fritimeend,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.fritimeend,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.fritimebegin,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.fritimebegin,4, 2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS friduration, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend AND xx.montimebegin2 IS NOT NULL AND xx.montimeend2 IS NOT NULL THEN CAST(( (( CAST(SUBSTR(xx.montimeend2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.montimeend2,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.montimebegin2,1 ,2) AS INT) *3600)+( CAST(SUBSTR (xx.montimebegin2,4,2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS monduration2, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend AND xx.tuetimebegin2 IS NOT NULL AND xx.tuetimeend2 IS NOT NULL THEN CAST(( (( CAST(SUBSTR(xx.tuetimeend2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.tuetimeend2,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.tuetimebegin2,1 ,2) AS INT) *3600)+( CAST(SUBSTR (xx.tuetimebegin2,4,2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS tueduration2, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend AND xx.wedtimebegin2 IS NOT NULL AND xx.wedtimeend2 IS NOT NULL THEN CAST(( (( CAST(SUBSTR(xx.wedtimeend2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.wedtimeend2,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.wedtimebegin2,1 ,2) AS INT) *3600)+( CAST(SUBSTR (xx.wedtimebegin2,4,2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS wedduration2, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend AND xx.thutimebegin2 IS NOT NULL AND xx.thutimeend2 IS NOT NULL THEN CAST(( (( CAST(SUBSTR(xx.thutimeend2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.thutimeend2,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.thutimebegin2,1 ,2) AS INT) *3600)+( CAST(SUBSTR (xx.thutimebegin2,4,2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS thuduration2, " +
-"CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend AND xx.fritimebegin2 IS NOT NULL AND xx.fritimeend2 IS NOT NULL THEN CAST(( (( CAST(SUBSTR(xx.fritimeend2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx.fritimeend2,4,2) AS INT) *60))- ((CAST(SUBSTR(xx.fritimebegin2,1 ,2) AS INT) *3600)+( CAST(SUBSTR (xx.fritimebegin2,4,2) AS INT) *60)) ) / 3600 AS REAL) ELSE 0.0 END AS friduration2, " +
-"NULL AS nouse FROM ( " +
-"SELECT vacancydate AS daydate, CAST('0' AS BOOLEAN) AS lunch, 1 AS status, pl.* FROM vacancy va LEFT JOIN planning pl ON ( va.vacancydate BETWEEN pl.datebegin AND pl.dateend) WHERE va.vacancydateto is null and va.vacancydate BETWEEN '"+ydaybegin+"' AND '"+ydayend+"' AND strftime('%w',va.vacancydate) NOT IN ('0', '6') GROUP BY va.vacancydate, pl.childuuid " +
-"UNION " +
-"SELECT pr.daydate, pr.lunch, pr.status, pl.* FROM presence" +
-" pr JOIN planning pl ON ( pr.childuuid=pl.childuuid) WHERE pr.daydate BETWEEN '"+ydaybegin+"' AND ";
-
-if (pconfig.filteramount.indexOf("preview") != -1) {
-  accsql += "(select max(zz.daydate)  from presence zz where strftime('%Y-%m',zz.daydate) = strftime('%Y-%m',date('now')))"
-  accsql += " UNION " +
-"SELECT tmp.daydate, CASE WHEN pa.monlunch='1' AND strftime('%w',tmp.daydate) = '1' THEN 1 " +
-"WHEN pa.tuelunch='1' AND strftime('%w',tmp.daydate) = '2' THEN 1 " +
-"WHEN pa.wedlunch='1' AND strftime('%w',tmp.daydate) = '3' THEN 1 " +
-"WHEN pa.thulunch='1' AND strftime('%w',tmp.daydate) = '4' THEN 1 " +
-"WHEN pa.frilunch='1' AND strftime('%w',tmp.daydate) = '5' THEN 1 else 0 end as lunch, 1 as status , pa.*  " +
-"FROM (select daydate from ( ";
- accsql += getsqldaterange(ydaybegin,ydayend);
- accsql += ") dd where dd.daydate not in (select vacancydate from vacancy where vacancydateto is null) and dd.daydate > (select max(yy.daydate)  from presence yy where strftime('%Y-%m',yy.daydate) = strftime('%Y-%m',date('now'))   ) and strftime('%w',dd.daydate) not in ('0','6') ) tmp  " +
-"LEFT JOIN planning pa ON ( tmp.daydate BETWEEN pa.datebegin AND pa.dateend) ";
-  
-}else {
-  accsql += "'"+ydayend+"'";
-}
-accsql += ") xx " +
-"WHERE xx.daydate BETWEEN '"+ydaybegin+"' AND '"+ydayend+"' ";
-if (pconfig.filteramount.indexOf("preview") == -1) {
-  accsql += " and strftime('%Y-%m',xx.daydate) <= strftime('%Y-%m',date('now')) ";
-}
-accsql += ") GROUP BY childuuid,calweek) GROUP BY childuuid,calweek) px    " +
-"ON ( pch.childuuid=px.childuuid) GROUP BY px.childuuid,px.calweek ) ttl " +
-"LEFT JOIN accounting acc ON ( ttl.childuuid = acc.childuuid AND ttl.calmonth=strftime('%m.%Y',acc.accmonth)) WHERE calweek IS NOT NULL) " +
-"GROUP BY childname,calmonth ORDER BY childname,calmonth;";
-
-  var accdata = appdb.dbquery(accsql);
-  //dump(accsql + "\n");
-  var headerdata = getlabels("childname,jan,feb,mar,apr,may,jun,jul,aug,sep,oct,nov,dec,total");
-  $("#tbl_accounting").html("");
-  
-  var hrow = headerdata;
-  var tdclass= new Array();
-  var tblheader = '<tr>';
-
-  for (var h=0;h<hrow.length;h++){
-    tdclass.push(headerdata[h].class);
-    tblheader += '<th class="' + headerdata[h].class +'">'+ headerdata[h].title+'</th>';
-  }
-  tblheader += '</tr>';
-  
-  $("#tbl_accounting").append("<thead>" + tblheader + "</thead>");
-  $("#tbl_accounting").append("<tfoot>" + tblheader + "</tfoot>");
-  $("#tbl_accounting").append("<tbody>");
-  var curchild = "";
-  
-  var tbody = "";
-  var trcells = [];
-  var colmonthsum = new Array(12);
-  for (var i in accdata.sqldata){
-    var row = accdata.sqldata[i];
-    if (curchild != row.childname) {
-      if (i != 0) {
-        var cells = [];
-  
-        for (var t in trcells){
-          if (trcells.length > 0) {
-            if (t == 12) {
-              for (var s in trcells[t]){
-                if (trcells[t][s] == 0) {
-                  trcells[t][s] = '';
-                } else {
-                  trcells[t][s] = '<span style="color:' + defamountcolors[pconfig.filteramount[s]] + ';">' + trcells[t][s].toFixed(2) + "</span>";  
-                }
-              }
-            }
-            cells[t] = trcells[t].join("<br/>");
-          }else {
-            cells[t] = "";
-          }
-        }
-
-        tbody += "<td class=\"alignright\">" + cells.join("</td><td class=\"alignright\">") +'</td></tr>';
-      }
-      tbody += '<tr><td>' + row.childname + '</td>';
-      trcells = [[],[],[],[],[],[],[],[],[],[],[],[],[]];
-      
-    }
-    var cmon = parseInt(row.calmonth)-1;
-    for (var x in pconfig.filteramount){
-  
-      trcells[cmon][x] = ((row[pconfig.filteramount[x] + "amount"] != '')?'<span style="color:' + defamountcolors[pconfig.filteramount[x]] + ';">' +row[pconfig.filteramount[x] + "amount"] + "</span>":"");
-      if (!trcells[12][x]) {
-        trcells[12][x] = 0;
-      }
-      trcells[12][x] = trcells[12][x] + ((row[pconfig.filteramount[x] + "amount"] != '')?parseFloat(row[pconfig.filteramount[x] + "amount"]):0.00);  
-    }
-    
-    curchild = row.childname;
-  }
-  var cells = [];
-      
-        for (var t in trcells){
-          if (trcells.length > 0) {
-            if (t == 12) {
-              for (var s in trcells[t]){
-                if (trcells[t][s] == 0) {
-                  trcells[t][s] = '';
-                } else {
-                  trcells[t][s] = '<span style="color:' + defamountcolors[pconfig.filteramount[s]] + ';">' + trcells[t][s].toFixed(2) + "</span>";  
-                }
-              }
-            }
-            cells[t] = trcells[t].join("<br/>");
-          }else {
-            cells[t] = "";
-          }
-        }
-      
-        tbody += "<td class=\"alignright\">" + cells.join("</td><td class=\"alignright\">") +'</td></tr>';
-  $("#tbl_accounting").append(tbody); 
-  $("#tbl_accounting").append("</tbody>");
-  winh = window.innerHeight -130 - ((pconfig.filteramount.length == 0)? 80:pconfig.filteramount.length*16);
-  tblacc = $("#tbl_accounting").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "paging":   false,
-        "ordering": true,
-        "bAutoWidth": false,
-        "scrollY": winh + "px",
-        "scrollCollapse": true,
-        "info":     false,
-        "filter": true,
-        "destroy": true,
-        "footerCallback": function ( row, data, start, end, display ) {
-         var api = this.api(), data;
-            
-            var formatfootercell = function(r){
-              var afil = 0;
-              var dspa = new Array();
-              //dump(r + "\n");
-              for (var x=0;x<r.length;x++){
-                
-                if (r[x] != 0) {
-                  
-                  dspa.push('<span style="color:' + defamountcolors[pconfig.filteramount[x]] + ';">' + r[x].toFixed(2)+ "</span>");
-                  afil++;
-                }
-              }
-              return dspa.join('<br/>');
-            }
-            //var emptarray
-            var nospan = /\d+\.\d+/g;
-            var intVal = function ( i ) {
-                var spl = [];
-                
-                if ((!i) || (i == '') ) {
-                  for (var x = 0;x<pconfig.filteramount.length;x++){
-                    spl.push(0);
-                  }
-                }
-                if (typeof i === 'string') {
-                 
-                  i= i.replace(/<span style="color:#\w+;">/g,'').replace(/<span>/g,'');
-                  spl = i.split("<br>");
-                 
-                  if (!spl) {
-                    spl =new Array();
-                  }
-                  for (var x = spl.length;x<pconfig.filteramount.length;x++){
-                    spl.push(0);
-                  }
-                  for (var x in spl){
-                    if(spl[x] == ''){
-                      spl[x] = 0;
-                    }
-                  }
-                }
-                if (typeof i === 'object') {
-                  spl = i;
-                }
-              
-                return spl;
-            };
-            retvals = function(c,d){
-              var nr = [];
-              
-              for (var s=0;s<pconfig.filteramount.length;s++){
-                if (!c[s]) { c[s] = 0;}
-                if (!d[s]) { d[s] = 0;}
-                nr.push(parseFloat(c[s]) + parseFloat(d[s]));
-              }
-              
-              return nr;
-            }
-            jantotal = api.column( 1, { page: 'current'} ).data().reduce( function (a, b) {
-                    
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            febtotal = api.column( 2, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            martotal = api.column( 3, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            aprtotal = api.column( 4, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            maytotal = api.column( 5, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            juntotal = api.column( 6, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            jultotal = api.column( 7, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            augtotal = api.column( 8, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            septotal = api.column( 9, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            octtotal = api.column( 10, { page: 'current'} ).data().reduce( function (a, b) {
-                    
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            novtotal = api.column( 11, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            dectotal = api.column( 12, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            alltotal = api.column( 13, { page: 'current'} ).data().reduce( function (a, b) {
-                    return retvals(intVal(a),intVal(b));
-                }, 0 );
-            $( api.column( 0).footer() ).html("Totaux");
-            $( api.column( 1 ).footer() ).html(formatfootercell(jantotal));
-            $( api.column( 1 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 2 ).footer() ).html(formatfootercell(febtotal));
-            $( api.column( 2 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 3 ).footer() ).html(formatfootercell(martotal));
-            $( api.column( 3 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 4 ).footer() ).html(formatfootercell(aprtotal));
-            $( api.column( 4 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 5 ).footer() ).html(formatfootercell(maytotal));
-            $( api.column( 5 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 6 ).footer() ).html(formatfootercell(juntotal));
-            $( api.column( 6 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 7 ).footer() ).html(formatfootercell(jultotal));
-            $( api.column( 7 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 8 ).footer() ).html(formatfootercell(augtotal));
-            $( api.column( 8 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 9 ).footer() ).html(formatfootercell(septotal));
-            $( api.column( 9 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 10 ).footer() ).html(formatfootercell(octtotal));
-            $( api.column( 10 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 11 ).footer() ).html(formatfootercell(novtotal));
-            $( api.column( 11 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 12 ).footer() ).html(formatfootercell(dectotal));
-            $( api.column( 12 ).footer() ).addClass("alignright aligntop");
-            $( api.column( 13 ).footer() ).html(formatfootercell(alltotal));
-            $( api.column( 13 ).footer() ).addClass("alignright aligntop");
-        }
-      });
-//  $('#tbl_accounting').on( 'search.dt', function () {
-//    
-//    pconfig.filter = tblacc.api().search();
-//    
-//    apppref.setpreference("pageconfig.accountingyear",pconfig);
-//  } );
-
-  $('#tbl_accounting').on( 'order.dt', function () {
-    pconfig.order= tblacc.fnSettings().aaSorting;
-    
-    apppref.setpreference("pageconfig.accountingyear",pconfig);
-    
-  } );
-  
-//  if (pconfig.filter) {
-//    tblacc.fnFilter(pconfig.filter);
-//  }
-  if (pconfig.order) {
-   
-    tblacc.fnSort(pconfig.order);
-  }
-  
-  
-
-$('#tbl_accounting tbody').on( 'click', 'tr', function () {
-        if ( $(this).hasClass('selected') ) {
-          
-        }
-        else {
-            tblacc.$('tr.selected').removeClass('selected');
-            $(this).addClass('selected');
-        }
-    } );
-}
-
-function getsqldaterange(ydb,yde) {
-  var dtydb = new Date(ydb);
-  
-  var dtyde = new Date(yde);
-  var sday = new Array();
-  for (var cdate=dtydb;cdate<=dtyde;cdate.setDate(cdate.getDate() +1)){
-            if ((cdate.getDay() != 0) && (cdate.getDay() != 6)){
-                sday.push("select date('" + cdate.toISOString().substring(0,10) +"') as daydate");
-            }
-  }
-  
-  return sday.join(" UNION ");
-}
-
-function set_selectyears() {
-  var years = appdb.dbquery("select strftime('%Y',min(entrydate)) as minyear,strftime('%Y',max(leavedate)) as maxyear from childs;");
-  var minyear = parseInt(years.sqldata[0].minyear);
-  var maxyear = parseInt(years.sqldata[0].maxyear);
-  for (var y=minyear;y<=maxyear;y++){
-    var sel = "";
-    if (y == pconfig.accyear) {
-      sel=' selected="1" ';
-    }
-    $("#accyear").append("<option value=\""+y+"\""+sel+">"+y+"</option>");
-  }
-  
-}
-
-function load_amount_selection(objid) {
-  for (var s in defamounttitles){
-    $('#' + objid).append('<option value="'+ s +'">&lt;span style="color: '+defamountcolors[s]+';" &gt;' +defamounttitles[s]+ '&lt;/span&gt;</option>');
-  }
-  
-  if (pconfig.filteramount) {
-    $('#' + objid).multiselect({enableHTML: true,numberDisplayed:8,nonSelectedText:"Tous",allSelectedText: 'Tous'});
-    $('#' + objid).multiselect('select',pconfig.filteramount);
-  } else {
-    $('#' + objid).multiselect({enableHTML: true,numberDisplayed:8,nonSelectedText:"Tous",allSelectedText: 'Tous'});  
-  }
-}
-
-function onselamount() {
-  if ($('#filter_amounts').val()) {
-    pconfig.filteramount = $('#filter_amounts').val();
-  }else {
-    pconfig.filteramount = ["invoiced","payed","openinvoices","income","benefit"];
-  }
-  apppref.setpreference("pageconfig.accountingyear",pconfig);
-  load_accounting_table();
-}
-
-function set_accyear(){
-  pconfig.accyear = $('#accyear').val();
-  apppref.setpreference("pageconfig.accountingyear",pconfig);
-      globelreq.send_request({
-            page: 'accountingyear',
-            module: 'accounting',
-            data: null,
-            header: 'Bilan annuelle'
-      });
-}
-
-
-
-
diff --git a/TODO/modules_todo/bychild/accountingchild.html b/TODO/modules_todo/bychild/accountingchild.html
deleted file mode 100644 (file)
index 5376458..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Décompte Enfant</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <!-- <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css"> -->
-  <!-- <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../vendor/bootstrap-table/bootstrap-table.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <!-- <style type="text/css">
-    .dataTables_filter {
-      margin-top: -30px;
-    }
-  </style> -->
-</head>
-
-<body>
-  <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" id="#mnuacc">
-      <div class="input-group month btn-group">
-        <span class="input-group-addon">du année:</span>
-          <select id="accyear" class="form-control" style="width: 80px;" onchange="set_accyear();"></select>
-        </span>
-      </div>
-      <div class="input-group">
-        <span class="input-group-addon">du enfant:</span>
-        <select  class="form-control" value="" id="accchild" onchange="set_accchild();"></select>
-      </div>
-      <!-- <button class="btn btn-primary" onclick="newinvoice();" ><span class="glyphicons glyphicons-plus"></span>&nbsp;Nouvelle Facture</button> -->
-      <!--<div class="input-group">
-        <div class="input-group-addon">Colonnes <span class="glyphicons glyphicons-eye-close" aria-hidden="true"></span></div>
-        <select id="hidden_columns" multiple="multiple" onchange="onhidecolumn(this.id);">
-        </select>
-      </div>-->
-   </div>
-   <div>
-    <table class="table table-bordered table-hover table-striped" data-style="width: 100%;" id="tbl_accounting" style="margin-top: -40px;">
-      <thead>
-        <tr>
-          <th data-sortable="true">Mois</th>
-          <th data-sortable="true">Référence</th>
-          <th class="alignright"  data-sortable="true">facturé â‚¬</th>
-          <th class="alignright"  data-sortable="true">payé â‚¬</th>
-          <th class="alignright"  data-sortable="true">prestation â‚¬</th>
-          <th class="noprint"  data-sortable="true"></th>
-        </tr>
-      </thead>
-      <tbody></tbody>
-      <tfoot></tfoot>
-    </table>
-   </div>
-   </div>
-  <div class="modal fade" id="edit_accounting">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title" id="head_invoice">Editer facture</h4>
-              </div>
-              <div class="modal-body" style="max-height: calc(100vh - 300px);overflow-y: auto; ">
-
-                <div id="frmeditaccounting">
-                  <input type="hidden" value="" id="uuid" />
-                  <input type="hidden" value="" id="action" />
-                  <input type="hidden" value="" id="childuuid" />
-                  <div class="form-group">
-                    <label for="name">Enfant</label>
-                    <input type="text" value="" id="childname"  nullable="true" readonly="true" class="form-control">
-                  </div>
-                  <div class="form-group">
-                    <label for="name">Référence</label>
-                    <input type="text" value="" id="reference"  nullable="true" class="form-control">
-                  </div>
-                  <div class="form-group">
-                    <label for="invoicefile">Fichier</label>
-                    <input type="file" value="" id="invoicefile" nullable="true" class="form-control">
-                  </div>
-                  <div class="form-group col-md-6" id="date-container">
-                    <label for="invoicedate">Date de la Facture</label>
-
-                    <div id="dt_invoicedate" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="invoicedate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="form-group col-md-6">
-                  <label for="invoiceamount">Somme facturé</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="invoiceamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                  <div class="form-group col-md-6" id="date-container">
-                    <label for="payeddate">Date du Payement</label>
-
-                    <div id="dt_payeddate" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="payeddate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="form-group col-md-6">
-                  <label for="payedamount">Somme payé</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="payedamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                <div class="form-group col-md-12">
-                  <label for="payedamount">Somme prestation Check-Service</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="benefitamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate1">Date Rappel 1</label>
-
-                    <div id="dt_reminderdate1" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="reminderdate1"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate2">Date Rappel 2</label>
-
-                    <div id="dt_reminderdate2" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="reminderdate2"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate3">Date Rappel 3</label>
-
-                    <div id="dt_reminderdate3" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="reminderdate3"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                </div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="save_accounting();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-            </div>
-          </div>
-  <div class="modal fade" id="confirm_delete_accounting">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Décompte</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer ce décompte de facturation, payement et/ou prestation?<br>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_accounting();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/datatables.min.js" type="text/javascript"></script> -->
-  <script src="../../vendor/bootstrap-table/bootstrap-table.min.js" type="text/javascript"></script>
-  <script src="../../vendor/bootstrap-table/locale/bootstrap-table-fr-FR.js" type="text/javascript"></script> 
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/accountingchild.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/bychild/js/accountingchild.js b/TODO/modules_todo/bychild/js/accountingchild.js
deleted file mode 100644 (file)
index a1604c8..0000000
+++ /dev/null
@@ -1,323 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg ) 
-
-var pconfig = {};
-var winh= window.innerHeight -50;
-var tblacc = null;
-var curchilduuid = '';
-var crecheuuid = null;
-var importpath = null;
-var delacc = {};
-//var lictype = apppref.getpreference("support.lictype");
-
-function initdata(){
-  curcfg.loadconfig(apppref.getpreference("support.database.currentdb.num"));
-  //check_accountingtable();
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.accountingchild");
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  if (!pconfig.printlayout) {
-    pconfig.printlayout = 'list';
-    apppref.setpreference("pageconfig.accountingchild",pconfig);
-  }
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  importpath = FileUtils.File(curcfg.path.local  + system.sep() +"imports" + system.sep() + crecheuuid);
-  //check_accountingtable();
-  load_childlist();
-  if (pconfig.accchild) {
-  //  
-
-    $("#accchild").val(pconfig.accchild);
-  }else {
-    $("#accchild").val($("#accchild option:first").val());
-    pconfig.accchild=$("#accchild option:first").val();
-  }
-  if (!pconfig.accyear){
-    pconfig.accyear=new Date().toLocaleFormat("%Y");
-    apppref.setpreference("pageconfig.accountingchild",pconfig);
-  }
-
-  set_selectyears();
-
-  set_infoheader($("#accchild option:selected").text() + " Année:" + pconfig.accyear);
-
-  load_accounting_table();
-  
-}
-
-
-
-function load_accounting_table(){
-  
-  var accsql = "select strftime('%m.%Y', acc.invoicedate) as calmonth," +
-  "acc.reference, "+
-   " case when acc.invoiceamount is not null then printf(\"%.2f\",  COALESCE(acc.invoiceamount,  0.00)) || '€' || " +
-    " case  when acc.invoicedate is not null then '<br/>(' || strftime('%d.%m.%Y', acc.invoicedate) || ')' || " +
-   " CASE  WHEN acc.reminderdate1 IS NOT NULL THEN '<br/>R1:' || strftime('%d.%m.%Y', acc.reminderdate1)  ELSE '' END || "+
-   " CASE WHEN acc.reminderdate2 IS NOT NULL THEN '<br/>R2:' || strftime('%d.%m.%Y', acc.reminderdate2)  ELSE ''  END || "+
-   "  CASE  WHEN acc.reminderdate3 IS NOT NULL THEN '<br/>R3:' || strftime('%d.%m.%Y', acc.reminderdate3) ELSE '' END else '' end  else '' end as invoiced,"+
-   " case  when acc.payedamount is not null then printf(\"%.2f\", COALESCE(acc.payedamount,  0.00)) || '€' || "+
-   " case  when acc.payeddate is not null then '<br/>(' || strftime('%d.%m.%Y', acc.payeddate) || ')' else '' end else '' end as payement, "+
-   " case when acc.benefitamount is not null then printf(\"%.2f\",COALESCE(acc.benefitamount,0.00)) || '€' else '' end as benefitamount," +
-   " '<button type=\"button\" class=\"btn btn-primary\" onclick=\"dlg_accounting(''' || acc.uuid || ''');\" title=\"editer\"><span class=\"glyphicon glyphicon-pencil\"></span></button>' || " +
-   " CASE WHEN acc.invoicefile IS NOT NULL and acc.invoicefile != '' THEN '<button type=\"button\" class=\"btn btn-primary\" onclick=\"openfile(''' || acc.invoicefile || ''');\"  title=\"editer\"><span class=\"glyphicon glyphicon-open\"></span></button>' else '' end || '<button type=\"button\" class=\"btn btn-danger\" onclick=\" confirm_delete_accounting(''' || acc.uuid || ''');\" title=\"supprimer\"><span class=\"glyphicon glyphicon-remove\"></span></button>' AS act " +
-  " from accounting acc where childuuid='"+ pconfig.accchild+"' and strftime('%Y',acc.invoicedate) = '" + pconfig.accyear +"' order by invoicedate;";
-
-  var accdata = appdb.dbquery(accsql);
-
-  $("#tbl_accounting > tbody").html("");
-  
-  var curchld = "";
-
-  for (var i in accdata.sqldata){
-    var row = accdata.sqldata[i];
-        var tr = '<tr><td>' + row.calmonth + '</td>';
-        tr += '<td>'+row.reference+'</td>';
-        tr += '<td class="alignright" >'+  row.invoiced + '</td>';
-        tr += '<td class="alignright" >'+  row.payement + '</td>';
-        tr += '<td class="alignright totalwidth" >' + row.benefitamount + '</td>';
-        tr += '<td class="noprint">' + row.act + '</td></tr>';
-        $("#tbl_accounting > tbody").append(tr);
-    }
-    
-    $("#tbl_accounting").bootstrapTable({
-      locale: 'fr-FR',
-      pagination: false,
-      search: true,
-      height: winh,
-      toolbar: "#mnuacc"
-    });
-}
-
-function set_accchild(){
-  pconfig.accchild = $('#accchild').val();
-  apppref.setpreference("pageconfig.accountingchild",pconfig);
-      globelreq.send_request({
-            page: 'accountingchild',
-            module: 'accounting',
-            data: null,
-            header: 'Décompte par enfant'
-      });
-}
-
-function load_childlist() {
-
-  var chlst = appdb.dbquery("select pr.childuuid,COALESCE(ch.prename,'') || ' ' || COALESCE(ch.surname,'') || ' (' || COALESCE(ch.checkservicenumber,'') || ')' AS childname from childs ch left join presence pr on (ch.uuid=pr.childuuid) where pr.childuuid is not null group by ch.uuid order by childname");
-  chlst = chlst.sqldata;
-  for (c in chlst){
-    $("#accchild").append('<option value="'+ chlst[c].childuuid+'">'+ chlst[c].childname +'</option>');
-  }
-}
-
-
-function dlg_accounting(myuuid){
-  $("#frmeditaccounting #action").val("upd");
-  $("#head_invoice").html("Editer facture");
-  $("#frmeditaccounting #childname").val($("#accchild  option:selected").text());
-  
-  var acc1sql = "SELECT uuid,accmonth,childuuid,case when invoicedate is not null then strftime('%d.%m.%Y',invoicedate) else null end as invoicedate, case when payeddate is not null then strftime('%d.%m.%Y',payeddate) else null end as payeddate, payedamount, benefitamount,invoiceamount, reference, case when reminderdate1 is not null then strftime('%d.%m.%Y',reminderdate1) else null end as reminderdate1, case when reminderdate2 is not null then strftime('%d.%m.%Y',reminderdate2) else null end as reminderdate2, case when reminderdate3 is not null then strftime('%d.%m.%Y',reminderdate3) else null end as reminderdate3,case when invoicefile is not null  and invoicefile != '' then '"+ importpath.path + system.sep() +"' || invoicefile else null end as invoicefile,'upd' as action FROM accounting where uuid='" + myuuid +"';";
-  
-  var acc1data = appdb.dbquery(acc1sql);
-  
-  if (acc1data.sqldata.length == 0) {
-    acc1sql = "SELECT '0' as uuid,"+ accmonth.substring(3) + "-" + accmonth.substring(0,2) +"-01' as accmonth,'"+ pconfig.accchild+"' as childuuid, null as invoicedate, null as payeddate, null as payedamount, null as invoiceamount, null as reference, null as reminderdate1, null as reminderdate2, null as reminderdate3,null as benefitamount ,null as invoicefile, 'ins' as action;";
-    acc1data = appdb.dbquery(acc1sql);
-  }
-  acc1data = acc1data.sqldata[0];
-
-  for (var a in acc1data){
-  
-    if ($("#frmeditaccounting #" +a)) {
-  
-      $("#frmeditaccounting #"+a).val(acc1data[a]);
-    }
-  }
-  $("#edit_accounting").modal('show');
-  
-}
-
-function newinvoice(){
-  if ($("#accchild").val() == ""){
-    alert("Vous devez d'abort selectionner un enfant!");
-    return;
-  }
-  $("#frmeditaccounting :input").each(function(){
-    var input = $(this);
-    input.val("");
-  });
-  $("#frmeditaccounting #action").val("ins");
-  $("#frmeditaccounting #uuid").val("0");
-  $("#frmeditaccounting #childuuid").val($("#accchild").val());
-  $("#head_invoice").html("Ajouter une facture");
-
-  
-  $("#frmeditaccounting #childname").val($("#accchild  option:selected").text());
-  $("#edit_accounting").modal('show');
-}
-
-function save_accounting(){
-        var sql1 = new Array();
-        var sql2 = new Array();
-        // var cntnum = "01"; 
-        var type = $("#frmeditaccounting #action").val();
-        if (type == 'ins'){
-          sql1.push('childuuid');
-          sql2.push("'"+ pconfig.accchild +"'");
-          
-        }
-        
-        $("#frmeditaccounting :input").each(function(){
-          var input = $(this);
-          if (input.attr("id") ){
-            if ((type == 'ins') && (input.attr("type") != 'hidden') && (input.attr("id") != 'accmonth') && (input.attr("id") != 'childname')) {
-              
-              sql1.push('"' + input.attr("id") + '"');
-              if (input.attr("type") == "file") {
-                var newlocation= importpath.path + system.sep() + system.getFileName(input.val());
-                if (!system.fileexists(importpath.path)){
-                  importpath.create(1,0755);
-                }
-                OS.File.copy(input.val(), newlocation);
-              }
-              var ival = input.val();
-              
-              var ival = encodeparam(input.val(),input.attr('type'));
-              sql2.push(ival);
-              if (input.attr("id") == 'invoicedate'){
-                sql1.push('"accmonth"');
-                
-                var newaccmonth = ival.replace(/'/g,"");
-                // var cntx = appdb.dbquery("select count(accmonth)+1 as cnt from accounting where childuuid = '"+ pconfig.accchild +"' and accmonth between date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01') and date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01','+1 month','-1 day'); ");
-                // cntnum = cntx.sqldata[0].cntx;
-                // if (cntnum < 10){ cntnum = "0" + cntnum;}
-                sql2.push('\'' + newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7) +"-01'");
-              }
-            }else {
-              if ((input.attr("type") != 'hidden') &&  (input.attr("id") != 'childname')) {
-                if (input.attr("type") == "file") {
-                  if (system.getDirectory(input.val()) != importpath.path) {
-                    var newlocation= importpath.path + system.sep() + system.getFileName(input.val());
-                    OS.File.copy(input.val(), newlocation);
-                  }
-                }
-                var ival = input.val();
-
-                var ival = encodeparam(ival,input.attr('type'));
-                sql2.push('"' + input.attr("id") +'"='+ ival);
-                if (input.attr("id") == 'invoicedate'){
-                  var newaccmonth = ival.replace(/'/g,"");
-                //   var cntx = appdb.dbquery("select count(accmonth)+1 as cnt from accounting where childuuid = '"+ pconfig.accchild +"' and accmonth between date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01') and date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01','+1 month','-1 day'); ");
-                // cntnum = cntx.sqldata[0].cntx;
-                // if (cntnum < 10){ cntnum = "0" + cntnum;}
-                  sql2.push('"accmonth"=\'' + newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7) +"-01'");
-                }
-                
-              }
-            }
-          }
-
-        });
-        var xsql = "";
-        if (type == 'upd') {
-          xsql = "UPDATE accounting SET "+sql2.join(',')+" where \"uuid\"='" + $("#frmeditaccounting #uuid").val() +"';";
-        }else {
-          sql1.push("uuid");
-          sql2.push("'" + appdb.generate_uuid() + "'");
-          xsql = "INSERT INTO accounting ("+sql1.join(',')+") VALUES ("+sql2.join(',')+");"; 
-        }
-        //jsdump(xsql);
-        appdb.dbexec(xsql);
-        load_accounting_table();
-        $("#frmeditaccounting #uuid").val("0");
-        $("#edit_accounting").modal('hide');
-      }
-
-function print_list(){
-  globelreq.send_request({page:'preview2',data:{page: 'accountingchild'}});
-}
-
-function openfile(fi){
-  var ddir = system.getDirectory(appdb.dbFile.path);
-  var ff = system.openFile(ddir + system.sep() + 'imports' + system.sep() + crecheuuid +system.sep() + fi);
-}
-
-function set_accyear(){
-  pconfig.accyear = $('#accyear').val();
-  apppref.setpreference("pageconfig.accountingchild",pconfig);
-      globelreq.send_request({
-            page: 'accountingchild',
-            module: 'accounting',
-            data: null,
-            header: 'Décompte par enfant'
-      });
-}
-
-function set_selectyears() {
-  var years = appdb.dbquery("select strftime('%Y',min(entrydate)) as minyear,strftime('%Y',max(leavedate)) as maxyear from childs;");
-  var minyear = parseInt(years.sqldata[0].minyear);
-  var maxyear = parseInt(years.sqldata[0].maxyear);
-  for (var y=minyear;y<=maxyear;y++){
-    var sel = "";
-    if (y == pconfig.accyear) {
-      sel=' selected="1" ';
-    }
-    $("#accyear").append("<option value=\""+y+"\""+sel+">"+y+"</option>");
-  }
-  
-}
-
-function confirm_delete_accounting(myuuid) {
-  delacc.uuid = uuid;
-  $('#confirm_delete_accounting').modal('show');
-}
-
-function delete_accounting() {
-  var xsql = "DELETE FROM accounting where uuid='"+ delacc.uuid+"';";
-
-  appdb.dbexec(xsql);
-  load_accounting_table();
-  delacc ={};
-  
-  $('#confirm_delete_accounting').modal('hide');
-}
-
-function load_column_selection() {
-  var columns = 'weekdetails,monthtotalhourcosts,monthtotallunchcosts,monthtotalcosts,invoiced,payement,benefitamount';
-  var head = getlabelswithkey(columns);
-  var hidden_columns = [];
-  //if (pconfig.hidden_columns) {
-  //  hidden_columns = JSON.parse(columns);
-  //}
-  for (var h=0;h<head.length;h++){
-    $('#hidden_columns').append('<option value="'+ head[h].keyname +'" >&lt;span &gt;' +head[h].description+ '&lt;/span&gt;</option>');
-  }
-  $('#hidden_columns').multiselect({enableHTML: true,numberDisplayed:1,nonSelectedText:"Aucune",allSelectedText: 'Tous',nSelectedText: ' selections'});  
-  if (pconfig.hidden_columns) {
-    //$('#hidden_columns' + objid).multiselect({enableHTML: true,numberDisplayed:3,nonSelectedText:"Tous",allSelectedText: 'Tous',nSelectedText: ' selections'});
-    $('#hidden_columns').multiselect('select',pconfig.hidden_columns);
-  } 
-}
-
-function onhidecolumn(coltohide) {
-  pconfig.hidden_columns = $('#hidden_columns').val();//(()?$('#' + objid).val().split(','):null);
-  apppref.setpreference("pageconfig.accountingchild",pconfig);
-  //dump(JSON.stringify(pconfig) + "\n");
-   globelreq.send_request({
-            page: 'accountingchild',
-            module: 'accounting',
-            data: null,
-            header: 'Décompte par enfant'
-      });
-  //dump("Hide column " + coltohide + "\n");
-}
-
-// function check_accountingtable(){
-//    var cols = appdb.dbquery("SELECT type, name,tbl_name,sql FROM sqlite_master where tbl_name='accounting';");
-//    if (cols.sqldata[0].sql.indexOf(" uuid TEXT") == -1){
-//       appdb.dbexec("ALTER TABLE accounting add column uuid TEXT;");
-//    }
-//    appdb.dbexec("UPDATE accounting set uuid= hex(randomblob(4)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(6)) where uuid is null;");
-// }
diff --git a/TODO/modules_todo/calendar/calorganisation.html b/TODO/modules_todo/calendar/calorganisation.html
deleted file mode 100644 (file)
index 598030b..0000000
+++ /dev/null
@@ -1,471 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-  <title>Organisation Personnel</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../../oldvendor/css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../../oldvendor/css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../../oldvendor/css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/jquery.minicolors.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/modules.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/calendar.css" rel="stylesheet" type="text/css">
-  <style>
-    #tbl_timetable {
-      height: calc(100vh - 90px);
-    }
-table#tbl_timetable {
-    display: flex;
-    flex-flow: column;
-    /*height: 100%;*/
-    
-    width: 100%;
-}
-table#tbl_timetable thead,table#tbl_timetable tfoot {
-    /* head takes the height it requires, 
-    and it's not scaled when table is resized */
-    /*flex: 0 0 auto;*/
-    width: calc(100% - 1.2em);
-}
-table#tbl_timetable tbody {
-    /* body takes all the remaining available space */
-    /*flex: 1 1 auto;*/
-    display: block;
-    overflow-y: scroll;
-}
-table#tbl_timetable tbody tr {
-    width: 100%;
-}
-table#tbl_timetable thead,
-table#tbl_timetable tfoot,
-table#tbl_timetable tbody tr {
-    display: table;
-    table-layout: fixed;
-}
-
-table#tbl_timetable tbody td {
-    padding-bottom: 1px;
-    padding-top: 1px;
-}
-
-td.vacday {
-  background-color: #666666;
-}
-  </style>
-</head> 
-
-<body>
-  <nav class="navbar navbar-inverse navbar-fixed-top">
-        
-    <div class="">
-        <ul class="nav navbar-nav navbar-left">
-            <li style="padding-top: 7px; padding-left: 10px; color: #fff;font-size: 24px;">Calendrier organisation</li>
-               <li style="padding-top: 7px; padding-left: 10px;">
-                 <div  class="form-inline" style="margin-bottom: 7px;">
-                   <div class="input-group month btn-group">
-                     <span class="input-group-addon">du mois:</span>
-                     <input type="text" class="form-control" value="" style="width: 120px;" id="calmonth" onchange="set_calmonth();">
-                     <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                   </div>
-                     <button class="btn btn-primary" onclick="onpreviousmonth();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-                     <button class="btn btn-primary" onclick="onnextmonth();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-
-                 
-           <div class="input-group" id="divfilterstaff">
-              <div class="input-group-addon"><span class="glyphicon glyphicon-filter" aria-hidden="true"></span>&nbsp;Personnel</div>
-          <select id="filter_staff" multiple="multiple" onchange="onselstaff(this.id);">
-            
-          </select>
-          
-          </div>
-                 </div>
-           <span class="pagehead" id="pagehead" style="color: #fff"></span></li>
-           </ul>
-        
-    </div>
-    
-  </nav>
-    <div class="container-fluid" style="padding-top: 55px;">
-    
-    
-    
-    
-    <div class="row" id="view_table">
-      <table id="tbl_timetable" class="table table-striped table-bordered" style="width: 95%;">
-        
-      </table>
-    </div>
-  </div>
-    <!---->
-        <div class="modal fade" id="edit_event">
-          <div class="modal-dialog" style="width: 800px; max-width: 800px;">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer/Ajouter Planning</h4>
-              </div>
-              <div class="modal-body" style=" height: 550px; max-height: 550px ">
-<div id="frmeditevent">
-                  <input type="hidden" value="0" id="uuid" />
-                  <div class="form-inline row">
-                    <label for="cmb_description" class="col-md-2">Activité</label>
-                    <select id="cmb_clone_activity" onchange="oncloneactivity(this.id);">
-                      <option value="">nouvelle activité...</option>
-                    </select>
-                    
-                  </div>
-                  <div class="form-inline row">
-                    <label for="description" class="col-md-2">Description</label>
-                    <div class="input-group form-inline col-md-8">
-                    <input type="text" value="" id="description"  class="form-control">
-                    <span class="input-group-addon" style="height: 20px; padding-top: 1px; padding-bottom: 1px;"><input type="hidden" id="color" class="form-control " value="" style="margin-top: 0px;"></span>
-                    </div>
-                    <!--<input type="color" value="" id="color"  class="form-control col-md-8" style="width: 10%;">-->
-                  </div>
-                  <div class="form-inline row">
-                    <label for="location" class="col-md-2">Lieu</label>
-                    <input type="text" value="" id="location" class="form-control col-md-6" style="width: 80%;">
-                  </div>
-                  <div class="form-inline row">
-                    <label for="activityuuid" class="col-md-2">Personnel</label>
-                    <select value="" id="staffuuid" class="form-control col-md-8" style="width: 80%;" multiple="multiple" ></select>
-                  </div>
-                  <div class="row">
-                    <div class="form-inline">
-                  <div id="date-container">
-                    <label class="col-md-3">Dates début / fin</label>
-                    <div id="dt_datefrom" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="1" placeholder="dd.mm.yyyy" id="datefrom"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                    <div id="dt_dateto" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="1" placeholder="dd.mm.yyyy" id="dateto"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  </div>
-                  </div>
-                  <div class="row">
-                  <div class="form-inline ">
-                    <label   class="col-md-3">heures début / fin</label>
-                    <div class="input-group bootstrap-timepicker time">
-                      <input type="text" class="form-control timepicker" placeholder="" value="" id="timefrom">
-                    </div>
-                    <div class="input-group bootstrap-timepicker time">
-                      <input type="text" class="form-control timepicker" placeholder="" value="" id="timeto">
-                    </div>
-                  </div>
-                  </div>
-                  <div class="row">
-                    
-                  </div>
-                  <div class="row">
-                    <div class="panel panel-default">
-                      <div class="panel-heading">
-                        <h3 class="panel-title">Récurrence
-                        <select id="freq" onchange="setfreq();">
-                          <option value="">pas de récurrence</option>
-                          <option value="daily">quotidienne</option>
-                          <option value="weekly">hebdomaire</option>
-                          <option value="monthly">mensuelle</option>
-                        </select>
-                        </h3>
-                      </div>
-                    <div class="panel-body">
-                        <div class="row" style="padding-left: 20px; padding-bottom: 3px;">
-                        <div class="form-inline" id="freqinterval">
-                          <label>interval: tous les</label>
-                          <input class="form-control" type="number" id="interval" style="width: 50px;" value="1"/>
-                          <label id="lblfreq"></label>
-                        </div>
-                        </div>
-                        <div class="row" id="freqweekly" style="padding-left: 20px; padding-bottom: 3px;">
-                           <div class="form-inline">
-                            <label>jours de semaine:</label>
-                            <!--<input class="col-md-2 form-control" style="width: 50px;" type="number" id="xtimes_num" value="1"/>-->
-                            <!--<label class="col-md-2">semaines,le </label>-->
-                            <div class="btn-group form-inline" id="weekly_byday" data-toggle="buttons">
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="weekly_byday_mo" value="MO" /> Lundi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="weekly_byday_tu" value="TU" /> Mardi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="weekly_byday_we" value="WE" /> Mercredi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="weekly_byday_th" value="TH" /> Jeudi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="weekly_byday_fr" value="FR" /> Vendredi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="weekly_byday_sa" value="SA" /> Samedi
-                            </label>
-                            <!--<label class="btn btn-primary">-->
-                            <!--  <input type="checkbox" id="weekly_byday_su" value="SU" /> Di-->
-                            <!--</label>-->
-                           </div>
-                           </div>
-                        </div>
-                        <div class="row" id="freqmonthly" style="padding-left: 20px; padding-bottom: 3px;">
-                          <div class="form-inline">
-                            <div class="btn-group" data-toggle="buttons" id="monthly_by">
-                            <label class="btn btn-primary active">
-                              <input type="radio" id="pnl_monthly_byday" value="monthly_byday" checked="1"/> par jour de semaine
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="radio" id="pnl_monthly_bymonthday" value="monthly_bymonthday"/> par jour du mois
-                            </label>
-                            </div>
-                          </div>
-                          <div class="form-inline" id="freq_monthly_byday">
-                            <!--<label class="col-md-2">tous les</label>-->
-                            <!--<input class="col-md-2 form-control" type="number" id="xtimes_num"  style="width: 50px;" value="1"/>-->
-                            <!--<label class="col-formmd-2">mois, le </label><br/>-->
-                            <div class="btn-group" data-toggle="buttons" id="monthly_bydaypos">
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaypos_1" value="1" /> 1ier
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaypos_2" value="2" /> 2ième
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaypos_3" value="3" /> 3ième
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaypos_4" value="4" /> 4ième
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaypos_5" value="5" /> 5ième
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydayppos_last-1" value="-1" /> dernier
-                            </label>
-                          </div>
-                            <br/>
-                            <div class="btn-group" data-toggle="buttons" id="monthly_bydaywday">
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaywday_mo" value="MO" /> Lundi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaywday_tu" value="TU" /> Mardi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaywday_we" value="WE" /> Mercredi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaywday_th" value="TH" /> Jeudi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaywday_fr" value="FR" /> Venedredi
-                            </label>
-                            <label class="btn btn-primary">
-                              <input type="checkbox" id="monthly_bydaywday_sa" value="SA" /> Samedi
-                            </label>
-                            <!--<label class="btn btn-primary">-->
-                            <!--  <input type="checkbox" id="monthly_bydaywday_su" value="SU" /> Di-->
-                            <!--</label>-->
-                           </div>
-                            </div>
-                           <div class="form-inline" id="freq_monthly_bymonthday">
-                            <div class="btn-group" data-toggle="buttons" id="monthly_bymonthday">
-                            <label class="btn btn-primary" style="width: 40px; border-radius: 0px;">
-                              <input type="checkbox" id="monthly_bymonthday_1" value="1" />1
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_2" value="2" />2
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_3" value="3" />3
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_4" value="4" />4
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_5" value="5" />5
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_6" value="6" />6
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_7" value="7" />7
-                            </label>                      
-                            <br/>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_8" value="8" />8
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_9" value="9" />9
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_10" value="10" /> 10
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_11" value="11" /> 11
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_12" value="12" /> 12
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_13" value="13" /> 13
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_14" value="14" /> 14
-                            </label>
-                           
-                            <br/>
-                            
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_15" value="15" /> 15
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_16" value="16" /> 16
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_17" value="17" /> 17
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_18" value="18" /> 18
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_19" value="19" /> 19
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_20" value="20" /> 20
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_21" value="21" /> 21
-                            </label>
-                           
-                            <br/>
-                            
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_22" value="22" /> 22
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_23" value="23" /> 23
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_24" value="24" /> 24
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_25" value="25" /> 25
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_26" value="26" /> 26
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_27" value="27" /> 27
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_28" value="28" /> 28
-                            </label>
-                           
-                            <br/>
-                            
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_29" value="29" /> 29
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_31" value="31" /> 30
-                            </label>
-                            <label class="btn btn-primary" style="width: 40px;">
-                              <input type="checkbox" id="monthly_bymonthday_31" value="31" /> 31
-                            </label>
-                            <label class="btn btn-primary" style="width: 157px;" >
-                              <input type="checkbox" id="monthly_bymonthday_-1" value="-1" /> dernier
-                            </label>
-                            
-                            <br/>
-                            <label class="btn btn-primary" style="width: 138px;">
-                              <input type="checkbox" id="monthly_bymonthday_-2" value="-2" /> av.-dernier
-                            </label>
-                            <label class="btn btn-primary" style="width: 138px; border-radius: 0px;">
-                              <input type="checkbox" id="monthly_bymonthday_-3" value="-3" /> av.-av.-dernier
-                            </label>
-                           </div>
-                            
-                          </div>
-                          
-                          
-                          
-                          <br/>
-                          
-                        </div>
-                    </div>
-                    
-                  </div>
-                  </div>
-</div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" id="btndeleteevent" onclick="confirm_delete_event();" class="btn">Supprimer</button>
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="save_event();" id="btn_save_event" class="btn btn-primary">Accepter</button>
-              </div>
-              </div>
-            </div>
-          </div>
-        <div class="modal fade" id="confirm_delete_event">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Activité</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette Activité?<br>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_event();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-        </div>
-        <div class="modal fade" id="dlg_vacancy_detail">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Congés</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                <div id="vacdetail">
-                  
-                </div>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn btn-primary">Fermer</button>
-              </div>
-            </div>
-          </div>
-        </div>
-    
-  </div>
-  <script src="../../../oldvendor/js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/jquery.minicolors.min.js" type="text/javascript"></script>
-  <script src="../../../vendor/rrule/rrule.js" type="text/javascript"></script>
-  <script src="../../../vendor/rrule/nlp.js" type="text/javascript"></script>
-  <script src="../../../js/webpreferences.js" type="text/javascript"></script>
-  <script src="../../../js/webdatabase.js" type="text/javascript"></script>
-  <script src="../../../js/module_functions.js" type="text/javascript"></script>
-  <script src="../../../js/labels.js" type="text/javascript"></script>
-  <script src="js/calactivity.js" type="text/javascript"></script>
-</body>
-</html>
diff --git a/TODO/modules_todo/calendar/calvacancy.html b/TODO/modules_todo/calendar/calvacancy.html
deleted file mode 100644 (file)
index e6323c5..0000000
+++ /dev/null
@@ -1,204 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-
-<html>
-<head>
-  <title>Congé</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../../oldvendor/css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../../oldvendor/css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../../oldvendor/css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../../oldvendor/css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../../oldvendor/css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/modules.css" rel="stylesheet" type="text/css">
-  <link href="../../../oldvendor/css/calendar.css" rel="stylesheet" type="text/css">
-</head>
-
-<body>
-    <nav class="navbar navbar-inverse navbar-fixed-top">
-        
-        <div class="">
-            <ul class="nav navbar-nav navbar-left">
-                <li style="padding-top: 7px; padding-left: 10px; color: #fff;font-size: 24px;">Calendrier congés</li>
-                   <li style="padding-top: 7px; padding-left: 10px;">
-                     <div  class="form-inline" style="margin-bottom: 7px;">
-                       <div class="input-group month btn-group">
-                         <span class="input-group-addon">du mois:</span>
-                         <input type="text" class="form-control" value="" style="width: 120px;" id="calmonth" onchange="set_calmonth();">
-                         <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                       </div>
-                         <button class="btn btn-primary" onclick="onpreviousmonth();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-                         <button class="btn btn-primary" onclick="onnextmonth();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-    
-                     
-                         <div class="input-group" id="divfiltercreche">
-                            <div class="input-group-addon"><span class="glyphicon glyphicon-filter" aria-hidden="true"></span>&nbsp;Lieu</div>
-                        <select id="filter_creche" multiple="multiple" onchange="onselcreche(this.id);">
-                          
-                        </select>
-                        
-                        </div>
-                     </div>
-               <span class="pagehead" id="pagehead" style="color: #fff"></span></li>
-               </ul>
-            
-        </div>
-        
-      </nav>
-        <div class="container-fluid" style="padding-top: 55px;">
-    
-
-    <div class="row" id="view_table">
-      <table id="tbl_timetable" class="table table-striped table-bordered">
-        
-      </table>
-    </div>
-    <!-- Sel creche -->
-    <!-- <div class="modal fade" id="select_creche">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Selectionner une crèche</h4>
-              </div>
-              <div class="modal-body">
-                               <div id="frmselcreche">
-                  <div class="input-group" id="divfiltercreche">
-                                       <div class="input-group-addon"><span class="glyphicon glyphicon-filter" aria-hidden="true"></span>&nbsp;Crèche</div>
-  <select id="sel_creche">
-    
-  </select>
-  
-  </div>
-                  
-                  
-                  
-                </div>
-              </div>
-              <div class="modal-footer">
-                
-                <button onclick="set_creche();" id="btn_set_creche" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-            </div>
-          </div> -->
-    <!--edit vacancy-->
-        <!-- <div class="modal fade" id="edit_vacancy">
-          <div class="modal-dialog" style="width: 800px; max-width: 800px;">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer Congé</h4>
-              </div>
-              <div class="modal-body" style="height: 410px; max-height: 410px; ">
-<div id="frmeditvacancy">
-                  <input type="hidden" value="0" id="uuid" />
-                  <div class="form-inline row">
-                    <label for="staffuuid" class="col-md-3">Employé(e)</label>
-                    <select value="" id="staffuuid"  nullable="true" class="form-control"></select>
-                  </div>
-                  <div class="form-inline row">
-                    <label for="dailyduration" class="col-md-3">Journée</label>
-                    <select value="" id="dailyduration"  class="form-control" onchange="setdailydurationfields();">
-                      <option value="1.0">Journée(s) complet(s)</option>
-                      <option value="0.4">demi(s) Journée(s)</option>
-                      <option value="0.">quelques heures</option>
-                    </select>
-                  </div>
-                  
-                    <div class="row form-inline">
-                    <label class="col-md-3">Date début</label>
-                    <div id="dt_datefrom" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="1" placeholder="dd.mm.yyyy" id="datefrom"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="row form-inline">
-                    <label class="col-md-3">Date fin</label>
-                    <div id="dt_dateto" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="1" placeholder="dd.mm.yyyy" id="dateto"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  
-                  <div id="ftimefrom" class="row form-inline">
-                  
-                    <label   class="col-md-3">heure début</label>
-                    <div class="input-group bootstrap-timepicker time">
-                      <input type="text" class="form-control timepicker" placeholder="" value="" id="timefrom">
-                    </div>
-                  </div>
-                  <div id="fhours" class="row form-line">
-                    <label   class="col-md-3">nbr. d'heures</label>
-                    <select value="" id="hours" class="form-control" style="width: 10%;">
-                      <option value="1">1h</option>
-                      <option value="2">2h</option>
-                      <option value="3">3h</option>
-                      <option value="4">4h</option>
-                      <option value="5">5h</option>
-                      <option value="6">6h</option>
-                      <option value="7">7h</option>
-                      <option value="8">8h</option>
-                    </select>
-                  </div>
-                  <div class="form-inline row">
-                    <label for="type" class="col-md-3">Type de congé</label>
-                    <select id="type" value="">
-                      <option value="0">Congé normal</option>
-                      <option value="1">Congé expetionelle</option> 
-                      <option value="-1">Congé de maladie</option>
-                    </select>          
-                  </div>
-                  <div class="form-inline row">
-                    <label for="description" class="col-md-3">Description</label>
-                    <input type="text" value="" id="description"  nullable="true" class="form-control col-md-6" style="width: 70%;">
-    
-                  </div>
-                  <div class="row" style="height: 120px;"></div>
-                </div>
-              </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" onclick="confirm_delete_vacancy();" data-dismiss="modal" id="btndeletevacancy" class="btn">Supprimer</button>
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button>
-                <button onclick="save_vacancy();" id="btn_save_vacancy" class="btn btn-primary">Accepter</button>
-              </div>
-              </div>
-            </div>
-          </div> -->
-         <!--  <div class="modal fade" id="confirm_delete_vacancy">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Congé</h4>
-              </div>
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer ce congé?<br>
-                
-              </div>
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_vacancy();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div> 
-        </div>-->
-  </div>
-  <script src="../../../oldvendor/js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../../oldvendor/js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../../oldvendor/js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../../oldvendor/js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../../vendor/rrule/rrule.js" type="text/javascript"></script>
-  <script src="../../../js/webpreferences.js" type="text/javascript"></script>
-  <script src="../../../js/webdatabase.js" type="text/javascript"></script>
-  <script src="../../../js/labels.js" type="text/javascript"></script>
-  <script src="../../../js/module_functions.js" type="text/javascript"></script>
-  <script src="js/calvacancy.js" type="text/javascript"></script>
-</body>
-</html>
diff --git a/TODO/modules_todo/calendar/js/calactivity.js b/TODO/modules_todo/calendar/js/calactivity.js
deleted file mode 100644 (file)
index 68726b6..0000000
+++ /dev/null
@@ -1,1009 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-
-var pconfig = {};
-var initdate = new Date();
-initdate.setDate(1);
-var lastmonthday = null;
-var firstmonday = null;
-var lastsunday = null;
-var winh = window.innerHeight - 140;
-var tblacc = null;
-var lblfreq = {daily:'jour(s)',weekly:'semaine(s)',monthly:'mois'};
-var amonth = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aôut', 'Septembre','Octobre', 'Novembre', 'Décembre'];
-var linkpos = {};
-var posday = {};
-var delac = null;
-var curfreq ={};
-var redate = /\d\d.\d\d.\d\d\d\d/;
-var tblcal = null;
-var vacpos = {};
-var vacdata = null;
-var drsql = "";
-var eventdates = {};
-var curevcolor = "";
-var alltr = {};
-var rtblall = {};
-var crsel = [];
-function initdata() {
-       //curcfg.loadconfig(parent.apppref.getpreference("creorga.support.database.currentdb.num"));
-  load_helpers();
-  $('#view_list').hide();
-  pconfig = parent.apppref.getpreference("calorganisation");
-  if (!pconfig) {
-    pconfig = {}
-  }
-  pconfig.view = 'table';
-  //if (!pconfig.printlayout) {
-    pconfig.printlayout = 'table';
-    parent.apppref.setpreference("calorganisation",pconfig);
-  //}
-  if (pconfig.calmonth) {
-
-    initdate = new Date(encodeparam(pconfig.calmonth, 'month').replace(/'/g, ''));
-    $("#calmonth").val(pconfig.calmonth);
-  } else {
-    $("#calmonth").val(initdate.getMonth() + '.' + initdate.getFullYear());
-    pconfig.calmonth = initdate.getMonth() + '.' + initdate.getFullYear();
-  }
-
-  load_staff_selection('filter_staff');
-  load_staff_selection('staffuuid');
-  load_calendar_month();
-  
-  
-
-}
-
-$('#calmonth').on('dp.hide',function(e){
-  set_calmonth();
-});
-
-function load_calendar_month() {
-
-  firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(), -1 * parseInt(initdate.getWeekNumber()) + 2);
-  if (firstmonday > initdate) {
-    firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(),firstmonday.getDate()-7);
-  }
-  lastmonthday = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 1);
-  
-  lastsunday = new Date(lastmonthday.getFullYear(), lastmonthday.getMonth(), lastmonthday.getDate() + 7 - parseInt(lastmonthday.getWeekNumber()));
-  
-  var weeknum = 0;
-  var cmonth = initdate.getMonth();
-  var sday = [];
-  firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(), -1 * parseInt(initdate.getWeekNumber()) + 2);
-  if (firstmonday > initdate) {
-    firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(),firstmonday.getDate()-7);
-  }
-  load_vacancy_data();
-  
-  load_calendar_data();
-    
-}
-
-function load_calendar_data() {
-  var where = [];
-  if ((pconfig.filterstaff) && (pconfig.filterstaff.length > 0)) {
-    where.push(" st.uuid in ('"+ pconfig.filterstaff.join("','") + "')");
-  }
-  if ((pconfig.filteractivity) && (pconfig.filteractivity.length > 0)) {
-    where.push(" cal.description in ('"+ pconfig.filteractivity.join("','") + "')");
-  }
-  var sql = "SELECT cal.uuid, cal.datefrom, cal.dateto, '<div style=\"display:none;\">' || strftime('%Y%m%d',cal.datefrom) ||'</div>' || strftime('%d.%m.%Y',cal.datefrom) AS tbldatefrom ,strftime('%Y%m%d',cal.datefrom) AS strdatefrom, strftime('%Y%m%d',cal.dateto)   AS strdateto,cal.timefrom, cal.timeto, cal.description, cal.location, cal.color, cal.freq, '[\"' || GROUP_CONCAT(sp.staffuuid,'\",\"') || '\"]' as staffuuid, GROUP_CONCAT(coalesce(st.surname,'') || ' ' || coalesce(st.prename,''), '<br/>' ) as staffnames ,'[\"' || GROUP_CONCAT(st.color,'\",\"') || '\"]' as staffcolors from eventcalendar cal " + ((pconfig.filterstaff)?"":" left ") +" join staffplanning sp on (cal.uuid=sp.eventcalendaruuid " + ((pconfig.filterstaff)?" AND sp.staffuuid in ('"+ pconfig.filterstaff.join("','") + "')":"") +") left join staff st on (sp.staffuuid=st.uuid) "+
-
-  " where (cal.datefrom between '" + initdate.toISOString().substring(0,10) + "' and '" + lastmonthday.toISOString().substring(0,10) + "' and (cal.dateto >= '" + initdate.toISOString().substring(0,10) + "' or cal.dateto is null)) or (cal.dateto between '" + initdate.toISOString().substring(0,10) + "' and '" + lastmonthday.toISOString().substring(0,10) + "' and cal.datefrom < '" + initdate.toISOString().substring(0,10) + "') or ((cal.datefrom <= '" + firstmonday.toISOString().substring(0,10) + "') and ((cal.dateto >= '" + lastmonthday.toISOString().substring(0,10) + "') or cal.dateto is null)) "+ ((where.length > 0)?" AND (" + where.join(" or ") + ")":"")+"  group by cal.uuid order by cal.datefrom,cal.dateto;";
-
-  var caldata = parent.appdb.dbquery(sql);
-
-  caldata = caldata.sqldata;
-  get_vacancy_data();
-
-  for (var c in caldata) {
-    if (!eventdates[caldata[c].uuid]) {
-      eventdates[caldata[c].uuid] = {};
-    }
-    var freq = caldata[c].freq;
-    if (freq !== '') {
-      freq += ';DTSTART='+caldata[c].strdatefrom + 'T000000Z';
-      if ((caldata[c].dateto !== '') && (caldata[c].dateto <= lastmonthday.toISOString().substring(0,10))){
-        freq += ';UNTIL='+caldata[c].strdateto + 'T000000Z';
-      }else {
-        freq += ';UNTIL='+lastmonthday.toISOString().substring(0,10).replace('-','') + 'T000000Z';
-      }
-    }
-    
-    if (freq !== ""){
-      try {
-    var rule = RRule.fromString(freq);
-    rall = rule.all();
-    } catch (ex){
-      //dump("ERROR! loading data!" + ex  + " FREQ:" + freq + "\n");
-    }
-    } else {
-      continue;
-    }
-    for (var r in rall){
-      //dump(rall[r].toISOString().substring(0,10) + " " +  initdate.toISOString().substring(0,10)+ " " + lastmonthday.toISOString().substring(0,10) + "\n" );
-      if ((rall[r].toISOString().substring(0,10) >= initdate.toISOString().substring(0,10)) && (rall[r].toISOString().substring(0,10) <= lastmonthday.toISOString().substring(0,10))) {
-        //dump("OK " + rall[r].toISOString().substring(0,10) + " " +  initdate.toISOString().substring(0,10)+ " " + lastmonthday.toISOString().substring(0,10) + "\n" );
-        if (!eventdates[caldata[c].uuid][rall[r].toISOString().substring(8,10)]) {
-          eventdates[caldata[c].uuid][rall[r].toISOString().substring(8,10)] = 1;
-        }
-      }
-
-    }
-  }
-  load_timetable();
-}
-
-function load_timetable() {
-  $('#tbl_timetable').html("");
-  drsql = getdaterangesql();
-  //var ophdata = getoph();
-
-  var thead = [];
-  var totalstaff = [];
-  var weekrange = {};
-  var ltd = "";
-  var bdate = new Date(initdate.toISOString().substring(0,10));
-  var enddate = new Date(initdate.getFullYear(),initdate.getMonth() + 1, 0);
-  while (bdate <= enddate){
-    if (!weekrange[parseInt(bdate.getWeekNumber())]) {
-      weekrange[parseInt(bdate.getWeekNumber())] = 0;
-    }
-    //else if (ltd != ophdata[t].daydate) {
-      weekrange[parseInt(bdate.getWeekNumber())] += 1;
-    //}
-    var head = ((bdate.getDate() < 10)?"0"+bdate.getDate():bdate.getDate());//ophdata[t].daydate.substring(8,10);
-    if (thead.indexOf(head) == -1) {
-      thead.push(head);
-    }
-    totalstaff.push(0);
-
-    
-    //ltd = ophdata[t].daydate;
-    bdate = new Date (bdate.getFullYear(),bdate.getMonth(),bdate.getDate() + 1)
-  }
-  var actdata = getstaffactivity();
-
-  var lev = "";
-  var lst = "";
-  
-  var ev = {};
-
-  var alltrx = {};
-  for (var ac in actdata){
-    var evid = actdata[ac].eventuuid;
-
-    if ((evid) && (lev !== evid) && (!alltrx[evid]))  {
-      ev = {"eventuuid":evid,"description": actdata[ac].description ,"timefrom":actdata[ac].timefrom,"timeto":actdata[ac].timeto,"eventcolor":actdata[ac].eventcolor};
-      for (var h in thead){
-        ev[thead[h]] = {};
-      }
-      alltrx[evid] = ev;
-     
-    }
-    var cday = actdata[ac].daydate.substring(8,10);
-    
-    if ((evid) && (eventdates[evid]) && (eventdates[evid][cday])) {
-      
-      alltrx[evid][cday]={"staffuuid":JSON.parse(actdata[ac].staffuuid),"staffcolor":JSON.parse(actdata[ac].staffcolor),"staffnames":JSON.parse(actdata[ac].staffnames)};
-      
-    }
-    lev = null;
-    lev = evid;
-    
-  }
-  
-  var vacdata = getstaffvacancy();
-  var staffuuids = [];
-  for (var vc in vacdata){
-    var dx = new Date(vacdata[vc].daydate).toISOString().substring(8,10);
-    if (staffuuids.indexOf(vacdata[vc].staffuuid)) {
-      staffuuids.push(vacdata[vc].staffuuid);
-    }
-    for (var e in alltrx){
-      
-      if (alltrx[e][dx]['staffuuid']) {
-        var idx = alltrx[e][dx]['staffuuid'].indexOf(vacdata[vc].staffuuid);
-  
-        if (idx != -1) {
-  
-          if (vacdata[vc].timefrom==vacdata[vc].timeto) {
-            alltrx[e][dx]['staffcolor'][idx] = "transparent";
-          }else  {
-  
-            var tfto =((parseInt(vacdata[vc].timeto.substring(1,2)) - parseInt(vacdata[vc].timefrom.substring(1,2)))/8)*100;
-            var clr = alltrx[e][dx]['staffcolor'][idx];
-  
-            alltrx[e][dx]['staffcolor'][idx] = "linear-gradient(to right, "+convertHex(clr,1)+" 0%,"+convertHex(clr,1)+" "+tfto+"%,rgba(0,0,0,0) 100%)";
-          }
-          
-        }
-      }
-    }
-  
-  }
-  var cspan = 0;
-  var hdays = get_vacancydays();
-  //(JSON.stringify(hdays));
-  var strhead = '<thead><tr><th style="width: 120px;min-width: 120px;">Semaine</th>';
-  for (var w in weekrange){
-    strhead += '<th colspan="'+ weekrange[w] +'">' + w + '</th>';
-    cspan += weekrange[w];
-  }
-  //<th  class="noprint2">&nbsp;</th>
-  strhead += '</tr><tr><th style="width: 120px;min-width: 120px;"><span class="glyphicon glyphicon-time"></span></th>';
-  for (var th in thead){
-    var sty="";
-    if (hdays[thead[th]]) {
-      sty =' style="background-color: '+((hdays[thead[th]]=='vacancy')?'#FF7145':'#FF9C2A')+' !important;" ';
-    }
-    strhead += '<th'+sty+'>'+ thead[th]+'</th>';
-  }
-
-  strhead += '</tr></thead>';
-  $('#tbl_timetable').append(strhead);
-  $('#tbl_timetable').append('<tbody>');
-  cspan +=1;
-
-  var actchange = "";
-  //jsdump(JSON.stringify(alltrx));
-  for (var a in alltrx){
-      
-      var trn = "<tr class=\"tblstaffrow\">";
-      trn += '<td style="font-weight: bold;width: 120px;min-width: 120px;">'+alltrx[a].timefrom+' - '+alltrx[a].timeto+'</td>';
-      for (var h in thead){
-        if ((hdays[thead[h]]) && (hdays[thead[h]] == 'vacancy')) {
-          trn += '<td style="background-color: #666666  !important;"></td>';
-          continue;
-        }
-        if (alltrx[a][thead[h]]) {
-          //jsdump(thead[h]);
-          trn += '<td style="padding: 0px;">';
-          if (alltrx[a][thead[h]]["staffcolor"]) {
-            var xx = alltrx[a][thead[h]]["staffcolor"];
-            for (var r in xx){
-              var col = "";
-              if (xx[r] == 'transparent') {
-                col = 'color: transparent; display: none;';
-              }else {
-                if (xx[r].indexOf("linear-gradient") == -1){
-                  totalstaff[parseInt(thead[h])-1] += 1;
-                }
-                
-              }
-              trn += '<div style="display: block;margin: 0px; width: 100%; border: 1px solid '+xx[r]+'; background-color: '+xx[r]+' !important;'+col+'">'+alltrx[a][thead[h]]["staffnames"][r] +'</div>';
-            }
-            
-          }
-          
-          trn += '</td>';
-        }else {
-          trn += '<td></td>';
-        }
-      }
-      trn += '</tr>';
-      
-      $('#tbl_timetable').append(trn);
-
-  }
-  
-  $('#tbl_timetable').append('');
-  var tfoot = "<tfoot><tr><th style=\"width: 120px;min-width: 120px;\">Total:</th>";
-  for (var i in totalstaff){
-    tfoot += '<th>'+ (totalstaff[i] == 0?"":totalstaff[i]) +'</th>';
-  }
-  tfoot += '</tr></tfoot>';
-  $('#tbl_timetable').append(tfoot);
-  
-    $('#tbl_timetable').append('</tbody>');
-    //jsdump($('#tbl_timetable').html());
-//  }
-  if ((!(pconfig.filterstaff)) || ((pconfig.filterstaff) && (pconfig.filterstaff.length != 1))){  
-    sortHTML('#tbl_timetable','.tblstaffrow', 'td:nth-child(1)');
-  }
-}
-
-function getHTMLElements (id) {
-  if (typeof id == "object") {
-    return [id];
-  } else {
-    return document.querySelectorAll(id);
-  }
-}
-
-function sortHTML(id, sel, sortvalue) {
-  var a, b, i, ii, y, bytt, v1, v2, cc, j;
-  a = getHTMLElements(id);
-  for (i = 0; i < a.length; i++) {
-    for (j = 0; j < 2; j++) {
-      cc = 0;
-      y = 1;
-      while (y == 1) {
-        y = 0;
-        b = a[i].querySelectorAll(sel);
-        for (ii = 0; ii < (b.length - 1); ii++) {
-          bytt = 0;
-          if (sortvalue) {
-            v1 = b[ii].querySelector(sortvalue).innerHTML.toLowerCase();
-            v2 = b[ii + 1].querySelector(sortvalue).innerHTML.toLowerCase();
-          } else {
-            v1 = b[ii].innerHTML.toLowerCase();
-            v2 = b[ii + 1].innerHTML.toLowerCase();
-          }
-          if ((j == 0 && (v1 > v2)) || (j == 1 && (v1 < v2))) {
-            bytt = 1;
-            break;
-          }
-        }
-        if (bytt == 1) {
-          b[ii].parentNode.insertBefore(b[ii + 1], b[ii]);
-          y = 1;
-          cc++;
-        }
-      }
-      if (cc > 0) {break;}
-    }
-  }
-};
-
-
-function load_vacancy_data() {
-  var sql = "select vacancydate,strftime('%Y%m%d',vacancydate) as strvacancydate,vacancydateto,case when vacancydateto is not null then strftime('%Y%m%d',vacancydateto) else null end as strvacancydateto,vacancydescription from vacancy " +
-  "where (vacancydate between '" + firstmonday.toISOString().substring(0,10) + "' and '" + lastsunday.toISOString().substring(0,10) + "' and (vacancydateto >= '" + firstmonday.toISOString().substring(0,10) + "' or vacancydateto is null)) or (vacancydateto between '" + firstmonday.toISOString().substring(0,10) + "' and '" + lastsunday.toISOString().substring(0,10) + "' and vacancydate < '" + firstmonday.toISOString().substring(0,10) + "') or ((vacancydate <= '" + firstmonday.toISOString().substring(0,10) + "') and (vacancydateto >= '" + lastsunday.toISOString().substring(0,10) + "')) " +
-  "order by vacancydate,vacancydateto;";
-  var caldata = parent.appdb.dbquery(sql);
-  caldata = caldata.sqldata;
-  for (var c in caldata) {
-    var freq = "FREQ=DAILY";
-    freq += ';DTSTART='+caldata[c].strvacancydate + 'T000000Z';
-
-    if (caldata[c].vacancydateto !== ''){
-        freq += ';UNTIL='+caldata[c].strvacancydateto + 'T000000Z';
-    }else {
-        freq += ';UNTIL='+caldata[c].strvacancydate + 'T000000Z';
-    }
-    try {
-    var rule = RRule.fromString(freq);
-    var rall = rule.all();
-    
-    for (var r in rall){
-      if ((rall[r].toISOString().substring(0,10) >= initdate.toISOString().substring(0,10)) && (rall[r].toISOString().substring(0,10) <= lastmonthday.toISOString().substring(0,10)+' T00:00.000Z')) {
-
-        $("#" + linkpos["" + rall[r].toISOString().substring(0,10)] + " > div.panel-day > div.panel-dayhead").addClass(((caldata[c].vacancydateto == '')?'calvacancy':'calvacrange'));
-        $("#" + linkpos["" + rall[r].toISOString().substring(0,10)] + " > div.panel-day > div.panel-dayhead > div#vacname").remove();
-        $("#" + linkpos["" + rall[r].toISOString().substring(0,10)] + " > div.panel-day > div.panel-dayhead").prepend('<div id="vacname" class="calvacheader">'+ caldata[c].vacancydescription + "</div>&nbsp;");
-      }
-    }
-    } catch (ex){
-    }
-  }
-}
-
-function load_staff_selection(objid,option){
-  var stdata = parent.appdb.dbquery("select uuid, coalesce(surname,'') || ' ' || coalesce(prename,'') as name,case when color is null then '#000' else color end as color from staff order by surname,prename");
-  stdata = stdata.sqldata;
-  for (var s in stdata){
-    $('#' + objid).append('<option value="'+ stdata[s].uuid+'">&lt;span style="color: '+stdata[s].color+';" &gt;' +stdata[s].name+ '&lt;/span&gt;</option>');
-  }
-  if (objid == 'filter_staff') {
-       $('#' + objid).multiselect({enableHTML: true,numberDisplayed:1,nonSelectedText:"Tous",allSelectedText: 'Tous',nSelectedText: ' selections'}); 
-    if (pconfig.filterstaff) {
-      $('#' + objid).multiselect('select',pconfig.filterstaff);
-    }
-  }else {
-    var copt = {};
-    if (option) {
-      copt = option;
-    }
-    copt['enableHTML'] = true;
-    copt['nonSelectedText']="Sélectionner un(e) employé(e)...";
-    copt['numberDisplayed']=5;
-    copt['allSelectedText']='Tous';
-    copt['nSelectedText']=' selections';
-    
-    $('#' + objid).multiselect(copt);
-  }
-  
-}
-
-
-
-function load_activity_selection(objid,type) {
-  var stdata = parent.appdb.dbquery("select uuid,description as activity,color from eventcalendar group by description,color;");
-  stdata = stdata.sqldata;
-  for (var s in stdata){
-    $('#' + objid).append('<option value="'+ stdata[s].activity +'" >&lt;span style="color: '+stdata[s].color+';" &gt;' +stdata[s].activity+ '&lt;/span&gt;</option>');
-  }
-  if (pconfig.filteractivity) {
-    $('#' + objid).multiselect({enableHTML: true,numberDisplayed:1,nonSelectedText:"Tous",allSelectedText: 'Tous',nSelectedText: ' selections'});
-    $('#' + objid).multiselect('select',pconfig.filteractivity);
-  } else if (type == 'multiple') {
-    $('#' + objid).multiselect({enableHTML: true,numberDisplayed:1,nonSelectedText:"Tous",allSelectedText: 'Tous',nSelectedText: ' selections'});  
-  } else {
-    var copt = {};
-    copt['enableHTML'] = true;
-    copt['nonSelectedText']="Sélectionner une activité..";
-    $('#' + objid).multiselect(copt);
-    $('#' + objid).multiselect('select',null);
-  }
-}
-
-function set_calmonth(){
-  pconfig.calmonth =$("#calmonth").val();
-  parent.apppref.setpreference("calorganisation",pconfig);
-  parent.app.loadpage('modules/calendar/calorganisation.html',{calmonth:pconfig.calmonth});
-}
-
-
-function onnextmonth() {
-var xdate = parent.appdb.dbquery("select STRFTIME('%m.%Y',date('"+initdate.toISOString().substring(0,10)+"','+1 month')) as ndate");
-pconfig.calmonth = xdate.sqldata[0].ndate;
-parent.apppref.setpreference("calorganisation", pconfig);
-parent.app.loadpage('modules/calendar/calorganisation.html',{calmonth:pconfig.calmonth});
-}
-
-function onpreviousmonth() {
-var xdate = parent.appdb.dbquery("select STRFTIME('%m.%Y',date('"+initdate.toISOString().substring(0,10)+"','-1 month')) as ndate");
-pconfig.calmonth = xdate.sqldata[0].ndate;
-parent.apppref.setpreference("calorganisation", pconfig);
-parent.app.loadpage('modules/calendar/calorganisation.html',{calmonth:pconfig.calmonth});
-}
-
-function dlg_vacancy_detail(stuuids) {
-  //dump(JSON.stringify(stuuids) + "\n");
-  var obj = stuuids.split(',')
-  var vsql = "select coalesce(surname,'') || ' ' || coalesce(prename,'') as staffname,color from staff where uuid in ('" + obj.join("','") + "');";
-  //dump(vsql + "\n");
-  var vst = parent.appdb.dbquery(vsql);
-  vst = vst.sqldata;
-  $('#vacdetail').html("");
-  for (var v in vst){
-    $('#vacdetail').append('<div style="color: '+ vst[v].color+'">'+ vst[v].staffname+'</div>');
-  }
-  $("#dlg_vacancy_detail").modal('show');
-  
-}
-
-function dlg_event(uuid, type) {
-  $('#staffuuid').multiselect('deselectAll', false);
-  
-  //$('#cmb_clone_activity').val('none');
-  $('#staffuuid').multiselect('updateButtonText');
-  //$('#cmb_clone_activity').html("");
-  if (type== "ins") {
-    $('#btndeleteevent').hide();
-    
-  }else {
-    $('#btndeleteevent').show();
-  }
-  $('#frmeditevent #freqinterval').hide();
-  $('#frmeditevent #freqmonthly').hide();
-  $('#frmeditevent #freqweekly').hide();
-  $('#frmeditevent #freq_monthly_byday').show();
-  $('#frmeditevent #freq_monthly_bymonthday').hide();
-  $('#frmeditevent #freq').val("");
-  $('#frmeditevent .active').removeClass('active');
-  load_activity_selection('cmb_clone_activity','single');
-  $('#cmb_clone_activity').multiselect('select', ['none']);
-  if ((type == 'upd') || (type == 'ins')) {
-    var evdata = {
-      uuid: '0',
-      description: '',
-      activityuuid:'',
-      location: '',
-      color: '',
-      datefrom:new Date().toISOString().substring(0,10),
-      dateto:'',
-      staffuuid:'',
-      timefrom: '00:00',
-      timeto: '00:00',
-      freq: ''
-    };
-    
-    if (type == 'upd') {
-     var evsql = "SELECT uuid, strftime(\"%d.%m.%Y\",datefrom) as datefrom, strftime(\"%d.%m.%Y\",dateto) as dateto, timefrom, timeto, description, location, color, freq,  GROUP_CONCAT(st.staffuuid,',') as staffuuid FROM eventcalendar ev left join staffplanning st on (ev.uuid=st.eventcalendaruuid) where ev.uuid='" + uuid.uuid + "' group by ev.uuid;";
-      evdata = parent.appdb.dbquery(evsql);
-      evdata = evdata.sqldata[0];
-      if (evdata.freq !== '') {
-        var tmpfreq = evdata.freq.split(';');
-        for (var t in tmpfreq){
-          if (tmpfreq[t] !== '') {
-            var spl = tmpfreq[t].split("=");
-            evdata[spl[0].toLowerCase()] = spl[1].toLowerCase();
-          }
-        }
-      }
-    }
-    for (var w in evdata) {
-      if ($("#frmeditevent #" + w)) {
-        if (w == 'staffuuid') {
-          if (evdata[w] === '') {
-            $("#frmeditevent #" + w).multiselect('select',[]);
-          } else {
-            $("#frmeditevent #" + w).multiselect('select',evdata[w].split(','));
-          }
-          
-        }else if (w == 'color') {
-          //dump("load color: " + evdata[w]);
-          curevcolor = evdata[w];
-          $("#frmeditevent #color").val(evdata[w]);
-          $('#frmeditevent #color').minicolors('value',{color: evdata[w]});
-        }
-        else {
-          $("#frmeditevent #" + w).val(evdata[w]);
-          if ((w === "description") && (evdata[w] !== "")) {
-            $("#cmb_clone_activity").multiselect('select',evdata[w]);
-          }
-        }
-      }
-    }
-    if ((evdata.freq == 'weekly') && (evdata.byday)) {
-      var bd = evdata.byday.split(',');
-      for (var i in bd){
-        document.getElementById('weekly_byday_' + bd[i]).setAttribute("checked",true);
-        $('#frmeditevent #weekly_byday_' + bd[i]).parent().addClass("active");
-      }
-    }
-    if (evdata.freq == 'monthly') {
-       $('#freq_monthly_byday').hide();
-       $('#freq_monthly_bymonthday').hide();
-       $('#pnl_monthly_byday').removeAttr("checked");
-       $('#pnl_monthly_bymonthday').removeAttr("checked");
-      if (evdata.byday) {
-        document.getElementById('pnl_monthly_byday').setAttribute("checked",true);
-        $('#frmeditevent #pnl_monthly_byday').parent().addClass("active");
-        $('#freq_monthly_byday').show();
-        var bd = evdata.byday.split(',');
-        var adpos = [];
-        var awday = [];
-        for (var i in bd){
-          var wday = bd[i].substr(bd[i].length-2);
-          var pos = bd[i].substring(0,bd[i].length-2);
-          awday.push(wday.toLowerCase());
-          adpos.push(pos);
-        }
-        for (var i in adpos){
-          document.getElementById('monthly_bydaypos_' + adpos[i]).setAttribute("checked",true);
-          $('#frmeditevent #monthly_bydaypos_' + adpos[i]).parent().addClass("active");
-        }
-        for (var i in awday){
-          document.getElementById('monthly_bydaywday_' + awday[i]).setAttribute("checked",true);
-          $('#frmeditevent #monthly_bydaywday_' + awday[i]).parent().addClass("active");
-        }
-      }else if (evdata.bymonthday) {
-        document.getElementById('pnl_monthly_bymonthday').setAttribute("checked",true);
-        $('#frmeditevent #pnl_monthly_bymonthday').parent().addClass("active");
-        $('#freq_monthly_bymonthday').show();
-        var bd = evdata.bymonthday.split(',');
-        for (var i in bd){
-          document.getElementById('monthly_bymonthday_' + bd[i]).setAttribute("checked",true);
-          $('#frmeditevent #monthly_bymonthday_' + bd[i]).parent().addClass("active");
-        }
-      }
-    }
-    setfreq();
-    $("#edit_event").modal('show');
-  } 
-}
-
-function save_event() {
-  var sql1 = new Array();
-  var sql2 = new Array();
-  if ($('#timefrom').val() == $('#timeto').val() || $('#timefrom').val() == "00:00" || $('#timeto').val() == "00:00"){
-    errormsg("Erreur","les heures doivent Ãªtre différent et différent de la valeur 00:00!");
-    return false;
-  }
-  if ($('#timefrom').val() > $('#timeto').val()){
-    errormsg("Erreur","l'heure de début ne peux pas Ãªtre supérieur Ã  l'heure de fin!");
-    return false;
-  }
-  if (!$('#staffuuid').val()){
-    errormsg("Erreur","Vous devez selectionner au moin 1 membre du staff!");
-    return false;
-  }
-  if ($('#dateto').val() != '' && (encodeparam($('#datefrom').val()) > encodeparam($('#dateto').val()))  ) {
-    errormsg("Erreur","La Date début ne peut pas Ãªtre supérieur Ã  la date fin!");
-    return false;
-  }
-  // if ($('#timeto').val() != '' && (encodeparam($('#timefrom').val()) > encodeparam($('#timeto').val()))  ) {
-  //   errormsg("Erreur","L'heure de début ne peut pas Ãªtre supérieur Ã  la heure de fin!");
-  //   return false;
-  // }
-  var type = 'ins';
-  var cuuid = "";
-  if ($("#frmeditevent #uuid").val() != 0) {
-    type = 'upd';
-    cuuid = $("#frmeditevent #uuid").val();
-  } else {
-    cuuid = parent.appdb.generate_uuid();
-  }
-  var cactv = $('#frmeditevent #cmb_clone_activity').val();
-  if (cactv == 'none') {
-    var dtest = parent.appdb.dbquery("select count(*) as cnt from eventcalendar where description='"+ $("#frmeditevent #description").val() + "';");
-    if (dtest && dtest.sqldata[0].cnt != "0") {
-      $("#frmeditevent #description").val($("#frmeditevent #description").val() + " Copy");
-    }
-  }else if ((cactv != $("#frmeditevent #description").val()) || (curevcolor != $("#frmeditevent #color").val())) {
-    parent.appdb.dbexec("update eventcalendar set description='"+$("#frmeditevent #description").val()+"',color='"+$("#frmeditevent #color").val()+"' where description='"+ cactv +"';");
-    //update description and color off all events with same name
-  } 
-  var freqdata = {};
-  var cfreq = $("#frmeditevent #freq").val();
-  $("#frmeditevent :input").each(function() {
-    var input = $(this);
-    
-    if (input.attr("id") && (input.attr("id") != "staffuuid") && (input.attr("id") != "cmb_clone_activity")) {
-      if ((input.attr("type") == "checkbox") && (input.attr("id").indexOf(cfreq) >= 0)){
-        var xd = input.attr("id").split("_");
-        if (input.attr("checked")) {
-          if (!freqdata[xd[1]]) {
-            freqdata[xd[1]] = new Array();
-          }
-          freqdata[xd[1]].push(input.val());
-        }
-      }
-      else if ((input.attr("type") == "radio") && (input.attr("id").indexOf(cfreq) >= 0)) {
-        var xd = input.attr("id").split("_");
-        if (input.attr("checked")) { 
-          freqdata['freqtype'] = xd[2];
-        }
-      }
-      else if ((input.attr("type") != "checkbox") && ((input.attr("type") != "radio"))){
-        if ((input.attr("id") == 'interval') || (input.attr("id") == 'freq')) {
-          freqdata[input.attr("id")] = input.val();
-        } else if ((type == 'ins') && (input.attr("id") != 'staffuuid')) {
-          
-          sql1.push('"' + input.attr("id") + '"');
-          if (input.attr("id") == 'uuid') {
-            if (input.val() == "" || input.val() == "0") {
-              sql2.push("'" + cuuid + "'");
-            } else {
-              sql2.push("'" + input.val() + "'");
-            }
-          } else {
-            var ival = encodeparam(input.val(), input.attr('type'));
-            sql2.push(ival);
-          }
-        } else {
-          if ((input.attr("id") != 'uuid') && (input.attr("id") != 'staffuuid')){
-            var ival = encodeparam(input.val(), input.attr('type'));
-            sql2.push('"' + input.attr("id") + '"=' + ival);
-          }
-        }
-      }
-    }
-
-  });
-  if (!freqdata.freqtype) {
-    freqdata['freqtype'] = curfreq.freqtype;
-  }
-
-  var strfreq ="";
-  if (cfreq != "") {
-    strfreq='FREQ=' + cfreq.toUpperCase()+';INTERVAL=' + freqdata.interval +';';
-    if ((cfreq == 'weekly') && (freqdata.byday)){
-      strfreq += 'BYDAY=' + freqdata.byday.join(","); 
-    }
-    if ((cfreq == 'monthly') && (freqdata.bydaypos) || ((freqdata.bydaywday)) || (freqdata.bymonthday)){
-      strfreq += freqdata.freqtype.toUpperCase() + '=';
-      if (freqdata.freqtype == 'bymonthday') {
-        strfreq += freqdata.bymonthday.join(',') + ";"
-      }else {
-        var abyday = new Array();
-        for (var p in freqdata.bydaypos){
-          for (var w in freqdata.bydaywday){
-            abyday.push(freqdata.bydaypos[p] + freqdata.bydaywday[w]);
-          }
-        }
-        strfreq += abyday.join(",");
-      }
-    }
-    if (strfreq.slice(-1) == ';') {
-      strfreq = strfreq.substring(0,strfreq.length-1);
-    }
-  }
-  var staffuuids = $('#staffuuid').val();
-  var xsql=[];
-  var delsql = "";
-  if (type != 'ins') {
-    xsql.push("DELETE FROM staffplanning where eventcalendaruuid = '"+cuuid+"';");
-  }
-  var staffinssql = "";
-  if (staffuuids && (staffuuids.length != 0)) {
-    staffinssql = "INSERT INTO staffplanning (eventcalendaruuid,staffuuid) VALUES ";
-    var tmps = [];
-    for (var s in staffuuids){
-      tmps.push("('"+cuuid+"','"+staffuuids[s]+"')");
-    }
-    staffinssql += tmps.join(',') + ";"; 
-    xsql.push(staffinssql);
-  }
-  
-  if (type == 'upd') {
-    sql2.push('freq=' + encodeparam(strfreq));
-    xsql.push("UPDATE eventcalendar SET " + sql2.join(',') + " where \"uuid\"='" + cuuid + "';");
-  } else {
-    sql1.push('freq');
-    sql2.push(encodeparam(strfreq));
-    xsql.push("INSERT INTO eventcalendar (" + sql1.join(',') + ") VALUES (" + sql2.join(',') + ");");
-  }
-  for (var i in xsql){
-         parent.appdb.dbexec(xsql[i]); 
-  }
-  
-  //load_calendar_data();
-
-  $("#frmeditevent #uuid").val("0");
-  $("#edit_event").modal('hide');
-  globelreq.send_request({
-    page: 'calorganisation',
-    module: 'calendar',
-    header: 'Organisation Personnel'
-  }, null);
-}
-
-function confirm_delete_event() {
-  $("#confirm_delete_event").modal('show');
-  return false;
-}
-
-function delete_event() {
-
-  parent.appdb.dbexec("DELETE FROM eventcalendar where uuid='" + $('#frmeditevent #uuid').val()+"';");
-  parent.appdb.dbexec("DELETE FROM staffplanning where eventcalendaruuid='" + $('#frmeditevent #uuid').val()+"';");
-  
-  load_activity_selection('filter_activity','multiple');
-  load_calendar_data();
-  $("#confirm_delete_event").modal('hide');
-  
-  return false;
-}
-
-function setfreq() {
-
-  curfreq.freq = $('#freq option:selected').val();
-  $('#freqinterval').hide();
-  $('#freqmonthly').hide();
-  $('#freqweekly').hide();
-  if (curfreq.freq != "") {
-    $('#lblfreq').text(lblfreq[curfreq.freq]);
-    $('#freqinterval').show();
-    if (curfreq.freq !=  'daily') {
-      $('#freq' + curfreq.freq).show();
-    }
-  }
-  
-}
-
-function invertColor(hexTripletColor) {
-  var color = hexTripletColor;
-  color = color.substring(1); // remove #
-  color = parseInt(color, 16); // convert to integer
-  color = 0xFFFFFF ^ color; // invert three bytes
-  color = color.toString(16); // convert to hex
-  color = ("000000" + color).slice(-6); // pad with leading zeros
-  color = "#" + color; // prepend #
-  return color;
-}
-
-// function onselactivity(objid) {
-//   pconfig.filteractivity = $('#' + objid).val()//(()?$('#' + objid).val().split(','):null);
-//   parent.apppref.setpreference("calorganisation",pconfig);
-//   load_calendar_data();
-// }
-function onselstaff(objid) {
-
-  pconfig.filterstaff = $('#' + objid).val();
-  parent.apppref.setpreference("calorganisation",pconfig);
-  load_calendar_data();
-}
-
-function get_vacancy_data() {
-  vacpos = {};
-  var where = "";
-  if ((pconfig.filterstaff) && (pconfig.filterstaff.length > 0)) {
-    where = " st.uuid in ('"+ pconfig.filterstaff.join("','") + "')";
-  }
-  var sql = getvacancysql(new Date(initdate.toISOString().substring(0,10)),new Date(lastmonthday.toISOString().substring(0,10)),where);
-  vacdata = parent.appdb.dbquery(sql);
-  vacdata = vacdata.sqldata;
-  
-  for (var v in vacdata) {
-    var freq = "FREQ=DAILY";
-    
-    freq += ';DTSTART='+vacdata[v].strdatefrom + 'T000000Z';
-    if (vacdata[v].vacancydateto != ''){
-      freq += ';UNTIL='+vacdata[v].strdateto + 'T000000Z';
-    }else {
-      freq += ';UNTIL='+vacdata[v].strstrdatefrom + 'T000000Z';
-    }
-    try {
-      var vacrule = RRule.fromString(freq);
-      var vacrall = vacrule.all();
-    } catch (ex){
-      //dump("ERROR! loading data!" + ex  + " FREQ:" + freq + "\n");
-    }
-    for (var r in vacrall){
-      if ((vacrall[r].toISOString().substring(0,10) >= initdate.toISOString().substring(0,10)) && (vacrall[r].toISOString().substring(0,10) <= lastmonthday.toISOString().substring(0,10)+'T00:00.000Z')) {
-        if (!vacpos[vacrall[r].toISOString().substring(0,10)]) {
-          vacpos[vacrall[r].toISOString().substring(0,10)] = {'staffuuid':[vacdata[v].staffuuid],color:[vacdata[v].color]};
-        }else {
-          vacpos[vacrall[r].toISOString().substring(0,10)]['staffuuid'].push(vacdata[v].staffuuid);
-          vacpos[vacrall[r].toISOString().substring(0,10)]['color'].push(vacdata[v].color);
-        }
-      }
-    }
-  }
-}
-
-function getvacancysql(datefrom2,dateto2,where) {
-      var sqlret = "SELECT vc.uuid, vc.datefrom,strftime('%Y%m%d',vc.datefrom) as strdatefrom,'<span style=\"display: none;\"> ' || strftime('%Y%m%d',vc.datefrom) || strftime('%Y%m%d',vc.dateto) || '</span>' || strftime('%d.%m.%Y',vc.datefrom)  || ' - '  || strftime('%d.%m.%Y',vc.dateto) as tbldaterange, vc.dateto,strftime('%Y%m%d',vc.dateto) as strdateto,vc.timefrom,vc.timeto "+
-", vc.staffuuid,coalesce(st.surname,'') || ' ' || coalesce(st.prename,'') as staffname,vc.type,st.color FROM vacancycalendar vc left join staff st on (vc.staffuuid=st.uuid) " +
-        "LEFT JOIN ( SELECT  * FROM ( ";
-      var sqldays = new Array();
-      
-      for (var cdate2=datefrom2;cdate2<=dateto2;cdate2.setDate(cdate2.getDate() +1)){
-            if ((cdate2.getDay() != 0)){
-                  sqldays.push ("SELECT date('" + cdate2.toISOString().substring(0,10) +"') as daydate");
-            }
-      }
-
-      sqlret += sqldays.join(' UNION ALL ') + " )) oph " +
-      "ON (oph.daydate BETWEEN vc.datefrom AND vc.dateto) " +
-        "WHERE oph.daydate IS NOT NULL and strftime('%w',oph.daydate) not in ('0') " +
-        "AND oph.daydate NOT IN ( SELECT vacancydate FROM vacancy WHERE vacancydateto IS NULL AND vacancydate BETWEEN '"+initdate.toISOString().substring(0,10) + "' AND '" + dateto2.toISOString().substring(0,10)+"') " +
-        ((where != '')?" AND " + where + " ":"") +
-        " GROUP BY vc.uuid ORDER BY st.uuid,vc.datefrom, vc.dateto; ";
-      return sqlret;
-}
-
-// function getoph() {
-//   var ophsql = "select dd.daydate,max(wh.datestart) as baseopendate, "+
-// "case when strftime('%w',daydate) = '1' then montimeopen "+
-// "when strftime('%w',daydate) = '2' then tuetimeopen "+
-// "when strftime('%w',daydate) = '3' then wedtimeopen "+
-// "when strftime('%w',daydate) = '4' then thutimeopen "+
-// "when strftime('%w',daydate) = '6' then sattimeopen "+
-// "when strftime('%w',daydate) = '5' then fritimeopen when strftime('%w',daydate) = '6' then sattimeopen else null end as begintime, "+
-// "case when strftime('%w',daydate) = '1' then montimeclose "+
-// "when strftime('%w',daydate) = '2' then tuetimeclose "+
-// "when strftime('%w',daydate) = '3' then wedtimeclose "+
-// "when strftime('%w',daydate) = '4' then thutimeclose "+
-// "when strftime('%w',daydate) = '6' then sattimeclose "+
-// "when strftime('%w',daydate) = '5' then fritimeclose when strftime('%w',daydate) = '6' then sattimeclose else null end as endtime "+
-//  "from workinghours wh left join (";
-//   ophsql += drsql + 
-//   ") dd on (dd.daydate > wh.datestart) group by dd.daydate order by dd.daydate";
-//   jsdump("OPH Time");
-//   jsdump(ophsql);
-//   var ophdata = parent.appdb.dbquery(ophsql);
-//   ophdata = ophdata.sqldata;
-//   return ophdata;
-// }
-
-function getdaterangesql(){
-  var adays = [];
-  var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-  var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-  for (var cdt = bdate; cdt <= bend; cdt.setDate(cdt.getDate() + 1)) {
-    //if ((cdt.getDay() != 0)){
-      adays.push("select date('" + cdt.toISOString().substring(0,10) + "') as daydate");
-    //}
-    
-  }
-  return adays.join(" UNION ");
-}
-
-function getstaffactivity() {
-  var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-  var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-  var actsql = "select dd.daydate as daydate, '[\"' || GROUP_CONCAT(ev.staffuuid,'\",\"') || '\"]' AS staffuuid,'[\"' || GROUP_CONCAT(st.color,'\",\"') || '\"]' as staffcolor,'[\"' || GROUP_CONCAT(coalesce(substr(st.surname,1,2),'') || ' ' || coalesce(substr(st.prename,1,2),''), '\",\"' ) || '\"]' as staffnames, ev.timefrom as timefrom,ev.timeto as timeto, ev.description as description,ev.color as eventcolor,ev.uuid as eventuuid from ( "+
-"select sp.staffuuid,ec.description,ec.color,ec.uuid, "+
-"case when datefrom < '"+bdate.toISOString().substring(0,10)+"' then '"+bdate.toISOString().substring(0,10)+"' else  datefrom end as datefrom, "+
-"case when dateto > '"+bend.toISOString().substring(0,10)+"' then '"+bend.toISOString().substring(0,10)+"' else dateto end as dateto, "+
-"timefrom,timeto  "+
-"from eventcalendar ec join staffplanning sp on (ec.uuid=sp.eventcalendaruuid) where datefrom <= '"+bend.toISOString().substring(0,10)+"' and (dateto is null or dateto >= '"+bdate.toISOString().substring(0,10)+"')) ev "+
-"join staff st on (ev.staffuuid=st.uuid) "+
-"join ("+ drsql+") dd  "+
-"on (dd.daydate between ev.datefrom and ev.dateto) ";
-var wh = [];
-if (pconfig.filterstaff) {
-  wh.push("st.uuid in ('"+ pconfig.filterstaff.join("','")+"')");
-}
-// if (pconfig.filteractivity) {
-//   //dump(pconfig.filteractivity + "\n");
-//   wh.push("ev.description in ('"+ pconfig.filteractivity.join("','")+"')");
-// }
-if (wh.length > 0) {
-  actsql += " WHERE " + wh.join( " OR "); 
-}
-actsql += " GROUP BY dd.daydate,ev.uuid ORDER BY ev.description,dd.daydate,ev.timefrom,ev.timeto; ";
-//jsdump("STAFF ACTIVITY");
-//jsdump(actsql);
-//dump("\n\n\nSTAFF ACTIVITY: " + actsql + "\n\n\n");
-  var actdata = parent.appdb.dbquery(actsql);
-  actdata = actdata.sqldata;
-  return actdata;
-}
-
-function getstaffvacancy() {
-  var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-  var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-  var vacsql = "select dd.daydate as daydate,staffuuid, timefrom,timeto,type from ( "+
-"select staffuuid, "+
-"case when datefrom < '"+bdate.toISOString().substring(0,10)+"' then '"+bdate.toISOString().substring(0,10)+"' else  datefrom end as datefrom, "+
-"case when dateto > '"+bend.toISOString().substring(0,10)+"' then '"+bend.toISOString().substring(0,10)+"' else dateto end as dateto, "+
-"timefrom,timeto, type "+
-"from vacancycalendar where (datefrom is null or datefrom <= '"+bend.toISOString().substring(0,10)+"') and (dateto is null or dateto >= '"+bdate.toISOString().substring(0,10)+"')) vc "+
-"join ("+drsql+") dd  "+
-"on (dd.daydate between vc.datefrom and vc.dateto); ";
-var wh = [];
-if (pconfig.filterstaff) {
-  wh.push("staffuuid in ('"+ pconfig.filterstaff.join("','")+"')");
-}
-if (wh.length > 0) {
-  vacsql += " WHERE " + wh.join( " OR "); 
-}
-//jsdump(" " + ophsql );
-  var vacdata = parent.appdb.dbquery(vacsql);
-  vacdata = vacdata.sqldata;
-  return vacdata;
-}
-
-function get_vacancydays(){
-  var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-  var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-  var sql = "select dd.daydate,strftime('%d',dd.daydate) as strday,type from ( "+
-"select vacancydate,  "+
-"case when vacancydateto is null then vacancydate else vacancydateto end as vacancydateto, "+
-"case when vacancydateto is null then 'vacancy' else 'holiday' end as type, "+
-"vacancydescription from vacancy where (vacancydate between '"+bdate.toISOString().substring(0,10)+"' and '"+bend.toISOString().substring(0,10)+"' and (vacancydateto >= '"+bdate.toISOString().substring(0,10)+"' or vacancydateto is null)) or (vacancydateto between '"+bdate.toISOString().substring(0,10)+"' and '"+bend.toISOString().substring(0,10)+"' and vacancydate < '"+bdate.toISOString().substring(0,10)+"') or ((vacancydate <= '"+bdate.toISOString().substring(0,10)+"') and (vacancydateto >= '"+bend.toISOString().substring(0,10)+"')) order by vacancydate,vacancydateto) vc "+
-"join ( "+ drsql +") dd  "+
-"on (dd.daydate between vc.vacancydate and vc.vacancydateto) group by dd.daydate order by daydate;";
-  var hdata = parent.appdb.dbquery(sql);
-  //jsdump("vacancydays");
-  //jsdump(sql);
-  hdata = hdata.sqldata;
-  var hs = {};
-  for (var h in hdata){
-    hs[hdata[h].strday] = hdata[h].type; 
-  }
-  return hs;
-}
-
-function convertHex(hex,opacity){
-    hex = hex.replace('#','');
-    r = parseInt(hex.substring(0,2), 16);
-    g = parseInt(hex.substring(2,4), 16);
-    b = parseInt(hex.substring(4,6), 16);
-
-    result = 'rgba('+r+','+g+','+b+','+opacity+')';
-    return result;
-}
-
-function oncloneactivity(actv_id) {
-  var aid = $("#cmb_clone_activity :selected").val();
-  //dump('value: ' + $("#cmb_clone_activity :selected").val() + "\n");
-  if (aid != '') {
-    //dump(actv_id + "\n");
-    $("#frmeditevent #description").val(aid);
-    var seltxt = $("#cmb_clone_activity :selected").text();
-    //dump("seltxt:" + seltxt + "\n");
-    var colre = /<span style=\"color:\s(.+);\"\s>/;
-    var ccolor =seltxt.match(colre);
-    //dump("CREs: " + JSON.stringify(ccolor) + "\n");
-    $('#frmeditevent #color').minicolors('value',{color: ccolor[1]});
-  }
-}
-
-function onselcreche(){
-       
-}
-
-
-
-
diff --git a/TODO/modules_todo/calendar/js/calvacancy.js b/TODO/modules_todo/calendar/js/calvacancy.js
deleted file mode 100644 (file)
index 08c8d13..0000000
+++ /dev/null
@@ -1,627 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-
-var pconfig = {};
-//var cdate = null;
-var initdate = new Date();
-initdate.setDate(1);
-var lastmonthday = null;
-var firstmonday = null;
-var lastsunday = null;
-var winh = window.innerHeight - 140;
-var tblcal = null;
-var lblfreq = {daily:'jour(s)',weekly:'semaine(s)',monthly:'mois'};
-var amonth = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aôut', 'Septembre','Octobre', 'Novembre', 'Décembre'];
-var linkpos = {};
-var posday = {};
-var delac = null;
-var curfreq ={};
-var redate = /\d\d.\d\d.\d\d\d\d/;
-var curdatediff = null;
-var accdb = null;
-var drsql = "";
-var defaultcreche = null;
-var curcreche=null;
-
-function initdata() {
-  load_helpers();
-
-  var pconfig = parent.apppref.getpreference("calvacancy");
-  if (!pconfig) {
-    pconfig = {}
-  }
-  if (!pconfig.printlayout) {
-    pconfig.printlayout = 'calendar';
-    parent.apppref.setpreference("calvacancy",pconfig);
-  }
-  if (pconfig.calmonth) {
-
-    initdate = new Date(encodeparam(pconfig.calmonth, 'month').replace(/'/g, ''));
-    $("#calmonth").val(pconfig.calmonth);
-  } else {
-    $("#calmonth").val(initdate.getMonth() + '.' + initdate.getFullYear());
-    pconfig.calmonth = initdate.getMonth() + '.' + initdate.getFullYear();
-  }
-  load_creche_selection();
-  //set_infoheader(amonth[parseInt(pconfig.calmonth.substring(0,3))] + " " + pconfig.calmonth.substring(3,8));
-  load_calendar_month();
-}
-
-$('#calmonth').on('dp.hide',function(e){
-  set_calmonth();
-});
-
-function load_calendar_month() {
-
-  firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(), -1 * parseInt(initdate.getWeekNumber()) + 2);
-  if (firstmonday > initdate) {
-    firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(),firstmonday.getDate()-7);
-  }
-
-  lastmonthday = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-
-  lastsunday = new Date(lastmonthday.getFullYear(), lastmonthday.getMonth(), lastmonthday.getDate() + 7 - parseInt(lastmonthday.getWeekNumber()));
-
-  var weeknum = 0;
-  var cmonth = initdate.getMonth();
-  var sday = new Array();
-  for (var cdate = firstmonday; cdate <= lastsunday; cdate.setDate(cdate.getDate() + 1)) {
-    dayident = "day" + weeknum + cdate.getWeekNumber();
-
-    linkpos[cdate.toISOString().substring(0,10)] = "day" + weeknum + cdate.getWeekNumber();
-    posday["day" + weeknum + cdate.getWeekNumber()] = cdate.toISOString().substring(0,10);
-    $("#" + dayident + " > div.panel-day > div.panel-dayhead").html(cdate.toISOString().substring(8,10));
-
-    if (cdate.getMonth() == cmonth) {
-      $("#" + dayident + " > div.panel-day > div.panel-dayhead").addClass("panel-dayheadcurrent");
-    } else {
-      $("#" + dayident).addClass("panel-dayother");
-
-    }
-    if (cdate.getWeekNumber() == "0") {
-      weeknum++;
-    }
-
-  }
-
-  firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(), -1 * parseInt(initdate.getWeekNumber()) + 2);
-
-  if (firstmonday > initdate) {
-    firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(),firstmonday.getDate()-7);
-  }
-  //load_vacancy_data();
-  load_calendar_data();
-    
-}
-
-function load_calendar_data() {
-  var where = "";
-
-  var sql = getmonthlysql(new Date(initdate.toISOString().substring(0,10)),new Date(lastmonthday.toISOString().substring(0,10)),where);
-  //jsdump("monthlysql");
-  //jsdump(sql);
-  $("#tbl_timetable").html("");
-  
-
-  // set timetable header
-  drsql = getdaterangesql();
-  //var ophdata = getoph();
-
-  var thead = [];
-  var weekrange = {};
-  var ltd = "";
-  var coldata=getcolumndays();
-  var thead=coldata[0];
-  var weekrange=coldata[1];
-  // var mbdate = new Date(initdate.getFullYear(),initdate.getMonth(),1);
-  // var medate = new Date(initdate.getFullYear(),initdate.getMonth()+1,0);
-  // var cdate = mbdate;
-  // while (cdate <= medate ){
-  //   var dx = new Date(ophdata[t].daydate);
-  //   if (!weekrange[parseInt(dx.getWeekNumber())]) {
-  //     weekrange[parseInt(dx.getWeekNumber())] = 1;
-  //   }else if (ltd != ophdata[t].daydate) {
-  //     weekrange[parseInt(dx.getWeekNumber())] += 1;
-  //   }
-  //   var head = ophdata[t].daydate.substring(8,10);
-  //   if (thead.indexOf(head) == -1) {
-  //     thead.push(head);
-      
-  //   }
-  //   cdate = cdate + 1;
-  //   ltd = ophdata[t].daydate;
-
-  // }
-  var cspan = 0;
-  var hdays = get_vacancydays();
-  var strhead = '<thead><tr><th style="width: 170px; min-width: 170px;">Semaine</th>';
-  for (var w in weekrange){
-    strhead += '<th colspan="'+ weekrange[w] +'">' + w + '</th>';
-    cspan += weekrange[w];
-  }
-  strhead += '</tr><tr><th style="width: 120px; min-width: 120px;">&nbsp;</th>';
-  for (var th in thead){
-    var sty="";
-    if (hdays[thead[th]]) {
-      sty =' style="background-color: '+((hdays[thead[th]]=='vacancy')?'#FF7145':'#FF9C2A')+' !important;" ';
-    }
-    strhead += '<th'+sty+'>'+ thead[th]+'</th>';
-  }
-
-  strhead += '</tr></thead>';
-  $('#tbl_timetable').append(strhead);
-  $('#tbl_timetable').append('<tbody>');
-  //dump(JSON.stringify(accdb) + "\n");
-  if (pconfig.filtercreche){
-    //dump(JSON.stringify(pconfig.filtercreche) + "\n");
-    // TODO: set filter location
-         // for (var c in pconfig.filtercreche){
-               //   //dump(c + "\n");
-               //   var xnum = pconfig.filtercreche[c];
-               //   var crspan = thead.length + 1; 
-               //   curcreche = accdb[xnum];
-               //   var crhead = '<tr><th colspan="'+crspan+'" style="background-color: #286090; color: #fff; font-weight: bold;">' + curcreche.name +'</th></tr>';
-               //   $('#tbl_timetable').append(crhead);
-               //   // parent.appdb.closeConnection();
-               //   // parent.appdb.setdbFile(curcreche.path.local + system.sep() + curcreche.uuid + ".sqlite");
-               //   // parent.appdb.openDatabase();
-               //   setcrechevacancydata(thead,hdays);
-         // }
-  }
-  $('#tbl_timetable').append('</tbody>');
-}
-
-function setcrechevacancydata(thead,hdays){
-       var vacdata = getstaffvacancy();
-               //dump(JSON.stringify(vacdata) + "\n" );
-      var staffsql = "SELECT uuid,prename || ' ' || substr(surname,1,2) as fullname,color from staff where entrydate <= date('"+initdate.toISOString().substring(0,10)+"','+1 month','-1 day') and (exitdate is null or exitdate >= date('"+initdate.toISOString().substring(0,10)+"'));";
-         //dump("SSQL:" + staffsql + "\n");
-      var staffnames = parent.appdb.dbquery(staffsql);   
-         staffnames = staffnames.sqldata;
-         var stxcolor = {};
-         //dump(JSON.stringify(staffnames));
-         for (var stu in staffnames){
-                 //dump(JSON.stringify(staffnames[stu]) + "\n");
-                 stxcolor[staffnames[stu].uuid] = staffnames[stu].color;
-                 var row = '<tr><td><span style="font-weight: bold;">'+ staffnames[stu].fullname+'.</span></td>';
-    
-                 for (var d in thead){
-                         if ((hdays[thead[d]]) && (hdays[thead[d]] == 'vacancy')){
-                                 row += '<td style="background-color: #666666  !important;"></td>';
-                         }else {
-                                 row += '<td id="tblcon_'+staffnames[stu].uuid+'_'+thead[d]+'" style="padding: 0px;"></td>';
-                         }
-      
-                 }
-                 row += '</tr>';
-                 $('#tbl_timetable').append(row);
-         }
-       if (vacdata.length > 0){
-         for (var vc in vacdata){
-                 //dump(JSON.stringify(vacdata[vc]) + "\n");
-                 var da = vacdata[vc].daydate.substring(8,10);
-                 var hh = "";
-                 //if (vacdata[vc].timefrom==vacdata[vc].timeto) {
-                       //  hh="8h";
-                 //}else {
-               //        hh=parseInt(vacdata[vc].timeto.substring(1,2))-parseInt(vacdata[vc].timefrom.substring(1,2)) + "h";
-                 //}
-                 
-                 $('#tblcon_' + vacdata[vc].staffuuid + '_' + da + "").append('<button class="btn" style="padding: 2px;'+((vacdata[vc].type == "-1")?'border: 1px solid red;':"")+';background-color: '+stxcolor[vacdata[vc].staffuuid] +' !important;">'+ vacdata[vc].hours +'</button>');
-                 //$('#tblcon_' + vacdata[vc].staffuuid + '_' + da + "").append('<button class="btn" style="'+((vacdata[vc].type == "-1")?'border: 1px solid red;':"")+';background-color: '+stxcolor[vacdata[vc].staffuuid] +' !important;" onclick="dlg_vacancy(\''+curcreche.dbnum+'\',\''+ vacdata[vc].uuid +'\',\'upd\');">'+ hh +'</button>');
-         }
-
-  }
-
-}
-
-function setdailydurationfields() {
-  var dd = $('#dailyduration :selected').val();
-  if (dd=='1.0') {
-    $("#ftimefrom").hide();
-    $("#fhours").hide();
-  }else if (dd=='0.4') {
-    $("#ftimefrom").show();
-    $("#fhours").hide();
-  }else if (dd=='0.') {
-    $("#ftimefrom").show();
-    $("#fhours").show();
-  }
-}
-
-function getmonthlysql(datefrom2,dateto2,where) {
-      var sqlret = "SELECT vc.uuid, vc.datefrom,strftime('%Y%m%d',vc.datefrom) as strdatefrom,'<span style=\"display: none;\"> ' || strftime('%Y%m%d',vc.datefrom) || strftime('%Y%m%d',vc.dateto) || '</span>' || strftime('%d.%m.%Y',vc.datefrom)  || ' - '  || strftime('%d.%m.%Y',vc.dateto) as tbldaterange, vc.dateto,strftime('%Y%m%d',vc.dateto) as strdateto, "+
-"case when vc.timefrom=vc.timeto then '8h' else (cast(substr(vc.timeto,1,2) as int) - cast(substr(vc.timefrom,1,2) as int)) || 'h' end as hours , " +
-"vc.description, vc.staffuuid,coalesce(st.surname,'') || ' ' || coalesce(st.prename,'') as staffname,vc.type,st.color FROM vacancycalendar vc left join staff st on (vc.staffuuid=st.uuid) " +
-        "LEFT JOIN ( SELECT  * FROM ( ";
-      var sqldays = new Array();
-      
-      for (var cdate2=datefrom2;cdate2<=dateto2;cdate2.setDate(cdate2.getDate() +1)){
-            if ((cdate2.getDay() != 0) && (cdate2.getDay() != 6)){
-                  sqldays.push ("SELECT date('" + cdate2.toISOString().substring(0,10) +"') as daydate");
-            }
-      }
-
-      sqlret += sqldays.join(' UNION ALL ') + " )) oph " +
-      "ON (oph.daydate BETWEEN vc.datefrom AND vc.dateto) " +
-        "WHERE oph.daydate IS NOT NULL and strftime('%w',oph.daydate) not in ('0') " +
-        "AND oph.daydate NOT IN ( SELECT vacancydate FROM vacancy WHERE vacancydateto IS NULL AND vacancydate BETWEEN '"+initdate.toISOString().substring(0,10) + "' AND '" + dateto2.toISOString().substring(0,10)+"') " +
-        ((where != '')?" AND " + where + " ":"") +
-        " GROUP BY vc.uuid ORDER BY st.uuid,vc.datefrom, vc.dateto; ";
-      return sqlret;
-}
-
-
-function set_calmonth(){
-  pconfig.calmonth =$("#calmonth").val();
-  parent.apppref.setpreference("calvacancy",pconfig);
-  parent.app.loadpage('modules/calendar/calvacancy.html',{calmonth:pconfig.calmonth});
-}
-
-
-function onnextmonth() {
-var xdate = parent.appdb.dbquery("select STRFTIME('%m.%Y',date('"+initdate.toISOString().substring(0,10)+"','+1 month')) as ndate");
-pconfig.calmonth = xdate.sqldata[0].ndate;
-parent.apppref.setpreference("calvacancy", pconfig);
-parent.app.loadpage('modules/calendar/calvacancy.html',{calmonth:pconfig.calmonth});
-}
-
-function onpreviousmonth() {
-var xdate = parent.appdb.dbquery("select STRFTIME('%m.%Y',date('"+initdate.toISOString().substring(0,10)+"','-1 month')) as ndate");
-pconfig.calmonth = xdate.sqldata[0].ndate;
-parent.apppref.setpreference("calvacancy", pconfig);
-parent.app.loadpage('modules/calendar/calvacancy.html',{calmonth:pconfig.calmonth});
-}
-
-// function dlg_sel_creche(){
-//     $('#select_creche').modal('show');
-// }
-
-function set_creche(){
-       $('#select_creche').modal('hide');
-       dlg_vacancy($('#sel_creche :selected').val(),null, 'ins')
-}
-
-// function dlg_vacancy(xnum,uuid, type) {
-//     if (!xnum){
-//             return false;
-//     }
-//     curcreche = accdb[xnum];
-       
-//     parent.appdb.closeConnection();
-//     parent.appdb.setdbFile(curcreche.path.local + system.sep() + curcreche.uuid + ".sqlite");
-//     parent.appdb.openDatabase();
-       
-//     load_staff_selection('staffuuid',{maxHeight: 300});
-//     //dump("TYPE " + type +" CUUID:" + uuid +"\n");
-// if (type == 'ins') {
-    
-//     //load staffdata
-//     $('#frmeditvacancy #staffuuid').multiselect('select',[]);
-//     $('#btndeletevacancy').hide();
-//   }else {
-//     $('#btndeletevacancy').show();
-//   }
-
-//     var evdata = {
-//       uuid: '0',
-//       description: '',
-//       datefrom:new Date().toISOString().substring(0,10),
-//       dateto:new Date().toISOString().substring(0,10),
-//       staffuuid:'',
-//       timefrom: '00:00',
-//       hours: '1',
-//       type:'0',
-//       dailyduration:'1.0'
-//     };
-    
-//     if (type == 'upd') {
-//      var evsql = "SELECT uuid, strftime(\"%d.%m.%Y\",datefrom) as datefrom, strftime(\"%d.%m.%Y\",dateto) as dateto, timefrom, description, staffuuid,type, case when timefrom!=timeto then '0.' || (cast(substr(timeto,1,2) as int) - cast(substr(timefrom,1,2) as int)) else 1.0 end as dailyduration,null as hours FROM vacancycalendar where uuid='" + uuid + "';";
-//      //dump("UPDSQL:" +evsql + "\n"); 
-//      evdata = parent.appdb.dbquery(evsql);
-//       evdata = evdata.sqldata[0];
-//       if (evdata.dailyduration == '1') {
-//         evdata.dailyduration = '1.0';
-//         evdata.hours = '8';
-//       }else {
-//         evdata.hours = evdata.dailyduration.substring(2,3);
-//         if (evdata.dailyduration != '0.4') {
-//           evdata.dailyduration = '0.';
-//         }
-//       }
-//       $('#frmeditvacancy #staffuuid').multiselect('select',[evdata.staffuuid]);
-//     }
-
-//     for (var w in evdata) {
-//       if ($("#frmeditvacancy #" + w)) {
-//         $("#frmeditvacancy #" + w).val(evdata[w]);
-//       }
-//     }
-//     curdatediff=daysBetween(new Date(encodeparam($('#frmeditvacancy #datefrom').val(),'date').replace(/'/g,'')),new Date(encodeparam($('#frmeditvacancy #dateto').val(),'date').replace(/'/g,''))); 
-//     setdailydurationfields();
-//     $("#edit_vacancy").modal('show');
-// }
-
-// function confirm_delete_vacancy() {
-//   $("#confirm_delete_vacancy").modal('show');
-//   return false;
-// }
-
-// function delete_vacancy() {
-//   var delsql = "DELETE FROM vacancycalendar where uuid='" + $('#frmeditvacancy #uuid').val()+"';";
-//   parent.appdb.dbexec(delsql);
-//   load_calendar_data();
-//   $("#confirm_delete_vacancy").modal('hide');
-  
-//   return false;
-// }
-
-// function save_vacancy() {
-//   var sql1 = new Array();
-//   var sql2 = new Array();
-//   if (($('#datefrom').val() != '') &&
-//       (encodeparam($('#datefrom').val(),'date') > encodeparam($('#dateto').val(),'date'))) {
-//     errormsg("Erreur","La Date début ne peut pas Ãªtre supérieur Ã  la date fin!");
-//     return false;
-//   }
-
-//   var type = 'ins';
-//   var cuuid = "";
-//   if ($("#frmeditvacancy #uuid").val() != 0) {
-//     type = 'upd';
-//     cuuid = $("#frmeditvacancy #uuid").val();
-//   }
-  
-//   $("#frmeditvacancy :input").each(function() {
-//     var input = $(this);
-    
-//     if (input.attr("id")) {
-        
-//         if (type == 'ins') {
-          
-          
-//           if (input.attr("id") == 'uuid') {
-//             sql1.push('"' + input.attr("id") + '"');
-//             if (input.val() == "" || input.val() == "0") {
-//               sql2.push("'" + parent.appdb.generate_uuid() + "'");
-//             } else {
-//               sql2.push("'" + input.val() + "'");
-//             }
-//           } else if (input.attr("id") == 'dailyduration') {
-//             sql1.push('"timeto"');
-//             if (input.val() == '1.0') {
-//               sql2.push("'" +$('#timefrom').val() + "'");
-//             }else if (input.val() == '0.4') {
-//               var xval = parseInt($('#timefrom').val().substring(1,2)) + 4;
-//               if (xval < 10) { xval = "0" + xval;}
-//               xval += ":00";
-//               sql2.push("'" + xval + "'");
-//             }else {
-//               var xval = parseInt($('#timefrom').val().substring(1,2)) + parseInt($('#hours').val());
-//               if (xval < 10) { xval = "0" + xval;}
-//               xval += ":00";
-//               sql2.push("'" + xval + "'");
-//             }
-//           } else if ((input.attr("id") != 'dailyduration') && (input.attr("id") != 'hours')) {
-//             sql1.push('"' + input.attr("id") + '"');
-//             var ival = encodeparam(input.val(), input.attr('type'));
-//             sql2.push(ival);
-//           }
-//         } else {
-//           if ((input.attr("id") != 'uuid') && (input.attr("id") != 'dailyduration') && (input.attr("id") != 'hours')) {
-//             var ival = encodeparam(input.val(), input.attr('type'));
-//             sql2.push('"' + input.attr("id") + '"=' + ival);
-//           } else if (input.attr("id") == 'dailyduration') {
-//             if (input.val() == '1.0') {
-//               sql2.push('"timeto"='+ "'" + $('#timefrom').val() + "'");
-//             }else if (input.val() == '0.4') {
-//               var xval = parseInt($('#timefrom').val().substring(1,2)) + 4;
-//               if (xval < 10) { xval = "0" + xval;}
-//               xval += ":00";
-//               sql2.push('"timeto"=' +"'" + xval + "'");
-//             }else {
-//               var xval = parseInt($('#timefrom').val().substring(1,2)) + parseInt($('#hours').val());
-//               if (xval < 10) { xval = "0" + xval;}
-//               xval += ":00";
-//               sql2.push('"timeto"=' +"'" + xval + "'");
-//             }
-//           }
-//         }
-//       //}
-//     }
-
-//   });
-  
-//   var xsql = "";
-//   if (type == 'upd') {
-//     xsql = "UPDATE vacancycalendar SET " + sql2.join(',') + " where \"uuid\"='" + cuuid + "';";
-//   } else {
-
-//     xsql = "INSERT INTO vacancycalendar (" + sql1.join(',') + ") VALUES (" + sql2.join(',') + ");";
-//   }
-
-//   parent.appdb.dbexec(xsql);
-
-//   load_calendar_data();
-
-//   $("#frmeditvacancy #uuid").val("0");
-//   $("#edit_vacancy").modal('hide');
-// }
-
-function invertColor(hexTripletColor) {
-  var color = hexTripletColor;
-  color = color.substring(1); // remove #
-  color = parseInt(color, 16); // convert to integer
-  color = 0xFFFFFF ^ color; // invert three bytes
-  color = color.toString(16); // convert to hex
-  color = ("000000" + color).slice(-6); // pad with leading zeros
-  color = "#" + color; // prepend #
-  return color;
-}
-
-// function onselstaff(objid) {
-
-//   pconfig.filterstaff = $('#' + objid).val();
-//   parent.apppref.setpreference("calvacancy",pconfig);
-//   load_calendar_data();
-// }
-
-function load_dlgprint(){
-  if ($('#view_month').css('display') == 'none') {
-    globelreq.send_request({page:'preview2',data:{page: 'table'}});
-  }else {
-    globelreq.send_request({page:'preview2',data:{page: 'calendar'}});
-  }
-}
-
-function load_creche_selection(){
-  //TODO: select locations
-       // accdb = parent.appdb.getaccessibledatabases();
-       
-       // for (var i in accdb){
-       //      //dump("DBcfg: " +JSON.stringify(i) + "\n");
-       //      if (parent.appdb.dbFile == accdb[i].path.local){
-       //              defaultcreche = accdb[i].dbnum;
-       //      }
-       //      $('#filter_creche').append('<option value="'+ accdb[i].dbnum+'">' +accdb[i].name+ '</option>');
-       //      $('#sel_creche').append('<option value="'+ accdb[i].dbnum+'">' +accdb[i].name+ '</option>');
-       // }
-
-       $('#filter_creche').multiselect({enableHTML: true,numberDisplayed:1,nonSelectedText:"Crèche Courrant",allSelectedText: 'Tous',nSelectedText: ' selections'}); 
-       if (pconfig.filtercreche) {
-               $('#filter_creche').multiselect('select',pconfig.filtercreche);
-       }else {
-               var xar = [];
-               xar.push(defaultcreche);
-               $('#filter_creche').multiselect('select',xar);
-               pconfig.filtercreche = xar;
-       }
-       parent.apppref.setpreference("calvacancy",pconfig);
-}
-
-function onselcreche(){
-       pconfig.filtercreche = $('#filter_creche').val();
-       parent.apppref.setpreference("calvacancy",pconfig);
-       load_calendar_data();
-}
-
-// function getoph() {
-//       var ophsql = "select dd.daydate,max(wh.datestart) as baseopendate, "+
-//     "case when strftime('%w',daydate) = '1' then montimeopen "+
-//     "when strftime('%w',daydate) = '2' then tuetimeopen "+
-//     "when strftime('%w',daydate) = '3' then wedtimeopen "+
-//     "when strftime('%w',daydate) = '4' then thutimeopen "+
-//     "when strftime('%w',daydate) = '5' then fritimeopen when strftime('%w',daydate) = '6' then sattimeopen else null end as begintime, "+
-//     "case when strftime('%w',daydate) = '1' then montimeclose "+
-//     "when strftime('%w',daydate) = '2' then tuetimeclose "+
-//     "when strftime('%w',daydate) = '3' then wedtimeclose "+
-//     "when strftime('%w',daydate) = '4' then thutimeclose "+
-//     "when strftime('%w',daydate) = '5' then fritimeclose else null when strftime('%w',daydate) = '6' then sattimeclose else null  end as endtime "+
-//      "from workinghours wh left join (";
-//       ophsql += drsql + 
-//       ") dd on (dd.daydate > wh.datestart) group by dd.daydate order by dd.daydate";
-//       //dump("\n\n\nOPHSQL: " + ophsql + "\n\n\n");
-//       var ophdata = parent.appdb.dbquery(ophsql);
-//       ophdata = ophdata.sqldata;
-//       return ophdata;
-//     }
-
-       function getdaterangesql(){
-         var adays = [];
-         var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-         var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-         for (var cdt = bdate; cdt <= bend; cdt.setDate(cdt.getDate() + 1)) {
-           if ((cdt.getDay() != 0)){
-             adays.push("select date('" + cdt.toISOString().substring(0,10) + "') as daydate");
-           }
-           
-         }
-         return adays.join(" UNION ");
-       }
-       
-       function get_vacancydays(){
-                 var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-                 var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-                 var sql = "select dd.daydate,strftime('%d',dd.daydate) as strday,type from ( "+
-               "select vacancydate,  "+
-               "case when vacancydateto is null then vacancydate else vacancydateto end as vacancydateto, "+
-               "case when vacancydateto is null then 'vacancy' else 'holiday' end as type, "+
-               "vacancydescription from vacancy where (vacancydate between '"+bdate.toISOString().substring(0,10)+"' and '"+bend.toISOString().substring(0,10)+"' and (vacancydateto >= '"+bdate.toISOString().substring(0,10)+"' or vacancydateto is null)) or (vacancydateto between '"+bdate.toISOString().substring(0,10)+"' and '"+bend.toISOString().substring(0,10)+"' and vacancydate < '"+bdate.toISOString().substring(0,10)+"') or ((vacancydate <= '"+bdate.toISOString().substring(0,10)+"') and (vacancydateto >= '"+bend.toISOString().substring(0,10)+"')) order by vacancydate,vacancydateto) vc "+
-               "join ( "+ drsql +") dd  "+
-               "on (dd.daydate between vc.vacancydate and vc.vacancydateto) group by dd.daydate order by daydate;";
-      var hdata = parent.appdb.dbquery(sql);
-      //jsdump("Vacancy SQL");
-      //jsdump(sql);
-                 hdata = hdata.sqldata;
-                 var hs = {};
-                 for (var h in hdata){
-                   hs[hdata[h].strday] = hdata[h].type; 
-                 }
-                 return hs;
-               }
-
-       function getstaffvacancy() {
-                 var bdate = new Date(initdate.getFullYear(), initdate.getMonth(), initdate.getDate());
-                 var bend = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 0);
-                 var vacsql = "SELECT vc.uuid as uuid, dd.daydate AS daydate, vc.staffuuid as staffuuid, printf(\"%.2f\",CASE WHEN vc.timefrom=vc.timeto THEN CAST(st.weekhours/5.00 AS REAL) ELSE CAST((CAST(strftime(\"%s\",vc.timeto) AS REAL)- CAST(strftime(\"%s\",vc.timefrom) AS REAL))/3600.00 AS REAL) END) AS hours, vc.type as type" +
-                 " from ( "+
-               "select uuid,staffuuid, "+
-               "case when datefrom < '"+bdate.toISOString().substring(0,10)+"' then '"+bdate.toISOString().substring(0,10)+"' else  datefrom end as datefrom, "+
-               "case when dateto > '"+bend.toISOString().substring(0,10)+"' then '"+bend.toISOString().substring(0,10)+"' else dateto end as dateto, "+
-               "timefrom,timeto, type "+
-               "from vacancycalendar where (datefrom is null or datefrom <= '"+bend.toISOString().substring(0,10)+"') and (dateto is null or dateto >= '"+bdate.toISOString().substring(0,10)+"')) vc "+
-               "join ("+drsql+") dd  "+
-               "on (dd.daydate between vc.datefrom and vc.dateto) left join staff st on (st.uuid=vc.staffuuid); ";
-                 //dump("VACCALSQL:" +vacsql + "\n");
-                 var vacdata = parent.appdb.dbquery(vacsql);
-                 vacdata = vacdata.sqldata;
-                 return vacdata;
-               }
-
-       // function load_staff_selection(objid,option){
-       //      $('#' + objid).html("");
-       //        var stdata = parent.appdb.dbquery("select uuid, coalesce(surname,'') || ' ' || coalesce(prename,'') as name,case when color is null then '#000' else color end as color from staff order by surname,prename");
-       //        stdata = stdata.sqldata;
-       //        for (var s in stdata){
-       //          $('#' + objid).append('<option value="'+ stdata[s].uuid+'">&lt;span style="color: '+stdata[s].color+';" &gt;' +stdata[s].name+ '&lt;/span&gt;</option>');
-       //        }
-
-       //          var copt = {};
-       //          if (option) {
-       //            copt = option;
-       //          }
-       //          copt['enableHTML'] = true;
-       //          copt['nonSelectedText']="Sélectionner un(e) employé(e)...";
-       //          copt['numberDisplayed']=5;
-       //          copt['allSelectedText']='Tous';
-       //          copt['nSelectedText']=' selections';
-                   
-       //          $('#' + objid).multiselect(copt);
-                 
-  //   }
-    
-    function getcolumndays(){
-      var adays = [];
-      var wrs = [];
-      var firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(), 1);
-      //if (firstmonday > initdate) {
-      //  firstmonday = new Date(initdate.getFullYear(), initdate.getMonth(),firstmonday.getDate()-7);
-      //}
-      var lastmonthday = new Date(initdate.getFullYear(), initdate.getMonth() + 1, 1);
-      //lastsunday = new Date(lastmonthday.getFullYear(), lastmonthday.getMonth(), lastmonthday.getDate() + 7 - parseInt(lastmonthday.getWeekNumber()));
-      var lwr = -1;
-      //dump (initdate + ": " + firstmonday + " -> " + lastmonthday + "\n");
-      for (var cdt = firstmonday; cdt < lastmonthday; cdt.setDate(cdt.getDate() + 1)) {
-        if ((cdt.getDay() !== 0)){
-          if ((lwr === -1) || (!wrs[parseInt(cdt.getWeekNumber())])) {
-            wrs[parseInt(cdt.getWeekNumber())] = 1;
-          }else {
-            wrs[parseInt(cdt.getWeekNumber())] += 1;
-          }
-          lwr = parseInt(cdt.getWeekNumber());
-          adays.push(cdt.toISOString().substring(8,10));
-        }
-        
-      }
-      //dump(JSON.stringify(wrs) + "\n");
-      return [adays,wrs];
-    }
\ No newline at end of file
diff --git a/TODO/modules_todo/checkservice/checkservice.html b/TODO/modules_todo/checkservice/checkservice.html
deleted file mode 100644 (file)
index 55775c0..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Décompte</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: -30px;
-    }
-  </style>
-</head>
-
-<body>
-  <div class="container-fluid" style="padding-top: 5px;">
-   <div class="row">
-        <div class="col-sm-6">
-          <div class="panel panel-default">
-            <div class="panel-heading">
-              <h3 class="panel-title">&nbsp;Fichiers PDF <span style="font-weight: bold;">(requis pour import)</span></h3>
-            </div>
-            <div class="panel-body" id="infopanelpdf">
-              <div class="form-group">
-                       <label for="importfileinvoice">Fichier PDF:</label>
-                       <input type="text" class="form-control" id="importfileinvoice" readonly="1">
-                       <button class="btn btn-primary" id="btnselectpdf" onclick="loadinvoicepdf();">Charger fichier PDF</button>
-                       <!--<label for="importtype">Type:</label>
-                       <select class="formcontrol" id="importtype">
-                       <option value="inv">Factures Check-Service</option>
-                       <option value="stmt">Prestations Check-Service</option>
-                       <option value="invold">Anciennes Factures Check-Service</option>
-                       </select>-->
-                       
-                         </div>
-                         
-                         
-            </div>
-          </div>
-          
-        </div>
-        <div class="col-sm-6">
-          <div class="panel panel-default">
-            <div class="panel-heading">
-              <h3 class="panel-title">&nbsp;Fichier XML <span style="font-weight: bold;">(optionel pour import)</span></h3>
-            </div>
-            <div class="panel-body" id="infopanelxml">
-              <div class="form-group">
-                       <label for="importfilexml">Fichier XML:</label>
-                       <input type="text" class="form-control" id="importfilexml" readonly="1">
-                       <button class="btn btn-primary" id="btnselectxml" onclick="loadinvoicexml();">Charger fichier XML</button>
-                       
-                       
-                         </div>
-                         
-                         
-            </div>
-          </div>
-          
-        </div>
-        <div class="col-md-12">
-        <button class="btn btn-primary" id="btnimportfiles" onclick="importfiles();">Importer</button>
-        </div>
-        <div class="col-md-12" style="text-align: center;display: none;" id="importprogress">
-               <p style="font-weight: bold;">Attendez s.v.p.! Import des fichiers en cours!</p>
-               <progress style="width:50%;"></progress>
-        </div>
-        <div class="col-md-12" style="display: none;" id="importresult">
-               <table class="display compact dataTable cell-border" style="width: 100%;" id="tbl_importresult" role="grid">
-               <thead><tr><th>Reference</th><th>No Check-Service</th><th>Status d'import<th></tr></thead>
-               <tbody></tbody>
-               </table>
-        </div>
-      </div>
-    
-   </div>
-    
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/checkservice.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/checkservice/js/checkservice.js b/TODO/modules_todo/checkservice/js/checkservice.js
deleted file mode 100644 (file)
index 4d372a2..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-function initdata(){
-       curcfg.loadconfig(apppref.getpreference("support.database.currentdb.num"));
-       load_helpers();
-//  //var importpath = {path : apppref.curcfg.dbpath + '/' +apppref.curcfg.db.substring(0,-6) +'/import/' };
-//
-////    pconfig.printlayout = 'list';
-//  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-//  crecheuuid = ccreche.sqldata[0].uuid;
-//
-//  
-//  if ((apppref.curcfg.pageconfig.data) && (apppref.curcfg.pageconfig.data.accmonth)) {
-//    
-//    initdate = new Date(apppref.curcfg.pageconfig.data.accmonth);
-//    
-//  }
-//  $("#accmonth").val(formatMonthYearDate(initdate));
-//  apppref.setpreference("data","accmonth",formatisodate(initdate));
-//  cdate = initdate.toISOString().substring(0,10);
-//
-//  load_accounting_table();
-//  var bfile = appdb.dbquery("select benefitfile from accounting where accmonth = date('"+apppref.curcfg.pageconfig.data.accmonth+"') group by benefitfile LIMIT 1;");
-//  
-//  if ((bfile.sqldata) && (bfile.sqldata.length == 1)) {
-//    $('#mnuacc').append("<button type=\"button\" class=\"btn btn-primary\" onclick=\"openfile('"+ bfile.sqldata[0].benefitfile +"');\" title=\"editer\"><span class=\"glyphicon glyphicon-open\"></span> fichier des prestations</button>");
-//  }
-//  $("#accmonth").on("change", function (e) {
-//    set_accmonth();
-//  });
-}
-
-function loadinvoicepdf(){
-       var lastdir = apppref.getpreference("support.lastfiledir");
-    var nsIFilePicker = Components.interfaces.nsIFilePicker;
-    var fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(nsIFilePicker);
-    fp.init(window, "selectionner fichier PDF", nsIFilePicker.modeOpen);
-    fp.appendFilter("PDF", "*.pdf");
-    if (lastdir != '') {
-      var nsILocalFile= Components.interfaces.nsILocalFile;
-      var f = Components.classes["@mozilla.org/file/local;1"].createInstance(nsILocalFile);
-      f.initWithPath(lastdir);
-      fp.displayDirectory = f;
-    }
-    var res = fp.show();
-    if (res != nsIFilePicker.returnCancel) {
-      var pdffile = fp.file.path;
-      dump("PDF File Selected: " + pdffile + "\n");
-      apppref.setpreference("support.lastfiledir",system.getDirectory(pdffile));
-      $("#importfileinvoice").val(pdffile);
-    }
-}
-
-function loadinvoicexml(){
-       var lastdir = apppref.getpreference("support.lastfiledir");
-    var nsIFilePicker = Components.interfaces.nsIFilePicker;
-    var fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(nsIFilePicker);
-    fp.init(window, "selectionner fichier XML", nsIFilePicker.modeOpen);
-    fp.appendFilter("XML", "*.xml");
-    if (lastdir != '') {
-      var nsILocalFile= Components.interfaces.nsILocalFile;
-      var f = Components.classes["@mozilla.org/file/local;1"].createInstance(nsILocalFile);
-      f.initWithPath(lastdir);
-      fp.displayDirectory = f;
-    }
-    var res = fp.show();
-    if (res != nsIFilePicker.returnCancel) {
-      var xmlfile = fp.file.path;
-      dump("XML File Selected: " + xmlfile + "\n");
-      apppref.setpreference("support.lastfiledir",system.getDirectory(xmlfile));
-      $('#importfilexml').val(xmlfile);
-    }
-}
-
-function importfiles(){
-       $("#btnimportfiles").hide();
-       $("#importresult").hide();
-       $("#importprogress").show();
-       
-       OS.File.remove(system.profiledir+ system.sep() + 'lastimport.json',{ignoreAbsent:true});
-       var cname = appdb.dbquery("select uuid from creche LIMIT 1;");
-    cruuid = cname.sqldata[0].uuid;
-    dump(curcfg.path.local  + system.sep() +"imports" + system.sep() + cruuid + "\n");
-    var importpath = FileUtils.File(curcfg.path.local  + system.sep() +"imports" + system.sep() + cruuid);
-    var args = ["-db",'"' + appdb.dbFile.path + '"',"-p",'"' +$("#importfileinvoice").val() + '"',"-o",'"' + importpath.path + '"',"-t",'"' + system.toolsdir() + '"',"-l", '"' + system.profiledir()+ system.sep() + 'lastimport.json'];
-    if ($('#importfilexml').val() != ""){
-       args.push("-x");
-       args.push('"' + $('#importfilexml').val() + '"');
-    }
-    
-    var binpdf = system.toolsdir() + system.sep() + "pdfextract.exe";
-    if (system.os != "WINNT") {
-      binpdf = system.toolsdir() + system.sep() + "pdfextract";
-    }
-    //dump(binpdf + " " +JSON.stringify(args) + "\n");
-    //system.popup("Import Factures!","Import du PDF '"+ pdffile.path +"' en cours!\n");
-    system.runcmdline(binpdf,args,setresult);
-
-}
-
-function setresult(data){
-    var strx = apppref.getpreference("pageconfig.lastpage");
-    var strjresult = system.readLocalTextFile(system.profiledir()+ system.sep() + 'lastimport.json');
-    var strx = apppref.getpreference("pageconfig.lastpage");
-    var x = JSON.parse(strx);
-    
-    if (x.module == 'accounting') {
-       $("#tbl_importresult > tbody").html("");
-       var tblx = sortByKey(JSON.parse(strjresult));
-       for (var i in tblx){
-               dump(i + "\n" + JSON.stringify(tblx[i][1]) + "\n-\n");
-               var xd = '<tr>';
-               xd += '<td>'+tblx[i][1].reference+'</td>';
-               xd += '<td>'+tblx[i][1].checkservice+'</td>';
-               xd += '<td>'+tblx[i][1].sqlresult+'</td>';
-               xd += '</tr>';
-               $("#tbl_importresult > tbody").append(xd);      
-       }
-       $("#importresult").html();
-       $("#importprogress").hide();
-       $("#btnimportfiles").show();
-       $("#importresult").show();
-    }
-    
-  }
-
-function sortByKey(jsObj){
-    var sortedArray = [];
-
-    // Push each JSON Object entry in array by [key, value]
-    for(var i in jsObj)
-    {
-        sortedArray.push([i, jsObj[i]]);
-    }
-
-    // Run native sort function and returns sorted array.
-    return sortedArray.sort();
-}
diff --git a/TODO/modules_todo/company/company.html b/TODO/modules_todo/company/company.html
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/TODO/modules_todo/company/js/company.js b/TODO/modules_todo/company/js/company.js
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/TODO/modules_todo/company/js/locations.js b/TODO/modules_todo/company/js/locations.js
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/TODO/modules_todo/company/locations.html b/TODO/modules_todo/company/locations.html
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/TODO/modules_todo/forms/forms.html b/TODO/modules_todo/forms/forms.html
deleted file mode 100644 (file)
index 1db4a36..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-
-  <title>Creorga - Creche</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-</head>
-
-<body>
-    <div class="container-fluid" style="padding-top: 5px;">
-        <!--<span class="pagehead" id="pagehead">Formulaires</span>&nbsp;-->
-        <button  onclick="dlg_addform();" id="btnadd" class="btn btn-primary" type="button">
-  <span class="glyphicon glyphicon-plus"></span>
-</button>
-  
-   
-    <!--<button onclick="return globelreq.send_request({foo: 1}, something.callback)">send {foo: 1} with callback</button>-->
-    <!--<button onclick="return globelreq.send_request({baz: 3}, something.callback)">send {baz: 3} with callback</button>-->
-    <table id="tbl_forms" class="table table-striped">
-      
-    </table>
-    
-      </div>
-    <div class="modal fade" id="edit_forms">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Ajouter/Remplacer Fichier</h4>
-              </div>
-              <div class="modal-body">
-
-                <div id="frmeditforms">
-                  <input type="hidden" value="0" id="uuid" />
-                  
-                  
-                  <div class="form-group">
-                    <label for="name">Fichier</label>
-                    <input type="file" value="" id="file"  nullable="true" class="form-control">
-                  </div>
-                  <!--<div class="form-group">
-                    <label for="phone">Description</label>
-                    <input type="text" value="" id="description"  nullable="true" class="form-control">
-                  </div>-->
-                </div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="save_forms();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-        </div>
-      
-      <div class="modal fade" id="confirm_delete_forms">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer ce fichier?
-
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_forms();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-        </div>  
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-
-<script src="../../js/creorga.js" type="text/javascript"></script>
-<script src="../../js/labels.js" type="text/javascript"></script>
-<script src="js/forms.js" type="text/javascript"></script>
-  </body>
-</html>
-
diff --git a/TODO/modules_todo/forms/forms.xul b/TODO/modules_todo/forms/forms.xul
deleted file mode 100644 (file)
index 54eeef0..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE overlay PUBLIC "-//MOZILLA//DTD XUL V1.0//EN"
-"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<overlay id="ov_forms" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
-  <toolbar id="co_maintoolbar" style="-moz-appearance: none;">
-    <toolbarbutton class="btn btn-default" id="tbb_forms" insertbefore="tbb_space" label="Formulaires" image="modules/forms/img/doc.png" orient="vertical" oncommand="navigation.load_appview('forms','forms',null,'Formulaires');"/>
-  </toolbar>
-</overlay>
\ No newline at end of file
diff --git a/TODO/modules_todo/forms/img/doc.png b/TODO/modules_todo/forms/img/doc.png
deleted file mode 100644 (file)
index 32dbbec..0000000
Binary files a/TODO/modules_todo/forms/img/doc.png and /dev/null differ
diff --git a/TODO/modules_todo/forms/img/form.png b/TODO/modules_todo/forms/img/form.png
deleted file mode 100644 (file)
index 0de6475..0000000
Binary files a/TODO/modules_todo/forms/img/form.png and /dev/null differ
diff --git a/TODO/modules_todo/forms/js/forms.js b/TODO/modules_todo/forms/js/forms.js
deleted file mode 100644 (file)
index a585c62..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-
-var wh= window.screen.height -400;
-var myfiles = null;
-var delform = null;
-var cruuid = null;
-var candelete = 0;
-function initdata(){
-      curcfg.loadconfig(apppref.getpreference("support.database.currentdb.num"));
-      load_table_forms();
-      set_infoheader("");
-      if (system.appinfo().ID.indexOf("director")){
-        candelete = 1;
-      }
-    }
-
-function load_table_forms(){
-      var cname = appdb.dbquery("select uuid from creche LIMIT 1;");
-      cruuid = cname.sqldata[0].uuid;
-
-      myfiles = system.getReports(cruuid);
-      var atbody = new Array();
-      for (var i=0;i<myfiles.length;i++){
-       
-        var fname = system.getFileName(myfiles[i].path);
-        if (!fname.startsWith('.')){
-               var row = new Array();
-          var btndelete = "";  
-            //if (candelete == 1){
-              btndelete = '<button onclick="delete_report('+i+');" class="btn btn-danger"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span></button>';
-            //}
-            row.push('<button onclick="preview_report(' + i +');" class="btn btn-primary"><span class="glyphicon glyphicon-open" aria-hidden="true"></span></button>' + btndelete);
-            row.push(fname);
-            atbody.push(row);
-        }
-        
-  }
-
-  $("#tbl_forms").html("");
-      
-
-      var headerdata = getlabels("action,description");
-      $("#tbl_forms").html("");
-      $("#tbl_forms").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "data": atbody,
-        "columns": headerdata,
-        "paging":   false,
-        "scrollY": wh + "px",
-        "scrollCollapse": true,
-        "ordering": true,
-        "info":     false,
-        "filter": false,
-        "destroy": true
-      });
-}
-
-function preview_report(fi){
-  var ff = system.openFile(myfiles[fi].path);
-}
-
-
-function delete_report(fi) {
-  delform = fi;
-  confirm_delete_forms();
-}
-
-function dlg_addform(){
-      $("#edit_forms").modal('show');
-}
-    
-function confirm_delete_forms(){
-  $("#confirm_delete_forms").modal('show');
-  return false;
-}
-  
-function delete_forms(){
-  OS.File.remove(myfiles[delform].path);
-  setTimeout(function(){load_table_forms();$("#confirm_delete_forms").modal('hide');},3000);
-  delform = null;
-  return false;
-}
-  
-function save_forms(){
-  var file = $("#frmeditforms #file").val();
-  var path = FileUtils.File(curcfg.path.local  + system.sep() +"reports" + system.sep() + cruuid);
-  var newlocation= path.path + system.sep() + system.getFileName(file);
-  OS.File.copy(file, newlocation);
-  setTimeout(function(){load_table_forms();$("#edit_forms").modal('hide');},3000);
-}
diff --git a/TODO/modules_todo/logbook/img/logbook.png b/TODO/modules_todo/logbook/img/logbook.png
deleted file mode 100644 (file)
index a8c9914..0000000
Binary files a/TODO/modules_todo/logbook/img/logbook.png and /dev/null differ
diff --git a/TODO/modules_todo/logbook/js/logactivity.js b/TODO/modules_todo/logbook/js/logactivity.js
deleted file mode 100644 (file)
index 5f6082e..0000000
+++ /dev/null
@@ -1,326 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-var winh= window.innerHeight -170;
-var tbllog = null;
-var crecheuuid = null;
-var initdate = new Date();
-var deluuid = "";
-var amonth = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aôut', 'Septembre', 'Octobre','Novembre', 'Décembre'];
-var myhostname = system.hostname();
-
-function initdata(){
-       
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.logactivity");
-  //dump("cfdata:" + configdata +"\n");
-  if ((configdata) && (configdata !== '')){
-    pconfig = JSON.parse(configdata);
-  }
-  //dump("logactivity Page new loaded!\n");
-  //if (!pconfig.printlayout) {
-    pconfig.printlayout = 'book';
-    apppref.setpreference("pageconfig.logactivity",pconfig);
-  //}
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  var edith = 270;
-  loadtextareas(edith);
-  myhostname = system.hostname();
-   if (pconfig.logmonth) {
-
-    initdate = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-    $("#logmonth").val(pconfig.logmonth);
-  } else {
-    $("#logmonth").val(initdate.toLocaleFormat('%m.%Y'));
-    
-    pconfig.logmonth=initdate.toLocaleFormat("%m.%Y");
-    apppref.setpreference("pageconfig.logactivity",pconfig);
-  }
-  var acttitle = "";
-  if (pconfig.activityuuid){
-    var chdata = appdb.dbquery("select logtitle from activitylog where uuid='"+ pconfig.activityuuid +"'");
-    if (chdata.sqldata.length > 0){
-      acttitle = chdata.sqldata[0].logtitle + " - "; 
-    }
-  }
-  //dump(JSON.stringify(pconfig) + "\n");
-  set_infoheader(acttitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-  
-  $('#logmonth').on('dp.hide', function(e) {
-    set_logmonth();
-  });
-  $("#btnedit").hide();
-  $("#btnprotection").hide();
-  $("#btndelete").hide();
-  load_logactivity_table();
-}
-
-
-
-function load_logactivity_table(){
-  var mins = initdate.getTimezoneOffset() * -1;//dump("cur timezoneoffset:" + + "\n");
-  if (mins > 0){
-    mins = '+' + mins;
-  }
-  var logsql = "SELECT uuid, logtitle, strftime('%d.%m.%Y',logdatefrom) as logdatefrom, strftime('%d.%m.%Y',logdateto) as logdateto,'<span style=\"display:none\">' || lastmodified || '</span>' || strftime('%d.%m.%Y %H:%M',lastmodified,'"+mins+" minutes') as lastmodified,editor  FROM activitylog where date(logdatefrom) between date('"+initdate.toLocaleFormat("%Y-%m")+"-01') and date('"+initdate.toLocaleFormat("%Y-%m")+"-01','+1 month','-1 day') or logdateto between date('"+initdate.toLocaleFormat("%Y-%m")+"-01') and date('"+initdate.toLocaleFormat("%Y-%m")+"-01','+1 month','-1 day');";
-  var logdata = appdb.dbquery(logsql);
-  var headerdata = getlabels("activity,lastmodified,editor");
-  $("#tbl_logactivity").html("");
-
-  var tblheader = '<tr>';
-
-  for (var h in headerdata){
-    if ((headerdata[h].keyname == 'act') && (headerdata[h].class.indexOf('action1btn') == -1)){
-      headerdata[h].class +=" action1btn";
-    }
-
-    tblheader += '<th class="' + headerdata[h].class +'">'+ headerdata[h].title+'</th>';
-
-  }
-  tblheader += '</tr>';
-
-  
-  $("#tbl_logactivity").append("<thead>" + tblheader + "</thead>");
-  $("#tbl_logactivity").append("<tfoot>" + tblheader + "</tfoot>");
-  $("#tbl_logactivity").append("<tbody>");
-
-  for (var i in logdata.sqldata){
-    var sel = "";
-    var row = logdata.sqldata[i];
-    if (pconfig.activityuuid && row.uuid == pconfig.activityuuid) {
-      sel = "selected";
-      load_activitylog();
-    }
-        //<td><button type="button" class="btn btn-danger" onclick="confirm_delete_logactivity(\''+ row.uuid +'\');" title=\"supprimer\"><span class=\"glyphicon glyphicon-remove\"></span></button></td>
-    //!= '')?'<button class="btn btn-danger" id="btnprotection" onclick="confirm_delete_protection();" style="display: none;"><span class="glyphicon glyphicon-remove"></span></button>':'') +row.editor    
-    var tr = '<tr data-activity="'+ row.uuid+'" data-editor="'+row.editor+'" class="'+ sel+'"><td>' + row.logtitle + '<br/><i>' + row.logdatefrom +' - ' + row.logdateto + '</i></td>'+
-        '<td>'+ row.lastmodified+'</td>'+'<td>'+ row.editor +'</td>'+
-        '</tr>';
-        
-        $("#tbl_logactivity").append(tr);
-    }
-    
-  $("#tbl_logactivity").append("</tbody>");
-
-
-  tbllog = $("#tbl_logactivity").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "paging":   false,
-        "ordering": true,
-        "bAutoWidth": false,
-        "scrollY": winh + "px",
-        "scrollCollapse": true,
-        "info":     false,
-        "filter": false,
-        "destroy": true,
-      });
-  
-
-
-  $('#tbl_logactivity').on( 'order.dt', function () {
-    pconfig.order= tbllog.fnSettings().aaSorting;
-    apppref.setpreference("pageconfig.logactivity",pconfig);
-  } );
-
-  if (pconfig.order) {
-    
-    tbllog.fnSort(pconfig.order);
-  }
-  
-  $('#tbl_logactivity tbody').on( 'click', 'tr', function () {
-      //dump("select activity\n");
-      if ( $(this).hasClass('selected') ) {
-         // $(this).removeClass('selected');
-      }
-      else {
-          //dump("select activity\n");
-         $("#btnedit").hide();
-         $("#btnprotection").hide();
-         $("#btndelete").hide();
-          tbllog.$('tr.selected').removeClass('selected');
-          $(this).addClass('selected');
-          var curactivity = $(this).attr('data-activity');
-          pconfig.activityuuid = curactivity;
-          var actlogsql = "SELECT editor FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-          var adata = appdb.dbquery(actlogsql);
-          
-          if (adata.sqldata[0].editor == '' || adata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-           $("#btndelete").show();
-               }
-               if (adata.sqldata[0].editor != '' && adata.sqldata[0].editor != myhostname){
-                       $("#btnprotection").show();
-               }
-          //setforeigneditor($(this).attr('data-editor'));
-          apppref.setpreference("pageconfig.logactivity",pconfig);
-          load_activitylog();
-      }
-  } );
-  
-}
-
-
-
-function newlogactivity(){
-  var nuuid = appdb.generate_uuid();
-  var sql = "INSERT INTO activitylog (uuid,logtitle,logdatefrom,logdateto) VALUES ('"+nuuid+"','nouvelle Activité',date('"+initdate.toISOString().substring(0,10)+"'),date('"+initdate.toISOString().substring(0,10)+"'));";
-  appdb.dbexec(sql);
-  pconfig.activityuuid=nuuid;
-  apppref.setpreference("pageconfig.logactivity",pconfig);
-  edit_activitylog();
-  //load_logactivity_table();
-}
-
-function load_activitylog(){
-         $("#btnedit").hide();
-         $("#btnprotection").hide();
-         $("#btndelete").hide();
-  var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdatefrom) as logdatefrom, strftime('%d.%m.%Y',logdateto) as logdateto, logtitle, logmessage,editor FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-  var adata = appdb.dbquery(actlogsql);
-  var inftitle = "";
-  if (adata.sqldata.length > 0){
-    $("#activityloguuid").val(adata.sqldata[0].uuid);
-    $("#activitylogmessage").html(htmlUnescape(adata.sqldata[0].logmessage))
-    $("#activitylogtitle").html(adata.sqldata[0].logtitle);
-    $("#activitylogdatefrom").html(adata.sqldata[0].logdatefrom);
-    $("#activitylogdateto").html(adata.sqldata[0].logdateto);
-    if (adata.sqldata[0].editor == '' || adata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-           $("#btndelete").show();
-       }
-       if (adata.sqldata[0].editor != '' && adata.sqldata[0].editor != myhostname){
-           $("#btnprotection").show();
-       }
-
-    inftitle=adata.sqldata[0].logtitle;
-  }else {
-    $("#activityloguuid").val(0);
-    $("#activitylogmessage").html("");
-    $("#activitylogtitle").html('');
-    $("#activitylogdatefrom").html('');
-    $("#activitylogdateto").html('');
-  }
-  
-  set_infoheader(inftitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-
-}
-
-function edit_activitylog(){
-       var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdatefrom) as logdatefrom, strftime('%d.%m.%Y',logdateto) as logdateto, logtitle, logmessage,editor FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-       
-       var adata = appdb.dbquery(actlogsql);
-    //dump("EDIT: " + JSON.stringify(chdata) + "\n");
-    if ((adata.sqldata[0].editor != '') && (adata.sqldata[0].editor != myhostname)){
-       system.popup("cette activité est bloqué par l'editeur: " + adata.sqldata[0].editor);
-       load_logactivity_table();
-       return;
-    }
-       seteditorhost();
-    if (adata.sqldata.length > 0){
-       $('#frmeditactivitylog #loguuid').val(adata.sqldata[0].uuid);
-       $("#frmeditactivitylog #logtitle").val(adata.sqldata[0].logtitle);
-    $("#frmeditactivitylog #logdatefrom").val(adata.sqldata[0].logdatefrom);
-    $("#frmeditactivitylog #logdateto").val(adata.sqldata[0].logdateto);
-       $("#frmeditactivitylog #logmessage").summernote('reset');
-       $("#frmeditactivitylog #logmessage").summernote('code',htmlUnescape(adata.sqldata[0].logmessage));
-    }
-    $("#edit_activitylog").modal('show');
-}
-
-function save_activitylog(){
-    var lsql = "";
-    //dump($('#frmeditactivitylog #logdateto').val() + " - " + $('#frmeditactivitylog #logdatefrom').val() + "\n");
-       $("#activityloguuid").val($("#frmeditactivitylog #loguuid").val());
-       //var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-       var dt = encodeparam($("#frmeditactivitylog #logdateto").val(),"date");
-       var df = encodeparam($("#frmeditactivitylog #logdatefrom").val(),"date");
-       var ltitle = encodeparam($('#frmeditactivitylog #logtitle').val(),"text");
-       var lmessage = encodeparam($('#frmeditactivitylog #logmessage').val(),"richtextarea");
-       var uid = $("#frmeditactivitylog #loguuid").val();
-       //dump(df + " - " + dt + "\n");
-       var lsql = "UPDATE activitylog set logtitle="+ltitle+
-       ",logmessage="+lmessage+
-       ",logdatefrom=date("+df+")"+
-       ",logdateto=date("+dt+") where uuid='"+uid+"';";
-       //dump(lsql + "\n");
-    appdb.dbexec(lsql);
-    removeeditorhost();
-    load_logactivity_table();
-    //load_activitylog();
-    $("#edit_activitylog").modal('hide');
-}
-
-function confirm_delete_activity() {
-
-  deluuid = $("#activityloguuid").val();
-  $('#confirm_delete_logactivity').modal('show');
-}
-
-function delete_logactivity() {
-  appdb.dbexec("delete from activitylog where uuid='"+ deluuid+"';");
-  load_logactivity_table();
-  $('#confirm_delete_logactivity').modal('hide');
-}
-
-function onnextmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() + 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logactivity", pconfig);
-  globelreq.send_request({
-    page: 'logactivity',
-    module: 'logbook',
-    header: 'Livret des activités'
-  }, null);
-}
-
-function onpreviousmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() - 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logactivity", pconfig);
-  globelreq.send_request({
-    page: 'logactivity',
-    module: 'logbook',
-    header: 'Livret des activités'
-  }, null);
-}
-
-function set_logmonth(){
-      pconfig.logmonth =$("#logmonth").val();
-      apppref.setpreference("pageconfig.logactivity",pconfig);
-      globelreq.send_request({
-            page: 'logactivity',
-            module: 'logbook',
-            header: 'Livret des activités'
-      });
-}
-
-function seteditorhost(){
-       appdb.dbexec("UPDATE activitylog set editor=null where editor='"+myhostname+"';");
-       appdb.dbexec("UPDATE activitylog set editor='"+myhostname+"' where uuid='"+$('#activityloguuid').val()+"';");
-}
-
-function removeeditorhost(){
-       appdb.dbexec("UPDATE activitylog set editor=null where editor='"+myhostname+"';");
-}
-
-
-function confirm_delete_protection(){
-       $("#confirm_delete_protection").modal('show');
-}
-
-function delete_protection(){
-       appdb.dbexec("UPDATE activitylog set editor=null where uuid='"+$('#activityloguuid').val()+"';");
-       $('#editorhost').html('');
-       $('#btneditorhost').removeClass('btn-danger');
-       $('#btneditorhost').addClass('btn-default');
-       $('#btnprotection').hide();
-       load_logactivity_table();
-       $("#confirm_delete_protection").modal('hide');
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/logbook/js/logactivity_basic.js b/TODO/modules_todo/logbook/js/logactivity_basic.js
deleted file mode 100644 (file)
index 738e15a..0000000
+++ /dev/null
@@ -1,282 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-var winh= window.innerHeight -170;
-var tbllog = null;
-var crecheuuid = null;
-var initdate = new Date();
-var deluuid = "";
-var amonth = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aôut', 'Septembre', 'Octobre','Novembre', 'Décembre'];
-var myhostname = system.hostname();
-
-function initdata(){
-       
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.logactivity");
-  //dump("cfdata:" + configdata +"\n");
-  if ((configdata) && (configdata !== '')){
-    pconfig = JSON.parse(configdata);
-  }
-  //dump("logactivity Page new loaded!\n");
-  //if (!pconfig.printlayout) {
-    pconfig.printlayout = 'book';
-    apppref.setpreference("pageconfig.logactivity",pconfig);
-  //}
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  var edith = 270;
-  loadtextareas(edith);
-  myhostname = system.hostname();
-   if (pconfig.logmonth) {
-
-    initdate = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-    $("#logmonth").val(pconfig.logmonth);
-  } else {
-    $("#logmonth").val(initdate.toLocaleFormat('%m.%Y'));
-    
-    pconfig.logmonth=initdate.toLocaleFormat("%m.%Y");
-    apppref.setpreference("pageconfig.logactivity",pconfig);
-  }
-  var acttitle = "";
-  if (pconfig.activityuuid){
-    var chdata = appdb.dbquery("select logtitle from activitylog where uuid='"+ pconfig.activityuuid +"'");
-    if (chdata.sqldata.length > 0){
-      acttitle = chdata.sqldata[0].logtitle + " - "; 
-    }
-  }
-  //dump(JSON.stringify(pconfig) + "\n");
-  set_infoheader(acttitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-  
-  $('#logmonth').on('dp.hide', function(e) {
-    set_logmonth();
-  });
-  $("#btnedit").hide();
-
-  load_logactivity_table();
-}
-
-
-
-function load_logactivity_table(){
-  var mins = initdate.getTimezoneOffset() * -1;//dump("cur timezoneoffset:" + + "\n");
-  if (mins > 0){
-    mins = '+' + mins;
-  }
-  var logsql = "SELECT uuid, logtitle, strftime('%d.%m.%Y',logdatefrom) as logdatefrom, strftime('%d.%m.%Y',logdateto) as logdateto,'<span style=\"display:none\">' || lastmodified || '</span>' || strftime('%d.%m.%Y %H:%M',lastmodified,'"+mins+" minutes') as lastmodified,editor  FROM activitylog where date(logdatefrom) between date('"+initdate.toLocaleFormat("%Y-%m")+"-01') and date('"+initdate.toLocaleFormat("%Y-%m")+"-01','+1 month','-1 day') or logdateto between date('"+initdate.toLocaleFormat("%Y-%m")+"-01') and date('"+initdate.toLocaleFormat("%Y-%m")+"-01','+1 month','-1 day');";
-  var logdata = appdb.dbquery(logsql);
-  var headerdata = getlabels("activity,lastmodified,editor");
-  $("#tbl_logactivity").html("");
-
-  var tblheader = '<tr>';
-
-  for (var h in headerdata){
-    if ((headerdata[h].keyname == 'act') && (headerdata[h].class.indexOf('action1btn') == -1)){
-      headerdata[h].class +=" action1btn";
-    }
-
-    tblheader += '<th class="' + headerdata[h].class +'">'+ headerdata[h].title+'</th>';
-
-  }
-  tblheader += '</tr>';
-
-  
-  $("#tbl_logactivity").append("<thead>" + tblheader + "</thead>");
-  $("#tbl_logactivity").append("<tfoot>" + tblheader + "</tfoot>");
-  $("#tbl_logactivity").append("<tbody>");
-
-  for (var i in logdata.sqldata){
-    var sel = "";
-    var row = logdata.sqldata[i];
-    if (pconfig.activityuuid && row.uuid == pconfig.activityuuid) {
-      sel = "selected";
-      load_activitylog();
-    }
-       
-    var tr = '<tr data-activity="'+ row.uuid+'" data-editor="'+row.editor+'" class="'+ sel+'"><td>' + row.logtitle + '<br/><i>' + row.logdatefrom +' - ' + row.logdateto + '</i></td>'+
-        '<td>'+ row.lastmodified+'</td>'+'<td>'+ row.editor +'</td>'+
-        '</tr>';
-        
-        $("#tbl_logactivity").append(tr);
-    }
-    
-  $("#tbl_logactivity").append("</tbody>");
-
-
-  tbllog = $("#tbl_logactivity").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "paging":   false,
-        "ordering": true,
-        "bAutoWidth": false,
-        "scrollY": winh + "px",
-        "scrollCollapse": true,
-        "info":     false,
-        "filter": false,
-        "destroy": true,
-      });
-  
-
-
-  $('#tbl_logactivity').on( 'order.dt', function () {
-    pconfig.order= tbllog.fnSettings().aaSorting;
-    apppref.setpreference("pageconfig.logactivity",pconfig);
-  } );
-
-  if (pconfig.order) {
-    
-    tbllog.fnSort(pconfig.order);
-  }
-  
-  $('#tbl_logactivity tbody').on( 'click', 'tr', function () {
-      //dump("select activity\n");
-      if ( $(this).hasClass('selected') ) {
-         // $(this).removeClass('selected');
-      }
-      else {
-          //dump("select activity\n");
-         $("#btnedit").hide();
-          tbllog.$('tr.selected').removeClass('selected');
-          $(this).addClass('selected');
-          var curactivity = $(this).attr('data-activity');
-          var actlogsql = "SELECT editor FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-          var adata = appdb.dbquery(actlogsql);
-          pconfig.activityuuid = curactivity;
-          if (adata.sqldata[0].editor == '' || adata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-               }
-          //setforeigneditor($(this).attr('data-editor'));
-          apppref.setpreference("pageconfig.logactivity",pconfig);
-          load_activitylog();
-      }
-  } );
-  
-}
-
-
-
-function newlogactivity(){
-  var nuuid = appdb.generate_uuid();
-  var sql = "INSERT INTO activitylog (uuid,logtitle,logdatefrom,logdateto) VALUES ('"+nuuid+"','nouvelle Activité',date('"+initdate.toISOString().substring(0,10)+"'),date('"+initdate.toISOString().substring(0,10)+"'));";
-  appdb.dbexec(sql);
-  pconfig.activityuuid=nuuid;
-  apppref.setpreference("pageconfig.logactivity",pconfig);
-  edit_activitylog();
-  //load_logactivity_table();
-}
-
-function load_activitylog(){
-         $("#btnedit").hide();
-  var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdatefrom) as logdatefrom, strftime('%d.%m.%Y',logdateto) as logdateto, logtitle, logmessage,editor FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-  var adata = appdb.dbquery(actlogsql);
-  var inftitle = "";
-  if (adata.sqldata.length > 0){
-    $("#activityloguuid").val(adata.sqldata[0].uuid);
-    $("#activitylogmessage").html(htmlUnescape(adata.sqldata[0].logmessage))
-    $("#activitylogtitle").html(adata.sqldata[0].logtitle);
-    $("#activitylogdatefrom").html(adata.sqldata[0].logdatefrom);
-    $("#activitylogdateto").html(adata.sqldata[0].logdateto);
-    if (adata.sqldata[0].editor == '' || adata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-       }
-
-    inftitle=adata.sqldata[0].logtitle;
-  }else {
-    $("#activityloguuid").val(0);
-    $("#activitylogmessage").html("");
-    $("#activitylogtitle").html('');
-    $("#activitylogdatefrom").html('');
-    $("#activitylogdateto").html('');
-  }
-  
-  set_infoheader(inftitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-
-}
-
-function edit_activitylog(){
-       var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdatefrom) as logdatefrom, strftime('%d.%m.%Y',logdateto) as logdateto, logtitle, logmessage,editor FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-       var adata = appdb.dbquery(actlogsql);
-       if ((adata.sqldata[0].editor != '') && (adata.sqldata[0].editor != myhostname)){
-               system.popup("cette activité est bloqué par l'editeur: " + adata.sqldata[0].editor);
-               return;
-           }
-    //dump("EDIT: " + JSON.stringify(chdata) + "\n");
-    seteditorhost();
-    if (adata.sqldata.length > 0){
-       $('#frmeditactivitylog #loguuid').val(adata.sqldata[0].uuid);
-       $("#frmeditactivitylog #logtitle").val(adata.sqldata[0].logtitle);
-    $("#frmeditactivitylog #logdatefrom").val(adata.sqldata[0].logdatefrom);
-    $("#frmeditactivitylog #logdateto").val(adata.sqldata[0].logdateto);
-       $("#frmeditactivitylog #logmessage").summernote('reset');
-       $("#frmeditactivitylog #logmessage").summernote('code',htmlUnescape(adata.sqldata[0].logmessage));
-    }
-    $("#edit_activitylog").modal('show');
-}
-
-function save_activitylog(){
-    var lsql = "";
-    //dump($('#frmeditactivitylog #logdateto').val() + " - " + $('#frmeditactivitylog #logdatefrom').val() + "\n");
-       $("#activityloguuid").val($("#frmeditactivitylog #loguuid").val());
-       //var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-       var dt = encodeparam($("#frmeditactivitylog #logdateto").val(),"date");
-       var df = encodeparam($("#frmeditactivitylog #logdatefrom").val(),"date");
-       var ltitle = encodeparam($('#frmeditactivitylog #logtitle').val(),"text");
-       var lmessage = encodeparam($('#frmeditactivitylog #logmessage').val(),"richtextarea");
-       var uid = $("#frmeditactivitylog #loguuid").val();
-       //dump(df + " - " + dt + "\n");
-       var lsql = "UPDATE activitylog set logtitle="+ltitle+
-       ",logmessage="+lmessage+
-       ",logdatefrom=date("+df+")"+
-       ",logdateto=date("+dt+") where uuid='"+uid+"';";
-       //dump(lsql + "\n");
-    appdb.dbexec(lsql);
-    removeeditorhost();
-    load_logactivity_table();
-    //load_activitylog();
-    $("#edit_activitylog").modal('hide');
-}
-
-function onnextmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() + 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logactivity", pconfig);
-  globelreq.send_request({
-    page: 'logactivity_basic',
-    module: 'logbook',
-    header: 'Livret des activités'
-  }, null);
-}
-
-function onpreviousmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() - 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logactivity", pconfig);
-  globelreq.send_request({
-    page: 'logactivity_basic',
-    module: 'logbook',
-    header: 'Livret des activités'
-  }, null);
-}
-
-function set_logmonth(){
-      pconfig.logmonth =$("#logmonth").val();
-      apppref.setpreference("pageconfig.logactivity",pconfig);
-      globelreq.send_request({
-            page: 'logactivity_basic',
-            module: 'logbook',
-            header: 'Livret des activités'
-      });
-}
-
-function seteditorhost(){
-       appdb.dbexec("UPDATE activitylog set editor=null where editor='"+myhostname+"';");
-       appdb.dbexec("UPDATE activitylog set editor='"+myhostname+"' where uuid='"+$('#loguuid').val()+"';");
-}
-
-function removeeditorhost(){
-       appdb.dbexec("UPDATE activitylog set editor=null where editor='"+myhostname+"';");
-}
diff --git a/TODO/modules_todo/logbook/js/logchild.js b/TODO/modules_todo/logbook/js/logchild.js
deleted file mode 100644 (file)
index e144307..0000000
+++ /dev/null
@@ -1,359 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-var winh= window.innerHeight -170;
-var tbllog = null;
-var crecheuuid = null;
-var initdate = new Date();
-var myhostname = system.hostname();
-
-function initdata(){
-
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.logchild");
-
-  if ((configdata) && (configdata !== '')){
-    pconfig = JSON.parse(configdata);
-  }
-  //dump(JSON.stringify(pconfig) + "\n");
-  //if (!pconfig.printlayout) {
-    pconfig.printlayout = 'logchild';
-    apppref.setpreference("pageconfig.logchild",pconfig);
-  //}
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-
-  loadtextareas(winh);
-  $("#logdate").on("dp.hide", function () {
-    set_logdate();
-  });
-  myhostname = system.hostname();
-  if (pconfig.logdate) {
-
-    initdate = new Date(encodeparam(pconfig.logdate, 'date').replace(/'/g, ''));
-    $("#logdate").val(pconfig.logdate);
-  } else {
-    $("#logdate").val(initdate.toISOString().substring(0,10));
-    pconfig.logdate = initdate.toISOString().substring(0,10);
-  }
-  var childname = "";
-  if (pconfig.childuuid){
-    var chdata = appdb.dbquery("select prename || ' ' || surname AS childname from childs where uuid='"+ pconfig.childuuid +"'");
-    if (chdata.sqldata.length > 0){
-      childname = chdata.sqldata[0].childname + " - "; 
-    }
-  }
-  set_infoheader(childname + " Date du: " + pconfig.logdate);
-  load_logchild_table();
-  
-}
-
-
-
-
-
-function load_logchild_table(){
-  var mins = initdate.getTimezoneOffset() * -1;//dump("cur timezoneoffset:" + + "\n");
-  if (mins > 0){
-    mins = '+' + mins;
-  }
-  var sqlchilds = "select distinct(ch.uuid) as uuid, ch.prename || ' ' || ch.surname AS childname, ch.checkservicenumber,gr.grpname,'<span style=\"display:none\">' || cl.lastmodified || '</span>' || strftime('%d.%m.%Y %H:%M',cl.lastmodified,'"+mins+" minutes') as lastmodified,cl.editor as editor from childs ch left join planning pl on (ch.uuid=pl.childuuid) left join groups gr on (pl.groupuuid=gr.uuid) left join childslog cl on (ch.uuid=cl.childuuid and logdate=date('"+initdate.toISOString().substring(0,10)+"')) where date('"+ initdate.toISOString().substring(0,10)+"') between pl.datebegin and pl.dateend order by childname;"; 
-  //dump("SQLChilds:" + sqlchilds + "\n");
-  var logdata = appdb.dbquery(sqlchilds);  
-  //dump("load childs Log!\n");
-  var headerdata = getlabels("childname,grpname,lastmodified,editor");
-
-  $("#tbl_logchild").html("");
-  //if (tbllog) {tbllog.destroy();}
-  var tblheader = '<tr>';
-
-  for (var h in headerdata){
-    if ((headerdata[h].keyname == 'act') && (headerdata[h].class.indexOf('action1btn') == -1)){
-      headerdata[h].class +=" action1btn";
-    }
-    if ((pconfig.hidden_columns) && (pconfig.hidden_columns.indexOf(headerdata[h].keyname) != -1)) {
-      if (headerdata[h].class.indexOf('colhidden') == -1) {
-        headerdata[h].class += " colhidden"; 
-      }
-    }else {
-      headerdata[h].class.replace("colhidden","");
-    }
-    tblheader += '<th class="' + headerdata[h].class +'">'+ headerdata[h].title+'</th>';
-
-  }
-  tblheader += '</tr>';
-
-  
-  $("#tbl_logchild").append("<thead>" + tblheader + "</thead>");
-  $("#tbl_logchild").append("<tfoot>" + tblheader + "</tfoot>");
-  $("#tbl_logchild").append("<tbody>");
-  //var curchld = "";
-
-  for (var i in logdata.sqldata){
-    var row = logdata.sqldata[i];
-    var sel = "";
-    if (pconfig.childuuid && row.uuid == pconfig.childuuid) {
-      sel = "selected";
-      load_childlog();
-    }
-        var tr = '<tr data-child="'+ row.uuid+'" class="'+ sel +'">';
-        //tr += '<td class="noprint"></td>';
-        tr += '<td>' + row.childname +'<br/>('+ row.checkservicenumber+ ')'+ "</td>";
-        tr += '<td>' + row.grpname + "</td>";
-        tr += '<td>' + row.lastmodified + "</td>";
-        tr += '<td>' + row.editor + "</td>";
-        tr += "</tr>";
-        $("#tbl_logchild").append(tr);
-    }
-    
-  $("#tbl_logchild").append("</tbody>");
-
-
-  tbllog = $("#tbl_logchild").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "paging":   false,
-        "ordering": true,
-        "bAutoWidth": false,
-        "scrollY": winh + "px",
-        "scrollCollapse": true,
-        "info":     false,
-        "filter": false,
-        "destroy": true,
-      });
-  
-//  $('#tbl_logchild').on( 'search.dt', function () {
-//    pconfig.filter = tbllog.api().search();
-//    apppref.setpreference("pageconfig.logchild",pconfig);
-//  } );
-
-  $('#tbl_logchild').on( 'order.dt', function () {
-    pconfig.order= tbllog.fnSettings().aaSorting;
-    apppref.setpreference("pageconfig.logchild",pconfig);
-  } );
-//  if (pconfig.filter) {
-//    tbllog.fnFilter(pconfig.filter);
-//  }
-  if (pconfig.order) {
-  
-    tbllog.fnSort(pconfig.order);
-  }
-  
-  
-
-$('#tbl_logchild tbody').on( 'click', 'tr', function () {
-        if ( $(this).hasClass('selected') ) {
-           // $(this).removeClass('selected');
-        }
-        else {
-            tbllog.$('tr.selected').removeClass('selected');
-            $(this).addClass('selected');
-            var curchild = $(this).attr('data-child');
-            pconfig.childuuid = curchild;
-            var chsel = appdb.dbquery("select lastmodified,editor from childslog where childuuid='"+pconfig.childuuid+"' and logdate=date('"+initdate.toISOString().substring(0,10)+"');");
-            //dump(JSON.stringify(chsel) + "\n");
-            $("#btnadd").hide();
-           $("#btnedit").hide();
-           $("#btnprotection").hide();
-            if (chsel.sqldata.length > 0){
-               if (chsel.sqldata[0].editor == '' || chsel.sqldata[0].editor == myhostname){
-                   $("#btnedit").show();
-               }
-               if (chsel.sqldata[0].editor != '' && chsel.sqldata[0].editor != myhostname){
-                   $("#btnprotection").show();
-               }
-               
-               
-               load_childlog();        
-            } else {
-               $("#childlogmessage").html("");
-               $("#btnadd").show();
-            }
-            apppref.setpreference("pageconfig.logchild",pconfig);
-            
-        }
-    } );
-}
-
-function load_childlog(){
-  //$("#childlogmessage").summernote('disable');
-  var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-  var childlogsql = "select uuid,logmessage,childuuid,lastmodified,editor from childslog where logdate=date('" + tmpdate + "') and childuuid='"+ pconfig.childuuid+"';";
-  var chdata = appdb.dbquery(childlogsql);
-  $("#btnadd").hide();
-  $("#btnedit").hide();
-  $("#btnprotection").hide();
-  //dump(childlogsql + " -> " +JSON.stringify(chdata) + "\n");
-  $("#childlogmessage").html("");
-  if (chdata.sqldata.length > 0){
-      if (chdata.sqldata[0].editor == '' || chdata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-       }
-       if (chdata.sqldata[0].editor != '' && chdata.sqldata[0].editor != myhostname){
-           $("#btnprotection").show();
-       }
-    //dump("load data from db\n");
-    $("#childloguuid").val(chdata.sqldata[0].uuid);
-    $("#childlogmessage").html(htmlUnescape(chdata.sqldata[0].logmessage));
-  }else {
-       //$("#childlogmessage").html("");
-      $("#btnadd").show();
-  }
-  var childname = "";
-  if (pconfig.childuuid){
-    var chxdata = appdb.dbquery("select prename || ' ' || surname AS childname from childs where uuid='"+ pconfig.childuuid +"'");
-    if (chxdata.sqldata.length > 0){
-      childname = chxdata.sqldata[0].childname + " - "; 
-    }
-  }
-  set_infoheader(childname + " Date du: " + pconfig.logdate);
-}
-
-
-function edit_childlog(){
-    var childlogsql = "select uuid,logmessage,childuuid,editor from childslog where uuid='"+$("#childloguuid").val()+"';";
-    var chdata = appdb.dbquery(childlogsql);
-    if ((chdata.sqldata[0].editor != '') && (chdata.sqldata[0].editor != myhostname)){
-       system.popup("cette fiche d'évaluation est bloqué par l'editeur: " + chdata.sqldata[0].editor);
-       load_logchild_table()();
-       return;
-    }
-    //dump("EDIT: " + JSON.stringify(chdata) + "\n");
-    seteditorhost();
-    if (chdata.sqldata.length > 0){
-       //$('#frmeditchildlog #logmessage').summernote('reset');
-       $('#frmeditchildlog #uuid').val(chdata.sqldata[0].uuid);
-       $('#frmeditchildlog #childuuid').val(chdata.sqldata[0].childuuid);
-       $("#frmeditchildlog #logmessage").summernote('reset');
-       $("#frmeditchildlog #logmessage").summernote('code',htmlUnescape(chdata.sqldata[0].logmessage));
-       //$('#frmeditchildlog #logmessage').val(htmlUnescape(chdata.sqldata[0].logmessage));
-    }
-    $("#edit_childlog").modal('show');
-}
-
-function save_childlog(){
-    var lsql = "";
-    if ($('#frmeditchildlog #uuid').val() == '0'){
-       //new childlog
-       var nuuid = appdb.generate_uuid();
-       $("#childloguuid").val(nuuid);
-       var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-       lsql = "INSERT INTO childslog (uuid,childuuid,logmessage,logdate) VALUES ('"+nuuid+"','"+pconfig.childuuid+"'," + encodeparam($('#frmeditchildlog #logmessage').val(),"richtextarea")+",date('"+tmpdate+"'));";
-    }else {
-       //update childlog;
-       lsql = "UPDATE childslog set logmessage="+encodeparam($('#frmeditchildlog #logmessage').val(),"richtextarea")+" where uuid='"+$("#frmeditchildlog  #uuid").val()+"';";
-    }
-    appdb.dbexec(lsql);
-    removeeditorhost();
-    load_logchild_table();
-    load_childlog();
-    $("#edit_childlog").modal('hide');
-}
-//$('#childlogmessage').on('summernote.focus', function() {
-//     seteditorhost();
-//     $("#childlogmessage").summernote('enable');
-//     });
-//
-//
-//$('#childlogmessage').on('summernote.blur', function() {
-//  //dump("New Data\n");
-//  var lsql = "";
-//  if ($("#childloguuid").val() != "0"){
-//    //UPDATE
-//    lsql = "UPDATE childslog set logmessage="+encodeparam($('#childlogmessage').val(),"richtextarea")+" where uuid='"+$("#childloguuid").val()+"';";
-//    //dump("UPDATE:" + lsql + "\n");
-//  } else {
-//    //INSERT
-//    var nuuid = appdb.generate_uuid();
-//    $("#childloguuid").val(nuuid);
-//    var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-//    lsql = "INSERT INTO childslog (uuid,childuuid,logmessage,logdate) VALUES ('"+nuuid+"','"+pconfig.childuuid+"'," + encodeparam($('#childlogmessage').val(),"richtextarea")+",date('"+tmpdate+"'));";
-//    //dump("INSERT:" + lsql + "\n");
-//  }
-//  appdb.dbexec(lsql);
-//  removeeditorhost();
-//  //load_logchild_table();
-//  
-//});
-
-function addchildlog(){
-    var nuuid = appdb.generate_uuid();
-    var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-    $("#childloguuid").val(nuuid);
-    var lsql = "INSERT INTO childslog (uuid,childuuid,logmessage,logdate) VALUES ('"+nuuid+"','"+pconfig.childuuid+"',null,date('"+tmpdate+"'));";
-    appdb.dbexec(lsql);
-    edit_childlog();
-
-}
-
-
-function set_logdate(){
-      pconfig.logdate =$("#logdate").val();
-      //dump("set_logdate:" + JSON.stringify(pconfig) + "\n");
-      apppref.setpreference("pageconfig.logchild",pconfig);
-      removeeditorhost();
-      globelreq.send_request({
-            page: 'logchild',
-            module: 'logbook',
-            data: null,
-            header: 'Livret d\'évaluation des enfants par date'
-      });
-}
-
-
-function onnextdate() {
-  var tmpmonth = new Date(encodeparam(pconfig.logdate, 'date').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth(), tmpmonth.getDate()+1);
-  pconfig.logdate = nmonth.toISOString().substring(0,10);
-  apppref.setpreference("pageconfig.logchild", pconfig);
-  removeeditorhost();
-  globelreq.send_request({
-    page: 'logchild',
-    module: 'logbook',
-    header: 'Livret d\'évaluation des enfants par date'
-  }, null);
-}
-
-function onpreviousdate() {
-  var tmpmonth = new Date(encodeparam(pconfig.logdate, 'date').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth(), tmpmonth.getDate()-1);
-  pconfig.logdate = nmonth.toISOString().substring(0,10);
-  apppref.setpreference("pageconfig.logchild", pconfig);
-  removeeditorhost();
-  globelreq.send_request({
-    page: 'logchild',
-    module: 'logbook',
-    header: 'Livret d\'évaluation des enfants par date'
-  }, null);
-}
-
-function seteditorhost(){
-       //dump('BLOCK editor '+ myhostname +"->"+ $('#childloguuid').val() +"\n");
-       appdb.dbexec("UPDATE childslog set editor=null where editor='"+myhostname+"';");
-       appdb.dbexec("UPDATE childslog set editor='"+myhostname+"' where uuid='"+$('#childloguuid').val()+"';");
-       //load_logchild_table();
-}
-//
-function removeeditorhost(){
-       appdb.dbexec("UPDATE childslog set editor=null where editor='"+myhostname+"';");
-       //load_logchild_table();
-}
-
-
-
-function confirm_delete_protection(){
-       $("#confirm_delete_protection").modal('show');
-}
-
-function delete_protection(){
-       appdb.dbexec("UPDATE childslog set editor=null where uuid='"+$('#childloguuid').val()+"';");
-       $('#editorhost').html('');
-       $('#btneditorhost').removeClass('btn-danger');
-       $('#btneditorhost').addClass('btn-default');
-       $('#btnprotection').hide();
-       load_logchild_table();
-       $("#confirm_delete_protection").modal('hide');
-}
diff --git a/TODO/modules_todo/logbook/js/logcominterne.js b/TODO/modules_todo/logbook/js/logcominterne.js
deleted file mode 100644 (file)
index e3717ae..0000000
+++ /dev/null
@@ -1,328 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-var winh= window.innerHeight -170;
-var tbllog = null;
-var crecheuuid = null;
-var initdate = new Date();
-var xcurdate = new Date();
-var deluuid = "";
-var amonth = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aôut', 'Septembre', 'Octobre','Novembre', 'Décembre'];
-var myhostname = system.hostname();
-
-function initdata(){
-
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.logcominterne");
-  //dump("cfdata:" + configdata +"\n");
-  if ((configdata) && (configdata !== '')){
-    pconfig = JSON.parse(configdata);
-  }
-
-  pconfig.printlayout = 'book';
-  apppref.setpreference("pageconfig.logcominterne",pconfig);
-
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  var edith = 270;
-  myhostname = system.hostname();
-  //dump("Current Hostname:" + myhostname + "\n");
-  loadtextareas(edith);
-   if (pconfig.logmonth) {
-
-    initdate = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-    $("#logmonth").val(pconfig.logmonth);
-  } else {
-    $("#logmonth").val(initdate.toLocaleFormat('%m.%Y'));
-    
-    pconfig.logmonth=initdate.toLocaleFormat("%m.%Y");
-    apppref.setpreference("pageconfig.logcominterne",pconfig);
-  }
-  var acttitle = "";
-  if (pconfig.activityuuid){
-    var chdata = appdb.dbquery("select logtitle from messagelog where uuid='"+ pconfig.messageuuid +"'");
-    if (chdata.sqldata.length > 0){
-      acttitle = chdata.sqldata[0].logtitle + " - "; 
-    }
-  }
-  if (xcurdate.toLocaleFormat("%m.%Y") == pconfig.logmonth){
-         $('#btnaddmessage').show();
-  } else{
-         $('#btnaddmessage').hide();
-  }
-  set_infoheader(acttitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-  $('#logmonth').on('dp.hide', function(e) {
-    set_logmonth();
-  });
-  $("#btnedit").hide();
-  $("#btnprotection").hide();
-  $("#btndelete").hide();
-  load_logmessage_table();
-  
-}
-
-function seteditorhost(){
-       //dump('BLOCK editor '+ myhostname +"->"+ $('#loguuid').val() +"\n");
-       appdb.dbexec("UPDATE messagelog set editor=null where editor='"+myhostname+"';");
-       appdb.dbexec("UPDATE messagelog set editor='"+myhostname+"' where uuid='"+$('#cominterneloguuid').val()+"';");
-       load_logmessage_table();
-}
-
-function removeeditorhost(){
-       appdb.dbexec("UPDATE messagelog set editor=null where editor='"+myhostname+"';");
-       load_logmessage_table();
-}
-
-
-function load_logmessage_table(){
-  var mins = initdate.getTimezoneOffset() * -1;//dump("cur timezoneoffset:" + + "\n");
-  if (mins > 0){
-    mins = '+' + mins;
-  }
-  var logsql = "SELECT uuid, logtitle,'<span style=\"display:none\">' || logdate || '</span>' || strftime('%d.%m.%Y',logdate) as logdate,'<span style=\"display:none\">' || lastmodified || '</span>' || strftime('%d.%m.%Y %H:%M',lastmodified,'"+mins+" minutes') as lastmodified,editor  FROM messagelog where date(logdate) between date('"+initdate.toLocaleFormat("%Y-%m")+"-01') and date('"+initdate.toLocaleFormat("%Y-%m")+"-01','+1 month','-1 day');";
-  var logdata = appdb.dbquery(logsql);
-  var headerdata = getlabels("subject,daydate,lastmodified,editor");
-  $("#tbl_logcominterne").html("");
-  //tbllog = null;
-  var tblheader = '<tr>';
-
-  for (var h in headerdata){
-    if ((headerdata[h].keyname == 'act') && (headerdata[h].class.indexOf('action1btn') == -1)){
-      headerdata[h].class +=" action1btn";
-    }
-
-    tblheader += '<th class="' + headerdata[h].class +'">'+ headerdata[h].title+'</th>';
-
-  }
-  tblheader += '</tr>';
-
-  
-  $("#tbl_logcominterne").append("<thead>" + tblheader + "</thead>");
-  $("#tbl_logcominterne").append("<tfoot>" + tblheader + "</tfoot>");
-  $("#tbl_logcominterne").append("<tbody>");
-
-  for (var i in logdata.sqldata){
-    var sel = "";
-    var row = logdata.sqldata[i];
-    if (pconfig.messageuuid && row.uuid == pconfig.messageuuid) {
-      sel = "selected";
-      load_messagelog();
-    }
-    
-        var tr = '<tr data-message="'+ row.uuid+'" class="'+ sel+'"><td>' + row.logtitle + '</td>'+
-        '<td>' + row.logdate + '</td>'+
-        '<td>'+ row.lastmodified+'</td>'+
-        '<td>'+ row.editor +'</td>'+
-        '</tr>';
-        
-        $("#tbl_logcominterne").append(tr);
-    }
-    
-  $("#tbl_logcominterne").append("</tbody>");
-
-
-  tbllog = $("#tbl_logcominterne").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "paging":   false,
-        "ordering": true,
-        "bAutoWidth": false,
-        "scrollY": winh + "px",
-        "scrollCollapse": true,
-        "info":     false,
-        "filter": false,
-        "destroy": true,
-      });
-  
-
-
-  $('#tbl_logcominterne').on( 'order.dt', function () {
-    pconfig.order= tbllog.fnSettings().aaSorting;
-    apppref.setpreference("pageconfig.logcominterne",pconfig);
-  } );
-
-  if (pconfig.order) {
-  
-    tbllog.fnSort(pconfig.order);
-  }
-  
-  
-
-$('#tbl_logcominterne tbody').on( 'click', 'tr', function () {
-        //dump("select activity\n");
-        if ( $(this).hasClass('selected') ) {
-           // $(this).removeClass('selected');
-        }
-        else {
-               $("#btnedit").hide();
-         $("#btnprotection").hide();
-         $("#btndelete").hide();
-            tbllog.$('tr.selected').removeClass('selected');
-            $(this).addClass('selected');
-            var curmessage = $(this).attr('data-message');
-            //setforeigneditor($(this).attr('data-editor'));
-            pconfig.messageuuid = curmessage;
-            var cilogsql = "SELECT editor FROM messagelog where uuid='"+ pconfig.messageuuid+"';";
-            var cdata = appdb.dbquery(cilogsql);
-            if (cdata.sqldata[0].editor == '' || cdata.sqldata[0].editor == myhostname){
-                   $("#btnedit").show();
-                   $("#btndelete").show();
-                       }
-                       if (cdata.sqldata[0].editor != '' && cdata.sqldata[0].editor != myhostname){
-                               $("#btnprotection").show();
-                       }
-            apppref.setpreference("pageconfig.logcominterne",pconfig);
-            load_messagelog();
-        }
-    } );
-}
-
-function newlogmessage(){
-  var nuuid = appdb.generate_uuid();
-  var sql = "INSERT INTO messagelog (uuid,logtitle,logdate) VALUES ('"+nuuid+"','nouveau message',date('"+xcurdate.toISOString().substring(0,10)+"'));";
-  //dump(sql + "\n");
-  appdb.dbexec(sql);
-  pconfig.messageuuid=nuuid;
-  apppref.setpreference("pageconfig.logcominterne",pconfig);
-  edit_cominternelog();
-}
-
-function edit_cominternelog(){
-       var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdate) as logdate,  logtitle, logmessage,editor FROM messagelog where uuid='"+ pconfig.messageuuid+"';";
-       var adata = appdb.dbquery(actlogsql);
-    //dump("EDIT: " + JSON.stringify(chdata) + "\n");
-       if ((adata.sqldata[0].editor != '') && (adata.sqldata[0].editor != myhostname)){
-       system.popup("cette communication est bloqué par l'editeur: " + adata.sqldata[0].editor);
-       load_logmessage_table();
-       return;
-       }
-    seteditorhost();
-    if (adata.sqldata.length > 0){
-       $('#frmeditcominterne #loguuid').val(adata.sqldata[0].uuid);
-       $("#frmeditcominterne #logtitle").val(adata.sqldata[0].logtitle);
-    $("#frmeditcominterne #logdate").val(adata.sqldata[0].logdate);
-       $("#frmeditcominterne #logmessage").summernote('reset');
-       $("#frmeditcominterne #logmessage").summernote('code',htmlUnescape(adata.sqldata[0].logmessage));
-    }
-    $("#edit_cominternelog").modal('show');
-}
-
-function load_messagelog(){
-       $("#btnedit").hide();
-         $("#btnprotection").hide();
-         $("#btndelete").hide();
-  var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdate) as logdate,  logtitle, logmessage,editor FROM messagelog where uuid='"+ pconfig.messageuuid+"';";
-  var adata = appdb.dbquery(actlogsql);
-  //dump(childlogsql + " -> " +JSON.stringify(chdata) + "\n");
-  var inftitle = "";
-  if (adata.sqldata.length > 0){
-    //dump("load data from db\n");
-    $("#cominterneloguuid").val(adata.sqldata[0].uuid);
-    $("#cominternelogmessage").html(htmlUnescape(adata.sqldata[0].logmessage));
-    $("#cominternelogtitle").html(adata.sqldata[0].logtitle);
-    $("#cominternelogdate").html(adata.sqldata[0].logdate);
-    if (adata.sqldata[0].editor == '' || adata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-           $("#btndelete").show();
-       }
-       if (adata.sqldata[0].editor != '' && adata.sqldata[0].editor != myhostname){
-           $("#btnprotection").show();
-       }
-    inftitle=adata.sqldata[0].logtitle;
-  }else {
-    //dump("set data to empty fields\n");
-         $("#cominterneloguuid").val('0');
-           $("#cominternelogmessage").html("");
-           $("#cominternelogtitle").html("");
-           $("#cominternelogdate").html("");
-       
-  }
-  
-  set_infoheader(inftitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-
-}
-
-function save_cominternelog(){
-       var ld = encodeparam($("#frmeditcominterne #logdate").val(),"date");
-       $("#cominterneloguuid").val($("#frmeditcominterne #loguuid").val());
-       //var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-       var lsql = "UPDATE messagelog set logtitle="+encodeparam($('#frmeditcominterne #logtitle').val(),"text")+
-       ",logmessage="+encodeparam($('#frmeditcominterne #logmessage').val(),"richtextarea")+
-       ",logdate=date("+ld+") where uuid='"+$("#frmeditcominterne #loguuid").val()+"';";
-       //dump("SV cominterne: "+ lsql + "\n");
-    appdb.dbexec(lsql);
-    removeeditorhost();
-    $("#edit_cominternelog").modal('hide');
-    //load_logmessage_table();
-    load_messagelog();
-    
-}
-
-function confirm_delete_cominterne() {
-
-  deluuid = $("#cominterneloguuid").val();
-  $('#confirm_delete_logcominterne').modal('show');
-}
-
-function delete_logcominterne() {
-  appdb.dbexec("delete from messagelog where uuid='"+ deluuid+"';");
-  load_logmessage_table();
-  $('#confirm_delete_logcominterne').modal('hide');
-}
-
-function onnextmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() + 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logcominterne", pconfig);
-  removeeditorhost();
-  //dump("Next Month:" +JSON.stringify(pconfig) + "\n");
-  globelreq.send_request({
-    page: 'logcominterne',
-    module: 'logbook',
-    header: 'Communication interne'
-  }, null);
-}
-
-function onpreviousmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() - 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logcominterne", pconfig);
-  removeeditorhost();
-  //dump("previous Month:" +JSON.stringify(pconfig) + "\n");
-  globelreq.send_request({
-    page: 'logcominterne',
-    module: 'logbook',
-    header: 'Communication interne'
-  }, null);
-}
-
-function set_logmonth(){
-      pconfig.logmonth =$("#logmonth").val();
-      apppref.setpreference("pageconfig.logcominterne",pconfig);
-      removeeditorhost();
-      //dump("Set Month:" +JSON.stringify(pconfig) + "\n");
-      globelreq.send_request({
-            page: 'logcominterne',
-            module: 'logbook',
-            header: 'Communication interne'
-      });
-}
-
-function confirm_delete_protection(){
-       $("#confirm_delete_protection").modal('show');
-}
-
-function delete_protection(){
-       //dump("DELPROT: UPDATE messagelog set editor=null where uuid='"+$('#loguuid').val()+"';\n");
-       appdb.dbexec("UPDATE messagelog set editor=null where uuid='"+$('#cominterneloguuid').val()+"';");
-       $('#editorhost').html('');
-       $('#btneditorhost').removeClass('btn-danger');
-       $('#btneditorhost').addClass('btn-default');
-       $('#btnprotection').hide();
-       load_logmessage_table();
-       $("#confirm_delete_protection").modal('hide');
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/logbook/js/logcominterne_basic.js b/TODO/modules_todo/logbook/js/logcominterne_basic.js
deleted file mode 100644 (file)
index c2526ff..0000000
+++ /dev/null
@@ -1,296 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-var winh= window.innerHeight -170;
-var tbllog = null;
-var crecheuuid = null;
-var initdate = new Date();
-var xcurdate = new Date();
-var deluuid = "";
-var amonth = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aôut', 'Septembre', 'Octobre','Novembre', 'Décembre'];
-var myhostname = system.hostname();
-
-function initdata(){
-
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.logcominterne");
-  //dump("cfdata:" + configdata +"\n");
-  if ((configdata) && (configdata !== '')){
-    pconfig = JSON.parse(configdata);
-  }
-
-  pconfig.printlayout = 'book';
-  apppref.setpreference("pageconfig.logcominterne",pconfig);
-
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  var edith = 270;
-  myhostname = system.hostname();
-  //dump("Current Hostname:" + myhostname + "\n");
-  loadtextareas(edith);
-   if (pconfig.logmonth) {
-
-    initdate = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-    $("#logmonth").val(pconfig.logmonth);
-  } else {
-    $("#logmonth").val(initdate.toLocaleFormat('%m.%Y'));
-    
-    pconfig.logmonth=initdate.toLocaleFormat("%m.%Y");
-    apppref.setpreference("pageconfig.logcominterne",pconfig);
-  }
-  var acttitle = "";
-  if (pconfig.activityuuid){
-    var chdata = appdb.dbquery("select logtitle from messagelog where uuid='"+ pconfig.messageuuid +"'");
-    if (chdata.sqldata.length > 0){
-      acttitle = chdata.sqldata[0].logtitle + " - "; 
-    }
-  }
-  if (xcurdate.toLocaleFormat("%m.%Y") == pconfig.logmonth){
-         $('#btnaddmessage').show();
-  } else{
-         $('#btnaddmessage').hide();
-  }
-  set_infoheader(acttitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-  $('#logmonth').on('dp.hide', function(e) {
-    set_logmonth();
-  });
-  $("#btnedit").hide();
-  load_logmessage_table();
-  
-}
-
-function seteditorhost(){
-       //dump('BLOCK editor '+ myhostname +"->"+ $('#loguuid').val() +"\n");
-       appdb.dbexec("UPDATE messagelog set editor=null where editor='"+myhostname+"';");
-       appdb.dbexec("UPDATE messagelog set editor='"+myhostname+"' where uuid='"+$('#loguuid').val()+"';");
-       load_logmessage_table();
-}
-
-function removeeditorhost(){
-       appdb.dbexec("UPDATE messagelog set editor=null where editor='"+myhostname+"';");
-       load_logmessage_table();
-}
-
-
-function load_logmessage_table(){
-  var mins = initdate.getTimezoneOffset() * -1;//dump("cur timezoneoffset:" + + "\n");
-  if (mins > 0){
-    mins = '+' + mins;
-  }
-  var logsql = "SELECT uuid, logtitle,'<span style=\"display:none\">' || logdate || '</span>' || strftime('%d.%m.%Y',logdate) as logdate,'<span style=\"display:none\">' || lastmodified || '</span>' || strftime('%d.%m.%Y %H:%M',lastmodified,'"+mins+" minutes') as lastmodified,editor  FROM messagelog where date(logdate) between date('"+initdate.toLocaleFormat("%Y-%m")+"-01') and date('"+initdate.toLocaleFormat("%Y-%m")+"-01','+1 month','-1 day');";
-  var logdata = appdb.dbquery(logsql);
-  var headerdata = getlabels("subject,daydate,lastmodified,editor");
-  $("#tbl_logcominterne").html("");
-  //tbllog = null;
-  var tblheader = '<tr>';
-
-  for (var h in headerdata){
-    if ((headerdata[h].keyname == 'act') && (headerdata[h].class.indexOf('action1btn') == -1)){
-      headerdata[h].class +=" action1btn";
-    }
-
-    tblheader += '<th class="' + headerdata[h].class +'">'+ headerdata[h].title+'</th>';
-
-  }
-  tblheader += '</tr>';
-
-  
-  $("#tbl_logcominterne").append("<thead>" + tblheader + "</thead>");
-  $("#tbl_logcominterne").append("<tfoot>" + tblheader + "</tfoot>");
-  $("#tbl_logcominterne").append("<tbody>");
-
-  for (var i in logdata.sqldata){
-    var sel = "";
-    var row = logdata.sqldata[i];
-    if (pconfig.messageuuid && row.uuid == pconfig.messageuuid) {
-      sel = "selected";
-      load_messagelog();
-    }
-    
-        var tr = '<tr data-message="'+ row.uuid+'" class="'+ sel+'"><td>' + row.logtitle + '</td>'+
-        '<td>' + row.logdate + '</td>'+
-        '<td>'+ row.lastmodified+'</td>'+
-        '<td>'+ row.editor +'</td>'+
-        '</tr>';
-        
-        $("#tbl_logcominterne").append(tr);
-    }
-    
-  $("#tbl_logcominterne").append("</tbody>");
-
-
-  tbllog = $("#tbl_logcominterne").dataTable({
-        "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-        "paging":   false,
-        "ordering": true,
-        "bAutoWidth": false,
-        "scrollY": winh + "px",
-        "scrollCollapse": true,
-        "info":     false,
-        "filter": false,
-        "destroy": true,
-      });
-  
-
-
-  $('#tbl_logcominterne').on( 'order.dt', function () {
-    pconfig.order= tbllog.fnSettings().aaSorting;
-    apppref.setpreference("pageconfig.logcominterne",pconfig);
-  } );
-
-  if (pconfig.order) {
-  
-    tbllog.fnSort(pconfig.order);
-  }
-  
-  
-
-$('#tbl_logcominterne tbody').on( 'click', 'tr', function () {
-        //dump("select activity\n");
-        if ( $(this).hasClass('selected') ) {
-           // $(this).removeClass('selected');
-        }
-        else {
-               $("#btnedit").hide();
-            tbllog.$('tr.selected').removeClass('selected');
-            $(this).addClass('selected');
-            var curmessage = $(this).attr('data-message');
-            //setforeigneditor($(this).attr('data-editor'));
-            pconfig.messageuuid = curmessage;
-            var cilogsql = "SELECT editor FROM messagelog where uuid='"+ pconfig.messageuuid+"';";
-            var cdata = appdb.dbquery(cilogsql);
-            if (cdata.sqldata[0].editor == '' || cdata.sqldata[0].editor == myhostname){
-                   $("#btnedit").show();
-
-                       }
-
-            apppref.setpreference("pageconfig.logcominterne",pconfig);
-            load_messagelog();
-        }
-    } );
-}
-
-function newlogmessage(){
-  var nuuid = appdb.generate_uuid();
-  var sql = "INSERT INTO messagelog (uuid,logtitle,logdate) VALUES ('"+nuuid+"','nouveau message',date('"+xcurdate.toISOString().substring(0,10)+"'));";
-  //dump(sql + "\n");
-  appdb.dbexec(sql);
-  pconfig.messageuuid=nuuid;
-  apppref.setpreference("pageconfig.logcominterne",pconfig);
-  edit_cominternelog();
-}
-
-function edit_cominternelog(){
-       var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdate) as logdate,  logtitle, logmessage,editor FROM messagelog where uuid='"+ pconfig.messageuuid+"';";
-       var adata = appdb.dbquery(actlogsql);
-       if ((adata.sqldata[0].editor != '') && (adata.sqldata[0].editor != myhostname)){
-           system.popup("cette communication est bloqué par l'editeur: " + adata.sqldata[0].editor);
-           load_logmessage_table();
-           return;
-       }
-    //dump("EDIT: " + JSON.stringify(chdata) + "\n");
-    seteditorhost();
-    if (adata.sqldata.length > 0){
-       $('#frmeditcominterne #loguuid').val(adata.sqldata[0].uuid);
-       $("#frmeditcominterne #logtitle").val(adata.sqldata[0].logtitle);
-    $("#frmeditcominterne #logdate").val(adata.sqldata[0].logdate);
-       $("#frmeditcominterne #logmessage").summernote('reset');
-       $("#frmeditcominterne #logmessage").summernote('code',htmlUnescape(adata.sqldata[0].logmessage));
-    }
-    $("#edit_cominternelog").modal('show');
-}
-
-function load_messagelog(){
-       $("#btnedit").hide();
-         $("#btnprotection").hide();
-         $("#btndelete").hide();
-  var actlogsql = "SELECT uuid, strftime('%d.%m.%Y',logdate) as logdate,  logtitle, logmessage,editor FROM messagelog where uuid='"+ pconfig.messageuuid+"';";
-  var adata = appdb.dbquery(actlogsql);
-  //dump(childlogsql + " -> " +JSON.stringify(chdata) + "\n");
-  var inftitle = "";
-  if (adata.sqldata.length > 0){
-    //dump("load data from db\n");
-    $("#cominterneloguuid").val(adata.sqldata[0].uuid);
-    $("#cominternelogmessage").html(htmlUnescape(adata.sqldata[0].logmessage));
-    $("#cominternelogtitle").html(adata.sqldata[0].logtitle);
-    $("#cominternelogdate").html(adata.sqldata[0].logdate);
-    if (adata.sqldata[0].editor == '' || adata.sqldata[0].editor == myhostname){
-           $("#btnedit").show();
-           $("#btndelete").show();
-       }
-       if (adata.sqldata[0].editor != '' && adata.sqldata[0].editor != myhostname){
-           $("#btnprotection").show();
-       }
-    inftitle=adata.sqldata[0].logtitle;
-  }else {
-    //dump("set data to empty fields\n");
-         $("#cominterneloguuid").val('0');
-           $("#cominternelogmessage").html("");
-           $("#cominternelogtitle").html("");
-           $("#cominternelogdate").html("");
-       
-  }
-  
-  set_infoheader(inftitle + " Mois: " + amonth[parseInt(pconfig.logmonth.substring(0, 3))] + " " + pconfig.logmonth.substring(3, 8));
-
-}
-
-function save_cominternelog(){
-       var ld = encodeparam($("#frmeditcominterne #logdate").val(),"date");
-       $("#cominterneloguuid").val($("#frmeditcominterne #loguuid").val());
-       //var tmpdate = encodeparam(pconfig.logdate, 'date').replace(/'/g, '');
-       var lsql = "UPDATE messagelog set logtitle="+encodeparam($('#frmeditcominterne #logtitle').val(),"text")+
-       ",logmessage="+encodeparam($('#frmeditcominterne #logmessage').val(),"richtextarea")+
-       ",logdate=date("+ld+") where uuid='"+$("#frmeditcominterne #loguuid").val()+"';";
-       //dump("SV cominterne: "+ lsql + "\n");
-    appdb.dbexec(lsql);
-    removeeditorhost();
-    $("#edit_cominternelog").modal('hide');
-    //load_logmessage_table();
-    load_messagelog();
-    
-}
-
-function onnextmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() + 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logcominterne", pconfig);
-  removeeditorhost();
-  //dump("Next Month:" +JSON.stringify(pconfig) + "\n");
-  globelreq.send_request({
-    page: 'logcominterne_basic',
-    module: 'logbook',
-    header: 'Communication interne'
-  }, null);
-}
-
-function onpreviousmonth() {
-  var tmpmonth = new Date(encodeparam(pconfig.logmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() - 1, tmpmonth.getDate());
-  pconfig.logmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.logcominterne", pconfig);
-  removeeditorhost();
-  //dump("previous Month:" +JSON.stringify(pconfig) + "\n");
-  globelreq.send_request({
-    page: 'logcominterne_basic',
-    module: 'logbook',
-    header: 'Communication interne'
-  }, null);
-}
-
-function set_logmonth(){
-      pconfig.logmonth =$("#logmonth").val();
-      apppref.setpreference("pageconfig.logcominterne",pconfig);
-      removeeditorhost();
-      //dump("Set Month:" +JSON.stringify(pconfig) + "\n");
-      globelreq.send_request({
-            page: 'logcominterne_basic',
-            module: 'logbook',
-            header: 'Communication interne'
-      });
-}
-
diff --git a/TODO/modules_todo/logbook/js/logstaff.js b/TODO/modules_todo/logbook/js/logstaff.js
deleted file mode 100644 (file)
index 54d0800..0000000
+++ /dev/null
@@ -1 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
\ No newline at end of file
diff --git a/TODO/modules_todo/logbook/logactivity.html b/TODO/modules_todo/logbook/logactivity.html
deleted file mode 100644 (file)
index 41921ea..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Livret des activités</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/summernote.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: 15px;
-    }
-  </style>
-</head>
-
-<body>
-  <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" >
-      <div class="input-group month btn-group">
-            <span class="input-group-addon">du mois:</span>
-            <input type="date" class="form-control" value="" placeholder="mm.yyyy" style="width: 80px;" id="logmonth">
-            <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-          </div>
-            <button class="btn btn-primary" onclick="onpreviousmonth();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-            <button class="btn btn-primary" onclick="onnextmonth();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-      <button class="btn btn-primary" onclick="newlogactivity();"><span class="glyphicon glyphicon-plus"></span> Activité</button>
-    
-   </div>
-   <div>
-    <table style="height: calc(100vh - 100px); width: 100%; ">
-      <tbody>
-        <tr>
-          <td style="width: 550px; vertical-align: top;"><table class="display dataTable cell-border" style="width: 100%;" id="tbl_logactivity" role="grid"></table></td>
-          <td style="vertical-align: top; margin-left: 30px;">
-            <div class="form-inline" style="margin-top: 15px; margin-bottom: 10px; margin-left: 10px;">
-                               <button class="btn btn-success" onclick="edit_activitylog();" id="btnedit"><span class="glyphicon glyphicon-pencil"></span> Ã©diter</button>
-                       <button class="btn btn-danger" onclick="confirm_delete_activity();" id="btndelete"><span class="glyphicon glyphicon-remove"></span> supprimer</button>
-                       <button class="btn btn-warning" onclick="confirm_delete_protection();" id="btnprotection"><span class="glyphicon glyphicon-remove"></span> Protection</button>
-               </div>
-               <input type="hidden" id="activityloguuid" value="0">
-               
-                <div><strong>Titre:</strong> <span  id="activitylogtitle"></span></div>
-                       <div><strong>Date: </strong><span id="activitylogdatefrom"></span> <strong>au</strong> <span id="activitylogdateto"></span></div>
-               
-          <div style="width: 100%; height: calc(100vh - 200px); background-color: #fff; border: 1px solid grey; border-radius: 10px; display: block; overflow-y: auto; padding: 5px; margin: 5px;" id="activitylogmessage"></div></td>
-        </tr>
-      </tbody>
-    </table>
-   </div>
-   <div class="modal fade" id="confirm_delete_logactivity">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Activité</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette activité?<br>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_logactivity();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="confirm_delete_protection">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Protection</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette protection?<br>
-                (possibilité de perdre des données pas sauvegardées)
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_protection();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="edit_activitylog">
-          <div class="modal-dialog"  style="width: 1000px; min-width: 1000px;">
-            <div class="modal-content" >
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer activité</h4>
-              </div>
-              <div class="modal-body" style=" height: 80vh; max-height: height: 80vh; ">
-
-                <div id="frmeditactivitylog">
-                  <input type="hidden" id="loguuid" value="0">
-          <div class="row form-inline" style="margin-left: 30px;">
-                          <label for="logtitle">Titre</label> <input type="text" value="" style="width: 80%;" id="logtitle" class="form-control">
-          </div>
-          <div class="row" style="margin-left: 30px;">
-             <div class="form-inline" id="date-container">
-                          <label for="logdatefrom" style="width: 200px;">Date début / fin</label>
-                          <div id="dt_logdatefrom" class="input-group date">
-                            <input type="date" class="form-control" value="00.00.0000" limits="0" placeholder="dd.mm.yyyy"  id="logdatefrom"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                          </div>
-                        
-                          <div id="dt_logdateto" class="input-group date">
-                            <input type="date" class="form-control" value="00.00.0000" limits="0" placeholder="dd.mm.yyyy" id="logdateto"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                          </div>
-                        </div>
-
-          </div>
-          <textarea class="summernote" type="text" style="width: 100%;" id="logmessage">
-</textarea>
-                                       
-                </div>
-              </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" onclick="removeeditorhost();" class="btn">Annuler</button> <button onclick="save_activitylog();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-   </div>
-   
-  
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../js/summernote.min.js" type="text/javascript"></script>
-  <script src="../../js/lang/summernote-fr-FR.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/logactivity.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/logbook/logactivity_basic.html b/TODO/modules_todo/logbook/logactivity_basic.html
deleted file mode 100644 (file)
index dd519d0..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Livret des activités</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/summernote.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: 15px;
-    }
-  </style>
-</head>
-
-<body>
-  <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" >
-      <div class="input-group month btn-group">
-            <span class="input-group-addon">du mois:</span>
-            <input type="date" class="form-control" value="" placeholder="mm.yyyy" style="width: 80px;" id="logmonth">
-            <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-          </div>
-            <button class="btn btn-primary" onclick="onpreviousmonth();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-            <button class="btn btn-primary" onclick="onnextmonth();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-      <button class="btn btn-primary" onclick="newlogactivity();"><span class="glyphicon glyphicon-plus"></span> Activité</button>
-     
-   </div>
-   <div>
-    <table style="height: calc(100vh - 100px); width: 100%; ">
-      <tbody>
-        <tr>
-          <td style="width: 550px; vertical-align: top;"><table class="display dataTable cell-border" style="width: 100%;" id="tbl_logactivity" role="grid"></table></td>
-          <td style="vertical-align: top; margin-left: 30px;">
-            <div class="form-inline" style="margin-top: 15px; margin-bottom: 10px; margin-left: 10px;">
-                               <button class="btn btn-success" onclick="edit_activitylog();" id="btnedit"><span class="glyphicon glyphicon-pencil"></span> Ã©diter</button>
-                       </div>
-               <input type="hidden" id="activityloguuid" value="0">
-               
-                <div><strong>Titre:</strong> <span  id="activitylogtitle"></span></div>
-                       <div><strong>Date début: </strong><span id="activitylogdatefrom"></span> <strong>au</strong> <span id="activitylogdateto"></span></div>
-               
-          <div style="width: 100%; height: calc(100vh - 200px); background-color: #fff; border: 1px solid grey; border-radius: 10px; display: block; overflow-y: auto; padding: 5px; margin: 5px;" id="activitylogmessage"></div></td>
-        </tr>
-      </tbody>
-    </table>
-   </div>
-  <div class="modal fade" id="edit_activitylog">
-          <div class="modal-dialog"  style="width: 1000px; min-width: 1000px;">
-            <div class="modal-content" >
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer activité</h4>
-              </div>
-              <div class="modal-body" style=" height: 80vh; max-height: height: 80vh; ">
-
-                <div id="frmeditactivitylog">
-                  <input type="hidden" id="loguuid" value="0">
-          <div class="row form-inline" style="margin-left: 30px;">
-                          <label for="logtitle">Titre</label> <input type="text" value="" style="width: 80%;" id="logtitle" class="form-control">
-          </div>
-          <div class="row" style="margin-left: 30px;">
-             <div class="form-inline" id="date-container">
-                          <label for="logdatefrom" style="width: 200px;">Date début / fin</label>
-                          <div id="dt_logdatefrom" class="input-group date">
-                            <input type="date" class="form-control" value="00.00.0000" limits="0" placeholder="dd.mm.yyyy"  id="logdatefrom"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                          </div>
-                        
-                          <div id="dt_logdateto" class="input-group date">
-                            <input type="date" class="form-control" value="00.00.0000" limits="0" placeholder="dd.mm.yyyy" id="logdateto"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                          </div>
-                        </div>
-
-          </div>
-          <textarea class="summernote" type="text"  style="width: 100%;" id="logmessage">
-</textarea>
-                                       
-                </div>
-              </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" onclick="removeeditorhost();" class="btn">Annuler</button> <button onclick="save_activitylog();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-   </div>
-   </div>
-   
-  
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../js/summernote.min.js" type="text/javascript"></script>
-  <script src="../../js/lang/summernote-fr-FR.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/logactivity.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/logbook/logbook.xul b/TODO/modules_todo/logbook/logbook.xul
deleted file mode 100644 (file)
index 559a5b5..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE overlay PUBLIC "-//MOZILLA//DTD XUL V1.0//EN"
-"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<overlay id="ov_logbook" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
-  <toolbar id="co_maintoolbar" style="-moz-appearance: none;">
-    <toolbarbutton type="menu" class="btn btn-default" id="tbb_logbook" insertafter="tbb_forms" label="Livrets de bord" image="modules/logbook/img/logbook.png" orient="vertical">
-    <menupopup class="tlbpopup" style="text-align: left;">
-      
-      <label value="Enfants" style="font-weight: bold;"/>
-      <menuitem label="Livret d'évaluation par date" oncommand="navigation.load_appview('logchild','logbook',null,'Livret d Ã©valuation des enfants par date');"  id="mnulogchild"/>
-      <menuseparator />
-      <label value="Crèche" style="font-weight: bold;"/>
-      <menuitem label="Livret des activités" oncommand="navigation.load_appview('logactivity','logbook',null,'Livret des activités');"  id="mnulogactivity"/>
-      <menuitem label="Communication Interne" oncommand="navigation.load_appview('logcominterne','logbook',null,'Communication Interne');"  id="mnulogmessage"/>
-      
-    </menupopup>
-    </toolbarbutton>
-  </toolbar>
-</overlay>
\ No newline at end of file
diff --git a/TODO/modules_todo/logbook/logbook_basic.xul b/TODO/modules_todo/logbook/logbook_basic.xul
deleted file mode 100644 (file)
index 802382e..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE overlay PUBLIC "-//MOZILLA//DTD XUL V1.0//EN"
-"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<overlay id="ov_logbook" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
-  <toolbar id="co_maintoolbar" style="-moz-appearance: none;">
-    <toolbarbutton type="menu" class="btn btn-default" id="tbb_logbook" insertafter="tbb_forms" label="Livrets de bord" image="modules/logbook/img/logbook.png" orient="vertical">
-    <menupopup class="tlbpopup" style="text-align: left;">
-      
-      <label value="Enfants" style="font-weight: bold;"/>
-      <menuitem label="Livret d'évaluation par date" oncommand="navigation.load_appview('logchild','logbook',null,'Livret d Ã©valuation des enfants par date');"  id="mnulogchild"/>
-      <menuseparator />
-      <label value="Crèche" style="font-weight: bold;"/>
-      <menuitem label="Livret des activités" oncommand="navigation.load_appview('logactivity_basic','logbook',null,'Livret des activités');"  id="mnulogactivity"/>
-      <menuitem label="Communication Interne" oncommand="navigation.load_appview('logcominterne_basic','logbook',null,'Communication Interne');"  id="mnulogmessage"/>
-    </menupopup>
-    </toolbarbutton>
-  </toolbar>
-</overlay>
\ No newline at end of file
diff --git a/TODO/modules_todo/logbook/logchild.html b/TODO/modules_todo/logbook/logchild.html
deleted file mode 100644 (file)
index cc093e6..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Livret d'évaluation des enfants</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/summernote.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: 15px;
-    }
-  </style>
-</head>
-
-<body>
-  <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" >
-      <div class="input-group date btn-group">
-            <span class="input-group-addon">date du:</span>
-            <input type="date" class="form-control" value="" placeholder="dd.mm.yyyy" style="width: 120px;" id="logdate" onchange="set_logdate();">
-            <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-          </div>
-          <button class="btn btn-primary" onclick="onpreviousdate();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-          <button class="btn btn-primary" onclick="onnextdate();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-          <!--<button class="btn btn-default" id="btneditorhost">Editeur: <span id="editorhost"></span></button>
-          <button class="btn btn-danger" id="btnprotection" onclick="confirm_delete_protection();" style="display: none;"><span class="glyphicon glyphicon-remove"></span> protection</button>-->
-   </div>
-   <div>
-    <table style="height: calc(100vh - 100px); width: 100%;">
-      <tbody>
-        <tr>
-          <td style="width: 600px; vertical-align: top; padding-top: 0px;"><table class="display dataTable cell-border" style="width: 100%;" id="tbl_logchild" role="grid"></table></td>
-          <td style="vertical-align: top; padding-top: 0px; ">
-               <input type="hidden" id="childloguuid" value="0">
-               <div class="form-inline" style="margin-top: 15px; margin-bottom: 10px; margin-left: 10px;">
-                       <button class="btn btn-primary" onclick="addchildlog();" id="btnadd"><span class="glyphicon glyphicon-plus"></span> ajouter</button>
-                       <button class="btn btn-success" onclick="edit_childlog();" id="btnedit"><span class="glyphicon glyphicon-pencil"></span> Ã©diter</button>
-                       <button class="btn btn-warning" onclick="confirm_delete_protection();" id="btnprotection"><span class="glyphicon glyphicon-remove"></span> Protection</button>
-               </div>
-               <div   style="width: 100%; height: calc(100vh - 150px); background-color: #fff; border: 1px solid grey; border-radius: 10px; display: block; overflow-y: auto; padding: 5px; margin: 5px;" id="childlogmessage"></div>
-          </td>
-        </tr>
-      </tbody>
-    </table>
-    
-   </div>
-   <div class="modal fade" id="confirm_delete_protection">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Protection</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette protection?<br>
-                (possibilité de perdre des données pas sauvegardées)
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_protection();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="edit_childlog">
-          <div class="modal-dialog"  style="width: 1000px; min-width: 1000px;">
-            <div class="modal-content" >
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer livret d'évaluation</h4>
-              </div>
-              <div class="modal-body" style=" height: 700px; max-height: 700px ">
-
-                <div id="frmeditchildlog">
-                  <input type="hidden" value="0" id="uuid" />
-                  <input type="hidden" value="0" id="childuuid" />
-                  <textarea style="height: 600px;" class="summernote" type="text"  id="logmessage"></textarea>
-                                       
-                </div>
-              </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" onclick="removeeditorhost();" class="btn">Annuler</button> <button onclick="save_childlog();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-   </div>
-  
-  
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../js/summernote.min.js" type="text/javascript"></script>
-  <script src="../../js/lang/summernote-fr-FR.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/logchild.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/logbook/logcominterne.html b/TODO/modules_todo/logbook/logcominterne.html
deleted file mode 100644 (file)
index 475cb78..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Communication interne</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/summernote.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: 15px;
-    }
-  </style>
-</head>
-
-<body>
-  <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" >
-      <div class="input-group month btn-group">
-            <span class="input-group-addon">du mois:</span>
-            <input type="date" class="form-control" value="" placeholder="mm.yyyy" style="width: 80px;" id="logmonth">
-            <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-          </div>
-            <button class="btn btn-primary" onclick="onpreviousmonth();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-            <button class="btn btn-primary" onclick="onnextmonth();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-      <button class="btn btn-primary" onclick="newlogmessage();" id="btnaddmessage"><span class="glyphicon glyphicon-plus"></span> Message</button>
-         <!--<button class="btn btn-default" id="btneditorhost">Editeur: <span id="editorhost"></span></button>
-         <button class="btn btn-danger" id="btnprotection" onclick="confirm_delete_protection();" style="display: none;"><span class="glyphicon glyphicon-remove"></span> protection</button>-->
-   </div>
-   <div>
-    <table style="height: calc(100vh - 100px); width: 100%; ">
-      <tbody>
-        <tr>
-          <td style="width: 550px; vertical-align: top;"><table class="display dataTable cell-border" style="width: 100%;" id="tbl_logcominterne" role="grid"></table></td>
-          <td style="vertical-align: top; margin-left: 30px;">
-               <div class="form-inline" style="margin-top: 15px; margin-bottom: 10px; margin-left: 10px;">
-                               <button class="btn btn-success" onclick="edit_cominternelog();" id="btnedit"><span class="glyphicon glyphicon-pencil"></span> Ã©diter</button>
-                       <button class="btn btn-danger" onclick="confirm_delete_cominterne();" id="btndelete"><span class="glyphicon glyphicon-remove"></span> supprimer</button>
-                       <button class="btn btn-warning" onclick="confirm_delete_protection();" id="btnprotection"><span class="glyphicon glyphicon-remove"></span> Protection</button>
-               </div>
-               <input type="hidden" id="cominterneloguuid" value="0">
-               <div><strong>Titre:</strong> <span  id="cominternelogtitle"></span></div>
-                       <div><strong>Date: </strong><span id="cominternelogdate"></span></div>
-               
-          <div style="width: 100%; height: calc(100vh - 200px); background-color: #fff; border: 1px solid grey; border-radius: 10px; display: block; overflow-y: auto; padding: 5px; margin: 5px;" id="cominternelogmessage"></div>
-          
-          </td>
-        </tr>
-      </tbody>
-    </table>
-   </div>
-   <div class="modal fade" id="confirm_delete_logcominterne">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Message</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer ce message?<br>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_logcominterne();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="confirm_delete_protection">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Protection</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette protection?<br>
-                (possibilité de perdre des données pas sauvegardées)
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_protection();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="edit_cominternelog">
-          <div class="modal-dialog"  style="width: 1000px; min-width: 1000px;">
-            <div class="modal-content" >
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer communication</h4>
-              </div>
-              <div class="modal-body" style=" height: 80vh; max-height:80vh;height:80vh;">
-
-                <div id="frmeditcominterne">
-                  <input type="hidden" id="loguuid" value="0">
-          <div class="row form-inline" style="margin-left: 30px;">
-                          <label for="logtitle">Titre</label> <input type="text" value=""  style="width: 80%;" id="logtitle" class="form-control">
-          </div>
-          <div class="row" style="margin-left: 30px;">
-             <div class="form-inline" id="date-container">
-                          <label for="logtimestamp" style="width: 100px;">Date</label>
-                          <div id="dt_logdate" class="input-group date">
-                            <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="logdate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                          </div>
-                        
-                          
-                        </div>
-
-          </div>
-          <textarea class="summernote"  style="width: 100%;" id="logmessage">
-</textarea>
-                                       
-                </div>
-              </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" onclick="removeeditorhost();" class="btn">Annuler</button> <button onclick="save_cominternelog();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-   </div>
-   
-  
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../js/summernote.min.js" type="text/javascript"></script>
-  <script src="../../js/lang/summernote-fr-FR.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/logcominterne.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/logbook/logcominterne_basic.html b/TODO/modules_todo/logbook/logcominterne_basic.html
deleted file mode 100644 (file)
index a308381..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Communication interne</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/summernote.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <style type="text/css">
-    .dataTables_filter {
-      margin-top: 15px;
-    }
-  </style>
-</head>
-
-<body>
-  <div class="container-fluid"  style="padding-top: 5px;">
-    <div class="form-inline" >
-      <div class="input-group month btn-group">
-            <span class="input-group-addon">du mois:</span>
-            <input type="date" class="form-control" value="" placeholder="mm.yyyy" style="width: 80px;" id="logmonth">
-            <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-          </div>
-            <button class="btn btn-primary" onclick="onpreviousmonth();"><span class="glyphicon glyphicon-chevron-left"></span></button>
-            <button class="btn btn-primary" onclick="onnextmonth();"><span class="glyphicon glyphicon-chevron-right"></span></button>
-      <button class="btn btn-primary" onclick="newlogmessage();" id="btnaddmessage"><span class="glyphicon glyphicon-plus"></span> Message</button>
-         <!--<button class="btn btn-default" id="btneditorhost">Editeur: <span id="editorhost"></span></button>
-         <button class="btn btn-danger" id="btnprotection" onclick="confirm_delete_protection();" style="display: none;"><span class="glyphicon glyphicon-remove"></span> protection</button>-->
-   </div>
-   <div>
-    <table style="height: calc(100vh - 100px); width: 100%; ">
-      <tbody>
-        <tr>
-          <td style="width: 550px; vertical-align: top;"><table class="display dataTable cell-border" style="width: 100%;" id="tbl_logcominterne" role="grid"></table></td>
-          <td style="vertical-align: top; margin-left: 30px;">
-               <div class="form-inline" style="margin-top: 15px; margin-bottom: 10px; margin-left: 10px;">
-                               <button class="btn btn-success" onclick="edit_cominternelog();" id="btnedit"><span class="glyphicon glyphicon-pencil"></span> Ã©diter</button>
-                       </div>
-               <input type="hidden" id="cominterneloguuid" value="0">
-               <div><strong>Titre:</strong> <span  id="cominternelogtitle"></span></div>
-                       <div><strong>Date: </strong><span id="cominternelogdate"></span></div>
-               
-          <div style="width: 100%; height: calc(100vh - 200px); background-color: #fff; border: 1px solid grey; border-radius: 10px; display: block; overflow-y: auto; padding: 5px; margin: 5px;" id="cominternelogmessage"></div>
-          
-          </td>
-        </tr>
-      </tbody>
-    </table>
-   </div>
-   <div class="modal fade" id="confirm_delete_logcominterne">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Message</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer ce message?<br>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_logcominterne();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="confirm_delete_protection">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Protection</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette protection?<br>
-                (possibilité de perdre des données pas sauvegardées)
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_protection();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <div class="modal fade" id="edit_cominternelog">
-          <div class="modal-dialog"  style="width: 1000px; min-width: 1000px;">
-            <div class="modal-content" >
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer communication</h4>
-              </div>
-              <div class="modal-body" style=" height: 80vh; max-height: height: 80vh; ">
-
-                <div id="frmeditcominterne">
-                  <input type="hidden" id="loguuid" value="0">
-          <div class="row form-inline" style="margin-left: 30px;">
-                          <label for="logtitle">Titre</label> <input type="text" value=""  style="width: 80%;" id="logtitle" class="form-control">
-          </div>
-          <div class="row" style="margin-left: 30px;">
-             <div class="form-inline" id="date-container">
-                          <label for="logtimestamp" style="width: 100px;">Date</label>
-                          <div id="dt_logdate" class="input-group date">
-                            <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="logdate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                          </div>
-                        
-                          
-                        </div>
-
-          </div>
-          <textarea class="summernote"  style="width: 100%;" id="logmessage">
-</textarea>
-                                       
-                </div>
-              </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" onclick="removeeditorhost();" class="btn">Annuler</button> <button onclick="save_cominternelog();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-   </div>
-   
-  
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="../../js/summernote.min.js" type="text/javascript"></script>
-  <script src="../../js/lang/summernote-fr-FR.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/logcominterne.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/logbook/logstaff.html b/TODO/modules_todo/logbook/logstaff.html
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/TODO/modules_todo/monthly/accounting.html b/TODO/modules_todo/monthly/accounting.html
deleted file mode 100644 (file)
index 5e0e6c7..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Décompte</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <!--<link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../vendor/bootstrap-table/bootstrap-table.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-  <!-- <style type="text/css">
-    .dataTables_filter {
-      margin-top: -30px;
-    }
-  </style> -->
-</head>
-
-<body>
-  <div class="container-fluid" style="padding-top: 5px;">
-    <div class="form-inline" id="mnuacc">
-      <div class="input-group month">
-        <span class="input-group-addon">du mois:</span>
-          <input type="date" class="form-control" value="" placeholder="mm.yyyy" style="width: 80px;" id="accmonth" onchange="set_accmonth();">
-        <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-      </div>
-      <button class="btn btn-primary" onclick="onpreviousmonth();" ><span class="glyphicon glyphicon-chevron-left"></span></button>
-      <button class="btn btn-primary" onclick="onnextmonth();" ><span class="glyphicon glyphicon-chevron-right"></span></button>
-      
-      <button class="btn btn-primary" onclick="generatecsv();" ><span class="glyphicons glyphicons-file-export"></span>&nbsp;Export CSV Check-Service</button>
-      <button class="btn btn-info" onclick="openmonthlypdf();" style="display: none;" id="monthlypdf"><span class="glyphicons glyphicons-file"></span>&nbsp;PDF des Factures importées et triées</button>
-      <button class="btn btn-info" onclick="window.print();"><span class="glyphicons glyphicons-print"></span>Imprimer</button>
-      <!--<div class="input-group">
-        <div class="input-group-addon">Colonnes <span class="glyphicons glyphicons-eye-close" aria-hidden="true"></span></div>
-        <select id="hidden_columns" multiple="multiple" onchange="onhidecolumn(this.id);">
-        </select>
-      </div>-->
-    </div>
-    <div>
-      <table class="table table-bordered table-hover table-striped" data-style="width: 100%;" id="tbl_accounting" style="margin-top: -40px;">
-        <thead>
-          <tr>
-            <th data-sortable="true">No. Client</th>
-            <th data-sortable="true">No. Check Service</th>
-            <th data-sortable="true">Enfant</th>
-            <th data-sortable="true">Référence</th>
-            <th class="alignright" data-sortable="true">facturé â‚¬</th>
-            <th class="alignright" data-sortable="true">payé â‚¬</th>
-            <th class="alignright" data-sortable="true">prestation â‚¬</th>
-            <th class="noprint action1btn"></th>
-          </tr>
-          </thead>
-        <tbody></tbody>
-        <tfoot></tfoot>
-      </table>
-    </div>
-   </div>
-  <div class="modal fade" id="edit_accounting">
-          <div class="modal-dialog" style="width: 850px; max-width: 850px;">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer facture</h4>
-              </div>
-              <div class="modal-body" style="max-height: calc(100vh - 200px);overflow-y: auto; ">
-
-                <div id="frmeditaccounting">
-                  <input type="hidden" value="0" id="uuid" />
-                  <input type="hidden" value="" id="action" />
-                  <input type="hidden" value="" id="childuuid" />
-                    <div class="form-group">
-                      <label for="name">Enfant</label>
-                      <input type="text" value="" id="childname"  nullable="true" readonly="true" class="form-control">
-                    </div>
-                  <div class="form-group">
-                    <label for="name">Référence</label>
-                    <input type="text" value="" id="reference"  nullable="true" class="form-control">
-                  </div>
-                  <div class="form-group">
-                    <label for="invoicefile">Fichier</label>
-                    <input type="file" value="" id="invoicefile" nullable="true" accept=".pdf" class="form-control" disabled="1">
-                  </div>
-                  <div class="form-group col-md-6" id="date-container">
-                    <label for="invoicedate">Date de la Facture</label>
-
-                    <div id="dt_invoicedate" class="input-group date">
-                      <input type="date" class="form-control" value="" placeholder="dd.mm.yyyy"  id="invoicedate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="form-group col-md-6">
-                  <label for="invoiceamount">Somme facturé</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="invoiceamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                  <div class="form-group col-md-6" id="date-container">
-                    <label for="payeddate">Date du Payement</label>
-
-                    <div id="dt_payeddate" class="input-group date">
-                      <input type="date" class="form-control" value="" widgetpos="top" placeholder="dd.mm.yyyy"  id="payeddate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="form-group col-md-6">
-                  <label for="payedamount">Somme payé</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="payedamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                <div class="form-group col-md-12">
-                  <label for="payedamount">Somme prestation Check-Service</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="benefitamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate1">Date Rappel 1</label>
-
-                    <div id="dt_reminderdate1" class="input-group date">
-                      <input type="date" class="form-control" value="" widgetpos="top" placeholder="dd.mm.yyyy"  id="reminderdate1"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate2">Date Rappel 2</label>
-
-                    <div id="dt_reminderdate2" class="input-group date">
-                      <input type="date" class="form-control" value="" widgetpos="top" placeholder="dd.mm.yyyy"  id="reminderdate2"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate3">Date Rappel 3</label>
-
-                    <div id="dt_reminderdate3" class="input-group date">
-                      <input type="date" class="form-control" value="" widgetpos="top" placeholder="dd.mm.yyyy"  id="reminderdate3"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                </div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="save_accounting();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-          </div>
-  <div class="modal fade" id="confirm_delete_accounting">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Décompte</h4>
-              </div><!-- dialog contents -->
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer ce décompte de facturation, payement et/ou prestation?<br>
-                
-              </div><!-- dialog buttons -->
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_accounting();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-  </div>
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/datatables.min.js" type="text/javascript"></script> -->
-  <script src="../../vendor/bootstrap-table/bootstrap-table.min.js" type="text/javascript"></script>
-  <script src="../../vendor/bootstrap-table/locale/bootstrap-table-fr-FR.js" type="text/javascript"></script> 
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/accounting.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/monthly/js/accounting.js b/TODO/modules_todo/monthly/js/accounting.js
deleted file mode 100644 (file)
index f5eb071..0000000
+++ /dev/null
@@ -1,433 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg ) 
-
-var pconfig = {};
-var cdate = null;
-var initdate = new Date();
-initdate.setDate(1);
-var winh= window.innerHeight -50;
-//var tblacc = null;
-var curchilduuid = '';
-var crecheuuid = null;
-var ccreche = null
-var importpath = null;
-var cweeks = new Array();
-var delacc = {};
-var numchilds = 0;
-var strminweek = null;
-var monthmin = null;
-var monthmax = null;
-var mpdffile = null;
-var aax = ['mon','tue','wed','thu','fri','sat'];
-//var lictype = apppref.getpreference("support.lictype"); 
-var amonth = ['','Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Aôut','Septembre','Octobre','Novembre','Décembre'];
-function initdata(){
-  curcfg.loadconfig(apppref.getpreference("support.database.currentdb.num"));
-  check_accountingtable();
-  load_helpers();
-
-  var configdata = apppref.getpreference("pageconfig.accounting");
-  
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  
-  if (!pconfig.printlayout) {
-    pconfig.printlayout = 'list';
-    apppref.setpreference("pageconfig.accounting",pconfig);
-  }
-  ccreche = appdb.dbquery("select uuid,idcheckservice from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  importpath = FileUtils.File(curcfg.path.local  + system.sep() +"imports" + system.sep() + crecheuuid);
-  
-  if (pconfig.accmonth) {
-    
-    initdate = new Date(encodeparam(pconfig.accmonth, 'month').replace(/'/g, ''));
-    $("#accmonth").val(pconfig.accmonth);
-  }else {
-    $("#accmonth").val(initdate.toLocaleFormat('%m.%Y'));
-    pconfig.accmonth=initdate.toLocaleFormat('%m.%Y');
-  }
-  cdate = initdate.toISOString().substring(0,10);
-  var cmonth = initdate.getMonth() +1;
-  mpdffile = system.getDirectory(appdb.dbFile.path) +  system.sep() + 'imports' + system.sep() + crecheuuid +system.sep() + initdate.getFullYear() + "." + cmonth + ".pdf"; 
-       if (system.fileexists(mpdffile)){
-               $("#monthlypdf").show();
-       }
-  set_infoheader(amonth[parseInt(pconfig.accmonth.substring(0,2))] + " " + pconfig.accmonth.substring(3,8));
-  load_accounting_table();
-  var bfile = appdb.dbquery("select benefitfile from accounting where accmonth = date('"+pconfig.accmonth+"') group by benefitfile LIMIT 1;");
-  if (bfile.sqldata.length == 1) {
-    $('#mnuacc').append("<button type=\"button\" class=\"btn btn-primary\" onclick=\"openfile('"+ bfile.sqldata[0].benefitfile +"');\" title=\"editer\"><span class=\"glyphicon glyphicon-open\"></span> fichier des prestations</button>");
-  }
-  $("#accmonth").on("dp.hide", function (e) {
-    set_accmonth();
-  });
-
-}
-
-function load_accounting_table(){
-
-  //var accyear = pconfig.accmonth.substring(3,7);
-  
-
-  
-  var accsql = "select acc.childuuid,ch.clientnumber,ch.checkservicenumber,ch.prename || ' ' || ch.surname as childname, " + 
-  "coalesce(printf(\"%.2f â‚¬\",acc.invoiceamount), 0.00) || coalesce (strftime('<br/> %d.%m.%Y', acc.invoicedate), '') || coalesce(', R1: ' || strftime('%d.%m.%Y', acc.reminderdate1),'') || coalesce(', R2: ' || strftime('%d.%m.%Y', acc.reminderdate2),'') || coalesce(', R3: ' || strftime('%d.%m.%Y', acc.reminderdate3),'') as invoiced," +
-    "acc.reference, coalesce(printf(\"%.2f â‚¬\", acc.payedamount), 0.00) || coalesce (strftime('<br/> %d.%m.%Y', acc.payeddate), '') as payement, coalesce(printf(\"%.2f â‚¬\", acc.benefitamount), 0.00) as benefitamount," +
-    "'<button type=\"button\" class=\"btn btn-primary\" onclick=\"dlg_accounting(''' || acc.uuid || ''');\" title=\"editer\"><span class=\"glyphicon glyphicon-pencil\"></span></button>' || CASE WHEN acc.invoicefile IS NOT NULL and acc.invoicefile != '' THEN '<button type=\"button\" class=\"btn btn-info\" onclick=\"openfile(''' || acc.uuid || ''');\"  title=\"editer\"><span class=\"glyphicon glyphicon-open\"></span>' else '' end || CASE WHEN acc.childuuid IS NOT NULL AND acc.accmonth IS NOT NULL THEN '<button type=\"button\" class=\"btn btn-danger\" onclick=\"confirm_delete_accounting(''' || acc.uuid || ''');\" title=\"supprimer\"><span class=\"glyphicon glyphicon-remove\"></span></button>' ELSE '' END AS act from accounting acc join childs ch on (acc.childuuid = ch.uuid) where acc.invoicedate between date('" + initdate.toISOString().substring(0,10)+ "') and date('" + initdate.toISOString().substring(0,10)+ "','+1 month','-1 day');";
-  //jsdump("ACCMONTH " + accsql);
-  var accdata = appdb.dbquery(accsql);
-  //jsdump(accdata);
-  //numchilds = accdata.sqldata.length;
-  var headerdata = [];
-  headerdata = getlabelswithkey("clientnumber,checkservicenumber,childname,reference,invoiced,payement,benefitamount,act");
-  //monthtotalhourcosts,monthtotallunchcosts,monthtotalcosts,
-  $("#tbl_accounting > tbody").html("");
-  //var hrow = [];
-  //hrow = headerdata;
-  //var tdclass= new Array();
-  // var tblheader = '<tr>';
-  // //dump("Headerdata:" + JSON.stringify(headerdata) + "\n")
-  // for (var h in headerdata){
-  //   if ((headerdata[h].keyname == 'act') && (headerdata[h].class.indexOf('action1btn') == -1)){
-  //     headerdata[h].class +=" action1btn";
-  //   }
-  //   //if ((pconfig.hidden_columns) && (pconfig.hidden_columns.indexOf(headerdata[h].keyname) != -1)) {
-  //   //  if (headerdata[h].class.indexOf('colhidden') == -1) {
-  //   //    headerdata[h].class += " colhidden"; 
-  //   //  }
-  //   //}else {
-  //     headerdata[h].class.replace("colhidden","");
-  //   //}
-  //   tblheader += '<th class="' + headerdata[h].class +'" data-sortable="true">'+ headerdata[h].title+'</th>';
-
-  // }
-  // tblheader += '</tr>';
-  // //tblh0 += '</tr>';
-  // tblacc = null;
-  //jsdump("\n\nTBL header: " + tblheader + "\n\n\n");
-  // $("#tbl_accounting > thead").append(tblheader);
-  
-
-  //$("#tbl_accounting").append("<tbody>");
-  var curchld = "";
-
-  
-  for (var i in accdata.sqldata){
-    var row = accdata.sqldata[i];
-    
-        var tr = '<tr>';
-        tr += '<td>' + row.clientnumber + '</td>';
-        tr += '<td>' + row.checkservicenumber + '</td>';
-        tr += '<td>' + row.childname + '</td>';
-        tr += '<td>' + row.reference + '</td>';
-        tr += '<td class="alignright ">' + row.invoiced + '</td>';
-        tr += '<td class="alignright ">' + row.payement + '</td>';
-        tr += '<td class="alignright totalwidth ">' + row.benefitamount + '</td>';
-        tr += '<td class="noprint">' + row.act + '</td></tr>';
-        $("#tbl_accounting > tbody").append(tr);
-
-    }
-
-  $("#tbl_accounting").bootstrapTable({
-    locale: 'fr-FR',
-    pagination: false,
-    search: true,
-    height: winh,
-    toolbar: "#mnuacc"
-  });
-
-}
-
-function getdaterangesql(xmonthmin,xmonthmax){
-         var adays = [];
-         
-         var bdate = new Date(xmonthmin);
-         var bend = new Date(xmonthmax);
-         for (var cdt = bdate; cdt <= bend; cdt.setDate(cdt.getDate() + 1)) {
-           if ((cdt.getDay() !== 0) ){
-             adays.push("select date('" + cdt.toISOString().substring(0,10) + "') as daydate");
-           }
-           
-         }
-         return adays.join(" UNION ");
-       }
-
-
-function set_accmonth(){
-  pconfig.accmonth = $('#accmonth').val();
-
-  apppref.setpreference("pageconfig.accounting",pconfig);
-      globelreq.send_request({
-            page: 'accounting',
-            module: 'accounting',
-            data: null,
-            header: 'Décompte par mois'
-      });
-}
-
-function confirm_delete_accounting(duuid) {
-  delacc.uuid = duuid;
-  $('#confirm_delete_accounting').modal('show');
-}
-
-function delete_accounting() {
-  var xsql = "DELETE FROM accounting where uuid='"+ delacc.uuid+"';";
-
-  appdb.dbexec(xsql);
-  load_accounting_table();
-  delacc ={};
-  
-  $('#confirm_delete_accounting').modal('hide');
-}
-
-function dlg_accounting(myuuid){
-  
-  //alert("TEST");
-  var acc1sql = "SELECT acc.uuid,acc.accmonth,ch.uuid as childuuid,COALESCE( ch.prename, '' ) || ' ' || COALESCE( ch.surname, '' ) || '(' || ch.checkservicenumber || ')' AS childname,case when acc.invoicedate is not null then strftime('%d.%m.%Y',acc.invoicedate) else null end as invoicedate, case when acc.payeddate is not null then strftime('%d.%m.%Y',acc.payeddate) else null end as payeddate, payedamount, invoiceamount,benefitamount, case when acc.reminderdate1 is not null then strftime('%d.%m.%Y',acc.reminderdate1) else null end as reminderdate1, case when acc.reminderdate2 is not null then strftime('%d.%m.%Y',acc.reminderdate2) else null end as reminderdate2, case when acc.reminderdate3 is not null then strftime('%d.%m.%Y',acc.reminderdate3) else null end as reminderdate3, case when acc.invoicefile is not null and acc.invoicefile != '' then '"+ importpath.path + system.sep() +"' || acc.invoicefile else null end as invoicefile,'upd' as action FROM accounting acc join childs ch on (ch.uuid=acc.childuuid) where acc.uuid = '"+ myuuid+"';";
-  //jsdump("ACC1SQL" + acc1sql);
-  var acc1data = appdb.dbquery(acc1sql);
-  
-  if (!acc1data.sqldata) {
-    return false;
-
-  }
-  acc1data = acc1data.sqldata[0];
-  $("#frmeditaccounting #uuid").val(acc1data.uuid);
-  for (var a in acc1data){
-
-    if ($("#frmeditaccounting #" +a)) {
-      $("#frmeditaccounting #"+a).val(acc1data[a]);
-    }
-  }
-  $("#edit_accounting").modal('show');
-  
-}
-
-function save_accounting(){
-
-  var sql2 = new Array();
-
-  $("#frmeditaccounting :input").each(function(){
-    var input = $(this);
-    if (input.attr("id") ){
-
-        if ((input.attr("type") != 'hidden')  && (input.attr("id") != 'childname'))  {
-          if (input.attr("type") == "file") {
-            if (system.getDirectory(input.val()) != importpath.path) {
-              var newlocation= importpath.path + system.sep() + system.getFileName(input.val());
-              OS.File.copy(input.val(), newlocation);
-            }
-          }
-          var ival = input.val();
-
-          
-          var ival = encodeparam(ival,input.attr('type'));
-          if (input.attr("id") == 'invoicedate'){
-            var newaccmonth = ival.replace(/'/g,"");
-            sql2.push('"accmonth"=\'' + newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7) +"-01'");
-          }
-          sql2.push('"' + input.attr("id") +'"='+ ival);
-
-        }
-      }
-    });
-  var xsql = "UPDATE accounting SET "+sql2.join(',')+" where \"uuid\"='" + $("#frmeditaccounting #uuid").val() + "';";
-
-
-  appdb.dbexec(xsql);
-  load_accounting_table();
-  $("#frmeditaccounting #uuid").val("0");
-  $("#edit_accounting").modal('hide');
-}
-
-function openfile(fi){
-  var ddir = system.getDirectory(appdb.dbFile.path);
-  var ff = system.openFile(ddir +  system.sep() + 'imports' + system.sep() + crecheuuid +system.sep() + fi);
-}
-
-function onnextmonth() {
-  pconfig.accmonth = $('#accmonth').val();
-
-  
-  var tmpmonth = new Date(encodeparam(pconfig.accmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() + 1, tmpmonth.getDate());
-  pconfig.accmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.accounting",pconfig);
-      globelreq.send_request({
-            page: 'accounting',
-            module: 'accounting',
-            data: null,
-            header: 'Décompte par mois'
-      });
-}
-
-function onpreviousmonth() {
-  pconfig.accmonth = $('#accmonth').val();
-  var tmpmonth = new Date(encodeparam(pconfig.accmonth, 'month').replace(/'/g, ''));
-  var nmonth = new Date(tmpmonth.getFullYear(), tmpmonth.getMonth() - 1, tmpmonth.getDate());
-  pconfig.accmonth = nmonth.toLocaleFormat('%m.%Y');
-  apppref.setpreference("pageconfig.accounting",pconfig);
-      globelreq.send_request({
-            page: 'accounting',
-            module: 'accounting',
-            data: null,
-            header: 'Décompte par mois'
-      });
-}
-
-function generatecsv(){
-       var lastdir = '';
-       if (pconfig.lastdir){
-               lastdir = pconfig.lastdir;
-       }
-       var expfolder = system.selectdirectory(lastdir,"Sélection dossier!");
-       //dump("EXPFOLDER:" + expfolder);
-       if (!expfolder){
-               return;
-       }else {
-               pconfig.lastdir = expfolder.path;
-               apppref.setpreference("pageconfig.accounting",pconfig);
-       }
-       var val = $("#accmonth").val();
-       var cdate = new Date();
-       var accsql = "select planned.childuuid,planned.checkservicenumber,planned.pcalweek,replace(printf(\"%.2f\",COALESCE(planned.weekplantime,0.00)),'.',',') as weekplantime,d1.calweek,replace(printf(\"%.2f\",COALESCE(d1.durationweek,0.00)),'.',',') as durationweek,COALESCE(d1.lunchweek,0) as lunchweek from ( " +
-         "select checkservicenumber || '-' || pcalweek as idjoin,childuuid,pcalweek, weekplantime,checkservicenumber from ("+
-         "select pcalweek,childuuid,sum(monplantime) + sum(tueplantime) + sum(wedplantime) + sum(thuplantime) + sum(friplantime) as weekplantime,checkservicenumber from ("+
-         "select strftime(\"%W\",dd.daydate) as pcalweek, dd.daydate, ch.uuid as childuuid, ch.checkservicenumber,";
-         for (var d4 in aax){
-                 var dw4 = d4;dw4++;
-                 accsql += "case when strftime(\"%w\",dd.daydate) = '"+ dw4+"' then cast( ( strftime( \"%s\", "+ aax[d4]+"timeend )- strftime( \"%s\", "+ aax[d4]+"timebegin ) )/ 3600.0 AS REAL )+ case when "+ aax[d4]+"timebegin2 is not null then CAST( ( strftime( \"%s\", "+ aax[d4]+"timeend2 )- strftime( \"%s\", "+ aax[d4]+"timebegin2 ) )/ 3600.0 AS REAL ) else 0.0 end else 0.00 end as "+ aax[d4]+"plantime,";
-         }
-               accsql += " null as nouse from childs ch join planning pl on ( ch.uuid = pl.childuuid ) JOIN( " ;
-               accsql += getdaterangesql(monthmin,monthmax);
-               accsql += ") dd on ( dd.daydate BETWEEN pl.datebegin AND pl.dateend ) ) group by childuuid,pcalweek ) group by childuuid,pcalweek) planned ";
-        accsql += "left join ( " +
-         "select checkservicenumber || '-' || calweek as idjoin,checkservicenumber,childuuid, calweek , durationweek  , lunchweek " +
-                       " from (SELECT checkservicenumber,ttl.childuuid,calweek, sumdurationcalweek AS durationweek, sumlunchcalweek as lunchweek " +
-
-       
-       "FROM ( SELECT  pch.checkservicenumber, pch.childuuid, px.calweek, px.sumdurationcalweek, px.sumlunchcalweek " +
-       "FROM ( SELECT ch.uuid AS childuuid,ch.checkservicenumber " +
-       "FROM childs ch JOIN planning pl ON ( ch.uuid=pl.childuuid) " +
-       "WHERE " +
-       "(( pl.datebegin <= DATE('"+monthmin+"') AND pl.dateend >= DATE('"+monthmax+"')) OR pl.datebegin BETWEEN '"+monthmin+"' AND '"+monthmax+"' OR pl.dateend BETWEEN '"+monthmin+"' AND '"+monthmax+"')) pch " +
-       "LEFT JOIN ( "+
-       "SELECT childuuid,calweek,case when strftime('%w',date(calyear ||'-01-01')) in ('1','2','3','4') then (cast(calweek as int)*7)-7 else (cast(calweek as int)*7) end as caldays ,"+
-       "sumlunchcalweek, coalesce(sum(monduration + tueduration + wedduration + thuduration + friduration),0.0) as sumdurationcalweek " +
-       "FROM ( SELECT childuuid, daydate,calyear, case when strftime('%w',date(calyear ||'-01-01')) in ('1','2','3','4') then case when calweek < '10' then '0' else '' end || cast(calweek as int) else calweek end as calweek," +
-       "max(monlunch) + max(tuelunch) + max(wedlunch) + max(thulunch) + max(frilunch) AS sumlunchcalweek, " +
-       "MAX(monduration) + MAX(monduration2) AS monduration, " +
-       "MAX(tueduration) + MAX(tueduration2) AS tueduration, " +
-       "MAX(wedduration) + MAX(wedduration2) AS wedduration, " +
-       "MAX(thuduration) + MAX(thuduration2) AS thuduration, " +
-       "MAX(friduration) + MAX(friduration2) AS friduration " +
-       "FROM ( "+
-       "SELECT childuuid, daydate, strftime('%Y',daydate) as calyear," +
-       "case when strftime('%w',daydate)='0' then strftime('%W',date(daydate,'-6 days')) else strftime('%W',date(date(daydate),'-' || strftime('%w',date(daydate)) || ' days','+1 day')) end as calweek, ";
-
-       for (var d1 in aax){
-         var dw = d1;dw++;
-         accsql += "CASE WHEN lunch=1 AND status IN (1,5) AND strftime('%w',daydate) = '"+dw+"' THEN 1 ELSE 0 END AS "+aax[d1]+"lunch,";
-       }
-
-       for (var d2 in aax){
-         var dw2 = d2;dw2++;
-         accsql += "CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '"+dw2+"' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend THEN  CAST(( (( CAST(SUBSTR(xx."+ aax[d2]+"timeend,1,2) AS INT) *3600)+( CAST(SUBSTR(xx."+ aax[d2]+"timeend,4,2) AS INT) *60))-  ((CAST(SUBSTR(xx."+ aax[d2]+"timebegin,1,2) AS INT) *3600)+( CAST(SUBSTR(xx."+ aax[d2]+"timebegin,4,2) AS INT) *60)) ) / 3600 AS REAL)  ELSE 0.0 END AS "+ aax[d2]+"duration,";
-       }
-
-
-       for (var d3 in aax){
-         var dw3 = d3;dw3++;
-         accsql += "CASE WHEN xx.status IS NOT NULL AND strftime('%w',xx.daydate) = '1' AND xx.daydate BETWEEN xx.datebegin AND xx.dateend AND xx."+ aax[d3]+"timebegin2 IS NOT NULL AND xx."+ aax[d3]+"timeend2 IS NOT NULL THEN CAST(( (( CAST(SUBSTR(xx."+ aax[d3]+"timeend2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx."+ aax[d3]+"timeend2,4,2) AS INT) *60))-  ((CAST(SUBSTR(xx."+ aax[d3]+"timebegin2,1,2) AS INT) *3600)+( CAST(SUBSTR(xx."+ aax[d3]+"timebegin2,4,2) AS INT) *60)) ) / 3600 AS REAL)  ELSE 0.0 END AS "+ aax[d3]+"duration2,";
-       }
-
-       accsql += "null as nouse FROM (" +
-       " select vacancydate as daydate, CAST('0' as boolean) as lunch,1 as status,pl.* from vacancy va " +
-       " left join planning pl on (va.vacancydate between pl.datebegin and pl.dateend) " + 
-       " where va.vacancydateto is null and va.vacancydate BETWEEN '"+monthmin+"' AND '"+monthmax+"' AND strftime('%w',va.vacancydate) not in ('0','6') " +
-       " group by va.vacancydate,pl.childuuid " +
-       " union " + 
-       " select pr.daydate,pr.lunch,pr.status,pl.* FROM presence pr " +
-       " JOIN planning pl ON ( pr.childuuid=pl.childuuid) WHERE pr.daydate BETWEEN '"+monthmin+"' AND '"+monthmax+"' "+
-       ") xx " +
-       "WHERE xx.daydate BETWEEN '"+monthmin+"' AND '"+monthmax+"') GROUP BY childuuid,calweek) GROUP BY childuuid,calweek) px " +
-       "ON ( pch.childuuid=px.childuuid) GROUP BY pch.childuuid,px.calweek ) ttl " +
-       "LEFT JOIN accounting acc ON ( ttl.childuuid = acc.childuuid AND acc.accmonth='"+ initdate.toISOString().substring(0,10)+ "') where calweek is not null) group by childuuid,calweek) d1 ";
-       accsql +=  " on (d1.idjoin=planned.idjoin) order by planned.childuuid,planned.pcalweek;";
-
-        dump("EXPSQL:" + accsql + "\n");
-       
-       var expdbdata = appdb.dbquery(accsql);
-
-       numchilds = $("#tbl_accounting tbody tr").length -1;
-       var idchkserv = ccreche.sqldata[0].idcheckservice;
-       dump(JSON.stringify(cweeks) + "\n");
-       var wlen = cweeks.length;
-       var expdata = "E;"+ val.substring(3,7) + ";" + parseInt(val.substring(0,2)) + ";" + wlen + ";" + numchilds + ";" + cdate.toLocaleFormat('%d%m%Y') + ";;;;;;;;;;;;\r\n";
-       
-       var minweek = cweeks[0].cw;
-       var expchild = "";
-       var cntweek = 0;
-       var objrow = {};
-       var allobjects = []
-       for (var r in expdbdata.sqldata){
-               var row = expdbdata.sqldata[r];
-               if (expchild != row.childuuid){
-                       if (expchild != ""){
-                               allobjects.push(objrow);
-
-                       }
-                       objrow = new Object();
-                       objrow["cs"] = row.checkservicenumber;
-                       objrow["weeks"] = {};
-                       for (var w in cweeks){
-                               objrow["weeks"][cweeks[w].cw] = {"time":"0,00","lunch":"0"};
-                       }
-                       expchild = row.childuuid;
-
-               }
-               
-               objrow["weeks"][row.pcalweek]["time"] = ((row.durationweek == '' || row.weekplantime > row.durationweek)?row.weekplantime:row.durationweek);
-               objrow["weeks"][row.pcalweek]["lunch"] = ((row.lunchweek == '')?0:row.lunchweek); 
-
-       }
-       for (var o in allobjects){
-               var obj = allobjects[o];
-               expdata += "P;" + idchkserv + ";"+ obj.cs + ";";
-               for (var w in obj.weeks){
-                       expdata += obj.weeks[w].time + ";" + obj.weeks[w].lunch + ";"; 
-               } 
-               if (wlen == 3){
-                       expdata += "0,00;0;0,00;0;";
-               }
-               if (wlen == 4){
-                       expdata += "0,00;0;";
-               }
-               expdata += "0,00;;0,00;0,00;0,00\r\n";
-       
-       }
-       
-       system.WriteTextFile(expdata,expfolder.path + system.sep() + val + "_export_checkservice.csv");
-
-}
-
-function openmonthlypdf(){
-         //dump("PDF to Open: " + mpdffile + "\n");
-         var ff = system.openFile(mpdffile);
-}
-
-function check_accountingtable(){
-  var cols = appdb.dbquery("SELECT type, name,tbl_name,sql FROM sqlite_master where tbl_name='accounting';");
-  if (cols.sqldata[0].sql.indexOf(" uuid TEXT") == -1){
-     appdb.dbexec("ALTER TABLE accounting add column uuid TEXT;");
-  }
-  appdb.dbexec("UPDATE accounting set uuid= hex(randomblob(4)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(6)) where uuid is null;");
-}
-
diff --git a/TODO/modules_todo/multisite/img/profile.png b/TODO/modules_todo/multisite/img/profile.png
deleted file mode 100644 (file)
index d8caf3f..0000000
Binary files a/TODO/modules_todo/multisite/img/profile.png and /dev/null differ
diff --git a/TODO/modules_todo/multisite/js/multisite_reader.js b/TODO/modules_todo/multisite/js/multisite_reader.js
deleted file mode 100644 (file)
index 1c004c4..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var multisite_reader = {
-  
-  getsites: function(){
-    var childnames = apppref.branch.getChildList("",{});
-               var clmsel = document.getElementsByClassName("clmultisite");
-    var cnum = apppref.getpreference("support.database.currentdb.num");
-    var xx = document.getElementById("pop_multisites");
-    while(xx.hasChildNodes()){
-      xx.removeChild(xx.firstChild);
-    }
-    for (var i in childnames){
-      if ((childnames[i].substring(0,16) == 'support.database') && (childnames[i].indexOf("currentdb") == -1) && (childnames[i].indexOf("currentsite") == -1)) {
-        //dump("gsites:" +  childnames[i] + "\n");
-        var sitecfg = JSON.parse(apppref.getpreference(childnames[i]));
-        //dump("Creche loader: " + JSON.stringify(sitecfg) + "A: "+system.fileexists( sitecfg.path.local ) + system.sep() + sitecfg.uuid + ".sqlite")+ "\n");
-               //if (system.fileexists( sitecfg.path.local  + system.sep() + sitecfg.uuid + ".sqlite")){
-        if (!document.getElementById("mnumultisite_" + sitecfg.dbnum))
-        {
-        var  item = document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "menuitem");
-                                               item.setAttribute("label", sitecfg.name);
-                                               item.setAttribute("id", "mnumultisite_" + sitecfg.dbnum);
-                                               item.setAttribute("value", sitecfg.dbnum);
-                                               item.setAttribute("class","clmultisite");
-                                               item.setAttribute("oncommand","multisite_reader.setcurrent('"+ sitecfg.dbnum +"');");
-                                               document.getElementById("pop_multisites").appendChild(item);
-               }else {
-            document.getElementById("mnumultisite_" + sitecfg.dbnum).setAttribute("label", sitecfg.name);
-            if (sitecfg.dbnum == cnum) {
-              document.getElementById("curcreche").value=sitecfg.name;
-            }
-        }
-               //}
-                               
-      }
-    }
-  },
-  setcurrent:function(num){
-    if (!num) {
-      return;
-    }
-    apppref.setpreference("support.database.currentdb.num",num);
-    
-               curcfg.loadconfig(num);
-    //appdb.check_defaultdata();
-    ///dump("creche loaded: " + curcfg.dbfile.local +"\ndbnum: " + curcfg.dbnum + "\nName: " + curcfg.name + "\n");
-    if (system.fileexists(curcfg.dbfile.local)) {
-                       navigation.update_dbname(curcfg.name);
-                       var lastpageopened = JSON.parse(apppref.getpreference("pageconfig.lastpage"));
-                       if (lastpageopened.view != "") {
-                               navigation.load_appview(lastpageopened.view,lastpageopened.module,null,lastpageopened.header);
-                       } 
-    } else {
-                       //dump("File : '" + curdb + "' does not exist!\n");
-               }
-               
-  }
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/multisite/multisite.xul b/TODO/modules_todo/multisite/multisite.xul
deleted file mode 100644 (file)
index bdcdc3e..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE overlay PUBLIC "-//MOZILLA//DTD XUL V1.0//EN"
-"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<overlay id="ov_multisite" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
-  <script type="application/javascript" src="chrome://creorga/content/modules/multisite/js/multisite_reader.js" />
-  <!--<script type="application/javascript" src="chrome://POSDABAudio/content/js/category.js" />-->
-  <!--<script type="application/javascript" src="chrome://POSDABAudio/content/js/virtualcategory.js" />-->
-  <toolbar id="co_maintoolbar" style="-moz-appearance: none;">
-    <toolbarbutton class="btn btn-default" id="tbb_multisite" type="menu" insertbefore="tbb_about" label="Change Site" image="modules/multisite/img/profile.png" orient="vertical" onload="multisite_reader.getsites();">
-      <menupopup class="tlbpopup" id="pop_multisites">
-        
-        <!--<menuseparator />-->
-      </menupopup>
-    </toolbarbutton>
-  </toolbar>
-</overlay>
\ No newline at end of file
diff --git a/TODO/modules_todo/openinvoices/accountingopeninvoice.html b/TODO/modules_todo/openinvoices/accountingopeninvoice.html
deleted file mode 100644 (file)
index 4336619..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Factures ouvertes</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../vendor/bootstrap-table/bootstrap-table.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-multiselect.css" rel="stylesheet" type="text/css">
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css">
-
-</head>
-
-<body>
-   <div class="container-fluid"  style="padding-top: 5px;">
-    <div>
-      <table class="table table-bordered table-hover table-striped" data-style="width: 100%;" id="tbl_accounting">
-        <thead>
-          <tr>
-            <th data-sortable="true">Mois</th>
-            <th data-sortable="true">No. Client</th>
-            <th data-sortable="true">Enfant</th>
-            <th data-sortable="true">No. Check Service</th>
-            <th data-sortable="true">Référence</th>
-            <th class="alignright"  data-sortable="true">facturé â‚¬</th>
-            <th class="alignright"  data-sortable="true">payé â‚¬</th>
-            <th class="noprint"></th>
-          </tr>
-        </thead>
-        <tbody></tbody>
-        <tfoot></tfoot>
-      </table>
-    </div>
-   </div>
-  <div class="modal fade" id="edit_accounting">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Editer la facturation</h4>
-              </div>
-              <div class="modal-body" style="max-height: calc(100vh - 300px);overflow-y: auto; ">
-
-                <div id="frmeditaccounting">
-                  <input type="hidden" value="" id="uuid" />
-                  <input type="hidden" value="" id="action" />
-                  <input type="hidden" value="" id="childuuid" />
-                  <div class="form-group">
-                    <label for="name">Enfant</label>
-                    <input type="text" value="" id="childname"  nullable="true" readonly="true" class="form-control">
-                  </div>
-                  <div class="form-group">
-                    <label for="name">Référence</label>
-                    <input type="text" value="" id="reference"  nullable="true" class="input- form-control">
-                  </div>
-                  <div class="form-group">
-                    <label for="invoicefile">Fichier</label>
-                    <input type="file" value="" id="invoicefile" nullable="true" class="form-control"">
-                  </div>
-                  <div class="form-group col-md-6" id="date-container">
-                    <label for="invoicedate">Date de la Facture</label>
-
-                    <div id="dt_invoicedate" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="invoicedate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="form-group col-md-6">
-                  <label for="invoiceamount">Somme facturé</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="invoiceamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                  <div class="form-group col-md-6" id="date-container">
-                    <label for="payeddate">Date du Payement</label>
-
-                    <div id="dt_payeddate" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="payeddate"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                  <div class="form-group col-md-6">
-                  <label for="payedamount">Somme payé</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="payedamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                <div class="form-group col-md-12">
-                  <label for="payedamount">Somme prestation Check-Service</label>
-
-                  <div class="input-group number">
-                    <input type="number" value="" id="benefitamount" style="text-align: right;" min="0" nullable="false" class="form-control">
-                    <div class="input-group-addon">€</div>
-                  </div>
-                </div>
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate1">Date Rappel 1</label>
-
-                    <div id="dt_reminderdate1" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="reminderdate1"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate2">Date Rappel 2</label>
-
-                    <div id="dt_reminderdate2" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="reminderdate2"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                
-                <div class="form-group col-md-4" id="date-container">
-                    <label for="reminderdate3">Date Rappel 3</label>
-
-                    <div id="dt_reminderdate3" class="input-group date">
-                      <input type="date" class="form-control" value="" limits="0" placeholder="dd.mm.yyyy"  id="reminderdate3"><span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
-                    </div>
-                  </div>
-                </div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="save_accounting();" class="btn btn-primary">OK</button>
-              </div>
-              </div>
-
-              
-            </div>
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../vendor/bootstrap-table/bootstrap-table.min.js" type="text/javascript"></script>
-  <script src="../../vendor/bootstrap-table/locale/bootstrap-table-fr-FR.js" type="text/javascript"></script> 
-  <!-- <script src="../../js/datatables.min.js" type="text/javascript"></script> -->
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="../../js/bootstrap-multiselect.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/accountingopeninvoice.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
diff --git a/TODO/modules_todo/openinvoices/js/accountingopeninvoice.js b/TODO/modules_todo/openinvoices/js/accountingopeninvoice.js
deleted file mode 100644 (file)
index a502000..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg ) 
-
-var pconfig = {};
-var winh= window.innerHeight -50;
-var tblacc = null;
-var gpaccchild = null;
-var crecheuuid = null;
-var importpath = null;
-//var lictype = apppref.getpreference("support.lictype"); 
-
-function initdata(){
-  curcfg.loadconfig(apppref.getpreference("support.database.currentdb.num"));
-  check_accountingtable();
-  load_helpers();
-  var configdata = apppref.getpreference("pageconfig.accountingopeninvoice");
-
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  if (!pconfig.printlayout) {
-    pconfig.printlayout = 'list';
-    apppref.setpreference("pageconfig.accountingopeninvoice",pconfig);
-  }
-  var ccreche = appdb.dbquery("select uuid from creche LIMIT 1;");
-  crecheuuid = ccreche.sqldata[0].uuid;
-  importpath = FileUtils.File(curcfg.path.local  + system.sep() +"imports" + system.sep() + crecheuuid);
-
-  set_infoheader("");
-  load_accounting_table();  
-}
-
-function load_accounting_table(){
-  // var xsql = "DELETE from accounting where accmonth='' or accmonth is null;";
-  // appdb.dbexec(xsql);
-  var accsql = "select strftime('%m.%Y',acc.invoicedate) as calmonth,ch.clientnumber, "  +
-"COALESCE(ch.prename,'') || ' ' || COALESCE(ch.surname,'')  AS childname,ch.checkservicenumber, acc.reference as reference, "  +
-"CASE WHEN acc.invoiceamount IS NOT NULL THEN printf(\"%.2f\",COALESCE(acc.invoiceamount,0.00)) || '€' || CASE WHEN acc.invoicedate IS NOT NULL THEN '<br/>(' || strftime('%d.%m.%Y',acc.invoicedate) || ')' || CASE WHEN acc.reminderdate1 IS NOT NULL THEN '<br/>R1:' || strftime('%d.%m.%Y',acc.reminderdate1) ELSE '' END || CASE WHEN acc.reminderdate2 IS NOT NULL THEN '<br/>R2:' || strftime('%d.%m.%Y',acc.reminderdate2) ELSE '' END || CASE WHEN acc.reminderdate3 IS NOT NULL THEN '<br/>R3:' || strftime('%d.%m.%Y',acc.reminderdate3) ELSE '' END ELSE '' END ELSE '' END AS invoiced, "  +
-"CASE WHEN acc.payedamount IS NOT NULL THEN printf(\"%.2f\",COALESCE(acc.payedamount,0.00)) || '€' || CASE WHEN acc.payeddate IS NOT NULL THEN '<br/>(' || strftime('%d.%m.%Y',acc.payeddate) || ')' ELSE '' END ELSE '' END AS payement, "  +
-"'<button type=\"button\" class=\"btn btn-primary\" onclick=\"dlg_accounting(''' ||  acc.uuid || ''');\" title=\"editer\"><span class=\"glyphicon glyphicon-pencil\"></span></button>' || case when acc.invoicefile is not null and acc.invoicefile != '' then '<button type=\"button\" class=\"btn btn-primary\" onclick=\"openfile(''' || acc.invoicefile || ''');\" title=\"editer\"><span class=\"glyphicon glyphicon-open\"></span></button>' else '' end AS act "  +
-"from accounting acc join childs ch on (acc.childuuid=ch.uuid) "  +
-"where (acc.invoiceamount is not null and acc.payedamount is null) or (acc.payedamount < acc.invoiceamount) order by acc.invoicedate desc;";
-
-  
-  var accdata = appdb.dbquery(accsql);
-  
-
-  $("#tbl_accounting > tbody").html("");
-  
-  
-  var curchld = "";
-  for (var i in accdata.sqldata){
-    var row = accdata.sqldata[i];
-        var tr = '<tr><td>' + row.calmonth + '</td>';
-        tr += '<td>' + row.clientnumber + '</td>';
-        tr += '<td>' + row.childname + '</td>';
-        tr += '<td>' + row.checkservicenumber + '</td>';
-        tr += '<td>' + row.reference + '</td>';
-        tr += '<td class="alignright">' + row.invoiced + '</td>';
-        tr += '<td class="alignright">' + row.payement + '</td>';
-        tr += '<td class="noprint">' + row.act + '</td></tr>';
-        $("#tbl_accounting").append(tr);
-    }
-    
-    $("#tbl_accounting").bootstrapTable({
-      locale: 'fr-FR',
-      pagination: false,
-      search: true,
-      height: winh
-    });
-  
-}
-
-
-function dlg_accounting(myuuid){
-
-  
-  var acc1sql = "SELECT acc.uuid as uuid,acc.accmonth,ch.prename || ' ' || ch.surname as childname,acc.childuuid,case when acc.invoicedate is not null then strftime('%d.%m.%Y',acc.invoicedate) else null end as invoicedate, case when acc.payeddate is not null then strftime('%d.%m.%Y',acc.payeddate) else null end as payeddate, acc.payedamount,acc.benefitamount, acc.invoiceamount, acc.reference, case when acc.reminderdate1 is not null then strftime('%d.%m.%Y',acc.reminderdate1) else null end as reminderdate1, case when acc.reminderdate2 is not null then strftime('%d.%m.%Y',acc.reminderdate2) else null end as reminderdate2, case when acc.reminderdate3 is not null then strftime('%d.%m.%Y',acc.reminderdate3) else null end as reminderdate3,case when acc.invoicefile is not null and acc.invoicefile != '' then '"+ importpath.path + system.sep() +"' || acc.invoicefile else null end as invoicefile,'upd' as action FROM accounting acc join childs ch on (acc.childuuid=ch.uuid) where acc.uuid='"+myuuid+"';";
-
-  var acc1data = appdb.dbquery(acc1sql);
-  if (!acc1data.sqldata) {
-    return false;
-  }
-  acc1data = acc1data.sqldata[0];
-  
-  for (var a in acc1data){
-
-    if ($("#frmeditaccounting #" +a)) {
-
-      $("#frmeditaccounting #"+a).val(acc1data[a]);
-    }
-  }
-  $("#edit_accounting").modal('show');
-  
-}
-
-function save_accounting(){
-  var sql1 = new Array();
-  var sql2 = new Array();
-  // var cntnum = "01"; 
-  var type = $("#frmeditaccounting #action").val();
-  if (type == 'ins'){
-    sql1.push('childuuid');
-    sql2.push("'"+ pconfig.accchild +"'");
-    
-  }
-  
-  $("#frmeditaccounting :input").each(function(){
-    var input = $(this);
-    if (input.attr("id") ){
-      if ((type == 'ins') && (input.attr("type") != 'hidden') && (input.attr("id") != 'accmonth') && (input.attr("id") != 'childname')) {
-        
-        sql1.push('"' + input.attr("id") + '"');
-        if (input.attr("type") == "file") {
-          var newlocation= importpath.path + system.sep() + system.getFileName(input.val());
-          if (!system.fileexists(importpath.path)){
-            importpath.create(1,0755);
-          }
-          OS.File.copy(input.val(), newlocation);
-        }
-        var ival = input.val();
-
-        var ival = encodeparam(input.val(),input.attr('type'));
-        sql2.push(ival);
-        if (input.attr("id") == 'invoicedate'){
-          sql1.push('"accmonth"');
-          
-          var newaccmonth = ival.replace(/'/g,"");
-          // var cntx = appdb.dbquery("select count(accmonth)+1 as cnt from accounting where childuuid = '"+ pconfig.accchild +"' and accmonth between date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01') and date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01','+1 month','-1 day'); ");
-          // cntnum = cntx.sqldata[0].cntx;
-          // if (cntnum < 10){ cntnum = "0" + cntnum;}
-          sql2.push('\'' + newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7) +"-01'");
-        }
-      }else {
-        if ((input.attr("type") != 'hidden') &&  (input.attr("id") != 'childname')) {
-          if (input.attr("type") == "file") {
-            if (system.getDirectory(input.val()) != importpath.path) {
-              var newlocation= importpath.path + system.sep() + system.getFileName(input.val());
-              OS.File.copy(input.val(), newlocation);
-            }
-          }
-          var ival = input.val();
-
-          var ival = encodeparam(ival,input.attr('type'));
-          sql2.push('"' + input.attr("id") +'"='+ ival);
-          if (input.attr("id") == 'invoicedate'){
-            var newaccmonth = ival.replace(/'/g,"");
-          //   var cntx = appdb.dbquery("select count(accmonth)+1 as cnt from accounting where childuuid = '"+ pconfig.accchild +"' and accmonth between date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01') and date('"+newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7)+"-01','+1 month','-1 day'); ");
-          // cntnum = cntx.sqldata[0].cntx;
-          // if (cntnum < 10){ cntnum = "0" + cntnum;}
-            sql2.push('"accmonth"=\'' + newaccmonth.substring(0,4) + "-" + newaccmonth.substring(5,7) +"-01'");
-          }
-          
-        }
-      }
-    }
-
-  });
-  var xsql = "";
-  if (type == 'upd') {
-    xsql = "UPDATE accounting SET "+sql2.join(',')+" where \"uuid\"='" + $("#frmeditaccounting #uuid").val() +"';";
-  }else {
-    sql1.push("uuid");
-    sql2.push("'" + appdb.generate_uuid() + "'");
-    xsql = "INSERT INTO accounting ("+sql1.join(',')+") VALUES ("+sql2.join(',')+");"; 
-  }
-  //jsdump(xsql);
-  appdb.dbexec(xsql);
-  load_accounting_table();
-  $("#frmeditaccounting #uuid").val("0");
-  $("#edit_accounting").modal('hide');
-}
-
-function print_list(){
-  globelreq.send_request({page:'preview2',data:{page: 'accountingopeninvoice'}});
-}
-
-function openfile(fi){
-  var ddir = system.getDirectory(appdb.dbFile.path);
-  var ff = system.openFile(ddir + system.sep() + 'imports' + system.sep() + crecheuuid +system.sep() + fi);
-}
-
-function check_accountingtable(){
-  var cols = appdb.dbquery("SELECT type, name,tbl_name,sql FROM sqlite_master where tbl_name='accounting';");
-  if (cols.sqldata[0].sql.indexOf(" uuid TEXT") == -1){
-     appdb.dbexec("ALTER TABLE accounting add column uuid TEXT;");
-  }
-  appdb.dbexec("UPDATE accounting set uuid= hex(randomblob(4)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(2)) || '-' || hex(randomblob(6)) where uuid is null;");
-}
diff --git a/TODO/modules_todo/reports/css/print.css b/TODO/modules_todo/reports/css/print.css
deleted file mode 100644 (file)
index a3c54fc..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-body {
-  font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
-  font-size: 11px;
-  line-height: 1.42857;
-  background-color: #fff;
-}
-h2 {
-  font-size: 18px;
-  font-weight: bold;
-  margin-top: 0px;
-  margin-bottom: 5px;
-}
-
-h3 {
-  font-size: 14px;
-  font-style: italic;
-  margin-top: 0px;
-  margin-bottom: 5px;
-}
-
-.dataTables_filter {
-  height: 0px;
-  width: 0px;
-}
-
-/*.dataTable > thead > tr > th {*/
-/*  padding-top: 70px;*/
-/*}*/
-
-/*.dataTable > tfoot > tr > th {
-  padding-bottom: 40px;
-}*/
-
-/*tfoot { display: table-footer-group;*/
-/*                 position: absolute;        */
-/*                 bottom: 0; }*/
-
-.alignright{
-        text-align: right;
-}
-
-.alignleft {
-        text-align: left;
-}
-
-.noprint {
-  display: none;
-}
-
-
-
-@media print {
-
-@page {
-  margin-left: 2cm;
-  margin-right: 1cm;
-  margin-top: 1cm;
-  margin-bottom: 1cm;
-}
-
-tfoot {
-  display: table-row-group;
-}
-
-table {
-  width: 100% !Important;
-    border-spacing: 0;
-    border-collapse: collapse;
-}
-
-table.dataTable td {
-  white-space: nowrap;
-  overflow: hidden;
-}
-
-table.dataTable > thead > th > td {
-  white-space: nowrap;
-  overflow: hidden;
-}
-table.dataTable tr {
-               page-break-inside: avoid;
-               page-break-after: auto;
-           }
-
-table.dataTable tfoot {
-               page-break-inside: avoid;
-               page-break-after: auto;
-           }
-
-table.dataTable tfoot > th > td {
-  font-size: 2vw;
-}
-table.dataTable {
-  width: 100% !Important;
-    border-spacing: 0;
-    border-collapse: collapse;
-}
-
-#print-head {
-  display: block;
-  position: fixed;
-  font-family: Arial,Helvetica, sans-serif;
-  z-index: 10;
-  top: 0pt;
-  left:0pt;
-  right: 0pt;
-  background-color: #fff;
-  text-align: center;
-  }
-
-/*#print-foot {
-  display: block;
-  position: fixed;
-  width: 100%;
-  padding-top: 5px; 
-  bottom: 0pt;
-  text-align: center;
-  right: auto;
-  left: auto;
-  font-family: Arial,Helvetica, sans-serif;
-  }*/
-
-/*#print-foot:after {
-  content: counter(page);
-  counter-increment: page;
-  }*/
-
-
-.dataTables_filter {
-  height: 0px;
-  width: 0px;
-}
-
-.dataTable {
-    width: 100% !Important;
-}
-  
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/dlg/dlgpdfviewer.xul b/TODO/modules_todo/reports/dlg/dlgpdfviewer.xul
deleted file mode 100644 (file)
index 6180c0c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE dialog PUBLIC "-//MOZILLA//DTD XUL V1.0//EN" "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-
-<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
-
-<dialog id="dlgprdfviewer" title="PDF Viewer"
-        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
-        persist="screenX screenY width height"
-        buttons="accept"
-        buttonlabelaccept="Fermer"
-        ondialogaccept="return OK();"
-        >
-    <script type="application/javascript" src="chrome://creorga/content/js/system.js" />
-    <vbox flex="1">
-        <browser id="pdfviewer" flex="1" src="chrome://creorga/pdfjs/viewer.html" type="content-primary" style="background-color: #fff;"/>
-    </vbox>
-<script><![CDATA[
-      
-      
-      function OK() {
-          window.close();
-      }
-
-
-      if (window.arguments[0]. in != null) {
-        var appd = OS.Path.split(system.appdir());
-        var len = appd.components.length-1;
-        var npath = new Array();
-        for (var i=0; i<len;i++){
-            npath.push("..");
-        }
-        var abspath= window.arguments[0].in.uri.substring(8);
-        //dump("PDF URI: "+ abspath + "\n");
-        //npath.join("/") +
-        //?file=" +abspath file:///
-        
-          document.getElementById("pdfviewer").loadURI("chrome://creorga/content/pdfjs/viewer.html?file=" +abspath, null, 'UTF-8');
-
-      }
-]]>
-</script>
-</dialog>
diff --git a/TODO/modules_todo/reports/dlg/dlgprint.xul b/TODO/modules_todo/reports/dlg/dlgprint.xul
deleted file mode 100644 (file)
index 0817914..0000000
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE dialog PUBLIC "-//MOZILLA//DTD XUL V1.0//EN" "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-
-<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
-
-<dialog id="dlgprint" title="Impression"
-        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
-        persist="screenX screenY width height"
-        buttons="accept"
-        buttonlabelaccept="Fermer"
-        ondialogaccept="return OK();"
-        minwidth="1020"
-        minheight="600"
-        >
-    <script type="application/javascript" src="chrome://global/content/printUtils.js"/>
-    <script type="application/javascript" src="chrome://creorga/content/js/system.js" />
-    <vbox flex="1">
-        <toolbox id="previewtoolbox">
-<toolbar>
-<toolbarbutton label="Configuration" id="cmd_pageSetup" image="../img/settings.png" orient="vertical" oncommand="showpagesetup();"/>
-<toolbarbutton label="Imprimer" id="cmd_print" image="../img/print.png" orient="vertical" oncommand="PrintUtils.print(document.getElementById('print_browser').contentWindowAsCPOW, document.getElementById('print_browser'));" />
-</toolbar>
-</toolbox>
-        <browser id="print_browser" src="about:blank" type="content-primary" style="height: 0px;" autoscroll="true"/>
-        <browser id="preview_browser" src="about:blank" type="content-primary" flex="1" autoscroll="true" />
-    </vbox>
-<script><![CDATA[
-  var PSSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"].getService(Components.interfaces.nsIPrintSettingsService);
-  var printSettings = PSSVC.newPrintSettings; printSettings.printerName = PSSVC.printerName;
-  if (system.os == "WINNT") {
-    //code
-  
-    if (!printSettings.printerName) {
-        printSettings.printerName = PSSVC.defaultPrinterName;
-    }
-    PSSVC.initPrintSettingsFromPrinter(printSettings.printerName, printSettings);
-    PSSVC.initPrintSettingsFromPrefs(printSettings, true, printSettings.kInitSaveAll);
-    }
-  if (system.os == "WINNT") {
-    var printPreviewTB = {
-      inititalize: function() {
-      },
-      updateToolbar: function() {
-      }
-    };
-
-    var PrintPreviewListener = {
-      getPrintPreviewBrowser: function() {
-        return document.getElementById('preview_browser');
-      },
-      getSourceBrowser: function() {
-        return document.getElementById('print_browser');
-      },
-      getNavToolbox: function() {
-        return document.getElementById('previewtoolbox');
-      },
-      onEnter: function() {
-        //gInPrintPreviewMode = true;
-        this._toggleAffectedChrome();
-
-      },
-      onExit: function() {
-        this._toggleAffectedChrome();
-        this._printPreviewTab = null;
-      }
-    }
-  }
-
-
-  function OK() {
-    window.close();
-  }
-
-  function reload() {
-    //var orientval = ((printSettings.orientation == 1) ? "landscape" : "portrait");
-    window.arguments[0].out = {
-      reload: true
-    };
-    window.close();
-  }
-
-  function savedocument() {
-    var sdoc = document.getElementById("print_browser").contentDocument;
-    var webBrowserPersist = Components.classes["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"]
-      .createInstance(Components.interfaces.nsIWebBrowserPersist);
-    var localFile = Components.classes["@mozilla.org/file/local;1"]
-      .createInstance(Components.interfaces.nsILocalFile);
-    localFile.initWithPath(system.tmpdir() + system.sep() + 'test' + system.sep() + 'test.html');
-    //"File saved to: " + system.tmpdir() + system.sep() + 'test' + system.sep() + 'test.html' + "\n");
-    var localDir = Components.classes["@mozilla.org/file/local;1"]
-      .createInstance(Components.interfaces.nsILocalFile);
-    localDir.initWithPath(system.tmpdir() + system.sep() + 'test' + system.sep() + 'testdata');
-    
-    webBrowserPersist.saveDocument(sdoc, localFile, localDir, null, null, null);
-  }
-
-  function showpagesetup() {
-    try {
-      var x = PrintUtils.showPageSetup();
-    } catch (e) {} finally {
-      reload();
-    }
-  }
-
-  function resize() {
-    var ww = 1020;
-    if (printSettings.orientation == 1) {
-      ww = 1430;
-    }
-    if (ww > window.screen.width) {
-      ww = window.screen.width;
-    }
-    window.resizeTo(ww, window.screen.availHeight);
-  }
-  if (window.arguments[0].in != null) {
-    document.getElementById("print_browser").loadURI(window.arguments[0].in.uri, null, 'UTF-8');
-    printSettings.printBGColors = true;
-    printSettings.printBGImages = true;
-    printSettings.unwriteableMarginTop = 0.5;
-    printSettings.unwriteableMarginLeft = 0.5;
-    printSettings.unwriteableMarginBottom = 0.5;
-    printSettings.unwriteableMarginRight = 0.5;
-    printSettings.marginTop = 0.2; /*  these are in inches */
-    printSettings.marginLeft = 0.2;
-    printSettings.marginBottom = 0.2;
-    printSettings.marginRight = 0.2;
-    //printSettings.shrinkToFit;
-    printSettings.paperName = "iso_a4"; /* name of paper */
-    printSettings.paperSizeType = 1; /* use native data or is defined here */
-    //printSettings.paperData = 9;     /* native data value */
-    if (printSettings.orientation == 1) {
-      printSettings.paperWidth = 297.0; /* width of the paper in inches or mm */
-      printSettings.paperHeight = 210.0; /* height of the paper in inches or mm */
-
-    } else {
-      printSettings.paperWidth = 210.0; /* width of the paper in inches or mm */
-      printSettings.paperHeight = 297.0; /* height of the paper in inches or mm */
-    }
-    printSettings.paperSizeUnit = 1; /* paper is in inches or mm */
-    //lets hide those ugly default headers
-    printSettings.footerStrCenter = '';
-    printSettings.footerStrLeft = '';
-    printSettings.footerStrRight = '';
-    printSettings.headerStrCenter = '';
-    printSettings.headerStrLeft = '';
-    printSettings.headerStrRight = '';
-    
-    PSSVC.savePrintSettingsToPrefs(printSettings, true, printSettings.kInitSaveAll);
-    gBrowser = document.getElementById("preview_browser");
-    gBrowser.selectedBrowser = document.getElementById("preview_browser");
-    if (system.os == "WINNT") {
-      PSSVC.savePrintSettingsToPrefs(printSettings, true, printSettings.kInitSavePrinterName);
-      PrintUtils.printPreview(PrintPreviewListener);
-      resize();
-    } else {
-      document.getElementById("preview_browser").setAttribute("hidden", true);
-      document.getElementById("print_browser").removeAttribute("style");
-      document.getElementById("print_browser").setAttribute("flex", "1");
-      //document.getElementById("cmd_save").setAttribute("hidden", true);
-    }
-  }
-  ]]>
-</script>
-</dialog>
diff --git a/TODO/modules_todo/reports/img/logoprint.png b/TODO/modules_todo/reports/img/logoprint.png
deleted file mode 100644 (file)
index 8c760e8..0000000
Binary files a/TODO/modules_todo/reports/img/logoprint.png and /dev/null differ
diff --git a/TODO/modules_todo/reports/img/print.png b/TODO/modules_todo/reports/img/print.png
deleted file mode 100644 (file)
index 335f482..0000000
Binary files a/TODO/modules_todo/reports/img/print.png and /dev/null differ
diff --git a/TODO/modules_todo/reports/img/save.png b/TODO/modules_todo/reports/img/save.png
deleted file mode 100644 (file)
index ef5ba59..0000000
Binary files a/TODO/modules_todo/reports/img/save.png and /dev/null differ
diff --git a/TODO/modules_todo/reports/img/settings.png b/TODO/modules_todo/reports/img/settings.png
deleted file mode 100644 (file)
index 3a8b3b3..0000000
Binary files a/TODO/modules_todo/reports/img/settings.png and /dev/null differ
diff --git a/TODO/modules_todo/reports/js/print.js b/TODO/modules_todo/reports/js/print.js
deleted file mode 100644 (file)
index ab6a68c..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-document.onreadystatechange = function () {
-  if (document.readyState == "complete") {
-    try {
-      initdata();
-    }catch(e){
-      //dump("Print.js No initdata function!\n");
-    }
-  }
-}
-
-function encodeparam(string,type){
-    if (type == "text") {
-        if (string == "") {
-            string = 'null';
-        }else {
-            string = string.replace('<','&lt;','g');
-            string = string.replace('>','&gt;','g');
-            string = string.replace('&','&amp;','g');
-            string = string.replace('"','&quot','g');
-            string = string.replace("'","''",'g');
-            string = "'"+ string+"'";
-        }
-    }else if(type == "date"){
-      var re = /^(\d{1,2})\.(\d{1,2})\.(\d{4})$/i;
-        if (!string.match(re)) {
-            string = 'null';
-        }else{
-           var dspl=string.split('.');
-            string = "'"+dspl[2]+'-'+dspl[1]+'-'+dspl[0]+"'";
-        }
-    }else if(type == "number"){
-        if (string == "") {
-            string = 'null';
-        }else {
-            string.replace(',','.');
-            string = parseFloat(string);
-        }
-    }else if(type == "boolean"){
-        if (string == "") {
-          string = 'null';
-        }
-        string= string.replace('true',"'1'");
-        string= string.replace('false',"'0'");
-    }else if(type == "month"){
-      var re = /^(\d{1,2})\.(\d{4})$/i;
-        if (!string.match(re)) {
-            string = 'null';
-        }else{
-           var dspl=string.split('.');
-            string = "'"+dspl[1]+'-'+dspl[0]+"-01'"
-        }
-    }
-    else {
-        string = string.replace('<','&lt;','g');
-        string = string.replace('>','&gt;','g');
-        string = string.replace('&','&amp;','g');
-        string = string.replace('"','&quot','g');
-        string = string.replace("'","''",'g');
-        string = "'"+ string+"'";
-    }
-    
-    return string;
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/js/print_book.js b/TODO/modules_todo/reports/js/print_book.js
deleted file mode 100644 (file)
index ece7bb3..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-
-function initdata(){
-    var configdata = apppref.getpreference("pageconfig.logactivity");
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  //"Book Ident Data:" + JSON.stringify(pconfig) + "\n");
-  var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-
-      //var xdate = new Date();
-      //$("#printdatetime").html(xdate.toLocaleFormat("%d.%m.%Y %H:%M:%S"));
-      $("#title_sub").html(winmain.document.getElementById("infoheader").value);
-
-      $("#title_main").html(maindoc.title);
-      //$("#tbl_list").css("margin-top","100px");
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-      loadactivitydata();
-}
-
-function loadactivitydata(){
-  var actdatasql = "SELECT strftime('%d.%m.%Y',logdatefrom) || ' - ' || strftime('%d.%m.%Y',logdateto) as daterange, logtitle, logmessage FROM activitylog where uuid='"+ pconfig.activityuuid+"';";
-  //dump(actdatasql + "\n");
-  var data = appdb.dbquery(actdatasql);
-  $("#bookdata").append('<h2>'+ data.sqldata[0].logtitle+'</h2>');
-  $("#bookdata").append('<h4>'+ data.sqldata[0].daterange+'</h4>');
-  $("#bookdata").append('<div>'+ data.sqldata[0].logmessage+'</div>');
-}
-
-
-
diff --git a/TODO/modules_todo/reports/js/print_calendar.js b/TODO/modules_todo/reports/js/print_calendar.js
deleted file mode 100644 (file)
index 125eb45..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-function initdata(){
-  var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-      
-      var xdate = new Date();
-      $("#printdatetime").html(xdate.toLocaleFormat("%d.%m.%Y %H:%M:%S"));
-      $("#title_sub").html(winmain.document.getElementById("infoheader").value);
-      $("#title_main").html(maindoc.title);
-      //$("#cal_month").css("margin-top","100px");
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-      
-      var elx = maindoc.querySelectorAll('table[id^="cal_"]');
-      
-      for (var i in elx) {
-        //dump(elx[i].id + "\n");
-        if (elx[i].id) {
-          var elementdata = maindoc.getElementById(elx[i].id).innerHTML;
-          
-          //elementdata = elementdata.replace(/height:\ 0px;/g,'');
-          //elementdata = elementdata.replace(/height:0;/g,'');
-          $("#cal_month").append(elementdata);
-          //$("#tbl_list th:first-child").remove();
-          //$("#tbl_list td:first-child").remove();
-        }
-      }
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/js/print_child.js b/TODO/modules_todo/reports/js/print_child.js
deleted file mode 100644 (file)
index 6be1f2f..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-function initdata(){
-    var configdata = apppref.getpreference("pageconfig.child");
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-
-      //var xdate = new Date();
-      //$("#printdatetime").html(xdate.toLocaleFormat("%d.%m.%Y %H:%M:%S"));
-      $("#title_sub").html(winmain.document.getElementById("infoheader").value);
-
-      $("#title_main").html(maindoc.title);
-      //$("#tbl_list").css("margin-top","100px");
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-
-  var cdatasql = "select child.uuid,child.clientnumber,child.prename,child.surname,strftime('%d.%m.%Y',child.birthday) as birthday,child.address,child.city,child.zip,child.country,strftime('%d.%m.%Y',child.entrydate) as entrydate,child.checkservicenumber,strftime('%d.%m.%Y',child.checkserviceexpiration) as checkserviceexpiration,strftime('%d.%m.%Y',child.leavedate) as leavedate,child.nationality,child.nativelanguage,child.bankaccount,child.bankbic,child.cautionamount,child.cautionpayed,child.cautionremark,child.cautionpayedback,child.cautionstatusdate,child.remark,child.uuid,health.docname, health.docphone,health.docaddress,health.doczip, health.doccity,health.doccountry,health.healthinfo,health.uuid as docuuid from childs child join health health on (child.uuid=health.childuuid)  where child.uuid='" + pconfig.uuid + "';";
-  var cdata = appdb.dbquery(cdatasql);
-  $('#financedata').hide();
-  if (cdata) {
-    cdata = cdata.sqldata[0];
-   var hx = true;
-  for (var ci in cdata) {
-    if (document.getElementById("childs_" + ci)) {
-      $("#childs_" + ci).html(cdata[ci]);
-    }
-    if (document.getElementById("health_" + ci)) {
-      if (cdata[ci] != '') {
-        hx = false;
-        $("#health_" + ci).html(cdata[ci]);
-      }else {
-        $("#health_" + ci).hide();
-      }
-      
-    }
-
-  }
-  if (hx) {
-    $('#healthdata').hide();
-  }
-  }
-  
-   load_table_presence();
-    load_table_parents();
-    load_table_refpersons();
-  var cdatea = new Date();
-  //$("#printdatetime").html(cdatea.toLocaleFormat("%d.%m.%Y %H:%M:%S"));
-  //$("#accmonth").html(myfilter.description);
-  var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-  crn = crn.sqldata[0];
-  $("#creche_name").html(crn.crechename);
-  $("#creche_address").html(crn.adress);
-  $("#creche_zip").html(crn.zip);
-  $("#creche_city").html(crn.city);
-}
-
-function load_table_presence(){
-    var plandatasql = "SELECT grp.grpname, strftime('%d.%m.%Y',plan.datebegin) || ' - ' || strftime('%d.%m.%Y',plan.dateend) AS planningdaterange, plan.montimebegin || ' - ' || plan.montimeend || CASE WHEN plan.monlunch='1' THEN ' (<span class=\"glyphicon glyphicon-cutlery\" aria-hidden=\"true\"></span>)' ELSE '' END || case when plan.montimebegin2 is not null and plan.montimeend2 is not null then '<br/>' || plan.montimebegin2 || ' - ' || plan.montimeend2 else '' end AS monplanningtime, plan.tuetimebegin || ' - ' || plan.tuetimeend || CASE WHEN plan.tuelunch='1' THEN ' (<span class=\"glyphicon glyphicon-cutlery\" aria-hidden=\"true\"></span>)' ELSE '' END || case when plan.tuetimebegin2 is not null and plan.tuetimeend2 is not null then '<br/>' || plan.tuetimebegin2 || ' - ' || plan.tuetimeend2 else '' end AS tueplanningtime, plan.wedtimebegin || ' - ' || plan.wedtimeend || CASE WHEN plan.wedlunch='1' THEN ' (<span class=\"glyphicon glyphicon-cutlery\" aria-hidden=\"true\"></span>)' ELSE '' END || case when plan.wedtimebegin2 is not null and plan.wedtimeend2 is not null then '<br/>' || plan.wedtimebegin2 || ' - ' || plan.wedtimeend2 else '' end AS wedplanningtime, plan.thutimebegin || ' - ' || plan.thutimeend || CASE WHEN plan.thulunch='1' THEN ' (<span class=\"glyphicon glyphicon-cutlery\" aria-hidden=\"true\"></span>)' ELSE '' END || case when plan.thutimebegin2 is not null and plan.thutimeend2 is not null then '<br/>' || plan.thutimebegin2 || ' - ' || plan.thutimeend2 else '' end AS thuplanningtime, plan.fritimebegin || ' - ' || plan.fritimeend || CASE WHEN plan.frilunch='1' THEN ' (<span class=\"glyphicon glyphicon-cutlery\" aria-hidden=\"true\"></span>)' ELSE '' END || case when plan.fritimebegin2 is not null and plan.fritimeend2 is not null then '<br/>' || plan.fritimebegin2 || ' - ' || plan.fritimeend2 else '' end AS friplanningtime FROM planning plan LEFT JOIN groups grp ON ( plan.groupuuid=grp.uuid) WHERE plan.childuuid='" + pconfig.uuid + "' ORDER BY plan.datebegin, plan.dateend;";
-  var plandata = appdb.dbqueryarray(plandatasql);
-  if (plandata) {
-    var headerdata = getlabels(plandata.sqlhead.join(","));
-  $("#tbl_planning").html("");
-  var tblplan = $("#tbl_planning").dataTable({
-    "language": {
-          "url": "L../../js/locale/datatable_fr.json"
-        },
-    "data": plandata.sqldata,
-    "columns": headerdata,
-    "paging": false,
-    "ordering": false,
-    "info": false,
-    "filter": false,
-    "destroy": true
-  });
-  }else {
-    $('#planningdata').hide();
-  }
-}
-
-function load_table_parents() {
-  var labelx = getlabelswithkey('mother,father');
-  var areftypes = new Array(); 
-  for (var l in labelx){
-    areftypes.push("select '"+ labelx[l].title +"' as refname, '"+labelx[l].keyname+"' as reftype");
-  }
-  var lblsql = areftypes.join(" UNION "); 
-  var parentssql = "SELECT rx.refname as reftype, coalesce(rp.surname,'') || ' ' || coalesce(rp.prename,'') as nameprename, coalesce(rp.address,'') || '<br/>' || coalesce(rp.zip,'') || ' ' || coalesce(rp.city,'') || '<br/>' || coalesce(rp.country,'') as address, case when rp.phone is not null then '<span class=\"glyphicon glyphicon-earphone\" aria-hidden=\"true\"></span>: ' || rp.phone || '<br/>' else '' end || case when rp.mobile is not null then'<span class=\"glyphicon glyphicon-phone\" aria-hidden=\"true\"></span>: ' || rp.mobile || '<br/>' else '' end || case when rp.workphone is not null then '<span class=\"glyphicon glyphicon-phone-alt\" aria-hidden=\"true\"></span>: ' || rp.workphone || '<br/>' else '' end || case when rp.email is not null then '<span class=\"glyphicon glyphicon-envelope\" aria-hidden=\"true\"></span>: ' || email else '' end as phonemail, rp.job, rp.authsubscriber FROM refpersons rp join ("+lblsql+") rx on (rp.reftype=rx.reftype)  where rp.childuuid='" + pconfig.uuid + "' and rp.reftype in ('mother','father');";
-  
-  var parentsdata = appdb.dbqueryarray(parentssql);
-  if (parentsdata) {
-    var headerdata = getlabels(parentsdata.sqlhead.join(","));
-  $("#tbl_parents").html("");
-  $("#tbl_parents").dataTable({
-"language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-    "data": parentsdata.sqldata,
-    "columns": headerdata,
-    "paging": false,
-    "ordering": false,
-    "info": false,
-    "filter": false,
-    "destroy": true
-  });
-  }else {
-    $('#parentdata').hide();
-  }
-  
-  
-  
-}
-
-function load_table_refpersons() {
-   var labelx = getlabelswithkey('tuteur,famillymember,famillyfriend');
-  var areftypes = new Array(); 
-  for (var l in labelx){
-    areftypes.push("select '"+ labelx[l].title +"' as refname, '"+labelx[l].keyname+"' as reftype");
-  }
-  var lblsql = areftypes.join(" UNION "); 
-   var refpersonsql = "SELECT rx.refname as reftype, coalesce(rp.surname,'') || ' ' || coalesce(rp.prename,'') as nameprename, coalesce(rp.address,'') || '<br/>' || coalesce(rp.zip,'') || ' ' || coalesce(rp.city,'') || '<br/>' || coalesce(rp.country,'') as address, case when rp.phone is not null then '<span class=\"glyphicon glyphicon-earphone\" aria-hidden=\"true\"></span>: ' || rp.phone || '<br/>' else '' end || case when rp.mobile is not null then'<span class=\"glyphicon glyphicon-phone\" aria-hidden=\"true\"></span>: ' || rp.mobile || '<br/>' else '' end || case when rp.workphone is not null then '<span class=\"glyphicon glyphicon-phone-alt\" aria-hidden=\"true\"></span>: ' || rp.workphone || '<br/>' else '' end || case when rp.email is not null then '<span class=\"glyphicon glyphicon-envelope\" aria-hidden=\"true\"></span>: ' || email else '' end as phonemail, rp.job, rp.authsubscriber FROM refpersons rp join ("+lblsql+") rx on (rp.reftype=rx.reftype)  where rp.childuuid='" + pconfig.uuid + "' and rp.reftype not in ('mother','father');";
-
-  var refpersonsdata = appdb.dbqueryarray(refpersonsql);
-  if (refpersonsdata) {
-    var headerdata = getlabels(refpersonsdata.sqlhead.join(","));
-  $("#tbl_refpersons").html("");
-  $("#tbl_refpersons").dataTable({
-    "language": {
-          "url": "../../js/locale/datatable_fr.json"
-        },
-    "data": refpersonsdata.sqldata,
-    "columns": headerdata,
-    "paging": false,
-    "ordering": false,
-    "info": false,
-    "filter": false,
-    "destroy": true
-  });
-  }else {
-    $('#refpersondata').hide();
-  }
-  
-  
-  
-}
-
diff --git a/TODO/modules_todo/reports/js/print_loaddata.js b/TODO/modules_todo/reports/js/print_loaddata.js
deleted file mode 100644 (file)
index cdeae41..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-function initdata(){
-      var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-
-      $("#title_sub").html(winmain.document.getElementById("infoheader").value);
-
-      $("#title_main").html(maindoc.title);
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-      
-      var elx = maindoc.querySelectorAll('table[id^="tbl_"]');
-      //var elx = maindoc.querySelectorAll('tfoot');
-      
-      //jsdump(elx);
-      
-      var tcols = 1;
-      var strlp = apppref.getpreference("pageconfig.lastpage");
-      var lp = JSON.parse(strlp);
-      var strcp = apppref.getpreference("pageconfig." + lp.view);
-      var cp = JSON.parse(strcp);
-      var ctab = "";
-      //"print_loaddata.js \n");
-      if (cp.activetab) {
-        ctab = cp.activetab; 
-      }
-
-      // $("#testdata").append(JSON.stringify(elx));
-      for (var i in elx) {
-   
-      var elementdata = maindoc.getElementById(elx[i].id).innerHTML;
-      
-
-      var thead = elementdata.substring(elementdata.indexOf('<thead>'),elementdata.indexOf('</thead>')).replace('<thead>','');
-      var tbody = elementdata.substring(elementdata.indexOf('<tbody>'),elementdata.indexOf('</tbody>')).replace('<tbody>','');
-  
-
-          
-          
-      $("#tbl_list > thead").append(thead);
-      $("#tbl_list > tbody").append(tbody);
-
-      }
-
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/js/print_logchild.js b/TODO/modules_todo/reports/js/print_logchild.js
deleted file mode 100644 (file)
index e62af3e..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var pconfig = {};
-var initdate = new Date();
-
-function initdata(){
-    
-    var configdata = apppref.getpreference("pageconfig.logchild");
-  if (configdata != '') {
-    pconfig = JSON.parse(configdata);
-  }
-  var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-      initdate = new Date(encodeparam(pconfig.logdate, 'date').replace(/'/g, ''));
-      //var xdate = new Date();
-      //$("#printdatetime").html(xdate.toLocaleFormat("%d.%m.%Y %H:%M:%S"));
-     
-      $("#title_sub").html(pconfig.logdate);
-
-      $("#title_main").html(maindoc.title);
-      //$("#tbl_list").css("margin-top","100px");
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-      
-      load_table_logchilds();
-}
-
-function load_table_logchilds(){
-    var logsql = "select  ch.prename || ' ' || ch.surname AS childname, ch.checkservicenumber,lc.logmessage from childs ch left join planning pl on (ch.uuid=pl.childuuid) left join childslog lc on (lc.childuuid=ch.uuid) where date('"+ initdate.toISOString().substring(0,10)+"') between pl.datebegin and pl.dateend and lc.logmessage is not null and lc.logmessage != '' order by childname;";
-    
-    var logdata = appdb.dbquery(logsql);
-    
-    for (var i in logdata.sqldata){
-        var row = logdata.sqldata[i];
-        //"initdata print_logchild! " + JSON.stringify(row)+"\n");
-        var divd = '<div class="row panel panel-default"><div class="panel-heading"><strong>'+ row.childname + '</strong> ('+ row.checkservicenumber + ')'+'</div>';
-        divd += '<div class="panel-body">'+ row.logmessage+'</div></div>';
-        $("#div_data").append(divd);
-    }
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/js/print_multilist.js b/TODO/modules_todo/reports/js/print_multilist.js
deleted file mode 100644 (file)
index 41e3d7b..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-function initdata(){
-      var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-
-      $("#title_sub").html(winmain.document.getElementById("infoheader").value);
-
-      $("#title_main").html(maindoc.title);
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-      
-      var elx = maindoc.querySelectorAll('div[id^="tbl"]');
-      //var elx = maindoc.querySelectorAll('tfoot');
-      //"print_multilist.js \n");
-      var tcols = 1;
-      var strlp = apppref.getpreference("pageconfig.lastpage");
-      var lp = JSON.parse(strlp);
-      var strcp = apppref.getpreference("pageconfig." + lp.view);
-      var cp = JSON.parse(strcp);
-      var ctab = "";
-      //dump(JSON.stringify(cp) + "\n");
-      var getpagedesign=$("#allpages").html();
-      //dump(getpagedesign + "\n===============\n");
-      var cnt = 1;
-      $("#allpages").html("");
-      for (var i in elx) {
-      //  //dump(elx[i].id)
-        if ((elx[i].id ) && (elx[i].id.indexOf(ctab+"_wrapper") != -1)) {
-          var npage = getpagedesign.replace(/_xxnum/g,cnt);
-          
-          var elementdata = maindoc.getElementById(elx[i].id).innerHTML;
-          //
-          elementdata = elementdata.replace(/height:\ 0px;/g,'');
-          elementdata = elementdata.replace(/height:0;/g,'');
-          elementdata = elementdata.replace(/colspan="1" rowspan="1"/g,'');
-          elementdata = elementdata.replace(/style="width:\s\d+px;"/g,'');
-          //
-          var thead = elementdata.substring(elementdata.indexOf('<thead>'),elementdata.indexOf('</thead>')).replace('<thead>','');
-          var tbody = elementdata.substring(elementdata.indexOf('<tbody>'),elementdata.indexOf('</tbody>')).replace('<tbody>','');
-          var tfoot = elementdata.substring(elementdata.lastIndexOf('<tfoot>'),elementdata.lastIndexOf('</tfoot>')).replace('<tfoot>','');
-          //
-          //tcols = thead.split('</th>');
-          //dump(tbody + "\n========\n");
-          //
-          //
-          if (tbody.indexOf("dataTables_empty") == -1) {
-            $("#allpages").append(npage);
-            $("#tbl_list"+cnt+" > thead").append(thead);
-            $("#tbl_list"+cnt+" > tbody").append(tbody);
-            $("#tbl_list"+cnt+" > tfoot").append(tfoot);
-            
-            $("#tbl_list" + cnt).dataTable({
-              "language": {
-                "url": "../../../js/locale/datatable_fr.json"
-              },
-              "paging":   false,
-              "ordering": false,
-              "info":     false,
-              "filter": false,
-              "destroy": true
-            });
-            cnt++;
-          }
-          
-        }
-      }
-      $('[id$="lunch"]').removeClass('btn-success');
-      $('[id$="lunch"]').addClass('btn-default');
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/js/print_table.js b/TODO/modules_todo/reports/js/print_table.js
deleted file mode 100644 (file)
index bf0b56a..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-function initdata(){
-      var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
-                     .getService(Components.interfaces.nsIWindowMediator);
-      var winmain = windowMediator.getMostRecentWindow("xulcreorga");
-      var maindoc = winmain.document.getElementById("brw_application").contentDocument;
-
-      $("#title_sub").html(winmain.document.getElementById("infoheader").value);
-
-      $("#title_main").html(maindoc.title);
-      var crn = appdb.dbquery("select crechename,adress,city,country,zip from creche;");
-      crn = crn.sqldata[0];
-      $("#creche_name").html(crn.crechename);
-      $("#creche_address").html(crn.adress);
-      $("#creche_zip").html(crn.zip);
-      $("#creche_city").html(crn.city);
-      
-      var elx = maindoc.querySelectorAll('table[id="tbl_timetable"]');
-      //var elx = maindoc.querySelectorAll('tfoot');
-      
-      var tcols = 1;
-      var strlp = apppref.getpreference("pageconfig.lastpage");
-      var lp = JSON.parse(strlp);
-      var strcp = apppref.getpreference("pageconfig." + lp.view);
-      var cp = JSON.parse(strcp);
-      var ctab = "";
-      //dump(JSON.stringify(cp) + "\n");
-      //if (cp.activetab) {
-      //  ctab = cp.activetab; 
-      //}
-      //var elx = maindoc.querySelectorAll('table[id^="cal_"]');
-      for (var i in elx) {
-        if (elx[i].id) {
-          var elementdata = maindoc.getElementById(elx[i].id).innerHTML;
-          //elementdata = elementdata.replace(/height:\ 0px;/g,'');
-          //elementdata = elementdata.replace(/height:0;/g,'');
-          $("#tbl_list").append(elementdata);
-          //$("#tbl_list th:first-child").remove();
-          //$("#tbl_list td:first-child").remove();
-        }
-      }
-      
-      //$('td').each(function(){
-      //  if($(this).attr('colspan') > 1){
-      //    var ccol = $(this).attr('colspan');
-      //    $(this).attr('colspan',ccol -1);
-      //  }
-      //});
-      //$('th').each(function(){
-      //  if($(this).attr('colspan') > 1){
-      //    var ccol = $(this).attr('colspan');
-      //    $(this).attr('colspan',ccol -1);
-      //  }
-      //});
-
-
-      //for (var i in elx) {
-      //  //dump(elx[i].id)
-      //  if ((elx[i].id ) && (elx[i].id.indexOf(ctab+"_wrapper") != -1)) {
-      //
-      //    var elementdata = maindoc.getElementById(elx[i].id).innerHTML;
-      //    
-      //    elementdata = elementdata.replace(/height:\ 0px;/g,'');
-      //    elementdata = elementdata.replace(/height:0;/g,'');
-      //    elementdata = elementdata.replace(/colspan="1" rowspan="1"/g,'');
-      //    elementdata = elementdata.replace(/style="width:\s\d+px;"/g,'');
-      //
-      //    var thead = elementdata.substring(elementdata.indexOf('<thead>'),elementdata.indexOf('</thead>')).replace('<thead>','');
-      //    var tbody = elementdata.substring(elementdata.indexOf('<tbody>'),elementdata.indexOf('</tbody>')).replace('<tbody>','');
-      //    var tfoot = elementdata.substring(elementdata.lastIndexOf('<tfoot>'),elementdata.lastIndexOf('</tfoot>')).replace('<tfoot>','');
-      //
-      //    tcols = thead.split('</th>');
-      //
-      //    
-      //    
-      //    $("#tbl_list > thead").append(thead);
-      //    $("#tbl_list > tbody").append(tbody);
-      //    $("#tbl_list > tfoot").append(tfoot);
-      //     
-      //  }
-      //}
-      // $("#tbl_list").dataTable({
-      //  "language": {
-      //    "url": "../../../js/locale/datatable_fr.json"
-      //  },
-      //  "paging":   false,
-      //  "ordering": false,
-      //  "info":     false,
-      //  "filter": false,
-      //  "destroy": true
-      //});
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/js/printpdf.js b/TODO/modules_todo/reports/js/printpdf.js
deleted file mode 100644 (file)
index 443133a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var printpdf = {
-  //onLoad: function() {
-  //  // initialization code
-  //  this.initialized = true;
-  //  this.strings     = document.getElementById("printpdf-strings");
-  //  this.prefs       = Components.classes["@mozilla.org/preferences-service;1"]
-  //                            .getService(Components.interfaces.nsIPrefBranch).getBranch("extensions.printpdf@pavlov.");
-  //},
-  onMenuItemCommand: function(fpath,fname,e) {
-    var nsIFilePicker = Components.interfaces.nsIFilePicker;
-    var picker = Components.classes["@mozilla.org/filepicker;1"].createInstance(nsIFilePicker);
-    picker.init(window, "Save Document as PDF", nsIFilePicker.modeSave);
-    picker.appendFilter("PDF", "*.pdf");
-    picker.defaultExtension = "pdf";
-    picker.defaultString = content.document.title;
-
-    picker.show();
-
-    var webBrowserPrint = window.content.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
-    .getInterface(Components.interfaces.nsIWebBrowserPrint);
-
-    var PSSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"]
-    .getService(Components.interfaces.nsIPrintSettingsService);
-    
-    var printSettings = PSSVC.newPrintSettings;
-    
-    printSettings.printToFile = true;
-    printSettings.toFileName  = picker.file.path;
-    printSettings.printSilent = true;
-    printSettings.outputFormat = Components.interfaces.nsIPrintSettings.kOutputFormatPDF;
-    
-    // Added by bho
-    //var myPrintPrefs  = printpdf.getPrintingPrefs();
-    printSettings.printBGColors = true;
-    printSettings.printBGImages = true;
-    printSettings.unwriteableMarginTop = 0.5;
-    printSettings.unwriteableMarginLeft = 0.5;
-    printSettings.unwriteableMarginBottom = 0.5;
-    printSettings.unwriteableMarginRight = 0.5;
-    printSettings.marginTop = 0.2; /*  these are in inches */
-    printSettings.marginLeft = 0.2;
-    printSettings.marginBottom = 0.2;
-    printSettings.marginRight = 0.2;
-    //printSettings.shrinkToFit;
-    printSettings.paperName = "iso_a4"; /* name of paper */
-    printSettings.paperSizeType = 1; /* use native data or is defined here */
-    //printSettings.paperData = 9;     /* native data value */
-    printSettings.orientation = 1;
-    //"PDF Orientation:" + printSettings.orientation + "\n");
-    if (printSettings.orientation == 1) {
-      printSettings.paperWidth = 297.0; /* width of the paper in inches or mm */
-      printSettings.paperHeight = 210.0; /* height of the paper in inches or mm */
-
-    } else {
-      printSettings.paperWidth = 210.0; /* width of the paper in inches or mm */
-      printSettings.paperHeight = 297.0; /* height of the paper in inches or mm */
-    }
-    printSettings.paperSizeUnit = 1; /* paper is in inches or mm */
-    //lets hide those ugly default headers
-    printSettings.footerStrCenter = '';
-    printSettings.footerStrLeft = '';
-    printSettings.footerStrRight = '';
-    printSettings.headerStrCenter = '';
-    printSettings.headerStrLeft = '';
-    printSettings.headerStrRight = '';
-    //}
-    // END: Added by bho
-
-    webBrowserPrint.print(printSettings, null);
-  }
-  //onToolbarButtonCommand: function(e) {
-  //  // just reuse the function above.  you can change this, obviously!
-  //  printpdf.onMenuItemCommand(e);
-  //},
-  //getPrintingPrefs: function (){
-  //    return {
-  //        showBGColor: this.prefs.getBoolPref("print.showBGColors"),
-  //        showBGImages: this.prefs.getBoolPref("print.showBGImages"),
-  //        showHeaders: this.prefs.getBoolPref("print.showHeaders")
-  //    };
-  //}
-
-};
-//window.addEventListener("load", function(e) { printpdf.onLoad(e); }, false);
diff --git a/TODO/modules_todo/reports/js/printutils.js b/TODO/modules_todo/reports/js/printutils.js
deleted file mode 100644 (file)
index e4bec35..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-var printmanager = {
-  onprint: function() {
-    var sprdata = apppref.getpreference("pageconfig.lastpage");
-    var prdata = JSON.parse(sprdata);
-    var spldata = apppref.getpreference("pageconfig." + prdata.view);
-    var pldata = JSON.parse(spldata);
-    if (!pldata.printlayout) {
-      //dump(prdata.module +" "+prdata.view+": Sorry, no printlayout defined!\n");
-    }else {
-       //dump(JSON.stringify(pldata) + "\n");
-       printmanager.load_printpreview("chrome://creorga/content/modules/reports/print_" +pldata.printlayout + ".html");
-    }
-  },
-  load_pdf: function(data){
-    var params = { in : {
-        "uri": data.uri
-      },
-      out: null
-    };
-    var dlg = window.openDialog("chrome://creorga/content/modules/reports/dlg/dlgpdfviewer.xul", "dlgpdfviewer",
-      "chrome,centerscreen,resizable,scrollbars", params).focus();
-    if (params.out) {
-      //code
-    }
-  },
-  load_printpreview: function(path) {
-    var params = { in : {
-        "uri": path
-    },
-      out: null
-    };
-    var dlg = window.openDialog("chrome://creorga/content/modules/reports/dlg/dlgprint.xul", "dlgprint",
-      "chrome,centerscreen,resizable,scrollbars,modal", params).focus();
-    if (params.out) {
-      if (params.out.reload == true) {
-        printmanager.load_printpreview(params.in.uri,params.in.type);
-      }
-    }
-  },
-}
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/print_book.html b/TODO/modules_todo/reports/print_book.html
deleted file mode 100644 (file)
index 77cdde5..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Enfant</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-    <link href="../../css/jquery.dataTables.min.css" rel="stylesheet" type="text/css">
-    <link href="../../css/jquery.dataTables_themeroller.css" rel="stylesheet" type="text/css">
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-</head>
-
-<body>
-    <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left; ">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right;">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-    <div id="bookdata">
-      
-    </div>
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <script src="../../js/datatables.min.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_book.js" type="text/javascript"></script>
-</body>
-</html>
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/print_calendar.html b/TODO/modules_todo/reports/print_calendar.html
deleted file mode 100644 (file)
index b8e8d4b..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Printing - List</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-    <link href="../../css/jquery.dataTables.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/jquery.dataTables_themeroller.css" rel="stylesheet" type="text/css">-->
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-    <link href="../../css/calendar.css" rel="stylesheet" type="text/css">
-    <style>
-      .panel-daybody {
-  height: 10.5vh;
-  max-height: 10.5vh;
-  overflow-y: auto;
-  padding: 3px;
-}
-    </style>
-</head>
-
-<body>
-  <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left;">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right; ">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-  <table class="table table-bordered" id="cal_month" style="width: 100%;">
-    </table>
-    
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <script src="../../js/datatables.min.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_calendar.js" type="text/javascript"></script>
-    <script src="../../js/labels.js" type="text/javascript"></script>
-</body>
-</html>
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/print_child.html b/TODO/modules_todo/reports/print_child.html
deleted file mode 100644 (file)
index e4001e3..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Enfant</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-    <link href="../../css/jquery.dataTables.min.css" rel="stylesheet" type="text/css">
-    <link href="../../css/jquery.dataTables_themeroller.css" rel="stylesheet" type="text/css">
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-</head>
-
-<body>
-    <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left; ">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right;">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-    <div id="childdata" style="margin-top: 20px;">
-        <h2>Données de base</h2>
-        <table class="table table-striped">
-            <tbody>
-                <tr><td>Prénom</td><th id="childs_prename"></th></tr>
-                <tr><td>Nom</td><th id="childs_surname"></th></tr>
-                <tr><td>Date de naissance</td><th id="childs_birthday"></th></tr>
-                <tr><td>No. Check Service</td><th id="childs_checkservicenumber"></th></tr>
-                <tr><td>Date d'expiration</td><th id="childs_checkserviceexpiration"></th></tr>
-                <tr><td>No. Client</td><th id="childs_clientnumber"></th></tr>
-                <tr><td>Addresse</td><th id="childs_address"></th></tr>
-                <tr><td>Code Postale</td><th id="childs_zip"></th></tr>
-                <tr><td>Ville</td><th id="childs_city"></th></tr>
-                <tr><td>Pays</td><th id="childs_country"></th></tr>
-                <tr><td>Nationalité</td><th id="childs_nationality"></th></tr>
-                <tr><td>Langue maternelle</td><th id="childs_nativelanguage"></th></tr>
-                <tr><td>Remarque</td><th id="childs_remark"></th></tr>
-            </tbody>
-        </table>
-    </div>
-    
-    <div  id="parentdata" style="padding-top: 20px;">
-        <h2>Données parents / personnes de référence</h2>
-        <div id="tbl_parents_wrapper" class="dataTables_wrapper" style="width: 100%;">
-            
-            <table class="display dataTable cell-border" style="width: 100%;" id="tbl_parents" role="grid">
-              
-            </table>
-          </div>
-    </div>
-
-    <div  id="refpersondata" style="padding-top: 20px;">
-        <h2>Données personnes de réferences/authorisées</h2>
-        <div id="tbl_refpersons_wrapper" class="dataTables_wrapper" style="width: 100%;">
-            
-            <table class="display dataTable cell-border" style="width: 100%;" id="tbl_refpersons" role="grid">
-              
-            </table>
-          </div>
-    </div>
-
-    <div id="planningdata" style="padding-top: 20px;">
-        <h2>Info Planning</h2>
-        <table>
-            <tbody>
-                <tr><td>Date d'entrée</td><td id="childs_entrydate"></td></tr>
-                <tr><td>Date de sortie</td><td id="childs_leavedate"></td></tr>
-                
-            </tbody>
-        </table>
-        <div id="tbl_planning_wrapper" class="dataTables_wrapper" style="width: 100%;">
-            
-            <table class="display dataTable cell-border" style="width: 100%;" id="tbl_planning" role="grid">
-              
-            </table>
-          </div>
-    </div>
-
-    <div id="healthdata" style="padding-top: 20px;">
-        <h2>Info Santé</h2>
-        <table class="table table-striped">
-            <tbody>
-                <tr><td>Médecin de famille</td><th id="health_docname"></th></tr>
-                <tr><td>Téléphone</td><th id="health_docphone"></th></tr>
-                <tr><td>Adr. cabinet</td><th id="health_docaddress"></th></tr>
-                <tr><td>Code Postale</td><th id="health_doczip"></th></tr>
-                <tr><td>Ville</td><th id="health_doccity"></th></tr>
-                <tr><td>Pays</td><th id="health_doccountry"></th></tr>
-                <tr><td>Info Santé</td><th id="health_healthinfo"></th></tr>
-            </tbody>
-        </table>    
-    </div>
-   
-    <div id="financedata" style="padding-top: 20px;">
-        <h2>Info fincances/caution</h2>
-        <table class="table table-striped">
-            <tbody>
-                <tr><td>Somme totale</td><td id="health_docname"></td></tr>
-                <tr><td>Somme payé</td><td id="health_docphone"></td></tr>
-                <tr><td>Somme remboursé</td><td id="health_docaddress"></td></tr>
-                <tr><td>Date Status</td><td id="health_doczip"></td></tr>
-                <tr><td>Compte bancaire</td><td id="health_doccity"></td></tr>
-                <tr><td>BIC</td><td id="health_doccountry"></td></tr>
-                <tr><td>Remarque</td><td id="health_healthinfo"></td></tr>
-            </tbody>
-        </table>   
-    </div>
-    
-    
-    
-    <!--<div id="print-foot">
-      Date: <span id="printdatetime">00.00.0000 00:00</span>&nbsp;&nbsp;-&nbsp;Page: 
-    </div>-->
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <script src="../../js/datatables.min.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_child.js" type="text/javascript"></script>
-    <script src="../../js/labels.js" type="text/javascript"></script>
-</body>
-</html>
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/print_list.html b/TODO/modules_todo/reports/print_list.html
deleted file mode 100644 (file)
index b8e6cd4..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Printing - List</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-    <!-- <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css"> -->
-    <link href="../../css/glyphicons.css" rel="stylesheet">
-    <!--<link href="../../css/jquery.dataTables_themeroller.css" rel="stylesheet" type="text/css">-->
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-    <link href="../../css/calendar.css" rel="stylesheet" type="text/css">
-</head>
-
-<body>
-    <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left;">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right; ">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-    <div id="testdata" style="width: 100%;"></div>
-    <table class="table table-bordered table-hover table-striped" data-style="width: 100%;" id="tbl_list" role="grid">
-    <thead style="margin-top: 200px;"></thead>
-    <tbody>
-      
-    </tbody>
-    <tfoot>
-      
-    </tfoot>
-    </table>
-    <!--<div id="print-head" style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left;">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right; ">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>-->
-    <!--<div id="print-foot">
-      Date: <span id="printdatetime">00.00.0000 00:00</span>&nbsp;&nbsp;-&nbsp;Page:&nbsp;
-    </div>-->
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-    <!-- <script src="../../js/datatables.min.js" type="text/javascript"></script> -->
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_loaddata.js" type="text/javascript"></script>
-    <script src="../../js/labels.js" type="text/javascript"></script>
-</body>
-</html>
diff --git a/TODO/modules_todo/reports/print_logchild.html b/TODO/modules_todo/reports/print_logchild.html
deleted file mode 100644 (file)
index e2ef030..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Logbook</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-    <style>
-        .panel-heading {
-            background-color: #969696 !important;
-    }
-    </style>
-</head>
-
-<body>
-    <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left; ">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right;">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-    <div id="div_data" style="margin-top: 20px;"></div>
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <!--<script src="../../js/datatables.min.js" type="text/javascript"></script>-->
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_logchild.js" type="text/javascript"></script>
-    <script src="../../js/labels.js" type="text/javascript"></script>
-</body>
-</html>
\ No newline at end of file
diff --git a/TODO/modules_todo/reports/print_multilist.html b/TODO/modules_todo/reports/print_multilist.html
deleted file mode 100644 (file)
index 61d050f..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Printing - MultiList</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-    <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/glyphicons.css" rel="stylesheet">-->
-    <!--<link href="../../css/jquery.dataTables_themeroller.css" rel="stylesheet" type="text/css">-->
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-    <style>
-      .mpage {
-        page-break-after: always;
-      }
-    </style>
-</head>
-
-<body>
-    <div id="allpages">
-    <div id="page_xxnum" class="mpage">
-    <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left;">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right; ">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-    <h2 id="page_title"></h2>
-    <table class="dataTable row-border cell-border stripe" tyle="width: 100%;" id="tbl_list_xxnum" role="grid">
-    <thead style="margin-top: 200px;"></thead>
-    <tbody>
-      
-    </tbody>
-    <tfoot>
-      
-    </tfoot>
-    
-    </table>
-    </div>
-    </div>
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-    <script src="../../js/datatables.min.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_multilist.js" type="text/javascript"></script>
-    <script src="../../js/labels.js" type="text/javascript"></script>
-</body>
-</html>
diff --git a/TODO/modules_todo/reports/print_table.html b/TODO/modules_todo/reports/print_table.html
deleted file mode 100644 (file)
index 2129b80..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-    <title>Creorga - Printing - Table</title>
-    <meta charset="UTF-8">
-    <meta http-equiv="cache-control" content="max-age=0" />
-    <meta http-equiv="cache-control" content="no-cache" />
-    <meta http-equiv="expires" content="0" />
-    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-    <meta http-equiv="pragma" content="no-cache" />
-    <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-    <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-    <!--<link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">-->
-    <link href="../../css/glyphicons.css" rel="stylesheet">
-    <!--<link href="../../css/jquery.dataTables_themeroller.css" rel="stylesheet" type="text/css">-->
-    <link href="css/print.css" rel="stylesheet" type="text/css">
-    <link href="../../css/calendar.css" rel="stylesheet" type="text/css">
-</head>
-
-<body>
-    <div style="width: 100%;">
-      <table style="width: 100%;" id="pagehead"><tr><td style="width: 200px; text-align: left;">
-                <img src="img/logoprint.png" />
-                </td>
-      <td style="text-align: center;"><h2 id="title_main"></h2><h3 id="title_sub"></h3></td>
-                <td style="text-align: right; ">
-                  <div style="text-align: left;"><span id="creche_name">Creche</span><br/>
-                  <span id="creche_address">address</span><br/>
-                  <span id="creche_zip">CP</span>&nbsp;<span id="creche_city">City</span></div>
-                </td>
-                </tr>
-                </table>
-    </div>
-    <table class="table table-bordered table-striped" style="width: 100%;" id="tbl_list" role="grid">
-
-    </table>
-    <script src="../../js/jquery.min.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-    <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-    <script src="js/print.js" type="text/javascript"></script>
-    <script src="js/print_table.js" type="text/javascript"></script>
-    <script src="../../js/labels.js" type="text/javascript"></script>
-</body>
-</html>
diff --git a/TODO/modules_todo/reports/reports.xul b/TODO/modules_todo/reports/reports.xul
deleted file mode 100644 (file)
index 7f9abec..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE overlay PUBLIC "-//MOZILLA//DTD XUL V1.0//EN"
-"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<overlay id="ov_reports" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
-  <script type="application/javascript" src="chrome://creorga/content/modules/reports/js/printutils.js" />
-  <script type="application/javascript" src="chrome://creorga/content/modules/reports/js/printpdf.js" />
-  <toolbar id="co_maintoolbar" style="-moz-appearance: none;">
-    <toolbarbutton class="btn btn-default" id="tbb_print" insertafter="tbb_space" label="Impression" image="modules/reports/img/print.png" orient="vertical" oncommand="printmanager.onprint();"/>
-  </toolbar>
-</overlay>
\ No newline at end of file
diff --git a/TODO/modules_todo/support/img/info.png b/TODO/modules_todo/support/img/info.png
deleted file mode 100644 (file)
index ba72adc..0000000
Binary files a/TODO/modules_todo/support/img/info.png and /dev/null differ
diff --git a/TODO/modules_todo/support/js/multisite.js b/TODO/modules_todo/support/js/multisite.js
deleted file mode 100644 (file)
index 9b80d6b..0000000
+++ /dev/null
@@ -1,385 +0,0 @@
-//Source-code licensed under EUPL v1.2 ( Copyright 2019 By DKS s.à r.l. - Kilian Saffran - Luxembourg )
-
-var pconfig = {};
-var wh= window.screen.height -200;
-var delms = null;
-var tblmultisite = null;
-var sitenum = 0;
-var maxsites = 1;
-var shared = false;
-var newrsite = false;
-var higestdbnum = 0;
-var checkdb = 0;
-function initdata(){
-  //load_helpers();
-  var pdata = apppref.getpreference("pageconfig.multisite");
-  //maxsites = apppref.getpreference("support.sites");
-  //shared = apppref.getpreference("support.sharesites");
-  var strvpnpref= null;
-  if (system.os == "Darwin"){
-         strvpnpref = apppref.getpreference("support.vpn.data");
-  } else {
-         strvpnpref = apppref.getpreference("support.openvpn.data");
-  }
-  
-  if (!strvpnpref){
-         $('#btnvpnconnection').hide();
-  }
-  if (pdata != '') {
-    pconfig = JSON.parse(pdata);
-  }
-  set_infoheader("");
-  curcfg.loadconfig(apppref.getpreference("support.database.currentdb.num"));
-  //$('#btncheckdb').hide();
-  if (system.os == "Darwin"){
-    if (system.fileexists(system.toolsdir() + system.sep() + "creorgadb")){
-      checkdb = 1;
-    }
-  } else {
-         if (system.fileexists(system.toolsdir() + system.sep() + "creorgadb.exe")){
-      checkdb = 1;
-    }
-      
-  }
-  //$('#btnsyncconfig').show();
-  load_multisite_table();
-  //$("#remoteshared").on('change',function(){
-  //
-  //    if ($("#remoteshared").is(':checked')){
-  //      $('#sharedfolderdata').show();
-  //    }else {
-  //      $('#sharedfolderdata').hide();
-  //    }
-  //});
-}
-
-
-
-function load_multisite_table(){
-  sitenum = 0;
-       $("#tbl_multisite").html("");
-       $("#tbl_multisite").append("<thead><tr><th>Action</th><th>Nom du Site</th><th>Base de données</th></thead>");
-
-       var childnames = apppref.branch.getChildList("",{});
-    var tbodydata = '<tbody>';
-    
-   
-               for (var i in childnames){
-      if ((childnames[i].substring(0,16) == 'support.database')   && (childnames[i].indexOf("currentdb") == -1) && (childnames[i].indexOf("currentsite") == -1)){
-        var sitecfg = JSON.parse(apppref.getpreference(childnames[i]));
-        sitenum++;
-
-        //var ltype = "private";
-        //if (sitecfg.path.local == system.commondir()) {
-        //  ltype = "localshare";
-        //}
-        
-        //dump(JSON.stringify(sitecfg) + "\n");
-        if (higestdbnum < sitecfg.dbnum){
-          higestdbnum = sitecfg.dbnum;
-        }
-               var btndel ='';
-        var btnshare = '';
-        //var btnvpn = '';
-               var msgaccess = '';
-        if (curcfg.dbnum != sitecfg.dbnum) {
-          btndel = "<button type=\"button\" class=\"btn btn-danger\" onclick=\"confirm_delete_multisite('"+sitecfg.dbnum +"');\" title=\"supprimer\"><span class=\"glyphicon glyphicon-remove\"></span></button>";  
-        }
-    if (system.fileexists(sitecfg.path.local + system.sep() +sitecfg.uuid+".sqlite")){
-                       btnshare = "<button type=\"button\" class=\"btn btn-primary\" onclick=\"dlg_remotesite('"+sitecfg.dbnum +"');\" title=\"partager\"><span class=\"glyphicons glyphicons-folder-open\"></span></button>";
-               } else {
-                       msgaccess = "<span style=\"color: red;\">cette base de donnée n'est pas accessible! Vérifiez l'access au répertoire (et/ou la VPN)</span>";
-    }
-    var msgcheckdb = "";
-    if (checkdb == 1){
-      var msgcheckdb = '<button onclick="dbcheck(\''+sitecfg.dbnum +'\');" class="btn btn-info" type="button" id="btncheckdb"><span class="glyphicons glyphicons-database" aria-hidden="true"></span></button>';
-    }
-        
-        tbodydata += "<tr><td>"+btndel+btnshare+msgcheckdb+"</td><td>"+sitecfg.name+"</td><td><input type=\"text\" style=\"width: 90%;\" readonly=\"true\" value=\""+ sitecfg.path.local + system.sep() +sitecfg.uuid+".sqlite\"/>"+
-        ((msgaccess != "")?'<br/>' + msgaccess:"")
-        +"</td>";
-        tbodydata +="</tr>";
-        
-      }
-    }
-               tbodydata += '</tbody>';
-               $("#tbl_multisite").append(tbodydata);
-    if (system.appinfo().ID.indexOf("director") > 0){
-      $("#btnnewsite").show();  
-    } else {
-      $("#btnnewsite").hide();
-    }
-    
-    
-    $("#btnremotesite").show();
-
-  tblmultisite = $("#tbl_multisite").dataTable({
-    "paging": false,
-    "ordering": false,
-    "scrollY": wh + "px",
-    "scrollCollapse": true,
-    "info": false,
-    "filter": false,
-    "destroy": true
-  });
-   
-}
-
-function getremotefolder() {
-  var r = system.selectdirectory('',"selectionner le répertoire");
-  if (r) {
-    $('#sharedfolder').val(r.path);
-  }
-}
-
-function vpnconnection(){
-       if (system.fileexists(system.profilerootdir() + system.sep() + 'vpncfg.txt')){
-       if (system.os == "Darwin"){
-               system.runcmdline("/bin/bash",[system.toolsdir() + system.sep() + "vpnconnect.sh",system.profilerootdir() + system.sep() + 'vpncfg.txt']);
-       } else {
-               system.runcmdline(system.toolsdir() + system.sep() + "ovpn.exe",["--connect"],function(data){
-                         system.popup("Info","démarrage VPN!\n");
-                       });
-                
-       }
-       }
-}
-
-function getremotefile() {
-    var r = system.selectfile('',"selectionner la base de donnée (*.sqlite)");
-    if (r) {
-      $('#sharedfile').val(r.path);
-    } 
-}
-
-function getvpnfile() {
-    var r = system.selectvpnfile('',"selectionner le fichier (*.privkey)");
-    if (r) {
-      $('#vpnkeyfile').val(r.path);
-    } 
-}
-
-//function run_vpncheck(vpnapp){
-//     var ff = system.openFile(vpnapp);
-//}
-
-function dlg_remotesite(sitenum){
-    //dump("Remote site:" + sitenum + "\n");
-      if (sitenum > 0){
-        var strsitepref = apppref.getpreference("support.database." +sitenum);  
-        var sitepref;
-        if (strsitepref.length > 0){
-          sitepref = JSON.parse(strsitepref);
-          $("#sharedfolder").val(sitepref.path.local);
-          $("#oldfolder").val(sitepref.path.local);
-          if (sitepref.vpncheck){
-                 $("#vpnfile").val(sitepref.vpncheck);
-          }else {
-                 $("#vpnfile").val("");
-          }
-          $("#dbnum").val(sitepref.dbnum);
-          $("#gluuid").val(sitepref.uuid);
-          $("#gluuid").prop("readonly",true);
-          $("#dlg_movesite").modal('show');
-        }
-      } 
-    }
-
-function dlg_addsite(){
-      $("#sharedfile").val("");
-      $("#dlg_addsite").modal('show');  
-  }
-function dlg_vpn(){
-       if (system.os == "Darwin"){
-       var strvpnpref = apppref.getpreference("support.vpn.data");
-       var vpnpref;
-    if ((strvpnpref) && (strvpnpref.length > 0)){
-      vpnpref = JSON.parse(strvpnpref);
-      $("#vpnhost").val(vpnpref.vpnhost);
-      $("#smbuser").val(vpnpref.smbuser);
-      $("#smbpassword").val(vpnpref.smbpassword);
-      $("#vpnkeyfile").val(vpnpref.vpnkeyfile);
-      $("#smbsharedfolder").val(vpnpref.smbsharedfolder);
-    }
-       $("#dlg_vpnconfigmac").modal('show');
-       } else {
-               $("#openvpnname").html("");
-               var strvpnpref = apppref.getpreference("support.openvpn.data");
-               var vpnpref;
-               if ((strvpnpref) && (strvpnpref.length > 0)){
-                        vpnpref = JSON.parse(strvpnpref);
-                       
-               }
-               var data = system.getOpenVPNConfig();
-               for (var i in data){
-                       var sel = "";
-                       if (vpnpref && vpnpref.openvpnname == data[i]){
-                               sel = 'selected="1"';
-                       }
-                       $("#openvpnname").append("<option value=\""+data[i]+"\" "+sel+">"+data[i]+"</option>");
-               }
-               $("#dlg_vpnconfigwin").modal('show');
-       }
-}
-
-
-
-function save_vpnconfig(){
-       if (system.os == "Darwin"){
-       var vpnpref = {vpnhost:"",smbuser:"",smbpassword:"",vpnkeyfile:"",smbsharedfolder:""};
-       var strvpnpref="";
-       vpnpref.vpnhost = $("#vpnhost").val();
-       vpnpref.smbuser = $("#smbuser").val();
-       vpnpref.smbpassword = $("#smbpassword").val();
-       vpnpref.vpnkeyfile = $("#vpnkeyfile").val();
-       vpnpref.smbsharedfolder = $("#smbsharedfolder").val();
-       apppref.setpreference("support.vpn.data",vpnpref);
-       
-       strvpnpref+="LOCALPORT=52187\n";
-       
-       if (vpnpref.vpnhost.indexOf(":") != -1){
-               //var vpnport = vpnpref.vpnhost.substring(vpnpref.vpnhost.indexOf(":"));
-               strvpnpref+="SSHHOST=" + vpnpref.vpnhost.substring(0,vpnpref.vpnhost.indexOf(":")) + "\n";
-               strvpnpref+="SSHPORT=" + vpnpref.vpnhost.substring(vpnpref.vpnhost.indexOf(":")+1) + "\n";
-       }else {
-               strvpnpref+="SSHHOST=" + vpnpref.vpnhost + "\n";
-       }
-       
-       strvpnpref+="SMBUSER=" + vpnpref.smbuser + "\n";
-       strvpnpref+="SMBPWD=" + vpnpref.smbpassword + "\n";
-       strvpnpref+="SMBFOLDER=" + vpnpref.smbsharedfolder + "\n";
-       strvpnpref+="SSHKEYFILE=" + vpnpref.vpnkeyfile + "\n";
-       //dump(strvpnpref +"\n->" + system.profilerootdir() + "/vpncfg.txt\n");
-       system.WriteTextFile(strvpnpref,system.profilerootdir() + "/vpncfg.txt");
-       $("#dlg_vpnconfigmac").modal('hide');
-       } else {
-               var vpnpref = {openvpnname:""};
-               vpnpref.openvpnname = $("#openvpnname").val();
-               apppref.setpreference("support.openvpn.data",vpnpref);
-               var strvpnpref ="OPENVPNNAME="+vpnpref.openvpnname+"\n";
-               system.WriteTextFile(strvpnpref,system.profilerootdir() + system.sep() +"vpncfg.txt");
-               $("#dlg_vpnconfigwin").modal('hide');
-               
-       }
-}
-
-
-
-function remove_vpnconfig(){
-       OS.File.remove(system.profiledir() + system.sep() +"vpncfg.txt");
-       if (system.os == "Darwin"){
-               apppref.setpreference("support.vpn.data",null);
-               $("#dlg_vpnconfigmac").modal('hide');
-       } else {
-               apppref.setpreference("support.openvpn.data",null);
-               $("#dlg_vpnconfigwin").modal('hide');
-       }
-       
-       
-}
-
-
-  function confirm_delete_multisite(dbnum){
-
-        delms = dbnum;
-        $("#confirm_delete_multisite").modal('show');
-        return false;
-      }
-  
-  function delete_multisite(){
-       var deldbsite = JSON.parse(apppref.getpreference("support.database." + delms));
-        apppref.deletepreference("support.database." + delms);
-                               //"delete " + deldbsite.path.local + system.sep() + deldbsite.uuid + ".sqlite\n");
-        if (deldbsite.path.local == system.profiledir()) {
-          OS.File.remove(deldbsite.path.local + system.sep() + deldbsite.uuid + ".sqlite",{ ignoreAbsent:true});
-          OS.File.removeDir(deldbsite.path.local + system.sep() + 'imports' +system.sep() + deldbsite.uuid,{ ignoreAbsent:true});
-          OS.File.removeDir(deldbsite.path.local + system.sep() + 'reports' +system.sep() + deldbsite.uuid,{ ignoreAbsent:true});
-        }
-        delms =null;
-       globelreq.send_request({page:'updatesiteslist',data:null});
-        load_multisite_table();
-        
-        $("#confirm_delete_multisite").modal('hide');
-        
-        return false;
-  }
-  
-   function save_multisite(){
-        var cuuid = "";
-       var rowCount = higestdbnum + 1;
-       var syspath= system.profiledir();
-        var newid=appdb.generate_uuid();
-
-       var dbname = syspath + system.sep() + newid +".sqlite"; 
-       var dbclone = system.appdir() + system.sep() +"defaults"+system.sep()+"profile"+system.sep()+"creorga.sqlite";
-       var sitecfg = {name:"Nouvelle crèche",dbnum:rowCount,uuid:newid,path:{local:system.profiledir(),remote:""},lastsync:""};
-       apppref.setpreference("support.database." + rowCount,sitecfg);
-       globelreq.send_request({page:'updatesiteslist',data:null});
-       OS.File.copy(dbclone, dbname);
-        load_multisite_table();
-      }
-  
-  
-   function save_remotesite() {
-     //if move site partagé
-      var fld = $("#sharedfolder").val();
-      var nuuid = $("#frmeditmultisite #gluuid").val();
-      if ((fld === "") || (nuuid === "")) {
-        errormsg("ERREUR","pas de données!");
-      }else if (($("#oldfolder").val() !== "") && ($("#sharedfolder").val() !== $("#oldfolder").val())) {
-        tools.movecreche($("#oldfolder").val(),$("#sharedfolder").val(),nuuid,$("#dbnum").val());
-        
-      }
-      var strcfgx = apppref.getpreference("support.database."+$("#dbnum").val());
-//      cfgx = JSON.parse(strcfgx);
-//      cfgx.vpncheck=$("#vpnfile").val();
-//      
-//      //dump("new Config: " + JSON.stringify(cfgx) + "\n");
-//      apppref.setpreference("support.database."+$("#dbnum").val(),cfgx);
-      load_multisite_table(); 
-      $("#dlg_movesite").modal('hide');
-   }
-   
-   function add_remotesite() {
-       //if new site partagé
-        var fld = $("#sharedfile").val();
-        if (fld === "") {
-          errormsg("ERREUR","pas de données!");
-          $("#dlg_addsite").modal('hide');
-          return;
-        }
-        if (!system.fileexists(fld)){
-            errormsg("ERREUR","ce fichier n'existe pas!");
-            $("#dlg_addsite").modal('hide');
-            return;  
-        }
-        var rowCount = higestdbnum + 1;
-       var tcurdbnum = curcfg.dbnum; 
-       var nuuid = system.getFileName(fld);
-       nuuid = nuuid.substring(0,nuuid.length-7);
-       var bdpath = system.getDirectory(fld);
-       //dump("new nuuid:" + nuuid + "\n");
-       var sitecfg = {name:"Crèche Partagé",dbnum:rowCount,uuid:nuuid,path:{local:bdpath,remote:""},lastsync:""};
-        apppref.setpreference("support.database." + rowCount,sitecfg);
-          try {
-            curcfg.loadconfig(rowCount);
-            var xsn = appdb.dbquery("select crechename from creche where uuid='"+nuuid+"';");
-            sitecfg.name = xsn.sqldata[0].crechename;
-            apppref.setpreference("support.database." + rowCount,sitecfg);
-          } catch(e){
-            errormsg("ERREUR","Ne peux pas lire la b.d. partagé!");
-          }
-          curcfg.loadconfig(tcurdbnum);
-          globelreq.send_request({page:'updatesiteslist',data:null});
-          load_multisite_table();
-          $("#dlg_addsite").modal('hide');
-          $('#btnvpnconnection').show();
-     }
-   
-     function dbcheck(mydbid){
-       
-       appdb.check_schema(mydbid);
-     } 
-
-   
\ No newline at end of file
diff --git a/TODO/modules_todo/support/js/update.js b/TODO/modules_todo/support/js/update.js
deleted file mode 100644 (file)
index d43330d..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-Components.utils.import("resource://gre/modules/Downloads.jsm");
-
-function initdata(){
-  var lic = apppref.getpreference("support.license");
-  var appdata = system.appinfo(); 
-  var data = {};
-  //alert("Init X");
-  //dump("http://www.dks.lu/creorga/update.cgi?lic=" + lic + "&appid=" +appdata.ID);
-  
-  NetUtil.asyncFetch("http://www.dks.lu/creorga/update.cgi?lic=" + lic + "&appid=" +appdata.ID, function(inputStream, status) {
-    //alert("Test.x");
-    if (!Components.isSuccessCode(status)) {
-      document.getElementById("updmsg").value="Impossible de verifier!";
-    } else {
-      var strdata = NetUtil.readInputStreamToString(inputStream, inputStream.available());
-      //dump("Update data returned!\n: " + JSON.stringify(strdata) + "\n");
-      //jsdump("Data returned:" + strdata + "\n");
-      try {
-        data = JSON.parse(strdata);
-        
-      } catch(e){
-        document.getElementById("updmsg").value="Impossible de verifier!";
-
-        //jsdump(e.message);
-        return data;
-      }
-      //alert(JSON.stringify(data));
-      dldmsg(data);
-      
-
-      
-    }
-  });
-  
-  set_infoheader("Creorga mise Ã  jour");
-  
-}
-
-function dldmsg(data){
-  //dump("Data for message: \n: " + JSON.stringify(data) + "\n");
-  if (!data.update){
-    $("#updmsg").html("<strong>pas de mise-à-jour disponible</strong>");
-  } else {
-    $("#updmsg").html("<strong>Nouvelle Version disponible!</strong><br/><a class=\"btn btn-primary\" onclick=\"dldupdate('"+ data.update+"');\">clicker ici pour installer la mise Ã  jour</a>");
-  }
-  //alert("TEST");
-  
-}
-function dldupdate(dldfile){
-  $("#updmsg").html("<strong>Attendez!!! Téléchargement en cours!</strong>");
-  Downloads.fetch("http://www.dks.lu/creorga/updates/" + dldfile, system.tmpdir() + system.sep() + dldfile)
-         .then(() => afterdld(system.tmpdir() + system.sep() + dldfile), ex => alert("Erreur pendant le chargement"));
-}
-
-function afterdld(res){
-  system.openFile(res);
-  system.closecreorga();
-}
diff --git a/TODO/modules_todo/support/multisite.html b/TODO/modules_todo/support/multisite.html
deleted file mode 100644 (file)
index ec7de51..0000000
+++ /dev/null
@@ -1,268 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Creorga - Configuration Site</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/datatables.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/dataTables.bootstrap.min.css" rel="stylesheet" type="text/css">
-  <link href="../../css/bootstrap-datetimepicker.min.css" rel="stylesheet" type="text/css">
-  <!-- <link href="../../css/bootstrap-timepicker.min.css" rel="stylesheet" type="text/css"> -->
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css"><!-- Fav and touch icons -->
-</head>
-
-<body>
-
-   <div class="container-fluid">
-<!--   <h2>Configuration Sites</h2>-->
-<br/>
-   <button onclick="save_multisite();" class="btn btn-primary" type="button" id="btnnewsite"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span>&nbsp; nouveau site</button>
-   <button onclick="dlg_addsite();" class="btn btn-primary" type="button" id="btnremotesite"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span>&nbsp; site existant (partagé)</button>
-   <button onclick="dlg_vpn();" class="btn btn-primary" type="button" id="btnvpnconfig" ><span class="glyphicons glyphicons-unlock" aria-hidden="true"></span>&nbsp; Configuration VPN</button>
-<!--    <button onclick="checkdatabases();" class="btn btn-info" type="button" id="btncheckdb" style="display: none;"><span class="glyphicon glyphicon-reload" aria-hidden="true"></span>&nbsp; verification DB</button> -->
-   <button onclick="vpnconnection();" class="btn btn-warning" type="button" id="btnvpnconnection"><span class="glyphicons glyphicons-database-lock" aria-hidden="true"></span>&nbsp; Connecter VPN</button>
-   
-   <table class="display dataTable" width="100%" style="width: 100%;" id="tbl_multisite" role="grid"></table>
-</div>
-   <div class="modal fade" id="dlg_movesite">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Délocaliser Site</h4>
-              </div>
-              <div class="modal-body">
-                <div id="frmeditmultisite">
-                  <input type="hidden" value="0" id="uuid" />
-                  <input type="hidden" value="" id="oldfolder" />
-                  <input type="hidden" value="" id="dbnum" />
-                  <div class="form-group form-inline">
-                    <label for="name">ID Globale</label>
-                    <input type="text" value="" id="gluuid"  nullable="true" style="width: 70%;" class="form-control">
-                  </div>
-                  <div class="form-group" id="sharedfolderdata">
-                    <label for="name">Dossier des données</label>
-                    <div class="form-inline">
-                    <input type="text" class="form-control" id="sharedfolder" style="width: 70%;">
-                    <button class="btn btn-primary" onclick="getremotefolder();">Choisir le dossier...</button>
-                    </div>
-                    <div>
-                      
-                    </div>
-                  </div>
-
-                  
-                </div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="save_remotesite();" class="btn btn-primary">OK</button>
-              </div>
-              
-            </div>
-          </div>
-        </div>
-        <div class="modal fade" id="dlg_addsite">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Ajouter Site partagé</h4>
-              </div>
-              <div class="modal-body">
-                <div id="frmeditnewsite">
-                  
-                  <div class="form-group" id="sharedfiledata">
-                    <label for="name">Dossier des données</label>
-                    <div class="form-inline">
-                    <input type="text" class="form-control" id="sharedfile" style="width: 70%;" >
-                    <button class="btn btn-primary" onclick="getremotefile();">Choisir la base de donnée</button>
-                    </div>
-                    <div>
-                      
-                    </div>
-                  </div>
-                  
-                  
-                </div>
-                </div>
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> <button onclick="add_remotesite();" class="btn btn-primary">OK</button>
-              </div>
-              
-            </div>
-          </div>
-        </div>
-        <div class="modal fade" id="confirm_delete_multisite">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-
-                <h4 class="modal-title">Supprimer Crèche</h4>
-              </div>
-
-              <div class="modal-body">
-                ÃŠtes vous sûre de supprimer cette crèche?<br/>
-              </div>
-
-              <div class="modal-footer">
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Non</button> <button onclick="delete_multisite();" class="btn btn-primary">Oui</button>
-              </div>
-            </div>
-          </div>
-        </div>
-        <!-- VPN Config -->
-        <div class="modal fade" id="dlg_vpnconfigmacos">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Configuration VPN</h4>
-              </div>
-              <div class="modal-body">
-                <div id="frmeditvpn">
-                  
-                  <div class="form-group">
-                    <label for="vpnhost">VPN Connection User@Host:Port</label>
-                    <input type="text" class="form-control" id="vpnhost">
-                  </div>
-                  <div class="form-group">
-                    <label for="vpnkeyfile">VPN Fichier clé privé (*.key)</label>
-                    <div class="form-inline">
-                    <input type="text" class="form-control" id="vpnkeyfile" style="width: 70%;" readonly="true">
-                    <button class="btn btn-primary" onclick="getvpnfile();">Choisir...</button>
-                    </div>
-                  <div>
-                  <div class="form-group">
-                    <label for="smbuser">Utilisateur</label>
-                    <input type="text" class="form-control" id="smbuser">
-                  </div>
-                  <div class="form-group">
-                    <label for="smbpassword">Mot de passe</label>
-                    <input type="password" class="form-control" id="smbpassword">
-                  </div>
-                         <div class="form-group">
-                    <label for="smbsharedfolder">Dossier partagé</label>
-                    <input type="text" class="form-control" id="smbsharedfolder">
-                  </div>    
-                    </div>
-                  </div>
-                </div>
-                </div>
-              <div class="modal-footer">
-               <button onclick="remove_vpnconfig();" class="btn btn-primary">Supprimer Configuration</button>
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> 
-                <button onclick="save_vpnconfig();" class="btn btn-primary">OK</button>
-              </div>
-              
-            </div>
-          </div>
-        </div>
-        <div class="modal fade" id="dlg_vpnconfigwin">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Configuration VPN</h4>
-              </div>
-              <div class="modal-body">
-                <div id="frmeditvpn">
-                  
-                  <div class="form-group">
-                    <label for="openvpnname">VPN</label>
-                    <select id="openvpnname">
-                    </select>
-                    
-                  </div>
-                  
-                  
-                  
-                            
-                    
-                </div>
-                </div>
-              <div class="modal-footer">
-               <button onclick="remove_vpnconfig();" class="btn btn-primary">Supprimer Configuration</button>
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> 
-                <button onclick="save_vpnconfig();" class="btn btn-primary">OK</button>
-              </div>
-              
-            </div>
-          </div>
-        </div>
-        <!-- SYNC Config 
-        <div class="modal fade" id="dlg_syncconfig">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-header">
-                <button data-dismiss="modal" class="close" type="button"><span aria-hidden="true">x</span><span class="sr-only">Close</span></button>
-                <h4 class="modal-title">Configuration pour Synchronisation</h4>
-              </div>
-              <div class="modal-body">
-                <div id="frmeditsync">
-                  <div class="form-group ">
-                    <label for="synctype">Protocol://Host:Port</label>
-                    <div class="form-inline">
-                    <select id="synctype"><option value="ftp">FTP</option></select>://
-                    <input type="text" class="form-control" style="width: 60%;" id="synchost">:
-                    <input type="text" class="form-control" style="width: 10%;" id="syncport">
-                       </div>
-                  </div>
-                  <div class="form-group">
-                  <div class="form-inline">
-                    <label for="syncuser">Utilisateur</label>
-                    <input type="text" class="form-control" style="width: 60%;" id="syncuser">
-                    </div>
-                  </div>
-                  <div class="form-group">
-                  <div class="form-inline">
-                    <label for="syncpassword">Mot de passe</label>
-                    <input type="password" class="form-control" style="width: 60%;" id="syncpassword">
-                    </div>
-                  </div>
-                         <div class="form-group">
-                         <div class="form-inline">
-                    <label for="syncfolder">Dossier partagé</label>
-                    <input type="text" class="form-control" style="width: 60%;" id="syncfolder">
-                    </div>
-                  </div>
-                  <div class="form-group">
-                  <div class="form-inline">
-                    <label for="syncinterval">Interval</label>
-                    <input type="text" class="form-control" style="width: 10%;" id="syncinterval">&nbsp;minutes
-                       </div>
-                  </div> 
-                </div>
-              </div>
-              <div class="modal-footer">
-               <button onclick="remove_syncconfig();" class="btn btn-primary">Supprimer Configuration</button>
-                <button aria-hidden="true" data-dismiss="modal" class="btn">Annuler</button> 
-                <button onclick="save_syncconfig();" class="btn btn-primary">OK</button>
-              </div>
-              
-            </div>
-          </div>
-        </div> -->
-      
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="../../js/datatables.min.js" type="text/javascript"></script>
-  <script src="../../js/moment-with-locales.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap-datetimepicker.min.js" type="text/javascript"></script>
-  <!-- <script src="../../js/bootstrap-timepicker.min.js" type="text/javascript"></script> -->
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/database.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/tools.js" type="text/javascript"></script>
-  <script src="../../js/labels.js" type="text/javascript"></script>
-  <script src="js/multisite.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
\ No newline at end of file
diff --git a/TODO/modules_todo/support/support.xul b/TODO/modules_todo/support/support.xul
deleted file mode 100644 (file)
index 735eaa4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE overlay PUBLIC "-//MOZILLA//DTD XUL V1.0//EN"
-"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-<overlay id="ov_support" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
-<menupopup id="pophelp">
-  <menuseparator insertafter="mnuabout" id="mnuspoortsep"/>
-  <menuitem label="mise Ã  jour..." insertafter="mnuupdate" oncommand="navigation.load_appview('update','support',null,'mise Ã  jours');"  id="mnuupdate"/>
-  <menuitem label="Configuration Sites" insertafter="mnubackup" oncommand="navigation.load_appview('multisite','support',null,'Configuration Sites');"  id="mnumultisiteconfig"/>
-  
-</menupopup>
-
-</overlay>
\ No newline at end of file
diff --git a/TODO/modules_todo/support/update.html b/TODO/modules_todo/support/update.html
deleted file mode 100644 (file)
index 8969bae..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="fr">
-<head>
-  <meta charset="utf-8">
-  <title>Creorga - Update</title>
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  
-  <link href="../../css/bootstrap.min.css" rel="stylesheet" type="text/css">
-  <!--<link href="../../css/bootstrap-theme.min.css" rel="stylesheet" type="text/css">-->
-  <link href="../../css/glyphicons.css" rel="stylesheet" type="text/css">
-  <link href="../../css/creorga.css" rel="stylesheet" type="text/css"><!-- Fav and touch icons -->
-</head>
-
-<body>
-
-   <div class="container-fluid">
-<!--   <h2>Configuration Sites</h2>-->
-<br/>
-       <div class="row">
-        <div class="col-sm-12">
-          <div class="panel-heading">
-              <h3 class="panel-title"><img src="../../img/creorga16.png" alt="icon">&nbsp;Info mise-à-jour</h3>
-            </div>
-            <div class="panel-body" id="updmsg">
-              Pas de mise-à-jour disponible!
-            </div>
-        </div>
-      </div>
-   
-
-        </div>
-      
-  <script src="../../js/jquery.min.js" type="text/javascript"></script>
-  <script src="../../js/bootstrap.min.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/navigation.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/system.js" type="text/javascript"></script>
-  <script src="chrome://creorga/content/js/preferences.js" type="text/javascript"></script>
-  <script src="js/update.js" type="text/javascript"></script>
-  <script src="../../js/creorga.js" type="text/javascript"></script>
-  
-</body>
-</html>
\ No newline at end of file
index 8d0b622..e36a77c 100644 (file)
@@ -22,16 +22,11 @@ sub new {
     #  $self->{$x} = $p->{$x};
     #}
     $self->{dbtype} = 'PgPP'; #PgPP,SQLite
-    
-    if ($ENV{SERVER_NAME} eq "localhost"){
-      $self->{dbhost} = 'localhost';
-    } else {
-      $self->{dbhost} = 'sql629.your-server.de';
-    }
-    
-    #
+    $self->{dbhost} = 'sql629.your-server.de';
+    #$self->{dbhost} = 'localhost';
     $self->{dbname} = 'dks_lu';
     $self->{dbuser} = 'dks_lu';
+    #$self->{dbpassword} = 'dks_lu';
                $self->{dbpassword} = 'DcrWuLd4KU3u68xd';
     return $self;
 }
index 4244aaa..8a55af2 100644 (file)
Binary files a/apps/data/db/lechatpotte.sqlite and b/apps/data/db/lechatpotte.sqlite differ
index 3c6da64..19c528d 100644 (file)
Binary files a/apps/data/db/underatert.sqlite and b/apps/data/db/underatert.sqlite differ
index 0937d10..2269b79 100644 (file)
@@ -9,12 +9,13 @@ use Template;
 use CGI;
 use CGI::Cookie;
 use CGI::Carp qw/fatalsToBrowser/;
-
+#use FindBin qw($Bin $RealBin);
 
 use Data::Dumper;
 use JSON::PP;
 use session;
-
+#my $tmpldir = "/mnt/c/Users/ksaff/Workspace/juridig/app/tmpl";
+# chdir(dirname($0));
 my $skl = "skeleton/index.tt";
 my $cgi = new CGI();
 my $p=();
@@ -23,7 +24,6 @@ my $cookie;
 # foreach my $pp (@params){
 #      $p->{$pp} = $cgi->param($pp);
 # }
-my $status = '200 ok';
 my $sess = ();
 my $se = session->new();
 my $page = "index.tt";
@@ -31,7 +31,6 @@ my $basepath = substr(dirname($ENV{"SCRIPT_FILENAME"}),length($ENV{"DOCUMENT_ROO
 # my $basepath = $ENV{"DOCUMENT_ROOT"};
 my $filepath = substr($cgi->url({-absolute=>1}),length($basepath)+1); 
 #if (exists($p->{p})){
-
 if ($filepath ne ""){
   $page = $filepath;
   $page =~ s/html$/tt/;
@@ -80,19 +79,11 @@ if (($ENV{HTTP_USER_AGENT} !~ /Chrome/) || ($ENV{HTTP_USER_AGENT} =~ /Edge/) ||
 # if (!exists($sesdata->{usersession})){
 #      $p->{page} = "login";
 # }
-if ( -d dirname($ENV{"SCRIPT_FILENAME"}).'/tmpl/'.$page){
-  $page = $page.'/index.tt';
-}
+print $cgi->header(-type=>'text/html', -charset=>"utf-8",-cookie => $cookie);
 
-my $template = Template->new({INCLUDE_PATH => [dirname($ENV{"SCRIPT_FILENAME"}).'/tmpl']});
+my $template = Template->new({INCLUDE_PATH => [dirname($0).'/tmpl']});
 my @lv = split(/\//,$filepath);
-my $absnum = 0;
-if (scalar(@lv) > 1){
-  $absnum = scalar(@lv)-1;  
-} else {
-  $absnum = scalar(@lv);
-}
-# my $absnum = scalar(@lv)-1;
+my $absnum = scalar(@lv)-1;
 my $vars->{abspath} = "";
 for (my $i=0;$i<$absnum;$i++){
   $vars->{abspath} .= "../";
@@ -103,9 +94,7 @@ $vars->{basepath} = $basepath;
 $vars->{page} = $page;
 $vars->{pagename} = basename($page);
 $vars->{pagename} =~ s/\.tt$//;
-
 my ($appname) = $ENV{REQUEST_URI} =~ /.*\/apps\/(\w+)\/.*/;
-
 #$vars->{requri} = $ENV{REQUEST_URI};
 if ($p->{sid} ne ""){
   $vars->{appname} = $appname;
@@ -119,17 +108,10 @@ if ($p->{sid} ne ""){
 if ($skl ne "skeleton/login.tt" && $page ne "index.tt"){
   $skl = "skeleton/app.tt";
 }
-# if ((! -f dirname($ENV{"SCRIPT_FILENAME"}).'/tmpl/'.$page) && ($skl ne "skeleton/login.tt")){
-#   $status = '404 Not Found';
-#   $skl = "skeleton/error.tt";
-# }
-print $cgi->header(-status => $status, -type=>'text/html', -charset=>"utf-8",-cookie => $cookie);
 # print Dumper($template);
 $template->process($skl,$vars) || die "Template process failed: ", $template->error(), "\n";
-# print '/*';
-# # for my $e ( keys %ENV ) {
-# #     print "$e: ".$ENV{$e}."<br/>";
-# # }
-# print Dumper($vars);
-# print scalar(@lv);
-# print '*/';
+# my %headers = map { $_ => $cgi->http($_) } $cgi->http();
+# print "Got the following headers:\n";
+# for my $header ( keys %headers ) {
+#     print "$header: $headers{$header}<br/>";
+# }
index c946fc3..c290a08 100644 (file)
@@ -130,7 +130,7 @@ document.addEventListener("keydown", function(e) {
                  
                  
   }
-  var https = 'http';
+  var https = 'https';
   $(document).ready(function() {
 
     app.baseurl = https + '://' + location.host + location.pathname.substring(0,location.pathname.lastIndexOf('/apps/')+6);
@@ -140,5 +140,25 @@ document.addEventListener("keydown", function(e) {
     app.loadsites();
   });
   
+  // $("#appframe").on('load', function(){
+       //   //console.log($("#appframe").attr("src"));
+       //   var src = $("#appframe").attr("src").replace(/\\/g,'/');
+       //   src = src.substring(src.indexOf('/creorga/') + 5);
+       //   src = src.substring(0,src.indexOf('?'));
  
+       //   $.ajax({
+       //              encoding:"UTF-8",
+       //              url:app.api() +'prefs.cgi?page=service&set=' +encodeURIComponent('{"lastpage":"'+ src+'"}') ,
+       
+       //              success: function (data){
+  
+                                       
+       //                      },
+       //                      error: function(data){
+                               
+       //                              console.log("Error:" + JSON.stringify(data));
+       //                      },
+       //                      async:false
+       //      });
+  // })
   
\ No newline at end of file
index 0c50f42..b884dda 100644 (file)
@@ -1,5 +1,6 @@
+var https ='https';
 function logout() {
-  var myurl = location.href;
+  myurl = https + '://'+ location.host  + '/apps/';
       $.ajax({
           async: false,
           url: myurl,
index 029000b..2912353 100644 (file)
@@ -2,7 +2,7 @@ var appdb = {
                dbquery: function(sQuery){
                        var type='querysorted';
       var result= {sqldata:[]};
-      //console.log(sQuery);
+      
 
                        $.ajax({
         encoding:"UTF-8",
@@ -15,8 +15,8 @@ var appdb = {
                                                result=data.result;
                                        },
                                        error: function(data){
-                                         
-                                               console.log("Error:"  +  JSON.stringify(data));
+                                       
+                                               console.log("Error:" + JSON.stringify(data));
                                        },
                                async:false
                        });
diff --git a/apps/lib.par b/apps/lib.par
deleted file mode 100644 (file)
index 3013689..0000000
Binary files a/apps/lib.par and /dev/null differ
index a210001..4403214 100644 (file)
@@ -523,11 +523,15 @@ function saveyearvacdays() {
     days = parseFloat($('#vacancyyeartotal').val().replace(',','.'));
     hours = parseFloat($('#vacancyyeartotal').val().replace(',','.')) * 8;
   }
+  //console.log(csel);
   var cnum = parent.appdb.dbquery(csel);
+  //console.log(cnum);
+  //console.log(Object.keys(cnum.sqldata).length);
   var inssql = "INSERT INTO staffvacancydays (staffuuid,vacancyyear,days,hours) VALUES ('"+pconfig.uuid+"','"+pconfig.year+"',"+days+","+hours+");";
-  if (cnum.sqldata.length > 0) {
+  if (cnum && cnum.sqldata && Object.keys(cnum.sqldata).length > 0) {
     inssql = "UPDATE staffvacancydays SET days="+days+",hours="+hours+" where staffuuid='"+pconfig.uuid+"' and vacancyyear='"+pconfig.year+"';";
   }
+  //console.log(inssql);
   parent.appdb.dbexec(inssql);
   //calcvacancy();
 }
index d49ce90..b13717d 100644 (file)
@@ -63,7 +63,7 @@
           </div>
           <div class="register-half-bg col-lg-6 d-flex align-items-center justify-content-center">
               <div class="brand-logo">
-                  <img src="[% abspath %]images/logo.svg" style="width: 300px;" alt="logo">
+          <!--        <img src="[% abspath %]images/logo.svg" style="width: 300px;" alt="logo">-->
                 </div>
             
           </div>
diff --git a/css/site.css b/css/site.css
deleted file mode 100644 (file)
index 9990c36..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
-.bg-topbar {
-   background-color:  #6a92d3;
-}
-
-.main {
-       margin-top: 80px;
-}
-
-.card-header {
-   background-color:  #6a92d3;
-   color: #fff;
-}
-
-h1 {
-       font-size: 35pt;
-       font-weight: bold;
-}
-
-.card {
-       /*opacity: 0.8;*/
-}
-
-header.masthead {
-       padding-top: 30px;
-       position: relative;
-       background: url(../img/bg.jpg);
-  background-position: center;
-  background-size: cover;
-}
-
-
-.iconbar {
-       width: 60px;
-    float: left;
-}
-
-a {
-  color: #000;
-}
-
-a:hover {
-  color: #000;
-}
-
-a.footer {
-       color: #fff;
-}
-
-.dropdown-menu {
-  border-radius: 0px;
-}
-
-.navbar-nav .dropdown-menu {
-  background-color:  #6a92d3;
-  color: #fff;
-}
-
-.navbar-nav .dropdown-menu .dropdown-item {
-  color: #fff;
-}
-
-.navbar-nav .dropdown-menu .dropdown-item:hover {
-  background-color: #52638e;
-}
-
-.nav-link:hover {
-  text-decoration: underline;
-}
-
-h3 a: {
-  color: #000;
-}
-
diff --git a/dev/db/changes.sql b/dev/db/changes.sql
deleted file mode 100644 (file)
index 28243dc..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-ALTER TABLE creche add column idcheckservice TEXT;
-update vacancycalendar set vacyear=strftime('%Y',datefrom) where vacyear is null;
-update vacancycalendar set timeto='08:00' where timeto='00:00';
-ALTER TABLE vacancycalendar add column vacyear integer;
-alter table staff add column inactive boolean;
\ No newline at end of file
diff --git a/dev/db/dks_lu.pgsql.basedata.sql b/dev/db/dks_lu.pgsql.basedata.sql
deleted file mode 100644 (file)
index 925d7e6..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-INSERT INTO public.appaccess (id, id_user, creorga) VALUES (1, 1, '{
-  "db": [
-    {"name": "Creche Un der Atert","dbname": "underatert"},
-      {"name": "Le Chat Potté","dbname": "lechatpotte"}
-  ],
-  "modules": {
-    "child": {"delete": true,"filelist": false},
-    "coworker": {"menu": false},
-    "staff": {"menu":true,"vacancy":true,"delete": false,"planning" : false},
-    "checkservice": { "menu": false,"export": false,"import":false },
-    "creche": { "menu": true}
-  }
-}');
-SELECT pg_catalog.setval('public.appaccess_id_seq', 1, true);
-INSERT INTO public.users (id, email, username, userpassword, prename, surname, confirmkey, created, modified, blocked) VALUES (1, 'ksaffran@dks.lu', 'kilian', '0ecf731e2426a8a469f06e9f4a3bcbed6f8071d9d3e3ef7ef5fd9165021e27ec', NULL, NULL, NULL, '2019-04-08 11:07:47.289143', '2019-04-08 11:07:47.289143', NULL);
-SELECT pg_catalog.setval('public.users_id_seq', 1, true);
-
--- perl -e "use Digest::SHA qw(sha256_hex); print sha256_hex('4EbH6F4btSgWV87w');" user christine.lopez
---INSERT INTO users (email, username, userpassword, prename, surname) values ('crecheunderatert@pt.lu','christine.lopez','b55331d2f418ea21fc04c6ffa3b3604404156ef6d3fb4ba20e318c523fd94115','Christine','Lopez');
--- perl -e "use Digest::SHA qw(sha256_hex); print sha256_hex('RZCvS981DWqp42xn');" user creche.useldange
---INSERT INTO users (email, username, userpassword, prename, surname) values ('crecheunderatert@pt.lu','creche.useldange','3c79a46f823969294a57da2ffa6a1ad095b55a0bc69346cba508543eb36f1625','Creche','Useldange');
--- perl -e "use Digest::SHA qw(sha256_hex); print sha256_hex('cm8As5Pc5TE4p5HJ');" user creche.bergem
--- INSERT INTO users (email, username, userpassword, prename, surname) values ('crecheunderatert@pt.lu','creche.bergem','da89e31ce3c99cf304127e33443af1a866c8375728cbb730aca1f2d2c277fe7a','Creche','Useldange');
-/*
-INSERT INTO public.appaccess (id_user, creorga) VALUES (2, '{
-  "db": [
-    {"name": "Creche Un der Atert","dbname": "underatert"},
-      {"name": "Le Chat Potté","dbname": "lechatpotte"}
-  ],
-  "modules": {
-    "child": {"delete": true,"filelist": false},
-    "coworker": {"menu": false},
-    "staff": {"menu":true,"vacancy":true,"delete": false,"planning" : false},
-    "checkservice": { "menu": false,"export": false,"import":false },
-    "creche": { "menu": true}
-  }
-}');
-INSERT INTO public.appaccess (id_user, creorga) VALUES (3, '{
-  "db": [
-    {"name": "Creche Un der Atert","dbname": "underatert"}
-  ],
-  "modules": {
-    "child": {"delete": false,"filelist": false},
-    "coworker": {"menu": false},
-    "staff": {"menu":true,"vacancy":true,"delete": false,"planning" : false},
-    "checkservice": { "menu": false,"export": false,"import":false },
-    "creche": { "menu": false}
-  }
-}');
-INSERT INTO public.appaccess (id_user, creorga) VALUES (4, '{
-  "db": [
-      {"name": "Le Chat Potté","dbname": "lechatpotte"}
-  ],
-  "modules": {
-    "child": {"delete": false,"filelist": false},
-    "coworker": {"menu": false},
-    "staff": {"menu":true,"vacancy":true,"delete": false,"planning" : false},
-    "checkservice": { "menu": false,"export": false,"import":false },
-    "creche": { "menu": false}
-  }
-}');
-*/
\ No newline at end of file
diff --git a/dev/db/dks_lu.pgsql.schema.sql b/dev/db/dks_lu.pgsql.schema.sql
deleted file mode 100644 (file)
index 793840d..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-SET statement_timeout = 0;
-SET lock_timeout = 0;
-SET idle_in_transaction_session_timeout = 0;
-SET client_encoding = 'SQL_ASCII';
-SET standard_conforming_strings = on;
-SELECT pg_catalog.set_config('search_path', '', false);
-SET check_function_bodies = false;
-SET client_min_messages = warning;
-SET row_security = off;
-CREATE FUNCTION public.getuuid() RETURNS text
-    LANGUAGE sql
-    AS $$      
-       select uuid_in(md5(random()::text || clock_timestamp()::text)::cstring)::TEXT;
- $$;
-SET default_tablespace = '';
-SET default_with_oids = false;
-CREATE TABLE public.appaccess (
-    id integer NOT NULL,
-    id_user integer,
-    creorga json
-);
-CREATE SEQUENCE public.appaccess_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-ALTER SEQUENCE public.appaccess_id_seq OWNED BY public.appaccess.id;
-CREATE TABLE public.modulepreferences (
-    id integer NOT NULL,
-    id_user integer,
-    appident text,
-    preference json,
-    page text
-);
-CREATE SEQUENCE public.modulepreferences_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-ALTER SEQUENCE public.modulepreferences_id_seq OWNED BY public.modulepreferences.id;
-CREATE TABLE public.sessions (
-    id bigint NOT NULL,
-    id_user integer,
-    idsession text,
-    remote_addr text,
-    user_agent text,
-    created timestamp without time zone DEFAULT now()
-);
-CREATE SEQUENCE public.sessions_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-ALTER SEQUENCE public.sessions_id_seq OWNED BY public.sessions.id;
-CREATE TABLE public.users (
-    id integer NOT NULL,
-    email text,
-    username text,
-    userpassword text,
-    prename text,
-    surname text,
-    confirmkey text,
-    created timestamp without time zone DEFAULT now(),
-    modified timestamp without time zone DEFAULT now(),
-    blocked boolean
-);
-CREATE SEQUENCE public.users_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
-ALTER TABLE ONLY public.appaccess ALTER COLUMN id SET DEFAULT nextval('public.appaccess_id_seq'::regclass);
-ALTER TABLE ONLY public.modulepreferences ALTER COLUMN id SET DEFAULT nextval('public.modulepreferences_id_seq'::regclass);
-ALTER TABLE ONLY public.sessions ALTER COLUMN id SET DEFAULT nextval('public.sessions_id_seq'::regclass);
-ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
-ALTER TABLE ONLY public.appaccess
-    ADD CONSTRAINT appaccess_pkey PRIMARY KEY (id);
-ALTER TABLE ONLY public.modulepreferences
-    ADD CONSTRAINT modulepreferences_pkey PRIMARY KEY (id);
-ALTER TABLE ONLY public.sessions
-    ADD CONSTRAINT sessions_pkey PRIMARY KEY (id);
-ALTER TABLE ONLY public.users
-    ADD CONSTRAINT users_pkey PRIMARY KEY (id);
diff --git a/dev/db/lechatpotte.new.schema.sql b/dev/db/lechatpotte.new.schema.sql
deleted file mode 100644 (file)
index 589004b..0000000
+++ /dev/null
@@ -1,581 +0,0 @@
-CREATE TABLE IF NOT EXISTS "creche" (
-  crechename TEXT,
-  adress TEXT,
-  city TEXT,
-  country TEXT,
-  zip TEXT,
-  maxchilds INTEGER,
-  uuid TEXT NOT NULL,
-  minage INTEGER,
-  maxage INTEGER,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT, 
-  stafflist boolean, idcheckservice TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "eventcalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  activityuuid TEXT,
-  staffuuid TEXT,
-  location TEXT,
-  color TEXT,
-  freq TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "staffplanning" (
-  eventcalendaruuid TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (eventcalendaruuid,staffuuid)
-);
-CREATE TRIGGER trg_staffplanning_upd UPDATE ON staffplanning
- BEGIN
-  UPDATE staffplanning set lastmodified=CURRENT_TIMESTAMP where eventcalendaruuid=NEW.eventcalendaruuid and staffuuid=NEW.staffuuid;
- END;
-CREATE TABLE IF NOT EXISTS "accounting" (
-  accmonth DATE,
-  childuuid TEXT,
-  invoicedate DATE,
-  payeddate DATE,
-  payedamount REAL,
-  invoiceamount REAL,
-  reference TEXT,
-  reminderdate1 DATE,
-  reminderdate2 DATE,
-  reminderdate3 DATE,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  invoicefile TEXT,
-  benefitfile TEXT,
-  benefitamount REAL,
-  PRIMARY KEY (accmonth,childuuid)
-);
-CREATE TRIGGER trg_eventcalendar_upd UPDATE ON eventcalendar
- BEGIN
-  UPDATE eventcalendar set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TRIGGER trg_accounting_upd UPDATE ON accounting
- BEGIN
-  UPDATE accounting set lastmodified=CURRENT_TIMESTAMP where accmonth=NEW.accmonth and childuuid=NEW.childuuid;
- END;
-CREATE TABLE IF NOT EXISTS "expenses" (
-  uuid TEXT,
-  expensedate DATE,
-  remitter TEXT,
-  expenseamount REAL
-  expensefile TEXT,
-  statementfile TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)    
-);
-CREATE TRIGGER trg_expenses_upd UPDATE ON expenses
- BEGIN
-  UPDATE expenses set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "vacancy" (
-  vacancydate DATE,
-  vacancydateto DATE,
-  vacancydescription TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (vacancydate,vacancydateto)
-);
-CREATE TRIGGER trg_vacancy_upd UPDATE ON vacancy
- BEGIN
-  UPDATE vacancy set lastmodified=CURRENT_TIMESTAMP where vacancydate = NEW.vacancydate and vacancydateto = NEW.vacancydateto;
- END;
-CREATE TABLE IF NOT EXISTS "staff" (
-  jobtitle TEXT,
-  prename TEXT,
-  surname TEXT,
-  address TEXT,
-  zip TEXT,
-  city TEXT,
-  country TEXT,
-  entrydate DATE,
-  exitdate DATE,
-  iban TEXT,
-  bic TEXT,
-  accountname TEXT,
-  phone TEXT,
-  email TEXT,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  color TEXT,
-  weekhours integer, password TEXT, editor TEXT,
-       PRIMARY KEY (uuid) 
-);
-CREATE TRIGGER trg_staff_upd UPDATE ON staff
- BEGIN
-  UPDATE staff set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "groups" (
-  grpname TEXT,
-  maxchilds INTEGER,
-  minage INTEGER,
-  maxage INTEGER,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, minstaff integer DEFAULT 1, color TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_groups_upd UPDATE ON groups
- BEGIN
-  UPDATE groups set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE childslog (
-  uuid TEXT not null, 
-  logdate DATE,
-  logmessage TEXT,
-  childuuid TEXT,
-  editorstaffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE stafflog (
-  uuid TEXT not null,
-  logdate DATE,
-  logmessage TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_childslog_upd UPDATE ON childslog
- BEGIN
-  UPDATE childslog set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TABLE activitylog
-    (
-        uuid TEXT NOT NULL,
-        logdatefrom DATETIME,
-        logdateto DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_activitylog_upd UPDATE ON activitylog
- BEGIN
-  UPDATE activitylog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE cautionstatus (
-        uuid TEXT NOT NULL,
-        childuuid TEXT,
-        statusdate DATE,
-        amount NUMERIC,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, statementnumber TEXT,
-        PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_cautionstatus_upd UPDATE ON cautionstatus
- BEGIN
-  UPDATE cautionstatus set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE planningtemplate
-    (
-        uuid TEXT NOT NULL,
-        montimebegin TEXT,
-        montimeend TEXT,
-        monlunch BOOLEAN,
-        tuetimebegin TEXT,
-        tuetimeend TEXT,
-        tuelunch BOOLEAN,
-        wedtimebegin TEXT,
-        wedtimeend TEXT,
-        wedlunch BOOLEAN,
-        thutimebegin TEXT,
-        thutimeend TEXT,
-        thulunch BOOLEAN,
-        fritimebegin TEXT,
-        fritimeend TEXT,
-        frilunch BOOLEAN,
-        sattimebegin TEXT,
-        sattimeend TEXT,
-        satlunch BOOLEAN,
-        suntimebegin TEXT,
-        suntimeend TEXT,
-        sunlunch BOOLEAN,
-        montimebegin2 TEXT,
-        montimeend2 TEXT,
-        tuetimebegin2 TEXT,
-        tuetimeend2 TEXT,
-        wedtimebegin2 TEXT,
-        wedtimeend2 TEXT,
-        thutimebegin2 TEXT,
-        thutimeend2 TEXT,
-        fritimebegin2 TEXT,
-        fritimeend2 TEXT,
-        sattimebegin2 TEXT,
-        sattimeend2 TEXT,
-        suntimebegin2 TEXT,
-        suntimeend2 TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, templatename TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_planningtemplate_upd UPDATE ON planningtemplate
- BEGIN
-  UPDATE planningtemplate set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE messagelog
-    (
-        uuid TEXT NOT NULL,
-        logdate DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_message_upd UPDATE ON messagelog
- BEGIN
-  UPDATE messagelog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "childs" (
-  clientnumber TEXT,
-  prename TEXT,
-  surname TEXT,
-  birthday DATE,
-  address TEXT,
-  city TEXT,
-  zip TEXT,
-  country TEXT,
-  entrydate DATE,
-  checkservicenumber TEXT,
-  leavedate DATE,
-  nationality TEXT,
-  nativelanguage TEXT,
-  bankaccount TEXT,
-  bankbic TEXT,
-  cautionamount NUMERIC,
-  cautionpayed NUMERIC,
-  cautionremark TEXT,
-  cautionpayedback TEXT,
-  cautionstatusdate DATE,
-  remark TEXT,
-  checkserviceexpiration DATE,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  infohealth TEXT, 
-  bankaccountowner TEXT, 
-  infoimportant TEXT, 
-  infolunch TEXT, 
-  editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE new_refpersons (
-  reftype TEXT,
-  surname TEXT,
-  prename TEXT,
-  address TEXT,
-  phone TEXT,
-  mobile TEXT,
-  job TEXT,
-  email TEXT,
-  workphone TEXT,
-  zip TEXT,
-  country TEXT,
-  city TEXT,
-  authsubscriber BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  remark TEXT, 
-  priority INTEGER,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "refpersons" (
-  reftype TEXT,
-  surname TEXT,
-  prename TEXT,
-  address TEXT,
-  phone TEXT,
-  mobile TEXT,
-  job TEXT,
-  email TEXT,
-  workphone TEXT,
-  zip TEXT,
-  country TEXT,
-  city TEXT,
-  authsubscriber BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  remark TEXT, 
-  priority INTEGER,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "workinghours" (
-  uuid TEXT NOT NULL,
-  datestart DATE NOT NULL,
-  montimeopen TEXT,
-  montimeclose TEXT,
-  tuetimeopen TEXT,
-  tuetimeclose TEXT,
-  wedtimeopen TEXT,
-  wedtimeclose TEXT,
-  thutimeopen TEXT,
-  thutimeclose TEXT,
-  fritimeopen TEXT,
-  fritimeclose TEXT,
-  sattimeopen TEXT,
-  sattimeclose TEXT,
-  suntimeopen TEXT,
-  suntimeclose TEXT,
-  crecheuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE new_planning (
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  monlunch BOOLEAN,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuelunch BOOLEAN,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedlunch BOOLEAN,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thulunch BOOLEAN,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frilunch BOOLEAN,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satlunch BOOLEAN,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sunlunch BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  groupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planning" (
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  monlunch BOOLEAN,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuelunch BOOLEAN,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedlunch BOOLEAN,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thulunch BOOLEAN,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frilunch BOOLEAN,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satlunch BOOLEAN,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sunlunch BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  groupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "health" (
-  uuid TEXT NOT NULL,
-  docname TEXT,
-  docaddress TEXT,
-  docphone TEXT,
-  doczip TEXT,
-  doccountry TEXT,
-  doccity TEXT,
-  healthinfo TEXT,
-  childuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planningstaff" (
-  uuid TEXT NOT NULL,
-  staffuuid TEXT NOT NULL,
-  note TEXT,
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  mongroupuuid TEXT,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuegroupuuid TEXT,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedgroupuuid TEXT,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thugroupuuid TEXT,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frigroupuuid TEXT,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satgroupuuid TEXT,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sungroupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  mongroupuuid2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  tuegroupuuid2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  wedgroupuuid2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  thugroupuuid2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  frigroupuuid2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  satgroupuuid2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-  sungroupuuid2 TEXT,
-  montimebegin3 TEXT,
-  montimeend3 TEXT,
-  mongroupuuid3 TEXT,
-  tuetimebegin3 TEXT,
-  tuetimeend3 TEXT,
-  tuegroupuuid3 TEXT,
-  wedtimebegin3 TEXT,
-  wedtimeend3 TEXT,
-  wedgroupuuid3 TEXT,
-  thutimebegin3 TEXT,
-  thutimeend3 TEXT,
-  thugroupuuid3 TEXT,
-  fritimebegin3 TEXT,
-  fritimeend3 TEXT,
-  frigroupuuid3 TEXT,
-  sattimebegin3 TEXT,
-  sattimeend3 TEXT,
-  satgroupuuid3 TEXT,
-  suntimebegin3 TEXT,
-  suntimeend3 TEXT,
-  sungroupuuid3 TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "presence" (
-  daydate DATE,
-  lunch BOOLEAN,
-  status INTEGER,
-  childuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  begintime1 TEXT, 
-  endtime1 TEXT, 
-  begintime2 TEXT, 
-  endtime2 TEXT,
-  editor TEXT,
-  PRIMARY KEY (daydate,childuuid)
-);
-CREATE TABLE IF NOT EXISTS "waitlist" (
-  uuid TEXT NOT NULL,
-  waitdate DATE NOT NULL,
-  name TEXT,
-  phone TEXT,
-  email TEXT,
-  age TEXT,
-  note TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "costs" (
-  startdate DATE,
-  costsperhour REAL,
-  weeklyhourslimit REAL,
-  dailylunchcosts REAL,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  costperhourfallback REAL,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "vacancycalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  type INTEGER, 
-  accepted BOOLEAN DEFAULT '0',
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "staffvacancydays" (
-  staffuuid TEXT,
-  vacancyyear INTEGER,
-  days REAL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  hours REAL,
-  PRIMARY KEY (staffuuid,vacancyyear) 
-);
-CREATE TABLE new_staff (
-  jobtitle TEXT,
-  prename TEXT,
-  surname TEXT,
-  address TEXT,
-  zip TEXT,
-  city TEXT,
-  country TEXT,
-  entrydate DATE,
-  exitdate DATE,
-  iban TEXT,
-  bic TEXT,
-  accountname TEXT,
-  phone TEXT,
-  email TEXT,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  color TEXT,
-  weekhours INTEGER, 
-  password TEXT, 
-  editor TEXT,
-  PRIMARY KEY (uuid) 
-);
diff --git a/dev/db/lechatpotte.old.schema.sql b/dev/db/lechatpotte.old.schema.sql
deleted file mode 100644 (file)
index 1ccd9ff..0000000
+++ /dev/null
@@ -1,580 +0,0 @@
-CREATE TABLE IF NOT EXISTS "creche" (
-  crechename TEXT,
-  adress TEXT,
-  city TEXT,
-  country TEXT,
-  zip TEXT,
-  maxchilds INTEGER,
-  uuid TEXT NOT NULL,
-  minage INTEGER,
-  maxage INTEGER,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT, stafflist boolean,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "eventcalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  activityuuid TEXT,
-  staffuuid TEXT,
-  location TEXT,
-  color TEXT,
-  freq TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "staffplanning" (
-  eventcalendaruuid TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (eventcalendaruuid,staffuuid)
-);
-CREATE TRIGGER trg_staffplanning_upd UPDATE ON staffplanning
- BEGIN
-  UPDATE staffplanning set lastmodified=CURRENT_TIMESTAMP where eventcalendaruuid=NEW.eventcalendaruuid and staffuuid=NEW.staffuuid;
- END;
-CREATE TABLE IF NOT EXISTS "accounting" (
-  accmonth DATE,
-  childuuid TEXT,
-  invoicedate DATE,
-  payeddate DATE,
-  payedamount REAL,
-  invoiceamount REAL,
-  reference TEXT,
-  reminderdate1 DATE,
-  reminderdate2 DATE,
-  reminderdate3 DATE,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  invoicefile TEXT,
-  benefitfile TEXT,
-  benefitamount REAL,
-  PRIMARY KEY (accmonth,childuuid)
-);
-CREATE TRIGGER trg_eventcalendar_upd UPDATE ON eventcalendar
- BEGIN
-  UPDATE eventcalendar set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TRIGGER trg_accounting_upd UPDATE ON accounting
- BEGIN
-  UPDATE accounting set lastmodified=CURRENT_TIMESTAMP where accmonth=NEW.accmonth and childuuid=NEW.childuuid;
- END;
-CREATE TABLE IF NOT EXISTS "expenses" (
-  uuid TEXT,
-  expensedate DATE,
-  remitter TEXT,
-  expenseamount REAL
-  expensefile TEXT,
-  statementfile TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)    
-);
-CREATE TRIGGER trg_expenses_upd UPDATE ON expenses
- BEGIN
-  UPDATE expenses set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "vacancy" (
-  vacancydate DATE,
-  vacancydateto DATE,
-  vacancydescription TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (vacancydate,vacancydateto)
-);
-CREATE TRIGGER trg_vacancy_upd UPDATE ON vacancy
- BEGIN
-  UPDATE vacancy set lastmodified=CURRENT_TIMESTAMP where vacancydate = NEW.vacancydate and vacancydateto = NEW.vacancydateto;
- END;
-CREATE TABLE IF NOT EXISTS "staff" (
-  jobtitle TEXT,
-  prename TEXT,
-  surname TEXT,
-  address TEXT,
-  zip TEXT,
-  city TEXT,
-  country TEXT,
-  entrydate DATE,
-  exitdate DATE,
-  iban TEXT,
-  bic TEXT,
-  accountname TEXT,
-  phone TEXT,
-  email TEXT,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  color TEXT,
-  weekhours integer, password TEXT, editor TEXT,
-       PRIMARY KEY (uuid) 
-);
-CREATE TRIGGER trg_staff_upd UPDATE ON staff
- BEGIN
-  UPDATE staff set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "groups" (
-  grpname TEXT,
-  maxchilds INTEGER,
-  minage INTEGER,
-  maxage INTEGER,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, minstaff integer DEFAULT 1, color TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_groups_upd UPDATE ON groups
- BEGIN
-  UPDATE groups set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE childslog (
-  uuid TEXT not null, 
-  logdate DATE,
-  logmessage TEXT,
-  childuuid TEXT,
-  editorstaffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE stafflog (
-  uuid TEXT not null,
-  logdate DATE,
-  logmessage TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_childslog_upd UPDATE ON childslog
- BEGIN
-  UPDATE childslog set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TABLE activitylog
-    (
-        uuid TEXT NOT NULL,
-        logdatefrom DATETIME,
-        logdateto DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_activitylog_upd UPDATE ON activitylog
- BEGIN
-  UPDATE activitylog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE cautionstatus (
-        uuid TEXT NOT NULL,
-        childuuid TEXT,
-        statusdate DATE,
-        amount NUMERIC,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, statementnumber TEXT,
-        PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_cautionstatus_upd UPDATE ON cautionstatus
- BEGIN
-  UPDATE cautionstatus set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE planningtemplate
-    (
-        uuid TEXT NOT NULL,
-        montimebegin TEXT,
-        montimeend TEXT,
-        monlunch BOOLEAN,
-        tuetimebegin TEXT,
-        tuetimeend TEXT,
-        tuelunch BOOLEAN,
-        wedtimebegin TEXT,
-        wedtimeend TEXT,
-        wedlunch BOOLEAN,
-        thutimebegin TEXT,
-        thutimeend TEXT,
-        thulunch BOOLEAN,
-        fritimebegin TEXT,
-        fritimeend TEXT,
-        frilunch BOOLEAN,
-        sattimebegin TEXT,
-        sattimeend TEXT,
-        satlunch BOOLEAN,
-        suntimebegin TEXT,
-        suntimeend TEXT,
-        sunlunch BOOLEAN,
-        montimebegin2 TEXT,
-        montimeend2 TEXT,
-        tuetimebegin2 TEXT,
-        tuetimeend2 TEXT,
-        wedtimebegin2 TEXT,
-        wedtimeend2 TEXT,
-        thutimebegin2 TEXT,
-        thutimeend2 TEXT,
-        fritimebegin2 TEXT,
-        fritimeend2 TEXT,
-        sattimebegin2 TEXT,
-        sattimeend2 TEXT,
-        suntimebegin2 TEXT,
-        suntimeend2 TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, templatename TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_planningtemplate_upd UPDATE ON planningtemplate
- BEGIN
-  UPDATE planningtemplate set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE messagelog
-    (
-        uuid TEXT NOT NULL,
-        logdate DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_message_upd UPDATE ON messagelog
- BEGIN
-  UPDATE messagelog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "childs" (
-  clientnumber TEXT,
-  prename TEXT,
-  surname TEXT,
-  birthday DATE,
-  address TEXT,
-  city TEXT,
-  zip TEXT,
-  country TEXT,
-  entrydate DATE,
-  checkservicenumber TEXT,
-  leavedate DATE,
-  nationality TEXT,
-  nativelanguage TEXT,
-  bankaccount TEXT,
-  bankbic TEXT,
-  cautionamount NUMERIC,
-  cautionpayed NUMERIC,
-  cautionremark TEXT,
-  cautionpayedback TEXT,
-  cautionstatusdate DATE,
-  remark TEXT,
-  checkserviceexpiration DATE,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  infohealth TEXT, 
-  bankaccountowner TEXT, 
-  infoimportant TEXT, 
-  infolunch TEXT, 
-  editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE new_refpersons (
-  reftype TEXT,
-  surname TEXT,
-  prename TEXT,
-  address TEXT,
-  phone TEXT,
-  mobile TEXT,
-  job TEXT,
-  email TEXT,
-  workphone TEXT,
-  zip TEXT,
-  country TEXT,
-  city TEXT,
-  authsubscriber BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  remark TEXT, 
-  priority INTEGER,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "refpersons" (
-  reftype TEXT,
-  surname TEXT,
-  prename TEXT,
-  address TEXT,
-  phone TEXT,
-  mobile TEXT,
-  job TEXT,
-  email TEXT,
-  workphone TEXT,
-  zip TEXT,
-  country TEXT,
-  city TEXT,
-  authsubscriber BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  remark TEXT, 
-  priority INTEGER,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "workinghours" (
-  uuid TEXT NOT NULL,
-  datestart DATE NOT NULL,
-  montimeopen TEXT,
-  montimeclose TEXT,
-  tuetimeopen TEXT,
-  tuetimeclose TEXT,
-  wedtimeopen TEXT,
-  wedtimeclose TEXT,
-  thutimeopen TEXT,
-  thutimeclose TEXT,
-  fritimeopen TEXT,
-  fritimeclose TEXT,
-  sattimeopen TEXT,
-  sattimeclose TEXT,
-  suntimeopen TEXT,
-  suntimeclose TEXT,
-  crecheuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE new_planning (
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  monlunch BOOLEAN,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuelunch BOOLEAN,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedlunch BOOLEAN,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thulunch BOOLEAN,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frilunch BOOLEAN,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satlunch BOOLEAN,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sunlunch BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  groupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planning" (
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  monlunch BOOLEAN,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuelunch BOOLEAN,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedlunch BOOLEAN,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thulunch BOOLEAN,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frilunch BOOLEAN,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satlunch BOOLEAN,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sunlunch BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  groupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "health" (
-  uuid TEXT NOT NULL,
-  docname TEXT,
-  docaddress TEXT,
-  docphone TEXT,
-  doczip TEXT,
-  doccountry TEXT,
-  doccity TEXT,
-  healthinfo TEXT,
-  childuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planningstaff" (
-  uuid TEXT NOT NULL,
-  staffuuid TEXT NOT NULL,
-  note TEXT,
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  mongroupuuid TEXT,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuegroupuuid TEXT,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedgroupuuid TEXT,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thugroupuuid TEXT,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frigroupuuid TEXT,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satgroupuuid TEXT,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sungroupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  mongroupuuid2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  tuegroupuuid2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  wedgroupuuid2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  thugroupuuid2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  frigroupuuid2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  satgroupuuid2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-  sungroupuuid2 TEXT,
-  montimebegin3 TEXT,
-  montimeend3 TEXT,
-  mongroupuuid3 TEXT,
-  tuetimebegin3 TEXT,
-  tuetimeend3 TEXT,
-  tuegroupuuid3 TEXT,
-  wedtimebegin3 TEXT,
-  wedtimeend3 TEXT,
-  wedgroupuuid3 TEXT,
-  thutimebegin3 TEXT,
-  thutimeend3 TEXT,
-  thugroupuuid3 TEXT,
-  fritimebegin3 TEXT,
-  fritimeend3 TEXT,
-  frigroupuuid3 TEXT,
-  sattimebegin3 TEXT,
-  sattimeend3 TEXT,
-  satgroupuuid3 TEXT,
-  suntimebegin3 TEXT,
-  suntimeend3 TEXT,
-  sungroupuuid3 TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "presence" (
-  daydate DATE,
-  lunch BOOLEAN,
-  status INTEGER,
-  childuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  begintime1 TEXT, 
-  endtime1 TEXT, 
-  begintime2 TEXT, 
-  endtime2 TEXT,
-  editor TEXT,
-  PRIMARY KEY (daydate,childuuid)
-);
-CREATE TABLE IF NOT EXISTS "waitlist" (
-  uuid TEXT NOT NULL,
-  waitdate DATE NOT NULL,
-  name TEXT,
-  phone TEXT,
-  email TEXT,
-  age TEXT,
-  note TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "costs" (
-  startdate DATE,
-  costsperhour REAL,
-  weeklyhourslimit REAL,
-  dailylunchcosts REAL,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  costperhourfallback REAL,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "vacancycalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  type INTEGER, 
-  accepted BOOLEAN DEFAULT '0',
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "staffvacancydays" (
-  staffuuid TEXT,
-  vacancyyear INTEGER,
-  days REAL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, 
-  hours REAL,
-  PRIMARY KEY (staffuuid,vacancyyear) 
-);
-CREATE TABLE new_staff (
-  jobtitle TEXT,
-  prename TEXT,
-  surname TEXT,
-  address TEXT,
-  zip TEXT,
-  city TEXT,
-  country TEXT,
-  entrydate DATE,
-  exitdate DATE,
-  iban TEXT,
-  bic TEXT,
-  accountname TEXT,
-  phone TEXT,
-  email TEXT,
-  uuid TEXT NOT NULL,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  color TEXT,
-  weekhours INTEGER, 
-  password TEXT, 
-  editor TEXT,
-  PRIMARY KEY (uuid) 
-);
diff --git a/dev/db/lechatpotte.old.sqlite b/dev/db/lechatpotte.old.sqlite
deleted file mode 100644 (file)
index cb31cf9..0000000
Binary files a/dev/db/lechatpotte.old.sqlite and /dev/null differ
diff --git a/dev/db/underatert.new.schema.sql b/dev/db/underatert.new.schema.sql
deleted file mode 100644 (file)
index 4247ceb..0000000
+++ /dev/null
@@ -1,520 +0,0 @@
-CREATE TABLE IF NOT EXISTS "creche" (
-  crechename TEXT,
-  adress TEXT,
-  city TEXT,
-  country TEXT,
-  zip TEXT,
-  maxchilds INTEGER,
-  uuid TEXT NOT NULL,
-  minage INTEGER,
-  maxage INTEGER,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT, stafflist boolean, idcheckservice TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "childs" (
-  clientnumber TEXT,
-  prename TEXT,
-  surname TEXT,
-  birthday DATE,
-  address TEXT,
-  city TEXT,
-  zip TEXT,
-  country TEXT,
-  entrydate DATE,
-  checkservicenumber TEXT,
-  leavedate DATE,
-  nationality TEXT,
-  nativelanguage TEXT,
-  bankaccount TEXT,
-  bankbic TEXT,
-  cautionamount NUMERIC,
-  cautionpayed NUMERIC,
-  cautionremark TEXT,
-  cautionpayedback TEXT,
-  cautionstatusdate DATE,
-  remark TEXT,
-  checkserviceexpiration DATE,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, infohealth TEXT, bankaccountowner TEXT, infoimportant TEXT, infolunch TEXT, editor TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "refpersons" (
-  reftype TEXT,
-  surname TEXT,
-  prename TEXT,
-  address TEXT,
-  phone TEXT,
-  mobile TEXT,
-  job TEXT,
-  email TEXT,
-  workphone TEXT,
-  zip TEXT,
-  country TEXT,
-  city TEXT,
-  authsubscriber BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, remark TEXT, priority INTEGER,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "workinghours" (
-  uuid TEXT NOT NULL,
-  datestart DATE NOT NULL,
-  montimeopen TEXT,
-  montimeclose TEXT,
-  tuetimeopen TEXT,
-  tuetimeclose TEXT,
-  wedtimeopen TEXT,
-  wedtimeclose TEXT,
-  thutimeopen TEXT,
-  thutimeclose TEXT,
-  fritimeopen TEXT,
-  fritimeclose TEXT,
-  sattimeopen TEXT,
-  sattimeclose TEXT,
-  suntimeopen TEXT,
-  suntimeclose TEXT,
-  crecheuuid TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-       PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planning" (
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  monlunch BOOLEAN,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuelunch BOOLEAN,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedlunch BOOLEAN,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thulunch BOOLEAN,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frilunch BOOLEAN,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satlunch BOOLEAN,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sunlunch BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  groupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-       PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "health" (
-  uuid TEXT NOT NULL,
-  docname TEXT,
-  docaddress TEXT,
-  docphone TEXT,
-  doczip TEXT,
-  doccountry TEXT,
-  doccity TEXT,
-  healthinfo TEXT,
-  childuuid TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-       PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planningstaff" (
-  uuid TEXT NOT NULL,
-  staffuuid TEXT NOT NULL,
-  note TEXT,
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  mongroupuuid TEXT,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuegroupuuid TEXT,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedgroupuuid TEXT,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thugroupuuid TEXT,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frigroupuuid TEXT,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satgroupuuid TEXT,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sungroupuuid TEXT,
-       montimebegin2 TEXT,
-       montimeend2 TEXT,
-       mongroupuuid2 TEXT,
-       tuetimebegin2 TEXT,
-       tuetimeend2 TEXT,
-       tuegroupuuid2 TEXT,
-       wedtimebegin2 TEXT,
-       wedtimeend2 TEXT,
-       wedgroupuuid2 TEXT,
-       thutimebegin2 TEXT,
-       thutimeend2 TEXT,
-       thugroupuuid2 TEXT,
-       fritimebegin2 TEXT,
-       fritimeend2 TEXT,
-       frigroupuuid2 TEXT,
-       sattimebegin2 TEXT,
-       sattimeend2 TEXT,
-       satgroupuuid2 TEXT,
-       suntimebegin2 TEXT,
-       suntimeend2 TEXT,
-       sungroupuuid2 TEXT,
-       montimebegin3 TEXT,
-       montimeend3 TEXT,
-       mongroupuuid3 TEXT,
-       tuetimebegin3 TEXT,
-       tuetimeend3 TEXT,
-       tuegroupuuid3 TEXT,
-       wedtimebegin3 TEXT,
-       wedtimeend3 TEXT,
-       wedgroupuuid3 TEXT,
-       thutimebegin3 TEXT,
-       thutimeend3 TEXT,
-       thugroupuuid3 TEXT,
-       fritimebegin3 TEXT,
-       fritimeend3 TEXT,
-       frigroupuuid3 TEXT,
-       sattimebegin3 TEXT,
-       sattimeend3 TEXT,
-       satgroupuuid3 TEXT,
-       suntimebegin3 TEXT,
-       suntimeend3 TEXT,
-       sungroupuuid3 TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "presence" (
-  daydate DATE,
-  lunch BOOLEAN,
-  status INTEGER,
-  childuuid TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, begintime1 TEXT, endtime1 TEXT, begintime2 TEXT, endtime2 TEXT, editor TEXT,
-  PRIMARY KEY (daydate,childuuid)
-);
-CREATE TABLE IF NOT EXISTS "waitlist" (
-  uuid TEXT NOT NULL,
-  waitdate DATE NOT NULL,
-  name TEXT,
-  phone TEXT,
-  email TEXT,
-  age TEXT,
-  note TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_childs_upd UPDATE ON childs
- BEGIN
-  UPDATE childs set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_waitlist_upd UPDATE ON waitlist
- BEGIN
-  UPDATE waitlist set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_refpersons_upd UPDATE ON refpersons
- BEGIN
-  UPDATE refpersons set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_presence_upd UPDATE ON presence
- BEGIN
-  UPDATE presence set lastmodified=CURRENT_TIMESTAMP where daydate = NEW.daydate and childuuid = new.childuuid;
- END;
-CREATE TRIGGER trg_planningstaff_upd UPDATE ON planningstaff
- BEGIN
-  UPDATE planningstaff set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_planning_upd UPDATE ON planning
- BEGIN
-  UPDATE planning set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_health_upd UPDATE ON health
- BEGIN
-  UPDATE health set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "eventcalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  activityuuid TEXT,
-  staffuuid TEXT,
-  location TEXT,
-  color TEXT,
-  freq TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "staffplanning" (
-  eventcalendaruuid TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (eventcalendaruuid,staffuuid)
-);
-CREATE TRIGGER trg_staffplanning_upd UPDATE ON staffplanning
- BEGIN
-  UPDATE staffplanning set lastmodified=CURRENT_TIMESTAMP where eventcalendaruuid=NEW.eventcalendaruuid and staffuuid=NEW.staffuuid;
- END;
-CREATE TABLE IF NOT EXISTS "accounting" (
-  accmonth DATE,
-  childuuid TEXT,
-  invoicedate DATE,
-  payeddate DATE,
-  payedamount REAL,
-  invoiceamount REAL,
-  reference TEXT,
-  reminderdate1 DATE,
-  reminderdate2 DATE,
-  reminderdate3 DATE,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  invoicefile TEXT,
-  benefitfile TEXT,
-  benefitamount REAL, idcheckservice TEXT,
-  PRIMARY KEY (accmonth,childuuid)
-);
-CREATE TRIGGER trg_eventcalendar_upd UPDATE ON eventcalendar
- BEGIN
-  UPDATE eventcalendar set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TRIGGER trg_accounting_upd UPDATE ON accounting
- BEGIN
-  UPDATE accounting set lastmodified=CURRENT_TIMESTAMP where accmonth=NEW.accmonth and childuuid=NEW.childuuid;
- END;
-CREATE TABLE IF NOT EXISTS "costs" (
-  startdate DATE,
-  costsperhour REAL,
-  weeklyhourslimit REAL,
-  dailylunchcosts REAL,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  costperhourfallback REAL,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "vacancycalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, type integer, accepted BOOLEAN DEFAULT '0', vacyear integer,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_creche_upd UPDATE ON costs
- BEGIN
-  UPDATE creche set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_costs_upd UPDATE ON costs
- BEGIN
-  UPDATE costs set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_vacancycalendar_upd UPDATE ON vacancycalendar
- BEGIN
-  UPDATE vacancycalendar set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "staffvacancydays" (
-  staffuuid TEXT,
-  vacancyyear integer,
-  days real,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, hours real,
-  PRIMARY KEY (staffuuid,vacancyyear) 
-);
-CREATE TRIGGER trg_staffvacancydays_upd UPDATE ON staffvacancydays
- BEGIN
-  UPDATE staffvacancydays set lastmodified=CURRENT_TIMESTAMP where staffuuid = NEW.staffuuid and vacancyyear = NEW.vacancyyear;
- END;
-CREATE TABLE IF NOT EXISTS "expenses" (
-  uuid TEXT,
-  expensedate DATE,
-  remitter TEXT,
-  expenseamount REAL
-  expensefile TEXT,
-  statementfile TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)    
-);
-CREATE TRIGGER trg_expenses_upd UPDATE ON expenses
- BEGIN
-  UPDATE expenses set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "vacancy" (
-  vacancydate DATE,
-  vacancydateto DATE,
-  vacancydescription TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (vacancydate,vacancydateto)
-);
-CREATE TRIGGER trg_vacancy_upd UPDATE ON vacancy
- BEGIN
-  UPDATE vacancy set lastmodified=CURRENT_TIMESTAMP where vacancydate = NEW.vacancydate and vacancydateto = NEW.vacancydateto;
- END;
-CREATE TABLE IF NOT EXISTS "staff" (
-  jobtitle TEXT,
-  prename TEXT,
-  surname TEXT,
-  address TEXT,
-  zip TEXT,
-  city TEXT,
-  country TEXT,
-  entrydate DATE,
-  exitdate DATE,
-  iban TEXT,
-  bic TEXT,
-  accountname TEXT,
-  phone TEXT,
-  email TEXT,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  color TEXT,
-  weekhours integer, password TEXT, editor TEXT, maxdayhours real,
-       PRIMARY KEY (uuid) 
-);
-CREATE TRIGGER trg_staff_upd UPDATE ON staff
- BEGIN
-  UPDATE staff set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "groups" (
-  grpname TEXT,
-  maxchilds INTEGER,
-  minage INTEGER,
-  maxage INTEGER,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, minstaff integer DEFAULT 1, color TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_groups_upd UPDATE ON groups
- BEGIN
-  UPDATE groups set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE childslog (
-  uuid TEXT not null, 
-  logdate DATE,
-  logmessage TEXT,
-  childuuid TEXT,
-  editorstaffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE stafflog (
-  uuid TEXT not null,
-  logdate DATE,
-  logmessage TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_childslog_upd UPDATE ON childslog
- BEGIN
-  UPDATE childslog set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TABLE activitylog
-    (
-        uuid TEXT NOT NULL,
-        logdatefrom DATETIME,
-        logdateto DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_activitylog_upd UPDATE ON activitylog
- BEGIN
-  UPDATE activitylog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE cautionstatus (
-        uuid TEXT NOT NULL,
-        childuuid TEXT,
-        statusdate DATE,
-        amount NUMERIC,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, statementnumber TEXT,
-        PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_cautionstatus_upd UPDATE ON cautionstatus
- BEGIN
-  UPDATE cautionstatus set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE planningtemplate
-    (
-        uuid TEXT NOT NULL,
-        montimebegin TEXT,
-        montimeend TEXT,
-        monlunch BOOLEAN,
-        tuetimebegin TEXT,
-        tuetimeend TEXT,
-        tuelunch BOOLEAN,
-        wedtimebegin TEXT,
-        wedtimeend TEXT,
-        wedlunch BOOLEAN,
-        thutimebegin TEXT,
-        thutimeend TEXT,
-        thulunch BOOLEAN,
-        fritimebegin TEXT,
-        fritimeend TEXT,
-        frilunch BOOLEAN,
-        sattimebegin TEXT,
-        sattimeend TEXT,
-        satlunch BOOLEAN,
-        suntimebegin TEXT,
-        suntimeend TEXT,
-        sunlunch BOOLEAN,
-        montimebegin2 TEXT,
-        montimeend2 TEXT,
-        tuetimebegin2 TEXT,
-        tuetimeend2 TEXT,
-        wedtimebegin2 TEXT,
-        wedtimeend2 TEXT,
-        thutimebegin2 TEXT,
-        thutimeend2 TEXT,
-        fritimebegin2 TEXT,
-        fritimeend2 TEXT,
-        sattimebegin2 TEXT,
-        sattimeend2 TEXT,
-        suntimebegin2 TEXT,
-        suntimeend2 TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, templatename TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_planningtemplate_upd UPDATE ON planningtemplate
- BEGIN
-  UPDATE planningtemplate set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE messagelog
-    (
-        uuid TEXT NOT NULL,
-        logdate DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_message_upd UPDATE ON messagelog
- BEGIN
-  UPDATE messagelog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
diff --git a/dev/db/underatert.old.schema.sql b/dev/db/underatert.old.schema.sql
deleted file mode 100644 (file)
index 6384a9c..0000000
+++ /dev/null
@@ -1,520 +0,0 @@
-CREATE TABLE IF NOT EXISTS "creche" (
-  crechename TEXT,
-  adress TEXT,
-  city TEXT,
-  country TEXT,
-  zip TEXT,
-  maxchilds INTEGER,
-  uuid TEXT NOT NULL,
-  minage INTEGER,
-  maxage INTEGER,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT, stafflist boolean,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "childs" (
-  clientnumber TEXT,
-  prename TEXT,
-  surname TEXT,
-  birthday DATE,
-  address TEXT,
-  city TEXT,
-  zip TEXT,
-  country TEXT,
-  entrydate DATE,
-  checkservicenumber TEXT,
-  leavedate DATE,
-  nationality TEXT,
-  nativelanguage TEXT,
-  bankaccount TEXT,
-  bankbic TEXT,
-  cautionamount NUMERIC,
-  cautionpayed NUMERIC,
-  cautionremark TEXT,
-  cautionpayedback TEXT,
-  cautionstatusdate DATE,
-  remark TEXT,
-  checkserviceexpiration DATE,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, infohealth TEXT, bankaccountowner TEXT, infoimportant TEXT, infolunch TEXT, editor TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "refpersons" (
-  reftype TEXT,
-  surname TEXT,
-  prename TEXT,
-  address TEXT,
-  phone TEXT,
-  mobile TEXT,
-  job TEXT,
-  email TEXT,
-  workphone TEXT,
-  zip TEXT,
-  country TEXT,
-  city TEXT,
-  authsubscriber BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, remark TEXT, priority INTEGER,
-       PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "workinghours" (
-  uuid TEXT NOT NULL,
-  datestart DATE NOT NULL,
-  montimeopen TEXT,
-  montimeclose TEXT,
-  tuetimeopen TEXT,
-  tuetimeclose TEXT,
-  wedtimeopen TEXT,
-  wedtimeclose TEXT,
-  thutimeopen TEXT,
-  thutimeclose TEXT,
-  fritimeopen TEXT,
-  fritimeclose TEXT,
-  sattimeopen TEXT,
-  sattimeclose TEXT,
-  suntimeopen TEXT,
-  suntimeclose TEXT,
-  crecheuuid TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-       PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planning" (
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  monlunch BOOLEAN,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuelunch BOOLEAN,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedlunch BOOLEAN,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thulunch BOOLEAN,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frilunch BOOLEAN,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satlunch BOOLEAN,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sunlunch BOOLEAN,
-  childuuid TEXT,
-  uuid TEXT NOT NULL,
-  groupuuid TEXT,
-  montimebegin2 TEXT,
-  montimeend2 TEXT,
-  tuetimebegin2 TEXT,
-  tuetimeend2 TEXT,
-  wedtimebegin2 TEXT,
-  wedtimeend2 TEXT,
-  thutimebegin2 TEXT,
-  thutimeend2 TEXT,
-  fritimebegin2 TEXT,
-  fritimeend2 TEXT,
-  sattimebegin2 TEXT,
-  sattimeend2 TEXT,
-  suntimebegin2 TEXT,
-  suntimeend2 TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-       PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "health" (
-  uuid TEXT NOT NULL,
-  docname TEXT,
-  docaddress TEXT,
-  docphone TEXT,
-  doczip TEXT,
-  doccountry TEXT,
-  doccity TEXT,
-  healthinfo TEXT,
-  childuuid TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-       PRIMARY KEY (uuid) 
-);
-CREATE TABLE IF NOT EXISTS "planningstaff" (
-  uuid TEXT NOT NULL,
-  staffuuid TEXT NOT NULL,
-  note TEXT,
-  datebegin DATE,
-  dateend DATE,
-  montimebegin TEXT,
-  montimeend TEXT,
-  mongroupuuid TEXT,
-  tuetimebegin TEXT,
-  tuetimeend TEXT,
-  tuegroupuuid TEXT,
-  wedtimebegin TEXT,
-  wedtimeend TEXT,
-  wedgroupuuid TEXT,
-  thutimebegin TEXT,
-  thutimeend TEXT,
-  thugroupuuid TEXT,
-  fritimebegin TEXT,
-  fritimeend TEXT,
-  frigroupuuid TEXT,
-  sattimebegin TEXT,
-  sattimeend TEXT,
-  satgroupuuid TEXT,
-  suntimebegin TEXT,
-  suntimeend TEXT,
-  sungroupuuid TEXT,
-       montimebegin2 TEXT,
-       montimeend2 TEXT,
-       mongroupuuid2 TEXT,
-       tuetimebegin2 TEXT,
-       tuetimeend2 TEXT,
-       tuegroupuuid2 TEXT,
-       wedtimebegin2 TEXT,
-       wedtimeend2 TEXT,
-       wedgroupuuid2 TEXT,
-       thutimebegin2 TEXT,
-       thutimeend2 TEXT,
-       thugroupuuid2 TEXT,
-       fritimebegin2 TEXT,
-       fritimeend2 TEXT,
-       frigroupuuid2 TEXT,
-       sattimebegin2 TEXT,
-       sattimeend2 TEXT,
-       satgroupuuid2 TEXT,
-       suntimebegin2 TEXT,
-       suntimeend2 TEXT,
-       sungroupuuid2 TEXT,
-       montimebegin3 TEXT,
-       montimeend3 TEXT,
-       mongroupuuid3 TEXT,
-       tuetimebegin3 TEXT,
-       tuetimeend3 TEXT,
-       tuegroupuuid3 TEXT,
-       wedtimebegin3 TEXT,
-       wedtimeend3 TEXT,
-       wedgroupuuid3 TEXT,
-       thutimebegin3 TEXT,
-       thutimeend3 TEXT,
-       thugroupuuid3 TEXT,
-       fritimebegin3 TEXT,
-       fritimeend3 TEXT,
-       frigroupuuid3 TEXT,
-       sattimebegin3 TEXT,
-       sattimeend3 TEXT,
-       satgroupuuid3 TEXT,
-       suntimebegin3 TEXT,
-       suntimeend3 TEXT,
-       sungroupuuid3 TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "presence" (
-  daydate DATE,
-  lunch BOOLEAN,
-  status INTEGER,
-  childuuid TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, begintime1 TEXT, endtime1 TEXT, begintime2 TEXT, endtime2 TEXT, editor TEXT,
-  PRIMARY KEY (daydate,childuuid)
-);
-CREATE TABLE IF NOT EXISTS "waitlist" (
-  uuid TEXT NOT NULL,
-  waitdate DATE NOT NULL,
-  name TEXT,
-  phone TEXT,
-  email TEXT,
-  age TEXT,
-  note TEXT,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_childs_upd UPDATE ON childs
- BEGIN
-  UPDATE childs set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_waitlist_upd UPDATE ON waitlist
- BEGIN
-  UPDATE waitlist set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_refpersons_upd UPDATE ON refpersons
- BEGIN
-  UPDATE refpersons set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_presence_upd UPDATE ON presence
- BEGIN
-  UPDATE presence set lastmodified=CURRENT_TIMESTAMP where daydate = NEW.daydate and childuuid = new.childuuid;
- END;
-CREATE TRIGGER trg_planningstaff_upd UPDATE ON planningstaff
- BEGIN
-  UPDATE planningstaff set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_planning_upd UPDATE ON planning
- BEGIN
-  UPDATE planning set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_health_upd UPDATE ON health
- BEGIN
-  UPDATE health set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "eventcalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  activityuuid TEXT,
-  staffuuid TEXT,
-  location TEXT,
-  color TEXT,
-  freq TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "staffplanning" (
-  eventcalendaruuid TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (eventcalendaruuid,staffuuid)
-);
-CREATE TRIGGER trg_staffplanning_upd UPDATE ON staffplanning
- BEGIN
-  UPDATE staffplanning set lastmodified=CURRENT_TIMESTAMP where eventcalendaruuid=NEW.eventcalendaruuid and staffuuid=NEW.staffuuid;
- END;
-CREATE TABLE IF NOT EXISTS "accounting" (
-  accmonth DATE,
-  childuuid TEXT,
-  invoicedate DATE,
-  payeddate DATE,
-  payedamount REAL,
-  invoiceamount REAL,
-  reference TEXT,
-  reminderdate1 DATE,
-  reminderdate2 DATE,
-  reminderdate3 DATE,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  invoicefile TEXT,
-  benefitfile TEXT,
-  benefitamount REAL,
-  PRIMARY KEY (accmonth,childuuid)
-);
-CREATE TRIGGER trg_eventcalendar_upd UPDATE ON eventcalendar
- BEGIN
-  UPDATE eventcalendar set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TRIGGER trg_accounting_upd UPDATE ON accounting
- BEGIN
-  UPDATE accounting set lastmodified=CURRENT_TIMESTAMP where accmonth=NEW.accmonth and childuuid=NEW.childuuid;
- END;
-CREATE TABLE IF NOT EXISTS "costs" (
-  startdate DATE,
-  costsperhour REAL,
-  weeklyhourslimit REAL,
-  dailylunchcosts REAL,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  costperhourfallback REAL,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE IF NOT EXISTS "vacancycalendar" (
-  uuid TEXT NOT NULL,
-  datefrom DATE,
-  dateto DATE,
-  timefrom TEXT,
-  timeto TEXT,
-  description TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, type integer, accepted BOOLEAN DEFAULT '0',
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_creche_upd UPDATE ON costs
- BEGIN
-  UPDATE creche set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_costs_upd UPDATE ON costs
- BEGIN
-  UPDATE costs set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TRIGGER trg_vacancycalendar_upd UPDATE ON vacancycalendar
- BEGIN
-  UPDATE vacancycalendar set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "staffvacancydays" (
-  staffuuid TEXT,
-  vacancyyear integer,
-  days real,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, hours real,
-  PRIMARY KEY (staffuuid,vacancyyear) 
-);
-CREATE TRIGGER trg_staffvacancydays_upd UPDATE ON staffvacancydays
- BEGIN
-  UPDATE staffvacancydays set lastmodified=CURRENT_TIMESTAMP where staffuuid = NEW.staffuuid and vacancyyear = NEW.vacancyyear;
- END;
-CREATE TABLE IF NOT EXISTS "expenses" (
-  uuid TEXT,
-  expensedate DATE,
-  remitter TEXT,
-  expenseamount REAL
-  expensefile TEXT,
-  statementfile TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (uuid)    
-);
-CREATE TRIGGER trg_expenses_upd UPDATE ON expenses
- BEGIN
-  UPDATE expenses set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "vacancy" (
-  vacancydate DATE,
-  vacancydateto DATE,
-  vacancydescription TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (vacancydate,vacancydateto)
-);
-CREATE TRIGGER trg_vacancy_upd UPDATE ON vacancy
- BEGIN
-  UPDATE vacancy set lastmodified=CURRENT_TIMESTAMP where vacancydate = NEW.vacancydate and vacancydateto = NEW.vacancydateto;
- END;
-CREATE TABLE IF NOT EXISTS "staff" (
-  jobtitle TEXT,
-  prename TEXT,
-  surname TEXT,
-  address TEXT,
-  zip TEXT,
-  city TEXT,
-  country TEXT,
-  entrydate DATE,
-  exitdate DATE,
-  iban TEXT,
-  bic TEXT,
-  accountname TEXT,
-  phone TEXT,
-  email TEXT,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP,
-  color TEXT,
-  weekhours integer, password TEXT, editor TEXT,
-       PRIMARY KEY (uuid) 
-);
-CREATE TRIGGER trg_staff_upd UPDATE ON staff
- BEGIN
-  UPDATE staff set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE IF NOT EXISTS "groups" (
-  grpname TEXT,
-  maxchilds INTEGER,
-  minage INTEGER,
-  maxage INTEGER,
-  uuid TEXT NOT NULL,
-       lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, minstaff integer DEFAULT 1, color TEXT,
-       PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_groups_upd UPDATE ON groups
- BEGIN
-  UPDATE groups set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE childslog (
-  uuid TEXT not null, 
-  logdate DATE,
-  logmessage TEXT,
-  childuuid TEXT,
-  editorstaffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TABLE stafflog (
-  uuid TEXT not null,
-  logdate DATE,
-  logmessage TEXT,
-  staffuuid TEXT,
-  lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-  PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_childslog_upd UPDATE ON childslog
- BEGIN
-  UPDATE childslog set lastmodified=CURRENT_TIMESTAMP where uuid=NEW.uuid;
- END;
-CREATE TABLE activitylog
-    (
-        uuid TEXT NOT NULL,
-        logdatefrom DATETIME,
-        logdateto DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_activitylog_upd UPDATE ON activitylog
- BEGIN
-  UPDATE activitylog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE cautionstatus (
-        uuid TEXT NOT NULL,
-        childuuid TEXT,
-        statusdate DATE,
-        amount NUMERIC,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, statementnumber TEXT,
-        PRIMARY KEY (uuid)
-);
-CREATE TRIGGER trg_cautionstatus_upd UPDATE ON cautionstatus
- BEGIN
-  UPDATE cautionstatus set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE planningtemplate
-    (
-        uuid TEXT NOT NULL,
-        montimebegin TEXT,
-        montimeend TEXT,
-        monlunch BOOLEAN,
-        tuetimebegin TEXT,
-        tuetimeend TEXT,
-        tuelunch BOOLEAN,
-        wedtimebegin TEXT,
-        wedtimeend TEXT,
-        wedlunch BOOLEAN,
-        thutimebegin TEXT,
-        thutimeend TEXT,
-        thulunch BOOLEAN,
-        fritimebegin TEXT,
-        fritimeend TEXT,
-        frilunch BOOLEAN,
-        sattimebegin TEXT,
-        sattimeend TEXT,
-        satlunch BOOLEAN,
-        suntimebegin TEXT,
-        suntimeend TEXT,
-        sunlunch BOOLEAN,
-        montimebegin2 TEXT,
-        montimeend2 TEXT,
-        tuetimebegin2 TEXT,
-        tuetimeend2 TEXT,
-        wedtimebegin2 TEXT,
-        wedtimeend2 TEXT,
-        thutimebegin2 TEXT,
-        thutimeend2 TEXT,
-        fritimebegin2 TEXT,
-        fritimeend2 TEXT,
-        sattimebegin2 TEXT,
-        sattimeend2 TEXT,
-        suntimebegin2 TEXT,
-        suntimeend2 TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, templatename TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_planningtemplate_upd UPDATE ON planningtemplate
- BEGIN
-  UPDATE planningtemplate set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
-CREATE TABLE messagelog
-    (
-        uuid TEXT NOT NULL,
-        logdate DATETIME,
-        logtitle TEXT,
-        logmessage TEXT,
-        editorstaffuuid TEXT,
-        lastmodified DATETIME DEFAULT CURRENT_TIMESTAMP, editor TEXT,
-        PRIMARY KEY (uuid)
-    );
-CREATE TRIGGER trg_message_upd UPDATE ON messagelog
- BEGIN
-  UPDATE messagelog set lastmodified=CURRENT_TIMESTAMP where uuid = NEW.uuid;
- END;
diff --git a/dev/db/underatert.old.sqlite b/dev/db/underatert.old.sqlite
deleted file mode 100644 (file)
index 106b441..0000000
Binary files a/dev/db/underatert.old.sqlite and /dev/null differ
diff --git a/download/.DS_Store b/download/.DS_Store
deleted file mode 100644 (file)
index f65861f..0000000
Binary files a/download/.DS_Store and /dev/null differ
diff --git a/img/Creorga_1000px.png b/img/Creorga_1000px.png
deleted file mode 100644 (file)
index 4a09df9..0000000
Binary files a/img/Creorga_1000px.png and /dev/null differ
diff --git a/img/applescript.png b/img/applescript.png
deleted file mode 100644 (file)
index b3f5277..0000000
Binary files a/img/applescript.png and /dev/null differ
diff --git a/img/apps/cashboxlogo.svg b/img/apps/cashboxlogo.svg
deleted file mode 100644 (file)
index ca774ca..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   viewBox="0 0 512 512"
-   height="512"
-   width="512"
-   y="0px"
-   x="0px"
-   id="Capa_1"
-   version="1.1">
-  <metadata
-     id="metadata11">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <defs
-     id="defs9" />
-  <path
-     id="path821"
-     d="m 47.969695,321.57485 4.360881,139.5482 405.561964,2.90726 -1.45363,-145.36272 z"
-     style="fill:#000000;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1" />
-  <path
-     id="path819"
-     d="m 308.41403,54.749611 h 76.10187 v 20.907418 l -19.65549,26.420121 1.45362,31.9798 16.65926,13.83859 21.9008,47.84288 -195.83742,82.74672 H 72.542327 l 40.779353,-74.71295 13.71554,-25.96531 v -29.91134 l 185.49261,-3.6632 15.9899,-8.72176 -2.90726,-58.145087 -17.19844,-1.708464 z"
-     style="fill:#000000;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1" />
-  <path
-     style="stroke-width:10.69534111;fill:#52638e;fill-opacity:1"
-     d="M 30,297.88827 V 482 H 480.00002 V 297.88827 Z M 442.48428,442.99753 H 67.53673 V 336.87985 H 442.47378 V 442.99753 Z M 406.42719,195.73842 h -1.5531 V 125.13501 H 379.31092 V 98.395754 h 27.11627 V 31.999986 H 286.52373 v 66.395768 h 27.09528 V 125.13501 H 105.12593 v 70.60341 h -0.39877 L 48.752624,287.05304 H 461.22641 Z M 308.41403,54.749611 H 384.5159 V 75.657029 H 308.41403 Z M 127.03722,147.89554 h 255.93607 v 29.91134 H 127.03722 Z m 59.23815,55.88755 -2.72842,14.94477 h -21.3761 l 4.20806,-14.94477 z m -54.6628,19.90456 h 21.86932 l -4.70128,14.94477 h -23.34896 z m -26.44466,-4.97069 8.15377,-14.94477 h 19.89646 l -6.67413,14.94477 z m 28.50147,0 6.18091,-14.94477 h 19.89646 l -4.70127,14.94477 z m -31.2194,4.97069 h 21.86932 l -6.67413,14.94477 H 94.296211 Z m -2.612982,54.79749 H 72.542327 l 8.153772,-14.94477 h 25.815031 z m -16.422976,-19.91546 8.153771,-14.94477 h 23.842177 l -6.67413,14.94477 z m 52.826368,19.91546 h -27.30517 l 6.18092,-14.94477 h 25.81502 z m -19.05695,-19.91546 6.18091,-14.94477 h 23.84218 l -4.70128,14.94477 z m 55.44984,19.91546 h -27.29467 l 4.20806,-14.94477 h 25.81503 z m 3.64139,-19.91546 h -25.33231 l 4.20806,-14.94477 h 23.84217 z m -19.71807,-19.93726 4.20806,-14.94477 h 21.86932 l -2.72842,14.94477 z m 52.48007,39.85272 H 181.742 l 2.2352,-14.94477 h 25.81503 z m 1.00741,-19.91546 h -25.33231 l 2.23521,-14.94477 h 23.84217 z m 0.99692,-19.93726 h -23.34895 l 2.2352,-14.94477 h 21.86932 z m 1.00742,-19.91546 h -21.3761 l 2.2352,-14.94477 h 19.89646 z m 199.3319,197.21429 H 98.619704 v -51.97423 h 81.317336 v 24.60274 h 150.11544 v -24.60274 h 81.32784 z"
-     id="path2" />
-  <rect
-     y="7.689568"
-     x="7.1689258"
-     height="497.14154"
-     width="497.3389"
-     id="rect823"
-     style="fill:none;fill-opacity:1;stroke:#52638e;stroke-width:9.85825348;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
-</svg>
diff --git a/img/apps/coloradiologo.svg b/img/apps/coloradiologo.svg
deleted file mode 100644 (file)
index 63e8e28..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xml:space="preserve"
-   enable-background="new 0 0 297.64 209.76"
-   viewBox="0 0 511.99997 512.00001"
-   height="512"
-   width="512"
-   y="0px"
-   x="0px"
-   id="Layer_1"
-   version="1.1"><metadata
-   id="metadata75"><rdf:RDF><cc:Work
-       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
-   id="defs73" />
-<rect
-   style="fill:#ffffff;stroke-width:0.87563503"
-   id="rect2"
-   height="169.44881"
-   width="309.00003"
-   y="317.57153"
-   x="1.9993198" />
-
-
-
-
-<g
-   transform="matrix(1.7868062,0,0,2.0278642,-9.0346759,52.702466)"
-   id="g6">
-       <path
-   style="fill:#f7ab1c"
-   id="path4"
-   d="m 79.019,161.18 c -1.017,0.164 -2.118,0.246 -3.304,0.246 -1.187,0 -2.118,0 -2.795,0 -17.197,0 -32.168,-6.084 -44.917,-18.254 C 15.253,131.002 8.88,116.459 8.88,99.545 c 0,-16.996 6.395,-31.642 19.186,-43.936 12.79,-12.294 27.783,-18.442 44.98,-18.442 1.1,0 2.202,0 3.304,0 1.016,0 1.735,0 2.16,0 v 23.539 c -1.695,-0.248 -3.389,-0.372 -5.083,-0.372 -10.844,0 -20.33,3.84 -28.461,11.521 -8.131,7.681 -12.198,16.849 -12.198,27.503 0,10.655 4.066,19.905 12.198,27.751 8.132,7.848 17.662,11.77 28.589,11.77 1.862,0 3.685,-0.164 5.463,-0.496 v 22.797 z" />
-</g><g
-   transform="matrix(1.7868062,0,0,2.0278642,-9.0346759,52.702466)"
-   id="g12">
-       <g
-   id="g10">
-               <path
-   style="fill:#a4378a"
-   id="path8"
-   d="m 78.595,131.409 c -0.511,0.082 -1.064,0.124 -1.66,0.124 -0.597,0 -1.064,0 -1.405,0 -8.642,0 -16.165,-3.029 -22.571,-9.087 -6.407,-6.059 -9.609,-13.298 -9.609,-21.718 0,-8.46 3.213,-15.751 9.641,-21.871 6.427,-6.12 13.961,-9.18 22.603,-9.18 0.553,0 1.106,0 1.66,0 0.511,0 0.872,0 1.085,0 v 11.718 c -0.852,-0.124 -1.703,-0.185 -2.554,-0.185 -5.449,0 -10.216,1.912 -14.302,5.735 -4.086,3.823 -6.129,8.387 -6.129,13.691 0,5.304 2.043,9.909 6.129,13.814 4.086,3.906 8.875,5.858 14.366,5.858 0.936,0 1.852,-0.082 2.746,-0.246 z" />
-       </g>
-</g><ellipse
-   style="fill:#f7aa1a;stroke-width:1.90352309"
-   id="ellipse14"
-   ry="31.403505"
-   rx="27.934927"
-   cy="257.17609"
-   cx="155.43011" /><g
-   transform="matrix(1.7868062,0,0,2.0278642,-9.0346759,52.702466)"
-   id="g30">
-       <path
-   style="fill:#c92e6a"
-   id="path16"
-   d="m 111.997,78.483 h 6.402 v 37.949 h -6.402 z" />
-       <path
-   style="fill:#c92e6a"
-   id="path18"
-   d="m 136.099,116.509 c -4.62,0 -8.285,-1.534 -10.997,-4.603 -2.436,-2.764 -3.653,-6.162 -3.653,-10.193 0,-4.083 1.243,-7.544 3.729,-10.384 2.787,-3.17 6.54,-4.754 11.26,-4.754 4.619,0 8.285,1.534 10.997,4.602 2.435,2.764 3.653,6.163 3.653,10.194 0,4.082 -1.242,7.544 -3.728,10.383 -2.788,3.17 -6.542,4.755 -11.261,4.755 z m 0.64,-23.742 c -2.737,0 -4.909,0.914 -6.515,2.741 -1.457,1.65 -2.184,3.668 -2.184,6.054 0,2.31 0.69,4.251 2.071,5.824 1.556,1.752 3.665,2.627 6.327,2.627 2.736,0 4.908,-0.913 6.515,-2.741 1.456,-1.649 2.184,-3.667 2.184,-6.054 0,-2.309 -0.69,-4.25 -2.071,-5.824 -1.557,-1.751 -3.666,-2.627 -6.327,-2.627 z" />
-       <path
-   style="fill:#c92e6a"
-   id="path20"
-   d="m 161.179,116.509 -7.042,-0.038 V 99.908 c 0,-2.532 0.457,-4.723 1.374,-6.572 0.916,-1.849 2.379,-3.457 4.388,-4.825 1.229,-0.835 2.385,-1.437 3.465,-1.804 1.079,-0.367 2.26,-0.551 3.54,-0.551 0.325,0 0.715,0.019 1.167,0.057 0.452,0.038 0.967,0.108 1.544,0.208 v 6.724 c -0.628,-0.177 -1.28,-0.266 -1.958,-0.266 -1.306,0 -2.561,0.443 -3.766,1.33 -0.88,0.633 -1.551,1.355 -2.016,2.166 -0.465,0.811 -0.696,1.747 -0.696,2.811 z" />
-       <path
-   style="fill:#c92e6a"
-   id="path22"
-   d="m 195.637,107.999 v 7.826 c -2.335,1.14 -4.645,1.709 -6.929,1.709 -3.516,0 -6.779,-1.304 -9.792,-3.913 -1.883,-1.62 -3.238,-3.349 -4.067,-5.185 -0.828,-1.836 -1.242,-4.033 -1.242,-6.591 0,-4.179 1.487,-7.743 4.462,-10.694 2.976,-2.95 6.534,-4.425 10.677,-4.425 4.243,0 7.884,1.45 10.922,4.35 3.037,2.9 4.557,6.452 4.557,10.655 v 14.701 h -6.628 v -14.891 c 0,-2.355 -0.886,-4.337 -2.655,-5.945 -1.771,-1.608 -3.86,-2.412 -6.271,-2.412 -2.411,0 -4.457,0.849 -6.139,2.545 -1.683,1.697 -2.523,3.761 -2.523,6.192 0,2.507 0.848,4.653 2.542,6.438 1.695,1.785 3.772,2.678 6.233,2.678 1.48,0 2.755,-0.233 3.822,-0.702 1.066,-0.468 2.077,-1.246 3.031,-2.336 z" />
-       <path
-   style="fill:#c92e6a"
-   id="path24"
-   d="m 230.812,78.939 h 6.139 v 23.438 c 0,3.875 -1.444,7.155 -4.331,9.839 -2.888,2.685 -6.303,4.027 -10.243,4.027 -3.893,0 -7.226,-1.399 -9.999,-4.198 -2.774,-2.798 -4.161,-6.173 -4.161,-10.123 0,-3.596 1.11,-6.667 3.332,-9.212 2.223,-2.545 5.115,-4.108 8.681,-4.691 0.979,-0.152 1.896,-0.228 2.75,-0.228 1.883,0 3.879,0.507 5.987,1.52 v 7.598 c -0.703,-0.912 -1.638,-1.621 -2.806,-2.127 -1.167,-0.506 -2.417,-0.76 -3.747,-0.76 -2.185,0 -4.005,0.633 -5.461,1.899 -1.656,1.443 -2.485,3.47 -2.485,6.078 0,2.229 0.791,4.141 2.373,5.736 1.581,1.596 3.489,2.394 5.724,2.394 2.209,0 4.137,-0.703 5.781,-2.108 1.644,-1.405 2.467,-3.159 2.467,-5.262 v -23.82 z" />
-       <path
-   style="fill:#c92e6a"
-   id="path26"
-   d="m 244.367,86.499 c -1.205,0 -2.146,-0.392 -2.824,-1.178 -0.678,-0.785 -1.017,-1.709 -1.017,-2.773 0,-1.038 0.332,-1.924 0.998,-2.659 0.665,-0.734 1.613,-1.102 2.843,-1.102 1.104,0 1.996,0.405 2.674,1.216 0.603,0.734 0.904,1.621 0.904,2.659 0,1.013 -0.32,1.906 -0.96,2.678 -0.64,0.773 -1.513,1.159 -2.618,1.159 z m -3.276,1.861 h 6.402 v 28.073 h -6.402 z" />
-       <path
-   style="fill:#c92e6a"
-   id="path28"
-   d="m 266.135,116.509 c -4.619,0 -8.285,-1.534 -10.996,-4.603 -2.436,-2.764 -3.653,-6.162 -3.653,-10.193 0,-4.083 1.243,-7.544 3.729,-10.384 2.787,-3.17 6.54,-4.754 11.261,-4.754 4.619,0 8.285,1.534 10.996,4.602 2.435,2.764 3.653,6.163 3.653,10.194 0,4.082 -1.243,7.544 -3.729,10.383 -2.788,3.17 -6.541,4.755 -11.261,4.755 z m 0.64,-23.742 c -2.736,0 -4.908,0.914 -6.515,2.741 -1.457,1.65 -2.185,3.668 -2.185,6.054 0,2.31 0.69,4.251 2.071,5.824 1.557,1.752 3.665,2.627 6.327,2.627 2.735,0 4.907,-0.913 6.515,-2.741 1.456,-1.649 2.185,-3.667 2.185,-6.054 0,-2.309 -0.691,-4.25 -2.071,-5.824 -1.557,-1.751 -3.665,-2.627 -6.327,-2.627 z" />
-</g>
-</svg>
\ No newline at end of file
diff --git a/img/apps/creorgalogo.svg b/img/apps/creorgalogo.svg
deleted file mode 100644 (file)
index fde1faa..0000000
+++ /dev/null
@@ -1,931 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="512"
-   height="512"
-   viewBox="0 0 135.46666 135.46667"
-   version="1.1"
-   id="svg898"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
-   sodipodi:docname="creorgalogo.svg">
-  <defs
-     id="defs892">
-    <clipPath
-       id="clipPath1459"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1457"
-         d="m 212.573,661.197 h 170.13 v 62.614 h -170.13 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1499"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1497"
-         d="m 127.508,383.283 h 340.26 v 125.228 h -340.26 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1539"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1537"
-         d="m 258.72,162.909 h 77.835 v 77.836 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1547"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1545"
-         d="m 263.22,236.244 h 68.835 V 211.041 H 263.22 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1555"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1553"
-         d="m 258.91026,211.80096 6.38556,36.21427 71.06949,-12.53148 -6.38556,-36.21427 z" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient1565"
-       spreadMethod="pad"
-       gradientTransform="matrix(5.6686859,32.148682,32.148682,-5.6686859,295.14764,208.71826)"
-       gradientUnits="userSpaceOnUse"
-       y2="0"
-       x2="1"
-       y1="0"
-       x1="0">
-      <stop
-         id="stop1557"
-         offset="0"
-         style="stop-opacity:1;stop-color:#ffffff" />
-      <stop
-         id="stop1559"
-         offset="0.355835"
-         style="stop-opacity:1;stop-color:#ffffff" />
-      <stop
-         id="stop1561"
-         offset="0.77301"
-         style="stop-opacity:1;stop-color:#77a518" />
-      <stop
-         id="stop1563"
-         offset="1"
-         style="stop-opacity:1;stop-color:#77a518" />
-    </linearGradient>
-    <clipPath
-       id="clipPath1589"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1587"
-         d="m 263.22,201.353 h 68.835 V 167.409 H 263.22 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1597"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1595"
-         d="m 257.41595,168.43279 7.88027,44.6912 72.56379,-12.79496 -7.88027,-44.6912 z" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient1605"
-       spreadMethod="pad"
-       gradientTransform="matrix(7.7289581,43.833084,43.833084,-7.7289581,294.78554,162.72832)"
-       gradientUnits="userSpaceOnUse"
-       y2="0"
-       x2="1"
-       y1="0"
-       x1="0">
-      <stop
-         id="stop1599"
-         offset="0"
-         style="stop-opacity:1;stop-color:#77a518" />
-      <stop
-         id="stop1601"
-         offset="0.20091295"
-         style="stop-opacity:1;stop-color:#ffffff" />
-      <stop
-         id="stop1603"
-         offset="1"
-         style="stop-opacity:1;stop-color:#ffffff" />
-    </linearGradient>
-    <clipPath
-       id="clipPath1639"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1637"
-         d="m 258.72,162.909 h 77.835 v 77.836 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1647"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1645"
-         d="m 261.72,237.744 h 71.835 v -35.12 H 261.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1651"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1649"
-         d="m 261.72,202.624 h 71.835 v 35.12 H 261.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1675"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1673"
-         d="m 263.22,236.244 h 68.835 V 198.765 H 263.22 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1683"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1681"
-         d="m 332.70958,236.23269 -0.67496,-38.669 -69.46837,1.21257 0.67497,38.669 z" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient1691"
-       spreadMethod="pad"
-       gradientTransform="matrix(-0.950119,-54.43248,-54.43248,0.950119,298.27158,253.16455)"
-       gradientUnits="userSpaceOnUse"
-       y2="0"
-       x2="1"
-       y1="0"
-       x1="0">
-      <stop
-         id="stop1685"
-         offset="0"
-         style="stop-opacity:1;stop-color:#77a518" />
-      <stop
-         id="stop1687"
-         offset="0.06066242"
-         style="stop-opacity:1;stop-color:#77a518" />
-      <stop
-         id="stop1689"
-         offset="1"
-         style="stop-opacity:1;stop-color:#ffffff" />
-    </linearGradient>
-    <clipPath
-       id="clipPath1723"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1721"
-         d="m 258.72,240.744 h 77.835 V 203.008 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1727"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1725"
-         d="m 258.72,203.008 h 77.835 v 37.736 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1914"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1912"
-         d="m 212.573,661.197 h 170.13 v 62.614 h -170.13 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1954"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1952"
-         d="m 127.508,383.283 h 340.26 v 125.228 h -340.26 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath1994"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path1992"
-         d="m 258.72,162.909 h 77.835 v 77.836 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2002"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2000"
-         d="m 263.22,236.244 h 68.835 V 211.041 H 263.22 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2010"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2008"
-         d="m 258.91026,211.80096 6.38556,36.21427 71.06949,-12.53148 -6.38556,-36.21427 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2044"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2042"
-         d="m 263.22,201.353 h 68.835 V 167.409 H 263.22 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2052"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2050"
-         d="m 257.41595,168.43279 7.88027,44.6912 72.56379,-12.79496 -7.88027,-44.6912 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2094"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2092"
-         d="m 258.72,162.909 h 77.835 v 77.836 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2102"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2100"
-         d="m 261.72,237.744 h 71.835 v -35.12 H 261.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2106"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2104"
-         d="m 261.72,202.624 h 71.835 v 35.12 H 261.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2130"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2128"
-         d="m 263.22,236.244 h 68.835 V 198.765 H 263.22 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2138"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2136"
-         d="m 332.70958,236.23269 -0.67496,-38.669 -69.46837,1.21257 0.67497,38.669 z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2178"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2176"
-         d="m 258.72,240.744 h 77.835 V 203.008 H 258.72 Z" />
-    </clipPath>
-    <clipPath
-       id="clipPath2182"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         id="path2180"
-         d="m 258.72,203.008 h 77.835 v 37.736 H 258.72 Z" />
-    </clipPath>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1565"
-       id="linearGradient2488"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(5.6686859,32.148682,32.148682,-5.6686859,295.14764,208.71826)"
-       x1="0"
-       y1="0"
-       x2="1"
-       y2="0"
-       spreadMethod="pad" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1605"
-       id="linearGradient2490"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(7.7289581,43.833084,43.833084,-7.7289581,294.78554,162.72832)"
-       x1="0"
-       y1="0"
-       x2="1"
-       y2="0"
-       spreadMethod="pad" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1691"
-       id="linearGradient2492"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-0.950119,-54.43248,-54.43248,0.950119,298.27158,253.16455)"
-       x1="0"
-       y1="0"
-       x2="1"
-       y2="0"
-       spreadMethod="pad" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="0.98994949"
-     inkscape:cx="176.05909"
-     inkscape:cy="285.56469"
-     inkscape:document-units="mm"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     units="px"
-     showguides="true"
-     inkscape:guide-bbox="true"
-     inkscape:window-width="1920"
-     inkscape:window-height="1017"
-     inkscape:window-x="-8"
-     inkscape:window-y="-8"
-     inkscape:window-maximized="1" />
-  <metadata
-     id="metadata895">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Ebene 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(0,-161.53332)">
-    <g
-       transform="matrix(0.35277777,0,0,-0.35277777,326.64877,480.62189)"
-       inkscape:label="MAQ_Logos"
-       id="g1451">
-      <g
-         id="g1453">
-        <g
-           clip-path="url(#clipPath1459)"
-           id="g1455">
-          <g
-             transform="translate(270.8022,714.9224)"
-             id="g1461">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1463"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -2.698,0 -4.798,-1.649 -4.798,-4.872 v -15.442 c 7.947,3.748 9.596,7.197 9.596,14.167 C 4.798,-1.574 2.624,0 0,0 m 10.945,-29.835 c 0,-7.195 -4.872,-11.393 -11.169,-11.393 -6.372,0 -11.169,4.198 -11.169,11.393 v 24.963 c 0,7.197 4.947,11.095 11.393,11.095 6.221,0 11.395,-4.273 11.395,-11.994 0,-12.37 -4.798,-15.968 -16.193,-21.815 v -2.249 c 0,-3.073 1.8,-4.797 4.574,-4.797 2.623,0 4.497,1.724 4.497,4.797 v 0.751 l 6.672,2.173 z" />
-          </g>
-          <g
-             transform="translate(371.3083,679.3778)"
-             id="g1465">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1467"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="M 0,0 C 2.697,0 4.798,1.65 4.798,4.873 V 20.315 C -3.149,16.567 -4.798,13.119 -4.798,6.147 -4.798,1.574 -2.624,0 0,0 m -10.945,29.835 c 0,7.196 4.872,11.394 11.169,11.394 6.373,0 11.171,-4.198 11.171,-11.394 V 4.873 C 11.395,-2.323 6.446,-6.221 0,-6.221 c -6.221,0 -11.396,4.273 -11.396,11.993 0,12.369 4.798,15.967 16.194,21.814 v 2.249 c 0,3.073 -1.8,4.797 -4.574,4.797 -2.623,0 -4.497,-1.724 -4.497,-4.797 v -0.749 l -6.672,-2.175 z" />
-          </g>
-          <g
-             transform="translate(297.2103,720.4166)"
-             id="g1469">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1471"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -6.447,0 -11.393,-4.199 -11.393,-11.095 v -12.928 l 6.596,2.081 v 10.847 c 0,3.224 2.098,4.872 4.797,4.872 2.623,0 4.798,-1.648 4.798,-4.872 v -24.962 c 0,-3.074 -2.175,-4.797 -4.798,-4.797 -2.699,0 -4.797,1.723 -4.797,4.797 v 7.179 l -6.596,-2.08 v -5.099 c 0,-7.046 4.946,-11.394 11.393,-11.394 6.223,0 11.393,4.348 11.393,11.394 v 24.962 C 11.393,-4.199 6.223,0 0,0" />
-          </g>
-          <g
-             transform="translate(349.4522,667.7183)"
-             id="g1473">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1475"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 h -3.814 -8.255 -3.815 c -1.948,0 -3.521,0.825 -3.521,2.699 0,1.798 1.422,2.699 3.972,2.699 h 1.565 11.851 1.565 c 2.55,0 3.973,-0.901 3.973,-2.699 C 3.521,0.825 1.947,0 0,0 m -4.424,23.613 c -2.623,0 -4.947,1.649 -4.947,4.798 v 13.343 c 0,3.372 2.324,4.872 4.947,4.872 2.699,0 4.949,-1.5 4.949,-4.872 V 28.411 c 0,-3.149 -2.25,-4.798 -4.949,-4.798 M 2.399,11.544 c 1.573,0.524 2.248,1.799 2.248,3.299 0,1.424 -1.126,3.074 -3.673,3.673 4.048,2.098 5.995,5.397 5.995,10.045 v 13.043 c 0,6.896 -4.273,11.094 -11.017,11.094 -2.857,0 -4.928,-0.361 -6.198,-0.826 -1.423,-0.714 -5.496,-3.213 -5.647,-8.305 V 28.561 c 0,-6.223 3.074,-10.12 10.644,-10.795 3.524,-0.3 4.124,-1.874 4.124,-3.224 0,-0.899 -0.6,-2.323 -2.098,-2.548 h -11.914 c 0,0 -1.699,-0.03 -3.146,-0.45 -4.722,-1.2 -7.57,-4.498 -7.57,-8.921 0,-5.547 3.597,-9.144 9.82,-9.144 h 7.56 1.062 7.56 c 6.222,0 9.819,3.597 9.819,9.144 0,4.423 -2.848,7.721 -7.569,8.921" />
-          </g>
-          <g
-             transform="translate(259.0146,716.616)"
-             id="g1477">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1479"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -2.068,2.861 -5.492,4.492 -9.344,4.492 -6.447,0 -11.393,-4.198 -11.393,-11.094 v -35.269 h 6.596 v 35.269 c 0,3.224 2.099,4.872 4.797,4.872 0.826,0 1.602,-0.172 2.285,-0.496 z" />
-          </g>
-          <g
-             transform="translate(332.3559,715.8876)"
-             id="g1481">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1483"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -2.068,2.861 -5.492,4.492 -9.344,4.492 -6.447,0 -11.393,-4.198 -11.393,-11.094 v -35.269 h 6.596 v 35.269 c 0,3.224 2.099,4.872 4.797,4.872 0.826,0 1.602,-0.172 2.285,-0.497 z" />
-          </g>
-          <g
-             transform="translate(283.6098,720.5106)"
-             id="g1485">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1487"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c 0,-1.822 -1.477,-3.299 -3.3,-3.299 -1.822,0 -3.299,1.477 -3.299,3.299 0,1.823 1.477,3.3 3.299,3.3 C -1.477,3.3 0,1.823 0,0" />
-          </g>
-          <g
-             transform="translate(223.966,674.0336)"
-             id="g1489">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1491"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="M 0,0 C 6.447,0 11.393,4.199 11.393,11.095 V 24.521 L 4.798,22.441 V 11.095 C 4.798,7.871 2.699,6.223 0,6.223 c -2.623,0 -4.798,1.648 -4.798,4.872 v 24.962 c 0,3.074 2.175,4.797 4.798,4.797 2.699,0 4.798,-1.723 4.798,-4.797 v -6.682 l 6.595,2.082 v 4.6 c 0,7.046 -4.946,11.394 -11.393,11.394 -6.223,0 -11.393,-4.348 -11.393,-11.394 V 11.095 C -11.393,4.199 -6.223,0 0,0" />
-          </g>
-        </g>
-      </g>
-      <g
-         id="g1493">
-        <g
-           clip-path="url(#clipPath1499)"
-           id="g1495">
-          <g
-             transform="translate(243.9667,490.7339)"
-             id="g1501">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1503"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -5.395,0 -9.595,-3.297 -9.595,-9.744 v -30.884 c 15.893,7.496 19.19,14.393 19.19,28.334 C 9.595,-3.148 5.249,0 0,0 m 21.89,-59.669 c 0,-14.392 -9.745,-22.787 -22.339,-22.787 -12.743,0 -22.338,8.395 -22.338,22.787 v 49.925 c 0,14.393 9.896,22.189 22.787,22.189 12.443,0 22.789,-8.546 22.789,-23.987 0,-24.739 -9.594,-31.936 -32.384,-43.629 v -4.498 c 0,-6.147 3.599,-9.596 9.146,-9.596 5.247,0 8.995,3.449 8.995,9.596 v 1.5 l 13.344,4.347 z" />
-          </g>
-          <g
-             transform="translate(444.9788,419.6446)"
-             id="g1505">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1507"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="M 0,0 C 5.395,0 9.595,3.3 9.595,9.747 V 40.631 C -6.298,33.134 -9.595,26.238 -9.595,12.294 -9.595,3.148 -5.249,0 0,0 m -21.891,59.669 c 0,14.392 9.745,22.789 22.339,22.789 12.747,0 22.341,-8.397 22.341,-22.789 V 9.747 c 0,-14.394 -9.898,-22.19 -22.789,-22.19 -12.443,0 -22.792,8.546 -22.792,23.987 0,24.737 9.597,31.934 32.387,43.627 v 4.498 c 0,6.147 -3.599,9.596 -9.147,9.596 -5.246,0 -8.994,-3.449 -8.994,-9.596 v -1.498 l -13.345,-4.349 z" />
-          </g>
-          <g
-             transform="translate(296.7827,501.7223)"
-             id="g1509">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1511"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -12.894,0 -22.787,-8.397 -22.787,-22.189 v -25.857 l 13.193,4.162 v 21.695 c 0,6.446 4.197,9.744 9.594,9.744 5.246,0 9.595,-3.298 9.595,-9.744 v -49.925 c 0,-6.148 -4.349,-9.595 -9.595,-9.595 -5.397,0 -9.594,3.447 -9.594,9.595 v 14.359 l -13.193,-4.162 v -10.197 c 0,-14.092 9.893,-22.787 22.787,-22.787 12.445,0 22.787,8.695 22.787,22.787 v 49.925 C 22.787,-8.397 12.445,0 0,0" />
-          </g>
-          <g
-             transform="translate(401.2667,396.3257)"
-             id="g1513">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1515"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 h -7.629 -16.509 -7.631 c -3.894,0 -7.041,1.649 -7.041,5.397 0,3.597 2.845,5.399 7.945,5.399 h 3.129 23.703 3.13 c 5.1,0 7.946,-1.802 7.946,-5.399 C 7.043,1.649 3.894,0 0,0 m -8.848,47.226 c -5.247,0 -9.893,3.297 -9.893,9.596 v 26.686 c 0,6.744 4.646,9.744 9.893,9.744 5.397,0 9.897,-3 9.897,-9.744 V 56.822 c 0,-6.299 -4.5,-9.596 -9.897,-9.596 M 4.798,23.088 c 3.147,1.048 4.495,3.598 4.495,6.598 0,2.847 -2.25,6.147 -7.345,7.345 8.096,4.197 11.99,10.795 11.99,20.091 v 26.086 c 0,13.792 -8.546,22.188 -22.034,22.188 -5.714,0 -9.857,-0.722 -12.397,-1.652 -2.846,-1.429 -10.991,-6.427 -11.293,-16.61 V 57.122 c 0,-12.446 6.148,-20.24 21.289,-21.59 7.046,-0.6 8.247,-3.748 8.247,-6.447 0,-1.798 -1.201,-4.648 -4.197,-5.098 h -23.827 c 0,0 -3.399,-0.06 -6.292,-0.899 -9.443,-2.399 -15.139,-8.996 -15.139,-17.842 0,-11.093 7.194,-18.289 19.639,-18.289 h 15.12 2.123 15.12 c 12.446,0 19.64,7.196 19.64,18.289 0,8.846 -5.696,15.443 -15.139,17.842" />
-          </g>
-          <g
-             transform="translate(220.3915,494.1209)"
-             id="g1517">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1519"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -4.137,5.722 -10.984,8.984 -18.687,8.984 -12.894,0 -22.787,-8.396 -22.787,-22.188 v -70.537 h 13.191 v 70.537 c 0,6.447 4.198,9.743 9.596,9.743 1.651,0 3.203,-0.343 4.57,-0.992 z" />
-          </g>
-          <g
-             transform="translate(367.074,492.6641)"
-             id="g1521">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1523"
-               style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -4.137,5.722 -10.984,8.984 -18.687,8.984 -12.894,0 -22.787,-8.396 -22.787,-22.188 v -70.537 h 13.191 v 70.537 c 0,6.447 4.198,9.743 9.596,9.743 1.651,0 3.203,-0.343 4.57,-0.992 z" />
-          </g>
-          <g
-             transform="translate(269.5819,501.9102)"
-             id="g1525">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1527"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c 0,-3.643 -2.955,-6.598 -6.599,-6.598 -3.645,0 -6.6,2.955 -6.6,6.598 0,3.646 2.955,6.601 6.6,6.601 C -2.955,6.601 0,3.646 0,0" />
-          </g>
-          <g
-             transform="translate(150.2943,408.9563)"
-             id="g1529">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1531"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="M 0,0 C 12.894,0 22.787,8.397 22.787,22.189 V 49.042 L 9.595,44.881 V 22.189 c 0,-6.446 -4.198,-9.744 -9.595,-9.744 -5.246,0 -9.595,3.298 -9.595,9.744 v 49.925 c 0,6.148 4.349,9.595 9.595,9.595 5.397,0 9.595,-3.447 9.595,-9.595 V 58.751 l 13.192,4.163 v 9.2 c 0,14.092 -9.893,22.787 -22.787,22.787 -12.445,0 -22.787,-8.695 -22.787,-22.787 V 22.189 C -22.787,8.397 -12.445,0 0,0" />
-          </g>
-        </g>
-      </g>
-      <g
-         id="g1533">
-        <g
-           clip-path="url(#clipPath1539)"
-           id="g1535">
-          <g
-             id="g1541">
-            <g
-               id="g1543" />
-            <g
-               id="g1581">
-              <g
-                 id="g1579"
-                 clip-path="url(#clipPath1547)">
-                <g
-                   id="g1577">
-                  <g
-                     id="g1575">
-                    <g
-                       id="g1573">
-                      <g
-                         id="g1571">
-                        <g
-                           id="g1569"
-                           clip-path="url(#clipPath1555)">
-                          <path
-                             inkscape:connector-curvature="0"
-                             id="path1567"
-                             style="fill:url(#linearGradient2488);stroke:none"
-                             d="m 268.724,236.244 c -3.034,0 -5.504,-2.469 -5.504,-5.503 v 0 -16.24 c 9.232,-2.155 21.298,-3.46 34.502,-3.46 v 0 c 13.124,0 25.123,1.289 34.333,3.421 v 0 16.279 c 0,3.034 -2.469,5.503 -5.504,5.503 v 0 z" />
-                        </g>
-                      </g>
-                    </g>
-                  </g>
-                </g>
-              </g>
-            </g>
-          </g>
-          <g
-             id="g1583">
-            <g
-               id="g1585" />
-            <g
-               id="g1621">
-              <g
-                 id="g1619"
-                 clip-path="url(#clipPath1589)">
-                <g
-                   id="g1617">
-                  <g
-                     id="g1615">
-                    <g
-                       id="g1613">
-                      <g
-                         id="g1611">
-                        <g
-                           id="g1609"
-                           clip-path="url(#clipPath1597)">
-                          <path
-                             inkscape:connector-curvature="0"
-                             id="path1607"
-                             style="fill:url(#linearGradient2490);stroke:none"
-                             d="m 291.211,194.844 c -10.141,-2.7 -19.635,-5.951 -27.991,-9.461 v 0 -12.469 c 0,-3.035 2.47,-5.504 5.504,-5.504 v 0 h 57.827 c 0.019,0 0.038,0.003 0.058,0.003 v 0 c 1.376,0.602 2.719,1.209 4.025,1.822 v 0 c 0.881,0.977 1.421,2.264 1.421,3.679 v 0 28.438 c -11.358,-0.295 -25.583,-2.446 -40.844,-6.508" />
-                        </g>
-                      </g>
-                    </g>
-                  </g>
-                </g>
-              </g>
-            </g>
-          </g>
-        </g>
-      </g>
-      <path
-         inkscape:connector-curvature="0"
-         id="path1623"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         d="m 333.315,193.599 h -70.832 v 10 h 70.832 z" />
-      <g
-         transform="translate(290.9775,200.8271)"
-         id="g1625">
-        <path
-           inkscape:connector-curvature="0"
-           id="path1627"
-           style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-           d="M 0,0 7.071,-7.071" />
-      </g>
-      <g
-         transform="translate(305.1197,200.8271)"
-         id="g1629">
-        <path
-           inkscape:connector-curvature="0"
-           id="path1631"
-           style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-           d="M 0,0 -7.071,-7.071" />
-      </g>
-      <g
-         id="g1633">
-        <g
-           clip-path="url(#clipPath1639)"
-           id="g1635">
-          <g
-             id="g1641">
-            <g
-               id="g1643" />
-            <g
-               id="g1663">
-              <g
-                 style="opacity:0.58000201"
-                 id="g1661"
-                 clip-path="url(#clipPath1647)">
-                <g
-                   id="g1659">
-                  <g
-                     id="g1657"
-                     clip-path="url(#clipPath1651)">
-                    <g
-                       id="g1655"
-                       transform="translate(263.2205,230.7404)">
-                      <path
-                         inkscape:connector-curvature="0"
-                         id="path1653"
-                         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-                         d="m 0,0 c 0,3.035 2.469,5.504 5.503,5.504 h 57.828 c 3.034,0 5.504,-2.469 5.504,-5.504 v -27.748 c 0.504,0.134 1.004,0.268 1.5,0.407 V 0 c 0,3.862 -3.143,7.004 -7.004,7.004 H 5.503 C 1.642,7.004 -1.5,3.862 -1.5,0 v -27.733 c 0.495,-0.13 0.996,-0.258 1.5,-0.383 z" />
-                    </g>
-                  </g>
-                </g>
-              </g>
-            </g>
-          </g>
-          <g
-             transform="translate(326.551,236.2442)"
-             id="g1665">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1667"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 h -57.827 c -3.035,0 -5.504,-2.469 -5.504,-5.504 V -33.62 c 9.849,-2.45 21.375,-3.86 33.697,-3.86 12.928,0 24.98,1.552 35.138,4.229 V -5.504 C 5.504,-2.469 3.035,0 0,0" />
-          </g>
-          <g
-             id="g1669">
-            <g
-               id="g1671" />
-            <g
-               id="g1707">
-              <g
-                 id="g1705"
-                 clip-path="url(#clipPath1675)">
-                <g
-                   id="g1703">
-                  <g
-                     id="g1701">
-                    <g
-                       id="g1699">
-                      <g
-                         id="g1697">
-                        <g
-                           id="g1695"
-                           clip-path="url(#clipPath1683)">
-                          <path
-                             inkscape:connector-curvature="0"
-                             id="path1693"
-                             style="fill:url(#linearGradient2492);stroke:none"
-                             d="m 268.724,236.244 c -3.034,0 -5.504,-2.469 -5.504,-5.503 v 0 -28.117 c 9.849,-2.45 21.375,-3.859 33.697,-3.859 v 0 c 12.928,0 24.981,1.552 35.138,4.228 v 0 27.748 c 0,3.034 -2.469,5.503 -5.504,5.503 v 0 z" />
-                        </g>
-                      </g>
-                    </g>
-                  </g>
-                </g>
-              </g>
-            </g>
-          </g>
-          <g
-             transform="translate(326.551,240.7442)"
-             id="g1709">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1711"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 h -57.827 c -5.516,0 -10.004,-4.487 -10.004,-10.004 v -26.89 c 0.981,-0.292 1.981,-0.572 3,-0.842 v 27.732 c 0,3.862 3.143,7.004 7.004,7.004 L 0,-3 c 3.862,0 7.004,-3.142 7.004,-7.004 v -27.341 c 1.022,0.285 2.021,0.584 3,0.893 v 26.448 C 10.004,-4.487 5.516,0 0,0" />
-          </g>
-          <g
-             transform="translate(333.5552,172.9137)"
-             id="g1713">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1715"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c 0,-3.862 -3.142,-7.004 -7.004,-7.004 h -57.828 c -3.861,0 -7.003,3.142 -7.003,7.004 v 30.094 c -1.019,0.27 -2.02,0.55 -3,0.843 V 0 c 0,-5.516 4.487,-10.004 10.003,-10.004 H -7.004 C -1.487,-10.004 3,-5.516 3,0 V 31.378 C 2.02,31.07 1.021,30.771 0,30.486 Z" />
-          </g>
-          <g
-             id="g1717">
-            <g
-               id="g1719" />
-            <g
-               id="g1739">
-              <g
-                 style="opacity:0.58000201"
-                 id="g1737"
-                 clip-path="url(#clipPath1723)">
-                <g
-                   id="g1735">
-                  <g
-                     id="g1733"
-                     clip-path="url(#clipPath1727)">
-                    <g
-                       id="g1731"
-                       transform="translate(326.551,240.7442)">
-                      <path
-                         inkscape:connector-curvature="0"
-                         id="path1729"
-                         style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-                         d="m 0,0 h -57.827 c -5.516,0 -10.004,-4.487 -10.004,-10.004 v -26.89 c 0.981,-0.292 1.981,-0.572 3,-0.842 v 27.732 c 0,3.862 3.143,7.004 7.004,7.004 L 0,-3 c 3.862,0 7.004,-3.142 7.004,-7.004 v -27.341 c 1.022,0.285 2.021,0.584 3,0.893 v 26.448 C 10.004,-4.487 5.516,0 0,0" />
-                    </g>
-                  </g>
-                </g>
-              </g>
-            </g>
-          </g>
-          <g
-             transform="translate(263.2205,202.6242)"
-             id="g1741">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1743"
-               style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 v -29.711 c 0,-3.035 2.469,-5.504 5.503,-5.504 h 57.828 c 3.034,0 5.504,2.469 5.504,5.504 V 0.368 C 58.677,-2.308 46.624,-3.86 33.697,-3.86 21.375,-3.86 9.849,-2.45 0,0" />
-          </g>
-          <g
-             transform="translate(314.9857,230.1868)"
-             id="g1745">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1747"
-               style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="m 0,0 c -7.664,0 -13.546,-4.993 -13.546,-13.19 v -15.965 l 7.841,2.475 v 13.49 c 0,3.831 2.496,5.79 5.705,5.79 3.119,0 5.705,-1.959 5.705,-5.79 v -29.682 c 0,-3.655 -2.586,-5.704 -5.705,-5.704 -3.209,0 -5.705,2.049 -5.705,5.704 v 7.944 l -7.841,-2.477 v -5.467 c 0,-8.378 5.882,-13.548 13.546,-13.548 7.399,0 13.547,5.17 13.547,13.548 V -13.19 C 13.547,-4.993 7.399,0 0,0" />
-          </g>
-          <g
-             transform="translate(281.1871,173.8764)"
-             id="g1749">
-            <path
-               inkscape:connector-curvature="0"
-               id="path1751"
-               style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-               d="M 0,0 C 7.666,0 13.547,4.992 13.547,13.193 V 29.16 L 5.705,26.683 V 13.193 C 5.705,9.361 3.209,7.4 0,7.4 c -3.118,0 -5.705,1.961 -5.705,5.793 v 29.681 c 0,3.654 2.587,5.703 5.705,5.703 3.209,0 5.705,-2.049 5.705,-5.703 v -7.945 l 7.842,2.476 v 5.469 c 0,8.379 -5.881,13.547 -13.547,13.547 -7.399,0 -13.547,-5.168 -13.547,-13.547 V 13.193 C -13.547,4.992 -7.399,0 0,0" />
-          </g>
-        </g>
-      </g>
-    </g>
-    <path
-       d="M 110.10394,208.21733 H 85.115989 v -3.52778 h 24.987951 z"
-       style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.35277778"
-       id="path2078"
-       inkscape:connector-curvature="0" />
-    <g
-       id="g2080"
-       transform="matrix(0.35277777,0,0,-0.35277777,95.168215,205.66741)">
-      <path
-         d="M 0,0 7.071,-7.071"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         id="path2082"
-         inkscape:connector-curvature="0" />
-    </g>
-    <g
-       id="g2084"
-       transform="matrix(0.35277777,0,0,-0.35277777,100.15727,205.66741)">
-      <path
-         d="M 0,0 -7.071,-7.071"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         id="path2086"
-         inkscape:connector-curvature="0" />
-    </g>
-    <g
-       clip-path="url(#clipPath2094)"
-       id="g2090"
-       transform="matrix(1.7404338,0,0,-1.740445,-450.28504,580.53537)">
-      <g
-         id="g2096">
-        <g
-           id="g2098" />
-        <g
-           id="g2118">
-          <g
-             style="opacity:0.58000201"
-             id="g2116"
-             clip-path="url(#clipPath2102)">
-            <g
-               id="g2114">
-              <g
-                 id="g2112"
-                 clip-path="url(#clipPath2106)">
-                <g
-                   id="g2110"
-                   transform="translate(263.2205,230.7404)" />
-              </g>
-            </g>
-          </g>
-        </g>
-      </g>
-      <g
-         transform="translate(326.551,240.7442)"
-         id="g2164">
-        <path
-           inkscape:connector-curvature="0"
-           id="path2166"
-           style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-           d="m 0,0 h -57.827 c -5.516,0 -10.004,-4.487 -10.004,-10.004 v -26.89 c 0.981,-0.292 1.981,-0.572 3,-0.842 v 27.732 c 0,3.862 3.143,7.004 7.004,7.004 L 0,-3 c 3.862,0 7.004,-3.142 7.004,-7.004 v -27.341 c 1.022,0.285 2.021,0.584 3,0.893 v 26.448 C 10.004,-4.487 5.516,0 0,0" />
-      </g>
-      <g
-         transform="translate(333.5552,172.9137)"
-         id="g2168">
-        <path
-           inkscape:connector-curvature="0"
-           id="path2170"
-           style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-           d="m 0,0 c 0,-3.862 -3.142,-7.004 -7.004,-7.004 h -57.828 c -3.861,0 -7.003,3.142 -7.003,7.004 v 30.094 c -1.019,0.27 -2.02,0.55 -3,0.843 V 0 c 0,-5.516 4.487,-10.004 10.003,-10.004 H -7.004 C -1.487,-10.004 3,-5.516 3,0 V 31.378 C 2.02,31.07 1.021,30.771 0,30.486 Z" />
-      </g>
-      <g
-         id="g2172">
-        <g
-           id="g2174" />
-        <g
-           id="g2194">
-          <g
-             style="opacity:0.58000201"
-             id="g2192"
-             clip-path="url(#clipPath2178)">
-            <g
-               id="g2190">
-              <g
-                 id="g2188"
-                 clip-path="url(#clipPath2182)">
-                <g
-                   id="g2186"
-                   transform="translate(326.551,240.7442)">
-                  <path
-                     inkscape:connector-curvature="0"
-                     id="path2184"
-                     style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-                     d="m 0,0 h -57.827 c -5.516,0 -10.004,-4.487 -10.004,-10.004 v -26.89 c 0.981,-0.292 1.981,-0.572 3,-0.842 v 27.732 c 0,3.862 3.143,7.004 7.004,7.004 L 0,-3 c 3.862,0 7.004,-3.142 7.004,-7.004 v -27.341 c 1.022,0.285 2.021,0.584 3,0.893 v 26.448 C 10.004,-4.487 5.516,0 0,0" />
-                </g>
-              </g>
-            </g>
-          </g>
-        </g>
-      </g>
-      <g
-         transform="translate(263.2205,202.6242)"
-         id="g2196"
-         style="fill:#77a518;fill-opacity:1" />
-      <g
-         transform="translate(314.9857,230.1868)"
-         id="g2200"
-         style="fill:#5a5758;fill-opacity:1">
-        <path
-           inkscape:connector-curvature="0"
-           id="path2202"
-           style="fill:#5a5758;fill-opacity:1;fill-rule:nonzero;stroke:none"
-           d="m 0,0 c -7.664,0 -13.546,-4.993 -13.546,-13.19 v -15.965 l 7.841,2.475 v 13.49 c 0,3.831 2.496,5.79 5.705,5.79 3.119,0 5.705,-1.959 5.705,-5.79 v -29.682 c 0,-3.655 -2.586,-5.704 -5.705,-5.704 -3.209,0 -5.705,2.049 -5.705,5.704 v 7.944 l -7.841,-2.477 v -5.467 c 0,-8.378 5.882,-13.548 13.546,-13.548 7.399,0 13.547,5.17 13.547,13.548 V -13.19 C 13.547,-4.993 7.399,0 0,0" />
-      </g>
-      <g
-         transform="translate(281.1871,173.8764)"
-         id="g2204"
-         style="fill:#77a518;fill-opacity:1">
-        <path
-           inkscape:connector-curvature="0"
-           id="path2206"
-           style="fill:#77a518;fill-opacity:1;fill-rule:nonzero;stroke:none"
-           d="M 0,0 C 7.666,0 13.547,4.992 13.547,13.193 V 29.16 L 5.705,26.683 V 13.193 C 5.705,9.361 3.209,7.4 0,7.4 c -3.118,0 -5.705,1.961 -5.705,5.793 v 29.681 c 0,3.654 2.587,5.703 5.705,5.703 3.209,0 5.705,-2.049 5.705,-5.703 v -7.945 l 7.842,2.476 v 5.469 c 0,8.379 -5.881,13.547 -13.547,13.547 -7.399,0 -13.547,-5.168 -13.547,-13.547 V 13.193 C -13.547,4.992 -7.399,0 0,0" />
-      </g>
-    </g>
-    <g
-       aria-label="`"
-       style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
-       id="text2496">
-      <path
-         d="m 74.674946,183.93304 h -4.619873 l -8.4646,-11.59619 h 7.534424 z"
-         style="font-size:63.5px;fill:#5a5758;fill-opacity:1;stroke-width:0.26458332"
-         id="path2500" />
-    </g>
-  </g>
-</svg>
diff --git a/img/apps/dkstools.svg b/img/apps/dkstools.svg
deleted file mode 100644 (file)
index 3682c85..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.1"
-   id="Capa_1"
-   x="0px"
-   y="0px"
-   viewBox="0 0 512.00001 512.00001"
-   xml:space="preserve"
-   sodipodi:docname="dkstools.svg"
-   width="512"
-   height="512"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)"><metadata
-   id="metadata51"><rdf:RDF><cc:Work
-       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
-   id="defs49">
-       
-       
-       
-       
-       
-       
-</defs><sodipodi:namedview
-   pagecolor="#ffffff"
-   bordercolor="#666666"
-   borderopacity="1"
-   objecttolerance="10"
-   gridtolerance="10"
-   guidetolerance="10"
-   inkscape:pageopacity="0"
-   inkscape:pageshadow="2"
-   inkscape:window-width="1920"
-   inkscape:window-height="1017"
-   id="namedview47"
-   showgrid="false"
-   inkscape:zoom="0.69974172"
-   inkscape:cx="472.22206"
-   inkscape:cy="344.38866"
-   inkscape:window-x="-8"
-   inkscape:window-y="-8"
-   inkscape:window-maximized="1"
-   inkscape:current-layer="Capa_1" />
-<polygon
-   id="polygon2"
-   points="399.542,186.525 398.912,186.565 345.204,240.669 399.542,240.669 "
-   transform="translate(20.210508,14.821505)"
-   style="fill:#52638e;fill-opacity:1" /><path
-   inkscape:connector-curvature="0"
-   id="path4"
-   d="m 115.17351,255.49051 h 26.059 l -10.794,-25.94901 c -0.256,-0.622 -0.364,-1.258 -0.566,-1.88 -3.922,-12.074 1.934,-25.359 13.844,-30.321 l 0.054,-0.024 -0.078,-0.032 c -6.063,-2.516 -10.793,-7.235 -13.331,-13.331 -2.509,-6.049 -2.524,-12.727 -0.024,-18.82999 l 12.082,-29.28801 c 3.836,-9.23299 12.773,-15.19599 22.773,-15.19599 3.23,0 6.39,0.63 9.387,1.864 l 0.062,0.024 -0.03,-0.07 c -0.986,-2.384 -1.452,-4.829 -1.67,-7.275 -5.451,-2.959 -11.601,-4.799 -18.24,-4.799 H 58.653508 c -21.229,-0.001 -38.443,17.213 -38.443,38.44299 v 19.202 59.633 163.641 l 48.576,-106.04199 c 8.285,-18.084 26.493,-29.77 46.387002,-29.77 z"
-   style="fill:#52638e;fill-opacity:1" /><path
-   inkscape:connector-curvature="0"
-   id="path6"
-   d="m 168.51751,137.2015 c -1.088,-0.45 -2.214,-0.66 -3.324,-0.66 -3.432,0 -6.693,2.034 -8.091,5.397 l -12.067,29.24901 c -0.878,2.144 -0.87,4.543 0.016,6.679 0.892,2.142 2.594,3.84399 4.728,4.728 l 16.61,6.841 c -0.49,5.187 -0.512,10.435 0,15.692 l -16.562,6.895 c -4.441,1.848 -6.553,6.965 -4.705,11.415 l 12.159,29.219 c 0.498,1.204 1.452,2.004 2.354,2.834 h 13.549 l 12.051,-5.016 c 1.538,1.84 3.378,3.324 5.055,5.016 h 45.641 l 3.13,-3.152 c -18.41,-3.464 -34.11,-15.81 -41.503,-33.576 -5.768,-13.875 -5.792,-29.164 -0.062,-43.055 5.723,-13.891 16.516,-24.715 30.392,-30.484 6.903,-2.88 14.178,-4.34 21.602,-4.34 22.797,0 43.187,13.611 51.946,34.668 1.452,3.479 2.532,7.051 3.26,10.669 l 39.151,-39.452 -2.128,-5.117 c -1.398,-3.354 -4.659,-5.381 -8.075,-5.381 -1.12,0 -2.245,0.218 -3.339,0.668 l -16.562,6.887 c -3.378,-4.068 -7.127,-7.757 -11.143,-11.065 l 6.849,-16.608 c 0.884,-2.144 0.878,-4.543 -0.008,-6.677 -0.894,-2.136 -2.586,-3.836 -4.745,-4.729 l -29.236,-12.052005 c -1.088,-0.45 -2.221,-0.66 -3.331,-0.66 -3.432,0 -6.685,2.034 -8.067,5.396 l -6.857,16.626005 c -2.624,-0.242 -5.264,-0.374 -7.911,-0.374 -2.586,0 -5.187,0.124 -7.797,0.38 l -6.887,-16.562005 c -1.398,-3.354 -4.643,-5.38 -8.051,-5.38 -1.118,0 -2.252,0.216 -3.347,0.674 l -29.212,12.144995 c -4.441,1.856 -6.553,6.96501 -4.705,11.415 l 6.895,16.562 c -4.084,3.37 -7.773,7.113 -11.081,11.135 z"
-   style="fill:#b3b3b3" /><path
-   inkscape:connector-curvature="0"
-   id="path8"
-   d="m 249.48751,156.7855 c -5.319,0 -10.529,1.048 -15.498,3.114 -9.947,4.138 -17.688,11.911 -21.796,21.873 -4.107,9.961 -4.093,20.934 0.046,30.887 6.895,16.578 24.675,26.199 42.077,24.305 l 35.12,-35.376 c 0.752,-6.709 -0.016,-13.526 -2.68,-19.933 -6.288,-15.103 -20.917,-24.87 -37.269,-24.87 z"
-   style="fill:#ffcc00" /><path
-   inkscape:connector-curvature="0"
-   id="path10"
-   d="m 479.47051,110.04851 -25.173,25.35099 c -4.427,4.457 -11.609,4.473 -16.066,0.048 -30.818,-30.56999 -30.291,-22.719 6.545,-59.834995 9.459,-9.521 -18.426,-26.261 -38.256,-12.113 -37.862,26.943 -34.624,31.283 -37.062,80.039005 l -111.12,111.952 h 84.666 l 69.122,-69.634 30.344,-1.74 c 15.934,-0.908 30.592,-9.06101 39.763,-22.14501 l 9.651,-13.758 c 13.87,-19.801 -2.816,-47.823 -12.414,-38.16499 z"
-   style="fill:#808080" /><path
-   inkscape:connector-curvature="0"
-   id="path12"
-   d="m 454.94951,279.3435 h -339.776 c -10.631,0 -20.274002,6.195 -24.699002,15.856 l -60.007,130.983 c -2.244,4.892 -1.84,10.591 1.064,15.118 2.912,4.526 7.921,7.267 13.309,7.267 H 409.60451 c 6.189,0 11.803,-3.603 14.372,-9.225 l 55.673,-121.518 c 3.852,-8.409 3.16,-18.2 -1.84,-25.989 -4.994,-7.787 -13.612,-12.492 -22.86,-12.492 z"
-   style="fill:#6a92d3;fill-opacity:1" />
-<g
-   id="g16"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g18"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g20"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g22"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g24"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g26"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g28"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g30"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g32"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g34"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g36"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g38"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g40"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g42"
-   transform="translate(0,35.032013)">
-</g>
-<g
-   id="g44"
-   transform="translate(0,35.032013)">
-</g>
-</svg>
\ No newline at end of file
diff --git a/img/apps/dksvpn.svg b/img/apps/dksvpn.svg
deleted file mode 100644 (file)
index eed30e7..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.2"
-   x="0px"
-   y="0px"
-   width="512"
-   height="512"
-   viewBox="0 0 178.688 218.4192"
-   id="svg4"
-   sodipodi:docname="dksvpn.svg"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
-  <metadata
-     id="metadata10">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <defs
-     id="defs8" />
-  <sodipodi:namedview
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1"
-     objecttolerance="10"
-     gridtolerance="10"
-     guidetolerance="10"
-     inkscape:pageopacity="0"
-     inkscape:pageshadow="2"
-     inkscape:window-width="1920"
-     inkscape:window-height="1017"
-     id="namedview6"
-     showgrid="false"
-     inkscape:zoom="1.18"
-     inkscape:cx="41.464614"
-     inkscape:cy="366.89909"
-     inkscape:window-x="-8"
-     inkscape:window-y="-8"
-     inkscape:window-maximized="1"
-     inkscape:current-layer="svg4" />
-  <path
-     d="m 89.343954,48.527656 c 0,0 36.122776,17.415653 59.347946,14.336079 0,0 16.03401,85.925715 -59.347946,109.617335 C 13.96155,148.78945 29.996236,62.863735 29.996236,62.863735 53.220611,65.943309 89.343954,48.527656 89.343954,48.527656 Z m 5.5e-4,-22.115507 c 0,0 -48.551174,23.423307 -79.775753,19.271011 -1.1e-6,0 -21.549682,115.49276 79.775753,147.33784 C 190.66948,161.17592 169.11857,45.68316 169.11857,45.68316 137.89444,49.835456 89.344504,26.412149 89.344504,26.412149 Z m -0.0079,-12.760949 7.139262,3.429503 c 10.519364,5.051218 42.644924,18.185031 64.718204,18.185031 1.94614,0 3.84153,-0.115568 5.65455,-0.350288 l 13.81709,-1.842727 2.05671,11.012378 c 0.93979,5.062147 21.88827,124.451613 -88.317931,159.096303 l -5.059987,1.5866 -5.061908,-1.5866 C -25.921679,168.53716 -4.9744559,49.147692 -4.0345493,44.085544 l 2.0576161,-11.012377 13.8159622,1.842727 c 1.814491,0.233824 3.701972,0.350288 5.655568,0.350288 22.072377,0 54.199632,-13.133813 64.716621,-18.185031 z"
-     id="path2"
-     inkscape:connector-curvature="0"
-     style="stroke-width:10.05348682" />
-  <path
-     style="fill:#52638e;fill-opacity:1;stroke:#000000;stroke-width:0.42660001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="M 89.343953,48.527657 V 172.48107 c 14.099487,-5.42288 70.193707,-21.40513 59.347947,-109.617337 0,0 -17.411,5.186297 -59.347947,-14.336076 z"
-     id="path817"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="cccc" />
-  <path
-     style="fill:#6a92d3;fill-opacity:1;stroke:#000000;stroke-width:0.42660001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="M 89.343953,48.527657 V 172.48107 c 0,0 -70.555005,-13.09005 -59.347717,-109.617337 0,0 17.410768,4.824771 59.347717,-14.336076 z"
-     id="path819"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="cccc" />
-</svg>
diff --git a/img/apps/hourtraxlogo.svg b/img/apps/hourtraxlogo.svg
deleted file mode 100644 (file)
index 36ca456..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="512"
-   height="512"
-   viewBox="0 0 135.46666 135.46667"
-   version="1.1"
-   id="svg2509"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
-   sodipodi:docname="hourtraxlogo.svg">
-  <defs
-     id="defs2503" />
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="0.98994949"
-     inkscape:cx="232.37199"
-     inkscape:cy="303.59057"
-     inkscape:document-units="mm"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     units="px"
-     showguides="true"
-     inkscape:guide-bbox="true"
-     inkscape:window-width="1920"
-     inkscape:window-height="1017"
-     inkscape:window-x="-8"
-     inkscape:window-y="-8"
-     inkscape:window-maximized="1">
-    <sodipodi:guide
-       position="82.853553,25.657874"
-       orientation="0,1"
-       id="guide3067"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="53.988442,90.871642"
-       orientation="0,1"
-       id="guide3071"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="34.210499,98.622454"
-       orientation="1,0"
-       id="guide3073"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="97.553376,130.6948"
-       orientation="1,0"
-       id="guide3075"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="62.006527,90.871645"
-       orientation="1,0"
-       id="guide3077"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="68.420998,97.286107"
-       orientation="1,4.1488867e-08"
-       id="guide3079"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="55.05752,78.176339"
-       orientation="0,1"
-       id="guide3089"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="8.1517202,78.176342"
-       orientation="1,0"
-       id="guide3093"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="127.62119,82.319017"
-       orientation="1,0"
-       id="guide3095"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="79.111776,7.6171817"
-       orientation="0,1"
-       id="guide3099"
-       inkscape:locked="false" />
-    <sodipodi:guide
-       position="103.70057,43.564934"
-       orientation="0,1"
-       id="guide3107"
-       inkscape:locked="false" />
-  </sodipodi:namedview>
-  <metadata
-     id="metadata2506">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Ebene 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(0,-161.53332)">
-    <g
-       id="g3112"
-       transform="matrix(0.96589978,0,0,0.96591912,2.3090708,7.8129107)">
-      <rect
-         y="161.53333"
-         x="2.7247839e-07"
-         height="135.46666"
-         width="135.46666"
-         id="rect3054"
-         style="fill:none;fill-opacity:1;stroke:#800080;stroke-width:4.23333311;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:7;stroke-dasharray:none;stroke-opacity:1" />
-      <path
-         sodipodi:nodetypes="cccccccccccccccccccccccccc"
-         style="fill:#005bff;fill-opacity:1;stroke-width:8.73611927"
-         inkscape:connector-curvature="0"
-         d="m 66.191845,233.60782 -49.863659,19.49133 0.0041,36.28365 H 117.7815 l -0.0668,-35.94775 z m -47.79975,-64.49509 v 36.67987 l 48.28682,19.77169 50.694185,-19.79864 v -36.65292 z m 109.157465,0 v 40.20119 l -0.11542,0.0559 0.18705,0.2303 -51.096733,19.9737 51.096733,20.06859 v 39.74039 c -10.17541,-10e-4 -109.326203,-10e-4 -119.4694697,0 V 249.04449 L 56.503861,229.51791 8.2022765,209.24047 v -40.12896 c 10.1898185,10e-4 119.3472835,10e-4 119.3472835,10e-4 z"
-         id="path3056" />
-      <path
-         inkscape:connector-curvature="0"
-         id="path3091"
-         d="m 20.523205,185.03109 v 20.3193 l 41.237699,16.35877 v 67.67364 h 9.516397 v -67.67364 l 43.220289,-16.35877 v -20.3193 H 20.523205"
-         style="fill:#ffd42a;fill-opacity:1;stroke:none;stroke-width:0.36582389px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-  </g>
-</svg>
diff --git a/img/apps/invoicejournallogo.svg b/img/apps/invoicejournallogo.svg
deleted file mode 100644 (file)
index 4806135..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="512"
-   height="512"
-   viewBox="0 0 135.46666 135.46667"
-   version="1.1"
-   id="svg8"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
-   sodipodi:docname="invoicejournal.svg"
-   inkscape:export-filename="C:\Users\ksaff\Pictures\invoicejornal\invoicejournal.png"
-   inkscape:export-xdpi="96.300003"
-   inkscape:export-ydpi="96.300003">
-  <defs
-     id="defs2" />
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="0.49497475"
-     inkscape:cx="548.93182"
-     inkscape:cy="560.36692"
-     inkscape:document-units="mm"
-     inkscape:current-layer="text12"
-     showgrid="false"
-     showguides="true"
-     inkscape:guide-bbox="true"
-     units="px"
-     inkscape:window-width="1920"
-     inkscape:window-height="1017"
-     inkscape:window-x="-8"
-     inkscape:window-y="-8"
-     inkscape:window-maximized="1" />
-  <metadata
-     id="metadata5">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Ebene 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(0,-161.53332)">
-    <rect
-       id="rect30"
-       width="134.25108"
-       height="133.71024"
-       x="1.3127096"
-       y="163.01714"
-       style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79166728;stroke-opacity:1"
-       ry="6.8340788" />
-    <g
-       aria-label="IJ"
-       style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
-       id="text12">
-      <path
-         d="m 60.591223,285.49814 v 3.20657 H 15.000112 v -3.20657 h 3.766561 q 6.591488,0 9.57335,-4.24653 1.883284,-2.77325 1.883284,-13.34625 v -75.9177 q 0,-8.92641 -1.020112,-11.78631 -0.784701,-2.16659 -3.217274,-3.72655 -3.452682,-2.07996 -7.219248,-2.07996 h -3.766561 v -3.20656 h 45.591111 v 3.20656 h -3.845032 q -6.513018,0 -9.49488,4.24655 -1.961753,2.77326 -1.961753,13.34627 v 75.9177 q 0,8.9264 1.020112,11.78631 0.784703,2.16659 3.295743,3.72655 3.374213,2.07992 7.140778,2.07992 z"
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:56.44444275px;font-family:'Times New Roman';-inkscape-font-specification:'Times New Roman, ';stroke-width:0.79166728"
-         id="path4609"
-         inkscape:connector-curvature="0" />
-      <path
-         d="m 80.679565,174.39484 v -3.20656 h 45.591115 v 3.20656 h -3.84504 q -6.51302,0 -9.49488,4.24655 -1.88328,2.77326 -1.88328,13.34627 v 57.45824 q 0,13.2596 -2.66798,21.4927 -2.58951,8.23308 -9.024059,14.38621 -6.434545,6.0665 -15.537076,6.0665 -7.376183,0 -11.613571,-3.98654 -4.237383,-4.07322 -4.237383,-9.27306 0,-4.24655 1.961752,-6.41313 2.589516,-2.68661 6.042196,-2.68661 2.511044,0 4.472797,1.81996 2.040219,1.81996 5.100552,9.70639 1.804813,4.67983 4.629735,4.67983 2.118693,0 3.923503,-2.85991 1.883284,-2.8599 1.883284,-10.13968 v -80.2509 q 0,-8.92641 -1.020112,-11.78631 -0.784701,-2.16659 -3.295743,-3.72655 -3.374213,-2.07996 -7.140778,-2.07996 z"
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:56.44444275px;font-family:'Times New Roman';-inkscape-font-specification:'Times New Roman, ';stroke-width:0.79166728"
-         id="path4611"
-         inkscape:connector-curvature="0" />
-    </g>
-    <flowRoot
-       xml:space="preserve"
-       id="flowRoot14"
-       style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
-       transform="scale(0.26458333)"><flowRegion
-         id="flowRegion16"><rect
-           id="rect18"
-           width="60"
-           height="97.14286"
-           x="171.42857"
-           y="151.09111" /></flowRegion><flowPara
-         id="flowPara20"></flowPara></flowRoot>    <flowRoot
-       xml:space="preserve"
-       id="flowRoot22"
-       style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
-       transform="scale(0.26458333)"><flowRegion
-         id="flowRegion24"><rect
-           id="rect26"
-           width="11.428572"
-           height="42.5"
-           x="262.85715"
-           y="0.019683262" /></flowRegion><flowPara
-         id="flowPara28"></flowPara></flowRoot>    <rect
-       style="fill:#e6e000;fill-opacity:0;stroke:none;stroke-width:0.79291403;stroke-linecap:square;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect4543"
-       width="55.153255"
-       height="11.885354"
-       x="13.419503"
-       y="213.23273"
-       ry="0" />
-    <rect
-       style="fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:0.78807724;stroke-linecap:square;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect4545"
-       width="45.736843"
-       height="12.776742"
-       x="14.764714"
-       y="204.31873" />
-    <rect
-       style="fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:0.78807753;stroke-linecap:square;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect4545-7"
-       width="45.736843"
-       height="12.776748"
-       x="14.764714"
-       y="229.57507" />
-    <rect
-       style="fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:0.78807724;stroke-linecap:square;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect4545-9"
-       width="45.736843"
-       height="12.776742"
-       x="80.410553"
-       y="216.79836" />
-    <rect
-       style="fill:#999999;fill-opacity:1;stroke:none;stroke-width:0.78732234;stroke-linecap:square;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect4545-9-3"
-       width="15.335293"
-       height="38.0331"
-       x="95.745811"
-       y="204.31873" />
-  </g>
-</svg>
diff --git a/img/apps/qrcodegenerateorlogo.svg b/img/apps/qrcodegenerateorlogo.svg
deleted file mode 100644 (file)
index 173e819..0000000
+++ /dev/null
@@ -1,2322 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.1"
-   width="512"
-   height="512"
-   viewBox="0 0 512 512"
-   id="svg653"
-   sodipodi:docname="qrcodegenerateorlogo.svg"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
-  <metadata
-     id="metadata657">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <sodipodi:namedview
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1"
-     objecttolerance="10"
-     gridtolerance="10"
-     guidetolerance="10"
-     inkscape:pageopacity="0"
-     inkscape:pageshadow="2"
-     inkscape:window-width="1920"
-     inkscape:window-height="1017"
-     id="namedview655"
-     showgrid="false"
-     inkscape:zoom="0.89393939"
-     inkscape:cx="132"
-     inkscape:cy="132"
-     inkscape:window-x="-8"
-     inkscape:window-y="-8"
-     inkscape:window-maximized="1"
-     inkscape:current-layer="svg653" />
-  <desc
-     id="desc2" />
-  <rect
-     width="264"
-     height="264"
-     cx="0"
-     cy="0"
-     id="rect4"
-     x="0"
-     y="248"
-     style="fill:#ffffff" />
-  <defs
-     id="defs7">
-    <rect
-       id="p"
-       width="8"
-       height="8"
-       x="0"
-       y="0" />
-  </defs>
-  <g
-     id="g651"
-     style="fill:#000000"
-     transform="matrix(2.24,0,0,2.24,-39.68,-39.68)">
-    <use
-       x="32"
-       y="32"
-       xlink:href="#p"
-       id="use9"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="40"
-       xlink:href="#p"
-       id="use11"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="48"
-       xlink:href="#p"
-       id="use13"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="56"
-       xlink:href="#p"
-       id="use15"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="64"
-       xlink:href="#p"
-       id="use17"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="72"
-       xlink:href="#p"
-       id="use19"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="80"
-       xlink:href="#p"
-       id="use21"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="96"
-       xlink:href="#p"
-       id="use23"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="120"
-       xlink:href="#p"
-       id="use25"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="128"
-       xlink:href="#p"
-       id="use27"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="136"
-       xlink:href="#p"
-       id="use29"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="144"
-       xlink:href="#p"
-       id="use31"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="160"
-       xlink:href="#p"
-       id="use33"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="176"
-       xlink:href="#p"
-       id="use35"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="184"
-       xlink:href="#p"
-       id="use37"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="192"
-       xlink:href="#p"
-       id="use39"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="200"
-       xlink:href="#p"
-       id="use41"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="208"
-       xlink:href="#p"
-       id="use43"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="216"
-       xlink:href="#p"
-       id="use45"
-       width="100%"
-       height="100%" />
-    <use
-       x="32"
-       y="224"
-       xlink:href="#p"
-       id="use47"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="32"
-       xlink:href="#p"
-       id="use49"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="80"
-       xlink:href="#p"
-       id="use51"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="96"
-       xlink:href="#p"
-       id="use53"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="112"
-       xlink:href="#p"
-       id="use55"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="120"
-       xlink:href="#p"
-       id="use57"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="136"
-       xlink:href="#p"
-       id="use59"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="152"
-       xlink:href="#p"
-       id="use61"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="160"
-       xlink:href="#p"
-       id="use63"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="176"
-       xlink:href="#p"
-       id="use65"
-       width="100%"
-       height="100%" />
-    <use
-       x="40"
-       y="224"
-       xlink:href="#p"
-       id="use67"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="32"
-       xlink:href="#p"
-       id="use69"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="48"
-       xlink:href="#p"
-       id="use71"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="56"
-       xlink:href="#p"
-       id="use73"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="64"
-       xlink:href="#p"
-       id="use75"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="80"
-       xlink:href="#p"
-       id="use77"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="96"
-       xlink:href="#p"
-       id="use79"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="104"
-       xlink:href="#p"
-       id="use81"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="112"
-       xlink:href="#p"
-       id="use83"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="120"
-       xlink:href="#p"
-       id="use85"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="128"
-       xlink:href="#p"
-       id="use87"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="136"
-       xlink:href="#p"
-       id="use89"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="152"
-       xlink:href="#p"
-       id="use91"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="160"
-       xlink:href="#p"
-       id="use93"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="176"
-       xlink:href="#p"
-       id="use95"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="192"
-       xlink:href="#p"
-       id="use97"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="200"
-       xlink:href="#p"
-       id="use99"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="208"
-       xlink:href="#p"
-       id="use101"
-       width="100%"
-       height="100%" />
-    <use
-       x="48"
-       y="224"
-       xlink:href="#p"
-       id="use103"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="32"
-       xlink:href="#p"
-       id="use105"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="48"
-       xlink:href="#p"
-       id="use107"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="56"
-       xlink:href="#p"
-       id="use109"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="64"
-       xlink:href="#p"
-       id="use111"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="80"
-       xlink:href="#p"
-       id="use113"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="96"
-       xlink:href="#p"
-       id="use115"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="128"
-       xlink:href="#p"
-       id="use117"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="152"
-       xlink:href="#p"
-       id="use119"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="160"
-       xlink:href="#p"
-       id="use121"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="176"
-       xlink:href="#p"
-       id="use123"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="192"
-       xlink:href="#p"
-       id="use125"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="200"
-       xlink:href="#p"
-       id="use127"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="208"
-       xlink:href="#p"
-       id="use129"
-       width="100%"
-       height="100%" />
-    <use
-       x="56"
-       y="224"
-       xlink:href="#p"
-       id="use131"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="32"
-       xlink:href="#p"
-       id="use133"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="48"
-       xlink:href="#p"
-       id="use135"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="56"
-       xlink:href="#p"
-       id="use137"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="64"
-       xlink:href="#p"
-       id="use139"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="80"
-       xlink:href="#p"
-       id="use141"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="104"
-       xlink:href="#p"
-       id="use143"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="112"
-       xlink:href="#p"
-       id="use145"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="120"
-       xlink:href="#p"
-       id="use147"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="128"
-       xlink:href="#p"
-       id="use149"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="136"
-       xlink:href="#p"
-       id="use151"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="144"
-       xlink:href="#p"
-       id="use153"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="176"
-       xlink:href="#p"
-       id="use155"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="192"
-       xlink:href="#p"
-       id="use157"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="200"
-       xlink:href="#p"
-       id="use159"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="208"
-       xlink:href="#p"
-       id="use161"
-       width="100%"
-       height="100%" />
-    <use
-       x="64"
-       y="224"
-       xlink:href="#p"
-       id="use163"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="32"
-       xlink:href="#p"
-       id="use165"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="80"
-       xlink:href="#p"
-       id="use167"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="128"
-       xlink:href="#p"
-       id="use169"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="152"
-       xlink:href="#p"
-       id="use171"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="160"
-       xlink:href="#p"
-       id="use173"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="176"
-       xlink:href="#p"
-       id="use175"
-       width="100%"
-       height="100%" />
-    <use
-       x="72"
-       y="224"
-       xlink:href="#p"
-       id="use177"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="32"
-       xlink:href="#p"
-       id="use179"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="40"
-       xlink:href="#p"
-       id="use181"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="48"
-       xlink:href="#p"
-       id="use183"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="56"
-       xlink:href="#p"
-       id="use185"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="64"
-       xlink:href="#p"
-       id="use187"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="72"
-       xlink:href="#p"
-       id="use189"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="80"
-       xlink:href="#p"
-       id="use191"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="96"
-       xlink:href="#p"
-       id="use193"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="112"
-       xlink:href="#p"
-       id="use195"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="128"
-       xlink:href="#p"
-       id="use197"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="144"
-       xlink:href="#p"
-       id="use199"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="160"
-       xlink:href="#p"
-       id="use201"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="176"
-       xlink:href="#p"
-       id="use203"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="184"
-       xlink:href="#p"
-       id="use205"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="192"
-       xlink:href="#p"
-       id="use207"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="200"
-       xlink:href="#p"
-       id="use209"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="208"
-       xlink:href="#p"
-       id="use211"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="216"
-       xlink:href="#p"
-       id="use213"
-       width="100%"
-       height="100%" />
-    <use
-       x="80"
-       y="224"
-       xlink:href="#p"
-       id="use215"
-       width="100%"
-       height="100%" />
-    <use
-       x="88"
-       y="120"
-       xlink:href="#p"
-       id="use217"
-       width="100%"
-       height="100%" />
-    <use
-       x="88"
-       y="144"
-       xlink:href="#p"
-       id="use219"
-       width="100%"
-       height="100%" />
-    <use
-       x="88"
-       y="152"
-       xlink:href="#p"
-       id="use221"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="32"
-       xlink:href="#p"
-       id="use223"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="48"
-       xlink:href="#p"
-       id="use225"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="56"
-       xlink:href="#p"
-       id="use227"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="64"
-       xlink:href="#p"
-       id="use229"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="80"
-       xlink:href="#p"
-       id="use231"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="96"
-       xlink:href="#p"
-       id="use233"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="112"
-       xlink:href="#p"
-       id="use235"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="120"
-       xlink:href="#p"
-       id="use237"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="136"
-       xlink:href="#p"
-       id="use239"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="144"
-       xlink:href="#p"
-       id="use241"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="152"
-       xlink:href="#p"
-       id="use243"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="160"
-       xlink:href="#p"
-       id="use245"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="168"
-       xlink:href="#p"
-       id="use247"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="200"
-       xlink:href="#p"
-       id="use249"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="208"
-       xlink:href="#p"
-       id="use251"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="216"
-       xlink:href="#p"
-       id="use253"
-       width="100%"
-       height="100%" />
-    <use
-       x="96"
-       y="224"
-       xlink:href="#p"
-       id="use255"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="32"
-       xlink:href="#p"
-       id="use257"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="56"
-       xlink:href="#p"
-       id="use259"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="64"
-       xlink:href="#p"
-       id="use261"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="72"
-       xlink:href="#p"
-       id="use263"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="88"
-       xlink:href="#p"
-       id="use265"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="104"
-       xlink:href="#p"
-       id="use267"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="128"
-       xlink:href="#p"
-       id="use269"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="144"
-       xlink:href="#p"
-       id="use271"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="152"
-       xlink:href="#p"
-       id="use273"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="160"
-       xlink:href="#p"
-       id="use275"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="168"
-       xlink:href="#p"
-       id="use277"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="192"
-       xlink:href="#p"
-       id="use279"
-       width="100%"
-       height="100%" />
-    <use
-       x="104"
-       y="216"
-       xlink:href="#p"
-       id="use281"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="64"
-       xlink:href="#p"
-       id="use283"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="80"
-       xlink:href="#p"
-       id="use285"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="136"
-       xlink:href="#p"
-       id="use287"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="160"
-       xlink:href="#p"
-       id="use289"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="176"
-       xlink:href="#p"
-       id="use291"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="192"
-       xlink:href="#p"
-       id="use293"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="200"
-       xlink:href="#p"
-       id="use295"
-       width="100%"
-       height="100%" />
-    <use
-       x="112"
-       y="224"
-       xlink:href="#p"
-       id="use297"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="48"
-       xlink:href="#p"
-       id="use299"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="56"
-       xlink:href="#p"
-       id="use301"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="64"
-       xlink:href="#p"
-       id="use303"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="88"
-       xlink:href="#p"
-       id="use305"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="120"
-       xlink:href="#p"
-       id="use307"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="128"
-       xlink:href="#p"
-       id="use309"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="136"
-       xlink:href="#p"
-       id="use311"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="160"
-       xlink:href="#p"
-       id="use313"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="176"
-       xlink:href="#p"
-       id="use315"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="192"
-       xlink:href="#p"
-       id="use317"
-       width="100%"
-       height="100%" />
-    <use
-       x="120"
-       y="208"
-       xlink:href="#p"
-       id="use319"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="48"
-       xlink:href="#p"
-       id="use321"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="72"
-       xlink:href="#p"
-       id="use323"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="80"
-       xlink:href="#p"
-       id="use325"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="120"
-       xlink:href="#p"
-       id="use327"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="144"
-       xlink:href="#p"
-       id="use329"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="152"
-       xlink:href="#p"
-       id="use331"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="168"
-       xlink:href="#p"
-       id="use333"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="176"
-       xlink:href="#p"
-       id="use335"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="184"
-       xlink:href="#p"
-       id="use337"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="192"
-       xlink:href="#p"
-       id="use339"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="200"
-       xlink:href="#p"
-       id="use341"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="208"
-       xlink:href="#p"
-       id="use343"
-       width="100%"
-       height="100%" />
-    <use
-       x="128"
-       y="224"
-       xlink:href="#p"
-       id="use345"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="48"
-       xlink:href="#p"
-       id="use347"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="56"
-       xlink:href="#p"
-       id="use349"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="64"
-       xlink:href="#p"
-       id="use351"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="112"
-       xlink:href="#p"
-       id="use353"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="120"
-       xlink:href="#p"
-       id="use355"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="136"
-       xlink:href="#p"
-       id="use357"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="152"
-       xlink:href="#p"
-       id="use359"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="168"
-       xlink:href="#p"
-       id="use361"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="192"
-       xlink:href="#p"
-       id="use363"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="200"
-       xlink:href="#p"
-       id="use365"
-       width="100%"
-       height="100%" />
-    <use
-       x="136"
-       y="208"
-       xlink:href="#p"
-       id="use367"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="32"
-       xlink:href="#p"
-       id="use369"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="56"
-       xlink:href="#p"
-       id="use371"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="64"
-       xlink:href="#p"
-       id="use373"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="72"
-       xlink:href="#p"
-       id="use375"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="80"
-       xlink:href="#p"
-       id="use377"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="96"
-       xlink:href="#p"
-       id="use379"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="104"
-       xlink:href="#p"
-       id="use381"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="112"
-       xlink:href="#p"
-       id="use383"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="136"
-       xlink:href="#p"
-       id="use385"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="144"
-       xlink:href="#p"
-       id="use387"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="200"
-       xlink:href="#p"
-       id="use389"
-       width="100%"
-       height="100%" />
-    <use
-       x="144"
-       y="224"
-       xlink:href="#p"
-       id="use391"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="56"
-       xlink:href="#p"
-       id="use393"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="64"
-       xlink:href="#p"
-       id="use395"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="88"
-       xlink:href="#p"
-       id="use397"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="128"
-       xlink:href="#p"
-       id="use399"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="136"
-       xlink:href="#p"
-       id="use401"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="160"
-       xlink:href="#p"
-       id="use403"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="184"
-       xlink:href="#p"
-       id="use405"
-       width="100%"
-       height="100%" />
-    <use
-       x="152"
-       y="208"
-       xlink:href="#p"
-       id="use407"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="32"
-       xlink:href="#p"
-       id="use409"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="40"
-       xlink:href="#p"
-       id="use411"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="48"
-       xlink:href="#p"
-       id="use413"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="64"
-       xlink:href="#p"
-       id="use415"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="72"
-       xlink:href="#p"
-       id="use417"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="80"
-       xlink:href="#p"
-       id="use419"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="104"
-       xlink:href="#p"
-       id="use421"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="112"
-       xlink:href="#p"
-       id="use423"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="136"
-       xlink:href="#p"
-       id="use425"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="144"
-       xlink:href="#p"
-       id="use427"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="152"
-       xlink:href="#p"
-       id="use429"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="160"
-       xlink:href="#p"
-       id="use431"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="168"
-       xlink:href="#p"
-       id="use433"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="176"
-       xlink:href="#p"
-       id="use435"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="184"
-       xlink:href="#p"
-       id="use437"
-       width="100%"
-       height="100%" />
-    <use
-       x="160"
-       y="192"
-       xlink:href="#p"
-       id="use439"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="96"
-       xlink:href="#p"
-       id="use441"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="120"
-       xlink:href="#p"
-       id="use443"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="136"
-       xlink:href="#p"
-       id="use445"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="160"
-       xlink:href="#p"
-       id="use447"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="192"
-       xlink:href="#p"
-       id="use449"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="200"
-       xlink:href="#p"
-       id="use451"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="208"
-       xlink:href="#p"
-       id="use453"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="216"
-       xlink:href="#p"
-       id="use455"
-       width="100%"
-       height="100%" />
-    <use
-       x="168"
-       y="224"
-       xlink:href="#p"
-       id="use457"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="32"
-       xlink:href="#p"
-       id="use459"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="40"
-       xlink:href="#p"
-       id="use461"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="48"
-       xlink:href="#p"
-       id="use463"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="56"
-       xlink:href="#p"
-       id="use465"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="64"
-       xlink:href="#p"
-       id="use467"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="72"
-       xlink:href="#p"
-       id="use469"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="80"
-       xlink:href="#p"
-       id="use471"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="128"
-       xlink:href="#p"
-       id="use473"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="136"
-       xlink:href="#p"
-       id="use475"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="152"
-       xlink:href="#p"
-       id="use477"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="160"
-       xlink:href="#p"
-       id="use479"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="176"
-       xlink:href="#p"
-       id="use481"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="192"
-       xlink:href="#p"
-       id="use483"
-       width="100%"
-       height="100%" />
-    <use
-       x="176"
-       y="200"
-       xlink:href="#p"
-       id="use485"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="32"
-       xlink:href="#p"
-       id="use487"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="80"
-       xlink:href="#p"
-       id="use489"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="104"
-       xlink:href="#p"
-       id="use491"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="136"
-       xlink:href="#p"
-       id="use493"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="152"
-       xlink:href="#p"
-       id="use495"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="160"
-       xlink:href="#p"
-       id="use497"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="192"
-       xlink:href="#p"
-       id="use499"
-       width="100%"
-       height="100%" />
-    <use
-       x="184"
-       y="208"
-       xlink:href="#p"
-       id="use501"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="32"
-       xlink:href="#p"
-       id="use503"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="48"
-       xlink:href="#p"
-       id="use505"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="56"
-       xlink:href="#p"
-       id="use507"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="64"
-       xlink:href="#p"
-       id="use509"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="80"
-       xlink:href="#p"
-       id="use511"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="96"
-       xlink:href="#p"
-       id="use513"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="112"
-       xlink:href="#p"
-       id="use515"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="128"
-       xlink:href="#p"
-       id="use517"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="136"
-       xlink:href="#p"
-       id="use519"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="144"
-       xlink:href="#p"
-       id="use521"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="152"
-       xlink:href="#p"
-       id="use523"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="160"
-       xlink:href="#p"
-       id="use525"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="168"
-       xlink:href="#p"
-       id="use527"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="176"
-       xlink:href="#p"
-       id="use529"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="184"
-       xlink:href="#p"
-       id="use531"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="192"
-       xlink:href="#p"
-       id="use533"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="200"
-       xlink:href="#p"
-       id="use535"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="208"
-       xlink:href="#p"
-       id="use537"
-       width="100%"
-       height="100%" />
-    <use
-       x="192"
-       y="216"
-       xlink:href="#p"
-       id="use539"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="32"
-       xlink:href="#p"
-       id="use541"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="48"
-       xlink:href="#p"
-       id="use543"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="56"
-       xlink:href="#p"
-       id="use545"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="64"
-       xlink:href="#p"
-       id="use547"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="80"
-       xlink:href="#p"
-       id="use549"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="96"
-       xlink:href="#p"
-       id="use551"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="104"
-       xlink:href="#p"
-       id="use553"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="112"
-       xlink:href="#p"
-       id="use555"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="128"
-       xlink:href="#p"
-       id="use557"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="160"
-       xlink:href="#p"
-       id="use559"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="184"
-       xlink:href="#p"
-       id="use561"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="192"
-       xlink:href="#p"
-       id="use563"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="200"
-       xlink:href="#p"
-       id="use565"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="216"
-       xlink:href="#p"
-       id="use567"
-       width="100%"
-       height="100%" />
-    <use
-       x="200"
-       y="224"
-       xlink:href="#p"
-       id="use569"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="32"
-       xlink:href="#p"
-       id="use571"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="48"
-       xlink:href="#p"
-       id="use573"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="56"
-       xlink:href="#p"
-       id="use575"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="64"
-       xlink:href="#p"
-       id="use577"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="80"
-       xlink:href="#p"
-       id="use579"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="96"
-       xlink:href="#p"
-       id="use581"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="112"
-       xlink:href="#p"
-       id="use583"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="120"
-       xlink:href="#p"
-       id="use585"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="128"
-       xlink:href="#p"
-       id="use587"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="144"
-       xlink:href="#p"
-       id="use589"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="168"
-       xlink:href="#p"
-       id="use591"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="192"
-       xlink:href="#p"
-       id="use593"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="208"
-       xlink:href="#p"
-       id="use595"
-       width="100%"
-       height="100%" />
-    <use
-       x="208"
-       y="216"
-       xlink:href="#p"
-       id="use597"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="32"
-       xlink:href="#p"
-       id="use599"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="80"
-       xlink:href="#p"
-       id="use601"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="104"
-       xlink:href="#p"
-       id="use603"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="120"
-       xlink:href="#p"
-       id="use605"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="136"
-       xlink:href="#p"
-       id="use607"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="144"
-       xlink:href="#p"
-       id="use609"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="176"
-       xlink:href="#p"
-       id="use611"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="184"
-       xlink:href="#p"
-       id="use613"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="192"
-       xlink:href="#p"
-       id="use615"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="200"
-       xlink:href="#p"
-       id="use617"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="208"
-       xlink:href="#p"
-       id="use619"
-       width="100%"
-       height="100%" />
-    <use
-       x="216"
-       y="224"
-       xlink:href="#p"
-       id="use621"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="32"
-       xlink:href="#p"
-       id="use623"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="40"
-       xlink:href="#p"
-       id="use625"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="48"
-       xlink:href="#p"
-       id="use627"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="56"
-       xlink:href="#p"
-       id="use629"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="64"
-       xlink:href="#p"
-       id="use631"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="72"
-       xlink:href="#p"
-       id="use633"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="80"
-       xlink:href="#p"
-       id="use635"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="96"
-       xlink:href="#p"
-       id="use637"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="104"
-       xlink:href="#p"
-       id="use639"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="120"
-       xlink:href="#p"
-       id="use641"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="152"
-       xlink:href="#p"
-       id="use643"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="176"
-       xlink:href="#p"
-       id="use645"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="200"
-       xlink:href="#p"
-       id="use647"
-       width="100%"
-       height="100%" />
-    <use
-       x="224"
-       y="224"
-       xlink:href="#p"
-       id="use649"
-       width="100%"
-       height="100%" />
-  </g>
-</svg>
diff --git a/img/apps/websiteeditorlogo.svg b/img/apps/websiteeditorlogo.svg
deleted file mode 100644 (file)
index 7cdd819..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.2"
-   x="0px"
-   y="0px"
-   width="512"
-   height="512"
-   viewBox="0 0 614.6048 657.3056"
-   id="svg4"
-   sodipodi:docname="Websiteeditorlogo.svg"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
-  <metadata
-     id="metadata10">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <defs
-     id="defs8" />
-  <sodipodi:namedview
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1"
-     objecttolerance="10"
-     gridtolerance="10"
-     guidetolerance="10"
-     inkscape:pageopacity="0"
-     inkscape:pageshadow="2"
-     inkscape:window-width="1920"
-     inkscape:window-height="1017"
-     id="namedview6"
-     showgrid="false"
-     inkscape:zoom="1.18"
-     inkscape:cx="159.35835"
-     inkscape:cy="273.29322"
-     inkscape:window-x="-8"
-     inkscape:window-y="-8"
-     inkscape:window-maximized="1"
-     inkscape:current-layer="svg4" />
-  <path
-     d="m 168.75696,392.95148 c 4.78675,2.8606 9.87474,4.64643 15.19944,5.48513 3.43466,20.15451 10.3386,50.44134 24.86153,89.238 -27.17887,-7.07319 -56.03802,-20.28021 -85.62278,-42.33273 -0.46292,-0.33778 -0.98931,-0.73698 -1.42815,-1.11219 14.78661,-17.00506 30.58755,-34.22325 46.98996,-51.27821 z M 21.463557,380.20786 C 222.89421,639.81304 422.90903,460.47417 422.90903,460.47417 L 389.13597,392.87759 543.04726,452.91436 501.14277,616.224 c 0,0 -23.12106,-44.61977 -32.2053,-62.9511 C 369.11099,634.70321 105.9509,657.04467 21.463557,380.20786 Z M 388.48309,266.94506 c 2.79387,4.6734 6.50395,8.90921 11.10234,12.3332 15.45049,11.49546 36.04024,10.7958 50.74006,-0.0998 50.18765,40.79581 93.24482,88.42904 127.83089,141.85841 l 0.66407,1.06133 c -1.71595,4.77224 -3.57053,9.52145 -5.4761,14.24475 l -20.60133,-8.0091 -153.95928,-60.08917 -64.1108,-25.00322 30.68926,61.38761 24.09774,48.19451 c -26.6539,18.21858 -84.39837,49.29432 -156.31525,39.55984 l -0.25216,-0.71203 c -11.40262,-31.57569 -20.01135,-63.90083 -25.95134,-96.10123 6.70318,-2.8107 12.83178,-7.25763 17.50621,-13.48185 8.92247,-11.93304 10.51333,-27.02704 5.7013,-40.03485 48.98464,-33.12353 102.16826,-58.36474 158.33438,-75.10831 z m 177.76764,-29.39757 c 4.34852,-0.048 8.69546,-0.048 13.03907,0.002 l 0.52644,0.01 c 4.86306,14.54357 8.88494,29.50063 11.4286,45.13134 6.17868,38.49572 4.28563,76.41674 -4.29716,112.10176 -34.2993,-49.96662 -75.62808,-94.6478 -122.89585,-133.03134 2.10574,-4.84776 3.23369,-9.97007 3.39538,-15.08085 l 0.051,-0.01 c 2.56867,-0.52395 5.18738,-1.03638 7.80611,-1.47387 29.99,-4.75573 60.50685,-7.3294 90.94642,-7.6478 z M 239.38534,167.67338 c 51.32911,15.30674 100.10201,37.07358 145.35341,64.8994 -1.29063,3.99869 -2.00474,8.09719 -2.04228,12.20816 -58.54828,18.31608 -114.05048,45.09304 -165.00327,79.77912 -0.66503,-0.58728 -1.17802,-1.21199 -1.81802,-1.69947 -5.46371,-4.07259 -11.62901,-6.4601 -17.90788,-7.57133 -2.14237,-41.96951 0.16361,-84.12903 6.80532,-125.44889 12.0053,-0.80031 23.60929,-6.41019 31.36645,-16.76919 1.2781,-1.73689 2.25689,-3.55919 3.24627,-5.3978 z m -151.293481,-25.40089 1.240569,0.048 4.436238,0.17369 c 20.301234,0.95098 42.030834,3.3001 66.091614,7.12309 0.56398,12.25701 6.21635,24.16568 16.83006,32.06029 1.98068,1.48836 4.1221,2.66292 6.31547,3.76264 -7.15472,44.19341 -9.37215,88.3254 -6.67831,131.38177 -7.65711,2.73681 -14.67516,7.62209 -19.91272,14.61947 -10.10168,13.49395 -10.78981,30.97497 -3.45993,44.9564 -14.29789,14.54366 -30.43883,32.4354 -48.23313,53.63972 C 29.881876,359.67105 23.026633,329.13366 19.7312,320.23625 21.535757,253.55168 46.423678,191.1037 88.091859,142.27249 Z M 218.16303,55.648474 c -6.1898,15.642319 -11.91671,32.372356 -17.41747,49.953376 -12.46718,0.3992 -24.64758,6.07232 -32.67931,16.80402 -1.26451,1.67443 -2.16815,3.49961 -3.16996,5.26135 -18.63292,-2.83651 -38.156,-4.81129 -57.97943,-5.37362 30.88847,-29.849734 68.59313,-52.877502 111.24617,-66.645126 z M 304.89974,41.09157 c 116.4606,-0.970549 221.43948,68.99771 266.5293,174.43767 -34.16014,0.0672 -67.63216,2.71185 -99.58741,7.82168 -3.22028,0.51148 -6.41648,1.13618 -9.63672,1.73594 -2.81894,-5.15973 -6.7042,-9.89541 -11.79253,-13.68107 -16.55364,-12.33272 -39.17341,-10.74648 -53.92248,2.64852 -47.84577,-29.51156 -99.31313,-52.51515 -152.14519,-68.23433 -0.56398,-12.20711 -6.26632,-24.13976 -16.81733,-32.01058 -1.50427,-1.11277 -3.13365,-1.9246 -4.68698,-2.81253 6.84281,-22.902821 13.98587,-43.219402 21.74204,-61.373693 l 0.58996,-1.425597 c 5.41168,-1.248549 10.80123,-2.58519 16.39098,-3.473117 14.55885,-2.324656 29.03418,-3.513709 43.33636,-3.632893 z"
-     id="path2"
-     inkscape:connector-curvature="0"
-     style="stroke-width:9.61014271" />
-  <path
-     style="fill:#ff0000;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 106.91686,122.2936 57.97943,5.37362 35.84927,-22.06537 17.41747,-49.953376 c 0,0 -51.40803,11.158855 -111.24617,66.645126 z"
-     id="path817"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccc" />
-  <path
-     style="fill:#008000;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 222.8404,110.99687 21.50431,34.8231 152.14519,68.23435 65.71501,11.03254 109.22413,-9.55762 c 0,0 -83.6402,-211.9382701 -326.25664,-167.33166 z"
-     id="path819"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccccc" />
-  <path
-     style="fill:#0000ff;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 159.86028,149.61727 23.14553,35.82293 -6.6783,131.38177 -23.37266,59.57587 -48.23313,53.63971 c 0,0 -62.143232,-52.1391 -84.99052,-109.8013 -4.53193,-23.32536 27.017947,-146.41274 68.360659,-177.96376 z"
-     id="path821"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="cccccccc" />
-  <path
-     style="fill:#ffcc00;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 204.77262,189.84037 34.61272,-22.16699 c 0,0 105.09866,31.17245 145.35341,64.8994 l -2.04228,12.20816 -165.00327,79.77912 -19.7259,-9.2708 c -2.17593,-94.65305 6.80532,-125.44889 6.80532,-125.44889 z"
-     id="path823"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccccc" />
-  <path
-     style="fill:#800080;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 168.75696,392.95147 15.19944,5.48514 24.86153,89.23801 c -40.25475,-6.5278 -87.05094,-43.44493 -87.05094,-43.44493 z"
-     id="path825"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccc" />
-  <path
-     style="fill:#ff7f2a;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 206.94119,395.57016 23.20751,-53.5167 C 348.737,264.80787 388.4831,266.94507 388.4831,266.94507 l 61.84239,12.23339 c 0,0 57.77716,37.38703 128.49496,142.91974 l -5.4761,14.24475 -238.67141,-93.1015 54.787,109.58213 c 0,0 -64.9261,49.35152 -156.31525,39.55983 z"
-     id="path827"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="cccccccccc" />
-  <path
-     style="fill:#808000;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="m 467.44721,246.6804 -3.39538,15.08085 122.89585,133.03133 c 0,0 24.41958,-52.78834 -7.13144,-157.23309 0,0 -102.57734,0.41718 -112.36903,9.12091 z"
-     id="path829"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccc" />
-  <path
-     style="fill:#52638e;fill-opacity:1;stroke:#000000;stroke-width:1.28380001px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-     d="M 21.463557,380.20785 C 226.00118,638.05582 422.90903,460.47417 422.90903,460.47417 L 389.13597,392.87759 543.04726,452.91436 501.14277,616.224 468.93747,553.2729 C 417.45876,606.7021 128.15136,694.59106 21.463557,380.20785 Z"
-     id="path831"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccccc" />
-</svg>
diff --git a/img/bash.png b/img/bash.png
deleted file mode 100644 (file)
index e0331c1..0000000
Binary files a/img/bash.png and /dev/null differ
diff --git a/img/bg.jpg b/img/bg.jpg
deleted file mode 100644 (file)
index 5ad4139..0000000
Binary files a/img/bg.jpg and /dev/null differ
diff --git a/img/bg_bw.jpg b/img/bg_bw.jpg
deleted file mode 100644 (file)
index c3f063f..0000000
Binary files a/img/bg_bw.jpg and /dev/null differ
diff --git a/img/bg_creorga.jpg b/img/bg_creorga.jpg
deleted file mode 100644 (file)
index d7f782c..0000000
Binary files a/img/bg_creorga.jpg and /dev/null differ