=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/setting/SystemSettingManager.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/setting/SystemSettingManager.java 2012-10-25 13:31:14 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/setting/SystemSettingManager.java 2012-10-29 20:17:23 +0000 @@ -75,6 +75,7 @@ final String KEY_SCHEDULE_AGGREGATE_QUERY_BUILDER_TASKS = "scheduleAggregateQueryBuilder"; final String KEY_AGGREGATE_QUERY_BUILDER_ORGUNITGROUPSET_AGG_LEVEL = "aggQueryBuilderorgUnitGroupSetAggregationLevel"; final String KEY_CONFIGURATION = "keyConfig"; + final String KEY_ACCOUNT_RECOVERY = "keyAccountRecovery"; final int DEFAULT_MAX_NUMBER_OF_ATTEMPTS = 20; final int DEFAULT_TIMEFRAME_MINUTES = 1; @@ -111,4 +112,6 @@ String getEmailUsername(); String getEmailPassword(); + + boolean accountRecoveryEnabled(); } === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/EmailMessageSender.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/EmailMessageSender.java 2012-10-18 11:22:57 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/EmailMessageSender.java 2012-10-29 20:17:23 +0000 @@ -124,7 +124,7 @@ { email.addBcc( user.getEmail() ); - log.debug( "Sent email to user: " + user + " with email address: " + user.getEmail() ); + log.debug( "Sending email to user: " + user + " with email address: " + user.getEmail() ); hasRecipients = true; } @@ -133,6 +133,8 @@ if ( hasRecipients ) { email.send(); + + log.debug( "Email sent" ); } } catch ( EmailException ex ) === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/setting/DefaultSystemSettingManager.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/setting/DefaultSystemSettingManager.java 2012-10-23 08:04:24 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/setting/DefaultSystemSettingManager.java 2012-10-29 20:17:23 +0000 @@ -147,4 +147,9 @@ { return StringUtils.trimToNull( (String) getSystemSetting( KEY_EMAIL_USERNAME ) ); } + + public boolean accountRecoveryEnabled() + { + return (Boolean) getSystemSetting( KEY_ACCOUNT_RECOVERY, false ); + } } === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/restore_message1.vm' --- dhis-2/dhis-services/dhis-service-core/src/main/resources/restore_message1.vm 2012-10-29 14:34:57 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/resources/restore_message1.vm 2012-10-29 20:17:23 +0000 @@ -1,7 +1,11 @@ -Someone, probably you, have asked us to restore your useraccount at ${basePath}. -You have been sent two emails. This is the first email of those two. Please follow -the link below this text. In the next step you will be asked to enter a code -which is sent to you in the other email. You must complete the restore within 1 -hour. - -${restorePath}?username=${username}&token=${token} +Someone, probably you, have asked us to restore your user account at ${object.rootPath}. +You have been sent two emails, where this is the first one. Please follow the +link below. In the next step you will be asked to enter a code which has been +sent to you in the other email. + + +${object.restorePath}?username=${object.username}&token=${object.token} + + +You must complete the restore process within 1 hour. If you take no action, your +account will not be restored. === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/restore_message2.vm' --- dhis-2/dhis-services/dhis-service-core/src/main/resources/restore_message2.vm 2012-10-29 14:34:57 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/resources/restore_message2.vm 2012-10-29 20:17:23 +0000 @@ -1,7 +1,11 @@ -Someone, probably you, have asked us to restore your useraccount at ${basePath}. -You have been sent two emails. This is the second email of those two. Please -read the first email and follow the instructions. If you already have done that, -please use the code below to complete the account restore form. You must complete -the restore within 1 hour. - -${code} +Someone, probably you, have asked us to restore your user account at ${object.rootPath}. +You have been sent two emails, where this is the second one. Please read the +first email and follow the instructions. If you already have done so, please +use the code below to complete the account restore form. + + +${object.code} + + +You must complete the restore process within 1 hour. If you take no action, your +account will not be restored. \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/css/login.css' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/css/login.css 2012-10-23 10:26:43 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/css/login.css 2012-10-29 20:17:23 +0000 @@ -65,6 +65,11 @@ border: none; } +#loginFormFooter +{ + font-size: 14px; +} + #accountArea { position: absolute; === modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/security/login.vm' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/security/login.vm 2012-10-23 10:26:43 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/security/login.vm 2012-10-29 20:17:23 +0000 @@ -56,6 +56,19 @@ +