Changeset 46 for trunk/expressoAdmin1_2


Ignore:
Timestamp:
08/06/07 08:54:16 (17 years ago)
Author:
niltonneto
Message:

* empty log message *

Location:
trunk/expressoAdmin1_2
Files:
17 edited

Legend:

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

    r32 r46  
    3838                        'edit_groups'                           => $_POST['edit_groups'], 
    3939                        'delete_groups'                         => $_POST['delete_groups'], 
     40                        'edit_email_groups'                     => $_POST['edit_email_groups'], 
    4041                        'change_users_password'         => $_POST['change_users_password'], 
    4142                        'change_users_quote'            => $_POST['change_users_quote'], 
     
    6061                        $acl = 0; 
    6162                        $acl = $acl + $manager['add_users'] + $manager['edit_users'] + $manager['delete_users'] + $manager['rename_users'] + $manager['view_users']; 
    62                         $acl = $acl + $manager['add_groups'] + $manager['edit_groups'] + $manager['delete_groups']; 
     63                        $acl = $acl + $manager['add_groups'] + $manager['edit_groups'] + $manager['delete_groups'] + $manager['edit_email_groups']; 
    6364                        $acl = $acl + $manager['change_users_password'] + $manager['change_users_quote'] + $manager['set_user_default_password']; 
    6465                        $acl = $acl + $manager['edit_sambausers_attributes'] + $manager['edit_sambadomains']; 
     
    108109                        'add_groups'                            => $_POST['add_groups'], 
    109110                        'edit_groups'                           => $_POST['edit_groups'], 
    110                         'delete_groups'                         => $_POST['delete_groups'],                      
     111                        'delete_groups'                         => $_POST['delete_groups'], 
     112                        'edit_email_groups'                     => $_POST['edit_email_groups'],                  
    111113                        'change_users_password'         => $_POST['change_users_password'], 
    112114                        'change_users_quote'            => $_POST['change_users_quote'], 
     
    131133                        $acl = 0; 
    132134                        $acl = $acl + $manager['add_users'] + $manager['edit_users'] + $manager['delete_users'] + $manager['rename_users'] + $manager['view_users']; 
    133                         $acl = $acl + $manager['add_groups'] + $manager['edit_groups'] + $manager['delete_groups']; 
     135                        $acl = $acl + $manager['add_groups'] + $manager['edit_groups'] + $manager['delete_groups'] + $manager['edit_email_groups']; 
    134136                        $acl = $acl + $manager['change_users_password'] + $manager['change_users_quote'] + $manager['set_user_default_password']; 
    135137                        $acl = $acl + $manager['edit_sambausers_attributes'] + $manager['edit_sambadomains']; 
  • trunk/expressoAdmin1_2/inc/class.functions.inc.php

    r33 r46  
    103103                                                return true; 
    104104                                        break; 
     105                                case edit_email_groups: 
     106                                        if ($array_acl[edit_email_groups]) 
     107                                                return true; 
     108                                        break; 
    105109                                 
    106110                                case list_maillists: 
     
    175179                function read_acl($account_lid) 
    176180                {  
    177                         /* 
    178                         $query = "SELECT * FROM phpgw_expressoadmin WHERE manager_lid = '" . $account_lid . "'";  
    179                         $GLOBALS['phpgw']->db->query($query); 
    180                         while($GLOBALS['phpgw']->db->next_record()) 
    181                         { 
    182                                 $result[] = $GLOBALS['phpgw']->db->row(); 
    183                         } 
    184                         */ 
    185181                        $result = $this->db_functions->read_acl($account_lid); 
    186182                        $context_array = ldap_explode_dn($result[0]['context'], 1); 
    187                         $tmp = array_shift($context_array); 
    188                         $result[0]['context_display'] = implode(".", $context_array); 
     183                        $result[0]['context_display'] = ldap_dn2ufn ( $result[0]['context'] ); 
    189184                        return $result; 
    190185                } 
    191186                 
    192187                // Make a array read humam 
    193                 // Last acl:    33.554.432 
     188                // Last acl:    33.554.432, 67.108.864 
    194189                function make_array_acl($acl) 
    195190                { 
     
    202197                        $array_acl['edit_groups'] = $acl & 32; 
    203198                        $array_acl['delete_groups'] = $acl & 64; 
     199                        $array_acl['edit_email_groups'] = $acl & 67108864; 
    204200                        $array_acl['change_users_password'] = $acl & 128; 
    205201                        $array_acl['change_users_quote'] = $acl & 262144; 
     
    234230                                 
    235231                                $justthese = array("uidnumber", "uid", "cn", "mail"); 
    236                                 $filter="(&(phpgwAccountType=u)(|(uid=*".$query."*)(sn=*".$query."*)(cn=*".$query."*)(givenName=*".$query."*)(mail=$query*)))"; 
     232                                $filter="(&(phpgwAccountType=u)(|(uid~=".$query.")(sn~=".$query.")(cn~=".$query.")(givenName~=".$query.")(mail~=$query)(mailAlternateAddress~=$query)))"; 
    237233                                $search=ldap_search($ldap_conn, $context, $filter, $justthese); 
    238234                                ldap_sort($ldap_conn, $search, "uid"); 
     
    470466                 
    471467                // Get list of all levels, this function is used for sectors module. 
     468                /* 
    472469                function get_sectors_list($context) 
    473470                { 
     
    477474         
    478475                        if ($connection) 
    479                         { 
     476                        {                                
    480477                                $bind=ldap_bind($connection); 
    481478                                $filter="ou=*"; 
    482479                                $justthese = array("ou"); 
    483480                                $search=ldap_list($connection, $context, $filter, $justthese); 
    484                                 ldap_sort($connection ,$search, "ou"); 
     481                                ldap_sort($connection, $search, "ou"); 
    485482                                $info = ldap_get_entries($connection, $search); 
    486483                                for ($i=0; $i<$info["count"]; $i++) 
     
    496493                        $this->level--; 
    497494                        return $this->sectors_list; 
     495                } 
     496                */ 
     497                 
     498                // Get list of all levels, this function is used for sectors module. 
     499                function get_sectors_list($context, $selected='', $referral=false ,$show_invisible_ou=false) 
     500                { 
     501                        $dn                     = $GLOBALS['phpgw_info']['server']['ldap_root_dn']; 
     502                        $passwd         = $GLOBALS['phpgw_info']['server']['ldap_root_pw']; 
     503                        $ldap_conn      = ldap_connect($GLOBALS['phpgw_info']['server']['ldap_host']); 
     504                         
     505                        ldap_set_option($ldap_conn, LDAP_OPT_PROTOCOL_VERSION, 3); 
     506                         
     507                        if ($referral) 
     508                                ldap_set_option($ldap_conn, LDAP_OPT_REFERRALS, 1); 
     509                        else 
     510                                ldap_set_option($ldap_conn, LDAP_OPT_REFERRALS, 0); 
     511                         
     512                        ldap_bind($ldap_conn,$dn,$passwd); 
     513                         
     514                        $justthese = array("dn"); 
     515                        $filter = "(ou=*)"; 
     516                        $search=ldap_search($ldap_conn, $context, $filter, $justthese); 
     517                 
     518                ldap_sort($ldap_conn, $search, "ou"); 
     519                $info = ldap_get_entries($ldap_conn, $search); 
     520                        ldap_close($ldap_conn); 
     521 
     522                        // Retiro o count do array info e inverto o array para ordenação. 
     523                for ($i=0; $i<$info["count"]; $i++) 
     524            { 
     525                                $dn = $info[$i]["dn"]; 
     526                                 
     527                                // Necessário, pq em uma busca com ldapsearch ou=*, traz tb o próprio ou.  
     528                                if (strtolower($dn) == $context) 
     529                                        continue; 
     530 
     531                                $array_dn = ldap_explode_dn ( $dn, 1 ); 
     532 
     533                $array_dn_reverse  = array_reverse ( $array_dn, true ); 
     534 
     535                                // Retirar o indice count do array. 
     536                                array_pop ( $array_dn_reverse ); 
     537 
     538                                $inverted_dn[$dn] = implode ( "#", $array_dn_reverse ); 
     539                        } 
     540 
     541                        // Ordenação 
     542                        natcasesort($inverted_dn); 
     543                         
     544                        // Construção do select 
     545                        $level = 0; 
     546                        $options = array(); 
     547                        foreach ($inverted_dn as $dn=>$invert_ufn) 
     548                        { 
     549                $display = ''; 
     550 
     551                $array_dn_reverse = explode ( "#", $invert_ufn ); 
     552                $array_dn  = array_reverse ( $array_dn_reverse, true ); 
     553 
     554                $level = count( $array_dn ) - (int)(count(explode(",", $GLOBALS['phpgw_info']['server']['ldap_context'])) + 1); 
     555 
     556                if ($level == 0) 
     557                        $display .= '+'; 
     558                else  
     559                { 
     560                                        for ($i=0; $i<$level; $i++) 
     561                                                $display .= '---'; 
     562                } 
     563 
     564                reset ( $array_dn ); 
     565                $display .= ' ' . (current ( $array_dn ) ); 
     566                                 
     567                                $dn = trim(strtolower($dn)); 
     568                                $options[$dn] = $display; 
     569                } 
     570            return $options; 
    498571                } 
    499572                 
  • trunk/expressoAdmin1_2/inc/class.group.inc.php

    r33 r46  
    7575                        $group_info['userPassword']                     = ''; 
    7676                         
     77                        // E-mail for groups 
     78                        if ($params['email'] != '') 
     79                                $group_info['mail'] = $params['email']; 
     80                         
    7781                        if (count($params['members'])) 
    7882                        { 
     
    9397                        { 
    9498                                $group_info['objectClass'][]  = 'sambaGroupMapping'; 
    95                                 $group_info['sambaSID']           = $params['sambadomain'] . '-' . (($id * 2) + 1001); 
     99                                $group_info['sambaSID']           = $params['sambasid'] . '-' . (($id * 2) + 1001); 
    96100                                $group_info['sambaGroupType'] = '2'; 
    97101                        } 
     
    166170                        } 
    167171                         
     172                        $ldap_mod_replace = array(); 
    168173                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
    169174                        // REPLACE SAMBASID OF SAMBA 
    170                         if ( ($this->current_config['expressoAdmin_samba_support'] == 'true') && ($diff['sambadomain']) )  
    171                         { 
    172                                 $ldap_mod_replace['sambaSID'] = $new_values['sambadomain'] . '-' . ((2 * $new_values['uidnumber'])+1001); 
    173                                 $this->db_functions->write_log("Alterado dominio samba do grupo $dn para " . $new_values['sambadomain'],'',$dn,'',''); 
     175                        if ( ($this->current_config['expressoAdmin_samba_support'] == 'true') && ($diff['sambasid']) && ($old_values['sambasid'])) 
     176                        { 
     177                                $ldap_mod_replace['sambasid'] = $new_values['sambasid'] . '-' . ((2 * $new_values['gidnumber'])+1001); 
     178                                $this->db_functions->write_log("Alterado dominio samba do grupo $dn para " . $new_values['sambasid'],'',$dn,'',''); 
    174179                        } 
    175180                         
     
    183188 
    184189                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
    185                         // CALL LDAP_REPLACE FUNCTION                    
     190                        // REPLACE E-Mail 
     191                        if ((($old_values['email']) && ($diff['email'])) &&  
     192                                $this->functions->check_acl($_SESSION['phpgw_session']['session_lid'],'edit_email_groups')) 
     193                        { 
     194                                $ldap_mod_replace['mail'] = $new_values['email']; 
     195                                $this->db_functions->write_log("Modificado E-Mail do grupo $dn",'',$dn,'',''); 
     196                        } 
     197 
     198                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
     199                        // CALL LDAP_REPLACE FUNCTION 
    186200                        if (count($ldap_mod_replace)) 
    187201                        { 
     
    226240                                        $ldap_add['objectClass'][]              = 'sambaGroupMapping'; 
    227241                                        $ldap_add['sambagrouptype']             = '2'; 
    228                                         $ldap_add['sambasid']                   = $new_values['sambadomain'] . '-' . ((2 * $new_values['gidnumber'])+1001); 
     242                                        $ldap_add['sambasid']                   = $new_values['sambasid'] . '-' . ((2 * $new_values['gidnumber'])+1001); 
    229243                                         
    230244                                        $result = $this->ldap_functions->add_user_attributes($dn, $ldap_add); 
     
    241255                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
    242256                        // ADD ATTRIBUTES 
     257                        $ldap_add = array(); 
    243258                        if (($new_values['phpgwaccountvisible'] == 'on') && ($old_values['phpgwaccountvisible'] != '-1')) 
    244259                        { 
    245260                                $ldap_add['phpgwaccountvisible'] = '-1'; 
     261                                $this->db_functions->write_log("Adicionado atributo phpgwaccountvisible ao grupo $dn",'','','',''); 
     262                        } 
     263                        if ((($new_values['email']) && (!$old_values['email'])) && 
     264                                $this->functions->check_acl($_SESSION['phpgw_session']['session_lid'],'edit_email_groups')) 
     265                        { 
     266                                $ldap_add['mail'] = $new_values['email']; 
     267                                $this->db_functions->write_log("Adicionado atributo mail ao grupo $dn",'','','',''); 
     268                        } 
     269                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
     270                        // CALL LDAP_ADD FUNCTION                        
     271                        if (count($ldap_add)) 
     272                        { 
    246273                                $result = $this->ldap_functions->add_user_attributes($dn, $ldap_add); 
    247274                                if (!$result['status']) 
     
    250277                                        $return['msg'] .= $result['msg']; 
    251278                                } 
    252                                 else 
    253                                         $this->db_functions->write_log("Adicionado atributo phpgwaccountvisible ao grupo $dn",'','','',''); 
    254                         } 
    255                          
     279                        } 
     280                                                 
     281                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
    256282                        // REMOVE ATTRIBUTES 
     283                        $ldap_remove = array(); 
    257284                        if (($new_values['phpgwaccountvisible'] != 'on') && ($old_values['phpgwaccountvisible'] == '-1')) 
    258285                        { 
    259286                                $ldap_remove['phpgwaccountvisible'] = array(); 
     287                                $this->db_functions->write_log("Removido atributo phpgwaccountvisible do grupo $dn",'','','',''); 
     288                        } 
     289                        if (((!$new_values['email']) && ($old_values['email'])) && 
     290                                $this->functions->check_acl($_SESSION['phpgw_session']['session_lid'],'edit_email_groups')) 
     291                        { 
     292                                $ldap_remove['mail'] = array(); 
     293                                $this->db_functions->write_log("Removido atributo mail do grupo $dn",'','','',''); 
     294                        } 
     295                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
     296                        // CALL LDAP_REMOVED FUNCTION                    
     297                        if (count($ldap_remove)) 
     298                        { 
    260299                                $result = $this->ldap_functions->remove_user_attributes($dn, $ldap_remove); 
    261300                                if (!$result['status']) 
     
    264303                                        $return['msg'] .= $result['msg']; 
    265304                                } 
    266                                 else 
    267                                         $this->db_functions->write_log("Removido atributo phpgwaccountvisible do grupo $dn",'','','',''); 
    268305                        } 
    269306 
  • trunk/expressoAdmin1_2/inc/class.imap_functions.inc.php

    r2 r46  
    2828                        return $result; 
    2929                } 
    30                 if (!imap_createmailbox($this->imap, '{'.$this->imap_server.'}' . "user" . $this->imapDelimiter . $uid . $this->imapDelimiter . "Enviados")) 
     30                if (!imap_createmailbox($this->imap, '{'.$this->imap_server.'}' . "user" . $this->imapDelimiter . $uid . $this->imapDelimiter . "Sent")) 
    3131                { 
    3232                        $error = imap_errors(); 
     
    3535                        return $result; 
    3636                } 
    37                 if (!imap_createmailbox($this->imap, '{'.$this->imap_server.'}' . "user" . $this->imapDelimiter . $uid . $this->imapDelimiter . "Rascunhos")) 
     37                if (!imap_createmailbox($this->imap, '{'.$this->imap_server.'}' . "user" . $this->imapDelimiter . $uid . $this->imapDelimiter . "Drafts")) 
    3838                { 
    3939                        $error = imap_errors(); 
     
    4242                        return $result; 
    4343                } 
    44                 if (!imap_createmailbox($this->imap, '{'.$this->imap_server.'}' . "user" . $this->imapDelimiter . $uid . $this->imapDelimiter . "Lixeira")) 
     44                if (!imap_createmailbox($this->imap, '{'.$this->imap_server.'}' . "user" . $this->imapDelimiter . $uid . $this->imapDelimiter . "Trash")) 
    4545                { 
    4646                        $error = imap_errors(); 
  • trunk/expressoAdmin1_2/inc/class.ldap_functions.inc.php

    r33 r46  
    299299                 
    300300                $justthese = array("cn", "uidNumber"); 
    301                 $users_filter="(&(phpgwAccountType=u)(!(phpgwAccountVisible=-1)))"; 
     301                $users_filter="(phpgwAccountType=u)"; 
    302302                $lists_filter = $denied_uidnumber == '' ? "(phpgwAccountType=l)" : "(&(phpgwAccountType=l)(!(uidnumber=$denied_uidnumber)))"; 
    303303                 
     
    637637                $result['mailforwardingaddress']= $entry[0]['mailforwardingaddress'][0]; 
    638638                $result['deliverymode']                 = $entry[0]['deliverymode'][0]; 
     639                $result['userPasswordRFC2617']  = $entry[0]['userpasswordrfc2617'][0]; 
    639640 
    640641                //Photo 
     
    705706                $result['gidnumber']                    = $entry[0]['gidnumber'][0]; 
    706707                $result['phpgwaccountvisible']  = $entry[0]['phpgwaccountvisible'][0]; 
     708                $result['email']                                = $entry[0]['mail'][0]; 
    707709                 
    708710                //MemberUid 
  • trunk/expressoAdmin1_2/inc/class.uiaccounts.inc.php

    r33 r46  
    429429                                                if ($alert_warning == '') 
    430430                                                        $alert_warning = "O expressoAdmin corrigiu as seguintes inconsistências:\\n"; 
    431                                                 $alert_warning .= "Incluido atributo memberUid do usuário no grupo $cn - $gidnumber.\\n"; 
     431                                                $alert_warning .= "Incluido atributo memberUid do usuário no grupo:\\n$cn - gidnumber: $gidnumber."; 
    432432                                        } 
    433433                                        else 
  • trunk/expressoAdmin1_2/inc/class.uigroups.inc.php

    r33 r46  
    225225                                'type'                                          => 'create_group', 
    226226                                'ldap_context'                          => $GLOBALS['phpgw_info']['server']['ldap_context'], 
     227                                'ufn_ldap_context'                      => ldap_dn2ufn($GLOBALS['phpgw_info']['server']['ldap_context']), 
    227228                                'lang_back'                                     => lang('Back'), 
    228229                                'lang_save'                                     => lang('save'), 
    229230                                'lang_org'                                      => lang('Organizations'), 
    230231                                'lang_group_name'                       => lang('group name'), 
     232                                'lang_description'                      => lang('Description'), 
     233                                'lang_email'                            => lang('E-mail'), 
     234                                'concatenateDomain'                     => $this->current_config['expressoAdmin_concatenateDomain'], 
     235                                'defaultDomain'                         => $this->current_config['expressoAdmin_defaultDomain'], 
    231236                                'lang_group_users'                      => lang('Group users'), 
    232237                                'lang_applications'                     => lang('Applications'), 
     
    239244                                'disabled_samba'                        => 'disabled', 
    240245                                'display_samba_options'         => $this->current_config['expressoAdmin_samba_support'] == 'true' ? '' : '"display:none"', 
     246                                'disable_email_groups'          => $this->functions->check_acl($account_lid,'edit_email_groups') ? '' : 'disabled', 
    241247                                'sambadomainname_options'       => $sambadomainname_options, 
    242248                                'back_url'                                      => $GLOBALS['phpgw']->link('/index.php','menuaction=expressoAdmin1_2.uigroups.list_groups'), 
     
    338344                                'lang_org'                                      => lang('Organizations'), 
    339345                                'lang_group_name'                       => lang('group name'), 
     346                                'lang_description'                      => lang('Description'), 
     347                                'lang_email'                            => lang('E-mail'), 
    340348                                'lang_group_users'                      => lang('Group users'), 
    341349                                'lang_applications'                     => lang('Applications'), 
     
    347355                                'cn'                                            => $group_info['cn'], 
    348356                                'user_count'                            => $user_count, 
     357                                'email'                                         => $group_info['email'], 
    349358                                'description'                           => $group_info['description'], 
    350359                                'apps'                                          => $apps, 
    351360                                'use_attrs_samba_checked'       => $group_info['sambaGroup'] ? 'CHECKED' : '', 
    352361                                'disabled_samba'                        => $group_info['sambaGroup'] ? '' : 'disabled', 
     362                                'disable_email_groups'          => $this->functions->check_acl($account_lid,'edit_email_groups') ? '' : 'disabled', 
    353363                                'sambadomainname_options'       => $sambadomainname_options, 
    354364                                'phpgwaccountvisible_checked'   => $group_info['phpgwaccountvisible'] == '-1' ? 'CHECKED' : '', 
  • trunk/expressoAdmin1_2/inc/class.uimanagers.inc.php

    r32 r46  
    210210                                'lang_edit_groups'                              => lang('Edit groups'), 
    211211                                'lang_delete_groups'                    => lang('Delete groups'), 
     212                                'lang_edit_email_attribute_from_the_groups'     =>      lang('Edit email attribute from the groups'), 
    212213                                'lang_change_user_password'             => lang('Change users password'), 
    213214                                'lang_change_users_quote'               => lang('Change users quote'), 
     
    337338                                $_POST['edit_groups']                   = $acl['edit_groups']; 
    338339                                $_POST['delete_groups']                 = $acl['delete_groups']; 
     340                                $_POST['edit_email_groups']             = $acl['edit_email_groups']; 
    339341                                $_POST['change_users_password'] = $acl['change_users_password']; 
    340342                                $_POST['change_users_quote']    = $acl['change_users_quote']; 
     
    453455                                'lang_add_groups'                               => lang('Add groups'), 
    454456                                'lang_edit_groups'                              => lang('Edit groups'), 
    455                                 'lang_delete_groups'                    => lang('Delete groups'),                                
     457                                'lang_delete_groups'                    => lang('Delete groups'), 
     458                                'lang_edit_email_attribute_from_the_groups'     =>      lang('Edit email attribute from the groups'), 
    456459                                'lang_change_user_password'             => lang('Change users password'), 
    457460                                'lang_change_users_quote'               => lang('Change users quote'), 
     
    483486                                'edit_groups'                                   => $_POST['edit_groups'] != '' ? 'checked' : '', 
    484487                                'delete_groups'                                 => $_POST['delete_groups'] != '' ? 'checked' : '', 
     488                                'edit_email_groups'                             => $_POST['edit_email_groups'] != '' ? 'checked' : '', 
    485489                                'change_users_password'                 => $_POST['change_users_password'] != '' ? 'checked' : '', 
    486490                                'change_users_quote'                    => $_POST['change_users_quote'] != '' ? 'checked' : '', 
     
    561565                                if ($num_registros != 0) 
    562566                                { 
    563                                         $_POST['error_messages'] = lang('Este Gerente neste contexto já exite !!'); 
     567                                        $_POST['error_messages'] = lang('Este Gerente, neste contexto já exite !!'); 
    564568                                        $this->add_managers(); 
    565569                                        return; 
  • trunk/expressoAdmin1_2/inc/class.uisectors.inc.php

    r33 r46  
    6060                        $p->set_block('sectors','row_empty','row_empty'); 
    6161                         
     62                        //$sectors_info = $this->functions->get_sectors_list($manager_context); 
     63                        //_debug_array($sectors_info); 
    6264                        $sectors_info = $this->functions->get_sectors_list($manager_context); 
    63                         //_debug_array($sectors_info); 
    6465                         
    6566                        $var = Array( 
     
    9495                                } 
    9596 
    96                                 foreach($sectors_info as $sector) 
     97                                foreach($sectors_info as $context=>$sector) 
    9798                                { 
    9899                                        $tr_color = $this->nextmatchs->alternate_row_color($tr_color); 
    99100                                         
    100                                         if ($sector->sector_level == 1) 
    101                                         { 
    102                                                 $sector->sector_name = '+'.$sector->sector_name; 
    103                                         } 
    104                                         else 
    105                                         { 
    106                                                 for ($i=1; $i < $sector->sector_level; $i++) 
    107                                                         $sector->sector_name = '----'.$sector->sector_name; 
    108                                         } 
    109                                          
    110101                                        $var = Array( 
    111102                                                'tr_color'    => $tr_color, 
    112                                                 'sector_name'  => (!$sector->sector_name?'&nbsp;':$sector->sector_name), 
    113                                                 'add_link' => $this->row_action('add','sector',$sector->sector_context) 
     103                                                'sector_name'  => $sector, 
     104                                                'add_link' => $this->row_action('add','sector',$context) 
    114105                                        ); 
    115106                                        $p->set_var($var); 
     
    117108                                        if ($can_edit) 
    118109                                        { 
    119                                                 $p->set_var('edit_link',$this->row_action('edit','sector',$sector->sector_context)); 
     110                                                $p->set_var('edit_link',$this->row_action('edit','sector',$context)); 
    120111                                        } 
    121112                                        else 
     
    126117                                        if ($can_delete) 
    127118                                        { 
    128                                                 $p->set_var('delete_link',$this->row_action('delete','sector',$sector->sector_context)); 
     119                                                $p->set_var('delete_link',$this->row_action('delete','sector',$context)); 
    129120                                        } 
    130121                                        else 
  • trunk/expressoAdmin1_2/inc/class.user.inc.php

    r33 r46  
    8181                                $user_info['uidnumber']                                 = $id; 
    8282                                $user_info['userPassword']                              = '{md5}' . base64_encode(pack("H*",md5($params['password1']))); 
    83                          
     83                                 
     84                                // Gerenciar senhas RFC2617 
     85                                if ($this->current_config['expressoAdmin_userPasswordRFC2617'] == 'true') 
     86                                { 
     87                                        $realm          = $this->current_config['expressoAdmin_realm_userPasswordRFC2617']; 
     88                                        $uid            = $user_info['uid']; 
     89                                        $password       = $params['password1']; 
     90                                        $user_info['userPasswordRFC2617'] = $realm . ':      ' . md5("$uid:$realm:$password"); 
     91                                } 
     92                                 
    8493                                if ($params['phpgwaccountstatus'] == '1') 
    8594                                        $user_info['phpgwAccountStatus'] = 'A'; 
     
    315324                                { 
    316325                                        $ldap_mod_replace['userPassword'] = '{md5}' . base64_encode(pack("H*",md5($new_values['password1']))); 
     326                                         
    317327                                        // Suporte ao SAMBA 
    318328                                        if (($this->current_config['expressoAdmin_samba_support'] == 'true') && ($new_values['userSamba']) && ($new_values['use_attrs_samba'] == 'on')) 
     
    321331                                                $ldap_mod_replace['sambaNTPassword'] = exec('/home/expressolivre/mkntpwd -N '.$new_values['password1']); 
    322332                                        } 
     333                                         
     334                                        // Gerenciar senhas RFC2617 
     335                                        if ($this->current_config['expressoAdmin_userPasswordRFC2617'] == 'true') 
     336                                        { 
     337                                                $realm          = $this->current_config['expressoAdmin_realm_userPasswordRFC2617']; 
     338                                                $uid            = $new_values['uid']; 
     339                                                $password       = $new_values['password1']; 
     340                                                $passUserRFC2617 = $realm . ':      ' . md5("$uid:$realm:$password"); 
     341                                                 
     342                                                if ($old_values['userPasswordRFC2617'] != '') 
     343                                                        $ldap_mod_replace['userPasswordRFC2617'] = $passUserRFC2617; 
     344                                                else 
     345                                                        $ldap_add['userPasswordRFC2617'] = $passUserRFC2617; 
     346                                        } 
     347                                         
    323348                                        $this->db_functions->write_log("alterado password do usuario",'',$dn,'',''); 
    324349                                } 
  • trunk/expressoAdmin1_2/js/jscode/groups.js

    r33 r46  
    4242                document.forms[0].description.focus(); 
    4343                return; 
     44        } 
     45         
     46        var reEmail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; 
     47        if ( (document.forms[0].email.value != '') && (!reEmail.test(document.forms[0].email.value)) ) 
     48        { 
     49                alert("Campo E-mail não é válido."); 
     50                return false; 
    4451        } 
    4552         
     
    280287function use_samba_attrs(value) 
    281288{ 
    282         document.forms[0].sambadomain.disabled = !value; 
     289        document.forms[0].sambasid.disabled = !value; 
    283290} 
    284291 
     
    312319        } 
    313320} 
     321 
     322function groupEmailSuggestion(concatenateDomain, type) 
     323{ 
     324        if (type != 'create_group') 
     325                return; 
     326         
     327        if (concatenateDomain == 'true') 
     328        { 
     329                var ldap_context = document.forms[0].ufn_ldap_context.value.toLowerCase(); 
     330                var organization_context = document.forms[0].context.value.toLowerCase(); 
     331                var select_orgs = document.getElementById('ea_combo_org_info'); 
     332                 
     333                for(var i=0; i<select_orgs.options.length; i++) 
     334                { 
     335                        if(select_orgs.options[i].selected == true) 
     336                        { 
     337                                var x; 
     338                                var context = ''; 
     339                                select_context = select_orgs.options[i].value.toLowerCase(); 
     340                                organization_name = organization_context.split(","); 
     341                         
     342                                for (x in organization_name) 
     343                                { 
     344                                        tmp = organization_name[x].split("="); 
     345                                        context += tmp[1] + '.'; 
     346                                } 
     347                        } 
     348                } 
     349                domain_name = document.forms[0].defaultDomain.value; 
     350         
     351                x=context.indexOf(ldap_context,0); 
     352                org_name_par = context.substring(0,(x-1)); 
     353                org_name = org_name_par.split('.'); 
     354                org_name = org_name[org_name.length-1]; 
     355         
     356                if (org_name != '') 
     357                        document.forms[0].email.value = document.forms[0].cn.value + '@' + org_name + '.' + domain_name; 
     358                else 
     359                        document.forms[0].email.value = document.forms[0].cn.value; 
     360        } 
     361        else 
     362        { 
     363                document.forms[0].email.value = document.forms[0].cn.value; 
     364        } 
     365} 
  • trunk/expressoAdmin1_2/setup/setup.inc.php

    r27 r46  
    1212        $setup_info['expressoAdmin1_2']['name']         = 'expressoAdmin1_2'; 
    1313        $setup_info['expressoAdmin1_2']['title']        = 'ExpressoAdmin 1.2'; 
    14         $setup_info['expressoAdmin1_2']['version']      = '1.240'; 
     14        /* Ao incrementar versão, não esquecer de declarar função do tables_update.inc.php*/ 
     15        $setup_info['expressoAdmin1_2']['version']      = '1.24'; 
    1516        $setup_info['expressoAdmin1_2']['app_order']    = 1; 
    1617        $setup_info['expressoAdmin1_2']['tables'][]             = 'phpgw_expressoadmin'; 
  • trunk/expressoAdmin1_2/setup/tables_update.inc.php

    r27 r46  
    99        * option) any later version.                                               * 
    1010        \**************************************************************************/     
    11         $test[] = '1.221'; 
     11        $test[] = '1.24'; 
    1212        function expressoAdmin1_2_upgrade1_221() 
    1313        { 
     
    3030                return $GLOBALS['setup_info']['contactcenter']['currentver']; 
    3131        } 
     32         
     33        function expressoAdmin1_2_upgrade1_24()  
     34        { 
     35                 
     36        } 
    3237?> 
  • trunk/expressoAdmin1_2/templates/default/config.tpl

    r27 r46  
    99 
    1010        <tr><td></td></tr> 
    11  
     11         
     12        <tr class="row_off"> 
     13                <td>{lang_manage_userPasswordRFC2617_attribute}:</td> 
     14                <td> 
     15                        <select name="newsettings[expressoAdmin_userPasswordRFC2617]"> 
     16                                <option value="false" {selected_expressoAdmin_userPasswordRFC2617_false}>{lang_no}</option> 
     17                                <option value="true"  {selected_expressoAdmin_userPasswordRFC2617_true}>{lang_yes}</option> 
     18                        </select>                        
     19                </td> 
     20        </tr> 
    1221        <tr class="row_on"> 
     22                <td>{lang_REALM_for_userPasswordRFC2617_attribute}:</td> 
     23                <td><input name="newsettings[expressoAdmin_realm_userPasswordRFC2617]" value="{value_expressoAdmin_realm_userPasswordRFC2617}" size="15" /></td> 
     24        </tr> 
     25         
     26        <tr class="row_off"> 
    1327                <td>{lang_Manage_SAMBA_attributes}:</td> 
    1428                <td> 
  • trunk/expressoAdmin1_2/templates/default/groups_form.tpl

    r33 r46  
    99                                        <input type="hidden" name="gidnumber"                   value="{gidnumber}"> 
    1010                                        <input type="hidden" name="old_cn"                              value="{cn}"> 
     11                                        <input type="hidden" name="defaultDomain"               value="{defaultDomain}"> 
    1112                                        <input type="hidden" name="ldap_context"                value="{ldap_context}"> 
     13                                        <input type="hidden" name="ufn_ldap_context"    value="{ufn_ldap_context}"> 
    1214                                        <input type="hidden" name="manager_context"             value="{manager_context}"> 
    1315                                         
     
    2224                                                <td width="25%" bgcolor="#DDDDDD"> 
    2325                                                        Organização do Grupo:<br> 
    24                                                         <select name="context" onchange="javascript:sinc_combos_org(this.value, ea_check_allUsers.checked); get_available_sambadomains(this.value, '{type}')">{combo_manager_org}</select><br> 
     26                                                        <select id="ea_combo_org_info" name="context" onchange="javascript:sinc_combos_org(this.value, ea_check_allUsers.checked); get_available_sambadomains(this.value, '{type}')">{combo_manager_org}</select><br> 
    2527                                                        {lang_group_name}: <font color="blue">Ex: grupo-celepar-rh</font> 
    26                                                         <input name="cn" size="35" value="{cn}" autocomplete="off"><br> 
    27                                                         Descrição:<br> 
     28                                                        <input name="cn" size="35" value="{cn}" autocomplete="off" onKeyUp="javascript:groupEmailSuggestion('{concatenateDomain}','{type}')"><br> 
     29                                                        {lang_email}:<br> 
     30                                                        <input name="email" size="60" value="{email}" {disable_email_groups} autocomplete="off"><br> 
     31                                                        {lang_description}:<br> 
    2832                                                        <input name="description" size="60" value="{description}" autocomplete="off"><br> 
    2933                                                        <div id="ea_div_display_samba_options" style={display_samba_options}> 
     
    3842                                                                                <td>Domínio:</td> 
    3943                                                                                <td> 
    40                                                                                         <select {disabled_samba} name="sambadomain" id="ea_combo_sambadomains"> 
     44                                                                                        <select {disabled_samba} name="sambasid" id="ea_combo_sambadomains"> 
    4145                                                                                                {sambadomainname_options} 
    4246                                                                                        </select> 
  • trunk/expressoAdmin1_2/templates/default/managers_form.tpl

    r32 r46  
    7272                                                        <td>{lang_rename_user}:</td> 
    7373                                                        <td><input type="checkbox" name="rename_users" value="8388608" {rename_users}></td> 
     74                                                        <td>{lang_edit_email_attribute_from_the_groups}:</td> 
     75                                                        <td><input type="checkbox" name="edit_email_groups" value="67108864" {edit_email_groups}></td> 
    7476                                                </tr> 
    7577                                                <tr bgcolor="{color_font1}" align='right'> 
Note: See TracChangeset for help on using the changeset viewer.