/**
* JS para tracking de origen y piloto v0.3
*/

// ----------------------------
// CONFIGURACION DE PARAMETROS
//-----------------------------
// Nombre de la cookie para origen
var _ORIGEN_COOKIE_NAME = "origen";
// Nombre de la cookie para piloto
var _PILOTO_COOKIE_NAME = "piloto";

// Nombre del parametro hidden en el formulario para origen
var _ORIGEN_HIDDEN_ID = "origen";
// Nombre del parametro hidden en el formulario para piloto
var _PILOTO_HIDDEN_ID = "piloto";

function MdWriteCookie( nombre, valor, fechaExpira, ruta ) {
    if ( fechaExpira ) {
        fechaExpira = fechaExpira * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date( (new Date()).getTime() + fechaExpira );
    document.cookie = nombre + "=" +escape( valor ) +  ( ( fechaExpira ) ? ";expires=" + expires_date.toGMTString() : "" ) +   ( ( ruta ) ? ";path=" + ruta : "" ) + ""  +   "" ;
}

function MdGetCookie( nombre ) {
    if (document.cookie.length>0)    {
        inicio=document.cookie.indexOf(nombre + "=");
        if (inicio!=-1)  {
            inicio=inicio + nombre.length+1;
            fin=document.cookie.indexOf(";",inicio);
            if (fin==-1) fin=document.cookie.length;
            return unescape(document.cookie.substring(inicio,fin));
        }
    }
    return null;
}


/**
* Funcion que busca y recupera en caso que exista el valor del parametro en la url actual
* @param  name nombre del parametro
* @return si existe devuelve el valor del parametro buscado. En caso contrario la cadena vacia
*/
function gup( name ) {
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
    var regexS = "[\\?&]"+name+"=([^&#]*)";
    var regex = new RegExp( regexS );
    var results = regex.exec( window.location.href );
    if( results == null )
        return "";
    else
        return results[1];
}

/**
* 
* @param origen_url valor del parametro "origen" obtenido de la url 
* @param piloto_url valor del parametro "piloto" obtenido de la url
*/
function trackingCookieOrigenPiloto( origen_url , piloto_url ) {
    // Recogemos el valor de la cookie de origen (false si no existe)
    var origen_ck = MdGetCookie(_ORIGEN_COOKIE_NAME);
    // Recogemos el valor de la cookie de piloto  false si no existe)
    var piloto_ck = MdGetCookie(_PILOTO_COOKIE_NAME);

    // Si NO hay una cookie seteada para origen y piloto y ademas hemos encontrado en la url
    // los parametros origen y piloto  entonces creamos las cookies con los valores obtenidos de la url
    if ( (origen_ck == null || piloto_ck == null) && (origen_url && piloto_url) ) {
        //Cookie.write(_ORIGEN_COOKIE_NAME, origen_url );
        //Cookie.write(_PILOTO_COOKIE_NAME, piloto_url );
        MdWriteCookie(_ORIGEN_COOKIE_NAME, origen_url, null, '/');
        MdWriteCookie(_PILOTO_COOKIE_NAME, piloto_url, null, '/');

        //
        // Actualizamos el valor
        origen_ck = origen_url
        piloto_ck = piloto_url
    }

    // Si detectamos el formulario de cupon (existen hidden para origen y piloto) seteamos el valor de la cookie
    if ( document.getElementById(_ORIGEN_HIDDEN_ID) && document.getElementById(_PILOTO_HIDDEN_ID) && (origen_ck) && (piloto_ck) ) {
        document.getElementById(_ORIGEN_HIDDEN_ID).value = origen_ck;
        document.getElementById(_PILOTO_HIDDEN_ID).value = piloto_ck;
    }
}

/**
*
* @param origen_url valor del parametro "origen" obtenido de la url
*/
function trackingCookieOrigen( origen_url) {
    // Recogemos el valor de la cookie de origen (false si no existe)
    var origen_ck = MdGetCookie(_ORIGEN_COOKIE_NAME);

    // Si NO hay una cookie seteada para origen y piloto y ademas hemos encontrado en la url
    // los parametros origen y piloto  entonces creamos las cookies con los valores obtenidos de la url
    if (origen_ck == null && origen_url ) {
        MdWriteCookie(_ORIGEN_COOKIE_NAME, origen_url, 30, '/');
        origen_ck = origen_url
    }

    // Si detectamos el formulario de cupon (existen hidden para origen y piloto) seteamos el valor de la cookie
    if ( document.getElementById(_ORIGEN_HIDDEN_ID) && (origen_ck)) {
        document.getElementById(_ORIGEN_HIDDEN_ID).value = origen_ck;
    }
}
