Update internal controllers to use standard one

This commit is contained in:
osaajani 2019-11-14 02:02:50 +01:00
parent 25b461d611
commit bc622285a4
16 changed files with 558 additions and 880 deletions

View file

@ -11,100 +11,63 @@
namespace controllers\internals;
/**
* Classe des smsstopes.
*/
class SmsStop extends \descartes\InternalController
class SmsStop extends StandardController
{
private $model_sms_stop;
public function __construct(\PDO $bdd)
{
$this->model_sms_stop = new \models\SmsStop($bdd);
}
protected $model = false;
/**
* Return all smsstops.
*
* Get the model for the Controller
* @return \descartes\Model
*/
protected function get_model () : \descartes\Model
{
$this->model = $this->model ?? new \models\SmsStop($this->$bdd);
return $this->model;
}
/**
* Create a new smsstop
* @param int $id_user : User id
* @param string $number : Number to stop smss for
* @return mixed bool|int : False if cannot create smsstop, id of the new smsstop else
*/
public function create(int $id_user, string $number)
{
$smsstop = [
'id_user' => $id_user,
'number' => $number,
];
return $this->get_model()->insert($smsstop);
}
/**
* Update a smsstop
* @param int $id_user : User id
* @param int $id_smsstop : SmsStop id
* @param string $number : Number to stop smss for
* @return mixed bool|int : False if cannot create smsstop, id of the new smsstop else
*/
public function update_for_user(int $id_user, int $id_smsstop, string $number)
{
$datas = [
'number' => $number,
];
return $this->get_model()->update_for_user($id_user, $id_smsstop, $datas);
}
/**
* Return a smsstop by his number and user
* @param int $id_user : user id
* @param string $number : phone number
* @return array
*/
public function get_all()
public function get_by_number_for_user (int $id_user, string $number)
{
return $this->model_sms_stop->get_all();
}
/**
* Cette fonction retourne une liste des smsstopes sous forme d'un tableau.
*
* @param mixed(int|bool) $nb_entry : Le nombre d'entrées à retourner par page
* @param mixed(int|bool) $page : Le numéro de page en cours
*
* @return array : La liste des smsstopes
*/
public function list($nb_entry = null, $page = null)
{
//Recupération des smsstopes
return $this->model_sms_stop->list($nb_entry, $nb_entry * $page);
}
/**
* Cette fonction retourne une liste des smsstopes sous forme d'un tableau.
*
* @param array int $ids : Les ids des entrées à retourner
*
* @return array : La liste des smsstopes
*/
public function gets($ids)
{
//Recupération des smsstopes
return $this->model_sms_stop->gets($ids);
}
/**
* Cette fonction retourne un smsstop par son numéro de tel.
*
* @param string $number : Le numéro du smsstop
*
* @return array : Le smsstop
*/
public function get_by_number($number)
{
//Recupération des smsstopes
return $this->model_sms_stop->get_by_number($number);
}
/**
* Cette fonction permet de compter le nombre de smsstops.
*
* @return int : Le nombre d'entrées dans la table
*/
public function count()
{
return $this->model_sms_stop->count();
}
/**
* Cette fonction va supprimer une liste de smsstops.
*
* @param array $ids : Les id des smsstopes à supprimer
* @param mixed $id
*
* @return int : Le nombre de smsstopes supprimées;
*/
public function delete($id)
{
return $this->model_sms_stop->delete($id);
}
/**
* Cette fonction insert une nouvelle smsstope.
*
* @param array $smsstop : Un tableau représentant la smsstope à insérer
*
* @return mixed bool|int : false si echec, sinon l'id de la nouvelle smsstope insérée
*/
public function create($smsstop)
{
return $this->model_sms_stop->insert($smsstop);
return $this->get_model()->get_by_number_for_user($id_user, $number);
}
}