DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:blip

Blip.tv plugin

Compatible with DokuWiki

2007-06-26b

plugin A simple plugin for inserting Blip.tv videos in wiki pages

Last updated on
2008-01-27
Provides
Syntax

This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.

The following security issue was reported for this extension: XSS vulnerability allows arbitrary JavaScript insertion. Author informed on 2008-02-24.

It is not recommended to use this extension until this issue was fixed. Extension authors should read the plugin security guidelines

Tagged with !experimental, blip.tv, embed, flash, movie, video

A basic plugin for inserting Blip.tv videos in wiki pages. You can find a (German) documentation and the source code here.

Acknowledgements

The PlugIn borrowed heavely code from the youtube plugin.

Example

{{blip>standard:618981}}

Dog-Agility at it's Best: Monika Lux mit Maya

Syntax

{{blip>standard:VIDEO_ID}}
{{blip>medium:VIDEO_ID}}
{{blip>wide:VIDEO_ID}}

Blip.tv skaliert die Filmgrößen nicht wirklich selber, vor allem nicht, wenn man eigene Flash-Dateien hochlädt. Daher sind die Bezeichnungen standard, medium und wide sehr von meinen persönlichen Vorlieben abhängig, im Zweifelsfall müßt Ihr für Eure Zwecke die Größen im Quelltext anpassen. Es bedeuten:

standard: Der Film wird in einer Größe von 400 x 300 Pixeln gezeigt (das ist die Größe, auf der ich normalerweise Flash-Filme konvertiere).

medium: Ist wie immer für Flash-Filme in der Größe 320 x 240 Pixeln gedacht. Manche Digiknipsen liefern kein größeres Bild und es wäre daher sinnlos, diese Videos aufzublasen.

wide: Das ist eine Einstellung für 16:9-Filme mit einer Weite von ( 25×16= ) 400 und einer Höhe von ( 25×9= ) 225 Pixeln.

Die 30 Pixel für die Steuerleiste werden vom PlugIn automatisch hinzugerechnet.

VIDEO_ID

Die VIDEO_ID ist bei Blip.tv leider etwas versteckt. Am einfachsten findet Ihr sie, wenn Ihr bei »Share« → »Copy & Paste« → »WordPress.com« auswählt. Es ist die dort »posts_id« genannte Ziffer. Achtet darauf, daß Ihr tatsächlich die FLV-Datei gerade abspielt und nicht irgend etwas anderes.

Quellcode

lib/plugins/blip/syntax.php
<?php
/**
* Plugin Sevenload: Create Blip.tv video link and object from ID.
*
* @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
* @author     Joerg Kantel <joerg@kantel.de>
*			  Based on the YouTube PlugIn written by Ikuo Obataya
*			  <http://wiki.symplus.co.jp/computer/en/youtube_plugin>
*/
 
// must be run within Dokuwiki
if(!defined('DOKU_INC')) die();
 
if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
require_once(DOKU_INC.'lib/plugins/syntax.php');
 
/**
* All DokuWiki plugins to extend the parser/rendering mechanism
* need to inherit from this class
*/
class syntax_plugin_blip extends DokuWiki_Syntax_Plugin {
	/**
	* return some info
	*/
	function getInfo(){
		return array(
		'author' => 'J. Kantel',
		'email'  => 'joerg@kantel.de',
		'date'   => '2008-01-27',
		'name'   => 'Blip.tv Plugin',
		'desc'   => 'Blip.tv video object',
		'url'    => 'http://www.cognitiones.de/',
		);
	}
	function getType(){ return 'substition'; }
	function getSort(){ return 159; }
	function connectTo($mode) { $this->Lexer->addSpecialPattern('\{\{blip>[^}]*\}\}',$mode,'plugin_blip'); }
 
	/**
	* Handle the match
	*/
	function handle($match, $state, $pos, &$handler){
		$match = substr($match,7,-2); // Strip markup
		return array($state,explode(':',$match));
	}	
	/**
	* Create output
	*/
	function render($mode, &$renderer, $data) {
		if($mode == 'xhtml'){
			list($state, $match) = $data;
			list($disptype,$id) = $match;
			if ($disptype=='standard'){
				$obj = '<object type="application/x-shockwave-flash" data="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&file=http%3A//blip.tv/rss/flash/'.$id.'&feedurl=http%3A//kantel.blip.tv/rss/&autostart=false&brandname=Der%20Schockwellenreiter&brandlink=http%3A//kantel.blip.tv/" width="400" height="330" allowfullscreen="true" id="showplayer"><param name="movie" value="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&file=http%3A//blip.tv/rss/flash/'.$id.'&feedurl=http%3A//kantel.blip.tv/rss/&autostart=false&brandname=Der%20Schockwellenreiter&brandlink=http%3A//kantel.blip.tv/" /><param name="quality" value="best" /></object>';
				$renderer->doc .= $obj;
				}
			elseif($disptype=='medium'){
				$obj = '<object type="application/x-shockwave-flash" data="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&file=http%3A//blip.tv/rss/flash/'.$id.'&feedurl=http%3A//kantel.blip.tv/rss/&autostart=false&brandname=Der%20Schockwellenreiter&brandlink=http%3A//kantel.blip.tv/" width="320" height="270" allowfullscreen="true" id="showplayer"><param name="movie" value="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&file=http%3A//blip.tv/rss/flash/'.$id.'&feedurl=http%3A//kantel.blip.tv/rss/&autostart=false&brandname=Der%20Schockwellenreiter&brandlink=http%3A//kantel.blip.tv/" /><param name="quality" value="best" /></object>';
				$renderer->doc .= $obj;
				}
			elseif($disptype=='wide'){
				$obj = '<object type="application/x-shockwave-flash" data="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&file=http%3A//blip.tv/rss/flash/'.$id.'&feedurl=http%3A//kantel.blip.tv/rss/&autostart=false&brandname=Der%20Schockwellenreiter&brandlink=http%3A//kantel.blip.tv/" width="400" height="255" allowfullscreen="true" id="showplayer"><param name="movie" value="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&file=http%3A//blip.tv/rss/flash/'.$id.'&feedurl=http%3A//kantel.blip.tv/rss/&autostart=false&brandname=Der%20Schockwellenreiter&brandlink=http%3A//kantel.blip.tv/" /><param name="quality" value="best" /></object>';
				$renderer->doc .= $obj;
				}
			else{
				$renderer->doc .="??";
			} 
			return true;
		}
		return false;
	}
}
?>
plugin/blip.txt · Last modified: 2013-11-07 21:44 by Klap-in