button.class.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. /**
  3. * Classe `button`
  4. *
  5. * Cette classe permet de générer des boutons HTML avec des options de confirmation.
  6. */
  7. class button
  8. {
  9. /**
  10. * Génère un bouton HTML avec une boîte de confirmation.
  11. *
  12. * @param array|null $_array Les options pour configurer le bouton (valeur, texte, titre, styles, etc.).
  13. * - `value` (string) : Le texte affiché sur le bouton (par défaut : "Valider").
  14. * - `title` (string) : Le titre de la boîte de confirmation (par défaut : "Confirmation").
  15. * - `text` (string) : Le texte de la boîte de confirmation (par défaut : "Vous êtes certain de vouloir poursuivre ?").
  16. * - `confirm` (string) : Le texte du bouton de confirmation (par défaut : "Continuer").
  17. * - `cancel` (string) : Le texte du bouton d'annulation (par défaut : "Annuler").
  18. * - `type` (string) : Le type du bouton (par défaut : "submit").
  19. * - `class` (string) : Les classes CSS du bouton (par défaut : "btn btn-primary btn-lg").
  20. * - `style` (string) : Les styles CSS du bouton (par défaut : "width: 100%").
  21. * - `id` (string) : L'ID HTML du bouton (optionnel).
  22. * - `add` (string) : Des attributs supplémentaires à ajouter au bouton (optionnel).
  23. * @return void
  24. */
  25. public static function confirm(?array $_array = NULL)
  26. {
  27. $config = array(
  28. "value" => "Valider",
  29. "title" => "Confirmation",
  30. "text" => "Vous êtes certain de vouloir poursuivre ?",
  31. "confirm" => "Continuer",
  32. "cancel" => "Annuler",
  33. "type" => "submit",
  34. "class" => "btn btn-primary btn-lg",
  35. "style" => "width: 100%",
  36. "add" => ""
  37. );
  38. if ($_array != NULL) {
  39. (!empty($_array["value"])) ? $config["value"] = $_array["value"] : NULL;
  40. (!empty($_array["text"])) ? $config["text"] = $_array["text"] : NULL;
  41. (!empty($_array["title"])) ? $config["title"] = $_array["title"] : NULL;
  42. (!empty($_array["confirm"])) ? $config["confirm"] = $_array["confirm"] : NULL;
  43. (!empty($_array["cancel"])) ? $config["cancel"] = $_array["cancel"] : NULL;
  44. (!empty($_array["type"])) ? $config["type"] = $_array["type"] : NULL;
  45. (!empty($_array["class"])) ? $config["class"] = $_array["class"] : NULL;
  46. (!empty($_array["style"])) ? $config["style"] = $_array["style"] : NULL;
  47. (!empty($_array["id"])) ? $config["id"] = $_array["id"] : NULL;
  48. (!empty($_array["add"])) ? $config["add"] = $_array["add"] : NULL;
  49. }
  50. $print = "<input ";
  51. $print .= 'class="' . $config["class"] . '" ';
  52. $print .= 'style="' . $config["style"] . '" ';
  53. $print .= 'type="' . $config["type"] . '" ';
  54. $print .= 'value="' . $config["value"] . '" ';
  55. $print .= 'data-confirm="' . $config["text"] . '" ';
  56. $print .= 'data-confirm-title="' . $config["title"] . '" ';
  57. $print .= 'data-confirm-button-confirm="' . $config["confirm"] . '" ';
  58. $print .= 'data-confirm-button-cancel="' . $config["cancel"] . '" ';
  59. if (!empty($_array["id"])) {
  60. $print .= 'id="' . $config["id"] . '" ';
  61. }
  62. $print .= ' ' . $config["add"] . '>';
  63. echo $print;
  64. }
  65. }