raster pushed a commit to branch master.

http://git.enlightenment.org/website/www.git/commit/?id=249573146b00786cc5d7d9b08b6624cdaa5524b7

commit 249573146b00786cc5d7d9b08b6624cdaa5524b7
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Mon Jul 13 12:20:03 2015 +0900

    www - remove youtube, add vshare plugin
    
    yotube plugin broken - try vshare
---
 .../README                                         |  25 +++
 .../all.css                                        |  20 ++
 .../button.png                                     | Bin 0 -> 710 bytes
 .../lang/en/lang.php                               |   6 +
 .../lang/fr/lang.php                               |  10 +
 .../lang/ja/lang.php                               |  10 +
 .../lang/ko/lang.php                               |  10 +
 .../lang/nl/lang.php                               |  10 +
 .../pdf.css                                        |  16 ++
 .../plugin.info.txt                                |   8 +
 .../redir.php                                      |  22 +++
 .../script.js                                      | 116 ++++++++++++
 .../sites.conf                                     |  26 +++
 .../sites.js                                       |  31 +++
 .../syntax.php                                     | 209 +++++++++++++++++++++
 .../video.png                                      | Bin 0 -> 6682 bytes
 public_html/lib/plugins/youtube/img/youtube.png    | Bin 1443 -> 0 bytes
 public_html/lib/plugins/youtube/object.htm         |   4 -
 public_html/lib/plugins/youtube/style.css          |   7 -
 public_html/lib/plugins/youtube/syntax.php         |  83 --------
 20 files changed, 519 insertions(+), 94 deletions(-)

diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/README
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/README
new file mode 100644
index 0000000..8859d5b
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/README
@@ -0,0 +1,25 @@
+vshare Plugin for DokuWiki
+
+All documentation for this plugin can be found at
+http://www.dokuwiki.org/plugin:vshare
+
+If you install this plugin manually, make sure it is installed in
+lib/plugins/vshare/ - if the folder is called different it
+will not work!
+
+Please refer to http://www.dokuwiki.org/plugins for additional info
+on how to install plugins in DokuWiki.
+
+----
+Copyright (C) Andreas Gohr <a...@splitbrain.org>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; version 2 of the License
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+See the COPYING file in your DokuWiki folder for details
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/all.css
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/all.css
new file mode 100644
index 0000000..380ac82
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/all.css
@@ -0,0 +1,20 @@
+iframe.vshare__left,
+div.vshare__left {
+    float: left;
+    margin-right: 1em;
+}
+
+iframe.vshare__right,
+div.vshare__right {
+    float: right;
+    margin-left: 1em;
+}
+
+iframe.vshare__center,
+div.vshare__center {
+    text-align: center;
+    margin-left: auto;
+    margin-right: auto;
+    display: block;
+}
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/button.png
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/button.png
new file mode 100644
index 0000000..d050afa
Binary files /dev/null and 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/button.png
 differ
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/en/lang.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/en/lang.php
new file mode 100644
index 0000000..2b968c6
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/en/lang.php
@@ -0,0 +1,6 @@
+<?php
+
+$lang['js']['button'] = 'Insert video from video sharing sites';
+$lang['js']['prompt'] = 'Please paste the full URL to the video page here:';
+$lang['js']['notfound'] = "Sorry, this URL wasn't recognized.\nPlease refer to 
the documentation on how to insert the correct syntax manually.";
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/fr/lang.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/fr/lang.php
new file mode 100644
index 0000000..11176a8
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/fr/lang.php
@@ -0,0 +1,10 @@
+<?php
+/**
+ * French language file for vshare plugin
+ *
+ * @author Fabrice DEJAIGHER <fabr...@chtiland.com>
+ */
+
+$lang['js']['button'] = 'Insère une vidéo depuis des sites de partage vidéo';
+$lang['js']['prompt'] = 'Copiez/collez le lien complet de la page contenant la 
vidéo ici :';
+$lang['js']['notfound'] = "Désolé, cette URL n'a pas été reconnue. Consultez 
la documentation sur la syntaxe pour insérer une vidéo manuellement.";
\ No newline at end of file
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/ja/lang.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/ja/lang.php
new file mode 100644
index 0000000..9c93296
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/ja/lang.php
@@ -0,0 +1,10 @@
+<?php
+/**
+* japanese language file
+*
+* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
+*/
+
+$lang['js']['button'] = '動画共有サイトの動画を挿入';
+$lang['js']['prompt'] = 'ここに動画ページへの完全な URL を貼り付けて下さい:';
+$lang['js']['notfound'] = "申し訳ないですが、この URL 
が認識されません。\n手動で正しい構文を挿入する方法をマニュアルで確認して下さい。";
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/ko/lang.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/ko/lang.php
new file mode 100644
index 0000000..58bab3b
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/ko/lang.php
@@ -0,0 +1,10 @@
+<?php
+/**
+ * Korean language file for vshare plugin
+ *
+ * @author Myeongjin <aranet...@gmail.com>
+ */
+
+$lang['js']['button'] = '동영상 공유 사이트에서 동영상 넣기';
+$lang['js']['prompt'] = '여기에 동영상 페이지의 전체 URL을 붙여넣으세요:';
+$lang['js']['notfound'] = "죄송하지만 이 URL을 인식할 수 없습니다.\n수동으로 올바른 문법을 넣는 방법에 대해서는 
설명서를 참고하세요.";
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/nl/lang.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/nl/lang.php
new file mode 100644
index 0000000..d855df4
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/lang/nl/lang.php
@@ -0,0 +1,10 @@
+<?php
+
+/**
+ * Dutch language file for vshare plugin.
+ *
+ * @author Mark C. Prins <mpr...@users.sf.net>
+ */
+$lang['js']['button'] = 'Voeg een video van een video-delen website in';
+$lang['js']['prompt'] = 'Plak hier de volledige URL voor de video pagina:';
+$lang['js']['notfound'] = "Sorry, deze URL werd niet herkend.\nRaadpleeg de 
documentatie over de juiste syntax om een URL handmatig in te voegen.";
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/pdf.css
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/pdf.css
new file mode 100644
index 0000000..6238a90
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/pdf.css
@@ -0,0 +1,16 @@
+
+div.vshare__left,
+div.vshare__right,
+div.vshare__center {
+    border: 1px solid #ccc;
+    text-align: center;
+    padding: 2em;
+}
+
+a.vshare {
+    color: #aaa;
+    font-size: 2em;
+    font-weight: bold;
+    text-decoration: none;
+}
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/plugin.info.txt
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/plugin.info.txt
new file mode 100644
index 0000000..9c448b8
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/plugin.info.txt
@@ -0,0 +1,8 @@
+base    vshare
+author  Andreas Gohr
+email   a...@splitbrain.org
+date    2014-11-25
+name    Video Sharing Site Plugin
+desc    Easily embed videos from various Video Sharing sites. Example: 
{{youtube>XXXXXX}}
+url     https://www.dokuwiki.org/plugin:vshare
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/redir.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/redir.php
new file mode 100644
index 0000000..5c84e4b
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/redir.php
@@ -0,0 +1,22 @@
+<?php
+/**
+ * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
+ * @author     Andreas Gohr <g...@cosmocode.de>
+ *
+ * Simple redirector script to avoid security warnings when embedding HTTP in 
SSL secured sites
+ *
+ * To avoid open redirects, a secret hash has to be provided
+ */
+if(!defined('DOKU_INC')) define('DOKU_INC', dirname(__FILE__) . '/../../../');
+define('NOSESSION', true);
+require_once(DOKU_INC . 'inc/init.php');
+global $INPUT;
+
+$url  = $INPUT->str('url');
+$hash = $INPUT->str('hash');
+
+if(!$url) die('sorry. no url');
+if(!$hash) die('sorry. no hash');
+if($hash != md5(auth_cookiesalt() . 'vshare' . $url)) die('sorry. wrong hash');
+
+send_redirect($url);
\ No newline at end of file
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/script.js
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/script.js
new file mode 100644
index 0000000..3c83426
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/script.js
@@ -0,0 +1,116 @@
+
+/**
+ * Append a toolbar button
+ */
+if(window.toolbar != undefined){
+    toolbar[toolbar.length] = {"type":  "pluginvshare",
+                               "title": LANG['plugins']['vshare']['button'],
+                               "icon":  "../../plugins/vshare/button.png",
+                               "key":   ""};
+}
+
+/**
+ * Try to determine the video service, extract the ID and insert
+ * the correct syntax
+ */
+function tb_pluginvshare(btn, props, edid) {
+    PluginVShare.edid = edid;
+
+    PluginVShare.buildSyntax();
+}
+
+var PluginVShare = {
+    edid: null,
+
+    buildSyntax: function () {
+
+        var text = prompt(LANG['plugins']['vshare']['prompt']);
+        if (!text) return;
+
+        // This includes the site patterns:
+        /* DOKUWIKI:include sites.js */
+
+        for (var key in sites) {
+
+            if(sites.hasOwnProperty(key)) {
+                var RE = new RegExp(sites[key], 'i');
+                var match = text.match(RE);
+                if (match) {
+                    var urlparam = '';
+                    var videoid = match[1];
+
+                    switch (key) {
+                        case 'slideshare':
+                            //provided video url?
+                            if(match[2]) {
+
+                                jQuery.ajax({
+                                    url: '//www.slideshare.net/api/oembed/2',
+                                    dataType: 'jsonp',
+                                    data: {
+                                        url: match[2],
+                                        format: 'jsonp'
+                                    }
+                                }).done(function (response, status, error) {
+                                    var videoid = response.slideshow_id;
+                                    PluginVShare.insert(key, videoid, 
urlparam);
+                                }).fail(function (data, status, error) {
+                                    /* 
http://www.slideshare.net/developers/oembed
+                                     * If not found, an status 200 with 
response {error:true} is returned,
+                                     * but 
"Content-Type:application/javascript; charset=utf-8" is then
+                                     * wrongly changed to 
"Content-Type:application/json; charset=utf-8"
+                                     * so it throws a parseerror
+                                     */
+                                    
alert(LANG['plugins']['vshare']['notfound']);
+                                });
+                                return;
+                            }
+                            break;
+                        case 'bliptv':
+                            //provided video url?
+                            if(match[2]) {
+
+                                jQuery.ajax({
+                                    url: '//blip.tv/oembed/',
+                                    dataType: 'jsonp',
+                                    data: {
+                                        url: match[2],
+                                        format: 'json'
+                                    },
+                                    timeout: 2000
+                                }).done(function (response, status, error) {
+                                    var videoidmatch = response.html.match(RE);
+                                    PluginVShare.insert(key, videoidmatch[1], 
urlparam);
+                                }).fail(function (data, status, error) {
+                                    /*
+                                     * If url is not found(=wrong numerical 
number on end), blip.tv returns a 404
+                                     * because jsonp is not a xmlhttprequest, 
there is no 404 catched
+                                     * errors are detected by waiting at the 
timeout
+                                     */
+                                    
alert(LANG['plugins']['vshare']['notfound']);
+                                });
+                                return;
+                            }
+                            break;
+                        case 'twitchtv':
+                            if (match[2]) {
+                                urlparam = '&chapter_id=' + match[2];
+                            }
+                            break;
+                    }
+
+                    PluginVShare.insert(key, videoid, urlparam);
+                    return;
+                }
+            }
+        }
+
+        alert(LANG['plugins']['vshare']['notfound']);
+    },
+
+    insert: function(key, videoid, urlparam, edid) {
+        var code = '{{' + key + '>' + videoid + '?medium' + urlparam + '}}';
+        insertAtCarret(PluginVShare.edid, code);
+    }
+};
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/sites.conf
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/sites.conf
new file mode 100644
index 0000000..2e8af06
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/sites.conf
@@ -0,0 +1,26 @@
+# configure video site flash or iframe URLs here, @VIDEO@ is the ID placeholder
+
+vimeo           iframe  //player.vimeo.com/video/@VIDEO@
+ustream         iframe  http://www.ustream.tv/embed/recorded/@VIDEO@
+youtube         iframe  //www.youtube.com/embed/@VIDEO@
+viddler         iframe  
//www.viddler.com/embed/@VIDEO@/?f=1&autoplay=0&player=mini&hideablecontrolbar=1&smooth=0&disablebranding=0&loop=0&nologo=0&hd=0
+slideshare      iframe  //www.slideshare.net/slideshow/embed_code/@VIDEO@
+dailymotion     iframe  //www.dailymotion.com/embed/video/@VIDEO@
+bambuser        iframe  http://embed.bambuser.com/broadcast/@VIDEO@
+metacafe        iframe  http://www.metacafe.com/embed/@VIDEO@/
+bliptv          iframe  //blip.tv/play/@VIDEO@.x?p=1
+break           iframe  //www.break.com/embed/@VIDEO@?embed=1
+msoffice        iframe  http://hub.video.msn.com/embed/@VIDEO@/
+
+5min            flash   http://www.5min.com/Embeded/@VIDEO@/
+clipfish        flash   
//www.clipfish.de/cfng/flash/clipfish_player_3.swf?as=0&vid=@VIDEO@&r=1&angebot=extern&
+gtrailers       flash   http://www.gametrailers.com/remote_wrap.php?mid=@VIDEO@
+myspacetv       flash   
http://lads.myspace.com/videos/vplayer.swf?m=@VIDEO@&v=2&type=video
+rcmovie         flash   http://www.rcmovie.de/embed/@VIDEO@
+scivee          flash   //www.scivee.tv/flash/embedPlayer.swf?id=@VIDEO@&type=3
+twitchtv        flash   
http://www.twitch.tv/widgets/live_embed_player.swf?channel=@VIDEO@&auto_play=false&start_volume=25
+veoh            flash   
//www.veoh.com/videodetails2.swf?player=videodetailsembedded&type=v&permalinkId=@VIDEO@&id=anonymous
+
+
+
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/sites.js
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/sites.js
new file mode 100644
index 0000000..83f64ed
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/sites.js
@@ -0,0 +1,31 @@
+/**
+ * video URL recognition patterns
+ *
+ * The first match group is used as video ID
+ *
+ * You need to touch conf/local.php to refresh the cache after changing
+ * this file
+ */
+
+var sites = {
+    'youtube':     'youtube\\.com/.*[&?]v=([a-z0-9_\\-]+)',
+    'vimeo':       'vimeo\\.com\\/(\\d+)',
+    'ustream':     'ustream\\.tv\\/recorded\\/(\\d+)\\/',
+    '5min':        '5min\\.com\\/Video/.*-([0-9]+)([&?]|$)',
+    'clipfish':    'clipfishi\\.de\\/.*\\/video\\/([0-9])+\\/',
+    'dailymotion': 'dailymotion\\.com\\/video\\/([a-z0-9]+)_',
+    'gtrailers':   'gametrailers\\.com\\/.*\\/(\\d+)',
+    'metacafe':    'metacafe\\.com\\/watch\\/(\\d+)\\/',
+    'myspacetv':   'vids\\.myspace\\.com\\/.*videoid=(\\d+)',
+    'rcmovie':     'rcmovie\\.de\\/video\\/([a-f0-9]+)\\/',
+    'scivee':      'scivee\\.tv\\/node\\/(\\d+)',
+    'twitchtv':    'twitch\\.tv\\/([a-z0-9_\\-]+)(?:\\/c\\/(\\d+))?',
+    'veoh':        'veoh\\.com\\/.*watch[^v]*(v[a-z0-9]+)',
+    'bambuser':    'bambuser\\.com\\/v\\/(\\d+)',
+    'bliptv':      
'(?:blip\\.tv\\/play\\/([a-zA-Z0-9]+\\.(?:html|x))\\?p=1|(http?\\:\\/\\/blip\\.tv\\/(?!play)(?:[a-zA-Z0-9_\\-]+)\\/(?:[a-zA-Z0-9_\\-]+)))',
+    'break':       
'break\\.com\\/video\\/(?:(?:[a-z]+)\\/)?(?:[a-z\\-]+)-([0-9]+)',
+    'viddler':     'viddler\\.com\\/(?:embed|v)\\/([a-z0-9]{8})',
+    'msoffice':         '(?:office\\.com.*[&?]videoid=([a-z0-9\\-]+))',
+    'slideshare':  
'(?:(?:slideshare\\.net\\/slideshow\\/embed_code\\/|id=)([0-9]+)|(https?\\:\\/\\/www\\.slideshare\\.net\\/(?:[a-zA-Z0-9_\\-]+)\\/(?:[a-zA-Z0-9_\\-]+)))'
+};
+
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/syntax.php
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/syntax.php
new file mode 100644
index 0000000..3d50564
--- /dev/null
+++ 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/syntax.php
@@ -0,0 +1,209 @@
+<?php
+/**
+ * Easily embed videos from various Video Sharing sites
+ *
+ * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
+ * @author     Andreas Gohr <a...@splitbrain.org>
+ */
+
+if(!defined('DOKU_INC')) die();
+require_once(DOKU_PLUGIN.'syntax.php');
+
+class syntax_plugin_vshare extends DokuWiki_Syntax_Plugin {
+    var $sites;
+
+    /**
+     * Constructor.
+     * Intitalizes the supported video sites
+     */
+    function syntax_plugin_vshare(){
+        $this->sites =  confToHash(dirname(__FILE__).'/sites.conf');
+    }
+
+    function getType(){
+        return 'substition';
+    }
+
+    function getPType(){
+        return 'block';
+    }
+
+    function getSort(){
+        return 159;
+    }
+
+
+    /**
+     * Connect to the parser
+     */
+    function connectTo($mode) {
+        $pattern = join('|',array_keys($this->sites));
+        
$this->Lexer->addSpecialPattern('\{\{\s?(?:'.$pattern.')>[^}]*\}\}',$mode,'plugin_vshare');
+    }
+
+    /**
+     * Parse the parameters
+     */
+    function handle($match, $state, $pos, &$handler){
+        $command = substr($match,2,-2);
+
+        // title
+        list($command,$title) = explode('|',$command);
+        $title = trim($title);
+
+        // alignment
+        $align = 0;
+        if(substr($command,0,1) == ' ') $align += 1;
+        if(substr($command,-1) == ' ')  $align += 2;
+        $command = trim($command);
+
+        // get site and video
+        list($site,$vid) = explode('>',$command);
+        if(!$this->sites[$site]) return null; // unknown site
+        if(!$vid) return null; // no video!?
+
+        // what size?
+        list($vid,$param) = explode('?',$vid,2);
+        if(preg_match('/(\d+)x(\d+)/i',$param,$m)){     // custom
+            $width  = $m[1];
+            $height = $m[2];
+        }elseif(strpos($param,'small') !== false){      // small
+            $width  = 255;
+            $height = 210;
+        }elseif(strpos($param,'large') !== false){      // large
+            $width  = 520;
+            $height = 406;
+        }else{                                          // medium
+            $width  = 425;
+            $height = 350;
+        }
+
+        $paramm = array();
+        parse_str($param, $paramm);
+        $urlparam = array();
+        foreach($paramm as $key => $value) {
+            switch($key) {
+                case 'rel':
+                case 'autoplay':
+                case 'ap':
+                    if($paramm[$key] === '1' || $paramm[$key] === '0') {
+                        $urlparam[] = $key . '=' . $paramm[$key];
+                    }
+                    break;
+                case 'start':
+                case 'end':
+                case 'chapter_id': //for twitch.tv
+                case 'initial_time':
+                case 'offsetTime':
+                case 'startSlide':
+                    $number = (int) $paramm[$key];
+                    if($number > 0) {
+                        $urlparam[] = $key . '=' . $number;
+                    }
+                    break;
+                case 'auto_start':
+                    if($paramm[$key] === 'true' || $paramm[$key] === 'false') {
+                        $urlparam[] = $key . '=' . $paramm[$key];
+                    }
+                    break;
+            }
+        }
+
+        list($type, $url) = explode(' ', $this->sites[$site], 2);
+        $url  = trim($url);
+        $type = trim($type);
+        $url  = str_replace('@VIDEO@',rawurlencode($vid),$url);
+        $url  = str_replace('@WIDTH@',$width,$url);
+        $url  = str_replace('@HEIGHT@',$height,$url);
+        if(count($urlparam)) {
+            if(strpos($url, '?') !== false) {
+                $sepchar = '&';
+            } else {
+                $sepchar = '?';
+            }
+            $url .= $sepchar . implode('&', $urlparam);
+        }
+
+        list(,$vars) = explode('?',$url,2);
+        $varr = array();
+        parse_str($vars,$varr);
+
+        return array(
+            'site'   => $site,
+            'video'  => $vid,
+            'url'    => $url,
+            'vars'   => $varr,
+            'align'  => $align,
+            'width'  => $width,
+            'height' => $height,
+            'title'  => $title,
+            'type'   => $type
+        );
+    }
+
+    /**
+     * Render the flash player
+     */
+    function render($mode, &$R, $data){
+        if($mode != 'xhtml') return false;
+        if(is_null($data)) return false;
+
+        if($data['align'] == 0) $align = 'none';
+        if($data['align'] == 1) $align = 'right';
+        if($data['align'] == 2) $align = 'left';
+        if($data['align'] == 3) $align = 'center';
+        if($data['title']) $title = ' title="'.hsc($data['title']).'"';
+
+        if(is_a($R,'renderer_plugin_dw2pdf')){
+            // Output for PDF renderer
+            $R->doc .= '<div class="vshare__'.$align.'"
+                             width="'.$data['width'].'"
+                             height="'.$data['height'].'">';
+
+            $R->doc .= '<a href="'.$data['url'].'" class="vshare">';
+            $R->doc .= '<img src="'.DOKU_BASE.'lib/plugins/vshare/video.png" 
/>';
+            $R->doc .= '</a>';
+
+            $R->doc .= '<br />';
+
+            $R->doc .= '<a href="'.$data['url'].'" class="vshare">';
+            $R->doc .= ($data['title'] ? hsc($data['title']) : 'Video');
+            $R->doc .= '</a>';
+
+            $R->doc .= '</div>';
+        }else{
+            // use redirector for HTTP embeds on SSL sites
+            if(is_ssl() && substr($data['url'], 0, 7) == 'http://') {
+                $data['url'] = DOKU_BASE.'lib/plugins/vshare/redir.php'.
+                               '?url='.rawurlencode($data['url']).
+                               
'&hash='.md5(auth_cookiesalt().'vshare'.$data['url']);
+            }
+
+            // Normal output
+            if($data['type'] == 'flash') {
+                // embed flash
+                $R->doc .= '<div class="vshare__'.$align.'"'.$title.'>';
+                $R->doc .= html_flashobject(
+                                    $data['url'],
+                                    $data['width'],
+                                    $data['height'],
+                                    $data['vars'],
+                                    $data['vars']);
+                $R->doc .= '</div>';
+            }else{
+                // embed iframe
+                $R->doc .= '<iframe ';
+                $R->doc .= buildAttributes(array(
+                            'src' => $data['url'],
+                            'height' => $data['height'],
+                            'width'  => $data['width'],
+                            'class'  => 'vshare__'.$align,
+                            'allowfullscreen' => '',
+                            'frameborder' => 0,
+                            'scrolling' => 'no'
+                           ));
+                $R->doc .= '>'.hsc($data['title']).'</iframe>';
+            }
+        }
+    }
+}
diff --git 
a/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/video.png
 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/video.png
new file mode 100644
index 0000000..8bb325e
Binary files /dev/null and 
b/public_html/lib/plugins/vshare/splitbrain-dokuwiki-plugin-vshare-2522ed8/video.png
 differ
diff --git a/public_html/lib/plugins/youtube/img/youtube.png 
b/public_html/lib/plugins/youtube/img/youtube.png
deleted file mode 100644
index 24aad8a..0000000
Binary files a/public_html/lib/plugins/youtube/img/youtube.png and /dev/null 
differ
diff --git a/public_html/lib/plugins/youtube/object.htm 
b/public_html/lib/plugins/youtube/object.htm
deleted file mode 100644
index 67e6592..0000000
--- a/public_html/lib/plugins/youtube/object.htm
+++ /dev/null
@@ -1,4 +0,0 @@
-<object width="%s" height="%s"  type="application/x-shockwave-flash" 
data="http://www.youtube.com/v/%s"; align="%s" title="%s">
-  <param name="movie" value="http://www.youtube.com/v/%s";></param>
-  <param name="wmode" value="transparent"></param>
-</object>
diff --git a/public_html/lib/plugins/youtube/style.css 
b/public_html/lib/plugins/youtube/style.css
deleted file mode 100644
index 35cfd5b..0000000
--- a/public_html/lib/plugins/youtube/style.css
+++ /dev/null
@@ -1,7 +0,0 @@
-div.dokuwiki div.youtube_icon
-{
-  background-image:url('img/youtube.png');
-  background-repeat:no-repeat;
-  min-height:16px;
-  padding-left:45px;
-}
diff --git a/public_html/lib/plugins/youtube/syntax.php 
b/public_html/lib/plugins/youtube/syntax.php
deleted file mode 100644
index 39ced15..0000000
--- a/public_html/lib/plugins/youtube/syntax.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-/**
- * Plugin YouTube: Create YouTube link and object from ID.
- *
- * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
- * @author     Ikuo Obataya <I.Obataya[at]gmail.com
- * @version    2008-04-05
- * @update     2008-04-05
- */
-
-if(!defined('DOKU_INC')) die();
-if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
-require_once(DOKU_PLUGIN.'syntax.php');
-
-class syntax_plugin_youtube extends DokuWiki_Syntax_Plugin {
-  var $html;
-  var $pattern;
-  function syntax_plugin_youtube(){
-    $this->html    = @file_get_contents(DOKU_PLUGIN.'youtube/object.htm');
-    $this->pattern = '/\{\{(\s?)youtube>(small|large|link):([^} 
|]+)\|?(.*?)(\s?)\}\}/';
-  }
-  function getInfo(){
-    return array(
-    'author' => 'Ikuo Obataya',
-    'email'  => 'i.obat...@gmail.com',
-    'date'   => '2008-04-05',
-    'name'   => 'YouTube Plugin',
-    'desc'   => 'YouTube link and object{{youtube>[small|large|link]:ID}}',
-    'url'    => 'http://wiki.symplus.co.jp/computer/en/youtube_plugin',
-    );
-  }
-  function getType(){ return 'substition'; }
-  function getSort(){ return 159; }
-  function connectTo($mode) { 
$this->Lexer->addSpecialPattern('\{\{\s?youtube>[^}]*\s?\}\}',$mode,'plugin_youtube');
 }
-  
-  function handle($match, $state, $pos, &$handler){
-    $pm = preg_match_all($this->pattern,$match,$result);
-    $left  = ($result[1][0]==" ");
-    $right = ($result[5][0]==" ");
-    $cmd   = $result[2][0];
-    $id    = $result[3][0];
-    $title = $result[4][0];
-    if ($left==true && $right==true){
-      $align = 'center';
-    }else if($left==true){
-      $align = 'right';
-    }else if($right==true){
-      $align = 'left';
-    }
-    return array($state, array($cmd,$id,$align,$title));
-  } 
-
-  function render($mode, &$renderer, $data){
-    if($mode != 'xhtml'){return false;}
-    list($state, $match) = $data;
-    list($cmd,$id,$align,$title) = $match;
-    $id    = urlencode($id);
-    $title = urlencode($title);
-    $title = str_replace("+"," ",$title);
-    switch($cmd){
-      case 'link':
-        $lnkFormat='<a href="http://www.youtube.com/watch?v=%s"; title="%s">';
-        $href_start=sprintf($lnkFormat,$id,empty($title)?$id:$title.' 
('.$id.')');
-        $renderer->doc.=$href_start.'<div 
class="youtube_icon">'.$title.'</div></a>';
-        return true;
-
-      case 'large':
-        if ($align=='center'){$renderer->doc.="<center>";}
-        $renderer->doc.=sprintf($this->html,425,350,$id,$align,$title,$id);
-        if ($align=='center'){$renderer->doc.="</center>";}
-        $renderer->doc.=NL;
-        return true;
-
-      case 'small':
-        if ($align=='center'){$renderer->doc.="<center>";}
-        $renderer->doc.=sprintf($this->html,255,210,$id,$align,$title,$id);
-        if ($align=='center'){$renderer->doc.="</center>";}
-        return true;
-    }
-    $renderer->doc.=NL;
-  }
-}
-?>
\ No newline at end of file

-- 


Reply via email to