/* Copyright (c) 2006 Mathias Bank (http://www.mathias-bank.de)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) 
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 * 
 * Thanks to Hinnerk Ruemenapf - http://hinnerk.ruemenapf.de/ for bug reporting and fixing.
 *
 * Returns get parameters.
 *
 * If the desired param does not exist, null will be returned
 *
 * @example value = $.getURLParam("paramName");
 */

$(document).ready(function() {
	/**
	 * TABS WITH AJAX
	 */
	var getUrlParam = function(strParamName){
		var strReturn = "";
		var strHref = window.location.href;
		var bFound=false;
		
		var cmpstring = strParamName + "=";
		var cmplen = cmpstring.length;
		
		if ( strHref.indexOf("?") > -1 ){
			var strQueryString = strHref.substr(strHref.indexOf("?")+1);
			var aQueryString = strQueryString.split("&");
			
			for ( var iParam = 0; iParam < aQueryString.length; iParam++ ){
				if (aQueryString[iParam].substr(0,cmplen)==cmpstring){
					var aParam = aQueryString[iParam].split("=");
					strReturn = aParam[1];
					bFound=true;
					break;
				}
			}
		}
		if (bFound==false) return null;
		return strReturn;
	};
	
	
	var tabFormHandler = function(event, ui) {
		var insertData = function(response){
			$(ui.panel).empty().append($(response).find('div#content > *:gt(0)'));
			tabFormHandler(null, ui);
		};
		$(ui.panel).find("form").submit(function(){
			var form = $(this);
			$.post(form.attr("action"), form.serialize(), insertData, "html");
			return false;
		});
	};
	
	$('.tabs-container ul.tabs-nav li a').each(function(){
		var a = $(this);
		a.attr('href','ajaxtab/'+a.attr('href'));
	});
	
	
	$.ajaxSetup({
		cache: false
	});
	
	$('.tabs-container').tabs({
		ajaxOptions: {
				dataType: 'html',
				dataFilter: function(data, type){
					return $(data).find('div#content > *:gt(0)');
				},
				cache: false,
				success: function(){
					$("#preloader").hide();
				}
		},
		select: function(event, ui){
			$(ui.panel).parent('div.tabs-container').find('div.ui-tabs-panel:not(ui-tabs-hide)').addClass('ui-tabs-hide');
			$("#preloader").show();
		},
		load:tabFormHandler,
		spinner:'',
		selected: -1
	});
	
	var selectedTabIndex = 0;
	if(window.location.hash) {
		selectedTabIndex = window.location.hash;
	}
	
	//var selectedTabIndexID = selectedTabIndex.match(/[0-9][0-9]{1,2}/);
	var param = getUrlParam('selectedTab');
	if(param) {
		$('.tabs-container').tabs('select', param);
	} else {
		$('.tabs-container').tabs('select', selectedTabIndex);
	}
    
	
	// Add a special CSS-class
	$('.tabs-container li:last').addClass('last');
	
	// Show/Hide JS and JS-free parts
	$('.no-js').hide();
	$('.with-js').removeClass('with-js');
	
	
	/**
	 * DROPDOWN MENU
	 */
	// Function to load content from selected page
	function onSelectChange() {
		var selected = $('.dropdown option:selected');
		if(selected.val() != 0) {
			$("#result").empty();
			$("#preloader-dropdown").show();
			var result = $.ajax({
				url: selected.val(),
				cache: false,
				dataFilter: function(data, type){
					return $(data).find('div#content > *:gt(0)');
				},
				success: function(html){
					$("#preloader-dropdown").hide();
					$("#result").empty();
					$("#result").append(html);
				}
			});
		}
	}
	$('.dropdown select').change(onSelectChange);
	
	
	/**
	 * FAQ
	 */
	jQuery.fn.faq = function(tog) {
		return this.each(function () {
			var dl = $(this).addClass('faq');
			var dt = $('dt', dl).css('cursor', 'pointer').addClass('faqClosed').click(function(e){
				$(this).toggleClass('faqClosed').toggleClass('faqOpen');
				var sc = false;
				dt.each(function(){
					if ($(this).hasClass('faqClosed')) sc = true;
				});
				$(this).next().slideToggle();
			});
		});
	};
	$('.tx_efaq-pi1').faq();



	/**
	 * Download Dropdown
	 */
	 $("form.download").submit(function(){
		if($(this).find("select").val() != '') {
			this.action = $(this).find("select").val();
			this.target = "_blank";
		}
	 });
	 
	 /*$("form.download select").change(function(){
	 	if(this.selectedIndex > 0) {
		 	this.form.action = this.value;
			
			fileExtension = getFileExtension(this.value)
			//console.log(fileExtension);
			
			// Open in a new Window only for not IE Browser
			if(!($.browser.msie && $.browser.version === "8.0") || ($.browser.msie && $.browser.version === "8.0" && fileExtension != 'doc') ) {
				this.form.target = "_blank";
			} else {
				this.form.target = "_self";
			}
			this.form.submit();
		 }
	 });*/



	 /**
	 * Extract the file extension out of a given URL
	 */
	 var getFileExtension = function(urlPart) {
		linkParts = urlPart.split('/');
		linkPartsCount = linkParts.length;
		
		fileParts = linkParts[linkPartsCount-1].split('.');
		filePartsCount = fileParts.length;
		
		fileExtension = fileParts[filePartsCount-1];
		
		return(fileExtension);
	 };
	 

	/**
	 * Clear Searchfield
	 */

	// initialize class clearField for clear/set defaultValue in input text in the searchbox
	$('.clearField').clearField();

	// [Replace this comment: initalize an other class]

	// [Replace this comment: initalize an other class]

});


/**
 * jQuery-Plugin "clearField"
 *
 * @version: 1.0, 31.07.2009
 *
 * @author: Stijn Van Minnebruggen
 *          stijn@donotfold.be
 *          http://www.donotfold.be
 *
 * @example: $('selector').clearField();
 * @example: $('selector').clearField({ blurClass: 'myBlurredClass', activeClass: 'myActiveClass' });
 *
 */

(function($) {

jQuery.fn.clearField = function(settings) {

	/**
	 * Settings
	 *
	 */

	settings = jQuery.extend({
		blurClass: 'clearFieldBlurred',
		activeClass: 'clearFieldActive'
	}, settings);


	/**
	 * loop each element
	 *
	 */

	jQuery(this).each(function() {

		/**
		 * Set element
		 *
		 */

		var el = jQuery(this);


		/**
		 * Add rel attribute
		 *
		 */

		if(el.attr('rel') == undefined) {
			el.attr('rel', el.val()).addClass(settings.blurClass);
		}


		/**
		 * Set focus action
		 *
		 */

		el.focus(function() {

			if(el.val() == el.attr('rel')) {
				el.val('').removeClass(settings.blurClass).addClass(settings.activeClass);
			}

		});


		/**
		 * Set blur action
		 *
		 */

		el.blur(function() {

			if(el.val() == '') {
				el.val(el.attr('rel')).removeClass(settings.activeClass).addClass(settings.blurClass);
			}

		});


	});

	return jQuery;

};

})(jQuery);


/**
 * jQuery-Plugin "clearField"
 *
 * @version: 1.0, 31.07.2009
 *
 * @author: Stijn Van Minnebruggen
 *          stijn@donotfold.be
 *          http://www.donotfold.be
 *
 * @example: $('selector').clearField();
 * @example: $('selector').clearField({ blurClass: 'myBlurredClass', activeClass: 'myActiveClass' });
 *
 */
(function($){jQuery.fn.clearField=function(b){b=jQuery.extend({blurClass:'clearFieldBlurred',activeClass:'clearFieldActive'},b);jQuery(this).each(function(){var a=jQuery(this);if(a.attr('rel')==undefined){a.attr('rel',a.val()).addClass(b.blurClass)}a.focus(function(){if(a.val()==a.attr('rel')){a.val('').removeClass(b.blurClass).addClass(b.activeClass)}});a.blur(function(){if(a.val()==''){a.val(a.attr('rel')).removeClass(b.activeClass).addClass(b.blurClass)}})});return jQuery}})(jQuery);

