PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.0.13
Admin Columns v7.0.13
7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Storage / Repository / EditorMenuStatus.php
codepress-admin-columns / classes / Storage / Repository Last commit date
EditButton.php 3 months ago EditorFavorites.php 3 months ago EditorMenuStatus.php 3 months ago IntegrationStatus.php 3 months ago ListColumnOrder.php 3 months ago ListScreenOrder.php 3 months ago OriginalColumnsRepository.php 3 months ago TableListOrder.php 3 months ago UserColumnOrder.php 3 months ago
EditorMenuStatus.php
64 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Storage\Repository;
6
7 use AC\Storage\UserOption;
8
9 class EditorMenuStatus
10 {
11
12 private UserOption $storage;
13
14 public function __construct()
15 {
16 $this->storage = new UserOption('ac_preferences_menu_status');
17 }
18
19 public function get_groups(): array
20 {
21 return $this->storage->get() ?: [];
22 }
23
24 public function save_status(string $group, bool $active): void
25 {
26 $active
27 ? $this->add_group($group)
28 : $this->remove($group);
29 }
30
31 private function add_group(string $group): void
32 {
33 $data = $this->get_groups();
34
35 if ( ! in_array($group, $data, true)) {
36 $data[] = $group;
37 }
38
39 $this->save($data);
40 }
41
42 private function save(array $data): void
43 {
44 $data
45 ? $this->storage->save($data)
46 : $this->storage->delete();
47 }
48
49 private function remove(string $group): void
50 {
51 $data = $this->get_groups();
52
53 $key = array_search($group, $data);
54
55 if (false !== $key) {
56 unset($data[$key]);
57 }
58
59 $this->save(
60 array_values($data)
61 );
62 }
63
64 }