promo.class.php 2.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?php
  2. require_once("connector.class.php");
  3. class Promo
  4. {
  5. private $id_promo;
  6. private $libelle;
  7. function __construct($id)
  8. {
  9. $bdd = new Connector();
  10. $promo = $bdd->Select("*", "promo", array(
  11. "where" => array(
  12. array("id_promo", "=", $id)
  13. )
  14. ))[0];
  15. if($promo == NULL)
  16. {
  17. throw new Exception("La promo n'existe pas");
  18. }
  19. $this->id_promo = $promo["id_promo"];
  20. $this->libelle = $promo["libelle"];
  21. }
  22. public static function getAll()
  23. {
  24. $bdd = new Connector();
  25. return $bdd->Select("*", "promo");
  26. }
  27. /**
  28. * @return mixed
  29. */
  30. public function getIdPromo()
  31. {
  32. return $this->id_promo;
  33. }
  34. /**
  35. * @return mixed
  36. */
  37. public function getLibelle()
  38. {
  39. return $this->libelle;
  40. }
  41. /**
  42. * @param mixed $id_promo
  43. */
  44. public function setIdPromo($id_promo)
  45. {
  46. $this->id_promo = $id_promo;
  47. }
  48. /**
  49. * @param mixed $libelle
  50. */
  51. public function setLibelle($libelle)
  52. {
  53. $this->libelle = $libelle;
  54. }
  55. function write()
  56. {
  57. $bdd = new Connector();
  58. $promo = $bdd->Select("*", "promo", array(
  59. "where" => array(
  60. array("id_promo", "=", $this->id_promo)
  61. )
  62. ))[0];
  63. $attrs = get_object_vars($this);
  64. $toUpdate = array();
  65. foreach ($attrs as $key => $value) {
  66. if ($value != $promo[$key]) {
  67. $toUpdate[$key] = $value;
  68. }
  69. }
  70. $bdd->Update("promo", array(
  71. "set" => $toUpdate,
  72. "where" => array(array("id_promo", "=", $this->id_promo))
  73. ));
  74. }
  75. function erase()
  76. {
  77. $bdd = new Connector();
  78. $bdd->Delete("promo", array(array("id_promo", "=", $this->id_promo)));
  79. }
  80. public static function addPromo($promo)
  81. {
  82. $bdd = new Connector();
  83. $bdd->Insert("promo", array(
  84. "id_promo" => $promo["id"],
  85. "libelle" => $promo["libelle"]
  86. ));
  87. }
  88. }