Changeset 1909


Ignore:
Timestamp:
12/29/09 14:33:30 (14 years ago)
Author:
amuller
Message:

Ticket #597 - Melhoria do FM. melhorias na interface, permissoes

Location:
sandbox/filemanager
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sandbox/filemanager/inc/class.uiconfig.inc.php

    r1905 r1909  
    1919                        'reconstructFolder' => True, 
    2020                        'set_owner' => True, 
     21                        'set_permission' => True, 
    2122                        'renameFolder' => True, 
    2223                        'createFolder' => True, 
     
    8182                        $vars[lang_search]=lang('search'); 
    8283                        $vars[lang_directory]=lang('directory'); 
    83                         $vars[lang_config]=lang('config'); 
     84                        $vars[lang_setowner]=lang('set owner'); 
     85                        $vars[lang_setperm]=lang('set permission'); 
    8486 
    8587                        $t->set_var($vars); 
     
    288290                                 echo "<option value='".$val['account_id']."'>".$val['account_lid']."</option>"; 
    289291                 } 
     292                 function set_permission(){ 
     293                         $GLOBALS['phpgw_info']['flags'] = array 
     294                                 ( 
     295                                         'currentapp'    => 'filemanager', 
     296                                         'noheader'      => True, 
     297                                         'nonavbar' => True, 
     298                                         'nofooter'      => True, 
     299                                         'noappheader'   => True, 
     300                                         'enable_browser_class'  => True 
     301                                 ); 
     302                         $name = $GLOBALS['phpgw']->db->db_addslashes(base64_decode($_GET['dir'])); 
     303                         $perms = ($_GET['perms'])*1; 
     304                         $owner = ($_GET['owner'])*1; 
     305                         $dirs=explode('/',$name); 
     306                         $GLOBALS['phpgw']->db->query('SELECT owner_id  from phpgw_vfs  WHERE directory = \'/'.$dirs[1].'\' and name=\''.$dirs[2].'\' LIMIT 1',__LINE__,__FILE__); 
     307                         if ($GLOBALS['phpgw']->db->next_record()){ 
     308                                 $val = $GLOBALS['phpgw']->db->row(); 
     309                                 $owner_id = $val['owner_id']; 
     310                         } 
     311 
     312                         $query = "SELECT count(*) FROM phpgw_acl WHERE acl_appname = 'filemanager' and acl_account = '".$owner_id."' and acl_location='".$owner."'"; 
     313                         if ($GLOBALS['phpgw']->db->query($query) && $GLOBALS['phpgw']->db->next_record()) 
     314                                 $val = $GLOBALS['phpgw']->db->row(); 
     315                         else 
     316                         { 
     317                                 echo $GLOBALS['phpgw']->db->error; 
     318                                 return false; 
     319                         } 
     320                         if ($val['count'] == '1') 
     321                                $GLOBALS['phpgw']->db->query("UPDATE phpgw_acl SET acl_rights = ".$perms." where acl_appname = 'filemanager' and acl_account = '".$owner_id."' AND acl_location = '".$owner."'",__LINE__,__FILE__); 
     322                         else 
     323                                 $GLOBALS['phpgw']->db->query("INSERT INTO phpgw_acl values('filemanager','".$owner."','".$owner_id."',".$perms.")",__LINE__,__FILE__); 
     324                         if ($GLOBALS['phpgw']->db->Error) 
     325                                 echo "Erro"; 
     326                         else 
     327                         { 
     328                                echo lang('entry updated sucessfully'); 
     329                         } 
     330                         return; 
     331                 } 
     332         
     333 
    290334                 function set_owner(){ 
    291335                         $GLOBALS['phpgw_info']['flags'] = array 
  • sandbox/filemanager/inc/hook_admin.inc.php

    r1905 r1909  
    2828                'Folders management' => $GLOBALS['phpgw']->link('/index.php','menuaction='.$appname.'.uiconfig.folders'), 
    2929                'Quota management' => $GLOBALS['phpgw']->link('/index.php','menuaction='.$appname.'.uiconfig.quota'), 
    30                 'Groups and users' => $GLOBALS['phpgw']->link('/index.php','menuaction='.$appname.'.uiconfig.groups_users') 
     30                'Permissions of groups and users' => $GLOBALS['phpgw']->link('/index.php','menuaction='.$appname.'.uiconfig.groups_users') 
    3131 
    3232        ); 
  • sandbox/filemanager/js/config.js

    r1905 r1909  
    66        cExecute('/index.php?menuaction=filemanager.uiconfig.load_quota&name='+base64_encode(el.value),loadq_handler); 
    77} 
     8 
    89function set_owner(){ 
    910        var dirName = document.getElementById('search1').value; 
    1011        var ownerName = document.getElementById('search2').value; 
    1112        cExecute('/index.php?menuaction=filemanager.uiconfig.set_owner&dir='+base64_encode(dirName)+'&owner='+ownerName,alert); 
     13} 
     14 
     15function set_permission(){ 
     16        var dirName = document.getElementById('search1').value; 
     17        var ownerName = document.getElementById('search2').value; 
     18        var perms=new Array("egw_private","egw_delete","egw_edit","egw_add","egw_read"); 
     19        permission = 0; 
     20        for (val in perms) 
     21        { 
     22                permission = permission*2; 
     23                if(document.getElementById(perms[val]).checked) 
     24                        permission += 1; 
     25        } 
     26 
     27        cExecute('/index.php?menuaction=filemanager.uiconfig.set_permission&dir='+base64_encode(dirName)+'&perms='+permission+'&owner='+ownerName,alert); 
    1228} 
    1329function save_quota(){ 
  • sandbox/filemanager/templates/default/config_owner.tpl

    r1905 r1909  
    1919                </tr> 
    2020                <tr> 
     21                                <td>&nbsp;</td> 
     22                                <td>&nbsp;</td> 
     23                                <td>&nbsp;</td> 
     24                </tr> 
     25                <tr> 
    2126                        <td> 
    2227                                <b>{lang_search}</b></td> 
    2328                        <td> 
    24                                 <input onkeyup="search_user(this)" size="30" type="text" value="" /></td> 
     29                                <input onkeyup="search_user(this)" size="30" type="text" value="" /> 
     30                        </td> 
    2531                        <td> 
    2632                                &nbsp;</td> 
     
    2935                        <td> 
    3036                                <b>{lang_users_and_groups}</b></td> 
    31                         <td> 
     37                        <td valign="top"> 
    3238                                <select id="search2" size="5" style="width: 200px;"></select> </td> 
    3339                        <td> 
    34                                 &nbsp;</td> 
     40                        <table border="0"> 
     41                                <tbody><tr> 
     42                                        <td><input name="checkAttr" id="egw_read" type="checkbox"></td> 
     43                                        <td>Read</td> 
     44                                </tr> 
     45                                <tr> 
     46 
     47                                        <td><input name="checkAttr" id="egw_add" type="checkbox"></td> 
     48                                        <td>Add</td> 
     49                                </tr> 
     50                                <tr> 
     51                                        <td><input name="checkAttr" id="egw_edit" type="checkbox"></td> 
     52                                        <td>Edit</td> 
     53                                </tr> 
     54                                <tr> 
     55                                        <td><input name="checkAttr" id="egw_delete" type="checkbox"></td> 
     56 
     57                                        <td>Delete</td> 
     58                                </tr> 
     59                                <tr> 
     60                                        <td><input name="checkAttr" id="egw_private" type="checkbox"></td> 
     61                                        <td>Private</td> 
     62                                </tr> 
     63                        </tbody></table> 
     64                        </td> 
    3565                </tr> 
    3666                <tr> 
    3767                        <td> 
     68                        </td> 
    3869                        <td> 
    39                                 <input onclick="set_owner()" type="button" value="{lang_config}" /> 
     70                                <input onclick="set_owner()" type="button" value="{lang_setowner}" /> 
     71                                <input onclick="set_permission()" type="button" value="{lang_setperm}" /> 
    4072                        </td> 
    4173                        <td> 
Note: See TracChangeset for help on using the changeset viewer.