Ignore:
Timestamp:
03/25/10 16:38:23 (14 years ago)
Author:
alexandrecorreia
Message:

Ticket #986 - Implementado function para adição de contatos e caixa de menu.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sandbox/jabberit_messenger/trophy/js/trophyim.js

    r2340 r2345  
    6161 * 
    6262 */ 
     63 
    6364HTMLSnippets = { 
    6465 
    65                 //chatArea      : loadIM.HTMLSnippets.chatArea( ), 
    66                  
    67         chatBox         : loadIM.HTMLSnippets.chatBox( ), 
    68  
    69         chatTab         : loadIM.HTMLSnippets.chatTab( ), 
    70                  
    71                 //loginPage     : loadIM.HTMLSnippets.loginPage( ), 
    72      
     66        //chatBox               : loadIM.HTMLSnippets.chatBox( ), 
     67 
     68        //chatTab               : loadIM.HTMLSnippets.chatTab( ), 
     69 
    7370        loggingDiv      : loadIM.HTMLSnippets.loggingDiv( ), 
    7471     
    7572        rosterDiv       : loadIM.HTMLSnippets.rosterDiv( ), 
    76      
    77         rosterGroup     : loadIM.HTMLSnippets.rosterGroup( ), 
    78          
    79         rosterItem      : loadIM.HTMLSnippets.rosterItem( ), 
    80      
    81         //statusDiv     : loadIM.HTMLSnippets.statusDiv( ), 
    8273}; 
    8374 
     
    535526     *  Roster iq handler 
    536527     */ 
    537     onRoster : function(msg) { 
     528    onRoster : function(msg) 
     529        { 
    538530        Strophe.debug("Roster handler"); 
    539531        var roster_items = msg.firstChild.getElementsByTagName('item'); 
    540         for (var i = 0; i < roster_items.length; i++) { 
     532                for (var i = 0; i < roster_items.length; i++) { 
    541533            var groups = roster_items[i].getElementsByTagName('group'); 
    542534            var group_array = new Array(); 
     
    656648                ); 
    657649    }, 
     650 
     651        /** Function addContacts 
     652         *  
     653         *  Parameters: 
     654         *      (string) jid  
     655         *              (string) name 
     656         *              (string) group    
     657         */ 
     658         
     659        addContacts : function( jid, name, group ) 
     660        { 
     661                var newPresence = $pres({from:'alexandrecorreia@ecelepar10612.celepar.parana', to: jid, type: 'subscribe'}).tree(); 
     662                 
     663                TrophyIM.connection.send(newPresence); 
     664 
     665                var newContact = $iq({type: 'set', id: 'set1'}); 
     666                        newContact = newContact.c('query').attrs({xmlns : 'jabber:iq:roster'}); 
     667                        newContact = newContact.c('item').attrs({jid: jid, name: name, ask:'subscribe', subscription :'none'}); 
     668                        newContact = newContact.c('group').t(group).tree(); 
     669 
     670                TrophyIM.connection.send(newContact); 
     671        }, 
    658672 
    659673    /** Function: addMessage 
     
    878892                if( arguments.length > 0 ) 
    879893                { 
    880                         TrophyIM.connection.send($pres( ).c('show').t(arguments[0])); 
     894                        TrophyIM.connection.send($pres( ).c('show').t(arguments[0]).tree()); 
    881895                } 
    882896        }, 
     
    13261340} 
    13271341 
    1328 /** Function: getElementsByClassName 
    1329  * 
    1330  *  DOMObject.getElementsByClassName implementation for browsers that don't 
    1331  *  support it yet. 
    1332  * 
    1333  *  Developed by Robert Nyman, http://www.robertnyman.com 
    1334  *  Code/licensing: http://code.google.com/p/getelementsbyclassname/ 
    1335 */ 
    1336 var getElementsByClassName = function (className, tag, elm){ 
    1337     if (document.getElementsByClassName) { 
    1338         getElementsByClassName = function (className, tag, elm) { 
    1339             elm = elm || document; 
    1340             var elements = elm.getElementsByClassName(className), 
    1341                 nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null, 
    1342                 returnElements = [], 
    1343                 current; 
    1344             for(var i=0, il=elements.length; i<il; i+=1){ 
    1345                 current = elements[i]; 
    1346                 if(!nodeName || nodeName.test(current.nodeName)) { 
    1347                     returnElements.push(current); 
    1348                 } 
    1349             } 
    1350             return returnElements; 
    1351         }; 
    1352     } else if (document.evaluate) { 
    1353         getElementsByClassName = function (className, tag, elm) { 
    1354             tag = tag || "*"; 
    1355             elm = elm || document; 
    1356             var classes = className.split(" "), 
    1357                 classesToCheck = "", 
    1358                 xhtmlNamespace = "http://www.w3.org/1999/xhtml", 
    1359                 namespaceResolver = (document.documentElement.namespaceURI === 
    1360                     xhtmlNamespace)? xhtmlNamespace : null, 
    1361                 returnElements = [], 
    1362                 elements, 
    1363                 node; 
    1364             for(var j=0, jl=classes.length; j<jl; j+=1){ 
    1365                 classesToCheck += "[contains(concat(' ', @class, ' '), ' " + 
    1366                     classes[j] + " ')]"; 
    1367             } 
    1368             try { 
    1369                 elements = document.evaluate(".//" + tag + classesToCheck, 
    1370                     elm, namespaceResolver, 0, null); 
    1371             } catch (e) { 
    1372                 elements = document.evaluate(".//" + tag + classesToCheck, 
    1373                     elm, null, 0, null); 
    1374             } 
    1375             while ((node = elements.iterateNext())) { 
    1376                 returnElements.push(node); 
    1377             } 
    1378             return returnElements; 
    1379         }; 
    1380     } else { 
    1381         getElementsByClassName = function (className, tag, elm) { 
    1382             tag = tag || "*"; 
    1383             elm = elm || document; 
    1384             var classes = className.split(" "), 
    1385                 classesToCheck = [], 
    1386                 elements = (tag === "*" && elm.all)? elm.all : 
    1387                      elm.getElementsByTagName(tag), 
    1388                 current, 
    1389                 returnElements = [], 
    1390                 match; 
    1391             for(var k=0, kl=classes.length; k<kl; k+=1){ 
    1392                 classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + 
    1393                     "(\\s|$)")); 
    1394             } 
    1395             for(var l=0, ll=elements.length; l<ll; l+=1){ 
    1396                 current = elements[l]; 
    1397                 match = false; 
    1398                 for(var m=0, ml=classesToCheck.length; m<ml; m+=1){ 
    1399                     match = classesToCheck[m].test(current.className); 
    1400                     if (!match) { 
    1401                         break; 
    1402                     } 
    1403                 } 
    1404                 if (match) { 
    1405                     returnElements.push(current); 
    1406                 } 
    1407             } 
    1408             return returnElements; 
    1409         }; 
    1410     } 
    1411     return getElementsByClassName(className, tag, elm); 
    1412 }; 
    1413  
    14141342/** 
    14151343 * 
Note: See TracChangeset for help on using the changeset viewer.