//MooTools More, <http://mootools.net/more>. Copyright (c) 2006-2009 Aaron Newton <http://clientcide.com/>, Valerio Proietti <http://mad4milk.net> & the MooTools team <http://mootools.net/developers>, MIT Style License.

MooTools.More={version:"1.2.4.4",build:"6f6057dc645fdb7547689183b2311063bd653ddf"};(function(){var a=function(c,b){return(c)?($type(c)=="function"?c(b):b.get(c)):"";
};this.Tips=new Class({Implements:[Events,Options],options:{onShow:function(){this.tip.setStyle("display","block");},onHide:function(){this.tip.setStyle("display","none");
},title:"title",text:function(b){return b.get("rel")||b.get("href");},showDelay:100,hideDelay:100,className:"tip-wrap",offset:{x:16,y:16},windowPadding:{x:0,y:0},fixed:false},initialize:function(){var b=Array.link(arguments,{options:Object.type,elements:$defined});
this.setOptions(b.options);if(b.elements){this.attach(b.elements);}this.container=new Element("div",{"class":"tip"});},toElement:function(){if(this.tip){return this.tip;
}return this.tip=new Element("div",{"class":this.options.className,styles:{position:"absolute",top:0,left:0}}).adopt(new Element("div",{"class":"tip-top"}),this.container,new Element("div",{"class":"tip-bottom"})).inject(document.body);
},attach:function(b){$$(b).each(function(d){var f=a(this.options.title,d),e=a(this.options.text,d);d.erase("title").store("tip:native",f).retrieve("tip:title",f);
d.retrieve("tip:text",e);this.fireEvent("attach",[d]);var c=["enter","leave"];if(!this.options.fixed){c.push("move");}c.each(function(h){var g=d.retrieve("tip:"+h);
if(!g){g=this["element"+h.capitalize()].bindWithEvent(this,d);}d.store("tip:"+h,g).addEvent("mouse"+h,g);},this);},this);return this;},detach:function(b){$$(b).each(function(d){["enter","leave","move"].each(function(e){d.removeEvent("mouse"+e,d.retrieve("tip:"+e)).eliminate("tip:"+e);
});this.fireEvent("detach",[d]);if(this.options.title=="title"){var c=d.retrieve("tip:native");if(c){d.set("title",c);}}},this);return this;},elementEnter:function(c,b){this.container.empty();
["title","text"].each(function(e){var d=b.retrieve("tip:"+e);if(d){this.fill(new Element("div",{"class":"tip-"+e}).inject(this.container),d);}},this);$clear(this.timer);
this.timer=(function(){this.show(this,b);this.position((this.options.fixed)?{page:b.getPosition()}:c);}).delay(this.options.showDelay,this);},elementLeave:function(c,b){$clear(this.timer);
this.timer=this.hide.delay(this.options.hideDelay,this,b);this.fireForParent(c,b);},fireForParent:function(c,b){b=b.getParent();if(!b||b==document.body){return;
}if(b.retrieve("tip:enter")){b.fireEvent("mouseenter",c);}else{this.fireForParent(c,b);}},elementMove:function(c,b){this.position(c);},position:function(e){if(!this.tip){document.id(this);
}var c=window.getSize(),b=window.getScroll(),f={x:this.tip.offsetWidth,y:this.tip.offsetHeight},d={x:"left",y:"top"},g={};for(var h in d){g[d[h]]=e.page[h]+this.options.offset[h];
if((g[d[h]]+f[h]-b[h])>c[h]-this.options.windowPadding[h]){g[d[h]]=e.page[h]-this.options.offset[h]-f[h];}}this.tip.setStyles(g);},fill:function(b,c){if(typeof c=="string"){b.set("html",c);
}else{b.adopt(c);}},show:function(b){if(!this.tip){document.id(this);}this.fireEvent("show",[this.tip,b]);},hide:function(b){if(!this.tip){document.id(this);
}this.fireEvent("hide",[this.tip,b]);}});})();

/* popup */
function preView(url) {
	return popUp(url, '765px', screen.availHeight);
}

function popUp(url, width, height) {
  var w = window.open(url, 'preview', 'width=' + width + ',height=' + height + ',directories=no,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no')
  
  return false;
}


/* ContactForm */
var ContactForm = {
	init: function() {
		var form = $('contactform-form');
		if (form != null) {
			this.addOnSubmit();
		}
	},
	
	/* agb */
	addOnSubmit: function() {
		var form = $('contactform-form');
		form.addEvent('submit', function() {
			return ContactForm.validate();
		});
	},
	
	validate: function() {
		var terms_accapted = $('tx_snannouncement_pi1-terms').getProperty('checked');
		if (terms_accapted == 0) {
			alert('Sie müssen die AGB akzeptieren');
			return false;
		}
		
		return true;
	}
}


/* AnnouncementForm */
var AnnouncementForm = {
	init: function() {
		var form = $('imageupload-form');
		if (form != null) {
			this.addOnSubmit();
			
			this.addCategoryOnChange();
			this.addCategoryToolTip();
			this.changeCategory();
			
			this.addPaymentMethodOnChange();
			this.changePaymentMethod();
			
			this.addStartMethodOnChange();
			this.changeStartMethod();
		}
	},
	
	loading: function(status) {
		var display = 'none';
		if (status == true) {
			display = '';
		}
		
		$('tx_snannouncement_pi2-onsubmit').setStyle('display', display);
	},
	
	/* agb */
	addOnSubmit: function() {
		var form = $('imageupload-form');
		form.addEvent('submit', function() {
			return AnnouncementForm.validate();
		});
	},
	
	validate: function() {
		var terms_accapted = $('tx_snannouncement_pi2-terms').getProperty('checked');
		if (terms_accapted == 0) {
			alert('Sie müssen die AGB akzeptieren');
			return false;
		}
		
		this.loading(true);
		
		return true;
	},
	
	/* category */
	addCategoryOnChange: function() {
		var categories = $$('input.tx_snannouncement_pi2-announce-category');
		if (categories.length) {
			categories.each(function(item, index) {
				item.addEvent('click', function() {
					AnnouncementForm.changeCategory();
				});
			});
		}
	},
	
	addCategoryToolTip: function() {
		var categories = $$('input.tx_snannouncement_pi2-announce-category');
		if (categories.length) {
			categories.each(function(item, index) {
				if (item.get('disabled')) {
					/*var div = new Element('a', {'href': '#', 'class': 'tooltip', 'title': 'Alle kostenlos verfügbaren Inserate in dieser Rubrik wurden heute bereits genutzt. Bitte beachten Sie dazu die Kurzregeln.'})
					div.wraps(item);
					div.grab($$('label[for=' + item.get('id') + ']')[0]);*/
					var radio = $(item.get('id'));
					radio.set('title', 'Alle kostenlos verfügbaren Inserate in dieser Rubrik wurden heute von Ihrem Club oder Salon bereits genutzt. Bitte beachten Sie dazu die Kurzregeln.');
					radio.addClass('tooltip');
					var label = $$('label[for=' + item.get('id') + ']')[0];
					label.set('title', 'Alle kostenlos verfügbaren Inserate in dieser Rubrik wurden heute von Ihrem Club oder Salon bereits genutzt. Bitte beachten Sie dazu die Kurzregeln.');
					label.addClass('tooltip');
				}
				var myTips = new Tips('.tooltip');
			});
		}
	},
	
	changeCategory: function() {
		var checked = parseInt($$('input.tx_snannouncement_pi2-announce-category:checked').get('value'));
		
		switch (checked) {
			case 0:
				// Kontakte
				$('tx_snannouncement_pi2-announce-subcategory-hewantsher').setStyle('display', '');
				$('tx_snannouncement_pi2-announce-subcategory-shewantshim').setStyle('display', '');
				$('tx_snannouncement_pi2-announce-subcategory-offers').setStyle('display', 'none');
				$('tx_snannouncement_pi2-announce-subcategory-requests').setStyle('display', 'none');
				$('tx_snannouncement_pi2-announce-image').setStyle('display', '');
				break;
			case 1:
				// Immobilien
			case 2:
				// Stellen
				$('tx_snannouncement_pi2-announce-subcategory-hewantsher').setStyle('display', 'none');
				$('tx_snannouncement_pi2-announce-subcategory-shewantshim').setStyle('display', 'none');
				$('tx_snannouncement_pi2-announce-subcategory-offers').setStyle('display', '');
				$('tx_snannouncement_pi2-announce-subcategory-requests').setStyle('display', '');
				$('tx_snannouncement_pi2-announce-image').setStyle('display', 'none');
				break;
		}
	},
	
	/* payment */
	addPaymentMethodOnChange: function() {
		$$('input.tx_snannouncement_pi2-payment-method').each(function(item, index) {
			item.addEvent('change', function() {
				AnnouncementForm.changePaymentMethod();
			});
		});
	},
	
	changePaymentMethod: function() {
		var checked = parseInt($$('input.tx_snannouncement_pi2-payment-method:checked').get('value'));
		
		switch (checked) {
			case 0:
				// Telefon
			case 1:
				// Guthabenkonto
				$('tx_snannouncement_pi2-payment-couponcode').setProperty('disabled', 'disabled');
				break;
			case 2:
				// Gutschein
				$('tx_snannouncement_pi2-payment-couponcode').setProperty('disabled', '');
				break;
		}
	},
	
	/* erscheinungsdatum */
	addStartMethodOnChange: function() {
		$$('input.tx_snannouncement_pi2-start-method').each(function(item, index) {
			item.addEvent('click', function() {
				AnnouncementForm.changeStartMethod();
			});
		});
	},
	
	changeStartMethod: function() {
		var checked = parseInt($$('input.tx_snannouncement_pi2-start-method:checked').get('value'));
		
		switch (checked) {
			case 0:
				// sofort
				$('tx_snannouncement_pi2-start-day').setProperty('disabled', 'disabled');
				$('tx_snannouncement_pi2-start-month').setProperty('disabled', 'disabled');
				$('tx_snannouncement_pi2-start-year').setProperty('disabled', 'disabled');
				$('tx_snannouncement_pi2-start-hour').setProperty('disabled', 'disabled');
				$('tx_snannouncement_pi2-start-minute').setProperty('disabled', 'disabled');
				break;
			case 1:
				// am
				$('tx_snannouncement_pi2-start-day').setProperty('disabled', '');
				$('tx_snannouncement_pi2-start-month').setProperty('disabled', '');
				$('tx_snannouncement_pi2-start-year').setProperty('disabled', '');
				$('tx_snannouncement_pi2-start-hour').setProperty('disabled', '');
				$('tx_snannouncement_pi2-start-minute').setProperty('disabled', '');
				break;
		}
	}
}


/* ImageUpload */
var ImageUpload = {
	init: function() {
		var inputs = $$('#tx_snannouncement_pi2-images input[type=file]');
		if (inputs != '') {
			this.addIframe();
			this.addOnChange();
		}
	},
	
	addIframe: function() {
		var iframe = new Element('iframe', {
			'id': 'imageupload-iframe',
			'name': 'imageupload-iframe',
			'src': '',
			'class': 'semantic'
		});
		$$('body')[0].adopt(iframe);
		
		iframe.addEvent('load', function() {
			// MooTools cannot handle objects within iframes
			ImageUpload.processResponse(window.frames['imageupload-iframe'].document.body.innerHTML);
			AnnouncementForm.loading(false);
		});
	},
	
	addOnChange: function() {
		var files = $$('#tx_snannouncement_pi2-images input[type=file]');
		files.each(function(item, index) {
			item.addEvent('change', function() {
				ImageUpload.submit(this);
			});
		});
		
		var imagedelete = $$('#tx_snannouncement_pi2-images input.tx_snannouncement_pi2-announce-deleteimage');
		imagedelete.each(function(item, index) {
			item.addEvent('click', function() {
				ImageUpload.submit(this);
			});
		});
	},
	
	submit: function(element) {
		this.loading(element);
		
		var form = $('imageupload-form');
		// backup form-status
		var action = form.get('action');
		var target = form.get('target');
		
		// submit form to iframe
		var url = location.href;
		url += (url.search(/\?/) != -1 ? '&' : '?') + 'do=imageupload';
		form.set('action', url);
		form.set('target', 'imageupload-iframe');
		
		form.submit();
		this.setDisabled('disabled');
		
		// restore form-status
		form.set('action', action);
		form.set('target', target);
	},
	
	loading: function(element) {
		var key = element.get('id').match(/[0-9]+$/);
		var image = new Element('img', {
			'src': 'fileadmin/templates/main/images/in_progress.gif',
			'alt': ''
		});
		image.replaces($$('#tx_snannouncement_pi2-images img')[key]);
	},
	
	setDisabled: function(disabled) {
		var files = $$('#tx_snannouncement_pi2-images input[type=file]');
		files.each(function(item, index) {
			item.setProperty('disabled', disabled);
		});
		
		var imagedelete = $$('#tx_snannouncement_pi2-images input.tx_snannouncement_pi2-announce-deleteimage');
		imagedelete.each(function(item, index) {
			item.setProperty('disabled', disabled);
		});
	},
	
	processResponse: function(response) {
		if (response != '') {
			$('tx_snannouncement_pi2-images').set('html', response);
			this.addOnChange();
			this.setDisabled('');
		}
	}
}


/* domready */
window.addEvent('domready', function() {
	ContactForm.init();
	AnnouncementForm.init();
	ImageUpload.init();
	
	if ($$('div.textsearch').length && $$('a.textsearch').length) {
		$$('div.textsearch')[0].setStyle('opacity', '0');
		$$('a.textsearch').each(function(item, index) {
			item.addEvent('click', function(e) {
				e.stop();
				
				var search = $$('div.textsearch')[0];
				if (search.getStyle('opacity')) {
					search.tween('opacity', 0);
				}
				else {
					search.set('tween', {onComplete: function() {
						$('tx_snannouncement_pi1-textsearch').focus();
						$('tx_snannouncement_pi1-textsearch').select();
						search.set('tween', {onComplete: function() {
						}});
					}}).tween('opacity', 1);
				}
			});
		});
	}
	
	$$('.tx_macinabanners_pi1 a').each(function(item, index) {
		item.addEvent('click', function(e) { window.open(this.href, '_blank'); return false; });
	});
	$$('#werbung468x60 a').each(function(item, index) {
		item.addEvent('click', function(e) { window.open(this.href, '_blank'); return false; });
	});
});
