/* Nitestar-Dragables by Mirco Heibuelt --- Copyright 2007 */

// vars
var soon = 365;
var ajax_running = false;
var regular_checker = 0;
var regular_interval = 25;
var time_content = null;
var cookie_domain = '.'+window.location.hostname;

function make_cooliris_buttons() {

	logging('make_cooliris_buttons');
		
	if (PicLensLite.hasClient()) {
		// piclens installed
		var el = document.getElementsByName('cooliris_button');
		for(i=0;i<el.length;i++){
	    	el[i].href = feed_url;
	    }
	}
}

function logging(message) {

	try{
		console.log(message);
	}
	catch(error){
		
	}
}

function stop_loading(div_loading,target_div,color,div_id) {

	var className = $(div_loading).className;
	
	if(className.match(/blue/))
	{
		Element.removeClassName(div_loading,'table_start_blue');
		Element.addClassName(div_loading,'table_stop_blue');
	}
	else if(className.match(/grey/))
	{
		Element.removeClassName(div_loading,'table_start_grey');
		Element.addClassName(div_loading,'table_stop_grey');
	}
	else if(className.match(/orange/))
	{
		Element.removeClassName(div_loading,'table_start_orange');
		Element.addClassName(div_loading,'table_stop_orange');
	}
	else
	{
		Element.removeClassName(div_loading,'table_start_red');
		Element.addClassName(div_loading,'table_stop_red');
	}
	
	if(div_id != '' && div_id != undefined)
	{
		toggle_box(div_id,color);
	}
	
	enableTooltips(null,'tooltip');
}
function start_loading(div_loading) {
	var className = $(div_loading).className;
	
	if(className.match(/blue/))
	{
		Element.removeClassName(div_loading,'table_stop_blue');
		Element.addClassName(div_loading,'table_start_blue');
	}
	else if(className.match(/red/))
	{
		Element.removeClassName(div_loading,'table_stop_red');
		Element.addClassName(div_loading,'table_start_red');
	}
	else if(className.match(/orange/))
	{
		Element.removeClassName(div_loading,'table_stop_orange');
		Element.addClassName(div_loading,'table_start_orange');
	}
	else
	{
		Element.removeClassName(div_loading,'table_stop_grey');
		Element.addClassName(div_loading,'table_start_grey');
	}
} 
 
function get_main_content(target_div,div_loading,uri,parameters,start_run) {

	// teste, ob schon inhalt vorhanden ist
	if(start_run == 1)
		var validate = true;
	else
	{
		var target_content = $(target_div).innerHTML;
		if(target_content.length<10)
		{
			var validate = true;
		}
		else
			var validate = false;
	}
	
	// teste ob schon ein ajax-vorgang läuft
	if(ajax_running == true)
		validate = false;
	else
		validate = true;
	
	if(validate)
	{
		ajax_running = true;
		
		// change css class of table_loader
		start_loading(div_loading);
		var className = $(div_loading).className;
		
		document.location.hash = '/'+uri+'?'+parameters;
		
		parameters = parameters+'&req_ajax=1';
		
		var myAjax = new Ajax.Updater(''+target_div+'', ''+uri+'',{parameters: ''+parameters+'',evalScripts:true,onComplete: function(){
			stop_loading('' + div_loading + '', '' + target_div + '');
			ajax_running = false;
		 } 
		 });
	}
}
 
function redirectHash()
{
	var hash = location.hash;
	if (CheckValidPhpFile(hash)) {
		if (hash) {
			logging('hash vorhanden');
			hash = hash.replace('#', '');
			hash = 'http://' + window.location.hostname + '' + hash;
			logging('hash: ' + hash);
			if (CheckValidUrl(hash)) {
				logging('valide URL');
				location.href = hash;
			}
		}
	}
}

function CheckValidPhpFile(str)
{
        var RegexUrl = /php/
        return RegexUrl.test(str);
}

function CheckValidUrl(strUrl)
{
        var RegexUrl = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
        return RegexUrl.test(strUrl);
}
 
function setCookie(name, value, expires, path, domain, secure )
{
	// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );
	
	/*
	if the expires variable is set, make the correct
	expires time, the current script below will set
	it for x number of days, to make it for hours,
	delete * 24, for minutes, delete * 60 * 24
	*/
	
	if ( expires )
	{
		var expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );
	
	document.cookie = name + "=" +escape( value ) +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
	( ( path ) ? ";path=" + path : "" ) +
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );
}

function getCookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

/*javascript for Bubble Tooltips by Alessandro Fulciniti
- http://pro.html.it - http://web-graphics.com */

function enableTooltips(id, tag){
var links,i,h;
if(!document.getElementById || !document.getElementsByName) return;
AddCss();
h=document.createElement("span");
h.id="btc";
h.setAttribute("id","btc");
h.style.position="absolute";
document.getElementsByTagName("body")[0].appendChild(h);
   if(id==null) {
   if(tag==null) links=document.getElementsByName("a");
   else links=document.getElementsByName(tag);}
   else {if(tag==null) links=document.getElementById(id).getElementsByName("a");
   else    links=document.getElementById(id).getElementsByName(tag);}
for(i=0;i<links.length;i++){
    Prepare(links[i]);
    }
}

function Prepare(el){
var tooltip,t,b,s,l;
t=el.getAttribute("title");
//changes
if(b=el.getAttribute("src"))
	b = el.getAttribute("src");
else
	b = '';
if(t==null || t.length==0) return;
el.removeAttribute("title");
tooltip=CreateEl("span","tooltip");
s=CreateEl("span","top");
var oDiv=document.createElement("DIV");
s.appendChild(oDiv);
//changes

if(b != '')
	oDiv.innerHTML = '<img src="'+b+'" style="max-height: 70px;"><br />';
	
oDiv.innerHTML += t;
tooltip.appendChild(s);
b=CreateEl("b","bottom");

tooltip.appendChild(b);
setOpacity(tooltip);
el.tooltip=tooltip;
el.onmouseover=showTooltip;
el.onmouseout=hideTooltip;
el.onmousemove=Locate;
}

function showTooltip(e){
document.getElementById("btc").appendChild(this.tooltip);
Locate(e);
}

function hideTooltip(e){
var d=document.getElementById("btc");
if(d.childNodes.length>0) d.removeChild(d.firstChild);
}

function setOpacity(el){
el.style.filter="alpha(opacity:85)";
el.style.KHTMLOpacity="0.85";
el.style.MozOpacity="0.85";
el.style.opacity="0.85";
}

function CreateEl(t,c){
var x=document.createElement(t);
x.className=c;
x.style.display="block";
return(x);
}

function AddCss(){
}

function Locate(e){
var posx=0,posy=0;
if(e==null) e=window.event;
if(e.pageX || e.pageY){
    posx=e.pageX; posy=e.pageY;
    }
else if(e.clientX || e.clientY){
    if(document.documentElement.scrollTop){
        posx=e.clientX+document.documentElement.scrollLeft;
        posy=e.clientY+document.documentElement.scrollTop;
        }
    else{
        posx=e.clientX+document.body.scrollLeft;
        posy=e.clientY+document.body.scrollTop;
        }
    }
	document.getElementById("btc").style.top=(posy+10)+"px";
	document.getElementById("btc").style.left=(posx-20)+"px";
}
// Dragable Boxes
function get_table_content(target_div,div_loading,uri,parameters,start_run) {

	if(start_run == 1)
		var validate = true;
	else
	{
		var target_content = $(target_div).innerHTML;
		if(target_content.length<10)
		{
			var validate = true;
		}
		else
			var validate = false;
	}
	
	if(validate)
	{
		// change css class of table_loader
		Element.removeClassName(div_loading,'table_stop');
		Element.addClassName(div_loading,'table_start');
	
		var timeout_content = 'var myAjax = new Ajax.Updater(\''+target_div+'\', \''+uri+'\',{parameters: \''+parameters+'\',evalScripts:true,onComplete: function() {Element.removeClassName(\''+div_loading+'\',\'table_start\'); Element.addClassName(\''+div_loading+'\',\'table_stop\'); enableTooltips(null,\'tooltip\'); } });';
	
		try {
			eval("try { if(timeout_"+target_div+" != null) clearTimeout(timeout_"+target_div+"); } catch (e) {}");
		}
		catch (e) {}
		
		eval("timeout_"+target_div+" = setTimeout(timeout_content,2000);");
	}
}
function onlineliste_view(array,div_id) {

	var thisCode='';

	for (var i = 0; i < array.length; i++) {

		var id = array[i]['id'];
		var n  = array[i]['name'];
		var s  = array[i]['geschlecht'];
		var a  = array[i]['age'];
		var g  = array[i]['geburtsdatum'];
		var v  = array[i]['vip'];
		var b  = array[i]['bild'];
		
		// Link-Klasse ermitteln
	
		// Geburtstag?
		if(g==1)
			var css_class='birthday';
		else
			var css_class='';
	
		if(v==1 && g != 1)
			var css_class='o';
		else
			var css_class='';
		
		// Bild-URL
		if(b==1)
			var pic_url = '<img src="grafiken/bildanzeigen.gif" alt="Foto" height="11">';
		else
			var pic_url = '<img src="grafiken/abstand.gif" alt="Kein Foto" height="11">';
	
		if(v==1)
			var pic_url = '<a href="vip.php?cmd=get_vip"><img src="grafiken/Icons/vip_stern_einfach.png" alt="VIP!" height="11"></a>';
	
		thisCode += pic_url+'<a href="messages.php?cmd=write_message&amp;id='+id+'" title="Nachricht schreiben"><img src="grafiken/nachrichtschreiben.gif" width="7" height="9" border="0"></a><img border="0" src="grafiken/sex_'+s+'.gif" width="6" height="8"> '+a+' <a href="'+n+'" class="'+css_class+'">'+n+'</a><br>';
		
		var div_id = $(div_id);
	
	}
	
	div_id.innerHTML = thisCode;
}
function onStartLoad() {

	 if(document.getElementById('firstlist'))
	 {
		 Sortable.create("firstlist",
		   {dropOnEmpty:true,handle:'moving',constraint:false,
				onUpdate: initialize_tables
				});
	 }

	 if(document.getElementById('secondlist'))
	 {
		 Sortable.create("secondlist",
		   {dropOnEmpty:true,handle:'moving',constraint:false,
				onUpdate: initialize_tables
			});
	 }
 
	 if(document.getElementById('chat_write'))
	{
		logging('before chat_open with regular_interval='+regular_interval);
	 	chat_open(regular_interval);
 	}
	enableTooltips(null,'tooltip');
}

function myCallback( rss ) {
	var div = $('extern');
	var content = '';
    for(var n=0; n<rss.items.length; n++) {
        content += '<li>'+rss.items[n].title+'<div id="extern_description">'+rss.items[n].description.substr(0, 150);+'</div></li>';
    }
	div.innerHTML = '<h1>'+rss.channel.title+'</h1><ul>'+content+'</ul>';
}

function errorHandler( rss ) {
   alert('An error has occured');
}

function str_replace(search, replace, subject) {
	return subject.split(search).join(replace);
}

function initialize_tables() {
	
	// left

	elements_li = new Array();
	elements_li = $("firstlist").getElementsByTagName("li");
	elements_saving = new Array();
	
	for (var i = 0; i < elements_li.length; i++) {
		if(elements_li[i].id != '')
		{
			var element = elements_li[i].id;
			
			var class_name = $(element+'_top').className;
		
			element = str_replace('widget_','',element);
		
			elements_saving[i] = new Array();
			
			elements_saving[i][0] = element;
			
			if(class_name.match(/closed/))
				elements_saving[i][1] = 1;
			else
				elements_saving[i][1] = 0;
		}
	}
	
	setCookie('elements_left',elements_saving.toJSON(), soon, '/', cookie_domain, ''); 

	// right
	
	elements_li = new Array();
	elements_li = $("secondlist").getElementsByTagName("li");
	elements_saving = new Array();

	for (var i = 0; i < elements_li.length; i++) {
		
		if(elements_li[i].id != '')
		{
			var element = elements_li[i].id;
		
			var class_name = $(element+'_top').className;
		
			elements_saving[i] = new Array();
			
			elements_saving[i][0] = element;
			
			if(class_name.match(/closed/))
				elements_saving[i][1] = 1;
			else
				elements_saving[i][1] = 0;
		}
	}

	setCookie('elements_right',elements_saving.toJSON(), soon, '/', cookie_domain, ''); 

}

function toggle_box(div_id,color) {
	
	var className = $(div_id+'_top').className;
	
	if(className.match(/mini/))
	{
		if(className != 'mini_normal_box bg_mini_'+color+'_closed')
		{ 
			Element.toggle(div_id+'_inline');
			Element.removeClassName(div_id+'_top','bg_mini_'+color);
			Element.addClassName(div_id+'_top','bg_mini_'+color+'_closed');
			Element.removeClassName(div_id+'_open_close','table_opened');
			Element.addClassName(div_id+'_open_close','table_closed');
		} 
		else 
		{
			new Effect.Appear(div_id+'_inline');
			Element.removeClassName(div_id+'_top','bg_mini_'+color+'_closed');
			Element.addClassName(div_id+'_top','bg_mini_'+color);
			Element.removeClassName(div_id+'_open_close','table_closed');
			Element.addClassName(div_id+'_open_close','table_opened');
		}
	}
	else
	{
		if($(div_id+'_top').className != 'normal_box bg_'+color+'_closed')
		{ 
			Element.toggle(div_id+'_inline');
			Element.removeClassName(div_id+'_top','bg_'+color);
			Element.addClassName(div_id+'_top','bg_'+color+'_closed');
			
			Element.removeClassName(div_id+'_open_close','table_opened');
			Element.addClassName(div_id+'_open_close','table_closed');
		} 
		else 
		{
			new Effect.Appear(div_id+'_inline');
			Element.removeClassName(div_id+'_top','bg_'+color+'_closed');
			Element.addClassName(div_id+'_top','bg_'+color);
			
			Element.removeClassName(div_id+'_open_close','table_closed');
			Element.addClassName(div_id+'_open_close','table_opened');
		}
	}
	initialize_tables();
}
function close_box(div_id) {
	Element.remove(div_id);
	
	var myAjax = new Ajax.Request(
	'user_content.php', {
	        parameters: 'id='+div_id+'&action=delete_feed',
	        onComplete: function() {}
	});

	initialize_tables();
}
function change_side() {

	var className = $('firstlist').className;
	
	if(className.match(/fl_left/))
	{
		Element.removeClassName('firstlist','fl_left');
		Element.addClassName('firstlist','fl_right');
		Element.removeClassName('secondlist','fl_right');
		Element.addClassName('secondlist','fl_left');
		var side = 1;
	}
	else
	{
		Element.removeClassName('firstlist','fl_right');
		Element.addClassName('firstlist','fl_left');
		Element.removeClassName('secondlist','fl_left');
		Element.addClassName('secondlist','fl_right');
		var side = 0;
	}
	
	setCookie('elements_side',side, soon, '/', cookie_domain, ''); 
}

/* chat functions */

// global functions

function get_content(target_div,div_loading,uri,parameters,link_id) {

	$(target_div).innerHTML = '<div style="width: 100%; margin: 0px auto; text-align: center; height: 200px;"><img src="grafiken/loading_small.gif" style="margin-top: 80px;"></div>';
	
	try { 
		if(time_content != null)
			clearTimeout(time_content);
	} catch (e) {}
	
	time_content = setTimeout(
	'var myAjax = new Ajax.Updater(\''+target_div+'\', \''+uri+'\', {parameters: \''+parameters+'\',evalScripts:true});'
	,1000);
	
	toggle_navi(link_id);
	
	var config_saving_value = link_id.replace(/tabNavi03_/gi,'');
	
	setJsonCookie('config','box_news_choosen',config_saving_value);
}

function setJsonCookie(cookie_name,name,value) {
	cookie = getCookie(cookie_name);

	if(cookie != null)
		cookie_saving = $H(cookie.evalJSON());
	else
		cookie_saving = new Hash();
		
	cookie_saving.set(name, value);
	
	setCookie(cookie_name,Object.toJSON(cookie_saving), soon, '/', cookie_domain, '');
}

function getJsonCookie(cookie_name,name) {
	cookie = getCookie(cookie_name);
	
	if(cookie == null)
		return null;
	
	cookie_hash = $H(cookie.evalJSON());

	return cookie_has.get(name);
}

function toggle_navi(link_id) {
	elements_li = new Array();
	elements_li = $("subMenu").getElementsByTagName("a");
	
	for (var i = 0; i < elements_li.length; i++) {
		
		if(link_id == elements_li[i].id)
		{
			tabNavi03_selected = i+1;
		}
		Element.removeClassName(elements_li[i],'subMenuOn');
		Element.addClassName(elements_li[i],'subMenuOff');
	}

	Element.removeClassName(link_id,'subMenuOff');
	Element.addClassName(link_id,'subMenuOn');
}

function pagination(cmd,target_div,page,id,div_id,div_loading,loader,options,oncomplt) {

	if(!ajax_running)
	{	
		if (typeof(div_id) != 'string')
			var div_id = 'comments';

		if (typeof(div_loading) != 'string')
			var div_loading = 'loading';
	
		if (typeof(options) != 'string')
			var options = '';
	
		if(loader == 0)
		{
			Element.removeClassName(div_loading,'table_stop');
			Element.addClassName(div_loading,'table_start');
		}
		else
			Element.show(div_loading);
	
		ajax_running = true;
		 
		var myAjax = new Ajax.Updater(
		div_id, 'ajax/comments.php', {
		        parameters: 'id='+id+'&page='+page+'&cmd='+cmd+options,
		        onComplete: function() { 
			ajax_running = false; 
			if(loader == 0){Element.removeClassName(div_loading,'table_start');Element.addClassName(div_loading,'table_stop');}
			else {Element.hide(div_loading);};
			if(oncomplt == 'invite_content'){var expander = hs.getExpander('invite_content');expander.reflow();};
			},evalScripts:true
				
				
					
		});
	}
}

function update_chars(textarea){
	if(textarea.value.length > maxChars-1){
		textarea.value = textarea.value.substring(0,maxChars);
	}
	$('chat_char').innerHTML = (maxChars-textarea.value.length) + '/' + maxChars +  ' ' + chatDlg['chat_message_write_char_desc'];
}

function update_chars_input(textarea,input){
	if(textarea.value.length > maxChars-1){
		textarea.value = textarea.value.substring(0,maxChars);
	}
	$(input).value = (maxChars-textarea.value.length);
}

function toggling(el) {

  var el_div = $(el);
  
  if (el_div.className.match(/flex_open/)) {

    el_div.className = el_div.className.replace(/flex_open/, "flex_shut");
    
    var myAjaxShut = new Ajax.Request("ajax/settings.php",{parameters:'id='+el});

  } else {

    el_div.className = el_div.className.replace(/flex_shut/, "flex_open");

    var myAjaxOpen = new Ajax.Request("ajax/settings.php",{parameters:'id='+el});
  }
}

function insertAtCursor(myField, myValue) {
  var position = myField.scrollTop;

  //IE support
  if (document.selection) {
    myField.focus();

    sel = document.selection.createRange();
    sel.text = myValue;

  } else if (myField.selectionStart || myField.selectionStart == '0') {
    //MOZILLA/NETSCAPE support

    var startPos = myField.selectionStart;
    var endPos = myField.selectionEnd;
    myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
    myField.selectionStart = startPos;
    myField.selectionEnd = startPos + myValue.length;
    myField.focus();

    myField.scrollTop = position;
  } else {
    myField.value += myValue;
  }

  myField.scrollTop = position;
}

function headTailAtCursor(myField, myHead,myTail) {
  var position = myField.scrollTop;

  //IE support
  if (document.selection) {
    myField.focus();

    var selectedRange = document.selection.createRange();
    if (selectedRange.parentElement() == myField) {
      var strSelection = document.selection.createRange().text ;
      document.selection.createRange().text = myHead + strSelection + myTail;
    }

    
  } else if (myField.selectionStart || myField.selectionStart == '0') {
    //MOZILLA/NETSCAPE support

    var startPos = myField.selectionStart;
    var endPos = myField.selectionEnd;
    myValue = myField.value.substring(startPos,endPos);
    myField.value = myField.value.substring(0, startPos) + myHead + myValue + myTail + myField.value.substring(endPos, myField.value.length);
    myField.selectionStart = startPos + myHead.length;
    myField.selectionEnd = startPos + myValue.length + myHead.length;
    myField.focus();

  } else {
    myField.value += myHead + myTail;
  }

  myField.scrollTop = position;
}

// voting bar

if (document.images)
{
	var vote_balken_ausblenden=new Image;
	vote_balken_ausblenden.src="grafiken/v_normal.gif"
	
	var vote_balken_anzeigen=new Image;
	vote_balken_anzeigen.src="grafiken/v_over.gif"
}

function vote_balkens(id,type)
{
   if (!document.images)
      return false;
        
   for (i=1;i<=id;i++)
    {
    
      if (type=="ausblenden")
         document.images["vote_balken"+i].src=vote_balken_ausblenden.src;
      else if (type=="anzeigen")
         document.images["vote_balken"+i].src=vote_balken_anzeigen.src;
    }
}

// Chat-JavaScript using prototype.js

// Variablen

var boxTopOffset = 100;
var maxChars = 250;
var req;
var doCheck = true;
var targetUniqId = '';
var checkMsg = false;
var on_development = false;

function chat_open(regular_interval) {
	logging('chat_open');
	chat_checker = new PeriodicalExecuter(function(pe) {
		
		this.counter = this.counter ? this.counter + 1 : 1;
		
		if(this.counter > 20)
			pe.stop();
		else
			check_for_new_msg();
			
	}, regular_interval);
}



function show_write_message(uniq_id){
	targetUniqId = uniq_id;
	
	var msg_history = $('msg_history').innerHTML;

	if(msg_history != '')
		$('write_history').innerHTML = msg_history;
	else
	{
		try { 
		clearTimeout(time_history);
		} catch (e) {}
		
		time_history = setTimeout(
		'var myAjax = new Ajax.Updater(\'write_history\', \'ajax/privatechat.php\', {method: \'get\',parameters: \'action=get_history&target='+uniq_id+'\',evalScripts:true});'
		,2000);
	}
	
	show_message_div('chat_write');
	$('chat_write').getElementsByTagName('textarea')[0].focus();
}

function delete_message() {

	 var msg_id = $('msg_id').value;
	 if(msg_id != 0)
	 {
		var url = '/ajax/privatechat.php';
		var parameters = 'action=delete_message&msg_id=' + $('msg_id').value;
		
		var ajax = new Ajax.Request(url,{parameters: parameters});
		
		$('msg_id').value = 0;
	 }
}

function show_message_div(divid){
	
	logging('show_message_div('+divid+') aufgerufen.');

	doCheck = false;
        
	var div = $(divid);

	div.style.left = '300px';
	div.style.top = get_window_scroll_top() + boxTopOffset + 'px';

	div.style.display = 'block';
	new Draggable(divid, {handle:'top_bar'} );
}

function stripHTML(str){ return str.replace(/<[^>]*>/g, "");} 

function answer_msg(uniq_id){
	
	$('msg_history').innerHTML = $('msg_history').innerHTML+'<a href="'+$('chat_msg_name').innerHTML+'">'+$('chat_msg_name').innerHTML+'</a>: '+stripHTML($('chat_msg').innerHTML)+'<div class="txt_grey">'+$('chat_msg_date').innerHTML+'</div>';

	hide_msg_div('chat_read',1);
	show_write_message(uniq_id);
}


function send_short_msg(form){
	if(form.msg.value == ''){
		alert(chatDlg['chat_message_empty']);
		form.msg.focus();
		return false;
	}

	$('short_msg').disabled = true;					
											
	// senden
	
	try { 
	clearTimeout(time_send_message);
	} catch (e) {}
	
	var url = '/ajax/privatechat.php';
	var parameters = 'action=write_message&target=' + targetUniqId + '&msg_id='+$('msg_id').value+'&msg=' + encodeURIComponent(form.msg.value);

	time_send_message = setTimeout('var myAjax = new Ajax.Request(\''+url+'\',{parameters: \''+parameters+'\',onComplete: doSend_end});',2000);
															
	$('short_msg').disabled = false;
}

function doSend_end() {
	var telluser = $('chat_telluser');
	telluser.innerHTML = chatDlg['chat_message_delivered'];
	telluser.className = 'telluser_ok';
	window.setTimeout('hide_msg_div(\'chat_write\',1)',1500);
}

function hide_msg_div(divid,option){
	var div = $(divid);
	div.style.display = 'none';
	doCheck = true;

	if(option == 0)
		delete_message();
		
	if(divid == 'chat_write'){
		div.getElementsByTagName('textarea')[0].value = '';
		$('chat_telluser').innerHTML = '';
		$('write_history').innerHTML = '<img class="chat_loading" src="grafiken/loading.gif" alt="" />';
		$('chat_telluser').className = '';
		$('chat_char').innerHTML = maxChars + '/' + maxChars + ' ' + chatDlg['chat_message_write_char_desc'];
	}
}

function check_for_new_msg(){

	if(doCheck) {
			
			doCheck = false;

		    var url = '/ajax/privatechat.php';
  	        var parameters = 'action=send_messages';
			  	    
	        var myAjax = new Ajax.Request(
		     url,
		     {
		     	  method: 'get', 
		          parameters: parameters, 
			      onComplete: display_new_message
			 });

	}
}

var old_title = document.title;

function display_new_message(req) {
	
	if(req.responseXML)
	{
		
		if (data = req.responseXML.getElementsByTagName('data')[0]) {
			logging('XML-Datei eingelesen.');
			var username = data.getElementsByTagName('sender_short')[0].firstChild.nodeValue;
			logging('username ' + username + ' ausgelesen.');
			$('msg_id').value = data.getElementsByTagName('msg_id')[0].firstChild.nodeValue;
			logging('msg_id ' + $('msg_id').value + ' ausgelesen.');
			var msg_history = data.getElementsByTagName('msg_history')[0].firstChild.nodeValue;
			logging('msg_history ' + msg_history + ' ausgelesen.');
			
			if (msg_history != 0) 
				$('msg_history').innerHTML = msg_history;
			
			logging('msg_history aktualisiert.');
			
			$('chat_msg_name').innerHTML = username;
			$('chat_msg_name').href = username;
			
			logging('username aktualisiert.');
			
			targetUniqId = data.getElementsByTagName('sender_uniq_id')[0].firstChild.nodeValue;
			var chat_msg = data.getElementsByTagName('msg_text')[0].firstChild.nodeValue;
			
			logging('chat_msg aktualisiert.');
			
			var regex = /(http:\/\/\S*)/g;
			chat_msg = chat_msg.replace(regex, '<a href="$1" target="_blank">$1</a>');
			$('chat_msg').innerHTML = '<div class="padding">' + chat_msg + '</div>';
			$('chat_msg_date').innerHTML = data.getElementsByTagName('msg_created_formated')[0].firstChild.nodeValue;
			
			logging('Elemente aktualisiert.');
			
			show_message_div('chat_read');
		}
	}
	
	if(data = req.responseXML.getElementsByTagName('data_msgs')[0])
	{
		var new_messages = data.getElementsByTagName('new_msgs')[0].firstChild.nodeValue;
		var old_msg = $('new_messages').innerHTML;
		$('new_messages').innerHTML = new_messages;
		
		if(new_messages != 0 && old_msg == 0) {
			
			if(sounds)
				Sound.play('sounds/sonar.mp3',{replace:true});
			
			document.title = "Neue Nachricht!";
		}
		else if(new_messages == 0)
		{
			document.title = old_title;
		}
	}
	
	doCheck = true;
}

function get_window_scroll_top(){
	if(document.all && !window.opera ){
		return document.documentElement.scrollTop;
	}else{
		return window.pageYOffset;
	}
}

var chatDlg = new Object();
chatDlg['chat_message_delivered'] = 'Deine Nachricht wurde verschickt!';
chatDlg['chat_message_error'] = 'Oha, diese Nachricht konnte nicht verschickt werden. Hast Du Deinem Chatpartner vielleicht schon drei Nachrichten auf einmal gesendet? Das ist leider nicht erlaubt. Vielleicht ist Dein Gegenüber auch schon offline.';
chatDlg['chat_message_empty'] = 'Eine Nachricht solltest Du schon eingeben ;)';
chatDlg['chat_message_write_char_desc'] = 'Zeichen';

/* blubbr */

function close() { Element.hide('loading_bubblr'); $('submit_bubblr').disabled=false;}

function send_blubbr() {
	var blubbr_msg = $('away').value;
	if(blubbr_msg == '')
		alert('Du musst schon eine Bubble eingeben.');
	else
	{
		$('submit_bubblr').disabled=true;
		
		Element.removeClassName('box_activity_loader','table_stop');
		Element.addClassName('box_activity_loader','table_start');
		
		var do_ajax = new Ajax.Updater('box_activity_main','ajax/comments.php', {parameters: 'cmd=activity&away='+encodeURIComponent(blubbr_msg),
				onComplete: function() {Element.removeClassName('box_activity_loader','table_start');Element.addClassName('box_activity_loader','table_stop');
				}});
		
		window.setTimeout('close()', 1500);
		$('away').value = '';
	}
}

function change_blubbr() {
	var choose_blubbr = $('choose_blubbr').value;

	$('submit_bubblr').disabled=true;

	Element.removeClassName('box_blubbr_loader','table_stop');
	Element.addClassName('box_blubbr_loader','table_start');

	if(!ajax_running)
	{
		ajax_running = true;
		var do_ajax = new Ajax.Updater('box_blubbr_main','ajax/comments.php', {parameters: 'cmd=blubbr&choose_blubbr='+choose_blubbr,
		        onComplete: function() { ajax_running = false; Element.removeClassName('box_blubbr_loader','table_start');Element.addClassName('box_blubbr_loader','table_stop');
				}});
	}
	
	setCookie('choose_blubbr',choose_blubbr, soon, '/', cookie_domain, ''); 
}

function change_activity() {
	var choose_activity = $('choose_activity').value;

	Element.removeClassName('box_activity_loader','table_stop');
	Element.addClassName('box_activity_loader','table_start');
	
	if(!ajax_running)
	{
		ajax_running = true;
		var do_ajax = new Ajax.Updater('box_activity_main','ajax/comments.php', {parameters: 'cmd=activity&choose_activity='+choose_activity,
		        onComplete: function() { ajax_running = false; Element.removeClassName('box_activity_loader','table_start');Element.addClassName('box_activity_loader','table_stop');
				}});	
	}
	
	setCookie('choose_activity',choose_activity, soon, '/', cookie_domain, ''); 
}

function change_activity_type(id) {
	
	$('choose_activity_type').value = id;
	var choose_activity_type = $('choose_activity_type').value;

	Element.removeClassName('box_activity_loader','table_stop');
	Element.addClassName('box_activity_loader','table_start');
	
	setCookie('choose_activity_type',choose_activity_type, soon, '/', cookie_domain, ''); 
	
	if(!ajax_running)
	{
		ajax_running = true;
		var do_ajax = new Ajax.Updater('box_activity_main','ajax/comments.php', {parameters: 'cmd=activity&choose_activity_type='+choose_activity_type,
		        onComplete: function() { ajax_running = false; Element.removeClassName('box_activity_loader','table_start');Element.addClassName('box_activity_loader','table_stop');
				}});	
	}
}

// gfx

function GrafikPopUp(Grafik)
{
	bild = new Image();
	bild.src = Grafik;
	groesse(Grafik);
}

function groesse(Grafik)
{
	if ((bild.width != 0) && (bild.height != 0))
	{
		AusgleichBreit = 10;
		AusgleichHoch  = 29;
		GrafikBreit    = bild.width;
		GrafikHoch     = bild.height;
		FensterBreit   = GrafikBreit + AusgleichBreit;
		FensterHoch    = GrafikHoch + AusgleichHoch;
		PositionX      = (screen.availWidth - FensterBreit) / 2;
		PositionY      = (screen.availHeight - FensterHoch) / 2;

		var popGrafik  = window.open('','popGrafik','width=' + FensterBreit + ',height=' + FensterHoch + ',top=' + PositionY + ',left=' + PositionX + '');

		with (popGrafik)
		{
			with (document)
			{
				open();

				write('<html>'
				    + '<head>'
				    + '<title>Nitestar.de - Foto</title>'
				    + '</head>'
				    + '<body style="background-color: #000; overflow: hidden; margin: 0px; padding: 0px; border-width: 0px;">'
				    + '<a href="javascript:top.close();"><img name="bild" src="' + Grafik + '" border="0" width="' + GrafikBreit + '" height="' + GrafikHoch + '" alt=""></a>'
				    + '</body>'
				    + '</html>');

				close();
			}

			resizeTo(FensterBreit, FensterHoch);
			moveTo(PositionX, PositionY);
			focus();
		}
	}
	else
		setTimeout('GrafikPopUp(\'' + Grafik + '\');', 1000);
}
function send_warning(id,action,action_url)
{
	var check_warning = prompt('Wirklich die Aktion: "'+action+'" ausführen? Bitte Grund angeben:',''); 
	if(check_warning != null) 
	{		 
		document.location=action_url+'&reason='+check_warning; 
	}
}
// hide or show contact data on profile page
function toggleContactData() {
	if ($('contact_data').style.display == 'none') {
	
		if(document.getElementById('contact_data'))
			$('contact_data').style.display = 'block';
		if(document.getElementById('messenger_data'))
			$('messenger_data').style.display = 'block';
		
		$('messengerBtn').innerHTML = '<a href="javascript:void(0);" onclick="toggleContactData();"><img src="grafiken/hide.png" border="0" alt="verstecken" title="verstecken" /></a>';
	
	} else {
	
		if(document.getElementById('contact_data'))
			$('contact_data').style.display = 'none';
		if(document.getElementById('messenger_data'))
			$('messenger_data').style.display = 'none';
		
		$('messengerBtn').innerHTML = '<a href="javascript:void(0);" onclick="toggleContactData();"><img src="grafiken/show.png" border="0" alt="anzeigen" title="anzeigen" /></a>';
	}
}

function toggleMessengerData() {
	if ($('messenger_data').style.display == 'none') {
	
		if(document.getElementById('contact_data'))
			$('contact_data').style.display = 'block';
			
		if(document.getElementById('messenger_data'))
			$('messenger_data').style.display = 'block';
		
		$('messengerBtn').innerHTML = '<a href="javascript:void(0);" onclick="toggleMessengerData();"><img src="grafiken/Backgrounds/space.gif" width="14" height="14" class="arrow_hide no_repeat" alt="verstecken" title="verstecken" /></a>';
	
	} else {
	
		if(document.getElementById('contact_data'))
			$('contact_data').style.display = 'none';
			
		if(document.getElementById('messenger_data'))
			$('messenger_data').style.display = 'none';
		
		$('messengerBtn').innerHTML = '<a href="javascript:void(0);" onclick="toggleMessengerData();"><img src="grafiken/Backgrounds/space.gif" width="14" height="14" class="arrow_show no_repeat" alt="anzeigen" title="anzeigen" /></a>';
	}
}

function pic_slide()
{
	if(document.getElementById('vip_slide')) {
		var vip_slide = $('vip_slide');
		var img = $('pic_slide');
		var vip_slide_height = vip_slide.style.height;
		vip_slide_height = vip_slide_height.split('px');
	
		if(t_img.length > 1)
		{
			// initialize the height
			if(init == 0)
			{
				for (i=0;i<t_img.length;i++)
				{
					bild = new Image();
					bild.src = t_img[id_current][0];
				
					t_img[id_current][3] = bild.height;
		
					if(t_img[i][3] != 0 && vip_slide_height[0] < t_img[i][3])
					{
						vip_slide.style.height = t_img[i][3]+'px';
					}
				}
				init = 1;
			}
	
			if (id_current < (t_img.length-1))
			 id_current++;
			else 
			 id_current = 0;
		
			Element.hide('pic_slide');
			$('vip_slide').innerHTML = '';
		
			bild = new Image();
			bild.src = t_img[id_current][0];
		
			t_img[id_current][3] = bild.height;
		
			if(t_img[id_current][3] != 0 && vip_slide_height[0] < t_img[id_current][3])
			{
				vip_slide.style.height = t_img[id_current][3]+'px';
			}
		
			if(t_img[id_current][3] == 0)
				vip_slide.style.minHeight = '150px';
		
			$('pic_text').innerHTML = t_img[id_current][2];
		
			vip_slide.innerHTML = '<a href="'+t_img[id_current][1]+'" id="imageURL" onclick="GrafikPopUp(\''+t_img[id_current][1]+'\'); return false;"><img src="'+t_img[id_current][0]+'" alt="" id="pic_slide" style="display: none;" /></a>';
		
			new Effect.Appear('pic_slide');
		
			window.setTimeout("pic_slide()",7000);
		}
	}
}

/* voting for managers */

function vote_for_manager(value,user_id,school_id) {
	logging('saving');
	var myAjax = new Ajax.Request(
	'actions.php', {
	        parameters: 'action=vote_for_manager&req_ajax=1&school_id='+school_id+'&value='+value+'&user_id='+user_id,
	        onComplete: function(req) { vote_complete(req,user_id,value); }
	});
}

function vote_complete(req,user_id,value) {
	logging(req.responseText);
	var data = req.responseText.evalJSON();
	logging('message_'+user_id);
	if(data.ok)
	{
		var className = $('voting_'+user_id).className;
		Element.addClassName('voting_'+user_id,'txt_green');
		$('message_'+user_id).innerHTML = data.ok_msg;
		
		if (value == 'up') {
			for (i = 0; i < manager_count; i++) {
				Element.hide('up');
			}
		}
		else {
			
		}
	}
	else
	{
		var className = $('voting_'+user_id).className;
		Element.addClassName('voting_'+user_id,'txt_red');
		$('message_'+user_id).innerHTML = data.error_msg;
	}
}	

/* editprofile / school system */

function delete_school()
{
	$('school_name').value = '';
	$('choosen_school_id').value = '';
	Element.hide('delete_school_link');
}

function show_school_changer()
{
	$('submit1').disabled = true;
	Element.hide('actual_school');
	Element.show('choose_new_school');
	ajax_loader('/ajax/schools.php','cmd=show_countries','choose_new_school','school_loading');
}

function close_school()
{
	$('submit1').disabled = false;
	$('choose_new_school').innerHTML = '';
	Element.show('actual_school');
	Element.hide('choose_new_school');
}

function ajax_loader(uri,paras,div,loader_div) {
	Element.show(loader_div);
	new Ajax.Updater(div, uri, {
		parameters: paras,
		onComplete: function() { window.setTimeout("Element.hide('"+loader_div+"')", 1500); },
		asynchronous:true,
		evalScripts:true
		});
		
}
function end_school() {
	$('submit1').disabled = false;
	var choosen_school_id = $('school_id').value;
	$('choosen_school_id').value = choosen_school_id;
	$('school_name').value = $(choosen_school_id).innerHTML;
	$('choose_new_school').innerHTML = '';
	Element.show('actual_school');
	Element.hide('choose_new_school');
	Element.show('delete_school_link');
}
function add_new_school() {
	Element.show('add_school_form');
	Element.hide('choose_new_school');
}
function close_new_school() {
	Element.hide('add_school_form');
	Element.show('choose_new_school');
}
function add_new_city() {
	Element.show('add_city_form');
	Element.hide('choose_new_school');
}
function close_new_city() {
	Element.hide('add_city_form');
	Element.show('choose_new_school');
}
function s_grade_select() {
}
function s_name_select() {
}

// SWFObject v2.2

var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();

// activity
	activity_dislike = function(id) {
		var like = $('likes_action_default_'+id);
		var unlike = $('likes_action_saving_'+id);
	
		if(like.style.display == 'none')
		{
			Element.show(like);
			Element.hide(unlike);
		}
		else
		{
			Element.show(unlike);
			Element.hide(like);
		}
	
		Element.removeClassName('box_activity_loader','table_stop');
		Element.addClassName('box_activity_loader','table_start');
		
		if(!ajax_running)
		{
			ajax_running = true;
		
			// add to likes list
			var do_ajax = new Ajax.Updater('activity_likes_box_'+id,'activity.php', 
				{
					parameters: 'action=dislikes&id='+id+'&req_ajax=1',
					evalScripts:true,
		        	onComplete: function(originalRequest) {
						ajax_running = false;
						Element.removeClassName('box_activity_loader','table_start');
						Element.addClassName('box_activity_loader','table_stop');
						Element.show('activity_likes_comments_top_box_'+id);
						Element.show('activity_likes_box_'+id);
					}
				});
		}
	}

	activity_like = function(id) {
		var like = $('likes_action_default_'+id);
		var unlike = $('likes_action_saving_'+id);
		
		if(like.style.display == 'none')
		{
			Element.show(like);
			Element.hide(unlike);
		}
		else
		{
			Element.show(unlike);
			Element.hide(like);
		}
		
		Element.removeClassName('box_activity_loader','table_stop');
		Element.addClassName('box_activity_loader','table_start');

		if(!ajax_running)
		{
			ajax_running = true;

			// add to likes list
			var do_ajax = new Ajax.Updater('activity_likes_box_'+id,'activity.php', 
				{
					parameters: 'action=likes&id='+id+'&req_ajax=1',
					evalScripts:true,
		        	onComplete: function() {
						ajax_running = false;
						Element.removeClassName('box_activity_loader','table_start');
						Element.addClassName('box_activity_loader','table_stop');
						Element.show('activity_likes_comments_top_box_'+id);
						Element.show('activity_likes_box_'+id);
					}
				});
		}
	}

// search on top
	showSearchOptions = function() {
		//$('searchArea').value = '';
		$('searchOptions').style.display = 'inline';
	}
	hideSearchOptions = function() {
		$('searchOptions').style.display = 'none';
	}
	setSearchArea = function(val,id) {
		$('searchArea').value = id;
		$('searchAreaText').innerHTML = val;
		hideSearchOptions();
	}
	searchGo = function() {
		var search = parseInt(document.getElementById('searchArea').value);
		var q = document.getElementById('q').value;
		
		if(search == 0)
		{
			document.location='/search.php?search_val='+search+'&q='+encodeURIComponent(q)+'&s=4&cat_1=3';
		}
		else if(search == 1)
		{
			document.location='/search.php?search_val='+search+'&name='+encodeURIComponent(q);
		}
		else
		{
			document.location='/search.php?search_val='+search+'&cmd=full_search&b='+search+'&q='+encodeURIComponent(q);
		}
	}
	
// rating stars animation
	setRatingStars = function(rating) {

		if (rating < 1 || rating > 10) {
			rating = 1;
		}

		for (var i=1; i<11; i++) {
			if (i <= rating) {
				if (i==1 || i==3 || i==5 || i==7 || i==9) {

					var classes = $w($('ratingStar' + i).className);
					
					if (classes[1] != 'redLeft') {
						Element.removeClassName('ratingStar' + i, classes[1]);
						
						Element.addClassName('ratingStar' + i, 'coloredLeft');
					}
				} else {

					var classes = $w($('ratingStar' + i).className);
						
					if (classes[1] != 'coloredRight') {
						Element.removeClassName('ratingStar' + i, classes[1]);
						
						Element.addClassName('ratingStar' + i, 'coloredRight');
					}
				}
			} else {
				if (i==1 || i==3 || i==5 || i==7 || i==9) {

					var classes = $w($('ratingStar' + i).className);
					
					if (classes[1] != 'grayLeft') {
						Element.removeClassName('ratingStar' + i, classes[1]);
						
						Element.addClassName('ratingStar' + i, 'grayLeft');
					}
				} else {
					
					var classes = $w($('ratingStar' + i).className);
					
					if (classes[1] != 'grayRight') {
						Element.removeClassName('ratingStar' + i, classes[1]);
						
						Element.addClassName('ratingStar' + i, 'grayRight');
					}
				}
			}
		}
	}

// do rating (higlight and return of ajax request)
	doRating = function(val, contentId, script_name) {

		var rating = Math.abs(val);
		if (rating < 1 || rating > 10) {
			rating = 1;
		}
		
		new Ajax.Request(script_name, {
			method: 'post',

		    parameters: 'action=vote&id='
		    			+ encodeURIComponent(contentId)
		    			+ '&value='
		    			+ encodeURIComponent(rating),

		    onComplete: function(request){
		    	
		    	var response = request.responseText;
		    	
				var data;
				
				if(data = request.responseText.evalJSON())
				{
			    	if(data.status == 'true')
			    	{
				    	$('ratingStars').innerHTML = data.status_content;
						logging(data.status_content);

						$('voting_response').innerHTML = data.status_msg;
						Element.addClassName('voting_response','green');
						Element.removeClassName('voting_response','red');
						
						evalScript($('ratingStars').innerHTML);
					}
					else
					{
						Element.removeClassName('voting_response','green');
						Element.addClassName('voting_response','red');
						$('voting_response').innerHTML = data.status_msg;
					}
				}
			},

			evalScripts:false,
			asynchronous:true
		});
	}

function evalScript(scripts)
{
	try
	{	if(scripts != '')	
		{
			var script = "";
		
			scripts = scripts.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi, function(){
	       	                         if (scripts !== null) script += arguments[1] + '\n';
 	        	                        return '';});
			if(script) (window.execScript) ? window.execScript(script) : window.setTimeout(script, 0);
		}
		return false;
	}
	catch(e)
	{	alert(e)
	}
}

/* calculates the scaling factor in % */
	var scalingFactor = 57;
	calculateScalingFactor = function(v) {
		scalingFactor = 100 + v;
	}

/* scales the images */
	scaleImages = function(){
	
		var obj = getElementsByClassName('photo_gallery');
		
		for (i = 0; i < obj.length; i++) {
			xTmp = obj[i].getAttribute('minwidth');
			yTmp = obj[i].getAttribute('minheight');
			
			xWork = xTmp.replace(/px/, "");
			yWork = yTmp.replace(/px/, "");
			
			xTag = Math.round((xWork / 100 * scalingFactor));
			yTag = Math.round((yWork / 100 * scalingFactor));
			
			obj[i].setAttribute('width', xTag);
			obj[i].setAttribute('height', yTag);
		}
		
		var obj = getElementsByClassName('photo_overview_box');
		
		// get the real dynamic size
		
		var obj_dynamic = getElementsByClassName('photo_overview_box_wrapper');

		// get the max_height from the real dynamic size
		
		var max_height = 0;
		
		for (i = 0; i < obj_dynamic.length; i++) {
		
			yWork = obj_dynamic[i].offsetHeight;
			
			if (max_height < yWork) 
				max_height = yWork;
		}

		// now scale
		
		for (i = 0; i < obj.length; i++) {
			obj[i].style.height = max_height+'px';
		}
	}

	function getElementsByClassName(class_name) {
		var all_obj,ret_obj=new Array(),j=0,teststr;

		if(document.all)all_obj=document.all;
		else if(document.getElementsByTagName && !document.all)
		all_obj=document.getElementsByTagName("*");

		for(i=0;i<all_obj.length;i++) {
		if(all_obj[i].className.indexOf(class_name)!=-1) {
		  teststr=","+all_obj[i].className.split(" ").join(",")+",";
		  if(teststr.indexOf(","+class_name+",")!=-1)
		  {
		    ret_obj[j]=all_obj[i];
		    j++;
		  }
		}
		}
		return ret_obj;
	}
	
	function getStyleClass (className) {
		for (var s = 0; s < document.styleSheets.length; s++)
		{
			if(document.styleSheets[s].rules)
			{
				for (var r = 0; r < document.styleSheets[s].rules.length; r++)
				{
					if (document.styleSheets[s].rules[r].selectorText == '.' + className)
					{
						return document.styleSheets[s].rules[r];
					}
				}
			}
			else if(document.styleSheets[s].cssRules)
			{
				for (var r = 0; r < document.styleSheets[s].cssRules.length; r++)
				{
					if (document.styleSheets[s].cssRules[r].selectorText == '.' + className)
						return document.styleSheets[s].cssRules[r];
				}
			}
		}
		
		return null;
	}

/*
 * Layer
 */

	update_layer = function(div_id,file,params,object) {

		if(!ajax_running)
		{
			ajax_running = true;
			
			var myAjax = new Ajax.Updater(
			div_id,file, {
					evalScripts: true,
					parameters: params,
					onComplete: function() {
						ajax_running = false;
				        var expander = hs.getExpander(div_id);
				        expander.reflow();

						layer_timeout = setTimeout('hs.getExpander().close();',3000);
					}
			});
		}	
	}

/*
 * Voting
 */
	var vip_counter = 0;
	var vote_check = true;
	var vote_id;
	
	voting = function(value,id,vip) { 
		
		var validate = true;
		
		if(vip_counter != 0 && vote_id != id)
		{
			vip_counter = 1;
			vote_id = id;
			vote_check = true;
		}
		else
			vote_id = id;
		
		if(vip == 1)
		{
			vip_counter++;
			
			if(vip_counter > 3)
				validate = false;
		}
		else
		{
			if(ajax_running)
				validate = false;
		}
		
		if(vote_check == false)
			validate = false;
		
		if(validate)
		{
			ajax_running = true;
			
			var do_ajax = new Ajax.Request('actions.php', 
				{
					parameters: 'action=ajax_vote&id='+id+'&value='+value+'&req_ajax=1&vip_counter='+vip_counter,
		        	onComplete: function(request) {
						ajax_running = false;
						
				    	var response = request.responseText;

						var data;

						if(data = request.responseText.evalJSON())
						{
					    	if(data.status == true)
					    	{	
								var text = data.status_msg;
								
								if(vip_counter == 1 || vip_counter == 0)
									text = text.replace("{your}","deine");
								else if(vip_counter == 2)
									text = text.replace("{your}","deine zweite");
								else
									text = text.replace("{your}","deine dritte");
									
								$('voting_response').innerHTML = text;
								$('last_votes_content').innerHTML = data.status_content;
								
								Element.addClassName('voting_response','green');
								Element.removeClassName('voting_response','red');

								evalScript($('voting_response').innerHTML);
								evalScript($('last_votes_content').innerHTML);
							}
							else
							{
								vote_check = false; 
								
								$('voting_response').innerHTML = data.status_msg;
									
								Element.removeClassName('voting_response','green');
								Element.addClassName('voting_response','red');
								
								evalScript($('voting_response').innerHTML);
								evalScript($('last_votes_content').innerHTML);
							}
						}
					}
				});
		}
	}
	
	fire_close = function(id) {

		start_loading('box_welcome_loader');

		if(!ajax_running)
		{
			ajax_running = true;
			
			var myAjax = new Ajax.Updater(
			'ajax_response','voting.php', {
					evalScripts: true,
					parameters: 'user_id='+id+'&action=fire_informed&req_ajax=1',
					onComplete: function() {
						ajax_running = false;
						Element.hide('fire_'+id); 
						stop_loading('box_welcome_loader','','',''); 
					}
			});
		}	
	}

/*
 * Webcam
 */

photos_upload_webcam = function(rawData){
	var url = "gallery.php"; // Need to change this
	pars = '?action=upload&req_ajax=1&category=10002&userpicture='+rawData;
	var myAjax = new Ajax.Request(
	url,
	{
	method: 'POST',
	parameters: pars,
	onSuccess: function() { 
		//document.location = 'gallery.php?cmd=show_malben'; 
	},
	onFailure: function() { 
		alert("Ein Fehler ist aufgetreten. Bitte versuche es noch einmal!"); 
	}

	});
	return false;
}

function admin_confirm_forum(id,art,action,mode,gid)
{
	var check_warning = prompt('Wirklich die Aktion: "'+action+'" ausführen? Bitte Grund angeben:',''); 
	if(check_warning != null) 
	{
		if(mode == 'group')		 
		{
			document.location='groups.php?action='+action+'&thread='+id+'&artikel='+art+'&reason='+check_warning+'&group_id='+gid;
		}
		else
		{
			if(mode == 'admin-forum.php')
				document.location='admin-forum.php?action='+action+'&thread='+id+'&artikel='+art+'&id='+id+'&reason='+check_warning;
			else
				document.location='forum.php?action='+action+'&thread='+id+'&artikel='+art+'&id='+id+'&reason='+check_warning;
		}
		
	}
}

function admin_reason(id,action,file)
{
	var check_warning = prompt('Wirklich die Aktion: "'+action+'" ausführen? Bitte Grund angeben:',''); 
	if(check_warning != null) 
	{		 
		document.location=''+file+'?action='+action+'&id='+id+'&reason='+check_warning; 
	}
}

// schools

function get_ids() {
		var myAjax = new Ajax.Request(
		'ajax/register.php', {
			parameters: 'action=get_list' + '&country_id=' + $('country_id').value,
			onCreate: start_getting_list(),
			onComplete: end_getting_list
		}
	);		
}

function start_getting_list() {
	$('country_id').disabled=true;
	$('city_id').disabled=true;
	$('submit1').disabled=true;	
	Element.show('list_loading');
}

function end_getting_list(originalRequest) {
	$('country_id').disabled=false;
	$('city_id').disabled=false;
	$('submit1').disabled=false;	
	Element.hide('list_loading');
	$('area').innerHTML = originalRequest.responseText;
}

function activity_hide_textarea(activity_id) {
	Element.toggle('comment_'+activity_id);
	Element.toggle('comment_area_'+activity_id);

	logging('activity_hide_textarea(activity_id)');
	
	Element.toggle('activity_comments_write_'+activity_id);
	
	$('telluser_ajax_response').innerHTML = '';
	
	Element.show('activity_likes_comments_top_box_'+activity_id);
}

function submit_form(form_obj,div_update,add_content,make_visible,div_loading,textarea_clear,callback_function) {
	Element.show(div_loading);
	
	logging(typeof(form_obj)); 
	
	if(typeof(form_obj) != 'object')
		form_obj = $(form_obj);
	
	// teste ob schon ein ajax-vorgang läuft
	if(ajax_running == true)
		validate = false;
	else
		validate = true;

	if(validate)
	{
		form_obj.request({
		  parameters: { req_ajax: 1 },
		  onComplete: function(request) {
		    	var response = request.responseText;

				var data;
			
				if(data = request.responseText.evalJSON())
				{
			    	if(data.status == 'true')
			    	{
						Element.show(div_update);
					
						if(add_content == 1)
				    		$(div_update).innerHTML = data.status_content+$(div_update).innerHTML;
						else
							$(div_update).innerHTML = data.status_content;

						$('telluser_ajax_response').innerHTML = data.status_msg;
						Element.addClassName('telluser_ajax_response','green');
						Element.removeClassName('telluser_ajax_response','red');
					
						evalScript($(div_update).innerHTML);
					
						Element.show(make_visible);
					
						$(textarea_clear).value = '';
					}
					else
					{
						Element.removeClassName('telluser_ajax_response','green');
						Element.addClassName('telluser_ajax_response','red');
						$('telluser_ajax_response').innerHTML = data.status_msg;
					}
				
					Element.hide(div_loading);
				
					if(typeof(callback_function) == 'string')
						eval(callback_function);
				}
				
				ajax_running = false;
			}
		});
	}
	
	return false;
}


function submit_form_layer(form_obj,div_update,div_loading) {
	Element.show(div_loading);
	
	logging(typeof(form_obj)); 
	
	if(typeof(form_obj) != 'object')
		form_obj = $(form_obj);
	
	// teste ob schon ein ajax-vorgang läuft
	if(ajax_running == true)
		validate = false;
	else
		validate = true;

	if(validate)
	{
		form_obj.request({
		  parameters: { req_ajax: 1, no_navi:1, evalScripts: true},
		  onComplete: function(request) {
			
		    	var response = request.responseText;
		
				document.getElementById(div_update).innerHTML = response;
				var expander = hs.getExpander(div_update);expander.reflow();
				layer_timeout = setTimeout('hs.getExpander().close();',3000);
			
				ajax_running = false;
			}
		});
	}

	return false;
}
	