Index: lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java =================================================================== diff -u -r8a20dabb8e3c7caa3ed2a7d2f6e5b2c078a1ee79 -rf2c568d218cbd23c24524c65a1e68660f4ea7561 --- lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java (.../WorkspaceManagementService.java) (revision 8a20dabb8e3c7caa3ed2a7d2f6e5b2c078a1ee79) +++ lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java (.../WorkspaceManagementService.java) (revision f2c568d218cbd23c24524c65a1e68660f4ea7561) @@ -322,7 +322,7 @@ if(user!=null){ Integer permissions = getPermissions(workspaceFolder,user); if(permissions!=WorkspaceFolder.NO_ACCESS){ - getFolderContent(workspaceFolder,permissions,mode,contentDTO); + getFolderContent(workspaceFolder,permissions,mode,contentDTO,user); if(workspaceFolder.hasSubFolders()) getSubFolderDetails(workspaceFolder,user,contentDTO, skipFolder); Vector repositoryContent = getContentsFromRepository(workspaceFolder,permissions); @@ -337,7 +337,7 @@ return contentDTO; } - private void getFolderContent(WorkspaceFolder workspaceFolder, Integer permissions, Integer mode,Vector contentDTO){ + private void getFolderContent(WorkspaceFolder workspaceFolder, Integer folderPermissions, Integer mode,Vector contentDTO, User user){ List designs = null; @@ -346,7 +346,7 @@ else designs = learningDesignDAO.getAllValidLearningDesignsInFolder(workspaceFolder.getWorkspaceFolderId()); - getFolderContentDTO(designs,permissions,contentDTO); + getFolderContentDTO(designs,folderPermissions,contentDTO,user); } /** * Get the folders in the given workspaceFolder. If skipContentId is not null, then skip any contents found with this id. @@ -413,11 +413,15 @@ } */ - private Vector getFolderContentDTO(List designs, Integer permissions,Vector folderContent){ + private Vector getFolderContentDTO(List designs, Integer folderPermissions,Vector folderContent, User user){ Iterator iterator = designs.iterator(); while(iterator.hasNext()){ LearningDesign design = (LearningDesign)iterator.next(); - folderContent.add(new FolderContentDTO(design,permissions)); + if ( design.getUser() != null && design.getUser().equals(user) ) { + folderContent.add(new FolderContentDTO(design,WorkspaceFolder.OWNER_ACCESS)); + } else { + folderContent.add(new FolderContentDTO(design,folderPermissions)); + } } return folderContent;