Get Permissions edit working - Remove hangs
This commit is contained in:
parent
7d7cdf0aed
commit
14eb73098e
@ -251,7 +251,6 @@ sub actual_Table1 {
|
||||
foreach my $share (@shares) {
|
||||
my $sharename = $share->key();
|
||||
my $sharedesc = $share->prop('Name');
|
||||
$c->app->log->info("$sharename : $sharedesc");
|
||||
next if (($share->prop('Hide') || 'no') eq 'yes');
|
||||
my $removable = $share->prop('Removable') || 'yes';
|
||||
my $actionModify = '<a href="sharesd?trt=MODIFY&Selected='.$sharename.'">'.$c->l('sf_Modify').'</a>';
|
||||
@ -459,88 +458,13 @@ sub get_Table3 {
|
||||
|
||||
sub perform_PERMISSIONS {
|
||||
my $c = shift;
|
||||
my $sf_data = shift; #Data hash as parameter
|
||||
my $ret = "";
|
||||
my $db = $cdb; #maybe one of the others
|
||||
my $dbkey = 'ChangeThis';
|
||||
# To make it write to DB as comment, delete this (regex) string in each if statement "TRUE\) \#copy or perform with value: .* e.g."
|
||||
$ret = $c->modify_perm();
|
||||
|
||||
if (! TRUE) #copy or perform with value: writegroup e.g. $db->set_prop($dbkey,'writegroup',$c->param('writegroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writegroup';}
|
||||
if (! TRUE) #copy or perform with value: readgroup e.g. $db->set_prop($dbkey,'readgroup',$c->param('readgroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readgroup';}
|
||||
if (! TRUE) #copy or perform with value: writegroup e.g. $db->set_prop($dbkey,'writegroup',$c->param('writegroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writegroup';}
|
||||
if (! TRUE) #copy or perform with value: readgroup e.g. $db->set_prop($dbkey,'readgroup',$c->param('readgroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readgroup';}
|
||||
if (! TRUE) #copy or perform with value: writegroup e.g. $db->set_prop($dbkey,'writegroup',$c->param('writegroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writegroup';}
|
||||
if (! TRUE) #copy or perform with value: readgroup e.g. $db->set_prop($dbkey,'readgroup',$c->param('readgroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readgroup';}
|
||||
if (! TRUE) #copy or perform with value: writegroup e.g. $db->set_prop($dbkey,'writegroup',$c->param('writegroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writegroup';}
|
||||
if (! TRUE) #copy or perform with value: readgroup e.g. $db->set_prop($dbkey,'readgroup',$c->param('readgroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readgroup';}
|
||||
if (! TRUE) #copy or perform with value: writegroup e.g. $db->set_prop($dbkey,'writegroup',$c->param('writegroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writegroup';}
|
||||
if (! TRUE) #copy or perform with value: readgroup e.g. $db->set_prop($dbkey,'readgroup',$c->param('readgroup'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readgroup';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
if (! TRUE) #copy or perform with value: writeuser e.g. $db->set_prop($dbkey,'writeuser',$c->param('writeuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for writeuser';}
|
||||
if (! TRUE) #copy or perform with value: readuser e.g. $db->set_prop($dbkey,'readuser',$c->param('readuser'),type=>'service'))
|
||||
{$ret .= 'Perform/save failed for readuser';}
|
||||
#my $sf_data = shift; #Data hash as parameter
|
||||
#my $ret = "";
|
||||
#my $db = $cdb; #maybe one of the others
|
||||
#my $dbkey = 'ChangeThis';
|
||||
|
||||
if ($ret eq "") {$ret = 'ok';}
|
||||
return $ret;
|
||||
}
|
||||
@ -549,9 +473,6 @@ sub get_Table3 {
|
||||
my $c = shift;
|
||||
my $sf_data = shift; #Data hash as parameter
|
||||
my $ret = "";
|
||||
my $db = $cdb; #maybe one of the others
|
||||
my $dbkey = 'ChangeThis';
|
||||
# To make it write to DB as comment, delete this (regex) string in each if statement "TRUE\) \#copy or perform with value: .* e.g."
|
||||
$ret = $c->remove_share();
|
||||
if ($ret eq "") {$ret = 'ok';}
|
||||
return $ret;
|
||||
@ -680,22 +601,31 @@ sub modify_perm {
|
||||
|
||||
my $encryption = $acct->prop('Encryption') || 'disabled';
|
||||
|
||||
my $WriteGroups = join(",", $c->param('writegroup'));
|
||||
my $WriteUsers = join(",", $c->param('writeuser'));
|
||||
|
||||
my @selected = @{$c->every_param('panelAccess')};
|
||||
my $AdminPanels = join(',', @selected);
|
||||
|
||||
my @selectedwritegroups = @{$c->every_param('writegroup')};
|
||||
my $WriteGroups = join(",", @selectedwritegroups);
|
||||
my @selectedwriteusers = @{$c->every_param('writeuser')};
|
||||
my $WriteUsers = join(",", @selectedwriteusers);
|
||||
|
||||
my @CleanReadGroups = ();
|
||||
my @CleanReadUsers = ();
|
||||
|
||||
# EncFS doesn't expose underlying ACLs
|
||||
# So, just remove any read only groups
|
||||
# Read Only is not supported with encryption
|
||||
my @selectedreadgroups = @{$c->every_param('readgroup')};
|
||||
my @selectedreadusers = @{$c->every_param('readuser')};
|
||||
|
||||
if ($encryption ne 'enabled'){
|
||||
# No need to have read access if write is already granted
|
||||
foreach my $group ($c->param('readgroup')){
|
||||
push (@CleanReadGroups, $group) unless (grep { $_ eq $group } $c->param('writegroup'));
|
||||
foreach my $group (@selectedreadgroups){
|
||||
push (@CleanReadGroups, $group) unless (grep { $_ eq $group } @selectedwritegroups);
|
||||
}
|
||||
foreach my $user ($c->param('readuser')){
|
||||
push (@CleanReadUsers, $user) unless (grep { $_ eq $user } $c->param('writeuser'));
|
||||
foreach my $user (@selectedreadusers){
|
||||
push (@CleanReadUsers, $user) unless (grep { $_ eq $user } @selectedwriteusers);
|
||||
}
|
||||
}
|
||||
my $ReadGroups = join(",",@CleanReadGroups);
|
||||
@ -716,7 +646,7 @@ sub modify_perm {
|
||||
else {
|
||||
return $c->l("sf_ERROR_WHILE_MODIFYING_SHARE");
|
||||
}
|
||||
return undef;
|
||||
return "";
|
||||
}
|
||||
|
||||
# Remove a share
|
||||
|
@ -9,14 +9,14 @@
|
||||
'sf_Modify' => 'Modify',
|
||||
'sf_dynamic' => 'Dynamic',
|
||||
'sf_description' => 'Description',
|
||||
'sf_The_following_settings_control_the' => 'The following settings control the access of this shared folder using the HTTP/HTTPS protocol',
|
||||
'sf_Create,_modify,_or_remove_shared' => 'create modify Or remove shared folders',
|
||||
'sf_The_following_settings_control_the_HTTP' => 'The following settings control the access of this shared folder using the HTTP/HTTPS protocol',
|
||||
'sf_Create,_modify,_or_remove_shared' => 'Create Modify or Remove shared folders',
|
||||
'sf_Remove' => 'Remove',
|
||||
'sf_httpaccess' => 'Httpaccess',
|
||||
'sf_httpaccess' => 'HTTP access',
|
||||
'sf_readuser' => 'reader',
|
||||
'sf_Cancel' => 'Cancel',
|
||||
'sf_All_files_belonging_to_this' => 'All files belonging to this shared folder will be deleted',
|
||||
'sf_smbaccess' => 'Smbaccess',
|
||||
'sf_smbaccess' => 'SMB access',
|
||||
'sf_You_can_use_this_matrix' => 'You can use this matrix to define groups and users access permissions',
|
||||
'sf_webdav' => 'Webdav',
|
||||
'sf_Create_a_new_shared_folder' => 'Create a new shared folder',
|
||||
@ -26,16 +26,16 @@
|
||||
'sf_Shared_Folders' => 'Shared Folders',
|
||||
'sf_MODIFY_panel_action_was_successful' => 'MODIFY panel action was successful',
|
||||
'sf_indexes' => 'Indexes',
|
||||
'sf_Are_you_sure_you_wish' => 'Are you sure you wish to remove it ?',
|
||||
'sf_Are_you_sure_you_wish' => 'Are you sure you wish to remove it ? Use BACK in your browser if you wish to retain the share.',
|
||||
'sf_Actionm' => 'action',
|
||||
'sf_writeuser' => 'Writeuser',
|
||||
'sf_LIST_panel_action_was_successful' => 'LIST panel action was successful',
|
||||
'sf_Remove_shared_folder' => 'Remove shared folder',
|
||||
'sf_PERMISSIONS_panel_action_was_successful' => 'PERMISSIONS panel action was successful',
|
||||
'sf_Manage_shared-folders_settings:' => 'Manage shared-folders settings',
|
||||
'sf_You_can_remove_any_shared' => 'You can remove any shared folder by clicking on the corresponding command next to the shared folder',
|
||||
'sf_Manage_shared-folders_settings:' => 'Manage Shared Folder settings',
|
||||
'sf_You_can_remove_any_shared' => 'You can remove or edit any shared folder by clicking on the corresponding action',
|
||||
'sf_APPLY' => 'Apply',
|
||||
'sf_requireSSL' => 'requires',
|
||||
'sf_requireSSL' => 'Require SSL',
|
||||
'sf_Groups' => 'Groups',
|
||||
'sf_Save' => 'Save',
|
||||
'sf_Actionp' => 'action',
|
||||
@ -43,8 +43,8 @@
|
||||
'sf_Name' => 'Name',
|
||||
'sf_Read_Only' => 'Read Only',
|
||||
'sf_retention' => 'Retention',
|
||||
'sf_Access_right_management' => 'Access right management',
|
||||
'sf_Access_right_management' => 'Access rights management',
|
||||
'sf_Read_/_Write' => 'Read / Write',
|
||||
'sf_Create_or_modify_a_shared' => 'Create or modify a shared folder',
|
||||
'sf_The_following_settings_control_the' => 'The following settings control the access of this shared folder from the local network Using the SMB/CIFS protocol',
|
||||
'sf_The_following_settings_control_the_SMB' => 'The following settings control access to this shared folder from the local network Using the SMB/CIFS protocol',
|
||||
'sf_recyclebin' => 'Recyclebin',
|
@ -50,7 +50,7 @@
|
||||
<br></span></p>
|
||||
|
||||
<p class='paragraph para14'>
|
||||
%=l('sf_The_following_settings_control_the')
|
||||
%=l('sf_The_following_settings_control_the_SMB')
|
||||
</p>
|
||||
|
||||
<p><span class=label>
|
||||
@ -78,7 +78,7 @@
|
||||
<br></span> </p>
|
||||
|
||||
<p class='paragraph para2'>
|
||||
%=l('sf_The_following_settings_control_the')
|
||||
%=l('sf_The_following_settings_control_the_HTTP')
|
||||
</p>
|
||||
|
||||
<p><span class=label>
|
||||
|
@ -59,8 +59,8 @@
|
||||
<tr class='table-row'>
|
||||
<td class='sme-border table-col table-col-Table2_Groups'><%=$c->render_to_string(inline=>$row->{'Table2_Groups'})%></td>
|
||||
<td class='sme-border table-col table-col-Table2_Description'><%=$c->render_to_string(inline=>$row->{'Table2_Description'})%></td>
|
||||
<td class='sme-border table-col table-col-Table3_Read / Write'><%=check_box 'writegroup',($row->{'Table2_Read / Write'} ? ('checked' => 1) : ())%></td>
|
||||
<td class='sme-border table-col table-col-Table3_Read Only'><%=check_box 'readgroup',($row->{'Table2_Read Only'} ? ('checked' => 1) : ())%></td>
|
||||
<td class='sme-border table-col table-col-Table2_Read / Write'><%= check_box 'writegroup', value => $row->{'Table2_Groups'}, ($row->{'Table2_Read / Write'} ? (checked => 'checked') : ()) %></td>
|
||||
<td class='sme-border table-col table-col-Table2_Read Only'><%= check_box 'readgroup', value => $row->{'Table2_Groups'}, ($row->{'Table2_Read Only'} ? (checked => 'checked') : ()) %></td>
|
||||
</tr>
|
||||
%}
|
||||
</tbody>
|
||||
@ -81,8 +81,8 @@
|
||||
<tr class='table-row'>
|
||||
<td class='sme-border table-col table-col-Table3_Groups'><%=$c->render_to_string(inline=>$row->{'Table3_Users'})%></td>
|
||||
<td class='sme-border table-col table-col-Table3_Description'><%=$c->render_to_string(inline=>$row->{'Table3_Description'})%></td>
|
||||
<td class='sme-border table-col table-col-Table3_Read / Write'><%=check_box 'writeuser',($row->{'Table3_Read / Write'} ? ('checked' => 1) : ())%></td>
|
||||
<td class='sme-border table-col table-col-Table3_Read Only'><%=check_box 'readuser',($row->{'Table3_Read Only'} ? ('checked' => 1) : ())%></td>
|
||||
<td class='sme-border table-col table-col-Table3_Read / Write'><%= check_box 'writeuser', value => $row->{'Table3_Users'}, ($row->{'Table3_Read / Write'} ? (checked => 'checked') : ()) %></td>
|
||||
<td class='sme-border table-col table-col-Table3_Read Only'><%= check_box 'readuser', value => $row->{'Table3_Users'}, ($row->{'Table3_Read Only'} ? (checked => 'checked') : ()) %></td>
|
||||
</tr>
|
||||
%}
|
||||
</tbody>
|
||||
|
@ -52,7 +52,7 @@
|
||||
</p>
|
||||
|
||||
<span class='data'>
|
||||
%= submit_button l('sf_Cancel'), class => 'action subm149'
|
||||
%#= submit_button l('sf_Cancel'), class => 'action subm149'
|
||||
</span>
|
||||
|
||||
<span class='data'>
|
||||
|
Loading…
x
Reference in New Issue
Block a user