Changeset 24


Ignore:
Timestamp:
05/10/07 11:51:20 (14 years ago)
Author:
niltonneto
Message:

* empty log message *

Location:
trunk
Files:
1 added
28 edited

Legend:

Unmodified
Added
Removed
  • trunk/calendar/inc/class.uicalendar.inc.php

    r23 r24  
    341341                                $new_body = '<html>'."\n" 
    342342                                        .'<head>'."\n" 
    343                                         .'<LINK href="'.$GLOBALS['phpgw_info']['server']['webserver_url'].'/calendar/templates/'.$GLOBALS['phpgw_info']['user']['preferences']['common']['template_set'].'/app_print.css" type=text/css rel=StyleSheet>'."\n" 
    344343                                        .'<LINK href="'.$GLOBALS['phpgw_info']['server']['webserver_url'].'/calendar/templates/'.$GLOBALS['phpgw_info']['user']['preferences']['common']['template_set'].'/app.css" type=text/css rel=StyleSheet>'."\n" 
     344                                        .'<LINK href="'.$GLOBALS['phpgw_info']['server']['webserver_url'].'/calendar/templates/'.$GLOBALS['phpgw_info']['user']['preferences']['common']['template_set'].'/app_print.css" type=text/css rel=StyleSheet media="print">'."\n" 
    345345                                        .'</head> 
    346346                                        <table id="calendar_print_main" class="calendar_print_main">                                             
  • trunk/calendar/templates/celepar/app.css

    r23 r24  
    11/* CSS Document */ 
     2.calendar_print_main { 
     3        text-align:center; 
     4        font-family: Verdana, Arial, Helvetica, sans-serif; 
     5        font-size: 8px; 
     6        color: #000066; 
     7        background-color: #F7F7F7; 
     8        border: 1px solid #CCCCCC; 
     9        margin: 5px; 
     10        padding: 5px; 
     11        height: 116px; 
     12        width: 480px; 
     13} 
     14 
     15.button 
     16{ 
     17        font-family: Verdana, Arial, Helvetica, sans-serif; 
     18        font-size: 14px; 
     19        color: 006699; 
     20        background-color: #D4D0C8; 
     21        border: 2px solid #666666; 
     22} 
    223 
    324.to_continue 
     
    207228{ 
    208229        table-layout:fixed; 
    209         overflow:auto; 
    210         height: 100%; 
     230        overflow:hidden; 
     231        height: 95%; 
    211232        width: 100%; 
    212233        border: 0px #000000 solid; 
     
    215236.calendar_m_w_tablecell 
    216237{ 
     238        overflow:hidden; 
    217239        vertical-align: top; 
    218240        padding-left: 4px; 
     
    221243} 
    222244 
     245.screen_only 
     246{ 
     247        font-size: 10px; 
     248} 
     249 
     250.calendar_m_w_table_daynumber 
     251{ 
     252        font-weight: bold; 
     253        font-size: 10px; 
     254} 
     255 
    223256A.event_entry 
    224257{ 
  • trunk/calendar/templates/celepar/app_print.css

    r21 r24  
     1/* Este documento é um css somente para impressão do calendário no papel! 
     2O seu efeito não aparece na tela  */ 
     3 
    14.calendar_print_main { 
    25        text-align:center; 
     
    811        margin: 5px; 
    912        padding: 5px; 
    10         height: 116px; 
    11         width: 480px; 
     13        height: 700px; 
     14        width: 600px; 
    1215} 
    1316.button { 
    14         font-family: Verdana, Arial, Helvetica, sans-serif; 
     17        display: none; 
     18} 
     19 
     20 
     21.to_continue 
     22{ 
     23        font-size: 9px; 
     24} 
     25 
     26A.minicalendar  
     27{  
     28        color: #000000;  
     29        font-size: 9px; 
     30         
     31} 
     32 
     33A.bminicalendar  
     34{  
     35        color: #336699;  
     36        font-style: italic; 
     37        font-weight: bold; 
     38        font-size: 9px;  
     39} 
     40 
     41A.minicalendargrey  
     42{  
     43        color: #999999;  
     44        font-size: 10px; 
     45        font-weight: bold; 
     46} 
     47 
     48A.bminicalendargrey  
     49{  
     50        color: #336699;  
     51        font-style: italic;  
     52        font-size:10px;  
     53} 
     54 
     55A.minicalhol 
     56{  
     57        padding-left:3px; 
     58        padding-right:3px; 
     59        background: #dab0b0; 
     60        color: #000000;  
     61        font-size: 10px;  
     62} 
     63 
     64A.bminicalhol 
     65{  
     66        padding-left:3px; 
     67        padding-right:3px; 
     68        background: #dab0b0; 
     69        color: #336699;  
     70        font-size: 10px;  
     71} 
     72 
     73A.minicalgreyhol 
     74{  
     75        padding-left:3px; 
     76        padding-right:3px; 
     77        background: #dab0b0; 
     78        color: #999999;  
     79        font-size: 10px;  
     80} 
     81 
     82A.bminicalgreyhol 
     83{  
     84        padding-left:3px; 
     85        padding-right:3px; 
     86        background: #dab0b0; 
     87        color: #999999;  
     88        font-size: 10px;  
     89} 
     90 
     91 
     92.event-on 
     93{  
     94        background: #D3DCE3; 
     95        border: #E8F0F0 1px solid; 
     96} 
     97 
     98.event-off 
     99{  
     100        background: #E8F0F0; 
     101        border: #D3DCE3 1px solid; 
     102} 
     103 
     104.event-holiday 
     105{ 
     106        font-size: 100%; 
     107        background: #dac0c0; 
     108        color:#000000; 
     109        vertical-align: middle; 
     110} 
     111 
     112.time 
     113{ 
     114        background: #D3DCE3; 
     115        color:#000000; 
     116        font-size: 10px; 
     117        font-weight: bold; 
     118        vertical-align: middle; 
     119        width: 5.2%; 
     120        text-align: right; 
     121        padding-right: 5px; 
     122        line-height: 11px; 
     123        border: #E8F0F0 1px solid; 
     124} 
     125 
     126 
     127.planner-cell 
     128{ 
     129        cursor: pointer; 
     130        cursor: hand; 
     131        border: thin solid black; 
     132} 
     133 
     134/* common */ 
     135.calendar_link_print 
     136{ 
     137        text-align: center; 
     138        font-size: 10px; 
     139} 
     140 
     141//Mini Calendar 
     142 
     143.calendar_minical_table 
     144{ 
     145        width: 180px; 
     146        font-weight: bold; 
     147} 
     148 
     149.calendar_minical_daytable 
     150{ 
     151        width: 100%; 
     152} 
     153 
     154.calendar_minical_dayname 
     155{ 
     156        font-size: 9px; 
     157        text-align: right; 
     158} 
     159 
     160.calendar_minical_hrule 
     161{ 
     162        width: 96%; 
     163} 
     164 
     165/* Header */ 
     166.calendar_dropbuttons 
     167{ 
     168        align: center; 
     169        text-align: center; 
     170        vertical-align: bottom; 
     171        font-weight: bold; 
     172        font-size: 8px; 
     173} 
     174 
     175.calendar-weekidentifier 
     176{ 
     177        font-size:16px; 
     178        font-weight: bold; 
     179        text-align: center; 
     180} 
     181 
     182.calendar_header 
     183{ 
     184        font-size: 16px; 
     185        font-weight: bold; 
     186        text-align: center; 
     187} 
     188 
     189.calendar_dayview_table_header 
     190{ 
     191        font-size: 13px; 
     192        font-weight: bold; 
     193        text-align: center; 
     194} 
     195 
     196.calendar_dayview_todo_header 
     197{ 
     198        margin: 0px;  
     199        padding: 2px; 
     200        font-weight: bold; 
     201} 
     202 
     203/* week view */ 
     204.calendar_week_identifier_table 
     205{ 
     206        border: 0px solid black; 
     207        width: 100%; 
     208} 
     209 
     210.calendar_week_identifier 
     211{ 
     212        font-size: 13px; 
     213        text-align: center; 
     214        font-weight: bold; 
     215} 
     216 
     217.calendar_weekview_daytitle 
     218{ 
     219        font-weight: bold; 
    15220        font-size: 12px; 
    16         color: 006699; 
    17         background-color: #D4D0C8; 
    18         border: 2px solid #666666; 
    19 } 
     221        background: #D3DCE3; 
     222} 
     223 
     224.calendar_m_w_table 
     225{ 
     226        table-layout:fixed; 
     227        overflow:hidden; 
     228        height: 95%; 
     229        width: 100%; 
     230        border: 0px #000000 solid; 
     231} 
     232 
     233.calendar_m_w_tablecell 
     234{ 
     235        overflow:hidden; 
     236        vertical-align: top; 
     237        padding-left: 4px; 
     238        padding-right: 4px; 
     239        padding-bottom: 6px; 
     240} 
     241 
     242.screen_only 
     243{ 
     244        display:none; 
     245} 
     246 
     247.calendar_m_w_table_daynumber 
     248{ 
     249        font-weight: bold; 
     250        font-family: Arial; 
     251        font-size: 13px; 
     252        vertical-align: top; 
     253        background-color: #778899; 
     254        border: 1px solid #000000; 
     255        margin: 1px; 
     256        padding: 1px; 
     257} 
     258 
     259A.event_entry 
     260{ 
     261        font-size:10px; 
     262} 
     263 
     264/* month view */ 
     265 
     266.calendar_month_identifier 
     267{ 
     268        font-size:18px; 
     269        font-weight: bold; 
     270} 
     271 
     272.calendar_user_identifier 
     273{ 
     274        font-size:12px; 
     275        color: #009999; 
     276        font-weight: bold; 
     277} 
     278 
     279.calendar_week_minical_table 
     280{ 
     281        width:100%; 
     282        border: 0px solid #000000 
     283} 
     284 
     285.calendar_weekinfo 
     286{ 
     287        color: #000000; 
     288        padding-left: 2px; 
     289        padding-right: 2px; 
     290        font-size: 10px; 
     291        font-weight: bold; 
     292        font-style: italic; 
     293} 
  • trunk/calendar/templates/celepar/month_day.tpl

    r21 r24  
    22<!-- BEGIN m_w_table --> 
    33 
    4 <table id="calendar_m_w_table" class="calendar_print_main" border="1" width="100%"> 
     4<table id="calendar_m_w_table" class="calendar_m_w_table" border="1" width="100%"> 
    55        <! from month_header.tpl --> 
    66        {row} 
     
    99 
    1010<!-- BEGIN month_daily --> 
    11 <span id="calendar_m_w_table_daynumber" style="font-size:10px">[ {day_number} ]</span>{new_event_link}<br /> 
     11<span class="screen_only">[ </span><span class="calendar_m_w_table_daynumber" >{day_number}</span><span class="screen_only"> ]</span>{new_event_link}<br /> 
    1212    {daily_events} 
    1313<!-- END month_daily --> 
  • trunk/calendar/templates/default/link_pict.tpl

    r2 r24  
    1818 
    1919<!-- BEGIN link_text --> 
    20 <nobr>&nbsp;<span style="color: black">{time}</span> {users_status}</nobr><br><b>{title}</b><br><i>{desc}</i> {location} 
     20<nobr>&nbsp;<FONT SIZE=1><span style="color: black">{time}</span> {users_status}</nobr><br><b>{title}</b><br><i>{desc}</i> {location} 
    2121<!-- END link_text --> 
    2222 
  • trunk/contactcenter/doc/change_log.txt

    r16 r24  
    2020- Foi adicionado importação e exportação aos contatos do outlook 2000 (em inglês e português) 
    2121- Foi adicionado a importação e exportação com suporte ao campo de telefone. Em todos os tipos de arquivos. 
     22- Corrigido problema de lentidão ao buscar o nome/email dos participantes de uma lista pública grande. 
    2223 
  • trunk/contactcenter/inc/class.ui_data.inc.php

    r19 r24  
    23902390                                $info = ldap_get_entries($ds, $sr);                                                      
    23912391                                for($z = 0; $z < $info['count']; $z++) { 
    2392                                         $participant =  '&quot;'.$info[$z]['cn'][0].'&quot; &lt;'.$info[$z]['mail'][0].'&gt;'; 
     2392                                        $participant =  '<font color=\'DARKBLUE\'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;'.$info[$z]['cn'][0].'&quot; &lt;'.$info[$z]['mail'][0].'&gt;</font><br>'; 
    23932393                                        $array_emails[$info[$z]['mail'][0]] = null;                                                              
    23942394                                        array_push($array_participants, $participant);                                   
     
    23972397                                foreach($array_emails as $index => $email) 
    23982398                                        if($email)  
    2399                                                 array_push($array_participants, $email);                                 
     2399                                                array_push($array_participants, "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$email."<br>");                           
    24002400                                                                                                 
    24012401                                ldap_close($ds); 
    24022402                        } 
    24032403                        sort($array_participants); 
    2404                         $array_participants['names_ordered'] = $contact['names_ordered'];  
    2405                         echo serialize($array_participants); 
     2404                        $innerHTML = '';                         
     2405                        foreach($array_participants as $index => $participant){ 
     2406                                $innerHTML .= $participant; 
     2407                        } 
     2408                        $return = array('size' => count($array_participants), 'names_ordered'=> $contact['names_ordered'], 'inner_html' => $innerHTML);                   
     2409                        echo serialize($return); 
    24062410                }        
    24072411 
  • trunk/contactcenter/js/ccListParticipants.js

    r2 r24  
    7676                        var handler = function (responseText) { 
    7777                                var contacts = unserialize(responseText); 
    78                                 var title = contacts['names_ordered'];                   
    79                                 document.body.appendChild(el); 
    80                                  
     78                                var title = contacts.names_ordered;      
     79                                document.body.appendChild(el);                           
    8180                                el.innerHTML = "";       
    8281                                el.innerHTML = "<br>&nbsp;&nbsp;<b><font color='BLUE' nowrap>"+title+"</font></b>"+ 
    8382                                "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;<u>"+ 
    84                                 Element('cc_participants').value+"</u>&nbsp;&nbsp;&nbsp;<br><br>";       
    85                                  
    86                                 if(contacts.length) { 
    87                                         for (var d = 0; d < contacts.length; d++) { 
    88                                                 el.innerHTML +=  
    89                                                 "<font color='DARKBLUE'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"+ 
    90                                                 contacts[d]+"</font>&nbsp;&nbsp;&nbsp;<br>";                                                                                                                                     
    91                                         } 
     83                                Element('cc_participants').value+"</u>&nbsp;&nbsp;&nbsp;<br><br>";                               
     84                                if(contacts.size > 0) { 
     85                                                el.innerHTML += contacts.inner_html; 
    9286                                } 
    9387                                else { 
  • trunk/expressoAdmin1_2/docs/change_log.txt

    r23 r24  
    5353- Implementado restrição de criação de contas/listas/grupos com nomes 
    5454de contas/grupos de sistemas. Ex: root, amanda, etc ... 
     55 
     5608/05/2007 
     57- Melhorado performance ao editar listas e grupos. 
  • trunk/expressoAdmin1_2/inc/class.ldap_functions.inc.php

    r23 r24  
    694694                { 
    695695                        $justthese = array("cn","uid","uidnumber"); 
    696                         $filter="(&(phpgwAccountType=u)(uid=".$entry[0]['memberuid'][$i]."))"; 
     696                         
     697                        // Montagem dinamica do filtro 
     698                        $filter="(&(phpgwAccountType=u)(|"; 
     699                        for ($k=0; (($k<10) && ($i<$entry[0]['memberuid']['count'])); $k++) 
     700                        { 
     701                                $filter .= "(uid=".$entry[0]['memberuid'][$i].")"; 
     702                                $i++; 
     703                        } 
     704                        $i--; 
     705                        $filter .= "))"; 
     706                         
    697707                        $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 
    698708                        $user_entry = ldap_get_entries($this->ldap, $search); 
    699709 
    700                         if ($user_entry[0]['uid'][0] == '') 
    701                         { 
    702                                 $result['memberuid_info'][$i]['cn'] = '0-UID NAO EXISTE, corrigir manualmente: ' . $entry[0]['memberuid'][$i]; 
    703                                 $result['memberuid_info'][$i]['uid'] = $entry[0]['memberuid'][$i]; 
    704                                 $result['memberuid_info'][$i]['uidnumber'] = $entry[0]['memberuid'][$i]; 
    705                         } 
    706                         else 
    707                         { 
    708                                 $result['memberuid_info'][$i]['cn'] = $user_entry[0]['cn'][0]; 
    709                                 $result['memberuid_info'][$i]['uid'] = $user_entry[0]['uid'][0]; 
    710                                 $result['memberuid_info'][$i]['uidnumber'] = $user_entry[0]['uidnumber'][0]; 
    711                         } 
     710                        for ($j=0; $j<$user_entry['count']; $j++) 
     711                        { 
     712                                $result['memberuid_info'][$user_entry[$j]['uid'][0]]['cn'] = $user_entry[$j]['cn'][0]; 
     713                                $result['memberuid_info'][$user_entry[$j]['uid'][0]]['uidnumber'] = $user_entry[$j]['uidnumber'][0]; 
     714                                $result['memberuid_info'][$user_entry[$j]['uid'][0]]['type'] = 'u'; 
     715                        } 
     716                } 
     717                 
     718                // Retira o count do array 
     719                array_shift($entry[0]['memberuid']); 
     720                 
     721                // Checamos e-mails que não fazem parte do expresso. 
     722                // Criamos um array temporario 
     723                $tmp_array = array(); 
     724                foreach ($result['memberuid_info'] as $uid => $user_data) 
     725                { 
     726                        $tmp_array[] = $uid; 
     727                } 
     728 
     729                // Vemos a diferença 
     730                $array_diff = array_diff($entry[0]['memberuid'], $tmp_array); 
     731                 
     732                // Incluimos no resultado 
     733                foreach ($array_diff as $index=>$uid) 
     734                { 
     735                        $result['memberuid_info'][$uid]['cn'] = $uid; 
    712736                } 
    713737                 
     
    718742                                $result['sambaGroup'] = true; 
    719743                } 
     744 
    720745                return $result; 
    721746        }        
     
    726751                $search = ldap_search($this->ldap, $context, $filter); 
    727752                $entry = ldap_get_entries($this->ldap, $search); 
    728  
     753         
    729754                //Pega o dn do setor do usuario. 
    730755                $entry[0]['dn'] = strtolower($entry[0]['dn']); 
     
    734759                //Retira ultimo pipe. 
    735760                $sector_dn = substr($sector_dn,0,(strlen($sector_dn) - 1)); 
    736                  
     761                         
    737762                $result['context']                              = $sector_dn; 
    738763                $result['uidnumber']                    = $entry[0]['uidnumber'][0]; 
     
    742767                $result['accountStatus']                = $entry[0]['accountstatus'][0]; 
    743768                $result['phpgwAccountVisible']  = $entry[0]['phpgwaccountvisible'][0]; 
    744                  
     769                         
    745770                //Members 
    746771                for ($i=0; $i<$entry[0]['mailforwardingaddress']['count']; $i++) 
    747772                { 
    748                         $justthese = array("cn", "uidnumber", "uid", "phpgwaccounttype"); 
    749                         $filter="(&(|(phpgwAccountType=u)(phpgwAccountType=l))(mail=".$entry[0]['mailforwardingaddress'][$i]."))"; 
     773                        $justthese = array("cn", "uidnumber", "uid", "phpgwaccounttype", "mail"); 
     774                                 
     775                        // Montagem dinamica do filtro 
     776                        $filter="(&(|(phpgwAccountType=u)(phpgwAccountType=l))(|"; 
     777                        for ($k=0; (($k<10) && ($i<$entry[0]['mailforwardingaddress']['count'])); $k++) 
     778                        { 
     779                                $filter .= "(mail=".$entry[0]['mailforwardingaddress'][$i].")"; 
     780                                $i++; 
     781                        } 
     782                        $i--; 
     783                        $filter .= "))"; 
     784                                 
    750785                        $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 
    751786                        $user_entry = ldap_get_entries($this->ldap, $search); 
    752                          
    753                         if ($user_entry['count'] != 0) 
    754                         { 
    755                                 $result['members_info'][$user_entry[0]['uidnumber'][0]]['uid'] = $user_entry[0]['uid'][0]; 
    756                                 $result['members_info'][$user_entry[0]['uidnumber'][0]]['cn'] = $user_entry[0]['cn'][0]; 
    757                                 $result['members_info'][$user_entry[0]['uidnumber'][0]]['type'] = $user_entry[0]['phpgwaccounttype'][0]; 
    758                                 $result['members_info'][$user_entry[0]['uidnumber'][0]]['mailforwardingaddress'] = $entry[0]['mailforwardingaddress'][$i]; 
    759                                 $result['members'][] = $user_entry[0]['uidnumber'][0]; 
    760                         } 
    761                         else 
    762                         { 
    763                                 $result['members_info'][$entry[0]['mailforwardingaddress'][$i]]['uid'] = $entry[0]['mailforwardingaddress'][$i]; 
    764                                 $result['members_info'][$entry[0]['mailforwardingaddress'][$i]]['cn'] = 'E-Mail nao encontrado (' . $entry[0]['mailforwardingaddress'][$i] . ')'; 
    765                                 $result['members_info'][$entry[0]['mailforwardingaddress'][$i]]['mailforwardingaddress'] = $entry[0]['mailforwardingaddress'][$i]; 
    766                                 $result['members'][] = $entry[0]['mailforwardingaddress'][$i]; 
    767                         } 
    768                 } 
    769                  
    770                 return $result; 
     787                                 
     788                        for ($j=0; $j<$user_entry['count']; $j++) 
     789                        { 
     790                                $result['members_info'][$user_entry[$j]['uidnumber'][0]]['uid'] = $user_entry[$j]['uid'][0]; 
     791                                $result['members_info'][$user_entry[$j]['uidnumber'][0]]['cn'] = $user_entry[$j]['cn'][0]; 
     792                                $result['members_info'][$user_entry[$j]['uidnumber'][0]]['type'] = $user_entry[$j]['phpgwaccounttype'][0]; 
     793                                $result['members_info'][$user_entry[$j]['uidnumber'][0]]['mail'] = $user_entry[$j]['mail'][0]; 
     794                                $result['members'][] = $user_entry[$j]['uidnumber'][0]; 
     795                        } 
     796                } 
     797 
     798                // Retira o count do array 
     799                array_shift($entry[0]['mailforwardingaddress']); 
     800 
     801                // Checamos e-mails que não fazem parte do expresso. 
     802                // Criamos um array temporario 
     803                $tmp_array = array(); 
     804                foreach ($result['members_info'] as $uid => $user_data) 
     805                { 
     806                        $tmp_array[] = $user_data['mail']; 
     807                } 
     808 
     809                // Vemos a diferença 
     810                $array_diff = array_diff($entry[0]['mailforwardingaddress'], $tmp_array); 
     811 
     812                // Incluimos no resultado 
     813                foreach ($array_diff as $index=>$mailforwardingaddress) 
     814                { 
     815                        $result['members_info'][$mailforwardingaddress]['uid'] = $mailforwardingaddress; 
     816                        $result['members_info'][$mailforwardingaddress]['cn'] = 'E-Mail nao encontrado'; 
     817                        $result['members_info'][$mailforwardingaddress]['mailforwardingaddress'] = $mailforwardingaddress; 
     818                        $result['members'][] = $mailforwardingaddress; 
     819                } 
     820                return $result;  
    771821        }        
    772822 
  • trunk/expressoAdmin1_2/inc/class.uigroups.inc.php

    r23 r24  
    238238                        // GET all infomations about the group. 
    239239                        $group_info = $this->group->get_info($_GET['gidnumber'], $manager_context); 
    240                         //_debug_array($group_info); 
    241240 
    242241                        unset($GLOBALS['phpgw_info']['flags']['noheader']); 
     
    254253 
    255254                        // Usuarios do grupo. 
     255                        $user_count = 0; 
    256256                        if (count($group_info['memberuid_info']) > 0) 
    257257                        { 
    258                                 foreach ($group_info['memberuid_info'] as $user) 
    259                                 { 
    260                                         $array_users[$user['uidnumber']] = $user['cn']; 
    261                                         $array_users_uid[$user['uidnumber']] = $user['uid']; 
     258                                foreach ($group_info['memberuid_info'] as $uid=>$user_data) 
     259                                { 
     260                                        $array_users[$user_data['uidnumber']] = $user_data['cn']; 
     261                                        $array_users_uid[$user_data['uidnumber']] = $uid; 
     262                                        $array_users_type[$user_data['uidnumber']] = $user_data['type']; 
    262263                                } 
    263264                                natcasesort($array_users); 
    264265                                foreach ($array_users as $uidnumber=>$cn) 
    265266                                { 
    266                                         $ea_select_usersInGroup .= "<option value=" . $uidnumber . ">" . $cn . " [" . $array_users_uid[$uidnumber] . "]</option>"; 
    267                                 } 
     267                                        $user_count++; 
     268                                        if ($array_users_type[$uidnumber] == 'u') 
     269                                        { 
     270                                                $users .= "<option value=" . $uidnumber . ">" . $cn . " [" . $array_users_uid[$uidnumber] . "]</option>"; 
     271                                        } 
     272                                        else 
     273                                        { 
     274                                                $unknow .= "<option value=-1>" . $cn . " [Corrigir manualmente]</option>"; 
     275                                        } 
     276                                } 
     277                                 
     278                                $opt_tmp_users  = '<option  value="-1" disabled>-----------------------------&nbsp;&nbsp;&nbsp;&nbsp;Usuários&nbsp;&nbsp;&nbsp;&nbsp;---------------------------- </option>'."\n"; 
     279                                $opt_tmp_unknow = '<option  value="-1" disabled>--------------------&nbsp;&nbsp;&nbsp;&nbsp;Usuários não encontrados&nbsp;&nbsp;&nbsp;&nbsp;------------------ </option>'."\n"; 
     280                                $ea_select_usersInGroup = $unknow != '' ? $opt_tmp_unknow . $unknow . $opt_tmp_users . $users : $opt_tmp_users . $users; 
    268281                        } 
    269282                         
     
    289302                                'manager_context'                       => $manager_context, 
    290303                                'cn'                                            => $group_info['cn'], 
     304                                'user_count'                            => $user_count, 
    291305                                'description'                           => $group_info['description'], 
    292306                                'apps'                                          => $apps, 
  • trunk/expressoAdmin1_2/inc/class.uimaillists.inc.php

    r23 r24  
    260260                                                $users .= "<option value=" . $uidnumber . ">" . $cn .  " [" . $array_users_uid[$uidnumber] . "]</option>"; 
    261261                                        } 
     262                                        elseif ($array_users_type[$uidnumber] == 'l') 
     263                                        { 
     264                                                $lists .= "<option value=" . $uidnumber . ">" . $cn .  " [" . $array_users_uid[$uidnumber] . "]</option>"; 
     265                                        } 
    262266                                        else 
    263267                                        { 
    264                                                 $lists .= "<option value=" . $uidnumber . ">" . $cn .  " [" . $array_users_uid[$uidnumber] . "]</option>"; 
    265                                         } 
    266                                 } 
    267                                 $opt_tmp_lists = '<option  value="-1" disabled>------------------------------&nbsp;&nbsp;&nbsp;&nbsp;Listas&nbsp;&nbsp;&nbsp;&nbsp;------------------------------ </option>'."\n"; 
    268                                 $opt_tmp_users = '<option  value="-1" disabled>-----------------------------&nbsp;&nbsp;&nbsp;&nbsp;Usuários&nbsp;&nbsp;&nbsp;&nbsp;---------------------------- </option>'."\n"; 
     268                                                $unknow .= "<option value=" . $uidnumber . ">" . $cn .  " [" . $array_users_uid[$uidnumber] . "]</option>"; 
     269                                        } 
     270                                } 
    269271                                 
    270                                 $ea_select_usersInMaillist = $opt_tmp_lists . $lists . $opt_tmp_users . $users; 
     272                                if ($unknow != '') 
     273                                { 
     274                                        $opt_tmp_unknow = '<option  value="-1" disabled>--------------------&nbsp;&nbsp;&nbsp;&nbsp;E-mails não encontrados&nbsp;&nbsp;&nbsp;&nbsp;------------------ </option>'."\n"; 
     275                                        $ea_select_usersInMaillist .= $opt_tmp_unknow . $unknow; 
     276                                } 
     277                                if ($lists != '') 
     278                                { 
     279                                        $opt_tmp_lists  = '<option  value="-1" disabled>------------------------------&nbsp;&nbsp;&nbsp;&nbsp;Listas&nbsp;&nbsp;&nbsp;&nbsp;------------------------------ </option>'."\n"; 
     280                                        $ea_select_usersInMaillist .= $opt_tmp_lists . $lists; 
     281                                } 
     282                                $opt_tmp_users  = '<option  value="-1" disabled>-----------------------------&nbsp;&nbsp;&nbsp;&nbsp;Usuários&nbsp;&nbsp;&nbsp;&nbsp;---------------------------- </option>'."\n"; 
     283                                $ea_select_usersInMaillist .= $opt_tmp_users . $users; 
    271284                        } 
    272285 
  • trunk/expressoAdmin1_2/templates/default/groups_form.tpl

    r23 r24  
    3030                                                        Ocultar este grupo no Expresso? <input type="checkbox" {phpgwaccountvisible_checked} name="phpgwaccountvisible"><br>                                                     
    3131                                                         
    32                                                         <b>{lang_group_users}:</b><br> 
     32                                                        <b>{lang_group_users} (<font color=red>{user_count}</font>):</b><br> 
    3333                                                        <select id="ea_select_usersInGroup" name="members[]" style="width: 400px" multiple size="13">{ea_select_usersInGroup}</select> 
    3434                                                </td> 
  • trunk/expressoMail1_2/docs/change_log.txt

    r21 r24  
    6262- Adicionada funcionalidade que compatibiliza mensagens encapsuladas, e com formato 7bit, serem visualizadas no ExpressoMail. 
    6363 
    64 09/04/2007 - [1.2030] 
     6410/05/2007 - [1.2030] 
    6565- Implementado mesma funcionalidade do expandir Campo "Para" para o campo "CC", abrir uma mensagem. O objetivo é evitar travamento 
    6666do navegador quando existem muito destinatários a serem expandidos com o plugin do Contact Center. 
    6767- Corrigido problema de mensagens que têm nome de arquivos nos atributos "parameters" e "dparameters" de sua estrutura. 
    68  
    69 27/04/2007 - [1.2030] 
    7068- Implementado ocultação de usuários e grupos no expressoMail e na Calendar. 
     69- Corrigido imagem down.button.png que aparecia com fundo branco no IE; 
     70- Alterado nome do link "Mais opções" para "Opções", no menu de mensagem aberta; 
     71- Colocado link "Imprimir" entre os links "Opções" e "Encaminhar", no menu de mensagem aberta; 
  • trunk/expressoMail1_2/js/draw_api.js

    r13 r24  
    746746        { 
    747747        var options = document.createElement("TD"); 
    748         options.width = "1%"; 
     748        options.width = "100%"; 
    749749        options.setAttribute("noWrap","true"); 
    750750        var option_hide_more = document.createElement("SPAN"); 
    751751        option_hide_more.className = 'message_options'; 
    752         option_hide_more.style.textDecoration = 'underline' 
     752        options.align = 'right'; 
    753753        option_hide_more.value = 'more_options'; 
    754754        option_hide_more.id = 'option_hide_more_'+ID; 
     
    758758                var _offset = 35; 
    759759                if (this.value == 'more_options'){ 
    760                         this.innerHTML = get_lang('Hide options'); 
     760                        this.innerHTML = "<b><u>"+get_lang('Options')+"</u></b>"; 
    761761                        this.value = 'hide_options'; 
    762762                        Element("div_message_scroll_"+ID).style.height = (_height - _offset)+"px"; 
     
    766766                } 
    767767                else{ 
    768                         this.innerHTML = get_lang('More options'); 
     768                        this.innerHTML = get_lang('Options'); 
    769769                        this.value = 'more_options'; 
    770770                        Element("div_message_scroll_"+ID).style.height = (_height + _offset)+"px"; 
     
    773773                } 
    774774        }; 
    775         option_hide_more.innerHTML = get_lang('More options'); 
     775        option_hide_more.innerHTML = get_lang('Options'); 
    776776        options.appendChild(option_hide_more); 
    777777         
     778        var space0 = document.createElement("SPAN"); 
     779        space0.innerHTML = '&nbsp;'; 
    778780        var space1 = document.createElement("SPAN"); 
    779         space1.innerHTML = ' | '; 
     781        space1.innerHTML = '&nbsp;'; 
    780782        var space2 = document.createElement("SPAN"); 
    781         space2.innerHTML = ' | '; 
     783        space2.innerHTML = '&nbsp;'; 
    782784        var space3 = document.createElement("SPAN"); 
    783         space3.innerHTML = ' | '; 
     785        space3.innerHTML = '&nbsp;'; 
    784786        var space4 = document.createElement("SPAN"); 
    785         space4.innerHTML = ' | '; 
    786  
     787        space4.innerHTML = '&nbsp;'; 
     788 
     789        var option_print = document.createElement("SPAN"); 
     790        option_print.className = 'message_options'; 
     791        option_print.onclick = function(){print_msg(info_msg.msg_folder,info_msg.msg_number,ID);}; 
     792        option_print.innerHTML = get_lang('Print'); 
     793        options.appendChild(space0); 
     794        options.appendChild(option_print); 
    787795        var option_forward = document.createElement("SPAN"); 
    788796        option_forward.className = 'message_options'; 
     
    826834         
    827835        var option_move                                                 = '<span class="message_options" onclick=wfolders.makeWindow("'+ID+'","move_to");>'+get_lang("Move")+'</span> | '; 
    828         var option_print                                                = '<span class="message_options" onclick=print_msg("'+info_msg.msg_folder+'","'+info_msg.msg_number+'","'+ID+'");>'+get_lang("Print")+'</span> | '; 
    829836        var option_reply_to_all                                 = '<span class="message_options" onclick=new_message("reply_to_all_with_history","'+ID+'");>'+get_lang("Reply to all")+'</span> | '; 
    830837        var option_reply_without_history                = '<span class="message_options" onclick=new_message("reply_without_history","'+ID+'");>'+get_lang("Reply without history")+'</span> | '; 
     
    832839        var option_source_msg                                   = '<span class="message_options" onclick=source_msg("'+ID+'","'+url_encode(info_msg.msg_folder)+'");>'+get_lang("Font Message")+'</span>';       
    833840 
    834         div_other_options.innerHTML = option_mark_as + option_mark_as_unseen + option_mark_as_important + option_mark_as_normal + option_move + option_print + option_reply_to_all + option_reply_without_history + option_reply_to_all_without_history + option_source_msg; 
     841        div_other_options.innerHTML = option_mark_as + option_mark_as_unseen + option_mark_as_important + option_mark_as_normal + option_move + option_reply_to_all + option_reply_without_history + option_reply_to_all_without_history + option_source_msg; 
    835842        td_other_options.appendChild(div_other_options); 
    836843        //td_other_options.innerHTML = option_print + option_reply_to_all + option_source_msg; 
  • trunk/expressoMail1_2/setup/setup.inc.php

    r8 r24  
    1212        $setup_info['expressoMail1_2']['name']          = 'expressoMail1_2'; 
    1313        $setup_info['expressoMail1_2']['title']         = 'ExpressoMail 1.2'; 
    14         $setup_info['expressoMail1_2']['version']       = '1.2028'; 
     14        $setup_info['expressoMail1_2']['version']       = '1.2030'; 
    1515        $setup_info['expressoMail1_2']['app_order']     = 2; 
    1616//      $setup_info['expressoMail1_2']['tables'][]      = 'phpgw_expressoMail1_2'; 
  • trunk/instant_messenger/docs/change_log.txt

    r21 r24  
    6627/04/2007 [0.001] 
    77- Vcard, corrigido para a visualização de caracteres e acentos.  
     8 
  • trunk/instant_messenger/inc/class.Jabber.inc.php

    r20 r24  
    3434        private $log_error = false; 
    3535         
    36         private $array_teste = array(); 
    37  
    3836        function __construct($pJid = false, $pPassword = false, $pPort = false) 
    3937        { 
  • trunk/instant_messenger/inc/class.Ujabber.inc.php

    r21 r24  
    11<?php 
    2         /************************************************************ 
    3          *      Classe Jabber - Expresso                                                                * 
    4          *  -------------------------------------------------------  
    5          *      Com Autenticação no Servidor Jabber com Tls                         * 
    6          *      Rodrigo Souza - rodsouza@celepar.pr.gov.br                              * 
    7          *      Alexandre Correia - alexandrecorreia@celepar.pr.gov.br  * 
    8          ************************************************************/ 
     2        /************************************************************* 
     3         *      Classe Jabber - Expresso                                                                                 * 
     4         *  -------------------------------------------------------   
     5         *         Com Autenticação no Servidor Jabber                                      * 
     6         *      Rodrigo Souza - rodsouza@celepar.pr.gov.br                               * 
     7         *      Alexandre Correia - alexandrecorreia@celepar.pr.gov.br * 
     8         *************************************************************/ 
    99 
    1010require_once "class.Jabber.inc.php"; 
     
    7070                $group_nusers[0]['VCARD_DESC'] = $VCARD_P['DESC']; 
    7171                $group_nusers[0]['VCARD_JID'] = $VCARD_P['JID'];                                 
    72  
     72                 
    7373                natcasesort($group_users);               
    7474                $i=1; 
     
    146146            { 
    147147                                $array_return[$j]['subscription'] = 'to'; 
    148                                 $array_return[$j]['name'] = ''; 
     148                                $array_return[$j]['name'] = $array_db[$i]['im_from']; 
    149149                                $array_return[$j]['jid'] = $array_db[$i]['im_from']; 
    150                                 $array_return[$j]['group'] = ''; 
     150                                $array_return[$j]['group'] = 'sem_grupo'; 
    151151                                $array_return[$j]['online'] = 0; 
    152152                                $j++; 
  • trunk/instant_messenger/inc/class.db_im.inc.php

    r20 r24  
    1414        var $db_pass; 
    1515        var $db_type; 
    16         var $teste; 
    1716         
    1817        function db_im(){ 
  • trunk/instant_messenger/js/im_functions.js

    r23 r24  
    44   function IM() 
    55   { 
    6       this.array_lang_im  = []; 
    7       this.user_not_aut   = []; 
    8       this.vcard_contacts = []; 
    9       this.vcard_user     = []; 
     6      this.array_lang_im  = new Array(); 
     7      this.array_users    = new Array(); 
     8      this.vcard_user     = new Array(); 
    109      this.load_photo     = false; 
    1110   } 
     
    2524         if ( data[1] ) 
    2625         { 
    27             _this.vcard_contacts.splice(0,_this.vcard_contacts.length); 
    28             _this.vcard_user.splice(0,_this.vcard_user.length); 
    29             _this.user_not_aut.splice(0,_this.user_not_aut.length); 
     26            _this.array_users.splice(0,_this.array_users.length); 
     27            _this.array_users = data; 
    3028            _this.mount_list(data); 
    31  
    3229         } 
    3330         _this.conf_VcardUser(data[0]); 
     
    7370      } 
    7471   } 
    75         /* 
    76          * Monta Lista de Contatos 
    77          */ 
     72   /* 
     73        * Monta Lista de Contatos 
     74        */ 
    7875         
    7976        IM.prototype.mount_list = function(pList) 
     
    8279                var div = document.getElementById("div_contacts"); 
    8380                        div.innerHTML = ""; 
     81 
     82                        div.innerHTML += '<img id="img_all_groups" src=' + img_group_open.src +  
     83                                         ' onclick=javascript:IM.visible_group("all_groups")>' + 
     84                                                 '<b>'+_this.get_lang('list of contacts') + ' - ' + ( pList.length - 1 ) + '</b><br>' + 
     85                                         '<div id="all_groups"></div>'; 
     86 
     87                for(var i=1; i < pList.length; i++){ 
     88 
     89                        var div_agroups = document.getElementById("all_groups"); 
    8490                 
    85                 var groups = "<b>"+_this.get_lang("list of contacts")+" - 0 </b><br>"; 
    86          
    87                 if(pList.length > 0){ 
    88                         var name_group = ""; 
    89                         groups = "<img id='img_all_groups' src=" + img_group_open.src + " onclick=javascript:IM.visible_group('all_groups')>" + 
    90                                  "<b>"+_this.get_lang("list of contacts")+" - " + ( pList.length - 1 ) + "</b><br>"+ 
    91                                  "<div id='all_groups'>"; 
    92                         for(var i=1; i < pList.length; i++){ 
    93                                 if( i == 1 ){ 
    94                                         if(pList[i].group != "" && pList[i].name != ""){ 
    95                                                 name_group = pList[i].group; 
    96                                                 groups += '<img id="img_' + pList[i].group.rm_space() + '" src="' + img_group_open.src + '" onclick="javascript:IM.visible_group(\'' + pList[i].group.rm_space() + '\')" style="margin-left:16px;">'; 
    97                                                 groups += "<b>" + pList[i].group + "</b><br>"; 
    98                                                 groups += "<div id='" + pList[i].group.rm_space() + "'>"; 
    99                                                 if(pList[i].subscription == "both"){ 
    100                                                         groups += '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+pList[i].online + '\', \'' + pList[i].jid + '\');" style="cursor:pointer;padding-left:32px;"><img src="' + ((pList[i].online) == parseInt(1) ? img_online.src : img_offline.src) + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>'; 
    101                                                 }else{ 
    102                                                         groups += _this.FromToNone(pList[i].jid,pList[i].subscription,pList[i].group,pList[i].name); 
    103                                                 } 
    104                                         }else 
    105                                                 _this.user_not_aut[_this.user_not_aut.length] = pList[i].jid + ";" + i; 
     91                        if(document.getElementById("img_" + pList[i].group.rm_space()) == null ){ 
     92                                div_agroups.innerHTML += '<img id="img_' + pList[i].group.rm_space() + '" src="' + img_group_open.src + '" onclick="javascript:IM.visible_group(\'' + pList[i].group.rm_space() + '\')" style="margin-left:16px;">'; 
     93                                div_agroups.innerHTML += '<b>' + pList[i].group + '</b></br>'; 
     94 
     95                                if(pList[i].group.rm_space() != 'sem_grupo'){ 
     96                                        var div_group = document.createElement('DIV'); 
     97                                                div_group.id = pList[i].group.rm_space(); 
     98                                                if(pList[i].subscription.rm_space() == "both") 
     99                                                        div_group.innerHTML = '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+pList[i].online + '\', \'' + pList[i].jid + '\' ,false);" style="cursor:pointer;padding-left:32px;"><img src="' + ((pList[i].online) == parseInt(1) ? img_online.src : img_offline.src) + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>'; 
     100                                                else 
     101                                                        div_group.innerHTML = '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+parseInt(0)+'\', \'' + pList[i].jid + '\' ,true);" style="cursor:pointer;padding-left:32px;"><img src="' + img_wait_auth.src + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>'; 
     102                                                div_agroups.appendChild(div_group); 
    106103                                }else{ 
    107                                         if(pList[i].group != "" && pList[i].name != ""){ 
    108                                                 if(pList[i].group == name_group){ 
    109                                                         if(pList[i].subscription == "both"){ 
    110                                                                 groups += '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+pList[i].online + '\', \'' + pList[i].jid + '\');" style="cursor:pointer;padding-left:32px;"><img src="' + ((pList[i].online) == parseInt(1) ? img_online.src : img_offline.src) + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>'; 
    111                                                         }else{ 
    112                                                                 groups += _this.FromToNone(pList[i].jid,pList[i].subscription,pList[i].group,pList[i].name); 
    113                                                         } 
    114                                                         name_group = pList[i].group; 
    115                                                 }else{ 
    116                                                         groups += "</div>"; 
    117                                                         groups += '<img id="img_' + pList[i].group.rm_space() + '" src="' + img_group_open.src + '" onclick="javascript:IM.visible_group(\'' + pList[i].group.rm_space() + '\')" style="margin-left:16px;">'; 
    118                                                         groups += "<b>" + pList[i].group + "</b><br>"; 
    119                                                         groups += "<div id='" + pList[i].group.rm_space() + "'>"; 
    120                                                         if(pList[i].subscription == "both"){ 
    121                                                                 groups += '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+pList[i].online + '\', \'' + pList[i].jid + '\');" style="cursor:pointer;padding-left:32px;"><img src="' + ((pList[i].online) == parseInt(1) ? img_online.src : img_offline.src) + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>'; 
    122                                                         }else{ 
    123                                                                 groups += _this.FromToNone(pList[i].jid,pList[i].subscription,pList[i].group,pList[i].name); 
    124                                                         } 
    125                                                         name_group = pList[i].group; 
    126                                                 } 
    127                                         }else{ 
    128                                                 _this.user_not_aut[_this.user_not_aut.length] = pList[i].jid + ";" + i; 
    129                                         } 
     104                                        var div_group = document.createElement('DIV'); 
     105                                                div_group.id = pList[i].group.rm_space(); 
     106                                                div_group.innerHTML = '<div id="'+pList[i].jid+'" onclick=Preferences.updateLoad("'+i+'") style="cursor:pointer;padding-left:32px;">'+ 
     107                                                                                          '<img src="'+img_not_authorized.src+'">'+pList[i].jid+'</div>'; 
     108                                                div_agroups.appendChild(div_group);                                      
    130109                                } 
     110                        }else{ 
     111 
     112                                if(pList[i].group.rm_space() != 'sem_grupo'){ 
     113                                        var div_group = document.getElementById(pList[i].group.rm_space()); 
     114                                        if(pList[i].subscription.rm_space() == "both") 
     115                                                div_group.innerHTML += '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+pList[i].online + '\', \'' + pList[i].jid + '\',false);" style="cursor:pointer;padding-left:32px;"><img src="' + ((pList[i].online) == parseInt(1) ? img_online.src : img_offline.src) + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>'; 
     116                                        else 
     117                                                div_group.innerHTML = '<div id="' + pList[i].jid + '" nuncontact="'+ i +'" onmouseover="this.className=\'contato_hover\'" onmouseout="this.className=\'\'" onmousedown="javascript:IM.action_button(event, \''+parseInt(0)+'\', \'' + pList[i].jid + '\',true);" style="cursor:pointer;padding-left:32px;"><img src="' + img_wait_auth.src + '">' + pList[i].name + '</div><span id="_span_' + pList[i].jid + '" class="menu_im"></span>';                                       
     118                                        div_agroups.appendChild(div_group); 
     119                                }else{ 
     120                                        var div_group = document.getElementById(pList[i].group.rm_space()); 
     121                                                div_group.innerHTML += '<div id="'+pList[i].jid+'" onclick=Preferences.updateLoad("'+i+'") style="cursor:pointer;padding-left:32px;">'+ 
     122                                                                                           '<img src="'+img_not_authorized.src+'">'+pList[i].jid+'</div>'; 
     123                                                div_agroups.appendChild(div_group); 
     124                                }        
    131125                        } 
    132                         groups += "</div><div id='out_list'></div></div>"; 
    133126                } 
    134                  
    135                 // Vcard Contato; 
    136                 if(pList.length > 0) 
    137                         _this.vcard_contacts =  pList; 
    138  
    139                 // Imprime valor de groups; 
    140                 div.innerHTML = groups; 
    141  
    142                 // Usuários sem grupo e nome; 
    143                 if(_this.user_not_aut.length > 0) 
    144                         _this.Group_Name(document.getElementById('out_list')); 
    145         } 
    146  
    147         /* 
    148          * Define se From - To - None 
    149          */ 
    150  
    151         IM.prototype.FromToNone = function(pJid,pSubscription,pGroup,pName) 
    152         { 
    153                 var n_groups = ""; 
    154                 var _this = this; 
    155                 if(pSubscription == "from") 
    156                         n_groups += "<div id='" + pJid + "' nucontact="+ i +" style='cursor:pointer;padding-left:32px;' onclick=javascript:IM.Authorization(\'"+pJid+"\',\'"+pSubscription+"\')><img src="+img_not_authorized.src+" title='Aguardando/Enviar Autorização'>"+pName+"</div>"; 
    157                 else if(pSubscription == "to") 
    158                         n_groups += "<div id='" + pJid + "' nucontact="+ i +" style='cursor:pointer;padding-left:32px;' onclick=javascript:IM.Authorization(\'"+pJid+"\',\'"+pSubscription+"\')><img src="+img_not_authorized.src+" title='Enviar Autorização'>"+pName+"</div>";                                                                                                                                                         
    159                 else if(pSubscription == "none"){ 
    160                         n_groups += "<div id='" + pJid + "' nucontact="+ i +" style='cursor:pointer;padding-left:32px;' onclick=javascript:IM.Authorization(\'"+pJid+"\',\'"+pSubscription+"\')><img src="+img_not_authorized.src+" title='Pedir Autorização'>"+pName+"</div>";                                                                                                                                                  
    161                 }        
    162                 return n_groups; 
    163         } 
    164  
    165         /* 
    166          *  Usuário sem grupo e nome 
    167          */ 
    168  
    169         IM.prototype.Group_Name = function(el) 
    170         { 
    171                 var _this = this; 
    172                 var group_nt = ""; 
    173                  
    174                 group_nt += '<img       id="img_not_aut" src="' + img_group_open.src + '" onclick="javascript:IM.visible_group(\'not_aut\')" style="margin-left:16px;">'; 
    175                 group_nt += "<b>" + _this.get_lang("Sem Cadastro") + "</b><br>"; 
    176                 group_nt += "<div id='not_aut'>"; 
    177                 for(var i=0; i < _this.user_not_aut.length; i++){ 
    178                         var pos = _this.user_not_aut[i].indexOf("@"); 
    179                         var ind = _this.user_not_aut[i].substr((_this.user_not_aut[i].indexOf(";")+1),1); 
    180                         group_nt += '<div id="'+_this.user_not_aut[i]+'" onclick=Preferences.updateLoad("'+ind+'") style="cursor:pointer;padding-left:32px;">'+ 
    181                                                 '<img src="'+img_not_authorized.src+'">'+_this.user_not_aut[i].substr(0,pos)+'</div>'; 
    182                 } 
    183                 group_nt += "</div>"; 
    184                 el.innerHTML = group_nt; 
    185127                setTimeout("Templates.Users_Not_Auth()",2500); 
    186128        } 
     
    238180 
    239181                // Vcard pessoal; 
    240  
    241182                if ( !_this.load_photo ){ 
    242183 
     
    249190                        _this.vcard_user['VCARD_DESC'] = decodeURI(data.VCARD_DESC); 
    250191                        _this.vcard_user['VCARD_JID']  = decodeURI(data.VCARD_JID); 
    251  
    252                         im_win.get_photo_ldap(_this.vcard_user['VCARD_JID']); 
     192                         
     193                        im_win.get_photo_ldap(decodeURI(data['VCARD_JID'])); 
    253194                        _this.load_photo = true; 
    254195                } 
     
    341282                        mensagens = document.getElementById(data[i].from.substr(0, data[i].from.indexOf('/')) + '_chatMessages'); 
    342283                            var nickname = data[i].from.substr(0, data[i].from.indexOf('/')); 
    343                     for(var j=1 ; j < _this.vcard_contacts.length ; j++) 
     284                    for(var j=1 ; j < _this.array_users.length ; j++) 
    344285                    { 
    345                                   if(data[i].from.substr(0, data[i].from.indexOf('/')) == _this.vcard_contacts[j].VCARD_JID) 
    346                                      if(_this.vcard_contacts[j].VCARD_NICKNAME != "") 
    347                                              nickname = _this.vcard_contacts[j].VCARD_NICKNAME;  
     286                                          var nick_user = decodeURI(_this.array_users[j].VCARD_JID);     
     287 
     288                                  if( nickname.rm_space() == nick_user.rm_space()) 
     289                                  { 
     290                                     var vcard_nick = decodeURI(_this.array_users[j].VCARD_NICKNAME); 
     291                                     if( vcard_nick != "") 
     292                                     { 
     293                                             nickname = vcard_nick;      
     294                                             if(nickname.rm_space() == decodeURI(_this.array_users[j].VCARD_NICKNAME)) 
     295                                                nickname = nickname; 
     296                                             else 
     297                                                nickname = decodeURI(_this.array_users[j].VCARD_NICKNAME); 
     298                                         } 
     299                                           } 
    348300                        } 
    349                      
     301                    
    350302                    minuto = ( hora.getMinutes() > 9 ) ? hora.getMinutes() : '0' + hora.getMinutes(); 
    351303                    _hora = '[' + hora.getHours() + ':' + minuto + '] '; 
     
    372324        } 
    373325 
    374         /* 
    375          * Envia Mensagens 
    376          */ 
     326   /* 
     327        * Envia Mensagens 
     328        */ 
    377329 
    378330   IM.prototype.sendMessage = function (pJID) 
     
    591543   } 
    592544 
    593    IM.prototype.menu_button_right = function(pElement) 
    594    { 
    595       var form_menu_button_right = '<dl>'+ 
    596                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.Update_NickName(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Nick') + '</a>'+ 
    597                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.SendFile(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Send File') + '</a>'+ 
    598                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.Update_Group(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Group') + '</a>'+ 
    599                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.Remove_Contact(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Delete') + '</a>'+ 
    600                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.vCardLoad_Contact(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('See Info') + '</a>'+ 
    601                                    '</dl>'; 
     545   IM.prototype.menu_button_right = function(pElement,pReq) 
     546   { 
     547      var form_menu_button_right = '<dl>'; 
     548              if(pReq) 
     549              { 
     550                    form_menu_button_right += '<dt><a href="javascript:void(0);" onclick="javascript:IM.Authorization(\''+pElement+'\',\'from\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Authorization') + '</a>';                                    
     551                  } 
     552          form_menu_button_right += '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.Update_NickName(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Nick') + '</a>'+ 
     553                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.SendFile(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Send File') + '</a>'+ 
     554                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.Update_Group(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Group') + '</a>'+ 
     555                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.Remove_Contact(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('Delete') + '</a>'+ 
     556                                                                    '<dt><a href="javascript:void(0);" onclick="javascript:Preferences.vCardLoad_Contact(\''+pElement+'\');"><img src="'+img_group_close.src+'">' + IM.get_lang('See Info') + '</a>'+ 
     557                                    '</dl>'; 
    602558      im_menu_action.menu("_span_" + pElement, form_menu_button_right); 
    603559   } 
     
    608564         
    609565        function url_encode(str) 
    610    {  
     566    {  
    611567            var hex_chars = "0123456789ABCDEF";  
    612568            var noEncode = /^([a-zA-Z0-9\_\-\.])$/;  
     
    634590         */ 
    635591 
    636         IM.prototype.action_button = function(pEv,pStatus,pJid) 
     592        IM.prototype.action_button = function(pEv,pStatus,pJid,pReq) 
    637593        { 
    638594                var _this = this; 
    639595                if(pEv.button > 1){ 
    640                         _this.menu_button_right(pJid); 
     596                        _this.menu_button_right(pJid,pReq); 
    641597                        document.oncontextmenu = new Function("return false"); 
    642598                }else{ 
     
    684640        } 
    685641 
    686         function teste(pJID) 
    687         { 
    688                 document.getElementById(pJID + '_edita').onkeydown = function (e){ 
    689                         if (is_ie) 
    690                         { 
    691                                 if ((window.event.keyCode) == 13) 
    692                                         send(pJID); 
    693                         } 
    694                         else 
    695                         { 
    696                                 if ((e.keyCode) == 13) 
    697                                 { 
    698                                         send(pJID); 
    699                                         return false; 
    700                                 } 
    701                         } 
    702                 } 
    703         } 
    704  
    705642// Build Object  
    706643        var IM = new IM(); 
  • trunk/instant_messenger/js/im_images.js

    r23 r24  
    3434        var img_wait = new Image(); 
    3535        img_wait.src = im_path + "templates/default/images/wait.gif"; 
     36        var img_wait_auth = new Image(); 
     37        img_wait_auth.src = im_path + "templates/default/images/wait_auth.gif"; 
    3638        var img_chat_bubble = new Image(); 
    3739        img_chat_bubble.src = im_path + "templates/default/images/chat_bubble.gif"; 
    38         // MANUTENÇÃO 
    39         var img_manutencao_im = new Image(); 
    40         img_manutencao_im.src = im_path + "templates/default/images/manutencao_im.png"; 
    4140 
    42  
    43  
    44         var smile_1 = new Image(); 
     41   // Smiles 
     42   var smile_1 = new Image(); 
    4543   smile_1.src = im_path + "templates/default/images/img/smiles/1.gif" 
    4644   var smile_2 = new Image(); 
  • trunk/instant_messenger/js/im_preferences.js

    r23 r24  
    8686                var text2 = document.getElementById('text2'); 
    8787                var _this = this; 
    88                  
    89                 if(pFunc != "divUpdateUser_im"){ 
    90                         var jid = text0.value.substr(0,text0.value.indexOf('@')); 
    91                         for(var i=0; i < IM.user_not_aut.length; i++){ 
    92                                 if(IM.user_not_aut[i].substr(0,IM.user_not_aut[i].indexOf('@')) == jid){ 
    93                                         return; 
    94                                 }                                        
    95                         } 
    96                 } 
    97                          
     88 
    9889                if(IM.LTrim(text0.value) != "" && IM.LTrim(text1.value) != "" && IM.LTrim(text2.value) != ""){ 
    9990                        var handler_add_contact = function(data){ 
     
    130121                sel_contact.options[sel_contact.length] = opt; 
    131122 
    132                 for(var i=1; i < IM.vcard_contacts.length; i++){ 
    133                         if(IM.vcard_contacts[i].name != ""){ 
    134                                 opt = new Option(IM.vcard_contacts[i].name,IM.vcard_contacts[i].jid, false, false); 
     123                for(var i=1; i < IM.array_users.length; i++){ 
     124                        if(IM.array_users[i].name != ""){ 
     125                                opt = new Option(IM.array_users[i].name,IM.array_users[i].jid, false, false); 
    135126                                sel_contact.options[sel_contact.length] = opt; 
    136127                        }else{ 
    137                                 name = IM.vcard_contacts[i].jid.substr(0,IM.vcard_contacts[i].jid.indexOf('@')); 
    138                                 opt = new Option(name,IM.vcard_contacts[i].jid, false, false); 
     128                                name = IM.array_users[i].jid.substr(0,IM.array_users[i].jid.indexOf('@')); 
     129                                opt = new Option(name,IM.array_users[i].jid, false, false); 
    139130                                sel_contact.options[sel_contact.length] = opt; 
    140131                        } 
     
    150141                                if(confirm("Excluir o contato " + sel_contact.options[i].innerHTML + "?")){ 
    151142                                        var in_el = sel_contact.options[i].innerHTML; 
    152                                         for(var j=1 ; j < IM.vcard_contacts.length; j++){ 
    153                                                 var name = IM.vcard_contacts[j].jid.substr(0,IM.vcard_contacts[j].jid.indexOf('@')); 
    154                                                 if(IM.vcard_contacts[j].name == in_el || name == in_el){ 
     143                                        for(var j=1 ; j < IM.array_users.length; j++){ 
     144                                                var name = IM.array_users[j].jid.substr(0,IM.array_users[j].jid.indexOf('@')); 
     145                                                if(IM.array_users[j].name == in_el || name == in_el){ 
    155146                                                        var handler_remove_contact = function(data){ 
    156147                                                                if(!data){ 
     
    161152                                                        } 
    162153                                                        cIM.cExecute("$this.Ujabber.RosterRemoveUser",handler_remove_contact,"jid="+sel_contact.options[i].value); 
    163                                                         IM.vcard_contacts.splice(j,1); 
     154                                                        IM.array_users.splice(j,1); 
    164155                                                        _this.ComboRemove();                                                     
    165156                                                        j--; 
     
    183174                var opt = new Option("-- "+IM.get_lang('Choice Contact')+" -- ","0",true,true); 
    184175                sel_contact.options[sel_contact.length] = opt; 
    185                 for(var i=0; i < IM.vcard_contacts.length; i++){ 
    186                         opt = new Option(IM.vcard_contacts[i].name,IM.vcard_contacts[i].jid, false, false); 
     176                for(var i=0; i < IM.array_users.length; i++){ 
     177                        opt = new Option(IM.array_users[i].name,IM.array_users[i].jid, false, false); 
    187178                        sel_contact.options[sel_contact.length] = opt; 
    188179                } 
     
    191182        Preferences.prototype.Remove_Contact = function(pJid) 
    192183        { 
    193                 for(var i=0; i < IM.vcard_contacts.length; i++){ 
    194                         if(IM.vcard_contacts[i].jid == pJid){ 
    195                                 if(confirm("Excluir o contato " + IM.vcard_contacts[i].name + "?")){ 
     184                for(var i=0; i < IM.array_users.length; i++){ 
     185                        if(IM.array_users[i].jid == pJid){ 
     186                                if(confirm("Excluir o contato " + IM.array_users[i].name + "?")){ 
    196187                                        var handler_remove_contact = function(data){ 
    197188                                                if(!data){ 
     
    215206   Preferences.prototype.updateLoad = function(i) 
    216207   { 
    217                 Jid = IM.vcard_contacts[i].jid; 
     208                Jid = IM.array_users[i].jid; 
    218209                Templates.update_user();         
    219210                document.getElementById('text0').value = Jid; 
     
    227218                var jid   = pJid; 
    228219                 
    229                 for(var i=1; i < IM.vcard_contacts.length; i++){ 
    230                         if(IM.vcard_contacts[i].jid == pJid){ 
    231                                 name  = IM.vcard_contacts[i].name; 
    232                                 group = IM.vcard_contacts[i].group; 
     220                for(var i=1; i < IM.array_users.length; i++){ 
     221                        if(IM.array_users[i].jid == pJid){ 
     222                                name  = IM.array_users[i].name; 
     223                                group = IM.array_users[i].group; 
    233224                        } 
    234225                } 
     
    314305        { 
    315306                Templates.information_Contact(); 
    316                 for(var i=0; i < IM.vcard_contacts.length; i++){ 
    317                         if(IM.vcard_contacts[i].jid == pJid){ 
    318                                 document.getElementById('_lbl_FN').innerHTML = decodeURI(IM.vcard_contacts[i].VCARD_FN); 
    319                                 document.getElementById('_lbl_Nickname').innerHTML = decodeURI(IM.vcard_contacts[i].VCARD_NICKNAME); 
    320                                 document.getElementById('_lbl_Orgunit').innerHTML = decodeURI(IM.vcard_contacts[i].VCARD_ORGUNIT); 
    321                                 document.getElementById('_lbl_Role').innerHTML = decodeURI(IM.vcard_contacts[i].VCARD_ROLE); 
    322                                 document.getElementById('_lbl_Birthday').innerHTML = decodeURI(IM.vcard_contacts[i].VCARD_BDAY);                                                                                                                                 
     307                for(var i=0; i < IM.array_users.length; i++){ 
     308                        if(IM.array_users[i].jid == pJid){ 
     309                                document.getElementById('_lbl_FN').innerHTML = decodeURI(IM.array_users[i].VCARD_FN); 
     310                                document.getElementById('_lbl_Nickname').innerHTML = decodeURI(IM.array_users[i].VCARD_NICKNAME); 
     311                                document.getElementById('_lbl_Orgunit').innerHTML = decodeURI(IM.array_users[i].VCARD_ORGUNIT); 
     312                                document.getElementById('_lbl_Role').innerHTML = decodeURI(IM.array_users[i].VCARD_ROLE); 
     313                                document.getElementById('_lbl_Birthday').innerHTML = decodeURI(IM.array_users[i].VCARD_BDAY);                                                                                                                            
    323314                                return; 
    324315                        }        
  • trunk/instant_messenger/js/im_templates.js

    r20 r24  
    9393        Templates.prototype.Users_Not_Auth = function () 
    9494        { 
    95                 var _this = this; 
    96                 var form_auth_user = "<div style='margin-left:10px;margin-top:5'>" + 
    97                                                          "<br>"+ 
    98                                                          "<b>O(s) contato(s) abaixo aguarda(m) sua autorização." + 
    99                                                          "<br>Para adicionar este(s) novo(s) contato(s), basta dar um " + 
    100                                                          "<br>clique em cima do contato." + 
    101                                                          "<p>Contato(s) :" +  
    102                                                          "</b><br>" + 
    103                                                          "<div id='divChildrenFormAuthUser'>" +          
    104                                                          "<p>" + document.getElementById('not_aut').innerHTML +  
    105                                                          "</div></div>"; 
    106  
    107                 _this.conf_form("divFormAuthUser",370,200,form_auth_user, ":: Contatos sem Cadastro - Expresso ::"); 
    108          
     95                var cont = 0; 
     96                var _this = this; 
     97                                 
     98                for(var i=0 ; i < IM.array_users.length; i++) 
     99                        if(IM.array_users[i].group == "sem_grupo") 
     100                                cont++; 
     101                 
     102                if(cont > 0){ 
     103                        var form_auth_user = "<div style='margin-left:10px;margin-top:5'>" + 
     104                                                                 "<br>"+ 
     105                                                                 "<b>O(s) contato(s) abaixo aguarda(m) sua autorização." + 
     106                                                                 "<br>Para adicionar este(s) novo(s) contato(s), basta dar um " + 
     107                                                                 "<br>clique em cima do contato." + 
     108                                                                 "<p>Contato(s) :" +  
     109                                                                 "</b><br>" + 
     110                                                                 "<div id='divChildrenFormAuthUser'>" +          
     111                                                                 "<p>" + document.getElementById('sem_grupo').innerHTML +  
     112                                                                 "</div></div>"; 
     113         
     114                        _this.conf_form("divFormAuthUser",370,200,form_auth_user, ":: Contatos sem Cadastro - Expresso ::"); 
     115                } 
    109116        } 
    110117 
     
    141148                                                                '<tr><td width="30%" align="right">'+IM.get_lang('Birthday')+'&nbsp;.:&nbsp;</td><td width="70%" align="left"><label id="_lbl_Birthday"></label></td></tr>'+                                                     
    142149                                                                '<table>'; 
    143                 _this.conf_form("divInfoContact",400,130,form_info_contact,":: Informações do Contato - Expresso ::"); 
     150                _this.conf_form("divInfoContact",430,130,form_info_contact,":: Informações do Contato - Expresso ::"); 
    144151         
    145152        } 
     
    206213      grid += '      <td><div class="emotionItem" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_win.addEmotion(\'^o)\')" id="sendMessageMenuId"><img alt="^o)" width="19" height="19" src="' + smile_51.src + '" /></div></td>'; 
    207214      grid += '      <td><div class="emotionItem" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_win.addEmotion(\':-*\')" id="sendMessageMenuId"><img alt=":-*" width="19" height="19" src="' + smile_52.src + '" /></div></td>'; 
    208       grid += '      <td><div class="emotionItem" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_win.addEmotion(\'+o(\')" id="sendMessageMenuId"><img alt="+o(" width="19" height="19" src="' + smile_53.src + '" /></div></td>'; 
     215      grid += '      <td><div class="emotionItem" onMouseover="im_win.hAuthorizationighlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_win.addEmotion(\'+o(\')" id="sendMessageMenuId"><img alt="+o(" width="19" height="19" src="' + smile_53.src + '" /></div></td>'; 
    209216      grid += '      <td><div class="emotionItem" onMouseover="im_win.highlightie5(this)" onMouseout="im_win.lowlightie5(this)" onclick="im_win.addEmotion(\'(sn)\')" id="sendMessageMenuId"><img alt=(sn)"" width="19" height="19" src="' + smile_54.src + '" /></div></td>'; 
    210217      grid += '    </tr>'; 
  • trunk/instant_messenger/js/im_win.js

    r20 r24  
    268268         name_document.innerHTML = ''; 
    269269         var contact = func.byId(pId); 
    270          var _status = IM.vcard_contacts[contact.getAttribute('nuncontact')].online 
     270         var _status = IM.array_users[contact.getAttribute('nuncontact')].online 
    271271         contact.firstChild.src = ( _status == parseInt(1) ) ? img_online.src : img_offline.src; 
    272272      } 
Note: See TracChangeset for help on using the changeset viewer.