File: /var/www/sites/1250.info/wp-content/plugins/alert-box-block/inc/block.php
<?php
class ABBAlertBox{
public function __construct(){
add_action( 'enqueue_block_assets', [$this, 'enqueueBlockAssets'] );
add_action( 'init', [$this, 'onInit'] );
}
function enqueueBlockAssets(){
wp_enqueue_style( 'fontAwesome', ABB_DIR_URL . 'assets/css/fontAwesome.min.css', [], '5.15.4' );
}
function onInit(){
wp_register_style( 'abb-alert-box-style', ABB_DIR_URL . 'dist/style.css', [], ABB_VERSION ); // Style
wp_register_style( 'abb-alert-box-editor-style', ABB_DIR_URL . 'dist/editor.css', [ 'abb-alert-box-style' ], ABB_VERSION ); // Backend Style
register_block_type( __DIR__, [
'editor_style' => 'abb-alert-box-editor-style',
'render_callback' => [$this, 'render']
] ); // Register Block
}
function render( $attributes ){
extract( $attributes );
wp_enqueue_style( 'abb-alert-box-style' );
wp_enqueue_script( 'abb-alert-box-script', ABB_DIR_URL . 'dist/script.js', [ 'react', 'react-dom' ], ABB_VERSION, true );
$className = $className ?? '';
$blockClassName = "wp-block-abb-alert-box $className align$align";
ob_start(); ?>
<div class='<?php echo esc_attr( $blockClassName ); ?>' id='abbAlertBox-<?php echo esc_attr( $cId ); ?>' data-attributes='<?php echo esc_attr( wp_json_encode( $attributes ) ); ?>'></div>
<?php return ob_get_clean();
}
}
new ABBAlertBox();