Version Description
- Added compatibility with other Youtube plugins such as wp-youtube ([yt]...[/yt] type code)
Download this release
Release Info
| Developer | freediver |
| Plugin | |
| Version | 3.6 |
| Comparing to | |
| See all releases | |
Code changes from version 3.4.3 to 3.6
- readme.txt +7 -0
- screenshot-1.png +0 -0
- smartyoutube.class.php +51 -55
- smartyoutube.php +3 -1
readme.txt
CHANGED
|
@@ -27,6 +27,7 @@ Main Features:
|
|
| 27 |
* Supports video deep linking (starting at desired point with &start=time parameter)
|
| 28 |
* Works on iPod and iPhone
|
| 29 |
* Supports migrated blogs from Wordpress.com
|
|
|
|
| 30 |
* Provides a sidebar widget for videos as well
|
| 31 |
* Produces xHTML valid code
|
| 32 |
* Very fast and light, no extra scripts needed
|
|
@@ -36,6 +37,12 @@ Plugin by Vladimir Prelovac. Looking for <a href="http://www.prelovac.com/vladim
|
|
| 36 |
|
| 37 |
== Changelog ==
|
| 38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 39 |
= 3.4.3 =
|
| 40 |
* Fixed privacy option
|
| 41 |
* Supports new #! style Youtube URLs
|
| 27 |
* Supports video deep linking (starting at desired point with &start=time parameter)
|
| 28 |
* Works on iPod and iPhone
|
| 29 |
* Supports migrated blogs from Wordpress.com
|
| 30 |
+
* Supports migration from other Youtube plugins such as wp-youtube
|
| 31 |
* Provides a sidebar widget for videos as well
|
| 32 |
* Produces xHTML valid code
|
| 33 |
* Very fast and light, no extra scripts needed
|
| 37 |
|
| 38 |
== Changelog ==
|
| 39 |
|
| 40 |
+
= 3.6 =
|
| 41 |
+
* Added compatibility with other Youtube plugins such as wp-youtube ([yt]...[/yt] type code)
|
| 42 |
+
|
| 43 |
+
= 3.5 =
|
| 44 |
+
* Fixed Iphone Issues
|
| 45 |
+
|
| 46 |
= 3.4.3 =
|
| 47 |
* Fixed privacy option
|
| 48 |
* Supports new #! style Youtube URLs
|
screenshot-1.png
CHANGED
|
Binary file
|
smartyoutube.class.php
CHANGED
|
@@ -113,6 +113,7 @@ class SmartYouTube
|
|
| 113 |
$this->options['template'] = !isset($_POST['disp_template']) ?
|
| 114 |
'{video}' :
|
| 115 |
stripslashes(htmlspecialchars($_POST['disp_template']));;
|
|
|
|
| 116 |
|
| 117 |
update_option($this->key, $this->options);
|
| 118 |
|
|
@@ -151,6 +152,8 @@ class SmartYouTube
|
|
| 151 |
$disp_privacy = $this->options['privacy'] ? 'checked="checked"' : '';
|
| 152 |
|
| 153 |
$disp_template = wp_specialchars($this->options['template']);
|
|
|
|
|
|
|
| 154 |
|
| 155 |
if (!$disp_width)
|
| 156 |
{
|
|
@@ -330,8 +333,14 @@ class SmartYouTube
|
|
| 330 |
<input type="checkbox" id="privacy" name="disp_privacy" $disp_privacy /><label for="privacy"> Enable privacy-enhanced mode [<a target="_blank" href="http://www.google.com/support/youtube/bin/answer.py?answer=141046">?</a>]</label>
|
| 331 |
</div>
|
| 332 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 333 |
<h3>xHTML validation</h3>
|
| 334 |
-
<p class="instruct">Enabling the option below will
|
| 335 |
<input id="valid" type="checkbox" name="valid" $valid />
|
| 336 |
<label for="valid">Enable xHTML Validation</label>
|
| 337 |
|
|
@@ -350,7 +359,7 @@ class SmartYouTube
|
|
| 350 |
</div>
|
| 351 |
</div>
|
| 352 |
</div>
|
| 353 |
-
<h5 class="author">Another fine plugin by <a href="http://www.prelovac.com/vladimir/">Vladimir Prelovac</a></h5>
|
| 354 |
END;
|
| 355 |
}
|
| 356 |
|
|
@@ -392,6 +401,17 @@ END;
|
|
| 392 |
$the_content = preg_replace("/\[youtube\=http:\/\/([a-zA-Z0-9\-\_]+\.|)youtube\.com\/watch(\?v\=|\/v\/|#!v=)([a-zA-Z0-9\-\_]{11})([^\s<]*)\]/", $this->tag($match[3], '', $match[4], $side), $the_content, 1);
|
| 393 |
}
|
| 394 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 395 |
|
| 396 |
return $the_content;
|
| 397 |
}
|
|
@@ -458,51 +478,27 @@ END;
|
|
| 458 |
{
|
| 459 |
$video_url = htmlspecialchars("$root_url/p/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 460 |
$yte_tag = <<<EOT
|
| 461 |
-
|
| 462 |
-
|
| 463 |
-
|
| 464 |
-
|
| 465 |
-
|
| 466 |
-
|
| 467 |
-
|
| 468 |
-
</span>
|
| 469 |
EOT;
|
| 470 |
-
}
|
| 471 |
-
|
| 472 |
-
elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strpos($_SERVER['HTTP_USER_AGENT'], 'iPod') && $valid == 'on')
|
| 473 |
-
{
|
| 474 |
-
$video_url = htmlspecialchars("$root_url/v/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 475 |
-
|
| 476 |
-
$yte_tag = <<<EOT
|
| 477 |
-
<!-- Smart Youtube -->
|
| 478 |
-
<span class="youtube">
|
| 479 |
-
<object type="application/x-shockwave-flash" width="$width" height="$height" data="$video_url">
|
| 480 |
-
<param name="movie" value="$video_url" />
|
| 481 |
-
<param name="allowFullScreen" value="true" />
|
| 482 |
-
<param name="wmode" value="transparent" />
|
| 483 |
-
</object>
|
| 484 |
-
</span>
|
| 485 |
-
EOT;
|
| 486 |
-
}
|
| 487 |
-
elseif ($valid == 'off')
|
| 488 |
{
|
| 489 |
$video_url = htmlspecialchars("$root_url/v/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 490 |
$yte_tag = <<<EOT
|
| 491 |
-
|
| 492 |
-
|
| 493 |
-
|
| 494 |
-
|
| 495 |
-
|
| 496 |
-
|
| 497 |
-
|
| 498 |
-
|
| 499 |
-
allowfullscreen="true"
|
| 500 |
-
width="$width"
|
| 501 |
-
height="$height">
|
| 502 |
-
</embed>
|
| 503 |
-
<param name="wmode" value="transparent" />
|
| 504 |
-
</object>
|
| 505 |
-
</span>
|
| 506 |
EOT;
|
| 507 |
}
|
| 508 |
else
|
|
@@ -510,14 +506,13 @@ EOT;
|
|
| 510 |
$video_url = htmlspecialchars("$root_url/v/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 511 |
|
| 512 |
$yte_tag = <<<EOT
|
| 513 |
-
|
| 514 |
-
|
| 515 |
-
|
| 516 |
-
|
| 517 |
-
|
| 518 |
-
|
| 519 |
-
|
| 520 |
-
</span>
|
| 521 |
EOT;
|
| 522 |
}
|
| 523 |
|
|
@@ -531,12 +526,12 @@ EOT;
|
|
| 531 |
|
| 532 |
if ($this->options['img'] == 'on')
|
| 533 |
{
|
| 534 |
-
$yte_tag .= '<a href="http://www.youtube.com/watch?v=' . $file . $high. '"><img src="http://img.youtube.com/vi/' . $file . '/default.jpg" width="130" height="97" border=0></a>';
|
| 535 |
}
|
| 536 |
|
| 537 |
if ($this->options['link'] == 'on')
|
| 538 |
{
|
| 539 |
-
$yte_tag.='<a href="http://www.youtube.com/watch?v=' . $file . $high . '">www.youtube.com/watch?v=' . $file . '</a>';
|
| 540 |
}
|
| 541 |
// if ($this->options['link'] == 'off' && $this->options['img'] == 'off')
|
| 542 |
// $yte_tag='http://www.youtube.com/watch?v='.$file;
|
|
@@ -571,8 +566,8 @@ EOT;
|
|
| 571 |
'heighthq' => 295,
|
| 572 |
'widthside' => 150,
|
| 573 |
'heightside' => 125,
|
| 574 |
-
|
| 575 |
-
|
| 576 |
'border' => 0,
|
| 577 |
'link' => 'on',
|
| 578 |
'valid' => 'off',
|
|
@@ -584,6 +579,7 @@ EOT;
|
|
| 584 |
'privacy' => 0,
|
| 585 |
'wtext' => '',
|
| 586 |
'wtitle' => '',
|
|
|
|
| 587 |
);
|
| 588 |
|
| 589 |
// migrate the old-fashion options
|
| 113 |
$this->options['template'] = !isset($_POST['disp_template']) ?
|
| 114 |
'{video}' :
|
| 115 |
stripslashes(htmlspecialchars($_POST['disp_template']));;
|
| 116 |
+
$this->options['tag'] = !isset($_POST['tag']) ? '' : $_POST['tag'];
|
| 117 |
|
| 118 |
update_option($this->key, $this->options);
|
| 119 |
|
| 152 |
$disp_privacy = $this->options['privacy'] ? 'checked="checked"' : '';
|
| 153 |
|
| 154 |
$disp_template = wp_specialchars($this->options['template']);
|
| 155 |
+
$tag = $this->options['tag'];
|
| 156 |
+
|
| 157 |
|
| 158 |
if (!$disp_width)
|
| 159 |
{
|
| 333 |
<input type="checkbox" id="privacy" name="disp_privacy" $disp_privacy /><label for="privacy"> Enable privacy-enhanced mode [<a target="_blank" href="http://www.google.com/support/youtube/bin/answer.py?answer=141046">?</a>]</label>
|
| 334 |
</div>
|
| 335 |
|
| 336 |
+
<h3>Custom code compatibility</h3>
|
| 337 |
+
<p>Use this option if you have used another youtube plugin and switched over to Smart Youtube.<p>
|
| 338 |
+
<p>For example if you used [yt]qYWWBwf2wHE[/yt] type of code, you would type yt in the box below.</p>
|
| 339 |
+
<input id="tag" type="text" name="tag" value="$tag" />
|
| 340 |
+
<label for="tag">Custom code</label>
|
| 341 |
+
|
| 342 |
<h3>xHTML validation</h3>
|
| 343 |
+
<p class="instruct">Enabling the option below will change default YouTube code to be xHTML valid.</p>
|
| 344 |
<input id="valid" type="checkbox" name="valid" $valid />
|
| 345 |
<label for="valid">Enable xHTML Validation</label>
|
| 346 |
|
| 359 |
</div>
|
| 360 |
</div>
|
| 361 |
</div>
|
| 362 |
+
<h5 class="author">Another fine WordPress plugin by <a href="http://www.prelovac.com/vladimir/">Vladimir Prelovac</a></h5>
|
| 363 |
END;
|
| 364 |
}
|
| 365 |
|
| 401 |
$the_content = preg_replace("/\[youtube\=http:\/\/([a-zA-Z0-9\-\_]+\.|)youtube\.com\/watch(\?v\=|\/v\/|#!v=)([a-zA-Z0-9\-\_]{11})([^\s<]*)\]/", $this->tag($match[3], '', $match[4], $side), $the_content, 1);
|
| 402 |
}
|
| 403 |
}
|
| 404 |
+
$tag=$this->options['tag'];
|
| 405 |
+
|
| 406 |
+
if ($tag!='' && strpos($the_content, "[".$tag."]") !== false )
|
| 407 |
+
{
|
| 408 |
+
preg_match_all("/\[$tag\]([a-zA-Z0-9\-\_]{11})([^<\s]*)\[\/$tag\]/", $the_content, $matches, PREG_SET_ORDER);
|
| 409 |
+
foreach ($matches as $match)
|
| 410 |
+
{
|
| 411 |
+
//print_r($matches);
|
| 412 |
+
$the_content = preg_replace("/\[$tag\]([a-zA-Z0-9\-\_]{11})([^<\s]*)\[\/$tag\]/", $this->tag($match[1], '', '', $side), $the_content, 1);
|
| 413 |
+
}
|
| 414 |
+
}
|
| 415 |
|
| 416 |
return $the_content;
|
| 417 |
}
|
| 478 |
{
|
| 479 |
$video_url = htmlspecialchars("$root_url/p/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 480 |
$yte_tag = <<<EOT
|
| 481 |
+
<span class="youtube">
|
| 482 |
+
<object type="application/x-shockwave-flash" width="$width" height="$height" data="$video_url" >
|
| 483 |
+
<param name="movie" value="$video_url" />
|
| 484 |
+
<param name="allowFullScreen" value="true" />
|
| 485 |
+
<param name="allowscriptaccess" value="always" />
|
| 486 |
+
</object>
|
| 487 |
+
</span>
|
|
|
|
| 488 |
EOT;
|
| 489 |
+
}
|
| 490 |
+
elseif ($valid == 'off' || strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone')===TRUE || strpos($_SERVER['HTTP_USER_AGENT'], 'iPod')===TRUE)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 491 |
{
|
| 492 |
$video_url = htmlspecialchars("$root_url/v/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 493 |
$yte_tag = <<<EOT
|
| 494 |
+
<span class="youtube">
|
| 495 |
+
<object width="$width" height="$height">
|
| 496 |
+
<param name="movie" value="$video_url" />
|
| 497 |
+
<param name="allowFullScreen" value="true" />
|
| 498 |
+
<embed wmode="transparent" src="$video_url" type="application/x-shockwave-flash" allowfullscreen="true" width="$width" height="$height"></embed>
|
| 499 |
+
<param name="wmode" value="transparent" />
|
| 500 |
+
</object>
|
| 501 |
+
</span>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 502 |
EOT;
|
| 503 |
}
|
| 504 |
else
|
| 506 |
$video_url = htmlspecialchars("$root_url/v/$file&rel=$disp_rel&color1={$this->custom_colors[$disp_color][0]}&color2={$this->custom_colors[$disp_color][1]}&border=$disp_border&fs=1&hl=en&autoplay=$autoplay{$disp_info}$disp_ann&showsearch=$disp_search", ENT_QUOTES) . $high . $time;
|
| 507 |
|
| 508 |
$yte_tag = <<<EOT
|
| 509 |
+
<span class="youtube">
|
| 510 |
+
<object type="application/x-shockwave-flash" width="$width" height="$height" data="$video_url">
|
| 511 |
+
<param name="movie" value="$video_url" />
|
| 512 |
+
<param name="allowFullScreen" value="true" />
|
| 513 |
+
<param name="wmode" value="transparent" />
|
| 514 |
+
</object>
|
| 515 |
+
</span>
|
|
|
|
| 516 |
EOT;
|
| 517 |
}
|
| 518 |
|
| 526 |
|
| 527 |
if ($this->options['img'] == 'on')
|
| 528 |
{
|
| 529 |
+
$yte_tag .= '<p><a href="http://www.youtube.com/watch?v=' . $file . $high. '"><img src="http://img.youtube.com/vi/' . $file . '/default.jpg" width="130" height="97" border=0></a></p>';
|
| 530 |
}
|
| 531 |
|
| 532 |
if ($this->options['link'] == 'on')
|
| 533 |
{
|
| 534 |
+
$yte_tag.='<p><a href="http://www.youtube.com/watch?v=' . $file . $high . '">www.youtube.com/watch?v=' . $file . '</a></p>';
|
| 535 |
}
|
| 536 |
// if ($this->options['link'] == 'off' && $this->options['img'] == 'off')
|
| 537 |
// $yte_tag='http://www.youtube.com/watch?v='.$file;
|
| 566 |
'heighthq' => 295,
|
| 567 |
'widthside' => 150,
|
| 568 |
'heightside' => 125,
|
| 569 |
+
'rel' => 1,
|
| 570 |
+
'color' => 'blank',
|
| 571 |
'border' => 0,
|
| 572 |
'link' => 'on',
|
| 573 |
'valid' => 'off',
|
| 579 |
'privacy' => 0,
|
| 580 |
'wtext' => '',
|
| 581 |
'wtitle' => '',
|
| 582 |
+
'tag' => ''
|
| 583 |
);
|
| 584 |
|
| 585 |
// migrate the old-fashion options
|
smartyoutube.php
CHANGED
|
@@ -4,10 +4,12 @@ Plugin Name: Smart Youtube
|
|
| 4 |
Plugin URI: http://www.prelovac.com/vladimir/wordpress-plugins/smart-youtube
|
| 5 |
Description: Insert YouTube videos in posts, comments and RSS feeds with ease and full customization.
|
| 6 |
Author: Vladimir Prelovac
|
| 7 |
-
Version: 3.
|
| 8 |
Author URI: http://www.prelovac.com/vladimir/
|
| 9 |
|
| 10 |
Updates:
|
|
|
|
|
|
|
| 11 |
3.4.3 - Fixed privacy option
|
| 12 |
3.4.2 - Supports new #! style youtube urls
|
| 13 |
3.4.1 - Fixed widget
|
| 4 |
Plugin URI: http://www.prelovac.com/vladimir/wordpress-plugins/smart-youtube
|
| 5 |
Description: Insert YouTube videos in posts, comments and RSS feeds with ease and full customization.
|
| 6 |
Author: Vladimir Prelovac
|
| 7 |
+
Version: 3.6.
|
| 8 |
Author URI: http://www.prelovac.com/vladimir/
|
| 9 |
|
| 10 |
Updates:
|
| 11 |
+
3.6 - Added compatibility with other youtube plugins such as wp-youtube ([yt]...[/yt] type code)
|
| 12 |
+
3.5 - Fixed Iphone issues
|
| 13 |
3.4.3 - Fixed privacy option
|
| 14 |
3.4.2 - Supports new #! style youtube urls
|
| 15 |
3.4.1 - Fixed widget
|
