Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/ActivityAction.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/ActivityAction.java (.../ActivityAction.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/ActivityAction.java (.../ActivityAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -34,8 +34,6 @@ */ public abstract class ActivityAction extends LamsAction { - public static final String ACTIVITY_REQUEST_ATTRIBUTE = "activity"; - public static final String LEARNER_PROGRESS_REQUEST_ATTRIBUTE = "learnerprogress"; public static final String RELEASED_LESSONS_REQUEST_ATTRIBUTE = "releasedLessons"; private ICoreLearnerService learnerService = null; Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/BranchingActivityAction.java =================================================================== diff -u -r17d3608930aacfebc6ed0068cbee5d481e7bedbf -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/BranchingActivityAction.java (.../BranchingActivityAction.java) (revision 17d3608930aacfebc6ed0068cbee5d481e7bedbf) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/BranchingActivityAction.java (.../BranchingActivityAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -161,7 +161,6 @@ learnerProgress = learnerService.chooseActivity(learnerId, learnerProgress.getLesson().getLessonId(), branch, true); forward = actionMappings.getActivityForward(branch, learnerProgress, true); - LearningWebUtil.putLearnerProgressInRequest(request, learnerProgress); } } @@ -215,7 +214,6 @@ learnerProgress = learnerService.chooseActivity(learnerId, learnerProgress.getLesson().getLessonId(), branch, true); forward = actionMappings.getActivityForward(branch, learnerProgress, true); - LearningWebUtil.putLearnerProgressInRequest(request, learnerProgress); } return forward; Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/CompleteActivityAction.java =================================================================== diff -u -r509cebe97fca335b7d517abc7e8d9af03d6eab2e -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/CompleteActivityAction.java (.../CompleteActivityAction.java) (revision 509cebe97fca335b7d517abc7e8d9af03d6eab2e) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/CompleteActivityAction.java (.../CompleteActivityAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.learning.web.action; import java.io.IOException; @@ -41,6 +40,7 @@ import org.lamsfoundation.lams.learningdesign.Activity; import org.lamsfoundation.lams.lesson.LearnerProgress; import org.lamsfoundation.lams.util.WebUtil; +import org.lamsfoundation.lams.web.util.AttributeNames; import org.springframework.web.context.support.WebApplicationContextUtils; /** @@ -79,7 +79,7 @@ // otherwise we may be using an old version of a lesson while a teacher is starting a // live edit, and then the lock flag can't be checked correctly. LearnerProgress progress = learnerService - .getProgressById(WebUtil.readLongParam(request, LearningWebUtil.PARAM_PROGRESS_ID, true)); + .getProgressById(WebUtil.readLongParam(request, AttributeNames.PARAM_LEARNER_PROGRESS_ID, true)); // if user has already completed the lesson - we need to let integrations servers know to come and pick up // updated marks (as it won't happen at lessoncomplete.jsp page) @@ -90,9 +90,9 @@ request.setAttribute("lessonFinishUrl", lessonFinishCallbackUrl); } if (progress.getLesson().getAllowLearnerRestart()) { - request.setAttribute("lessonID", progress.getLesson().getLessonId()); + request.setAttribute("lessonID", progress.getLesson().getLessonId()); + } } - } ActionForward forward = null; // Set activity as complete Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GateAction.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GateAction.java (.../GateAction.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GateAction.java (.../GateAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.learning.web.action; import java.io.IOException; @@ -130,13 +129,7 @@ User learner = LearningWebUtil.getUser(learnerService); Lesson lesson = learnerService.getLesson(lessonId); - // don't use LearningWebUtil.getLearnerProgress(request, learnerService) as it may try to get the lesson - // from the activity and the activity may be null (if this was a system stop gate). - LearnerProgress learnerProgress = (LearnerProgress) request - .getAttribute(ActivityAction.LEARNER_PROGRESS_REQUEST_ATTRIBUTE); - if (learnerProgress == null) { - learnerProgress = learnerService.getProgress(learner.getUserId(), lessonId); - } + LearnerProgress learnerProgress = learnerService.getProgress(learner.getUserId(), lessonId); if (activity != null) { // knock the gate Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GroupingAction.java =================================================================== diff -u -re27d5ecdab649eab65bec7460d22928bb972a722 -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GroupingAction.java (.../GroupingAction.java) (revision e27d5ecdab649eab65bec7460d22928bb972a722) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GroupingAction.java (.../GroupingAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.learning.web.action; import java.io.IOException; @@ -141,8 +140,6 @@ boolean groupingDone = learnerService.performGrouping(lessonId, activity.getActivityId(), LearningWebUtil.getUserId(), forceGroup); - LearningWebUtil.putActivityInRequest(request, activity, learnerService); - DynaActionForm groupForm = (DynaActionForm) form; groupForm.set("previewLesson", learnerProgress.getLesson().isPreviewLesson()); groupForm.set("title", activity.getTitle()); @@ -197,12 +194,13 @@ LearningWebUtil.putActivityPositionInRequest(activityId, request, getServlet().getServletContext()); // make sure the lesson id is always in the request for the progress bar. - if ( request.getAttribute(AttributeNames.PARAM_LESSON_ID) == null ) { - if ( learnerProgress == null ) { - ICoreLearnerService learnerService = LearnerServiceProxy.getLearnerService(getServlet().getServletContext()); + if (request.getAttribute(AttributeNames.PARAM_LESSON_ID) == null) { + if (learnerProgress == null) { + ICoreLearnerService learnerService = LearnerServiceProxy + .getLearnerService(getServlet().getServletContext()); learnerProgress = LearningWebUtil.getLearnerProgress(request, learnerService); } - request.setAttribute(AttributeNames.PARAM_LESSON_ID, learnerProgress.getLesson().getLessonId()); + request.setAttribute(AttributeNames.PARAM_LESSON_ID, learnerProgress.getLesson().getLessonId()); } return mapping.findForward(GroupingAction.SHOW_GROUP); } Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/LearnerAction.java =================================================================== diff -u -rc045fd81f51f1f9fccf15f702a6f1b2c1da9fab3 -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/LearnerAction.java (.../LearnerAction.java) (revision c045fd81f51f1f9fccf15f702a6f1b2c1da9fab3) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/LearnerAction.java (.../LearnerAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -96,14 +96,12 @@ private static final String[] MONITOR_MESSAGE_KEYS = new String[] { "label.learner.progress.activity.current.tooltip", "label.learner.progress.activity.completed.tooltip", "label.learner.progress.activity.attempted.tooltip", "label.learner.progress.activity.tostart.tooltip", - "label.learner.progress.activity.support.tooltip"}; + "label.learner.progress.activity.support.tooltip" }; - private static final String[] LEARNER_MESSAGE_KEYS = new String[] { - "message.learner.progress.restart.confirm", "message.lesson.restart.button", - "label.learner.progress.notebook", "button.exit", - "label.learner.progress.support", "label.my.progress"}; + private static final String[] LEARNER_MESSAGE_KEYS = new String[] { "message.learner.progress.restart.confirm", + "message.lesson.restart.button", "label.learner.progress.notebook", "button.exit", + "label.learner.progress.support", "label.my.progress" }; - // --------------------------------------------------------------------- // Class level constants - Struts forward // --------------------------------------------------------------------- @@ -178,8 +176,6 @@ + learnerProgress.toString()); } - LearningWebUtil.putLearnerProgressInRequest(request, learnerProgress); - ActivityMapping activityMapping = LearnerServiceProxy .getActivityMapping(this.getServlet().getServletContext()); String url = "learning/" + activityMapping.getDisplayActivityAction(lessonID); @@ -270,7 +266,7 @@ } responseJSON.put("messages", getProgressBarMessages()); - + ICoreLearnerService learnerService = LearnerServiceProxy.getLearnerService(getServlet().getServletContext()); Object[] ret = learnerService.getStructuredActivityURLs(learnerId, lessonId); if (ret == null) { @@ -403,7 +399,8 @@ private JSONObject getProgressBarMessages() throws JSONException { if (progressBarMessages == null) { progressBarMessages = new JSONObject(); - MessageService messageService = LearnerServiceProxy.getMonitoringMessageService(getServlet().getServletContext()); + MessageService messageService = LearnerServiceProxy + .getMonitoringMessageService(getServlet().getServletContext()); for (String key : MONITOR_MESSAGE_KEYS) { String value = messageService.getMessage(key); progressBarMessages.put(key, value); @@ -416,7 +413,7 @@ } return progressBarMessages; } - + /** * Gets the lesson details based on lesson id or the current tool session */ @@ -425,9 +422,9 @@ JSONObject responseJSON = new JSONObject(); Lesson lesson = null; - + Long lessonID = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID, true); - if ( lessonID != null ) { + if (lessonID != null) { lesson = LearnerServiceProxy.getLearnerService(getServlet().getServletContext()).getLesson(lessonID); } else { Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/SequenceActivityAction.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/SequenceActivityAction.java (.../SequenceActivityAction.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/SequenceActivityAction.java (.../SequenceActivityAction.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.learning.web.action; import java.io.UnsupportedEncodingException; @@ -84,7 +83,6 @@ learnerProgress = learnerService.chooseActivity(learnerId, learnerProgress.getLesson().getLessonId(), firstActivityInSequence, true); forward = actionMappings.getActivityForward(firstActivityInSequence, learnerProgress, true); - LearningWebUtil.putActivityInRequest(request, firstActivityInSequence, learnerService); return forward; } else { // No activities exist in the sequence, so go to the next activity. Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/util/ActivityMapping.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/util/ActivityMapping.java (.../ActivityMapping.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/util/ActivityMapping.java (.../ActivityMapping.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.learning.web.util; import java.io.Serializable; @@ -35,7 +34,6 @@ import org.apache.struts.action.RedirectingActionForward; import org.lamsfoundation.lams.learning.service.ICoreLearnerService; import org.lamsfoundation.lams.learning.service.LearnerServiceException; -import org.lamsfoundation.lams.learning.web.action.ActivityAction; import org.lamsfoundation.lams.learning.web.action.DisplayActivityAction; import org.lamsfoundation.lams.learningdesign.Activity; import org.lamsfoundation.lams.lesson.LearnerProgress; @@ -83,10 +81,11 @@ public ActionForward getActivityForward(Activity activity, LearnerProgress progress, boolean redirect) { ActionForward actionForward = null; - //String strutsAction = getActivityAction(activity, progress); String strutsAction = this.activityMappingStrategy.getActivityAction(activity); - strutsAction = WebUtil.appendParameterToURL(strutsAction, LearningWebUtil.PARAM_PROGRESS_ID, + strutsAction = WebUtil.appendParameterToURL(strutsAction, AttributeNames.PARAM_LEARNER_PROGRESS_ID, progress.getLearnerProgressId().toString()); + strutsAction = WebUtil.appendParameterToURL(strutsAction, AttributeNames.PARAM_ACTIVITY_ID, + activity.getActivityId().toString()); if ((activity != null) && activity.isToolActivity()) { // always use redirect false for a ToolActivity as ToolDisplayActivity @@ -124,7 +123,7 @@ // and there isn't an activity from which we can determine the lesson and hence // the progress. String strutsAction = this.getActivityMappingStrategy().getLessonCompleteAction(); - strutsAction = WebUtil.appendParameterToURL(strutsAction, LearningWebUtil.PARAM_PROGRESS_ID, + strutsAction = WebUtil.appendParameterToURL(strutsAction, AttributeNames.PARAM_LEARNER_PROGRESS_ID, progress.getLearnerProgressId().toString()); strutsAction = ActivityMapping.strutsActionToURL(strutsAction, null, true); actionForward = this.getClearFramesForward(strutsAction, progress.getLearnerProgressId().toString()); @@ -143,13 +142,6 @@ actionForward = this.getClearFramesForward(activityURL, progress.getLearnerProgressId().toString()); } else { actionForward = getActivityForward(progress.getNextActivity(), progress, redirect); - if (progress.getNextActivity() != null) { - //setup activity into request for display - Activity realActivity = learnerService.getActivity(progress.getNextActivity().getActivityId()); - request.setAttribute(ActivityAction.ACTIVITY_REQUEST_ATTRIBUTE, realActivity); - - LearningWebUtil.putActivityInRequest(request, progress.getNextActivity(), learnerService); - } } } } @@ -174,7 +166,7 @@ ActionForward actionForward = null; String strutsAction = "/requestDisplay.do?url=" + encodedURL; - strutsAction = WebUtil.appendParameterToURL(strutsAction, LearningWebUtil.PARAM_PROGRESS_ID, progressId); + strutsAction = WebUtil.appendParameterToURL(strutsAction, AttributeNames.PARAM_LEARNER_PROGRESS_ID, progressId); actionForward = strutsActionToForward(strutsAction, null, false); return actionForward; @@ -229,7 +221,7 @@ public static String strutsActionToURL(String strutsAction, Activity activity, boolean useContext) { String url = strutsAction; - if (activity != null) { + if (activity != null && !url.contains(AttributeNames.PARAM_ACTIVITY_ID)) { url = WebUtil.appendParameterToURL(url, AttributeNames.PARAM_ACTIVITY_ID, activity.getActivityId().toString()); } @@ -356,7 +348,7 @@ url = WebUtil.appendParameterToURL(url, AttributeNames.PARAM_ACTIVITY_ID, activityId.toString()); } if (progressId != null) { - url = WebUtil.appendParameterToURL(url, LearningWebUtil.PARAM_PROGRESS_ID, progressId.toString()); + url = WebUtil.appendParameterToURL(url, AttributeNames.PARAM_LEARNER_PROGRESS_ID, progressId.toString()); } return url; } Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/util/LearningWebUtil.java =================================================================== diff -u -r4178946e3eca32b05e44562053a1cfafcf6a872c -rfd1c6c450376476c752e6be5cb6048a2e370bd42 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/util/LearningWebUtil.java (.../LearningWebUtil.java) (revision 4178946e3eca32b05e44562053a1cfafcf6a872c) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/util/LearningWebUtil.java (.../LearningWebUtil.java) (revision fd1c6c450376476c752e6be5cb6048a2e370bd42) @@ -35,7 +35,6 @@ import org.lamsfoundation.lams.learning.service.ICoreLearnerService; import org.lamsfoundation.lams.learning.service.ILearnerService; import org.lamsfoundation.lams.learning.service.LearnerServiceException; -import org.lamsfoundation.lams.learning.web.action.ActivityAction; import org.lamsfoundation.lams.learning.web.bean.ActivityPositionDTO; import org.lamsfoundation.lams.learning.web.bean.ActivityURL; import org.lamsfoundation.lams.learningdesign.Activity; @@ -62,11 +61,7 @@ // --------------------------------------------------------------------- // Class level constants - session attributes // --------------------------------------------------------------------- - public static final String PARAM_PROGRESS_ID = "progressID"; - // public static final String POPUP_WINDOW_NAME = "LearnerActivity"; - // public static final String LEARNER_WINDOW_NAME = "lWindow"; - /** * Helper method to retrieve the user data. Gets the id from the user details in the shared session * @@ -90,18 +85,6 @@ } /** - * Put the learner progress in the request. This allows some optimisation between the code that updates the progress - * and the next action which will access the progress. - */ - public static void putLearnerProgressInRequest(HttpServletRequest request, LearnerProgress progress) { - if (progress != null) { - request.setAttribute(ActivityAction.LEARNER_PROGRESS_REQUEST_ATTRIBUTE, progress); - } else { - request.removeAttribute(ActivityAction.LEARNER_PROGRESS_REQUEST_ATTRIBUTE); - } - } - - /** * Get the current learner progress. Check the request - in some cases it may be there. * * If not, the learner progress id might be in the request (if we've just come from complete activity). If so, get @@ -111,86 +94,42 @@ * activity id in the request. */ public static LearnerProgress getLearnerProgress(HttpServletRequest request, ICoreLearnerService learnerService) { - LearnerProgress learnerProgress = (LearnerProgress) request - .getAttribute(ActivityAction.LEARNER_PROGRESS_REQUEST_ATTRIBUTE); - if (learnerProgress != null) { - if (LearningWebUtil.log.isDebugEnabled()) { - LearningWebUtil.log.debug("getLearnerProgress: found progress in the request"); - } - return learnerProgress; + LearnerProgress learnerProgress = null; + + Long learnerProgressId = WebUtil.readLongParam(request, AttributeNames.PARAM_LEARNER_PROGRESS_ID, true); + // temp hack until UI side updates it call. + if (learnerProgressId == null) { + learnerProgressId = WebUtil.readLongParam(request, "progressId", true); } - if (learnerProgress == null) { - Long learnerProgressId = WebUtil.readLongParam(request, LearningWebUtil.PARAM_PROGRESS_ID, true); - // temp hack until UI side updates it call. - if (learnerProgressId == null) { - learnerProgressId = WebUtil.readLongParam(request, "progressId", true); - } - - if (learnerProgressId != null) { - learnerProgress = learnerService.getProgressById(new Long(learnerProgressId)); - if ((learnerProgress != null) && LearningWebUtil.log.isDebugEnabled()) { - LearningWebUtil.log.debug("getLearnerProgress: found progress via progress id"); - } - } - + if (learnerProgressId != null) { + learnerProgress = learnerService.getProgressById(new Long(learnerProgressId)); } if (learnerProgress == null) { Integer learnerId = LearningWebUtil.getUserId(); Activity act = LearningWebUtil.getActivityFromRequest(request, learnerService); Lesson lesson = learnerService.getLessonByActivity(act); learnerProgress = learnerService.getProgress(learnerId, lesson.getLessonId()); - if ((learnerProgress != null) && LearningWebUtil.log.isDebugEnabled()) { - LearningWebUtil.log.debug("getLearnerProgress: found progress via learner id and activity"); - } } - LearningWebUtil.putLearnerProgressInRequest(request, learnerProgress); return learnerProgress; } /** - * Get the activity from request. We assume there is a parameter coming in if there is no activity can be found in - * the http request. Then the activity id parameter is used to retrieve from database. + * Get the activity from request. We assume there is a parameter coming in. Then the activity id parameter is used + * to retrieve from database. * * @param request * @return */ public static Activity getActivityFromRequest(HttpServletRequest request, ICoreLearnerService learnerService) { - Activity activity = (Activity) request.getAttribute(ActivityAction.ACTIVITY_REQUEST_ATTRIBUTE); - - if (activity == null) { - long activityId = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); - - activity = learnerService.getActivity(new Long(activityId)); - - if (activity != null) { - // getActivityFromRequest() may be called multiple times, so make it quicker next time - request.setAttribute(ActivityAction.ACTIVITY_REQUEST_ATTRIBUTE, activity); - } - } + long activityId = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); + Activity activity = learnerService.getActivity(new Long(activityId)); return activity; } /** - * Put an activity into the request. Calls LearnerService to get the activity, to ensure that it is a "real" - * activity, not one of the cglib proxies. activity. - * - * @param request - * @param activity - */ - public static void putActivityInRequest(HttpServletRequest request, Activity activity, - ICoreLearnerService learnerService) { - if (activity != null) { - Activity realActivity = learnerService.getActivity(activity.getActivityId()); - request.setAttribute(ActivityAction.ACTIVITY_REQUEST_ATTRIBUTE, realActivity); - } else { - request.setAttribute(ActivityAction.ACTIVITY_REQUEST_ATTRIBUTE, null); - } - } - - /** * "Complete" an activity from the web layer's perspective. Used for CompleteActivityAction and the Gate and * Grouping actions. Calls the learningService to actually complete the activity and progress. * @@ -227,8 +166,6 @@ return actionMappings.getCloseForward(currentActivity, lesson.getLessonId()); } - LearningWebUtil.putActivityInRequest(request, progress.getNextActivity(), learnerService); - LearningWebUtil.putLearnerProgressInRequest(request, progress); return actionMappings.getProgressForward(progress, redirect, false, request, learnerService); } @@ -245,13 +182,8 @@ ActivityURL activityURL = new ActivityURL(); activityURL.setType(activity.getClass().getSimpleName()); - if ( isFloating && activity.isFloatingActivity() ) { - // special case - progress engine. Do not want the unknown activity warning - activityURL.setUrl(null); - } else { - activityURL.setUrl(activityMapping.getActivityURL(activity)); - } - + String url = activityMapping.getActivityURL(activity); + activityURL.setUrl(url); activityURL.setActivityId(activity.getActivityId()); activityURL.setTitle(activity.getTitle()); activityURL.setDescription(activity.getDescription());