File: /var/www/vfconf/wp-content/plugins/gutentor/includes/admin/class-gutentor-helper.php
<?php
/**
* A helper class for plugin Admin Settings
*
* @since 1.0.0
*/
if ( ! class_exists( 'Gutentor_Helper' ) ) {
/**
* Class Gutentor_Helper.
*/
class Gutentor_Helper {
public static $block_list = array(
'about-block' => 'gutentor/about-block',
'accordion' => 'gutentor/accordion',
'advanced-columns' => 'gutentor/m4',
'author-profile' => 'gutentor/author-profile',
'blog-post' => 'gutentor/blog-post',
'call-to-action' => 'gutentor/call-to-action',
'count-down' => 'gutentor/count-down',
'counter-box' => 'gutentor/counter-box',
'divider' => 'gutentor/divider',
'featured-block' => 'gutentor/featured-block',
'gallery' => 'gutentor/gallery',
'google-map' => 'gutentor/google-map',
'google-map-element' => 'gutentor/e4',
'icon-box' => 'gutentor/icon-box',
'image-box' => 'gutentor/image-box',
'image-slider' => 'gutentor/image-slider',
'list' => 'gutentor/list',
'notification' => 'gutentor/notification',
'opening-hours' => 'gutentor/opening-hours',
'pricing' => 'gutentor/pricing',
'progress-bar' => 'gutentor/progress-bar',
'restaurant-menu' => 'gutentor/restaurant-menu',
'show-more' => 'gutentor/show-more',
'social' => 'gutentor/social',
'tabs' => 'gutentor/tabs',
'team' => 'gutentor/team',
'testimonial' => 'gutentor/testimonial',
'timeline' => 'gutentor/timeline',
'video-popup' => 'gutentor/video-popup',
);
public static function enqueue( $scripts ) {
// Do not enqueue anything if no array is supplied.
if ( ! is_array( $scripts ) ) {
return;
}
$scripts = apply_filters( 'gutentor_block_scripts', $scripts );
foreach ( $scripts as $script ) {
// Do not try to enqueue anything if handler is not supplied.
if ( ! isset( $script['handler'] ) ) {
continue;
}
$version = GUTENTOR_VERSION;
if ( isset( $script['version'] ) ) {
$version = $script['version'];
}
// Enqueue each vendor's style.
if ( isset( $script['style'] ) ) {
$path = GUTENTOR_URL . $script['style'];
if ( isset( $script['absolute'] ) ) {
$path = $script['style'];
}
$dependency = array();
if ( isset( $script['dependency'] ) ) {
$dependency = $script['dependency'];
}
wp_enqueue_style( $script['handler'], $path, $dependency, $version );
}
// Enqueue each vendor's script.
if ( isset( $script['script'] ) ) {
if ( $script['script'] === true || $script['script'] === 1 ) {
wp_enqueue_script( $script['handler'] );
} else {
$prefix = '';
if ( isset( $script['prefix'] ) ) {
$prefix = $script['prefix'];
}
$path = '';
if ( isset( $script['script'] ) ) {
$path = GUTENTOR_URL . $script['script'];
}
if ( isset( $script['absolute'] ) ) {
$path = $script['script'];
}
$dependency = array( 'jquery' );
if ( isset( $script['dependency'] ) ) {
$dependency = $script['dependency'];
}
$in_footer = true;
if ( isset( $script['in_footer'] ) ) {
$in_footer = $script['in_footer'];
}
wp_enqueue_script( $prefix . $script['handler'], $path, $dependency, $version, $in_footer );
}
}
}
}
/**
* Returns an option from the database for
* the admin settings page.
*
* @param string $key The option key.
* @param mixed $default Option default value if option is not available.
* @param boolean $network_override Whether to allow the network admin setting to be overridden on subsites.
* @return string Return the option value
*/
public static function get_option( $key, $default = false, $network_override = false ) {
return gutentor_get_options( $key );
}
/**
* Updates an option from the admin settings page.
*
* @param string $key The option key.
* @param bool $network Whether to allow the network admin setting to be overridden on subsites.
* @return void
*/
public static function update_option( $key, $blocks ) {
$g_options = gutentor_get_options();
$g_options[ $key ] = $blocks;
update_option( 'gutentor_settings_options', $g_options );
}
}
}