var sarissaStr = '<scr'+'ipt type="text/javascr'+'ipt" src="js/sarissa/sarissa.js"></scr'+'ipt>'; 
document.write(sarissaStr);
					       
var $languageStr = '<scr'+'ipt type="text/javascr'+'ipt" src="/servlets/dype/vip/js/language.xml"></scr'+'ipt>';
		
/* Ruta antigua ...     servlets/dype/vip/js/     */

document.write($languageStr);

var DY = new Object();

var $popupStr = '<scr'+'ipt type="text/javascr'+'ipt" src="js/popup.js"></scr'+'ipt>';
document.write($popupStr);


var _RESPONSEHOLDER = null;
var _REMOTEREQUESTCALLBACK = null;
var _REGISTERCALLBACK = null;
var _REMEMBERPASSWORDCALLBACK = null;
var _LOGINCALLBACK = null;

var _VIPWINDOW;


/******************************/
/****RECORDATORIO CONTRASEÑA***/
/******************************/

function _vipRemembered(){
    _VIPWINDOW.close();
}

function _rememberLogin(callback){
	_REMEMBERPASSWORDCALLBACK = (callback) ? callback : _vipRemembered;

	var url = URLS['recordar'];
	
	var useScroll = (DY.screenHeight < 900) ? 1 : 0;
	
	_VIPWINDOW = DY.openWindow(url, null, 700, 560, null, null, useScroll);
	return _VIPWINDOW;
}

function catchLoginRemembered(){
	if (_REMEMBERPASSWORDCALLBACK) _REMEMBERPASSWORDCALLBACK('OK');	
}


/******************************/
/*********REGISTRO*************/
/******************************/
function _openRegister(action, callback, type, skipintro){
	_REGISTERCALLBACK = callback;
	var url = (skipintro) ? URLS['registro'] : URLS['intro'];
	
	if(action) {
		url += '?action='+action;
	}
	else {
		url += '?action=alta.generica';
	}
	
	if (type){
		url += '&type='+type;
	}
	
	var useScroll = (DY.screenHeight < 900) ? 1 : 0;
	
	_VIPWINDOW = DY.openWindow(url, null, 700, 560, null, null, useScroll);
	
	return _VIPWINDOW;	
}

function catchRegisterDone(usr, pwd){
	if (_REGISTERCALLBACK) _REGISTERCALLBACK(usr, pwd);	
}

/******************************/
/*********LOGIN*************/
/******************************/
function _openLogin(action, callback, type){
	_LOGINCALLBACK = callback;
	var url = URLS['showlogin'];
	
	if(action) {
		url += '?action='+action;
	}
	else {
		url += '?action = alta.generica';
	}
	
	if(type) {
		url += '&type='+type;
	}
	
	var useScroll = (DY.screenHeight < 900) ? 1 : 0;
	
	_VIPWINDOW = DY.openWindow(url, null, 700, 560, null, null, useScroll);
	
	return _VIPWINDOW;	
}

function catchLoginDone(usr, pwd){
	if (_LOGINCALLBACK) _LOGINCALLBACK(usr, pwd);	
}


/******************************/
/******LOGIN DESDE PÁGINA******/
/******************************/
function setupLogin(username, password, accion, callback){

    var _url = URLS['login'];
    
    //Dejamos por defecto el callback que ten?a el sistema antiguo
    _REMOTEREQUESTCALLBACK = (callback) ? callback : atiendeValidacionVIP;
    
    var str = 'username='+escape(username)+'&password='+escape(password);
    if (accion) str += '&accion='+accion;
    else str += '&accion=login.generico';
    
	sendRemoteRequest(_url, str);
}


/******************************/
/*****PETICI?N MUESTRAS********/
/******************************/
function setupSampleRequest(username, password, accion, callback){

    var _url = URLS['solicitarmuestra'];
    
    //Dejamos por defecto el callback que ten?a el sistema antiguo
    _REMOTEREQUESTCALLBACK = (callback) ? callback : formularioGracias;    

    var str = 'username='+username+'&password='+password+'&accion='+accion;
	sendRemoteRequest(_url, str);		
}

/******************************/
/*********LOGIN EPC************/
/******************************/
function _setEPCLogin(callback){
    var _url = URLS['loginepc'];
    _REMOTEREQUESTCALLBACK = (callback) ? callback : catchEPCLoginResponse;    
    
    var str = '';
	sendRemoteRequest(_url, str);	

}

function catchEPCLoginResponse(code){

}

/******************************/
/*****FUNCIONES COMUNES********/
/******************************/

function sendRemoteRequest(url, params){
    var x = new XMLHttpRequest();
    
    x.onreadystatechange = function(){
        if (x.readyState == 4){
            _catchRemoteRequestResponse(x.responseText);
        }    
    }
    
	var _url = url;
    
    var str = params;
    
    x.open('POST', _url, true);
    
    x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    x.setRequestHeader("Content-length", str.length);
    x.setRequestHeader("Connection", "close");

    x.send(str);	
	
}

function _catchRemoteRequestResponse(str){
	
	if (_RESPONSEHOLDER == null){
		_RESPONSEHOLDER = document.createElement('div');
		_RESPONSEHOLDER.style.display = 'none';	
		document.body.appendChild(_RESPONSEHOLDER);
	}

	_RESPONSEHOLDER.innerHTML = str;
    
    var result = document.getElementById('$error');
    
    var code;
    if (result){
    	var codeNode = result.firstChild; 
    	if (codeNode) code = codeNode.nodeValue;
    	else code = '0';
    }
    else code = '0';
    
    //TODO: Eliminar esta validaci?n autom?tica
    
    
    if (code == '1'){
    	_REMOTEREQUESTCALLBACK('OK');
    }
    else{
    	var errorcode;
    	if (document.getElementById('$descerror').firstChild){
    		var desc = document.getElementById('$descerror').firstChild.nodeValue;
    		errorcode = _getErrorCode(desc);
    	}
    	else errorcode = 'ERR_COH05'; 
		
		if (errorcode == 'E004'){
			var usernameHolder = document.getElementById('$valor');
			if (usernameHolder && usernameHolder.firstChild && usernameHolder.firstChild.nodeValue && usernameHolder.firstChild.nodeValue != '' && usernameHolder.firstChild.nodeValue != ' '){
				_REMOTEREQUESTCALLBACK('E004', usernameHolder.firstChild.nodeValue);		
			}
		}
		
    	_REMOTEREQUESTCALLBACK(errorcode);		
    }	
    
    _REMOTEREQUESTCALLBACK = null;
}


function _getErrorCode(error){
	var ret;
	switch (error){
		case 'ERR_COH27':
		case 'ERR_COH26':
			ret = 'E002';
			break;
		case 'ERR_IDC11':
			ret = 'E004';
			break;
		case 'ERR_COH31':
			ret = 'E010';
			break;
		case 'ERR_DY01':
			ret = 'ERR_DY01';
			break;
		case 'ERR_DY02':
			ret = 'ERR_DY02';
			break;
		default:
			ret = 'ESQL';
			break;	
	}

	
	return ret;
}

function openChangeUsername(){
	var url = '/servlets/dype/vip/modificarusername.xml';
	var useScroll = (DY.screenHeight < 900) ? 1 : 0;
	
	_VIPWINDOW = DY.openWindow(url, null, 700, 560, null, null, useScroll);
	return _VIPWINDOW;
}


function openLegal() {
	alert("openLegal");
	var vent_x=300;
	var vent_y=180;	
	
	var posx2 = Math.round(anchura/2-150);
	var posy2 = Math.round(altura/2-90);

	legal = window.open('/informativo/tuquedices/notalegal.html','legal','resizable=0,scrollbars=0,status=0,location=0,toolbar=0,menubar=0,width='+vent_x+',height='+vent_y+',screenX='+posx2+',screenY='+posy2+',left='+posx2+',top='+posy2+'');

}

function openOpinion(procedencia, temperatura){
	var temp = temperatura || 'fred';

	
	var url = "/tvh/opinion/?opinion_origin="+procedencia;
	
//	url += (document.all) ? 'IE' : 'NS';
	//url += 'IE';
	//url += '_'+temp+'.html?'+procedencia;
	
	//DY.openWindow(url, null, 313, 521, null, null);
	window.open(url);
}

function closeWindow(){
	setTimeout('doCloseWindow()', 250);
}

function doCloseWindow(){
	_VIPWINDOW.close();
}