Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,17 @@ public TreeMap<AuthenticatedUser, List<DataFile>> getFileAccessRequestMap() {
}


private boolean backingShowDeleted = true;

public void showDeletedCheckboxChange() {

if (backingShowDeleted != showDeleted) {
initMaps();
backingShowDeleted = showDeleted;
}

}

public String init() {
if (dataset.getId() != null) {
dataset = datasetService.find(dataset.getId());
Expand All @@ -136,17 +147,22 @@ private void initMaps() {
// initialize files and usergroup list
roleAssigneeMap.clear();
fileMap.clear();
fileAccessRequestMap.clear();
fileAccessRequestMap.clear();

for (DataFile file : dataset.getFiles()) {

boolean fileIsDeleted = !((dataset.getLatestVersion().isDraft() && file.getFileMetadata().getDatasetVersion().isDraft())
|| (dataset.getLatestVersion().isReleased() && file.getFileMetadata().getDatasetVersion().equals(dataset.getLatestVersion())));
// only include if the file is restricted (or its draft version is restricted)
//Added a null check in case there are files that have no metadata records SEK
//for 6587 make sure that a file is in the current version befor adding to the fileMap SEK 2/11/2020
if (file.getFileMetadata() != null && (file.isRestricted() || file.getFileMetadata().isRestricted())
&& (!fileIsDeleted || isShowDeleted())) {
if (file.getFileMetadata() != null && (file.isRestricted() || file.getFileMetadata().isRestricted())) {
//only test if file is deleted if it's restricted
boolean fileIsDeleted = !((dataset.getLatestVersion().isDraft() && file.getFileMetadata().getDatasetVersion().isDraft())
|| (dataset.getLatestVersion().isReleased() && file.getFileMetadata().getDatasetVersion().equals(dataset.getLatestVersion())));

if (!isShowDeleted() && fileIsDeleted) {
//if don't show deleted and is deleted go to next file...
continue;
}
// we get the direct role assignments assigned to the file
List<RoleAssignment> ras = roleService.directRoleAssignments(file);
List<RoleAssignmentRow> raList = new ArrayList<>(ras.size());
Expand Down
4 changes: 2 additions & 2 deletions src/main/webapp/permissions-manage-files.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
</p:commandLink>
</div>
<div class="panel-group">
<p:selectBooleanCheckbox value="#{manageFilePermissionsPage.showDeleted}" itemLabel="#{bundle['dataverse.permissionsFiles.files.includeDeleted']}" onchange="#{manageFilePermissionsPage.init()}">
<p:selectBooleanCheckbox value="#{manageFilePermissionsPage.showDeleted}" itemLabel="#{bundle['dataverse.permissionsFiles.files.includeDeleted']}" onchange="#{manageFilePermissionsPage.showDeletedCheckboxChange()}">
<p:ajax update="filesFragment, usersGroups"/>
</p:selectBooleanCheckbox>
</div>
Expand Down Expand Up @@ -156,7 +156,7 @@
</p:fragment>
<p:fragment id="filesFragment">
<div class="panel-group">
<p:selectBooleanCheckbox value="#{manageFilePermissionsPage.showDeleted}" itemLabel="#{bundle['dataverse.permissionsFiles.files.includeDeleted']}" onchange="#{manageFilePermissionsPage.init()}">
<p:selectBooleanCheckbox value="#{manageFilePermissionsPage.showDeleted}" itemLabel="#{bundle['dataverse.permissionsFiles.files.includeDeleted']}" onchange="#{manageFilePermissionsPage.showDeletedCheckboxChange()}">
<p:ajax update="filesFragment, usersGroups"/>
</p:selectBooleanCheckbox>
</div>
Expand Down