File: /opt/wpsites/datainsightnow.com/wp-content/plugins/essential-blocks/blocks/ImageGallery.php
<?php
namespace EssentialBlocks\blocks;
use EssentialBlocks\Core\Block;
class ImageGallery extends Block {
protected $frontend_scripts = array( 'essential-blocks-image-gallery-frontend' );
protected $frontend_styles = array( 'essential-blocks-frontend-style' );
/**
* Unique name of the block.
*
* @return string
*/
public function get_name() {
return 'image-gallery';
}
/**
* Register all other scripts
*
* @return void
*/
public function register_scripts() {
$this->assets_manager->register(
'image-gallery-frontend',
$this->path() . '/frontend/index.js'
);
}
/**
* block's render callback function
*
* @param array $attributes
* @param string $content
* @return mixed
*/
public function render_callback( $attributes, $content ) {
if ( ! is_admin() ) {
$disableLightBox = false;
if ( isset( $attributes['disableLightBox'] ) && $attributes['disableLightBox'] == true ) {
$disableLightBox = true;
}
$enableFilter = false;
if ( isset( $attributes['enableFilter'] ) && $attributes['enableFilter'] == true ) {
$enableFilter = true;
}
if ( $enableFilter ) {
$this->assets_manager->enqueue(
'isotope',
'js/isotope.pkgd.min.js'
);
$this->assets_manager->enqueue(
'image-loaded',
'js/images-loaded.min.js'
);
}
// Load Lighbox Resource if Lightbox isn't disbaled
if ( ! $disableLightBox ) {
$this->assets_manager->enqueue(
'fslightbox',
'js/fslightbox.min.js',
array( 'jquery' )
);
$this->assets_manager->enqueue(
'fslightbox-style',
'css/fslightbox.min.css'
);
}
}
return $content;
}
}