Changeset 27 for trunk/expressoAdmin1_2


Ignore:
Timestamp:
05/25/07 17:50:27 (17 years ago)
Author:
niltonneto
Message:

* empty log message *

Location:
trunk/expressoAdmin1_2
Files:
4 added
21 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoAdmin1_2/docs/change_log.txt

    r24 r27  
    565608/05/2007 
    5757- Melhorado performance ao editar listas e grupos. 
     58 
     5922/05/2007 - [1.240] 
     60- Criado possibilidade de administrar diversos domínios samba 
  • trunk/expressoAdmin1_2/inc/class.bocomputers.inc.php

    r2 r27  
    5959                        $computer_info['sambaPwdLastSet']               = strtotime("now"); 
    6060                        $computer_info['sambaPwdMustChange']    = '2147483647'; 
    61                         $computer_info['sambaSID']                              = $current_config['expressoAdmin_sambaSID'] . '-' . ((2 * $id)+1000); 
     61                        $computer_info['sambasid']                              = $_POST['sambasid'] . '-' . ((2 * (int)$id)+1000); 
    6262                         
    6363                        /* Trust Account */ 
     
    140140                                $computer_mod_replace['sambaNTPassword']        = exec('/home/expressolivre/mkntpwd -L '.$_POST['computer_password']); 
    141141                        } 
     142 
     143                        if ($_POST['sambasid'] != $_POST['old_sambasid']) 
     144                        { 
     145                                $computer_mod_replace['sambasid'] = $_POST['sambasid'] . '-' . ((2 * (int)$_POST['uidnumber'])+1000); 
     146                        } 
     147 
    142148                         
    143149                        if (count($computer_mod_add) != 0) 
  • trunk/expressoAdmin1_2/inc/class.bomanagers.inc.php

    r2 r27  
    4141                        'set_user_default_password'     => $_POST['set_user_default_password'], 
    4242                        'edit_sambausers_attributes'=> $_POST['edit_sambausers_attributes'], 
     43                        'edit_sambadomains'                     => $_POST['edit_sambadomains'], 
    4344                        'add_email_lists'                       => $_POST['add_maillists'], 
    4445                        'edit_email_lists'                      => $_POST['edit_maillists'], 
     
    6162                        $acl = $acl + $manager['add_groups'] + $manager['edit_groups'] + $manager['delete_groups']; 
    6263                        $acl = $acl + $manager['change_users_password'] + $manager['change_users_quote'] + $manager['set_user_default_password']; 
    63                         $acl = $acl + $manager['edit_sambausers_attributes']; 
     64                        $acl = $acl + $manager['edit_sambausers_attributes'] + $manager['edit_sambadomains']; 
    6465                        $acl = $acl + $manager['add_email_lists'] + $manager['edit_email_lists'] + $manager['delete_email_lists']; 
    6566                        $acl = $acl + $manager['create_sectors'] + $manager['edit_sectors'] + $manager['delete_sectors'] + $manager['manage_wf_sectors'] + $manager['view_global_sessions']; 
     
    7980                                $GLOBALS['phpgw']->db->query($sql); 
    8081                        } 
    81                          
    82                         // Adiciona usuário na ACL do expressoadmin 
    83                         /* 
    84                         $accounts = CreateObject('phpgwapi.accounts'); 
    85                         $manager_id = $accounts->name2id($_POST['manager_lid']); 
    86                         $sql = "INSERT INTO phpgw_acl (acl_appname, acl_location, acl_account, acl_rights) values ('expressoadmin','run','" . $manager_id . "','1')"; 
    87                         $GLOBALS['phpgw']->db->query($sql); 
    88                         */ 
    8982                         
    9083                        //Retorna ao list managers 
     
    119112                        'set_user_default_password'     => $_POST['set_user_default_password'], 
    120113                        'edit_sambausers_attributes'=> $_POST['edit_sambausers_attributes'], 
     114                        'edit_sambadomains'                     => $_POST['edit_sambadomains'], 
    121115                        'add_email_lists'                       => $_POST['add_maillists'], 
    122116                        'edit_email_lists'                      => $_POST['edit_maillists'], 
     
    139133                        $acl = $acl + $manager['add_groups'] + $manager['edit_groups'] + $manager['delete_groups']; 
    140134                        $acl = $acl + $manager['change_users_password'] + $manager['change_users_quote'] + $manager['set_user_default_password']; 
    141                         $acl = $acl + $manager['edit_sambausers_attributes']; 
     135                        $acl = $acl + $manager['edit_sambausers_attributes'] + $manager['edit_sambadomains']; 
    142136                        $acl = $acl + $manager['add_email_lists'] + $manager['edit_email_lists'] + $manager['delete_email_lists']; 
    143137                        $acl = $acl + $manager['create_sectors'] + $manager['edit_sectors'] + $manager['delete_sectors'] + $manager['manage_wf_sectors'] + $manager['view_global_sessions']; 
  • trunk/expressoAdmin1_2/inc/class.db_functions.inc.php

    r13 r27  
    521521                return $availableApps; 
    522522        } 
     523         
     524        function get_sambadomains_list() 
     525        { 
     526                $query = "SELECT * FROM phpgw_expressoadmin_samba ORDER by samba_domain_name ASC";  
     527                $this->db->query($query); 
     528                while($this->db->next_record()) 
     529                        $result[] = $this->db->row(); 
     530                return $result; 
     531        } 
     532         
     533        function exist_domain_name_sid($sambadomainname, $sambasid) 
     534        { 
     535                $query = "SELECT * FROM phpgw_expressoadmin_samba WHERE samba_domain_name='$sambadomainname' OR samba_domain_sid='$sambasid'";  
     536                $this->db->query($query); 
     537                while($this->db->next_record()) 
     538                        $result[] = $this->db->row(); 
     539                 
     540                if (count($result) > 0) 
     541                        return true; 
     542                else 
     543                        return false; 
     544        } 
     545         
     546        function delete_sambadomain($sambadomainname) 
     547        { 
     548                $this->db->query("DELETE FROM phpgw_expressoadmin_samba WHERE samba_domain_name='$sambadomainname'"); 
     549                return; 
     550        } 
     551         
     552        function add_sambadomain($sambadomainname, $sambasid) 
     553        { 
     554                $sql = "INSERT INTO phpgw_expressoadmin_samba (samba_domain_name, samba_domain_sid) VALUES('$sambadomainname','$sambasid')"; 
     555                $this->db->query($sql); 
     556                return; 
     557        } 
    523558} 
    524559?> 
  • trunk/expressoAdmin1_2/inc/class.functions.inc.php

    r23 r27  
    7878                                                return true; 
    7979                                        break; 
     80                                case edit_sambadomains: 
     81                                        if ($array_acl[edit_sambadomains]) 
     82                                                return true; 
     83                                        break; 
    8084                                 
    8185                                case list_groups: 
     
    201205                        $array_acl['set_user_default_password'] = $acl & 524288; 
    202206                        $array_acl['edit_sambausers_attributes'] = $acl & 32768; 
     207                        $array_acl['edit_sambadomains'] = $acl & 16777216; 
    203208                        $array_acl['add_maillists'] = $acl & 256; 
    204209                        $array_acl['edit_maillists'] = $acl & 512; 
  • trunk/expressoAdmin1_2/inc/class.ldap_functions.inc.php

    r24 r27  
    640640                        $result['sambalogonscript'] = $entry[0]['sambalogonscript'][0]; 
    641641                        $result['homedirectory'] = $entry[0]['homedirectory'][0]; 
     642                        $a_tmp = explode("-", $entry[0]['sambasid'][0]); 
     643                        array_pop($a_tmp); 
     644                        $result['sambasid'] = implode("-", $a_tmp); 
    642645                } 
    643646                 
     
    11601163        function rename_departmentnumber($old_dp, $new_dp) 
    11611164        { 
    1162                  
    11631165                $return['status'] = true; 
    1164                  
    11651166                 
    11661167                $justthese = array("dn"); 
     
    11831184                return $return; 
    11841185        } 
     1186         
     1187        function add_sambadomain($sambadomainname, $sambasid, $context) 
     1188        { 
     1189                $result = array(); 
     1190                 
     1191                $dn                                                             = "sambaDomainName=$sambadomainname,$context"; 
     1192                $entry['sambaSID']                                      = $sambasid; 
     1193                $entry['objectClass']                           = 'sambaDomain'; 
     1194                $entry['sambaAlgorithmicRidBase']       = '1000'; 
     1195                $entry['sambaDomainName']                       = $sambadomainname; 
     1196                 
     1197                if (!@ldap_add ( $this->ldap, $dn, $entry )) 
     1198                { 
     1199                        $return['status'] = false; 
     1200                        $return['msg'] = "Erro na funcao ldap_functions->add_sambadomain ($dn).\nRetorno do servidor: " . ldap_error($this->ldap); 
     1201                } 
     1202                else 
     1203                        $return['status'] = true; 
     1204                 
     1205                return $return; 
     1206        } 
     1207         
     1208        function delete_sambadomain($sambadomainname) 
     1209        { 
     1210                $return['status'] = true; 
     1211                $filter="(sambaDomainName=$sambadomainname)"; 
     1212                $search = ldap_search($this->ldap, $GLOBALS['phpgw_info']['server']['ldap_context'], $filter); 
     1213            $entry = ldap_get_entries($this->ldap, $search); 
     1214          
     1215                if ($entry['count'] != 0) 
     1216            { 
     1217                        $dn = $entry[0]['dn']; 
     1218                         
     1219                        if (!@ldap_delete($this->ldap, $dn)) 
     1220                        { 
     1221                                $return['status'] = false; 
     1222                                $return['msg'] .= "Erro em ldap_funcitons->delete_sambadomain ($sambadomainname).\nRetorno do servidor: " . ldap_error($this->ldap); 
     1223                        } 
     1224            } 
     1225             
     1226                return $return; 
     1227        } 
    11851228} 
    11861229?> 
  • trunk/expressoAdmin1_2/inc/class.socomputers.inc.php

    r2 r27  
    7171                        $computer_data['context'] = substr($computer_data['context'],0,(strlen($computer_data['context']) - 1)); 
    7272                         
     73                        $a_tmp = explode("-", $result[0]['sambasid'][0]); 
     74                        array_pop($a_tmp); 
     75                        $computer_data['sambasid'] = implode("-", $a_tmp); 
     76                         
    7377                        return $computer_data; 
    7478                } 
  • trunk/expressoAdmin1_2/inc/class.uiaccounts.inc.php

    r23 r27  
    206206                        $applications_list = $this->functions->make_list_app($manager_lid, $manager_context, $app_list); 
    207207 
     208                        // Cria combo de dominio samba 
     209                        if ($this->current_config['expressoAdmin_samba_support'] == 'true') 
     210                        { 
     211                                $a_sambadomains = $this->db_functions->get_sambadomains_list(); 
     212                                $sambadomainname_options = ''; 
     213                                if (count($a_sambadomains)) 
     214                                { 
     215                                        foreach ($a_sambadomains as $a_sambadomain) 
     216                                        { 
     217                                                $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "'>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     218                                        } 
     219                                } 
     220                        } 
     221                         
    208222                        // Valores default. 
    209223                        $var = Array(  
     
    213227                                'manager_context'               => $manager_context, 
    214228                                'type'                                  => 'create_user', 
    215                                 //'action'                              => $GLOBALS['phpgw']->link('/index.php','menuaction=expressoAdmin1_2.uiaccounts.validade_user_data_add'), 
    216                                 //'action'                              => $GLOBALS['phpgw']->link('/index.php','menuaction=expressoAdmin1_2.boaccounts.create_user'), 
    217229                                'back_url'                              => $GLOBALS['phpgw']->link('/index.php','menuaction=expressoAdmin1_2.uiaccounts.list_users'), 
    218230                                'display_samba_suport'  => $this->current_config['expressoAdmin_samba_support'] == 'true' ? '' : 'display:none', 
     
    285297                                //SAMBA ABA 
    286298                                'lang_samba_config'                                     => lang('Samba Config'), 
    287                                 'lang_use_attrs_samba'                          => 'Usar atributos Samba', 
     299                                'lang_use_attrs_samba'                          => lang('Use samba attributes'), 
     300                                'lang_sambadomain'                                      => lang('Domain'), 
    288301                                'lang_sambaAcctFlags'                           => lang('AcctFlags'), 
    289302                                'lang_sambaLogonScript'                         => lang('Logon Script'), 
     
    292305                                'lang_desactive_user'                           => lang('Samba User Desactive'), 
    293306                                'use_attrs_samba_checked'                       => 'CHECKED', 
     307                                'sambadomainname_options'                       => $sambadomainname_options, 
    294308                                'sambalogonscript'                                      => $this->current_config['expressoAdmin_defaultLogonScript'] != '' ? $this->current_config['expressoAdmin_defaultLogonScript'] : '', 
    295309                                'use_suggestion_in_logon_script'        => $this->current_config['expressoAdmin_defaultLogonScript'] == '' ? 'true' : 'false', 
     
    328342                                $disabled_samba = ''; 
    329343                        } 
     344                        // TOTAIS MENOS O SAMBA 
     345                        if (($this->functions->check_acl($manager_account_lid,'edit_users')) && (!$this->functions->check_acl($manager_account_lid,'edit_sambausers_attributes'))) 
     346                        { 
     347                                $disabled = ''; 
     348                                $disabled_password = ''; 
     349                                $disabled_samba = 'disabled'; 
     350                        } 
    330351                        // TOTAIS 
    331                         if ($this->functions->check_acl($manager_account_lid,'edit_users')) 
     352                        elseif ($this->functions->check_acl($manager_account_lid,'edit_users')) 
    332353                        { 
    333354                                $disabled = ''; 
     
    453474                                $photo_bin = $GLOBALS['phpgw_info']['server']['webserver_url'] . '/expressoAdmin1_2/templates/default/images/photo_celepar.png'; 
    454475                                $disabled_delete_photo = 'disabled'; 
     476                        } 
     477 
     478                        // Cria combo de dominios do samba 
     479                        if ($this->current_config['expressoAdmin_samba_support'] == 'true') 
     480                        { 
     481                                $a_sambadomains = $this->db_functions->get_sambadomains_list(); 
     482                                $sambadomainname_options = ''; 
     483                                if (count($a_sambadomains)) 
     484                                { 
     485                                        foreach ($a_sambadomains as $a_sambadomain) 
     486                                        { 
     487                                                if ($a_sambadomain['samba_domain_sid'] == $user_info['sambasid']) 
     488                                                        $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "' SELECTED>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     489                                                else 
     490                                                        $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "'>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     491                                        } 
     492                                } 
    455493                        } 
    456494 
     
    556594                                //SAMBA ABA 
    557595                                'lang_samba_config'                     => lang('Samba Config'), 
    558                                 'lang_use_attrs_samba'          => 'Usar atributos Samba', 
     596                                'lang_use_attrs_samba'          => lang('Use samba attributes'), 
     597                                'lang_sambadomain'                      => lang('Domain'), 
    559598                                'lang_sambaAcctFlags'           => lang('AcctFlags'), 
    560599                                'lang_sambaLogonScript'         => lang('Logon Script'), 
     
    564603                                 
    565604                                'userSamba'                                     => $user_info['sambaUser'], 
     605                                'sambadomainname_options'       => $sambadomainname_options, 
    566606                                'use_attrs_samba_checked'       => $user_info['sambaUser'] ? 'CHECKED' : '', 
    567607                                'active_user_selected'          => $user_info['sambaaccflags'] == '[U          ]' ? 'selected' : '', 
  • trunk/expressoAdmin1_2/inc/class.uicomputers.inc.php

    r2 r27  
    2626                var $nextmatchs; 
    2727                var $functions; 
     28                var $current_config; 
     29                var $db_functions; 
    2830                         
    2931                function uicomputers() 
     
    3335                        $this->so = $this->bo->so; 
    3436                        $this->functions = $this->bo->functions; 
     37                        $this->db_functions = CreateObject('expressoAdmin1_2.db_functions'); 
     38                         
     39                        $c = CreateObject('phpgwapi.config','expressoAdmin1_2'); 
     40                        $c->read_repository(); 
     41                        $this->current_config = $c->config_data; 
    3542                } 
    3643                 
     
    187194                        $sectors = $this->functions->get_organizations($context, trim(strtolower($_POST['sector_context']))); 
    188195 
     196                        // Cria combo de dominio samba 
     197                        if ($this->current_config['expressoAdmin_samba_support'] == 'true') 
     198                        { 
     199                                $a_sambadomains = $this->db_functions->get_sambadomains_list(); 
     200                                $sambadomainname_options = ''; 
     201                                if (count($a_sambadomains)) 
     202                                { 
     203                                        foreach ($a_sambadomains as $a_sambadomain) 
     204                                        { 
     205                                                $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "'>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     206                                        } 
     207                                } 
     208                        } 
     209 
    189210                        // Seta variaveis utilizadas pelo tpl. 
    190211                        $var = Array( 
     
    200221                                'lang_save'                                             => lang('save'), 
    201222                                'lang_sectors'                                  => lang('Sectors'), 
     223                                'lang_sambadomain'                              => lang('Domain'), 
     224                                 
    202225                                'lang_computer_cn'                              => lang('Computer UID'), 
    203226                                'lang_computer_description'             => lang('Description'), 
     
    211234                                 
    212235                                'display_tr_computer_password'  => $_POST['sambaAcctFlags'] == '[I          ]' ? '' : 'display:none', 
     236 
     237                                'sambadomainname_options'               => $sambadomainname_options, 
    213238 
    214239                                // Retorna os valores, quando da um erro na validação. 
     
    300325                        //O POST esta vazio, oq indica que precisamos recuperar os dados do computador no ldap. 
    301326                        if ($_POST['try_saved'] != 'true') 
    302                         {  
     327                        { 
    303328                                $uidnumber = $_GET['uidnumber']; 
    304329                                $computer_data = $this->so->get_computer_data($uidnumber, $manager_context); 
     
    306331                                // Pega combo das organizações e seleciona um dos setores em caso de um erro na validaçao dos dados. 
    307332                                $sectors = $this->functions->get_organizations($manager_context, trim(strtolower($computer_data['context']))); 
     333 
     334                                // Cria combo de dominios do samba 
     335                                if ($this->current_config['expressoAdmin_samba_support'] == 'true') 
     336                                { 
     337                                        $a_sambadomains = $this->db_functions->get_sambadomains_list(); 
     338                                        $sambadomainname_options = ''; 
     339                                        if (count($a_sambadomains)) 
     340                                        { 
     341                                                foreach ($a_sambadomains as $a_sambadomain) 
     342                                                { 
     343                                                        if ($a_sambadomain['samba_domain_sid'] == $computer_data['sambasid']) 
     344                                                                $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "' SELECTED>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     345                                                        else 
     346                                                                $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "'>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     347                                                } 
     348                                        } 
     349                                } 
    308350 
    309351                                // Salva valores antigos 
     
    315357                                        'old_computer_description'              => $computer_data['computer_description'], 
    316358                                        'old_computer_context'                  => $computer_data['context'], 
     359                                        'old_sambasid'                                  => $computer_data['sambasid'], 
    317360 
    318361                                        'row_on'                                                => "#DDDDDD", 
     
    322365                                        'lang_save'                                             => lang('save'), 
    323366                                        'lang_sectors'                                  => lang('Sectors'), 
     367                                        'lang_sambadomain'                              => lang('Domain'), 
    324368                                        'lang_computer_cn'                              => lang('Computer UID'), 
    325369                                        'lang_computer_description'             => lang('Description'), 
     
    337381                                        'computer_description'          => $computer_data['computer_description'], 
    338382                                        'combo_sectors'                         => $sectors, 
     383                                        'sambadomainname_options'       => $sambadomainname_options, 
    339384                                         
    340385                                        // LINKS 
     
    368413                                $sectors = $this->functions->get_organizations($manager_context, trim(strtolower($_POST['sector_context']))); 
    369414                                 
     415                                // Cria combo de dominios do samba 
     416                                if ($this->current_config['expressoAdmin_samba_support'] == 'true') 
     417                                { 
     418                                        $a_sambadomains = $this->db_functions->get_sambadomains_list(); 
     419                                        $sambadomainname_options = ''; 
     420                                        if (count($a_sambadomains)) 
     421                                        { 
     422                                                foreach ($a_sambadomains as $a_sambadomain) 
     423                                                { 
     424                                                        if ($a_sambadomain['samba_domain_sid'] == $_POST['sambasid']) 
     425                                                                $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "' SELECTED>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     426                                                        else 
     427                                                                $sambadomainname_options .= "<option value='" . $a_sambadomain['samba_domain_sid'] . "'>" . $a_sambadomain['samba_domain_name'] . "</option>"; 
     428                                                } 
     429                                        } 
     430                                } 
     431                                 
    370432                                $var = Array( 
    371433                                        // LINKS 
     
    379441                                        'lang_save'                                             => lang('save'), 
    380442                                        'lang_sectors'                                  => lang('Sectors'), 
     443                                        'lang_sambadomain'                              => lang('Domain'), 
    381444                                        'lang_computer_cn'                              => lang('Computer UID'), 
    382445                                        'lang_computer_description'             => lang('Description'), 
     
    398461                                        'computer_description'                  => $_POST['computer_description'], 
    399462                                        'combo_sectors'                                 => $sectors, 
     463                                        'sambadomainname_options'               => $sambadomainname_options, 
    400464                                 
    401465                                        // Valores que devem ser mantidos, aqui sao referenciados como old. 
     
    405469                                        'old_computer_description'              => $_POST['old_computer_description'], 
    406470                                        'old_computer_context'                  => $_POST['old_computer_context'], 
     471                                        'old_sambasid'                                  => $_POST['sambasid'] 
    407472                                ); 
    408473                                $p->set_var($var);               
  • trunk/expressoAdmin1_2/inc/class.uimanagers.inc.php

    r2 r27  
    213213                                'lang_set_user_default_password'=> lang('Set default users password'), 
    214214                                'lang_edit_sambausers_attributes'=> lang('Edit SAMBA users attributes'), 
     215                                'lang_edit_sambadomains'                => lang('Edit SAMBA domains'), 
    215216                                'lang_add_email_lists'                  => lang('Add email lists'), 
    216217                                'lang_edit_email_lists'                 => lang('Edit email lists'), 
     
    237238                                'change_users_quote'                    => $_POST['change_users_quote'] != '' ? 'checked' : '', 
    238239                                'set_user_default_password'             => $_POST['set_user_default_password'] != '' ? 'checked' : '', 
     240                                'edit_sambausers_attributes'    => $_POST['edit_sambausers_attributes'] != '' ? 'checked' : '', 
     241                                'edit_sambadomains'                             => $_POST['edit_sambadomains'] != '' ? 'checked' : '', 
    239242                                'add_maillists'                                 => $_POST['add_maillists'] != '' ? 'checked' : '', 
    240243                                'edit_maillists'                                => $_POST['edit_maillists'] != '' ? 'checked' : '', 
     
    337340                                $_POST['set_user_default_password']     = $acl['set_user_default_password']; 
    338341                                $_POST['edit_sambausers_attributes'] = $acl['edit_sambausers_attributes']; 
     342                                $_POST['edit_sambadomains']     = $acl['edit_sambadomains']; 
    339343                                $_POST['add_maillists']                 = $acl['add_maillists']; 
    340344                                $_POST['edit_maillists']                = $acl['edit_maillists']; 
     
    453457                                'lang_set_user_default_password'=> lang('Set default user password'), 
    454458                                'lang_edit_sambausers_attributes'=> lang('Edit SAMBA users attributes'), 
     459                                'lang_edit_sambadomains'                => lang('Edit SAMBA domains'), 
    455460                                'lang_add_email_lists'                  => lang('Add email lists'), 
    456461                                'lang_edit_email_lists'                 => lang('Edit email lists'), 
     
    480485                                'set_user_default_password'             => $_POST['set_user_default_password'] != '' ? 'checked' : '', 
    481486                                'edit_sambausers_attributes'    => $_POST['edit_sambausers_attributes'] != '' ? 'checked' : '', 
     487                                'edit_sambadomains'                             => $_POST['edit_sambadomains'] != '' ? 'checked' : '', 
    482488                                'add_maillists'                                 => $_POST['add_maillists'] != '' ? 'checked' : '', 
    483489                                'edit_maillists'                                => $_POST['edit_maillists'] != '' ? 'checked' : '', 
  • trunk/expressoAdmin1_2/inc/class.user.inc.php

    r16 r27  
    5858                         
    5959                                // Cria array para incluir no LDAP 
    60                                 $dn = 'uid=' . $params['uid'] . ',' . $params['context'];                        
     60                                $dn = 'uid=' . $params['uid'] . ',' . $params['context'];                
    6161                         
    6262                                $user_info = array(); 
     
    117117                                        { 
    118118                                                $user_info['objectClass'][]             = 'sambaSamAccount'; 
    119                                  
    120119                                                $user_info['loginShell']                        = '/bin/bash'; 
    121                                                 $user_info['sambaSID']                          = $this->current_config['expressoAdmin_sambaSID'] . '-' . ((2 * $id)+1000); 
    122                                                 $user_info['sambaPrimaryGroupSID']      = $this->current_config['expressoAdmin_sambaSID'] . '-' . ((2 * $user_info['gidNumber'])+1001); 
     120 
     121                                                //$user_info['sambaSID']                                = $this->current_config['expressoAdmin_sambaSID'] . '-' . ((2 * $id)+1000); 
     122                                                //$user_info['sambaPrimaryGroupSID']    = $this->current_config['expressoAdmin_sambaSID'] . '-' . ((2 * $user_info['gidNumber'])+1001); 
     123                                                $user_info['sambaSID']                          = $params['sambadomain'] . '-' . ((2 * $id)+1000); 
     124                                                $user_info['sambaPrimaryGroupSID']      = $params['sambadomain'] . '-' . ((2 * $user_info['gidNumber'])+1001); 
     125 
    123126                                                $user_info['sambaAcctFlags']            = $params['sambaacctflags']; 
    124127                         
     
    326329                                        { 
    327330                                                $ldap_mod_replace['homedirectory'] = $new_values['sambahomedirectory']; 
    328                                         $this->db_functions->write_log("alterado homedirectory do usuario",'',$dn,'',''); 
     331                                                $this->db_functions->write_log("alterado homedirectory do usuario",'',$dn,'',''); 
     332                                        } 
     333                                        if ($diff['sambadomain']) 
     334                                        { 
     335                                                $ldap_mod_replace['sambaSID']                           = $diff['sambadomain'] . '-' . ((2 * $old_values['uidnumber'])+1000); 
     336                                                $ldap_mod_replace['sambaPrimaryGroupSID']       = $diff['sambadomain'] . '-' . ((2 * $old_values['gidnumber'])+1001); 
     337                                                $this->db_functions->write_log("alterado dominio samba do usuario $dn para " . $params['sambadomain'],'',$dn,'',''); 
    329338                                        } 
    330339                                } 
  • trunk/expressoAdmin1_2/index.php

    r16 r27  
    3838                'lang_email_lists'              => lang('Email Lists'), 
    3939                'lang_computers'                => lang('Computers'), 
     40                'lang_sambadomains'             => lang('Samba Domains'), 
    4041                'lang_sectors'                  => lang('Sectors'), 
    4142                'lang_show_sessions'    => lang('Show Sessions'), 
  • trunk/expressoAdmin1_2/js/jscode/users.js

    r13 r27  
    485485                } 
    486486        } 
    487  
    488         document.forms[0].sambaacctflags.disabled = !value; 
    489         document.forms[0].sambalogonscript.disabled = !value; 
    490         document.forms[0].sambahomedirectory.disabled = !value; 
     487         
     488        if (!document.forms[0].use_attrs_samba.disabled) 
     489        { 
     490                document.forms[0].sambaacctflags.disabled = !value; 
     491                document.forms[0].sambadomain.disabled = !value; 
     492                document.forms[0].sambalogonscript.disabled = !value; 
     493                document.forms[0].sambahomedirectory.disabled = !value; 
     494        } 
    491495} 
    492496         
  • trunk/expressoAdmin1_2/setup/setup.inc.php

    r2 r27  
    1212        $setup_info['expressoAdmin1_2']['name']         = 'expressoAdmin1_2'; 
    1313        $setup_info['expressoAdmin1_2']['title']        = 'ExpressoAdmin 1.2'; 
    14         $setup_info['expressoAdmin1_2']['version']      = '1.221'; 
     14        $setup_info['expressoAdmin1_2']['version']      = '1.240'; 
    1515        $setup_info['expressoAdmin1_2']['app_order']    = 1; 
    1616        $setup_info['expressoAdmin1_2']['tables'][]             = 'phpgw_expressoadmin'; 
     
    1818        $setup_info['expressoAdmin1_2']['tables'][]             = 'phpgw_expressoadmin_passwords'; 
    1919        $setup_info['expressoAdmin1_2']['tables'][]             = 'phpgw_expressoadmin_log'; 
     20        $setup_info['expressoAdmin1_2']['tables'][]             = 'phpgw_expressoadmin_samba'; 
    2021        $setup_info['expressoAdmin1_2']['enable']               = 1; 
    2122 
  • trunk/expressoAdmin1_2/setup/tables_current.inc.php

    r2 r27  
    6060                        'ix' => array(), 
    6161                        'uc' => array() 
     62                ), 
     63                 
     64                'phpgw_expressoadmin_samba',array( 
     65                        'fd' => array( 
     66                                'samba_domain_name' => array( 'type' => 'varchar', 'precision' => 50), 
     67                                'samba_domain_sid' => array( 'type' => 'varchar', 'precision' => 100) 
     68                        ), 
     69                        'pk' => array('samba_domain_name'), 
     70                        'fk' => array(), 
     71                        'ix' => array(), 
     72                        'uc' => array() 
    6273                ) 
    6374        ); 
  • trunk/expressoAdmin1_2/templates/default/accounts_form.tpl

    r9 r27  
    274274<div id="tabcontent6" class="inactivetab" style="{display_samba_suport}"> 
    275275        <table width="60%" border="0" cellspacing="4" cellpading="0"> 
    276                 <tr bgcolor={row_off}> 
     276                <tr bgcolor={row_on}> 
    277277                        <td>{lang_use_attrs_samba}:</td> 
    278278                        <td><input {use_attrs_samba_checked} {disabled_samba} name="use_attrs_samba" type="checkbox" id="use_attrs_samba" onChange="javascript:use_samba_attrs(this.checked)"></td> 
    279279                </tr> 
    280                 <tr bgcolor={row_on}> 
     280                <tr bgcolor={row_off}> 
    281281                        <td>{lang_sambaAcctFlags}:</td> 
    282282                        <td> 
     
    287287                        </td> 
    288288                </tr> 
     289                <tr bgcolor={row_on}> 
     290                        <td>{lang_sambadomain}:</td> 
     291                        <td> 
     292                                <select {disabled_samba} name="sambadomain"> 
     293                                        {sambadomainname_options} 
     294                                </select> 
     295                        </td> 
     296                </tr> 
    289297                <tr bgcolor={row_off}> 
    290298                        <td>{lang_sambaLogonScript}:</td> 
    291                         <td><input {disabled_samba} type="text" name="sambalogonscript" autocomplete="off" value="{sambalogonscript}" size=30></td> 
     299                        <td><input {disabled_samba} type="text" name="sambalogonscript" autocomplete="off" value="{sambalogonscript}" size="30"></td> 
    292300                </tr> 
    293301                <tr bgcolor={row_on}> 
    294302                        <td>{lang_sambaHomeDirectory}:</td> 
    295                         <td><input {disabled_samba} type="text" name="sambahomedirectory" autocomplete="off" value="{sambahomedirectory}" size=30></td> 
     303                        <td> 
     304                                <input {disabled_samba} type="text" name="sambahomedirectory" autocomplete="off" value="{sambahomedirectory}" size="30"> 
     305                        </td> 
    296306                </tr> 
    297307        </table> 
  • trunk/expressoAdmin1_2/templates/default/computers_form.tpl

    r2 r27  
    1616                                        <input type="hidden" name="old_computer_sambaAcctFlags" value="{old_computer_sambaAcctFlags}"> 
    1717                                        <input type="hidden" name="old_computer_description" value="{old_computer_description}"> 
     18                                        <input type="hidden" name="old_sambasid" value="{old_sambasid}"> 
    1819                                        <tr> 
    1920                                                <td colspan="2" align="right" bgcolor="{color_bg1}"> 
     
    3738                                                                        </td> 
    3839                                                                </tr>                                                    
     40 
     41                                                                <tr bgcolor={row_off}> 
     42                                                                        <td>{lang_sambadomain}:</td> 
     43                                                                        <td> 
     44                                                                                <select {disabled_samba} name="sambasid"> 
     45                                                                                        {sambadomainname_options} 
     46                                                                                </select> 
     47                                                                        </td> 
     48                                                                </tr> 
    3949                                                                 
    4050                                                                <tr bgcolor={row_off}> 
     
    5666                                                                        </td> 
    5767                                                                </tr> 
     68 
    5869                                                                <tr id="tr_computer_password" bgcolor={row_on} style="{display_tr_computer_password}"> 
    5970                                                                        <td width="25%">{lang_computer_password}:</td> 
     
    6273                                                                        </td> 
    6374                                                                </tr> 
    64                                                                 <tr bgcolor={row_off}> 
     75                                                                <tr bgcolor={row_on}> 
    6576                                                                        <td width="25%">{lang_computer_description}:</td> 
    6677                                                                        <td> 
  • trunk/expressoAdmin1_2/templates/default/config.tpl

    r23 r27  
    1818                        </select>                        
    1919                </td> 
    20         </tr> 
    21         <tr class="row_off"> 
    22                 <td>{lang_SambaSID}:</td> 
    23                 <td><input name="newsettings[expressoAdmin_sambaSID]" value="{value_expressoAdmin_sambaSID}" size="60" /></td> 
    2420        </tr> 
    2521        <tr class="row_on"> 
  • trunk/expressoAdmin1_2/templates/default/index.tpl

    r2 r27  
    3333                </td> 
    3434        </tr>  
     35        <tr style={display_samba_suport}> 
     36                <td width="1%" align="center"> 
     37                        <img src='./templates/default/images/computer.png'> 
     38                </td> 
     39                <td> 
     40                        <a href="../index.php?menuaction=expressoAdmin1_2.uidomains.list_domains">{lang_sambadomains}</a> 
     41                </td> 
     42        </tr>  
    3543        <tr> 
    3644                <td width="1%" align="center"> 
  • trunk/expressoAdmin1_2/templates/default/managers_form.tpl

    r2 r27  
    8585                                                        <td><input type="checkbox" name="set_user_default_password" value="524288" {set_user_default_password}></td> 
    8686                                                </tr> 
     87                                                 
     88                                                <tr><td>&nbsp;</td></tr> 
    8789                                                <tr bgcolor="{color_font1}" align='right'> 
    8890                                                        <td style="{display_samba_suport}">{lang_edit_sambausers_attributes}:</td> 
    8991                                                        <td style="{display_samba_suport}"><input type="checkbox" name="edit_sambausers_attributes" value="32768" {edit_sambausers_attributes}></td> 
     92                                                </tr> 
     93                                                <tr bgcolor="{color_font2}" align='right'> 
     94                                                        <td style="{display_samba_suport}">{lang_edit_sambadomains}:</td> 
     95                                                        <td style="{display_samba_suport}"><input type="checkbox" name="edit_sambadomains" value="16777216" {edit_sambadomains}></td> 
    9096                                                </tr> 
    9197                                                <tr><td>&nbsp;</td></tr> 
Note: See TracChangeset for help on using the changeset viewer.