
function MM_openBrWindow(theURL,winName,features)
   
         {
             window.open(theURL,winName,features);
   }


var CDIntegration=(function(affiliate, form){
   var self = this;

   var _form;
   var _affiliate;

   var _email      = '';
   var _Fname      = '';
   var _Lname      = '';
   var _Country    = '';
   var _State      = '';
   var _ZipCode    = '';
   var _City       = '';
   var _BirthYear  = '';
   var _Profession = '';
   var _Education  = '';
   var _Industry   = '';
   var _address    = '';
   var _categories = '';
   var _Sex        = '';

   var _input_email      = null;
   var _input_Fname      = null;
   var _input_Lname      = null;
   var _input_Country    = null;
   var _input_State      = null;
   var _input_ZipCode    = null;
   var _input_City       = null;
   var _input_BirthYear  = null;
   var _input_Profession = null;
   var _input_Education  = null;
   var _input_Industry   = null;
   var _input_address    = null;
   var _input_Sex        = null;

   var _input_email_translation      = _noTranslation;
   var _input_Fname_translation      = _noTranslation;
   var _input_Lname_translation      = _noTranslation;
   var _input_Country_translation    = _noTranslation;
   var _input_State_translation      = _noTranslation;
   var _input_ZipCode_translation    = _noTranslation;
   var _input_City_translation       = _noTranslation;
   var _input_BirthYear_translation  = _noTranslation;
   var _input_Profession_translation = _noTranslation;
   var _input_Education_translation  = _noTranslation;
   var _input_Industry_translation   = _noTranslation;
   var _input_address_translation    = _noTranslation;
   var _input_Sex_translation        = _noTranslation;

   var _debugEmail = null;

   constructor = function(affiliate, form){
      _form      = form;
      _affiliate = affiliate;
   }

   function _noTranslation(value){
      return value;
   }
   
   
   
   function _getValue(input){
      var i;
      switch(input.type){
         case 'text':
         case 'hidden':
         case 'textarea':
         case 'password':
            return input.value;
         case 'select-one':
            return input.options[input.selectedIndex].value;
         case 'checkbox':
            if(input.checked) return input.value;
            return '';
         case 'submit':
         case 'button':
         case 'reset':
         case 'image':
         case 'file':
            return '';
         default:
            if((input[0] != null) && (input[0].type == 'radio')){
               for(i=0; i<input.length; i++){
                  if(input[i].checked) return input[i].value;
               }
            }
            else{
               return input.value;
            }
      }
      return '';
   }

   function _loadValues(){
      if(!_form.infocomercial.checked){
         alert("Por favor, debe de aceptar los términos y condiciones");
         return false;
      }

      _email = (_input_email == null) ? _getValue(_form.elements[CDIntegration.email]) : _input_email_translation(_getValue(_input_email));
      if(_email.toString().length == 0){
         alert("Por favor, introduzca su email.");
         return false;
      }
      else if(!_is_email(_email)){
         alert("Por favor, introduzca un email válido.");
         return false;
      }

      if((_input_Fname != null) ||  (_form.elements[CDIntegration.Fname] != null)){
         _Fname = (_input_Fname == null) ? _getValue(_form.elements[CDIntegration.Fname]) : _input_Fname_translation(_getValue(_input_Fname));
         if(_Fname.toString().length == 0){
            alert("Por favor, introduzca su nombre.");
            return false;
         }
      }

      if((_input_Lname != null) || (_form.elements[CDIntegration.Lname] != null)){
         _Lname = (_input_Lname == null) ? _getValue(_form.elements[CDIntegration.Lname]) : _input_Lname_translation(_getValue(_input_Lname));
         if(_Lname.toString().length == 0){
            alert("Por favor, introduzca su apellido.");
            return false;
         }
      }

      if((_input_Sex != null) || (_form.elements[CDIntegration.Sex] != null)){
         _Sex = (_input_Sex == null) ? _getValue(_form.elements[CDIntegration.Sex]) : _input_Sex_translation(_getValue(_input_Sex));
         if(_Sex.toString().length == 0){
            alert("Por favor, introduzca su sexo.");
            return false;
         }
      }

      if((_input_Country != null) || (_form.elements[CDIntegration.Country] != null)){
         _Country = (_input_Country == null) ? _getValue(_form.elements[CDIntegration.Country]) : _input_Country_translation(_getValue(_input_Country));
         if(!_is_number(_Country) || (parseInt(_Country)<0)){
            alert("Por favor, introduzca su país.");
            return false;
         }
      }

      if((_input_State != null) || (_form.elements[CDIntegration.State] != null)){
         _State = (_input_State == null) ? _getValue(_form.elements[CDIntegration.State]) : _input_State_translation(_getValue(_input_State));
         if(!_is_number(parseInt(_State)) || (parseInt(_State)<0)){
            alert("Por favor, introduzca su provincia.");
            return false;
         }
      }

      if((_input_ZipCode != null) || (_form.elements[CDIntegration.ZipCode] != null)){
         _ZipCode    = (_input_ZipCode == null) ? _getValue(_form.elements[CDIntegration.ZipCode]) : _input_ZipCode_translation(_getValue(_input_ZipCode));
         if(_ZipCode.toString().length == 0){
            alert("Por favor, introduzca su código postal");
            return false;
         }
      }

      if((_input_City != null) || (_form.elements[CDIntegration.City] != null)){
         _City = (_input_City == null) ? _getValue(_form.elements[CDIntegration.City]) : _input_City_translation(_getValue(_input_City));
         if(_City.toString().length == 0){
            alert("Por favor, introduzca su ciudad.");
            return false;
         }
         else if(!_is_text(_City)){
            alert("La ciudad que ha introducido no es válida.\n\nRevise que sólo tenga letras y espacios.");
            return false;
         }
      }

      if((_input_BirthYear != null) || (_form.elements[CDIntegration.BirthYear] != null)){
         _BirthYear = (_input_BirthYear == null) ? _getValue(_form.elements[CDIntegration.BirthYear])  : _input_BirthYear_translation(_getValue(_input_BirthYear));
         var todayYear = (new Date()).getFullYear();
         if(!_is_number(_BirthYear) || (parseInt(_BirthYear)<1940) || (parseInt(_BirthYear)>parseInt(todayYear))){
            alert("El año de nacimiento no es válido. Tiene que ser un número de año mayor que 1940 y menor que " + todayYear);
            return false;
         }
         //alert(todayYear+'-'+parseInt(_BirthYear));
         if ((todayYear-parseInt(_BirthYear))<18) {
           alert ("Lo sentimos, tiene que tener más de 18 años para registrarse en el servicio.")
           return false;
         }

      }

      if((_input_Profession != null) || (_form.elements[CDIntegration.Profession] != null)){
         _Profession = (_input_Profession == null) ? _getValue(_form.elements[CDIntegration.Profession]) : _input_Profession_translation(_getValue(_input_Profession));
         if(!_is_number(_Profession) || (parseInt(_Profession)<=0)){
            alert("Por favor, introduzca su profesión.");
            return false;
         }
      }

      if((_input_Education != null) || (_form.elements[CDIntegration.Education] != null)){
         _Education = (_input_Education == null) ? _getValue(_form.elements[CDIntegration.Education]) : _input_Edutacion_translation(_getValue(_input_Education));
         if(!_is_number(_Education) || (parseInt(_Education)<=0)){
            alert("Por favor, introduzca su educación.");
            return false;
         }
      }

      if((_input_Industry != null) || (_form.elements[CDIntegration.Industry] != null)){
         _Industry = (_input_Industry == null) ? _getValue(_form.elements[CDIntegration.Industry]) : _input_Industry_translation(_getValue(_input_Industry));
         if(!_is_number(_Industry) || (parseInt(_Industry)<=0)){
            alert("Por favor, introduzca su sector.");
            return false;
         }
      }

      if((_input_address != null) || (_form.elements[CDIntegration.address] != null)){
         _address = (_input_address == null) ? _getValue(_form.elements[CDIntegration.address]) : _input_address_translation(_getValue(_input_address));
         if((_address.toString().length == 0) || (_address.toString() == "Calle,Número,Piso,Ciudad")){
            alert("Por favor, introduzca su dirección física.");
            return false;
         }
      }

      var i, found = false;
      var categorie = /^c\d+$/;
      for(i = 0; i < _form.elements.length; i++){
         if(categorie.test(_form.elements[i].name)){
            if((_form.elements[i].type == "checkbox") && _form.elements[i].checked){
               _categories += "&" + _form.elements[i].name + "=1"
               found = true;
            }
         }
      }

      if(!found){
         alert("Por favor, seleccione al menos una categoria.");
         return false;
      }

      return true;
   }

   self.setSharedInputs=function (inputShared, equivalence){
      var translation = _noTranslation;
      if(arguments.length > 2){
         translation = arguments[2];
      }
      switch(equivalence){
         case CDIntegration.email:      _input_email      = inputShared; _input_email_translation      = translation; break;
         case CDIntegration.Fname:      _input_Fname      = inputShared; _input_Fname_translation      = translation; break;
         case CDIntegration.Lname:      _input_Lname      = inputShared; _input_Lname_translation      = translation; break;
         case CDIntegration.Country:    _input_Country    = inputShared; _input_Country_translation    = translation; break;
         case CDIntegration.State:      _input_State      = inputShared; _input_State_translation      = translation; break;
         case CDIntegration.ZipCode:    _input_ZipCode    = inputShared; _input_ZipCode_translation    = translation; break;
         case CDIntegration.City:       _input_City       = inputShared; _input_City_translation       = translation; break;
         case CDIntegration.BirthYear:  _input_BirthYear  = inputShared; _input_BirthYear_translation  = translation; break;
         case CDIntegration.Profession: _input_Profession = inputShared; _input_Profession_translation = translation; break;
         case CDIntegration.Education:  _input_Education  = inputShared; _input_Education_translation  = translation; break;
         case CDIntegration.Industry:   _input_Industry   = inputShared; _input_Industry_translation   = translation; break;
         case CDIntegration.address:    _input_address    = inputShared; _input_address_translation    = translation; break;
         case CDIntegration.Sex:        _input_Sex        = inputShared; _input_Sex_translation        = translation; break;
      }
   }

   self.setEmailDebug = function (email){
      if(!_is_email(email)) return false;
      _debugEmail = email;
      return true;
   }

   self.submit = function(){
      if(!_loadValues()) return false;
      var scriptName="JoinMember-PixelTransparente.php";
      var queryString="email="+escape(_email)+
                      "&Fname="+escape(_Fname)+
                      "&Lname="+escape(_Lname)+
                      "&Country="+escape(_Country)+
                      "&State="+escape(_State)+
                      "&ZipCode="+escape(_ZipCode)+
                      "&City="+escape(_City)+
                      "&BirthYear="+escape(_BirthYear)+
                      "&Profession="+escape(_Profession)+
                      "&Education="+escape(_Education)+
                      "&Industry="+escape(_Industry)+
                      "&address="+escape(_address)+
                      "&Sex="+escape(_Sex)+
                      "&Affiliate="+escape(_affiliate)+
                      _categories;
      var uri, image;

      if(_debugEmail != null){
         scriptName="JoinMemberDebug.php";
         queryString += "&debugEmail="+escape(_debugEmail);
      }

      uri="http://www.correodirect.com/membmanager/"+scriptName+"?"+queryString;

      image=new Image();
      image.onload=function(){
         _form.submit();
      }
      image.src=uri;
      return false;
   }

   function _is_email(v){
      var t=/^(\w|\~)(\w|\~|\.|\-)*@(\w|\~)(\w|\~|\.|\-)*\.(([a-z]{2})|(biz)|(info)|(com)|(net)|(org)|(mil)|(int)|(edu)|(name)|gov)$/i;
      return t.test(v);
   }

   function _is_text(v){
      var t=/^([àèìòùÀÈÌÒÙáéíóúÁÉÍÓÚäëïöüÄËÏÖÜçÇa-zA-ZñÑ]|\s)*[àèìòùÀÈÌÒÙáéíóúÁÉÍÓÚäëïöüÄËÏÖÜçÇa-zA-ZñÑ]([àèìòùÀÈÌÒÙáéíóúÁÉÍÓÚäëïöüÄËÏÖÜçÇa-zA-ZñÑ]|\s)*$/i;
      return t.test(v);
   }

   function _is_number(v){
      var t=/^\d+$/
      return t.test(v);
   }


   constructor(affiliate, form);
   return self;
});

CDIntegration.email      = 'email';
CDIntegration.Fname      = 'Fname';
CDIntegration.Lname      = 'Lname';
CDIntegration.Country    = 'Country';
CDIntegration.State      = 'State';
CDIntegration.ZipCode    = 'ZipCode';
CDIntegration.City       = 'City';
CDIntegration.BirthYear  = 'BirthYear';
CDIntegration.Profession = 'Profession';
CDIntegration.Education  = 'Education';
CDIntegration.Industry   = 'Industry';
CDIntegration.address    = 'address';
CDIntegration.Sex        = 'Sex';

function pais(Country, State){
   // Esto se ha añadido para que si se vuelve a seleccionar el pais no de un error de js en la provincia.
   var pais_0=new Array("");
   var paisstnames_0=new Array("Seleccione País");

   var pais_1=new Array("","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18")
   var paisstnames_1=new Array("","Andalucía","Aragón","Asturias","Islas Baleares","Islas Canarias","Cantabria","Castilla y León","Castilla-La Mancha","Cataluña","Extramadura","Galicia","La Rioja","Madrid","Murcia","Navarra","País Vasco","Valencia","resto")

   var pais_2=new Array("","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42")
   var paisstnames_2=new Array("","Aveiro","Azores","Baixo Alentejo","Beira Alta","Beja","Braga","Bragança","Castelo Branco","Coimbra","Douro","Estremadura","Faro (Algarve)","Guarda","Leira","Lisboa","Madeira","Oeiras","Portalegre","Porto","Santarem","Setubal","VilaReal","Viseu","resto")

   var pais_3=new Array("","43","44","45","46","47","48","49","50","51","52","53","54","55","56","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","74")
   var paisstnames_3=new Array("","La Guajira","Cesar","Magdalena","Atlántico","Bolivar","Norte de Santander","Sucre","Providencia y S. Andres","Cordoba","Antioquia","Santander","Arauca","Boyaca","Casanare","Cundinamarca","Caldas","Risaralda","Choco","Valle del Cauca","Tolima","Meta","Vichada","Guania","Guaviare","Huila","Cauca","Nariño","Putumayo","Caqueta","Vaupes","Amazona","resto")

   var pais_4=new Array("","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","91","92","93","94","95","96","97","98","99","100")
   var paisstnames_4=new Array("","Capital Federal","Buenos Aires","Catamarca","Chaco","Chubut","Cordoba","Corrientes","Entre Rios","Formosa","Jujuy","La Pampa","La Rioja","Mendoza","Misiones","Neuquen","Patagonia","Rio Negro","Salta","San Juan","San Luis","Santa Cruz","Santa Fe","Santiago del Estero","Tierra del Fuego","Tucumán","resto")

   var pais_5=new Array("","111","112","113","114","115","116","117","118","119","120","121","122","123","124","125","126","127","128","129","130","131","132","133","134","135","136","137")
   var paisstnames_5=new Array("","Acre","Alagoas","Amapá","Amazonas","Bahia","Ceará","Distrito Federal","Espirito Santo","Goias","Maranhão","Mato Grosso","Mato Grosso do Sul","Minas Gerais","Paraíba","Pará","Pernambuco","Piaui","Rio de Janeiro","Rio Grande do Norte","Rio Grande do Sul","Rondonia","Roraima","Santa Catarina","Sergipe","São Paulo","Tocantins","resto")

   var pais_6=new Array("","138","139","140","141","142","143","144","145","146","147","148","149","150","151")
   var paisstnames_6=new Array("","Antofagasta","Asién G. C. Ibáñez","Atacama","Biobio","Coquimbo","La Araucania","L. G. Bernardo O'Higgins","Los Lagos","Magallanes y  la A.","Maule","Santiago","Tarapacá","Valparaiso/Rapa Nui","resto")

   var pais_7=new Array("","101","102","103","104","105","106","107","108","109","110")
   var paisstnames_7=new Array("","Chuquisaca","La Paz","Cochabamba","Oruro","Potosí","Tarija","Santa Cruz","Beni","Pando","resto")

   var pais_8=new Array("","152","153","154","155","156")
   var paisstnames_8=new Array("","Ciudad de la Habana","La Habana","Matanzas","Santiago de Cuba","resto")

   var pais_9=new Array("","157","158")
   var paisstnames_9=new Array("","Santo Domingo","resto")

   var pais_10=new Array("","159","160","161","162","163","164","165","166","167","168","169","170")
   var paisstnames_10=new Array("","Azuay","Chimborazo","Esmeraldas","Galapagos","Guayas","Imbabura","Loja","Manabi","Napo","Pichincha","Tungurahua","resto")

   var pais_11=new Array("","171","172","173","174","175","176")
   var paisstnames_11=new Array("","Antigua Guatemala","Guatemala","Huehuetenango","Jalapa","Sololá","Resto")

   var pais_12=new Array("","177","178","179","180","181","182","183","184","185","186","187","188","189","190","191","192","193","194","195","196","197","198","199","200","201","202","203","204","205","206","207","208","209")
   var paisstnames_12=new Array("","Distrito Federal","Baja California","Baja California Sur","Campeche","Chiapas","Chihuahua","Coahuila","Colima","Aguascalientes","Durango","Guanajuato","Guerrero","Hidalgo","Jalisco","Mexico","Michoacan de Ocampo","Morelos","Nayarit","Nuevo Leon","Oaxaca","Puebla","Querétaro","Quintana Roo","San Luis Potosí","Sinaloa","Sonora","Tabasco","Tamaulipas","Tlaxcala","Veracruz-Llave","Yucatan","Zacatecas","resto")

   var pais_13=new Array("","210","211","212","213","214","215","216","217","218","219","220","221","222","223","224","225","226","227","228","229","230")
   var paisstnames_13=new Array("","Montevideo","Interior","Artigas","Canelones","Cerro Largo","Colonia","Durazno","Flores","Florida","Lavalleja","Maldonado","Paysandú","Río Negro","Rivera","Rocha","Salto","San José","Soriano","Tacuarembó","Treinta y Tres","resto")

   var pais_14=new Array("","231","232","233","234","235")
   var paisstnames_14=new Array("","Boquete","Colon","Paitilla","Ciudad de Panamá","resto")

   var pais_15=new Array("","236","237","238","239","240","241")
   var paisstnames_15=new Array("","Estelí","Granada","Jinotepe","León","Managua","resto")

   var pais_16=new Array("","242","243","244","245","246","247")
   var paisstnames_16=new Array("","El Progreso","La Ceiba","San Pedro Sula","Tegucigalpa","Tela","resto")

   var pais_17=new Array("248","249","250","251")
   var paisstnames_17=new Array("","Colonia Escalón","San Salvador","Soyapango","resto")

   var pais_18=new Array("","252","253")
   var paisstnames_18=new Array("","Asunción","resto")

   var pais_19=new Array("","257","258","259","260","261","262","254","255","256")
   var paisstnames_19=new Array("","Chimbote","Callao","Lima","Cuzco","Arequipa","resto","Piura","Chiclayo","Trujillo")

   var pais_20=new Array("","263","264","265","266","267","268")
   var paisstnames_20=new Array("","San Juan","Carolina","Bayamon","Caguas","Mayagüez","resto")

   var pais_21=new Array("","269","270","271","272","273","274","275","276","277","278","279","280","281","282","283","284","285","286","287","288","289","290","291","292","293","294","295","296","297","298","299","300","301","302","303","304","305","306","307","308","309","310","311","312","313","314","315","316","317","318","319","351")
   var paisstnames_21=new Array("","Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachussetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","Washington D.C.","West Virginia","Wisconsin","Wyoming","resto")

   var pais_22=new Array("","320","321","322","323","324","325","326","327","328","329","330","331","332","333","334","335","336","337","338","339","340","341","342","352")
   var paisstnames_22=new Array("","Distrito Federal","Amazonas","Anzoategui","Apure","Arague","Barinas","Bolivar","Carabobo","Cojedes","Delta Amacuro","Falcon","Guarico","Lara","Merida","Miranda","Monagas","Nueva Esparta","Portuguesa","Sucre","Tachira","Trujillo","Yaracuy","Zulia","resto")

   var pais_23=new Array("","343","344","345","346","347","348","349","350")
   var paisstnames_23=new Array("","San Jose","Alajuela","Cartago","Guanacaste","Heredia","Limon","Puntarenas","resto")

   var p = Country.options[Country.selectedIndex].value;

   var check_existence=eval("typeof(pais_"+p+")");


   if(check_existence.toString()!="undefined"){
      seleccion=eval("pais_"+p);
      seleccionNames=eval("paisstnames_"+p);
   }
   else{
      seleccion=new Array("0");
      seleccionName=new Array("");
   }

   State.length=seleccion.length;

   for(i=0;i<State.length;i++) {
      State.options[i].value=seleccion[i];
      State.options[i].text=seleccionNames[i];
   }
}

