PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 4.6.1
Admin Columns v4.6.1
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 / View.php
codepress-admin-columns / classes Last commit date
Admin 3 years ago Ajax 3 years ago ApplyFilter 3 years ago Asset 3 years ago Capabilities 3 years ago Check 2 years ago Column 3 years ago ColumnRepository 3 years ago ColumnSize 3 years ago Controller 3 years ago Deprecated 3 years ago Exception 3 years ago Form 3 years ago Helper 3 years ago Integration 3 years ago ListScreen 3 years ago ListScreenRepository 3 years ago ListTable 3 years ago Message 3 years ago Meta 3 years ago Nonce 3 years ago Plugin 3 years ago Preferences 3 years ago Promo 3 years ago Relation 3 years ago Request 3 years ago Response 3 years ago Sanitize 3 years ago Screen 3 years ago Service 3 years ago Settings 3 years ago Storage 3 years ago Table 3 years ago ThirdParty 3 years ago Transient 3 years ago Type 3 years ago AdminColumns.php 3 years ago ApplyFilter.php 3 years ago ArrayIterator.php 3 years ago Capabilities.php 3 years ago Collection.php 3 years ago Column.php 3 years ago ColumnGroups.php 3 years ago ColumnRepository.php 3 years ago Config.php 3 years ago DefaultColumnsRepository.php 3 years ago Dependencies.php 3 years ago EncodedListScreenData.php 3 years ago EncodedListScreenDataFactory.php 3 years ago Expirable.php 3 years ago Groups.php 3 years ago Helper.php 3 years ago Integration.php 3 years ago IntegrationRepository.php 3 years ago Integrations.php 3 years ago Iterator.php 3 years ago ListScreen.php 3 years ago ListScreenCollection.php 3 years ago ListScreenFactory.php 3 years ago ListScreenGroups.php 3 years ago ListScreenPost.php 3 years ago ListScreenRepository.php 3 years ago ListScreenRepositoryWritable.php 3 years ago ListScreenTypes.php 3 years ago ListScreenWP.php 3 years ago ListScreens.php 3 years ago ListTable.php 3 years ago ListTableFactory.php 3 years ago Message.php 3 years ago MetaType.php 3 years ago Middleware.php 3 years ago OpCacheInvalidateTrait.php 3 years ago Plugin.php 3 years ago PluginActionLinks.php 3 years ago PluginInformation.php 3 years ago PluginUpdate.php 3 years ago Preferences.php 3 years ago Promo.php 3 years ago PromoCollection.php 3 years ago Registerable.php 3 years ago Relation.php 3 years ago Renderable.php 3 years ago Request.php 3 years ago Sanitize.php 3 years ago Screen.php 3 years ago ScreenController.php 3 years ago Stringable.php 3 years ago Transient.php 3 years ago TypedArrayIterator.php 3 years ago View.php 3 years ago ViewCollection.php 3 years ago WpListTableFactory.php 3 years ago
View.php
126 lines
1 <?php
2
3 namespace AC;
4
5 class View implements Renderable {
6
7 /**
8 * @var array
9 */
10 private $data = [];
11
12 /**
13 * @var string
14 */
15 private $template;
16
17 public function __construct( array $data = [] ) {
18 $this->set_data( $data );
19 }
20
21 public function get( $key ) {
22 if ( ! isset( $this->data[ $key ] ) ) {
23 return null;
24 }
25
26 return $this->data[ $key ];
27 }
28
29 public function __get( $key ) {
30 return $this->get( $key );
31 }
32
33 public function __set( $key, $value ) {
34 return $this->set( $key, $value );
35 }
36
37 /**
38 * @param $key
39 * @param $value
40 *
41 * @return $this
42 */
43 public function set( $key, $value ) {
44 $this->data[ $key ] = $value;
45
46 return $this;
47 }
48
49 public function get_data() {
50 return $this->data;
51 }
52
53 public function set_data( array $data ) {
54 foreach ( $data as $key => $value ) {
55 $this->set( $key, $value );
56 }
57
58 return $this;
59 }
60
61 /**
62 * Will try to resolve the current template to a file
63 * @return false|string
64 */
65 public function resolve_template() {
66
67 /**
68 * Returns the available template paths for column settings
69 *
70 * @param array $paths Template paths
71 * @param string $template Current template path
72 */
73 $paths = apply_filters( 'ac/view/templates', [ AC()->get_dir() . 'templates' ], $this->template );
74
75 foreach ( $paths as $path ) {
76 $file = $path . '/' . $this->template . '.php';
77
78 if ( is_readable( $file ) ) {
79 include $file;
80
81 return true;
82 }
83 }
84
85 return false;
86 }
87
88 /**
89 * Get a string representation of this object
90 * @return string
91 */
92 public function render() {
93 ob_start();
94
95 $this->resolve_template();
96
97 return ob_get_clean();
98 }
99
100 /**
101 * @return string
102 */
103 public function get_template() {
104 return $this->template;
105 }
106
107 /**
108 * @param string $template
109 *
110 * @return $this
111 */
112 public function set_template( $template ) {
113 $this->template = $template;
114
115 return $this;
116 }
117
118 /**
119 * Should call self::render when treated as a string
120 * @return string
121 */
122 public function __toString() {
123 return $this->render();
124 }
125
126 }