| 1 |
<?php |
| 2 |
|
| 3 |
namespace WPAdminify\Inc; |
| 4 |
|
| 5 |
use WPAdminify\Inc\Classes\Helper ; |
| 6 |
// no direct access allowed |
| 7 |
if ( !defined( 'ABSPATH' ) ) { |
| 8 |
exit; |
| 9 |
} |
| 10 |
class Utils |
| 11 |
{ |
| 12 |
public $post_types = '' ; |
| 13 |
/** |
| 14 |
* Check if the Module is Enable/Disable |
| 15 |
* |
| 16 |
* @param [type] $value |
| 17 |
* |
| 18 |
* @return void |
| 19 |
*/ |
| 20 |
public static function check_modules( $value ) |
| 21 |
{ |
| 22 |
|
| 23 |
if ( empty($value) ) { |
| 24 |
return; |
| 25 |
} else { |
| 26 |
return true; |
| 27 |
} |
| 28 |
|
| 29 |
} |
| 30 |
|
| 31 |
/** |
| 32 |
* Check given value empty or not |
| 33 |
* |
| 34 |
* @param [type] $value |
| 35 |
* |
| 36 |
* @return void |
| 37 |
*/ |
| 38 |
public static function check_is_empty( $value, $default = '' ) |
| 39 |
{ |
| 40 |
$value = ( !empty(esc_attr( $value )) ? $value : $default ); |
| 41 |
return $value; |
| 42 |
} |
| 43 |
|
| 44 |
/** |
| 45 |
* Check given value empty or not |
| 46 |
* |
| 47 |
* @param [type] $value |
| 48 |
* |
| 49 |
* @return void |
| 50 |
*/ |
| 51 |
public static function restricted_for( $restrict_for ) |
| 52 |
{ |
| 53 |
if ( !is_array( $restrict_for ) ) { |
| 54 |
return false; |
| 55 |
} |
| 56 |
if ( !function_exists( 'wp_get_current_user' ) ) { |
| 57 |
include ABSPATH . "wp-includes/pluggable.php"; |
| 58 |
} |
| 59 |
$current_user = wp_get_current_user(); |
| 60 |
$current_name = $current_user->display_name; |
| 61 |
$current_roles = $current_user->roles; |
| 62 |
$all_roles = wp_roles()->get_names(); |
| 63 |
if ( in_array( $current_name, $restrict_for ) ) { |
| 64 |
return true; |
| 65 |
} |
| 66 |
// Super Admin for Multisite |
| 67 |
if ( is_super_admin() && is_multisite() ) { |
| 68 |
|
| 69 |
if ( in_array( 'Super Admin', $restrict_for ) ) { |
| 70 |
return true; |
| 71 |
} else { |
| 72 |
return false; |
| 73 |
} |
| 74 |
|
| 75 |
} |
| 76 |
// Normal Super Admin |
| 77 |
if ( $current_user->ID === 1 ) { |
| 78 |
|
| 79 |
if ( in_array( 'Super Admin', $restrict_for ) ) { |
| 80 |
return true; |
| 81 |
} else { |
| 82 |
return false; |
| 83 |
} |
| 84 |
|
| 85 |
} |
| 86 |
foreach ( $current_roles as $role ) { |
| 87 |
$role_name = $all_roles[$role]; |
| 88 |
if ( in_array( strtolower( $role_name ), $restrict_for ) ) { |
| 89 |
return true; |
| 90 |
} |
| 91 |
} |
| 92 |
} |
| 93 |
|
| 94 |
/** |
| 95 |
* Check Site wide plugin settings |
| 96 |
*/ |
| 97 |
public static function is_site_wide( $plugin ) |
| 98 |
{ |
| 99 |
if ( !is_multisite() ) { |
| 100 |
return false; |
| 101 |
} |
| 102 |
$plugins = get_site_option( 'active_sitewide_plugins' ); |
| 103 |
if ( isset( $plugins[$plugin] ) ) { |
| 104 |
return true; |
| 105 |
} |
| 106 |
return false; |
| 107 |
} |
| 108 |
|
| 109 |
/** |
| 110 |
* Restricts for role / user |
| 111 |
*/ |
| 112 |
public static function restrict_for( $disabled_for ) |
| 113 |
{ |
| 114 |
if ( !is_array( $disabled_for ) ) { |
| 115 |
return false; |
| 116 |
} |
| 117 |
require_once ABSPATH . '/wp-includes/pluggable.php'; |
| 118 |
if ( !function_exists( 'wp_get_current_user' ) ) { |
| 119 |
return false; |
| 120 |
} |
| 121 |
$current_user = wp_get_current_user(); |
| 122 |
$current_name = $current_user->display_name; |
| 123 |
$current_roles = $current_user->roles; |
| 124 |
$formattedroles = array(); |
| 125 |
foreach ( $disabled_for as $item ) { |
| 126 |
$item = strtolower( $item ); |
| 127 |
$item = str_replace( ' ', '_', $item ); |
| 128 |
array_push( $formattedroles, $item ); |
| 129 |
} |
| 130 |
if ( in_array( $current_name, $disabled_for ) ) { |
| 131 |
return true; |
| 132 |
} |
| 133 |
foreach ( $current_roles as $role ) { |
| 134 |
if ( in_array( $role, $formattedroles ) ) { |
| 135 |
return true; |
| 136 |
} |
| 137 |
} |
| 138 |
} |
| 139 |
|
| 140 |
// Get Taxonomies |
| 141 |
public static function get_taxonomies() |
| 142 |
{ |
| 143 |
$args = array( |
| 144 |
'public' => true, |
| 145 |
'show_ui' => true, |
| 146 |
); |
| 147 |
$output = 'objects'; |
| 148 |
$taxonomies = get_taxonomies( $args, $output ); |
| 149 |
$taxonomies = $taxonomies; |
| 150 |
return $taxonomies; |
| 151 |
} |
| 152 |
|
| 153 |
// Get Post Types |
| 154 |
public static function get_post_types() |
| 155 |
{ |
| 156 |
$args = array( |
| 157 |
'public' => true, |
| 158 |
'show_ui' => true, |
| 159 |
); |
| 160 |
$output = 'objects'; |
| 161 |
$post_types = get_post_types( $args, $output ); |
| 162 |
$post_types = $post_types; |
| 163 |
return $post_types; |
| 164 |
} |
| 165 |
|
| 166 |
// Get Post Meta |
| 167 |
public static function post_meta( $meta_key ) |
| 168 |
{ |
| 169 |
$meta_key = get_post_meta( get_the_ID(), $meta_key, true ); |
| 170 |
return $meta_key; |
| 171 |
} |
| 172 |
|
| 173 |
//// verfiy current page id |
| 174 |
public static function jltwp_adminify_currentpage_id( $id ) |
| 175 |
{ |
| 176 |
if ( !function_exists( "get_current_screen" ) ) { |
| 177 |
return true; |
| 178 |
} |
| 179 |
$screen = get_current_screen(); |
| 180 |
return is_object( $screen ) && $screen->id == $id; |
| 181 |
} |
| 182 |
|
| 183 |
/** |
| 184 |
* Get Current Admin Page Title |
| 185 |
* |
| 186 |
* @param string $title |
| 187 |
* |
| 188 |
* @return void |
| 189 |
*/ |
| 190 |
public static function admin_page_title( $title = '' ) |
| 191 |
{ |
| 192 |
$title = ( isset( $title ) && !empty($title) ? $title : WP_ADMINIFY ); |
| 193 |
echo $title ; |
| 194 |
|
| 195 |
if ( is_multisite() ) { |
| 196 |
$text = ' | ' . esc_html__( 'Current Blog ID', WP_ADMINIFY_TD ) . ': ' . get_current_blog_id(); |
| 197 |
?> |
| 198 |
<?php |
| 199 |
echo self::admin_page_subtitle( $text ) ; |
| 200 |
?> |
| 201 |
<?php |
| 202 |
} |
| 203 |
|
| 204 |
?> |
| 205 |
<?php |
| 206 |
} |
| 207 |
|
| 208 |
/** |
| 209 |
* Get Current Admin Subtitle |
| 210 |
*/ |
| 211 |
public static function admin_page_subtitle( $text ) |
| 212 |
{ |
| 213 |
?> |
| 214 |
|
| 215 |
<span style="color:#8b959e;" <?php |
| 216 |
if ( is_rtl() ) { |
| 217 |
echo ' dir="rtl"' ; |
| 218 |
} |
| 219 |
?>> |
| 220 |
<?php |
| 221 |
echo esc_html( $text ) ; |
| 222 |
?> |
| 223 |
</span> |
| 224 |
|
| 225 |
<?php |
| 226 |
} |
| 227 |
|
| 228 |
public static function convert_name_to_class( $name ) |
| 229 |
{ |
| 230 |
$class = str_replace( array( |
| 231 |
' ', |
| 232 |
',', |
| 233 |
'.', |
| 234 |
'"', |
| 235 |
"'", |
| 236 |
'/', |
| 237 |
"\\", |
| 238 |
'+', |
| 239 |
'=', |
| 240 |
')', |
| 241 |
'(', |
| 242 |
'*', |
| 243 |
'&', |
| 244 |
'^', |
| 245 |
'%', |
| 246 |
'$', |
| 247 |
'#', |
| 248 |
'@', |
| 249 |
'!', |
| 250 |
'~', |
| 251 |
'`', |
| 252 |
'<', |
| 253 |
'>', |
| 254 |
'?', |
| 255 |
'[', |
| 256 |
']', |
| 257 |
'{', |
| 258 |
'}', |
| 259 |
'|', |
| 260 |
':' |
| 261 |
), '', $name ); |
| 262 |
return $class; |
| 263 |
} |
| 264 |
|
| 265 |
public static function jltwp_adminify_class_cleanup( $string ) |
| 266 |
{ |
| 267 |
//Lower case everything |
| 268 |
$string = strtolower( $string ); |
| 269 |
//Make alphanumeric (removes all other characters) |
| 270 |
$string = preg_replace( "/[^a-z0-9_\\s-]/", "", $string ); |
| 271 |
//Clean up multiple dashes or whitespaces |
| 272 |
$string = preg_replace( "/[\\s-]+/", " ", $string ); |
| 273 |
//Convert whitespaces and underscore to dash |
| 274 |
$string = preg_replace( "/[\\s_]/", "-", $string ); |
| 275 |
return $string; |
| 276 |
} |
| 277 |
|
| 278 |
public static function sanitize_id( $url ) |
| 279 |
{ |
| 280 |
$url = preg_replace( '/^customize.php\\?return=.*$/', 'customize', $url ); |
| 281 |
$url = preg_replace( '/(&|&|&)?_wpnonce=([^&]+)/', '', $url ); |
| 282 |
return str_replace( array( |
| 283 |
'.php', |
| 284 |
'.', |
| 285 |
'/', |
| 286 |
'?', |
| 287 |
'=' |
| 288 |
), array( |
| 289 |
'', |
| 290 |
'_', |
| 291 |
'_', |
| 292 |
'_', |
| 293 |
'_' |
| 294 |
), $url ); |
| 295 |
} |
| 296 |
|
| 297 |
/** |
| 298 |
* Strip tags and it's content from the given string. |
| 299 |
* |
| 300 |
* @link https://stackoverflow.com/questions/14684077/remove-all-html-tags-from-php-string/#answer-39320168 |
| 301 |
* |
| 302 |
* @param string $text The string being stripped. |
| 303 |
* @return string The stripped string. |
| 304 |
*/ |
| 305 |
public static function strip_tags_content( $text ) |
| 306 |
{ |
| 307 |
$cleanup = preg_replace( '@<(\\w+)\\b.*?>.*?</\\1>@si', '', $text ); |
| 308 |
$cleanup = wp_strip_all_tags( $cleanup ); |
| 309 |
$cleanup = trim( $cleanup ); |
| 310 |
return $cleanup; |
| 311 |
} |
| 312 |
|
| 313 |
/** |
| 314 |
* String to ID |
| 315 |
* Remove Space replace with underscore and lowercase |
| 316 |
* |
| 317 |
* @param void |
| 318 |
* |
| 319 |
* @return string |
| 320 |
*/ |
| 321 |
public static function string_to_id( $string ) |
| 322 |
{ |
| 323 |
$string_replace = str_replace( " ", "_", $string ); |
| 324 |
$formatted_string = strtolower( $string_replace ); |
| 325 |
return $formatted_string; |
| 326 |
} |
| 327 |
|
| 328 |
/** |
| 329 |
* ID to String |
| 330 |
* Remove Space replace with underscore and lowercase |
| 331 |
* |
| 332 |
* @param void |
| 333 |
* |
| 334 |
* @return string |
| 335 |
*/ |
| 336 |
public static function id_to_string( $string ) |
| 337 |
{ |
| 338 |
$string_replace = str_replace( "_", " ", $string ); |
| 339 |
$formatted_string = ucwords( $string_replace ); |
| 340 |
return $formatted_string; |
| 341 |
} |
| 342 |
|
| 343 |
/** |
| 344 |
* Check is Plugin Active |
| 345 |
* |
| 346 |
* @param [type] $plugin_basename |
| 347 |
* |
| 348 |
* @return boolean |
| 349 |
*/ |
| 350 |
public static function is_plugin_active( $plugin_basename ) |
| 351 |
{ |
| 352 |
include_once ABSPATH . 'wp-admin/includes/plugin.php'; |
| 353 |
return is_plugin_active( $plugin_basename ); |
| 354 |
} |
| 355 |
|
| 356 |
/** |
| 357 |
* User Defined Settings |
| 358 |
*/ |
| 359 |
public static function get_user_preference( $key ) |
| 360 |
{ |
| 361 |
$userid = get_current_user_id(); |
| 362 |
$current = get_user_meta( $userid, '_wpadminify_preferences', true ); |
| 363 |
$value = false; |
| 364 |
if ( is_array( $current ) ) { |
| 365 |
if ( isset( $current[$key] ) ) { |
| 366 |
$value = $current[$key]; |
| 367 |
} |
| 368 |
} |
| 369 |
return $value; |
| 370 |
} |
| 371 |
|
| 372 |
/** |
| 373 |
* Sanitises and strips tags of input from ajax |
| 374 |
* @since 1.0.0 |
| 375 |
* @variables $values = item to clean (array or string) |
| 376 |
*/ |
| 377 |
public static function clean_ajax_input( $values ) |
| 378 |
{ |
| 379 |
|
| 380 |
if ( is_array( $values ) ) { |
| 381 |
foreach ( $values as $index => $in ) { |
| 382 |
|
| 383 |
if ( is_array( $in ) ) { |
| 384 |
$values[$index] = self::clean_ajax_input( $in ); |
| 385 |
} else { |
| 386 |
$values[$index] = strip_tags( $in ); |
| 387 |
} |
| 388 |
|
| 389 |
} |
| 390 |
} else { |
| 391 |
$values = strip_tags( $values ); |
| 392 |
} |
| 393 |
|
| 394 |
return $values; |
| 395 |
} |
| 396 |
|
| 397 |
/** |
| 398 |
* Check Ajax Error Messages |
| 399 |
* |
| 400 |
* @param [type] $message |
| 401 |
* |
| 402 |
* @return void |
| 403 |
*/ |
| 404 |
public static function ajax_error_message( $message ) |
| 405 |
{ |
| 406 |
$returndata = array(); |
| 407 |
$returndata['error'] = true; |
| 408 |
$returndata['error_message'] = $message; |
| 409 |
return json_encode( $returndata ); |
| 410 |
} |
| 411 |
|
| 412 |
/** |
| 413 |
* Get All Updates |
| 414 |
* Themes, Plugins, Core etc |
| 415 |
* |
| 416 |
* @return void |
| 417 |
*/ |
| 418 |
public static function get_all_updates() |
| 419 |
{ |
| 420 |
$allupdates = []; |
| 421 |
$allupdates['total'] = 0; |
| 422 |
$allupdates['wordpress'] = 0; |
| 423 |
$allupdates['theme'] = 0; |
| 424 |
$allupdates['plugin'] = 0; |
| 425 |
if ( !is_admin() ) { |
| 426 |
return $allupdates; |
| 427 |
} |
| 428 |
if ( !current_user_can( 'install_plugins' ) ) { |
| 429 |
return $allupdates; |
| 430 |
} |
| 431 |
$updatesTotal = 0; |
| 432 |
|
| 433 |
if ( is_super_admin() && is_admin() ) { |
| 434 |
$pluginUpdates = get_plugin_updates(); |
| 435 |
$themeUpdates = get_theme_updates(); |
| 436 |
$wpUpdates = get_core_updates(); |
| 437 |
|
| 438 |
if ( isset( $wpUpdates[0] ) ) { |
| 439 |
$wpversion = $wpUpdates[0]->version; |
| 440 |
global $wp_version ; |
| 441 |
|
| 442 |
if ( $wpversion > $wp_version ) { |
| 443 |
$wpUpdates = 1; |
| 444 |
} else { |
| 445 |
$wpUpdates = 0; |
| 446 |
} |
| 447 |
|
| 448 |
} else { |
| 449 |
$wpUpdates = 0; |
| 450 |
} |
| 451 |
|
| 452 |
$updatesTotal = count( $pluginUpdates ) + count( $themeUpdates ) + $wpUpdates; |
| 453 |
$allupdates['total'] = $updatesTotal; |
| 454 |
$allupdates['wordpress'] = $wpUpdates; |
| 455 |
$allupdates['theme'] = $themeUpdates; |
| 456 |
$allupdates['plugin'] = $pluginUpdates; |
| 457 |
} |
| 458 |
|
| 459 |
return $allupdates; |
| 460 |
} |
| 461 |
|
| 462 |
public static function adminfiy_help_urls( |
| 463 |
$module_name = '', |
| 464 |
$docs = '', |
| 465 |
$youtube, |
| 466 |
$facebook_grp = '', |
| 467 |
$support = '' |
| 468 |
) |
| 469 |
{ |
| 470 |
$help_content = ''; |
| 471 |
// Modules |
| 472 |
|
| 473 |
if ( empty($module_name) ) { |
| 474 |
$module_name = 'Module'; |
| 475 |
} else { |
| 476 |
$module_name = $module_name; |
| 477 |
} |
| 478 |
|
| 479 |
// Docs |
| 480 |
|
| 481 |
if ( empty($docs) ) { |
| 482 |
$docs = 'https://wpadminify.com/kb'; |
| 483 |
} else { |
| 484 |
$docs = $docs; |
| 485 |
} |
| 486 |
|
| 487 |
// youtube |
| 488 |
|
| 489 |
if ( empty($youtube) ) { |
| 490 |
$youtube = 'https://www.youtube.com/playlist?list=PLqpMw0NsHXV-EKj9Xm1DMGa6FGniHHly8'; |
| 491 |
} else { |
| 492 |
$youtube = $youtube; |
| 493 |
} |
| 494 |
|
| 495 |
// facebook_grp |
| 496 |
|
| 497 |
if ( empty($facebook_grp) ) { |
| 498 |
$facebook_grp = 'https://www.facebook.com/groups/jeweltheme'; |
| 499 |
} else { |
| 500 |
$facebook_grp = $facebook_grp; |
| 501 |
} |
| 502 |
|
| 503 |
// Support |
| 504 |
|
| 505 |
if ( empty($support) ) { |
| 506 |
$support = 'https://wpadminify.com/support/wp-adminify'; |
| 507 |
} else { |
| 508 |
$support = $support; |
| 509 |
} |
| 510 |
|
| 511 |
$help_content = sprintf( |
| 512 |
__( '%1$s <a class="adminify-docs-url" href="%2$s" target="_blank"> ' . Utils::docs_icon() . ' Docs</a> |
| 513 |
<a class="adminify-video-url" href="%3$s" target="_blank">' . Utils::video_tutorials_icon() . ' Video Tutorial</a> <a class="adminify-fbgroup-url" href="%4$s" target="_blank">' . Utils::fbgroup_icon() . ' Facebook Group</a> <a class="adminify-support-url" href="%5$s" target="_blank">' . Utils::support_icon() . ' Support</a>', WP_ADMINIFY_TD ), |
| 514 |
$module_name, |
| 515 |
$docs, |
| 516 |
$youtube, |
| 517 |
$facebook_grp, |
| 518 |
$support |
| 519 |
); |
| 520 |
return $help_content; |
| 521 |
} |
| 522 |
|
| 523 |
// Upgrade to Pro Notice |
| 524 |
public static function adminify_upgrade_pro( $custom_message = '' ) |
| 525 |
{ |
| 526 |
$pro_message = ''; |
| 527 |
|
| 528 |
if ( empty($custom_message) ) { |
| 529 |
$pro_message = 'Get <strong>Pro Version</strong> to Unlock this feature.'; |
| 530 |
} else { |
| 531 |
$pro_message = $custom_message; |
| 532 |
} |
| 533 |
|
| 534 |
$jltwp_pro_notice = sprintf( __( '%s <a href="https://wpadminify.com/pricing" target="_blank">Upgrade to Pro Now!</a>', WP_ADMINIFY_TD ), $pro_message ); |
| 535 |
$pro_content = ''; |
| 536 |
$pro_content = '<div class="adminify-pro-notice"> |
| 537 |
<svg class="adminify-pro-notice-icon is-pulled-left mr-2" width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 538 |
<path fill-rule="evenodd" clip-rule="evenodd" d="M21.8233 0.18318C21.8541 0.215042 21.8753 0.255055 21.8843 0.298527C22.5767 3.32046 20.085 9.8239 16.4731 13.4209C15.8343 14.064 15.1407 14.6502 14.4002 15.1727C14.4955 16.2787 14.411 17.3846 13.9985 18.3318C12.8302 21.0043 9.75855 21.7824 8.44197 21.9937C8.36979 22.0059 8.29577 22.0012 8.22571 21.9799C8.15566 21.9587 8.09147 21.9215 8.03819 21.8713C7.9849 21.821 7.94397 21.7591 7.9186 21.6904C7.89323 21.6217 7.88411 21.548 7.89196 21.4751L8.36241 17.189C8.04096 17.1858 7.71987 17.1663 7.40039 17.1305C7.17735 17.1087 6.96893 17.0096 6.81109 16.8503L5.15076 15.1924C4.99146 15.0346 4.89242 14.8259 4.87084 14.6026C4.83497 14.281 4.81547 13.9578 4.8124 13.6343L0.524795 14.1076C0.451994 14.1156 0.378341 14.1065 0.309629 14.0811C0.240917 14.0558 0.17902 14.0148 0.128806 13.9615C0.0785915 13.9081 0.0414297 13.8438 0.0202432 13.7736C-0.000943262 13.7035 -0.0055768 13.6293 0.00670721 13.5571C0.223273 12.2368 1.00065 9.16771 3.67065 7.99148C4.61695 7.57859 5.72728 7.4965 6.83761 7.59481C7.35968 6.85546 7.94513 6.16306 8.58733 5.52547C12.1879 1.92304 18.8337 -0.585245 21.7099 0.118627C21.7531 0.128924 21.7924 0.151317 21.8233 0.18318ZM12.224 7.92186C12.3151 8.37957 12.5397 8.79996 12.8695 9.12986C13.0882 9.34908 13.348 9.52298 13.6339 9.64164C13.9198 9.7603 14.2263 9.82137 14.5358 9.82137C14.8453 9.82137 15.1517 9.7603 15.4377 9.64164C15.7236 9.52298 15.9833 9.34908 16.202 9.12986C16.5318 8.79996 16.7565 8.37957 16.8475 7.92186C16.9386 7.46415 16.892 6.98968 16.7137 6.55848C16.5353 6.12727 16.2332 5.7587 15.8455 5.49939C15.4578 5.24007 15.002 5.10166 14.5358 5.10166C14.0695 5.10166 13.6137 5.24007 13.226 5.49939C12.8384 5.7587 12.5362 6.12727 12.3579 6.55848C12.1795 6.98968 12.1329 7.46415 12.224 7.92186ZM5.47798 18.5161C5.99754 18.4262 6.4292 18.321 6.69831 18.0511C6.83974 17.9032 7.0897 18.0256 7.07153 18.2311C6.99299 18.8853 6.69667 19.4941 6.23032 19.9593C5.07579 21.1158 0.785726 21.225 0.785726 21.225C0.785726 21.225 0.894746 16.9334 2.04927 15.7768C2.51439 15.3115 3.12167 15.0153 3.77443 14.9353C3.81912 14.9292 3.86459 14.9374 3.90439 14.9586C3.94419 14.9799 3.97629 15.0131 3.99613 15.0537C4.01597 15.0942 4.02255 15.14 4.01493 15.1845C4.00731 15.229 3.98588 15.2699 3.95368 15.3015C3.80635 15.449 3.56965 16.0767 3.48961 16.5245C3.27991 17.7056 4.31069 18.7152 5.47798 18.5161Z" fill="#00BA88"/> |
| 539 |
</svg> |
| 540 |
<p> ' . $jltwp_pro_notice . '</p> |
| 541 |
</div>'; |
| 542 |
return $pro_content; |
| 543 |
} |
| 544 |
|
| 545 |
/** |
| 546 |
* Documentation SVG Icon |
| 547 |
*/ |
| 548 |
public static function docs_icon() |
| 549 |
{ |
| 550 |
return '<svg class="is-pulled-left mr-1 width="9" height="12" viewBox="0 0 9 12" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 551 |
<path d="M5.25 3.1875V0H0.5625C0.250781 0 0 0.250781 0 0.5625V11.4375C0 11.7492 0.250781 12 0.5625 12H8.4375C8.74922 12 9 11.7492 9 11.4375V3.75H5.8125C5.50313 3.75 5.25 3.49687 5.25 3.1875ZM6.75 8.71875C6.75 8.87344 6.62344 9 6.46875 9H2.53125C2.37656 9 2.25 8.87344 2.25 8.71875V8.53125C2.25 8.37656 2.37656 8.25 2.53125 8.25H6.46875C6.62344 8.25 6.75 8.37656 6.75 8.53125V8.71875ZM6.75 7.21875C6.75 7.37344 6.62344 7.5 6.46875 7.5H2.53125C2.37656 7.5 2.25 7.37344 2.25 7.21875V7.03125C2.25 6.87656 2.37656 6.75 2.53125 6.75H6.46875C6.62344 6.75 6.75 6.87656 6.75 7.03125V7.21875ZM6.75 5.53125V5.71875C6.75 5.87344 6.62344 6 6.46875 6H2.53125C2.37656 6 2.25 5.87344 2.25 5.71875V5.53125C2.25 5.37656 2.37656 5.25 2.53125 5.25H6.46875C6.62344 5.25 6.75 5.37656 6.75 5.53125ZM9 2.85703V3H6V0H6.14297C6.29297 0 6.43594 0.0585938 6.54141 0.164062L8.83594 2.46094C8.94141 2.56641 9 2.70938 9 2.85703Z" fill="#0347FF"/> |
| 552 |
</svg>'; |
| 553 |
} |
| 554 |
|
| 555 |
/** |
| 556 |
* Video Tutorials SVG Icon |
| 557 |
*/ |
| 558 |
public static function video_tutorials_icon() |
| 559 |
{ |
| 560 |
return '<svg class="is-pulled-left mr-1 width="8" height="10" viewBox="0 0 8 10" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 561 |
<path d="M7.5 4.13399C8.16667 4.51889 8.16667 5.48114 7.5 5.86604L1.5 9.33014C0.833334 9.71504 0 9.23392 0 8.46412V1.53592C0 0.766115 0.833333 0.28499 1.5 0.66989L7.5 4.13399Z" fill="#C30052"/> |
| 562 |
</svg>'; |
| 563 |
} |
| 564 |
|
| 565 |
/** |
| 566 |
* Facebook Group SVG Icon |
| 567 |
*/ |
| 568 |
public static function fbgroup_icon() |
| 569 |
{ |
| 570 |
return '<svg class="is-pulled-left mr-1 width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 571 |
<path d="M1.82594 0C0.814448 0 0 0.814448 0 1.82594V8.17405C0 9.18554 0.814448 9.99999 1.82594 9.99999H5.26656V6.09062H4.23281V4.68312H5.26656V3.48062C5.26656 2.53587 5.87735 1.66844 7.28437 1.66844C7.85404 1.66844 8.2753 1.72313 8.2753 1.72313L8.24217 3.0375C8.24217 3.0375 7.81254 3.03344 7.34374 3.03344C6.83635 3.03344 6.75499 3.26722 6.75499 3.65532V4.68313H8.28248L8.21592 6.09063H6.75499V10H8.17404C9.18553 10 9.99998 9.18555 9.99998 8.17406V1.82595C9.99998 0.814458 9.18553 9.99998e-06 8.17404 9.99998e-06H1.82593L1.82594 0Z" fill="#3B5998"/> |
| 572 |
</svg>'; |
| 573 |
} |
| 574 |
|
| 575 |
/** |
| 576 |
* Support SVG Icon |
| 577 |
*/ |
| 578 |
public static function support_icon() |
| 579 |
{ |
| 580 |
return '<svg class="is-pulled-left mr-1 width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| 581 |
<path fill-rule="evenodd" clip-rule="evenodd" d="M10 5C10 6.32608 9.47322 7.59785 8.53553 8.53553C7.59785 9.47322 6.32608 10 5 10C3.67392 10 2.40215 9.47322 1.46447 8.53553C0.526784 7.59785 0 6.32608 0 5C0 3.67392 0.526784 2.40215 1.46447 1.46447C2.40215 0.526784 3.67392 0 5 0C6.32608 0 7.59785 0.526784 8.53553 1.46447C9.47322 2.40215 10 3.67392 10 5ZM8.75 5C8.75 5.62063 8.59937 6.20563 8.3325 6.72125L7.38 5.76813C7.52262 5.32668 7.5395 4.85425 7.42875 4.40375L8.405 3.4275C8.62625 3.90563 8.75 4.4375 8.75 5ZM5.52187 7.44563L6.50938 8.43312C6.03375 8.64254 5.51968 8.75046 5 8.75C4.45699 8.75068 3.92036 8.63294 3.4275 8.405L4.40375 7.42875C4.77042 7.5186 5.15266 7.52437 5.52187 7.44563ZM2.59875 5.69812C2.47576 5.27463 2.46692 4.82614 2.57313 4.39812L2.52313 4.44812L1.56687 3.49C1.35738 3.96582 1.24945 4.48011 1.25 5C1.25 5.59625 1.38937 6.16 1.63687 6.66062L2.59938 5.69812H2.59875ZM3.27875 1.66687C3.81076 1.39189 4.40112 1.24891 5 1.25C5.59625 1.25 6.16 1.38937 6.66062 1.63687L5.69812 2.59938C5.21829 2.45961 4.70759 2.46679 4.23187 2.62L3.27875 1.6675V1.66687ZM6.25 5C6.25 5.33152 6.1183 5.64946 5.88388 5.88388C5.64946 6.1183 5.33152 6.25 5 6.25C4.66848 6.25 4.35054 6.1183 4.11612 5.88388C3.8817 5.64946 3.75 5.33152 3.75 5C3.75 4.66848 3.8817 4.35054 4.11612 4.11612C4.35054 3.8817 4.66848 3.75 5 3.75C5.33152 3.75 5.64946 3.8817 5.88388 4.11612C6.1183 4.35054 6.25 4.66848 6.25 5Z" fill="#4E4B66"/> |
| 582 |
</svg>'; |
| 583 |
} |
| 584 |
|
| 585 |
/* White Label Upgrade Pro */ |
| 586 |
public static function jltwp_adminify_white_label_upgrade() |
| 587 |
{ |
| 588 |
?> |
| 589 |
<div class="wp-adminify-white-label-notice-content"> |
| 590 |
<div class="wp-adminify-white-label-notice-logo"> |
| 591 |
<img src="<?php |
| 592 |
echo WP_ADMINIFY_ASSETS_IMAGE . 'logos/logo-text-light.svg' ; |
| 593 |
?>" alt="<?php |
| 594 |
echo WP_ADMINIFY ; |
| 595 |
?>"> |
| 596 |
</div> |
| 597 |
<h2> |
| 598 |
<?php |
| 599 |
_e( 'Upgrade <span>Pro</span> for White Labeling', WP_ADMINIFY_TD ); |
| 600 |
?> |
| 601 |
</h2> |
| 602 |
<p> |
| 603 |
<?php |
| 604 |
echo sprintf( __( '<strong>%1$s</strong> can be completely re-branded with your own brand Logo, Name and Author Details. Your clients will never know what tools you are using to build their website and will think that this is your own tool set. White-labeling works as long as your license is active. ', WP_ADMINIFY_TD ), WP_ADMINIFY ) ; |
| 605 |
_e( '', WP_ADMINIFY_TD ); |
| 606 |
?><br> |
| 607 |
<em><?php |
| 608 |
_e( 'Note: Agency Plans Only', WP_ADMINIFY_TD ); |
| 609 |
?></em> |
| 610 |
</p> |
| 611 |
<a class="wp-adminify-btn wp-adminify-get-pro" href="<?php |
| 612 |
echo esc_url( 'https://wpadminify.com/pricing/' ) ; |
| 613 |
?>" target="_blank"><?php |
| 614 |
_e( 'Upgrade Now', WP_ADMINIFY_TD ); |
| 615 |
?></a> |
| 616 |
</div> |
| 617 |
<?php |
| 618 |
} |
| 619 |
|
| 620 |
} |