Changeset 68


Ignore:
Timestamp:
09/14/07 17:43:09 (17 years ago)
Author:
niltonneto
Message:

* empty log message *

Location:
trunk
Files:
3 added
16 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoAdmin1_2/inc/class.ldap_functions.inc.php

    r64 r68  
    801801                                // MailLists 
    802802                                $result['maillists_info'] = $this->get_user_maillists($result['mail']); 
    803                                 foreach ($result['maillists_info'] as $maillist) 
    804                                 { 
    805                                         $result['maillists'][] = $maillist['uidnumber']; 
    806                                 } 
     803                                if($result['maillists_info']) 
     804                                        foreach ($result['maillists_info'] as $maillist) 
     805                                        { 
     806                                                $result['maillists'][] = $maillist['uidnumber']; 
     807                                        } 
    807808                                 
    808809                                // Groups 
     
    845846                } 
    846847         
    847         natcasesort($a_tmp); 
     848        if($a_tmp) { 
     849                natcasesort($a_tmp); 
    848850         
    849         foreach ($a_tmp as $uid) 
    850         { 
    851                 $return[$uid]['uidnumber']      = $result[$uid]['uidnumber']; 
    852                         $return[$uid]['uid']            = $result[$uid]['uid']; 
    853                         $return[$uid]['mail']           = $result[$uid]['mail']; 
    854         } 
     851                foreach ($a_tmp as $uid) 
     852                { 
     853                        $return[$uid]['uidnumber']      = $result[$uid]['uidnumber']; 
     854                                $return[$uid]['uid']            = $result[$uid]['uid']; 
     855                                $return[$uid]['mail']           = $result[$uid]['mail']; 
     856                } 
     857        }        
    855858                return $return; 
    856859        } 
     
    907910                                } 
    908911                 
    909                                 // Retira o count do array 
    910                                 array_shift($entry[0]['memberuid']); 
    911                  
    912912                                // Checamos e-mails que não fazem parte do expresso. 
    913913                                // Criamos um array temporario 
    914914                                $tmp_array = array(); 
    915                                 foreach ($result['memberuid_info'] as $uid => $user_data) 
    916                                 { 
    917                                         $tmp_array[] = $uid; 
    918                                 } 
    919  
    920                                 // Vemos a diferença 
    921                                 $array_diff = array_diff($entry[0]['memberuid'], $tmp_array); 
    922                  
    923                                 // Incluimos no resultado 
    924                                 foreach ($array_diff as $index=>$uid) 
    925                                 { 
    926                                         $result['memberuid_info'][$uid]['cn'] = $uid; 
     915                                if($result['memberuid_info']) 
     916                                        foreach ($result['memberuid_info'] as $uid => $user_data) 
     917                                        { 
     918                                                $tmp_array[] = $uid; 
     919                                        } 
     920                 
     921                                if($entry[0]['memberuid']) { 
     922                                        // Retira o count do array 
     923                                        array_shift($entry[0]['memberuid']);                                     
     924                                        // Vemos a diferença 
     925                                        $array_diff = array_diff($entry[0]['memberuid'], $tmp_array); 
     926                                        // Incluimos no resultado                        
     927                                        foreach ($array_diff as $index=>$uid) 
     928                                        { 
     929                                                $result['memberuid_info'][$uid]['cn'] = $uid; 
     930                                        } 
    927931                                } 
    928932                 
  • trunk/expressoAdmin1_2/setup/tables_current.inc.php

    r27 r68  
    6262                ), 
    6363                 
    64                 'phpgw_expressoadmin_samba',array( 
     64                'phpgw_expressoadmin_samba' => array( 
    6565                        'fd' => array( 
    6666                                'samba_domain_name' => array( 'type' => 'varchar', 'precision' => 50), 
  • trunk/expressoAdmin1_2/setup/tables_update.inc.php

    r64 r68  
    99        * option) any later version.                                               * 
    1010        \**************************************************************************/     
    11         $test[] = '1.221'; 
    12         function expressoAdmin1_2_upgrade1_221() 
     11        $test[] = '1.21'; 
     12        function expressoAdmin1_2_upgrade1_21() 
    1313        { 
    1414                $oProc = $GLOBALS['phpgw_setup']->oProc; 
    1515 
    1616                $oProc->CreateTable( 
    17                         'phpgw_expressoadmin_samba',array( 
     17                        'phpgw_expressoadmin_samba', array( 
    1818                                'fd' => array( 
    1919                                        'samba_domain_name' => array( 'type' => 'varchar', 'precision' => 50), 
  • trunk/instant_messenger/inc/class.Ujabber.inc.php

    r67 r68  
    434434   } 
    435435    
    436    function requireVcard() 
    437    { 
    438  
     436   function Vcard() 
     437   { 
    439438      $contacts = array(); 
    440439      $contacts = $_SESSION['phpgw_info']['instant_messenger']['contacts']; 
    441       $jid_user = $_SESSION['phpgw_info']['instant_messenger']['user']; 
    442       $jid_user .= "@" . $_SESSION['phpgw_info']['instant_messenger']['name_jabber']; 
    443        
     440      $jid_user = $this->getJid(); 
     441 
    444442      if( count($contacts) > 0 ) 
    445443      { 
     
    454452   } 
    455453    
     454   function VcardUser() 
     455   { 
     456        $_SESSION['phpgw_info']['instant_messenger']['socket']['out']['vcard'][] = $this->getJid();; 
     457   } 
     458    
    456459   function getJid() 
    457460   { 
  • trunk/instant_messenger/inc/class.contacts_im.inc.php

    r41 r68  
    2929                foreach($db_acls as $tmp) 
    3030                        $search_groups .= "(gidNumber=".$tmp['acl_account'].")"; 
    31  
     31  
    3232                // Busca Grupos 
    3333                $groups = $this->ldap->list_groups_ldap($search_groups); 
    3434                                 
     35                $search_uids = "|"; 
    3536                if($groups) 
    3637                { 
    37                         $search_uids = "|"; 
    38                         foreach($groups as $tmp){ 
     38                        foreach($groups as $tmp) 
     39                        { 
    3940                                $members = $tmp['members'];      
    4041                                foreach($members as $mb)                 
    4142                                        $search_uids .= "(uid=".$mb.")";                         
    4243                        } 
    43                          
    44                         $uids_members = $this->ldap->list_users_ldap($search_uids); 
    45                          
    46                         foreach($uids_members as $tmp) 
    47                                 $uids[] = $tmp; 
    4844                } 
     45                 
     46                if($uids) 
     47                { 
     48                        foreach($uids as $tmp)   
     49                                $search_uids .= "(uid=".$tmp['uid'].")"; 
     50                } 
     51                $uids_members = $this->ldap->list_users_ldap($search_uids);      
    4952                                         
    50                 if(count($uids) > 0) 
    51                         return $uids; 
     53                if(count($uids_members) > 0) 
     54                        return $uids_members; 
    5255                else 
    5356                        return 0;  
    54                  
    5557        } 
    5658                 
  • trunk/instant_messenger/inc/class.ldap_im.inc.php

    r55 r68  
    7878        function list_users_ldap($search) 
    7979        { 
    80                  
     80 
    8181                if($this->conn){ 
    8282                        $filter = "(&(".$search.")(phpgwAccountType=u))"; 
  • trunk/instant_messenger/index.php

    r67 r68  
    88        $GLOBALS['phpgw_info']['flags'] = array( 
    99                'currentapp' => 'instant_messenger', 
    10                 'im_version'    => '0.001' 
     10                'im_version'    => '0.2' 
    1111        ); 
    1212         
  • trunk/instant_messenger/js/im_functions.js

    r67 r68  
    77           this.UsersNot        = []; 
    88           this.userPrefe   = false; 
     9           this.count_Vcard = 0; 
    910        } 
    1011 
    1112        IM.prototype.load_im = function() 
    1213        { 
    13                 IM.listen(); 
    14             IM.requireContacts(); 
     14                this.listen(); 
     15            this.requireContacts(); 
     16            this.atalho(); 
    1517 
    1618            var handler_Status = function(XmlData) 
     
    5153                if(!_this.vcards) 
    5254                { 
    53                         _this.requireVcard(); 
     55                        _this.Vcard(); 
    5456                        _this.vcards = true; 
    5557                    } 
     
    125127                                        group = group.nextSibling; 
    126128                 } 
    127                          this.atalho(); 
     129                         //this.atalho(); 
    128130              } 
    129131           }catch(e){} 
     
    309311                                                    nickname = nickname.substr(0,nickname.indexOf('|')); 
    310312                                                    nickname = nickname.substr(nickname.indexOf(':') + 1 , nickname.length); 
    311                                                     nickname = func.trim(nickname); 
     313                                                    nickname = ( func.trim(nickname) != "" ) ? nickname : from ; 
    312314                                   } 
    313315                                   else 
     
    374376           } 
    375377 
    376            envio.innerHTML = func.trim(envio.innerHTML.replace(/ | +/g, ' ')); 
    377            envio.innerHTML = func.trim(envio.innerHTML.replace(/<br>/g, '<br/>')); 
    378378           envio.innerHTML = func.trim(envio.innerHTML); 
     379           envio.innerHTML = envio.innerHTML.replace(/&nbsp;| +/gi, ' '); 
     380           envio.innerHTML = envio.innerHTML.replace(/<br[^>]*>/gi, '<br />'); 
    379381 
    380382           if ( envio.innerHTML != "" ) 
     
    389391              message_text += envio.innerHTML + "</div>"; 
    390392 
     393                  message_text = message_text.replace(/&nbsp;| +/gi, ' '); 
     394                  message_text = message_text.replace(/<br[^>]*>/gi, '<br />'); 
     395 
    391396              envio.innerHTML = ''; 
    392397 
     
    399404                          nickname = nickname.substr(0,nickname.indexOf('|')); 
    400405                          nickname = nickname.substr(nickname.indexOf(':') + 1 , nickname.length); 
     406                          nickname = (func.trim(nickname) != "") ? nickname : IM_Preferences.jid;        
    401407                  } 
    402408 
     
    559565         */ 
    560566 
    561         IM.prototype.requireVcard = function() 
     567        IM.prototype.Vcard = function() 
    562568        { 
    563569                var _this = this; 
    564                 var handler_getVcard = function(_XMLdata) 
     570                if( _this.count_Vcard < 3) 
    565571                { 
    566                         var data = _XMLdata.getElementsByTagName('retorno').item(0); 
    567                         data = eval(data.firstChild.nodeValue); 
    568                         if(!data) 
    569                                 setTimeout("IM.requireVcard()",2000); 
    570                 }; 
    571                 XMLTools.request('$this.Ujabber.requireVcard','GET',handler_getVcard); 
    572         } 
     572                        var handler_getVcard = function(_XMLdata) 
     573                        { 
     574                                var data = _XMLdata.getElementsByTagName('retorno').item(0); 
     575                                data = eval(data.firstChild.nodeValue); 
     576                                if(!data) 
     577                                        setTimeout("IM.Vcard()",2000); 
     578                                _this.count_Vcard++; 
     579                        }; 
     580                        XMLTools.request('$this.Ujabber.Vcard','GET',handler_getVcard); 
     581                }else{ 
     582                        var handler_getVcardUser = function(XMLdata) 
     583                        { 
     584                        }; 
     585                        XMLTools.request('$this.Ujabber.VcardUser','GET',handler_getVcardUser); 
     586                } 
     587 
     588        }; 
    573589 
    574590        IM.prototype.getVcard = function(data) 
     
    585601                                 div.innerHTML = ""; 
    586602                                 div.innerHTML += XMLTools.transform(data, xsl); 
    587                                  IM_Preferences.vCardInit(); 
     603                                 IM_Preferences.vCardInit();                              
    588604                                 } 
     605 
    589606 
    590607                  }catch(e){} 
  • trunk/instant_messenger/js/im_preferences.js

    r67 r68  
    5353                        } 
    5454                } 
    55                 var handler_contacts = function(data) 
    56                 { 
    57                         var data = func.interface(data); 
     55                var handler_contacts = function(XMLdata) 
     56                { 
     57                        var data = func.interface(XMLdata); 
    5858                        var select_contact = document.getElementById('ImSelAddContact'); 
    5959                        var text0 = document.getElementById('text0'); 
     
    6363                        text0.value = ""; 
    6464                        text1.value = ""; 
    65                         if(data){ 
     65                        if(data) 
     66                        { 
    6667                                for(var i in data) 
    6768                                { 
     
    108109                        { 
    109110                                IM.vcards = false; 
    110                                 IM.requireVcard(); 
     111                                IM.Vcard(); 
    111112                                 
    112113                                text0.value = ""; 
     
    178179                        { 
    179180                                IM.vcards = false; 
    180                                 IM.requireVcard(); 
     181                                IM.Vcard(); 
    181182                                var div_child = document.getElementById(pJid); 
    182183                                div_child.parentNode.removeChild(div_child); 
     
    317318        { 
    318319                var _this = this; 
     320                var nickname = ""; 
     321                var message  = ""; 
     322                var vcards   = ""; 
     323 
    319324                var handler_getId = function(_XMLdata) 
    320325                { 
     
    322327                        jid = jid.firstChild.nodeValue; 
    323328                        _this.jid = jid; 
    324  
    325                         var vcards = _this.vCardLoad(jid); 
    326329                         
    327                         var nickname = vcards.substr(vcards.indexOf('NICKNAME'),vcards.length); 
     330                        if((vcards = _this.vCardLoad(jid))) 
     331                        { 
     332                                nickname = vcards.substr(vcards.indexOf('NICKNAME'),vcards.length); 
    328333                                nickname = nickname.substr(0,nickname.indexOf('|')); 
    329334                                nickname = nickname.substr(nickname.indexOf(':') + 1 , nickname.length); 
    330335 
    331                         var message = vcards.substr(vcards.indexOf('DESC'),vcards.length); 
     336                                message = vcards.substr(vcards.indexOf('DESC'),vcards.length); 
    332337                                message = message.substr(0,message.indexOf('|')); 
    333338                                message = message.substr(message.indexOf(':') + 1 , message.length); 
    334  
     339                        } 
     340                         
     341                        nickname = (func.trim(nickname) != "" ) ? nickname : _this.jid ; 
     342                        message  = (func.trim(message) != "" ) ? message : "Sua Mensagem"; 
     343                         
    335344                        var span_nick = document.getElementById('span_nickname'); 
    336345                                span_nick.innerHTML = ( nickname ) ? "<b>&nbsp;" + decodeURI(nickname.substring(0,15)) + "</b>" : "<b>&nbsp;" + IM.get_lang('Nickname') + "</b>"; 
     
    389398                var Nvcard = new Array('FN','NICKNAME','ORGNAME','ORGUNIT','ROLE','BDAY','DESC'); 
    390399                var vcard = ""; 
     400                var value = ""; 
    391401                for(var i in Nvcard) 
    392402                { 
    393                         if( Nvcard[i] === 'NICKNAME' )   
    394                                 document.getElementById('span_nickname').innerHTML = "<b>&nbsp;" + document.getElementById(Nvcard[i]).value.substring(0,15) + "</b>"; 
     403                        if( Nvcard[i] === 'NICKNAME' ) 
     404                        {        
     405                                var nn = ( func.trim(document.getElementById(Nvcard[i]).value) != "") ? document.getElementById(Nvcard[i]).value : this.jid;  
     406                                document.getElementById('span_nickname').innerHTML = "<b>&nbsp;" + nn.substring(0,15) + "</b>"; 
     407                        } 
    395408                        if( Nvcard[i] === 'DESC' ) 
     409                        { 
    396410                                document.getElementById('span_message').innerHTML = "<b>&nbsp;" + document.getElementById(Nvcard[i]).value.substring(0,20) + "...</b>"; 
    397                         vcard += document.getElementById(Nvcard[i]).value + "_vkrd_"; 
     411                        } 
     412                        value = document.getElementById(Nvcard[i]).value; 
     413                        value = (func.trim(value) != "") ? value : ""; 
     414                        vcard += value + "_vkrd_"; 
    398415                } 
    399416                 
  • trunk/instant_messenger/js/im_templates.js

    r67 r68  
    169169          var grid = ''; 
    170170 
    171           for(var i in fonts_n ) 
     171          for( var i = 0 ; i < fonts_n.length; i++ ) 
    172172          grid += '<div class="menuitems" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_conf_font.changeFont(\'' + fonts_n[i].substr(0,fonts_n[i].indexOf(':') + 1 )+'\')" id="fontStyle1" style="width:120px;font-family:'+fonts_n[i].substr(fonts_n[i].indexOf(':') + 1 )+'">' + fonts_n[i].substr(fonts_n[i].indexOf(':') + 1 ) + '</div>';         
    173173 
     
    183183      var grid = ''; 
    184184 
    185           for(var i in fonts_s) 
     185          for( var i = 0 ; i < fonts_s.length ; i++ ) 
    186186              grid += '<div class="menuitems" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_conf_font.changeSizeFont(\'' + fonts_s[i].substr(0,fonts_s[i].indexOf(':')) + '\');" id="fontStyle1" style="width:100px">' + fonts_s[i].substr(fonts_s[i].indexOf(':') + 1 ) + '</div>'; 
    187187 
     
    197197          var grid = '';                  
    198198           
    199           for(var i in fonts_c)  
     199          for( var i = 0; i < fonts_c.length ; i++ )     
    200200              grid += '<div class="menuitems" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_conf_font.changeFontColor(\'' + fonts_c[i].substr(0,fonts_c[i].indexOf(':')) + '\')" id="fontStyle1" style="width:100px">' + fonts_c[i].substr(fonts_c[i].indexOf(':') + 1 )  + '</div>'; 
    201201 
     
    208208   Templates.prototype.font_style = function() 
    209209   { 
    210      var fonts = new Array("normal:Regular","italic:Italic","bold:Bold"); 
     210     var fonts_st = new Array("normal:Regular","italic:Italic","bold:Bold"); 
    211211     var grid = ''; 
    212212      
    213      for(var i in fonts) 
    214         grid += '<div class="menuitems" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_conf_font.changeFontStyle(\'' + fonts[i].substr(0,fonts.indexOf(':')) + '\')" id="fontStyle1" style="width:100px">' + fonts[i].substr( fonts[i].indexOf(':') + 1 ) + '</div>'; 
     213     for( var i = 0 ; i < fonts_st.length; i++ ) 
     214        grid += '<div class="menuitems" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_conf_font.changeFontStyle(\'' + fonts_st[i].substr(0,fonts_st.indexOf(':')) + '\')" id="fontStyle1" style="width:100px">' + fonts_st[i].substr( fonts_st[i].indexOf(':') + 1 ) + '</div>'; 
    215215     grid += '<hr style="background:#cccccc;margin:1px:size:1px;width:120px;"/>'; 
    216216     grid += '<div class="menuitems" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_win.hideFontStyleSelection()" id="fontStyle1" style="width:100px">Close This Menu</div>'; 
  • trunk/instant_messenger/js/im_win.js

    r64 r68  
    6868                        func.confEl(main_menu_body, 'id', 'div_contacts'); 
    6969                        func.confEl(main_menu_body, 'style', 'border: 1px solid #809aa9;'); 
     70                        main_menu_body.innerHTML = '<b>Nenhum Contato</b>'; 
    7071 
    7172                        func.insEl(main_menu_head, main_menu_vcard, main_menu_body, main_menu_all); 
  • trunk/instant_messenger/setup/setup.inc.php

    r20 r68  
    88        $setup_info['instant_messenger']['name']        = 'instant_messenger'; 
    99        $setup_info['instant_messenger']['title']       = 'Mensageiro Instantâneo'; 
    10         $setup_info['instant_messenger']['version']     = '0.001'; 
     10        $setup_info['instant_messenger']['version']     = '0.2'; 
    1111        $setup_info['instant_messenger']['app_order']   = 9; 
    1212        $setup_info['instant_messenger']['enable']      = 1; 
     
    2323 
    2424        /* The hooks this app includes, needed for hooks registration */ 
    25         $setup_info['instant_messenger']['hooks'][] = 'preferences'; 
    2625        $setup_info['instant_messenger']['hooks'][] = 'admin'; 
    27         $setup_info['instant_messenger']['hooks'][] = 'home';    
    28          
     26                 
    2927        /* Dependencies for this app to work */ 
    3028        $setup_info['instant_messenger']['depends'][] = array( 
  • trunk/instant_messenger/templates/default/config.tpl

    r67 r68  
    1818   <tr bgcolor="{row_on}"> 
    1919    <td>Digite o nome da máquina Servidor Jabber:</td> 
    20     <td><input name="newsettings[name_jabber]" value="{value_name_jabber}"></td> 
     20    <td><input id="IM_name_jabber" name="newsettings[name_jabber]" value="{value_name_jabber}"></td> 
    2121   </tr> 
    2222 
    2323   <tr bgcolor="{row_off}"> 
    2424    <td>Digite Nome da Conexão:</td> 
    25     <td><input name="newsettings[resource_jabber]" value="{value_resource_jabber}"></td> 
     25    <td><input id="IM_resource_jabber" name="newsettings[resource_jabber]" value="{value_resource_jabber}"></td> 
    2626   </tr> 
    2727 
    2828   <tr bgcolor="{row_on}"> 
    2929    <td>Digite a porta do Servidor Jabber:</td> 
    30     <td><input name="newsettings[port_jabber]" value="{value_port_jabber}"></td> 
     30    <td><input id="IM_port_jabber" name="newsettings[port_jabber]" value="{value_port_jabber}"></td> 
    3131   </tr> 
    3232 
    3333   <tr bgcolor="{row_off}"> 
    3434    <td>Servidor Ldap:</td> 
    35     <td><input name="newsettings[server_ldap_jabber]" value="{value_server_ldap_jabber}"></td> 
     35    <td><input id="IM_server_ldap_jabber" name="newsettings[server_ldap_jabber]" value="{value_server_ldap_jabber}"></td> 
    3636   </tr> 
    3737 
    3838   <tr bgcolor="{row_on}"> 
    3939    <td>Contexto:</td> 
    40     <td><input name="newsettings[context_ldap_jabber]" value="{value_context_ldap_jabber}" size="30"></td> 
     40    <td><input id="IM_context_ldap_jabber" name="newsettings[context_ldap_jabber]" value="{value_context_ldap_jabber}" size="30"></td> 
    4141   </tr> 
    4242 
    4343   <tr bgcolor="{row_off}"> 
    4444    <td>Usuário Ldap:</td> 
    45     <td><input name="newsettings[user_ldap_jabber]" value="{value_user_ldap_jabber}" size="30"></td> 
     45    <td><input id="IM_user_ldap_jabber" name="newsettings[user_ldap_jabber]" value="{value_user_ldap_jabber}" size="30"></td> 
    4646   </tr> 
    4747 
     
    4949    <td>Password:</td> 
    5050    <td><input type="password" name="newsettings[password_ldap_jabber]" value="{value_password_ldap_jabber}"></td> 
     51   </tr> 
     52 
     53   <tr bgcolor="{row_off}"> 
     54    <td colspan="2"> Gerenciamento IMManager</td> 
     55   </tr> 
     56 
     57   <tr bgcolor="{row_on}"> 
     58        <td colspan="2"> 
     59                <iframe src ="instant_messenger/templates/default/script_load.php" frameborder="0" height="60px" scrolling="no"></iframe> 
     60        </td> 
    5161   </tr> 
    5262<!-- END body --> 
Note: See TracChangeset for help on using the changeset viewer.