diff --git a/content/plugins/ldc-messages/ldc-messages.php b/content/plugins/ldc-messages/ldc-messages.php
index 2564b4e4..13d1a4bb 100644
--- a/content/plugins/ldc-messages/ldc-messages.php
+++ b/content/plugins/ldc-messages/ldc-messages.php
@@ -392,10 +392,11 @@ function outputMessageToPDF($ref, $date, $htmlMessageString)
* @param int $page Le numéro de la page
* @param int $limit LE nombre maximal d'éléments dans une page
* @param string $search Le texte a rechercher sur un des champs
+ * @param int $status Recherche avec un statut, $search ne doit pas être à false
*
* @return object
*/
-function getMessages($page, $limit = 8, $search = false)
+function getMessages($page, $limit = 8, $search = false, $status = null)
{
global $wpdb;
@@ -429,7 +430,6 @@ function getMessages($page, $limit = 8, $search = false)
}
}
-
// status
if (strpos(
strtolower(remove_accents('traité')),
@@ -444,6 +444,11 @@ function getMessages($page, $limit = 8, $search = false)
}
$query .= ')';
+ } else {
+ // status
+ if ($status) {
+ $query .= " AND status = $status";
+ }
}
$total = $wpdb->get_results(
@@ -488,13 +493,19 @@ function init()
$search = ($_SERVER['REQUEST_METHOD'] === 'POST' and isset($_POST['search'])) ?
sanitize_text_field($_POST['search']) : false;
- $currentPage = isset($_GET['p']) ? intval($_GET['p']) : 1;
- $messages = getMessages($currentPage, $messagesByPage, $search);
+ $currentPage = isset($_GET['p']) ? intval(sanitize_text_field($_GET['p'])) : 1;
+ $status = isset($_GET['s']) ? intval((bool)sanitize_text_field($_GET['s'])) : null;
+ $messages = getMessages($currentPage, $messagesByPage, $search, $status);
$page = '
';
$page .= '
Gestion des messages - LDC
';
$page .= "
";
@@ -560,9 +571,12 @@ function init()
$page .= "";
- $genLink = function ($page, $text = null) use ($currentPage) {
+ $genLink = function ($page, $text = null) use ($currentPage, $status) {
$class = $currentPage === $page ? "class='active'" : "";
$link = "/wp-admin/admin.php?page=ldc-messages&p=$page";
+ if ($status !== null) {
+ $link .= "&s=$status";
+ }
return "
" . ($text ?? $page) . "";
};
@@ -595,6 +609,7 @@ function init()
$page .= $messages->lastPage != $messages->currentPage ?
$genLink($messages->lastPage, 'Fin') : '
Fin';
}
+ $page .= "
Total messages : $messages->total
";
$page .= "
";
}
diff --git a/content/plugins/ldc-messages/style.css b/content/plugins/ldc-messages/style.css
index 090b2a83..4141b6d2 100644
--- a/content/plugins/ldc-messages/style.css
+++ b/content/plugins/ldc-messages/style.css
@@ -19,13 +19,61 @@
}
.ldc_messages_red {
- color: red;
+ color: red;
}
.ldc_messages_green {
color: green;
}
+.ldc_messages_bg_red {
+ background-color: red !important;
+}
+
+.ldc_messages_bg_green {
+ background-color: green !important;
+}
+
+.ldc_messages_btn {
+ border-radius: 4px;
+ display: inline;
+ border: none;
+ padding: 0.6rem 3rem;
+ margin: 0;
+ text-decoration: none;
+ background: #333;
+ color: #ffffff;
+ font-family: sans-serif;
+ font-size: 1rem;
+ cursor: pointer;
+ text-align: center;
+ transition: background 250ms ease-in-out,
+ transform 150ms ease;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ margin: 0.2rem;
+}
+
+.ldc_messages_btn:disabled,
+.ldc_messages_btn[disabled] {
+ color: #AAA;
+}
+
+.ldc_messages_btn:hover,
+.ldc_messages_btn:focus {
+ color: #ddd;
+ background: #222;
+}
+
+.ldc_messages_btn:focus {
+ outline: 1px solid #fff;
+ outline-offset: -4px;
+}
+
+.ldc_messages_btn:active {
+ transform: scale(0.99);
+}
+
#reponse-msg {
width:700px;
}