Changeset 8237
- Timestamp:
- 10/14/13 17:18:20 (10 years ago)
- Location:
- sandbox/2.5.1-evolucao
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/2.5.1-evolucao/expressoAdmin1_2/inc/class.db_functions.inc.php
r8236 r8237 350 350 $user_app[] = $this->db->row(); 351 351 352 if ( count($user_app) == 0)352 if (isset($user_app) && count($user_app) == 0) 353 353 { 354 354 $sql = "INSERT INTO phpgw_acl (acl_appname, acl_location, acl_account, acl_rights) " … … 411 411 function get_user_info($uidnumber) 412 412 { 413 $user_app = array(); 413 414 // Groups 414 415 $query = "SELECT acl_location FROM phpgw_acl WHERE acl_appname = 'phpgw_group' AND acl_account = '".$uidnumber."'"; … … 424 425 $query = "SELECT acl_rights FROM phpgw_acl WHERE acl_appname = 'preferences' AND acl_location = 'changepassword' AND acl_account = '".$uidnumber."'"; 425 426 $this->db->query($query); 427 $changepassword = array(); 426 428 while($this->db->next_record()) 427 429 $changepassword[] = $this->db->row(); 428 $return['changepassword'] = $changepassword[0]['acl_rights'];430 $return['changepassword'] = isset($changepassword[0]) ? $changepassword[0]['acl_rights'] : ''; 429 431 430 432 // Apps … … 434 436 $user_apps[] = $this->db->row(); 435 437 436 if ( $user_apps)438 if (isset($user_apps) && $user_apps) 437 439 { 438 440 foreach ($user_apps as $app) … … 538 540 function delete_user($user_info) 539 541 { 542 $ids = array(); 540 543 // AGENDA 541 544 $this->db->query('SELECT calendar_id FROM calendar_signature WHERE user_uidnumber ='.$user_info['uidnumber'] . ' AND is_owner = 1' ); … … 723 726 while($this->db->next_record()) 724 727 $result[] = $this->db->row(); 725 if ( count($result) > 0)728 if (isset($result) && count($result) > 0) 726 729 return true; 727 730 else … … 839 842 $this->db->select('phpgw_acl', $colunas, $where, null, null); 840 843 841 $return ;844 $return = array(); 842 845 843 846 include_once 'class.ldap_functions.inc.php'; -
sandbox/2.5.1-evolucao/expressoAdmin1_2/inc/class.ldap_functions.inc.php
r8236 r8237 315 315 $info['mail'] = $params['mail']; 316 316 317 if ( $params['accountStatus'] == 'on')317 if (isset($params['accountStatus']) && $params['accountStatus'] == 'on') 318 318 $info['accountStatus'] = 'active'; 319 319 else 320 320 $info['accountStatus'] = array(); 321 321 322 if ( $params['phpgwAccountVisible'] == 'on')322 if (isset($params['phpgwAccountVisible']) && $params['phpgwAccountVisible'] == 'on') 323 323 $info['phpgwAccountVisible'] = '-1'; 324 324 else 325 325 $info['phpgwAccountVisible'] = array(); 326 326 327 if ( $params['desc'] != '')327 if (isset($params['desc']) && $params['desc'] != '') 328 328 $info['description'] = utf8_encode($params['desc']); 329 329 else … … 439 439 $del = array(); 440 440 441 if( $params['mailalternateaddress'] )441 if( isset($params['mailalternateaddress']) && $params['mailalternateaddress'] ) 442 442 $info['mailalternateaddress'] = $params['mailalternateaddress']; 443 443 else … … 449 449 $info['accountStatus'] = array(); 450 450 451 if ( $params['phpgwAccountVisible'] == 'on')451 if (isset($params['phpgwAccountVisible']) && $params['phpgwAccountVisible'] == 'on') 452 452 $info['phpgwAccountVisible'] = '-1'; 453 453 else … … 1612 1612 $sector_dn_array = explode(",", $entry[0]['dn']); 1613 1613 $sector_dn_array_count = count($sector_dn_array); 1614 $sector_dn = ''; 1614 1615 for($i=1; $i<$sector_dn_array_count; ++$i) 1615 1616 $sector_dn .= $sector_dn_array[$i] . ','; … … 1621 1622 $result['uidnumber'] = $entry[0]['uidnumber'][0]; 1622 1623 $result['gidnumber'] = $entry[0]['gidnumber'][0]; 1624 $result['departmentnumber'] = isset($entry[0]['departmentnumber']) ? $entry[0]['departmentnumber'][0] : ''; 1625 $result['givenname'] = $entry[0]['givenname'][0]; 1626 $result['sn'] = utf8_decode($entry[0]['sn'][0]); 1627 $result['telephonenumber'] = isset($entry[0]['telephonenumber']) ? $entry[0]['telephonenumber'][0] : ''; 1628 $result['passwd_expired'] = isset($entry[0]['phpgwlastpasswdchange']) ? $entry[0]['phpgwlastpasswdchange'][0] : ''; 1629 $result['phpgwaccountstatus'] = $entry[0]['phpgwaccountstatus'][0]; 1630 $result['phpgwaccountvisible'] = isset($entry[0]['phpgwaccountvisible']) ? $entry[0]['phpgwaccountvisible'][0] : ''; 1631 $result['accountstatus'] = $entry[0]['accountstatus'][0]; 1632 $result['mail'] = $entry[0]['mail'][0]; 1633 $result['mailalternateaddress'] = isset($entry[0]['mailalternateaddress']) ? $entry[0]['mailalternateaddress'] : ''; 1634 $result['mailforwardingaddress']= isset($entry[0]['mailforwardingaddress']) ? $entry[0]['mailforwardingaddress'] : ''; 1635 $result['deliverymode'] = isset($entry[0]['deliverymode']) ? $entry[0]['deliverymode'][0] : ''; 1636 $result['userPasswordRFC2617'] = isset($entry[0]['userpasswordrfc2617']) ? $entry[0]['userpasswordrfc2617'][0] : ''; 1637 1638 //Photo 1639 if (isset($entry[0]['jpegphoto']) && $entry[0]['jpegphoto']['count'] == 1) 1640 $result['photo_exist'] = 'true'; 1641 1642 // Samba 1643 for ($i=0; $i<$entry[0]['objectclass']['count']; ++$i) 1644 { 1645 if ($entry[0]['objectclass'][$i] == 'sambaSamAccount') 1646 $result['sambaUser'] = true; 1647 } 1648 if (($this->current_config['expressoAdmin_samba_support'] == 'true') && ($result['sambaUser'])) 1649 { 1650 $result['sambaaccflags'] = $entry[0]['sambaacctflags'][0]; 1651 $result['sambalogonscript'] = $entry[0]['sambalogonscript'][0]; 1652 $result['homedirectory'] = $entry[0]['homedirectory'][0]; 1653 $a_tmp = explode("-", $entry[0]['sambasid'][0]); 1654 array_pop($a_tmp); 1655 $result['sambasid'] = implode("-", $a_tmp); 1656 } 1657 1658 // Verifica o acesso do gerente aos atributos corporativos 1659 if ($this->functions->check_acl($_SESSION['phpgw_session']['session_lid'], 'manipulate_corporative_information')) 1660 { 1661 $result['corporative_information_employeenumber']= isset($entry[0]['employeenumber']) ? $entry[0]['employeenumber'][0] : ''; 1662 $result['corporative_information_cpf'] = isset($entry[0]['cpf']) ? $entry[0]['cpf'][0] : ''; 1663 $result['corporative_information_rg'] = isset($entry[0]['rg']) ? $entry[0]['rg'][0] : ''; 1664 $result['corporative_information_rguf'] = isset($entry[0]['rguf']) ? $entry[0]['rguf'][0] : ''; 1665 $result['corporative_information_description'] = isset($entry[0]['description']) ? utf8_decode($entry[0]['description'][0]) : ''; 1666 } 1667 1668 // MailLists 1669 $result['maillists_info'] = $this->get_user_maillists($result['mail']); 1670 if($result['maillists_info']) 1671 { 1672 foreach ($result['maillists_info'] as $maillist) 1673 { 1674 $result['maillists'][] = $maillist['uid']; 1675 } 1676 } 1677 1678 // Groups 1679 $justthese = array("gidnumber","cn"); 1680 $filter="(&(phpgwAccountType=g)(memberuid=".$result['uid']."))"; 1681 $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 1682 ldap_sort($this->ldap, $search, "cn"); 1683 $entries = ldap_get_entries($this->ldap, $search); 1684 for ($i=0; $i<$entries['count']; ++$i) 1685 { 1686 $result['groups_ldap'][ $entries[$i]['gidnumber'][0] ] = utf8_decode($entries[$i]['cn'][0]); 1687 } 1688 } 1689 } 1690 if (is_array($result)) 1691 return $result; 1692 else 1693 return false; 1694 } 1695 1696 1697 function get_user_cn_by_uid($uid) 1698 { 1699 foreach ($this->manager_contexts as $index=>$context) 1700 { 1701 1702 $justthese = array("cn"); 1703 $filter="(&(phpgwAccountType=u)(uid=".$uid."))"; 1704 $search = ldap_search($this->ldap, $context, $filter, $justthese); 1705 $entry = ldap_get_entries($this->ldap, $search); 1706 if($entry) 1707 return utf8_decode($entry[0]['cn'][0]); 1708 } 1709 return null; 1710 } 1711 1712 function get_group_cn_by_gidnumber($gidnumber) 1713 { 1714 foreach ($this->manager_contexts as $index=>$context) 1715 { 1716 1717 $justthese = array("cn"); 1718 $filter="(&(phpgwAccountType=g)(gidNumber=".$gidnumber."))"; 1719 $search = ldap_search($this->ldap, $context, $filter, $justthese); 1720 $entry = ldap_get_entries($this->ldap, $search); 1721 if($entry) 1722 return utf8_decode($entry[0]['cn'][0]); 1723 } 1724 return null; 1725 } 1726 1727 1728 function get_user_info_by_uid($uid) 1729 { 1730 foreach ($this->manager_contexts as $index=>$context) 1731 { 1732 $filter="(&(phpgwAccountType=u)(uid=".$uid."))"; 1733 $justthese = array("cn"); 1734 $search = ldap_search($this->ldap, $context, $filter); 1735 $entry = ldap_get_entries($this->ldap, $search); 1736 1737 if ($entry['count']) 1738 { 1739 //Pega o dn do setor do usuario. 1740 $entry[0]['dn'] = strtolower($entry[0]['dn']); 1741 $sector_dn_array = explode(",", $entry[0]['dn']); 1742 $sector_dn_array_count = count($sector_dn_array); 1743 for($i=1; $i<$sector_dn_array_count; ++$i) 1744 $sector_dn .= $sector_dn_array[$i] . ','; 1745 //Retira ultimo pipe. 1746 $sector_dn = substr($sector_dn,0,(strlen($sector_dn) - 1)); 1747 1748 $result['context'] = $sector_dn; 1749 $result['uid'] = $entry[0]['uid'][0]; 1750 $result['cn'] = utf8_decode($entry[0]['cn'][0]); 1751 $result['uidnumber'] = $entry[0]['uidnumber'][0]; 1752 $result['gidnumber'] = $entry[0]['gidnumber'][0]; 1623 1753 $result['departmentnumber'] = $entry[0]['departmentnumber'][0]; 1624 1754 $result['givenname'] = $entry[0]['givenname'][0]; 1625 $result['sn'] = utf8_decode($entry[0]['sn'][0]);1755 $result['sn'] = $entry[0]['sn'][0]; 1626 1756 $result['telephonenumber'] = $entry[0]['telephonenumber'][0]; 1627 1757 $result['passwd_expired'] = $entry[0]['phpgwlastpasswdchange'][0]; … … 1692 1822 return false; 1693 1823 } 1694 1695 1696 function get_user_cn_by_uid($uid)1697 {1698 foreach ($this->manager_contexts as $index=>$context)1699 {1700 1701 $justthese = array("cn");1702 $filter="(&(phpgwAccountType=u)(uid=".$uid."))";1703 $search = ldap_search($this->ldap, $context, $filter, $justthese);1704 $entry = ldap_get_entries($this->ldap, $search);1705 if($entry)1706 return utf8_decode($entry[0]['cn'][0]);1707 }1708 return null;1709 }1710 1711 function get_group_cn_by_gidnumber($gidnumber)1712 {1713 foreach ($this->manager_contexts as $index=>$context)1714 {1715 1716 $justthese = array("cn");1717 $filter="(&(phpgwAccountType=g)(gidNumber=".$gidnumber."))";1718 $search = ldap_search($this->ldap, $context, $filter, $justthese);1719 $entry = ldap_get_entries($this->ldap, $search);1720 if($entry)1721 return utf8_decode($entry[0]['cn'][0]);1722 }1723 return null;1724 }1725 1726 1727 function get_user_info_by_uid($uid)1728 {1729 foreach ($this->manager_contexts as $index=>$context)1730 {1731 $filter="(&(phpgwAccountType=u)(uid=".$uid."))";1732 $justthese = array("cn");1733 $search = ldap_search($this->ldap, $context, $filter);1734 $entry = ldap_get_entries($this->ldap, $search);1735 1736 if ($entry['count'])1737 {1738 //Pega o dn do setor do usuario.1739 $entry[0]['dn'] = strtolower($entry[0]['dn']);1740 $sector_dn_array = explode(",", $entry[0]['dn']);1741 $sector_dn_array_count = count($sector_dn_array);1742 for($i=1; $i<$sector_dn_array_count; ++$i)1743 $sector_dn .= $sector_dn_array[$i] . ',';1744 //Retira ultimo pipe.1745 $sector_dn = substr($sector_dn,0,(strlen($sector_dn) - 1));1746 1747 $result['context'] = $sector_dn;1748 $result['uid'] = $entry[0]['uid'][0];1749 $result['cn'] = utf8_decode($entry[0]['cn'][0]);1750 $result['uidnumber'] = $entry[0]['uidnumber'][0];1751 $result['gidnumber'] = $entry[0]['gidnumber'][0];1752 $result['departmentnumber'] = $entry[0]['departmentnumber'][0];1753 $result['givenname'] = $entry[0]['givenname'][0];1754 $result['sn'] = $entry[0]['sn'][0];1755 $result['telephonenumber'] = $entry[0]['telephonenumber'][0];1756 $result['passwd_expired'] = $entry[0]['phpgwlastpasswdchange'][0];1757 $result['phpgwaccountstatus'] = $entry[0]['phpgwaccountstatus'][0];1758 $result['phpgwaccountvisible'] = $entry[0]['phpgwaccountvisible'][0];1759 $result['accountstatus'] = $entry[0]['accountstatus'][0];1760 $result['mail'] = $entry[0]['mail'][0];1761 $result['mailalternateaddress'] = $entry[0]['mailalternateaddress'];1762 $result['mailforwardingaddress']= $entry[0]['mailforwardingaddress'];1763 $result['deliverymode'] = $entry[0]['deliverymode'][0];1764 $result['userPasswordRFC2617'] = $entry[0]['userpasswordrfc2617'][0];1765 1766 //Photo1767 if ($entry[0]['jpegphoto']['count'] == 1)1768 $result['photo_exist'] = 'true';1769 1770 // Samba1771 for ($i=0; $i<$entry[0]['objectclass']['count']; ++$i)1772 {1773 if ($entry[0]['objectclass'][$i] == 'sambaSamAccount')1774 $result['sambaUser'] = true;1775 }1776 if (($this->current_config['expressoAdmin_samba_support'] == 'true') && ($result['sambaUser']))1777 {1778 $result['sambaaccflags'] = $entry[0]['sambaacctflags'][0];1779 $result['sambalogonscript'] = $entry[0]['sambalogonscript'][0];1780 $result['homedirectory'] = $entry[0]['homedirectory'][0];1781 $a_tmp = explode("-", $entry[0]['sambasid'][0]);1782 array_pop($a_tmp);1783 $result['sambasid'] = implode("-", $a_tmp);1784 }1785 1786 // Verifica o acesso do gerente aos atributos corporativos1787 if ($this->functions->check_acl($_SESSION['phpgw_session']['session_lid'], 'manipulate_corporative_information'))1788 {1789 $result['corporative_information_employeenumber']= $entry[0]['employeenumber'][0];1790 $result['corporative_information_cpf'] = $entry[0]['cpf'][0];1791 $result['corporative_information_rg'] = $entry[0]['rg'][0];1792 $result['corporative_information_rguf'] = $entry[0]['rguf'][0];1793 $result['corporative_information_description'] = utf8_decode($entry[0]['description'][0]);1794 }1795 1796 // MailLists1797 $result['maillists_info'] = $this->get_user_maillists($result['mail']);1798 if($result['maillists_info'])1799 {1800 foreach ($result['maillists_info'] as $maillist)1801 {1802 $result['maillists'][] = $maillist['uid'];1803 }1804 }1805 1806 // Groups1807 $justthese = array("gidnumber","cn");1808 $filter="(&(phpgwAccountType=g)(memberuid=".$result['uid']."))";1809 $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese);1810 ldap_sort($this->ldap, $search, "cn");1811 $entries = ldap_get_entries($this->ldap, $search);1812 for ($i=0; $i<$entries['count']; ++$i)1813 {1814 $result['groups_ldap'][ $entries[$i]['gidnumber'][0] ] = utf8_decode($entries[$i]['cn'][0]);1815 }1816 }1817 }1818 if (is_array($result))1819 return $result;1820 else1821 return false;1822 }1823 1824 1824 1825 function get_user_maillists($mail) … … 1847 1848 } 1848 1849 1849 if( $a_tmp) {1850 if(isset($a_tmp) && $a_tmp) { 1850 1851 natcasesort($a_tmp); 1851 1852 … … 1857 1858 } 1858 1859 ldap_close($ldapMasterConnect); 1859 return $return;1860 return (isset($return) ? $return : array()); 1860 1861 } 1861 1862 … … 2107 2108 2108 2109 $entry = ldap_get_entries($this->ldap, $search); 2109 if ( $entry['count'] == 0)2110 if (isset($entry) && $entry['count'] == 0) 2110 2111 $result['groups_info'][$i]['cn'] = '_' . $this->functions->lang('group only exist on DB, but does not exist on ldap'); 2111 2112 2112 2113 else 2113 2114 { 2114 $result['groups_info'][$i]['uid'] = $entry[0]['uid'][0];2115 $result['groups_info'][$i]['cn'] = $entry[0]['cn'][0];2115 $result['groups_info'][$i]['uid'] = isset($entry[0]['uid']) ? $entry[0]['uid'][0] : ''; 2116 $result['groups_info'][$i]['cn'] = isset($entry[0]['cn']) ? $entry[0]['cn'][0] : ''; 2116 2117 } 2117 2118 $result['groups_info'][$i]['gidnumber'] = $gidnumber; … … 2273 2274 $attrs['memberuid'] = $user_info['uid']; 2274 2275 2275 if ( count($user_info['groups_info']))2276 if (isset($user_info['groups_info']) && count($user_info['groups_info'])) 2276 2277 { 2277 2278 foreach ($user_info['groups_info'] as $group_info) … … 2374 2375 for ($i=0; $i<=$entry['count']; ++$i) 2375 2376 { 2376 $dn = $entry[$i]['dn']; 2377 @ldap_mod_del ( $this->ldap, $dn, $attrs); 2377 if (isset($entry[$i])){ 2378 $dn = $entry[$i]['dn']; 2379 @ldap_mod_del ( $this->ldap, $dn, $attrs); 2380 } 2378 2381 } 2379 2382 … … 2816 2819 $return['accountStatus'] = $entrie[0]['accountstatus'][0]; 2817 2820 2818 $return['phpgwAccountVisible'] = $entrie[0]['phpgwaccountvisible'][0];2821 $return['phpgwAccountVisible'] = isset($entrie[0]['phpgwaccountvisible']) ? $entrie[0]['phpgwaccountvisible'][0] : ''; 2819 2822 $return['cn'] = utf8_decode($entrie[0]['cn'][0]); 2820 2823 $return['mail'] = $entrie[0]['mail'][0]; 2821 2824 $return['description'] = utf8_decode($entrie[0]['description'][0]); 2822 2825 $return['dn'] = utf8_decode($entrie[0]['dn']); 2823 $return['mailalternateaddress'] = $entrie[0]['mailalternateaddress'];2826 $return['mailalternateaddress'] = isset($entrie[0]['mailalternateaddress']) ? $entrie[0]['mailalternateaddress'] : ''; 2824 2827 } 2825 2828 -
sandbox/2.5.1-evolucao/expressoAdmin1_2/inc/class.shared_accounts.inc.php
r7934 r8237 123 123 $return = $this->ldap_functions->get_shared_account_data($params); 124 124 $owners_acl = $this->imap_functions->getaclfrombox($params); 125 $uid = $params['uid'];125 $uid = $params['uid']; 126 126 $quota = $this->imap_functions->get_user_info($params['uid']); 127 127 $owner = $this->ldap_functions->uid2uidnumber($params['uid']); … … 142 142 if( $uid ) 143 143 $cn .= '(' . $key . ')'; 144 145 $return['owners_options'] .= '<option value='. $key .'>' . $cn . '</option>'; 144 if (!isset($return['owners_options'])) $return['owners_options'] = ''; 145 if (!isset($return['owners'][$i])) $return['owners'][$i] = ''; 146 if (!isset($return['owners_acl'][$i])) $return['owners_acl'][$i] = ''; 147 if (!isset($return['owners_calendar_acl'][$i])) $return['owners_calendar_acl'][$i] = ''; 148 $return['owners_options'] .= '<option value='. $key .'>' . $cn . '</option>'; 146 149 $return['owners'][$i] .= $key; 147 150 $return['owners_acl'][$i] .= $value; 148 $return['owners_calendar_acl'][$i] .= $calendarAcls[$key];151 $return['owners_calendar_acl'][$i] .= isset($calendarAcls[$key]) ? $calendarAcls[$key] : ''; 149 152 ++$i; 150 153 } -
sandbox/2.5.1-evolucao/expressoAdmin1_2/inc/class.somessages_size.inc.php
r7655 r8237 10 10 \***********************************************************************************/ 11 11 12 define('PHPGW_INCLUDE_ROOT','../'); 13 define('PHPGW_API_INC','../phpgwapi/inc');12 if (!defined('PHPGW_INCLUDE_ROOT')) define('PHPGW_INCLUDE_ROOT','../'); 13 if (!defined('PHPGW_API_INC')) define('PHPGW_API_INC','../phpgwapi/inc'); 14 14 include_once(PHPGW_API_INC.'/class.db.inc.php'); 15 15 -
sandbox/2.5.1-evolucao/expressoAdmin1_2/inc/class.user.inc.php
r8236 r8237 941 941 return false; 942 942 $user_info_db1 = $this->db_functions->get_user_info($uidnumber); 943 $user_info_db2 = $this->ldap_functions->gidnumbers2cn( $user_info_db1['groups']);943 $user_info_db2 = $this->ldap_functions->gidnumbers2cn(isset($user_info_db1['groups'])?$user_info_db1['groups']:''); 944 944 $user_info_imap = $this->imap_functions->get_user_info($user_info_ldap['uid']); 945 945 $user_info = array_merge($user_info_ldap, $user_info_db1, $user_info_db2, $user_info_imap); … … 991 991 function delete($params) 992 992 { 993 $return['msg'] = ''; 993 994 $return['status'] = true; 994 995 $this->db_functions->write_log('delete user: start', $params['uid']); -
sandbox/2.5.1-evolucao/phpgwapi/inc/class.db.inc.php
r8235 r8237 1008 1008 if (!$column_definitions) 1009 1009 { 1010 $column_definitions = $this->column_definitions;1010 $column_definitions = isset($this->column_definitions) ? $this->column_definitions : NULL; 1011 1011 } 1012 1012 if ($this->Debug) echo "<p>db::column_data_implode('$glue',".print_r($array,True).",'$use_key',".print_r($only,True).",<pre>".print_r($column_definitions,True)."</pre>\n"; … … 1077 1077 if (!$app) 1078 1078 { 1079 $app = $this->app? $this->app : $GLOBALS['phpgw_info']['flags']['currentapp'];1079 $app = isset($this->app) && $this->app ? $this->app : $GLOBALS['phpgw_info']['flags']['currentapp']; 1080 1080 } 1081 1081 if (isset($GLOBALS['phpgw_info']['apps'])) // dont set it, if it does not exist!!!
Note: See TracChangeset
for help on using the changeset viewer.