var jajax_form = {
	old_errors:new Array(),
	
	submit : function()
	{
		url=$('.form').parent().parent().parent().find('form').attr('action');
		formname=$('.form').parent().parent().parent().find('form').attr('name');
		html = $.ajax({
     url: url,
     global: false,
     type: 'POST',
     data: this.post(formname),
     dataType: "html",
     async:false
	   }
		).responseText;
		this.check_error(html);
	},
	
	post : function (formname)
	{
	 var elemente= new Array();
	 elemente['text']=1;
	 elemente['password']=1;
	 elemente['hidden']=1;
	 elemente['textarea']=1;
	 elemente['checkbox']=2;
	 elemente['select-one']=1;
	 elemente['select-multiple']=3;
	 elemente['radio']=4;
	 
		mytest='';
		count='';
		num=0;
		i=0;
		while(obj=document.forms[formname].elements[i++])
		{
			if (elemente[obj.type]==1)
			{
				if (mytest!='') mytest+='&';
				mytest=mytest+obj.name+'='+escape(obj.value);
			}

			if (elemente[obj.type]==2)
			{
				if (mytest!='') mytest+='&';
				if (obj.checked)	myvalue=obj.value; else myvalue='';
				mytest=mytest+obj.name+'='+escape(myvalue);
			}

			if (elemente[obj.type]==3)
				for(ix=0;ix<=obj.options.length-1;ix++)
					if (obj.options[ix].selected)
					{
						if (mytest!='') mytest+='&';
						mytest=mytest+obj.name.replace(/\[\]/,'['+ix+']')+'='+escape(obj.options[ix].value);		
					}
			
			if (elemente[obj.type]==4)
				if (obj.checked) 
				{
					if (mytest!='') mytest+='&';
					mytest=mytest+obj.name+'='+escape(obj.value);
				}
			
		}
		return mytest;
	},
	
	check_error : function(errors)
	{
		//alert(errors);
		teile=errors.split('|');
		for(key in this.old_errors)
		if(this.old_errors[key])
		{
			if (document.getElementById(key))
			{
				if (this.old_errors[key]!=1)
					document.getElementById(key).className=this.old_errors[key];
				else
					document.getElementById(key).className='no_error';
			}
			this.old_errors[key]=0;
		}
		
		if (teile[0]!='ok'){
			for(i in teile)
			if (teile[i])
			{
				if (teile[i] == 'errortext')
				{
					document.getElementById('error').innerHTML = teile[(i*1)+1];
				}
				
				if (document.getElementById(teile[i]))
				{
					this.old_errors[teile[i]]=document.getElementById(teile[i]).className;
					if (!this.old_errors[teile[i]]) this.old_errors[teile[i]]=1;
					document.getElementById(teile[i]).className+=' error';
				}
			}
		}

		if (teile[0]=='ok')
		{
			if (teile[1])
			{
				teile[1]=teile[1].replace(/&amp;/g,'&');
				location.href=teile[1];
			}
			if (teile[2])
			{
				teile[2]=teile[2].replace(/&amp;/g,'&');
				eval(teile[2]);
			}
		}
	},
	
	un_check_error:function()
	{
		for(key in this.old_errors)
		if(this.old_errors[key])
		{
			if (document.getElementById(key))
			{
				if (this.old_errors[key]!=1)
					document.getElementById(key).className=this.old_errors[key];
				else
					document.getElementById(key).className='no_error';
			}
			this.old_errors[key]=0;
		}
	}
	
}

var jteaser = {
	bilder:new Array(),
	pos:0,
	changetime:2000,
	fadetime:1000,
	pausetime:500,
	centerrand: 8,
	
	init: function()
	{
		window.setInterval(jteaser.run,this.changetime);
		$('.teaser .sponsor .b').html('<div class="new">'+this.bild(this.pos+1)+'</div><div class="cur">'+this.bild(this.pos)+'</div>');
		jload.teasercenter();
		this.pos++;
	},
	
	run: function()
	{
		$('.teaser .sponsor .b .new').position().top=0;
		$('.teaser .sponsor .b .new').position().left=0;
		$('.teaser .sponsor .b .cur').fadeOut(jteaser.fadetime);
		$('.teaser .sponsor .b .new').css('display','none');
		$('.teaser .sponsor .b .new').css('visibility','visible');
		$('.teaser .sponsor .b .new').fadeIn(jteaser.fadetime);
		window.setTimeout(jteaser.next,jteaser.fadetime+jteaser.pausetime);
	},
	
	next : function()
	{
		jteaser.pos++;
		if (jteaser.pos>=jteaser.bilder.length) jteaser.pos=0;
		height=$('.teaser .sponsor .b .new img').height();
		width=$('.teaser .sponsor .b .new img').width();
		$('.teaser .sponsor .b .cur').css('display','none');
		$('.teaser .sponsor .b .cur').html($('.sponsor .b .new').html());
		$('.teaser .sponsor .b .cur img').height(height);
		$('.teaser .sponsor .b .cur img').width(width);
		$('.teaser .sponsor .b .cur').css('display','block');
		$('.teaser .sponsor .b .new').css('visibility','hidden');
		$('.teaser .sponsor .b .new').html(jteaser.bild(jteaser.pos));
		$('.teaser .sponsor .b .new').css('display','block');
		$('.teaser .sponsor .b .new').position().top=-200;
		$('.teaser .sponsor .b .new').position().left=-200;
		jload.teasercenter();
	},
	
	center : function(obj)
	{
		if ($('.teaser .sponsor .b').height()<($(obj).height()+this.centerrand))
		{
			height=$('.teaser .sponsor .b').height()-this.centerrand;
			width=Math.round((($('.teaser .sponsor .b').height()-this.centerrand)/$(obj).height())*$(obj).width());
			$(obj).height(height);
			$(obj).width(width);
		}
		
		
		newtop=Math.round(($('.teaser .sponsor .b').height()-$(obj).height())/2);
		$(obj).css('marginTop',newtop+'px');
	},
	
	bild : function(curpos)
	{
		curpos++;
		if (curpos>=this.bilder.length) curpos=0;
		
		return '<img src="'+this.bilder[curpos]['bild']+'" alt="'+this.bilder[curpos]['titel']+'">';
	}
}

var jbestell_form = {
	summe : function()
	{
		gesammt=$('#kat1').attr("value")*1*$('#kat1_preis').html()+$('#kat2').attr("value")*1*$('#kat2_preis').html()+$('#kat3').attr("value")*1*$('#kat3_preis').html();
		gesammt*=1;
		$('#summe').html(gesammt+',00');
	}
}
	


var jload = {
	load : function()
	{
		this.extendjquery();
		this.teaser();
		this.teasercenter();
		this.ajaxform();
		this.bestellform();
		this.totop();
	},

	extendjquery : function()
	{
		jQuery.fn.outerHTML = function(s)
		{
			return (s)
			? this.before(s).remove()
			: jQuery("<p>").append(this.eq(0).clone()).html();
		};
	},

	bestellform : function()
	{
		if ($('#kat1').attr('id'))
		{
			$('#kat1').bind('change',function(){jbestell_form.summe(this)});
			$('#kat1').bind('keyup',function(){jbestell_form.summe(this)});
		}
		
		if ($('#kat2').attr('id'))
		{
			$('#kat2').bind('change',function(){jbestell_form.summe(this)});
			$('#kat2').bind('keyup',function(){jbestell_form.summe(this)});
		}
		
		if ($('#kat3').attr('id'))
		{
			$('#kat3').bind('change',function(){jbestell_form.summe(this)});
			$('#kat3').bind('keyup',function(){jbestell_form.summe(this)});
		}

	},

	ajaxform : function()
	{
		if ($('.form').html())
		{
			$('.form .fbutton').bind('click',function(){jajax_form.submit(this);return false});
		}
	},
	
	totop : function()
	{
		if ($('.content_top').html())
		{
			if ($('.content_top').position().top<600)
				$('.content_top').css('display','none');
			
			$('.content_top').bind('click',function(){location.href=$('.content_top a').attr('href')});
		}
	},
	

	teaser : function()
	{
		if ($('.teaser .sponsor').html())
		{
			$('.teaser .sponsor .b').bind('click',function(){location.href=$('.teaser .sponsor .c a').attr('href')});
			
			lang=teaser.length;
			for(i=0;i<lang;i++)
			{
				wert=Math.round(Math.random()*(teaser.length-1));
				jteaser.bilder[jteaser.bilder.length]=teaser[wert];
				teaser=this.pop_num(teaser,wert);
			}
			jteaser.init();
		}
	},
	
	teasercenter : function()
	{
		if ($('.teaser .sponsor .b').html())
		{
			$('.teaser .sponsor .b img').bind('load',function(){jteaser.center(this)});
		}
	},

	pop_num:function (pop_num_array,weg)
	{
		new_pop_num_array=new Array();
		for(var pop_num_i = 0; pop_num_i < pop_num_array.length; pop_num_i++)
		if (pop_num_i!=weg)
			new_pop_num_array[new_pop_num_array.length]=pop_num_array[pop_num_i];
		return new_pop_num_array;
	}
	
}

$(document).ready(function()
{
	jload.load();
});
