PluginProbe
AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress / 11.1.0
AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress v11.1.0
11.1.1 11.1.0 11.0.5 11.0.4 11.0.3 11.0.2 11.0.1 11.0.0 10.11.1 10.11.0 10.10.2 10.10.1 10.10.0 10.9.1 trunk 10.0.0 10.0.1 10.1.0 10.1.1 10.1.2 10.1.3 10.1.4 10.2.0 10.2.1 10.2.2 All 62 releases
← All changes | back/Classes/RuleClass.php +15 -14 10.0.1 → 11.1.0 View file →
@@ -5,9 +5,9 @@
5 5 use AcyMailing\Core\AcymClass;
6 6
7 7 class RuleClass extends AcymClass
8 8 {
9 - const FINAL_RULE_ID = 17;
9 + public const FINAL_RULE_ID = 17;
10 10
11 11 public function __construct()
12 12 {
13 13 parent::__construct();
@@ -15,28 +15,29 @@
15 15 $this->table = 'rule';
16 16 $this->pkey = 'id';
17 17 }
18 18
19 - public function getAll($key = null, $active = false)
19 + public function getAll(?string $key = null): array
20 20 {
21 - $rules = acym_loadObjectList('SELECT * FROM `#__acym_rule` '.($active ? 'WHERE active = 1' : '').' ORDER BY `ordering` ASC');
21 + $rules = acym_loadObjectList('SELECT * FROM `#__acym_rule` ORDER BY `ordering` ASC');
22 22
23 23 foreach ($rules as $i => $rule) {
24 - $rules[$i] = $this->_prepareRule($rule);
24 + $rules[$i] = $this->prepareRule($rule);
25 25 }
26 26
27 27 return $rules;
28 28 }
29 29
30 - public function getOneById($id)
30 + public function getOneById(int $id): ?object
31 31 {
32 32 $rule = acym_loadObject('SELECT * FROM `#__acym_rule` WHERE `id` = '.intval($id));
33 33
34 - return $this->_prepareRule($rule);
34 + return empty($rule) ? null : $this->prepareRule($rule);
35 35 }
36 36
37 - private function _prepareRule($rule)
37 + private function prepareRule(object $rule): object
38 38 {
39 + //We have a rule from the database, let's prepare it to be displayed nicely
39 40 $columns = ['executed_on', 'action_message', 'action_user'];
40 41 foreach ($columns as $oneColumn) {
41 42 if (!empty($rule->$oneColumn)) {
42 43 $rule->$oneColumn = json_decode($rule->$oneColumn, true);
@@ -45,23 +46,23 @@
45 46
46 47 return $rule;
47 48 }
48 49
49 - public function save($rule)
50 + public function save(object $element): ?int
50 51 {
51 - if (empty($rule)) {
52 - return false;
52 + if (empty($element)) {
53 + return null;
53 54 }
54 55
55 - return parent::save($rule);
56 + return parent::save($element);
56 57 }
57 58
58 - public function getOrderingNumber()
59 + public function getOrderingNumber(): int
59 60 {
60 - return acym_loadResult('SELECT COUNT(`id`) FROM #__acym_rule');
61 + return (int)acym_loadResult('SELECT COUNT(`id`) FROM #__acym_rule');
61 62 }
62 63
63 - public function cleanTable()
64 + public function cleanTable(): void
64 65 {
65 66 acym_query('TRUNCATE TABLE `#__acym_rule`');
66 67 }
67 68 }