1: | <?php
|
2: | namespace Opencart\Admin\Model\Setting;
|
3: | |
4: | |
5: | |
6: | |
7: |
|
8: | class Module extends \Opencart\System\Engine\Model {
|
9: | |
10: | |
11: | |
12: | |
13: | |
14: | |
15: | |
16: |
|
17: | public function addModule(string $code, array $data): int {
|
18: | $this->db->query("INSERT INTO `" . DB_PREFIX . "module` SET `name` = '" . $this->db->escape((string)$data['name']) . "', `code` = '" . $this->db->escape($code) . "', `setting` = '" . $this->db->escape(json_encode($data)) . "'");
|
19: |
|
20: | $module_id = $this->db->getLastId();
|
21: |
|
22: | return (int)$module_id;
|
23: | }
|
24: |
|
25: | |
26: | |
27: | |
28: | |
29: | |
30: | |
31: | |
32: |
|
33: | public function editModule(int $module_id, array $data): void {
|
34: | $this->db->query("UPDATE `" . DB_PREFIX . "module` SET `name` = '" . $this->db->escape((string)$data['name']) . "', `setting` = '" . $this->db->escape(json_encode($data)) . "' WHERE `module_id` = '" . (int)$module_id . "'");
|
35: | }
|
36: |
|
37: | |
38: | |
39: | |
40: | |
41: | |
42: | |
43: |
|
44: | public function deleteModule(int $module_id): void {
|
45: | $this->db->query("DELETE FROM `" . DB_PREFIX . "module` WHERE `module_id` = '" . (int)$module_id . "'");
|
46: | }
|
47: |
|
48: | |
49: | |
50: | |
51: | |
52: | |
53: | |
54: |
|
55: | public function deleteModulesByCode(string $code): void {
|
56: | $this->db->query("DELETE FROM `" . DB_PREFIX . "module` WHERE `code` = '" . $this->db->escape($code) . "'");
|
57: |
|
58: | $this->load->model('design/layout');
|
59: |
|
60: | $this->model_design_layout->deleteModulesByCode($code);
|
61: | }
|
62: |
|
63: | |
64: | |
65: | |
66: | |
67: | |
68: | |
69: |
|
70: | public function getModule(int $module_id): array {
|
71: | $query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "module` WHERE `module_id` = '" . (int)$module_id . "'");
|
72: |
|
73: | if ($query->row) {
|
74: | return json_decode($query->row['setting'], true);
|
75: | } else {
|
76: | return [];
|
77: | }
|
78: | }
|
79: |
|
80: | |
81: | |
82: | |
83: | |
84: |
|
85: | public function getModules(): array {
|
86: | $query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "module` ORDER BY `code`");
|
87: |
|
88: | return $query->rows;
|
89: | }
|
90: |
|
91: | |
92: | |
93: | |
94: | |
95: | |
96: | |
97: |
|
98: | public function getModulesByCode(string $code): array {
|
99: | $query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "module` WHERE `code` = '" . $this->db->escape($code) . "' ORDER BY `name`");
|
100: |
|
101: | return $query->rows;
|
102: | }
|
103: | }
|
104: | |