| Server IP : 69.72.244.102 / Your IP : 216.73.216.164 Web Server : LiteSpeed System : Linux s3434.fra1.stableserver.net 4.18.0-513.24.1.lve.2.el8.x86_64 #1 SMP Fri May 24 12:42:50 UTC 2024 x86_64 User : konzalta ( 1271) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/konzalta/public_html/wp-content/plugins/integrate-google-drive/includes/ |
Upload File : |
<?php
namespace IGD;
defined( 'ABSPATH' ) || exit();
class TinyMCE {
/**
* @var null
*/
protected static $instance = null;
public function __construct() {
add_filter( 'mce_buttons', [ $this, 'add_buttons' ] );
add_filter( 'mce_external_plugins', [ $this, 'add_plugins' ] );
add_filter( 'mce_css', [ $this, 'enqueue_css' ] );
//add media button
add_action( 'media_buttons', [ $this, 'add_media_button' ], 20 );
}
public function add_media_button() {
if ( ! function_exists( 'get_current_screen' ) ) {
return;
}
$screen = get_current_screen();
if ( ! empty( $screen ) && $screen->base !== 'post' ) {
return;
}
printf(
'<a href="#" class="button" id="igd-media-button" title="%1$s"><img width="20" src="%2$s/images/drive.png" /> %1$s</a>',
__( 'Google Drive', 'integrate-google-drive' ),
IGD_ASSETS
);
}
public function add_buttons( $buttons ) {
$buttons[] = 'integrate_google_drive';
return $buttons;
}
public function add_plugins( $plugins ) {
Enqueue::instance()->admin_scripts( '', false );
$plugins['igd_tinymce_js'] = IGD_ASSETS . '/js/admin.js';
return $plugins;
}
public function enqueue_css( $mce_css ) {
if ( ! empty( $mce_css ) ) {
$mce_css .= ',';
}
$mce_css .= IGD_ASSETS . '/css/tinymce.css';
return $mce_css;
}
/**
* @return TinyMCE|null
*/
public static function instance() {
if ( is_null( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
}
TinyMCE::instance();