From 250e1d4039138ce5c2e138b613da1ffcc6244277 Mon Sep 17 00:00:00 2001
From: Alex ORLUC <alex.orluc@maarch.org>
Date: Wed, 26 Sep 2018 17:54:13 +0200
Subject: [PATCH] FIX #8338 fix fa icon support

---
 modules/attachments/frame_list_attachments.php      |  6 ++++--
 sql/data_fr.sql                                     |  6 ++++++
 sql/develop.sql                                     | 13 +++++++++++++
 .../status/status-administration.component.html     |  5 ++---
 .../status/status-administration.component.ts       |  2 +-
 5 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/modules/attachments/frame_list_attachments.php b/modules/attachments/frame_list_attachments.php
index 322fec1a78a..7ebd8abbb0f 100755
--- a/modules/attachments/frame_list_attachments.php
+++ b/modules/attachments/frame_list_attachments.php
@@ -361,13 +361,15 @@ if (isset($_REQUEST['load'])) {
                 if (isset($attachArr[$i][$j][$value]) && $attachArr[$i][$j][$value] == 'status') {
                     $stmt = $db->query("SELECT id, label_status, img_filename FROM status WHERE id = ?", array($attachArr[$i][$j]['value']));
                     $res = $stmt->fetchObject();
+                    $img_class = substr($res->img_filename, 0, 2);
+
                     $attachArr[$i][$j]['value_bis'] = $attachArr[$i][$j]['value'];
                     if ($is_tmp == true) {
                         $attachArr[$i][$j]['value'] = '<span style="color:#135F7F;">'.functions::protect_string_db($res->label_status).'</span>';
                     } else if ($res->id == 'TRA' || $res->id == 'SIGN') {
-                        $attachArr[$i][$j]['value'] = '<span style="color:green;"><i title="'.$res->label_status.'" style="font-size:20px;" class="fa fa-2x '.functions::protect_string_db($res->img_filename).'"></i><br/>'.$res->label_status.'</span>';
+                        $attachArr[$i][$j]['value'] = '<span style="color:green;"><i title="'.$res->label_status.'" style="font-size:20px;" class="'.$img_class.' '.$img_class.'-2x '.functions::protect_string_db($res->img_filename).'"></i><br/>'.$res->label_status.'</span>';
                     } else {
-                        $attachArr[$i][$j]['value'] = '<i title="'.$res->label_status.'" style="font-size:20px;" class="fa fa-2x '.functions::protect_string_db($res->img_filename).'"></i><br/>'.$res->label_status;
+                        $attachArr[$i][$j]['value'] = '<i title="'.$res->label_status.'" style="font-size:20px;" class="'.$img_class.' '.$img_class.'-2x '.functions::protect_string_db($res->img_filename).'"></i><br/>'.$res->label_status;
                     }
                     $attachArr[$i][$j]['status'] = $attachArr[$i][$j]['value'];
                     $attachArr[$i][$j]['label'] = _STATUS;
diff --git a/sql/data_fr.sql b/sql/data_fr.sql
index d18ba125e58..a493d2c8030 100755
--- a/sql/data_fr.sql
+++ b/sql/data_fr.sql
@@ -1143,6 +1143,12 @@ INSERT INTO status_images (image_name) VALUES ('fm-letter-outgoing');
 INSERT INTO status_images (image_name) VALUES ('fm-letter-internal');
 INSERT INTO status_images (image_name) VALUES ('fm-file-fingerprint');
 INSERT INTO status_images (image_name) VALUES ('fm-classification-plan-l1');
+INSERT INTO status_images (image_name) VALUES ('fa-question');
+INSERT INTO status_images (image_name) VALUES ('fa-check');
+INSERT INTO status_images (image_name) VALUES ('fa-pause');
+INSERT INTO status_images (image_name) VALUES ('fa-mail-bulk');
+
+
 ------------
 --PARAMETERS
 ------------
diff --git a/sql/develop.sql b/sql/develop.sql
index f624090f686..e9a525c1c54 100644
--- a/sql/develop.sql
+++ b/sql/develop.sql
@@ -513,18 +513,31 @@ CREATE VIEW res_view_attachments AS
 DELETE FROM status WHERE id = 'A_TRA';
 INSERT INTO status (id, label_status, is_system, img_filename, maarch_module, can_be_searched, can_be_modified) VALUES ('A_TRA', 'PJ à traiter', 'Y', 'fa-question', 'apps', 'Y', 'Y');
 
+DELETE FROM status_images WHERE image_name = 'fa-question';
+INSERT INTO status_images (image_name) VALUES ('fa-question');
+
 DELETE FROM status WHERE id = 'TRA';
 INSERT INTO status (id, label_status, is_system, img_filename, maarch_module, can_be_searched, can_be_modified) VALUES ('TRA', 'PJ traitée', 'Y', 'fa-check', 'apps', 'Y', 'Y');
 
+DELETE FROM status_images WHERE image_name = 'fa-check';
+INSERT INTO status_images (image_name) VALUES ('fa-check');
+
 DELETE FROM status WHERE id = 'FRZ';
 INSERT INTO status (id, label_status, is_system, img_filename, maarch_module, can_be_searched, can_be_modified) VALUES ('FRZ', 'PJ gelée', 'Y', 'fa-pause', 'apps', 'Y', 'Y');
 
+DELETE FROM status_images WHERE image_name = 'fa-pause';
+INSERT INTO status_images (image_name) VALUES ('fa-pause');
+
 DELETE FROM status WHERE id = 'SEND_MASS';
 INSERT INTO status (id, label_status, is_system, img_filename, maarch_module, can_be_searched, can_be_modified) VALUES ('SEND_MASS', 'Pour publipostage', 'Y', 'fa-mail-bulk', 'apps', 'Y', 'Y');
 
+DELETE FROM status_images WHERE image_name = 'fa-mail-bulk';
+INSERT INTO status_images (image_name) VALUES ('fa-mail-bulk');
+
 DELETE FROM status WHERE id = 'SIGN';
 INSERT INTO status (id, label_status, is_system, img_filename, maarch_module, can_be_searched, can_be_modified) VALUES ('SIGN', 'PJ signée', 'Y', 'fa-check', 'apps', 'Y', 'Y');
 
 
+
 DELETE FROM parameters WHERE id = 'homepage_message';
 INSERT INTO parameters (id, description, param_value_string) VALUES ('homepage_message', 'Texte apparaissant dans la bannière sur la page d''accueil, mettre un espace pour supprimer la bannière.', 'Bienvenue dans votre <b>G</b>estion <b>E</b>lectronique du <b>C</b>ourrier.');
\ No newline at end of file
diff --git a/src/frontend/app/administration/status/status-administration.component.html b/src/frontend/app/administration/status/status-administration.component.html
index c5a3462843c..e21b82f0ba0 100755
--- a/src/frontend/app/administration/status/status-administration.component.html
+++ b/src/frontend/app/administration/status/status-administration.component.html
@@ -16,7 +16,6 @@
                             <mat-form-field>
                                 <input matInput [formControl]="statusId" [(ngModel)]="status.id" *ngIf="creationMode" maxlength="10" name="id" id="id" title="{{lang.id}}" placeholder="{{lang.id}}" (blur)="isAvailable()" 
                                     type="text" pattern="^[\w.-]*$" required>
-                                <!-- <i *ngIf="creationMode" class="fa fa-circle" aria-hidden="true" [ngStyle]="{'color': statusIdAvailable ? 'green' : 'red'}"></i> -->
                                 <input matInput [(ngModel)]="status.id" *ngIf="!creationMode" maxlength="10" name="id" id="id" title="{{lang.id}}" placeholder="{{lang.id}}" 
                                     required disabled>
                                 <mat-error *ngIf="statusId.invalid">{{getErrorMessage()}}</mat-error>
@@ -47,13 +46,13 @@
                     </div>
                     <div class="form-group">
                         <div class="col-sm-1" style="text-align:right;">
-                            <mat-icon class="fm {{status.img_filename}} fm-2x" aria-hidden="true" color="primary"></mat-icon>
+                            <mat-icon [ngClass]="[status.img_filename.indexOf('fm') == 0 ? 'fm fm-2x' : 'fa fa-2x']" class="{{status.img_filename}}" aria-hidden="true" color="primary"></mat-icon>
                         </div>
                         <div class="col-sm-11">
                             <mat-form-field>
                                 <mat-select [(ngModel)]="status.img_filename" placeholder="{{lang.imgRelated}}" id="status" name="status" required>
                                     <mat-option *ngFor="let image of statusImages" [value]="image.image_name">
-                                        <i [ngClass]="[image.image_name.indexOf('fm') == 0 ? 'fm' : 'fa']" class="{{image.image_name}} fa-2x" color="primary"></i> {{image.image_name}}
+                                        <i [ngClass]="[image.image_name.indexOf('fm') == 0 ? 'fm' : 'fa']" class="{{image.image_name}}" color="primary"></i> {{image.image_name}}
                                     </mat-option>
                                 </mat-select>
                             </mat-form-field>
diff --git a/src/frontend/app/administration/status/status-administration.component.ts b/src/frontend/app/administration/status/status-administration.component.ts
index 8e896bd46c2..9bf6b215c4d 100644
--- a/src/frontend/app/administration/status/status-administration.component.ts
+++ b/src/frontend/app/administration/status/status-administration.component.ts
@@ -34,7 +34,7 @@ export class StatusAdministrationComponent implements OnInit {
         label_status: null,
         can_be_searched: null,
         can_be_modified: null,
-        img_filename: null
+        img_filename: 'fm-letter'
     };
     statusImages: any = "";
 
-- 
GitLab