Index: lams_central/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -r9b6a76a2d4c311fa258ec8d07d61277845d53ffa -r8872130dfd8a6b86ca24fb61fbd55018ee938c7a --- lams_central/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 9b6a76a2d4c311fa258ec8d07d61277845d53ffa) +++ lams_central/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 8872130dfd8a6b86ca24fb61fbd55018ee938c7a) @@ -181,6 +181,9 @@ flash.download.player =Download Flash Player audit.user.password.change =Password changed for: {0} title.author.window =LAMS :: Author +title.all.my.lessons = All My Lessons +msg.no.lessons = No lessons +label.return.to.myprofile = Return to My Profile #======= End labels: Exported 175 labels for en AU ===== Index: lams_central/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== diff -u -r9b6a76a2d4c311fa258ec8d07d61277845d53ffa -r8872130dfd8a6b86ca24fb61fbd55018ee938c7a --- lams_central/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 9b6a76a2d4c311fa258ec8d07d61277845d53ffa) +++ lams_central/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 8872130dfd8a6b86ca24fb61fbd55018ee938c7a) @@ -181,6 +181,9 @@ flash.download.player =Download Flash Player audit.user.password.change =Password changed for: {0} title.author.window =LAMS :: Author +title.all.my.lessons = All My Lessons +msg.no.lessons = No lessons +label.return.to.myprofile = Return to My Profile #======= End labels: Exported 175 labels for en AU ===== Index: lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java =================================================================== diff -u -r54f5e17d1a5e8baae23bb9332f83ad8d8e5ac405 -r8872130dfd8a6b86ca24fb61fbd55018ee938c7a --- lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java (.../IndexAction.java) (revision 54f5e17d1a5e8baae23bb9332f83ad8d8e5ac405) +++ lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java (.../IndexAction.java) (revision 8872130dfd8a6b86ca24fb61fbd55018ee938c7a) @@ -74,6 +74,7 @@ * @struts.action-forward name="password" path="/password.do" * @struts.action-forward name="passwordChanged" path=".passwordChangeOk" * @struts.action-forward name="portrait" path="/portrait.do" + * @struts.action-forward name="lessons" path="/profile.do?method=lessons" * @struts.action-forward name="content" path="/indexContent.jsp" */ public class IndexAction extends Action { @@ -117,6 +118,8 @@ return mapping.findForward("passwordChanged"); } else if (StringUtils.equals(tab, "portrait")) { return mapping.findForward("portrait"); + } else if (StringUtils.equals(tab, "lessons")) { + return mapping.findForward("lessons"); } else if (StringUtils.equals(tab, "community")) { request.setAttribute("tab", tab); return mapping.findForward("community"); Index: lams_central/src/java/org/lamsfoundation/lams/web/ProfileAction.java =================================================================== diff -u -r54f5e17d1a5e8baae23bb9332f83ad8d8e5ac405 -r8872130dfd8a6b86ca24fb61fbd55018ee938c7a --- lams_central/src/java/org/lamsfoundation/lams/web/ProfileAction.java (.../ProfileAction.java) (revision 54f5e17d1a5e8baae23bb9332f83ad8d8e5ac405) +++ lams_central/src/java/org/lamsfoundation/lams/web/ProfileAction.java (.../ProfileAction.java) (revision 8872130dfd8a6b86ca24fb61fbd55018ee938c7a) @@ -34,6 +34,8 @@ import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.DynaActionForm; +import org.lamsfoundation.lams.learning.service.ICoreLearnerService; +import org.lamsfoundation.lams.lesson.dto.LessonDTO; import org.lamsfoundation.lams.usermanagement.SupportedLocale; import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; @@ -61,13 +63,15 @@ * validate="false" * * @struts:action-forward name="view" path=".profile" + * @struts:action-forward name="lessons" path=".lessons" * @struts:action-forward name="edit" path=".editprofile" */ public class ProfileAction extends LamsDispatchAction { private static Logger log = Logger.getLogger(ProfileAction.class); private static IUserManagementService service; private static List locales; + private static ICoreLearnerService learnerService; public ActionForward view(ActionMapping mapping, ActionForm form, @@ -82,9 +86,24 @@ request.setAttribute("email", (email!=null ? email : "")); request.setAttribute("portraitUuid", (requestor.getPortraitUuid()==null ? 0 : requestor.getPortraitUuid())); request.setAttribute("tab", "profile"); + return mapping.findForward("view"); } + public ActionForward lessons(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response) throws Exception { + + User requestor = (User)getService().getUserByLogin(request.getRemoteUser()); + // list all active lessons for this learner (single sql query) + LessonDTO[] lessons = getLearnerService().getActiveLessonsFor(requestor.getUserId()); + request.setAttribute("lessons", lessons); + request.setAttribute("tab", "profile"); + + return mapping.findForward("lessons"); + } + public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request, @@ -110,4 +129,12 @@ } return service; } + + private ICoreLearnerService getLearnerService(){ + if(learnerService==null){ + WebApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(getServlet().getServletContext()); + learnerService = (ICoreLearnerService) ctx.getBean("learnerService"); + } + return learnerService; + } } Index: lams_central/web/lessons.jsp =================================================================== diff -u --- lams_central/web/lessons.jsp (revision 0) +++ lams_central/web/lessons.jsp (revision 8872130dfd8a6b86ca24fb61fbd55018ee938c7a) @@ -0,0 +1,33 @@ +<%@ page language="java" pageEncoding="UTF-8" + contentType="text/html;charset=utf-8"%> +<%@ taglib uri="tags-fmt" prefix="fmt"%> +<%@ taglib uri="tags-core" prefix="c"%> + +
+ +

+

+ +
+ + +

+ + )" class="sequence-name-link"> + +
+
+

+
+ +

+
+ +
+" + onclick="javascript:document.location='index.do?state=active&tab=profile'" /> +
+ +
Index: lams_central/web/profile.jsp =================================================================== diff -u -ra848ff153801b510899630b14adab47208bed673 -r8872130dfd8a6b86ca24fb61fbd55018ee938c7a --- lams_central/web/profile.jsp (.../profile.jsp) (revision a848ff153801b510899630b14adab47208bed673) +++ lams_central/web/profile.jsp (.../profile.jsp) (revision 8872130dfd8a6b86ca24fb61fbd55018ee938c7a) @@ -57,6 +57,10 @@
  • + +