Ignore:
Timestamp:
07/16/10 17:38:16 (14 years ago)
Author:
alexandrecorreia
Message:

Ticket #1091 - Implementado a busca de salas para bate-papo no novo modulo Expresso messenger XEP-0045-MUC.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/jabberit_messenger/jmessenger/js/jscode/loadIM.js

    r3059 r3065  
    345345                                                ['Adicionar Contato', 'loadscript.addContact();' ], 
    346346                                                ['Preferências', 'loadscript.preferences();'], 
    347                                                 ['Sala(s) de Bate-Papo', 'loadscript.teste();'], 
     347                                                ['Sala(s) de Bate-Papo', 'loadscript.getListRooms();'], 
    348348                                                   ]; 
    349349 
     
    12501250        } 
    12511251 
    1252         function teste() 
    1253         { 
    1254                 TrophyIM.testeSala(); 
    1255                  
    1256         } 
    1257          
    1258         loadIM.prototype.teste = teste; 
     1252        // TESTE  
     1253         
     1254        function listRooms( element ) 
     1255        { 
     1256                element = element.getElementsByTagName( 'item' ); 
     1257                var _rooms = 0; 
     1258                var _list = document.createElement( 'div' ); 
     1259                 
     1260                var show = function( ) 
     1261                { 
     1262                        if ( _rooms != element.length ) 
     1263                                return false; 
     1264 
     1265                        var winTeste = 
     1266                {        
     1267                         id_window              : "window_Teste", 
     1268                         width                  : 450, 
     1269                         height                 : 300, 
     1270                         top                    : 100, 
     1271                         left                   : 400, 
     1272                         draggable              : true, 
     1273                         visible                : "display", 
     1274                         resizable              : true, 
     1275                         zindex                 : loadscript.getZIndex(), 
     1276                         title                  : "Expresso Messenger - Salas de Bate Papo", 
     1277                         closeAction    : "remove", 
     1278                         content                : _list.innerHTML 
     1279                }; 
     1280                         
     1281                        _winBuild( winTeste ); 
     1282                }; 
     1283 
     1284                var _add_room = function( _room ) 
     1285        { 
     1286                        _rooms++; 
     1287 
     1288                        // Name Room 
     1289                        var nameRoom = _room.getAttribute( 'from' ); 
     1290                                nameRoom = nameRoom.substring(0, nameRoom.indexOf("@")); 
     1291                         
     1292                        var _desc = document.createElement("div"); 
     1293                                _desc.setAttribute("style","margin:5px 3px 10px 3px; border-bottom:1px dashed #cecece"); 
     1294                                _desc.appendChild(document.createTextNode( "Nome da Sala : " + nameRoom.toUpperCase() )); 
     1295                                 
     1296                        var _fields = _room.getElementsByTagName( 'field' ); 
     1297                        for ( var f = 0; f < _fields.length; f++ ) 
     1298                        { 
     1299                                if ( _fields[ f ].hasAttribute( 'var' ) ) 
     1300                                { 
     1301                                        if ( _fields[ f ].firstChild.hasChildNodes( ) && _fields[ f ].getAttribute( 'var' ) == 'muc#roominfo_description' ) 
     1302                                                _desc.innerHTML += "<br/> Descrição : " + _fields[ f ].firstChild.firstChild.nodeValue;                                          
     1303                                                 
     1304                                        if ( _fields[ f ].firstChild.hasChildNodes( ) && _fields[ f ].getAttribute( 'var' ) == 'muc#roominfo_occupants' ) 
     1305                                                _desc.innerHTML += "<br/> Ocupantes : " + _fields[ f ].firstChild.firstChild.nodeValue; 
     1306                                } 
     1307                        } 
     1308 
     1309                        _list.appendChild( _desc ); 
     1310                         
     1311                        show( ); 
     1312        }; 
     1313                 
     1314                var _get_room_info = function( _room ) 
     1315                { 
     1316                TrophyIM.connection.sendIQ( 
     1317                                $iq( { "to" : _room, "type" : "get" } ).c( "query",{xmlns: Strophe.NS.DISCO_INFO } ), 
     1318                                _add_room, 
     1319                                function( a ) 
     1320                                { 
     1321                                        _rooms++; 
     1322                                 
     1323                                        show( ); 
     1324                                }, 
     1325                                500 
     1326                        ); 
     1327                }; 
     1328 
     1329                for ( var i = 0; i < element.length; i++ ) 
     1330                { 
     1331                        _get_room_info( element[ i ].getAttribute( 'jid' ) ); 
     1332                } 
     1333                                 
     1334                 
     1335                 
     1336                /* 
     1337                element = element.getElementsByTagName( 'item' ); 
     1338                var _rooms = 0; 
     1339                var _list = document.createElement( 'ul' ); 
     1340                 
     1341                var show = function( ) 
     1342                { 
     1343                        if ( _rooms != element.length ) 
     1344                                return false; 
     1345 
     1346                        var winTeste = 
     1347                {        
     1348                         id_window              : "window_Teste", 
     1349                         width                  : 400, 
     1350                         height                 : 300, 
     1351                         top                    : 100, 
     1352                         left                   : 400, 
     1353                         draggable              : true, 
     1354                         visible                : "display", 
     1355                         resizable              : true, 
     1356                         zindex                 : loadscript.getZIndex(), 
     1357                         title                  : "Expresso Messenger - Salas de Bate Papo", 
     1358                         closeAction    : "remove", 
     1359                         content                : '<ul>' + _list.innerHTML + '</ul>' 
     1360                }; 
     1361                         
     1362                        _winBuild( winTeste ); 
     1363                }; 
     1364 
     1365                var _add_room = function( _room ) 
     1366        { 
     1367                        _rooms++; 
     1368                         
     1369                        var _desc = _room.getAttribute( 'from' ); 
     1370                         
     1371                        var _fields = _room.getElementsByTagName( 'field' ); 
     1372                        for ( var f = 0; f < _fields.length; f++ ) 
     1373                                if ( ! ( _fields[ f ].hasAttribute( 'type' ) && _fields[ f ].getAttribute( 'type' ) == 'hidden' ) ) 
     1374                                        if ( _fields[ f ].hasAttribute( 'label' ) && _fields[ f ].firstChild.hasChildNodes( ) ) 
     1375                                                _desc += ' :: ' + _fields[ f ].getAttribute( 'label' ) + ' ( ' + _fields[ f ].firstChild.firstChild.nodeValue + ' ) ';  
     1376                 
     1377                        _list.appendChild( 
     1378                                document.createElement( 'li' ) 
     1379                        ).appendChild( 
     1380                                document.createTextNode( _desc ) 
     1381                        ); 
     1382                         
     1383                        show( ); 
     1384        }; 
     1385                 
     1386                var _get_room_info = function( _room ) 
     1387                { 
     1388                TrophyIM.connection.sendIQ( 
     1389                                $iq( { "to" : _room, "type" : "get" } ).c( "query",{xmlns: Strophe.NS.DISCO_INFO } ), 
     1390                                _add_room, 
     1391                                function( a ) 
     1392                                { 
     1393                                        _rooms++; 
     1394                                 
     1395                                        show( ); 
     1396                                }, 
     1397                                500 
     1398                        ); 
     1399                }; 
     1400 
     1401                for ( var i = 0; i < element.length; i++ ) 
     1402                { 
     1403                        _get_room_info( element[ i ].getAttribute( 'jid' ) ); 
     1404                } 
     1405                 */ 
     1406                 
     1407        } 
     1408         
     1409        function getListRooms() 
     1410        { 
     1411                TrophyIM.getListRooms(); 
     1412        } 
     1413         
     1414        loadIM.prototype.getListRooms   = getListRooms; 
     1415        loadIM.prototype.listRooms              = listRooms; 
     1416         
     1417         
     1418         
    12591419         
    12601420         
Note: See TracChangeset for help on using the changeset viewer.