diff --git a/Changelog.md b/Changelog.md
index 5600e3d66e5a6638f3de6ed17ed66e3a09f3d59b..8e77b613f8419b9ab9fa2b88f2f1a228b32e5a8e 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -12,6 +12,7 @@
 * Use string-direction gem for rtl detection [#7181](https://github.com/diaspora/diaspora/pull/7181)
 * Reduce i18n.load side effects [#7184](https://github.com/diaspora/diaspora/pull/7184)
 * Force jasmine fails on syntax errors [#7185](https://github.com/diaspora/diaspora/pull/7185)
+* Don't display mail-related view content if it is disabled in the pod's config [#7190](https://github.com/diaspora/diaspora/pull/7190)
 
 ## Bug fixes
 * Fix fetching comments after fetching likes [#7167](https://github.com/diaspora/diaspora/pull/7167)
diff --git a/app/helpers/sessions_helper.rb b/app/helpers/sessions_helper.rb
index 65a9bdaf452996972a09ddb2555802909d9b1f71..716b12fed41f5d7da4b20d1e9fa96ac9b73fe585 100644
--- a/app/helpers/sessions_helper.rb
+++ b/app/helpers/sessions_helper.rb
@@ -13,7 +13,7 @@ module SessionsHelper
   end
 
   def display_password_reset_link?
-    devise_mapping.recoverable? && controller_name != "passwords"
+    AppConfig.mail.enable? && devise_mapping.recoverable? && controller_name != "passwords"
   end
 
   def flash_class(name)
diff --git a/app/views/devise/shared/_links.haml b/app/views/devise/shared/_links.haml
index 4c37c1ed547bd063673fb8b15ff4b0c78113c57b..7f3649484836641a0302cbfd68643ddd6925a687 100644
--- a/app/views/devise/shared/_links.haml
+++ b/app/views/devise/shared/_links.haml
@@ -1,13 +1,13 @@
 - if controller_name != 'sessions'
   = link_to t('.sign_in'), new_session_path(resource_name)
   %br/
-- if AppConfig.settings.enable_registrations? && devise_mapping.registerable? && controller_name != 'registrations'
+- if display_registration_link?
   = link_to t('.sign_up'), new_registration_path(resource_name)
   %br/
 - else
   %b= t('.sign_up_closed')
   %br/
-- if devise_mapping.recoverable? && controller_name != 'passwords'
+- if display_password_reset_link?
   = link_to t('.forgot_your_password'), new_password_path(resource_name)
   %br/
 - if devise_mapping.confirmable? && controller_name != 'confirmations'
diff --git a/app/views/invitations/new.html.haml b/app/views/invitations/new.html.haml
index 187a6fa12a91c01280ee1c07e603af0eea027ba6..8952aead9597d16f99acc50522374303fc11f919 100644
--- a/app/views/invitations/new.html.haml
+++ b/app/views/invitations/new.html.haml
@@ -1,32 +1,33 @@
 #paste_link
-  = t('.paste_link')
+  = t(".paste_link")
   %span#codes_left
     = "(" + t(".codes_left", count: @invite_code.count) + ")" unless AppConfig.settings.enable_registrations?
 .form-horizontal
   .control-group
     = invite_link(@invite_code)
 
-#email_invitation
-  = form_tag new_user_invitation_path, class: 'form-horizontal' do
+- if AppConfig.mail.enable?
+  #email_invitation
+    = form_tag new_user_invitation_path, class: "form-horizontal" do
 
-    .form-group
-      %label.col-sm-2.control-label{ for: 'email_inviter_emails' }
-        = t('email')
-      .col-sm-10
-        = text_field_tag 'email_inviter[emails]', @invalid_emails, title: t('.comma_separated_plz'),
-            placeholder: 'foo@bar.com, max@foo.com...', class: "form-control"
-        #already_sent
-          = t("invitations.create.note_already_sent", emails: @valid_emails) unless @valid_emails.empty?
+      .form-group
+        %label.col-sm-2.control-label{for: "email_inviter_emails"}
+          = t("email")
+        .col-sm-10
+          = text_field_tag "email_inviter[emails]", @invalid_emails, title: t(".comma_separated_plz"),
+              placeholder: "foo@bar.com, max@foo.com...", class: "form-control"
+          #already_sent
+            = t("invitations.create.note_already_sent", emails: @valid_emails) unless @valid_emails.empty?
 
-    .form-group
-      %label.col-sm-2.control-label{ for: 'email_inviter_locale' }
-        = t('.language')
-      .col-sm-10
-        = select_tag 'email_inviter[locale]',  options_from_collection_for_select(available_language_options,
-            "second", "first", selected: current_user.language), class: "form-control"
+      .form-group
+        %label.col-sm-2.control-label{for: "email_inviter_locale"}
+          = t(".language")
+        .col-sm-10
+          = select_tag "email_inviter[locale]", options_from_collection_for_select(available_language_options,
+              "second", "first", selected: current_user.language), class: "form-control"
 
-    .form-group
-      .pull-right.col-md-12
-        = submit_tag t('.send_an_invitation'), class: 'btn btn-primary pull-right',
-            data: {disable_with: t('.sending_invitation')}
-      .clearfix
+      .form-group
+        .pull-right.col-md-12
+          = submit_tag t(".send_an_invitation"), class: "btn btn-primary pull-right",
+              data: {disable_with: t(".sending_invitation")}
+        .clearfix
diff --git a/app/views/shared/_invitations.haml b/app/views/shared/_invitations.haml
index 2ddd9e6d94e88b1b4b7ac47ec9608523901678ef..b69a18c73672474a7fcd1c811c78bbd0f3a7b246 100644
--- a/app/views/shared/_invitations.haml
+++ b/app/views/shared/_invitations.haml
@@ -1,7 +1,9 @@
 = t(".share_this")
 = invite_link(current_user.invitation_code)
-.invitations-link.btn.btn-link#invitations-button{"data-toggle" => "modal"}
-  = t(".by_email")
+
+- if AppConfig.mail.enable?
+  .invitations-link.btn.btn-link#invitations-button{"data-toggle" => "modal"}
+    = t(".by_email")
 
 - content_for :after_content do
   = render "shared/modal",
diff --git a/app/views/users/_edit.haml b/app/views/users/_edit.haml
index af9aea49b215ef7d7bdfe068dc6898570cb695a1..9a171a923752df70171cbcb754f4110adac88cce 100644
--- a/app/views/users/_edit.haml
+++ b/app/views/users/_edit.haml
@@ -117,58 +117,59 @@
 
     = render partial: "post_default"
 
-    .row
-      .col-md-12
-        %h3
-          = t(".receive_email_notifications")
-        = form_for "user", url: edit_user_path, html: {method: :put} do |f|
-          = f.fields_for :email_preferences do |type|
-            #email_prefs
-              - if current_user.admin?
-                = type.label :someone_reported, class: "checkbox-inline" do
-                  = type.check_box :someone_reported, {checked: @email_prefs["someone_reported"]}, false, true
-                  = t(".someone_reported")
-
-              .small-horizontal-spacer
-
-              = type.label :started_sharing, class: "checkbox-inline" do
-                = type.check_box :started_sharing, {checked: @email_prefs["started_sharing"]}, false, true
-                = t(".started_sharing")
-              .small-horizontal-spacer
-
-              = type.label :mentioned, class: "checkbox-inline" do
-                = type.check_box :mentioned, {checked: @email_prefs["mentioned"]}, false, true
-                = t(".mentioned")
-              .small-horizontal-spacer
-
-              = type.label :liked, class: "checkbox-inline" do
-                = type.check_box :liked, {checked: @email_prefs["liked"]}, false, true
-                = t(".liked")
-              .small-horizontal-spacer
-
-              = type.label :reshared, class: "checkbox-inline" do
-                = type.check_box :reshared, {checked: @email_prefs["reshared"]}, false, true
-                = t(".reshared")
-              .small-horizontal-spacer
-
-              = type.label :comment_on_post, class: "checkbox-inline" do
-                = type.check_box :comment_on_post, {checked: @email_prefs["comment_on_post"]}, false, true
-                = t(".comment_on_post")
-              .small-horizontal-spacer
-
-              = type.label :also_commented, class: "checkbox-inline" do
-                = type.check_box :also_commented, {checked: @email_prefs["also_commented"]}, false, true
-                = t(".also_commented")
-              .small-horizontal-spacer
-
-              = type.label :private_message, class: "checkbox-inline" do
-                = type.check_box :private_message, {checked: @email_prefs["private_message"]}, false, true
-                = t(".private_message")
+    - if AppConfig.mail.enable?
+      .row
+        .col-md-12
+          %h3
+            = t(".receive_email_notifications")
+          = form_for "user", url: edit_user_path, html: {method: :put} do |f|
+            = f.fields_for :email_preferences do |type|
+              #email_prefs
+                - if current_user.admin?
+                  = type.label :someone_reported, class: "checkbox-inline" do
+                    = type.check_box :someone_reported, {checked: @email_prefs["someone_reported"]}, false, true
+                    = t(".someone_reported")
+
+                .small-horizontal-spacer
+
+                = type.label :started_sharing, class: "checkbox-inline" do
+                  = type.check_box :started_sharing, {checked: @email_prefs["started_sharing"]}, false, true
+                  = t(".started_sharing")
+                .small-horizontal-spacer
+
+                = type.label :mentioned, class: "checkbox-inline" do
+                  = type.check_box :mentioned, {checked: @email_prefs["mentioned"]}, false, true
+                  = t(".mentioned")
+                .small-horizontal-spacer
+
+                = type.label :liked, class: "checkbox-inline" do
+                  = type.check_box :liked, {checked: @email_prefs["liked"]}, false, true
+                  = t(".liked")
+                .small-horizontal-spacer
+
+                = type.label :reshared, class: "checkbox-inline" do
+                  = type.check_box :reshared, {checked: @email_prefs["reshared"]}, false, true
+                  = t(".reshared")
+                .small-horizontal-spacer
+
+                = type.label :comment_on_post, class: "checkbox-inline" do
+                  = type.check_box :comment_on_post, {checked: @email_prefs["comment_on_post"]}, false, true
+                  = t(".comment_on_post")
+                .small-horizontal-spacer
+
+                = type.label :also_commented, class: "checkbox-inline" do
+                  = type.check_box :also_commented, {checked: @email_prefs["also_commented"]}, false, true
+                  = t(".also_commented")
+                .small-horizontal-spacer
+
+                = type.label :private_message, class: "checkbox-inline" do
+                  = type.check_box :private_message, {checked: @email_prefs["private_message"]}, false, true
+                  = t(".private_message")
 
-          .small-horizontal-spacer
+            .small-horizontal-spacer
 
-          .clearfix= f.submit t(".change"), class: "btn btn-primary pull-right", id: "change_email_preferences"
-    %hr
+            .clearfix= f.submit t(".change"), class: "btn btn-primary pull-right", id: "change_email_preferences"
+      %hr
 
     .row
       .col-md-6#account_data