diff --git a/adapters/OctopushShortcodeAdapter.php b/adapters/OctopushShortcodeAdapter.php index 24c42e0..4147066 100644 --- a/adapters/OctopushShortcodeAdapter.php +++ b/adapters/OctopushShortcodeAdapter.php @@ -355,7 +355,6 @@ class OctopushShortcodeAdapter implements AdapterInterface $status = \models\Sended::STATUS_DELIVERED; break; - case 'NOT_ALLOWED': case 'INVALID_DESTINATION_ADDRESS': case 'OUT_OF_DATE': @@ -364,7 +363,6 @@ class OctopushShortcodeAdapter implements AdapterInterface $status = \models\Sended::STATUS_FAILED; break; - default: $status = \models\Sended::STATUS_UNKNOWN; diff --git a/adapters/OctopushVirtualNumberAdapter.php b/adapters/OctopushVirtualNumberAdapter.php index f3b1aec..8a36d96 100644 --- a/adapters/OctopushVirtualNumberAdapter.php +++ b/adapters/OctopushVirtualNumberAdapter.php @@ -355,7 +355,6 @@ class OctopushVirtualNumberAdapter implements AdapterInterface $status = \models\Sended::STATUS_DELIVERED; break; - case 'NOT_ALLOWED': case 'INVALID_DESTINATION_ADDRESS': case 'OUT_OF_DATE': @@ -364,7 +363,6 @@ class OctopushVirtualNumberAdapter implements AdapterInterface $status = \models\Sended::STATUS_FAILED; break; - default: $status = \models\Sended::STATUS_UNKNOWN; diff --git a/adapters/OvhSmsShortcodeAdapter.php b/adapters/OvhSmsShortcodeAdapter.php index f23019a..10172a6 100644 --- a/adapters/OvhSmsShortcodeAdapter.php +++ b/adapters/OvhSmsShortcodeAdapter.php @@ -347,13 +347,11 @@ namespace adapters; $status = \models\Sended::STATUS_DELIVERED; break; - case 2: case 16: $status = \models\Sended::STATUS_FAILED; break; - default: $status = \models\Sended::STATUS_UNKNOWN; diff --git a/adapters/OvhSmsVirtualNumberAdapter.php b/adapters/OvhSmsVirtualNumberAdapter.php index 48df00d..bc2d27d 100644 --- a/adapters/OvhSmsVirtualNumberAdapter.php +++ b/adapters/OvhSmsVirtualNumberAdapter.php @@ -346,13 +346,11 @@ namespace adapters; $status = \models\Sended::STATUS_DELIVERED; break; - case 2: case 16: $status = \models\Sended::STATUS_FAILED; break; - default: $status = \models\Sended::STATUS_UNKNOWN; diff --git a/adapters/TestAdapter.php b/adapters/TestAdapter.php index 1856a6e..240ed32 100644 --- a/adapters/TestAdapter.php +++ b/adapters/TestAdapter.php @@ -257,12 +257,10 @@ namespace adapters; $return['status'] = \models\Sended::STATUS_DELIVERED; break; - case \models\Sended::STATUS_FAILED: $return['status'] = \models\Sended::STATUS_FAILED; break; - default: $return['status'] = \models\Sended::STATUS_UNKNOWN; diff --git a/adapters/TwilioVirtualNumberAdapter.php b/adapters/TwilioVirtualNumberAdapter.php index 4120bdc..3faac6a 100644 --- a/adapters/TwilioVirtualNumberAdapter.php +++ b/adapters/TwilioVirtualNumberAdapter.php @@ -325,12 +325,10 @@ class TwilioVirtualNumberAdapter implements AdapterInterface $status = \models\Sended::STATUS_DELIVERED; break; - case 'failed': $status = \models\Sended::STATUS_FAILED; break; - default: $status = \models\Sended::STATUS_UNKNOWN; diff --git a/controllers/internals/ConditionalGroup.php b/controllers/internals/ConditionalGroup.php index e22707d..4cba89d 100644 --- a/controllers/internals/ConditionalGroup.php +++ b/controllers/internals/ConditionalGroup.php @@ -114,11 +114,11 @@ namespace controllers\internals; { $contact['datas'] = json_decode($contact['datas']); $contact = (object) $contact; - + //Add metas of contact by adding contact without datas $metas = clone $contact; - $metas->datas = null; - $metas->id_user = null; + unset($metas->datas); + unset($metas->id_user); $datas = ['contact' => $contact->datas, 'contact_metas' => $metas]; $is_valid = $ruler->evaluate_condition($condition, $datas); diff --git a/controllers/internals/Console.php b/controllers/internals/Console.php index 0ce0ac1..dcb16d3 100644 --- a/controllers/internals/Console.php +++ b/controllers/internals/Console.php @@ -68,11 +68,10 @@ namespace controllers\internals; } /** - * Check if a user exists based on email. + * Check if a user exists based on email * - * @param string $email : User email - * - * @return void : exit code 1 on false, 0 else + * @param string $email : User email + * @return exit code 1 on false, 0 else */ public function user_exists(string $email) { @@ -80,7 +79,6 @@ namespace controllers\internals; $internal_user = new \controllers\internals\User($bdd); $user = $internal_user->get_by_email($email); - exit($user ? 0 : 1); } @@ -107,20 +105,18 @@ namespace controllers\internals; $api_key = $api_key ?? $internal_user->generate_random_api_key(); $success = $internal_user->update($user['id'], $email, $password, $admin, $api_key, $status, $encrypt_password); echo json_encode(['id' => $user['id']]); - exit($success ? 0 : 1); } $new_user_id = $internal_user->create($email, $password, $admin, $api_key, $status, $encrypt_password); echo json_encode(['id' => $new_user_id]); - exit($new_user_id ? 0 : 1); } /** * Update a user status. * - * @param string $id : User id + * @param string $id : User id * @param string $status : User status, default \models\User::STATUS_ACTIVE */ public function update_user_status(string $id, string $status) @@ -135,14 +131,14 @@ namespace controllers\internals; } $success = $internal_user->update_status($user['id'], $status); - exit($success ? 0 : 1); } - + + /** - * Delete a user. + * Delete a user * - * @param string $id : User id + * @param string $id : User id */ public function delete_user(string $id) { @@ -150,7 +146,6 @@ namespace controllers\internals; $internal_user = new \controllers\internals\User($bdd); $success = $internal_user->delete($id); - exit($success ? 0 : 1); } } diff --git a/controllers/internals/ExpressionProvider.php b/controllers/internals/ExpressionProvider.php index fa40361..b7cb49b 100644 --- a/controllers/internals/ExpressionProvider.php +++ b/controllers/internals/ExpressionProvider.php @@ -27,14 +27,14 @@ class ExpressionProvider implements ExpressionFunctionProviderInterface { return null; }); - + //Exists must be personnalized because it inverse is_null - $exists = new ExpressionFunction('exists', function ($str) + $exists = new ExpressionFunction('exists', function ($var) { - return sprintf('isset(%1$s)', $str); + return sprintf('!is_null(%1$s)', $str); }, function ($arguments, $var) { - return isset($var); + return null !== $var; }); return [ diff --git a/controllers/internals/Mailer.php b/controllers/internals/Mailer.php index 052b6ef..aed0c8d 100755 --- a/controllers/internals/Mailer.php +++ b/controllers/internals/Mailer.php @@ -52,7 +52,7 @@ class Mailer extends \descartes\Controller * @param array $destinations : Destinations address * @param string $subject : Message subject * @param string $message : Message - * @param ?string $alt_message : Alt Message for clients with no html support. Use default (null) if mail to send is textonly and not html. + * @param ?string $alt_message : Alt Message if no html support. Null if message is not html. * @param array $attachments : List of path to attachment files * * @return bool : false on error, true else @@ -79,7 +79,7 @@ class Mailer extends \descartes\Controller if ($alt_message) { - $mail->isHTML(true); + $mail->isHTML($html); $mail->AltBody = $alt_message; } diff --git a/controllers/internals/Phone.php b/controllers/internals/Phone.php index 80cc079..68b9429 100644 --- a/controllers/internals/Phone.php +++ b/controllers/internals/Phone.php @@ -60,9 +60,9 @@ namespace controllers\internals; * @param string $adapter : The adapter to use the phone * @param string json $adapter_datas : A JSON string representing adapter's datas (for example credentials for an api) * - * @return bool|int : false on error, new id on success + * @return bool : false on error, true on success */ - public function create(int $id_user, string $name, string $adapter, string $adapter_datas) + public function create(int $id_user, string $name, string $adapter, string $adapter_datas): bool { $phone = [ 'id_user' => $id_user, @@ -71,7 +71,7 @@ namespace controllers\internals; 'adapter_datas' => $adapter_datas, ]; - return $this->get_model()->insert($phone); + return (bool) $this->get_model()->insert($phone); } /** diff --git a/controllers/internals/Scheduled.php b/controllers/internals/Scheduled.php index 7f4ac6a..9c9b596 100644 --- a/controllers/internals/Scheduled.php +++ b/controllers/internals/Scheduled.php @@ -244,7 +244,7 @@ namespace controllers\internals; if (!isset($users_phones[$scheduled['id_user']])) { $phones = $internal_phone->gets_for_user($scheduled['id_user']); - $users_phones[$scheduled['id_user']] = $phones ?: []; + $users_phones[$scheduled['id_user']] = $phones ? $phones : []; } $phone_to_use = null; @@ -335,13 +335,15 @@ namespace controllers\internals; if ((int) ($users_settings[$scheduled['id_user']]['templating'] ?? false)) { $contact['datas'] = json_decode($contact['datas'], true); - + //Add metas of contact by adding contact without datas $metas = $contact; - unset($metas['datas'], $metas['id_user']); - + unset($metas['datas']); + unset($metas['id_user']); + $datas = ['contact' => $contact['datas'], 'contact_metas' => $metas]; + $render = $internal_templating->render($scheduled['text'], $datas); if (!$render['success']) diff --git a/controllers/internals/Tool.php b/controllers/internals/Tool.php index ad48153..f1bdb75 100644 --- a/controllers/internals/Tool.php +++ b/controllers/internals/Tool.php @@ -97,32 +97,26 @@ namespace controllers\internals; $logo = 'fa-user'; break; - case 'CONTACT_ADD': $logo = 'fa-user'; break; - case 'GROUP_ADD': $logo = 'fa-group'; break; - case 'CONDITIONAL_GROUP_ADD': $logo = 'fa-bullseye'; break; - case 'SCHEDULED_ADD': $logo = 'fa-calendar'; break; - case 'COMMAND_ADD': $logo = 'fa-terminal'; break; - default: $logo = 'fa-question'; } @@ -175,8 +169,7 @@ namespace controllers\internals; if (!isset($_SESSION['connect']) || !$_SESSION['connect']) { header('Location: /'); - - exit(); + die(); } } @@ -224,32 +217,26 @@ namespace controllers\internals; $result['content'] = 'Impossible de télécharger le fichier car il dépasse les ' . ini_get('upload_max_filesize') / (1000 * 1000) . ' Mégaoctets.'; break; - case UPLOAD_ERR_FORM_SIZE: $result['content'] = 'Le fichier dépasse la limite de taille.'; break; - case UPLOAD_ERR_PARTIAL: $result['content'] = 'L\'envoi du fichier a été interrompu.'; break; - case UPLOAD_ERR_NO_FILE: $result['content'] = 'Aucun fichier n\'a été envoyé.'; break; - case UPLOAD_ERR_NO_TMP_DIR: $result['content'] = 'Le serveur ne dispose pas de fichier temporaire permettant l\'envoi de fichiers.'; break; - case UPLOAD_ERR_CANT_WRITE: $result['content'] = 'Impossible d\'envoyer le fichier car il n\'y a plus de place sur le serveur.'; break; - case UPLOAD_ERR_EXTENSION: $result['content'] = 'Le serveur a interrompu l\'envoi du fichier.'; @@ -297,32 +284,26 @@ namespace controllers\internals; $result['content'] = 'Impossible de télécharger le fichier car il dépasse les ' . ini_get('upload_max_filesize') / (1000 * 1000) . ' Mégaoctets.'; break; - case UPLOAD_ERR_FORM_SIZE: $result['content'] = 'Le fichier dépasse la limite de taille.'; break; - case UPLOAD_ERR_PARTIAL: $result['content'] = 'L\'envoi du fichier a été interrompu.'; break; - case UPLOAD_ERR_NO_FILE: $result['content'] = 'Aucun fichier n\'a été envoyé.'; break; - case UPLOAD_ERR_NO_TMP_DIR: $result['content'] = 'Le serveur ne dispose pas de fichier temporaire permettant l\'envoi de fichiers.'; break; - case UPLOAD_ERR_CANT_WRITE: $result['content'] = 'Impossible d\'envoyer le fichier car il n\'y a plus de place sur le serveur.'; break; - case UPLOAD_ERR_EXTENSION: $result['content'] = 'Le serveur a interrompu l\'envoi du fichier.'; diff --git a/controllers/publics/Api.php b/controllers/publics/Api.php index d97beba..b93d612 100644 --- a/controllers/publics/Api.php +++ b/controllers/publics/Api.php @@ -35,7 +35,7 @@ namespace controllers\publics; ]; const ERROR_MESSAGES = [ - 'INVALID_CREDENTIALS' => 'Invalid API Key. Please provide a valid API key as GET or POST parameter "api_key" or a HTTP "X-Api-Key".', + 'INVALID_CREDENTIALS' => 'Invalid API Key. Please provide a valid API key as GET or POST parameter "api_key".', 'INVALID_PARAMETER' => 'You have specified an invalid parameter : ', 'MISSING_PARAMETER' => 'One require parameter is missing : ', 'CANNOT_CREATE' => 'Cannot create a new entry.', @@ -51,7 +51,6 @@ namespace controllers\publics; private $internal_contact; private $internal_group; private $internal_conditional_group; - private $internal_adapter; private $user; /** @@ -72,7 +71,6 @@ namespace controllers\publics; $this->internal_contact = new \controllers\internals\Contact($bdd); $this->internal_group = new \controllers\internals\Group($bdd); $this->internal_conditional_group = new \controllers\internals\ConditionalGroup($bdd); - $this->internal_adapter = new \controllers\internals\Adapter(); //If no user, quit with error $this->user = false; @@ -305,174 +303,4 @@ namespace controllers\publics; return $this->json($return); } - - /** - * Create a new phone. - * - * @param string $_POST['name'] : Phone name - * @param string $_POST['adapter'] : Phone adapter - * @param array $_POST['adapter_datas'] : Phone adapter datas - * - * @return int : id phone the new phone on success - */ - public function post_phone() - { - $return = self::DEFAULT_RETURN; - - $name = $_POST['name'] ?? false; - $adapter = $_POST['adapter'] ?? false; - $adapter_datas = !empty($_POST['adapter_datas']) ? $_POST['adapter_datas'] : []; - - if (!$name) - { - $return['error'] = self::ERROR_CODES['MISSING_PARAMETER']; - $return['message'] = self::ERROR_MESSAGES['MISSING_PARAMETER'] . ' You must specify phone name.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - if (!$adapter) - { - $return['error'] = self::ERROR_CODES['MISSING_PARAMETER']; - $return['message'] = self::ERROR_MESSAGES['MISSING_PARAMETER'] . ' You must specify adapter name.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - $name_exist = $this->internal_phone->get_by_name($name); - if ($name_exist) - { - $return['error'] = self::ERROR_CODES['INVALID_PARAMETER']; - $return['message'] = self::ERROR_MESSAGES['INVALID_PARAMETER'] . ' This name is already used for another phone.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - $adapters = $this->internal_adapter->list_adapters(); - $find_adapter = false; - foreach ($adapters as $metas) - { - if ($metas['meta_classname'] === $adapter) - { - $find_adapter = $metas; - - break; - } - } - - if (!$find_adapter) - { - $return['error'] = self::ERROR_CODES['INVALID_PARAMETER']; - $return['message'] = self::ERROR_MESSAGES['INVALID_PARAMETER'] . ' adapter. Adapter "' . $adapter . '" does not exists.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - //If missing required data fields, error - foreach ($find_adapter['meta_datas_fields'] as $field) - { - if (false === $field['required']) - { - continue; - } - - if (!empty($adapter_datas[$field['name']])) - { - continue; - } - - $return['error'] = self::ERROR_CODES['MISSING_PARAMETER']; - $return['message'] = self::ERROR_MESSAGES['MISSING_PARAMETER'] . ' You must speicify param ' . $field['name'] . ' (' . $field['description'] . ') for this phone.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - //If field phone number is invalid - foreach ($find_adapter['meta_datas_fields'] as $field) - { - if (false === ($field['number'] ?? false)) - { - continue; - } - - if (!empty($adapter_datas[$field['name']])) - { - $adapter_datas[$field['name']] = \controllers\internals\Tool::parse_phone($adapter_datas[$field['name']]); - - if ($adapter_datas[$field['name']]) - { - continue; - } - } - - $return['error'] = self::ERROR_CODES['INVALID_PARAMETER']; - $return['message'] = self::ERROR_MESSAGES['INVALID_PARAMETER'] . ' field ' . $field['name'] . ' is not a valid phone number.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - $adapter_datas = json_encode($adapter_datas); - - //Check adapter is working correctly with thoses names and datas - $adapter_classname = $find_adapter['meta_classname']; - $adapter_instance = new $adapter_classname($adapter_datas); - $adapter_working = $adapter_instance->test(); - - if (!$adapter_working) - { - $return['error'] = self::ERROR_CODES['CANNOT_CREATE']; - $return['message'] = self::ERROR_MESSAGES['CANNOT_CREATE'] . ' : Impossible to validate this phone, verify adapters parameters.'; - $this->auto_http_code(false); - - return $this->json($return); - } - - $phone_id = $this->internal_phone->create($this->user['id'], $name, $adapter, $adapter_datas); - if (false === $phone_id) - { - $return['error'] = self::ERROR_CODES['CANNOT_CREATE']; - $return['message'] = self::ERROR_MESSAGES['CANNOT_CREATE']; - $this->auto_http_code(false); - - return $this->json($return); - } - - $return['response'] = $phone_id; - $this->auto_http_code(true); - - return $this->json($return); - } - - /** - * Delete a phone. - * - * @param int $id : Id of phond to delete - * - * @return bool : void - */ - public function delete_phone(int $id) - { - $return = self::DEFAULT_RETURN; - $success = $this->internal_phone->delete_for_user($this->user['id'], $id); - - if (!$success) - { - $return['error'] = self::ERROR_CODES['CANNOT_DELETE']; - $return['message'] = self::ERROR_MESSAGES['CANNOT_DELETE']; - $this->auto_http_code(false); - - return $this->json($return); - } - - $return['response'] = true; - $this->auto_http_code(true); - - return $this->json($return); - } } diff --git a/controllers/publics/Callback.php b/controllers/publics/Callback.php index a41df9e..9f5b6ae 100644 --- a/controllers/publics/Callback.php +++ b/controllers/publics/Callback.php @@ -52,7 +52,6 @@ use Monolog\Logger; http_response_code(401); echo json_encode(['error' => 'Invalid API key. You must provide a valid GET or POST api_key param.']); $this->logger->error('Callback call failed with invalid api key : ' . $api_key); - exit(1); } diff --git a/controllers/publics/Command.php b/controllers/publics/Command.php index 27a42e7..7536aa9 100644 --- a/controllers/publics/Command.php +++ b/controllers/publics/Command.php @@ -44,9 +44,9 @@ namespace controllers\publics; { $this->render('command/list'); } - + /** - * Return commands as json. + * Return commands as json */ public function list_json() { diff --git a/controllers/publics/ConditionalGroup.php b/controllers/publics/ConditionalGroup.php index 4fc0fd5..a486a66 100644 --- a/controllers/publics/ConditionalGroup.php +++ b/controllers/publics/ConditionalGroup.php @@ -48,9 +48,9 @@ namespace controllers\publics; { $this->render('conditional_group/list'); } - + /** - * Return conditionnals groups as json. + * Return conditionnals groups as json */ public function list_json() { diff --git a/controllers/publics/Contact.php b/controllers/publics/Contact.php index 3e93380..e931750 100644 --- a/controllers/publics/Contact.php +++ b/controllers/publics/Contact.php @@ -42,9 +42,9 @@ namespace controllers\publics; { return $this->render('contact/list'); } - + /** - * Return contacts as json. + * Return contacts as json */ public function list_json() { @@ -288,19 +288,16 @@ namespace controllers\publics; //Try to import file $invalid_type = false; - switch ($read_file['mime_type']) { case 'text/csv': $result = $this->internal_contact->import_csv($id_user, $read_file['content']); break; - case 'application/json': $result = $this->internal_contact->import_json($id_user, $read_file['content']); break; - default: $invalid_type = true; } @@ -341,19 +338,16 @@ namespace controllers\publics; //Try to export contacts $invalid_type = false; - switch ($format) { case 'csv': $result = $this->internal_contact->export_csv($id_user); break; - case 'json': $result = $this->internal_contact->export_json($id_user); break; - default: $invalid_type = true; } diff --git a/controllers/publics/Discussion.php b/controllers/publics/Discussion.php index 7c7b79a..81e540e 100644 --- a/controllers/publics/Discussion.php +++ b/controllers/publics/Discussion.php @@ -48,9 +48,9 @@ namespace controllers\publics; { $this->render('discussion/list'); } - + /** - * Return discussions as json. + * Return discussions as json */ public function list_json() { diff --git a/controllers/publics/Event.php b/controllers/publics/Event.php index 3d6d9a4..84445c6 100644 --- a/controllers/publics/Event.php +++ b/controllers/publics/Event.php @@ -44,7 +44,7 @@ namespace controllers\publics; } /** - * Return events as json. + * Return events as json */ public function list_json() { @@ -74,7 +74,7 @@ namespace controllers\publics; return $this->redirect(\descartes\Router::url('Event', 'list')); } - + if (!\controllers\internals\Tool::is_admin()) { \FlashMessage\FlashMessage::push('danger', 'Vous devez être administrateur pour supprimer un event !'); diff --git a/controllers/publics/Group.php b/controllers/publics/Group.php index 97dbc52..95dbf47 100644 --- a/controllers/publics/Group.php +++ b/controllers/publics/Group.php @@ -44,9 +44,10 @@ namespace controllers\publics; { $this->render('group/list'); } - + + /** - * Return groups as json. + * Return groups as json */ public function list_json() { diff --git a/controllers/publics/Phone.php b/controllers/publics/Phone.php index 9843d4b..b942062 100644 --- a/controllers/publics/Phone.php +++ b/controllers/publics/Phone.php @@ -73,7 +73,7 @@ class Phone extends \descartes\Controller } /** - * Return phones as json with additionnals datas about callbacks. + * Return phones as json with additionnals datas about callbacks */ public function list_json() { @@ -245,6 +245,10 @@ class Phone extends \descartes\Controller } } + var_dump($field); + var_dump($adapter_datas[$field['name']]); + die(); + \FlashMessage\FlashMessage::push('danger', 'Vous avez fourni un numéro de téléphone avec un format invalide.'); return $this->redirect(\descartes\Router::url('Phone', 'add')); diff --git a/controllers/publics/Received.php b/controllers/publics/Received.php index e5ba67e..28bd2b4 100644 --- a/controllers/publics/Received.php +++ b/controllers/publics/Received.php @@ -43,9 +43,9 @@ namespace controllers\publics; { $this->render('received/list', ['is_unread' => false]); } - + /** - * Return received as json. + * Return received as json */ public function list_json() { @@ -66,9 +66,9 @@ namespace controllers\publics; { $this->render('received/list', ['is_unread' => true]); } - + /** - * Return unred received as json. + * Return unred received as json */ public function list_unread_json() { @@ -83,15 +83,15 @@ namespace controllers\publics; } /** - * Mark messages as. + * Mark messages as * - * @param string $status : New status of the message, read or unread + * @param string $status : New status of the message, read or unread * @param array int $_GET['ids'] : Ids of receiveds to delete * @param mixed $csrf * * @return boolean; */ - public function mark_as($status, $csrf) + public function mark_as ($status, $csrf) { if (!$this->verify_csrf($csrf)) { @@ -99,15 +99,15 @@ namespace controllers\publics; return $this->redirect(\descartes\Router::url('Received', 'list')); } - + $ids = $_GET['ids'] ?? []; foreach ($ids as $id) { - if (\models\Received::STATUS_UNREAD === $status) + if ($status === \models\Received::STATUS_UNREAD) { $this->internal_received->mark_as_unread_for_user($_SESSION['user']['id'], $id); } - elseif (\models\Received::STATUS_READ === $status) + elseif ($status === \models\Received::STATUS_READ) { $this->internal_received->mark_as_read_for_user($_SESSION['user']['id'], $id); } diff --git a/controllers/publics/Scheduled.php b/controllers/publics/Scheduled.php index fba8db9..8755cf6 100644 --- a/controllers/publics/Scheduled.php +++ b/controllers/publics/Scheduled.php @@ -49,9 +49,9 @@ namespace controllers\publics; { $this->render('scheduled/list'); } - + /** - * Return scheduleds as json. + * Return scheduleds as json */ public function list_json() { diff --git a/controllers/publics/Sended.php b/controllers/publics/Sended.php index fa0a67c..58c5913 100644 --- a/controllers/publics/Sended.php +++ b/controllers/publics/Sended.php @@ -18,7 +18,6 @@ namespace controllers\publics; { private $internal_sended; private $internal_phone; - private $internal_contact; /** * Cette fonction est appelée avant toute les autres : @@ -47,7 +46,7 @@ namespace controllers\publics; } /** - * Return sendeds as json. + * Return sendeds as json */ public function list_json() { @@ -60,6 +59,7 @@ namespace controllers\publics; header('Content-Type: application/json'); echo json_encode(['data' => $entities]); } + /** * Cette fonction va supprimer une liste de sendeds. diff --git a/controllers/publics/SmsStop.php b/controllers/publics/SmsStop.php index 38dd40a..1dcb102 100644 --- a/controllers/publics/SmsStop.php +++ b/controllers/publics/SmsStop.php @@ -41,9 +41,9 @@ namespace controllers\publics; { $this->render('smsstop/list'); } - + /** - * Return smsstops as json. + * Return smsstops as json */ public function list_json() { diff --git a/controllers/publics/Templating.php b/controllers/publics/Templating.php index c8f78fb..50b475e 100644 --- a/controllers/publics/Templating.php +++ b/controllers/publics/Templating.php @@ -70,7 +70,8 @@ namespace controllers\publics; //Add metas of contact by adding contact without datas $metas = $contact; - unset($metas['datas'], $metas['id_user']); + unset($metas['datas']); + unset($metas['id_user']); $datas = [ 'contact' => $contact['datas'], diff --git a/controllers/publics/User.php b/controllers/publics/User.php index 2b22a6a..bd6132c 100644 --- a/controllers/publics/User.php +++ b/controllers/publics/User.php @@ -44,9 +44,9 @@ class User extends \descartes\Controller { $this->render('user/list'); } - + /** - * Return users as json. + * Return users as json */ public function list_json() { diff --git a/controllers/publics/Webhook.php b/controllers/publics/Webhook.php index 836b3ee..20ad309 100644 --- a/controllers/publics/Webhook.php +++ b/controllers/publics/Webhook.php @@ -38,9 +38,9 @@ namespace controllers\publics; { $this->render('webhook/list'); } - + /** - * Return commands as json. + * Return commands as json */ public function list_json() { diff --git a/daemons/AbstractDaemon.php b/daemons/AbstractDaemon.php index 9ff146f..93e3530 100644 --- a/daemons/AbstractDaemon.php +++ b/daemons/AbstractDaemon.php @@ -125,7 +125,6 @@ abstract class AbstractDaemon if (-1 === $sid) { //Error $this->logger->critical("Cannot make the child process with pid {$pid} independent."); - exit(1); } @@ -139,7 +138,6 @@ abstract class AbstractDaemon if (!$success) { $this->logger->critical('Cannot create PID directory : ' . $this->pid_dir); - exit(2); } } diff --git a/models/Group.php b/models/Group.php index d247b93..eb47dae 100644 --- a/models/Group.php +++ b/models/Group.php @@ -15,9 +15,9 @@ namespace models; { /** * Return a list of groups for a user. - * Add a column nb_contacts. + * Add a column nb_contacts * - * @param int $id_user : user id + * @param int $id_user : user id * @param ?int $limit : Number of entry to return or null * @param ?int $offset : Number of entry to ignore or null * @@ -30,29 +30,28 @@ namespace models; FROM `group` as g LEFT JOIN group_contact as gc ON g.id = gc.id_group - WHERE id_user = :id_user + WHERE id_user = :id_user GROUP BY g.id '; - if (null !== $limit) + if ($limit !== null) { $limit = (int) $limit; $query .= ' LIMIT ' . $limit; - if (null !== $offset) + if ($offset !== null) { $offset = (int) $offset; $query .= ' OFFSET ' . $offset; } } - + $params = [ 'id_user' => $id_user, ]; return $this->_run_query($query, $params); } - /** * Return a group by his name for a user. * @@ -103,7 +102,7 @@ namespace models; public function get_contacts(int $id_group) { $query = ' - SELECT * + SELECT * FROM `contact` WHERE id IN (SELECT id_contact FROM `group_contact` WHERE id_group = :id_group) '; diff --git a/models/Media.php b/models/Media.php index 253ed44..68ca4df 100644 --- a/models/Media.php +++ b/models/Media.php @@ -26,7 +26,7 @@ namespace models; */ public function get_for_user(int $id_user, int $id) { - $query = ' + $query = ' SELECT * FROM `' . $this->get_table_name() . '` WHERE id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) AND id = :id @@ -51,7 +51,7 @@ namespace models; */ public function gets_for_user(int $id_user) { - $query = ' + $query = ' SELECT * FROM `' . $this->get_table_name() . '` WHERE id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) '; @@ -73,7 +73,7 @@ namespace models; */ public function get_for_scheduled_and_user(int $id_user, int $id_scheduled) { - $query = ' + $query = ' SELECT * FROM `' . $this->get_table_name() . '` WHERE id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) AND id_scheduled = :id_scheduled @@ -105,7 +105,7 @@ namespace models; $limit = (int) $limit; $offset = (int) $offset; - $query = ' + $query = ' SELECT * FROM media WHERE id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) LIMIT ' . $limit . ' OFFSET ' . $offset; @@ -127,7 +127,7 @@ namespace models; */ public function gets_in_for_user(int $id_user, $ids) { - $query = ' + $query = ' SELECT * FROM media WHERE id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) AND id '; @@ -151,7 +151,7 @@ namespace models; */ public function delete_for_user(int $id_user, int $id) { - $query = ' + $query = ' DELETE FROM media WHERE id = :id AND id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) @@ -172,7 +172,7 @@ namespace models; */ public function delete_for_scheduled_and_user(int $id_user, int $id_scheduled) { - $query = ' + $query = ' DELETE FROM media WHERE id_scheduled = :id_scheduled AND id_scheduled IN (SELECT id FROM scheduled WHERE id_user = :id_user) diff --git a/models/Received.php b/models/Received.php index 23a8c05..aa76325 100644 --- a/models/Received.php +++ b/models/Received.php @@ -18,12 +18,12 @@ namespace models; { const STATUS_UNREAD = 'unread'; const STATUS_READ = 'read'; - + /** * Return a list of received messages for a user. - * Add a column contact_name and phone_name when available. + * Add a column contact_name and phone_name when available * - * @param int $id_user : user id + * @param int $id_user : user id * @param ?int $limit : Number of entry to return or null * @param ?int $offset : Number of entry to ignore or null * @@ -42,30 +42,31 @@ namespace models; WHERE received.id_user = :id_user '; - if (null !== $limit) + if ($limit !== null) { $limit = (int) $limit; $query .= ' LIMIT ' . $limit; - if (null !== $offset) + if ($offset !== null) { $offset = (int) $offset; $query .= ' OFFSET ' . $offset; } } - + $params = [ 'id_user' => $id_user, ]; return $this->_run_query($query, $params); } - + + /** * Return a list of unread received messages for a user. - * Add a column contact_name and phone_name when available. + * Add a column contact_name and phone_name when available * - * @param int $id_user : user id + * @param int $id_user : user id * @param ?int $limit : Number of entry to return or null * @param ?int $offset : Number of entry to ignore or null * @@ -85,18 +86,18 @@ namespace models; AND status = :status '; - if (null !== $limit) + if ($limit !== null) { $limit = (int) $limit; $query .= ' LIMIT ' . $limit; - if (null !== $offset) + if ($offset !== null) { $offset = (int) $offset; $query .= ' OFFSET ' . $offset; } } - + $params = [ 'id_user' => $id_user, 'status' => self::STATUS_UNREAD, @@ -189,7 +190,7 @@ namespace models; */ public function count_by_day_since_for_user(int $id_user, $date) { - $query = " + $query = " SELECT COUNT(id) as nb, DATE_FORMAT(at, '%Y-%m-%d') as at_ymd FROM received WHERE at > :date @@ -214,7 +215,7 @@ namespace models; */ public function get_discussions_for_user(int $id_user) { - $query = ' + $query = ' SELECT discussions.at, discussions.number, contact.name as contact_name FROM ( SELECT at, destination as number FROM sended @@ -245,7 +246,7 @@ namespace models; */ public function get_since_by_date_for_user(int $id_user, $date) { - $query = " + $query = " SELECT * FROM received WHERE at > STR_TO_DATE(:date, '%Y-%m-%d %h:%i:%s') @@ -271,7 +272,7 @@ namespace models; */ public function get_since_by_date_for_origin_and_user(int $id_user, $date, string $origin) { - $query = " + $query = " SELECT * FROM received WHERE at > STR_TO_DATE(:date, '%Y-%m-%d %h:%i:%s') diff --git a/models/Sended.php b/models/Sended.php index f0235ba..8d5e61d 100644 --- a/models/Sended.php +++ b/models/Sended.php @@ -19,12 +19,12 @@ namespace models; const STATUS_UNKNOWN = 'unknown'; const STATUS_DELIVERED = 'delivered'; const STATUS_FAILED = 'failed'; - + /** * Return a list of sended messages for a user. - * Add a column contact_name and phone_name when available. + * Add a column contact_name and phone_name when available * - * @param int $id_user : user id + * @param int $id_user : user id * @param ?int $limit : Number of entry to return or null * @param ?int $offset : Number of entry to ignore or null * @@ -43,18 +43,18 @@ namespace models; WHERE sended.id_user = :id_user '; - if (null !== $limit) + if ($limit !== null) { $limit = (int) $limit; $query .= ' LIMIT ' . $limit; - if (null !== $offset) + if ($offset !== null) { $offset = (int) $offset; $query .= ' OFFSET ' . $offset; } } - + $params = [ 'id_user' => $id_user, ]; @@ -137,7 +137,7 @@ namespace models; */ public function count_by_day_since_for_user($id_user, $date) { - $query = " + $query = " SELECT COUNT(id) as nb, DATE_FORMAT(at, '%Y-%m-%d') as at_ymd FROM sended WHERE at > :date @@ -163,7 +163,7 @@ namespace models; */ public function get_since_by_date_for_user($date, $id_user) { - $query = " + $query = " SELECT * FROM sended WHERE at > STR_TO_DATE(:date, '%Y-%m-%d %h:%i:%s') diff --git a/models/StandardModel.php b/models/StandardModel.php index 8c3b07c..8ae077f 100644 --- a/models/StandardModel.php +++ b/models/StandardModel.php @@ -93,9 +93,9 @@ namespace models; return []; } - $query = ' + $query = ' SELECT * FROM `' . $this->get_table_name() . '` - WHERE id_user = :id_user + WHERE id_user = :id_user AND id '; $params = []; diff --git a/models/User.php b/models/User.php index 1394855..ff3c659 100644 --- a/models/User.php +++ b/models/User.php @@ -67,7 +67,7 @@ namespace models; } /** - * Delete a user. + * Delete a user * * @param int $id : Id de l'utilisateur a supprimer * diff --git a/routes.php b/routes.php index e359e2d..08e4fa4 100644 --- a/routes.php +++ b/routes.php @@ -182,12 +182,6 @@ 'delete_scheduled' => [ '/api/scheduled/{id}/', ], - 'post_phone' => [ - '/api/phone/', - ], - 'delete_phone' => [ - '/api/phone/{id}/', - ], ], ); diff --git a/templates/phone/list.php b/templates/phone/list.php index c1f934b..19cffce 100644 --- a/templates/phone/list.php +++ b/templates/phone/list.php @@ -88,7 +88,7 @@ jQuery(document).ready(function () "columns" : [ {data: 'id', render: jQuery.fn.dataTable.render.text()}, {data: 'name', render: jQuery.fn.dataTable.render.text()}, - {data: 'adapter', render: jQuery.fn.dataTable.render.text()}, + {data: 'name', render: jQuery.fn.dataTable.render.text()}, { data: '_', render: function (data, type, row, meta) { diff --git a/tests/php-cs-fixer/php-cs-fixer.phar b/tests/php-cs-fixer/php-cs-fixer.phar index 5f7b5f0..638b218 100644 Binary files a/tests/php-cs-fixer/php-cs-fixer.phar and b/tests/php-cs-fixer/php-cs-fixer.phar differ