diff --git a/school/www/profiles/profile.html b/school/www/profiles/profile.html
index 2dc8c904..e7bbaeea 100644
--- a/school/www/profiles/profile.html
+++ b/school/www/profiles/profile.html
@@ -238,7 +238,7 @@
{% endmacro %}
{% macro Contact(member) %}
-{% if not hide_primary_contact and member.email and member.mobile_no and member.linkedin and member.github and member.medium %}
+{% if show_contacts_section %}
{{ _("Contact") }}
diff --git a/school/www/profiles/profile.py b/school/www/profiles/profile.py
index 60b74143..211d790f 100644
--- a/school/www/profiles/profile.py
+++ b/school/www/profiles/profile.py
@@ -18,8 +18,16 @@ def get_context(context):
context.template = "www/404.html"
return
context.hide_primary_contact = frappe.db.get_single_value("LMS Settings", "hide_primary_contact")
+ context.show_contacts_section = show_contacts_section(context.member, context.hide_primary_contact)
context.profile_tabs = get_profile_tabs(context.member)
+def show_contacts_section(member, hide_primary_contact):
+ if member.github or member.linkedin or member.medium:
+ return True
+ if hide_primary_contact or member.hide_private:
+ return False
+ return True
+
def get_profile_tabs(user):
"""Returns the enabled ProfileTab objects.