Index: lams_tool_kaltura/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -17,7 +17,6 @@ button.instructions =Instructions button.upload =Upload label.authoring.basic.title =Title: -label.authoring.basic.content =Content: label.authoring.basic.instructions =Instructions: label.authoring.basic.video =Video: advanced.lockOnFinished =Lock when finished @@ -28,59 +27,28 @@ instructions.offlineInstructions =Offline Instructions: instructions.uploadOnlineInstr =Online Instructions File: instructions.uploadOfflineInstr =Offline Instructions File: -instructions.type.online =Online -instructions.type.offline =Offline -label.filename =Filename -label.type =Type label.attachments =Attachments link.view =View link.download =Download link.delete =Delete -message.updateSuccess =Changes saved message.unsavedChanges =Page contains unsaved changes -pageTitle.learning =Online Kaltura message.defineLaterSet =Please wait for the instructor to complete the contents of this activity message.runOfflineSet =This activity is not being done on the computer. Please see your instructor for details. pageTitle.monitoring =Kaltura Monitoring button.summary =Summary button.editActivity =Edit Activity button.statistics =Statistics titleHeading.summary =Summary -titleHeading.instructions =Instructions -titleHeading.statistics =Statistics -titleHeading.editActivity =Edit Activity -titleHeading.exportPortfolio =Export Portfolio -heading.group =Group {0}: heading.totalLearners =Number of Learners: heading.totalLearnersInGroup =Total Number of Learners in Group: heading.totalFinishedLearnersInGroup =Number of Finished Learners: -message.contentInUseSet =Modification of content is not allowed since one or more learners has attempted the activity. -message.summary =There is no summary available for this tool. -label.view =View -label.notAvailable =Not Available -heading.learner =Learner heading.notebookEntry =Kaltura Entry button.cancel =Cancel -button.ok =OK -button.done =Done button.save =Save button.finish =Next Activity -button.next =Next -label.save =Save -label.cancel =Cancel label.created =Created label.lastModified =Last modified label.notebookEntry =Notebook entry -error.missingParam =Unable to continue. {0} is missing. -error.exceedMaxFileSize =File size exceeded -error.exception.NbApplication =An internal error has occured with the Kaltura Tool. If reporting this error, please report:
{0} -error.contentrepository =An error has occurred when saving/deleting instruction file {0}. The files may not be saved correctly. -error.content.locked =The content has been locked since it is being used by one or more learners. The modification of the content is not allowed. -error.defineLater =Sorry, the activity is not ready yet. Please wait for the instructor to finishing defining the activity. -errors.maxfilesize =The uploaded file has exceeded the maximum file size limit of {0} bytes -error.mandatoryField ={0} field is mandatory. -error.mark.invalid.number ={0} field must be a valid number. Decimal points are not allowed. -error.mark.invalid.decimal.number ={0} field must be a valid decimal number. authoring.msg.cancel.save =Do you want to close this window without saving? button.try.again =Try Again message.learner.blank.input =You have not written anything. Are you sure this is correct? @@ -90,24 +58,6 @@ label.on =On label.off =Off monitor.summary.th.advancedSettings =Advanced Settings -button.conditions =Conditions -textsearch.excluded.words =has none of these unwanted words: -label.authoring.heading.instructions.desc =Please enter conditions -label.authoring.heading.conditions =Conditions -label.authoring.conditions.add.condition =Add condition -label.authoring.conditions.list.title =Conditions -label.authoring.conditions.order =Order -label.authoring.conditions.empty.condition.list =There are no conditions -label.authoring.conditions.condition.name =Name -label.authoring.edit.conditions.button =Edit conditions -label.authoring.up =Up -label.authoring.down =Down -label.authoring.edit =Edit -error.condition.name.blank =Condition name can not be blank. -error.condition.duplicated.name =Duplicated name. Please choose unique one. -error.condition =Error creating condition. -output.desc.text.search.output.definition.notebook =Entry contains certain words -text.search.output.definition.notebook.default.condition =Entry contains word "LAMS" textsearch.heading =Entry that... textsearch.all.words =has all these words: textsearch.phrase =has this exact wording or phrase: @@ -121,11 +71,10 @@ monitor.summary.notification =Notification monitor.summary.date.restriction.set =Deadline has been set monitor.summary.date.restriction.removed =Deadline has been removed -output.desc.all.users.entries.definition.notebook =Each student's entry in Kaltura export.toolExportNotSupported =This tool does not support export portfolio. label.kaltura.server.not.configured = LAMS does not have a Kaltura server configured. Please contact your system administrator. error.there.was.error =Sorry, there was an error -error.processing.video =An error occurred processing this video. Please, reupload it. +error.processing.video =An error has occurred processing this video. Please, reupload it. label.video.list =Video list: label.authoring.item =Item label.item.title =Title @@ -166,5 +115,7 @@ label.unhide =Unhide label.comment.is.hidden =This comment is hidden. label.video.is.hidden =This video is hidden. +output.desc.learner.number.viewed.videos =Number of videos viewed by user +output.desc.learner.number.uploaded.videos =Number of videos uploaded by user #======= End labels: Exported 113 labels for en AU ===== Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/IKalturaItemDAO.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/IKalturaItemDAO.java (.../IKalturaItemDAO.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/IKalturaItemDAO.java (.../IKalturaItemDAO.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -45,5 +45,14 @@ List getAuthoringItems(Long kalturaUid); KalturaItem getByUid(Long kalturaItemUid); + + /** + * Returns number of uploads made by user. + * + * @param toolSessionId + * @param userId + * @return + */ + int getItemsCountByUser(Long toolSessionId, Long userId); } Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/IKalturaItemVisitDAO.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/IKalturaItemVisitDAO.java (.../IKalturaItemVisitDAO.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/IKalturaItemVisitDAO.java (.../IKalturaItemVisitDAO.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -38,7 +38,7 @@ KalturaItemVisitLog getKalturaItemLog(Long itemUid, Long userId); - int getUserViewLogCount(Long sessionId, Long userUid); + int getUserViewLogCount(Long sessionId, Long userId); List getKalturaItemLogBySession(Long sessionId, Long itemUid); Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/hibernate/KalturaItemDAO.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/hibernate/KalturaItemDAO.java (.../KalturaItemDAO.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/hibernate/KalturaItemDAO.java (.../KalturaItemDAO.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -28,11 +28,15 @@ import org.lamsfoundation.lams.dao.hibernate.BaseDAO; import org.lamsfoundation.lams.tool.kaltura.dao.IKalturaItemDAO; import org.lamsfoundation.lams.tool.kaltura.model.KalturaItem; +import org.lamsfoundation.lams.tool.kaltura.model.KalturaItemVisitLog; public class KalturaItemDAO extends BaseDAO implements IKalturaItemDAO { private static final String FIND_AUTHORING_ITEMS = "from " + KalturaItem.class.getName() + " where kaltura_uid = ? and create_by_author = 1 order by create_date asc"; + + private static final String FIND_ITEMS_COUNT_BY_USER = "select count(*) from " + + KalturaItem.class.getName() + " as r where r.createdBy.session.sessionId=? and r.createdBy.userId =?"; @Override public List getAuthoringItems(Long kalturaUid) { @@ -43,4 +47,12 @@ public KalturaItem getByUid(Long kalturaItemUid) { return (KalturaItem) this.getHibernateTemplate().get(KalturaItem.class, kalturaItemUid); } + + @Override + public int getItemsCountByUser(Long toolSessionId, Long userId) { + List list = getHibernateTemplate().find(FIND_ITEMS_COUNT_BY_USER, new Object[] { toolSessionId, userId }); + if (list == null || list.size() == 0) + return 0; + return ((Number) list.get(0)).intValue(); + } } Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/hibernate/KalturaItemVisitDAO.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/hibernate/KalturaItemVisitDAO.java (.../KalturaItemVisitDAO.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/dao/hibernate/KalturaItemVisitDAO.java (.../KalturaItemVisitDAO.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -53,8 +53,8 @@ return (KalturaItemVisitLog) list.get(0); } - public int getUserViewLogCount(Long toolSessionId, Long userUid) { - List list = getHibernateTemplate().find(FIND_VIEW_COUNT_BY_USER, new Object[] { toolSessionId, userUid }); + public int getUserViewLogCount(Long toolSessionId, Long userId) { + List list = getHibernateTemplate().find(FIND_VIEW_COUNT_BY_USER, new Object[] { toolSessionId, userId }); if (list == null || list.size() == 0) return 0; return ((Number) list.get(0)).intValue(); Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/IKalturaService.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/IKalturaService.java (.../IKalturaService.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/IKalturaService.java (.../IKalturaService.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -219,5 +219,23 @@ * @param isHiding true if comment needs to be hidden, false - otherwise */ void hideComment(Long commentUid, boolean isHiding); + + /** + * Return Number of videos viewed by user. + * + * @param toolSessionId + * @param userId + * @return + */ + int getNumberViewedVideos(Long toolSessionId, Long userId); + + /** + * Return Number of videos uploaded/created by user. + * + * @param toolSessionId + * @param userId + * @return + */ + int getNumberUploadedVideos(Long toolSessionId, Long userId); } Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaOutputFactory.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaOutputFactory.java (.../KalturaOutputFactory.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaOutputFactory.java (.../KalturaOutputFactory.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -34,106 +34,79 @@ import org.lamsfoundation.lams.tool.kaltura.util.KalturaConstants; /** - * Output factory for Kaltura tool. Currently it provides only one type of output - the entry that user provided. + * Output factory for Kaltura tool. Currently it provides two types of output - Number of videos viewed and Number of videos uploaded. * * @author Andrey Balan */ public class KalturaOutputFactory extends OutputFactory { - /** - * {@inheritDoc} - */ @Override public SortedMap getToolOutputDefinitions(Object toolContentObject, int definitionType) throws ToolException { + SortedMap definitionMap = new TreeMap(); - Class stringArrayClass = new String[] {}.getClass(); - switch (definitionType) { - case ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_CONDITION: - if (toolContentObject != null) { - ToolOutputDefinition kalturaEntryDefinition = buildStringOutputDefinition(KalturaConstants.USER_ENTRY_DEFINITION_NAME); - kalturaEntryDefinition.setShowConditionNameOnly(true); - definitionMap.put(KalturaConstants.USER_ENTRY_DEFINITION_NAME, kalturaEntryDefinition); - } - case ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_DATA_FLOW: - ToolOutputDefinition allUsersEntriesDefinition = buildComplexOutputDefinition( - KalturaConstants.ALL_USERS_ENTRIES_DEFINITION_NAME, stringArrayClass); - definitionMap.put(KalturaConstants.ALL_USERS_ENTRIES_DEFINITION_NAME, allUsersEntriesDefinition); - break; - } + + ToolOutputDefinition viewedDefinition = buildRangeDefinition(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS, new Long(0), null); + definitionMap.put(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS, viewedDefinition); + + ToolOutputDefinition uploadedDefinition = buildRangeDefinition(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS, new Long(0), null); + definitionMap.put(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS, uploadedDefinition); return definitionMap; } /** - * Follows {@link KalturaService#getToolOutput(List, Long, Long)}. - * + * Follows {@link PixlrService#getToolOutput(List, Long, Long)}. */ public SortedMap getToolOutput(List names, IKalturaService kalturaService, Long toolSessionId, Long learnerId) { TreeMap outputs = new TreeMap(); // tool output cache - TreeMap baseOutputs = new TreeMap(); - if (names == null) { - // TODO have a look if we'll have any outputs what should be done - } else { - for (String name : names) { - String[] nameParts = splitConditionName(name); - if (baseOutputs.get(nameParts[0]) != null) { - outputs.put(name, baseOutputs.get(nameParts[0])); - } else { - ToolOutput output = getToolOutput(name, kalturaService, toolSessionId, learnerId); - if (output != null) { - outputs.put(name, output); - baseOutputs.put(nameParts[0], output); - } - } - } + if (names == null || names.contains(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS)) { + outputs.put(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS, + getToolOutput(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS, kalturaService, toolSessionId, learnerId)); } + if (names == null || names.contains(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS)) { + outputs.put(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS, + getToolOutput(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS, kalturaService, toolSessionId, learnerId)); + } + return outputs; } public ToolOutput getToolOutput(String name, IKalturaService kalturaService, Long toolSessionId, Long learnerId) { - String[] nameParts = splitConditionName(name); -// if (KalturaConstants.USER_ENTRY_DEFINITION_NAME.equals(nameParts[0])) { -// // entry is loaded from DB -// Kaltura kaltura = kalturaService.getSessionBySessionId(toolSessionId).getKaltura(); -// -// KalturaUser user = kalturaService.getUserByUserIdAndSessionId(learnerId, toolSessionId); -// -// if (user != null) { -// NotebookEntry entry = kalturaService.getEntry(user.getEntryUID()); -// -// String value = entry == null ? null : entry.getEntry(); -// -// return new ToolOutput(name, getI18NText(KalturaConstants.USER_ENTRY_DEFINITION_NAME, true), value); -// } -// } else if (KalturaConstants.ALL_USERS_ENTRIES_DEFINITION_NAME.equals(nameParts[0])) { -// Set users = kalturaService.getSessionBySessionId(toolSessionId).getKalturaUsers(); -// String[] usersEntries = new String[users.size()]; -// int userIndex = 0; -// for (KalturaUser user : users) { -// Long entryUid = user.getEntryUID(); -// if (entryUid != null) { -// NotebookEntry entry = kalturaService.getEntry(entryUid); -// usersEntries[userIndex] = entry.getEntry(); -// } -// userIndex++; -// } -// return new ToolOutput(name, getI18NText(KalturaConstants.ALL_USERS_ENTRIES_DEFINITION_NAME, true), -// usersEntries, false); -// } + if (name.equals(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS)) { + return getNumberViewedVideos(kalturaService, toolSessionId, learnerId); + } else if (name.equals(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS)) { + return getNumberUploadedVideos(kalturaService, toolSessionId, learnerId); + } + return null; } - @Override - protected String[] splitConditionName(String conditionName) { - return super.splitConditionName(conditionName); + /** + * Get the number of videos viewed. + */ + private ToolOutput getNumberViewedVideos(IKalturaService kalturaService, Long toolSessionId, Long learnerId) { + + int numberViewedVideos = kalturaService.getNumberViewedVideos(toolSessionId, learnerId); + + return new ToolOutput(KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS, getI18NText( + KalturaConstants.LEARNER_NUMBER_VIEWED_VIDEOS, true), numberViewedVideos); + } + + /** + * Get the number of videos uploaded. + */ + private ToolOutput getNumberUploadedVideos(IKalturaService kalturaService, Long toolSessionId, Long learnerId) { - protected String buildUserEntryConditionName(String uniquePart) { - return super.buildConditionName(KalturaConstants.USER_ENTRY_DEFINITION_NAME, uniquePart); + int numberUploadedVideos = kalturaService.getNumberUploadedVideos(toolSessionId, learnerId); + + return new ToolOutput(KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS, getI18NText( + KalturaConstants.LEARNER_NUMBER_UPLOADED_VIDEOS, true), numberUploadedVideos); + } } Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaService.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaService.java (.../KalturaService.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/service/KalturaService.java (.../KalturaService.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -470,6 +470,16 @@ kalturaCommentDao.update(comment); } } + + @Override + public int getNumberViewedVideos(Long toolSessionId, Long userId) { + return kalturaItemVisitDao.getUserViewLogCount(toolSessionId, userId); + } + + @Override + public int getNumberUploadedVideos(Long toolSessionId, Long userId) { + return kalturaItemDao.getItemsCountByUser(toolSessionId, userId); + } @Override public Long getDefaultContentIdBySignature(String toolSignature) { Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaCommentComparator.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaCommentComparator.java (.../KalturaCommentComparator.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaCommentComparator.java (.../KalturaCommentComparator.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -28,7 +28,7 @@ import org.lamsfoundation.lams.tool.kaltura.model.KalturaComment; /** - * Comparator for ImageComment. + * Comparator for KalturaComment. * * @author Andrey Balan */ Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaConstants.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaConstants.java (.../KalturaConstants.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaConstants.java (.../KalturaConstants.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -27,21 +27,7 @@ public interface KalturaConstants { public static final String TOOL_SIGNATURE = "lakalt11"; - // Kaltura session status - public static final Integer SESSION_NOT_STARTED = new Integer(0); - public static final Integer SESSION_IN_PROGRESS = new Integer(1); - public static final Integer SESSION_COMPLETED = new Integer(2); - - public static final String AUTHORING_DEFAULT_TAB = "1"; - public static final String ATTACHMENT_LIST = "attachmentList"; - public static final String DELETED_ATTACHMENT_LIST = "deletedAttachmentList"; - public static final String AUTH_SESSION_ID_COUNTER = "authoringSessionIdCounter"; - public static final String AUTH_SESSION_ID = "authoringSessionId"; - - public static final int MONITORING_SUMMARY_MAX_MESSAGES = 5; - // Attribute names - public static final String ATTR_MESSAGE = "message"; public static final String ATTR_SESSION_MAP = "sessionMap"; public static final String ATTR_KALTURA = "kaltura"; public static final String ATTR_ITEM = "item"; @@ -54,7 +40,6 @@ public static final String ATTR_REFLECTION_ON = "reflectOn"; public static final String ATTR_REFLECTION_INSTRUCTION = "reflectInstructions"; public static final String ATTR_REFLECTION_ENTRY = "reflectEntry"; - public static final String ATTR_REFLECT_LIST = "reflectList"; public static final String ATTR_NEXT_ACTIVITY_URL = "nextActivityUrl"; public static final String ATTR_FINISHED_LOCK = "finishedLock"; public static final String ATTR_LOCK_ON_FINISH = "lockOnFinish"; @@ -65,19 +50,18 @@ public static final String ATTR_IS_GROUP_MONITORING = "isGroupMonitoring"; // Parameter names - public static final String PARAM_PARENT_PAGE = "parentPage"; - public static final String PARAM_ORDER_ID = "orderId"; public static final String PARAM_ITEM_INDEX = "itemIndex"; public static final String PARAM_ITEM_UID = "itemUid"; public static final String PARAM_ITEM_TITLE = "itemTitle"; public static final String PARAM_ITEM_DURATION = "itemDuration"; public static final String PARAM_ITEM_ENTRY_ID = "itemEntryId"; public static final String PARAM_COMMENT_UID = "commentUid"; public static final String PARAM_IS_HIDING = "isHiding"; - public static final String USER_ENTRY_DEFINITION_NAME = "user.entry.output.definition.kaltura"; - public static final String USER_ENTRY_DEFAULT_CONDITION_DISPLAY_NAME_KEY = "user.entry.output.definition.kaltura.default.condition"; - public static final String ALL_USERS_ENTRIES_DEFINITION_NAME = "all.users.entries.definition.kaltura"; + //tool outputs + public static final String LEARNER_NUMBER_VIEWED_VIDEOS = "learner.number.viewed.videos"; + public static final String LEARNER_NUMBER_UPLOADED_VIDEOS = "learner.number.uploaded.videos"; + //forward names public static final String SUCCESS = "success"; public static final String VIEW_ITEM = "viewitem"; @@ -88,9 +72,6 @@ public static final String FINISH = "finish"; public static final String GROUP_LEARNING = "groupLearning"; - public static final String ERROR_MSG_CONDITION = "error.condition"; - public static final String ERROR_MSG_NAME_BLANK = "error.condition.name.blank"; - public static final String ERROR_MSG_NAME_DUPLICATED = "error.condition.duplicated.name"; public static final String ERROR_MSG_COMMENT_BLANK = "error.resource.image.comment.blank"; } Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaSessionDTOComparator.java =================================================================== diff -u --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaSessionDTOComparator.java (revision 0) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/util/KalturaSessionDTOComparator.java (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -0,0 +1,45 @@ +/**************************************************************** + * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org) + * ============================================================= + * License Information: http://lamsfoundation.org/licensing/lams/2.0/ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2.0 + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA + * + * http://www.gnu.org/licenses/gpl.txt + * **************************************************************** + */ + +/* $Id$ */ +package org.lamsfoundation.lams.tool.kaltura.util; + +import java.util.Comparator; + +import org.lamsfoundation.lams.tool.kaltura.dto.KalturaSessionDTO; +import org.lamsfoundation.lams.tool.kaltura.model.KalturaComment; + +/** + * Comparator for ImageComment. + */ +public class KalturaSessionDTOComparator implements Comparator { + + @Override + public int compare(KalturaSessionDTO o1, KalturaSessionDTO o2) { + if (o1 != null && o2 != null) { + return o1.getSessionName().compareTo(o2.getSessionName()); + } else if (o1 != null) + return 1; + else + return -1; + } +} Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/web/actions/LearningAction.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/web/actions/LearningAction.java (.../LearningAction.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/web/actions/LearningAction.java (.../LearningAction.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -312,7 +312,7 @@ JSONObject JSONObject = new JSONObject(); JSONObject.put(KalturaConstants.PARAM_ITEM_UID, item.getUid()); - response.setContentType("application/x-json"); + response.setContentType("application/x-json;charset=utf-8"); response.getWriter().print(JSONObject); return null; } @@ -399,7 +399,7 @@ JSONObject JSONObject = new JSONObject(); JSONObject.put("averageRating", averageRatingDto.getRating()); JSONObject.put("numberOfVotes", averageRatingDto.getNumberOfVotes()); - response.setContentType("application/x-json"); + response.setContentType("application/x-json;charset=utf-8"); response.getWriter().print(JSONObject); return null; } Index: lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/web/actions/MonitoringAction.java =================================================================== diff -u -r5fd453ea4cb0fa72cb94a5706e75f68a319de46b -rb52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2 --- lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 5fd453ea4cb0fa72cb94a5706e75f68a319de46b) +++ lams_tool_kaltura/src/java/org/lamsfoundation/lams/tool/kaltura/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision b52f787a7b8d6dc77ef090dc023fc64fa3a9b2f2) @@ -29,6 +29,7 @@ import java.util.List; import java.util.Set; import java.util.TimeZone; +import java.util.TreeSet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -47,6 +48,7 @@ import org.lamsfoundation.lams.tool.kaltura.service.IKalturaService; import org.lamsfoundation.lams.tool.kaltura.service.KalturaServiceProxy; import org.lamsfoundation.lams.tool.kaltura.util.KalturaConstants; +import org.lamsfoundation.lams.tool.kaltura.util.KalturaSessionDTOComparator; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.util.DateUtil; import org.lamsfoundation.lams.util.WebUtil; @@ -86,7 +88,7 @@ request.setAttribute("contentFolderID", contentFolderID); request.setAttribute("isGroupedActivity", isGroupedActivity); - List sessionDTOs = new ArrayList(); + Set sessionDTOs = new TreeSet(new KalturaSessionDTOComparator()); for (KalturaSession session : (Set)kaltura.getKalturaSessions()) { KalturaSessionDTO sessionDTO = new KalturaSessionDTO(session); sessionDTOs.add(sessionDTO);