//alert(location.href);
var dominio=document.domain;
if ((dominio=='ads.afiliacion.com')||(dominio=='promociones.afiliacion.com')){dominio='.afiliacion.com'}

function obtieneparms(parametro) {
  var urlmicro=location.href.split("?");
  var datoabuscar = new RegExp ( ''+parametro+'=([^&#]*)' );
	var busqueda = datoabuscar.exec( urlmicro );
	if( busqueda == null ) { parametro=''  } else {parametro=busqueda[1]}
	return parametro;
}

function afiliacionRedirectWait(url){
   if(document.DistinctCountInserted) {
      location.replace(url);
   }
   else{
      eval("setTimeout(\"afiliacionRedirectWait('" + url.replace("'", "\\'") + "')\", 100);");
   }
}

function afiliacionRedirect(url){
   var BridgeForm_re       = /\/app\/userzone\/BridgeForm\.php$/;
   var i;   
// /////
var refsoporte = obtieneparms('refsoporte');
var kwsearch = obtieneparms('kwsearch');
var facebook = obtieneparms('fb');
var refRR = obtieneparms('refRR');
																 
//////////////////////   prioridad al refsoporte de netfilia
    
   for(i=0; i<document.forms.length; i++){
      if(BridgeForm_re.test(document.forms[i].action)){
      // quita la comprobacion de que sea el action sea bridgeform pues el marketerFP se hace despues de saltar

         if(document.forms[i].elements["IdZone"])       document.cookie="IdZone="       + document.forms[i].elements["IdZone"].value       + "; path=/; domain="   + dominio    + ";";
         if(document.forms[i].elements["IdCreativity"]) document.cookie="IdCreativity=" + document.forms[i].elements["IdCreativity"].value + "; path=/; domain="   + dominio    + ";";
         if(document.forms[i].elements["IdMicrosite"])  document.cookie="IdMicrosite="  + document.forms[i].elements["IdMicrosite"].value  + "; path=/; domain="   + dominio    + ";";
         if(document.forms[i].elements["i_idForm"])     document.cookie="i_idForm="     + document.forms[i].elements["i_idForm"].value     + "; path=/; domain="   + dominio    + ";";
         if(document.forms[i].elements["i_idlist"])     document.cookie="i_idlist="     + document.forms[i].elements["i_idlist"].value     + "; path=/; domain="   + dominio    + ";";
         if(document.forms[i].elements["i_idowner"])    document.cookie="i_idowner="    + document.forms[i].elements["i_idowner"].value    + "; path=/; domain="   + dominio    + ";";
         if(refsoporte!='')                             document.cookie="refsoporte="   + refsoporte                                       + "; path=/; domain="   + dominio    + ";";
         if(kwsearch!='')                               document.cookie="kwsearch="     + kwsearch                                         + "; path=/; domain="   + dominio    + ";";
         if(facebook!='')                               document.cookie="fb="           + facebook                                         + "; path=/; domain="   + dominio    + ";";
         if(refRR!='')                                  document.cookie="refRR="        + refRR                                            + "; path=/; domain="   + dominio    + ";";
         if(document.forms[i].elements["IdZone"])       document.cookie="LEAD_PCE="     + document.forms[i].elements["IdZone"].value       + "; path=/; domain="   + dominio    + ";";
         break;
      } // end es el bridgeform
   }

   if (document.WaitDistinctCountInserted) {
      afiliacionRedirectWait(url);
   }
   else{
      location.replace(url);
   }
}

(function (){
   this.clearCookie = function(name){
      var str_clear_cookie = name + "= ; path=/; expires=" + (new Date(1970,0,1)).toGMTString()+";";
      var str_clear_cookie2 = name + "= ; path=/; domain=.afiliacion.com; expires=" + (new Date(1970,0,1)).toGMTString()+";";
      var str_clear_cookie3 = name + "= ; path=/; domain=ads.afiliacion.com; expires=" + (new Date(1970,0,1)).toGMTString()+";";
      var str_clear_cookie4 = name + "= ; path=/; domain="+ dominio +"; expires=" + (new Date(1970,0,1)).toGMTString()+";";
      document.cookie = str_clear_cookie;
      //alert('clear:'+str_clear_cookie);    
      document.cookie = str_clear_cookie2;
      //alert('clear:'+str_clear_cookie2);
      document.cookie = str_clear_cookie3;
      //alert('clear:'+str_clear_cookie3); 
      document.cookie = str_clear_cookie4;
      //alert('clear:'+str_clear_cookie4); 
    }

   this.isSameMicrosite = function(url1, url2) {
      var classicUrl_re = /(.*\/files\/owner\d+\/list\d+\/regform\/regform\d+).*/;

      if (classicUrl_re.test(url1) && classicUrl_re.test(url2)) {
         /*
         This is when microsites are in a site which uses DirectCRM notation
         */
         url1 = url1.replace(classicUrl_re, "$1");
         url2 = url2.replace(classicUrl_re, "$1");
      }
      else {
         /*
         The urls uses other notation (a shorted one. IE: http://ceac.afiliacion.com/microsite1/)
         */
         var host_re = /^(http:\/\/[^\/]+).*/;

         url1 = url1.replace(host_re, "$1");
         url2 = url2.replace(host_re, "$1");
      }
      return (url1 == url2);
   }

   var today_date = new Date();
   var year=today_date.getYear();
   if(year<1900) year += 1900;
   var expire_date=(new Date(year+10,today_date.getMonth(),today_date.getDay(),today_date.getHours(),today_date.getMinutes(),today_date.getMinutes())).toGMTString();

   // Esto no funciona si ponen el microsite en un frame
   var a_url=location.href.split("?");
///////////////////////  cookie para LeadPCE_js.php
	var LPCE_Zone = obtieneparms('IdZone');
document.cookie = 'MICROSITE_COOKIE_LEAD_PCE=' + LPCE_Zone + '; path=/; domain='   + dominio    + '; expires=' + expire_date + ';'; 
//////////////////////      
//   alert(location.href);


   var s_microsite_url=a_url[0].replace(/^(.*)\/[^\/]*/,"$1");

   var microsite_cookie_uri_re=/^.*;?( )*MICROSITE_COOKIE_URI=([^; ]*).*$/;
   var s_microsite_cookie_uri = (microsite_cookie_uri_re.test(document.cookie))?unescape(document.cookie.replace(microsite_cookie_uri_re, "$2")):s_microsite_url;

//   alert(s_microsite_url + '<->' + s_microsite_cookie_uri);

   if(!this.isSameMicrosite(s_microsite_url, s_microsite_cookie_uri)){
      this.clearCookie("MICROSITE_COOKIE_URI");
      var a_cookies = document.cookie.split(";");
      var cookie_name_re = /^( )*(MICROSITE_COOKIE_DATA\[[^\]]*\])=.*$/;
      var idx;
      for(idx=0; idx<a_cookies.length; idx++){
         if(a_cookies[idx].length){
            this.clearCookie(a_cookies[idx].replace(cookie_name_re, "$2"));
         }
      }
   }

   document.cookie = 'MICROSITE_COOKIE_URI=' + escape(s_microsite_url) + '; path=/; domain='  + dominio     + '; expires=' + expire_date + ';';

//   alert(a_url[1]);

   if(a_url.length==1) return false; // There is no query string

   var EntryPoint='';
   var s_name=a_url[0].replace(/.*\/([^\/]*)$/,"$1");

   var a_params = a_url[1].split("&");
   var i, a_param;

   var IdZone = null, IdCreativity = null;


   for(i=0; i<a_params.length; i++){


      a_param=a_params[i].split("=");
      if(a_param.length!=2) continue;


      if(!a_param[1]){
         this.clearCookie("MICROSITE_COOKIE_DATA[" + a_param[0] + "]", "/");
         continue;
      }
      if((a_param[0]=="EntryPoint")&&(a_param[1]!=s_name)){
         EntryPoint=a_param[1];
      }
      else{
	 //alert("MICROSITE_COOKIE_DATA["+a_param[0]+"]="+a_param[1]+"; path=/; expires="+expire_date+";");
       //  document.cookie="MICROSITE_COOKIE_DATA["+a_param[0]+"]="+a_param[1]+"; path=/; expires="+expire_date+";";
         document.cookie="MICROSITE_COOKIE_DATA["+a_param[0]+"]="+a_param[1]+"; path=/; domain="   + dominio    + "; expires="+expire_date+";";                

         // yo creo que esto no mete la cookie cuando el parent_frameset esta en otro servidor
         //alert(a_url[0]);
         //alert(a_param[0]+'->'+a_param[1]+'->'+document.cookie);
      }

      if((a_param[0]=="IdZone") && (a_param[1]!="")){
         IdZone = a_param[1];
      }
      else if((a_param[0]=="IdCreativity") && (a_param[1]!="")){
         IdCreativity = a_param[1];
      }
   }


   if ((typeof(MsVisits)!="undefined")&&(MsVisits==0)) { visits_off = 1; }
   else { visits_off = 0; }


   var microsite_cookie_visited_re=/( )*MICROSITE_COOKIE_VISITED=/;
   if(!visits_off && !microsite_cookie_visited_re.test(document.cookie) && (typeof(IdMicrosite)!="undefined") && IdZone && IdCreativity){
      document.WaitDistinctCountInserted = true;
      document.cookie="MICROSITE_COOKIE_VISITED=1; domain="   + dominio    + "; expires="+expire_date+";";
      document.DistinctCount = new Image();
      if(EntryPoint){
         eval("document.DistinctCount.onload = (function (){ " +
                                     "   location.replace('" + EntryPoint.replace("'", "\\'") + "');" +
                                     "});");
      }
      else {
         document.DistinctCount.onload = (function (){
                                             document.DistinctCountInserted = true;
                                          });
      }
//      alert('.s..');

      document.DistinctCountInserted = false;
      document.DistinctCount.src = "http://ads.afiliacion.com/app/userzone/AddDistinctVisit.php?IdZone=" + IdZone
                                                                                                    + "&IdCreativity=" + IdCreativity
                                                                                                    + "&IdMicrosite="  + IdMicrosite;

   }
   else {
      document.WaitDistinctCountInserted = false;
//      alert('.n..');
  }

   if(EntryPoint){
//      alert('..');
      location.replace(EntryPoint);
   }

   return true;
})();
 