Changeset 3418261
- Timestamp:
- 12/12/2025 12:46:31 PM (3 months ago)
- Location:
- media-stream
- Files:
-
- 21 added
- 4 edited
-
tags/1.1.1 (added)
-
tags/1.1.1/app (added)
-
tags/1.1.1/app/APIController.php (added)
-
tags/1.1.1/app/AjaxController.php (added)
-
tags/1.1.1/app/MainController.php (added)
-
tags/1.1.1/assets (added)
-
tags/1.1.1/assets/css (added)
-
tags/1.1.1/assets/css/style.css (added)
-
tags/1.1.1/assets/imgs (added)
-
tags/1.1.1/assets/imgs/logo-bunnynet-icon.svg (added)
-
tags/1.1.1/assets/js (added)
-
tags/1.1.1/assets/js/hls.js (added)
-
tags/1.1.1/assets/js/hls.min.js (added)
-
tags/1.1.1/assets/js/public-script.js (added)
-
tags/1.1.1/assets/js/script.js (added)
-
tags/1.1.1/index.php (added)
-
tags/1.1.1/license.txt (added)
-
tags/1.1.1/media-stream.php (added)
-
tags/1.1.1/readme.txt (added)
-
tags/1.1.1/views (added)
-
tags/1.1.1/views/settings.php (added)
-
trunk/app/MainController.php (modified) (1 diff)
-
trunk/assets/css/style.css (modified) (2 diffs)
-
trunk/media-stream.php (modified) (8 diffs)
-
trunk/readme.txt (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
media-stream/trunk/app/MainController.php
r3412197 r3418261 133 133 if(get_post_meta(intval($post->ID), 'mediaStream_local_removed', true) != true){ 134 134 $resp_html .= '<br><br><button class="button removelocal_bunny_video" data_attch_id="' . $post->ID . '" data_video_id="' . $video_id . '" style="color: #d63638;border-color: #d63638;">Remove Local copy</button>'; 135 } 135 }else{ 136 $resp_html .= '<br><br><div class="no_local_copy_text">No local copy <span class="no_local_copy_info">(i)<span>No video files are stored locally on your website, this video is delivered directly from Bunny.net.</span></span></div>'; 137 } 136 138 } 137 139 -
media-stream/trunk/assets/css/style.css
r3391139 r3418261 87 87 overflow: hidden; 88 88 } 89 .modal-open:has(.mediaStream_media_info) .attachment-details .attachment-info .mejs-mediaelement{ 89 90 .modal-open:has(.mediaStream_media_info) .attachment-details .attachment-info .mejs-mediaelement { 90 91 position: relative; 91 92 } 93 92 94 .modal-open:has(.mediaStream_media_info.vid_warning) .media-modal .media-frame-content .thumbnail.thumbnail-video:after, 93 95 .modal-open:has(.mediaStream_media_info.vid_warning) .attachment-details .attachment-info .mejs-mediaelement:after { … … 127 129 border-radius: 3px; 128 130 } 131 132 133 .no_local_copy_text > span.no_local_copy_info { 134 position: relative; 135 cursor: pointer; 136 text-decoration: underline; 137 color: #2271b1; 138 } 139 140 .no_local_copy_text span.no_local_copy_info > span { 141 opacity: 0; 142 visibility: hidden; 143 position: absolute; 144 top: -80px; 145 left: -90px; 146 width: 180px; 147 background: #fff; 148 padding: 10px; 149 border-radius: 6px; 150 box-shadow: 0px 2px 12px #0000002b; 151 transition: all 0.2s ease; 152 color: #111; 153 text-align: center; 154 } 155 156 .no_local_copy_text > span.no_local_copy_info:hover > span { 157 opacity: 1; 158 visibility: visible; 159 } -
media-stream/trunk/media-stream.php
r3415074 r3418261 6 6 * Author: Blurr Studio 7 7 * Author URI: https://blurr.it/ 8 * Version: 1.1. 08 * Version: 1.1.1 9 9 * License: GPL v2 or later 10 10 * License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 16 16 } 17 17 18 18 19 if (!class_exists('MEDIASTREAM')) { 19 20 class MEDIASTREAM … … 22 23 { 23 24 $this->define_constants(); 25 24 26 add_action('admin_enqueue_scripts', [$this, 'enqueue']); 25 add_action('enqueue_block_assets', [$this, 'enqueue'], 999);26 // add_action('enqueue_block_editor_assets', [$this, 'enqueue']);27 add_action('enqueue_block_assets', [$this, 'enqueue'], 999); 28 // add_action('enqueue_block_editor_assets', [$this, 'enqueue']); 27 29 add_action('elementor/editor/after_enqueue_scripts', [$this, 'enqueue']); 28 30 add_action('elementor/preview/enqueue_scripts', [$this, 'enqueue']); 29 if (isset($_GET['bricks']) && $_GET['bricks'] == "run"){31 if (isset($_GET['bricks']) && $_GET['bricks'] == "run") { 30 32 add_action('wp_enqueue_scripts', [$this, 'enqueue']); 31 } else{33 } else { 32 34 add_action('wp_enqueue_scripts', [$this, 'public_enqueue']); 33 35 } … … 63 65 ) 64 66 ); 65 wp_enqueue_script('jquery');67 wp_enqueue_script('jquery'); 66 68 wp_enqueue_script('mediaStream-hls-js'); 67 69 wp_register_script( … … 94 96 ) 95 97 ); 96 wp_enqueue_script('jquery');98 wp_enqueue_script('jquery'); 97 99 wp_enqueue_script('mediaStream-hls-js'); 98 100 wp_register_script( … … 133 135 } 134 136 } 135 136 public static function activate() 137 138 public static function get_builder() 139 { 140 $builders = []; 141 142 if (did_action('elementor/loaded') || class_exists('\Elementor\Plugin')) { 143 $builders[] = 'Elementor'; 144 } 145 146 if (defined('BRICKS_VERSION') || class_exists('Bricks\Frontend')) { 147 $builders[] = 'Bricks'; 148 } 149 150 $gutenberg_enabled = true; 151 152 if (is_plugin_active('classic-editor/classic-editor.php')) { 153 $replace = get_option('classic-editor-replace', 'replace'); 154 $allow_users = get_option('classic-editor-allow-users', 'allow'); 155 if ($replace === 'replace') { 156 $gutenberg_enabled = false; 157 } else { 158 if (! use_block_editor_for_post_type('post') && ! use_block_editor_for_post_type('page')) { 159 $gutenberg_enabled = false; 160 } 161 } 162 } 163 164 if ($gutenberg_enabled) { 165 $builders[] = 'Gutenberg'; 166 } 167 168 return ! empty($builders) ? implode(', ', $builders) : 'None'; 169 } 170 171 172 public static function activate() 137 173 { 138 174 $response = wp_remote_post('https://media-stream.rrulb.com/wp-json/mediastream/v1/mediastream_diagnos', array( … … 145 181 'last_updated' => time(), 146 182 'status' => 'active', 183 'builder' => MEDIASTREAM::get_builder(), 147 184 )), 148 185 )); … … 159 196 'last_updated' => time(), 160 197 'status' => 'deactive', 198 'builder' => '' 161 199 )), 162 200 )); 163 201 } 164 165 202 } 166 203 } 167 204 168 205 if (class_exists('MEDIASTREAM')) { 169 register_activation_hook(__FILE__, array('MEDIASTREAM', 'activate'));206 register_activation_hook(__FILE__, array('MEDIASTREAM', 'activate')); 170 207 register_deactivation_hook(__FILE__, array('MEDIASTREAM', 'deactivate')); 171 208 $MEDIASTREAM = new MEDIASTREAM(); -
media-stream/trunk/readme.txt
r3415074 r3418261 2 2 3 3 Requires at least: 6.5 4 Tested up to: 6. 84 Tested up to: 6.9 5 5 Requires PHP: 7.2 6 Stable tag: 1.1. 06 Stable tag: 1.1.1 7 7 License: GPLv2 or later 8 8 Contributors: aryans … … 44 44 == Frequently Asked Questions == 45 45 46 = Do I need a Bunny.net account? =47 Yes, you need a **Bunny.net Stream (BunnyCDN)** account and API key to use this plugin.46 = Do I need a [bunny.net](http://bunny.net) account to use this plugin? = 47 Yes, you need a Bunny.net account where you can get the API key to insert in the plugin in a very simple way and start using it. 48 48 49 = W ill my existing videos be synced? =50 Currently, the plugin syncs videos uploaded after activation. You can manually re-upload old videos if needed. 49 = Why do I need this plugin? = 50 The plugin is designed to enhance website performance and prevent crashes caused by embedded videos, as demonstrated in the [linked video](https://youtu.be/35r9vZknvXk?si=P4k_HkbFs_eIiNSw). By utilizing HLS technology for video streaming instead of standard MP4 files, the plugin significantly improves the overall page speed, security and video playback performance. For more [info about HLS check this video](https://youtu.be/T42JTK5fLTg?si=p7gKvYqjAIVUsXVd). 51 51 52 = Does this plugin support non-video files? = 53 No, it only works with videos uploaded to the WordPress Media Library. 52 = Will my existing videos be synced? = 53 The existing video must be re-encoded using the plugin. This process will offload the video to Bunny by simply clicking a button. 54 55 = Does this plugin support files that are not videos? = 56 This plugin is intended solely for video streaming. For offloading images, please utilize alternative, dedicated plugins that are compatible with [bunny.net](http://bunny.net) or similar services. 57 58 = Is it possible to delete the local video file and rely solely on the offloaded copy? = 59 You can safely delete the local video files while retaining the versions offloaded to Bunny. These offloaded videos will continue to function on your website. 60 61 = How does this plugin differ from other offloading plugins? = 62 The plugin is free and offers full integration with the WordPress Media Library, allowing users to leverage core WordPress functionalities for adding videos instead of relying on separate widgets. While Bunny offers an official plugin for video embedding, it lacks the same level of media system integration. However, Bunny's plugin does excel with its highly effective image offloading feature. 63 64 = Is Media Stream Plugin with Bunny.net GDPR compliant? = 65 Yes, Media Stream with Bunny.net Stream can be GDPR-compliant. 66 67 Bunny.net Stream privacy-focused, avoiding permanent storage identifiable personal data. Streaming logs performance data anonymized, used only for optimization. Technical CDN requests handled anonymously, not tracking individuals. 68 69 Bunny.net offers GDPR features like EU-only routing, IP anonymization, secure SSL/TLS. Data Processing Agreement (DPA) available, fulfilling 28 requirements. 70 71 For standard video, processing usually relies on legitimate interest, often negating the need for user consent. This should be documented in your privacy policy. Bunny.net provides guides for GDPR-friendly integration. 72 54 73 55 74 == Screenshots == … … 59 78 60 79 == Changelog == 80 81 = 1.1.1 = 82 * Improved compatibility 61 83 62 84 = 1.1.0 =
Note: See TracChangeset
for help on using the changeset viewer.