PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.1.4
Admin Columns v7.1.4
7.1.4 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 / EditorFavorites.php
codepress-admin-columns / classes / Storage / Repository Last commit date
EditButton.php 2 days ago EditorFavorites.php 2 days ago EditorMenuStatus.php 2 days ago IntegrationStatus.php 2 days ago ListColumnOrder.php 2 days ago ListScreenOrder.php 2 days ago OriginalColumnsRepository.php 2 days ago TableListOrder.php 2 days ago UserColumnOrder.php 2 days ago
EditorFavorites.php
65 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Storage\Repository;
6
7 use AC\Storage\UserOption;
8 use AC\Type\TableId;
9 use AC\Type\TableIdCollection;
10
11 class EditorFavorites
12 {
13 private UserOption $storage;
14
15 public function __construct()
16 {
17 $this->storage = new UserOption('ac_preferences_menu_favorites');
18 }
19
20 private function get_data(): array
21 {
22 return $this->storage->get() ?: [];
23 }
24
25 public function add(TableId $id): void
26 {
27 $data = $this->get_data();
28
29 if (in_array((string)$id, $data, true)) {
30 return;
31 }
32
33 $data[] = (string)$id;
34
35 $this->storage->save($data);
36 }
37
38 public function remove(TableId $id): void
39 {
40 $data = $this->get_data();
41
42 foreach ($data as $k => $value) {
43 if ($id->equals(new TableId($value))) {
44 unset($data[$k]);
45 }
46 }
47
48 $this->storage->save(
49 array_values($data)
50 );
51 }
52
53 public function find_all(): TableIdCollection
54 {
55 $keys = new TableIdCollection();
56
57 foreach ($this->get_data() as $key) {
58 $keys->add(new TableId($key));
59 }
60
61 return $keys;
62 }
63
64 }
65