var verfall=new Date(), cmd, merke, moreMenu;
var milli_sek_seit70 = verfall.getTime();
var ein_monat = 1000 * 60 * 60 * 24 * 30;
verfall.setTime(milli_sek_seit70 + ein_monat);
var heute = new Date();
var mon   = heute.getMonth()+1; if(mon<10) mon= "0"+mon;
var day   = heute.getDate(); if(day<10) day= "0"+day;
heute["datum"] = heute.getFullYear()+"-"+mon+"-"+day;

var kartepos = "";
var karteaus = false;
var usSingle = new Array("", "Single!", "verliebt", "unglücklich verliebt", "vergeben", "verlobt", "verheiratet", "glücklich vergeben", "verwirrt");

var agt=navigator.userAgent.toLowerCase();
var is_ie = (agt.indexOf("msie") != -1);
var is_op = (window.opera);

var TBshow=  'table-cell';
var TBhide= 'none';
if(is_ie){
	TBshow= 'inline';
	JS_ANIMATIONS_ENABLED= false;
}

var comment= true;
var context= false;
var reBig, reSma, map;

var schiebung_x= 0;
var schiebung_y= 0;

function Id( idname ){
	return document.getElementById( idname );
}

function openURL(url){
	if(is_ie){
	 // IE Fix: Überträgt sonst kein Referrer
		var urlA= url.split('?');
		var urlB= urlA[1].split('&');
		var outcode='<form methode="get" action="'+url+'" name="gotoURL">';
		for(key in urlB){
			var urlC= urlB[key].split('=');
			outcode+='<input type="hidden" name="'+urlC[0]+'" value="'+urlC[1]+'">';
		}
		document.getElementsByTagName("body")[0].innerHTML= outcode+'</form>';
		document.gotoURL.submit();
	}else{
		window.location.href= url;
	}
}

function comments(){
	if(comment){
		comment=false;
		document.getElementById('comments').style.display= TBshow;
		document.getElementById('comIcon').src= "http://on-city.com/gfx/16/minus.png";
	}
	else{
		comment=true;
		document.getElementById('comments').style.display= TBhide;
		document.getElementById('comIcon').src= "http://on-city.com/gfx/16/plus.png";
	}
}

function transfer(status, nr){
	if(status == "ne"){
		openURL(baseURL+"?op=nachrichten&del="+nr);
	}
	else{
		openURL(baseURL+"cmd/geldtransfer.php?mail="+nr);
	}
}

function freundmail(status, nr, user){
	if(status == "ne"){
		openURL(baseURL+"cmd/flist/disagree.php?disagree="+user+"&mail="+nr);
	}
	else{
		openURL(baseURL+"cmd/flist/agree.php?agree="+user+"&mail="+nr);
	}
}

function groupmail(status, nr, user, gruppe){
	openURL(baseURL+"cmd/gruppe_beitreten.php?bestaetigen="+status+"&von="+user+"&mail="+nr+"&gruppe="+gruppe);
}

function menu(id, obj){
	if(document.getElementById(id).style.height!='auto'){
		document.getElementById(id).style.height='auto';
		obj.style.backgroundImage= 'design/'+layout+'/menuTitel.png';
	}
	else {
		document.getElementById(id).style.height='18px';
		obj.style.backgroundImage= 'design/'+layout+'/menuClose.png';
	}
	setCookie('display_'+id, document.getElementById(id).style.height, verfall, "/");
}

function chkKommiMerker(){
	if(getCookie("last_kommentar")!=null){
		if(document.kommentar){
			if(document.kommentar.komtext.value==""){
				document.kommentar.komtext.value= getCookie("last_kommentar");
				resizeTextbox(document.kommentar.komtext);
			}
		}
	}
}
function KommiMerker(inhalt){
	setCookie("last_kommentar", inhalt, "", "/");
}

function abo(med,nr){
	cmd= 'aboniert(http_request.responseText)';
	macheRequest(baseURL+"cmd/abo.php?med="+med+'&nr='+nr);
}
function aboniert(response){
	if(response=='added'){
		with(document.getElementById('aboIcon')){
			className='aboniert';
			title='Abonnement löschen?';
			blur();
		}
	}
	else
	if(response=='deleted'){
		with(document.getElementById('aboIcon')){
			className='';
			title='abonieren?';
			blur();
		}
	}
	else{
		alert(response);
	}
}

function radioWert(rObj) {
    for (var i=0; i<rObj.length; i++) if (rObj[i].checked) return rObj[i].value;
    return false;
}

function hilfe(url){
	helpWin= window.open(url, 'hilfe', 'top=50, left=50, width=700, height=515, scrollbars=yes');
	helpWin.focus();
	return false;
}

function adminWin(url){
	adiWin= window.open(url, 'admin', 'top=100, left=100, width=900, height=600, scrollbars=yes');
	adiWin.focus();
	return false;
}

function showInfo(string){
	document.getElementById('InfoPannel').style.display= 'block';
	document.getElementById('InfoPannel').innerHTML= string;
	
	var oben = tempY+2+schiebung_y;
	var links= tempX+12+schiebung_x;
	var breit= document.getElementById('InfoPannel').offsetWidth+30;
	
	//alert('innerWidth: '+window.innerWidth+'\ninfofeld: '+(links+breit));
	
	if(links+breit>window.innerWidth) links= window.innerWidth-breit;
	document.getElementById('InfoPannel').style.top= oben;
	document.getElementById('InfoPannel').style.left= links;
}

function mailInfo(an){
	var string= '<form action="http://on-city.com/cmd/mail.php" method="post" onSubmit="return checkMail(this)">';
	document.getElementById('InfoPannel').style.display= 'block';
	
	document.getElementById('InfoPannel').style.top= tempY-150;
	document.getElementById('InfoPannel').style.left= tempX-12-300;
	if(layout==5) document.getElementById('InfoPannel').style.left= tempX-12;
	
	string+= 'Betreff: <input type="text" name="betreff" style="width:250px"><br>';
	string+= '<br><input type="hidden" name="an" value="'+an+'">Nachricht:<br>';
	string+= '<textarea name="nachricht" style="width:290px; height:100px"></textarea><br>';
	string+= '<input type="submit" value="Abschicken"> <input type="button" value="Schließen" onClick="clearInfo()">';
	document.getElementById('InfoPannel').innerHTML= string;
}

function contextmenu(str){
	context= true;
	
	with( document.getElementById('InfoPannel') ){
		style.display= 'block';
		className+= ' contextmenu';
		innerHTML= str;
		style.top= tempY+12;
		style.left= tempX-192;
	}
	
	return false;
}

function rechtsKlick(){
    var string= '<a href="profil/'+nickname+'" class="icon" style="background-image:url(gfx/16/profil.png)"><b>Profil öffnen</b></a>';
	string += moreMenu;
	string += '<hr>';
	string += '<a href="ort/apartment/meinprofil" class="icon" style="background-image:url(gfx/16/profil_edit.png)">Profilangaben ändern</a>';
	string += '<a href="javascript: editProfilFree()" class="icon" style="background-image:url(gfx/16/profil_free.png)">Profilseite ändern</a>';
	string += '<a href="op/profilbild" class="icon" style="background-image:url(gfx/16/profilbild.png)">Profilbilder ändern</a>';
	
	return contextmenu(string);
}
function user_rechtsklick(p_nick,myPage){
    var string= '<a href="profil/'+p_nick+'" class="icon" style="background-image:url(gfx/16/profil.png)"><b>Profil öffnen</b></a>';
	if(nickname==p_nick){
		string += moreMenu;
		string += '<a href="ort/apartment/meinprofil" class="icon" style="background-image:url(gfx/16/profil_edit.png)">Profilangaben ändern</a>';
		string += '<a href="javascript:editProfilFree()" class="icon" style="background-image:url(gfx/16/profil_free.png)">Profilseite ändern</a>';
		string += '<a href="op/profilbild" class="icon" style="background-image:url(gfx/16/profilbild_edit.png)">Profilbilder ändern</a>';
	}
	string += '<hr>';
	string += '<a href="profil/'+p_nick+'#aktiv" class="icon" style="background-image:url(gfx/16/cursor.png)">Aktivität</a>';
	string += '<a href="profil/'+p_nick+'#profilbilder" class="icon" style="background-image:url(gfx/16/profilbild.png)">Profilbilder</a>';
	if(myPage)
	string += '<a href="profil/'+p_nick+'#meineSeite" class="icon" style="background-image:url(gfx/16/page_green.png)">Meine Seite</a>';
	string += '<a href="profil/'+p_nick+'#freunde" class="icon" style="background-image:url(gfx/16/flist.png)">Freunde</a>';
	string += '<a href="profil/'+p_nick+'#tags" class="icon" style="background-image:url(gfx/16/tags.png)">Interessen</a>';
	string += '<hr>';
	string += '<a href="profil/'+p_nick+'#ecards" class="icon" style="background-image:url(gfx/16/ecard.png)">Grußkarten</a>';
	string += '<a href="profil/'+p_nick+'#kontakt" class="icon" style="background-image:url(gfx/16/unmail.png)">anschreiben</a>';
	if(sp_mail)
	string += '<a href="javascript:// Schnellnachricht" onClick="speedmail(\''+p_nick+'\')" class="icon" style="background-image:url(gfx/16/speedmail.png)">schnell anschreiben</a>';
	
	return contextmenu(string);
}
function adminMenu(){	
	document.getElementById('InfoPannel').style.display= 'block';
	document.getElementById('InfoPannel').style.backgroundColor= "ButtonFace";
	document.getElementById('InfoPannel').style.borderColor= 'ButtonShadow';
	document.getElementById('InfoPannel').style.padding= "2px";
	document.getElementById('InfoPannel').innerHTML= '<div class="contextmenu">'+document.getElementById('adminMenu').innerHTML+'</div>';
	
	document.getElementById('InfoPannel').style.top= tempY+12;
	document.getElementById('InfoPannel').style.left= tempX-170;
	setTimeout('context= true;',100);
  	return false;
}
function CPneuerTermin(tag,monat,jahr){
    var string= '<div class="contextmenu">';
	string += '<a href="?op=termine&tag='+tag+'&monat='+monat+'&jahr='+jahr+'" class="icon" style="background-image:url(gfx/16/kalender/add.png)">Neuen Termin ('+tag+'.'+monat+'.)</a>';
	string += '</div>';
	
	context= true;
	
	document.getElementById('InfoPannel').style.display= 'block';
	document.getElementById('InfoPannel').style.backgroundColor= "ButtonFace";
	document.getElementById('InfoPannel').style.borderColor= 'ButtonShadow';
	document.getElementById('InfoPannel').style.padding= "2px";
	document.getElementById('InfoPannel').innerHTML= string;
	
	document.getElementById('InfoPannel').style.top= tempY+12;
	document.getElementById('InfoPannel').style.left= tempX+2;
  	return false;
}

function psmInfo(){
	document.getElementById('InfoPannel').innerHTML= '<form onSubmit="savePSM();clearInfo(); return false;">Statusnachricht:<br><input type="text" maxlength="25" size="20" value="'+psm+'" id="newpsm">'+
	'<input type="submit" value="OK"></form>';
	
	document.getElementById('InfoPannel').style.display= 'block';
	document.getElementById('InfoPannel').style.backgroundColor= "ButtonFace";
	document.getElementById('InfoPannel').style.borderColor= 'ButtonShadow';
	document.getElementById('InfoPannel').style.padding= "1px";	
	
	document.getElementById('InfoPannel').style.top= tempY-3;
	document.getElementById('InfoPannel').style.left= tempX-112;
	if(layout==5) document.getElementById('InfoPannel').style.left= tempX-3;
}

function showeCard(obj){
	var thmb = obj.src;
	var pfad = thmb.substr(0,thmb.lastIndexOf('th/'));
	var datei= thmb.substr(thmb.lastIndexOf('/')+1);
	schiebung_y= -400;
	showInfo('<img src="'+pfad+datei+'">');
}

function clearInfo(){	
	/*document.getElementById('InfoPannel').style.backgroundColor= "infobackground";
	document.getElementById('InfoPannel').style.border= "1px solid black";
	document.getElementById('InfoPannel').style.padding= "4px";*/
	document.getElementById('InfoPannel').style.display= "none";
	document.getElementById('InfoPannel').className= "infoPannel";
	schiebung_x= 0;
	schiebung_y= 0;
}

var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var tempX = 0;
var tempY = 0;

function getMouseXY(e) {
if (IE) { // grab the x-y pos.s if browser is IE
tempX = event.clientX + document.body.scrollLeft;
tempY = event.clientY + document.body.scrollTop;
}
else {  // grab the x-y pos.s if browser is NS
tempX = e.pageX;
tempY = e.pageY;
}  
if (tempX < 0){tempX = 0;}
if (tempY < 0){tempY = 0;}  
return true;
}

function checkPW(){
	if(document.form.newpw.value == document.form.newpw2.value){
		return true;
	}
	else {
		alert('Das neue Passwort und die Wiederholung stimmen nicht übereins!');
		return false;
	}
}

function checkMail(wmail){
	if(wmail.an.value=="")
	{ alert('Und an wen willst du die Mail schicken?'); return false; }
	
	if(wmail.nachricht.value.replace(/([\n\r\s\t]*)/g,"")=="")
	{ alert('Über diese Nachricht kann man sich freuen ;-)'); return false; }
	
	if(wmail.betreff.value.replace(/([\n\r\s\t]*)/g,"")=="")
	{ wmail.betreff.value= "kein Betreff"; }
	
	return true;
}

function checkDiary(){
	if(document.diary.titel.value == ""){ alert('Du musst noch einen Titel eingeben!'); return false; }
	if(document.diary.inhalt.value == ""){ alert('Ein leerer Tagebucheintrag? - Wer will denn sowas?'); return false; }
}

function checkGeld(){
	if(document.wmail.an.value == ""){ alert('Und wer darf das Geld erhalten?'); return false; }
	if(document.wmail.euro.value == ""){ alert('Wie viel Dacaten'+EURO+' möchtest du denn überweisen?'); return false; }
	if(document.wmail.cent.value == ""){ alert('Wie viel Dacaten'+CENT+' möchtest du denn überweisen?'); return false; }
	if(document.wmail.euro.value <= 0 && document.wmail.cent.value <= 0){ alert('Wie viel Dacaten möchtest du denn überweisen?'); return false; }
}

function checkBook(){
	var inhalt= document.buch.inhalt.value;
	if(document.buch.titel.value == ""){ alert('Du musst noch den Titel für dein Buch eingeben.'); return false; }
	if(inhalt == ""){ alert('Ein Buch ohne Inhalt?'); return false; }
	  if(inhalt.lastIndexOf("[b]") > inhalt.lastIndexOf("[/b]")){ inhalt+= "[/b]"; }
	  if(inhalt.lastIndexOf("[i]") > inhalt.lastIndexOf("[/i]")){ inhalt+= "[/i]"; }
	  if(inhalt.lastIndexOf("[u]") > inhalt.lastIndexOf("[/u]")){ inhalt+= "[/u]"; }
	  if(inhalt.lastIndexOf("[s]") > inhalt.lastIndexOf("[/s]")){ inhalt+= "[/s]"; }
	  if(inhalt.lastIndexOf("[center]") > inhalt.lastIndexOf("[/center]")){ inhalt+= "[/center]"; }
	  if(inhalt.lastIndexOf("[quote]") > inhalt.lastIndexOf("[/quote]")){ inhalt+= "[/quote]"; }
	  if(inhalt.lastIndexOf("[zitat]") > inhalt.lastIndexOf("[/zitat]")){ inhalt+= "[/zitat]"; }
	  if(inhalt.lastIndexOf("[img]") > inhalt.lastIndexOf("[/img]")){ inhalt+= "[/img]"; }
	  if(inhalt.lastIndexOf("[code]") > inhalt.lastIndexOf("[/code]")){ inhalt+= "[/code]"; }
	  if(inhalt.lastIndexOf("[red]") > inhalt.lastIndexOf("[/red]")){ inhalt+= "[/red]"; }
	  if(inhalt.lastIndexOf("[blue]") > inhalt.lastIndexOf("[/blue]")){ inhalt+= "[/blue]"; }
	  if(inhalt.lastIndexOf("[green]") > inhalt.lastIndexOf("[/green]")){ inhalt+= "[/green]"; }
	  document.buch.inhalt.value=inhalt;
	if(document.buch.regal.value == ""){ alert('Du musst noch auswählen in welchem Regal dein Buch stehen soll!'); return false; }
	if(document.buch.copyright.checked == false){ alert('Ist das denn wirklich von dir verfasst?'); return false; }
}

function dropSmilie(form, what){
	var lange= form.value.length;
	var lastZeichen= form.value.substr(lange-1,1);
	var text='';
	
	if(lastZeichen!=" " && lange!=0) text+= " ";
	text+= what;
	
	insert_text(text,form);
}

function insert_text(strText,objElem){
	if(document.selection){
        objElem.focus();
        document.selection.createRange().text=strText;
        document.selection.createRange().select();
	}
	else if (objElem.selectionStart || objElem.selectionStart == '0'){ 
		intStart = objElem.selectionStart;
		intEnd = objElem.selectionEnd;
		objElem.value = (objElem.value).substring(0, intStart) + strText + (objElem.value).substring(intEnd, objElem.value.length);
		objElem.focus();
	}
	else{
		objElem.focus();
		objElem.value += strText;
	}
}

function buy(art,preis){
	if(preis*100 > geld){ alert("Das kannst du dir leider nicht leisten!"); }else{
		if(confirm("Willst du diesen Artikel im Wert von "+preis+EURO+" wirklich kaufen?")){
			openURL(baseURL+'cmd/buy.php?art='+art);
		}
	}
}

function delBook(nr,user){
	if(confirm("Willst du das Buch wirklich löschen?")){
		openURL(baseURL+'cmd/delbook.php?nr='+nr+'&us='+user);
	}
}
function delFoto(nr,user){
	if(confirm("Willst du das Bild wirklich löschen?")){
		openURL(baseURL+'cmd/delfoto.php?nr='+nr+'&us='+user);
	}
}
function delNote(nr,user){
	if(confirm("Willst du die Anzeige wirklich löschen?")){
		openURL(baseURL+'cmd/delanzeige.php?nr='+nr+'&us='+user);
	}
}

function setCookie (name, value, expires, path, domain, secure)
{
var curCookie = name + "=" + escape(value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
  document.cookie = curCookie;
}

function getCookie(name)
{
var dc = document.cookie;
var prefix = name + "=";
var begin = dc.indexOf("; " + prefix);
if (begin == -1)
{
begin = dc.indexOf(prefix);
if (begin != 0) return null;
}
else begin += 2;
var end = document.cookie.indexOf(";", begin);
if (end == -1)    end = dc.length;
return unescape(dc.substring(begin + prefix.length, end));
}


function delCookie(name, path, domain)
{
if (getCookie(name))
{
document.cookie = name + "=" +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}

function leisten(geld, wert){
	if(geld < wert*100){ alert('Du hast nicht genug Geld!'); return false; }
	else { return true; }
}

function miniprofil(id, nick, status, mw, alter, opts, more){
	var org_opts= opts;
	var opts= new Array();
	for(key in org_opts) opts[org_opts[key]]= true;
	var outtext='<div class="miniprofil">'+
	'<table class="bg"><tr><th class="sta'+status+'">&nbsp;</th><td class="sta'+status+'">&nbsp;</td></tr></table>'+
	'<table class="inhalt"><tr><td class="nickname">'+nick+'&nbsp;'+alter+'</td><td class="offTime">'+more['lastOn']+'</td>'+
	'</tr><tr><td colspan="2" class="moreInfos">'+
	(opts['bild']?'<img src="'+baseURL+'cmd/userpic.php?id='+id+'&size=s" />':'')+
	'<div class="points">'+
	(more['ort']!=''?'<u class="icon" style="background-image:url(gfx/16/point.png)">'+more['ort']+'</u><br />':'')+
	(more['single']!=0?'<u class="icon" style="background-image:url(gfx/16/point.png)">'+usSingle[more['single']]+'</u>':'')+
	(more['psm']!=''?'<br><u class="icon miniPSM">('+more['psm']+')</u>':'')+
	'</div><div class="icons">'+
	'<img src="gfx/16/'+mw+'.png" />'+
	(opts['vote']?'<img src="bild_bewerten.png" />':'')+
	(more['rauchen']==2?'<img src="gfx/16/raucher_st.png" />':'')+
	(more['rauchen']==3?'<img src="gfx/16/raucher.png" />':'')+
	(opts['msn']?'<img src="gfx/16/msn.png" />':'')+
	(opts['icq']?'<img src="gfx/16/icq.png" />':'')+
	(opts['aim']?'<img src="gfx/16/aim.png" />':'')+
	(opts['yim']?'<img src="gfx/16/yim.png" />':'')+
	(opts['skype']?'<img src="gfx/16/skype.png" />':'')+
	(opts['musik']?'<img src="gfx/16/headphones.png" />':'')+
	'</div></td></tr></table>';
	if(_id('InfoPannel')) _id('InfoPannel').className= 'infoPannel miniprofil';
	showInfo(outtext);
}

function start(){
	if(karteaus == true) karteweg();
	if(status > 1) countOnlineTime(1);
	rein();
	chkKommiMerker();
	map_menu();
	if(parent.stadt){
		parent.loc();
	}
}

function karteweg(){
	kartepos= parent.karte.location.href;
	parent.karte.document.open();
	parent.karte.document.write('<html><body><center><font size="1" face="Verdana">Chat-Session offen<br><br>Um den Ort zu wechseln beende bitte den Chat.</font></center></body></html>');
	parent.karte.document.close();
}


function GetRandom( min, max ) {
	if( min > max ) {
		return( -1 );
	}
	if( min == max ) {
		return( min );
	}
	return( min + parseInt( Math.random() * ( max-min+1 ) ) );
}

function countKeyInfo(obj, boo){
	var addon= '<span style="color:#666666;font-weight:normal;margin-left:2px">(freie Zeichen)</span>';
	if(boo) obj.innerHTML += addon;
	else obj.innerHTML= obj.innerHTML.substr(0, obj.innerHTML.length-addon.length);
}

function countKeyDown(obj, limit){
	var objSt= obj.style;
	var frei = limit-obj.value.length;
	
	var target= countKeyDown.arguments[2];
	if(!target) target='num';
	
	if(frei > -1){
		with(document.getElementById( target )){
			style.visibility= 'visible';
			innerHTML= frei;
			style.float= 'left';
			style.color= 'black';
			style.fontWeight= 'normal';
			style.borderColor= 'black';
			if(frei == 0){
				style.color= 'red';
				style.fontWeight= 'bold';
				style.borderColor= 'red';
			}
		}
		return true;
	}
	else{
		if(frei == -1) obj.value= obj.value.substr(0, obj.value.length-1);
		return false;
	}
	
}

function savePSM(){
	cmd= "alert(http_request.responseText)";
	psm= escape(document.getElementById('newpsm').value);
	sendeRequest('http://on-city.com/cmd/savepsm.php?text='+psm);
	document.getElementById('newpsm').alt= document.getElementById('newpsm').value;
}

var http_request= false;

	function sendeRequest(url) {

        http_request = false;	

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/html');
                // zu dieser Zeile siehe weiter unten
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');disco=true;
            return false;
        }
        http_request.onreadystatechange = gesendet;
        http_request.open('POST', url, true);
        http_request.send(null);
	return false;
    }

    function gesendet() {
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
				eval(cmd);
            } /*else {
               alert('Bei dem Request ist ein Problem aufgetreten.');disco=true;
            }*/
        }

    }

function macheRequest(url) {
	if(http_request.readyState==4 || http_request==false){
		http_request = false;
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/html');
                // zu dieser Zeile siehe weiter unten
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Fehler: Kann keine XMLHTTP-Instanz erzeugen');
            return false;
        }
        http_request.onreadystatechange = empfangen;
        http_request.open('GET', url, true);
        http_request.send(null);
	}
}

function empfangen() {
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                eval(cmd);
            } /*else {
                alert('Bei dem Request ist ein Problem aufgetreten.');
            }*/
        }

}

function werteKom(komnr, wertung, obj){
	var vorher= obj.title;
	if(wertung!=vorher&&!isNaN(wertung)&&wertung>-2&&wertung<3){
		cmd= 'gewertetKom(http_request.responseText)';
		macheRequest(baseURL+'cmd/komWert.php?nr='+komnr+'&wert='+wertung);
		obj.childNodes[0].src= 'gfx/16/kommi/vote'+wertung+'.png';
		obj.title= wertung;
		obj.blur();
	}
}
function gewertetKom(re){
	if(re=="true") alert("Bewertung gespeichert!");
	else alert("Fehler beim bewerten!");
}

function checkNick(nick){
	if(nick!="") macheRequest('sites/chk_nick.php?nick='+nick);
}

function nickStatus(boo){
	switch(boo){
		case false:
		  document.signin.nickchk.checked=true;
		  document.getElementById('nickstatus').innerHTML= '<font color="green"><b>Nickname ist noch frei!</b></font>';
		break;
		
		case true:
		  document.signin.nickchk.checked=false;
		  document.getElementById('nickstatus').innerHTML= '<font color="red">Nickname bereits vergeben!</font>';
		break;
		
		default:
		  document.signin.nickchk.checked=false;
		  document.getElementById('nickstatus').innerHTML= 'noch nicht geprüft.';
		break;
	}
}
function ajaxGeld(){
	 sendeRequest(baseURL+'cmd/casinoKosten.php');
}

function playlist(itemnr){
	 cmd='alert("Item zur Playlist hinzugefügt!")';
	 sendeRequest(baseURL+'cmd/add_playlist.php?id='+itemnr);
}
function player(startwith){
	if(!startwith) startwith='';
	var pwin= window.open(baseURL+'cmd/player/?start='+startwith, 'pwin', 'width=400, height=310, resizable=yes, dependent=yes');
	if(pwin) pwin.focus();
	else alert("Musik-Player Fenster wurde blockiert!");
}

function editItem(nr){
	window.open(baseURL+'cmd/item_editor/?nr='+nr, 'item_editor', 'width=350, height=580');
}
function editEcard(nr,x,y){
	var editcard= window.open(baseURL+'cmd/item_editor/ecard.php?nr='+nr+'&x='+x+'&y='+y, 'ecard_editor', 'width=400, height=200');
		editcard.focus();
}

function delItem(nr, anz){
	var anzL= 0;
	if(confirm("Möchtest du das Item wirklich löschen?")){
		if(anz>1) anzL= prompt("Wie viele von "+anz+" möchtest du löschen?", 1);
		else anzL= anz;
		if(isNaN(anzL) || anzL>anz || anzL<=0) return false;
		else{
			openURL(baseURL+'cmd/del_item.php?nr='+nr+'&anz='+anzL);
		}
	}
}

function sendItem(nr){
	var an = prompt("An wen möchtest du das Item verschicken?",'');
	if(an != "" && an!=null){
		var msg= prompt("Eine kurze Nachricht:",'');
		openURL(baseURL+'cmd/item_senden.php?nr='+nr+'&an='+an+'&nachricht='+msg);
	}
}

function rechneSteuer(geld){
	var zw= 21 * geld / 100;
	document.invest.endgeld.value= parseInt(geld-zw);
}

function checkInvest(){
	if(!isNaN(document.invest.endgeld.value)) if(document.invest.endgeld.value>0) return true;
	alert("Das Endgeld muss eine Zahl über 0 sein!");
	return false;
}

function buyItem(itemnr, preis, x,y){
	var anzahl=1;
	
	if(document.getElementById('item'+itemnr+'_anzahl'))
	if(!isNaN(document.getElementById('item'+itemnr+'_anzahl').value))
	anzahl=parseInt(document.getElementById('item'+itemnr+'_anzahl').value);
	
	if(preis*anzahl > geld){ alert("Das kannst du dir leider nicht leisten!"); }else{
		if(confirm("Willst du diesen Artikel im Wert von "+(preis*anzahl)/100+EURO+" wirklich kaufen?")){
			openURL(baseURL+'cmd/buyItem.php?art='+itemnr+'&x='+x+'&y='+y+(anzahl>1?'&anzahl='+anzahl:''));
		}
	}
}

function setItemPreis(itemnr, preis, x,y){
	if(!isNaN(preis)){
		cmd= "alert(http_request.responseText)";
		sendeRequest("http://on-city.com/cmd/itemSetPreis.php?art="+itemnr+"&preis="+preis+'&x='+x+'&y='+y);
	}
}

function selItem(typ){
	for(i=1; i<10; i++){
	  document.getElementById('v'+i).innerHTML= '..';
	  document.itemc.elements["v"+i].readOnly= false;
	}
	
	switch(typ){
		case "mp3":
		  with(document){
			getElementById('v1').innerHTML= '..';
			getElementById('v2').innerHTML= '<b>Artist</b><br><small>Künstler, Band, Musiker</small>';
			getElementById('v3').innerHTML= '<b>Titel</b><br><small>Songname</small>';
			getElementById('v4').innerHTML= '<b>Album</b><br><small>Zu welchem Album gehört der Song</small>';
			getElementById('v5').innerHTML= '<b>Genres</b><br><small>Mit Leerzeichen getrennt</small>';
			getElementById('v6').innerHTML= '<b>Featuring</b><br><small>Welche Artisten machen bei dem Song noch mit</small>';
			getElementById('v7').innerHTML= '<b>Song URL</b><br><small>Die Adresse zur Song-Datei</small>';
			getElementById('v8').innerHTML= '<b>Cover URL</b><br><small>Die Adresse zur Cover-Datei</small>';
			getElementById('v9').innerHTML= '<b>Info URL</b><br><small>Künstler Homepage o.ä.</small>';
			itemc.elements["v3"].type= 'text';
		  }
		  for(i=2; i<10; i++){
			document.itemc.elements["v"+i].readOnly= false;
		  }
		break;
		
		case "mp3_own":
		  selItem('mp3');
		  with(document){
			getElementById('v8').innerHTML= '..';
			itemc.elements["v8"].value= '[user]';
			itemc.elements["v8"].readOnly= true;
			getElementById('v9').innerHTML= '..';
			itemc.elements["v9"].value= '[user]';
			itemc.elements["v9"].readOnly= true;
			
			itemc.elements["v1"].value= id;
			itemc.elements["v2"].value= nickname;
			itemc.elements["v2"].readOnly= true;
		  }
		break;
		
		case "img":
		  with(document){
			getElementById('v1').innerHTML= '..';
			getElementById('v2').innerHTML= '<b>Kategorie ID</b>';
			getElementById('v3').innerHTML= '<b>Titel</b>';
			getElementById('v7').innerHTML= '<b>URL</b>';
			getElementById('v8').innerHTML= '<b>Thmb URL</b>';
			itemc.elements["v1"].value= id;
			itemc.elements["v1"].readOnly= true;
			itemc.elements["v4"].readOnly= true;
			itemc.elements["v5"].readOnly= true;
			itemc.elements["v6"].readOnly= true;
			itemc.elements["v9"].readOnly= true;
		  }
		break;
		
		case "css":
		  with(document){
			getElementById('v2').innerHTML= '<b>CSS-Nr</b>';
			getElementById('v3').innerHTML= '<b>Titel</b>';
			itemc.elements["v2"].readOnly= false;
			itemc.elements["v3"].readOnly= false;
			itemc.elements["v3"].type= 'text';
		  }
		  for(i=4; i<6; i++){
			document.getElementById('v'+i).innerHTML= '..';
			document.itemc.elements["v"+i].readOnly= true;
		  }
		break;
		
		default:
		  for(i=1; i<10; i++){
			document.getElementById('v'+i).innerHTML= '..';
			document.itemc.elements["v"+i].readOnly= true;
			document.itemc.elements["v"+i].value= '';
			document.itemc.elements["v"+i].type= 'text';
		  }
		break;
	}
}

function resizeTextbox( obj ){	
 // Rückspung-Trick
	if(!is_ie) obj.style.height= 1;
	
 // Werte berechnen/abrufen
	var s = obj.scrollHeight + (obj.offsetHeight-obj.clientHeight);
	var mx= parseInt(obj.style.maxHeight);
	var mi= parseInt(obj.style.minHeight);

	if(s>mx){
	  obj.style.overflow= 'auto';
	  obj.style.height= mx;
	}else if(s<mi){
	  obj.style.overflow= 'auto';
	  obj.style.height= mi;
	}
	else{
	  obj.style.overflow= 'hidden';
	  obj.style.height= s;
	}
}

var startZeit=0;
var onTime=0; // in sec
var cOnTime;
function countOnlineTime(s){
		if(id==0) return false;
		if(s==1) onTime= startZeit= parseFloat(document.getElementById('onlinezeit').innerHTML)*60;
		else	 onTime++;
		
		if(onTimeSec){ // Sekunde
			document.getElementById('onlinezeit').innerHTML= parseInt(onTime/60/60)+
			"."+(
			((parseInt(onTime/60)-(parseInt(onTime/60/60)*60))<10)?
			'0'+(parseInt(onTime/60)-(parseInt(onTime/60/60)*60)):
			parseInt(onTime/60)-(parseInt(onTime/60/60)*60)
			);
			onTime+=60;
			cOnTime= setTimeout('countOnlineTime(0)', 1000);
			if(onTime-startZeit>1200*60){
				clearTimeout( cOnTime );
				alert('Achtung: Du hast schon seit längerer Zeit keine Seite mehr aufgerufen.\nDu bist möglicherweise nicht mehr eingeloggt!');
			}
		}else{ // Minute
			document.getElementById('onlinezeit').innerHTML= parseInt(onTime/60);
			cOnTime= setTimeout('countOnlineTime(0)', 1000*60);
			onTime+=59;
			if(onTime-startZeit>1200){
				clearTimeout( cOnTime );
				alert('Achtung: Du hast schon seit längerer Zeit keine Seite mehr aufgerufen.\nDu bist möglicherweise nicht mehr eingeloggt!');
			}
		}
}

function editProfilFree(){
	window.open('http://on-city.com/cmd/profil_free','profileditor','width=740,height=650');
}


var msgWin= false;
var scrollInfoBis= -2;

function rein(){
	if(msgWin) with(document.getElementById('msg')){
		var abOben= offsetTop+5;
		style.top= abOben+'px';
		if(abOben<scrollInfoBis) setTimeout('rein()',50);
		else if(aniInfo>0) setTimeout('raus()', aniInfo*1000);
	}
}
function raus(){
	with(document.getElementById('msg')){
		var abOben= offsetTop-2;
		style.top= abOben+'px';
		if(abOben>-offsetHeight) setTimeout('raus()',100);
	}
}

var moreMap='';
function map_menu(){
	if(document.getElementById("map_menu")){
		var max_size= document.getElementById("map_menu").offsetWidth;
		var sum_size= 20;
		var z=1;
		while(document.getElementById('map_menu'+z)){
			sum_size+= document.getElementById('map_menu'+z).offsetWidth;
			if(sum_size>max_size){
				var linkNow=document.getElementById('map_menu'+z);
				linkNow.style.display='none';
				moreMap += '<a href="'+linkNow.href
				+'" class="icon" style="background-image:'+linkNow.style.backgroundImage+'">'+linkNow.text+'</a>';
				document.getElementById('moreMapMenu').style.display='inline';
			}
			z++;
		}
	}
}
function moreMapMenu(){
	document.getElementById('InfoPannel').style.display= 'block';
	document.getElementById('InfoPannel').style.backgroundColor= "ButtonFace";
	document.getElementById('InfoPannel').style.borderColor= 'ButtonShadow';
	document.getElementById('InfoPannel').style.padding= "2px";
	document.getElementById('InfoPannel').innerHTML= '<div class="contextmenu">'+moreMap+'</div>';
	
	document.getElementById('InfoPannel').style.top= tempY+12;
	document.getElementById('InfoPannel').style.left= tempX-170;
	setTimeout('context= true;',100);
  	return false;
}

function mozWrap(txtarea, lft, rgt) {
	var selLength = txtarea.textLength;
	var selStart = txtarea.selectionStart;
	var selEnd = txtarea.selectionEnd;
	if (selEnd==1 || selEnd==2) selEnd=selLength;
	var s1 = (txtarea.value).substring(0,selStart);
	var s2 = (txtarea.value).substring(selStart, selEnd)
	var s3 = (txtarea.value).substring(selEnd, selLength);
	if(s2!=""){
		txtarea.value = s1 + lft + s2 + rgt + s3;
		txtarea.focus();
		return true;
	}
	else return false;
}
	
function IEWrap(txtarea, lft, rgt) { // IE & Opera
	strSelection = document.selection.createRange().text;
	if (strSelection!="") {
		document.selection.createRange().text = lft + strSelection + rgt;
		return true;
	}
	else return false;
}
	
function wrapSelection(txtarea, lft, rgt) {
	if(document.all){
		return IEWrap(txtarea, lft, rgt);
	}
	else if(document.getElementById){
		return mozWrap(txtarea, lft, rgt);
	}
}

function str_fett(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[b]', '[/b]') ){
			var eingabe= prompt("Gib einen Text ein, der fett erscheinen soll:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[b]'+eingabe+'[/b]',document.getElementById(txtarea));	
		}
}
function str_kursiv(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[i]', '[/i]') ){
			var eingabe= prompt("Gib einen Text ein, der kursiv erscheinen soll:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[i]'+eingabe+'[/i]',document.getElementById(txtarea));	
		}
}
function str_underline(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[u]', '[/u]') ){
			var eingabe= prompt("Gib einen Text ein, der unterstrichen erscheinen soll:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[u]'+eingabe+'[/u]',document.getElementById(txtarea));	
		}
}
function str_strike(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[s]', '[/s]') ){
			var eingabe= prompt("Gib einen Text ein, der druchgestrichen erscheinen soll:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[u]'+eingabe+'[/u]',document.getElementById(txtarea));	
		}
}
function str_center(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[center]', '[/center]') ){
			var eingabe= prompt("Gib einen Text ein, der zentriert erscheinen soll:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[center]'+eingabe+'[/center]',document.getElementById(txtarea));	
		}
}
function str_color(txtarea){
		var farbe= prompt("Gib einen Farbcode ein:",'00FF00');
		if(farbe!=""){
			if(! wrapSelection(document.getElementById(txtarea), '[c='+farbe+']', '[/c]') ){
				var eingabe= prompt("Gib einen Text ein, der farbig erscheinen soll:",'');	
				if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[c='+farbe+']'+eingabe+'[/c]',document.getElementById(txtarea));	
			}
		}
}
function str_zitat(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[zitat]', '[/zitat]') ){
			var eingabe= prompt("Gib einen Text ein, der zitiert erscheinen soll:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[zitat]'+eingabe+'[/zitat]',document.getElementById(txtarea));	
		}
}
function str_img(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[img]', '[/img]') ){
			var eingabe= prompt("Gib die URL des Bildes ein:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[img]'+eingabe+'[/img]',document.getElementById(txtarea));	
		}
}
function str_url(txtarea){
		var url= prompt("Gib die URL der Seite ein, die du verlinken möchtest:",'http://');
		if(url!=""||url!="http://"){
			if(! wrapSelection(document.getElementById(txtarea), '[url='+url+']', '[/url]') ){
				var eingabe= prompt("Gib einen Text ein, der verlinkt werden soll:",'');	
				if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[url='+url+']'+eingabe+'[/url]',document.getElementById(txtarea));	
			}
		}
}
function str_code(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[code]', '[/code]') ){
			var eingabe= prompt("Gib den Quellcode ein, den du einfügen möchtest:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[code]'+eingabe+'[/code]',document.getElementById(txtarea));	
		}
}
function str_user(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[user]', '[/user]') ){
			var eingabe= prompt("Gib den Nicknamen ein von dem Einwohner, den du verlinken möchtest:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[user]'+eingabe+'[/user]',document.getElementById(txtarea));	
		}
}
function str_buch(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[buch]', '[/buch]') ){
			var eingabe= prompt("Gib die Nummer von dem Buch ein, das du verlinken möchtest:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[buch]'+eingabe+'[/buch]',document.getElementById(txtarea));	
		}
}
function str_gallery(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[gallery]', '[/gallery]') ){
			var eingabe= prompt("Gib die Nummer von dem Gallery-Bild ein, das du verlinken möchtest:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[gallery]'+eingabe+'[/gallery]',document.getElementById(txtarea));	
		}
}
function str_youtube(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[youtube]', '[/youtube]') ){
			var eingabe= prompt("Gib die Video-ID von dem Youtube-Video ein, das du einfügen möchtest:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[youtube]'+eingabe+'[/youtube]',document.getElementById(txtarea));	
		}
}
function str_myvideo(txtarea){
		if(! wrapSelection(document.getElementById(txtarea), '[myvideo]', '[/myvideo]') ){
			var eingabe= prompt("Gib die Video-ID von dem My-Video ein, das du einfügen möchtest:",'');	
			if(eingabe!=""&&eingabe!=null&&eingabe!=undefined)	insert_text('[myvideo]'+eingabe+'[/myvideo]',document.getElementById(txtarea));	
		}
}

if(!document.getElementsByClassName) document.getElementsByClassName = function(class_name) {
    var docList = this.all || this.getElementsByTagName('*');
    var matchArray = new Array();
	
    var re = new RegExp("(?:^|\\s)"+class_name+"(?:\\s|$)");
    for (var i = 0; i < docList.length; i++) {
        if (re.test(docList[i].className) ) {
            matchArray[matchArray.length] = docList[i];
        }
    }

	return matchArray;
}

function addEvent(obj, eventType, func, useCaption){
  if (obj.addEventListener) {
	obj.addEventListener(eventType, func, useCaption);
	return true;
  } else if (obj.attachEvent) {
	var retVal = obj.attachEvent("on"+eventType, func);
	return retVal;
  } else {
	return false;
  }
}
