// comment related functions

var form_name = 'commentform';
var text_name = 'txtComments';

// Define the bbCode tags
var bbcode = new Array();
var bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[s]','[/s]','[quote]','[/quote]','[url]','[/url]','[email]', '[/email]','[color=]','[/color]');
var imageTag = false;

// Helpline messages
var help_line = 
{
	b: 'Text fett: [b]Text[/b]',
	i: 'Text kursiv: [i]Text[/i]',
	u: 'Text unterstrichen: [u]Text[/u]',
	s: 'Text durchgestrichen: [s]Text[/s]',
	q: 'Zitat: [quote]Text[/quote]',
	w: 'Link: [url]http://url[/url] oder [url=http://url]URL Text[/url]',
	e: 'Email: [email]Email-Adresse[/email]',
	c: 'Schriftfarbe: [color=red]Text[/color]  Tipp: Es geht auch color=#FF0000'
}

/**
* Window popup
*/
function popup(url, width, height, name)
{
	if (!name)
	{
		name = '_popup';
	}

	window.open(url.replace(/&amp;/g, '&'), name, 'height=' + height + ',resizable=yes,scrollbars=yes, width=' + width);
	return false;
}


// social bookmark definitions

var addtoLayout='';			// addtoLayout: 0=Horizonal 1 row, 1=Horizonal 2 rows, 2=Vertical with icons, 3=Vertical no icons
var addtoMethod=1;			// addtoMethod: 0=direct link, 1=popup 
var AddURL = document.location.href;	// could be set dynamically to your blog post's permalink
var AddTitle = escape(document.title);	// same here, this could be set dymaically instead of the page's current title


// xajax related functions

function create_loader(id, img_file) 
{
	document.getElementById(id).innerHTML = '<div style="text-align: center;"><img src="/layout/images/clipshare/' + img_file + '" alt="loading" /></div>';
}

function set_class(id, sclass) 
{
	document.getElementById(id).className = sclass;
}

function set_bgimage(id, img_file) 
{
	document.getElementById(id).style.backgroundImage = 'url(/layout/images/clipshare/' + img_file + ')';
}

function delcomm(vid, uid, comid) 
{
	if (confirm(unescape('Bist du sicher%2C dass du den Kommentar l%F6schen willst%3F')) == false) return false; 
	document.getElementById('delbutton_' + comid).disabled = true; 
	document.getElementById('updbutton_' + comid).disabled = true; 
	create_loader('commloader_' + comid, 'loader.gif'); 
	xajax_delcomm(vid, uid, comid);
}

function set_addcom_loader() 
{
	document.getElementById('addcom_loader_img').style.display = 'inline';
	document.getElementById('addcom_loader').style.display = 'block';
}

function start_updcomm(id)
{
	divarea = document.getElementById('message_' + id);
	if (divarea.innerHTML)
	{
		theText = divarea.innerHTML.replace(/<br>/ig, '\n');
		theText = theText.replace(/<br\/>/ig, '\n');
		theText = theText.replace(/&lt\;/ig, '<');
		theText = theText.replace(/&gt\;/ig, '>');
		theText = theText.replace(/&amp\;/ig, '&');
		theText = theText.replace(/&nbsp\;/ig, ' ');

		textarea = document.getElementById('updtextarea_' + id);
		textarea.value = theText;

		dispdiv = document.getElementById('dispdiv_' + id);
		upddiv = document.getElementById('upddiv_' + id);

		dispdiv.style.display = 'none';
		upddiv.style.display = 'block';
	}
}

function cancel_updcomm(id)
{
	textarea = document.getElementById('updtextarea_' + id);
	textarea.value = '';
	dispdiv = document.getElementById('dispdiv_' + id);
	upddiv = document.getElementById('upddiv_' + id);
	dispdiv.style.display = 'block';
	upddiv.style.display = 'none';
}

function updcomm(vid, uid, comid, txt)
{
	document.getElementById('delbutton_' + comid).disabled = true; 
	document.getElementById('updbutton_' + comid).disabled = true; 
	create_loader('commloader_' + comid, 'loader.gif'); 
	xajax_updcomm(vid, uid, comid, txt);
}

function thumbRating(elem)
{
	var aId = $(elem).identify().split('_');
	var sComId = aId[2];

	if ($(elem).hasClassName('rated'))
	{
		$('commloader_' + sComId).innerHTML = '<div id="comment_error_' + sComId + '" class="comment_error">Schon bewertet!</div>';
		Effect.Fade('comment_error_' + sComId, { duration: 2.0 });
		return false;
	}
	else 
	{
		if (aId[1] == 'up')
		{
			sRating = '1';
		}
		else 
		{
			sRating = '-1';
		}
		
		create_loader('commloader_' + sComId, 'loader.gif'); 
		xajax_thumb_rating(sComId, sRating);
		return false;
	}
}

function thumbRatingCallback(oResponse)
{
	// oResponse returns new rating and COMID
	// Set rating and class name of rating span
	var sRating = oResponse.rating;
	if (oResponse.rating == 0)
	{
		var sClass = 'eqz';
	}
	else if (oResponse.rating < 0)
	{
		var sClass = 'ltz';
	}
	else 
	{
		var sClass = 'gtz';
		sRating = '+' + sRating;
	}
	
	$('thumb_rating_' + oResponse.COMID).className  = sClass;
	$('thumb_rating_' + oResponse.COMID).innerHTML = sRating;
	
	// Add class name 'rated'
	$('thumb_up_' + oResponse.COMID).addClassName('rated');
	$('thumb_down_' + oResponse.COMID).addClassName('rated');
	
	$('thumb_up_' + oResponse.COMID).title = 'Guter Kommentar \u2022 Schon bewertet';
	$('thumb_down_' + oResponse.COMID).title = 'Schwacher Kommentar \u2022 Schon bewertet';
	
	$('commloader_' + oResponse.COMID).innerHTML = '';
}


// Resize functions
function maxSize()
{
	if (usePlayerIframe)
	{
		var ifr = $('playerobject');

		ifr.style.width = playerMaxWidth + 'px';
		ifr.style.height = playerMaxHeight + 'px';

		var swf = ifr.contentWindow.document.getElementById('nuevoplayer');
	}
	else
	{
		var swf = document.getElementById('nuevoplayer');
	}

	swf.style.width = playerMaxWidth + 'px';
	swf.style.height = playerMaxHeight + 'px';
	
	max_size_visible = false;
	$('max_size').style.display = 'none';

	min_size_visible = true;
	$('min_size').style.display = 'inline';

}

function minSize()
{
	if (usePlayerIframe)
	{
		var ifr = $('playerobject');

		ifr.style.width = playerMinWidth + 'px';
		ifr.style.height = playerMinHeight + 'px';

		var swf = ifr.contentWindow.document.getElementById('nuevoplayer');
	}
	else 
	{
		var swf = document.getElementById('nuevoplayer');
	}

	swf.style.width = playerMinWidth + 'px';
	swf.style.height = playerMinHeight + 'px';
	
	min_size_visible = false;
	$('min_size').style.display = 'none';

	max_size_visible = true;
	$('max_size').style.display = 'inline';

}

/*function flashResize(sw, sh, minW, minH)
{
	var swf = document.getElementById('nuevoplayer');

	if (sw > playerMaxWidth)
	{
		var swNew = playerMaxWidth;
	}
	else if (sw < playerMinWidth)
	{
		var swNew = playerMinWidth;
	}
	else
	{
		var swNew = sw;
	}

	if (sh > playerMaxHeight)
	{
		var shNew = playerMaxHeight;
	}
	else if (sh < playerMinHeight)
	{
		var shNew = playerMinHeight;
	}
	else
	{
		var shNew = sh;
	}

	swf.style.width = swNew + 'px';
	swf.style.height = shNew + 'px'

	setMinMaxDisplay(swNew, shNew);
}*/

function setMinMaxDisplay(sw, sh)
{
	// Check if min button should be visible or invisible
	if (sw != playerMinWidth || sh != playerMinHeight)
	{
		// Make min button visible if it isn't
		if (min_size_visible == false)
		{
			$('min_size').style.display = 'inline';
			min_size_visible = true;
		}
	}
	else
	{
		// Make min button invisible if it isn't
		if (min_size_visible == true)
		{
			$('min_size').style.display = 'none';
			min_size_visible = false;
		}
	}

	// Check if max button should be visible or invisible
	if (sw != playerMaxWidth || sh != playerMaxHeight)
	{
		// Make max button visible if it isn't
		if (parent.max_size_visible == false)
		{
			$('max_size').style.display = 'inline';
			max_size_visible = true;
		}
	}
	else
	{
		// Make min button invisible if it isn't
		if (max_size_visible == true)
		{
			$('max_size').style.display = 'none';
			max_size_visible = false;
		}
	}

}

function changeEmbedSkin(event)
{
	var elemSkin = Event.element(event);
	
	if (elemSkin.tagName != 'SPAN')
	{
        	elemSkin = elemSkin.up('span');
        }
	
	var aSkin = $('changeskin').select('span');
	aSkin.each(function(el, index)
	{
		if (el == elemSkin)
		{
			if (!el.hasClassName('aktiv'))
			{
				el.addClassName('aktiv');
			}
		}
		else 
		{
			if (el.hasClassName('aktiv'))
			{
				el.removeClassName('aktiv');
			}
		}
	});
	
	// Get embed width and height
	var sizeId = '';
	var aRectangle = $('changesize').select('span.rectangle');
	aRectangle.each(function(el, index)
	{
		if (el.hasClassName('aktiv'))
		{
			sizeId = el.identify().substring(1);
		}
	});
	
	var sDesign = elemSkin.identify();
	var aId = sizeId.split('x');
	var embedWidth = aId[0];
	var embedHeight = String(parseInt(aId[1]) + parseInt(js_vars.embed_player[sDesign]['player_bar_y']));
	
	// Set embed code
	setEmbedCode(sDesign, embedWidth, embedHeight);
	
	// Set size headline
	var aRectangle = Array();
	var aRectangle = $('changesize').select('span.rectangle_text');
	aRectangle.each(function(el, index)
	{
		sizeId = el.identify().substring(1);
		aId = sizeId.split('x');
		embedWidth = aId[0];
		embedHeight = String(parseInt(aId[1]) + parseInt(js_vars.embed_player[sDesign]['player_bar_y']));
		
		el.innerHTML = embedWidth + 'x' + embedHeight;
	});
}

function setEmbedCode(sDesign, embedWidth, embedHeight)
{
	var embedCode = js_vars.embed_player[sDesign]['embed_code'];
	var sizeCd = js_vars.embed_size[embedWidth]['size_cd'];
	
	embedCode = embedCode.replace('{embed_width}', embedWidth);
	embedCode = embedCode.replace('{embed_height}', embedHeight);
	embedCode = embedCode.replace('{size_cd}', sizeCd);
	
	$('video_play').value = embedCode;
}

function changeEmbedSize(event)
{
	var elemRectangle = Event.element(event);
	
	if (elemRectangle.tagName != 'A')
	{
		elemRectangle = elemRectangle.up('a');
        }
        
        var sizeId = '';
	var aRectangle = $('changesize').select('a');
	aRectangle.each(function(el, index)
	{
		var elemSpan = el.down('span.rectangle');
		
		if (el == elemRectangle)
		{
			if (!elemSpan.hasClassName('aktiv'))
			{
				elemSpan.addClassName('aktiv');
				sizeId = elemSpan.identify().substring(1);
			}
		}
		else 
		{
			if (elemSpan.hasClassName('aktiv'))
			{
				elemSpan.removeClassName('aktiv');
			}
		}
	});
	
	if (sizeId != '')
	{
		// Get design
		var sDesign = '';
		var aSkin = $('changeskin').select('span');
		aSkin.each(function(el, index)
		{
			if (el.hasClassName('aktiv'))
			{
				sDesign = el.identify();
			}
		});
		
		// Get width and height
		var aId = sizeId.split('x');
		var embedWidth = aId[0];
		var embedHeight = String(parseInt(aId[1]) + parseInt(js_vars.embed_player[sDesign]['player_bar_y']));
	
		// Set new embed code
		setEmbedCode(sDesign, embedWidth, embedHeight);
	}
}

document.observe("dom:loaded", function() 
{
	if(typeof window.opera != 'undefined')
	{
		$('max_size').style.display = 'none';
		$('min_size').style.display = 'none';
	}
	
	// Events for skin selection
	if ($('changeskin') != null)
	{
		var aSkin = $('changeskin').select('span');
		aSkin.each(function(el, index)
		{
			Event.observe(el, 'click', changeEmbedSkin);
		});
	}

	// Events for size selection
	if ($('changesize') != null)
	{
		var aRectangle = $('changesize').select('a');
		aRectangle.each(function(el, index)
		{
			Event.observe(el, 'click', changeEmbedSize);
		});
	}
});


Event.observe(window, 'load', function() {
	if (embedVideo == false)
	{
		if (usePlayerIframe)
		{
			var swf = $('playerobject').contentWindow.document.getElementById('nuevoplayer');
		}
		else
		{
			var swf = $('nuevoplayer');
		}
		
		if (swf != null)
		{
			Event.observe($('max_size'), 'click', maxSize);
			Event.observe($('min_size'), 'click', minSize);
			Event.observe($('share'), 'click', function(event)
			{
				popup(this.href, 500, 580);
				Event.stop(event);
			});
		}
		else 
		{
			var flashMessage = '<span style="display: block; padding: 20px 10px 20px 10px; font-color: black; font-size: 1.5em;">Um dieses Video ansehen zu k&ouml;nnen, musst du Flash in einer <span style="white-space: nowrap;">Version >= ' + flashVersion + '</span> installiert haben. Die Aktualisierung kannst du kostenlos unter <a style="color: red;" href="http://get.adobe.com/flashplayer/" target="_blank">Adobe Flash Player</a> vornehmen. <br /><br />To watch this video you need to have flash installed in a <span style="white-space: nowrap;">version >= ' + flashVersion + '</span>. You can get the latest flash version for free at <a style="color: red;" href="http://get.adobe.com/flashplayer/" target="_blank">Adobe Flash Player</a>.</span>';
		
			if (usePlayerIframe)
			{
				var ifr = $('playerobject');
				ifr.contentWindow.document.getElementById('mediaspace').innerHTML = flashMessage;
			}
			else 
			{
				$('player').innerHTML = flashMessage;
			}
		}
	}
});