isDOM=document.getElementById //DOM1 browser (MSIE 5+, Netscape 6, Opera 5+)
isOpera=isOpera5=window.opera && isDOM //Opera 5+
isOpera6=isOpera && window.print //Opera 6+
isOpera7=isOpera && document.readyState //Opera 7+
isMSIE=document.all && document.all.item && !isOpera //Microsoft Internet Explorer 4+
isMSIE5=isDOM && isMSIE //MSIE 5+
isNetscape4=document.layers //Netscape 4.*
isMozilla=isDOM && navigator.appName=="Netscape" //Mozilla ��� Netscape 6.*

function _height()
{
	if(isMSIE || isOpera7)
	{
		return document.body.scrollHeight;
	}
	if(isNetscape4 || isMozilla)
	{
		return document.height;
	}
	if(isOpera6 || isOpera)
	{
		return document.body.style.pixelHeight;
	}
}

function _width()
{
	if(isMSIE || isOpera7)
	{
		return document.body.scrollWidth;
	}
	if(isNetscape4 || isMozilla)
	{
		return document.width;
	}
	if(isOpera6 || isOpera)
	{
		return document.body.style.pixelWidth;
	}
}

function $(n)
{
	return document.getElementById(n);
}

var msxmls = new Array("Msxml2.XMLHTTP.3.0", "Microsoft.XMLHTTP" )

function createRequestObject(){
	var browser=navigator.appName;
	if(window.XMLHttpRequest){return new XMLHttpRequest();} // Mozilla, Safari, ...
	else if(window.ActiveXObject){ // IE
		for(var n in msxmls){
			try{return new ActiveXObject(msxmls[n]);}
			catch(e){ }
		}
	}
	return false;
}

/*
-{1234yo!}-test
fCallBack('test','1234yo!');
*/
function HTTPsend(fCallBack, u, d){
	document.body.style.cursor='wait';
	var xmlhttp=createRequestObject();
	if(xmlhttp){
		if(u.indexOf('?')>-1){u+='&';}else{u+='?';}u+='rnd='+Math.ceil(Math.random()*10000);

		xmlhttp.open("POST",u);
		xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xmlhttp.onreadystatechange=function(){
			document.body.style.cursor='default';
			if(xmlhttp.readyState==4){
				try{
					if(xmlhttp.status==200){
						text=xmlhttp.responseText;
						text=text.replace(/^\s+/,"");
						text=text.replace(/\s+$/,"");
						if(text.indexOf('-{')==0)
						{                            
							var code=text.substr(2,text.indexOf('}-')-2);
							text=text.substr(text.indexOf('}-')+2,text.length);
							eval(fCallBack+"(text,code)");
						}
						else
						{
							eval(fCallBack+"(text)");
						}
						xmlhttp=null;
						try{CollectGarbage();} catch (e) {}
					}else{
						alert(xmlhttp.status+" HTTP Error: "+xmlhttp.statusText+"\n\nPlease check your connection and try again.");
						xmlhttp=null;
					}
				}catch(e){
					alert("HTTP Error: Unknown\n\nPlease check your connection and try again.");
					xmlhttp=null;
				}
			}
		}
		xmlhttp.send(d);
		return true;
	}
}

function show_popup(o,code)
{
	//alert(_width() + " : " + _height())
	var el=$('myblock');    
	if(el)
	{
		if(o)
		{
			el.innerHTML='<div id="overlay"></div>'+o;
			var overlay=$('overlay');
			if(overlay)
			{
				var new_height = 0;
				if(window.height>_height())
				{
					new_height = window.height;
				}
				else
				{
					new_height = _height();
				}
				//new_height+=150;
				//set black block height
				overlay.style.height=new_height+'px';
				//width
				overlay.style.width=_width()+'px';
                overlay.style.display='block';
			}

			var block=$('black_word-block');
			if(block)
			{
				block.style.left=((_width()/2)-(block.clientWidth/2))+'px';
				/*alert(block.clientWidth+' | '+_width()+' | '+block.style.left);*/
			}
			el.style.visibility='visible';
		}
		else
		{
			el.style.visibility='hidden';
			el.innerHTML='';
		}
	}
	if(code){eval(code);}else{window.location = "#";}
}

function show_login(name)
{
        file_name = "/catalog/browse_inquiry.html";
        HTTPsend('show_popup', file_name, 'ajax=1&property='+name);
}

function send(form_id,property_name)
{       
        var str = 'ajax=1&property='+property_name+'&';
        var strradio = '';
        var name = '';
        var el = document.forms[form_id].elements;
        for(var i = 0 ; i < el.length ; ++i) 
        {
            if(el[i].type =='checkbox')
            {
                var radiogroup = el[el[i].name]; 
                for(var j = 0 ; j < radiogroup.length ; ++j) 
                {  
                    if(radiogroup[j].checked) 
                    {   
                        if (i!=el.length-1)
                            str = str+radiogroup[j].name+'_'+radiogroup[j].value+'='+radiogroup[j].value+'&';
                        else
                            str = str+radiogroup[j].name+'_'+radiogroup[j].value+'='+radiogroup[j].value;
                    } 
                }
                
            }
            else if(el[i].type =='radio' )
            {
                var radiogroup = el[el[i].name]; 
                for(var j = 0 ; j < radiogroup.length ; ++j) 
                {  
                    if(radiogroup[j].checked) 
                    {   
                        if (i!=el.length-1)
                            str = str+radiogroup[j].name+'='+radiogroup[j].value+'&';
                        else
                            str = str+radiogroup[j].name+'='+radiogroup[j].value;
                    } 
                }
            }
            else
            {
                if (i!=el.length-1)
                    str = str+el[i].name+'='+el[i].value+'&';
                else
                    str = str+el[i].name+'='+el[i].value;
            }
        }
        file_name = "/catalog/send_inquiry.html";
        HTTPsend('show_popup', file_name, str);
}





function inspectfield2(form_id){
        clearErrors(form_id);
        var inputs = document.getElementById(form_id).getElementsByTagName('input');
        var textars = document.getElementById(form_id).getElementsByTagName('textarea');
        var selects = document.getElementById(form_id).getElementsByTagName('select');
        var input, textar, sel, error = {};
        var validmail, number, id_error;
        var count = 0;
        for(var i = 0; i<inputs.length;i++){
            input = inputs[i];
            if(input.getAttribute('type') != null && input.getAttribute('type') !='hidden'){
                if(input.getAttribute('email') != null){
                    validmail = is_valid_email (input.value);
                    if (validmail != true){
                        if(input.getAttribute('required') !=null){
                            error[input.name] = input.getAttribute('required');
                        }
                    }
                }
                if(input.getAttribute('required') != null){
                    if (input.getAttribute('number') != null){
                        number = is_not_number(input.value);
                        if (number != true){
                            error[input.name] = input.getAttribute('number');
                        }
                    }
                    if(input.value == ''){
                        if(input.getAttribute('double_id_error') != null)
                        {
                            id_error = input.getAttribute('double_id_error');
                            error[id_error] = input.getAttribute('required');
                        }
                        else
                        {
                            error[input.name] = input.getAttribute('required');
                        }
                    }
                }
                if(input.getAttribute('type') == 'radio'){
                    if(input.getAttribute('required') != null){
                        var text_error = input.getAttribute('required');
                        checkRadios(input,error,text_error,form_id); 
                    }
                }
                if(input.getAttribute('type') == 'checkbox'){
                    if(input.getAttribute('required') != null){
                        var text_error = input.getAttribute('required');
                        checkRadios(input,error,text_error,form_id);  
                    }
                }
            }
        }
        for(var i = 0; i<textars.length;i++){
            textar = textars[i];
            if(textar.getAttribute('required') != null){
                if(textar.value == ''){
                    error[textar.name] = textar.getAttribute('required');
                }
            }	
        }
        for(var i = 0; i<selects.length;i++){
            sel = selects[i];
            if(sel.getAttribute('required') != null){
                if(sel.value == ''){
                    error[sel.name] = sel.getAttribute('required');
                }
            }	
        }
        for(var j in error){
            count++;
        }
        if (count>0){
            showErrors(error);
            return false;
        } else {
                return true;
        }
    }

    function clearErrors(form_id){
        for(var i = 0; i <document.getElementById(form_id).length; i++){
            if(document.getElementById('error'+document.getElementById(form_id)[i].name)){
                document.getElementById('error'+document.getElementById(form_id)[i].name).innerHTML = '';
            }
        }
        if(document.getElementById('error_input_date_rental'))
            document.getElementById('error_input_date_rental').innerHTML = '';
    }

    function showErrors(errors){
        for(var error in errors){
            if(document.getElementById('error'+error)){
                document.getElementById('error'+error).innerHTML = errors[error];
            }
            
        }
    }

    function is_valid_email (email)
    {
        return /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(email);
    }
    
    function is_not_number (number)
    {
        return /^((\d{1,}))$/.test(number);
    }
    
    function checkRadios(input,error,text_error,form_id) { 
        var el = document.forms[form_id].elements; 
        for(var i = 0 ; i < el.length ; ++i) 
        { 
            if(el[i].name == input.name) 
            { 
                var radiogroup = el[el[i].name]; // get the whole set of radio buttons. 
                var itemchecked = false; 
                for(var j = 0 ; j < radiogroup.length ; ++j) 
                { 
                    if(radiogroup[j].checked) 
                    { 
                        itemchecked = true; 
                        break; 
                    } 
                } 
                if(!itemchecked) 
                { 
                    error[el[i].name] = text_error;
                    if(el[i].focus) 
                        el[i].focus(); 
                    return false; 
                } 
            } 
        } 
        return true; 
    }
