PluginProbe
Meow Gallery / 4.2.8
Meow Gallery v4.2.8
5.5.4 5.5.3 5.5.2 5.5.1 5.5.0 5.4.9 5.4.8 5.4.7 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 All 156 releases
meow-gallery / classes / admin.php

admin.php in Meow Gallery 4.2.8, at classes/admin.php

77 lines 2.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 class Meow_MGL_Admin extends MeowCommon_Admin {
4
5 private $core;
6 public function __construct($core) {
7 parent::__construct( MGL_PREFIX, MGL_ENTRY, MGL_DOMAIN, class_exists( 'MeowPro_MGL_Core' ) );
8 $this->core = $core;
9 add_action( 'admin_menu', array( $this, 'app_menu' ) );
10 $blocks_enabled = function_exists( 'register_block_type' );
11 if ( $blocks_enabled ) {
12 add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
13 }
14 $options = $this->core->get_all_options();
15 if ( ( $options['captions'] ?? 'notset' ) === 'notset' ) {
16 // MEOMO: mgl_captions_enabled option is used only here. Also, it deletes soon after being used.
17 // So we keep this option what it is (not migrated to the mgl_options).
18 $captions_enabled = get_option( 'mgl_captions_enabled' );
19 $this->core->update_options( array_merge(
20 $options,
21 [ 'captions' => $captions_enabled ? 'hover-only' : false ]
22 ) );
23 delete_option( 'mgl_captions_enabled' );
24 }
25 }
26
27 public function mgl_settings() {
28 echo '<div id="mgl-admin-settings"></div>';
29 }
30
31 function enqueue_scripts() {
32
33 // Javascript for gallery
34 $physical_file = MGL_PATH . '/app/galleries.js';
35 $cache_buster = file_exists( $physical_file ) ? filemtime( $physical_file ) : MGL_VERSION;
36 wp_register_script( 'mgl-gallery-js', plugins_url( '/app/galleries.js', __DIR__ ),
37 array(), $cache_buster, false );
38
39 // Load the "admin" scripts
40 $physical_file = MGL_PATH . '/app/admin.js';
41 $cache_buster = file_exists( $physical_file ) ? filemtime( $physical_file ) : MGL_VERSION;
42 wp_register_script( 'mgl-admin-js', MGL_URL . '/app/admin.js',
43 array( 'mgl-gallery-js', 'wp-editor', 'wp-i18n', 'wp-element' ), $cache_buster );
44 register_block_type( 'meow-gallery/gallery', array( 'editor_script' => 'mgl-admin-js' ));
45
46 // Load the fonts
47 wp_register_style( 'meow-neko-ui-lato-font', '//fonts.googleapis.com/css2?family=Lato:wght@100;300;400;700;900&display=swap');
48 wp_enqueue_style( 'meow-neko-ui-lato-font' );
49
50 // Localize and options
51 global $wplr;
52 wp_localize_script( 'mgl-admin-js', 'mgl_meow_gallery', [
53 //'api_nonce' => wp_create_nonce( 'mfrh_media_file_renamer' ),
54 'api_url' => get_rest_url( null, '/meow-gallery/v1/' ),
55 'rest_url' => get_rest_url(),
56 'plugin_url' => MGL_URL,
57 'prefix' => MGL_PREFIX,
58 'domain' => MGL_DOMAIN,
59 'is_pro' => class_exists( 'MeowPro_MGL_Core' ),
60 'is_registered' => !!$this->is_registered(),
61 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
62 'wplr_collections' => $wplr ? $wplr->read_collections_recursively() : [],
63 'options' => $this->core->get_all_options(),
64 ] );
65
66 wp_enqueue_script( 'mgl-admin-js' );
67 }
68
69 function app_menu() {
70 add_submenu_page( 'meowapps-main-menu', __( 'Gallery', MGL_DOMAIN ), __( 'Gallery', MGL_DOMAIN ),
71 'manage_options', 'mgl_settings', array( $this, 'mgl_settings' )
72 );
73 }
74 }
75
76 ?>
77