Ignore:
Timestamp:
04/12/10 15:50:03 (14 years ago)
Author:
alexandrecorreia
Message:

Ticket #986 - Implementado a parte de autorização ( to, from, both ). Ainda em teste.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sandbox/jabberit_messenger/trophy_expresso/js/loadIM.js

    r2471 r2491  
    3232                                var e = window.event; 
    3333                         
    34                         ( ( e.target ) ? e.target : e.srcElement ).oncontextmenu = function(e) 
     34                        ( ( e.target ) ? e.target : e.srcElement ).parentNode.oncontextmenu = function(e) 
    3535                        { 
    3636                                return false; 
     
    4040                                optionsItensContact(jid, index); 
    4141                        else 
    42                                 TrophyIM.rosterClick(jid); 
     42                        { 
     43                                if ( e.target.id ) 
     44                                        TrophyIM.rosterClick(jid); 
     45                        } 
    4346                } 
    4447        } 
     
    299302        } 
    300303 
    301          
    302304        function optionsItensContact() 
    303305        { 
     
    312314 
    313315                        var _options = [ 
    314                                                 ['Autorizar', 'TrophyIM.setAutorization(\''+jid+'\')'], 
    315                                                 ['Remover', 'loadIM.removeContact(\''+jid+'\')'], 
     316                                                ['Autorizar', 'loadIM.setAutorization(\''+jid+'\',\''+index+'\')'], 
     317                                                ['Remover', 'loadIM.removeContact(\''+jid+'\',\''+index+'\')'], 
    316318                                                ['Renomear', 'Renomear : ' + jid], 
    317319                                                ['Trocar grupo', 'Trocar grupo : ' + jid], 
     
    323325                        { 
    324326                                _itens += '<img src="'+arrow_right.src+'"/>'; 
    325                                 _itens += '<span style="cursor:pointer; margin:3px; font-weight:normal;" onclick='+_options[i][1]+'>'; 
     327                                _itens += '<span style="cursor:pointer;margin:3px;font-weight:normal;" onclick='+_options[i][1]+'>'; 
    326328                                _itens += _options[i][0] + '</span><br/>'; 
    327329                        } 
    328330                         
    329331                        var _optionsItens = document.createElement("div"); 
    330                                 _optionsItens.setAttribute("style", "margin: -5px 0px 0px 20px;"); 
     332                                _optionsItens.setAttribute("style", "margin: -10px 0px 0px 20px;"); 
    331333                                _optionsItens.className         = "x-menu"; 
    332334                                _optionsItens.style.zIndex      = '99999'; 
    333335                                _optionsItens.innerHTML         = _itens;   
    334                                 _optionsItens.onclick           = function(){ showhidden.hiddenObject(false); };                                           
     336                                _optionsItens.onmouseout        = function(){ showhidden.hiddenObject(false); };         
     337                                _optionsItens.onmouseover       = function(){ showhidden.hiddenObject(true); }; 
    335338                                 
    336339                                showhidden.action('onmouseover', 'onmouseout', _optionsItens); 
    337340                                 
    338                         element.onmouseout      = function(){ showhidden.hiddenObject(false); }; 
    339                         element.onmouseover     = function(){ showhidden.hiddenObject(true); }; 
    340                         element.appendChild( _optionsItens ); 
    341                 } 
    342                  
     341                        element.appendChild(_optionsItens); 
     342                } 
    343343        } 
    344344 
     
    352352        } 
    353353         
    354         function removeContact(jid) 
     354        function removeContact(jid, index) 
    355355        { 
    356356                setTimeout(function() 
    357357                { 
    358                         TrophyIM.removeContact(jid); 
    359                          
    360                 }, 500); 
     358                        TrophyIM.removeContact(jid, index); 
     359                         
     360                },300); 
    361361        } 
    362362         
     
    367367                if( _parent.childNodes.length <= 2 ) 
    368368                        _parent.parentNode.removeChild(_parent); 
    369                  
    370369        } 
    371370         
     
    407406        } 
    408407         
    409         function setSelectEditable(element) 
    410         { 
    411                 if( document.getElementById('selectBox0') == null ) 
    412                         selectEditable.create(element); 
     408        function setAutorization(jidTo, indexTo) 
     409        { 
     410        var divItenContact = null; 
     411         
     412        if( ( divItenContact = document.getElementById('itenContact_' + jidTo + '_' + indexTo ))) 
     413        {        
     414                var subscription = divItenContact.getAttribute('subscription'); 
     415                 
     416                switch(subscription) 
     417                { 
     418                        case 'from': 
     419                        case 'not-in-roster': 
     420                                        TrophyIM.setAutorization( jidTo, this.getUserCurrent().jid, 'subscribe'); 
     421                                        break; 
     422                        case 'to' : 
     423                                        TrophyIM.setAutorization( jidTo, this.getUserCurrent().jid, 'subscribed'); 
     424                                break; 
     425                } 
     426        }        
    413427        } 
    414428         
     
    452466                } 
    453467        } 
    454          
     468 
     469        function setSelectEditable(element) 
     470        { 
     471                if( document.getElementById('selectBox0') == null ) 
     472                        selectEditable.create(element); 
     473        } 
     474 
    455475        function setStatusJabber() 
    456476        { 
     
    538558        loadIM.prototype.parse                          = parse; 
    539559        loadIM.prototype.searchUser                     = searchUser 
     560        loadIM.prototype.setAutorization        = setAutorization; 
    540561        loadIM.prototype.setPresence            = setPresence; 
    541562        loadIM.prototype.setStatusJabber        = setStatusJabber; 
Note: See TracChangeset for help on using the changeset viewer.