Classic editor support

This commit is contained in:
2022-01-22 22:17:27 -05:00
parent b986b11441
commit fc2f9df23c
5 changed files with 103 additions and 123 deletions

View File

@@ -49,7 +49,7 @@ if ( !class_exists('CognitoFormsPlugin') ) {
add_action($action, array($this, $action));
}
// Registers tinyMCE filters
// Registers plug-in filters
private function addFilters($filters) {
foreach($filters as $filter)
add_filter($filter, array($this, $filter));
@@ -60,6 +60,11 @@ if ( !class_exists('CognitoFormsPlugin') ) {
$this->addActions(self::$actions);
}
public function init() {
// Initialize Gutenberg Block
$this->block_init();
}
// Initialize plug-in
public function admin_init() {
if(!current_user_can('edit_posts') && !current_user_can('edit_pages')) return;
@@ -77,17 +82,8 @@ if ( !class_exists('CognitoFormsPlugin') ) {
delete_option('cognito_organization');
}
// Add tinyMCE plug-in
if(get_user_option('rich_editing') == 'true') {
$this->addfilters(array(
'mce_buttons',
'mce_external_plugins'
));
}
}
public function init() {
$this->block_init();
// Initialize TinyMCE Plugin
$this->tinymce_init();
}
// Initialize block
@@ -131,16 +127,26 @@ if ( !class_exists('CognitoFormsPlugin') ) {
) );
}
// Set up tinyMCE buttons
// Initialize classic editor (TinyMCE)
public function tinymce_init() {
if(get_user_option('rich_editing') == 'true') {
$this->addFilters(array(
'mce_buttons',
'mce_external_plugins'
));
}
}
// Set up TinyMCE buttons
public function mce_buttons($buttons) {
array_push($buttons, '|', 'cognito');
return $buttons;
}
// Initialize tinyMCE plug-in
public function mce_external_plugins($plugins) {
$plugins['cognito'] = plugin_dir_url( __FILE__ ) . 'tinymce/plugin.js';
return $plugins;
// Initialize TinyMCE plug-in
public function mce_external_plugins( $plugin_array ) {
$plugin_array['cognito_mce_plugin'] = plugins_url( '/tinymce/plugin.js', __FILE__ );
return $plugin_array;
}
// Initialize administration menu (left-bar)
@@ -162,5 +168,6 @@ if ( !class_exists('CognitoFormsPlugin') ) {
include 'templates/options.php';
}
}
new CognitoFormsPlugin;
}