ARVE Advanced Responsive Video Embedder (YouTube, Vimeo, HTML5 Video …) - Version 5.0.0-beta6

Version Description

Download this release

Release Info

Developer nico23
Plugin Icon 128x128 ARVE Advanced Responsive Video Embedder (YouTube, Vimeo, HTML5 Video …)
Version 5.0.0-beta6
Comparing to
See all releases

Code changes from version 9.0.0-beta5 to 5.0.0-beta6

advanced-responsive-video-embedder.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: ARVE Advanced Responsive Video Embedder
4
  * Plugin URI: https://nextgenthemes.com/plugins/arve-pro/
5
  * Description: Easy responsive video embeds via URL (like WordPress) or Shortcodes. Supports almost anything you can imagine.
6
- * Version: 9.0.0-beta5
7
  * Author: Nicolas Jonas
8
  * Author URI: https://nextgenthemes.com
9
  * License: GPL-3.0
@@ -21,7 +21,7 @@
21
 
22
  namespace Nextgenthemes\ARVE;
23
 
24
- const VERSION = '9.0.0-beta5';
25
  const PRO_VERSION_REQUIRED = '5.0.0-beta5';
26
  const NUM_TRACKS = 3;
27
  const PLUGIN_FILE = __FILE__;
3
  * Plugin Name: ARVE Advanced Responsive Video Embedder
4
  * Plugin URI: https://nextgenthemes.com/plugins/arve-pro/
5
  * Description: Easy responsive video embeds via URL (like WordPress) or Shortcodes. Supports almost anything you can imagine.
6
+ * Version: 5.0.0-beta6
7
  * Author: Nicolas Jonas
8
  * Author URI: https://nextgenthemes.com
9
  * License: GPL-3.0
21
 
22
  namespace Nextgenthemes\ARVE;
23
 
24
+ const VERSION = '5.0.0-beta6';
25
  const PRO_VERSION_REQUIRED = '5.0.0-beta5';
26
  const NUM_TRACKS = 3;
27
  const PLUGIN_FILE = __FILE__;
php/Admin/functions-admin.php CHANGED
@@ -31,7 +31,8 @@ function action_admin_init_setup_messages() {
31
 
32
  $update_msg = sprintf(
33
  // Translators: %1$s Version
34
- __( '<p>Your ARVE version was just updated. This was a <a href="%1$s"><strong>major update</strong></a>. If you experience any urgent breaking issues please <a href="%2$s">report them</a> and <a href="%3$s">downgrade</a> short term. I tried my best to have other beta testers over many months. Thanks to everyone who did test. But 9.0 has lots of code changed, I am afraid the update will trigger some issues we could not test for.</p>', 'advanced-responsive-video-embedder' ),
 
35
  'https://nextgenthemes.com/improvements-in-arve-9-0-and-arve-pro-5-0/',
36
  'https://nextgenthemes.com/support/',
37
  'https://nextgenthemes.com/plugins/arve/documentation/how-to-downgrade/'
31
 
32
  $update_msg = sprintf(
33
  // Translators: %1$s Version
34
+ __( '<p>Your ARVE version was just updated. Please check <a href="%1$s">the new settings page</a> and verify/adjust your settings.</p><p>This was a <a href="%2$s"><strong>major update</strong></a>. If you experience any urgent breaking issues please <a href="%3$s">report them</a> and <a href="%4$s">downgrade</a> short term. I tried my best to have other beta testers over many months. Thanks to everyone who did test. But 9.0 has lots of code changed, I am afraid the update will trigger some issues we could not test for.</p>', 'advanced-responsive-video-embedder' ),
35
+ esc_url( get_admin_url() . 'options-general.php?page=nextgenthemes_arve' ),
36
  'https://nextgenthemes.com/improvements-in-arve-9-0-and-arve-pro-5-0/',
37
  'https://nextgenthemes.com/support/',
38
  'https://nextgenthemes.com/plugins/arve/documentation/how-to-downgrade/'
php/Admin/partials/settings-sidebar.html CHANGED
@@ -1,22 +1,32 @@
1
  <div class="ngt-sidebar-box">
2
-
3
- <h3 id="please-rate">Please rate</h3>
4
- <p>It would really help to get a <a href="https://wordpress.org/support/plugin/advanced-responsive-video-embedder/reviews/#new-post">5 star rating from you.</a></p>
5
- <h3 id="pro-addon"><a href="https://nextgenthemes.com/plugins/arve-pro/">Pro Addon</a></h3>
6
- <p><strong><big>10% off</big></strong> first year with discount code <code style="font-family: Menlo, Consolas, &quot;DejaVu Sans Mono&quot;, monospace;">settingspage</code>.</p>
7
- <p>This plugin is financed by purchases of the <a href="https://nextgenthemes.com/plugins/arve-pro/">Pro Addon</a>. The development and support of this plugins has become a job for me so I hope you understand that I can not make all features gratis and that you <a href="https://nextgenthemes.com/plugins/arve-pro/">purchase it</a> to get extra features and support the development.</p>
8
- <ul>
9
- <li><strong>Disable links in embeds (killer feature!)</strong><br>For example: Clicking on a title in a YouTube embed will not open a new tab. <strong>Prevent video hosts to lead your visitors away from your site!</strong></li>
10
- <li><strong>Lazyload mode</strong><br>Make your site load <strong>faster</strong> by loading only a image instead of the entire video player on pageload.</li>
11
- <li><strong>Lazyload -&gt; Lightbox</strong><br>Shows the Video in a Lightbox after clicking a preview image</li>
12
- <li><strong>Link -&gt; Lightbox</strong><br>Use simple links as triggers for lightboxed videos</li>
13
- <li>Automatic or custom thumbnail images</li>
14
- <li>Automatic or custom titles on top of your thumbnails</li>
15
- <li>'Expand on click' feature</li>
16
- <li>2 hover &amp; 2 icon styles</li>
17
- <li>Responsive thumbnails (srcset)</li>
18
- <li><strong>Feel good about yourself</strong><br>for supporting my 5+ years work on this plugin. Tons of hours, weekends always worked on improving it.</li>
19
- <li>Show the latest video of a YouTube channel by using the channel URL (updated/cached hourly)</li>
20
- <li><strong><a href="https://nextgenthemes.com/plugins/arve-pro/">Get the ARVE Pro Addon</a></strong></li>
21
- </ul>
 
 
 
 
 
 
 
 
 
 
22
  </div>
1
  <div class="ngt-sidebar-box">
2
+ <h3 id="please-rate">Please rate</h3>
3
+ <p>It would really help to get a <a
4
+ href="https://wordpress.org/support/plugin/advanced-responsive-video-embedder/reviews/#new-post">5 star
5
+ rating from you.</a></p>
6
+ <h3 id="pro-addon"><a href="https://nextgenthemes.com/plugins/arve-pro/">Pro Addon</a></h3>
7
+ <p><strong><big>10% off</big></strong> first year with discount code <code
8
+ style="font-family: Menlo, Consolas, &quot;DejaVu Sans Mono&quot, monospace">settingspage</code>.</p>
9
+ <p>This plugin is financed by purchases of the <a href="https://nextgenthemes.com/plugins/arve-pro/">Pro Addon</a>.
10
+ The development and support of this plugins has become a job for me so I hope you understand that I can not make
11
+ all features gratis and that you <a href="https://nextgenthemes.com/plugins/arve-pro/">purchase it</a> to get
12
+ extra features and support the development.</p>
13
+ <ul>
14
+ <li><strong>Disable links in embeds (killer feature!)</strong><br>For example: Clicking on a title in a YouTube
15
+ embed will not open a new tab. <strong>Prevent video hosts to lead your visitors away from your
16
+ site!</strong></li>
17
+ <li><strong>Lazyload mode</strong><br>Make your site load <strong>faster</strong> by loading only a image
18
+ instead of the entire video player on pageload.</li>
19
+ <li><strong>Lazyload -&gt; Lightbox</strong><br>Shows the Video in a Lightbox after clicking a preview image
20
+ </li>
21
+ <li><strong>Link -&gt; Lightbox</strong><br>Use simple links as triggers for lightboxed videos</li>
22
+ <li>Automatic or custom thumbnail images</li>
23
+ <li>Automatic or custom titles on top of your thumbnails</li>
24
+ <li>'Expand on click' feature</li>
25
+ <li>2 hover &amp; 2 icon styles</li>
26
+ <li>Responsive thumbnails (srcset)</li>
27
+ <li><strong>Feel good about yourself</strong><br>for supporting my 8+ years work on this plugin. Tons of hours,
28
+ weekends … always worked on improving it.</li>
29
+ <li>Show the latest video of a YouTube channel by using the channel URL (updated/cached hourly)</li>
30
+ <li><strong><a href="https://nextgenthemes.com/plugins/arve-pro/">Get the ARVE Pro Addon</a></strong></li>
31
+ </ul>
32
  </div>
php/Common/functions-settings.php CHANGED
@@ -28,26 +28,34 @@ function ngt_options() {
28
 
29
  function migrate_old_licenses() {
30
 
 
 
 
 
 
 
31
  $products = get_products();
32
  foreach ( $products as $p => $value ) {
33
 
34
  $old_key = get_option( "nextgenthemes_{$p}_key" );
35
  $old_key_status = get_option( "nextgenthemes_{$p}_key_status" );
36
 
 
 
37
  if ( $old_key ) {
38
  $options = (array) get_option( 'nextgenthemes' );
39
  $options[ $p ] = $old_key;
40
  update_option( 'nextgenthemes', $options );
41
- delete_option( "nextgenthemes_{$p}_key" );
42
  }
43
 
44
  if ( $old_key_status ) {
45
  $options = (array) get_option( 'nextgenthemes' );
46
  $options[ $p . '_status' ] = $old_key_status;
47
  update_option( 'nextgenthemes', $options );
48
- delete_option( "nextgenthemes_{$p}_key_status" );
49
  }
50
  }
 
 
51
  }
52
 
53
  function nextgenthemes_settings() {
28
 
29
  function migrate_old_licenses() {
30
 
31
+ $options_ver = get_option( 'nextgenthemes_options_ver' );
32
+
33
+ if ( \version_compare( $options_ver, '9.0', '>=' ) ) {
34
+ return;
35
+ }
36
+
37
  $products = get_products();
38
  foreach ( $products as $p => $value ) {
39
 
40
  $old_key = get_option( "nextgenthemes_{$p}_key" );
41
  $old_key_status = get_option( "nextgenthemes_{$p}_key_status" );
42
 
43
+ $new_options = get_option( 'nextgenthemes', [] );
44
+
45
  if ( $old_key ) {
46
  $options = (array) get_option( 'nextgenthemes' );
47
  $options[ $p ] = $old_key;
48
  update_option( 'nextgenthemes', $options );
 
49
  }
50
 
51
  if ( $old_key_status ) {
52
  $options = (array) get_option( 'nextgenthemes' );
53
  $options[ $p . '_status' ] = $old_key_status;
54
  update_option( 'nextgenthemes', $options );
 
55
  }
56
  }
57
+
58
+ update_option( 'nextgenthemes_options_ver', '9.0' );
59
  }
60
 
61
  function nextgenthemes_settings() {
php/functions-settings.php CHANGED
@@ -670,7 +670,7 @@ function all_settings() {
670
  'shortcode' => false,
671
  'label' => __( 'Enable help text in the Block sidebar?', 'advanced-responsive-video-embedder' ),
672
  'type' => 'boolean',
673
- 'description' => __( 'Makes the interface much cleaner.', 'advanced-responsive-video-embedder' ),
674
  ],
675
  'feed' => [
676
  'default' => true,
670
  'shortcode' => false,
671
  'label' => __( 'Enable help text in the Block sidebar?', 'advanced-responsive-video-embedder' ),
672
  'type' => 'boolean',
673
+ 'description' => __( 'Disabling this makes the interface much cleaner.', 'advanced-responsive-video-embedder' ),
674
  ],
675
  'feed' => [
676
  'default' => true,
php/functions-shortcode-filters.php CHANGED
@@ -500,14 +500,14 @@ function iframe_src_args( $src, array $a ) {
500
 
501
  $options = options();
502
 
503
- $parameters = wp_parse_args( preg_replace( '!\s+!', '&', $a['parameters'] ) );
504
- $option_parameters = [];
505
 
506
- if ( isset( $options['params'][ $a['provider'] ] ) ) {
507
- $option_parameters = wp_parse_args( preg_replace( '!\s+!', '&', $options['params'][ $a['provider'] ] ) );
508
  }
509
 
510
- $parameters = wp_parse_args( $parameters, $option_parameters );
511
  $src = add_query_arg( $parameters, $src );
512
 
513
  if ( 'youtube' === $a['provider'] && in_array( $a['mode'], [ 'lightbox', 'link-lightbox' ], true ) ) {
500
 
501
  $options = options();
502
 
503
+ $parameters = wp_parse_args( preg_replace( '!\s+!', '&', $a['parameters'] ) );
504
+ $params_options = [];
505
 
506
+ if ( ! empty( $options['url_params_' . $a['provider'] ] ) ) {
507
+ $params_options = wp_parse_args( preg_replace( '!\s+!', '&', $options['url_params_' . $a['provider'] ] ) );
508
  }
509
 
510
+ $parameters = wp_parse_args( $parameters, $params_options );
511
  $src = add_query_arg( $parameters, $src );
512
 
513
  if ( 'youtube' === $a['provider'] && in_array( $a['mode'], [ 'lightbox', 'link-lightbox' ], true ) ) {
readme.txt CHANGED
@@ -3,9 +3,9 @@ Contributors: nico23
3
  Donate link: https://nextgenthemes.com/donate/
4
  Tags: YouTube, Vimeo, lazyload, thumbnail, video, responsive, embeds, video-embedder, iframe, lightweight, simplicity, shortcodes
5
  Requires at least: 4.4.0
6
- Tested up to: 5.4
7
  Requires PHP: 5.6
8
- Stable tag: 9.0.0-beta5
9
  License: GPL-3.0
10
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
11
 
@@ -16,46 +16,55 @@ Easy responsive video embeds via URLs or shortcodes. Perfect drop-in replacement
16
  * [ARVE Pro addon changelog](https://nextgenthemes.com/plugins/arve-pro/changelog/)
17
  * [ARVE AMP addon changelog](https://nextgenthemes.com/plugins/arve-amp/)
18
 
19
- ### 9.0.0-beta2 ###
20
 
21
- [More details on this **mayor** update]()
 
 
 
22
 
23
  This update is very long in the making and I hope it will pay off somehow, hopefully literally. A lot things happened in the code that will not be visible to the end users directly but made the code more modern and easier to maintain.
24
 
 
 
25
  New:
26
- * Minimum PHP required is now 5.6.
27
- * Finally the ARVE Gutenberg block is here! Its not polished yet and there is still work to be done.
28
- * Optional admin bar button to quick access settings. Disable it in ARVE settings bothers you.
29
- * Added Bitchute
30
- * `av1mp4` shortcode parameter so serve [AV1](https://en.wikipedia.org/wiki/AV1) encoded files best named .av1.mp4 (to be used together with `mp4` or `webm`)
31
- * Settings page overhaul, using my own little settings framework. All addon options can be seen and set (without effect) before actually having the addons installed.
32
- * Option to
 
33
 
34
  Fixes:
35
- * YouTube live links are now working correctly.
36
- * TED embed url.
37
- * Facebook embeds.
38
- * Twitch embeds.
 
39
 
40
  Improved:
41
- * Generated iframe src will match what providers send over oembed.
42
- * Lots of code improvements that may not be noticeable to users but took a lot of time and will make the plugin more maintainable and easier to extend.
43
- * Removed the `lang` shortcode parameter that was only used for TED talks video subtitle display. This is now taken from the `language=x` url query.
44
- * Embeds work though WPs oembed system now that comes with a more stable codebase and better caching system for embeds.
45
- * Aspect ratios are now auto detected for all providers WP supports through oEmbed.
46
- * Aspect ratio field is now auto filled when pasting a iframe embed code into the shortcode UI or Gutenberg UI.
47
- * Removed jQuery dependency for frontend JavaScript.
48
- * Prevent autoplay of multiple videos, only the first video on pageload will be autoplayed.
49
 
50
- Removed:
51
- * Hack to support direct embedding of Dropbox videos because it no longer works.
52
- * Vimeo only `start` shortcode attribute. Use vimeo urls with `#t=30` at the end for starting time in seconds instead.
 
 
 
 
 
 
 
 
 
 
53
 
54
- Probably things I forgot about, working on this for ~1 year
55
 
56
  ### 2019-01-23 - 8.10.4 ###
57
 
58
- * Fix: PHP compatibility lowered to offical 5.3 as there was accidentally 5.4+ code used. Make sure you are on PHP 7.3 or at least 5.6 for the upcoming future as WP itself will require 5.6 this year. Its also insecure to run on those outdated versions: https://secure.php.net/supported-versions.php.
59
 
60
  ### 2019-01-16 - 8.10.2 ###
61
 
3
  Donate link: https://nextgenthemes.com/donate/
4
  Tags: YouTube, Vimeo, lazyload, thumbnail, video, responsive, embeds, video-embedder, iframe, lightweight, simplicity, shortcodes
5
  Requires at least: 4.4.0
6
+ Tested up to: 5.6
7
  Requires PHP: 5.6
8
+ Stable tag: 5.0.0-beta6
9
  License: GPL-3.0
10
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
11
 
16
  * [ARVE Pro addon changelog](https://nextgenthemes.com/plugins/arve-pro/changelog/)
17
  * [ARVE AMP addon changelog](https://nextgenthemes.com/plugins/arve-amp/)
18
 
19
+ ### 2020-12-01 9.0.0-beta6 ###
20
 
21
+ * Fix: Url parameters from settings page not working.
22
+ * Improved: Do not delete old license options in case people need to downgrade.
23
+
24
+ ### 2020-11-28 9.0.0-beta5 ###
25
 
26
  This update is very long in the making and I hope it will pay off somehow, hopefully literally. A lot things happened in the code that will not be visible to the end users directly but made the code more modern and easier to maintain.
27
 
28
+ [More details on this **mayor** update](https://nextgenthemes.com/improvements-in-arve-9-0-and-arve-pro-5-0/)
29
+
30
  New:
31
+
32
+ * Minimum PHP required is now 5.6.
33
+ * Finally the ARVE Gutenberg block is here! Its not polished yet and there is still work to be done.
34
+ * Optional admin bar button to quick access settings.
35
+ * Added Bitchute
36
+ * `av1mp4` shortcode parameter so serve [AV1](https://en.wikipedia.org/wiki/AV1) encoded files best named .av1.mp4 (to be used together with `mp4` or `webm`)
37
+ * Settings page overhaul, using my own little settings framework. All addon options can be seen and set (without effect) before actually having the addons installed.
38
+ * Option to completely disable all SEO data generation in case you want to use Yoast SEO or another plugin for that. Note that ARVE Pro offers more then just SEO for less.
39
 
40
  Fixes:
41
+
42
+ * YouTube live links are now working correctly.
43
+ * TED embed url.
44
+ * Facebook embeds.
45
+ * Twitch embeds.
46
 
47
  Improved:
 
 
 
 
 
 
 
 
48
 
49
+ * Generated iframe src will match what providers send over oembed.
50
+ * Lots of code improvements that may not be noticeable to users but took a lot of time and will make the plugin more maintainable and easier to extend.
51
+ * Removed the `lang` shortcode parameter that was only used for TED talks video subtitle display. This is now taken from the `language=x` url query.
52
+ * Embeds work though WPs oembed system now that comes with a more stable codebase and better caching system for embeds.
53
+ * Aspect ratios are now auto detected for all providers WP supports through oEmbed.
54
+ * Aspect ratio field is now auto filled when pasting a iframe embed code into the shortcode UI or Gutenberg UI.
55
+ * Removed jQuery dependency for frontend JavaScript.
56
+ * Prevent autoplay of multiple videos, only the first video on pageload will be autoplayed.
57
+
58
+ Removed:
59
+
60
+ * Hack to support direct embedding of Dropbox videos because it no longer works.
61
+ * Vimeo only `start` shortcode attribute. Use vimeo urls with `#t=30` at the end for starting time in seconds instead.
62
 
63
+ Probably things I forgot about, working on this for ~1 year
64
 
65
  ### 2019-01-23 - 8.10.4 ###
66
 
67
+ * Fix: PHP compatibility lowered to official 5.3 as there was accidentally 5.4+ code used. Make sure you are on PHP 7.3 or at least 5.6 for the upcoming future as WP itself will require 5.6 this year. Its also insecure to run on those outdated versions: https://secure.php.net/supported-versions.php.
68
 
69
  ### 2019-01-16 - 8.10.2 ###
70