/*
=================================================================================
 Copyright (c) 2008 Optimal Development
=================================================================================
 Данный код защищен авторскими правами
=================================================================================
 Файл: site_objects.js
-------------------------------------------------------------------------------------------------------------------------
 Назначение: скрипты для раздела "Жилье"
=================================================================================
*/
function _vcObjectsExpandObjectPhoto()
{
	return hs.expand(document.getElementById('photo'));
}

function _vcObjectsShowPhotosFormByPhotosLimit()
{
	var uploadLimit=document.getElementById('max_upload_photos');
	var uploadLimitInfo=document.getElementById('upload_limit_info_counter');
	var formBlock=document.getElementById('upload_photos_form_block');
	var blockTbl=document.getElementById('images_block');
	var addButton=document.getElementById('add_i_button');
	var removeButton=document.getElementById('remove_i_button');
	
	if(uploadLimit.value==''||uploadLimit.value>0)
	{
		if(uploadLimit.value!='')
		{
			uploadLimitInfo.innerHTML=uploadLimit.value;
		}
		if(uploadLimit.value=='')
		{
			uploadLimit.value=999;
		}
		if(blockTbl.rows.length>uploadLimit.value)
		{
			for(var blockForRemove=blockTbl.rows.length-uploadLimit.value;blockForRemove>0;blockForRemove--)
			{
				vcObjectsRemoveFormImagesBlock();
			}
			addButton.disabled='disabled';
			removeButton.disabled='';
		}
		else if(blockTbl.rows.length==uploadLimit.value)
		{
			addButton.disabled='disabled';
			removeButton.disabled='';
		}
		else
		{
			addButton.disabled='';
			removeButton.disabled='disabled';
		}
		formBlock.style.display='block';
	}
	else
	{
		formBlock.style.display='none';
	}
}

function vcObjectsShowBlockViews(objectId,page)
{
	var ajax=new vc_ajax();
	
	ajax.onShow('');
	
	ajax.setVar('target','objects');
	ajax.setVar('action','showviewers');
	ajax.setVar('object_id',objectId);
	ajax.setVar('page',page);
	
	ajax.requestFile="/ajax.php";
	ajax.method='GET';
	ajax.execute=true;
	ajax.element='object_'+objectId+'_views';
	ajax.sendAJAX();
}

function vcObjectsCheckSelectedCity(city)
{
	var form=document.getElementById('addnew_form');
	var inputBlock=document.getElementById('block_new_city');
	
	if(city<0)
	{
		inputBlock.style.display='block';
	}
	else if(city==0)
	{
		inputBlock.style.display='none';
		return false;
	}
	else
	{
		inputBlock.style.display='none';
	}
	return true;
}

function vcObjectsCheckSelectedObjType(type)
{
	var blockRooms=document.getElementById('block_input_rooms');
	var blockFloors=document.getElementById('block_input_floors');
	var blockFloor=document.getElementById('block_input_floor');
	
	if(type==1)
	{
		blockRooms.style.display='block';
		blockFloors.style.display='block';
		blockFloor.style.display='none';
	}
	else if(type==2||type==3||type==4)
	{
		blockRooms.style.display='block';
		blockFloors.style.display='none';
		blockFloor.style.display='block';
	}
	else
	{
		blockRooms.style.display='block';
		blockFloors.style.display='block';
		blockFloor.style.display='block';
	}
}

function vcObjectsCheckSelectedObjType_Table(type)
{
	var blockRooms=document.getElementById('block_input_rooms');
	var blockFloors=document.getElementById('block_input_floors');
	var blockFloor=document.getElementById('block_input_floor');

	if(type==1)
	{
		blockRooms.style.display="block";
		blockFloors.style.display="block";
		blockFloor.style.display="none";
	}
	else if(type==2||type==3||type==4)
	{
		blockRooms.style.display="block";
		blockFloors.style.display="none";
		blockFloor.style.display="block";
	}
	else
	{
		blockRooms.style.display="block";
		blockFloors.style.display="block";
		blockFloor.style.display="block";
	}
}

function vcObjectsShowPriceBySelectedCategory(category)
{
	var blockPriceDay=document.getElementById('block_input_price_day');
	var blockPriceWeek=document.getElementById('block_input_price_week');
	var blockPriceMonth=document.getElementById('block_input_price_month');
	var blockPriceFull=document.getElementById('block_input_price_full');
	
	if(category==1)
	{
		blockPriceDay.style.display='none';
		blockPriceWeek.style.display='none';
		blockPriceMonth.style.display='none';
		blockPriceFull.style.display='block';
	}
	else
	{
		blockPriceDay.style.display='block';
		blockPriceWeek.style.display='block';
		blockPriceMonth.style.display='block';
		blockPriceFull.style.display='none';
	}
}

function vcObjectsCheckAddform()
{
	return true;
}

function vcObjectsAddFormImagesBlock()
{
	var tbl=document.getElementById('images_block');
	var addButton=document.getElementById('add_i_button');
	var removeButton=document.getElementById('remove_i_button');
	var maxRows=document.getElementById('max_upload_photos');
	var lastRowNum=tbl.rows.length;
	var newRow=tbl.insertRow(lastRowNum);
	var cell=newRow.insertCell(0);
	
	if(lastRowNum<maxRows.value)
	{
		div=document.createElement('div');
		div.innerHTML=_vcObjectsCreateForm(lastRowNum);
		cell.appendChild(div);
	}
	
	if(lastRowNum>=maxRows.value)
	{
		addButton.disabled='disabled';
    }
    removeButton.disabled='';
    return false;
}

function vcObjectsRemoveFormImagesBlock()
{
    var tbl=document.getElementById('images_block');
    var addButton=document.getElementById('add_i_button');
    var removeButton=document.getElementById('remove_i_button');
    var lastRowNum=tbl.rows.length;
	
    if(lastRowNum>1)
    {
        tbl.deleteRow(lastRowNum-1);
        if((lastRowNum-1)<=1)
        {
            removeButton.disabled='disabled';
        }
        addButton.disabled='';
    }
    return false;
}

function vcObjectsDeleteObject(objectId,mode)
{
    if(confirm(vcCommonRemoveConfirm))
    {
        var ajax=new vc_ajax();
		
        ajax.setVar('target','objects');
        ajax.setVar('action','removeobject');
        ajax.setVar('object_id',objectId);
		
        if(mode==1)
        {
            ajax.onShow('');
			
            ajax.onCompletion=function() {
                var div=document.getElementById('my_object_'+objectId);
                if(this.response==1)
                {
                    div.style.display='none';
                }
            }
        }
        else
        {
            ajax.onCompletion=function() {
                if(this.response==1)
                {
                    var newUrl=location.href.replace(/^(http:\/\/(([a-z0-9-]+)(\.)?)+\/[a-z]{2}\/objects).*$/i,'$1')+".html";
                    alert(vcObjectsObjectRemovedSuccess);
                    location.href=newUrl;
                }
                else
                {
                    alert(vcObjectsObjectRemovedFailed);
                }
            }
        }
		
        ajax.requestFile="/ajax.php";
        ajax.method='POST';
        ajax.sendAJAX();
    }
}

function vcObjectsEditObject(objectId,mode)
{
    var newUrl=location.href.replace(/^(http:\/\/(([a-z0-9-]+)(\.)?)+\/).*$/i,'$1')+"?part=objects&lang="+interfaceLang+"&edit="+objectId;
	
    if(mode==1)
    {
        open(newUrl,'_blank');
    }
    else
    {
        location.href=newUrl;
    }
}

function vcObjectsRemoveObjectPhoto(objectId,photoId)
{
    if(confirm(vcCommonRemoveConfirm))
    {
        var ajax=new vc_ajax();
		
        ajax.onShow('');
		
        ajax.setVar('target','objects');
        ajax.setVar('action','removephoto');
        ajax.setVar('object_id',objectId);
        ajax.setVar('photo_id',photoId);
		
        ajax.requestFile="/ajax.php";
        ajax.method='POST';
        ajax.execute=true;
        ajax.element='exists_photos_list';
        ajax.sendAJAX();
    }
}

function vcObjectsSetPrimaryObjectPhoto(objectId,photoId)
{
    if(confirm(vcObjectsSetPrimaryPhotoConfirm))
    {
        var ajax=new vc_ajax();
		
        ajax.onShow('');
		
        ajax.setVar('target','objects');
        ajax.setVar('action','setprimaryphoto');
        ajax.setVar('object_id',objectId);
        ajax.setVar('photo_id',photoId);
		
        ajax.requestFile="/ajax.php";
        ajax.method='POST';
        ajax.execute=true;
        ajax.element='exists_photos_list';
        ajax.sendAJAX();
    }
}

function vcObjectsCheckSearchCategory()
{
    var form=document.getElementById('search_form');
	
    if(form.category.value==1)
    {
        document.getElementById('search_term').style.display='none';
    }
    else if(form.category.value==2)
    {
        document.getElementById('search_term').style.display='inline';
    }
    else
    {
        document.getElementById('search_term').style.display='none';
    }
}

function vcObjectsCheckSearchType()
{
//    var form=document.getElementById('search_form');
//
//    if(form.type.value==1)
//    {
//        document.getElementById('search_floors').style.display='inline';
//        document.getElementById('search_rooms').style.display='inline';
//        document.getElementById('search_floor').style.display='none';
//    }
//    else if(form.type.value==2||form.type.value==3)
//    {
//        document.getElementById('search_rooms').style.display='inline';
//        document.getElementById('search_floor').style.display='inline';
//        document.getElementById('search_floors').style.display='none';
//    }
//    else if(form.type.value==4)
//    {
//        document.getElementById('search_floor').style.display='inline';
//        document.getElementById('search_rooms').style.display='none';
//        document.getElementById('search_floors').style.display='none';
//    }
//    else
//    {
//        document.getElementById('search_floor').style.display='inline';
//        document.getElementById('search_rooms').style.display='inline';
//        document.getElementById('search_floors').style.display='inline';
//    };


    href=window.location.href;
    price=href.substring(href.lastIndexOf('price_max')+10,href.lastIndexOf('term')-1);
    
    if (price.length > 4)
    {
        price=href.substring(href.lastIndexOf('price_min')+10,href.lastIndexOf('term')-1);
    }
    if (price.length <= 4) 
    {
        priceId=new String();
        priceId="price"+price;
        priceSelect=document.getElementById(priceId);
        priceSelect.selected=true;
    }
}

function vcObjectSubmitSearchForm()
{
	var newUrl=location.href.replace(/^(http:\/\/(([a-z0-9-]+)(\.)?)+\/).*$/i,'$1')+"?part=objects&lang="+interfaceLang;
	var form=document.getElementById('search_form');
	if(form.price_max.value.match(/[^0-9]/))
	{
		form.price_max.value='';
	}

        if(form.district.value>0)
	{
		newUrl+="&district="+form.district.value;
	}

	if(form.city.value>0)
	{
		newUrl+="&city="+form.city.value;
	}
	if(form.type.value>0)
	{
		newUrl+="&type="+form.type.value;
	}

        if(form.price_max.value>0)
        {
		newUrl+="&price_max="+form.price_max.value+"&term="+form.term.value;
		newUrl+="&currency="+form.currency.value;
	}

 
        if(form.price_max.value=='0')
        {
            newUrl+="&price_min="+form.price_max.options[form.price_max.selectedIndex-1].text+"&term="+form.term.value;
            newUrl+="&currency="+form.currency.value;
        }
        if(form.sort.options[form.sort.selectedIndex].value>0)
        {
            newUrl+="&sort="+form.sort.options[form.sort.selectedIndex].value;
        }

	location.href=newUrl;
}

function vcObjectsSearchDistrictCities()
{

    var href=location.href;
    var lang=href.substring(href.lastIndexOf('lang')+5);

    var district=document.getElementById("districts");
    district = (district.options[district.selectedIndex].value);

    var ajax=new vc_ajax();
    ajax.onShow('');

    if ((district==null) || (district==''))
    {

    }
    else
    {
        ajax.setVar('newdistrict',district);
    }
    ajax.setVar('target','objects');
    ajax.setVar('action','findDistrictCities');
    ajax.setVar('element','cities');
    ajax.setVar('lang',lang);
 
    ajax.requestFile="/ajax.php";
    ajax.method='GET';
    ajax.execute=true;
    ajax.sendAJAX();

}


function checkall(f)
{
    errString=new String();
    errString="";
    user_login_old=document.getElementById("userLoginOld");
    if (user_login_old.value==undefined || user_login_old.value=="")
    {
        user_login=document.getElementById("user_login");
        if (user_login.value==undefined || user_login.value=="")
            errString=errString+ "Вы должны заполнить поле 'Логин' \n"

        user_email=document.getElementById("user_email");
        user_contacts_phone=document.getElementById("user_contacts_phone");
        user_mobile_phone=document.getElementById("user_mobile_phone");
        user_icq=document.getElementById("user_icq");
	

        if ((user_email.value==undefined || user_email.value=="")
             && (user_contacts_phone.value==undefined || user_contacts_phone.value=="")
             && (user_mobile_phone.value==undefined || user_mobile_phone.value=="")
             && (user_icq.value==undefined || user_icq.value==""))
				errString=errString+ "Вы должны заполнить любую контактную информацию \n";
			  
		if (user_icq.value!=undefined && user_icq.value!="")
		{
			if (!isInteger(user_icq.value))
				errString=errString+ "Номер ICQ должен быть целым числом\n";
		}

    }
	

	
    title=document.getElementById("title");
    if (title.value==undefined || title.value=="")
          errString=errString+ "Вы должны написать заголовок предложения  \n";
 
    
    info=document.getElementById("info");
        if (title.value==undefined || title.value=="")
          errString=errString+ "Вы должны написать текст предложения  \n";

	currency = document.getElementById("currency");	  
	if (currency.value==undefined || currency.value=="")
          errString=errString+ "Вы должны выбрать валюту  \n";

		  
    pricem=document.getElementById("pricem");
    priced=document.getElementById("priced");
    pricew=document.getElementById("pricew");
    if ((pricem.value==undefined || pricem.value=="")
         && (priced.value==undefined || priced.value=="")
         && (pricew.value==undefined || pricew.value==""))
          errString=errString+ "Вы должны заполнить цену за любой срок \n";
    else
    	if ((priced.value!=undefined && priced.value!="" && !isInteger(priced.value))
    		|| (pricew.value!=undefined && pricew.value!="" && !isInteger(pricew.value))
    		|| (pricem.value!=undefined && pricem.value!="" && !isInteger(pricem.value)))
    		errString=errString+ "Цена должна быть целым числом\n";
    
    AddCity=document.getElementById("AddCity");
    if (AddCity.value==undefined || AddCity.value==""){
          errString=errString+ "Вы должны выбрать город  \n";}

    ObjType=document.getElementById("ObjType");
    if (ObjType.value==undefined || ObjType.value=="")
          errString=errString+ "Вы должны выбрать тип жилья  \n";


    if (errString.length>0){
        alert(errString);
        return false;
    }
    return true;
}

function isInteger (s)
{
   var i;

   if (isEmpty(s))
   if (isInteger.arguments.length == 1) return 0;
   else return (isInteger.arguments[1] == true);

   for (i = 0; i < s.length; i++)
   {
      var c = s.charAt(i);

      if (!isDigit(c)) return false;
   }

   return true;
}

function isEmpty(s)
{
   return ((s == null) || (s.length == 0))
}

function isDigit (c)
{
   return ((c >= "0") && (c <= "9"))
}


function showNewUser()
{
     table_user_info=document.getElementById("tableUserInfo");
     table_user_info.style.display="block";
     user_info=document.getElementById('userInfo');
     user_info.style.display="none";
     user_login_old=document.getElementById('userLoginOld');
     user_login_old.value="";
}