Changeset 72
- Timestamp:
- 09/24/07 10:22:29 (17 years ago)
- Location:
- trunk
- Files:
-
- 25 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoAdmin1_2/inc/class.ldap_functions.inc.php
r69 r72 769 769 $result['sn'] = $entry[0]['sn'][0]; 770 770 $result['telephonenumber'] = $entry[0]['telephonenumber'][0]; 771 $result['passwd_expired'] = $entry[0]['phpgwlastpasswdchange'][0]; 771 772 $result['phpgwaccountstatus'] = $entry[0]['phpgwaccountstatus'][0]; 772 773 $result['phpgwaccountvisible'] = $entry[0]['phpgwaccountvisible'][0]; -
trunk/expressoAdmin1_2/inc/class.uiaccounts.inc.php
r64 r72 256 256 'lang_lists_permission' => lang('Email Lists'), 257 257 'lang_aplication_permission' => lang('Aplication Permission'), 258 'lang_search_organization' => lang('Search Organiztion'), 258 259 'lang_organizations' => lang('Organizations'), 259 260 'lang_sector' => lang('Sector'), … … 263 264 'lang_password' => lang('Password'), 264 265 'lang_re-password' => lang('Re-Password'), 266 'lang_passwd_expired' => lang('Password expired'), 265 267 'lang_changepassword' => lang('Change password'), 266 268 'lang_phone' => lang('Phone'), … … 274 276 'sectors' => $sectors, 275 277 'combo_organizations' => $sectors, 278 'passwd_expired_checked' => 'CHECKED', 276 279 'changepassword_checked' => 'CHECKED', 277 280 'phpgwaccountstatus_checked' => 'CHECKED', … … 565 568 'lang_aplication_permission' => lang('Aplication Permission'), 566 569 'lang_organizations' => lang('Organizations'), 570 'lang_search_organization' => lang('Search Organiztion'), 567 571 'lang_sector' => lang('Sector'), 568 572 'lang_account_lid' => lang('Login ID'), 569 573 'lang_firstname' => lang('First Name'), 570 574 'lang_lastname' => lang('Last Name'), 575 'lang_passwd_expired' => lang('Password expired'), 571 576 'lang_password' => lang('Password'), 572 577 'lang_phone' => lang('Phone'), … … 592 597 'display_tr_default_password' => $this->functions->check_acl($manager_account_lid,'set_user_default_password') ? '' : 'none', 593 598 599 'passwd_expired_checked' => $user_info['passwd_expired'] == '0' ? 'CHECKED' : '', 594 600 'changepassword_checked' => $user_info['changepassword'] == '1' ? 'CHECKED' : '', 595 601 'phpgwaccountstatus_checked' => $user_info['phpgwaccountstatus'] == 'A' ? 'CHECKED' : '', -
trunk/expressoAdmin1_2/inc/class.user.inc.php
r69 r72 89 89 $user_info['userPassword'] = '{md5}' . base64_encode(pack("H*",md5($params['password1']))); 90 90 91 if ($params['passwd_expired'] == '1') 92 $user_info['phpgwLastPasswdChange'] = '0'; 93 91 94 // Gerenciar senhas RFC2617 92 95 if ($this->current_config['expressoAdmin_userPasswordRFC2617'] == 'true') … … 270 273 $dn = 'uid=' . $old_values['uid'] . ',' . strtolower($old_values['context']); 271 274 $diff = array_diff($new_values, $old_values); 275 /* 276 echo '<pre>'; 277 echo '--- OLD: '; 278 print_r($old_values['passwd_expired']); 279 echo '<br>--- NEW: '; 280 print_r($new_values['passwd_expired']); 281 echo '<br>'; 282 print_r($diff); 283 return; 284 */ 272 285 273 286 $manager_account_lid = $_SESSION['phpgw_session']['session_lid']; … … 339 352 $ldap_mod_replace['telephonenumber'] = $new_values['telephonenumber']; 340 353 $this->db_functions->write_log("alterado telephonenumber do usuario",'',$dn,'',''); 354 } 355 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 356 // Passwd Expired - Com atributo 357 if (($old_values['passwd_expired'] != '') && ($new_values['passwd_expired'] == '1')) 358 { 359 $ldap_mod_replace['phpgwlastpasswdchange'] = '0'; 360 $this->db_functions->write_log("Expirado senha do usuário",'',$dn,'',''); 341 361 } 342 362 } … … 457 477 $ldap_remove['telephonenumber'] = array(); 458 478 $this->db_functions->write_log("removido telephonenumber do usuario",'',$dn,'',''); 479 } 480 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 481 // Passwd Expired - Sem atributo 482 if (($old_values['passwd_expired'] == '') && ($new_values['passwd_expired'] == '1')) 483 { 484 $ldap_add['phpgwlastpasswdchange'] = '0'; 485 $this->db_functions->write_log("Expirado senha do usuário",'',$dn,'',''); 486 } 487 if (($old_values['passwd_expired'] == '0') && ($new_values['passwd_expired'] == '')) 488 { 489 $ldap_remove['phpgwlastpasswdchange'] = array(); 490 $this->db_functions->write_log("Removido expiração da senha do usuário",'',$dn,'',''); 459 491 } 460 492 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -
trunk/expressoAdmin1_2/js/jscode/users.js
r64 r72 546 546 finderTimeout_maillist = setTimeout("optionFinder_maillist('"+obj.id+"')",500); 547 547 } 548 function optionFinder_maillist(id) { 548 function optionFinder_maillist(id) { 549 549 var oWait = document.getElementById("ea_span_searching_maillist"); 550 550 var oText = document.getElementById(id); … … 681 681 return true; 682 682 } 683 684 function search_organization(key) 685 { 686 var organizations = document.getElementById('ea_combo_org_info'); 687 var RegExp_org = new RegExp("\\b"+key, "i"); 688 689 for(i = 0; i < organizations.length; i++) 690 { 691 if (RegExp_org.test(organizations[i].text)) 692 { 693 organizations[i].selected = true; 694 return; 695 } 696 } 697 } -
trunk/expressoAdmin1_2/templates/default/accounts_form.tpl
r64 r72 41 41 <table width="90%" border="0" cellspacing="4"> 42 42 <tr bgcolor={row_on}> 43 <td>{lang_search_organization}:</td> 44 <td><input type="text" id="organization_search" autocomplete="off" size=20 onKeyUp="javascript:search_organization(this.value);" onBlur="javascript:sinc_combos_org(context.value); get_available_groups(context.value); get_available_maillists(context.value); get_available_sambadomains(context.value, '{type}')"></td> 45 </tr> 46 47 <tr bgcolor={row_off}> 43 48 <td>{lang_organizations}:</td> 44 49 <td><select {disabled} id="ea_combo_org_info" name="context" onchange="javascript:sinc_combos_org(this.value); get_available_groups(this.value); get_available_maillists(this.value); get_available_sambadomains(this.value, '{type}')">{sectors}</select></td> 45 50 </tr> 46 51 47 <tr bgcolor={row_o ff}>52 <tr bgcolor={row_on}> 48 53 <td>{lang_account_lid}:</td> 49 54 <td> … … 57 62 </tr> 58 63 59 <tr bgcolor={row_o n}>64 <tr bgcolor={row_off}> 60 65 <td width="15%">{lang_firstname}:</td> 61 66 <td width="35%"><input type="text" name="givenname" value="{givenname}" autocomplete="off" {disabled} size=42></input> </td> … … 89 94 </td> 90 95 </tr> 91 92 <tr bgcolor={row_off}> 93 <td colspan="2">{lang_changepassword}:</td> 96 97 <tr bgcolor={row_on}> 98 <td colspan="2">{lang_passwd_expired}:</td> 99 <td><input type="checkbox" {passwd_expired_checked} {disabled} name="passwd_expired" id="passwd_expired" value="1"</td> 100 </tr> 101 102 <tr bgcolor={row_off}> 103 <td colspan="2">{lang_changepassword}:</td> 94 104 <td><input type="checkbox" {changepassword_checked} {disabled} name="changepassword" id="changepassword" value="1"</td> 95 105 </tr> -
trunk/expressoMail1_2/inc/class.functions.inc.php
r69 r72 3 3 4 4 5 function CallVoipConnect($params){ 6 $fromNumber = $_SESSION['phpgw_info']['user']['preferences']['expressoMail']['telephone_number']; 7 if(!$fromNumber) 8 return false; 9 $fromNumber = substr($fromNumber,strlen($fromNumber) - 4, strlen($fromNumber) - 1); 10 $toNumber = $params['to'] ? substr($params['to'],strlen($params['to']) - 4, strlen($params['to']) - 1) : 0; 11 12 $voipServer = $_SESSION['phpgw_info']['expressomail']['server']['voip_server']; 13 $voipUrl = $_SESSION['phpgw_info']['expressomail']['server']['voip_url']; 14 $voipPort = $_SESSION['phpgw_info']['expressomail']['server']['voip_port']; 15 16 // Se for celular, passa os digitos do número e conecta com outro VoIP Server..... 17 if($params['typePhone'] == 'mob'){ 18 $toNumber = $params['to']; 19 $voipServer = $_SESSION['phpgw_info']['expressomail']['server']['voip_server']; 20 $voipUrl = $_SESSION['phpgw_info']['expressomail']['server']['voip_url']; 21 $voipPort = $_SESSION['phpgw_info']['expressomail']['server']['voip_port']; 22 } 23 24 if(!$voipServer || !$voipUrl || !$voipPort) 25 return false; 26 $url = "http://".$voipServer.":".$voipPort.$voipUrl."?magic=1333&acao=liga&ramal=".$fromNumber."&numero=".$toNumber; 27 $sMethod = 'GET '; 28 $crlf = "\r\n"; 29 $sRequest = " HTTP/1.1" . $crlf; 30 $sRequest .= "Host: localhost" . $crlf; 31 $sRequest .= "Accept: */* " . $crlf; 32 $sRequest .= "Connection: Close" . $crlf . $crlf; 33 $sRequest = $sMethod . $url . $sRequest; 34 $sockHttp = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); 35 if (!$sockHttp) { 36 return false; 37 } 38 $resSocketConnect = socket_connect($sockHttp, $voipServer, $voipPort); 39 if (!$resSocketConnect) { 40 return false; 41 } 42 $resSocketWrite = socket_write($sockHttp, $sRequest, strlen($sRequest)); 43 if (!$resSocketWrite) { 44 return false; 45 } 46 $sResponse = ''; 47 while ($sRead = socket_read($sockHttp, 512)) { 48 $sResponse .= $sRead; 49 } 50 51 socket_close($sockHttp); 52 $pos = strpos($sResponse, $crlf . $crlf); 53 return substr($sResponse, $pos + 2 * strlen($crlf)); 54 } 55 5 56 function getDirContents($dir){ 6 57 //$dir = dirname($dir); … … 52 103 53 104 function getLang($key){ 54 if ($_SESSION['phpgw_info']['expressomail']['lang'][$key]) 55 return $_SESSION['phpgw_info']['expressomail']['lang'][$key]; 56 else 57 return $key . '*'; 105 return $_SESSION['phpgw_info']['expressomail']['lang'][$key]; 58 106 } 59 107 -
trunk/expressoMail1_2/inc/class.ldap_functions.inc.php
r64 r72 45 45 { 46 46 $filter="(&(|(phpgwAccountType=u)(phpgwAccountType=l))(|(cn=*$search_for*)(sn=*$search_for*)(mail=$search_for*)))"; 47 $justthese = array("cn", "mail", "telephoneNumber", " phpgwAccountVisible", "uid");47 $justthese = array("cn", "mail", "telephoneNumber", "mobile", "phpgwAccountVisible", "uid"); 48 48 } 49 49 else 50 50 { 51 51 $filter="(&(phpgwAccountType=u)(|(cn=*$search_for*)(sn=*$search_for*)(mail=$search_for*)))"; 52 $justthese = array("cn", "mail", "telephoneNumber", " phpgwAccountVisible", "jpegPhoto", "uid");52 $justthese = array("cn", "mail", "telephoneNumber", "mobile", "phpgwAccountVisible", "jpegPhoto", "uid"); 53 53 } 54 54 … … 69 69 if ($info[$i]["phpgwaccountvisible"][0] == '-1') 70 70 continue; 71 $tmp[$info[$i]["mail"][0] . '%' . $info[$i]["telephonenumber"][0] . '%' . $info[$i]["uid"][0] . '%' . $info[$i]["jpegphoto"]['count']] = $info[$i]["cn"][0];71 $tmp[$info[$i]["mail"][0] . '%' . $info[$i]["telephonenumber"][0] . '%'. $info[$i]["mobile"][0] . '%' . $info[$i]["uid"][0] . '%' . $info[$i]["jpegphoto"]['count']] = $info[$i]["cn"][0]; 72 72 } 73 73 natcasesort($tmp); … … 80 80 $contacts_result[$i] = array(); 81 81 $contacts_result[$i]["cn"] = $cn; 82 list ($contacts_result[$i]["mail"], $contacts_result[$i]["phone"] ) = split ('%', $info);82 list ($contacts_result[$i]["mail"], $contacts_result[$i]["phone"], $contacts_result[$i]["mobile"]) = split ('%', $info); 83 83 $i++; 84 84 } … … 87 87 { 88 88 $options = ''; 89 include_once("class.functions.inc.php"); 90 $functions = new functions; 91 89 92 foreach ($tmp as $info => $cn) 90 93 { 91 94 $contacts_result[$i] = array(); 92 95 $contacts_result[$i]["cn"] = $cn; 93 list ($contacts_result[$i]["mail"], $contacts_result[$i]["phone"], $contacts_result[$i][" uid"], $contacts_result[$i]["jpegphoto"]) = split ('%', $info);96 list ($contacts_result[$i]["mail"], $contacts_result[$i]["phone"], $contacts_result[$i]["mobile"], $contacts_result[$i]["uid"], $contacts_result[$i]["jpegphoto"]) = split ('%', $info); 94 97 95 98 if ($contacts_result[$i]['jpegphoto']) … … 99 102 100 103 // '<tr class="quicksearchcontacts_unselected" onClick="javascript:QuickSearchUser.select_cc(this)">' . 104 $phoneUser = $contacts_result[$i]['phone']; 105 106 if($_SESSION['phpgw_info']['user']['preferences']['expressoMail']['voip_enabled'] && $phoneUser) { 107 $phoneUser = '<a title="'.$functions->getLang("Call to Comercial Number").'" href="#" onclick="InfoContact.connectVoip(\''.$phoneUser.'\',\'com\')">'.$phoneUser.'</a>'; 108 if($contacts_result[$i]['mobile']){ 109 $phoneUser .= ' / <a title="'.$functions->getLang("Call to Mobile Number").'" href="#" onclick="InfoContact.connectVoip(\''.$contacts_result[$i]['mobile'].'\',\'mob\')">'.$contacts_result[$i]['mobile'].'</a>'; 110 } 111 } 101 112 $options .= 102 113 '<tr class="quicksearchcontacts_unselected">' . 103 114 '<td class="cc" width="1%">' . 104 '<a onClick="javascript:QuickSearchUser.create_new_message(\''.$contacts_result[$i]["cn"].'\', \''.$contacts_result[$i]["mail"].'\')">' .115 '<a title="'.$functions->getLang("Write message").'" onClick="javascript:QuickSearchUser.create_new_message(\''.$contacts_result[$i]["cn"].'\', \''.$contacts_result[$i]["mail"].'\')">' . 105 116 $photo_link . 106 117 '</a>' . … … 108 119 '<td class="cc">' . 109 120 '<span name="cn">' . $contacts_result[$i]['cn'] . '</span>' . '<br>' . 110 '<a href="#" onClick="javascript:QuickSearchUser.create_new_message(\''.$contacts_result[$i]["cn"].'\', \''.$contacts_result[$i]["mail"].'\')">'.$contacts_result[$i]['mail'].'</a><br>'. 111 $contacts_result[$i]['phone'] . 121 '<a title="'.$functions->getLang("Write message").'" onClick="javascript:QuickSearchUser.create_new_message(\''.$contacts_result[$i]["cn"].'\', \''.$contacts_result[$i]["mail"].'\')">' . 122 '<font color=blue>' . 123 '<span name="mail">' . $contacts_result[$i]['mail'] . '</span>' . '<br>' . 124 '</font>' . 125 '</a>' . 126 $phoneUser . 112 127 '</td>' . 113 128 '</tr>'; … … 382 397 { 383 398 $filter="(&(phpgwAccountType=u)(mail=$email))"; 384 $justthese = array("cn","uid","telephoneNumber","jpegPhoto" );399 $justthese = array("cn","uid","telephoneNumber","jpegPhoto","mobile"); 385 400 $sr=ldap_search($this->ds, $this->ldap_context, $filter, $justthese); 386 401 $entry = ldap_first_entry($this->ds, $sr); … … 390 405 "uid" => @ldap_get_values($this->ds, $entry, "uid"), 391 406 "type" => "global", 407 "mobile" => @ldap_get_values($this->ds, $entry, "mobile"), 392 408 "telefone" => @ldap_get_values($this->ds, $entry, "telephonenumber")); 393 409 -
trunk/expressoMail1_2/index.php
r70 r72 15 15 <script type="text/javascript" src="../phpgwapi/js/dJSWin/dJSWin.js?'.$update_version.'"></script>'; 16 16 17 18 //Enable/Disable VoIP Service 19 $voip_enabled = false; 20 17 21 // Get Data from ldap_manager and emailadmin. 18 22 $ldap_manager = CreateObject('contactcenter.bo_ldap_manager'); … … 25 29 $_SESSION['phpgw_info']['expressomail']['user']['email'] = $GLOBALS['phpgw']->preferences->values['email']; 26 30 $_SESSION['phpgw_info']['user']['preferences']['expressoMail'] = array( 31 'voip_enabled' => $voip_enabled, 32 'telephone_number' => $GLOBALS['phpgw_info']['user']['telephonenumber'], 27 33 'max_email_per_page' => $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['max_email_per_page'], 28 34 'save_deleted_msg' => $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['save_deleted_msg'] ? $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['save_deleted_msg'] : "0", -
trunk/expressoMail1_2/js/InfoContact.js
r63 r72 54 54 } 55 55 56 emInfoContact.prototype.connectVoip = function (phoneUser, typePhone){ 57 var handler_connectVoip = function(data){ 58 if(!data) { 59 alert(get_lang("Error contacting VoIP server.")); 60 } 61 else{ 62 alert(get_lang("Requesting a VoIP call")+":\n"+data); 63 } 64 } 65 cExecute ("$this.functions.callVoipConnect&to="+phoneUser+"&typePhone="+typePhone, handler_connectVoip); 66 } 67 56 68 emInfoContact.prototype.show = function (data){ 57 69 var _this = this; … … 72 84 cn = cn.toString().substring(0,30) + "..."; 73 85 86 var phoneUser = data.telefone; 87 if(preferences.voip_enabled && phoneUser) { 88 phoneUser = "<a title=\""+get_lang("Call to Comercial Number")+"\" href=\"#\" onclick=\"InfoContact.connectVoip('"+phoneUser+"', 'com')\">"+phoneUser+"</a>"; 89 if(data.mobile){ 90 phoneUser += " / <a title=\""+get_lang("Call to Mobile Number")+"\" href=\"#\" onclick=\"InfoContact.connectVoip('"+data.mobile+"', 'mob')\">"+data.mobile+"</a>"; 91 } 92 } 74 93 75 94 Element("card_cc_td").innerHTML = "<table cellpadding=0 cellspacing=0 border=0 height='100%' width='100%'><tr><td width='70' height='93' style='padding-top:5px;padding-left:6px' align='center' valign='center'>"+ … … 77 96 "<br><img align='center' src='templates/default/images/"+(data.type)+"_catalog.png'><font size=1 color=BLACK> <b>"+get_lang("Sender's Information")+"</b></font>"+ 78 97 _this.verifyIM(data.uid,data.email)+ 79 "<br><img align='center' src='templates/default/images/phone.gif'> <font size=1 color=BLACK>"+( data.telefone ? data.telefone: get_lang("None") )+"</font>"+98 "<br><img align='center' src='templates/default/images/phone.gif'> <font size=1 color=BLACK>"+(phoneUser ? phoneUser : get_lang("None") )+"</font>"+ 80 99 "</td></tr><tr><td valign='top' align='center' colspan='2'>"+ 81 100 "<font size=1 color=BLACK>"+cn+"</font>"+ -
trunk/expressoMail1_2/js/abas.js
r58 r72 115 115 parent_bb.insertBefore(td, bb); 116 116 117 if(id_value )117 if(id_value && id_value.match(/_r$/)) 118 118 _dragArea.makeDragged(td, id_value,td.value); 119 119 -
trunk/expressoMail1_2/js/draw_api.js
r69 r72 124 124 return; 125 125 Element("border_id_0").innerHTML = " " + folder_name + ' <font face="Verdana" size="1" color="#505050">[<span id="new_m"> </span> / <span id="tot_m">0</span>]</font>'; 126 draw_box(data, get_current_folder());126 draw_box(data, current_folder); 127 127 draw_paging(data.num_msgs); 128 128 Element("tot_m").innerHTML = data.num_msgs; … … 130 130 alternate_border(0); 131 131 } 132 cExecute ("$this.imap_functions.get_range_msgs2&folder="+ get_current_folder()+"&msg_range_begin=1&msg_range_end="+preferences.max_email_per_page+"&sort_box_type="+sort_box_type+ "&search_box_type="+ search_box_type +"&sort_box_reverse="+sort_box_reverse+"", handler_draw_box);132 cExecute ("$this.imap_functions.get_range_msgs2&folder="+current_folder+"&msg_range_begin=1&msg_range_end="+preferences.max_email_per_page+"&sort_box_type="+sort_box_type+ "&search_box_type="+ search_box_type +"&sort_box_reverse="+sort_box_reverse+"", handler_draw_box); 133 133 } 134 134 else … … 252 252 253 253 var content_id_0 = document.getElementById("content_id_0"); 254 content_id_0.innerHTML = '';254 //content_id_0.innerHTML = ''; 255 255 256 256 table_message_header_box = document.getElementById("table_message_header_box"); … … 553 553 } 554 554 } 555 556 555 if (td_element3.innerHTML.indexOf(" ") == '-1' && td_element3.innerHTML.length > 25){ 557 556 td_element3.innerHTML = td_element3.innerHTML.substring(0,25) + "..."; … … 573 572 if(!is_ie){ 574 573 td_element4.innerHTML += "</a>"; 575 tr_element.onmouseover = function(){/*Element("a_message_"+this.id).focus();*/}; 576 } 574 tr_element.onmouseover = function(){}; 575 } 576 577 577 578 578 td_element5 = document.createElement("TD"); … … 634 634 update_menu(); 635 635 } 636 637 636 function draw_header_box(){ 638 639 637 switch(sort_box_type){ 640 638 case 'SORTFROM': … … 652 650 default: 653 651 type_name = get_lang("Date"); 654 655 break; 656 } 657 652 break; 653 } 654 Element("message_header_SORTFROM").innerHTML = get_lang("Who"); 655 Element("message_header_SORTSUBJECT").innerHTML = get_lang("Subject"); 656 Element("message_header_SORTARRIVAL").innerHTML = get_lang("Date"); 657 Element("message_header_SORTSIZE").innerHTML = get_lang("Size"); 658 658 Element("message_header_"+(sort_box_type.lastIndexOf("SORT") != "-1" ? sort_box_type : "SORTARRIVAL") ).innerHTML = "<B>"+type_name+"</B><img src ='templates/default/images/arrow_"+(sort_box_reverse == 1 ? 'desc' : 'asc')+"endant.gif'>"; 659 659 } -
trunk/expressoMail1_2/js/main.js
r71 r72 169 169 170 170 function move_msgs(folder, msgs_number, border_ID, new_folder, new_folder_name){ 171 if (folder == 'null') {171 if (folder == 'null') 172 172 folder = Element("input_folder_"+msgs_number+"_r") ? Element("input_folder_"+msgs_number+"_r").value : get_current_folder(); 173 }174 173 175 174 var handler_move_msgs = function(data){ … … 202 201 delete_border(data.border_ID,'false'); 203 202 } 204 if(folder == get_current_folder()) {203 if(folder == get_current_folder()) 205 204 Element('tot_m').innerHTML = parseInt(Element('tot_m').innerHTML) - data.msgs_number.length; 206 }207 205 refresh(); 208 206 } -
trunk/expressoMail1_2/js/search.js
r69 r72 161 161 // Form resultado; 162 162 searchE.prototype.mount_result = function(data){ 163 163 164 //This func returns the most recent date 164 165 function date_comp(a,b) … … 174 175 return data2 - data1; 175 176 } 176 177 177 var nw_array = new Array; 178 178 data = data.substr(2, data.length - 4); … … 180 180 var cont = parseInt(0); 181 181 var_tmp.sort(date_comp); 182 182 183 for(var i=0; i < var_tmp.length; i++){ 183 184 if(var_tmp[i] != ""){ … … 186 187 } 187 188 } 189 188 190 var table = document.createElement("TABLE"); 189 191 table.id = "table_result"; 190 192 table.width = "100%"; 191 if(is_ie){ 193 194 /* if(is_ie){ 192 195 table.cellPadding = '0'; 193 196 table.cellSpacing = '0'; … … 197 200 table.setAttribute( "cellpadding", "0"); 198 201 table.setAttribute( "border", "1"); 199 } 202 }*/ 200 203 var tbody = document.createElement("TBODY"); 201 204 if(nw_array.length > 0){ … … 205 208 for( var i=0; i < nw_array.length; i++){ 206 209 var tr = document.createElement("TR"); 207 var color = "#F0F0F0"; 208 tr.style.background = color; 210 //var color = "#F0F0F0"; 211 //tr.style.background = color; 212 tr.className = 'tr_msg_read'; 209 213 210 214 if (nw_array[i].match(/.*--.*--\w*--\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g) == null) //subject with "--" … … 222 226 else 223 227 { 224 alert(nw_array[i]);225 228 var aux = nw_array[i].split("--"); 226 229 } … … 229 232 var mailbox = aux[0]; 230 233 var uid_msg = aux[5]; 231 var td = document.createElement("TD"); 232 td.style.border = "1px solid #FFFFFF"; 233 td.style.height = "20px"; 234 var td = document.createElement("TD"); 235 234 236 if( j <= 4){ 235 237 if( j == 0){ 236 td. width = "10%";238 td.style.width = "10%"; 237 239 var nm_box = aux[0].split(cyrus_delimiter); 238 240 var td1 = nm_box.pop(); 241 td.setAttribute("NoWrap","true"); 242 td.style.overflow = "hidden"; 239 243 if(td1 == "INBOX"){ 240 244 var td1 = "Caixa de Entrada"; … … 244 248 var subject_encode = url_encode(aux[2]); 245 249 td.width = "25%"; 246 var td1 = '<a href=javascript:void(0) onclick=EsearchE.open_msg(\"' + url_encode(mailbox) + '\",\"' + uid_msg + '\",\"' + subject_encode + '\")>' + aux[1].substr(0,25) + '</a>';250 var td1 = '<div style="width:100%;overflow:hidden">'+aux[1]+"</div>"; 247 251 } 248 252 if( j == 2){ 249 253 var subject_encode = url_encode(aux[2]); 250 254 td.width = "45%"; 251 var td1 = '< a href=javascript:void(0) onclick=EsearchE.open_msg(\"' + url_encode(mailbox) + '\",\"' + uid_msg + '\",\"' + subject_encode + '\")>' + aux[2].substr(0,60) + '...</a>';255 var td1 = '<div style="width:100%;overflow:hidden"><a href=javascript:void(0) onclick=EsearchE.open_msg(\"' + url_encode(mailbox) + '\",\"' + uid_msg + '\",\"' + subject_encode + '\")>' + aux[2] +'</a></div>'; 252 256 253 257 } … … 271 275 } 272 276 table.appendChild(tbody); 273 274 277 search_tabs += 1; 275 278 var border_id = create_border(get_lang("Search Results"), "search_" + search_tabs); 276 279 var content = document.getElementById('content_id_' + "search_" + search_tabs); 277 280 if(is_ie) 278 Element("border_table").width = "99.5%";281 Element("border_table").width = "99.5%"; 279 282 280 283 /* Put header */ … … 303 306 td_element5 = document.createElement("TD"); 304 307 td_element5.setAttribute("width", "10%"); 305 td_element5.align = " right";308 td_element5.align = "center"; 306 309 td_element5.innerHTML = get_lang("Size"); 307 310 -
trunk/instant_messenger/IMManager.php
r67 r72 206 206 if ( ($readSocket !== false) && ($connection_close_timeout === false ) && ($connection_close_server === false )) 207 207 { 208 $_SESSION['phpgw_info']['instant_messenger']['IM_disconnect'] = false; 208 209 if ( !empty($readSocket) ) 209 210 { … … 246 247 else 247 248 { 249 $_SESSION['phpgw_info']['instant_messenger']['IM_disconnect'] = true; 248 250 close($pSession); 249 251 } -
trunk/instant_messenger/inc/class.Ujabber.inc.php
r68 r72 115 115 } 116 116 117 function reconnect() 118 { 119 require_once("IMConfigure.php"); 120 121 $_transport = TRANSPORT_NON_SECURITY; 122 $_port = PORT_NON_SECURITY; 123 124 $SERVER = "127.0.0.1"; 125 126 $fp = ""; 127 @$fp = stream_socket_client($_transport . "://" . $SERVER . ":" . $_port, $errno, $errstr, 10); 128 129 if ( $fp ) 130 { 131 fwrite($fp, "GET /" . CONNECT . ";" . session_id() . " HTTP/1.1\r\nHost: " . $SERVER . ":" . $_port . "\r\nAccept: */*\r\n\r\n"); 132 return 'true'; 133 } 134 else 135 return 'false'; 136 } 137 117 138 /* 118 139 * Contacts -
trunk/instant_messenger/js/im_functions.js
r70 r72 1 1 function IM() 2 2 { 3 this._listen = true;4 3 this.vcards = false; 5 4 this.labelVcard = []; … … 31 30 IM.prototype.listen = function() 32 31 { 33 if ( !this._listen )34 return false;35 36 32 var _this = this; 37 var handler = function( data)33 var handler = function(XMLdata) 38 34 { 39 35 try … … 45 41 } 46 42 47 _this.getContacts( data);48 _this.getPresence( data);49 _this.getComposing( data);50 _this.getMessages( data);51 _this.getVcard( data);43 _this.getContacts(XMLdata); 44 _this.getPresence(XMLdata); 45 _this.getComposing(XMLdata); 46 _this.getMessages(XMLdata); 47 _this.getVcard(XMLdata); 52 48 53 49 if(!_this.vcards) … … 56 52 _this.vcards = true; 57 53 } 54 58 55 }catch(e){} 59 56 60 _this._listen = true;61 57 setTimeout('IM.listen()', 3000); 62 58 }; … … 801 797 }; 802 798 803 IM.prototype.setStatus = function(pStatus) 804 { 805 try 806 { 807 var handler = function() 808 { 809 }; 810 im_menu_action.menu('fast_menu_im', null); 811 812 if ( pStatus == 'custom' ) 813 { 814 pStatus = prompt('Personalize seu Status : '); 815 pStatus = 'show=' + statusFlag + '&status=' + pStatus; 816 } 817 else 818 { 819 if ( pStatus == 'unavailable' ) 820 { 821 this.ImgStatus(pStatus); 822 pStatus = 'type=' + pStatus; 823 } 824 else 825 { 826 try 827 { 828 this.ImgStatus(pStatus); 829 pStatus = 'show=' + pStatus; 830 }catch(e){} 831 } 832 } 833 XMLTools.request('$this.Ujabber.setPresence', 'POST', handler, pStatus); 834 } 835 catch(e){} 836 }; 799 IM.prototype.setStatus = function(pStatus) 800 { 801 try 802 { 803 var handler = function() 804 { 805 }; 806 807 if ( func.byId('fast_menu_im').style.display == 'block' ) 808 im_menu_action.menu('fast_menu_im', null); 809 810 if ( pStatus == 'custom' ) 811 { 812 pStatus = prompt('Personalize seu Status : '); 813 pStatus = 'show=' + statusFlag + '&status=' + pStatus; 814 } 815 else 816 { 817 if ( pStatus == 'unavailable' ) 818 { 819 this.ImgStatus(pStatus); 820 pStatus = 'type=' + pStatus; 821 } 822 else 823 { 824 try 825 { 826 this.ImgStatus(pStatus); 827 pStatus = 'show=' + pStatus; 828 } 829 catch(e) 830 {} 831 } 832 } 833 XMLTools.request('$this.Ujabber.setPresence', 'POST', handler, pStatus); 834 } 835 catch(e) 836 {} 837 }; 837 838 838 839 IM.prototype.ImgStatus = function(pStatus) … … 845 846 IM.prototype.setAway = function() 846 847 { 847 if ( statusFlag != 'available' )848 if ( statusFlag != 'available' || this._listen > 0 ) 848 849 return false; 849 850 … … 860 861 }; 861 862 862 IM.prototype.infoContact = function(pUid) 863 { 864 var info = false; 865 var div_allg = document.getElementById('all_groups'); 866 var elements = div_allg.firstChild; 867 while ( elements ) 868 { 869 var childs = elements.firstChild; 870 while( childs ) 871 { 872 if(childs.tagName == "DIV" && childs.id.indexOf(pUid) === 0 ) 873 { 874 info = {'jid':childs.id, 'src':childs.firstChild.src}; 875 break; 876 } 877 childs = childs.nextSibling; 878 } 879 if ( !info ) 880 elements = elements.nextSibling; 881 else 882 break; 883 } 884 return info; 885 }; 863 IM.prototype.infoContact = function(pUid) 864 { 865 try 866 { 867 var info = false; 868 var div_allg = document.getElementById('all_groups'); 869 var elements = div_allg.firstChild; 870 while ( elements ) 871 { 872 var childs = elements.firstChild; 873 while( childs ) 874 { 875 if(childs.tagName == "DIV" && childs.id.indexOf(pUid) === 0 ) 876 { 877 info = {'jid':childs.id, 'src':childs.firstChild.src}; 878 break; 879 } 880 childs = childs.nextSibling; 881 } 882 if ( !info ) 883 elements = elements.nextSibling; 884 else 885 break; 886 } 887 return info; 888 } 889 catch(e) 890 { 891 return false; 892 } 893 }; 886 894 887 895 var IM = new IM(); -
trunk/login.php
r35 r72 102 102 case 5: 103 103 return '<font color="FF0000">' . lang('Bad login or password') . '</font>'; 104 105 case 6: 106 return '<font color="FF0000">' . lang('Your password has expired, and you do not have access to change it') . '</font>'; 104 107 105 108 case 98: … … 298 301 if($GLOBALS['phpgw_info']['server']['use_prefix_organization']) 299 302 { 300 // Início - Temporário: Para período de adaptação dos usuários, usando sem organização.301 // $organization_select = "<tr><td width='96' class='loginLabel' align='right'>".lang("organization").": </td>".302 // $organization_select .= "<td align='left' style='font-weight:bold' class='loginLabel' colspan=2><a style='font-weight:normal;font-decoration:none;text-decoration:none' href='javascript:void(0)' onclick='alert(\"Não é preciso mais selecionar a Organização.\\r\\n Digite apenas o usuário e a senha!\")' onmouseover='this.style.cursor=\"help\"'> automático</a></td></tr>";303 // Fim - Temporário: Para período de adaptação dos usuários, usando sem organização.304 303 $organization_select = "<tr><td width=\"66\" class=\"loginLabel\">"; 305 304 $organization_select .= lang("organization").":</td>"; -
trunk/phpgwapi/inc/class.auth_ldap.inc.php
r44 r72 138 138 $allValues = ldap_get_entries($ds, $sri); 139 139 $entry['userpassword'] = $this->encrypt_password($new_passwd); 140 $entry['phpgwlastpasswdchange'] = time(); 140 141 141 142 /* SAMBA Begin's*/ -
trunk/phpgwapi/templates/celepar/navbar.inc.php
r25 r72 13 13 function parse_navbar($force = False) 14 14 { 15 16 15 $GLOBALS['celepar_tpl'] = createobject('phpgwapi.Template',PHPGW_TEMPLATE_DIR); 17 16 … … 221 220 . lang('Current users') . ': ' . $GLOBALS['phpgw']->session->total() . '</a>'; 222 221 } 223 $now = time(); 222 $now = time(); 224 223 $var['user_info'] = '<b>'.$GLOBALS['phpgw']->common->display_fullname() .'</b>'. ' - ' 225 224 . lang($GLOBALS['phpgw']->common->show_date($now,'l')) . ' ' … … 229 228 $var['frontend_name'] = " - ".$GLOBALS['phpgw_info']['server']['use_frontend_name']; 230 229 231 if($GLOBALS['phpgw_info']['user']['lastpasswd_change'] == 0) 232 { 230 if($GLOBALS['phpgw_info']['user']['lastpasswd_change'] == '0') 231 { 232 $changepasswd_url = $_SERVER['HTTP_HOST'] . $GLOBALS['phpgw_info']['server']['webserver_url'] . '/preferences/changepassword.php?cd=1'; 233 234 if ($GLOBALS['phpgw_info']['server']['use_https'] > 0) 235 $changepasswd_url = 'https://' . $changepasswd_url; 236 else 237 $changepasswd_url = 'http://' . $changepasswd_url; 238 239 echo '<script>' . 240 'if(location.href.indexOf("changepassword.php") == -1){' . 241 'location.href = "' . $changepasswd_url . '"' . 242 '}' . 243 '</script>'; 244 245 /* 233 246 $api_messages = lang('You are required to change your password during your first login') 234 247 . '<br> Click this image on the navbar: <img src="' 235 248 . $GLOBALS['phpgw']->common->image('preferences','navbar.gif').'">'; 236 } 249 */ 250 } 251 /* 237 252 elseif($GLOBALS['phpgw_info']['user']['lastpasswd_change'] < time() - (86400*30)) 238 253 { 239 254 $api_messages = lang('it has been more then %1 days since you changed your password',30); 240 255 } 241 256 */ 257 /* 242 258 // This is gonna change 243 259 if(isset($cd)) 244 260 { 245 261 $var['messages'] = $api_messages . '<br>' . checkcode($cd); 246 } 262 }*/ 247 263 248 264 $var['logo_file'] = $GLOBALS['phpgw']->common->image('phpgwapi',$GLOBALS['phpgw_info']['server']['login_logo_file']?$GLOBALS['phpgw_info']['server']['login_logo_file']:'logo'); -
trunk/preferences/changepassword.php
r35 r72 26 26 if(!$GLOBALS['phpgw']->acl->check('changepassword', 1) || $_POST['cancel']) 27 27 { 28 if(($GLOBALS['phpgw_info']['user']['lastpasswd_change'] == '0') && (!$_POST['cancel'])) 29 $GLOBALS['phpgw']->redirect($GLOBALS['phpgw']->link('/login.php','cd=6')); 30 28 31 if ($GLOBALS['phpgw_info']['server']['use_https'] == 1) 29 32 Header('Location: http://' . $_SERVER['HTTP_HOST'] . $GLOBALS['phpgw_info']['server']['webserver_url'] . '/preferences/index.php'); … … 43 46 $GLOBALS['phpgw']->template->set_var('lang_cancel',lang('Cancel')); 44 47 $GLOBALS['phpgw']->template->set_var('form_action',$GLOBALS['phpgw']->link('/preferences/changepassword.php')); 48 49 if ($_GET['cd'] == 1) 50 { 51 $lang1 = lang('Your password has expired'); 52 $lang2 = lang('You must register a new password'); 53 $GLOBALS['phpgw']->template->set_var('messages',"<font color=red><h1>$lang1.<br>$lang2.</h1></font>"); 54 } 45 55 46 56 if ($GLOBALS['phpgw_info']['server']['auth_type'] != 'ldap') … … 66 76 $errors[] = lang('The two passwords are not the same'); 67 77 } 78 else if ($a_passwd == $n_passwd) 79 { 80 $errors[] = lang('Your old password and your new password are the same. Choose a different new password'); 81 } 68 82 else if (! $n_passwd) 69 83 { … … 75 89 } 76 90 # password that start with a-Z or 0-9 and contain _.-!@#$%&*+=| will be accepted. 77 else if (! ereg ("(^[a-zA-Z0-9_.\-\!@#$%&*+=|]*)$", $n_passwd ) ) 91 //else if (! ereg ("(^[a-zA-Z0-9_.\-\!@#$%&*+=|]*)$", $n_passwd ) ) 92 //else if (! ereg ("(^[a-zA-Z0-9_.\-\!@#$%&*+=|\(\)\^\~\}\{\[\]\/\\\"\'\:\;\?]*)$", $n_passwd ) ) 93 else if (! ereg ("([]^[a-zA-Z0-9\_\.\-\!\@\#\$\%\&\*\+\=\|\(\)\^\~\}\{\/\\\"\'\:\;\?]*)$", $n_passwd ) ) 78 94 { 79 95 $errors[] = lang('Your password contains characters not allowed'); 80 96 } 81 97 # password must contain 2 special letters, numbers or special characters 82 else if ($GLOBALS['phpgw_info']['server']['num_special_letters_userpass'] && ! ereg ("([0-9_.\-!@#$%&*+=|]){".$GLOBALS['phpgw_info']['server']['num_special_letters_userpass'].",}", $n_passwd ) ) 98 //else if ($GLOBALS['phpgw_info']['server']['num_special_letters_userpass'] && ! ereg ("([0-9_.\-!@#$%&*+=|]){".$GLOBALS['phpgw_info']['server']['num_special_letters_userpass'].",}", $n_passwd ) ) 99 //else if ($GLOBALS['phpgw_info']['server']['num_special_letters_userpass'] && ! ereg ("([0-9_.\-!@#$%&*+=|\(\)\^\~\}\{\[\]\/\\\"\'\:\;\?]){".$GLOBALS['phpgw_info']['server']['num_special_letters_userpass']."}", $n_passwd ) ) 100 else if ($GLOBALS['phpgw_info']['server']['num_special_letters_userpass'] && ! ereg ("([][0-9\_\.\-\!\@\#\$\%\&\*\+\=\|\(\)\^\~\}\{\/\\\"\'\:\;\?]){".$GLOBALS['phpgw_info']['server']['num_special_letters_userpass']."}", $n_passwd ) ) 83 101 { 84 102 $errors[] = lang('Your password must contain at least %1 numbers or characters special', $GLOBALS['phpgw_info']['server']['num_special_letters_userpass']);
Note: See TracChangeset
for help on using the changeset viewer.