diff --git a/root/usr/share/smanager/lib/SrvMngr/Controller/Shares-Custom.pm b/root/usr/share/smanager/lib/SrvMngr/Controller/Shares-Custom.pm
index 2098ec7..2d96504 100644
--- a/root/usr/share/smanager/lib/SrvMngr/Controller/Shares-Custom.pm
+++ b/root/usr/share/smanager/lib/SrvMngr/Controller/Shares-Custom.pm
@@ -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 = ''.$c->l('sf_Modify').'';
@@ -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
diff --git a/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Shares/shares_en.lex b/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Shares/shares_en.lex
index 8507d6d..5f0213c 100644
--- a/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Shares/shares_en.lex
+++ b/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Shares/shares_en.lex
@@ -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',
\ No newline at end of file
diff --git a/root/usr/share/smanager/themes/default/templates/partials/_sf_MODIFY.html.ep b/root/usr/share/smanager/themes/default/templates/partials/_sf_MODIFY.html.ep
index 3a33e79..a2f4cd3 100644
--- a/root/usr/share/smanager/themes/default/templates/partials/_sf_MODIFY.html.ep
+++ b/root/usr/share/smanager/themes/default/templates/partials/_sf_MODIFY.html.ep
@@ -50,7 +50,7 @@
- %=l('sf_The_following_settings_control_the') + %=l('sf_The_following_settings_control_the_SMB')
@@ -78,7 +78,7 @@
- %=l('sf_The_following_settings_control_the') + %=l('sf_The_following_settings_control_the_HTTP')
diff --git a/root/usr/share/smanager/themes/default/templates/partials/_sf_PERMISSIONS.html.ep b/root/usr/share/smanager/themes/default/templates/partials/_sf_PERMISSIONS.html.ep
index bd6e858..2e24f6d 100644
--- a/root/usr/share/smanager/themes/default/templates/partials/_sf_PERMISSIONS.html.ep
+++ b/root/usr/share/smanager/themes/default/templates/partials/_sf_PERMISSIONS.html.ep
@@ -59,8 +59,8 @@
%}
@@ -81,8 +81,8 @@
<%=$c->render_to_string(inline=>$row->{'Table2_Groups'})%>
<%=$c->render_to_string(inline=>$row->{'Table2_Description'})%>
- <%=check_box 'writegroup',($row->{'Table2_Read / Write'} ? ('checked' => 1) : ())%>
- <%=check_box 'readgroup',($row->{'Table2_Read Only'} ? ('checked' => 1) : ())%>
+ <%= check_box 'writegroup', value => $row->{'Table2_Groups'}, ($row->{'Table2_Read / Write'} ? (checked => 'checked') : ()) %>
+ <%= check_box 'readgroup', value => $row->{'Table2_Groups'}, ($row->{'Table2_Read Only'} ? (checked => 'checked') : ()) %>
%}
diff --git a/root/usr/share/smanager/themes/default/templates/partials/_sf_REMOVE.html.ep b/root/usr/share/smanager/themes/default/templates/partials/_sf_REMOVE.html.ep
index 8e016aa..8f0b4e7 100644
--- a/root/usr/share/smanager/themes/default/templates/partials/_sf_REMOVE.html.ep
+++ b/root/usr/share/smanager/themes/default/templates/partials/_sf_REMOVE.html.ep
@@ -52,7 +52,7 @@
<%=$c->render_to_string(inline=>$row->{'Table3_Users'})%>
<%=$c->render_to_string(inline=>$row->{'Table3_Description'})%>
- <%=check_box 'writeuser',($row->{'Table3_Read / Write'} ? ('checked' => 1) : ())%>
- <%=check_box 'readuser',($row->{'Table3_Read Only'} ? ('checked' => 1) : ())%>
+ <%= check_box 'writeuser', value => $row->{'Table3_Users'}, ($row->{'Table3_Read / Write'} ? (checked => 'checked') : ()) %>
+ <%= check_box 'readuser', value => $row->{'Table3_Users'}, ($row->{'Table3_Read Only'} ? (checked => 'checked') : ()) %>