fix style coding
This commit is contained in:
parent
bb6f755ef2
commit
07f57e0145
|
@ -68,7 +68,7 @@ class Console extends \descartes\InternalController
|
|||
$ids_scheduleds[] = $scheduled['id'];
|
||||
}
|
||||
|
||||
if (!count($ids_scheduleds))
|
||||
if (!\count($ids_scheduleds))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -187,12 +187,12 @@ class Console extends \descartes\InternalController
|
|||
foreach (scandir(PWD_RECEIVEDS) as $dir)
|
||||
{
|
||||
//Si le fichier est un fichier système, on passe à l'itération suivante
|
||||
if (mb_substr($dir, 0, 1) == '.')
|
||||
if ('.' === mb_substr($dir, 0, 1))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
echo 'Analyse du Sms ' . $dir . "\n";
|
||||
echo 'Analyse du Sms '.$dir."\n";
|
||||
|
||||
//On récupère la date du Sms à la seconde près grâce au nom du fichier (Cf. parseSms.sh)
|
||||
//Il faut mettre la date au format Y-m-d H:i:s
|
||||
|
|
|
@ -116,7 +116,7 @@ class Received extends \descartes\InternalController
|
|||
/**
|
||||
* Cette fonction insert une nouvelle receivede.
|
||||
*
|
||||
* @param array $received : Un tableau représentant la receivede à insérer
|
||||
* @param array $received : Un tableau représentant la receivede à insérer
|
||||
* @param mixed $at
|
||||
* @param mixed $origin
|
||||
* @param mixed $content
|
||||
|
|
|
@ -95,13 +95,17 @@ namespace controllers\internals;
|
|||
* @param array $numbers : Les numéros auxquels envoyer le scheduled
|
||||
* @param array $contacts_ids : Les ids des contact auquels envoyer le scheduled
|
||||
* @param array $groups_ids : Les ids des group auxquels envoyer le scheduled
|
||||
* @param mixed $at
|
||||
* @param mixed $text
|
||||
* @param mixed $flash
|
||||
* @param mixed $progress
|
||||
*
|
||||
* @return mixed bool|int : false si echec, sinon l'id du nouveau scheduled inséré
|
||||
*/
|
||||
public function create($at, $text, $flash = false, $progress = false, $numbers = [], $contacts_ids = [], $groups_ids = [])
|
||||
{
|
||||
$scheduled = [
|
||||
'at' => $at,
|
||||
'at' => $at,
|
||||
'text' => $text,
|
||||
'flash' => $flash,
|
||||
'progress' => $progress,
|
||||
|
|
|
@ -144,17 +144,18 @@ namespace controllers\internals;
|
|||
}
|
||||
|
||||
/**
|
||||
* Update status
|
||||
* Update status.
|
||||
*
|
||||
* @param int $id_sended : id of the sended to mark as delivered
|
||||
* @param string $status : new status
|
||||
*
|
||||
* @param int $id_sended : id of the sended to mark as delivered
|
||||
* @param string $status : new status
|
||||
* @return int
|
||||
*/
|
||||
public function update_status($id_sended, $status)
|
||||
{
|
||||
return $this->model_sended->update($id_sended, ['status' => $status]);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Update sended to delivered.
|
||||
*
|
||||
|
|
|
@ -1,144 +0,0 @@
|
|||
<?php
|
||||
namespace controllers\publics;
|
||||
|
||||
/**
|
||||
* Page des smsapis
|
||||
*/
|
||||
class SmsAPI extends \descartes\Controller
|
||||
{
|
||||
private $internal_user;
|
||||
private $internal_scheduled;
|
||||
private $internal_contact;
|
||||
|
||||
|
||||
//On défini les constantes qui servent pour les retours d'API
|
||||
const API_ERROR_NO = 0;
|
||||
const API_ERROR_BAD_ID = 1;
|
||||
const API_ERROR_CREATION_FAILED = 2;
|
||||
const API_ERROR_MISSING_FIELD = 3;
|
||||
|
||||
|
||||
/**
|
||||
* Cette fonction est appelée avant toute les autres :
|
||||
* Elle vérifie que l'utilisateur est bien connecté
|
||||
* @return void;
|
||||
*/
|
||||
public function _before()
|
||||
{
|
||||
global $bdd;
|
||||
global $model;
|
||||
$this->bdd = $bdd;
|
||||
$this->model = $model;
|
||||
|
||||
$this->internal_user = new \controllers\internals\User($this->bdd);
|
||||
$this->internal_scheduled = new \controllers\internals\Scheduled($this->bdd);
|
||||
$this->internal_contact = new \controllers\internals\Contact($this->bdd);
|
||||
|
||||
\controllers\internals\Tool::verifyconnect();
|
||||
}
|
||||
|
||||
/**
|
||||
* Cette fonction permet d'envoyer un Sms, en passant simplement des arguments à l'URL (ou pas $_GET)
|
||||
* @param string text = Le contenu du Sms
|
||||
* @param mixed numbers = Les numéros auxquels envoyer les Sms. Soit un seul numéro, et il s'agit d'un string. Soit plusieurs numéros, et il s'agit d'un tableau
|
||||
* @param mixed contacts = Les noms des contacts auxquels envoyer les Sms. Soit un seul et il s'agit d'un string. Soit plusieurs, et il s'agit d'un tableau
|
||||
* @param mixed groupes = Les noms des groupes auxquels envoyer les Sms. Soit un seul et il s'agit d'un string. Soit plusieurs, et il s'agit d'un tableau
|
||||
* @param optionnal string date = La date à laquelle doit être envoyé le Sms. Au format 'Y-m-d H:i'. Si non fourni, le Sms sera envoyé dans 2 minutes
|
||||
*/
|
||||
public function api()
|
||||
{
|
||||
//On récupère l'email et le password
|
||||
$email = isset($_GET['email']) ? $_GET['email'] : null;
|
||||
$email = isset($_POST['email']) ? $_POST['email'] : $email;
|
||||
$password = isset($_GET['password']) ? $_GET['password'] : null;
|
||||
$password = isset($_POST['password']) ? $_POST['password'] : $password;
|
||||
|
||||
//Si les identifiants sont incorrect on retourne une erreur
|
||||
$user = $internal_user->check_credentials($email, $password);
|
||||
|
||||
if (!$user) {
|
||||
echo json_encode(array(
|
||||
'error' => self::API_ERROR_BAD_ID,
|
||||
));
|
||||
return true;
|
||||
}
|
||||
|
||||
//On map les variables $_GET
|
||||
$get_numbers = isset($_GET['numbers']) ? $_GET['numbers'] : array();
|
||||
$get_contacts = isset($_GET['contacts']) ? $_GET['contacts'] : array();
|
||||
$get_groupes = isset($_GET['groupes']) ? $_GET['groupes'] : array();
|
||||
|
||||
//On map les variables POST
|
||||
$post_numbers = isset($_POST['numbers']) ? $_POST['numbers'] : array();
|
||||
$post_contacts = isset($_POST['contacts']) ? $_POST['contacts'] : array();
|
||||
$post_groupes = isset($_POST['groupes']) ? $_POST['groupes'] : array();
|
||||
|
||||
//On map le texte et la date à part car c'est les seuls arguments qui ne sera jamais un tableau
|
||||
$text = isset($_GET['text']) ? $_GET['text'] : null;
|
||||
$text = isset($_POST['text']) ? $_POST['text'] : $text;
|
||||
$date = isset($_GET['date']) ? $_GET['date'] : null;
|
||||
$date = isset($_POST['date']) ? $_POST['date'] : $date;
|
||||
|
||||
//On passe tous les paramètres GET en tableau
|
||||
$get_numbers = is_array($get_numbers) ? $get_numbers : ($get_numbers ? array($get_numbers) : array());
|
||||
$get_contacts = is_array($get_contacts) ? $get_contacts : array($get_contacts);
|
||||
$get_groupes = is_array($get_groupes) ? $get_groupes : array($get_groupes);
|
||||
|
||||
//On passe tous les paramètres POST en tableau
|
||||
$post_numbers = is_array($post_numbers) ? $post_numbers : array($post_numbers);
|
||||
$post_contacts = is_array($post_contacts) ? $post_contacts : array($post_contacts);
|
||||
$post_groupes = is_array($post_groupes) ? $post_groupes : array($post_groupes);
|
||||
|
||||
//On merge les données reçus en GET, et celles en POST
|
||||
$numbers = array_merge($get_numbers, $post_numbers);
|
||||
$contacts = array_merge($get_contacts, $post_contacts);
|
||||
$groupes = array_merge($get_groupes, $post_groupes);
|
||||
|
||||
//Pour chaque contact, on récupère l'id du contact
|
||||
foreach ($contacts as $key => $contact) {
|
||||
if (!$contact = $internal_contact->get_by_name($contact)) {
|
||||
unset($contacts[$key]);
|
||||
continue;
|
||||
}
|
||||
|
||||
$contacts[$key] = $contact['id'];
|
||||
}
|
||||
|
||||
//Pour chaque groupe, on récupère l'id du groupe
|
||||
foreach ($groupes as $key => $name) {
|
||||
if (!$groupe = $internal_contact->get_by_name($groupe)) {
|
||||
unset($groupes[$key]);
|
||||
continue;
|
||||
}
|
||||
|
||||
$groupes[$key] = $groupe['id'];
|
||||
}
|
||||
|
||||
//Si la date n'est pas définie, on la met à la date du jour
|
||||
if (!$date) {
|
||||
$now = new \DateTime();
|
||||
$date = $now->format('Y-m-d H:i');
|
||||
}
|
||||
|
||||
//Si il manque des champs essentiels, on leve une erreur
|
||||
if (!$text || (!$numbers && !$contacts && !$groupes)) {
|
||||
echo json_encode(array(
|
||||
'error' => self::API_ERROR_MISSING_FIELD,
|
||||
));
|
||||
return false;
|
||||
}
|
||||
|
||||
//On assigne les variable POST (après avoir vidé $_POST) en prévision de la création du Sms
|
||||
if (!$this->internal_scheduled->create(['at' => $date, 'content' => $text], $numbers, $contacts, $groupes)) {
|
||||
echo json_encode(array(
|
||||
'error' => self::API_ERROR_CREATION_FAILED,
|
||||
));
|
||||
return false;
|
||||
}
|
||||
|
||||
echo json_encode(array(
|
||||
'error' => self::API_ERROR_NO,
|
||||
));
|
||||
return true;
|
||||
}
|
||||
}
|
|
@ -43,6 +43,7 @@ namespace controllers\internals;
|
|||
{
|
||||
$phone_number_util = \libphonenumber\PhoneNumberUtil::getInstance();
|
||||
$phone_number_o = $phone_number_util->parse($number, null);
|
||||
|
||||
return $phone_number_util->format($phone_number_o, \libphonenumber\PhoneNumberFormat::INTERNATIONAL);
|
||||
}
|
||||
|
||||
|
@ -177,8 +178,6 @@ namespace controllers\internals;
|
|||
$controller->render($settings['template'], $datas);
|
||||
$content = ob_get_clean();
|
||||
|
||||
$success = mail($to, $settings['subject'], $content);
|
||||
|
||||
return $success;
|
||||
return mail($to, $settings['subject'], $content);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -47,12 +47,14 @@ namespace controllers\publics;
|
|||
if (!$this->verify_csrf($csrf))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Jeton CSRF invalid !');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Account', 'show'));
|
||||
}
|
||||
|
||||
if (!$password)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous devez renseigner un mot de passe.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Account', 'show'));
|
||||
}
|
||||
|
||||
|
@ -60,10 +62,12 @@ namespace controllers\publics;
|
|||
if (!$update_password_result)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Impossible de mettre à jour le mot de passe.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Account', 'show'));
|
||||
}
|
||||
|
||||
\FlashMessage\FlashMessage::push('success', 'Le mot de passe a bien été mis à jour.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Account', 'show'));
|
||||
}
|
||||
|
||||
|
|
|
@ -108,6 +108,7 @@ namespace controllers\publics;
|
|||
if (!$this->verify_csrf($csrf))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Jeton CSRF invalid !');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Command', 'list'));
|
||||
}
|
||||
|
||||
|
@ -118,16 +119,19 @@ namespace controllers\publics;
|
|||
if (!$name || !$script)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Renseignez au moins un nom et un script.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Command', 'list'));
|
||||
}
|
||||
|
||||
if (!$this->internal_command->create($name, $script, $admin))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Impossible de créer cette commande.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('commands', 'add'));
|
||||
}
|
||||
|
||||
\FlashMessage\FlashMessage::push('success', 'La commande a bien été crée.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Command', 'list'));
|
||||
}
|
||||
|
||||
|
@ -144,6 +148,7 @@ namespace controllers\publics;
|
|||
if (!$this->verify_csrf($csrf))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Jeton CSRF invalid !');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Command', 'list'));
|
||||
}
|
||||
|
||||
|
|
|
@ -141,7 +141,7 @@ namespace controllers\publics;
|
|||
* Cette fonction permet d'envoyer facilement un sms à un numéro donné.
|
||||
*
|
||||
* @param string $csrf : Le jeton csrf
|
||||
* @param string $_POST['text'] : Le contenu du Sms
|
||||
* @param string $_POST['text'] : Le contenu du Sms
|
||||
* @param string $_POST['numbers'] : Un tableau avec le numero des gens auxquel envoyer le sms
|
||||
*
|
||||
* @return string : json string Le statut de l'envoi
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
* with this source code in the file LICENSE.
|
||||
*/
|
||||
|
||||
namespace controllers\publics;
|
||||
namespace controllers\publics;
|
||||
|
||||
/**
|
||||
* Page des groups.
|
||||
|
|
|
@ -142,6 +142,7 @@ namespace controllers\publics;
|
|||
if (!$this->verify_csrf($csrf))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Jeton CSRF invalid !');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'add'));
|
||||
}
|
||||
|
||||
|
@ -154,12 +155,14 @@ namespace controllers\publics;
|
|||
if (empty($text))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous ne pouvez pas créer un Sms sans message.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'add'));
|
||||
}
|
||||
|
||||
if (!\controllers\internals\Tool::validate_date($at, 'Y-m-d H:i:s') && !\controllers\internals\Tool::validate_date($at, 'Y-m-d H:i'))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous devez fournir une date valide.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'add'));
|
||||
}
|
||||
|
||||
|
@ -170,28 +173,30 @@ namespace controllers\publics;
|
|||
if (!$number)
|
||||
{
|
||||
unset($numbers[$key]);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
$numbers[$key] = $number;
|
||||
}
|
||||
|
||||
|
||||
if (!$numbers && !$contacts && !$groups)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous devez renseigner au moins un destinataire pour le Sms.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'add'));
|
||||
}
|
||||
|
||||
|
||||
$scheduled_id = $this->internal_scheduled->create($at, $text, false, false, $numbers, $contacts, $groups);
|
||||
if (!$scheduled_id)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Impossible de créer le Sms.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'add'));
|
||||
}
|
||||
|
||||
\FlashMessage\FlashMessage::push('success', 'Le Sms a bien été créé pour le ' . $at . '.');
|
||||
\FlashMessage\FlashMessage::push('success', 'Le Sms a bien été créé pour le '.$at.'.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'list'));
|
||||
}
|
||||
|
||||
|
@ -227,12 +232,14 @@ namespace controllers\publics;
|
|||
if (empty($text))
|
||||
{
|
||||
$all_update_ok = false;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!\controllers\internals\Tool::validate_date($at, 'Y-m-d H:i:s') && !\controllers\internals\Tool::validate_date($at, 'Y-m-d H:i'))
|
||||
{
|
||||
$all_update_ok = false;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -243,6 +250,7 @@ namespace controllers\publics;
|
|||
if (!$number)
|
||||
{
|
||||
unset($numbers[$key]);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -252,6 +260,7 @@ namespace controllers\publics;
|
|||
if (!$numbers && !$contacts && !$groups)
|
||||
{
|
||||
$all_update_ok = false;
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -259,6 +268,7 @@ namespace controllers\publics;
|
|||
if (!$success)
|
||||
{
|
||||
$all_update_ok = false;
|
||||
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
@ -266,10 +276,12 @@ namespace controllers\publics;
|
|||
if (!$all_update_ok)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Certains SMS n\'ont pas pu êtres mis à jour.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'list'));
|
||||
}
|
||||
|
||||
\FlashMessage\FlashMessage::push('success', 'Tous les SMS ont été mis à jour.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Scheduled', 'list'));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -49,12 +49,14 @@ namespace controllers\publics;
|
|||
if (!$this->verify_csrf($csrf))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Jeton CSRF invalid !');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Setting', 'show'));
|
||||
}
|
||||
|
||||
if (!\controllers\internals\Tool::is_admin())
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous devez être administrateur pour pouvoir modifier un réglage.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Setting', 'show'));
|
||||
}
|
||||
|
||||
|
@ -63,6 +65,7 @@ namespace controllers\publics;
|
|||
if (false === $setting_value)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous devez renseigner une valeure pour le réglage.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Setting', 'show'));
|
||||
}
|
||||
|
||||
|
@ -70,10 +73,12 @@ namespace controllers\publics;
|
|||
if (false === $update_setting_result)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Impossible de mettre à jour ce réglage.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Setting', 'show'));
|
||||
}
|
||||
|
||||
\FlashMessage\FlashMessage::push('success', 'Le réglage a bien été mis à jour.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('Setting', 'show'));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -101,6 +101,7 @@ class User extends \descartes\Controller
|
|||
if (!$this->verify_csrf($csrf))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Jeton CSRF invalid !');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('User', 'add'));
|
||||
}
|
||||
|
||||
|
@ -111,12 +112,14 @@ class User extends \descartes\Controller
|
|||
if (!$email)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Vous devez au moins fournir une adresse e-mail pour l\'utilisateur.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('User', 'add'));
|
||||
}
|
||||
|
||||
if (!filter_var($email, FILTER_VALIDATE_EMAIL))
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'L\'adresse e-mail n\'est pas valide.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('User', 'add'));
|
||||
}
|
||||
|
||||
|
@ -124,6 +127,7 @@ class User extends \descartes\Controller
|
|||
if (!$user_id)
|
||||
{
|
||||
\FlashMessage\FlashMessage::push('danger', 'Impossible de créer ce user.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('User', 'add'));
|
||||
}
|
||||
|
||||
|
@ -134,6 +138,7 @@ class User extends \descartes\Controller
|
|||
}
|
||||
|
||||
\FlashMessage\FlashMessage::push('success', 'L\'utilisateur a bien été créé.');
|
||||
|
||||
return $this->redirect(\descartes\Router::url('User', 'list'));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue