From 5c27127d8a699c7cc08ccf4fbe57a43541ff4be9 Mon Sep 17 00:00:00 2001
From: "florian.azizian" <florian.azizian@maarch.org>
Date: Fri, 27 Nov 2020 15:17:56 +0100
Subject: [PATCH] FIX #15550 TIME 1:40 wording + css signature position + add
 metadata in history + fix history for interrupt

---
 lang/fr.json                                  | 22 ++++++++++---------
 .../controllers/DocumentController.php        | 10 ++++++++-
 .../history/controllers/HistoryController.php |  4 ++--
 .../controllers/WorkflowController.php        |  2 +-
 .../signature-position.component.scss         | 16 +++-----------
 src/frontend/app/search/search.component.html |  2 +-
 src/frontend/app/search/search.component.ts   |  4 ++--
 .../app/sidebar/sidebar.component.html        |  2 +-
 8 files changed, 31 insertions(+), 31 deletions(-)

diff --git a/lang/fr.json b/lang/fr.json
index 29fb4c2eb9..4263b19bd0 100755
--- a/lang/fr.json
+++ b/lang/fr.json
@@ -255,7 +255,7 @@
 		"manage_connectionsAdmin" : "Administrer les connexions",
 		"manage_email_configurationAdmin" : "Administrer le serveur courriel",
 		"manage_documentsAdmin" : "Accéder à tous les documents et gérer les circuits",
-		"indexationAdmin" : "Enregistrer des documents pour visa/signature",
+		"indexationAdmin" : "Initier un nouveau circuit de visa/signature",
 		"users" : "Utilisateurs",
 		"linkedUsers" : "Utilisateur(s) associé(s)",
 		"addUser" : "Ajouter un utilisateur",
@@ -320,21 +320,21 @@
 		"documentsToUpload": "Document(s) à téléverser",
 		"chooseDocuments": "Choisir des fichiers (pdf uniquement)",
 		"dndDocuments": "ou glisser-déposer des fichiers",
-		"stamp": "Signature avec griffe",
-		"stampUser": "Signataire (griffe)",
-		"inca_cardUser": "Signataire (carte agent)",
-		"eidasUser": "Signataire (eidas)",
-		"rgs_2starsUser": "Signataire (rgs**)",
+		"stamp": "Griffe",
+		"stampUser": "Signataire (Griffe)",
+		"inca_cardUser": "Signataire (Carte agent)",
+		"eidasUser": "Signataire (Organisation déléguée)",
+		"rgs_2starsUser": "Signataire (Clé RGS**)",
 		"inca_card": "Carte agent",
-		"eidas": "Eidas",
-		"rgs_2stars": "Rgs**",
+		"eidas": "Organisation déléguée",
+		"rgs_2stars": "Clé RGS**",
 		"noAssociatedGroup": "L'utilisateur n'appartient à aucun groupe",
 		"docToSign": "Document à signer",
 		"attachDocToSign": "Annexe attaché au(x) document(s) à signer",
 		"titleSearch": "Sujet du document à signer",
 		"referenceSearch": "Référence du document à signer",
 		"workflowStatesSearch": "État du circuit",
-		"workflowUsersSearch": "Personne du circuit",
+		"workflowUsersSearch": "Membre du circuit",
 		"end": "Terminé",
 		"interrupt": "Interrompu",
 		"inprogress": "En cours",
@@ -342,14 +342,16 @@
 		"interruptWorkflow": "Interrompre le circuit",
 		"newWorkflow": "Renvoyer le document",
 		"newWorkflowProg": "Interrompre le circuit et renvoyer le document",
+		"workflowInterrupted": "Circuit interrompu",
 		"proof": "Faisceau de preuve",
+		"completeFolder": "Dossier complet",
 		"processing": "Traitement",
 		"mandatory": "Obligatoire",
 		"addReason": "Saisir un motif",
 		"refused": "Refusé",
 		"results": "résultat(s)",
 		"thumbnailNotFound": "Imagette non trouvée ou non accessible.<br>Vérifier les docservers ou la configuration de ImageMagick",
-		"noUserInWorkflow": "Aucune personne dans le circuit",
+		"noUserInWorkflow": "Aucun utilisateur dans le circuit",
 		"newTemplate": "Nouveau modèle",
 		"newTemplateDesc": "Le circuit en cours sera sauvegardé.",
 		"deleteTemplate": "Voulez-vous supprimer le modèle ?",
diff --git a/src/app/document/controllers/DocumentController.php b/src/app/document/controllers/DocumentController.php
index eb1e07c337..14f9c01ad3 100755
--- a/src/app/document/controllers/DocumentController.php
+++ b/src/app/document/controllers/DocumentController.php
@@ -429,12 +429,20 @@ class DocumentController
                 }
             }
 
+            $data = empty($body['reference']) ? [] : ['reference' => $body['reference']];
+            if (!empty($body['metadata'])) {
+                foreach ($body['metadata'] as $key => $metadata) {
+                    $data[ucwords($key)] = $metadata;
+                }
+            }
+
             HistoryController::add([
                 'code'          => 'OK',
                 'objectType'    => 'main_documents',
                 'objectId'      => $id,
                 'type'          => 'CREATION',
-                'message'       => "{documentAdded} : {$body['title']}"
+                'message'       => "{documentAdded} : {$body['title']}",
+                'data'          => empty($data) ? [] : $data
             ]);
 
             DatabaseModel::commitTransaction();
diff --git a/src/app/history/controllers/HistoryController.php b/src/app/history/controllers/HistoryController.php
index fed86d619c..e3b84a772b 100755
--- a/src/app/history/controllers/HistoryController.php
+++ b/src/app/history/controllers/HistoryController.php
@@ -354,9 +354,9 @@ class HistoryController
             $node = $historyNode ?? $key;
 
             if (is_array($value)) {
-                HistoryController::arrayToXml(['data' => $value, 'xml' => $args['xml']->addChild($node)]);
+                HistoryController::arrayToXml(['data' => $value, 'xml' => $args['xml']->addChild(str_replace(' ', '', $node))]);
             } else {
-                $args['xml']->addChild($node, $value);
+                $args['xml']->addChild(str_replace(' ', '', $node), $value);
             }
         }
     
diff --git a/src/app/workflow/controllers/WorkflowController.php b/src/app/workflow/controllers/WorkflowController.php
index d2d13203a4..942cf7727a 100755
--- a/src/app/workflow/controllers/WorkflowController.php
+++ b/src/app/workflow/controllers/WorkflowController.php
@@ -86,7 +86,7 @@ class WorkflowController
 
         HistoryController::add([
             'code'          => 'OK',
-            'objectType'    => 'workflow',
+            'objectType'    => 'main_documents',
             'objectId'      => $args['id'],
             'type'          => 'MODIFICATION',
             'message'       => "{workflowInterrupted} : {$document['title']}"
diff --git a/src/frontend/app/indexation/signature-position/signature-position.component.scss b/src/frontend/app/indexation/signature-position/signature-position.component.scss
index b20d962169..88abc8beaf 100644
--- a/src/frontend/app/indexation/signature-position/signature-position.component.scss
+++ b/src/frontend/app/indexation/signature-position/signature-position.component.scss
@@ -44,16 +44,6 @@
     justify-content: center;
 }
 
-/*.example-radio-group {
-    display: flex;
-    flex-direction: column;
-    margin: 15px 0;
-}
-
-.example-radio-button {
-    margin: 5px;
-}*/
-
 .signDisabled {
     z-index: 1;
     opacity: 0.2;
@@ -62,10 +52,10 @@
 
 .signUserName {
     position: absolute;
-    font-size: 10px;
-    bottom: -25px;
+    font-size: 12px;
+    bottom: 20px;
     font-weight: normal;
-    color: var(--ion-color-medium);
+    color: var(--ion-color-primary);
 }
 .chip-item-content {
     z-index: 9999;
diff --git a/src/frontend/app/search/search.component.html b/src/frontend/app/search/search.component.html
index a8049475df..e55a4f6434 100644
--- a/src/frontend/app/search/search.component.html
+++ b/src/frontend/app/search/search.component.html
@@ -85,7 +85,7 @@
                         <ion-item-options>
                             <ion-item-option *ngIf="element.state !== 'PROG'" color="primary" (click)="openPromptProof(element)">
                                 <ion-icon slot="bottom" name="ribbon-sharp"></ion-icon>
-                                {{'lang.proof' | translate}}
+                                {{'lang.download' | translate}}
                             </ion-item-option>
                             <ion-item-option color="primary" (click)="openActions(element)">
                                 <ion-icon slot="bottom" name="settings-sharp"></ion-icon>
diff --git a/src/frontend/app/search/search.component.ts b/src/frontend/app/search/search.component.ts
index 5fe51d1455..f5673c1446 100644
--- a/src/frontend/app/search/search.component.ts
+++ b/src/frontend/app/search/search.component.ts
@@ -316,14 +316,14 @@ export class SearchComponent implements OnInit {
                 {
                     name: 'option1',
                     type: 'radio',
-                    label: 'Faisceau de preuve',
+                    label: this.translate.instant('lang.proof'),
                     value: 'onlyProof',
                     checked: true
                 },
                 {
                     name: 'option1',
                     type: 'radio',
-                    label: 'Dossier complet',
+                    label: this.translate.instant('lang.completeFolder'),
                     value: 'all',
                 },
 
diff --git a/src/frontend/app/sidebar/sidebar.component.html b/src/frontend/app/sidebar/sidebar.component.html
index 054acd75de..a86094a17d 100755
--- a/src/frontend/app/sidebar/sidebar.component.html
+++ b/src/frontend/app/sidebar/sidebar.component.html
@@ -24,7 +24,7 @@
             <ion-button (click)="openSearch()" [title]="'lang.search' | translate">
                 <ion-icon slot="icon-only" name="search-outline"></ion-icon>
             </ion-button>
-            <ion-button *ngIf="canIndex()" (click)="openIndexation()" [title]="'lang.newDocumentToVisa' | translate">
+            <ion-button *ngIf="canIndex()" (click)="openIndexation()" [title]="'lang.indexationAdmin' | translate">
                 <ion-icon slot="icon-only" name="cloud-upload-outline"></ion-icon>
             </ion-button>
         </ion-buttons>
-- 
GitLab