cleanup_activated_addons();
$this->addons_list = forminator_get_registered_addons_list();
$this->addons_list_grouped_by_connected = forminator_get_registered_addons_grouped_by_connected();
Forminator_Integration_Admin_Ajax::get_instance()->generate_nonce();
$this->addon_nonce = Forminator_Integration_Admin_Ajax::get_instance()->get_nonce();
add_filter( 'forminator_data', array( $this, 'add_addons_js_data' ) );
$this->validate_addon_page();
}
/**
* Add js data
*
* @param mixed $data Addon data to add.
* @return mixed
*/
public function add_addons_js_data( $data ) {
if ( Forminator::is_addons_feature_enabled() ) {
$data['addons'] = forminator_get_registered_addons_list();
$data['addon_nonce'] = $this->addon_nonce;
}
return $data;
}
/**
* Render custom output of addon when validated
*
* @since 1.2
*/
protected function render_page_content() {
if ( ! empty( $this->addon_page ) ) {
// html output here are expected.
echo $this->addon_page['output'];// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
} else {
parent::render_page_content();
}
}
/**
* Render Addon title as header on addon page
*
* @since 1.2
*/
public function render_header() {
$this->show_playground_notice();
if ( ! empty( $this->addon_page ) ) {
?>
addon_page['title'] ); ?>