/* author: Ivan Terziev */
/* Creation date: 19.4.2007 ?. */
/*document.onmousedown=test_click;
function test_click(e)
{
	if(!e)e=window.event;
	alert(this.id);
}*/
var sel_drop_down;
var custom_ajax_2=0;
var horizontal_offset="9px" //horizontal offset of hint box from anchor link

/////No further editting needed

var vertical_offset="0" //horizontal offset of hint box from anchor link. No need to change.
var ie=document.all
var ns6=document.getElementById&&!document.all


function getposOffset(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
}

function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function clearbrowseredge(obj, whichedge){
var edgeoffset=(whichedge=="rightedge")? parseInt(horizontal_offset)*-1 : parseInt(vertical_offset)*-1
if (whichedge=="rightedge"){
var windowedge=ie && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-30 : window.pageXOffset+window.innerWidth-40
dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure+obj.offsetWidth+parseInt(horizontal_offset)
}
else{
var windowedge=ie && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure-obj.offsetHeight
}
return edgeoffset
}

function showhint(menucontents, obj, e, tipwidth){
				if ((ie||ns6) && document.getElementById("hintbox")){
						dropmenuobj=document.getElementById("hintbox");
						dropmenuobj.innerHTML=menucontents;
						dropmenuobj.style.left=dropmenuobj.style.top=-500;
						if (tipwidth!=""){
							dropmenuobj.widthobj=dropmenuobj.style;
							dropmenuobj.widthobj.width=tipwidth;
						}
						dropmenuobj.x=getposOffset(obj, "left");
						dropmenuobj.y=getposOffset(obj, "top");
						dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+obj.offsetWidth+"px";
						dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+"px";
						dropmenuobj.style.visibility="visible";
						obj.onmouseout=hidetip;
				}
}

function hidetip(e){
dropmenuobj.style.visibility="hidden"
dropmenuobj.style.left="-500px"
}

function createhintbox(){
	var divblock=document.createElement("div");
	divblock.setAttribute("id", "hintbox");
	document.body.appendChild(divblock);
}

if (window.addEventListener) window.addEventListener("load", createhintbox, false)
else if (window.attachEvent) window.attachEvent("onload", createhintbox);
else if (document.getElementById) window.onload=createhintbox;

function NewWin(objpath,w,h)
{
	h=150;
	window.open(objpath,"",'scrollbars=1, resizable=1, width=' +w+ ',height=' +h+ ',left=500,top=400');
}	
function li_hover(elem)
{
	elem.style.background='#F1EFEC';
}
function li_out(elem)
{
	elem.style.background='#FAFAFA';
}


//ot credit-bg

function sel_region(id_region)
{
	loadXMLContentRead("includes/load_city.php?id_region="+id_region);
}

function loadXMLContentRead(url) {
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest;
        req.onreadystatechange = processReqRead;
        req.open("GET", url, true);
        req.send(null);
    } else if (window.ActiveXObject) {
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqRead;
            req.open("GET", url, true);
            req.send(null);
        }
    }
}

function processReqRead() {
	 if (req.readyState == 4) {
        if (req.status == 200) {
		 if(req.responseText !="")
		 {
		 	content=req.responseText;
			if(content!=""){
			document.getElementById('property_city').innerHTML="";
			arr_cities=content.split("<>");
			for(i=0;i<arr_cities.length-1;i++)
			{
				cities=arr_cities[i];
				det_cities=cities.split("->");
				var option=document.createElement('option');
				option.setAttribute('value',det_cities[0]);
				var currenttext = document.createTextNode(det_cities[1]);
				option.appendChild(currenttext);
				document.getElementById('property_city').appendChild(option);
			}
		}
				
				
			
			
		  }
		}
	}
}



function choise_action(form_action)
{
	form_target="";
	form_action1="";
	document.calculator.target=form_target;
	if(form_action1!="") document.calculator.action=form_action1;
	
	
}





function isValidPhone(str) {
	str=str.replace(/ /g,'');
	if (str.length < 6) { return false; }
	if (/[^0-9-]/.test(str)) { return false; }

	
	return true;
}

function isValidYear(str) {
	str=str.replace(/ /g,'');
	if (str.length != 4 ) { return false; }
	if (/[^0-9-]/.test(str)) { return false; }
	if(str<1900){ return false; }
	if(str>2008){ return false; }
	return true;
}
function ValidName(strName) {
	if (/[^A-Za-z -'абвгдежзийклмнопрстуфхцчшщьъюяАБВГДЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЪЮЯ']/.test(strName)) { return false; }
	return true;
}

function ValidStreetAddress(strAddress) {
	if (strAddress.length < 3) { return false; }
	return true;
}


//za 4islo
function js_check_value_numeric(val,val_min,val_max){
	var objRegExp  =/(^-?\d\d*$)/;
	if(val>=val_min && val<=val_max)return objRegExp.test(val);
	else return false;
}

function validateInteger( strValue ) {
  var objRegExp  = /(^-?\d\d*$)/;

  //check for integer characters
  return objRegExp.test(strValue);
}
function js_check_value_char(val,val_min,val_max){
	if(val.length>=val_min && val.length<=val_max)return true;
	else return false;
}
function js_check_value_checkbox(val,val_min,val_max){
	if(val=='on')return true;
	else return false;
}
function js_check_value_tc(val,val_min,val_max){
	if(val=='on')return true;
	else return false;
}
function change_checkbox(element)
{
	var el=element;
	if(el.checked) el.value='on';
	else el.value='false';
}
function js_check_value_mail(val,val_min,val_max){
	var objRegExp  =/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
	return objRegExp.test(val);
}
function validateEmail( strValue) {
var objRegExp  =/(^[a-z]([a-z_\.]*)@([a-z_\.]*)([.][a-z]{3})$)|(^[a-z]([a-z_\.]*)@([a-z_\.]*)(\.[a-z]{3})(\.[a-z]{2})*$)/i;

  //check for valid email
  return objRegExp.test(strValue);
}

function send_form()
{
	//window.alert("test"+document.getElementById("nav").value);
	
		if(document.getElementById("nav").value==1)
		{
			if(js_check_form_field_value()==true)return false;
			else return true;
		}else return true;
}

function send_search_form(){
	url=url_mine_site;
	delim="";
	if(document.getElementById('hscs').checked==true){
		if(document.getElementById('city_id').value && document.getElementById('city_id').value!=0){
			url +=document.getElementById('city_id').value;
				delim="_";
		}
		if(document.getElementById('region_id').value){
			url +=delim+document.getElementById('region_id').value+"-обяви";
				delim="-";
		}
		if(document.getElementById('sub_category_id').value && document.getElementById('sub_category_id').value!=0) {
			url +=delim+document.getElementById('sub_category_id').value;
			delim="_";
		}
		if(document.getElementById('category').value) {
			url +=delim+document.getElementById('category').value;
			delim="-";
		}
		for (var i=0; i<document.custom_search_form.offer_type.length; i++) {
			if (document.custom_search_form.offer_type[i].checked)  {
				url +=delim+"обява-"+document.custom_search_form.offer_type[i].value;
				delim="-";
			} 
		}
	}
	if(document.getElementById('search').value)url +=delim+"kwd-"+document.getElementById('search').value;
	url+=".html";
	window.location=url;
	return false;
}





function loadXMLContentRead1(url) {
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest;
        req.onreadystatechange = processReqRead1;
        req.open("GET", url, true);
        req.send(null);
    } else if (window.ActiveXObject) {
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqRead1;
            req.open("GET", url, true);
            req.send(null);
        }
    }
}

function processReqRead1() {
	 if (req.readyState == 4) {
        if (req.status == 200) {
		 	if(req.responseText !="")
		 	{
				content=req.responseText;
				//alert(document.getElementById('kod_calc'));
				if(content!=""){
				content=content.replace(/\[/g,"&lt;");
				content=content.replace(/\]/g,"&gt;");
					document.getElementById('gen_kod_frame').innerHTML=content;
							
				}
			}
		}
	}
}

function ch_calcs(){
id_calc=document.getElementById('calculator_id').value;
url="../calculators/generate_calc_kod.php?calculator_id="+id_calc;
loadXMLContentRead1(url);
return false;
}



//izbiraiki region ti se listvat vsichki gradove v tozi region
function sel_city(i,g){	
	var id_region=document.getElementById(g).value;
	
	url=url_mine_site+"includes/get_cities.php?id_region="+id_region;
	t_select=document.getElementById(i);
	t_select.innerHTML='';	
	loadXMLContentDropDown(url);
	//alert(id_region);
	if(id_region!=0 && id_region!="Цялата-страна"){
		document.getElementById('hide_city_id').style.display='';
		
	}else {
		document.getElementById('hide_city_id').style.display='none';
	}
}

function sel_sub_category(i,g){	
	var id_region=document.getElementById(g).value;
	
	url=url_mine_site+"includes/get_sub_category.php?parent_id="+id_region;
	t_select=document.getElementById(i);
	t_select.innerHTML='';	
	loadXMLContentDropDown(url);
	switch (id_region){
	case "2": 
	case "4":
	case "5":
	case "7":
	case "9":
	case "10":
	case "18":
	case "24":
	case "Автомобили":
	case "Имоти":
	case "Имоти-под-наем":
	case "Работа":
	case "Образование":
	case "Услуги":
	case "Здраве-и-красота":
	case "Животни-и-растения":
		document.getElementById('hide_sub_category_id').style.display='';
	break;
		default :
			document.getElementById('hide_sub_category_id').style.display='none';
		break;
	}
}

function loadXMLContentDropDown(url){

    if (window.XMLHttpRequest) {

        req = new XMLHttpRequest;

        req.onreadystatechange = processReqDD;

        req.open("GET", url, true);

        req.send(null);

    } else if (window.ActiveXObject) {

        isIE = true;

        req = new ActiveXObject("Microsoft.XMLHTTP");

        if (req) {

            req.onreadystatechange = processReqDD;

            req.open("GET", url, true);

            req.send(null);

        }

    }

}

function processReqDD() {
	 if (req.readyState == 4) {
        if (req.status == 200) {
		 	if(req.responseText !="")
		 	{
		 		msg=req.responseText;
				if (typeof DOMParser == "undefined") {
   					DOMParser = function () {}
   					DOMParser.prototype.parseFromString = function (str, contentType) {
      				if (typeof ActiveXObject != "undefined") {
				         var d = new ActiveXObject("MSXML.DomDocument");
				         d.loadXML(str);
				         return d;
				      } else if (typeof XMLHttpRequest != "undefined") {
				         	var req = new XMLHttpRequest;
				        	req.open("GET", "data:" + (contentType || "application/xml") + 	";charset=windows-1251," + encodeURIComponent(str), false);
				        	if (req.overrideMimeType) {
				           		req.overrideMimeType(contentType);
				        	}
							req.send(null);
				        	return req.responseXML;
				      	}
   			  		}
				}
				var xmlobject = (new DOMParser()).parseFromString(msg, "text/xml");
				var root = xmlobject.getElementsByTagName('nmsg')[0];
				var items = root.getElementsByTagName("item");
				for (var i = 0 ; i < items.length ; i++) {
					var item = items[i];
					var type_elem = item.getAttribute("elem");					
					switch(type_elem){
						case 'option' :
							var e_option=document.createElement('option');
							try{
								var currenttext = document.createTextNode(item.firstChild.nodeValue);
								e_option.appendChild(currenttext); 
							}catch(err){
								var currenttext = document.createTextNode("-");
								e_option.appendChild(currenttext); 
							}
							add_elemnt(e_option,item);
							if(sel_drop_down == e_option.value)e_option.selected=true;
							t_select.appendChild(e_option); 
						break;
					}
				}
				if(custom_ajax_2==1){
					sel_city('city_id','region_id');
					custom_ajax_2=0;
				}
			}
		}
	}
}
function hide_show_custom_search_link(){
	if(document.getElementById('hscs').checked==true)document.getElementById('hscs').checked=false;
	else document.getElementById('hscs').checked=true;
	hide_show_custom_search();
}
function hide_show_custom_search(){
	if(document.getElementById('hscs').checked==true){ 
		document.getElementById('holder_custom_search').style.display='';
		custom_ajax_2=1;
		sel_sub_category('sub_category_id','category');
	}else document.getElementById('holder_custom_search').style.display='none';
}

function add_elemnt(element,xmlelem){

	var elem=element;

	

	var attribute = xmlelem.getAttribute("id");

	if(attribute != '' && attribute != null)elem.setAttribute('id',attribute);

	var attribute = xmlelem.getAttribute("width");

	if(attribute != '' && attribute != null)elem.setAttribute('width',attribute);

	var attribute = xmlelem.getAttribute("colspan");

	if(attribute != '' && attribute != null)elem.setAttribute('colspan',attribute);

	var attribute = xmlelem.getAttribute("bg");

	if(attribute != '' && attribute != null)elem.style.background=attribute;

	var attribute = xmlelem.getAttribute("border");

	if(attribute != '' && attribute != null)elem.style.border=attribute;

	var attribute = xmlelem.getAttribute("color");

	if(attribute != '' && attribute != null)elem.style.color=attribute;

	var attribute = xmlelem.getAttribute("value");

	if(attribute != '' && attribute != null)elem.setAttribute('value',attribute);

	var attribute = xmlelem.getAttribute("js");

	if(attribute!='' && attribute!=null){

		arr_js=attribute.split("#");

		for(i=0;i<arr_js.length;i++){

			str_event=arr_js[i].split("=");

			the_event=str_event[0];

			the_function=str_event[1];

			addEvent(elem, the_event, eval(the_function), false);

		}

	}

}



