PluginProbe
Meow Gallery / 5.5.2
Meow Gallery v5.5.2
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 5.5.2, at classes/admin.php

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