PluginProbe
Moloni / trunk
Moloni vtrunk
5.0.10 5.0.09 5.0.08 5.0.07 5.0.06 trunk 0.4.0.00 0.4.8.1 3.0.10 3.0.11 3.0.35 3.0.36 3.0.37 3.0.38 3.0.40 3.0.41 3.0.42 3.0.43 3.0.44 3.0.45 3.0.46 3.0.47 3.0.48 3.0.49 3.0.50 All 98 releases
moloni / src / Notice.php

Notice.php in Moloni trunk, at src/Notice.php

82 lines 1.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Moloni;
4
5 class Notice
6 {
7
8 const NOTICE_FIELD = '_moloni_admin_notice_messages';
9
10 /**
11 * Throw all message
12 */
13 public static function showMessages()
14 {
15 $messages = get_option(self::NOTICE_FIELD);
16 if (!empty($messages) && isset($messages['message'])) {
17 if ($messages['notice-level'] === 'custom') {
18 echo html_entity_decode($messages['message']);
19 } else {
20 echo self::getMessageHtml($messages['message'], $messages['notice-level']);
21 }
22 }
23
24 delete_option(self::NOTICE_FIELD);
25 }
26
27 public static function addMessageCustom($message)
28 {
29 self::addMessage($message, 'custom');
30 }
31
32 public static function addMessageInfo($message)
33 {
34 self::addMessage($message, 'info');
35 }
36
37 public static function addMessageSuccess($message)
38 {
39 self::addMessage($message, 'success');
40 }
41
42 public static function addMessageWarning($message)
43 {
44 self::addMessage($message, 'warning');
45 }
46
47 public static function addMessageError($message)
48 {
49 self::addMessage($message, 'error');
50 }
51
52 /**
53 * @param $message string
54 * @param string $type
55 */
56 private static function addMessage($message, $type = 'error')
57 {
58 $messages = [
59 'message' => $message,
60 'notice-level' => $type
61 ];
62
63 update_option(self::NOTICE_FIELD, $messages);
64 }
65
66
67 /**
68 * @param $message
69 * @param string $type
70 * @return string
71 */
72 private static function getMessageHtml($message, $type = 'error')
73 {
74 $template = '<div class="notice is-dismissible notice-' . $type . '">';
75 $template .= '<p>' . $message . '</p>';
76 $template .= '</div>';
77
78 return $template;
79 }
80
81 }
82