// -----------------------------------------------------------------------------------
// JQUERY VALIDATION -  GENERAL USE
// -----------------------------------------------------------------------------------
jQuery.extend(jQuery.validator.messages, {
        required: "verplicht",
        remote: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        email: "ongeldig e-mailadres",
        url: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        date: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        dateISO: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>.",
        number: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>.",
        digits: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        creditcard: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        equalTo: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        accept: "&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>",
        maxlength: jQuery.validator.format("bericht is te lang"),
        minlength: jQuery.validator.format("&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>"),
        rangelength: jQuery.validator.format("&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>"),
        range: jQuery.validator.format("&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>."),
        max: jQuery.validator.format("&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>"),
        min: jQuery.validator.format("&nbsp;<img src='/images/icon_alert_red.gif' border='0' align='absMiddle'>")
});

/*
 * Localized default methods for the jQuery validation plugin.
 * Locale: NL
 */
jQuery.extend(jQuery.validator.methods, {
	date: function(value, element) {
		return this.optional(element) || /^\d\d?[\.\/-]\d\d?[\.\/-]\d\d\d?\d?$/.test(value);
	},
	number: function(value, element) {
		return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(value);
	}
});

// -----------------------------------------------------------------------------------


// -----------------------------------------------------------------------------------
// UNIVERSAL CHECK IF OBJECT EXISTS
// -----------------------------------------------------------------------------------
function checkObject(jID) { 
	try { var o = document.getElementById(jID); if (o) { return true } else { return false }
	} catch (excp) { return false }
}


// -----------------------------------------------------------------------------------
// JQUERY INITS
// -----------------------------------------------------------------------------------
 $(document).ready(function(){ 

	// FAQ page, were using dummy classed for jquery
	$('#overview_faq li').click(function(){	
			// hide current showing
			$("#overview_faq li").removeClass('menu_selected');
			$("#overview_faq li div.showed").slideUp('fast',function(){ $(this).removeClass('showed');  });
			// mark selected with class
			$(this).addClass('menu_selected');
			$(this).removeClass('do_hover');
			$("div", this).addClass('tobeshowed');
			$("#overview_faq li div.tobeshowed").slideDown('fast',function(){ $(this).removeClass('tobeshowed'); $(this).addClass('showed'); });		
	});

	$("#overview_faq li").hover(
		function() { if ($(this).hasClass('is_opened')!=true)	{ $(this).addClass('do_hover'); } },
		function() { $(this).removeClass('do_hover'); }
	);

	$("#content_submenu_cnt li").hover(
		function() { if ($(this).hasClass('is_opened')!=true && $(this).hasClass('menu_selected')!=true)	{ $(this).addClass('do_hover'); } },
		function() { $(this).removeClass('do_hover'); }
	);


	// form buttons
	$('.form_button').hover( function(){ $(this).addClass('form_button_hover'); },					// A mouseover
					               function(){ $(this).removeClass('form_button_hover'); });		// A mouseout

	$('.form_text').focus( function(){ $(this).addClass('form_focus'); });
	$('.form_text').blur( function(){ $(this).removeClass('form_focus'); });

	$('.form_select').focus( function(){ $(this).addClass('form_focus'); });
	$('.form_select').blur( function(){ $(this).removeClass('form_focus'); });

	$('.form_textarea').focus( function(){ $(this).addClass('form_focus'); });
	$('.form_textarea').blur( function(){ $(this).removeClass('form_focus'); });


	// SEARCH FIELDS
	var jInput_Search = 'Zoekterm';
	$('#q_id').val(jInput_Search);
	$('#q_id').focus(function(){	if ($(this).val()==jInput_Search) { $(this).val(''); }  });
	$('#q_id').blur(function(){		if ($(this).val()=='') { $(this).val(jInput_Search); }  });
	$("#search_form_id").submit(function(){  if (($('#q_id').val()==jInput_Search) || ($('#q_id').val()=='')) {  return false; }  });


	// DOMEINSEARCH
	var jInput_Domain = 'Uw domeinnaam';
	if ($('#domain_id').val()=='') { $('#domain_id').val(jInput_Domain); }

	$('#domain_id').focus(function(){	if ($(this).val()==jInput_Domain) { $(this).val(''); }  });
	$('#domain_id').blur(function(){		if ($(this).val()=='') { $(this).val(jInput_Domain); }  });

	$("#domain_form").submit(function(){  
			var jDomain = $('#domain_id').val();
			if ((jDomain!=='') && (jDomain!==jInput_Domain)) {  
				if (jDomain.indexOf('.')>-1) { jDomain = jDomain.substring(0, jDomain.indexOf('.')); }
				self.location.href='/9365/domein-controle/'+jDomain; 
				return false;  }
			else { self.location.href='/9365/domeinnamen'; return false;  }
	});


	// LINKS IN CONTENT
	$('#content_text_cnt A').each( function() { 
		if ($(this).attr('href').indexOf('javascript:')==-1) { $(this).attr('title', 'url: ' + $(this).attr('href')); }
		else { $(this).attr('title', 'link naar: ' + $(this).html());  }

		if ($(this).attr('target').length!==0) { $(this).addClass('do_new_window'); }
	}); 

	// TABLE ROWS IN CONTENT
	$("#content_text_cnt tr").hover(
		function() { $(this).addClass('do_hover'); },
		function() { $(this).removeClass('do_hover'); }
	);

});



// -----------------------------------------------------------------------------------
// CHECK DOMAINNAME AVAILIBILITY
// -----------------------------------------------------------------------------------
function check_domain_availibility(jDomain, jExt) {
	var jURL = '/forms/form-domain-check.asp';
	var jExtID = jExt.replace('.','_');

	$('#domain_'+jExtID).html('Bezig met controle..');

	$.ajax({
		type: "POST",
		url: jURL,
		dataType: "text",
		data: 'domain='+jDomain+'.'+jExt,
		timeout: 30000,
		cache: false,
		success: function(html){ 
			if (html=='("FREE")') { $('#domain_'+jExtID).html('Vrij'); }
			else if (html=='("REGISTERED")') { $('#domain_'+jExtID).html('Bezet'); }
			else { $('#domain_'+jExtID).html('Er is een storing'); }
		},
        error: function (xhr, ajaxOptions, thrownError){ 
			if (thrownError==undefined) { $('#domain_'+jExtID).html('Er is een storing (2)');  }
		} 
	 });

}



