Ignore:
Timestamp:
06/17/08 14:43:30 (16 years ago)
Author:
niltonneto
Message:

Versionamento feito pelo desenvolvedor (jakjr).

File:
1 edited

Legend:

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

    r221 r317  
    616616                if (!@ldap_add ( $this->ldap, $dn, $entry )) 
    617617                { 
    618                         $result['status'] = false; 
    619                         $result['msg'] = "Erro na funcao ldap_functions->ldap_add_entry ($dn).\nRetorno do servidor:" . ldap_error($this->ldap); 
     618                        $result['status']               = false; 
     619                        $result['error_number'] = ldap_errno($this->ldap); 
     620                        $result['msg']                  = "Erro na funcao ldap_functions->ldap_add_entry ($dn).\nRetorno do servidor:" . ldap_errno($this->ldap) . ldap_error($this->ldap); 
    620621                } 
    621622                else 
     
    743744                { 
    744745                        $result['status'] = false; 
    745                         $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist ($mail).\nRetorno do servidor:" . ldap_error($ldapMasterConnect); 
     746                        if (ldap_errno($ldapMasterConnect) == '50') 
     747                        { 
     748                                $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist.\n" . 
     749                                                                 "O usuário utilizado para gravação no LDAP, DEVE ter direito de escrita.\n". 
     750                                                                 "O usuário " . $_SESSION['phpgw_info']['expresso']['cc_ldap_server']['acc'] . " não tem este direito.\n". 
     751                                                                 "Edite \"Configuração Global do Catálogo\", no módulo Administrador, Catálogo de Endereços e adicione um usuário com direitos de escrita."; 
     752                        }                                         
     753                        else 
     754                                $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist.\nRetorno do servidor:" . ldap_error($ldapMasterConnect); 
    746755                } 
    747756                 
     
    794803                { 
    795804                        $result['status'] = false; 
    796                         $result['msg'] = "Erro na funcao ldap_functions->remove_user2maillist ($mail).\n\nRetorno do servidor:" . ldap_error($this->ldap); 
     805                        if (ldap_errno($ldapMasterConnect) == '50') 
     806                        { 
     807                                $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist.\n" . 
     808                                                                 "O usuário utilizado para gravação no LDAP, DEVE ter direito de escrita.\n". 
     809                                                                 "O usuário " . $_SESSION['phpgw_info']['expresso']['cc_ldap_server']['acc'] . " não tem este direito.\n". 
     810                                                                 "Edite \"Configuração Global do Catálogo\", no módulo Administrador, Catálogo de Endereços e adicione um usuário com direitos de escrita."; 
     811                        }                                         
     812                        else 
     813                                $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist.\nRetorno do servidor:" . ldap_error($ldapMasterConnect); 
    797814                } 
    798815                ldap_close($ldapMasterConnect); 
     
    12711288                { 
    12721289                        $return['status'] = false; 
     1290                        $return['error_number'] = ldap_errno($this->ldap); 
    12731291                        $return['msg'] = 'Erro em ldap_funcitons->replace_user_attributes: ' . ldap_error($this->ldap); 
    12741292                } 
     
    12841302                { 
    12851303                        $return['status'] = false; 
     1304                        $return['error_number'] = ldap_errno($this->ldap); 
    12861305                        $return['msg'] = 'Erro em ldap_funcitons->add_user_attributes: ' . ldap_error($this->ldap); 
    12871306                } 
     
    13601379                        } 
    13611380                } 
    1362                          
     1381                 
     1382                //INSTITUTIONAL ACCOUNTS 
     1383                $attrs = array(); 
     1384                $attrs['mailForwardingAddress'] = $user_info['mail']; 
     1385                 
     1386                $justthese = array("dn"); 
     1387                $filter="(&(phpgwAccountType=i)(mailforwardingaddress=".$user_info['mail']."))"; 
     1388                $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 
     1389            $entries = ldap_get_entries($this->ldap, $search); 
     1390                 
     1391                for ($i=0; $i<$entries['count']; $i++) 
     1392                { 
     1393                        if ( !@ldap_mod_del($this->ldap, $entries[$i]['dn'], $attrs) ) 
     1394                        { 
     1395                                $result['status'] = false; 
     1396                                $result['msg'] = "Erro na funcao ldap_functions->delete_user, instutional_accounts.\nRetorno do servidor:" . ldap_error($this->ldap); 
     1397                        } 
     1398                } 
     1399                 
    13631400                // MAILLISTS 
    13641401                $attrs = array(); 
     
    13871424                                { 
    13881425                                        $return['status'] = false; 
    1389                                         $return['msg'] .= 'Erro em ldap_funcitons->delete_user, listas de email: ' . ldap_error($this->ldap); 
     1426                                        if (ldap_errno($ldapMasterConnect) == '50') 
     1427                                        { 
     1428                                                $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist.\n" . 
     1429                                                                                 "O usuário utilizado para gravação no LDAP, DEVE ter direito de escrita.\n". 
     1430                                                                                 "O usuário " . $_SESSION['phpgw_info']['expresso']['cc_ldap_server']['acc'] . " não tem este direito.\n". 
     1431                                                                                "Edite \"Configuração Global do Catálogo\", no módulo Administrador, Catálogo de Endereços e adicione um usuário com direitos de escrita."; 
     1432                                        } 
     1433                                        else 
     1434                                                $result['msg'] = "Erro na funcao ldap_functions->add_user2maillist.\nRetorno do servidor:" . ldap_error($ldapMasterConnect); 
    13901435                                } 
    13911436                        } 
     
    16011646                return $return; 
    16021647        } 
     1648        function exist_domain_name_sid($sambadomainname, $sambasid) 
     1649        { 
     1650                $context = $GLOBALS['phpgw_info']['server']['ldap_context']; 
     1651 
     1652                $justthese = array("dn","sambaDomainName"); 
     1653                $filter="(&(objectClass=sambaDomain)(sambaSID=$sambasid)(sambaDomainName=$sambadomainname))"; 
     1654                $search = ldap_search($this->ldap, $context, $filter, $justthese); 
     1655            $count_entries = ldap_count_entries($this->ldap, $search); 
     1656             
     1657            if ($count_entries > 0) 
     1658                return true; 
     1659            else 
     1660                return false; 
     1661        } 
    16031662         
    16041663        function add_sambadomain($sambadomainname, $sambasid, $context) 
     
    16151674                { 
    16161675                        $return['status'] = false; 
    1617                         $return['msg'] = "Erro na funcao ldap_functions->add_sambadomain ($dn).\nRetorno do servidor: " . ldap_error($this->ldap); 
     1676                        $return['msg'] = "Erro ao adicionar Samba Domain"; 
    16181677                } 
    16191678                else 
     
    16701729        } 
    16711730         
    1672          
     1731        function create_institutional_accounts($params) 
     1732        { 
     1733                /* Begin: Access verification */ 
     1734                if (!$this->functions->check_acl($_SESSION['phpgw_info']['expresso']['user']['account_lid'], 'add_institutional_accounts')) 
     1735                { 
     1736                        $return['status'] = false; 
     1737                        $return['msg'] = $this->functions->lang('You do not have right to create institutional accounts') . "."; 
     1738                        return $return; 
     1739                } 
     1740                 
     1741                $access_granted = false; 
     1742                foreach ($this->manager_contexts as $idx=>$manager_context) 
     1743                { 
     1744                        if (stristr($params['context'], $manager_context)) 
     1745                        { 
     1746                                $access_granted = true; 
     1747                                break; 
     1748                        } 
     1749                } 
     1750                if (!$access_granted) 
     1751                { 
     1752                        $return['status'] = false; 
     1753                        $return['msg'] = $this->functions->lang('You do not have access to this organization') . "."; 
     1754                        return $return; 
     1755                } 
     1756                /* End: Access verification */ 
     1757 
     1758                /* Begin: Validation */ 
     1759                if ( (empty($params['cn'])) || (empty($params['mail'])) ) 
     1760                { 
     1761                        $result['status'] = false; 
     1762                        $result['msg']  = $this->functions->lang('Field mail or name is empty'); 
     1763                        return $result; 
     1764                } 
     1765 
     1766                if (! eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$", $params['mail']) ) 
     1767                { 
     1768                        $result['status'] = false; 
     1769                        $result['msg']  = $this->functions->lang('Field mail is not formed correcty') . '.'; 
     1770                        return $result; 
     1771                } 
     1772 
     1773                $uid = 'institutional_account_' . $params['mail']; 
     1774                $dn = "uid=$uid," . $params['context']; 
     1775 
     1776                $filter = "(mail=".$params['mail'].")"; 
     1777                $justthese = array("cn"); 
     1778                $search = @ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 
     1779                $entries = @ldap_get_entries($this->ldap,$search); 
     1780                if ($entries['count'] != 0) 
     1781                { 
     1782                        $result['status'] = false; 
     1783                        $result['msg'] = $this->functions->lang('Field mail already in use'); 
     1784                        return $result; 
     1785                } 
     1786                /* End: Validation */ 
     1787                                                 
     1788                $info = array(); 
     1789                $info['cn']                                     = $params['cn']; 
     1790                $info['sn']                                     = $params['cn']; 
     1791                $info['uid']                            = $uid; 
     1792                $info['mail']                           = $params['mail']; 
     1793                $info['phpgwAccountType']       = 'i'; 
     1794                $info['objectClass'][]          = 'inetOrgPerson'; 
     1795                $info['objectClass'][]          = 'phpgwAccount'; 
     1796                $info['objectClass'][]          = 'top'; 
     1797                $info['objectClass'][]          = 'person'; 
     1798                $info['objectClass'][]          = 'qmailUser'; 
     1799                $info['objectClass'][]          = 'organizationalPerson'; 
     1800                 
     1801                if ($params['accountStatus'] == 'on') 
     1802                { 
     1803                        $info['accountStatus'] = 'active'; 
     1804                } 
     1805                if ($params['phpgwAccountVisible'] == 'on') 
     1806                { 
     1807                        $info['phpgwAccountVisible'] = '-1'; 
     1808                } 
     1809                 
     1810                if (!empty($params['owners'])) 
     1811                { 
     1812                        foreach($params['owners'] as $index=>$uidnumber) 
     1813                        { 
     1814                                $info['mailForwardingAddress'][] = $this->uidnumber2mail($uidnumber); 
     1815                        } 
     1816                }                
     1817                 
     1818                $result = array(); 
     1819                if (!@ldap_add ( $this->ldap, $dn, $info )) 
     1820                { 
     1821                        $result['status'] = false; 
     1822                        $result['msg']  = $this->functions->lang('Error in function') . ' ldap_functions->create_institutional_accounts'; 
     1823                        $result['msg'] .= "\n" . $this->functions->lang('Server return') . ': ' . ldap_error($this->ldap); 
     1824                } 
     1825                else 
     1826                        $result['status'] = true; 
     1827                 
     1828                return $result; 
     1829        } 
     1830         
     1831        function save_institutional_accounts($params) 
     1832        { 
     1833                /* Begin: Access verification */ 
     1834                if (!$this->functions->check_acl($_SESSION['phpgw_info']['expresso']['user']['account_lid'], 'edit_institutional_accounts')) 
     1835                { 
     1836                        $return['status'] = false; 
     1837                        $return['msg'] = $this->functions->lang('You do not have right to edit institutional accounts') . "."; 
     1838                        return $return; 
     1839                } 
     1840                $access_granted = false; 
     1841                foreach ($this->manager_contexts as $idx=>$manager_context) 
     1842                { 
     1843                        if (stristr($params['context'], $manager_context)) 
     1844                        { 
     1845                                $access_granted = true; 
     1846                                break; 
     1847                        } 
     1848                } 
     1849                if (!$access_granted) 
     1850                { 
     1851                        $return['status'] = false; 
     1852                        $return['msg'] = $this->functions->lang('You do not have access to this organization') . "."; 
     1853                        return $return; 
     1854                } 
     1855                /* End: Access verification */ 
     1856                 
     1857                /* Begin: Validation */ 
     1858                if ( (empty($params['cn'])) || (empty($params['mail'])) ) 
     1859                { 
     1860                        $result['status'] = false; 
     1861                        $result['msg']  = $this->functions->lang('Field mail or name is empty') . '.'; 
     1862                        return $result; 
     1863                } 
     1864 
     1865                if (! eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$", $params['mail']) ) 
     1866                { 
     1867                        $result['status'] = false; 
     1868                        $result['msg']  = $this->functions->lang('Field mail is not formed correcty') . '.'; 
     1869                        return $result; 
     1870                } 
     1871 
     1872                $uid = 'institutional_account_' . $params['mail']; 
     1873                $dn = strtolower("uid=$uid," . $params['context']); 
     1874                $anchor = strtolower($params['anchor']); 
     1875 
     1876                $filter = "(mail=".$params['mail'].")"; 
     1877                $justthese = array("cn"); 
     1878                $search = @ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 
     1879                $entries = @ldap_get_entries($this->ldap,$search); 
     1880                 
     1881                if ( ($entries['count'] > 1) || (($entries['count'] == 1) && ($entries[0]['dn'] != $anchor)) ) 
     1882                { 
     1883                        $result['status'] = false; 
     1884                        $result['msg'] = $this->functions->lang('Field mail already in use.'); 
     1885                        return $result; 
     1886                } 
     1887                /* End: Validation */ 
     1888                 
     1889                $result = array(); 
     1890                $result['status'] = true; 
     1891                 
     1892                if ($anchor != $dn) 
     1893                { 
     1894                        if (!@ldap_rename($this->ldap, $anchor, "uid=$uid", $params['context'], true)) 
     1895                        { 
     1896                                $result['status'] = false; 
     1897                                $result['msg']  = $this->functions->lang('Error in function') . ' ldap_functions->save_institutional_accounts: ldap_rename'; 
     1898                                $result['msg'] .= "\n" . $this->functions->lang('Server return') . ': ' . ldap_error($this->ldap); 
     1899                        } 
     1900                } 
     1901                 
     1902                $info = array(); 
     1903                $info['cn']                                     = $params['cn']; 
     1904                $info['sn']                                     = $params['cn']; 
     1905                $info['uid']                            = $uid; 
     1906                $info['mail']                           = $params['mail']; 
     1907                 
     1908                if ($params['accountStatus'] == 'on') 
     1909                        $info['accountStatus'] = 'active'; 
     1910                else 
     1911                        $info['accountStatus'] = array(); 
     1912                 
     1913                if ($params['phpgwAccountVisible'] == 'on') 
     1914                        $info['phpgwAccountVisible'] = '-1'; 
     1915                else 
     1916                        $info['phpgwAccountVisible'] = array(); 
     1917                 
     1918                if (!empty($params['owners'])) 
     1919                { 
     1920                        foreach($params['owners'] as $index=>$uidnumber) 
     1921                        { 
     1922                                $mailForwardingAddress = $this->uidnumber2mail($uidnumber); 
     1923                                if ($mailForwardingAddress != '') 
     1924                                        $info['mailForwardingAddress'][] = $mailForwardingAddress; 
     1925                        } 
     1926                } 
     1927                else 
     1928                        $info['mailForwardingAddress'] = array(); 
     1929                 
     1930                if (!@ldap_modify ( $this->ldap, $dn, $info )) 
     1931                { 
     1932                        $result['status'] = false; 
     1933                        $result['msg']  = $this->functions->lang('Error in function') . ' ldap_functions->save_institutional_accounts: ldap_modify'; 
     1934                        $result['msg'] .= "\n" . $this->functions->lang('Server return') . ': ' . ldap_error($this->ldap); 
     1935                } 
     1936 
     1937                return $result; 
     1938        } 
     1939         
     1940        function get_institutional_accounts($params) 
     1941        { 
     1942                if (!$this->functions->check_acl($_SESSION['phpgw_info']['expresso']['user']['account_lid'], 'list_institutional_accounts')) 
     1943                { 
     1944                        $return['status'] = false; 
     1945                        $return['msg'] = $this->functions->lang('You do not have right to list institutional accounts') . "."; 
     1946                        return $return; 
     1947                } 
     1948 
     1949                $input = $params['input']; 
     1950                $justthese = array("cn", "mail", "uid"); 
     1951                $trs = array(); 
     1952                                 
     1953                foreach ($this->manager_contexts as $idx=>$context) 
     1954                { 
     1955                $institutional_accounts = ldap_search($this->ldap, $context, ("(&(phpgwAccountType=i)(|(mail=$input*)(cn=*$input*)))"), $justthese); 
     1956                $entries = ldap_get_entries($this->ldap, $institutional_accounts); 
     1957                 
     1958                        for ($i=0; $i<$entries['count']; $i++) 
     1959                        { 
     1960                                $tr = "<tr class='normal' onMouseOver=this.className='selected' onMouseOut=this.className='normal'><td onClick=edit_institutional_account('".$entries[$i]['uid'][0]."')>" . $entries[$i]['cn'][0] . "</td><td onClick=edit_institutional_account('".$entries[$i]['uid'][0]."')>" . $entries[$i]['mail'][0] . "</td><td align='center' onClick=delete_institutional_accounts('".$entries[$i]['uid'][0]."')><img HEIGHT='16' WIDTH='16' src=./expressoAdmin1_2/templates/default/images/delete.png></td></tr>"; 
     1961                                $trs[$tr] = $entries[$i]['cn'][0]; 
     1962                        } 
     1963                } 
     1964         
     1965        $trs_string = ''; 
     1966        if (count($trs)) 
     1967        { 
     1968                natcasesort($trs); 
     1969                foreach ($trs as $tr=>$cn) 
     1970                { 
     1971                        $trs_string .= $tr; 
     1972                } 
     1973        } 
     1974         
     1975        $return['status'] = 'true'; 
     1976        $return['trs'] = $trs_string; 
     1977        return $return; 
     1978        } 
     1979         
     1980        function get_institutional_account_data($params) 
     1981        { 
     1982                if (!$this->functions->check_acl($_SESSION['phpgw_info']['expresso']['user']['account_lid'], 'edit_institutional_accounts')) 
     1983                { 
     1984                        $return['status'] = false; 
     1985                        $return['msg'] = $this->functions->lang('You do not have right to list institutional accounts') . "."; 
     1986                        return $return; 
     1987                } 
     1988                 
     1989                $uid = $params['uid']; 
     1990                $justthese = array("accountStatus", "phpgwAccountVisible", "cn", "mail", "mailForwardingAddress"); 
     1991                                 
     1992        $institutional_accounts = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], ("(&(phpgwAccountType=i)(uid=$uid))"), $justthese); 
     1993        $entrie = ldap_get_entries($this->ldap, $institutional_accounts); 
     1994                 
     1995                if ($entrie['count'] != 1) 
     1996                { 
     1997                        $return['status'] = 'false'; 
     1998                        $return['msg'] = 'Problemas carregando dados.'; 
     1999                } 
     2000                else 
     2001                { 
     2002                        $tmp_user_context = split(",", $entrie[0]['dn']); 
     2003                        $tmp_reverse_user_context = array_reverse($tmp_user_context); 
     2004                        array_pop($tmp_reverse_user_context); 
     2005                        $return['user_context'] = implode(",", array_reverse($tmp_reverse_user_context)); 
     2006                         
     2007                        $return['status'] = 'true'; 
     2008                        $return['accountStatus']                = $entrie[0]['accountstatus'][0]; 
     2009                        $return['phpgwAccountVisible']  = $entrie[0]['phpgwaccountvisible'][0]; 
     2010                        $return['cn']                                   = $entrie[0]['cn'][0]; 
     2011                        $return['mail']                                 = $entrie[0]['mail'][0]; 
     2012 
     2013                        if ($entrie[0]['mailforwardingaddress']['count'] > 0) 
     2014                        { 
     2015                                $a_cn = array(); 
     2016                                for ($i=0; $i<$entrie[0]['mailforwardingaddress']['count']; $i++) 
     2017                                { 
     2018                                        $tmp = $this->mailforwardingaddress2uidnumber($entrie[0]['mailforwardingaddress'][$i]); 
     2019                                        if (!$tmp) {} 
     2020                                        else 
     2021                                                $a_cn[$tmp['uidnumber']] = $tmp['cn']; 
     2022                                } 
     2023                                natcasesort($a_cn); 
     2024                                foreach($a_cn as $uidnumber => $cn) 
     2025                                { 
     2026                                        $return['owners'] .= '<option value='. $uidnumber .'>' . $cn . '</option>'; 
     2027                                } 
     2028                        } 
     2029                } 
     2030                 
     2031                return $return; 
     2032        } 
     2033         
     2034        function mailforwardingaddress2uidnumber($mail) 
     2035        { 
     2036                $justthese = array("uidnumber","cn"); 
     2037        $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], ("(&(phpgwAccountType=u)(mail=$mail))"), $justthese); 
     2038        $entrie = ldap_get_entries($this->ldap, $search); 
     2039                if ($entrie['count'] != 1) 
     2040                        return false; 
     2041                else 
     2042                { 
     2043                        $return['uidnumber'] = $entrie[0]['uidnumber'][0]; 
     2044                        $return['cn'] = $entrie[0]['cn'][0]; 
     2045                        return $return; 
     2046                } 
     2047        } 
     2048         
     2049        function delete_institutional_account_data($params) 
     2050        { 
     2051                if (!$this->functions->check_acl($_SESSION['phpgw_info']['expresso']['user']['account_lid'], 'remove_institutional_accounts')) 
     2052                { 
     2053                        $return['status'] = false; 
     2054                        $return['msg'] = $this->functions->lang('You do not have right to delete institutional accounts') . "."; 
     2055                        return $return; 
     2056                } 
     2057 
     2058                $uid = $params['uid']; 
     2059                $return['status'] = true; 
     2060                                 
     2061                $justthese = array("cn"); 
     2062        $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], ("(&(phpgwAccountType=i)(uid=$uid))"), $justthese); 
     2063        $entrie = ldap_get_entries($this->ldap, $search); 
     2064                if ($entrie['count'] > 1) 
     2065                { 
     2066                        $return['status'] = false; 
     2067                        $return['msg']  = $this->functions->lang('More then one uid was found'); 
     2068                        return $return; 
     2069                }                
     2070                if ($entrie['count'] == 0) 
     2071                { 
     2072                        $return['status'] = false; 
     2073                        $return['msg']  = $this->functions->lang('No uid was found'); 
     2074                        return $return; 
     2075                }                
     2076                 
     2077                $dn = $entrie[0]['dn']; 
     2078                if (!@ldap_delete($this->ldap, $dn)) 
     2079                { 
     2080                        $return['status'] = false; 
     2081                        $return['msg']  = $this->functions->lang('Error in function') . " ldap_functions->delete_institutional_accounts: ldap_delete"; 
     2082                        $return['msg'] .= "\n" . $this->functions->lang('Server return') . ': ' . ldap_error($this->ldap); 
     2083                        return $return; 
     2084                } 
     2085                 
     2086                return $return; 
     2087        } 
     2088         
     2089        function replace_mail_from_institutional_account($newMail, $oldMail) 
     2090        { 
     2091                $filter = "(&(phpgwAccountType=i)(mailforwardingaddress=$oldMail))"; 
     2092                $justthese = array("dn"); 
     2093                $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter, $justthese); 
     2094                $entries = ldap_get_entries($this->ldap, $search); 
     2095                $result['status'] = true; 
     2096                for ($i=0; $i<$entries['count']; $i++) 
     2097                { 
     2098                        $attrs['mailforwardingaddress'] = $oldMail; 
     2099                        $res1 = @ldap_mod_del($this->ldap, $entries[$i]['dn'], $attrs); 
     2100                        $attrs['mailforwardingaddress'] = $newMail; 
     2101                        $res2 = @ldap_mod_add($this->ldap, $entries[$i]['dn'], $attrs); 
     2102                 
     2103                        if ((!$res1) || (!$res2)) 
     2104                        { 
     2105                                $result['status'] = false; 
     2106                                $return['msg']  = $this->functions->lang('Error in function') . " ldap_functions->replace_mail_from_institutional_account."; 
     2107                        } 
     2108                } 
     2109                 
     2110                return $result; 
     2111        } 
    16732112} 
    16742113?> 
Note: See TracChangeset for help on using the changeset viewer.