
asearch = function()
{
    this.getTypeList();
    this.filterText = "";
};
asearch.prototype = {
    idPrefix : "advance_search_line_",
    listUrl : "AdvanceSearch/getList.aspx?",
    comboNameArray : ["_type","_from_to","_miter","_and_or"],
    lineNum : 3,
    typeArray : null,
    typeList : null,
    inited : false,
    init : function()
    {
        this.displayDiv = Ext.get('advance-searh');
        if(this.inited != false) return;
        
        for(var i=0; i<this.typeArray.length; i++)
        {
            for(var objnum=1; objnum <=this.lineNum;objnum++)
            {
                var op = Ext.get(document.createElement('option'));
                op.dom.value = this.typeArray[i];
                op.dom.appendChild(document.createTextNode(this.typeArray[i])); 
                op.appendTo(Ext.get(this.idPrefix + objnum + this.comboNameArray[0]));
            }
        }
        // add events 
        
        Ext.get('clear_adv_search').on('click',this.clear,this);
        Ext.get('close_adv_search').on('click',this.hide,this);
        Ext.get('x-body-right-search-btn-advanced').on('click',this.show,this);
        
        
        Ext.get('showOnlyLowPrice').on('click',this.filterChange,this);
        Ext.get('showOnlyHighPrice').on('click',this.filterChange,this);
        
        //Ext.get('showOnlyLowPrice').on('click',redrawMarkers);
        //Ext.get('showOnlyHighPrice').on('click',redrawMarkers);
        
        
        
        for(var i=1; i<= this.lineNum;i++)
        {
            for(var j=0; j< this.comboNameArray.length;j++)
            {
               var obj = Ext.get(this.idPrefix + i +this.comboNameArray[j]);
               if(obj != null)
               {
                obj.on('change',this.filterChange,this);
                
               }
            }
            
        }
        
        this.inited = true;
    },
    filterChange : function(evt,src)
    {
        //this.filterText
        //comboNameArray : ["_type","_from_to","_miter","_and_or"],
        var andor = "";
        var type = "";
        var from_to = "";
        var miter = "";
        var ltype;
        var lfrom;
        var lmiter;
        var landor;
        
        for(var i=1; i<= this.lineNum;i++)
        {
              ltype = Ext.get(this.idPrefix + i + "_type").dom.value;
              lfrom = Ext.get(this.idPrefix + i + "_from_to").dom.value;
              lmiter = Ext.get(this.idPrefix + i + "_miter").dom.value;
              if(i != 1)
                landor = Ext.get(this.idPrefix + i + "_and_or").dom.value;
              else
               landor = "and";
              
              if(ltype != "" && lfrom != "" && lmiter != "" && landor != "")
              {
                if(andor != "") andor +=",";
                andor+= landor;
                if(type != "") type +=",";
                type+= ltype;
                if(from_to != "") from_to +=",";
                from_to+=lfrom;
                if(miter != "") miter +=",";
                miter+=lmiter;
              }
        }
        
        this.filterText = andor +"|" + type +"|" + from_to +"|" + miter;
        //Ext.get('advance_Serace_text').dom.innerHTML
        if(this.filterText != "|||" || Ext.get('showOnlyHighPrice').dom.checked == true || Ext.get('showOnlyLowPrice').dom.checked == true )
        {
            Ext.get('advance_Serace_text').dom.innerHTML = "חיפוש מתקדם" + "- פעיל ";
        }
        else
        {
            Ext.get('advance_Serace_text').dom.innerHTML = "חיפוש מתקדם";
        }
        redrawMarkers();
        //var line = src.id.substr(this.idPrefix.length,1);
        //window.status = line;
        
        
    },
    show : function(){
        // fix location
        
        if( this.displayDiv.dom.style.display == "block")
        {
            this.hide();
            return;
        }
        pageTracker._trackPageview("/show_advanced_search" );
        var x;
        var y;
        x= Ext.get('x-body-right-search-btn-advanced').getBox().x - 129 ;
        y= Ext.get('x-body-right-search-btn-advanced').getBox().y + 25 ; 
        if(Ext.isIE)
        {
            y=y+2;
            x=x-2;
        }
        this.displayDiv.dom.style.top = y + "px"; ;
        this.displayDiv.dom.style.left = x + "px"; 
        
        this.displayDiv.dom.style.display = "block";
        this.displayDiv.fadeIn();
    },
    hide : function(){
        this.displayDiv.fadeOut({
            endOpacity: 0, //can be any value between 0 and 1 (e.g. .5)
            easing: 'easeOut',
            duration: .5,
            remove: false,
            useDisplay: true
        });
        this.displayDiv.dom.style.display = "none";
    },
    clear : function(){
        for(var i=1; i<= this.lineNum;i++)
        {
            for(var j=0; j< this.comboNameArray.length;j++)
            {
               var obj = Ext.get(this.idPrefix + i +this.comboNameArray[j]);
               if(obj != null)
               {
                //obj.on('change',this.filterChange,this);
                obj.dom.value = "";
                
               }
            }
            
        }
        
        this.filterText = "";
        
        Ext.get('showOnlyLowPrice').dom.checked = false;
        Ext.get('showOnlyHighPrice').dom.checked = false;
        
        
        
        this.filterChange();
        //redrawMarkers();
        
    },
    getTypeList : function(){
        Ext.Ajax.request({
            url :hosturl + this.listUrl,
            success : function(ans){
                this.typeArray = eval(ans.responseText);
                this.init();
            },
            failure :function(){this.typeArray = null;},
            params :null,
            scope : this
        });
        
    }
};


/*

schkBox = function(id,text,value)
{
    this.id = id;
    this.text = text;
    this.value = value;
    if(!value)
    this.value = false;
}
schkBox.prototype = 
{
    rtl : true,
    drow : function(target)
    {
        
        var chk = Ext.get(document.createElement('input'));
        chk.dom.type = "checkbox";
        
        chk.dom.id = this.id + "chk";
        var chkBox = Ext.get(document.createElement('div'));
        chkBox.dom.id = this.id + "chkBox";
        chkBox.dom.style.display = "inline";
        chkBox.dom.style.cursor = "pointer";
        var chkText = Ext.get(document.createElement('div'));
        chkText.dom.id = this.id + "chkText";
        chkText.dom.style.display = "inline";
        chkText.dom.style.cursor = "pointer";
        chkText.dom.innerHTML = this.text;
        
        
        if(this.rtl == true)
        {
            chkBox.appendChild(chkText);
            chkBox.appendChild(chk);
        }
        else
        {
            chkBox.appendChild(chk);
            chkBox.appendChild(chkText);
        }
        target.appendChild(chkBox);
        chkText.on("click",this.TextClick,this);
        chk.on("click",this.ChkClick,this);
        
        if(this.value)
        {
            chk.dom.checked = true;
        }
        
    },
    ChkClick : function(src)
    {
        
        this.value = !this.value;
    },
    TextClick : function(src)
    {
        this.value = !this.value;
        Ext.get(this.id+"chk").dom.checked = this.value;
        
    },
    remove : function()
    {
    }
    
}

var chk = new schkBox('1','בדיקות גלעד',true);


aSearch = function(alignTo)
{
    this.alignToObject = alignTo;
}


aSearch.prototype =
{
    items : null,
    alignToObject : null,
    created : false,
    width : null,
    box : null,
    boxId : 'asearchWindow',
    
    show : function()
    {
        if(this.created == false) this.createBox();
    },
    hide : function()
    {
    },
    updateDisplay : function()
    {
    },
    createBox : function()
    {
        this.box = this.CreateDiv('asearch-window','body',this.boxId);
        
    },
    CreateDIv : function(className,target,id)
    {
        var div = Ext.get(document.createElement('div'));
        div.dom.className = className;
        div.dom.id = id;
        if(target)
        {
            if(typeof(target) == 'string')
            {
                if(target == 'body')
                {
                    Ext.getBody().appendChild(div);
                }
                else
                {
                    Ext.get(target).appendChild(div);
                }
            }
            else
             target.appendChild(div);
        }
        return div;
    }
    
}
*/