$(function() {

	// Add target blank links to anchors with external rel attribue
	$('a[rel=external]').attr('target', '_blank');

	// Automatically add link icons if available	
	$('.contents a').each(function() {
		
		var target = $(this).attr('href');
		var ext_array = target.split('.');
		
		if(ext_array.length > 1) {

			var icon = false;
			var ext = ext_array[ext_array.length-1];
			
			switch(ext) {
				
				case 'pdf': icon = 'ss_page_white_acrobat'; break;
				case 'xls': icon = 'ss_page_white_excel'; break;
				case 'doc': icon = 'ss_page_white_word'; break;
				case 'jpg': icon = 'ss_image'; break;
				case 'jpeg':  icon = 'ss_image'; break;
				case 'png':  icon = 'ss_image'; break;
				case 'gif':  icon = 'ss_image'; break;
				default: icon = false;
			}

			if(icon !== false) {
				
				$(this).addClass('ss_sprite ' + icon);
			}
		}
	});
	
	setFlashFb('http://viewer.fsi-viewer.com/baur5/');
});

/**
 * Set given flash target for fancybox
 * 
 * @param {String} url
 * @return {Boolean}
 */
function setFlashFb(url) {
	
	$('a[href^="' + url + '"]').fancybox({
		width: 791,
		height: 695,
		type: 'swf',
		autoScale: false
	});
	
	return true;
}

/**
 * Add Child Widget
 */
addChild = {
	
	init: function(elm) {
		
		this.addition = 2;
		this.elm = $('#' + elm);
		this.container = $('#children');
		this.initListeners();
	},
	
	initListeners: function() {
		
		var that = this;
		this.elm.click(function(e) {
			
			that.addChild();
		});
	},
	
	addChild: function() {

		inner = '';
		inner += '<div id="contact_salutation_child_' + this.addition + '" class="salutation container">';
		inner += '<div class="input select">';
		inner += '<select name="geschlecht_kind_' + this.addition + '" id="gender_child_' + this.addition + '">';
		inner += '<option value="">Geschlecht</option>';
		inner += '<option value="m">männlich</option>';
		inner += '<option value="w">weiblich</option>';
		inner += '</select>';
		inner += '</div>';
                
		inner += '<div class="input">';
		inner += '<label for="name_child_' + this.addition + '">Vorname</label>';
		inner += '<input type="text" name="name_kind_' + this.addition + '" id="name_child_' + this.addition + '" />';
		inner += '</div>';
		inner += '</div>';

		inner += '<div id="birthday_child_' + this.addition + '" class="input">';
		inner += '<label for="birthday_day_child_' + this.addition + '">Geburtsdatum<br /><span class="hint">(Tag, Monat, Jahr)</span></label>';
		inner += '<input type="text" name="geburtstag_kind_tag_' + this.addition + '" id="birthday_day_child_' + this.addition + '" class="birthday_day" maxlength="2" />&nbsp;';
		inner += '<input type="text" name="geburtstag_kind_monat_' + this.addition + '" id="birthday_month_child_' + this.addition + '" class="birthday_month" maxlength="2" />&nbsp;';
		inner += '<input type="text" name="geburtstag_kind_jahr_' + this.addition + '" id="birthday_year_child_' + this.addition + '" class="birthday_year" maxlength="4" />&nbsp;';
		inner += '</div>';

		$('<div id="child_' + this.addition + '" class="child"></div>').html(inner).appendTo(this.container);
		this.addition++;
	}
	
};

/**
 * Set brand listeners
 * 
 * @return
 * @example $(function() { showBrands(); });
 */
function showBrands() {
	
	var links = $('.brand-chooser li span');
	var brands = $('.brandlist');
	var activeclass = 'active';
	var brandlistprefix = '.brand-';
	
	$('.brand-chooser li span').click(function() {
		
		var brandchar = $(this).html();
		links.removeClass(activeclass);
		$(this).addClass(activeclass);
		brands.hide();
		$(brandlistprefix + brandchar).show();
	});
}

// Add german translation for validation
jQuery.validator.messages = {
	required: "Dies ist ein Pflichtfeld.",
	remote: "Bitte korrigieren Sie dieses Feld.",
	email: "Bitte geben Sie eine gültige E-Mail-Adresse ein.",
	url: "##validation_url##",
	date: "##validation_date##",
	dateISO: "##validation_dateISO##",
	number: "##validation_number##",
	digits: "##validation_digits##",
	creditcard: "##validation_creditcard##",
	equalTo: "##validation_equalTo##",
	accept: "##validation_accept##",
	maxlength: $.validator.format("##validation_maxlength##"),
	minlength: $.validator.format("##validation_minlength##"),
	rangelength: $.validator.format("##validation_rangelength##"),
	range: $.validator.format("##validation_range##"),
	max: $.validator.format("##validation_max##"),
	min: $.validator.format("##validation_min##")
}

