v202011201536 t1.0.22 1.0.22
authorKilian Saffran <ksaffran@dks.lu>
Fri, 20 Nov 2020 14:36:55 +0000 (15:36 +0100)
committerKilian Saffran <ksaffran@dks.lu>
Fri, 20 Nov 2020 14:36:55 +0000 (15:36 +0100)
30 files changed:
ChangeLog.md [new file with mode: 0644]
app/data/schemata/defaultcompany.schema.sql
app/db.cgi
app/index.cgi
app/lib/POT/Company.pm
app/lib/dksdb.pm
app/tmpl/index.tt
app/tmpl/login.tt
app/tmpl/module/admin/companies.js
app/tmpl/module/admin/dlg_dataset.tt
app/tmpl/module/admin/dlg_users.tt
app/tmpl/module/admin/schemadataset.js
app/tmpl/module/admin/sectors.js
app/tmpl/module/admin/users.js
app/tmpl/module/index.tt
desktopapp/package.json
dev/conf.ps1
dev/db/potlu2_db.newcompanyschema.pg.schema.sql
dev/gendefaultschema.sh
doc/documentation_utilisateur.docx [new file with mode: 0644]
doc/images/install_1.png [new file with mode: 0644]
doc/images/install_2.png [new file with mode: 0644]
doc/images/install_2_1.png [new file with mode: 0644]
doc/images/install_3.png [new file with mode: 0644]
doc/images/install_4.png [new file with mode: 0644]
doc/images/wininstallmsg_1.png [new file with mode: 0644]
doc/images/wininstallmsg_2.png [new file with mode: 0644]
install/create_setup_windows.ps1 [new file with mode: 0644]
install/update_app.sh
install/windows/pot_setup_64bit.iss

diff --git a/ChangeLog.md b/ChangeLog.md
new file mode 100644 (file)
index 0000000..3ccec05
--- /dev/null
@@ -0,0 +1,4 @@
+# Journal des Modifications\r
+\r
+## Version 1.0.21\r
+  - **BugFix**: Correction du calcul des heures contractuelles dans les périodes\r
index 2d0d2ae..14f8131 100644 (file)
@@ -17,7 +17,9 @@ CREATE TABLE %%NEWSCHEMA%%.reportperiod (
     id_parentreportperiod text,
     id text DEFAULT public.getuuid() NOT NULL,
     modified timestamp without time zone DEFAULT now(),
-    created timestamp without time zone DEFAULT now()
+    created timestamp without time zone DEFAULT now(),
+    periodtype text,
+    subinterval text
 );
 
 CREATE TABLE %%NEWSCHEMA%%.staff (
@@ -37,7 +39,8 @@ CREATE TABLE %%NEWSCHEMA%%.staff (
     id text DEFAULT public.getuuid() NOT NULL,
     isdeleted boolean,
     modified timestamp without time zone DEFAULT now(),
-    created timestamp without time zone DEFAULT now()
+    created timestamp without time zone DEFAULT now(),
+    istimetrackenabled boolean
 );
 
 CREATE TABLE %%NEWSCHEMA%%.staffcontract (
@@ -251,29 +254,29 @@ ALTER TABLE ONLY %%NEWSCHEMA%%.workplans
 ALTER TABLE ONLY %%NEWSCHEMA%%.worktimes
     ADD CONSTRAINT worktimes_pkey PRIMARY KEY (id);
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_reportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.reportperiod FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_reportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.reportperiod FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staff BEFORE UPDATE ON %%NEWSCHEMA%%.staff FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staff BEFORE UPDATE ON %%NEWSCHEMA%%.staff FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffcontract BEFORE UPDATE ON %%NEWSCHEMA%%.staffcontract FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffcontract BEFORE UPDATE ON %%NEWSCHEMA%%.staffcontract FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffgroups BEFORE UPDATE ON %%NEWSCHEMA%%.staffgroups FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffgroups BEFORE UPDATE ON %%NEWSCHEMA%%.staffgroups FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperiod FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperiod FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperioddays BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperioddays FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperioddays BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperioddays FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_timetracker BEFORE UPDATE ON %%NEWSCHEMA%%.timetracker FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_timetracker BEFORE UPDATE ON %%NEWSCHEMA%%.timetracker FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancydays BEFORE UPDATE ON %%NEWSCHEMA%%.vacancydays FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancydays BEFORE UPDATE ON %%NEWSCHEMA%%.vacancydays FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancytypes BEFORE UPDATE ON %%NEWSCHEMA%%.vacancytypes FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancytypes BEFORE UPDATE ON %%NEWSCHEMA%%.vacancytypes FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplandays BEFORE UPDATE ON %%NEWSCHEMA%%.workplandays FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplandays BEFORE UPDATE ON %%NEWSCHEMA%%.workplandays FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplans BEFORE UPDATE ON %%NEWSCHEMA%%.workplans FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplans BEFORE UPDATE ON %%NEWSCHEMA%%.workplans FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_worktimes BEFORE UPDATE ON %%NEWSCHEMA%%.worktimes FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_worktimes BEFORE UPDATE ON %%NEWSCHEMA%%.worktimes FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
 ALTER TABLE ONLY %%NEWSCHEMA%%.staffcontract
     ADD CONSTRAINT staffcontract_fk FOREIGN KEY (id_staff) REFERENCES %%NEWSCHEMA%%.staff(id);
index 1626b5f..dbc2b86 100644 (file)
@@ -240,6 +240,7 @@ if (($cgi->request_method() eq "GET") || ($cgi->request_method() eq "POST")){
       my $type = "upd";
       my $table = $p->{table};
       delete $p->{table};
+
       my $schema = "public";
       if (exists($p->{schemata})){$schema = $db->securetext($p->{schemata});}
       foreach my $px (keys(%{$p})){
@@ -271,7 +272,7 @@ if (($cgi->request_method() eq "GET") || ($cgi->request_method() eq "POST")){
       my $cp = POT::Company->new({db => $db});
       # print STDERR $p->{fn}.": Company\n";
       if ($p->{fn} eq "installschema"){
-        my $linkid = $cp->InstallCompanySchema($db->securetext($p->{schemaname}),$db->securetext($p->{datasetname}),$db->securetext($p->{sector}));
+        my $linkid = $cp->InstallCompanySchema($db->securetext($p->{schemaname}),$db->securetext($p->{datasetname}),$db->securetext($p->{sector}),$db->securetext($p->{periodtype}),$db->securetext($p->{reportperiodunit}),$db->securetext($p->{reportperiodlength}),$db->securetext($p->{payedpauses}));
         $html->{result}->{link} = $linkid;
       }elsif ($p->{fn} eq "getfreeschema"){
         $html->{result}->{newschema} = $cp->checkFreeSchema($db->securetext($p->{datasetname}));
index 61dfee2..d59828b 100644 (file)
@@ -32,7 +32,11 @@ if ($vars->{ua} !~ /^POT/){
 $vars->{realpath} = $cgi->url({-absolute=>1});
 $vars->{filepath} = substr($cgi->url({-absolute=>1}),length($vars->{basepath})+1); 
 $vars->{baseurl} = $cgi->url({-base=>1}).'/'.$vars->{basepath};
-#$vars->{siteurl} = $cgi->url({-base=>1}).'/'.$vars->{basepath};
+$vars->{siteurl} = $cgi->url({-base=>1});
+#$vars->{mode} = $vars->{siteurl};
+if ($vars->{siteurl} ne "https://app.plandutravail.lu"){
+  $vars->{mode} = $vars->{siteurl};
+}
 
 
 if ($vars->{filepath} ne ""){
index d2b2417..5d71950 100644 (file)
@@ -35,6 +35,9 @@ sub InstallCompanySchema(){
   my $datasetname = shift;
   my $sector = shift;
   my $periodtype = shift;
+  my $reportperiodunit = shift;
+  my $reportperiodlength = shift;
+  my $payedpauses = shift;
   my $companyid = "";
   #$self->{db}->securetext($p->{schemaname})
   my $schemasql = "select count(*) as cnt from information_schema.schemata where schema_name='".$schemaname."';";
@@ -53,10 +56,14 @@ sub InstallCompanySchema(){
       $self->{db}->exec("INSERT INTO ".$schemaname.".staffgroups (id,groupname) VALUES ('cuisine','Cuisine');");
       $self->{db}->exec("INSERT INTO ".$schemaname.".staffgroups (id,groupname) VALUES ('reception','Reception');");
       $self->{db}->exec("INSERT INTO ".$schemaname.".staffgroups (id,groupname) VALUES ('administration','Administration');");
+    } else {
+      $self->{db}->exec("INSERT INTO ".$schemaname.".staffgroups (id,groupname,isdefault) VALUES ('administration','Administration',true);");
     }
     $self->{db}->exec("INSERT INTO ".$schemaname.".vacancytypes (vacancyname, isworktime, isfreetime, color, legend) SELECT vacancyname, isworktime, isfreetime, color, legend FROM public.vacancytypes;");
     $self->{db}->exec("INSERT INTO ".$schemaname.".vacancydays (daydate, vacancyname) SELECT daydate, vacancyname FROM public.vacancydays where date_part('year',daydate)::int4 >=  date_part('year',CURRENT_DATE)::int4;");
-    #$self->{db}->exec("INSERT INTO ")
+    my $cmpupd = "UPDATE companies set company='".$datasetname."',periodtypes='".$periodtype."', subinterval='1 ".$reportperiodunit."', sector='".$sector."',reportperiodlength='".$reportperiodlength."',reportperiodunit='".$reportperiodunit."',payedpauses=".$self->{db}->value($payedpauses)."  WHERE id='".$companyid."';";
+    $self->{db}->exec($cmpupd);
+    $self->updateSchemaWorktimes($schemaname,$sector,$periodtype);
   }
   return $companyid;  
 }
@@ -126,10 +133,21 @@ sub getSectors(){
 sub getSectorData(){
   my $self = shift;
   my $schema = shift;
-  my $sql = "SELECT id, sector, startdate, enddate, defaultdayhours, maxdayhours, defaultweekhours, maxweekhours, maxinterruptionhours, isdefault, mindailyrecuperation, periodtype, maxhourspercents FROM ".$schema.".sectorworktime";
+  my $sql = "SELECT * FROM ".$schema.".sectorworktime";
   return $self->{db}->querysorted($sql);
 }
 
+#TODO: add button for adding a year
+sub addSectorWorktimeYear(){
+  my $self = shift;
+  my $sql = "INSERT INTO public.sectorworktime
+(id, sector, startdate, enddate, defaultdayhours, maxdayhours, defaultweekhours, maxweekhours, maxinterruptionhours, isdefault, mindailyrecuperation, maxhourspercents, periodtype, description)
+SELECT getuuid() as id, sector, date(startdate + interval '1 year') as startdate, date(enddate + interval '1 year') as enddate , defaultdayhours, maxdayhours, defaultweekhours, maxweekhours, maxinterruptionhours, isdefault, mindailyrecuperation, maxhourspercents, periodtype, description
+FROM public.sectorworktime where startdate is not null and date_part('year',startdate) in (select max(date_part('year',startdate))  from public.sectorworktime);";
+  $self->{db}->exec($sql);
+  return 1;
+}
+
 sub getCompanySize(){
   my $self = shift;
   my $sql = "SELECT DISTINCT sectorworktime.periodtype FROM public.sectorworktime;";
@@ -175,5 +193,20 @@ sub getVacancyTypes(){
   $self->{db}->querysorted($sql);
 }
 
+#TODO: add button for sync to schemas
+sub updateSchemaWorktimes(){
+  my $self = shift;
+  my $schema = shift;
+  my $sector = shift;
+  my $periodtype= shift;
+  my $updsql = "INSERT INTO ".$schema.".worktimes
+(startdate, enddate, defaultdayhours, maxdayhours, defaultweekhours, maxweekhours, maxinterruptionhours, isdefault, id, mindailyrecuperation, maxhourspercents)
+select startdate, enddate, defaultdayhours, maxdayhours, defaultweekhours, maxweekhours, maxinterruptionhours, isdefault, id, mindailyrecuperation, maxhourspercents from public.sectorworktime gwk   
+where sector='".$sector."' and periodtype='".$periodtype."' and (startdate is null or date_part('year',startdate)>=date_part('year',current_date))
+on conflict on constraint worktimes_pkey 
+do update set
+startdate=excluded.startdate, enddate=excluded.enddate, defaultdayhours=excluded.defaultdayhours, maxdayhours=excluded.maxdayhours, defaultweekhours=excluded.defaultweekhours, maxweekhours=excluded.maxweekhours, maxinterruptionhours=excluded.maxinterruptionhours, isdefault=excluded.isdefault,  mindailyrecuperation=excluded.mindailyrecuperation, maxhourspercents=excluded.maxhourspercents;";
+}
+
 
 1;
\ No newline at end of file
index 60cf28b..0d40d53 100644 (file)
@@ -20,7 +20,7 @@ sub new {
     my $class = shift;
     my $p = shift;
     my $self = bless {}, $class;
-    $self->{debug} = 0;
+    $self->{debug} = 1;
     $self->{dbh} = DBI->connect($p->{dsn},$p->{dbuser},$p->{dbpassword},{PrintError=>1,RaiseError=>1,AutoCommit=>1})  or return "query Connection Error!".$!;
     return $self;
 }
@@ -206,7 +206,13 @@ sub create_ddl_insert(){
                        my $v = $fields->{$tb}->{$c};
                        $v =~ s/'/''/g;
                        push (@sqlcol,$c);
-                       if ($v eq ''){
+      if (ref $v eq "ARRAY"){
+        $v = "'".JSON::PP::encode_json($v)."'";
+        if ($v eq "'[]'"){
+          $v= 'null';
+        }
+      }
+                       elsif ($v eq ''){
                                $v = 'null';
                        } else {
                                $v = "'".$v."'";
@@ -255,11 +261,12 @@ sub create_ddl_update(){
           $c = 'jsonb_set(to_jsonb('.$jp[0].'),\'{"'.$jp[1].'"}\',\''.$v.'\')::json';
           push (@sqlupd,$jp[0]."=".$c);  
         }else {
-          if ($v eq ''){
-                                         $v = 'null';
-                                 } else {
-                                         $v = "'".$v."'";
-                                 }
+          if (ref $v eq "ARRAY"){
+            $v = "'".JSON::PP::encode_json($v)."'";
+            if ($v eq "'[]'"){$v= 'null';}
+          }
+                           elsif ($v eq ''){$v = 'null';} 
+          else {$v = "'".$v."'";}
           push (@sqlupd,$c."=".$v);
         }
                                
index 4c19fa1..f6a7105 100644 (file)
@@ -1,11 +1,11 @@
-[% appversion='1.0.21' %]
+[% appversion='1.0.22' %]
 [% minify = '' %]
 <!DOCTYPE html>
 <html lang="fr">
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
-  <title>POT - Plan d'Organtisation du Travail</title>
+  <title>POT - Plan d'Organtisation du Travail[% IF mode %][% " - ${mode}" %][% END %]</title>
   <meta name="language" content="fr">
     <meta name="robots" content="noindex,nofollow">
     <!-- <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
index ea51937..c7bc810 100644 (file)
@@ -7,7 +7,7 @@
 
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
-  <title>POT - Plan d'organisation du travail</title>
+  <title>POT - Plan d'organisation du travail [% IF mode %][% " - ${mode}" %][% END %]</title>
   <meta name="language" content="fr">
     <meta name="robots" content="noindex,nofollow">
     <link rel="apple-touch-icon" sizes="57x57" href="img/favicon/apple-icon-57x57.png?v=[% appversion %]">
index 563038f..4640be6 100644 (file)
@@ -3,7 +3,7 @@ schemata = "public";
 currentview = null;
 
 let periodunits = [{"value":"week","text":"Semaine(s)"},{"value":"month","text":"Mois"}]; 
-let periodtypes = [{"value":"1-14","text":"1-14"},{"value":"15-49","text":"15-49"},{"value":">=50","text":">=50"}]; 
+let periodtypes = [{"value":"","text":"pas défini"},{"value":"1-14","text":"1-14"},{"value":"15-49","text":"15-49"},{"value":">=50","text":">=50"}]; 
 function initpage(){
   companies.inittable();
   staffgroups.inittable();
index c841b1a..30b51ee 100644 (file)
@@ -6,32 +6,59 @@
       <h2>DataSet</h2>
     </header>
     <div class="container">
+      <div id="datasetmsg"></div>
       <form id="frm_dataset">
       
          
         <div class="row" style="margin-top: 5px;">
         <div class="row">
           <div class="cell" style="width: 300px;">
+            <label for="newdataset" class="label">Nom de l'unité/entreprise</label>
             <input type="text" class="input  data_dataset  " id="newdataset" data-column="newdataset"  data-table="dataset" data-id="" name="dataset_newdataset" value=""   onblur="schemadataset.checkschema()"/>
-        <label for="newdataset" class="label">Nom de l'unité/entreprise</label>
+        
           </div>
         </div>
         <div class="row">
           <div class="cell" style="width: 300px;">
+            <label for="newschemata" class="label">Schemata (base de données)</label>
             <input type="text" class="input  data_dataset readonly " id="newschemata" data-column="newschemata"  data-table="dataset" data-id="" name="dataset_newschemata" value=""  readonly />
-        <label for="newschemata" class="label">Schemata (base de données)</label>
+        
           </div>
         </div>
         <div class="row">
           <div class="cell" style="width: 150px;">
+            <label for="newsector" class="label ">secteur</label>
             <select class="select data_dataset " id="newsector" data-column="newsector"  data-table="dataset" data-id="" value="" name="dataset_newsector"  >
         </select>
-        <label for="newsector" class="label ">secteur</label>
+        
           </div>
           <div class="cell" style="width: 150px;">
+            <label for="periodtype" class="label ">Nombre de salariés</label>
             <select class="select data_dataset " id="periodtype" data-column="periodtype"  data-table="dataset" data-id="" value="" name="dataset_periodtype"  >
         </select>
-        <label for="periodtype" class="label ">Nombre de salariés</label>
+        
+          </div>
+        </div>
+
+        <div class="row">
+          <div class="cell container" style="width: 60px;">
+            <label for="dataset_reportperiodlength" class="label">Durée</label>
+            <input type="number" class="input text-align-right  right data_dataset  " id="dataset_reportperiodlength" pattern="" name="dataset_reportperiodlength" data-column="reportperiodlength"  data-table="dataset" data-id="" value="" min="1" max="16" step="1" />
+          
+          </div>
+          <div class="cell container" style="width: 120px;">
+            <label for="dataset_reportperiodunit" class="label ">Unité</label>
+            <select class="select data_dataset " id="dataset_reportperiodunit" data-column="reportperiodunit"  data-table="dataset" data-id="" value="" name="dataset_reportperiodunit"  >
+          </select>
+          
+          </div>
+          <div class="cell container" style="width: 50px;">
+            <label for="dataset_payedpauses" class="label ">Pauses payées</label>
+            <select class="select data_dataset " id="dataset_payedpauses" data-column="payedpauses"  data-table="dataset" data-id="" value="" name="dataset_payedpauses"  >
+              <option value="">Non</option>
+              <option value="1">Oui</option>
+          </select>
+          
           </div>
         </div>
       </form>
index f1d6569..fe72203 100644 (file)
@@ -9,10 +9,10 @@
     <div class="container">
       <div id="usermsg"></div>
       <form id="frm_users" name="frm_users">
-        <input type="hidden" class="data_users" id="id_users" name="ident_users_id_users" value="">
+        <input type="hidden" class="data_users" id="id_users" name="ident_users_id_users" value="" data-column="id" data-table="users">
         <div class="row">
             <div class="cell" style="width: 300px;">
-              <input type="text" class="input  data_users" id="username" data-column="username"  data-table="users" data-id="" name="users_username" value=""  />
+              <input type="text" class="input  data_users" id="username" data-column="username"  data-table="users" data-id="" name="users_username" value=""/>
         <label for="users_username" class="label">Login</label>
             </div>
             <div class="cell" style="margin-left: 10px;width: 50px;">
index 36cb572..4af0601 100644 (file)
@@ -1,6 +1,6 @@
 
 let schemadataset= {
-  choices: {"newsector":null,"periodtype":null},
+  choices: {"newsector":null,"periodtype":null,"dataset_reportperiodunit":null,"dataset_payedpauses":null},
   initform: function(){
     schemadataset.choices["newsector"] = new SlimSelect({
       select: "#newsector",
@@ -10,8 +10,17 @@ let schemadataset= {
       select: "#periodtype",
       showSearch: false
     });
+    schemadataset.choices["dataset_reportperiodunit"] = new SlimSelect({
+      select: "#dataset_reportperiodunit",
+      showSearch: false
+    });
+    schemadataset.choices["dataset_payedpauses"] = new SlimSelect({
+      select: "#dataset_payedpauses",
+      showSearch: false
+    });
     schemadataset.getsectors();
     schemadataset.getperiodtypes();
+    dataform.fillselectlist(schemadataset.choices["dataset_reportperiodunit"],periodunits,'value','text');
   },
   add: function(){
     dataform.cleanform2("dataset",{});
@@ -39,15 +48,31 @@ let schemadataset= {
     });
   },
   save: function(){
+    let newdata = {"fn":"installschema"};
+    newdata["schemaname"] = document.getElementById("newschemata").value;
+    newdata["datasetname"] = document.getElementById("newdataset").value;
+    newdata["sector"] = schemadataset.choices["newsector"].selected();
+    newdata["periodtype"] = schemadataset.choices["periodtype"].selected();
+    newdata["reportperiodunit"] = schemadataset.choices["dataset_reportperiodunit"].selected();
+    newdata["reportperiodlength"] = document.getElementById("dataset_reportperiodlength").value;
+    newdata["payedpauses"] = schemadataset.choices["dataset_payedpauses"].selected();
+    //console.log("newdatasetdata",newdata);
+    for (var n in newdata) {
+      if ((n != "payedpauses") && ((newdata[n] == null) || (newdata[n] == "") )){
+        document.getElementById("datasetmsg").innerHTML='<div class="panel error-panel">tous les champs sont requis!</div>';
+        return false;
+      } 
+    }
     document.getElementById('dlg_dataset').style.display='none';
     showdataloaddlg('','<div class="xxlarge">Attendez s.v.p.!</div>');
-    postData("db.cgi",{"fn":"installschema","schemaname":document.getElementById("newschemata").value,"datasetname":document.getElementById("newdataset").value,"sector":schemadataset.choices["newsector"].selected(),"periodtype":schemadataset.choices["periodtype"].selected()}).then(data => {
+    postData("db.cgi",newdata).then(data => {
       companies.gettbldata();
       closedataloaddlg();
     }).catch(e => {
       companies.gettbldata();
       closedataloaddlg();
     });
+    return false;
   }, 
   getsectors: function(){
     postData("db.cgi",{"get":"sectors","schemata":"public"}).then(data => {
index 04c6bbf..9e4c1e4 100644 (file)
@@ -22,15 +22,16 @@ let sector ={
       columns: [
         { title: "secteur",  field: "sector",headerFilter:"input",headerSort: true},
         { title: "nbr. salariés",  field: "periodtype",headerFilter:"input",headerSort: true},
-        { title: "début",  field: "startdate",headerSort: true,formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""}},
-        { title: "fin",  field: "enddate",headerSort: true,formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""}},
+        { title: "début",  field: "startdate",headerFilter:"input",headerSort: true,sorter:"date", sorterParams:{format:"YYYY-MM-DD",alignEmptyValues:"bottom"},formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""}},
+        { title: "fin",  field: "enddate",headerFilter:"input",headerSort: true,sorter:"date", sorterParams:{format:"YYYY-MM-DD",alignEmptyValues:"bottom"},formatter:"datetime",formatterParams:{inputFormat:"YYYY-MM-DD",outputFormat:"DD.MM.YYYY",invalidPlaceholder:""}},
         { title: "max heures/jour",  field: "maxdayhours",headerSort: false,formatter:timeFormatter},
         { title: "H/Sem.",  field: "defaultweekhours",headerSort: false,formatter:timeFormatter},
         { title: "max heures/semaine",  field: "maxweekhours",headerSort: false,formatter:timeFormatter},
         { title: "max coupure",  field: "maxinterruptionhours",headerSort: false,formatter:timeFormatter},
         { title: "min h. libres<br/>quotidienne", field: "mindailyrecuperation",headerSort: false,formatter:timeFormatter},
         { title: "standard",  field: "isdefault",headerSort: false,formatter:"tickCross",hozAlign:"center",  
-        formatterParams:{allowEmpty:true,allowTruthy:true,tickElement:'<span>&#10004;</span>'}}
+        formatterParams:{allowEmpty:true,allowTruthy:true,tickElement:'<span>&#10004;</span>'}},
+        { title: "Description", field:"description" ,headerSort: false},
       ]
   });
     sector.gettbldata();
index 7d8defd..b2685c2 100644 (file)
@@ -58,6 +58,12 @@ let users ={
   },
   add: function(){
     document.getElementById("username").disabled = false;
+    document.getElementById("username").classList.remove("readonly");
+    users.tbl.selectRow();
+    let udata = users.tbl.getSelectedData();
+    if (udata[0]){
+      users.tbl.deselectRow(udata[0]["id"]);
+    }
     dataform.cleanform2("users",users.choices);
     users.getUserStaffGroups();
     app.viewdialog("users");
@@ -65,7 +71,11 @@ let users ={
   edit: function(){
     let udata = users.tbl.getSelectedData();
     if (udata[0]) {
+      udata[0]["id_users"]=udata[0]["id"];
+
+      console.log("userdata edit",udata);
       document.getElementById("username").disabled = true;
+      document.getElementById("username").classList.add("readonly");
       users.getUserStaffGroups();
       dataform.cleanform2("users",users.choices);
       postData("db.cgi",{ "get":  "user","id": udata[0].id}).then(data => {
@@ -230,11 +240,16 @@ let users ={
     flds["schemata"]="public";
     flds["fn"] ="saveform";
     flds["table"]="users";
-    flds["ident_users_id"] = flds["ident_users_id_users"];
+    let udata = users.tbl.getSelectedData();
+    if (udata[0]){
+      flds["ident_users_id"] = udata[0]["id"];
+    }
+    delete flds["users_id"];
     delete flds["null"]; 
     delete flds["ident_users_id_users"];
-    //console.log(flds);
+    console.log("userdata",flds);
     postData("db.cgi",flds).then(data2 => {
+      console.log("data returned",data2);
       users.gettbldata();
       document.getElementById('dlg_users').style.display='none';
       dataform.formsaved(null); 
index c7fe00d..c71b0e1 100644 (file)
@@ -30,7 +30,7 @@
     <div class="bar">
       <a class="bar-item bodybtn" href="[% abspath %]company.html"><span class="icon icon-shop" style="font-size: 24px;"/></span>Entreprise</a>
       <a class="bar-item bodybtn" href="[% abspath %]workplans.html"><span class="icon icon-template" style="font-size: 24px;"/></span>Modèles hebdomaires</a>
-      <a class="bar-item bodybtn right" target="_blank" href="[% abspath %]/cgv/cgv.pdf"><span class="icon icon-license" style="font-size: 24px;"/></span>Conditions générales</a>
+      <a class="bar-item bodybtn right" target="_blank" href="[% abspath %]/cgv/cgv.pdf"><span class="icon icon-aggrement" style="font-size: 24px;"/></span>Conditions générales</a>
     </div>
   </div>
   [% IF (session.usergroup == 'admin') %]
index 32fcbe3..1cb8573 100644 (file)
@@ -1,6 +1,6 @@
 {
   "name": "POT",
-  "version": "1.0.21",
+  "version": "1.0.22",
   "description": "plan d'organisation du travail",
   "main": "main.js",
   "scripts": {
index 04a61da..25522b7 100644 (file)
@@ -15,6 +15,6 @@ $TMPDIR=$PSScriptRoot + "/tmp"
 if (-not (Test-Path $TMPDIR)) { 
   New-Item -ItemType directory -Path $TMPDIR
 }
-$PROJECTDIR= Split-Path -Path PSScriptRoot
+$PROJECTDIR= Split-Path -Path $PSScriptRoot
 $APPDIR= $PROJECTDIR +"/app"
 $WEBDIR= $PROJECTDIR +"/website"
\ No newline at end of file
index 2d0d2ae..14f8131 100644 (file)
@@ -17,7 +17,9 @@ CREATE TABLE %%NEWSCHEMA%%.reportperiod (
     id_parentreportperiod text,
     id text DEFAULT public.getuuid() NOT NULL,
     modified timestamp without time zone DEFAULT now(),
-    created timestamp without time zone DEFAULT now()
+    created timestamp without time zone DEFAULT now(),
+    periodtype text,
+    subinterval text
 );
 
 CREATE TABLE %%NEWSCHEMA%%.staff (
@@ -37,7 +39,8 @@ CREATE TABLE %%NEWSCHEMA%%.staff (
     id text DEFAULT public.getuuid() NOT NULL,
     isdeleted boolean,
     modified timestamp without time zone DEFAULT now(),
-    created timestamp without time zone DEFAULT now()
+    created timestamp without time zone DEFAULT now(),
+    istimetrackenabled boolean
 );
 
 CREATE TABLE %%NEWSCHEMA%%.staffcontract (
@@ -251,29 +254,29 @@ ALTER TABLE ONLY %%NEWSCHEMA%%.workplans
 ALTER TABLE ONLY %%NEWSCHEMA%%.worktimes
     ADD CONSTRAINT worktimes_pkey PRIMARY KEY (id);
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_reportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.reportperiod FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_reportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.reportperiod FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staff BEFORE UPDATE ON %%NEWSCHEMA%%.staff FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staff BEFORE UPDATE ON %%NEWSCHEMA%%.staff FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffcontract BEFORE UPDATE ON %%NEWSCHEMA%%.staffcontract FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffcontract BEFORE UPDATE ON %%NEWSCHEMA%%.staffcontract FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffgroups BEFORE UPDATE ON %%NEWSCHEMA%%.staffgroups FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffgroups BEFORE UPDATE ON %%NEWSCHEMA%%.staffgroups FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperiod FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperiod BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperiod FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperioddays BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperioddays FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_staffreportperioddays BEFORE UPDATE ON %%NEWSCHEMA%%.staffreportperioddays FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_timetracker BEFORE UPDATE ON %%NEWSCHEMA%%.timetracker FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_timetracker BEFORE UPDATE ON %%NEWSCHEMA%%.timetracker FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancydays BEFORE UPDATE ON %%NEWSCHEMA%%.vacancydays FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancydays BEFORE UPDATE ON %%NEWSCHEMA%%.vacancydays FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancytypes BEFORE UPDATE ON %%NEWSCHEMA%%.vacancytypes FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_vacancytypes BEFORE UPDATE ON %%NEWSCHEMA%%.vacancytypes FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplandays BEFORE UPDATE ON %%NEWSCHEMA%%.workplandays FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplandays BEFORE UPDATE ON %%NEWSCHEMA%%.workplandays FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplans BEFORE UPDATE ON %%NEWSCHEMA%%.workplans FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_workplans BEFORE UPDATE ON %%NEWSCHEMA%%.workplans FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
-CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_worktimes BEFORE UPDATE ON %%NEWSCHEMA%%.worktimes FOR EACH ROW EXECUTE PROCEDURE %%NEWSCHEMA%%.trg_before_upd_schematable();
+CREATE TRIGGER trg_%%NEWSCHEMA%%_before_upd_worktimes BEFORE UPDATE ON %%NEWSCHEMA%%.worktimes FOR EACH ROW EXECUTE FUNCTION %%NEWSCHEMA%%.trg_before_upd_schematable();
 
 ALTER TABLE ONLY %%NEWSCHEMA%%.staffcontract
     ADD CONSTRAINT staffcontract_fk FOREIGN KEY (id_staff) REFERENCES %%NEWSCHEMA%%.staff(id);
index a29457e..3698170 100644 (file)
@@ -21,10 +21,11 @@ fi
 # #export PGPASSWORD="r2btTTRfuJz4whez"
 # #echo ${CALLDIR}
 
-echo "export ${DBDEVHOST} ${DBNAME} ${DBSCHEMA}" 
-export PGPASSWORD="dMY8xGB6cBLzrDGE"
-pg_dump -h ${DBDEVHOST} -U ${DBUSER} -n ${DBSCHEMA} -w -O -x -s ${DBNAME} > ${CALLDIR}'/db/'${DBNAME}'.'${DBSCHEMA}'.pg.schema.sql'
-cat ${CALLDIR}"/db/"${DBNAME}"."${DBSCHEMA}".pg.schema.sql" | \
+# echo "export ${DBDEVHOST} ${DBNAME} ${DBSCHEMA}" 
+# export PGPASSWORD="dMY8xGB6cBLzrDGE"
+
+#pg_dump -h ${DBDEVHOST} -U ${DBUSER} -n ${DBSCHEMA} -w -O -x -s ${DBNAME} > ${CALLDIR}'/db/'${DBNAME}'.'${DBSCHEMA}'.pg.schema.sql'
+cat ${CALLDIR}"/db/dev/"${DBNAME}"."${DBSCHEMA}".pg.schema.sql" | \
 grep -v -e "^--" | \
 grep -v -e "^SET" | \
 grep -v "AS integer" | \
diff --git a/doc/documentation_utilisateur.docx b/doc/documentation_utilisateur.docx
new file mode 100644 (file)
index 0000000..f29ed59
Binary files /dev/null and b/doc/documentation_utilisateur.docx differ
diff --git a/doc/images/install_1.png b/doc/images/install_1.png
new file mode 100644 (file)
index 0000000..0e82fd7
Binary files /dev/null and b/doc/images/install_1.png differ
diff --git a/doc/images/install_2.png b/doc/images/install_2.png
new file mode 100644 (file)
index 0000000..a827837
Binary files /dev/null and b/doc/images/install_2.png differ
diff --git a/doc/images/install_2_1.png b/doc/images/install_2_1.png
new file mode 100644 (file)
index 0000000..2387b5b
Binary files /dev/null and b/doc/images/install_2_1.png differ
diff --git a/doc/images/install_3.png b/doc/images/install_3.png
new file mode 100644 (file)
index 0000000..60f7a77
Binary files /dev/null and b/doc/images/install_3.png differ
diff --git a/doc/images/install_4.png b/doc/images/install_4.png
new file mode 100644 (file)
index 0000000..0e3c6b5
Binary files /dev/null and b/doc/images/install_4.png differ
diff --git a/doc/images/wininstallmsg_1.png b/doc/images/wininstallmsg_1.png
new file mode 100644 (file)
index 0000000..b07cc1b
Binary files /dev/null and b/doc/images/wininstallmsg_1.png differ
diff --git a/doc/images/wininstallmsg_2.png b/doc/images/wininstallmsg_2.png
new file mode 100644 (file)
index 0000000..feb0e48
Binary files /dev/null and b/doc/images/wininstallmsg_2.png differ
diff --git a/install/create_setup_windows.ps1 b/install/create_setup_windows.ps1
new file mode 100644 (file)
index 0000000..10102b8
--- /dev/null
@@ -0,0 +1,22 @@
+$PROJECTDIR= Split-Path -Path $PSScriptRoot\r
+Write-Host ($PROJECTDIR)\r
+$apppath = $PROJECTDIR + "/desktopapp"\r
+#$reppath = $PROJECTDIR\r
+Set-Location -Path $PROJECTDIR\r
+#$gitargs=@('describe','--tags') \r
+#$lasttag=`git.exe  `\r
+$p=Start-Process -NoNewWindow -FilePath "C:\Program Files\Git\bin\git.exe" -ArgumentList "describe","--tags" -PassThru -Wait -RedirectStandardOutput stdout.txt\r
+$lasttag=Get-Content -Path "stdout.txt"\r
+#$lasttag=$process.StandardOutput.ReadToEnd()\r
+#$process.WaitForExit()\r
+Write-Host $lasttag\r
+Set-Location -Path $PSScriptRoot\r
+Set-Location -Path $apppath\r
+# #& npm run package-win32\r
+ & npm run package-win64\r
+$sd = "/DMySourceDir=" + $PROJECTDIR\r
+$file = $PROJECTDIR + "\\install\\windows\\pot_setup_64bit.iss"\r
+$setupargs= @("/DMyAppVersion=1.0.0",$sd,"/DMySetupName=POT_Setup_64bit.exe",$file) \r
+Start-Process -NoNewWindow -FilePath "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" -PassThru -Wait -ArgumentList $setupargs\r
+# $outputfile=$PROJECTDIR + "/website/downloads/POT_Setup_64bit.exe"\r
+# Start-Process -NoNewWindow -FilePath "C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64\signtool.exe" -ArgumentList "sign","/a","/tr","http://rfc3161timestamp.globalsign.com/advanced","/td SHA256", $outputfile\r
index baf28c4..8849f89 100644 (file)
@@ -39,7 +39,8 @@ unzip -q $tag.zip
 #rm $tag.zip
 #cd "$tag"
 source ${CALLDIR}"/../dev/conf.sh"
-REMTAG=$(ssh -p ${SSHPORT} ${SSHUSER}@${SSHHOST} "cd '${REMOTEAPPFOLDER}' && grep 'appversion =' tmpl/index.tt | tr -cd '[:digit:].'")
+#echo "ssh -p ${SSHPORT} ${SSHUSER}@${SSHHOST} \"cd '${REMOTEAPPFOLDER}' && grep 'appversion=' tmpl/index.tt | tr -cd '[:digit:].'\""
+REMTAG=$(ssh -p ${SSHPORT} ${SSHUSER}@${SSHHOST} "cd '${REMOTEAPPFOLDER}' && grep 'appversion=' tmpl/index.tt | tr -cd '[:digit:].'")
 echo "REMOTE TAG is "${REMTAG}
 
 #if exists remote tag
@@ -48,9 +49,14 @@ REMTAGEXISTS=$(git tag --list | grep ${REMTAG})
 echo "remote tag exists? ->${REMTAGEXISTS}<-"
 if [ "${REMTAGEXISTS}" != "" ]
 then
-  git archive -o ${PROJECTDIR}"/release/${REMOTETAG}.zip" --prefix=${REMOTETAG}"/" ${REMOTETAG}:app
-  cd ${PROJECTDIR}"/release"
-  unzip -q ${REMOTETAG}.zip
+  #cd ${PROJECTDIR}
+  #git archive -o ${PROJECTDIR}"/release/${REMTAG}.zip" --prefix=${REMTAG}"/" ${REMTAG}:app
+  cd ${PROJECTDIR}"/release/"$tag
+  #unzip -q ${REMTAG}.zip
+  echo "get files to update"
+  INSFILES=`git diff ${REMTAGEXISTS} $tag --name-status --no-renames | grep -e "^[A|M]" | awk -F "\t" '{ print $2 }' | grep -e "^app/" | sed -e 's/^app\///g'`
+  echo $INSFILES
+  #diff -qr ${REMTAG} $tag
   #rm ${REMOTETAG}.zip
   #cd ${REMOTETAG}
 else 
index f5300d5..3d23890 100644 (file)
@@ -3,11 +3,11 @@
 \r
 #define MyAppName "POT - Plan d'Organisation du Travail"\r
 #define MyAppVersion "1.0.0"\r
-#define MyAppPublisher "POT s.à r.l."\r
+#define MyAppPublisher "POT s. r.l."\r
 #define MyAppURL "http://pot.dks.lu/"\r
 #define MyAppExeName "pot.exe"\r
-#define MyOutputDir "C:\Users\kilian\Workspace\pot_lu\website\downloads"\r
-#define MySourceDir "C:\Users\kilian\Workspace\pot_lu"\r
+#define MyOutputDir "C:\Users\ksaff\Workspace\pot_lu\website\downloads"\r
+#define MySourceDir "C:\Users\ksaff\Workspace\pot_lu"\r
 #define MySetupName "POT_Setup_64bit"\r
 [Setup]\r
 ; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.\r