var servicegateway='http://'+document.domain+'/service.php';
var currentmode='';
var currentparam='';
var currentpage=0;
var maxpage=0;
var globaldata;
var userid;
var startmode='';
var historyiterator=0;
var globalPlaces=[];

jQuery.ajaxSetup({
	type:'POST',
	cache:false,
	dataType:'json',
	error:function(xhr,tstatus,texcept){
		alert('AJAX ERROR');
	}
});

function doAjax(d,p){
	$('.errorinput').removeClass('errorinput');
	$('#fraudnotifier').remove();
	$.ajax({
		url:servicegateway,
		data:'cid='+cid+'&mode='+d+'&params='+p,
		success:parseResult
	});
}

function enableTooltip(){
	$('.girldetail').tooltip({
		track:true,
		showURL:false,
		delay:0,
		top:-140,
		bodyHandler:function(){
			return "<img src='"+($(this).find('img').attr('src'))+"' />";
		}	
	});
}

function changeSearchBoxContext(){
	$('.context').hide();
	$('.context'+$('#boxsearch').val()).show();
}

function performBoxSearch(){
	var v=$('.context:visible').attr('id').replace('box','');
	var a='&from=box';
	switch(v){
		case 'girls':
			a+='&location='+$('#girllocation').val()+'&origin='+$('#girlorigin').val()+'&age='+$('#girlage').val();
		break;
		case 'porn':
			a+='&category='+$('#porncategory').val()+'&query='+$('#pornquery').val();
		break;
		case 'games':
			a+='&category='+$('#gamescategory').val()+'&query='+$('#gamesquery').val();
		break;
		case 'etablissements':
			a+='&location='+$('#etablissementslocation').val()+'&query='+$('#etablissementsplace').val()+'&category='+$('#etablissementscategory').val();
		break;
	}
	doAjax(v,a);	
}

function fakeBoxSearch(bu,v){
	$('#boxsearch').val(v);
	changeSearchBoxContext();
	$('#'+v.replace('girls','girl')+'location').val($('#'+bu).val());
	performBoxSearch();
}

function restoreBoxState(m){
	switch(m){
		case 'girls':
			$('#location').val($('#girllocation').val());
			$('#age').val($('#girlage').val());
			$('#origin').val($('#girlorigin').val());
		break;
		case 'porn':
			$('#category').val($('#porncategory').val());
		break;
		case 'games':
			$('#category').val($('#gamescategory').val());
		break;
		case 'etablissements':
			$('#location').val($('#etablissementslocation').val());
			$('#category').val($('#etablissementscategory').val());
		break;
	}
}

function doLogin(a,ga){
	$('#loginer').hide();
	$('#logouter').show();
	if(ga==1){
		navigate('admin','');
	}
}

function doLogout(){
	var f=new Date();
	var t=f.getTime()-100;
	f.setTime(t);
	document.cookie="pakpak=; pakpakchk=; expires=" + f.toGMTString();
	document.location.href='http://'+document.domain;
}

function bannerorlogin(){
	if(userid>0){
		navigate('admin','');
	}else{
		navigate('text','werbung');
	}
}

function saveForm(f,m){
	doAjax(m,'&'+$('#'+f).serialize());
}

function navigate(mod,param){
	hash=mod.replace(/^.*#/,'');
	hash+='.'+param+'.'+historyiterator;
	currentmode=mod;
	currentparam=param;
	historyiterator++;
	$.history.load(hash);
}

function newwindow(l){
	window.open(l,'pakpaknew');
}

function parseResult(data){
	$('#tooltip').hide();
	switch(data.state){
		case 'success':
			$('#success').showSuccess(data.txt);
			eval(data.xjs);
		break;
		case 'failure':
			$('#success').showSuccess(data.txt);
			eval(data.xjs);
		break;
		case 'error':
			for(var l=0;l<data.txt.length;l++){
				$('#'+data.txt[l]).addClass('errorinput');
				$('#'+data.txt[l]).focus(function(){$(this).removeClass('errorinput');});
			}
			if(data.xjs!=''){
				eval(data.xjs);
			}	
		break;
		case 'silent':
			eval(data.xjs);
		break;
		case 'ok':
			globaldata=data;
			if(data.txt!=''){
				$('#'+data.target).html(data.txt);
			}
			if(data.girls!=''){
				$('#premlistreal').html(data.girls);
			}
			eval(data.xjs);
		break;
		case 'eval':
			globaldata=data.txt;
			eval(data.xjs);
		break;
	}
}

function pageload(hash){
	if(hash){
		var h=hash.split('.');
		currentmode=h[0];
		doAjax(h[0],h[1]);
	}
}

function renderGirls(){
	var c="";
	$('#premlistreal').html(c);
	enableTooltip();
}

function buildImage(o,s){
	var li=(s=='places'?4:6);
	$('#etabsimgs .cleared').remove();
	var c="<div id='cimg"+o.ID+"' style='float:left;margin:10px;'><div class='xhl'><div class='xhil'><img src='/assets/"+s+"/"+o.ID+".jpg' /></div></div><div style='padding:4px;background-color:#000;'><img src='/assets/structure/loeschen-button.jpg' onclick=\"delImg("+o.ID+","+li+")\" />";
	if(s!='places'){
		c+="<img class='makemain' src='/assets/structure/alsstartbild.jpg' onclick=\"img2main("+o.ID+")\" style='margin-left:10px;"+(parseInt(o.isMain)==1?"display:none;":"")+"' />";
	}
	c+="</div>";
	c+="<div class='cleared'></div>";
	$('#etabsimgs').append(c);
	if($('#etabsimgs .xhl').length>=li){
		$('#uploader').hide();
	}
}

function buildUploader(item,ctxt){
	new AjaxUpload('#uploader',{
		action:'http://'+document.domain+'/upload.php',
		name:'newimage',
		data:{item:item,context:ctxt},
		autoSubmit:true,
		responseType:false,
        	onSubmit:function(file,ext){
                	if(!(ext && /^(jpg|jpeg|png|gif|tiff)$/.test(ext))){
                        	alert("Bitte nur JPG/PNG/GIF/TIFF Dateien verwenden.");
                        	return false;
                	}else if(currentmode=='globalbanner'){
				this.setData({item:$('#bannerid').val(),context:'banner'});
			}
        	},
		onComplete:function(file,response){
			if(parseInt(response)>0){
				if(currentmode=='globalbanner'){				
					navigate('globalbanner','');
				}else if(currentmode!='newbanner'){
					buildImage({ID:response,isMain:'0'},ctxt);
				}else{
					$('#imgpreview').html("<img src='/assets/attachments/"+response+".jpg' style='height:100px;' />");
					$('#attachment').val(response);
					$('#sender').show();
				}
			}else{
				alert("Fehler beim Upload");
			}
		}
	});
}

function buyBanner(mod,dur){
	doAjax('buybanner',mod+'&dur='+dur+'&price='+$('#sel'+mod+' option:selected').attr('data-price')+'&typename='+$('#'+mod+'name').html());
}

function buyFlat(){
	doAjax('buyflatrate','&etab='+$('#selpro').val()+'&price=200&etabname='+$('#selpro option:selected').text());
}

function buyCard(mod,dur){
	doAjax('createsetcard',mod+'&dur='+dur+'&price='+$('#sel'+mod+' option:selected').attr('data-price')+'&typename='+$('#'+mod+'name').html());
}

function renewCard(){
	doAjax('finishrenewsetcard','&'+$('#regform').serialize());
}

function renewBanner(){
	doAjax('finishrenewbanner','&'+$('#regform').serialize());
}

function showStat(){
	var nmode='';
	var tref=0;
	if(jQuery.inArray(statmode,new Array('browser','langs','os','startmodi','country','screen','flv','refer','keys'))>-1){
		nmode='Pie2D';
	}else if((statmode=='pi')||(statmode=='bot')){
		nmode='Area2D';
	}else if((statmode=='visits')||(statmode=='banner')||(statmode=='hotel')||(statmode=='singlehotels')||(statmode=='singlebanner')||(statmode=='singlebannerpro')||(statmode=='bannerpro')){
		nmode='MSArea';
	}else{
		nmode='Column3D';
	}
	$('#sscc').remove();
	if($('#subid').length>0){
		tref=$('#subid').val();
	}
	var chart=new FusionCharts('/components/charts/'+nmode+'.swf','sscc','994','400','0','0'); 
	chart.setDataURL(escape("/chart.php?mode="+statmode+"&refer="+tref+"&from="+($('#realstart').val())+"&to="+($('#realend').val())+"&cid="+cid));
	chart.setTransparent(true);
	chart.render('sscf');
}

function enableCalendar(el,af,dd){
	$(el).datepicker({
		showAnim:'fadeIn',
		defaultDate:dd,
		altField:af,
		altFormat:'yymmdd',
		dateFormat:'dd.mm.yy',
		firstDay:1
	});
}

function adminNav(t){
	$('#amenu li').removeClass('active');
	$('#amenu #'+t).addClass('active');
	$('#adminsubtitle').html($('#amenu #'+t).html());
	navigate(t,'');
}

function enableAdminNav(){
	$('#amenu li').click(function(){
		adminNav($(this).attr('id'));
	});
}

function newEtab(){
	$('#etabsimgs').empty();
	$('#etabeditor input,#etabeditor textarea').val('');
	$('#etabeditor select').val(0);
	$('#ID').val(-1);
	$('#etabeditor #saver').val('aktualisieren');
	$('#uploader').val('neues Bild hochladen');
	$('#etabeditor').show();
	$('#uploader').hide();
}

function newPorn(){
	$('#etabsimgs').empty();
	$('#etabeditor input,#etabeditor textarea').val('');
	$('#etabeditor select').val(0);
	$('#etabeditor #saver').val('aktualisieren');
	$('#etabeditor').show();
	$('#etabsimgsholder').hide();
	$('#ID').val(-1);
}

function newGame(){
	$('#etabsimgs').empty();
	$('#etabeditor input,#etabeditor textarea').val('');
	$('#etabeditor select').val(0);
	$('#etabeditor #saver').val('aktualisieren');
	$('#etabeditor').show();
	$('#etabsimgsholder').hide();
	$('#tohide').show();
	$('#ID').val(-1);
}

function delEtab(id){
	var c=confirm("Wirklich entfernen?");
	if(c){
		doAjax('delEtab',id);
	}
}

function delBanner(id){
	var c=confirm("Wirklich entfernen?");
	if(c){
		doAjax('delBanner',id);
	}
}

function delGirl(id){
	var c=confirm("Wirklich entfernen?");
	if(c){
		doAjax('delGirl',id);
	}
}

function delPorn(id){
	var c=confirm("Wirklich entfernen?");
	if(c){
		doAjax('delPorn',id);
	}
}

function delGame(id){
	var c=confirm("Wirklich entfernen?");
	if(c){
		doAjax('delGame',id);
	}
}

function payBill(id){
	var c=confirm("Wirklich freischalten?");
	if(c){
		doAjax('payBill',id);
	}
}

function delImg(id,li){
	var c=confirm("Wirklich entfernen?");
	if(c){
		$('#cimg'+id).remove();
		if($('#etabsimgs .xhl').length<li){
			$('#uploader').show();
		}else{
			$('#uploader').hide();
		}
		doAjax('delImage',id);
	}
}

function img2main(id){
	$('.makemain').show();
	$('#cimg'+id).find('.makemain').hide();
	doAjax('imgIsMain',id);
}

function editEtab(id){
	doAjax('getEtab',id);
}

function editBanner(id){
	doAjax('getBanner',id);
}

function editGirl(id){
	doAjax('getGirl',id);
}

function editGirlLate(id){
	doAjax('admin','lategirl'+id);
}

function editPorn(id){
	doAjax('getPorn',id);
}

function editGame(id){
	doAjax('getGame',id);
}

function killFlat(id){
	doAjax('killFlat',id);
}

function freeFlat(id){
	doAjax('freeFlat',id);
}

function dlpdf(id){
	document.location.href='http://'+document.domain+'/download.php?cid='+cid+'&id='+id;
}

function createMahnung(id){
	document.location.href='http://'+document.domain+'/download.php?cid='+cid+'&mode=reminder&id='+id;
}

function gotEtab(){
	$('#etabsimgs').empty();
	jQuery.each(globaldata,function(i,n){
		if($('#'+i).length>0){
			$('#'+i).val(n);
		}
	});
	jQuery.each(globaldata.opens,function(i,n){
		$('#from'+n['day']).val(n['timestart']);
		$('#fromm'+n['day']).val(n['timestartminutes']);
		$('#until'+n['day']).val(n['timeend']);
		$('#untilm'+n['day']).val(n['timeendminutes']);
	});
	jQuery.each(globaldata.imgs,function(i,n){
		buildImage({ID:n['ID'],isMain:n['isMain']},'places');
	});
	buildUploader(globaldata.ID,'places');
	if($('#etabsimgs .xhl').length<4){
		$('#uploader').show();
	}else{
		$('#uploader').hide();
	}
	$('#etabeditor').show();
}

function gotGirl(){
	$('#etabsimgs').empty();
	jQuery.each(globaldata,function(i,n){
		if($('#'+i).length>0){
			$('#'+i).val(n);
		}
	});
	jQuery.each(globaldata.services,function(i,n){
		$('#check'+n['SID']).attr('checked',true);
	});
	jQuery.each(globaldata.imgs,function(i,n){
		buildImage({ID:n['ID'],isMain:n['isMain']},'girls');
	});
	var a=globalPlaces[(parseInt(globaldata.hasFlat)==1?1:0)];
	$('#place').find('option').remove();
	jQuery.each(a,function(i,j){
		$('#place').append("<option value='"+j.ID+"'>"+j.title+"</option>");
	});
	$('#place').val(globaldata.place);
	buildUploader(globaldata.ID,'girls');
	if($('#etabsimgs .xhl').length<6){
		$('#uploader').show();
	}else{
		$('#uploader').hide();
	}
	$('#etabeditor').show();
}

function gotBanner(){
	jQuery.each(globaldata,function(i,n){
		if($('#'+i).length>0){
			$('#'+i).val(n);
		}
	});
	$('#etabeditor').show();
}

function gotPorn(){
	jQuery.each(globaldata,function(i,n){
		if($('#'+i).length>0){
			$('#'+i).val(n);
		}
	});
	$('#pornplayer').html(globaldata.embed.replace("width=\"608\" height=\"476\"","width=\"400\" height=\"314\""));
	$('#etabeditor').show();
	$('#etabsimgsholder').show();
}

function gotGame(){
	$('#tohide').hide();
	jQuery.each(globaldata,function(i,n){
		if($('#'+i).length>0){
			$('#'+i).val(n);
		}
	});
	var gc="<object width='400' height='314' data='http://www.swiss-goldstar.com/assets/games/"+globaldata.ID+".swf' type='application/x-shockwave-flash'><param value='http://www.swiss-goldstar.com/assets/games/"+globaldata.ID+".swf' name='movie'><param value='#000000' name='bgColor'><param value='true' name='allowfullscreen'><param value='always' name='allowScriptAccess'></object>";
	$('#gameplayer').html(gc);
	$('#etabeditor').show();
	$('#etabsimgsholder').show();
}

function openAGB(){
	var w=window.open("/agb.php","pakpak","width=800,height=400,resizable=yes");
	w.focus();
}

function fuckIE(){
	var d=globaldata.ie;
	jQuery.each(d.ages,function(i,j){
		$('#age').append("<option value='"+j+"'>"+j+"</option>");
	});
	jQuery.each(d.origins,function(i,j){
		$('#origin').append("<option value='"+j+"'>"+j+"</option>");
	});
	globalPlaces=[d.places_normal,d.places_flat];	
}

function reloadSearch(c,p){
	var a="&page="+p;
	switch(c){
		case 'girls':
			a+='&location='+$('#location').val()+'&origin='+$('#origin').val()+'&age='+$('#age').val();
		break;
		case 'porn':
			a+='&category='+$('#category').val();
			if($('#pornquery').val!=''){
				a+="&query="+$('#pornquery').val();
			}
		break;
		case 'games':
			a+='&category='+$('#category').val();
			if($('#gamesquery').val!=''){
				a+="&query="+$('#gamesquery').val();
			}
		break;
		case 'etablissements':
			a+='&location='+$('#location').val()+'&category='+$('#category').val();
			if($('#etablissementsplace').val!=''){
				a+="&query="+$('#etablissementsplace').val();
			}
		break;
	}
	doAjax('innersearch'+c,a);
}

function kantonToSearch(id,m){
	doAjax(m,'&location='+id);
}

function categoryToSearch(id){
	doAjax('etablissements','&category='+id);
}

jQuery.fn.center=function(options){
	var options=jQuery.extend({vertical:true,horizontal:true,useDefault:true},options);
	return this.each(function(){
		if(options.horizontal){
			jQuery(this).css('left','50%');
			jQuery(this).css('margin-left','-' + (jQuery(this).width() / 2) +'px');
		};
		if(options.vertical){
			if(options.useDefault){
				jQuery(this).css('top','20%');
			}else{
				jQuery(this).css('top','50%');
				jQuery(this).css('margin-top','-' + (jQuery(this).height() / 2) +'px');
			}
		};
		jQuery(this).handleZ();
	});
}

jQuery.fn.handleZ=function(){
	return this.each(function(){
		if(jQuery(this).hasClass('freedrag')){
			var maxz=601;
			jQuery('.freedrag').each(function(){if(jQuery(this).is(':visible')){if(jQuery(this).css('zIndex')>maxz){maxz=parseInt(jQuery(this).css('zIndex'));}}});
			jQuery(this).css('zIndex',maxz+1);
		}
	});
}

$(document).ready(function(){
	$.history.init(pageload);
	if($('#menuarea').length==0){
		$('#mainoverlay').center();
		$('.windows,.container').center();
		var v=($('#menureal').offset());
		$('#searchbox').css('left',(v.left+725)+'px');
		$(window).bind('resize',function(){
			var v=($('#menureal').offset());
			$('#searchbox').css('left',(v.left+725)+'px');
		});
		if(userid>0){
			doLogin(0,1);
		}
	}else{
		$('.amenu').click(function(){
			$('.amenu').removeClass('active');
			$(this).addClass('active');
			navigate($(this).attr('id'),'');
		});
		$('.amenu').hover(
			function(){
				$(this).addClass('menuhover');
			},
			function(){
				$(this).removeClass('menuhover');
			}
		);
		navigate('stats','');
	}
});

