var basePrice;
var checkHidden = 0;
var whoami=navigator.userAgent.toLowerCase();  //use lower case name
var my_version = parseInt(navigator.appVersion); //get version
var is_ie = (whoami.indexOf("msie") != -1); //does name contain 'msie'?
var timeout    = 500;
var closetimer = 0;
var ddmenuitem = 0;

function jsddm_open(){  
	jsddm_canceltimer();
	jsddm_close();
	ddmenuitem = $(this).find('ul.dropdown').css('visibility', 'visible');}

function jsddm_close()
{  if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}

function jsddm_timer()
{  closetimer = window.setTimeout(jsddm_close, timeout);}

function jsddm_canceltimer()
{  if(closetimer)
   {  window.clearTimeout(closetimer);
      closetimer = null;}}

function setCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function removeCookie(name) {
	createCookie(name,"",-1);
}

function removeAllMarkers()
{//old function removePoints is newer
   
   for (var i = 0; i < markersArray.length; i++) 
   {
      map.removeOverlay(markersArray[i]);
   }
   
   markersArray = new Array();
   
   map.setCenter(new GLatLng( 42.710000,23.340000), 11);
   
   if (gmarkers){
   for (var i = 0; i < gmarkers.length; i++) 
   {
      map.removeOverlay(gmarkers[i]);
   }
   
   gmarkers = new Array();
   
   map.setCenter(new GLatLng( 42.710000,23.340000), 11);
   }
}

function get_markers(){
	gmarkers = back_up_gmarkers; 
	for (var i = 0; i < gmarkers.length; i++) 
   		{
			map.addOverlay(gmarkers[i]);
   		}
}

function createCurrentMarker(lat,lng,html) {
	var point = new GLatLng(lat,lng);
	var marker = new GMarker(point);
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
    map.addOverlay(marker);
    markersArray.push(marker);
}

function lookforcats(id,name) {
	alert('dasdas');
	document.getElementById('choosen_cat').value = 'Избрана: '+name;
}


function search_by(inputString1, type, id) {//type = 1 byAddres; type = 2 byName; PVM
	
	if(typeof zoomListener != "undefined") GEvent.removeListener(zoomListener);
	if(typeof zoomEndListener != "undefined") GEvent.removeListener(zoomEndListener);
	
	if(inputString1.length == 0) {
		// Hide the suggestion box.
		$('#suggestions-'+type).hide();
		removePoints();
	} else {
		removePoints();
		$.post("/objects/findObjects/"+type+"/"+id, {entered_val: inputString1}, function(data){
				$('#load_js').html(data);
				$('#suggestions-'+type).hide(); 
				if(type == 1 && typeof id == "undefined") showAddress(inputString1);
				if(typeof id != "undefined"){
					setCenterToPoint(foundObjects[id]);
					GEvent.trigger(foundObjects[id], "click");
				}
		});
	}
}
	
function fill(thisValue, id, type) { //PVM
	$('#'+id).val(thisValue);
	setTimeout($('#suggestions-'+type).hide(), 200);
}

function enter_key(value, type){
 $(document).keypress(function (evt) { 
     if (evt.keyCode == 13) { 
     	search_by(value, type);
     	return false; 
     }
     return true; 
 });
}

function removePoints(switch_array, cat_id){
	if(typeof switch_array == "undefined" || switch_array == 1){
		if(pointArr.length > 0){
			for(var i=0; i < pointArr.length; i++){
				if(typeof pointArr[i][1] != "undefined"){
					map.removeOverlay(pointArr[i][1]);
				}
				pointArr.splice(i, 1);
				i--;
			}
		}
		ids_objects_arr[0] = [];
	}else if (switch_array == 2){
		if(foundObjects.length > 0){
			for(var i=0; i < foundObjects.length; i++){
				if(typeof foundObjects[i] != "undefined"){
					map.removeOverlay(foundObjects[i]);
					//delete foundObjects[i];
				}
			}
			foundObjects = [];
		}
	}else if (switch_array == 3){
		if(pointArrAddress.length > 0){
			for(var i=0; i < pointArrAddress.length; i++){
				if(typeof pointArrAddress[i] != "undefined"){
					map.removeOverlay(pointArrAddress[i]);//alert(i);
					//delete pointArrAddress[i];
				}
				pointArrAddress.splice(i, 1);
				
			}
		}
	}else if (switch_array == 4){
		var undef;
		if(typeof pointArrByCat[cat_id] != "undefined"){
			if(pointArrByCat[cat_id].length > 0){
				for(var i=0; i < pointArrByCat[cat_id].length; i++){
					if(typeof pointArrByCat[cat_id][i][1] != "undefined"){
						map.removeOverlay(pointArrByCat[cat_id][i][1]);
					}
					if(cat_id == 0) type = 1; else type = 0;
					ids_objects_arr[type][pointArrByCat[cat_id][i][0]] = undef;
					pointArrByCat[cat_id].splice(i, 1);
					i--;
				}
			}
		}
	}
	//map.closeInfoWindow();
	//map.clearOverlays();
	//map.setCenter(new GLatLng(42.698221, 23.329468), 11);
}

function removePolygons(array){
	if(polygonArr.length > 0){
		for(i in polygonArr){
			map.removeOverlay(polygonArr[i]);
		}
	}
	polygonArr = [];
}

function checkUncheck(elements) {
	field = document.getElementsByName(elements);
	checkflag = field[0].checked;
	 
	if (checkflag == false) {
	  for (i = 0; i < field.length; i++) { 
	  	
	  	field[i].checked = true; }
	  checkflag = true;
	  }
	else {
	  for (i = 0; i < field.length; i++) {
	  	
	  field[i].checked = false; }
	  checkflag = false;
	  }
}
	  
function selectCheckbox(elements) {
	field = document.getElementsByName(elements);
	  for (i = 0; i < field.length; i++) { 
	  field[i].checked = true; }
}	  

function deselectCheckbox(elements) {
	field = document.getElementsByName(elements);
	  for (i = 0; i < field.length; i++) { 
	  field[i].checked = false; }
}

function checkUncheckIds(elements) {
	field = document.getElementById(elements[0]);
	checkflag = field.checked;
	if (checkflag == false) {
	  for (i = 0; i < elements.length; i++) { 
	  	
	  	document.getElementById(elements[i]).checked = true; }
	  checkflag = true;
	  }
	else {
	  for (i = 0; i < elements.length; i++) {
	  document.getElementById(elements[i]).checked = false; }
	  checkflag = false;
	  }
}	  
	  
	  
function showHideCheck(){
	novo = document.getElementById('stroitelstvo');
	 if ( checkHidden == 0 ) {
 
	 novo.style.visibility='visible';
	 novo.style.display='block';
 	 novo.style.height='100%';
 	 checkHidden = 1;
 	 }
 	 else {
 	 novo.style.display='none';
 	 novo.style.visibility='hidden';
 	 novo.style.height='5px';
 	 checkHidden = 0; 
     }
}

	function fixIeDropDown(select){

			var select = (typeof select == "string") ? document.getElementById(select) : select;

			// THIS FUNCTION IS ONLY CONCERNED WITH INTERNET EXPLORER NON-MULTIPLE SELECT NODES THAT HAVE A SPECIFIC WIDTH DEFINED
			if ( !is_ie) return;
			if(!select.attachEvent || navigator.userAgent.indexOf("Opera") > -1 || select.multiple || select.currentStyle.width == "auto") { return; }

			var body = document.getElementsByTagName("body").item(0);

			var si = select.selectedIndex;
			var clone = select.cloneNode(true);
			clone.style.position = "absolute";
			clone.style.visibility = "hidden";
			clone.style.width = "auto";		
			body.appendChild(clone);

			clone._initialOffsetWidth = select.offsetWidth;
			clone._initialOffsetHeight = select.offsetHeight;
			clone._autoWidth = clone.offsetWidth;

			clone = body.removeChild(clone);
			clone.style.visibility = "visible";
			clone.style.width = clone._initialOffsetWidth + "px";

			var span = document.createElement("span");
			span._isIeDropDownContainer = true;
			span.style.position = "relative";
			span.style.width = clone._initialOffsetWidth + "px";
			span.style.height = clone._initialOffsetHeight + "px";
			span.style.marginBottom = "10"; //hmm...quirky...
			span.appendChild(clone);

			if (select.parentNode._isIeDropDownContainer){
				select.parentNode.parentNode.replaceChild(span, select.parentNode);
			}else{
				select.parentNode.replaceChild(span, select);
			}
			

			if (clone._autoWidth > clone._initialOffsetWidth){
				var expand = function(){
					event.srcElement.parentNode.style.zIndex = 1;
					event.srcElement.style.width = "auto";
					if (event.srcElement.offsetWidth > event.srcElement._initialOffsetWidth){
						event.srcElement.style.width = "auto";
					}else{
						event.srcElement.style.width = event.srcElement._initialOffsetWidth + "px";
					}
				};
				var contract = function(){
					event.srcElement.parentNode.style.zIndex = 0;
					event.srcElement.style.width = event.srcElement._initialOffsetWidth + "px";

				};
				clone.attachEvent("onactivate", expand);
				clone.attachEvent("onchange", contract);
				clone.attachEvent("ondeactivate", contract);
			}
			clone.selectedIndex = si;
		}
	
function expand(id) {
	elm = document.getElementById(id);
	vis = elm.style.visibility;
	if ( vis == 'hidden') {
		elm.style.visibility='visible';
		elm.style.height='100%';
		elm.style.display='block';
		set_expand(id, 'visible', 1);
	}
	else {
		elm.style.visibility='hidden';
		elm.style.display='none';
		elm.style.height='1px';
		set_expand(id, 'hidden', 1);
	}
}

function set_expand(name, vis) {
	setCookie(name, vis, 1);
}

function get_expand(name) {
	vis = getCookie(name);

	if ( vis == null  ) {
		document.getElementById(name).style.height='1px';
		document.getElementById(name).style.visibility='hidden';
		document.getElementById(name).style.display='none';
		document.getElementById(name+'_pm').innerHTML = '+';
		set_expand(name, 'hidden');

	}
	else if ( vis == 'hidden') {
		document.getElementById(name).style.height='1px';
		document.getElementById(name).style.visibility='hidden';
		document.getElementById(name).style.display='none';
		document.getElementById(name+'_pm').innerHTML = '+';
		set_expand(name, 'hidden');
	}
	else {
		document.getElementById(name).style.height='100%';
		document.getElementById(name+'_pm').innerHTML = '-';
		document.getElementById(name).style.display='block';
		document.getElementById(name).style.visibility='visible';
		set_expand(name, 'visible');
	}


}


function expand1(id) {
	elm = document.getElementById(id);
	vis = elm.style.visibility;
	if ( vis == 'hidden') {
		elm.style.visibility='visible';
		elm.style.height='100%';
		elm.style.display='block';
		set_expand1(id, 'visible', 1);
		document.getElementById(id+'_pm');
	}
	else {
		elm.style.visibility='hidden';
		elm.style.display='none';
		elm.style.height='1px';
				document.getElementById(id+'_pm');
		set_expand1(id, 'hidden', 1);
	}
}

function set_expand1(name, vis) {
	setCookie(name, vis, 1);
}

function get_expand1(name) {
	vis = getCookie(name);
	
	if ( vis == null  ) {
		document.getElementById(name).style.height='1px';
		document.getElementById(name).style.visibility='hidden';
		document.getElementById(name).style.display='none';
		document.getElementById(name+'_pm');
		set_expand1(name, 'hidden');

	}
	else if ( vis == 'hidden') {
		document.getElementById(name).style.height='1px';
		document.getElementById(name).style.visibility='hidden';
		document.getElementById(name).style.display='none';
		document.getElementById(name+'_pm');
		set_expand1(name, 'hidden');
	}
	else {
		document.getElementById(name).style.height='100%';
		document.getElementById(name+'_pm');
		document.getElementById(name).style.display='block';
		document.getElementById(name).style.visibility='visible';
		set_expand1(name, 'visible');
	}


}

function setPrice(quan) {
	price = document.getElementById('priceZ').value;
 	resz = parseFloat(price*quan);
	res=(resz.toFixed(2));
	document.getElementById('prsq').innerHTML = res;
}

function showComments(b_next)
{
	var t;
	var gNodes = document.getElementById('comments').childNodes;
	var gNewsNodes = new Array();
	var nToShow = 0;
	for (var i = 0; gNodes.length > i; i ++)
	{
		if (gNodes[i].tagName == "DIV" && gNodes[i].className == "nrow")
		{
			gNewsNodes[gNewsNodes.length] = gNodes[i];
			if (gNodes[i].style.display == "block")
			{
				nToShow = gNewsNodes.length-1;
				gNodes[i].style.display = "none";
			}
		}
	}
	if (b_next)
	{
		nToShow = nToShow+1;
		if (gNewsNodes[nToShow])
			gNewsNodes[nToShow].style.display = "block";
		else
			gNewsNodes[gNewsNodes.length-1].style.display = "block";
		nToShow = nToShow+1;
		if (gNewsNodes[nToShow])
			gNewsNodes[nToShow].style.display = "block";
		else
			gNewsNodes[gNewsNodes.length-2].style.display = "block";
		nToShow = nToShow+1;
		if (gNewsNodes[nToShow])
			gNewsNodes[nToShow].style.display = "block";
		else
			gNewsNodes[gNewsNodes.length-3].style.display = "block";
	}
	else
	{
		nToShow = nToShow-3;
		if (gNewsNodes[nToShow])
			gNewsNodes[nToShow].style.display = "block";
		else
			gNewsNodes[0].style.display = "block";
		nToShow = nToShow-1;
		if (gNewsNodes[nToShow])
			gNewsNodes[nToShow].style.display = "block";
		else
			gNewsNodes[1].style.display = "block";
		nToShow = nToShow-1;
		if (gNewsNodes[nToShow])
			gNewsNodes[nToShow].style.display = "block";
		else
			gNewsNodes[2].style.display = "block";
	}
//	t=setTimeout("showNews()",5000);
}

function hideFlashMessage() {
     $('#flash_message').fadeOut(1000, function () {}); 
}

function MouseOutStar(path)
{
	for(i=1;i<=6;i++)
	{
			e("bal_"+i).src=path+"bal_2.gif";
	}
}

function MouseOverStar(id, path)
{
	id_num=id.substr(4,2);
	for(i=1;i<=6;i++)
	{
		if (i<=id_num) {
			e("bal_"+i).src=path+"bal_1.gif";
		}
		else {
			e("bal_"+i).src=path+"bal_2.gif";
		}
	}
	//e("vote").value=id_num;
}

function e(id)
{
	return document.getElementById(id);
}

function remove_right_obj(id){
	$('#obj_tabs_'+id).remove();
	$('#clear_line_'+id).remove();
}

var filesCount=1;
function add_photo_field(container_id, name_array){
	if ( filesCount >= 10 ) return(alert('Достигнат е максималният брой на едновременно качване на снимки!'));
	$("#"+container_id).append('<span><br /><input type="file" name='+name_array+'[] onchange="add_photo_field(\'photo\', \'photo\')" /></span>');
	$("#"+container_id).append('&nbsp;<a href="javascript:;" onclick=\'$(this).prev().remove();$(this).remove();\') class="button">изтрий</a>');
	filesCount++;
}

function popUp(URL, width, height) {
	day = new Date();
	id = day.getTime();
	if(typeof width == "undefined") width = 800;
	if(typeof height == "undefined") height = 600;
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=yes,location=0,statusbar=0,menubar=0,resizable=yes,width="+width+",height="+height+",left = 0,top = 0');");
}


function toggleFields(option){//PVM
	if(option.hasClass("is_firm"))
	{
		$(".for_firm").show();
	}
	else
	{
		$(".for_firm").hide();
	}
}


function search_by_street(street_name){
	$("#address").val(street_name);
	$("#search_form").submit();
}

//Array extension

 function cleanArray(array, deleteValue) {
 	if(typeof array == "undefined") return;
	for (var i = 0; i < array.length; i++) 
	{    
		if (array[i] == deleteValue) 
		{               
			array.splice(i, 1);      
			i--;    
		}  
	}  
	return array;
}

function hideHelpBox(){
	
	$('#helpMark').css('border', '1px solid #227AC4');
	$('#helpMark').css('border-left', 'none');
	$('#helpBox').hide();
	

}

function showHelpBox(){
	$('#helpMark').css('border', '1px solid #33a6ef');
	$('#helpMark').css('border-left', 'none');
	$('#helpBox').show();
}
