this will allow importing of outside variables not set in $_REQUEST */ class BlockBox implements BlockHandlerInterface { public function handle( $params, $content, Template $template, &$repeat): string { global $gBitSmarty; if( empty( $content )) { return ''; } $atts = ''; foreach( $params as $key => $val ) { switch( $key ) { case 'title': $gBitSmarty->assign( $key, KernelTools::tra( $val ) ); break; case 'class': case 'iclass': case 'ipackage': case 'iname': case 'iexplain': case 'idiv': $gBitSmarty->assign( $key,$val ); break; default: $atts .= $key.'="'.$val.'" '; break; } } $gBitSmarty->assign( 'content',$content ); $gBitSmarty->assign( 'atts',$atts ); return $gBitSmarty->fetch( 'bitpackage:kernel/box.tpl' ); } public function isCacheable(): bool { return true; } }