function groupChange(element){
    var id = element.getAttribute("id");
    switch(id){
        case "gp1": case "gp2": SendFavoriteObject.Hide();inptDisableToggle('disabled');break;
        case "gp3": initFriendSearch();inptDisableToggle('');break;                                                                
    }
}
function inptDisableToggle(flag){ // added by Yaron 28.1.09
        if(flag){
            SendFavoriteObject.CancelPerson();
            $get('txtSendFriend').value = 'שם החבר';
            $get('txtSendFriend').style.color = 'gray';
        }
        $get('taSendFriend').disabled = flag;
        $get('txtSendFriend').disabled = flag;
        if(flag == 'disabled'){
            $get('taSendFriend').blur();
            $get('txtSendFriend').blur();
        }
        
}          
function initFriendSearch(){
    if (this.init){return;}            
    SendFavoriteObject.Start($val('hdnFriendsJs'));
    $get('hdnFriendsJs').value = "";
    this.init = true;
}                
var MyFriends = {
    friendObject : [],
    favFrined : function(id,name,image){this.Id = id;this.Name = name;this.Image = image;},
    add : function(friend){                
        MyFriends.friendObject.push(friend);                                    
    },
    getName : function(id){
        for (var i=0;i<MyFriends.friendObject.length;i++){
            if (Number(MyFriends.friendObject[i].Id) == Number(id)){
                return MyFriends.friendObject[i].Name;
            }
        }
    }
}
var SendFavoriteObject = {         
    Selected : null,   
    Start : function(str){
        var arrFriends = str.split("<BR />");                
        for (var i=0;i<arrFriends.length-1;i++){                    
            var fav = arrFriends[i];            
            fav = fav.replace(/\"/g,"");                                    
            var friend = new MyFriends.favFrined(fav.split("|")[0],fav.split("|")[2],fav.split("|")[1]);                    
            MyFriends.add(friend);                    
        }                   
    },
    GenerateBlock : function(friend){                                                       
        var strDiv = "";
        strDiv += "<div onmouseover=\"SendFavoriteObject.SetSelected(this);\" id=\"dvFriend_" + friend.Id + "\" style=\"width:180px;border-bottom:solid 1px #8AA1D2;cursor:pointer;\" onclick=\"SendFavoriteObject.Select(" + friend.Id + ");\" class=\"f_out\">";                
        strDiv += "<img src=\"" + friend.Image + "\" style=\"vertical-align:middle;width:35px;padding:2px 5px;\" alt=\"\" />";
        strDiv += "<span>" + friend.Name + "</span>";
        strDiv += "</div>";
        return strDiv;                                                                                                
    },
    Hide : function(){
        $hide('dvFriends');
        $get('dvFriends').innerHTML = "";
        SendFavoriteObject.Selected = null;
        $get('hdnPersonSelected').value = "0";
    },
    SortKeyPress : function(e){                                                        
        if (!e) e = window.event;	
        var key = e.keyCode || e.which;	            	            
        if (key == 13){
            SendFavoriteObject.Enter();
            return false;
        }
        switch(key){
            case 40: SendFavoriteObject.Down(); return false; break;
            case 38: SendFavoriteObject.Up(); return false; break;		            
        }	                    
        SendFavoriteObject.Hide();
        var strText = $val("txtSendFriend");                                                                                  
        if (strText.length < 2){
            SendFavoriteObject.Hide();
            return;
        }
        var arr = MyFriends.friendObject;                
        var found = false;    
        var count = 0;            
        for (var i=0;i<arr.length;i++){                    
            var member = arr[i];
            if (member.Name.indexOf(strText) == 0){
                $get('dvFriends').innerHTML += SendFavoriteObject.GenerateBlock(arr[i]);                        
                found = true;   
                count++;                                                                             
            }                                                                                
        }                    
        if (found){
            $show('dvFriends');
            if (count == 1){
                SendFavoriteObject.SetSelected($get('dvFriends').childNodes[0]);
            }
        }
        return true;
    },
    Select : function(id){
        
        SendFavoriteObject.ChoosePerson(id);
    },
    ChoosePerson : function(id){
        SendFavoriteObject.Hide();
        $get('hdnPersonSelected').value = id;                                                
        $get('txtSendFriend').value = MyFriends.getName(id);                                                                                
        $get('txtSendFriend').disabled = "disabled";                                                                                            
        $show('spnCancelPerson');                                                               
        $get('txtSendFriend').className = "selected";
    },
    Up : function(){
        if (SendFavoriteObject.Selected){
            if (SendFavoriteObject.Selected.previousSibling){
                SendFavoriteObject.SetSelected(SendFavoriteObject.Selected.previousSibling);
            }
        }else{
            SendFavoriteObject.SetDefault();
        }
    },
    Down : function(){                
        if (SendFavoriteObject.Selected){                    
            if (SendFavoriteObject.Selected.nextSibling){                        
                SendFavoriteObject.SetSelected(SendFavoriteObject.Selected.nextSibling);
            }
        }else{                    
            SendFavoriteObject.SetDefault();
        }
    },
    SetDefault : function(){                                                
        if ($get('dvFriends').childNodes[0]){                    
            SendFavoriteObject.SetSelected($get('dvFriends').childNodes[0]);                    
        }
    },
    Enter : function(){
        if (SendFavoriteObject.Selected){
            var id = $get(SendFavoriteObject.Selected).getAttribute("id");
            id = id.replace("dvFriend_","");
            SendFavoriteObject.ChoosePerson(id);                    
        }
    },
    SetSelected : function(element){
        if (SendFavoriteObject.Selected){
            SendFavoriteObject.Selected.className = "f_out";                
        }
        SendFavoriteObject.Selected = $get(element);
        SendFavoriteObject.Selected.className = "f_over";                
    },
    CancelPerson : function(){
        $get('hdnPersonSelected').value = "0";                                                
        $get('txtSendFriend').value = "";                                                                                                
        $get('txtSendFriend').disabled = false;
        $get('txtSendFriend').removeAttribute("disabled");                                                                                
        $hide('spnCancelPerson');                                                               
        $get('txtSendFriend').className = "";
    }
}
function cancelEnter(e){
    if (!e) e = window.event;	
    var key = e.keyCode || e.which;	            	            
    if (key == 13){return false;}        
    return true;
}