PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 16.1-beta.3
Jetpack – WP Security, Backup, Speed, & Growth v16.1-beta.3
16.1.2 16.2-a.1 16.1.1 16.1 16.1-beta 16.1-beta.2 16.1-beta.3 16.1-a.5 16.1-a.3 16.0.1 16.1-a.1 16.0 16.0-beta 16.0-a.7 16.0-a.5 15.9.1 16.0-a.3 16.0-a.1 15.9 15.9-beta 15.9-a.7 15.9-a.5 15.9-a.3 15.9-a.1 15.8 15.8-beta 15.8-a.7 15.8-a.5 5.2.5 5.3.4 5.4.4 5.5.5 5.6.5 5.7.5 5.8.4 5.9.4 6.0.4 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.4 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 6.6.4 6.6.5 6.7 6.7.1 6.7.2 6.7.3 6.7.4 6.8 6.8.1 6.8.2 6.8.3 6.8.4 6.8.5 6.9 6.9.1 6.9.2 6.9.3 6.9.4 7.0 7.0.1 7.0.2 7.0.3 7.0.4 7.0.5 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2 7.2.1 7.2.1.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.0.1 7.3.1 7.3.1.1 7.3.2 7.3.3 7.3.4 7.3.5 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.5 7.5.0.1 7.5.1 7.5.2 7.5.3 7.5.4 7.5.5 7.5.6 7.5.7 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.8 7.8.1 7.8.2 7.8.3 7.8.4 7.9 7.9.1 7.9.2 7.9.3 7.9.4 8.0 8.0.1 8.0.2 8.0.3 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.2 8.2.0.1 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.7 8.7.0.1 8.7.1 8.7.2 8.7.3 8.7.4 8.8 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.9 8.9.1 8.9.2 8.9.3 8.9.4 9.0 9.0.1 9.0.2 9.0.3 9.0.4 9.0.5 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.4 9.4.1 9.4.2 9.4.3 9.4.4 9.5 9.5.1 9.5.2 9.5.3 9.5.4 9.5.5 9.6 9.6.1 9.6.2 9.6.3 9.6.4 9.7 9.7.1 9.7.2 15.7-beta.2 9.7.3 15.7.1 9.8 15.8-a.1 9.8.1 15.8-a.3 9.8.2 2.0.9 9.8.3 2.1.7 9.9 2.2.10 9.9.1 2.3.10 9.9.2 2.4.7 9.9.3 2.5.5 2.6.6 2.7.5 2.8.5 2.9.6 3.0.6 3.1.5 3.2.5 3.3.6 3.4.6 3.5.6 3.6.4 3.7.5 3.8.5 3.9.10 4.0.7 4.1.4 4.2.5 4.3.5 4.4.5 4.5.3 4.6.3 4.7.4 4.8.5 4.9.3 5.0.3 5.1.4 trunk 10.0 10.0.1 10.0.2 10.1 10.1.1 10.1.2 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.4 10.4.1 10.4.2 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.8.2 10.9 10.9.1 10.9.2 10.9.3 11.0 11.0.1 11.0.2 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.2 11.2.1 11.2.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.4 11.4.1 11.4.2 11.5 11.5.1 11.5.2 11.5.3 11.6 11.6.1 11.6.2 11.7 11.7.1 11.7.2 11.7.3 11.8 11.8.3 11.8.4 11.8.5 11.8.6 11.9 11.9.1 11.9.2 11.9.3 12.0 12.0.1 12.0.2 12.1 12.1.1 12.1.2 12.2 12.2.1 12.2.2 12.3 12.3.1 12.4 12.4.1 12.5 12.5.1 12.6 12.6.1 12.6.2 12.6.3 12.7 12.7.1 12.7.2 12.8 12.8.1 12.8.2 12.9 12.9.1 12.9.2 12.9.3 12.9.4 13.0 13.0.1 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.2 13.2.1 13.2.2 13.2.3 13.3 13.3.1 13.3.2 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.6 13.6.1 13.7 13.7.1 13.8 13.8.1 13.8.2 13.9 13.9.1 14.0 14.1 14.2 14.2.1 14.3 14.4 14.4.1 14.5 14.6 14.7 14.8 14.9 14.9.1 15.0 15.0.1 15.0.2 15.1 15.1.1 15.2 15.3 15.3.1 15.4 15.5 15.6 15.7 15.7-a.1 15.7-a.3 15.7-a.5 15.7-a.7 15.7-beta
jetpack / jetpack_vendor / automattic / jetpack-external-media / src / class-external-media.php
jetpack / jetpack_vendor / automattic / jetpack-external-media / src Last commit date
build 1 month ago features 9 months ago class-external-media.php 2 weeks ago
class-external-media.php
119 lines
1 <?php
2 /**
3 * Register the external media to both WP Admin and Editor.
4 *
5 * @package automattic/jetpack-external-media
6 */
7
8 namespace Automattic\Jetpack\External_Media;
9
10 use Automattic\Jetpack\Assets;
11 use Automattic\Jetpack\Connection\Initial_State as Connection_Initial_State;
12 use Automattic\Jetpack\Constants;
13 use Automattic\Jetpack\External_Connections;
14 use Automattic\Jetpack\Status\Host;
15 use Jetpack_Options;
16
17 /**
18 * Class External_Media
19 */
20 class External_Media {
21 const PACKAGE_VERSION = '0.8.29';
22 const BASE_DIR = __DIR__ . '/';
23 const BASE_FILE = __FILE__;
24
25 /**
26 * Add hooks and filters.
27 */
28 public static function init() {
29 // Load external media import page on WordPress.com sites first.
30 // We will continue to enable the feature on all sites.
31 $host = new Host();
32 if ( $host->is_wpcom_platform() ) {
33 require_once __DIR__ . '/features/admin/external-media-import.php';
34 }
35
36 // @todo this current approach results in a console warning in the editor related to adding the css to the iframe incorrectly.
37 // It has been temporarily added back to prevent performance issues in the site editor. See pdWQjU-1rA-p2 for more details.
38 add_action( 'enqueue_block_editor_assets', array( __CLASS__, 'enqueue_block_editor_assets' ) );
39
40 External_Connections::add_settings_for_service(
41 'media',
42 array(
43 'service' => 'google_photos',
44 'title' => __( 'Google Photos', 'jetpack-external-media' ),
45 'description' => __( 'Access photos stored in your Google Photos library.', 'jetpack-external-media' ),
46 'support_link' => array(
47 'wpcom' => 'https://wordpress.com/support/google-photos/',
48 'jetpack' => 'using-your-google-photos-with-jetpack/',
49 ),
50 )
51 );
52 }
53
54 /**
55 * Enqueue block editor assets.
56 */
57 public static function enqueue_block_editor_assets() {
58 $assets_base_path = 'build/';
59 $asset_name = 'jetpack-external-media-editor';
60
61 Assets::register_script(
62 $asset_name,
63 $assets_base_path . "$asset_name/$asset_name.js",
64 self::BASE_FILE,
65 array(
66 'enqueue' => true,
67 'textdomain' => 'jetpack-external-media',
68 )
69 );
70
71 wp_add_inline_script(
72 $asset_name,
73 sprintf( 'var JetpackExternalMediaData = %s;', wp_json_encode( self::get_data(), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ) ),
74 'before'
75 );
76
77 Connection_Initial_State::render_script( $asset_name );
78 }
79
80 /**
81 * Get the initial state data.
82 *
83 * @return array
84 */
85 private static function get_data() {
86 $host = new Host();
87 if ( $host->is_wpcom_simple() ) {
88 $blog_id = get_current_blog_id();
89 } else {
90 $blog_id = Jetpack_Options::get_option( 'id', 0 );
91 }
92
93 $jetpack_ai_enabled = false;
94 if ( $host->is_wpcom_platform() ) {
95 $jetpack_ai_enabled = true;
96 }
97
98 return array(
99 'wpcomBlogId' => $blog_id,
100 'pluginBasePath' => plugins_url( '', Constants::get_constant( 'JETPACK__PLUGIN_FILE' ) ),
101 'ai-assistant' => array(
102 'is-enabled' => apply_filters( 'jetpack_ai_enabled', $jetpack_ai_enabled ),
103 ),
104 );
105 }
106
107 /**
108 * Check whether the environment supports the newer default size of elements, gradually introduced starting with WP 6.4.
109 *
110 * @since jetpack-14.0
111 * @deprecated since 0.8.0
112 * @return bool
113 */
114 public static function site_supports_next_default_size() {
115 _deprecated_function( __METHOD__, 'jetpack-external-media-0.8.0' );
116 return true;
117 }
118 }
119