// mediaplayer: modification of Mediaplayer of Mike Alsup, Thank You Mike! Thank to jquery!
// dependencies: jquery.js, swfobject.js
 
 jQuery.fn.audio = function(options) {
    if (typeof SWFObject == 'undefined')  return this; // fast fail (swfobjects.js required)
    return this.each(function(index) {
        var $this = jQuery(this);
        var cls = this.className;
        
        var opts = jQuery.extend({
            width:        ((cls.match(/w:(\d+)/)||[])[1]) || 190, // default to youtube width
            height:       ((cls.match(/h:(\d+)/)||[])[1]) || 20, // default to youtube height
            version:      ((cls.match(/ver:(\d+)/)||[])[1]) || 8,
            background:   ((cls.match(/bg:#?([0-9a-fA-F]+)/)||[])[1]) || 'fff',
            cls:          cls,
            src:          "mediaplayer.swf",
            caption:      $this.attr('title'),
            params:       {},
            flashvars:    { file: $this.attr('href'), lightcolor: '0xca5010', backcolor: '0xffffff', frontcolor: '0x000000', displayheight: '0' },
            elementType:  'div'
        }, options || {});

        // convert anchor to span/div/whatever...
        var $el = jQuery('<' + opts.elementType + ' class="' + opts.cls + '"></' + opts.elementType + '>');
        $this.after($el);
        
        var so = new SWFObject(opts.src, 'movie_player-'+index, opts.width, opts.height, opts.version, '#'+opts.background);
        for (var p in opts.params)
            so.addParam(p, opts.params[p]);
        for (var fv in opts.flashvars)
            so.addVariable(fv, opts.flashvars[fv]);
        so.write($el[0]);

         if (opts.caption) $el.append('<p>' + opts.caption + '</p>');
    });
}; 

jQuery.fn.video = function(options) {
    if (typeof SWFObject == 'undefined')  return this; // fast fail (swfobjects.js required)
	
	
	
    return this.each(function(index) {
        var $this = jQuery(this);
        var cls = this.className;
		
		if ($this.attr('href').indexOf("landesausstellung") != -1) 		
		{
		
		// landesausstellung video
        
        var opts = jQuery.extend({
            width:        ((cls.match(/w:(\d+)/)||[])[1]) || 250, // default to castyourart width
            height:       ((cls.match(/h:(\d+)/)||[])[1]) || 140, // default to castyourart height
            version:      ((cls.match(/ver:(\d+)/)||[])[1]) || 8,
            background:   ((cls.match(/bg:#?([0-9a-fA-F]+)/)||[])[1]) || 'fff',
            cls:          cls,
            src:          "player.swf",
            caption:      $this.attr('title'),
            params:       {allowscriptaccess: 'always', allowfullscreen: 'true'},
            flashvars:    { file: $this.attr('href'), controlbar: 'over' },
            elementType:  'div'
        }, options || {});
		
		}
		
		else if ($this.attr('href').indexOf("youtube") != -1)

		{
			
			// youtube video link zb http://www.youtube.com/watch?v=kyplef2Hi6Y  ziel: http://www.youtube.com/v/kyplef2Hi6Y&rel=0
		
		var youtubeSrc = $this.attr('href').replace("http://www.youtube.com/watch?v=","http://www.youtube.com/v/");
		
		if (youtubeSrc.indexOf("&") != -1) 
		 {
			youtubeSrc =youtubeSrc.slice(0,youtubeSrc.indexOf("&"));
		 }
			 
        
        var opts = jQuery.extend({
            width:        ((cls.match(/w:(\d+)/)||[])[1]) || 300, // default to youtube width
            height:       ((cls.match(/h:(\d+)/)||[])[1]) || 168, // default to youtube height
            version:      ((cls.match(/ver:(\d+)/)||[])[1]) || 8,
            background:   ((cls.match(/bg:#?([0-9a-fA-F]+)/)||[])[1]) || 'fff',
            cls:          cls,
            src:          youtubeSrc,
            caption:      $this.attr('title'),
            params:       {},
            flashvars:    "",
            elementType:  'div'
        }, options || {});
		
		}
		

		else 		
		{
		
		// kein youtube und kein castyourart video
        
        var opts = jQuery.extend({
            width:        ((cls.match(/w:(\d+)/)||[])[1]) || 300, // default to plone-video width
            height:       ((cls.match(/h:(\d+)/)||[])[1]) || 168, // default to plone-video height
            version:      ((cls.match(/ver:(\d+)/)||[])[1]) || 8,
            background:   ((cls.match(/bg:#?([0-9a-fA-F]+)/)||[])[1]) || 'fff',
            cls:          cls,
            src:          "mediaplayer.swf",
            caption:      $this.attr('title'),
            params:       {},
            flashvars:    { file: $this.attr('href')+'/video.flv', lightcolor: '0xca5010', backcolor: '0xffffff', frontcolor: '0x000000', displayheight: '236' },
            elementType:  'div'
        }, options || {});
		
		}
		
		
		

        // convert anchor to span/div/whatever...
        var $el = jQuery('<' + opts.elementType + ' class="' + opts.cls + '"></' + opts.elementType + '>');
        $this.after($el);
        
        var so = new SWFObject(opts.src, 'movie_player-'+index, opts.width, opts.height, opts.version, '#'+opts.background);
        for (var p in opts.params)
            so.addParam(p, opts.params[p]);
        for (var fv in opts.flashvars)
            so.addVariable(fv, opts.flashvars[fv]);
        so.write($el[0]);

         if (opts.caption) $el.append('<p>' + opts.caption + '</p>');
    });
}; 

