PluginProbe
Powerkit – Supercharge your WordPress Site / 2.4.4
Powerkit – Supercharge your WordPress Site v2.4.4
3.1.1 3.1.0 3.0.9 3.0.8 trunk 2.2.6 2.2.7 2.2.8 2.2.9 2.3.0 2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.3.9 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 All 87 releases
powerkit / core / core-powerkit-functions.php

core-powerkit-functions.php in Powerkit – Supercharge your WordPress Site 2.4.4, at core/core-powerkit-functions.php

235 lines 7.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * The basic functions for the plugin and modules
4 *
5 * @package Powerkit
6 * @subpackage Core
7 * @version 1.0.0
8 * @since 1.0.0
9 */
10
11 /**
12 * This function include files to the plugin.
13 *
14 * @param string $dir Directory where you need to search for files.
15 */
16 function powerkit_load_files( $dir ) {
17
18 $path = POWERKIT_PATH . $dir;
19
20 // Loop through files.
21 foreach ( glob( $path . '/*' ) as $file ) {
22 $basename = basename( $file );
23
24 if ( is_file( $file ) ) {
25
26 require_once wp_normalize_path( $file );
27
28 } elseif ( file_exists( sprintf( '%1$s/%2$s/%2$s.php', $path, $basename ) ) ) {
29
30 require_once wp_normalize_path( sprintf( '%1$s/%2$s/%2$s.php', $path, $basename ) );
31
32 } elseif ( file_exists( sprintf( '%1$s/%2$s/class-powerkit-%2$s.php', $path, $basename ) ) ) {
33
34 require_once wp_normalize_path( sprintf( '%1$s/%2$s/class-powerkit-%2$s.php', $path, $basename ) );
35 }
36 }
37 }
38
39 /**
40 * This function checks if the module is enabled
41 *
42 * @param array $info The module info.
43 */
44 function powerkit_register_module_info( $info ) {
45
46 $modules = (array) powerkit_get_data( 'modules' );
47
48 // Slug of module.
49 $slug = $info['slug'];
50
51 // Check exists slug.
52 if ( $slug ) {
53
54 // Enabled load extensions.
55 $module_enabled = get_option( 'powerkit_enabled_' . $slug, $info['enabled'] );
56
57 if ( $module_enabled && 'default' === $info['type'] && $info['load_extensions'] ) {
58 foreach ( $info['load_extensions'] as $extension ) {
59 $modules[ $extension ]['enabled'] = true;
60 }
61 }
62
63 // Add new info.
64 if ( isset( $modules[ $slug ] ) ) {
65 $modules[ $slug ] = array_merge( (array) $info, (array) $modules[ $slug ] );
66 } else {
67 $modules[ $slug ] = (array) $info;
68 }
69
70 // Update info.
71 powerkit_set_data( 'modules', $modules );
72 }
73 }
74
75 /**
76 * This function return modules.
77 */
78 function powerkit_get_modules() {
79 $modules = powerkit_get_data( 'modules' );
80
81 // Sort modules.
82 if ( is_array( $modules ) && $modules ) {
83 $modules_keys = array_keys( $modules );
84
85 foreach ( $modules as $key => $row ) {
86 $modules_priority[ $key ] = $row['priority'];
87 $modules_name[ $key ] = $row['name'];
88 }
89 array_multisort( $modules_priority, SORT_ASC, $modules_name, SORT_ASC, $modules, $modules_keys );
90
91 $modules = array_combine( $modules_keys, $modules );
92 }
93
94 return $modules;
95 }
96
97 /**
98 * This function return meta info of module
99 *
100 * @param string $slug The slug.
101 * @param string $field The field.
102 */
103 function powerkit_get_module_meta( $slug, $field = false ) {
104 $modules = (array) powerkit_get_data( 'modules' );
105
106 if ( $field ) {
107 if ( isset( $modules[ $slug ][ $field ] ) ) {
108 return $modules[ $slug ][ $field ];
109 }
110 }
111 if ( isset( $modules[ $slug ] ) ) {
112 return $modules[ $slug ];
113 }
114 }
115
116 /**
117 * This function return value from сonnect module.
118 *
119 * @param string $name The field name of сonnect.
120 */
121 function powerkit_connect( $name ) {
122
123 $default = array(
124 'instagram_app_id' => 'MjU5MzMzMzEwNDI0NzQxOA==',
125 'instagram_app_url' => 'https://api.codesupply.co/instagram-connect.php',
126 'instagram_app_fb_client_id' => 'MzA1NDQ5ODgzNjk4NjQ5',
127 'instagram_app_fb_url' => 'https://api.codesupply.co/facebook-connect.php?business=true',
128 'instagram_app_type' => '',
129 'instagram_app_access_token' => '',
130 'instagram_app_user_id' => '',
131 'instagram_app_username' => '',
132 'facebook_app_id' => 'MzA1NDQ5ODgzNjk4NjQ5',
133 'facebook_app_url' => 'https://api.codesupply.co/facebook-connect.php',
134 'facebook_app_access_token' => '',
135 'facebook_app_accounts' => '',
136 'facebook_share_access_token' => 'MTc5NjYwNzk4Nzc0Mjk2JTdDZmV3YV9LRU9TMHBlbHNwUE9md19qcWxqcVRr',
137 'twitter_app_consumer_key' => 'Q25GVjVNdWN3MzRYQjZNRU0yblhDeVpJTg==',
138 'twitter_app_consumer_secret' => 'djZxSFNNczE1MlVqeld5SkNGT2FYSEtoYnE1V2U5NGJmMXIzZTRRdGwyYXEybnNwS0U=',
139 'twitter_app_url' => 'https://api.codesupply.co/twitter-connect.php',
140 'twitter_app_oauth_token' => '',
141 'twitter_app_oauth_token_secret' => '',
142 'twitter_app_user_id' => '',
143 'twitter_app_screen_name' => '',
144 'youtube_key' => 'QUl6YVN5QUxlUkNTMkVoWThnY0xndlRiTlU3a3g4cXdsVDNLdU9N',
145 'telegram_token' => 'NTM1NTAwMjM4OkFBR3dUVDBOMDhoeHFPamxHYVhDVDFGa01mb2c2blRnQ2ZR',
146 'soundcloud_client_id' => 'OTcyMjBmYjM0YWQwMzRiNWQ0YjU5Yjk2N2ZkMTcxN2U=',
147 'dribbble_token' => '',
148 'vimeo_token' => 'ODhiMDU4NjA4YWViMmU2MjdiYjc4MmY2MzNkNjVjNjQ=',
149 'behance_client_id' => 'R0QxcmhQcUpvaWdaN0xqcFFEVEltMkZjOGdPemkxajQ=',
150 'github_client_id' => 'Y2I3M2Q3NDczZTg1MDRhNzlmMDQ=',
151 'github_client_secret' => 'ZDI5OTdhNjZhZmRjZmFmZWQ4OGRhNjhhMzYyZWRmZTE4OTNlNjgwYQ==',
152 'twitch_client_id' => 'dmk0MDZ5OWhhNDV5MmRzcmtzcDZvMTd1bWt5NTR3',
153 'ok_application_key' => 'Q0JBREVPQU5FQkFCQUJBQkE=',
154 'ok_access_token' => 'dGtuMWNmTTJZcWZFRTBob2VxMVNHSlZrcFI1ckh0NlNuTmRtanQ0VmM1SzJ1WXpwcmF1ajNKUVZYN2J2SXI5elNwNVlw',
155 'ok_session_secret_key' => 'ZGFmYTEzZWMyMjA4NGE2MDEwMTliN2Y2ZGRhZGQ0MzU=',
156 'vk_token' => 'ZWRkNjQ1ZGU3ZDQ1OTQwZjllMTMyYTMyNmIxM2MxNWJjNWYxMWNhMzRkY2MzYTc1MGE2MmQxOTI4YjY5MjExZThmNTU0Nzc5ZWU3OTNmMTk2YTJiNw==',
157 );
158
159 $name = str_replace( 'powerkit_connect_', '', $name );
160
161 // Set value by slug.
162 $value = get_option( 'powerkit_connect_' . $name );
163
164 // Set default value.
165 if ( ! $value && key_exists( $name, $default ) ) {
166
167 if ( base64_encode( base64_decode( $default[ $name ], true ) ) === $default[ $name ] ) {
168 $value = base64_decode( $default[ $name ] );
169 } else {
170 $value = $default[ $name ];
171 }
172 }
173
174 return $value;
175 }
176
177 /**
178 * This function checks if the module is enabled
179 *
180 * @param string $slug The module slug.
181 */
182 function powerkit_module_enabled( $slug ) {
183 $module = powerkit_get_module_meta( $slug );
184
185 // Default status.
186 $status = $module['enabled'];
187
188 // Check database.
189 if ( 'default' === $module['type'] ) {
190 $enabled = get_option( 'powerkit_enabled_' . $slug, $module['enabled'] );
191
192 $status = '0' === $enabled ? false : $enabled;
193 }
194
195 return apply_filters( 'powerkit_module_enabled', $status, $slug );
196 }
197
198 /**
199 * This function return unique slug name to refer to this menu by.
200 *
201 * @param string $slug The module slug.
202 */
203 function powerkit_get_page_slug( $slug ) {
204 return sprintf( 'powerkit_%s', $slug );
205 }
206
207 /**
208 * This function return admin page url.
209 *
210 * @param string $slug The module slug.
211 * @param string $type The type page.
212 */
213 function powerkit_get_page_url( $slug, $type = 'general' ) {
214 switch ( $type ) {
215 case 'general':
216 return admin_url( sprintf( 'options-general.php?page=%s', powerkit_get_page_slug( $slug ) ) );
217 case 'writing':
218 return admin_url( sprintf( 'options-writing.php?page=%s', powerkit_get_page_slug( $slug ) ) );
219 case 'reading':
220 return admin_url( sprintf( 'options-reading.php?page=%s', powerkit_get_page_slug( $slug ) ) );
221 case 'discussion':
222 return admin_url( sprintf( 'options-reading.php?page=%s', powerkit_get_page_slug( $slug ) ) );
223 case 'media':
224 return admin_url( sprintf( 'options-media.php?page=%s', powerkit_get_page_slug( $slug ) ) );
225 case 'permalink':
226 return admin_url( sprintf( 'options-permalink.php?page=%s', powerkit_get_page_slug( $slug ) ) );
227 case 'themes':
228 return admin_url( sprintf( 'themes.php?page=%s', powerkit_get_page_slug( $slug ) ) );
229 case 'admin':
230 return admin_url( sprintf( 'admin.php?page=%s', powerkit_get_page_slug( $slug ) ) );
231 default:
232 return admin_url( sprintf( '%s?page=%s', $type, powerkit_get_page_slug( $slug ) ) );
233 }
234 }
235