Index: lams_admin/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== RCS file: /usr/local/cvsroot/lams_admin/conf/language/lams/ApplicationResources_en_AU.properties,v diff -u -r1.92.2.8 -r1.92.2.9 --- lams_admin/conf/language/lams/ApplicationResources_en_AU.properties 14 Nov 2016 22:54:00 -0000 1.92.2.8 +++ lams_admin/conf/language/lams/ApplicationResources_en_AU.properties 22 Nov 2016 08:25:25 -0000 1.92.2.9 @@ -547,5 +547,7 @@ error.theme.invalid =Invalid theme label.theme =Theme +label.2FA.property.enable =Enable two-factor authentication + #======= End labels: Exported 540 labels for en AU ===== Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java,v diff -u -r1.52.2.4 -r1.52.2.5 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java 11 May 2016 07:06:57 -0000 1.52.2.4 +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java 22 Nov 2016 08:25:25 -0000 1.52.2.5 @@ -65,19 +65,7 @@ /** * @author Jun-Dir Liew - * - * Created at 17:00:18 on 13/06/2006 */ - -/** - * - * - * - * - * - * - * - */ public class UserAction extends LamsDispatchAction { private static Logger log = Logger.getLogger(UserAction.class); @@ -187,6 +175,9 @@ userSelectedTheme = UserAction.themeService.getDefaultTheme().getThemeId(); } userForm.set("userTheme", userSelectedTheme); + + //property available for modification only to sysadmins + userForm.set("twoFactorAuthenticationEnabled", user.isTwoFactorAuthenticationEnabled()); } else { // create a user try { SupportedLocale locale = LanguageUtil.getDefaultLocale(); @@ -196,6 +187,11 @@ } } userForm.set("orgId", (org == null ? null : org.getOrganisationId())); + + // sysadmins can mark users as required to use two-factor authentication + if (request.isUserInRole(Role.SYSADMIN)) { + request.setAttribute("isSysadmin", true); + } // Get all available time zones List availableTimeZones = UserAction.timezoneService.getDefaultTimezones(); Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java,v diff -u -r1.39.2.5 -r1.39.2.6 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java 11 May 2016 07:06:57 -0000 1.39.2.5 +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java 22 Nov 2016 08:25:25 -0000 1.39.2.6 @@ -51,20 +51,7 @@ /** * @author Jun-Dir Liew - * - * Created at 12:35:38 on 14/06/2006 */ - -/** - * struts doclets - * - * - * - * - * - * - * - */ public class UserSaveAction extends Action { private static Logger log = Logger.getLogger(UserSaveAction.class); Index: lams_admin/web/user.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_admin/web/user.jsp,v diff -u -r1.29.2.8 -r1.29.2.9 --- lams_admin/web/user.jsp 4 Nov 2016 08:26:18 -0000 1.29.2.8 +++ lams_admin/web/user.jsp 22 Nov 2016 08:25:25 -0000 1.29.2.9 @@ -15,10 +15,8 @@ <%=Configuration.get(ConfigurationKeys.PASSWORD_POLICY_NUMERICS)%> <%=Configuration.get(ConfigurationKeys.PASSWORD_POLICY_SYMBOLS)%> - + - - - - - + + + - : " - class="btn btn-default"> - : " - class="btn btn-default"> + : " class="btn btn-default"> + + + : " class="btn btn-default"> + + - : " - class="btn btn-default"> + : " class="btn btn-default"> + + - + + + @@ -151,7 +145,6 @@
- : @@ -176,7 +169,6 @@
  • -
    @@ -258,89 +250,130 @@ styleClass="form-control" /> - : - + + : + + + + - : + + : + + styleClass="form-control" /> + - : + + : + + styleClass="form-control" /> + - : - + + : + + + + - : - + + : + + + + - : - + + : + + + + - : - + + : + + + - : - + + : + + + - + + - : - + + : + + + - ${timezoneDto.timeZoneId} - ${timezoneDto.displayName} - + ${timezoneDto.timeZoneId} - ${timezoneDto.displayName} + - + + - : - + + : + + + ${theme.name} - + + + - : - + + : + + + + + + + + + : + + + + + + +
    - " formnovalidate="formnovalidate" onclick="bCancel=true;" id="cancelButton" class="btn btn-default"/> - + " + formnovalidate="formnovalidate" onclick="bCancel=true;" id="cancelButton" class="btn btn-default"/> +
    @@ -368,10 +401,12 @@ : - + + role.   - + + @@ -381,20 +416,22 @@ - +
    + + + + @@ -403,11 +440,13 @@ + + +
    : :
    role.   -
    role.   -
    Index: lams_admin/web/WEB-INF/struts-config.xml =================================================================== RCS file: /usr/local/cvsroot/lams_admin/web/WEB-INF/Attic/struts-config.xml,v diff -u -r1.1.2.5 -r1.1.2.6 --- lams_admin/web/WEB-INF/struts-config.xml 4 Nov 2016 08:25:18 -0000 1.1.2.5 +++ lams_admin/web/WEB-INF/struts-config.xml 22 Nov 2016 08:25:25 -0000 1.1.2.6 @@ -89,6 +89,7 @@ +