/* Componente compra de dominios - DomainPurchase.cs */

function JSObj_domain_purchase()
{
	this.posId = '';

	this.phoneNumberInternationalFormat = function (number) {
		// Añade el código internacional de España al número de teléfono.
		number = "+34." + number;
	};
	
	// Recarga la posición
	this.reload = function () {
		var objReloader = new WbePositionReloader();
		objReloader.posId = this.posId;
		objReloader.pageId = this.pageId;
		objReloader.reload();
	};
	
	this.submitInmediaFormSearchDomain = function (page) {
		// Envia el formulario tras la validación de los campos.
		var oNameElem = document.getElementById('textdomain');
		if (!oNameElem) oNameElem = document.getElementById('textdomain_' + this.posId);
		var domainName = oNameElem.value;
		var re = new RegExp("^[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])");

		if (domainName != '' && domainName !='escribe tu dominio' && domainName.match(re))
		{
			
			var arraySelected = new Array();
			var j = 0;
					
			// Comprobación de la cadena introducida.
			var index = 0;
			if (domainName.charAt(3) == '.') {
				index = 4;
			}
			if (domainName.charAt(4) == ':') {
				index = 7;
			}
			
			var elem = document.InmediaFrm.chk;
			// Opción para checkbox múltiples.
			if (elem) {
				if (elem.length) {
					for (var i = 0; i < elem.length; i++)  {	
						if (elem[i].checked) {
							arraySelected[j] = elem[i].value;
							j++;
						}
					} // for i
				}
			} else {
				// Opción para hidden
				if (document.InmediaFrm.hdn_tipo) {
					var oElemTipo = document.InmediaFrm.hdn_tipo;
					arraySelected[j] = oElemTipo.value;
				} else {
					// Opción para select.
					var oElemTipo = document.InmediaFrm.tipo;
					if (!oElemTipo) oElemTipo = eval('document.InmediaFrm.tipo_' + this.posId)
					elem = oElemTipo.options[oElemTipo.selectedIndex].value;
					arraySelected[j] = elem;
				}
			}
			
			if (arraySelected.length==0) {
				alert("Debe seleccionar un dominio");
				return;
			}
			var oAjax = new WBE_AjaxClass();
			oAjax.clear();
			oAjax.addPostParameter("domainName", domainName);
			oAjax.addPostParameter("domainSelected", arraySelected);
			oAjax.addPostParameter("domainNumber", arraySelected.length);
			oAjax.addPostParameter("nextPage", 2);
			oAjax.addPostParameter("charNumber", index);
			oAjax.throwEventXML("domain_provider_bean");
			if (page == "main") {
				document.location.href='dominios_43_compra.html';
			} else { 
				if (page) {
					document.location.href=page;
				} else { 
					document.location.reload();
				}
			}
		} 
		else 
		{
			if (document.getElementById('espera')) {
				document.getElementById('espera').style.display = 'none';
				document.getElementById('busqueda').style.display = '';
			}
			alert("Introduzca un valor apropiado para la búsqueda de dominios"); 
			return; 
		}	
	};
	
	this.submitInmediaFormRegisterDomain = function () {

		var arraySelected = new Array();
		var j = 0;
		
		var elem = document.InmediaFrm.sel;
		
		if (elem.length) {
			for (var i = 0; i < elem.length; i++)  {	
				if (elem[i].checked) {
					arraySelected[j] = elem[i].value;
					j++;
				}
			} // for i
		}
		if (arraySelected.length==0) {
			alert("Debe seleccionar un dominio");
			return;
		}
		var oAjax = new WBE_AjaxClass();
		oAjax.clear();
		oAjax.addPostParameter("domainSelected", arraySelected);
		oAjax.addPostParameter("nextPage", 3);
		oAjax.throwEventXML("domain_selection");
		this.reload();	
	};
	
	this.submitInmediaFormDelSelection = function (id) {

		
		var oAjax = new WBE_AjaxClass();
		oAjax.clear();
		oAjax.addPostParameter("domainDeleted", id);
		oAjax.addPostParameter("nextPage", 3);
		oAjax.throwEventXML("domain_selection_del");
		this.reload();	
	};
};

/* Edición del componente */

function JSObj_domain_purchase_edit()
{
	this.posId = 1;
	this.compId = 1;
	this.parentPosId = 1;
	this.varName = '';
	this.lngId = 'es';

	// Oculta todos los campos de formulario SELECT por el problema que tiene el IE. (como en el back azul)
	this.hideSelectBoxes = function () {
		for(var i = 0; i < document.forms.length; i++) {
			for(var e = 0; e < document.forms[i].length; e++){
				if(document.forms[i].elements[e].tagName == "SELECT")
					document.forms[i].elements[e].style.visibility="hidden";
			} // for e
		} // for i
	};
	
	// Muestra todos los campos de formulario SELECT por el problema que tiene el IE. (como en el back azul)
	this.displaySelectBoxes = function () {
		for(var i = 0; i < document.forms.length; i++) {
			for(var e = 0; e < document.forms[i].length; e++){
				if(document.forms[i].elements[e].tagName == "SELECT")
					document.forms[i].elements[e].style.visibility="visible";
			} // for e
		} // for i
	};
	
	this.save = function () {
		window.parent.objLoading.showWindow();
		this.hideSelectBoxes();
		setTimeout(this.varName + '.save2();', 0);
	}

	this.save2 = function () {
		var objConfig = new WBEConfigMgr();
		objConfig.posId = this.posId;
		objConfig.compId = this.compId;
		objConfig.cache_delete_prefix = '|wbe/xsl.domain_purchase.' + this.posId + '|';
		
		objConfig.saveConfig();
	
		var objReloader = new WbePositionReloader();
		objReloader.posId = this.parentPosId;
		objReloader.reload();

		window.parent.___wbeADMIN.hidePopUp();
		window.parent.objLoading.hideWindow();
		this.displaySelectBoxes();
	};
};

