v20200701
authorkilian <ksaffran@dks.lu>
Thu, 2 Jul 2020 07:15:54 +0000 (09:15 +0200)
committerkilian <ksaffran@dks.lu>
Thu, 2 Jul 2020 07:15:54 +0000 (09:15 +0200)
24 files changed:
.gitignore
desktopapp/main.js
webapp/static/css/fonts/pot.svg
webapp/static/css/fonts/pot.ttf
webapp/static/css/fonts/pot.woff
webapp/static/css/icons.css
webapp/static/css/theme.css
webapp/static/js/formsave.js
webapp/static/vendors/choices/choices.css
webapp/tmpl/macro/fields.tt
webapp/tmpl/module/companies.tt
webapp/tmpl/module/companies/companies.js
webapp/tmpl/module/companies/worktimes.js
webapp/tmpl/module/periods.tt
webapp/tmpl/module/periods/reportperiod.js
webapp/tmpl/module/periods/staffperiodweeks.js
webapp/tmpl/module/profile.tt
webapp/tmpl/module/profile/dlgpassword.tt
webapp/tmpl/module/profile/dlgusername.tt
webapp/tmpl/module/staff.tt
webapp/tmpl/module/staff/staff.js
webapp/tmpl/module/users.tt
webapp/tmpl/module/users/users.js
website/app [deleted symlink]

index 532973f..c5b114b 100644 (file)
@@ -1,8 +1,4 @@
-backoffice/api/lib/perl5
-backoffice/data/output/pot
-backoffice/data/tmp
-
-
+website/app
 desktopapp/node_modules
 desktopapp/node_modules/package-lock.json
 OLD/
index f21b2f1..35f2c39 100644 (file)
@@ -33,7 +33,7 @@ function createWindow () {
     show: false,
     icon: __dirname + '/img/POT-logo.png',
     minWidth: 1260,
-    minHeight: 600,
+    minHeight: 720,
     title: "POT",
     backgroundColor: "#fff",
      webPreferences: {
@@ -41,7 +41,7 @@ function createWindow () {
     //   nodeIntegration: true
      }
   })
-  const glshort = globalShortcut.register('CommandOrControl+X', () => {
+  const glshort = globalShortcut.register('CommandOrControl+Shift+I', () => {
     //console.log('CommandOrControl+X is pressed')
     mainWindow.webContents.openDevTools({detached: true});
   })
index 4d7f95a..8cc7738 100644 (file)
@@ -77,4 +77,7 @@
 <glyph unicode="&#xe943;" glyph-name="staff" d="M852.529 206.541c-40.953 0.285-74.344-32.751-74.586-73.619-0.285-41.010 32.708-74.331 73.589-74.616 40.981-0.285 74.373 32.609 74.629 73.619 0.256 40.868-32.708 74.331-73.632 74.616zM853.184 311.346c15.493 0 30.472-2.421 44.755-6.123l5.909-39.159c14.453-5.696 27.795-13.385 39.529-23.068l37.065 13.955c20.847-21.502 36.211-48.13 44.213-77.891l-31.042-24.777c1.153-7.405 1.908-15.094 1.837-22.784-0.086-7.832-0.897-15.379-2.136-22.784l30.743-25.204c-8.415-29.619-24.122-56.105-45.224-77.322l-36.866 14.525c-11.876-9.541-25.332-17.088-39.813-22.641l-6.436-39.017c-14.353-3.702-29.333-5.696-44.812-5.696-15.521 0.142-30.472 2.421-44.811 6.265l-5.852 39.159c-14.439 5.554-27.824 13.385-39.557 23.068l-37.065-13.955c-20.818 21.36-36.211 48.13-44.242 77.891l31.070 24.635c-1.139 7.547-1.88 15.094-1.837 22.926 0.085 7.689 0.897 15.379 2.136 22.784l-30.743 25.062c8.387 29.761 24.122 56.105 45.21 77.464l36.909-14.525c11.847 9.541 25.318 17.088 39.828 22.499l6.365 39.159c14.382 3.56 29.362 5.696 44.868 5.553zM409.028 371.574l49.657-49.694-38.586-38.587 39.825-46.143-52.696-157.924-54.289 156.107 44.44 48.528-38.046 38.019zM618.515 376.928c38.144-7.169 73.391-22.554 103.826-44.248l0.426-0.317-2.897-1.86c-63.883-43.209-105.968-116.325-105.968-199.009 0-41.386 10.521-80.353 29.028-114.37l0.909-1.579h-643.838v102.668c0 127.586 90.779 233.999 211.264 258.14l194.355-304.663zM344.453 820.627c-25.958 0.065-58.686-6.617-62.522-39.908 0 0 0-64.687-17.265-73.32l-4.285-60.371-17.266 17.252 6.459-81.938 32.358-2.176c0 0 8.634-166.017 166.052-133.689 0 0 75.464 23.726 92.699 133.689l25.901 2.176 6.459 73.32-10.776-2.173c0 0-6.491 62.544-12.949 88.412l-4.317 62.531c0 0-36.645 30.199-90.556 4.316 0 0-62.546 2.173-77.637 8.633 0 0-14.592 3.203-32.352 3.248zM418.251 942.627c73.513 0.006 124.602-38.985 124.602-38.985 94.873-75.478 43.136-204.866 43.136-204.866 21.551-12.933 19.41-23.709 19.41-23.709 0-140.181-38.819-129.388-38.819-129.388-21.583-90.57-105.648-131.53-105.648-131.53-163.908-40.977-204.867 129.371-204.867 129.371-34.503 4.316-38.819 84.095-38.819 84.095-10.809 53.91 19.409 75.477 19.409 75.477-64.718 150.938 51.737 196.216 51.737 196.216 46.692 32.612 91.352 43.315 129.859 43.318z" />
 <glyph unicode="&#xe944;" glyph-name="back" d="M580.895 960h273.723l-413.813-509.791 2.338-2.896 415.046-511.313h-273.736l-280.542 345.584-1.234-1.48-136.868 168.605 136.868 168.646z" />
 <glyph unicode="&#xe945;" glyph-name="next" d="M165.81 960h273.728l280.547-345.583 1.234 1.48 136.87-168.604-415.080-511.292h-273.741l413.82 509.792-2.338 2.896-99.387 122.396z" />
+<glyph unicode="&#xe946;" glyph-name="sendemail" d="M27.191 706.781c-25.772-241.871 124.762-457.551 339.243-483.692 130.086-15.899 254.021 41.716 338.899 143.179l-99.362 77.659 417.947 168.715-62.835-446.319-94.675 73.987c-102.159-126.221-264.94-198.635-437.993-177.524-267.144 32.56-457.349 275.497-424.787 542.664 4.313 35.279 12.355 69.116 23.562 101.329zM119.785 802.29l301.541-301.517c9.96-9.956 26.039-9.956 35.971 0l300.424 300.37c6.124-4.049 10.197-10.971 10.197-18.876v-222.443l-254.765-102.9 107.427-83.946h-452.099c-22.788 22.312-43.559 47.202-61.051 74.628v334.661c0 8.758 5.061 16.291 12.355 20.023zM154.8 854.39h569.177c-0.319-5.431-2.529-10.81-6.738-14.938l-263.022-261.552c-8.813-8.573-22.738-8.625-31.099-0.080l-262.357 260.383c-4.368 4.42-6.284 10.331-5.962 16.186z" />
+<glyph unicode="&#xe947;" glyph-name="exit" d="M826.547 713.055l174.681-174.731-174.681-174.856v116.127h-324.501v117.521h324.501zM22.578 960h748.846v-322.493h-85.415v233.478h-527.32l143.325-93.695v-571.717h383.995v233.478h85.415v-322.493h-469.41v-180.559l-279.436 180.559z" />
+<glyph unicode="&#xe948;" glyph-name="key" d="M738.8 883.463c-8.706 0-17.411-3.312-24.038-9.937-13.313-13.315-13.313-34.816 0-48.13l148.772-148.899c13.318-13.25 34.83-13.25 48.143 0.064 13.308 13.25 13.308 34.816-0.067 48.13l-148.768 148.835c-6.63 6.625-15.336 9.937-24.042 9.937zM711.352 960c26.51 0.008 53.012-10.118 73.233-30.404l177.155-177.025c40.447-40.509 40.447-106.138 0-146.523l-213.276-213.222c-40.389-40.436-106.026-40.436-146.535 0l-20.948 20.956-146.829-147.025-75.136 22.819 16.939-80.955-78.011 19.881 12.629-85.271-86.701 11.249 16.942-80.95-78.887 18.878 15.316-82.52-74.011-74.080-81.386 174.416 431.31 431.342 110.665-110.618-138.919 138.968c-40.498 40.383-40.498 106.017 0 146.523l213.17 213.157c20.255 20.253 46.773 30.396 73.283 30.404z" />
 </font></defs></svg>
\ No newline at end of file
index 04fb71c..678044b 100644 (file)
Binary files a/webapp/static/css/fonts/pot.ttf and b/webapp/static/css/fonts/pot.ttf differ
index cd90128..c1b2fbd 100644 (file)
Binary files a/webapp/static/css/fonts/pot.woff and b/webapp/static/css/fonts/pot.woff differ
index 916bd92..d091593 100644 (file)
@@ -1,9 +1,9 @@
 @font-face {
   font-family: 'pot';
   src:
-    url('fonts/pot.ttf?acr332') format('truetype'),
-    url('fonts/pot.woff?acr332') format('woff'),
-    url('fonts/pot.svg?acr332#pot') format('svg');
+    url('fonts/pot.ttf?26rj7t') format('truetype'),
+    url('fonts/pot.woff?26rj7t') format('woff'),
+    url('fonts/pot.svg?26rj7t#pot') format('svg');
   font-weight: normal;
   font-style: normal;
   font-display: block;
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-sendemail:before {
+  content: "\e946";
+}
+.icon-exit:before {
+  content: "\e947";
+}
+.icon-key:before {
+  content: "\e948";
+}
 .icon-back:before {
   content: "\e944";
 }
index 6c7cd8d..0879fa8 100644 (file)
@@ -993,6 +993,7 @@ input[type="time"]::-webkit-calendar-picker-indicator {
        background-color: #293146;
        color: #fff;
        padding:8px!important;
+       margin-bottom: 10px;
 }
 
 .modal-content > footer {
index d5be87b..d9a050c 100644 (file)
@@ -178,57 +178,66 @@ function cleanform2(frmname,choices){
   return false;
 }
 
-function fillformbydataclass(dataclass,data,readonly = false){
-  var frm = document.querySelectorAll('.data_'+ dataclass);
-  if (data){
-    for (var f in frm){
-      if (data[frm[f].id]){
-        if (readonly){ frm[f].readonly = true;}
-        if (frm[f].tagName == 'INPUT'){
-          if (frm[f].type == "checkbox"){
-            if (data[frm[f].id] == "1"){
-              frm[f].checked = true;
-            } else {
-              frm[f].checked = false;
-            }
-          } else if (frm[f].classList.contains("datefield")){ 
-            frm[f]._flatpickr.setDate(data[frm[f].id]);
-          } else if (frm[f].classList.contains("timefield")){ 
-            frm[f]._flatpickr.setDate(data[frm[f].id]);
-          }else if (frm[f].classList.contains("choices__input")){  
-            if ((data[frm[f].id] != null) && (data[frm[f].id] != '[""]')){
-              choice[dataclass][frm[f].id].setValue(JSON.parse(data[frm[f].id])); 
-            }
-          } else {
-            frm[f].value=data[frm[f].id];
-          }
-        }
-        if (frm[f].tagName == 'SELECT'){
-          if (frm[f].classList.contains("choices__input")){
-            if (frm[f].multiple == true){
-              choice[dataclass][frm[f].id].setChoiceByValue(JSON.parse(data[frm[f].id]));
-            }else {
-              choice[dataclass][frm[f].id].setChoiceByValue(data[frm[f].id]);
-            }
-          } else {
-            frm[f].value=data[frm[f].id];
-          }
+// function fillformbydataclass(dataclass,data,readonly = false){
+//   var frm = document.querySelectorAll('.data_'+ dataclass);
+//   if (data){
+//     for (var f in frm){
+//       if (data[frm[f].id]){
+//         if (readonly){ frm[f].readonly = true;}
+//         if (frm[f].tagName == 'INPUT'){
+//           if (frm[f].type == "checkbox"){
+//             if (data[frm[f].id] == "1"){
+//               frm[f].checked = true;
+//             } else {
+//               frm[f].checked = false;
+//             }
+//           } else if (frm[f].classList.contains("datefield")){ 
+//             frm[f]._flatpickr.setDate(data[frm[f].id]);
+//           } else if (frm[f].classList.contains("timefield")){ 
+//             frm[f]._flatpickr.setDate(data[frm[f].id]);
+//           }else if (frm[f].classList.contains("choices__input")){  
+//             if ((data[frm[f].id] != null) && (data[frm[f].id] != '[""]')){
+//               choice[dataclass][frm[f].id].setValue(JSON.parse(data[frm[f].id])); 
+//             }
+//           } else {
+//             frm[f].value=data[frm[f].id];
+//           }
+//         }
+//         if (frm[f].tagName == 'SELECT'){
+//           if (frm[f].classList.contains("choices__input")){
+//             if (frm[f].multiple == true){
+//               choice[dataclass][frm[f].id].setChoiceByValue(JSON.parse(data[frm[f].id]));
+//             }else {
+//               choice[dataclass][frm[f].id].setChoiceByValue(data[frm[f].id]);
+//             }
+//           } else {
+//             frm[f].value=data[frm[f].id];
+//           }
           
-        }
-      }
-    }
-  }
-}
+//         }
+//       }
+//     }
+//   }
+// }
 
 function fillformbydataclass2(dataclass,choices,data,onblur){
   var frm = document.querySelectorAll('.data_'+ dataclass);
+  console.log("Data to fill");
+  console.log(data);
   if (data){
     for (var f in frm){
+      console.log(frm[f].id);
+      if (frm[f].id){
+        frm[f].dataset.id=data['id'];
+      }
       if (data[frm[f].id]){
+        console.log("=>");
+        console.log(data[frm[f].id]);
         // if (onblur){
         //   frm[f].addEventListener('blur',onblur);
         // }
-        frm[f].dataset.id=data['id'];
+        
+        //frm[f].dataset.id=data['id'];
         if (frm[f].tagName == 'INPUT'){
           if (frm[f].type == "checkbox"){
             if (data[frm[f].id] == "1"){
index 2087145..e75be05 100644 (file)
     border-bottom: 1px solid #ccc;
     /* border-radius: 2.5px; */
     /* font-size: 14px; */
-    min-height: 32px;
+    min-height: 28px;
     overflow: hidden;
     /* font-weight: bold; */
 }
 
 .choices__list--single {
     display: inline-block;
-    padding: 6px 2px 2px 2px;
+    padding: 2px 2px 2px 2px;
     width: 100%;
 }
 
index f02626d..964bfb2 100644 (file)
 [% END -%]\r
 [% MACRO fieldcheckbox(column,table,title,size,state,value,blurevent) BLOCK -%]\r
   <div class="container">\r
-  <br/>\r
-                <input class="check  data_[% table %] [% IF state.length > 0 %][% state %][% END %]" id="[% column %]" name="[% table %]_[% column %]" data-column="[% column %]"  data-table="[% table %]" data-id="" value="[% value %]" type="checkbox" [% IF state.length > 0 %][% state %][% END %] [% IF blurevent %]onblur="[% blurevent %]"[% END %]>\r
-                <label>[% title %]</label>\r
+    <div class="cell-row">\r
+    <div class="cell" style="width: 40px;">\r
+    <input class="check  data_[% table %] [% IF state.length > 0 %][% state %][% END %]" id="[% column %]" name="[% table %]_[% column %]" data-column="[% column %]"  data-table="[% table %]" data-id="" value="[% value %]" type="checkbox" [% IF state.length > 0 %][% state %][% END %] [% IF blurevent %]onblur="[% blurevent %]"[% END %]>\r
+    </div>\r
+    <div class="cell">\r
+      [% title %]\r
+    </div>            \r
+                \r
               </div>\r
 [% END -%]\r
 \r
index 57649de..2040072 100644 (file)
         <div id="tbl_companies"></div>
       </div>
       <div class="cell" >
+        <div class="panel" id="pnl_nodata">
+    <div class="bar moduletoolbar">
+      <div class="bar-item PageHeadTitle">&nbsp;</div>
+    </div>
+    <div class="row center" style="margin-top: 200px;">
+      <img src="[% abpspath%][% staticpath %]img/toplogo.png" style="margin: auto;">
+    </div>
+  </div>
+  <div class="panel" id="pnl_basedata" style="display: none;">
         <div class="bar moduletoolbar">
           <div class="bar-item PageHeadTitle">Données de base</div>
         </div>
               <div class="cell">
               <div class="row">
               <div class="cell">
+              <div class="row" style="margin-top: 5px;">
+                  <div class="cell" style="width: 300px;">
+                    [% fieldeditbox('datasetname','companies','DataSet','','','','','record.savefield(this);') %]
+                  </div>
+                  
+                </div>
                 <div class="row" style="margin-top: 5px;">
                   <div class="cell" style="width: 300px;">
-                    [% fieldeditbox('company','companies','Entreprise','','','','') %]
+                    [% fieldeditbox('company','companies','Entreprise','','','','','record.savefield(this);') %]
                   </div>
                   <div class="cell" style="width: 100px;">
-                    [% fieldeditbox('socialtype','companies','dénom. Sociale','','','','') %]
+                    [% fieldeditbox('socialtype','companies','dénom. Sociale','','','','','record.savefield(this);') %]
                   </div>
                 </div>
                 <div class="row">
-                  <div class="cell" style="width: 120px;">[% fieldeditbox('comregister','companies','No. RCS','','','','B123456') %]</div>
-                  <div class="cell" style="width: 150px;">[% fieldeditbox('vatnumber','companies','No TVA Internationale','','','','LU12345678') %]</div>
+                  <div class="cell" style="width: 120px;">[% fieldeditbox('comregister','companies','No. RCS','','','','','record.savefield(this);') %]</div>
+                  <div class="cell" style="width: 150px;">[% fieldeditbox('vatnumber','companies','No TVA Internationale','','','','','record.savefield(this);') %]</div>
                 </div>
                 <div class="row">
-                  <div class="cell" style="width: 250px;">[% fieldeditbox('email','companies','E-Mail','','','','') %]</div>
+                  <div class="cell" style="width: 250px;">[% fieldeditbox('email','companies','E-Mail','','','','','record.savefield(this);') %]</div>
                   <div class="cell">[% rdonly = 'readonly' %]
                     [% IF (session.usergroup == 'admin') %]
-                      [% fieldeditbox('schemata','companies','Database-Schema','half','readonly','','') %]
+                      [% fieldeditbox('schemata','companies','Database-Schema','','readonly','','') %]
                       [% rdonly = '' %]
                     [% END %]</div>
                 </div>
               <div class="cell">
                 <div class="row">
                   <div class="cell" style="width: 400px;">
-                    [% fieldeditbox('address','companies','Adresse','','','','') %]
+                    [% fieldeditbox('address','companies','Adresse','','','','','record.savefield(this);') %]
                   </div>
                 </div>
                 <div class="row">
                   <div class="cell" style="width: 70px;">
-                    [% fieldeditbox('zip','companies','CP','','','','') %]
+                    [% fieldeditbox('zip','companies','CP','','','','','record.savefield(this);') %]
                   </div>
                   <div class="cell" style="width: 170px;">
-                    [% fieldeditbox('city','companies','Ville','','','','') %]
+                    [% fieldeditbox('city','companies','Ville','','','','','record.savefield(this);') %]
                   </div>
                   <div class="cell" style="width: 160px;">
-                    [% fieldeditbox('country','companies','Pays','','','','') %]
+                    [% fieldeditbox('country','companies','Pays','','','','','record.savefield(this);') %]
                   </div>
                 </div>
                 <div class="row">
-                  <div class="cell" style="width: 250px;">[% fieldeditbox('phone','companies','Téléphone','','','','') %]</div>
+                  <div class="cell" style="width: 250px;">[% fieldeditbox('phone','companies','Téléphone','','','','','record.savefield(this);') %]</div>
                 </div>
               </div>
               </div>     
@@ -77,7 +92,7 @@
                   
                 </div>
                 <div class="row" style="margin-top: 5px;">
-                  <div class="cell">[% fielddatebox("reportperiodstart","companies","début",'','','','') %] </div>
+                  <div class="cell">[% fielddatebox("reportperiodstart","companies","début",'','','','','record.savefield(this);') %] </div>
                   <div class="cell" style="width: 60px;">[% fieldnumberbox("reportperiodlength","companies","Durée",'','','','',1,'',1) %]</div>
                   <div class="cell" style="width: 120px;">[% fieldselectbox("reportperiodunit","companies","Unité",'','','','') %]</div>
                 </div>
index 28a99bc..334263b 100644 (file)
@@ -12,14 +12,15 @@ var companies ={
   tbl: null,
   current_company: null,
   current_schemata: null,
+  current_view: 'basedata',
   name: "companies",
   choices:{"reportperiodunit":null},
   initform: function(){
-    // flatpickr("#reportperiodstart",{altInput: true,
-    //   altFormat: "d.m.Y",
-    //   dateFormat: "Y-m-d",
-    //   "locale": "fr",
-    // });
+    flatpickr("#reportperiodstart",{altInput: true,
+      altFormat: "d.m.Y",
+      dateFormat: "Y-m-d",
+      "locale": "fr",
+    });
     companies.choices["reportperiodunit"] = new Choices('#reportperiodunit',{
       searchEnabled: false,
       itemSelectText: '',
@@ -47,7 +48,7 @@ var companies ={
       },
       rowContext:function(e, row){e.preventDefault();},
       columns:[
-        {title:"entreprise",field:"company"}
+        {title:"entreprise",field:"company",resizeable: false}
         // {title:"address",field:"address",headerFilter:"input"},
         // {title:"cp",field:"zip",headerFilter:"input"},
         // {title:"ville",field:"city",headerFilter:"input"},
@@ -59,7 +60,7 @@ var companies ={
   },
   gettbldata: function(){
     [% IF session.usergroup == 'admin' %]
-      req.reqdata("POST", "db.cgi", { "get":  "companies" + "list","schemata":schemata}, companies.loadtbldata);
+      req.reqdata("POST", "db.cgi", { "get":  "companieslist","schemata":schemata}, companies.loadtbldata);
     [% ELSE %]
       req.reqdata("POST", "db.cgi", { "get":  "userschemaaccess","schemata":schemata, "filter": " id_user='[% session.id %]'"}, companies.loadtbldata);
     [% END %]
@@ -82,6 +83,7 @@ var companies ={
       req.reqdata("POST", "db.cgi", { "get":  "companies" + "data","schemata":schemata, "filter":"id='" + udata[0].id + "'"}, companies.fillform);
       staffgroups.gettbldata();
       worktimes.gettbldata();
+      companies.setview(companies.current_view);
       //module.viewpanel('frm_' +"companies");
     }
   },
@@ -128,6 +130,17 @@ var companies ={
   afterdeletecallback: function(data){
     companies.gettbldata();
     module.viewpanel('tbl_' + "companies");
+  },
+  setview: function(viewname){
+    companies.current_view = viewname;
+    // if (viewname == 'periods'){
+    //   staffperiods.gettbldata();
+    // }
+    // if (viewname == 'basedata'){
+    //   //staff.edit();
+    // }
+    module.viewpanel(viewname);
+    
   }
 }
 
index 2b663a3..8748486 100644 (file)
@@ -16,7 +16,7 @@ var worktimes = {
   inittable: function(){
     worktimes.tbl = new Tabulator("#tbl_" + "worktimes", {
       headerFilterPlaceholder: "filter...",
-      height: "calc(100vh - 503px)",
+      height: "calc(100vh - 517px)",
       layout: "fitData",
       selectable: 1,
       rowContext:function(e, row){ e.preventDefault(); },
index 2b970bd..5608950 100644 (file)
@@ -4,9 +4,9 @@
     <div class="bar moduletoolbar">
       <button class="bar-item toolbarbtn" onclick="staff.viewtable();"><span class="icon-table" style="font-size: 16px;"></span><br/>Tableau</button>
       <div class="bar-item PageHeadTitle">Périodes de références</div>
-      <div class="toolbar" id="tbar_tbl_reportperiod">
+      <div class="toolbar paneltoolbar" id="tlb_periods">
       <button class="bar-item toolbarbtn  right" onclick="reportperiod.add();"><span class="icon-plus" style="font-size: 16px;"><br/>ajouter</button> 
-      <button class="bar-item toolbarbtn right" onclick="staffperiodweeks.loadplan();"><span class="icon-edit" style="font-size: 16px;"><br/>éditer</button>
+      <button class="bar-item toolbarbtn right" onclick="reportperiod.editplan();"><span class="icon-edit" style="font-size: 16px;"><br/>éditer</button>
        <button class="bar-item toolbarbtn right" onclick="reportperiod.generatereport();"><span class="icon-pdf" style="font-size: 16px;"><br/>PDF</button>
       <button class="bar-item toolbarbtn right" onclick="reportperiod.datarefresh();"><span class="icon-datarefresh" style="font-size: 16px;"><br/>actualiser</button>
       <button class="bar-item toolbarbtn right" onclick="reportperiod.showdlgpayedhours();"><span class="icon-pay" style="font-size: 16px;"><br/>heures payées</button>
   <button class="bar-item toolbarbtn  right" onclick="staff.edit();"><span class="icon-edit" style="font-size: 16px;"><br/>éditer</button>-->
     </div>
   </div>
-</div> 
-    <div class="display-container panel" id="pnl_tbl_reportperiod">
-          <div class="cell-row">
-            <div class="cell" style="width: 200px;">
-              <div id="tbl_reportperiodfilter"></div>
-            </div>
-            <div class="cell">
-              <div id="tbl_reportperiod"></div>
-            </div>
-          </div>
+</div>
+    
+<div class="display-container" >
+  <div class="cell-row">
+    <div class="cell" style="width: 200px;">
+      <div id="tbl_reportperiodfilter"></div>
     </div>
-    <div class="display-container panel" id="pnl_tbl_staffreportperiodweeks" style="display:  none;">
-        <div id="tbl_staffreportperiodweeks"></div>
+    <div class="cell">
+      <div class="panel" id="pnl_nodata">
+        <div class="bar moduletoolbar">
+          <div class="bar-item PageHeadTitle">&nbsp;</div>
+        </div>
+        <div class="row center" style="margin-top: 200px;">
+          <img src="[% abpspath%][% staticpath %]img/toplogo.png" style="margin: auto;">
+        </div>
+      </div>
+      <div  class="panel" id="pnl_periods" style="display:  none;">  
+         <div id="tbl_reportperiod"></div>
+      </div>
+      <div class="panel" id="pnl_staffperiodweeks" style="display: none;">
+        <div class="bar moduletoolbar">
+          <button class="bar-item toolbarbtn" onclick="reportperiod.setview('periods'); return false;"><span class="icon-back" style="font-size: 16px;"><br/>retour</button>
+          <div class="bar-item PageHeadTitle" id="periodtitle" style="display: none;"></div>
+          <div class="bar-item PageHeadTitle" id="stafftitle"></div>
+          <button class="bar-item toolbarbtn right" onclick="staffperiodweeks.edit(); return false;"><span class="icon-edit" style="font-size: 16px;"><br/>editer</button>
+        </div>
+      <div id="tbl_staffperiodweeks" ></div>
+      </div>
     </div>
+  </div>
+</div>
+    
     [% #INCLUDE %]
    
     [% INCLUDE block/dlgdeleterow.tt %] 
@@ -35,5 +53,6 @@
     [% INCLUDE block/dlgdataload.tt %]
     [% INCLUDE block/dlgreport.tt %]
     [% INCLUDE block/dlgaction.tt %] 
+    [% INCLUDE block/dlgstaffperioddays.tt %]
     <script src="periods/reportperiod.js"></script>
     <script src="periods/staffperiodweeks.js"></script>
\ No newline at end of file
index bdf1586..fd96905 100644 (file)
@@ -11,7 +11,8 @@ let reportperiod ={
   tblfilter: null,
   tbl: null,
   selected: null,
-  name: "reportperiod",
+  current_view: 'periods',
+  // name: "reportperiod",
   choices:{},
   initform: function(){},
   inittable: function(){
@@ -31,6 +32,7 @@ let reportperiod ={
         let fsel = reportperiod.tblfilter.getSelectedData();
         console.log(fsel);
         reportperiod.gettbldata(fsel[0].id);
+        reportperiod.setview(reportperiod.current_view);
         //invoices.gettbldata(fsel);
         //invoices.getsums(fsel);
       },
@@ -45,8 +47,8 @@ let reportperiod ={
     //   ],
       columns: [
 
-            {title: "Début",field: "startdate",headerSort:"datetime",formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""} },
-            {title: "Fin",field: "enddate",sorter:"datetime",formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""} },
+            {title: "Début",field: "startdate",headerSort:"datetime",formatter:"datetime",resizable: false,formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""} },
+            {title: "Fin",field: "enddate",sorter:"datetime",resizable: false,formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""} },
             // {title: "Département",field:"groupname"}
             // {title: "Contrat", field:"contracthours",headerSort: false},
             // {title: "Travail", field:"workhours",headerSort: false},
@@ -168,5 +170,22 @@ let reportperiod ={
     formsaved({});
     req.reqdata("POST","index.cgi",rpdata,reportperiod.gettbldata);
     return false;
+  },
+  setview: function(viewname){
+    reportperiod.current_view = viewname;
+    // if (viewname == 'periods'){
+    //   staffperiods.gettbldata();
+    // }
+    // if (viewname == 'basedata'){
+    //   //staff.edit();
+    // }
+    module.viewpanel(viewname);
+    
+  },
+  editplan(){
+      let sel = reportperiod.tbl.getSelectedData();
+      if (sel[0]){
+        staffperiodweeks.loadplan(reportperiod.tbl);
+    }
   }
 }
\ No newline at end of file
index 23c3f27..154c837 100644 (file)
@@ -61,17 +61,17 @@ var staffperiodweeks = {
       ],
       columns: [
         { title: "Date",field: "daydate",align:"right",sorter:"datetime",formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"dd, DD.MM.YYYY",invalidPlaceholder:""}},
-        { title: "Début 1",field: "timestart1",sorter: false,align:"right"},
-        { title: "Fin 1",field: "timeend1",sorter:false,align:"right"},
-        { title: "Coup.",field: "interruptionhours",sorter:false,align:"right"},
-        { title: "Début 2",field: "timestart2",sorter: false,align:"right"},
-        { title: "Fin 2",field: "timeend2",sorter: false,align:"right"},
-        { title: "Pause",field: "timepause",sorter: false,align:"right"},
-        { title: "Travail",field: "workhours",sorter: false,align:"right",bottomCalc:staffperiodweeks.setweekworkhours},
-        { title: "Congé",field: "vacancyhours",sorter: false,align:"right",bottomCalc:staffperiodweeks.setweekvacancyhours},
-        { title: "Récup.",field: "recuperationhours",align:"right",sorter: false,bottomCalc:staffperiodweeks.setweekrecuperationhours},
-        { title: "Total",field: "dayhours",align:"right",sorter: false,bottomCalc:staffperiodweeks.setweektotalhours},
-        { title: "Diff",field:"diffhours",align:"right",formatter:nullFormatter,sorter:false,bottomCalc:staffperiodweeks.setweekdiffhours}
+        { title: "Début 1",field: "timestart1",sorter: false,hozAlign:"right"},
+        { title: "Fin 1",field: "timeend1",sorter:false,hozAlign:"right"},
+        { title: "Coup.",field: "interruptionhours",sorter:false,hozAlign:"right"},
+        { title: "Début 2",field: "timestart2",sorter: false,hozAlign:"right"},
+        { title: "Fin 2",field: "timeend2",sorter: false,hozAlign:"right"},
+        { title: "Pause",field: "timepause",sorter: false,hozAlign:"right"},
+        { title: "Travail",field: "workhours",sorter: false,hozAlign:"right",bottomCalc:staffperiodweeks.setweekworkhours},
+        { title: "Congé",field: "vacancyhours",sorter: false,hozAlign:"right",bottomCalc:staffperiodweeks.setweekvacancyhours},
+        { title: "Récup.",field: "recuperationhours",hozAlign:"right",sorter: false,bottomCalc:staffperiodweeks.setweekrecuperationhours},
+        { title: "Total",field: "dayhours",hozAlign:"right",sorter: false,bottomCalc:staffperiodweeks.setweektotalhours},
+        { title: "Diff",field:"diffhours",hozAlign:"right",formatter:nullFormatter,sorter:false,bottomCalc:staffperiodweeks.setweekdiffhours}
       ]
   });
   staffperiodweeks.initform();
@@ -86,8 +86,10 @@ var staffperiodweeks = {
   loadplan: function(parenttbl){
     staffperiodweeks.parenttbl = parenttbl;
     var selrp = staffperiodweeks.parenttbl.getSelectedData();
+    console.log(selrp);
     if (selrp[0]) {
       document.getElementById("periodtitle").innerHTML="&nbsp;Période " + moment(selrp[0].startdate).lang("fr").format('DD.MM.YYYY')  + "-" + moment(selrp[0].enddate).lang("fr").format('DD.MM.YYYY');
+      document.getElementById("stafftitle").innerHTML= selrp[0].staffname + "(" + selrp[0].groupname + ")";
       staffperiodweeks.gettbldata();
       module.viewpanel('staffperiodweeks');
     }
index 3927476..168fc62 100644 (file)
@@ -1,35 +1,50 @@
 \r
 [% PROCESS macro/fields.tt %]\r
-<div class="display-container margin">\r
-    <div class="container padding-24 card margin-bottom">\r
+[% quserdata = dksdb.query("select * from users where id='${session.id}';") %]\r
+[% user = quserdata.get_all() %]\r
+\r
+<div class="display-container margin center">\r
+<div class="cell-row ">\r
+  <div class="cell container padding-24 margin-bottom left-align" style="width: 400px;">\r
     <form id="frm_account">\r
-        <h3>données d'accès</h3>\r
+        <fieldset>\r
+  <legend>données d'accès</legend>\r
+        \r
         <div class="row-padding">\r
-            <div class="container half">\r
-             [% #fieldhidden('users','id','ident') %]\r
-            [% fieldeditbox('username','users','E-Mail (Login)','','readonly','') %]\r
             <div class="container">\r
-                <button class="button blue-grey margin" onclick="opendlgusername();return false;">Changer E-Mail (Login)</button>\r
+             [% #fieldhidden('users','id','ident') %]\r
+            [% fieldeditbox('username','users','E-Mail (Login)','','readonly',user.0.username) %]\r
+            <div class="bar-block">\r
+                <button class="bar-item button blue-grey" onclick="opendlgusername();return false;">Changer E-Mail (Login)</button>\r
+                <div class="bar-item right">&nbsp;</div>\r
+                <button class="bar-item button blue-grey" onclick="opendlgpassword();return false;">Changer mot de passe</button>\r
+                \r
+                \r
               </div> \r
             </div>\r
-            <div class="container half margin-top padding">\r
+            <div class="container margin-top padding">\r
               \r
-            <button class="button blue-grey" onclick="opendlgpassword();return false;">Changer mot de passe</button>\r
+            \r
           </div>\r
         </div>\r
+        </fieldset>\r
     </form>\r
     </div>\r
-      \r
-      <div class="container padding-24 card  margin-bottom">\r
+    <!-- <div class="container cell padding-24 card  margin-bottom">\r
         <form id="frm_users">\r
         <h3>données personelles</h3>\r
         <div class="row-padding"> \r
         <div class="container">\r
-          [% fieldhidden('id','users','ident') %]\r
-          [% fieldeditbox('surname','users','Nom','half','') %]\r
-          [% fieldeditbox('prename','users','Prénom','half','') %]\r
-          [% fieldeditbox('job','users','Position','half','') %]\r
-          [% fieldeditbox('phone','users','Téléphone','half','') %]\r
+        <div></div>\r
+          [% #fieldhidden('id','users','ident') %]\r
+          [% fieldeditbox('surname','users','Nom','','') %]\r
+          [% fieldeditbox('prename','users','Prénom','','') %]\r
+          [% fieldeditbox('job','users','Position','','') %]\r
+          [% fieldeditbox('address','users','Adresse','','') %]\r
+          [% fieldeditbox('country','users','Pays','','') %]\r
+          [% fieldeditbox('zip','users','CP','','') %]\r
+          [% fieldeditbox('city','users','Ville','','') %]\r
+          [% fieldeditbox('phone','users','Téléphone','','') %]\r
       </div>\r
         <div class="container right-align">\r
         <button class="button blue-grey margin" id="btnsave_users" onclick="saveform('users');return false;"><span class="icon-Save"></span>&nbsp;Sauvegarder</button>\r
        \r
           </div>\r
         </form> \r
-      </div>\r
+      </div> -->\r
+</div>\r
+    \r
+      \r
+      \r
   </div>    \r
 \r
    [% #INCLUDE block/dlgcropper.tt %]\r
index 47ed38c..48f51ce 100644 (file)
@@ -4,11 +4,11 @@
     <header> 
       <span onclick="document.getElementById('dlgpassword').style.display='none'; return false;" 
       class="button toolbarbtn display-topright" ><span class="icon-remove" style="font-size: 18px;"></span></span>
-      <h2>changement mot de passe</h2>
+      <h3>changement mot de passe</h3>
     </header>
     <div class="container">
       <div id="msg">
-      <div class="panel blue-grey padding">
+      <div class="panel orange padding">
       Votre mot de passe doit avoir:
       <ul>
         <li>au moins 10 charatères</li>
@@ -28,7 +28,7 @@
     </div>
     <footer>
        <button class="button theme-light margin-right border" onclick="document.getElementById('dlgpassword').style.display='none'; return false;"><span class="icon-remove"></span>&nbsp;Annuler</button>
-      <button class="button theme-l2  margin-right border" onclick="savepassword();return false;">changer mot de passe</button>
+      <button class="button blue-grey margin-right border" onclick="savepassword();return false;">changer mot de passe</button>
     </footer>
   </div>
 </div>
index fbc48e9..e1a9ba7 100644 (file)
@@ -4,7 +4,7 @@
     <header> 
       <span onclick="document.getElementById('dlgusername').style.display='none'; return false;" 
       class="button toolbarbtn display-topright" ><span class="icon-remove" style="font-size: 18px;"></span></span>
-      <h2>Changement de l'email resp.  login</h2>
+      <h3>Changement de l'email resp.  login</h3>
     </header>
     <div class="container">
       <div id="nunmsg" ></div>
index bc8b178..137c5b3 100644 (file)
       </div>
     
     <div class="cell" >
-      <div class="panel" id="pnl_basedata">
+      <div class="panel" id="pnl_nodata">
+        <div class="bar moduletoolbar">
+          <div class="bar-item PageHeadTitle">&nbsp;</div>
+        </div>
+        <div class="row center" style="margin-top: 200px;">
+          <img src="[% abpspath%][% staticpath %]img/toplogo.png" style="margin: auto;">
+        </div>
+      </div>
+      <div class="panel" id="pnl_basedata" style="display: none;">
       
         <div class="bar moduletoolbar">
           <div class="bar-item PageHeadTitle">Données de base</div>
 <div id="pnl_staffperiodweeks" class="panel" style="display: none;">
   <div class="bar moduletoolbar">
           <button class="bar-item toolbarbtn" onclick="staff.setview('periods'); return false;"><span class="icon-back" style="font-size: 16px;"><br/>retour</button>
-          <div class="bar-item PageHeadTitle" id="periodtitle">Périodes de Référence DD.MM.YYYY - DD.MM.YYYY</div>
+          <div class="bar-item PageHeadTitle" id="periodtitle"></div>
+          <div class="bar-item PageHeadTitle" id="stafftitle" style="display: none;"></div>
           <button class="bar-item toolbarbtn right" onclick="staffperiodweeks.edit(); return false;"><span class="icon-edit" style="font-size: 16px;"><br/>editer</button>
         </div>
   <div id="tbl_staffperiodweeks" ></div>
index 0c598b7..0202b9d 100644 (file)
@@ -54,8 +54,8 @@ let staff ={
           // {title:"#", formatter:"rownum",align:"right",sorter:false},
           // {title: "No.", field: "staffnumber",sorter: "String", headerFilter: "input" }, 
           {title: "Départment", field: "groupname", visible: false },
-          {title: "Nom", field: "surname"  },
-          {title: "Prénom",field: "prename"},
+          {title: "Nom", field: "surname" ,resizeable: false },
+          {title: "Prénom",field: "prename",resizeable: false},
           // {title: "Job", field: "job",sorter: "String",  headerFilter: "input" },
           
       ]
@@ -92,6 +92,7 @@ let staff ={
       req.reqdata("POST", "db.cgi", { "get":  staff.name + "data","schemata":schemata, "filter":"id='" + udata[0].id + "'"}, staff.fillform);
       staffcontract.gettbldata();
       staffperiods.gettbldata();
+      staff.setview(staff.current_view);
       //module.viewpanel("frm_" + staff.name);
     }
   },
@@ -141,7 +142,7 @@ let staff ={
       staffperiods.gettbldata();
     }
     if (viewname == 'basedata'){
-      staff.edit();
+      //staff.edit();
     }
     module.viewpanel(viewname);
     
index f98762d..f8b2040 100644 (file)
@@ -2,20 +2,96 @@
 [% PROCESS macro/fields.tt %]
 <div class="display-container">
 <div class="bar moduletoolbar">
-      <button class="bar-item toolbarbtn" onclick="module.viewpanel('tbl_users');"><span class="icon-table" style="font-size: 16px;"></span><br/>Tableau</button>
+      <button class="bar-item toolbarbtn" onclick="users.viewtable();"><span class="icon-table" style="font-size: 16px;"></span><br/>Tableau</button>
       <div class="bar-item PageHeadTitle">Utilisateurs</div>
       <div class="toolbar" id="tbar_tbl_users">
   <button class="bar-item toolbarbtn  right" onclick="users.remove();"><span class="icon-remove text-red" style="font-size: 16px;"></span><br/>supprimer</button>
-  <button class="bar-item toolbarbtn  right" onclick="users.edit();"><span class="icon-edit" style="font-size: 16px;"><br/>éditer</button>
+  <!-- <button class="bar-item toolbarbtn  right" onclick="users.edit();"><span class="icon-edit" style="font-size: 16px;"><br/>éditer</button> -->
   <button class="bar-item toolbarbtn  right" onclick="users.add();"><span class="icon-plus" style="font-size: 16px;"><br/>ajouter</button> 
+    <button class="bar-item toolbarbtn  right" onclick="users.sendnewpassword(); return false;"><span class="icon-sendemail" style="font-size: 16px;"><br/>envoyer mot de passe</button> 
 </div>
-<div class="toolbar" id="tbar_frm_staff" style="display: none;">
+    </div>
 </div>
+<div class="display-container">
+<div class="cell-row">
+<div class="cell" style="width: 400px;">
+        <div id="tbl_users"></div>
+      </div>
+<div class="cell" >
+  <div class="panel" id="pnl_nodata">
+    <div class="bar moduletoolbar">
+      <div class="bar-item PageHeadTitle">&nbsp;</div>
+    </div>
+    <div class="row center" style="margin-top: 200px;">
+      <img src="[% abpspath%][% staticpath %]img/toplogo.png" style="margin: auto;">
     </div>
-  <div class="display-container panel" id="pnl_tbl_users">
-    <div id="tbl_users"></div>
+  </div>
+  <div class="panel" id="pnl_users" style="display: none;">
+        <div class="bar moduletoolbar">
+          <div class="bar-item PageHeadTitle">Données de base du utilisateur</div>
+          
+        </div>
+        <form id="frm_users">
+      [% ro = 'readonly' %]
+      [% IF session.usergroup == 'admin' %]
+      [% ro = '' %]
+      [% END %]
+         [% fieldhidden('id','users','ident') %]
+        <div class="row" style="margin-top: 5px;">
+        <div class="row">
+          <div class="cell" style="width: 300px;">
+            [% fieldeditbox("username","users","Login / E-Mail",'','','','','record.savefield(this);') %]
+          </div>
+          <div class="cell" style="width: 200px;">
+            [% fieldcheckbox("blocked","users","compte blocké",'',ro,'1') %]
+          </div>
+        </div>
+        <div class="row">
+          <div class="cell" style="width: 250px;">
+            [% fieldeditbox('surname','users','Nom','','','','','record.savefield(this);') %]
+          </div>
+          <div class="cell" style="width: 250px;">
+            [% fieldeditbox('prename','users','Prénom','','','','','record.savefield(this);') %]
+          </div>
+        </div>
+        <div class="row">
+          <div class="cell" style="width: 250px;">
+            [% fieldeditbox('job','users','Position','','','','','record.savefield(this);') %]
+          </div>
+          <div class="cell" style="width: 250px;">
+            [% fieldeditbox('phone','users','Téléphone','','','','','record.savefield(this);') %]
+          </div>
+        </div>  
+          
+          
+          
+
+         </div>
+         <div class="row">
+            <div class="bar moduletoolbar">
+          <div class="bar-item PageHeadTitle">Accès du utilisateur</div>
+          
+        </div>
+        <div class="cell-row" style="margin-top: 5px;">
+          <div class="cell" style="width: 250px;">
+          [% fieldselectbox('id_company','users','Entreprise','','','','') %]
+          </div>
+          <div class="cell"  style="width: 250px;">
+          [% fieldselectbox("id_usergroup","users","Accès Groupe",'','','') %]
+          </div>
+          <div class="cell">
+          [% fieldmultiselectbox("schemaaccess","users","Accès DataSet",'',ro,'') %]
+          </div>
+          </div>
+        </div>
+         </div>
+      </form>
+      
   </div>
 </div>
+</div>
+</div>   
+
 [% INCLUDE block/dlgdeleterow.tt %]
 [% INCLUDE block/dlgmessage.tt %]
 
     </header>
     <div class="container">
     <div id="usermsg" ></div>
-    <form id="frm_users">
-      [% ro = 'readonly' %]
-      [% IF session.usergroup == 'admin' %]
-      [% ro = '' %]
-      [% END %]
-         [% fieldhidden('id','users','ident') %]
-         [% fieldeditbox("username","users","Login / E-Mail",'twothird','','') %]
-         
-         [% fieldcheckbox("blocked","users","compte blocké",'third',ro,'1') %]
-         
-          [% fieldeditbox('surname','users','Nom','half','') %]
-          [% fieldeditbox('prename','users','Prénom','half','') %]
-          [% fieldeditbox('job','users','Position','half','') %]
-          [% fieldeditbox('phone','users','Téléphone','half','') %]
-          
-          [% fieldselectbox('id_company','users','Entreprise','',ro,'','') %]
-          [% fieldselectbox("id_usergroup","users","Accès Groupe",'',ro,'') %]
-          [% fieldmultiselectbox("schemaaccess","users","Accès Entreprise",'',ro,'') %]
-         
-      </form>
+    
     </div>
     <footer>
         <button class="button orange border" id="btnnewpasswd" onclick="users.sendnewpassword(); return false;">Envoyer mot de passe</button>
index 33fafaf..ad68bef 100644 (file)
@@ -2,13 +2,12 @@ var schemata = "public";
 var currentview = null;
 function initpage(){
   users.inittable();
-  module.viewpanel("tbl_users");
+  //module.viewpanel("tbl_users");
 }
 
 var users ={
   tbl: null,
   current_user: "[% session.id %]",
-  name: "users",
   choices:{"schemaaccess":null},
   initform: function(){
     users.choices["id_company"] = new Choices('#id_company',{
@@ -35,52 +34,60 @@ var users ={
   },
   inittable: function(){
     users.initform();
-    users.tbl = new Tabulator("#tbl_" + users.name, {
-      headerFilterPlaceholder: "filter...",
-      height: "92vh",
-      layout: "fitData",
+    users.tbl = new Tabulator("#tbl_" + "users", {
+      height: "calc(100vh - 120px)",
+      layout: "fitDataStretch",
       selectable: 1,
+      rowClick:function(e, row){
+        console.log("Filter selected");
+        let fsel = users.tbl.getSelectedData();
+        console.log(fsel);
+        users.edit();
+        //invoices.gettbldata(fsel);
+        //invoices.getsums(fsel);
+      },
       rowContext:function(e, row){ e.preventDefault();},
     columns:[
-    {title:"Entreprise", field:"company",headerFilter:"input"},  
-    {title:"Nom", field:"surname",headerFilter:"input"},
-    {title:"Prénom", field:"prename",headerFilter:"input"},
-    {title:"Accès",field:"groupname",headerFilter:"input"},
-    {title:"Position",field:"job"},
-    {title:"Téléphone",field:"phone"},
-    {title:"E-mail",field:"username"},
-    {title:"Bloqué", field:"blocked",formatter:"tickCross",align:"center",  
-    formatterParams:{allowEmpty:true,allowTruthy:true,tickElement:'<span style="color: green;">&#10004;</span>'}},
+    // {title:"Entreprise", field:"company",headerFilter:"input"},  
+    {title:"Nom", field:"surname",resizable: false},
+    {title:"Prénom", field:"prename",resizeable: false},
+    // {title:"Accès",field:"groupname",headerFilter:"input"},
+    // {title:"Position",field:"job"},
+    // {title:"Téléphone",field:"phone"},
+    // {title:"E-mail",field:"username"},
+    // {title:"Bloqué", field:"blocked",formatter:"tickCross",align:"center",  
+    // formatterParams:{allowEmpty:true,allowTruthy:true,tickElement:'<span style="color: green;">&#10004;</span>'}},
     ],
   });
     users.gettbldata();
   },
   gettbldata: function(){
-    console.log("[% session.usergroup %]");
-    [% IF session.usergroup == 'admin' %]
-      req.reqdata("POST", "db.cgi", { "get":  users.name + "list","schemata":schemata}, users.loadtbldata);
-    [% ELSE %]
-      req.reqdata("POST", "db.cgi", { "get":  users.name + "list","schemata":schemata,"filter":"id_company=(select id from "+ schemata+".users where id='[% session.id %]')"}, users.loadtbldata);
-    [% END %]
+    //console.log("[% session.usergroup %]");
+    // [% IF session.usergroup == 'admin' %]
+    //   req.reqdata("POST", "db.cgi", { "get":  "users" + "list","schemata":schemata}, users.loadtbldata);
+    // [% ELSE %]
+      var ds = document.getElementById('schemata').value;
+      req.reqdata("POST", "db.cgi", { "get":  "userslist","schemata":schemata,"filter":"schemaaccess='" + ds + "'"}, users.loadtbldata);
+    // [% END %]
   },
   loadtbldata: function(data){
     if (data && data.sqldata) { users.tbl.setData(data.sqldata);}
   },
   add: function(){
     cleanform2("users",users.choices);
-    module.viewdialog(users.name);
+    module.viewdialog("users");
   },
   edit: function(){
     var udata = users.tbl.getSelectedData();
     if (udata[0]) {
-      cleanform2(users.name,users.choices);
-      req.reqdata("POST", "db.cgi", { "get":  users.name + "data","schemata":schemata, "filter":"id='" + udata[0].id + "'"}, users.fillform);
-      module.viewdialog(users.name);
+      cleanform2("users",users.choices);
+      req.reqdata("POST", "db.cgi", { "get":  "users" + "data","schemata":schemata, "filter":"id='" + udata[0].id + "'"}, users.fillform);
+      //module.viewdialog("users");
     }
   },
   fillform: function(data){
     if (data && data.sqldata){
-      fillformbydataclass2(users.name,users.choices,data.sqldata[0]);
+      fillformbydataclass2("users",users.choices,data.sqldata[0]);
     }
   },
   remove: function(){
@@ -184,5 +191,8 @@ var users ={
     users.gettbldata();
     document.getElementById('dlg_users').style.display='none';
     formsaved(null);      
+  },
+  viewtable: function(){
+    users.gettbldata();
   }
 }
diff --git a/website/app b/website/app
deleted file mode 120000 (symlink)
index 1975bba..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../../pot_lu/webapp
\ No newline at end of file