PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 4.1.6
Admin Columns v4.1.6
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 / AdminFactory.php
codepress-admin-columns / classes Last commit date
Admin 6 years ago Ajax 6 years ago Asset 6 years ago Autoloader 6 years ago Capabilities 6 years ago Check 6 years ago Column 6 years ago Controller 6 years ago Deprecated 6 years ago Exception 6 years ago Form 6 years ago Helper 6 years ago Integration 6 years ago ListScreen 6 years ago ListScreenRepository 6 years ago ListTable 6 years ago Message 6 years ago Meta 6 years ago Plugin 6 years ago Preferences 6 years ago Promo 6 years ago Relation 6 years ago Request 6 years ago Response 6 years ago Screen 6 years ago Service 6 years ago Settings 6 years ago Storage 6 years ago Table 6 years ago ThirdParty 6 years ago Transient 6 years ago Type 6 years ago Addon.php 6 years ago Admin.php 6 years ago AdminColumns.php 6 years ago AdminFactory.php 6 years ago ArrayIterator.php 6 years ago Autoloader.php 6 years ago Builder.php 6 years ago Capabilities.php 6 years ago Collection.php 6 years ago Column.php 6 years ago Config.php 6 years ago DefaultColumnsRepository.php 6 years ago Dependencies.php 6 years ago EncodedListScreenData.php 6 years ago EncodedListScreenDataFactory.php 6 years ago Expirable.php 6 years ago Groups.php 6 years ago Helper.php 6 years ago Integration.php 6 years ago Integrations.php 6 years ago ListScreen.php 6 years ago ListScreenCollection.php 6 years ago ListScreenFactory.php 6 years ago ListScreenGroups.php 6 years ago ListScreenPost.php 6 years ago ListScreenRepository.php 6 years ago ListScreenRepositoryWritable.php 6 years ago ListScreenTypes.php 6 years ago ListScreenWP.php 6 years ago ListScreens.php 6 years ago ListTable.php 6 years ago ListTableFactory.php 6 years ago Message.php 6 years ago MetaType.php 6 years ago Middleware.php 6 years ago NoticeChecks.php 6 years ago OpCacheInvalidateTrait.php 6 years ago PermissionChecker.php 6 years ago Plugin.php 6 years ago PluginActionLinks.php 6 years ago PluginInformation.php 6 years ago Preferences.php 6 years ago Promo.php 6 years ago PromoCollection.php 6 years ago Registrable.php 6 years ago Relation.php 6 years ago Renderable.php 6 years ago Request.php 6 years ago Screen.php 6 years ago ScreenController.php 6 years ago TableLoader.php 6 years ago Transient.php 6 years ago TypedArrayIterator.php 6 years ago View.php 6 years ago
AdminFactory.php
97 lines
1 <?php
2
3 namespace AC;
4
5 use AC\Admin\Page;
6 use AC\Admin\PageCollection;
7 use AC\Admin\Section;
8 use AC\Admin\SectionCollection;
9 use AC\Asset\Location;
10 use AC\Controller\ListScreenRequest;
11 use AC\Deprecated\Hooks;
12 use AC\ListScreenRepository\Storage;
13
14 class AdminFactory {
15
16 /**
17 * @var Storage
18 */
19 protected $storage;
20
21 /**
22 * @var Location\Absolute
23 */
24 protected $location;
25
26 public function __construct( Storage $storage, Location\Absolute $location ) {
27 $this->storage = $storage;
28 $this->location = $location;
29 }
30
31 /**
32 * @return Page\Columns
33 */
34 protected function create_columns_page() {
35 $list_screen_controller = new ListScreenRequest(
36 new Request(),
37 $this->storage,
38 new Preferences\Site( 'settings' )
39 );
40
41 return new Page\Columns(
42 $list_screen_controller,
43 $this->location,
44 new DefaultColumnsRepository(),
45 new Section\Partial\Menu( $list_screen_controller, false )
46 );
47 }
48
49 protected function create_section_general() {
50 return new Section\General( [
51 new Section\Partial\ShowEditButton(),
52 ] );
53 }
54
55 /**
56 * @return Page\Settings
57 */
58 protected function create_settings_page() {
59 $sections = new SectionCollection();
60 $sections->add( $this->create_section_general() )
61 ->add( new Section\Restore() );
62
63 return new Page\Settings( $sections );
64 }
65
66 /**
67 * @return PageCollection
68 */
69 protected function get_pages() {
70 $pages = new PageCollection();
71 $pages->add( $this->create_columns_page() )
72 ->add( $this->create_settings_page() )
73 ->add( new Page\Addons( $this->location, new Integrations() ) );
74
75 $hooks = new Hooks();
76 if ( $hooks->get_count() > 0 ) {
77 $pages->add( new Page\Help( new Hooks(), $this->location ) );
78 }
79
80 return $pages;
81 }
82
83 /**
84 * @return Admin
85 */
86 public function create() {
87 $pages = $this->get_pages();
88
89 return new Admin(
90 'options-general.php',
91 'admin_menu',
92 $pages,
93 $this->location
94 );
95 }
96
97 }