Index: lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java,v diff -u -r1.52 -r1.52.2.1 --- lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java 24 Mar 2009 04:18:04 -0000 1.52 +++ lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java 7 May 2009 11:14:22 -0000 1.52.2.1 @@ -330,7 +330,7 @@ getFolderContent(workspaceFolder,permissions,mode,contentDTO,user); if(workspaceFolder.hasSubFolders()) getSubFolderDetails(workspaceFolder,user,contentDTO, skipFolder); - Vector repositoryContent = getContentsFromRepository(workspaceFolder,permissions); + Vector repositoryContent = getContentsFromRepository(workspaceFolder,permissions,user); if(repositoryContent!=null) contentDTO.addAll(repositoryContent); } else { @@ -364,7 +364,7 @@ if ( skipFolderID==null || ! skipFolderID.equals(subFolder.getWorkspaceFolderId()) ) { Integer permissions = getPermissions(subFolder, user); if ( permissions!=WorkspaceFolder.NO_ACCESS) { - subFolderContent.add(new FolderContentDTO(subFolder,permissions)); + subFolderContent.add(new FolderContentDTO(subFolder,permissions, user)); } } } @@ -433,11 +433,14 @@ Iterator iterator = designs.iterator(); while(iterator.hasNext()){ LearningDesign design = (LearningDesign)iterator.next(); + FolderContentDTO folder; if ( design.getUser() != null && design.getUser().equals(user) ) { - folderContent.add(new FolderContentDTO(design,WorkspaceFolder.OWNER_ACCESS)); + folder = new FolderContentDTO(design, WorkspaceFolder.OWNER_ACCESS, user); } else { - folderContent.add(new FolderContentDTO(design,folderPermissions)); + folder = new FolderContentDTO(design, folderPermissions, user); } + + folderContent.add(folder); } return folderContent; @@ -1082,7 +1085,7 @@ * @throws RepositoryCheckedException * @throws Exception */ - private Vector getContentsFromRepository(WorkspaceFolder workspaceFolder, Integer permissions) throws RepositoryCheckedException{ + private Vector getContentsFromRepository(WorkspaceFolder workspaceFolder, Integer permissions, User user) throws RepositoryCheckedException{ log.debug("Trying to get contents from folder "+ workspaceFolder.getName()); Set children = workspaceFolder.getChildWorkspaceFolders(); if(children!=null){ @@ -1098,7 +1101,7 @@ while(contentIterator.hasNext()){ WorkspaceFolderContent workspaceFolderContent = (WorkspaceFolderContent)contentIterator.next(); SortedSet set = repositoryService.getVersionHistory(ticket,workspaceFolderContent.getUuid()); - repositoryContent.add(new FolderContentDTO(permissions, workspaceFolderContent, set)); + repositoryContent.add(new FolderContentDTO(permissions, workspaceFolderContent, set, user)); } return repositoryContent; } @@ -1152,7 +1155,7 @@ if (hasWriteAccess(roles)) { Integer permission = getPermissions(orgFolder,user); if ( !permission.equals(WorkspaceFolder.NO_ACCESS) ) { - folders.add(new FolderContentDTO(orgFolder,permission)); + folders.add(new FolderContentDTO(orgFolder,permission,user)); } } } @@ -1187,7 +1190,7 @@ WorkspaceFolder privateFolder = workspace.getDefaultFolder(); if ( privateFolder != null ) { Integer permissions = getPermissions(privateFolder,user); - return new FolderContentDTO(privateFolder, permissions); + return new FolderContentDTO(privateFolder, permissions, user); } else { log.warn("getUserWorkspaceFolder: User "+userID+" does not have a root folder. Returning no folders."); } @@ -1219,7 +1222,7 @@ if(publicFolder != null) { publicFolder.setName(messageService.getMessage("public.folder")); Integer permissions = getPermissions(publicFolder, user); - return new FolderContentDTO(publicFolder, permissions); + return new FolderContentDTO(publicFolder, permissions, user); } } Index: lams_common/src/java/org/lamsfoundation/lams/workspace/dto/FolderContentDTO.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/workspace/dto/FolderContentDTO.java,v diff -u -r1.13 -r1.13.4.1 --- lams_common/src/java/org/lamsfoundation/lams/workspace/dto/FolderContentDTO.java 3 Feb 2009 05:47:42 -0000 1.13 +++ lams_common/src/java/org/lamsfoundation/lams/workspace/dto/FolderContentDTO.java 7 May 2009 11:14:28 -0000 1.13.4.1 @@ -24,11 +24,13 @@ package org.lamsfoundation.lams.workspace.dto; import java.util.Date; import java.util.SortedSet; +import java.util.TimeZone; import java.util.Vector; -import org.apache.commons.lang.time.DateUtils; import org.lamsfoundation.lams.learningdesign.LearningDesign; +import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.WorkspaceFolder; +import org.lamsfoundation.lams.util.DateUtil; import org.lamsfoundation.lams.util.wddx.WDDXTAGS; import org.lamsfoundation.lams.workspace.WorkspaceFolderContent; @@ -76,12 +78,12 @@ this.versionDetails = null; this.readOnly = false; } - public FolderContentDTO(LearningDesign design, Integer permissionCode){ + public FolderContentDTO(LearningDesign design, Integer permissionCode, User user){ this.name = design.getTitle(); this.description = design.getDescription(); this.creationDateTime = design.getCreateDateTime(); this.lastModifiedDateTime = design.getLastModifiedDateTime(); - this.formattedLastModifiedDateTime = formatLastModifiedDateTime(); + this.formattedLastModifiedDateTime = formatLastModifiedDateTime(TimeZone.getTimeZone(User.timezoneList[user.getTimeZone()])); this.resourceType = DESIGN; this.resourceID = design.getLearningDesignId(); this.permissionCode = permissionCode; @@ -90,12 +92,12 @@ this.versionDetails = null; this.readOnly = design.getReadOnly(); } - public FolderContentDTO(WorkspaceFolder workspaceFolder, Integer permissionCode){ + public FolderContentDTO(WorkspaceFolder workspaceFolder, Integer permissionCode, User user){ this.name = workspaceFolder.getName(); this.description = "Folder"; this.creationDateTime = workspaceFolder.getCreationDate(); this.lastModifiedDateTime = workspaceFolder.getLastModifiedDate(); - this.formattedLastModifiedDateTime = formatLastModifiedDateTime(); + this.formattedLastModifiedDateTime = formatLastModifiedDateTime(TimeZone.getTimeZone(User.timezoneList[user.getTimeZone()])); this.resourceType = FOLDER; this.resourceTypeID = new Long(workspaceFolder.getWorkspaceFolderType().intValue()); this.resourceID = new Long(workspaceFolder.getWorkspaceFolderId().intValue()); @@ -104,12 +106,12 @@ this.versionDetails = null; this.readOnly = Boolean.FALSE; } - public FolderContentDTO(Integer permissionCode, WorkspaceFolderContent workspaceFolderContent,SortedSet details){ + public FolderContentDTO(Integer permissionCode, WorkspaceFolderContent workspaceFolderContent, SortedSet details, User user){ this.name =workspaceFolderContent.getName(); this.description = workspaceFolderContent.getDescription(); this.creationDateTime = workspaceFolderContent.getCreateDate(); this.lastModifiedDateTime = workspaceFolderContent.getLastModified(); - this.formattedLastModifiedDateTime = formatLastModifiedDateTime(); + this.formattedLastModifiedDateTime = formatLastModifiedDateTime(TimeZone.getTimeZone(User.timezoneList[user.getTimeZone()])); this.resourceID = workspaceFolderContent.getFolderContentID(); this.permissionCode = permissionCode; if(workspaceFolderContent.getContentTypeID().equals(WorkspaceFolderContent.CONTENT_TYPE_FILE)) @@ -209,10 +211,11 @@ this.readOnly = readOnly; } - private String formatLastModifiedDateTime() { + private String formatLastModifiedDateTime(TimeZone tz) { if(this.lastModifiedDateTime != null) { + Date tzLastModifiedDate = DateUtil.convertFromUTCToLocal(tz, DateUtil.convertToUTC(this.lastModifiedDateTime)); java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd-MMM-yyyy HH:mm:ss"); - return sdf.format(lastModifiedDateTime); + return sdf.format(tzLastModifiedDate); } else { return null; }