Index: lams_admin/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== diff -u -rc237005f7628b877893619745e0c166202caba89 -rec8852a3b210bda6bc32e99a177f4767dca7d8ee --- lams_admin/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision c237005f7628b877893619745e0c166202caba89) +++ lams_admin/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision ec8852a3b210bda6bc32e99a177f4767dca7d8ee) @@ -635,6 +635,7 @@ sysadmin.lesson.allow.restart =Learners can restart the lesson sysadmin.lesson.default =Lesson default settings config.enable.portrait.editing =Enable profile portrait editing +config.enable.forgot.your.password.link =Enable "Forgot your password" link at the login page #======= End labels: Exported 629 labels for en AU ===== Index: lams_central/src/java/org/lamsfoundation/lams/web/ForgotPasswordServlet.java =================================================================== diff -u -rfcc5eca8a605afdc9e927366827553a7862000cd -rec8852a3b210bda6bc32e99a177f4767dca7d8ee --- lams_central/src/java/org/lamsfoundation/lams/web/ForgotPasswordServlet.java (.../ForgotPasswordServlet.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd) +++ lams_central/src/java/org/lamsfoundation/lams/web/ForgotPasswordServlet.java (.../ForgotPasswordServlet.java) (revision ec8852a3b210bda6bc32e99a177f4767dca7d8ee) @@ -21,6 +21,7 @@ import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.util.Configuration; +import org.lamsfoundation.lams.util.ConfigurationKeys; import org.lamsfoundation.lams.util.Emailer; import org.lamsfoundation.lams.util.FileUtilException; import org.lamsfoundation.lams.util.MessageService; @@ -64,7 +65,15 @@ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String method = request.getParameter("method"); - if (method.equals("requestEmail")) { + if (method.equals("showForgotYourPasswordPage")) { + if (Configuration.getAsBoolean(ConfigurationKeys.FORGOT_YOUR_PASSWORD_LINK_ENABLE)) { + request.getRequestDispatcher("/forgotPassword.jsp").forward(request, response); + } else { + //if people try to get to the forgot your password page by going to the URL directly, we display a 404 error message + response.sendError(HttpServletResponse.SC_NOT_FOUND); + } + + } else if (method.equals("requestEmail")) { String selectType = request.getParameter("selectType"); Boolean findByEmail = false; String param = ""; Index: lams_central/web/WEB-INF/web.xml =================================================================== diff -u -r0898a69fe7920bed4819711b7b94e2bc931a5405 -rec8852a3b210bda6bc32e99a177f4767dca7d8ee --- lams_central/web/WEB-INF/web.xml (.../web.xml) (revision 0898a69fe7920bed4819711b7b94e2bc931a5405) +++ lams_central/web/WEB-INF/web.xml (.../web.xml) (revision ec8852a3b210bda6bc32e99a177f4767dca7d8ee) @@ -670,7 +670,6 @@ /services/UserRoleManager /services/xml/CourseGroupManager /ForgotPasswordRequest - /forgotPassword.jsp /forgotPasswordChange.jsp /forgotPasswordProc.jsp /loginTwoFactorAuth.jsp Index: lams_central/web/login.jsp =================================================================== diff -u -r3c797b7dcb58649de6790843ea3bcd6fbc4b2eb1 -rec8852a3b210bda6bc32e99a177f4767dca7d8ee --- lams_central/web/login.jsp (.../login.jsp) (revision 3c797b7dcb58649de6790843ea3bcd6fbc4b2eb1) +++ lams_central/web/login.jsp (.../login.jsp) (revision ec8852a3b210bda6bc32e99a177f4767dca7d8ee) @@ -14,6 +14,7 @@ +<%=Configuration.get(ConfigurationKeys.FORGOT_YOUR_PASSWORD_LINK_ENABLE)%> @@ -59,6 +60,16 @@ } $('#j_username').focus(); $('#news').load('/lams/www/news.html'); + + //make a POST call to ForgotPasswordRequest + $("#forgot-password-link").click(function() { + var $form=$(document.createElement('form')) + .css({display:'none'}) + .attr("method","POST") + .attr("action","ForgotPasswordRequest?method=showForgotYourPasswordPage"); + $("body").append($form); + $form.submit(); + }); }); @@ -118,12 +129,15 @@
-
- -
+ +
+ +
+
+
- +
Index: lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20181127.sql =================================================================== diff -u --- lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20181127.sql (revision 0) +++ lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch20181127.sql (revision ec8852a3b210bda6bc32e99a177f4767dca7d8ee) @@ -0,0 +1,15 @@ +-- Turn off autocommit, so nothing is committed if there is an error +SET AUTOCOMMIT = 0; +SET FOREIGN_KEY_CHECKS=0; +----------------------Put all sql statements below here------------------------- + +-- LDEV-4710 Config setting to display or not the "Forgot your password?" option +INSERT INTO lams_configuration (config_key, config_value, description_key, header_name, format, required) +VALUES ('EnableForgotYourPasswordLink','true', 'config.enable.forgot.your.password.link', 'config.header.features', 'BOOLEAN', 0); + +----------------------Put all sql statements above here------------------------- + +-- If there were no errors, commit and restore autocommit to on +COMMIT; +SET AUTOCOMMIT = 1; +SET FOREIGN_KEY_CHECKS=1; \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/util/ConfigurationKeys.java =================================================================== diff -u -r4c3ad5024c58eb93d1b4190c5ad4960374e1f408 -rec8852a3b210bda6bc32e99a177f4767dca7d8ee --- lams_common/src/java/org/lamsfoundation/lams/util/ConfigurationKeys.java (.../ConfigurationKeys.java) (revision 4c3ad5024c58eb93d1b4190c5ad4960374e1f408) +++ lams_common/src/java/org/lamsfoundation/lams/util/ConfigurationKeys.java (.../ConfigurationKeys.java) (revision ec8852a3b210bda6bc32e99a177f4767dca7d8ee) @@ -225,6 +225,8 @@ public static String SMTP_AUTH_SECURITY = "SMTPAuthSecurity"; public static String PROFILE_EDIT_ENABLE = "ProfileEditEnable"; + + public static String FORGOT_YOUR_PASSWORD_LINK_ENABLE = "EnableForgotYourPasswordLink"; public static String PROFILE_PARTIAL_EDIT_ENABLE = "ProfilePartialEditEnable";