YouTube - Version 8.4

Version Description

Download this release

Release Info

Developer embedplus
Plugin Icon 128x128 YouTube
Version 8.4
Comparing to
See all releases

Code changes from version 8.3 to 8.4

images/tonido.db ADDED
Binary file
readme.txt CHANGED
@@ -3,16 +3,17 @@ Contributors: embedplus
3
  Plugin Name: YouTube Embed
4
  Tags: at a glance, channel, annotations, music, music video, songs, song, lyrics, responsive, short code, shortcode, youtube shortcode, health, diagnostic, youtube status, seo, video seo, rich snippets, reddit, google+, google plus, comments, search, widget, sidebar, responsive, fluid, iphone, mobile, android, tablet, ipad, youtube playlist, playlists, playlist, wmode, hd, autohd, auto hd, video analytics, analytics, google, google analytics, view count, vlog, vlogging, web videos, youtube analytics, youtube, youtube plugin, youtube shortcode, embed youtube, plugin, video, video shortcode, embed videos, youtube player, shortcode, simple, simple youtube, smart youtube playback, youtube embed, wordpress youtube embed, embedding youtube, youtube embedding, video plugin, https, ssl, secure, no-cookie, cookie, html5, youtube html5
5
  Requires at least: 2.9
6
- Tested up to: 3.9
7
- Stable tag: 8.3
8
  License: GPLv3 or later
9
 
10
  YouTube embed plugin with basic features and convenient defaults. Upgrade now to add tracking, instant video SEO tags, and much more!
11
 
12
  == Description ==
13
 
14
- **400,000+ downloads! Here are some recently added features:**
15
 
 
16
  * "At a Glance" direct access to your YouTube posts/pages
17
  * Visual YouTube video searching and viewing
18
  * Easy "Insert" button for both the Visual and Text mode of the editor
@@ -25,7 +26,7 @@ YouTube embed plugin with basic features and convenient defaults. Upgrade now to
25
  * (PRO) Music video embedding extras
26
  * And more...
27
 
28
- This YouTube embed plugin for WordPress keeps things easy and simple, but it can also be upgraded to PRO for enhanced SEO, performance, privacy and security for you and your visitors. It provides the basic features of the YouTube embedded player and will have you posting videos in seconds after installing it. **All you have to do is simply paste an unformatted YouTube link on its own line (shortcodes are also supported).** Your YouTube embed will then show up when you preview or publish the post. The settings page has plenty of default options that you can automatically apply to all your embedded YouTube videos. **Check out the free options below:**
29
 
30
  * Force HD quality when available
31
  * Make your videos responsive so that they dynamically fit in all screen sizes (smart phone, PC and tablet)
@@ -122,6 +123,9 @@ You can also start and end each individual video at particular times. Like the a
122
 
123
  == Changelog ==
124
 
 
 
 
125
  = YouTube Embed 8.3 =
126
  Now compatible with WordPress 3.9.
127
 
3
  Plugin Name: YouTube Embed
4
  Tags: at a glance, channel, annotations, music, music video, songs, song, lyrics, responsive, short code, shortcode, youtube shortcode, health, diagnostic, youtube status, seo, video seo, rich snippets, reddit, google+, google plus, comments, search, widget, sidebar, responsive, fluid, iphone, mobile, android, tablet, ipad, youtube playlist, playlists, playlist, wmode, hd, autohd, auto hd, video analytics, analytics, google, google analytics, view count, vlog, vlogging, web videos, youtube analytics, youtube, youtube plugin, youtube shortcode, embed youtube, plugin, video, video shortcode, embed videos, youtube player, shortcode, simple, simple youtube, smart youtube playback, youtube embed, wordpress youtube embed, embedding youtube, youtube embedding, video plugin, https, ssl, secure, no-cookie, cookie, html5, youtube html5
5
  Requires at least: 2.9
6
+ Tested up to: 3.9.1
7
+ Stable tag: 8.4
8
  License: GPLv3 or later
9
 
10
  YouTube embed plugin with basic features and convenient defaults. Upgrade now to add tracking, instant video SEO tags, and much more!
11
 
12
  == Description ==
13
 
14
+ **500,000+ downloads! Here are some recently added features:**
15
 
16
+ * Embed an entire channel as a playlist
17
  * "At a Glance" direct access to your YouTube posts/pages
18
  * Visual YouTube video searching and viewing
19
  * Easy "Insert" button for both the Visual and Text mode of the editor
26
  * (PRO) Music video embedding extras
27
  * And more...
28
 
29
+ This plugin helps you easily manage the growing complexity of YouTube. It can also be upgraded to PRO for enhanced SEO, performance, privacy and security for you and your visitors. It provides the basic features of the YouTube embedded player and will have you posting videos in seconds after installing it. **All you have to do is simply paste an unformatted YouTube link on its own line (shortcodes are also supported).** Your YouTube embed will then show up when you preview or publish the post. The settings page has plenty of default options that you can automatically apply to all your embedded YouTube videos. **Check out the free options below:**
30
 
31
  * Force HD quality when available
32
  * Make your videos responsive so that they dynamically fit in all screen sizes (smart phone, PC and tablet)
123
 
124
  == Changelog ==
125
 
126
+ = YouTube Embed 8.4 =
127
+ This update features improved responsive theme support for both Free and PRO versions. It also adds refined schema tag support to the Pro SEO feature.
128
+
129
  = YouTube Embed 8.3 =
130
  Now compatible with WordPress 3.9.
131
 
scripts/embedplus_mce.css CHANGED
@@ -90,4 +90,12 @@
90
  text-decoration: none;
91
  text-shadow: #FFF 0px 1px 0px;
92
  white-space: nowrap;
 
 
 
 
 
 
 
 
93
  }
90
  text-decoration: none;
91
  text-shadow: #FFF 0px 1px 0px;
92
  white-space: nowrap;
93
+ }
94
+
95
+ #dashboard_right_now .page-count a.ytprefs_glance_button:before, #dashboard_right_now .page-count span.ytprefs_glance_button:before
96
+ {
97
+ content: '';
98
+ width: 20px;
99
+ height: 20px;
100
+ background:transparent url('../images/youtubeicon16off.png') no-repeat scroll 0px 1px;
101
  }
scripts/fitvids.js CHANGED
@@ -14,7 +14,7 @@
14
 
15
  "use strict";
16
 
17
- $.fn.fitVids = function( options ) {
18
  var settings = {
19
  customSelector: null
20
  };
@@ -39,10 +39,11 @@
39
  }
40
 
41
  return this.each(function(){
42
- var selectors = [
43
- "iframe[src*='youtube.com']",
44
- "iframe[src*='youtube-nocookie.com']"
45
- ];
 
46
 
47
  if (settings.customSelector) {
48
  selectors.push(settings.customSelector);
@@ -71,5 +72,5 @@
71
  // Works with either jQuery or Zepto
72
  })( window.jQuery || window.Zepto );
73
  $(document).ready(function(){
74
- $("body").fitVids();
75
  });
14
 
15
  "use strict";
16
 
17
+ $.fn.fitVidsEP = function( options ) {
18
  var settings = {
19
  customSelector: null
20
  };
39
  }
40
 
41
  return this.each(function(){
42
+ // var selectors = [
43
+ // "iframe[src*='youtube.com']",
44
+ // "iframe[src*='youtube-nocookie.com']"
45
+ // ];
46
+ var selectors = epresponsiveselector;
47
 
48
  if (settings.customSelector) {
49
  selectors.push(settings.customSelector);
72
  // Works with either jQuery or Zepto
73
  })( window.jQuery || window.Zepto );
74
  $(document).ready(function(){
75
+ $("body").fitVidsEP();
76
  });
scripts/fitvids.min.js CHANGED
@@ -11,8 +11,9 @@
11
  */
12
  function epdofitvids(e)
13
  {
14
- "use strict";e.fn.fitVids=function(t){var n={customSelector:null};if(!document.getElementById("fit-vids-style")){var r=document.createElement("div"),i=document.getElementsByTagName("base")[0]||document.getElementsByTagName("script")[0],s="­<style>.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}</style>";r.className="fit-vids-style";r.id="fit-vids-style";r.style.display="none";r.innerHTML=s;i.parentNode.insertBefore(r,i)}if(t){e.extend(n,t)}return this.each(function(){var t=epresponsiveselector;if(n.customSelector){t.push(n.customSelector)}var r=e(this).find(t.join(","));r=r.not("object object");r.each(function(){var t=e(this);if(this.tagName.toLowerCase()==="embed"&&t.parent("object").length||t.parent(".fluid-width-video-wrapper").length){return}var n=this.tagName.toLowerCase()==="object"||t.attr("height")&&!isNaN(parseInt(t.attr("height"),10))?parseInt(t.attr("height"),10):t.height(),r=!isNaN(parseInt(t.attr("width"),10))?parseInt(t.attr("width"),10):t.width(),i=n/r;if(!t.attr("id")){var s="fitvid"+Math.floor(Math.random()*999999);t.attr("id",s)}t.wrap('<div class="fluid-width-video-wrapper"></div>').parent(".fluid-width-video-wrapper").css("padding-top",i*100+"%");t.removeAttr("height").removeAttr("width")})})};
15
- e(document).ready(function(){e("body").fitVids();});
 
16
  return true;
17
  }
18
  var ephasjq = typeof window.jQuery != "undefined" && epdofitvids(window.jQuery);
11
  */
12
  function epdofitvids(e)
13
  {
14
+ "use strict";e.fn.fitVidsEP=function(t){var n={customSelector:null};if(!document.getElementById("fit-vids-style")){var r=document.createElement("div"),i=document.getElementsByTagName("base")[0]||document.getElementsByTagName("script")[0],s="&shy;<style>.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}</style>";r.className="fit-vids-style";r.id="fit-vids-style";r.style.display="none";r.innerHTML=s;i.parentNode.insertBefore(r,i)}if(t){e.extend(n,t)}return this.each(function(){var t=epresponsiveselector;if(n.customSelector){t.push(n.customSelector)}var r=e(this).find(t.join(","));r=r.not("object object");r.each(function(){var t=e(this);if(this.tagName.toLowerCase()==="embed"&&t.parent("object").length||t.parent(".fluid-width-video-wrapper").length){return}var n=this.tagName.toLowerCase()==="object"||t.attr("height")&&!isNaN(parseInt(t.attr("height"),10))?parseInt(t.attr("height"),10):t.height(),r=!isNaN(parseInt(t.attr("width"),10))?parseInt(t.attr("width"),10):t.width(),i=n/r;if(!t.attr("id")){var s="fitvid"+Math.floor(Math.random()*999999);t.attr("id",s)}t.wrap('<div class="fluid-width-video-wrapper"></div>').parent(".fluid-width-video-wrapper").css("padding-top",i*100+"%");t.removeAttr("height").removeAttr("width")})})};
15
+
16
+ e(document).ready(function(){e("body").fitVidsEP();});
17
  return true;
18
  }
19
  var ephasjq = typeof window.jQuery != "undefined" && epdofitvids(window.jQuery);
youtube.php CHANGED
@@ -3,14 +3,14 @@
3
  Plugin Name: YouTube
4
  Plugin URI: http://www.embedplus.com/dashboard/pro-easy-video-analytics.aspx
5
  Description: YouTube embed plugin with basic features and convenient defaults. Upgrade now to add tracking, instant video SEO tags, and much more!
6
- Version: 8.3
7
  Author: EmbedPlus Team
8
  Author URI: http://www.embedplus.com
9
  */
10
 
11
  /*
12
  YouTube
13
- Copyright (C) 2013 EmbedPlus.com
14
 
15
  This program is free software: you can redistribute it and/or modify
16
  it under the terms of the GNU General Public License as published by
@@ -32,7 +32,7 @@
32
  class YouTubePrefs
33
  {
34
 
35
- public static $version = '8.3';
36
  public static $opt_version = 'version';
37
  public static $optembedwidth = null;
38
  public static $optembedheight = null;
@@ -73,7 +73,7 @@ class YouTubePrefs
73
  public static $scriptsprinted = 0;
74
  public static $badentities = array('&#215;', '×', '&#8211;', '–', '&amp;');
75
  public static $goodliterals = array('x', 'x', '--', '--', '&');
76
-
77
 
78
  /*
79
  listType
@@ -315,17 +315,6 @@ class YouTubePrefs
315
  ?>
316
  To remove this feature from your dashboard, simply uncheck <i>Show "At a Glance" Embed Links</i> in the <a target="_blank" href="<?php echo admin_url('admin.php?page=youtube-my-preferences#jumpdefaults') ?>">plugin settings page &raquo;</a>.
317
 
318
- <?php
319
- if (!(self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0))
320
- {
321
- ?>
322
- <div class="center">
323
- <i>New:</i> <a target="_blank" href="https://www.embedplus.com/dashboard/pro-easy-video-analytics.aspx?coupon=400K-4OFF">Coupon code <span class="bold">400K-4OFF</span> is now active &raquo;</a>
324
- </div>
325
- <?php
326
- }
327
- ?>
328
-
329
  </div>
330
  <?php
331
  }
@@ -840,8 +829,8 @@ class YouTubePrefs
840
  $json = json_decode($raw, true);
841
  if (is_array($json))
842
  {
843
- $_name = esc_attr(sanitize_text_field($json['entry']['title']['$t']));
844
- $_description = esc_attr(sanitize_text_field($json['entry']['media$group']['media$description']['$t']));
845
  $_thumbnailUrl = esc_url("http://i.ytimg.com/vi/" . $vidid . "/0.jpg");
846
  $_duration = self::formatDuration(self::secondsToDuration(intval($json['entry']['media$group']['yt$duration']['seconds'])));
847
  $_uploadDate = sanitize_text_field($json['entry']['published']['$t']);
@@ -982,7 +971,9 @@ class YouTubePrefs
982
  if (self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0)
983
  {
984
  add_menu_page('YouTube Settings', 'YouTube PRO', 'manage_options', 'youtube-my-preferences', 'YouTubePrefs::ytprefs_show_options', plugins_url('images/youtubeicon16.png', __FILE__), '10.000392854349');
985
- add_menu_page('YouTube Analytics Dashboard', 'PRO Analytics', 'manage_options', 'youtube-ep-analytics-dashboard', 'YouTubePrefs::epstats_show_options', plugins_url('images/epstats16.png', __FILE__), '10.000492884349');
 
 
986
  }
987
  else
988
  {
@@ -1024,7 +1015,7 @@ class YouTubePrefs
1024
  $thishost = (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : "");
1025
  $thiskey = self::$alloptions[self::$opt_pro];
1026
 
1027
- $dashurl = self::$epbase . "/dashboard/pro-easy-video-analytics.aspx?ref=protab&domain=" . $thishost . "&prokey=" . $thiskey . '&coupon=400K-4OFF';
1028
 
1029
  if (self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0)
1030
  {
@@ -1179,10 +1170,10 @@ class YouTubePrefs
1179
 
1180
  $new_pointer_content = '<h3>' . __('New Update') . '</h3>'; // ooopointer
1181
 
1182
- $new_pointer_content .= '<p>' . __('Now compatible with the new WordPress 3.9! '); // ooopointer
1183
  if (!(self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0))
1184
  {
1185
- $new_pointer_content .= __('This update is applied to both plugin versions, free and <a class="bold orange" target="_blank" href="' . self::$epbase . '/dashboard/pro-easy-video-analytics.aspx?ref=frompointer&coupon=400K-4OFF' . '">PRO &raquo;</a>');
1186
  }
1187
  else
1188
  {
@@ -1291,7 +1282,7 @@ class YouTubePrefs
1291
  <?php
1292
  }
1293
 
1294
- $haspro = ($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0);
1295
  // Now display the settings editing screen
1296
 
1297
  echo '<div class="wrap" style="max-width: 1000px;">';
@@ -1349,6 +1340,7 @@ class YouTubePrefs
1349
  input[type=checkbox] {border: 1px solid #000000;}
1350
  .chktitle {display: inline-block; padding: 1px 3px 1px 3px; border-radius: 3px; background-color: #ffffff; border: 1px solid #dddddd;}
1351
  b, strong {font-weight: bold;}
 
1352
  </style>
1353
 
1354
  <div class="ytindent">
@@ -1418,7 +1410,7 @@ class YouTubePrefs
1418
  <?php _e("Default YouTube Options") ?> <a href="#top" class="totop">&#9650; top</a>
1419
  </h3>
1420
  <p>
1421
- <?php _e("Below you can set the default options for all your videos (click \"Save Changes\" when finished). However, you can override them (and more) on a per-video basis. Directions on how to do that are in the next section.") ?>
1422
  </p>
1423
  <p class="submit">
1424
  <input type="submit" onclick="return savevalidate();" name="Submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
@@ -1514,7 +1506,7 @@ class YouTubePrefs
1514
 
1515
  <p class="smallnote orange">Below are PRO features for enhanced SEO, performance, privacy, and security (works for even past embed links):</p>
1516
  <?php
1517
- if ($haspro)
1518
  {
1519
  ?>
1520
  <p>
@@ -1533,7 +1525,7 @@ class YouTubePrefs
1533
  <img class="ssschema" src="<?php echo plugins_url('images/ssschemaorg.jpg', __FILE__) ?>" />
1534
  <input name="<?php echo self::$opt_schemaorg; ?>" id="<?php echo self::$opt_schemaorg; ?>" <?php checked($all[self::$opt_schemaorg], 1); ?> type="checkbox" class="checkbox">
1535
  <label for="<?php echo self::$opt_schemaorg; ?>">
1536
- <b>(PRO)</b> <b class="chktitle">Video SEO Tags:</b> Automatically add Google, Bing, and Yahoo friendly markup so that your pages with video embeds can be indexed to have a greater chance of showing up in search engine results for those particular videos, even if you aren't the owner. This markup also promotes the chances of your pages showing up with actual video thumbnails within search results (see example on the right). Just check the PRO setting and we'll handle the SEO.
1537
  </label>
1538
 
1539
  </p>
@@ -1558,7 +1550,7 @@ class YouTubePrefs
1558
  <img class="ssschema" src="<?php echo plugins_url('images/ssschemaorg.jpg', __FILE__) ?>" />
1559
  <input disabled type="checkbox" class="checkbox">
1560
  <label>
1561
- <b class="chktitle">Video SEO Tags:</b> <span class="pronon">(NEW: PRO Users)</span> Automatically add Google, Bing, and Yahoo friendly markup so that your pages with video embeds can be indexed to have a greater chance of showing up in search engine results for those particular videos, even if you aren't the owner. This markup also promotes the chances of your pages showing up with actual video thumbnails within search results (see example on the right). Just check the PRO setting and we'll handle the SEO.
1562
  </label>
1563
  </p>
1564
 
@@ -1573,7 +1565,7 @@ class YouTubePrefs
1573
  <hr>
1574
 
1575
  <?php
1576
- if ($haspro)
1577
  {
1578
  ?>
1579
  <p>
@@ -1626,7 +1618,7 @@ class YouTubePrefs
1626
  <div class="jumper" id="jumppro"></div>
1627
  <div id="goprobox">
1628
  <?php
1629
- if ($haspro)
1630
  {
1631
  echo "<h3>" . __('Thank you for going PRO.');
1632
  echo ' &nbsp;<input type="submit" name="showkey" class="button-primary" style="vertical-align: 15%;" id="showprokey" value="View my PRO key" />';
@@ -1709,7 +1701,7 @@ class YouTubePrefs
1709
  <h3 class="bold">Enter and save your PRO key (emailed to you):</h3>
1710
  <?php } ?>
1711
  <form name="form2" method="post" action="" id="epform2" class="submitpro" <?php
1712
- if ($haspro)
1713
  {
1714
  echo 'style="display: none;"';
1715
  }
@@ -1718,7 +1710,7 @@ class YouTubePrefs
1718
  <input name="<?php echo self::$opt_pro; ?>" id="opt_pro" value="<?php echo $all[self::$opt_pro]; ?>" type="text">
1719
  <input type="submit" name="Submit" class="button-primary" id="prokeysubmit" value="<?php _e('Save Key') ?>" />
1720
  <?php
1721
- if (!$haspro)
1722
  {
1723
  ?>
1724
  &nbsp; &nbsp; &nbsp; <span style="font-size: 25px; color: #cccccc;">|</span> &nbsp; &nbsp; &nbsp; <a href="<?php echo self::$epbase ?>/dashboard/pro-easy-video-analytics.aspx" class="button-primary brightpro" target="_blank">Click here to go PRO &raquo;</a>
@@ -1764,8 +1756,17 @@ class YouTubePrefs
1764
  </p>
1765
 
1766
 
1767
- <iframe src="<?php echo self::$epbase ?>/dashboard/prosupport.aspx?simple=1&prokey=<?php echo $all[self::$opt_pro]; ?>&domain=<?php echo site_url(); ?>" width="500" height="500"></iframe>
1768
 
 
 
 
 
 
 
 
 
 
1769
 
1770
  <script type="text/javascript">
1771
 
@@ -1995,7 +1996,7 @@ class YouTubePrefs
1995
  add_action('wp_print_scripts', 'youtubeprefs_output_scriptvars');
1996
 
1997
  if (
1998
- //(!(isset(YouTubePrefs::$alloptions[YouTubePrefs::$opt_pro]) && strlen(trim(YouTubePrefs::$alloptions[YouTubePrefs::$opt_pro])) > 0)) && // display only if not pro ooopointer
1999
  (get_bloginfo('version') >= '3.3') && YouTubePrefs::custom_admin_pointers_check()
2000
  )
2001
  {
3
  Plugin Name: YouTube
4
  Plugin URI: http://www.embedplus.com/dashboard/pro-easy-video-analytics.aspx
5
  Description: YouTube embed plugin with basic features and convenient defaults. Upgrade now to add tracking, instant video SEO tags, and much more!
6
+ Version: 8.4
7
  Author: EmbedPlus Team
8
  Author URI: http://www.embedplus.com
9
  */
10
 
11
  /*
12
  YouTube
13
+ Copyright (C) 2014 EmbedPlus.com
14
 
15
  This program is free software: you can redistribute it and/or modify
16
  it under the terms of the GNU General Public License as published by
32
  class YouTubePrefs
33
  {
34
 
35
+ public static $version = '8.4';
36
  public static $opt_version = 'version';
37
  public static $optembedwidth = null;
38
  public static $optembedheight = null;
73
  public static $scriptsprinted = 0;
74
  public static $badentities = array('&#215;', '×', '&#8211;', '–', '&amp;');
75
  public static $goodliterals = array('x', 'x', '--', '--', '&');
76
+ //http://jscompress.com/
77
 
78
  /*
79
  listType
315
  ?>
316
  To remove this feature from your dashboard, simply uncheck <i>Show "At a Glance" Embed Links</i> in the <a target="_blank" href="<?php echo admin_url('admin.php?page=youtube-my-preferences#jumpdefaults') ?>">plugin settings page &raquo;</a>.
317
 
 
 
 
 
 
 
 
 
 
 
 
318
  </div>
319
  <?php
320
  }
829
  $json = json_decode($raw, true);
830
  if (is_array($json))
831
  {
832
+ $_name = esc_attr(sanitize_text_field(str_replace("@", "&#64;", $json['entry']['title']['$t'])));
833
+ $_description = esc_attr(sanitize_text_field(str_replace("@", "&#64;", $json['entry']['media$group']['media$description']['$t'])));
834
  $_thumbnailUrl = esc_url("http://i.ytimg.com/vi/" . $vidid . "/0.jpg");
835
  $_duration = self::formatDuration(self::secondsToDuration(intval($json['entry']['media$group']['yt$duration']['seconds'])));
836
  $_uploadDate = sanitize_text_field($json['entry']['published']['$t']);
971
  if (self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0)
972
  {
973
  add_menu_page('YouTube Settings', 'YouTube PRO', 'manage_options', 'youtube-my-preferences', 'YouTubePrefs::ytprefs_show_options', plugins_url('images/youtubeicon16.png', __FILE__), '10.000392854349');
974
+ //add_menu_page('YouTube Analytics Dashboard', 'PRO Analytics', 'manage_options', 'youtube-ep-analytics-dashboard', 'YouTubePrefs::epstats_show_options', plugins_url('images/epstats16.png', __FILE__), '10.000492884349');
975
+ add_submenu_page('youtube-my-preferences', '', '', 'manage_options', 'youtube-my-preferences', 'YouTubePrefs::ytprefs_show_options');
976
+ add_submenu_page('youtube-my-preferences', 'YouTube Analytics Dashboard', '<img style="width: 16px; height: 16px; vertical-align: text-top;" src="' . plugins_url('images/epstats16.png', __FILE__) . '" />&nbsp;&nbsp;PRO Analytics', 'manage_options', 'youtube-ep-analytics-dashboard', 'YouTubePrefs::epstats_show_options');
977
  }
978
  else
979
  {
1015
  $thishost = (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : "");
1016
  $thiskey = self::$alloptions[self::$opt_pro];
1017
 
1018
+ $dashurl = self::$epbase . "/dashboard/pro-easy-video-analytics.aspx?ref=protab&domain=" . $thishost . "&prokey=" . $thiskey;
1019
 
1020
  if (self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0)
1021
  {
1170
 
1171
  $new_pointer_content = '<h3>' . __('New Update') . '</h3>'; // ooopointer
1172
 
1173
+ $new_pointer_content .= '<p>' . __('This update features improved responsive theme support for both Free and PRO versions. '); // ooopointer
1174
  if (!(self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0))
1175
  {
1176
+ $new_pointer_content .= __('It also adds refined schema tag support to the <a class="bold orange" target="_blank" href="' . self::$epbase . '/dashboard/pro-easy-video-analytics.aspx?ref=frompointer">Pro SEO feature &raquo;</a>');
1177
  }
1178
  else
1179
  {
1282
  <?php
1283
  }
1284
 
1285
+
1286
  // Now display the settings editing screen
1287
 
1288
  echo '<div class="wrap" style="max-width: 1000px;">';
1340
  input[type=checkbox] {border: 1px solid #000000;}
1341
  .chktitle {display: inline-block; padding: 1px 3px 1px 3px; border-radius: 3px; background-color: #ffffff; border: 1px solid #dddddd;}
1342
  b, strong {font-weight: bold;}
1343
+ input.checkbox[disabled] {border: 1px dotted #444444;}
1344
  </style>
1345
 
1346
  <div class="ytindent">
1410
  <?php _e("Default YouTube Options") ?> <a href="#top" class="totop">&#9650; top</a>
1411
  </h3>
1412
  <p>
1413
+ <?php _e("One of the benefits of using this plugin is that you can set the default options for all your videos (click \"Save Changes\" when finished). However, you can also override them (and more) on a per-video basis. Directions on how to do that are in the next section.") ?>
1414
  </p>
1415
  <p class="submit">
1416
  <input type="submit" onclick="return savevalidate();" name="Submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
1506
 
1507
  <p class="smallnote orange">Below are PRO features for enhanced SEO, performance, privacy, and security (works for even past embed links):</p>
1508
  <?php
1509
+ if ($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0)
1510
  {
1511
  ?>
1512
  <p>
1525
  <img class="ssschema" src="<?php echo plugins_url('images/ssschemaorg.jpg', __FILE__) ?>" />
1526
  <input name="<?php echo self::$opt_schemaorg; ?>" id="<?php echo self::$opt_schemaorg; ?>" <?php checked($all[self::$opt_schemaorg], 1); ?> type="checkbox" class="checkbox">
1527
  <label for="<?php echo self::$opt_schemaorg; ?>">
1528
+ <b>(PRO)</b> <b class="chktitle">Video SEO Tags:</b> Automatically add Google, Bing, and Yahoo friendly markup so that your pages with video embeds can be indexed to have a greater chance of showing up in search engine results for those particular videos, even if you aren't the owner. This markup also promotes the chances of your pages showing up with actual video thumbnails within search results (see example on the right).
1529
  </label>
1530
 
1531
  </p>
1550
  <img class="ssschema" src="<?php echo plugins_url('images/ssschemaorg.jpg', __FILE__) ?>" />
1551
  <input disabled type="checkbox" class="checkbox">
1552
  <label>
1553
+ <b class="chktitle">Video SEO Tags:</b> <span class="pronon">(NEW: PRO Users)</span> Automatically add Google, Bing, and Yahoo friendly markup so that your pages with video embeds can be indexed to have a greater chance of showing up in search engine results for those particular videos, even if you aren't the owner. This markup also promotes the chances of your pages showing up with actual video thumbnails within search results (see example on the right).
1554
  </label>
1555
  </p>
1556
 
1565
  <hr>
1566
 
1567
  <?php
1568
+ if ($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0)
1569
  {
1570
  ?>
1571
  <p>
1618
  <div class="jumper" id="jumppro"></div>
1619
  <div id="goprobox">
1620
  <?php
1621
+ if ($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0)
1622
  {
1623
  echo "<h3>" . __('Thank you for going PRO.');
1624
  echo ' &nbsp;<input type="submit" name="showkey" class="button-primary" style="vertical-align: 15%;" id="showprokey" value="View my PRO key" />';
1701
  <h3 class="bold">Enter and save your PRO key (emailed to you):</h3>
1702
  <?php } ?>
1703
  <form name="form2" method="post" action="" id="epform2" class="submitpro" <?php
1704
+ if ($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0)
1705
  {
1706
  echo 'style="display: none;"';
1707
  }
1710
  <input name="<?php echo self::$opt_pro; ?>" id="opt_pro" value="<?php echo $all[self::$opt_pro]; ?>" type="text">
1711
  <input type="submit" name="Submit" class="button-primary" id="prokeysubmit" value="<?php _e('Save Key') ?>" />
1712
  <?php
1713
+ if (!($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0))
1714
  {
1715
  ?>
1716
  &nbsp; &nbsp; &nbsp; <span style="font-size: 25px; color: #cccccc;">|</span> &nbsp; &nbsp; &nbsp; <a href="<?php echo self::$epbase ?>/dashboard/pro-easy-video-analytics.aspx" class="button-primary brightpro" target="_blank">Click here to go PRO &raquo;</a>
1756
  </p>
1757
 
1758
 
1759
+ <iframe src="<?php echo self::$epbase ?>/dashboard/prosupport.aspx?simple=1&prokey=<?php echo $all[self::$opt_pro]; ?>&domain=<?php echo site_url(); ?>" width="500" height="<?php echo ($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0) ? "500" : "140"; ?>"></iframe>
1760
 
1761
+ <?php
1762
+ if (!($all[self::$opt_pro] && strlen(trim($all[self::$opt_pro])) > 0))
1763
+ {
1764
+ ?>
1765
+ <br>
1766
+ <br>
1767
+ <iframe src="<?php echo self::$epbase ?>/dashboard/likecoupon.aspx" width="600" height="500"></iframe>
1768
+ <?php }
1769
+ ?>
1770
 
1771
  <script type="text/javascript">
1772
 
1996
  add_action('wp_print_scripts', 'youtubeprefs_output_scriptvars');
1997
 
1998
  if (
1999
+ //(!(isset(YouTubePrefs::$alloptions[YouTubePrefs::$opt_pro]) && strlen(trim(YouTubePrefs::$alloptions[YouTubePrefs::$opt_pro])) > 0)) && // display only if not pro ooopointer
2000
  (get_bloginfo('version') >= '3.3') && YouTubePrefs::custom_admin_pointers_check()
2001
  )
2002
  {