| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- <?php
- /**
- * Classe icon
- *
- * Cette classe fournit des méthodes utilitaires pour générer des éléments HTML liés aux icônes.
- */
- class icon
- {
- /**
- * Récupère la classe CSS correspondant à un type d'icône spécifique.
- *
- * @param string $_type Le type de l'icône.
- * @return string La classe CSS correspondant à l'icône.
- */
- private static function types(string $_type){
- switch ($_type) {
- // Alertes
- case 'info':
- return "bi bi-info-circle";
- break;
- case 'warning':
- return "bi bi-exclamation-diamond";
- break;
- case 'alert':
- return "bi bi-exclamation-triangle";
- break;
- // Menu Salariés
- case 'rh-liste-salaries':
- return "bi bi-people-fill";
- break;
- case 'rh-historique-excel':
- return "bi bi-list-check";
- break;
- case 'rh-mapping':
- return "bi bi-clock-history";
- break;
- case 'stats':
- return "bi bi-graph-up";
- break;
- // Menu Proweb
- case 'proweb-salaries':
- return "bi bi-people";
- break;
- case 'proweb-historique-excel':
- return "bi bi-list-check";
- break;
- case 'proweb-export-csv':
- return "bi bi-upload";
- break;
- // Menu Comptes bancaires
- case 'courant':
- return "bi bi-safe2";
- break;
- case 'epargne':
- return "bi bi-piggy-bank";
- break;
- case 'compte-historique-csv':
- return "bi bi-list-check";
- break;
- // Menu Documents
- case 'documents':
- return "bi bi-journal-check";
- break;
- // Menu Services sociaux
- case 'sociale-check-salarie':
- return "bi bi-person-check-fill";
- break;
- // Menu Evènements
- case 'evenements':
- return "bi bi-calendar2-check";
- break;
- case 'lotterys':
- return "bi bi-dice-6";
- break;
- // Menu Pratique
- case 'pratique':
- return "bi bi-link-45deg";
- break;
- // Menu Parametres
- case 'parametres-users':
- return "bi bi-person-lines-fill";
- break;
- case 'parametres-teams':
- return "bi bi-person-fill-gear";
- break;
- case 'parametres-comptes':
- return "bi bi-safe2";
- break;
- case 'parametres-historique':
- return "bi bi-list-columns-reverse";
- break;
- case 'parametres':
- return "bi bi-gear-fill";
- break;
- case 'parametres-tags':
- return "bi bi-tags-fill";
- break;
- case 'parametres-clients':
- return "bi bi-building-fill";
- break;
- case 'parametres-maj':
- return "bi bi-git";
- break;
- case 'parametres-logs':
- return "bi bi-list-columns-reverse";
- break;
- default:
- return $_type;
- break;
- }
- }
-
- /**
- * Génère le HTML pour une icône avec la configuration spécifiée.
- *
- * @param array|null $_config Options de configuration pour l'icône. Clés possibles :
- * - "type" : Le type de l'icône (string).
- * - "icon" : Classe d'icône personnalisée (string).
- * - "class" : Classes CSS supplémentaires (string).
- * - "color" : Couleur de l'icône (string).
- * - "size" : Taille de la police de l'icône (string).
- * - "style" : Styles inline supplémentaires (string).
- * @return string Le HTML généré pour l'icône.
- */
- public static function getFont(?array $_config = NULL){
- $tmp = '<i class="';
- if(!empty($_config["type"])){ $tmp .= self::types($_config["type"]) . ' '; }
- elseif(!empty($_config["icon"])){ $tmp .= $_config["icon"] . ' '; }
- else{ $tmp .= 'bi bi-braces-asterisk '; }
- if(!empty($_config["class"])){ $tmp .= ' ' . $_config["class"]; }
- $tmp .= '" style="';
- if(!empty($_config["color"])){ $tmp .= 'color: ' . $_config["color"] . ';'; }
- if(!empty($_config["size"])){ $tmp .= 'font-size: ' . $_config["size"] . ';'; }
- if(!empty($_config["style"])){ $tmp .= $_config["style"]; }
- $tmp .= '" ';
- $tmp .= '></i>';
- return $tmp;
- }
- }
|