diff --git a/app/assets/javascripts/discourse/controllers/user.js.es6 b/app/assets/javascripts/discourse/controllers/user.js.es6
index 651347c2f8b..bc4e753e00a 100644
--- a/app/assets/javascripts/discourse/controllers/user.js.es6
+++ b/app/assets/javascripts/discourse/controllers/user.js.es6
@@ -8,6 +8,10 @@ export default ObjectController.extend({
collapsedInfo: Em.computed.not('indexStream'),
+ showEmailOnProfile: Discourse.computed.setting('show_email_on_profile'),
+
+ showEmail: Ember.computed.and('email', 'showEmailOnProfile'),
+
websiteName: function() {
var website = this.get('website');
if (Em.isEmpty(website)) { return; }
diff --git a/app/assets/javascripts/discourse/templates/user/user.js.handlebars b/app/assets/javascripts/discourse/templates/user/user.js.handlebars
index bf4120fd1e8..a0c6627e9c3 100644
--- a/app/assets/javascripts/discourse/templates/user/user.js.handlebars
+++ b/app/assets/javascripts/discourse/templates/user/user.js.handlebars
@@ -144,6 +144,9 @@
{{#if invited_by}}
{{i18n user.invited_by}}{{#link-to 'user' invited_by}}{{invited_by.username}}{{/link-to}}
{{/if}}
+ {{#if showEmail}}
+ {{i18n user.email.title}}{{email}}
+ {{/if}}
{{i18n user.trust_level}}{{trustLevel.name}}
{{plugin-outlet "user-profile-secondary"}}
diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml
index b6a50a9b9e5..1b1a508e8c7 100644
--- a/config/locales/server.en.yml
+++ b/config/locales/server.en.yml
@@ -740,6 +740,7 @@ en:
topics_per_period_in_top_summary: "Number of top topics shown in the default top topics summary."
topics_per_period_in_top_page: "Number of top topics shown on the expanded 'Show More' top topics."
redirect_users_to_top_page: "Automatically redirect new and long absent users to the top page."
+ show_email_on_profile: "Show a user's email on their profile (only visible to themselves and staff)"
email_token_valid_hours: "Forgot password / activate account tokens are valid for (n) hours."
email_token_grace_period_hours: "Forgot password / activate account tokens are still valid for a grace period of (n) hours after being redeemed."
diff --git a/config/site_settings.yml b/config/site_settings.yml
index 072b2599463..beed0f0723c 100644
--- a/config/site_settings.yml
+++ b/config/site_settings.yml
@@ -283,7 +283,9 @@ users:
client: true
default: 15
redirect_users_to_top_page: true
-
+ show_email_on_profile:
+ client: true
+ default: false
email_token_valid_hours: 24
email_token_grace_period_hours: 0