221 lines
4.9 KiB
PHP
221 lines
4.9 KiB
PHP
<?php
|
|
require_once("mother_entity.php");
|
|
/**
|
|
* Classe d'un objet Projet
|
|
* @author Yass
|
|
*/
|
|
|
|
class Project extends Entity{
|
|
|
|
private ?int $_id = null;
|
|
private string $_title = "";
|
|
private string $_description = "";
|
|
private ?string $_thumbnail = null;
|
|
private string $_content = "";
|
|
private string $_creation_date;
|
|
private string $_status = "en_attente";
|
|
private int $_user;
|
|
private int $_category = 0;
|
|
private string $_creatorname;
|
|
private ?string $_user_image = null;
|
|
|
|
|
|
/**
|
|
* Constructeur (logique mdrr)
|
|
*/
|
|
public function __construct(){
|
|
$this->_prefix = 'project_';
|
|
}
|
|
|
|
// Méthode Getter et Setter
|
|
|
|
/**
|
|
* Récuperation de l'id du Projet
|
|
* @return int l'id du projet
|
|
*/
|
|
public function getId():?int{
|
|
return $this->_id;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de l'id du projet
|
|
* @param int le nouvelle id
|
|
*/
|
|
public function setId(int $id){
|
|
$this->_id = $id;
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Récuperation du titre
|
|
* @return string tite du projet
|
|
*/
|
|
public function getTitle(){
|
|
return $this->_title;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour du titre
|
|
* @param string le nouveau titre
|
|
*/
|
|
public function setTitle($title){
|
|
$this->_title = $title;
|
|
}
|
|
|
|
/**
|
|
* Récuperation de la description
|
|
* @return string description du projet
|
|
*/
|
|
public function getDescription(){
|
|
return $this->_description;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de la description
|
|
* @param string la nouvelle description
|
|
*/
|
|
public function setDescription($description){
|
|
$this->_description = $description;
|
|
}
|
|
|
|
|
|
/**
|
|
* Récuperation de l'image
|
|
* @return string chemin vers l'image
|
|
*/
|
|
public function getThumbnail(){
|
|
return $this->_thumbnail;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de l'image
|
|
* @param string chemin vers nouvelle image
|
|
*/
|
|
public function setThumbnail($thumbnail){
|
|
$this->_thumbnail = $thumbnail;
|
|
}
|
|
|
|
/**
|
|
* Récuperation du contenue
|
|
* @return string contenue du projet
|
|
*/
|
|
public function getContent(){
|
|
return $this->_content;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour du contenue
|
|
* @param string le nouveau contenue
|
|
*/
|
|
public function setContent($content){
|
|
$this->_content = $content;
|
|
}
|
|
|
|
/**
|
|
* Récupération de la date de création
|
|
* @param string lang de formatage de la date (par défaut = "fr_FR")
|
|
* @return string date de création formatter
|
|
*/
|
|
public function getCreation_date(string $strFormat = "fr_FR"){
|
|
$objDate = new DateTime($this->_creation_date);
|
|
|
|
$objDateFormatter = new IntlDateFormatter(
|
|
$strFormat,
|
|
IntlDateFormatter::LONG,
|
|
IntlDateFormatter::NONE,
|
|
|
|
);
|
|
$strFormat = $objDateFormatter->format($objDate);
|
|
return $strFormat;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de la date de création
|
|
* @param string la nouvelle date de création
|
|
*/
|
|
public function setCreation_date($creation_date){
|
|
$this->_creation_date = $creation_date;
|
|
}
|
|
|
|
/**
|
|
* Récupération du statut
|
|
* @return string statut
|
|
*/
|
|
public function getStatus(){
|
|
return $this->_status;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour du statut
|
|
* @param string le nouveau statut
|
|
*/
|
|
public function setStatus($status){
|
|
$this->_status = $status;
|
|
}
|
|
|
|
/**
|
|
* Récupération de l'utilisateur
|
|
* @return int id de l'utilisateur
|
|
*/
|
|
public function getUser_id(){
|
|
return $this->_user;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de l'utilisateur
|
|
* @param int id de l'utilisateur
|
|
*/
|
|
public function setUser_id($user){
|
|
$this->_user = $user;
|
|
}
|
|
|
|
/**
|
|
* Récupération de la catégorie
|
|
* @return int id de la catégorie
|
|
*/
|
|
public function getCategory():?int{
|
|
return $this->_category;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de la catégorie
|
|
* @param int id de la catégorie
|
|
*/
|
|
public function setCategory($category){
|
|
$this->_category = $category;
|
|
}
|
|
|
|
/**
|
|
* Récupération du nom du créateur
|
|
* @return string nom du créateur
|
|
*/
|
|
public function getCreatorName(){
|
|
return $this->_creatorname;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour du nom du créateur
|
|
* @param string le nom du créateur
|
|
*/
|
|
public function setCreatorName($creatorname){
|
|
$this->_creatorname = $creatorname;
|
|
}
|
|
|
|
/**
|
|
* Récupération du chemin photo profil
|
|
* @return string nom du chemin photo profil
|
|
*/
|
|
public function getUser_image(){
|
|
return $this->_user_image;
|
|
}
|
|
|
|
/**
|
|
* Mise à jour du chemin photo profil
|
|
* @param string chemin photo profil
|
|
*/
|
|
public function setUser_image($user_image){
|
|
$this->_user_image = $user_image;
|
|
}
|
|
|
|
|
|
} |