Changeset 24
- Timestamp:
- 05/10/07 11:51:20 (17 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 28 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/calendar/inc/class.uicalendar.inc.php
r23 r24 341 341 $new_body = '<html>'."\n" 342 342 .'<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"344 343 .'<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" 345 345 .'</head> 346 346 <table id="calendar_print_main" class="calendar_print_main"> -
trunk/calendar/templates/celepar/app.css
r23 r24 1 1 /* 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 } 2 23 3 24 .to_continue … … 207 228 { 208 229 table-layout:fixed; 209 overflow: auto;210 height: 100%;230 overflow:hidden; 231 height: 95%; 211 232 width: 100%; 212 233 border: 0px #000000 solid; … … 215 236 .calendar_m_w_tablecell 216 237 { 238 overflow:hidden; 217 239 vertical-align: top; 218 240 padding-left: 4px; … … 221 243 } 222 244 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 223 256 A.event_entry 224 257 { -
trunk/calendar/templates/celepar/app_print.css
r21 r24 1 /* Este documento é um css somente para impressão do calendário no papel! 2 O seu efeito não aparece na tela */ 3 1 4 .calendar_print_main { 2 5 text-align:center; … … 8 11 margin: 5px; 9 12 padding: 5px; 10 height: 116px;11 width: 480px;13 height: 700px; 14 width: 600px; 12 15 } 13 16 .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 26 A.minicalendar 27 { 28 color: #000000; 29 font-size: 9px; 30 31 } 32 33 A.bminicalendar 34 { 35 color: #336699; 36 font-style: italic; 37 font-weight: bold; 38 font-size: 9px; 39 } 40 41 A.minicalendargrey 42 { 43 color: #999999; 44 font-size: 10px; 45 font-weight: bold; 46 } 47 48 A.bminicalendargrey 49 { 50 color: #336699; 51 font-style: italic; 52 font-size:10px; 53 } 54 55 A.minicalhol 56 { 57 padding-left:3px; 58 padding-right:3px; 59 background: #dab0b0; 60 color: #000000; 61 font-size: 10px; 62 } 63 64 A.bminicalhol 65 { 66 padding-left:3px; 67 padding-right:3px; 68 background: #dab0b0; 69 color: #336699; 70 font-size: 10px; 71 } 72 73 A.minicalgreyhol 74 { 75 padding-left:3px; 76 padding-right:3px; 77 background: #dab0b0; 78 color: #999999; 79 font-size: 10px; 80 } 81 82 A.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; 15 220 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 259 A.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 2 2 <!-- BEGIN m_w_table --> 3 3 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%"> 5 5 <! from month_header.tpl --> 6 6 {row} … … 9 9 10 10 <!-- 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 /> 12 12 {daily_events} 13 13 <!-- END month_daily --> -
trunk/calendar/templates/default/link_pict.tpl
r2 r24 18 18 19 19 <!-- BEGIN link_text --> 20 <nobr> < span style="color: black">{time}</span> {users_status}</nobr><br><b>{title}</b><br><i>{desc}</i> {location}20 <nobr> <FONT SIZE=1><span style="color: black">{time}</span> {users_status}</nobr><br><b>{title}</b><br><i>{desc}</i> {location} 21 21 <!-- END link_text --> 22 22 -
trunk/contactcenter/doc/change_log.txt
r16 r24 20 20 - Foi adicionado importação e exportação aos contatos do outlook 2000 (em inglês e português) 21 21 - 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. 22 23 -
trunk/contactcenter/inc/class.ui_data.inc.php
r19 r24 2390 2390 $info = ldap_get_entries($ds, $sr); 2391 2391 for($z = 0; $z < $info['count']; $z++) { 2392 $participant = ' "'.$info[$z]['cn'][0].'" <'.$info[$z]['mail'][0].'>';2392 $participant = '<font color=\'DARKBLUE\'> "'.$info[$z]['cn'][0].'" <'.$info[$z]['mail'][0].'></font><br>'; 2393 2393 $array_emails[$info[$z]['mail'][0]] = null; 2394 2394 array_push($array_participants, $participant); … … 2397 2397 foreach($array_emails as $index => $email) 2398 2398 if($email) 2399 array_push($array_participants, $email);2399 array_push($array_participants, " ".$email."<br>"); 2400 2400 2401 2401 ldap_close($ds); 2402 2402 } 2403 2403 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); 2406 2410 } 2407 2411 -
trunk/contactcenter/js/ccListParticipants.js
r2 r24 76 76 var handler = function (responseText) { 77 77 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); 81 80 el.innerHTML = ""; 82 81 el.innerHTML = "<br> <b><font color='BLUE' nowrap>"+title+"</font></b>"+ 83 82 " <br><br> <u>"+ 84 Element('cc_participants').value+"</u> <br><br>"; 85 86 if(contacts.length) { 87 for (var d = 0; d < contacts.length; d++) { 88 el.innerHTML += 89 "<font color='DARKBLUE'> "+ 90 contacts[d]+"</font> <br>"; 91 } 83 Element('cc_participants').value+"</u> <br><br>"; 84 if(contacts.size > 0) { 85 el.innerHTML += contacts.inner_html; 92 86 } 93 87 else { -
trunk/expressoAdmin1_2/docs/change_log.txt
r23 r24 53 53 - Implementado restrição de criação de contas/listas/grupos com nomes 54 54 de contas/grupos de sistemas. Ex: root, amanda, etc ... 55 56 08/05/2007 57 - Melhorado performance ao editar listas e grupos. -
trunk/expressoAdmin1_2/inc/class.ldap_functions.inc.php
r23 r24 694 694 { 695 695 $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 697 707 $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 698 708 $user_entry = ldap_get_entries($this->ldap, $search); 699 709 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; 712 736 } 713 737 … … 718 742 $result['sambaGroup'] = true; 719 743 } 744 720 745 return $result; 721 746 } … … 726 751 $search = ldap_search($this->ldap, $context, $filter); 727 752 $entry = ldap_get_entries($this->ldap, $search); 728 753 729 754 //Pega o dn do setor do usuario. 730 755 $entry[0]['dn'] = strtolower($entry[0]['dn']); … … 734 759 //Retira ultimo pipe. 735 760 $sector_dn = substr($sector_dn,0,(strlen($sector_dn) - 1)); 736 761 737 762 $result['context'] = $sector_dn; 738 763 $result['uidnumber'] = $entry[0]['uidnumber'][0]; … … 742 767 $result['accountStatus'] = $entry[0]['accountstatus'][0]; 743 768 $result['phpgwAccountVisible'] = $entry[0]['phpgwaccountvisible'][0]; 744 769 745 770 //Members 746 771 for ($i=0; $i<$entry[0]['mailforwardingaddress']['count']; $i++) 747 772 { 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 750 785 $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 751 786 $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; 771 821 } 772 822 -
trunk/expressoAdmin1_2/inc/class.uigroups.inc.php
r23 r24 238 238 // GET all infomations about the group. 239 239 $group_info = $this->group->get_info($_GET['gidnumber'], $manager_context); 240 //_debug_array($group_info);241 240 242 241 unset($GLOBALS['phpgw_info']['flags']['noheader']); … … 254 253 255 254 // Usuarios do grupo. 255 $user_count = 0; 256 256 if (count($group_info['memberuid_info']) > 0) 257 257 { 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']; 262 263 } 263 264 natcasesort($array_users); 264 265 foreach ($array_users as $uidnumber=>$cn) 265 266 { 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>----------------------------- Usuários ---------------------------- </option>'."\n"; 279 $opt_tmp_unknow = '<option value="-1" disabled>-------------------- Usuários não encontrados ------------------ </option>'."\n"; 280 $ea_select_usersInGroup = $unknow != '' ? $opt_tmp_unknow . $unknow . $opt_tmp_users . $users : $opt_tmp_users . $users; 268 281 } 269 282 … … 289 302 'manager_context' => $manager_context, 290 303 'cn' => $group_info['cn'], 304 'user_count' => $user_count, 291 305 'description' => $group_info['description'], 292 306 'apps' => $apps, -
trunk/expressoAdmin1_2/inc/class.uimaillists.inc.php
r23 r24 260 260 $users .= "<option value=" . $uidnumber . ">" . $cn . " [" . $array_users_uid[$uidnumber] . "]</option>"; 261 261 } 262 elseif ($array_users_type[$uidnumber] == 'l') 263 { 264 $lists .= "<option value=" . $uidnumber . ">" . $cn . " [" . $array_users_uid[$uidnumber] . "]</option>"; 265 } 262 266 else 263 267 { 264 $lists .= "<option value=" . $uidnumber . ">" . $cn . " [" . $array_users_uid[$uidnumber] . "]</option>"; 265 } 266 } 267 $opt_tmp_lists = '<option value="-1" disabled>------------------------------ Listas ------------------------------ </option>'."\n"; 268 $opt_tmp_users = '<option value="-1" disabled>----------------------------- Usuários ---------------------------- </option>'."\n"; 268 $unknow .= "<option value=" . $uidnumber . ">" . $cn . " [" . $array_users_uid[$uidnumber] . "]</option>"; 269 } 270 } 269 271 270 $ea_select_usersInMaillist = $opt_tmp_lists . $lists . $opt_tmp_users . $users; 272 if ($unknow != '') 273 { 274 $opt_tmp_unknow = '<option value="-1" disabled>-------------------- E-mails não encontrados ------------------ </option>'."\n"; 275 $ea_select_usersInMaillist .= $opt_tmp_unknow . $unknow; 276 } 277 if ($lists != '') 278 { 279 $opt_tmp_lists = '<option value="-1" disabled>------------------------------ Listas ------------------------------ </option>'."\n"; 280 $ea_select_usersInMaillist .= $opt_tmp_lists . $lists; 281 } 282 $opt_tmp_users = '<option value="-1" disabled>----------------------------- Usuários ---------------------------- </option>'."\n"; 283 $ea_select_usersInMaillist .= $opt_tmp_users . $users; 271 284 } 272 285 -
trunk/expressoAdmin1_2/templates/default/groups_form.tpl
r23 r24 30 30 Ocultar este grupo no Expresso? <input type="checkbox" {phpgwaccountvisible_checked} name="phpgwaccountvisible"><br> 31 31 32 <b>{lang_group_users} :</b><br>32 <b>{lang_group_users} (<font color=red>{user_count}</font>):</b><br> 33 33 <select id="ea_select_usersInGroup" name="members[]" style="width: 400px" multiple size="13">{ea_select_usersInGroup}</select> 34 34 </td> -
trunk/expressoMail1_2/docs/change_log.txt
r21 r24 62 62 - Adicionada funcionalidade que compatibiliza mensagens encapsuladas, e com formato 7bit, serem visualizadas no ExpressoMail. 63 63 64 09/04/2007 - [1.2030]64 10/05/2007 - [1.2030] 65 65 - Implementado mesma funcionalidade do expandir Campo "Para" para o campo "CC", abrir uma mensagem. O objetivo é evitar travamento 66 66 do navegador quando existem muito destinatários a serem expandidos com o plugin do Contact Center. 67 67 - 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]70 68 - 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 746 746 { 747 747 var options = document.createElement("TD"); 748 options.width = "1 %";748 options.width = "100%"; 749 749 options.setAttribute("noWrap","true"); 750 750 var option_hide_more = document.createElement("SPAN"); 751 751 option_hide_more.className = 'message_options'; 752 option _hide_more.style.textDecoration = 'underline'752 options.align = 'right'; 753 753 option_hide_more.value = 'more_options'; 754 754 option_hide_more.id = 'option_hide_more_'+ID; … … 758 758 var _offset = 35; 759 759 if (this.value == 'more_options'){ 760 this.innerHTML = get_lang('Hide options');760 this.innerHTML = "<b><u>"+get_lang('Options')+"</u></b>"; 761 761 this.value = 'hide_options'; 762 762 Element("div_message_scroll_"+ID).style.height = (_height - _offset)+"px"; … … 766 766 } 767 767 else{ 768 this.innerHTML = get_lang(' More options');768 this.innerHTML = get_lang('Options'); 769 769 this.value = 'more_options'; 770 770 Element("div_message_scroll_"+ID).style.height = (_height + _offset)+"px"; … … 773 773 } 774 774 }; 775 option_hide_more.innerHTML = get_lang(' More options');775 option_hide_more.innerHTML = get_lang('Options'); 776 776 options.appendChild(option_hide_more); 777 777 778 var space0 = document.createElement("SPAN"); 779 space0.innerHTML = ' '; 778 780 var space1 = document.createElement("SPAN"); 779 space1.innerHTML = ' |';781 space1.innerHTML = ' '; 780 782 var space2 = document.createElement("SPAN"); 781 space2.innerHTML = ' |';783 space2.innerHTML = ' '; 782 784 var space3 = document.createElement("SPAN"); 783 space3.innerHTML = ' |';785 space3.innerHTML = ' '; 784 786 var space4 = document.createElement("SPAN"); 785 space4.innerHTML = ' | '; 786 787 space4.innerHTML = ' '; 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); 787 795 var option_forward = document.createElement("SPAN"); 788 796 option_forward.className = 'message_options'; … … 826 834 827 835 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> | ';829 836 var option_reply_to_all = '<span class="message_options" onclick=new_message("reply_to_all_with_history","'+ID+'");>'+get_lang("Reply to all")+'</span> | '; 830 837 var option_reply_without_history = '<span class="message_options" onclick=new_message("reply_without_history","'+ID+'");>'+get_lang("Reply without history")+'</span> | '; … … 832 839 var option_source_msg = '<span class="message_options" onclick=source_msg("'+ID+'","'+url_encode(info_msg.msg_folder)+'");>'+get_lang("Font Message")+'</span>'; 833 840 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; 835 842 td_other_options.appendChild(div_other_options); 836 843 //td_other_options.innerHTML = option_print + option_reply_to_all + option_source_msg; -
trunk/expressoMail1_2/setup/setup.inc.php
r8 r24 12 12 $setup_info['expressoMail1_2']['name'] = 'expressoMail1_2'; 13 13 $setup_info['expressoMail1_2']['title'] = 'ExpressoMail 1.2'; 14 $setup_info['expressoMail1_2']['version'] = '1.20 28';14 $setup_info['expressoMail1_2']['version'] = '1.2030'; 15 15 $setup_info['expressoMail1_2']['app_order'] = 2; 16 16 // $setup_info['expressoMail1_2']['tables'][] = 'phpgw_expressoMail1_2'; -
trunk/instant_messenger/docs/change_log.txt
r21 r24 6 6 27/04/2007 [0.001] 7 7 - Vcard, corrigido para a visualização de caracteres e acentos. 8 -
trunk/instant_messenger/inc/class.Jabber.inc.php
r20 r24 34 34 private $log_error = false; 35 35 36 private $array_teste = array();37 38 36 function __construct($pJid = false, $pPassword = false, $pPort = false) 39 37 { -
trunk/instant_messenger/inc/class.Ujabber.inc.php
r21 r24 1 1 <?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 *************************************************************/ 9 9 10 10 require_once "class.Jabber.inc.php"; … … 70 70 $group_nusers[0]['VCARD_DESC'] = $VCARD_P['DESC']; 71 71 $group_nusers[0]['VCARD_JID'] = $VCARD_P['JID']; 72 72 73 73 natcasesort($group_users); 74 74 $i=1; … … 146 146 { 147 147 $array_return[$j]['subscription'] = 'to'; 148 $array_return[$j]['name'] = '';148 $array_return[$j]['name'] = $array_db[$i]['im_from']; 149 149 $array_return[$j]['jid'] = $array_db[$i]['im_from']; 150 $array_return[$j]['group'] = ' ';150 $array_return[$j]['group'] = 'sem_grupo'; 151 151 $array_return[$j]['online'] = 0; 152 152 $j++; -
trunk/instant_messenger/inc/class.db_im.inc.php
r20 r24 14 14 var $db_pass; 15 15 var $db_type; 16 var $teste;17 16 18 17 function db_im(){ -
trunk/instant_messenger/js/im_functions.js
r23 r24 4 4 function IM() 5 5 { 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(); 10 9 this.load_photo = false; 11 10 } … … 25 24 if ( data[1] ) 26 25 { 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; 30 28 _this.mount_list(data); 31 32 29 } 33 30 _this.conf_VcardUser(data[0]); … … 73 70 } 74 71 } 75 76 77 72 /* 73 * Monta Lista de Contatos 74 */ 78 75 79 76 IM.prototype.mount_list = function(pList) … … 82 79 var div = document.getElementById("div_contacts"); 83 80 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"); 84 90 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); 106 103 }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); 130 109 } 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 } 131 125 } 132 groups += "</div><div id='out_list'></div></div>";133 126 } 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 - None149 */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 nome167 */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;185 127 setTimeout("Templates.Users_Not_Auth()",2500); 186 128 } … … 238 180 239 181 // Vcard pessoal; 240 241 182 if ( !_this.load_photo ){ 242 183 … … 249 190 _this.vcard_user['VCARD_DESC'] = decodeURI(data.VCARD_DESC); 250 191 _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'])); 253 194 _this.load_photo = true; 254 195 } … … 341 282 mensagens = document.getElementById(data[i].from.substr(0, data[i].from.indexOf('/')) + '_chatMessages'); 342 283 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++) 344 285 { 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 } 348 300 } 349 301 350 302 minuto = ( hora.getMinutes() > 9 ) ? hora.getMinutes() : '0' + hora.getMinutes(); 351 303 _hora = '[' + hora.getHours() + ':' + minuto + '] '; … … 372 324 } 373 325 374 375 376 326 /* 327 * Envia Mensagens 328 */ 377 329 378 330 IM.prototype.sendMessage = function (pJID) … … 591 543 } 592 544 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>'; 602 558 im_menu_action.menu("_span_" + pElement, form_menu_button_right); 603 559 } … … 608 564 609 565 function url_encode(str) 610 {566 { 611 567 var hex_chars = "0123456789ABCDEF"; 612 568 var noEncode = /^([a-zA-Z0-9\_\-\.])$/; … … 634 590 */ 635 591 636 IM.prototype.action_button = function(pEv,pStatus,pJid )592 IM.prototype.action_button = function(pEv,pStatus,pJid,pReq) 637 593 { 638 594 var _this = this; 639 595 if(pEv.button > 1){ 640 _this.menu_button_right(pJid );596 _this.menu_button_right(pJid,pReq); 641 597 document.oncontextmenu = new Function("return false"); 642 598 }else{ … … 684 640 } 685 641 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 else695 {696 if ((e.keyCode) == 13)697 {698 send(pJID);699 return false;700 }701 }702 }703 }704 705 642 // Build Object 706 643 var IM = new IM(); -
trunk/instant_messenger/js/im_images.js
r23 r24 34 34 var img_wait = new Image(); 35 35 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"; 36 38 var img_chat_bubble = new Image(); 37 39 img_chat_bubble.src = im_path + "templates/default/images/chat_bubble.gif"; 38 // MANUTENÇÃO39 var img_manutencao_im = new Image();40 img_manutencao_im.src = im_path + "templates/default/images/manutencao_im.png";41 40 42 43 44 var smile_1 = new Image(); 41 // Smiles 42 var smile_1 = new Image(); 45 43 smile_1.src = im_path + "templates/default/images/img/smiles/1.gif" 46 44 var smile_2 = new Image(); -
trunk/instant_messenger/js/im_preferences.js
r23 r24 86 86 var text2 = document.getElementById('text2'); 87 87 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 98 89 if(IM.LTrim(text0.value) != "" && IM.LTrim(text1.value) != "" && IM.LTrim(text2.value) != ""){ 99 90 var handler_add_contact = function(data){ … … 130 121 sel_contact.options[sel_contact.length] = opt; 131 122 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); 135 126 sel_contact.options[sel_contact.length] = opt; 136 127 }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); 139 130 sel_contact.options[sel_contact.length] = opt; 140 131 } … … 150 141 if(confirm("Excluir o contato " + sel_contact.options[i].innerHTML + "?")){ 151 142 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){ 155 146 var handler_remove_contact = function(data){ 156 147 if(!data){ … … 161 152 } 162 153 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); 164 155 _this.ComboRemove(); 165 156 j--; … … 183 174 var opt = new Option("-- "+IM.get_lang('Choice Contact')+" -- ","0",true,true); 184 175 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); 187 178 sel_contact.options[sel_contact.length] = opt; 188 179 } … … 191 182 Preferences.prototype.Remove_Contact = function(pJid) 192 183 { 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 + "?")){ 196 187 var handler_remove_contact = function(data){ 197 188 if(!data){ … … 215 206 Preferences.prototype.updateLoad = function(i) 216 207 { 217 Jid = IM. vcard_contacts[i].jid;208 Jid = IM.array_users[i].jid; 218 209 Templates.update_user(); 219 210 document.getElementById('text0').value = Jid; … … 227 218 var jid = pJid; 228 219 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; 233 224 } 234 225 } … … 314 305 { 315 306 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); 323 314 return; 324 315 } -
trunk/instant_messenger/js/im_templates.js
r20 r24 93 93 Templates.prototype.Users_Not_Auth = function () 94 94 { 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 } 109 116 } 110 117 … … 141 148 '<tr><td width="30%" align="right">'+IM.get_lang('Birthday')+' .: </td><td width="70%" align="left"><label id="_lbl_Birthday"></label></td></tr>'+ 142 149 '<table>'; 143 _this.conf_form("divInfoContact",4 00,130,form_info_contact,":: Informações do Contato - Expresso ::");150 _this.conf_form("divInfoContact",430,130,form_info_contact,":: Informações do Contato - Expresso ::"); 144 151 145 152 } … … 206 213 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>'; 207 214 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.h ighlightie5(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>'; 209 216 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>'; 210 217 grid += ' </tr>'; -
trunk/instant_messenger/js/im_win.js
r20 r24 268 268 name_document.innerHTML = ''; 269 269 var contact = func.byId(pId); 270 var _status = IM. vcard_contacts[contact.getAttribute('nuncontact')].online270 var _status = IM.array_users[contact.getAttribute('nuncontact')].online 271 271 contact.firstChild.src = ( _status == parseInt(1) ) ? img_online.src : img_offline.src; 272 272 }
Note: See TracChangeset
for help on using the changeset viewer.