//При выборе продукта показываем его описание
function ShowProdAnnot(productID){
	var selectedProduct = document.getElementById(productID);
	if(selectedProduct != null){
		SetRequest4ProductAnnot(selectedProduct.value)	
	}
}
function SetRequest4ProductAnnot(selProdID){	
	var http_request = false;
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
       http_request = new XMLHttpRequest();
       if (http_request.overrideMimeType) {
          http_request.overrideMimeType('text/xml');
       }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }
     if (!http_request) {
       alert('Не вышло :( Невозможно создать экземпляр класса XMLHTTP ');
       return false;
     }
     http_request.onreadystatechange = function() { DisplayProdAnnot(http_request); };
     url="/getproductannot.asp?prodID="+selProdID;
     http_request.open('GET', url, true);
     http_request.send(null);        
}

function DisplayProdAnnot(http_request){
	if (http_request.readyState == 4) {
      if (http_request.status == 200) { 
		var prodAnnotDiv = document.getElementById("prodAnnot");
		prodAnnotDiv.innerHTML = http_request.responseText;
		//alert(http_request.responseText);
	  } 
      else {
         alert('С запросом возникла проблема.');         
      }           
    }
}
//Скрываем или показываем поля для организации.
function ShowOrgField(){	
	var OrgTbl = document.getElementById("OrgTbl");
	var SelectOrg = document.getElementById("SelectOrg");
	var orgInfo=document.getElementById("orgInfo");
	if(SelectOrg.selectedIndex > 0 ){
		SetRequest('SelectOrg', "/getorg.asp?orgID=", 'orgInfo');
		if(OrgTbl.className == "visibleel"){OrgTbl.className = "hiddenel"}
		}
	else{
		if(OrgTbl.className == "hiddenel"){OrgTbl.className = "visibleel";}		
		orgInfo.innerText="";			
	}
	ShowProdAnnot('productID');	
}

//Проверка формы на заполненость полей и длину их содержимого
function CheckForm(f){	
	if(document.getElementById("loginpassCheckRes") != null){
		if(document.getElementById("loginpassCheckRes").innerHTML.length > 0){return false;}
	}
	var err=0;	
	for (var i=0; i<f.elements.length; i++){		
   		if (f.elements[i].getAttribute('alt')!= null & f.elements[i].parentNode.parentNode.parentNode.parentNode.className != "hiddenel"){   		
      		if (f.elements[i].value.length==0){      			
      			alert("Не заполненно обязательное поле '"+f.elements[i].getAttribute('alt')+"'!")      			
      			return false;
      		}   
   		}
   	if(f.id=="RegForm"){	
		var SecDayYBtn =document.getElementById("SecDayY");
		var SecDayNBtn =document.getElementById("SecDayN");
		if(SecDayYBtn!=null & SecDayNBtn!=null){
			if(!(SecDayYBtn.checked | SecDayNBtn.checked)){
				alert("Не заполненно обязательное поле 'Участие во втором дне конференции?'");
				return false;
			}
		}
		var ResHelpYBtn =document.getElementById("ResHelpY");
		var ResHelpNBtn =document.getElementById("ResHelpN");
		if(ResHelpYBtn!=null & ResHelpNBtn!=null){
			if(!(ResHelpYBtn.checked | ResHelpNBtn.checked)){
				alert("Не заполненно обязательное поле 'Необходима ли Вам помощь в бронировании гостиничного номера?'");
				return false;
			}
		}		
	}
	if(f.id=="RegFormSN"){
		var SecDayYSNBtn =document.getElementById("SecDayYSN");
		var SecDayNSNBtn =document.getElementById("SecDayNSN");
		if(SecDayYSNBtn!=null & SecDayNSNBtn!=null){	
			if(!(SecDayYSNBtn.checked | SecDayNSNBtn.checked)){
				alert("Не заполненно обязательное поле 'Участие во втором дне конференции?'");
				return false;
			}
		}	
		var ResHelpYSNBtn =document.getElementById("ResHelpYSN");
		var ResHelpNSNBtn =document.getElementById("ResHelpNSN");
		if(ResHelpYSNBtn!=null & ResHelpNSNBtn!=null){	
			if(!(ResHelpYSNBtn.checked | ResHelpNSNBtn.checked)){
				alert("Не заполненно обязательное поле 'Необходима ли Вам помощь в бронировании гостиничного номера?'");
				return false;
			}
		}
	}	
   	switch(f.elements[i].name){
   			case "tempINN":
   			case "tempKPP":   			
   				if (f.elements[i].value.length > 20)
   				{
   				alert("Размер поля '"+f.elements[i].getAttribute('alt')+"' не может привышать 20 символов!")
   				return false;
   				}   				
   				break;   					
   			case "tempSettAccount":
   			case "tempCorrAccount":
   			case "tempBIK":

   				if (f.elements[i].value.length > 25)
   				{
   				alert("Размер поля "+f.elements[i].getAttribute('alt')+" не может привышать 25 символов!")
   				return false;
   				}   				
   				break; 
   			case "tempOrgName":
   				if (f.elements[i].value.length > 256)
   				{
   				alert("Размер поля "+f.elements[i].getAttribute('alt')+" не может привышать 256 символов!")
   				return false;
   				}   				
				break;   			
   		} 
	}
	var prodSelectName = "productID";
	if(f.elements.length < 10) {prodSelectName = "productIDSN";}
	var productID = document.getElementById(prodSelectName);			
	if(productID.value == 0) {
		alert("Выберите, пожалуйста, интересующий вас продукт!");
		return false;
	}	
	return true;	
}
//При изменении выбранного значения списка меняем содержимое соответсвующего текстбокса
function NameSelected(countryID, textboxName){ 		
 	var curField = document.getElementById(textboxName);
 	if(curField != null & countryID.selectedIndex != null) 
 	{
 	curField.value = countryID.options[countryID.selectedIndex].text; 
 	}
 	//alert(countryID.selectedIndex);
 	if(textboxName =='userOrg'){ShowOrg();}	
}
//При введении символа в поле ищем соответсвующее значение в селекте
function SearchName(curName, selectName)
    {    
     if(selectName=="SelectCity" & curName.value.length<=1){SetRequest('SelectCountry', "/getcity.asp?id=", 'SelectCity');}
     //if(selectName=="SelectOrg" & curName.value.length<=1){SetRequest('SelectCity', "/getorg.asp?cityId=", 'SelectOrg');} 
     var AllName = document.getElementById(selectName);
     //AllName.size=7;
     //AllName.className = "selectVisible";
     if(selectName=="SelectCountry")
     {document.getElementById("SelectCity").style.visible = "hidden"}
     if(curName.value.length > 0){               
        var findRes = -1;        
        if(AllName) 
        {
            for(i=0; i<AllName.options.length; i++){             
                if(AllName.options[i].text.toLowerCase().indexOf(curName.value.toLowerCase()) == 0 )                
                {
                 AllName.options[i].selected = true;
                 i=AllName.options.length;
                 findRes = 0;                 
                }   
                else
                {
                if(AllName.options[i].value == 0){AllName.options[i].selected = true;}	                
                }             
            }             
            if(findRes == -1){
            AllName.value = "";            
            if(curName.id == "userOrg"){            	
            	var orgInfo=document.getElementById("orgInfo"); orgInfo.innerText="";
            	var OrgTbl = document.getElementById("OrgTbl");
            	var selectProduct = document.getElementById("selectProduct");
				if(selectProduct.value > 1){OrgTbl.className = "visibleel";}
            }             
            }                      
        }
      }                            
    } 
//Если при вводе значения в поле нажет Enter подставляется активное значение селекта
function InsertName(e, textboxName, selectName){
	if (e.keyCode == 13){
		if(textboxName=='userOrg'){ShowOrg();}	
		var curTextBox = document.getElementById(textboxName);
		var curSelect = document.getElementById(selectName);
        for(i=0; i<curSelect.options.length; i++){
        	if(curSelect.options[i].selected)
            {curTextBox.value = curSelect.options[i].text;}		
		}
		curSelect.size=1;		    
	return false;
	}		
}
//Если на какой-то пункт селекта кликнули - он поставляется в поле ввода    
function FindSelectEl(el, textboxName){	
	var curTextBox = document.getElementById(textboxName);
    for(i=0; i<el.options.length; i++){
      	if(el.options[i].selected){
      		if(el.options[i].value != 0){
      		curTextBox.value = el.options[i].text;}
      	}
    } 
   if(textboxName=='userOrg'){ShowOrg();}                
} 
//Скрываем селект, когда он становится неактивен     
function HideNameList(blurElement, selectName){		
	//if (blurElement.tagName == "SELECT") {blurElement.size=1};	
	if(selectName=="SelectOrg"){ShowOrgField();}	
} 
//Показываем(скрываем) информацию об организации (выполняется каждый раз, когда из селекта 
//выбирается организация и если при этом уже выбран продукт)
function ShowOrg(){
	var SelectOrg = document.getElementById("SelectOrg");
	if(SelectOrg.value != ""){SetRequest('SelectOrg', "/getorg.asp?orgID=", 'orgInfo');}
}
//Формируем асинхронный запрос
function SetRequest(selectName, url, selfSelect){
var curSelect = document.getElementById(selectName);
var curSelectvalue;
curSelectvalue=curSelect.value;
if(selfSelect=="SelectOrg" & curSelect.value==""){curSelectvalue="0";}
if (curSelectvalue!=""){		
	var http_request = false;
        if (window.XMLHttpRequest) { // Mozilla, Safari, ...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }
        if (!http_request) {
            alert('Не вышло :( Невозможно создать экземпляр класса XMLHTTP ');
            return false;
        }        
        http_request.onreadystatechange = function() { alertContents(http_request, selfSelect); };        
        url=url+curSelectvalue;                         
		//alert(url);
        http_request.open('GET', url, true);
        http_request.send(null);
}
}
//Обрабатываем ответ
function alertContents(http_request, curSelectName) {
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {            	                
                var curSelectEl = document.getElementById(curSelectName);
                if(curSelectName!="orgInfo"){
                	if(navigator.userAgent.indexOf("MSIE") != -1){
                		curSelectEl.innerHTML="";                 	              
                		var AllOpt = new Array();
                		AllOpt = http_request.responseText.split("</option>");                                
                		for(i = 0; i<AllOpt.length-1; i++){ 
                			var oOption = document.createElement("OPTION");                               
							curSelectEl.options.add(oOption);
							oOption.innerHTML = AllOpt[i];
							//Поиск значения value в переданном фрагменте, т.к. в option нельзя добавить outerHTML. Value заключено в одинарные кавычки, см файл getcity.asp
							var startQuot = AllOpt[i].toString().indexOf("'",0);
							var endQuot = AllOpt[i].toString().indexOf("'",startQuot+1);												
							oOption.value = AllOpt[i].toString().substring(startQuot+1, endQuot);									
						}
						//alert(curSelectEl.outerHTML);					
                	}
                	else{
                		curSelectEl.innerHTML="";
                		curSelectEl.innerHTML = http_request.responseText;
                	}
                }
                else{
                curSelectEl.innerHTML="";
                curSelectEl.innerHTML = http_request.responseText;
                var allPageInput = document.getElementById("OrgTbl");
				OrgTbl.className = "hiddenel";
                }                
                //alert(curSelectEl.outerHTML);                                 
            } else {
                alert('С запросом возникла проблема.');
            }
        }
}
//Check login used
function SetRequest4LoginCheck(login, password, messageDiv){
if (login.value!=""){
	var http_request = false;
        if (window.XMLHttpRequest) { // Mozilla, Safari, ...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }
        if (!http_request) {
            alert('Не вышло :( Невозможно создать экземпляр класса XMLHTTP ');
            return false;
        }
        http_request.onreadystatechange = function() { CheckLoginResult(http_request, messageDiv); };
        url="checklogin.asp";
        if(password == "no"){url="/checklogin.asp?wantedlogin="+login.value;}
        if(password.name != null){url="/checklogin.asp?login="+login.value+"&parol="+password.value;}                         
        http_request.open('GET', url, true);
        http_request.send(null);        
}
}
function CheckLoginResult(http_request, messageDiv){
	if (http_request.readyState == 4) {
      if (http_request.status == 200) { 
      	var messageEl = document.getElementById(messageDiv);
      	if(http_request.responseText == "0"){       		    		     		
      		var wantedLogin = document.getElementById("wantedLogin");      		      		     		
	    	messageEl.innerHTML = "Логин '"+wantedLogin.value+"' уже занят! Пожалуйста, придумайте другой!";	    	
	    	wantedLogin.value = "";	    	  
	    }	    
	    if(http_request.responseText == "3"){	    	
	    	messageEl.innerHTML = "Неверный логин или пароль!";	    	    	
	    }	    
	    if(http_request.responseText == "1" | http_request.responseText == "2"){
	    	if(messageEl.innerHTML.length >0) {messageEl.innerHTML=""; }
	    }
      } 
      else {
         alert('С запросом возникла проблема.');         
      }           
    }
}

function BeforLPCheck(){
	if(document.getElementById('userLoginSN').value!="" & document.getElementById('userPassSN').value!=""){
	SetRequest4LoginCheck(document.getElementById('userLoginSN'), document.getElementById('userPassSN'), 'loginpassCheckRes');}
}
