﻿/// <reference path="../jslib/base.js" />


//these are global var
var curObjId=0;   //current obj that we work with
var divCurObj;
var filter='';
var NumObjBriefInPage=40;
//var cityId=0;//definition in js\selectCity.js

$(function(){
    //$m('divHeaderMenu').innerHTML+='<a id="advancedSearchLink" href="#" onclick="$m(\'divFilter\').show(); return false;" >|جستجوي پيشرفته</a>';//add link advanced search
    divCurObj=$m('divObjsList');
    CreateObjList(divCurObj,objs,'objslistitem','objslistitemhover');
    curObjId=0;//0 because of show for the first time,// objid=0 means that all obj
    getObjsBrief(1);
    $.getScript('js/JsPrint.aspx');
    
    loadAdsFromServer();
     createSelctCity('divSelCity','function/getcity.aspx');
});





function CreateList(IDobj,arrSource,classAll,classOver,fponclick){
   var obj=$m(IDobj);
   obj.innerHTML='';
   for(i=0;i<arrSource.length;i++){
      var t=$c('div');
      obj.appendChild(t);
      if(classAll)t.className=classAll;
      if(classOver)t.onmouseover=function(){this.className=classOver;};
      if(classAll)t.onmouseout=function(){this.className=classAll;};
      if(fponclick){t.onclick=fponclick;}
      t.innerHTML=arrSource[i];      
   }
}



function CreateObjList(div,Source,classAll,classOver){
   var obj=div;
   obj.innerHTML='';
   for(i=0;i<Source.length;i++){
      var t=$c('div');
      obj.appendChild(t);
      if(classAll)t.className=classAll;
      if(classOver)t.onmouseover=function(){this.className=classOver;};
      if(classAll)t.onmouseout=function(){this.className=classAll;};
      t.idobj=Source[i].id;
      t.id='idobj'+Source[i].id;
      t.onclick=function (){
        var oEvent=(window.event || arguments[0]);
        if(oEvent.stopPropagation){oEvent.stopPropagation();}
        else {oEvent.cancelBubble = true;}
        divCurObj=this;
        onobjListClick(this.idobj,1,this);
      };
      t.innerHTML=Source[i].name;      
   }
}

function objPathClick(paridobj){debugger;
    var t=$m('idobj'+paridobj);
    if(t!=null){
        divCurObj=t;
        onobjListClick(paridobj,1,t);
    }
    return false;
}




///////////////////////////////////////////////////////////////
//show brief of object
function onobjListClick(paridobj,parpagenumber,parparentnode){
    curObjId=paridobj;
    //$m('divFilter').curObjIdChanged();
    createObjsMenu(curObjId,parparentnode);
    getObjsBrief(parpagenumber);    
}

function getObjsBrief(parpagenumber){
    
    $m('divAdses').innerHTML='';
    //window.scroll(0,0);
    if(!parpagenumber){ parpagenumber=1; }
    $('#divAdses').html('در حال لود شدن ...');
    $.get("function/getadsesbrief.aspx", 
            { idobj: curObjId, pagenumber: parpagenumber,NumObjBriefInPage:NumObjBriefInPage,filter:filter,city:cityId,lang:lang},
            function(data){ $('#divAdses').html(''); CreateAdsesBriefList2( data ); } 
    );

}

//version 2
 function CreateAdsesBriefList2(paradsesInJson){
  
  var adses=eval('('+paradsesInJson+')');  
   
   for(i=0;i<adses.objectbrief.length;i++){ 
        
        var dMain=$('<div class="dMain">\
                            <div class="d0">\
                               <div class="d1">\
                                     <div class="d1Brief" onclick="showAds2('+adses.idobjects[i]+',this);return false;">\
                                            <a href="showadsidobject'+adses.idobjects[i]+'.aspx" title="'+adses.objectbrief[i]+'" >\
                                            '+adses.objectbrief[i]+'\
                                            <img style="float:left;" src="'+adses.briefpicaddress[i]+'" />\
                                            </a>\
                                            <div style="width:100%; clear:both; text-align:left; font-size:8pt; text-decoration:none; color:gray;" >'+ adses.datetime[i] + '</div>\
                                    </div>\
                               </div>\
                                <div class="d2">\
                                     <div class="d2All">\
                                    </div>\
                               </div>\
                             </div>\
                       </div>');
      
        $('#divAdses').append( dMain );
        //$('.d0:odd').after('<div style="clear:both; width:100%; height:1px;"></div>');
        $('.d2All').hide();
        
        $('.d1Brief').hover( function(){ $(this).removeClass('d1Brief').addClass('d1BriefOver'); } , function(){ $(this ).removeClass('d1BriefOver').addClass('d1Brief'); } );
        
       
   }
        $('.d1Brief img[src=""]').hide();
   
        var tdiv= $c('div'); tdiv.innerHTML=adses.pagenumber;
        $m('divAdses').appendChild( tdiv );
   
}
 
//version 2
function showAds2(idobject,t){
    //var t=$( t ).parent().parent().get(0);
    //debugger
    $( t ).slideUp('fast');
    var d2All=$( t ).parent().next().children();
    d2All.html('در حال لود شدن ...');
    d2All.slideDown('slow');
       
     $.get("function/getshowads.aspx?idobject="+idobject, 
     function(data){ 
          //d2All.hide();
          d2All.hide();
          d2All.html(data);                    
          d2All.slideDown('slow');
          var dMain=d2All.parent().parent().parent();
          dMain.css('width','100%');
                  
     });

    
}
 

//////////////////////////////////////////////////////////////////////////////
//sort objslist
//private
    function comparison_function_sortObjList(value1, value2) {
        if (value1.name < value2.name) {
            return -1;
        } else if (value1.name > value2.name) {
            return 1;
        } else {
            return 0;
        }
    }



//createObjsMenu()
function createObjsMenu(paridobj,parparentnode){

    //add objs to divCurObj by CreateObjList
    var pfo=function(data){ 
        
            var res=data;
            if(res.length>4){//if obj does not have a child it return {[]} in jsonS
                
                if(!divCurObj.idDivObjsChild){//if has not div for child objs create its else use that
                    var oTable=$c('table'); 
                    divCurObj.appendChild(oTable);                
                    oTable.setAttribute('border', '0');
                    //oTable.style.borderTopStyle='outset'; oTable.style.borderBottomStyle='outset';
                     oTable.insertRow(0);
                     oTable.rows[0].insertCell(0); oTable.rows[0].insertCell(1);
                     var tcell0=oTable.rows[0].cells[0]; var tcell1=oTable.rows[0].cells[1]; 
                     divCurObj.idDivObjsChild=addUniqueID(tcell1);//this use 
                     tcell0.style.width='10px';//10px not effect :-?
                     tcell1.style.width='100%'; 
                     divCurObj=tcell1;//it is not div but :D
                }
                else{divCurObj=$m(divCurObj.idDivObjsChild);}             
                 
                CreateObjList(divCurObj,eval('('+data+')'),'objslistitem','objslistitemhover');    
            }            
       
    };
     
    $.get("function/getobj.aspx", { idobjparent: curObjId ,lang:lang },function(data){ pfo(data); } );
 
    
}

///////////////////////////////////////////////////////////////////////

   
function loadAdsFromServer(){
    
    $('#divAdvertisment').html('در حال لود شدن ...');
    $.get("function/Func.aspx", 
        { command: "getAdvertisment" },
        function(data){  
              $('#divAdvertisment').html('');         
              $m('divAdvertisment').innerHTML= data; //return text that is responded    
        }            
    );
}               

 


///////////////////////////////////////////////////////////////////////



