// Internetgirona ////////////////////////////////////////////////////////
//
//	- Modul de funcions javascript
//
//	Creat per David González 10/10/2011 | david@internetgirona.com
//		
/////////////////////////////////////////////////////////////////////////
	
	jQuery.noConflict();
	var processPost = "process.php"; // php de processos en backend
	currentTime = new Date();
	var noCache = currentTime.getTime();
// Dagonsoft  ///////////////////////////////////////////////////////////
//
//	missatges del sistema
//
/////////////////////////////////////////////////////////////////////////
	
	var alertMessage = new Array() 
	alertMessage['domainNameRequired'] = "Es necessari que escrigui algun nom de domini.";
	alertMessage['domainExtensionRequired'] = "Es necessari que seleccioni alguna extensió.";
	alertMessage['domainSelectRequired'] = "Es necessari que seleccioni algun domini.";
	alertMessage['domainDeleteConfirm'] = "Segur que vol eliminar el domini: ";
	alertMessage['orderConditions1'] = "Ha d'acceptar les condicions generals de prestació de servei.";
// Dagonsoft  ///////////////////////////////////////////////////////////
//
//	jQuery - Accions dels botons
//
/////////////////////////////////////////////////////////////////////////

	function ReplaceAll(source,strToFind,strToReplace){
		var temp = source;
		var index = temp.indexOf(strToFind);	
		while(index != -1){
			temp = temp.replace(strToFind,strToReplace);
			index = temp.indexOf(strToFind);
		}
		return temp;	
	}

	jQuery(document).ready(function() {	
		///////////////////////////////////////////
		// cerca de dominis
		///////////////////////////////////////////		
		jQuery('#names').mousedown(function(){
				if(jQuery('#names').val() == 'Escrigui un o varis noms de domini per registrar')
					jQuery('#names').val('')
				jQuery('#domain_search').removeAttr("disabled");
			});		
		jQuery('#domain_search').live('click', function() {
			// edicio del texte entrat		
			if(jQuery('#names').val() == '') alert(alertMessage['domainNameRequired']);
			jQuery('#names').val(jQuery('#names').val().toLowerCase()); // minuscules
			jQuery('#names').val(ReplaceAll(jQuery('#names').val()," ", "")); // elimina espais
			jQuery('#names').val(ReplaceAll(jQuery('#names').val(),".", "")); // elimina punts
			jQuery('#names').val(ReplaceAll(jQuery('#names').val(),",", "")); // elimina comes
			jQuery('#names').val(ReplaceAll(jQuery('#names').val(),";", "")); // elimina punt i coma			
			var names = jQuery('#names').val().split('\n');// muntem un array
			var domains = "";
			jQuery('.extension_int:checked,.extension_reg:checked').each(function(index) {	// validem extensions			
				var tld = jQuery(this).val();
				jQuery.each(names, function(f, v){
					 if(v!='') domains+= v + "." + tld + ";";
 				});
			});
			if(domains == '') alert(alertMessage['domainExtensionRequired']);
			else{
				jQuery('.domain_list_wait').show();
				jQuery('.domain_list').html('');
				domains = domains.substr(0,domains.length - 1);// eliminem ultim caracter
				jQuery('#domain_search').attr("disabled", "true");
				jQuery('.domain_list').show();
				
				jQuery.post(processPost, {"action":"checkDomains","domains":domains,"no-Cache":noCache},
					function(data){
						jQuery('.domain_list_wait').hide();
						jQuery('.domain_list').html(data);
						jQuery('#domain_search').removeAttr("disabled");
					});
			}//end if
		});			
		///////////////////////////////////////////
		// seleccionar tots els dominis
		///////////////////////////////////////////			
		jQuery('.select_all_domains').live('click', function() {							
			if(jQuery(this).is(':checked')){
				jQuery('.domain_ok').attr('checked', true);
				jQuery('#register_domain').removeAttr("disabled");
			}else{
				jQuery('.domain_ok').attr('checked', false);
				jQuery('#register_domain').attr("disabled", "true");
			}
		});	
		///////////////////////////////////////////
		// seleccionar totes les extensions
		///////////////////////////////////////////			
		jQuery('#all_int_tld').live('click', function() {							
			if(jQuery(this).is(':checked')){
				jQuery('.extension_int').attr('checked', true);
			}else{
				jQuery('.extension_int').attr('checked', false);
			}
		});	
		jQuery('#all_reg_tld').live('click', function() {							
			if(jQuery(this).is(':checked')){
				jQuery('.extension_reg').attr('checked', true);
			}else{
				jQuery('.extension_reg').attr('checked', false);
			}
		});	
		///////////////////////////////////////////
		// registre de dominis
		///////////////////////////////////////////			
		jQuery('.domain_ok').live('click', function() {
				if(jQuery(".domain_ok:checked").length > 0)
					jQuery('#register_domain').removeAttr("disabled");
				else
					jQuery('#register_domain').attr("disabled", "true");
			});
		jQuery('#register_domain').live('click', function() {							
			jQuery('.domain_ok:checked').each(function(index) {	// validem dominis seleccionats			
				var domain = jQuery(this).val();
				jQuery.post(processPost,{"action":"buyDomain","domain":domain,"no-Cache":noCache});	
			});			
			var n = (jQuery('.domain_ok:checked').length * 100);
			jQuery('#register_domain').attr("disabled", "true");
			setTimeout(function(){window.location="dominis/cistella";}, n);
		});	
		///////////////////////////////////////////
		// eliminar domini de la llista
		///////////////////////////////////////////	
		jQuery('.domain_delete').live('click', function(event) {
			event.stopPropagation();
			var domain = jQuery(this).attr('domain');
			if(confirm(alertMessage['domainDeleteConfirm']+domain)){
				jQuery.post(processPost, {"action":"deleteBuyDomain","domain":domain,"no-Cache":noCache},
					function(data){
						window.location="dominis/cistella";
						//jQuery('.col_center').html(data);
					});
			}
		});		
		///////////////////////////////////////////
		// selector d'opcions
		///////////////////////////////////////////	
		jQuery('.domain_option_list').live('change', function(event) {
			jQuery.post(processPost, {"action":"changeOptionBuyDomain",
						"domain":jQuery(this).attr('domain'),
						"option":jQuery(this).val(),
						"no-Cache":noCache},
						function(data){
							//jQuery('.col_center').html(data);
							window.location="../dominis/cistella";
						});
		});	
		///////////////////////////////////////////
		// link login
		///////////////////////////////////////////	
		jQuery('#link_login').live('click', function(event) {
			
			alert('Usuari no reconegut');
		});	
		jQuery('#link_new_user').live('click', function(event) {
			
			alert('No disponible');
		});		
		///////////////////////////////////////////
		// confirma compra dominis
		///////////////////////////////////////////	
		jQuery('#confirm_buy_domains').live('click', function() {
			window.location="../dominis/dades_propietari";
		});	
		///////////////////////////////////////////
		// enviar dades propietari
		///////////////////////////////////////////	
		jQuery('#confirm_owner_data').live('click', function(){			
			var err = "";// revisar dades del dormulari
			jQuery('.input_box_required').each(function(index) {//rastrajem camps obligatoris			
				var value = jQuery(this).val();
				var name = jQuery(this).parent().prev().prev().html();
				if(value == ''){// es un camp vuit	
					err+= "El camp " + name + " és una dada necessaria.\n";
					jQuery(this).parent().parent().addClass('form_label_error');
				}else if(name == '* E-mail' && !validateEmail(value)){ //es un email no valid
					err+= "El camp " + name + " no és un e-mail vàlid.\n";
					jQuery(this).parent().parent().addClass('form_label_error');				
				}else if(name == '* Teléfon' && !validatePhone(value)){ //es un telefon no valid
					err+= "El camp " + name + " no és un teléfon vàlid.\n";
					jQuery(this).parent().parent().addClass('form_label_error');				
				}else{
					jQuery(this).parent().parent().removeClass('form_label_error');
				}				
			});	
			if(err != '') alert(err);
			else{ // enviem les dades
				jQuery('#form_owner_data').submit();
			}
		});			
		///////////////////////////////////////////
		// enviar dades DNS
		///////////////////////////////////////////	
		jQuery('#send_dns_data').live('click', function(){			
			var err = "";// revisar dades del dormulari
			jQuery('.input_box_required').each(function(index) {//rastrajem camps obligatoris			
				var value = jQuery(this).val();
				var name = jQuery(this).parent().prev().prev().html();
				if(value == ''){// es un camp vuit	
					err+= "El camp " + name + " és una dada necessaria.\n";
					jQuery(this).parent().parent().addClass('form_label_error');
				}else{
					jQuery(this).parent().parent().removeClass('form_label_error');
				}				
			});	
			if(err != '') alert(err);
			else{ // enviem les dades
				jQuery('#form_dns_data').submit();
			}
		});	
		///////////////////////////////////////////
		//confirmar comanda
		///////////////////////////////////////////	
		jQuery('#confirm_order').live('click', function(){
			var mssg = "";
			if(jQuery('#conditions_1:checked').val() == null)														
				mssg+= alertMessage['orderConditions1']+"\n";
			if(mssg!='') alert(mssg);
			else {
				if(jQuery('#pay_option_2:checked').val() == 'credit_card')
					 window.location="../dominis/pagar_tarjeta_credit";
				else if(jQuery('#pay_option_1:checked').val() == 'transfer') 
					window.location="../dominis/pagar_transferencia";					
			}
		});	
	});// end jQuery
// Internetgirona ///////////////////////////////////////////////////////
//
//
//
/////////////////////////////////////////////////////////////////////////
	function validateEmail(email) { 
	   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	   if(reg.test(email) == false) return false;
	   else return true;
	}// end function
// Internetgirona ///////////////////////////////////////////////////////
//
//
//
/////////////////////////////////////////////////////////////////////////
	function validatePhone(number) {
		var stripped = number.replace(/[\(\)\.\-\ ]/g, '');    
		if (isNaN(parseInt(stripped))) return false
		else if (stripped.length < 9) return false;
		return true;
	}// end function
