diff --git a/common/djangoapps/pipeline_mako/templates/static_content.html b/common/djangoapps/pipeline_mako/templates/static_content.html
index f3c5ee4a51..ccfab07845 100644
--- a/common/djangoapps/pipeline_mako/templates/static_content.html
+++ b/common/djangoapps/pipeline_mako/templates/static_content.html
@@ -5,6 +5,7 @@ from django.utils.translation import get_language_bidi
from mako.exceptions import TemplateLookupException
from microsite_configuration import microsite
+from openedx.core.djangoapps.theming.helpers import get_page_title_breadcrumbs, get_value
from certificates.api import get_asset_url_by_slug
%>
@@ -99,3 +100,12 @@ except TemplateLookupException:
else:
tmpl.render_context(context)
%>%def>
+
+
+<%def name="get_page_title_breadcrumbs(*args)"><%
+ return get_page_title_breadcrumbs(*args)
+%>%def>
+
+<%def name="get_platform_name()"><%
+ return get_value('platform_name', settings.PLATFORM_NAME)
+%>%def>
diff --git a/lms/templates/courseware/courseware-chromeless.html b/lms/templates/courseware/courseware-chromeless.html
index fec184af07..745a87ecfa 100644
--- a/lms/templates/courseware/courseware-chromeless.html
+++ b/lms/templates/courseware/courseware-chromeless.html
@@ -3,7 +3,6 @@
<%!
from django.utils.translation import ugettext as _
from django.template.defaultfilters import escapejs
-from microsite_configuration import page_title_breadcrumbs
from edxnotes.helpers import is_feature_enabled as is_edxnotes_enabled
%>
<%def name="course_name()">
@@ -13,9 +12,9 @@ from edxnotes.helpers import is_feature_enabled as is_edxnotes_enabled
<%block name="bodyclass">view-in-course view-courseware courseware ${course.css_class or ''}%block>
<%block name="title">
% if section_title:
-${page_title_breadcrumbs(section_title, course_name())}
+${static.get_page_title_breadcrumbs(section_title, course_name())}
% else:
-${page_title_breadcrumbs(course_name())}
+${static.get_page_title_breadcrumbs(course_name())}
%endif
%block>
diff --git a/lms/templates/courseware/courseware.html b/lms/templates/courseware/courseware.html
index 2b64753d47..ed890e1eb1 100644
--- a/lms/templates/courseware/courseware.html
+++ b/lms/templates/courseware/courseware.html
@@ -3,7 +3,6 @@
<%!
from django.utils.translation import ugettext as _
from django.template.defaultfilters import escapejs
-from microsite_configuration import page_title_breadcrumbs
from django.conf import settings
from edxnotes.helpers import is_feature_enabled as is_edxnotes_enabled
%>
@@ -17,9 +16,9 @@ from edxnotes.helpers import is_feature_enabled as is_edxnotes_enabled
<%block name="bodyclass">view-in-course view-courseware courseware ${course.css_class or ''}%block>
<%block name="title">
% if section_title:
-${page_title_breadcrumbs(section_title, course_name())}
+${static.get_page_title_breadcrumbs(section_title, course_name())}
% else:
-${page_title_breadcrumbs(course_name())}
+${static.get_page_title_breadcrumbs(course_name())}
%endif
%block>
diff --git a/lms/templates/dashboard/_dashboard_status_verification.html b/lms/templates/dashboard/_dashboard_status_verification.html
index 029474f10c..3b4db661f0 100644
--- a/lms/templates/dashboard/_dashboard_status_verification.html
+++ b/lms/templates/dashboard/_dashboard_status_verification.html
@@ -2,7 +2,6 @@
<%!
from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse
-from microsite_configuration.templatetags.microsite import platform_name
%>
%if verification_status == 'approved':
@@ -40,7 +39,7 @@ from microsite_configuration.templatetags.microsite import platform_name
%if verification_status in ['must_reverify', 'expired']:
-${_("{platform_name} Verification Status").format(platform_name=platform_name())}
+${_("{platform_name} Verification Status").format(platform_name=static.get_platform_name())}
${verification_msg}
diff --git a/lms/templates/help_modal.html b/lms/templates/help_modal.html
index 6731986621..85fc3ab3ab 100644
--- a/lms/templates/help_modal.html
+++ b/lms/templates/help_modal.html
@@ -8,7 +8,6 @@ from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse
from xmodule.tabs import CourseTabList
from microsite_configuration import microsite
-from microsite_configuration.templatetags.microsite import platform_name
%>
% if settings.FEATURES.get('ENABLE_FEEDBACK_SUBMISSION', False):
@@ -17,7 +16,7 @@ from microsite_configuration.templatetags.microsite import platform_name
${_("Help")}
-
+
## TODO: find a way to refactor this
@@ -31,7 +30,7 @@ from microsite_configuration.templatetags.microsite import platform_name
${_('Please note: The {platform_name} support team is English speaking. While we will do our best to address your inquiry in any language, our responses will be in English.').format(
- platform_name=platform_name()
+ platform_name=static.get_platform_name()
)}
diff --git a/lms/templates/main.html b/lms/templates/main.html
index 04d412383b..fd72b3dd84 100644
--- a/lms/templates/main.html
+++ b/lms/templates/main.html
@@ -6,7 +6,6 @@ from django.utils.http import urlquote_plus
from django.utils.translation import ugettext as _
from django.utils.translation import get_language_bidi
from microsite_configuration import microsite
-from microsite_configuration import page_title_breadcrumbs
from branding import api as branding_api
%>
@@ -41,7 +40,7 @@ from branding import api as branding_api
<%def name="pagetitle()" />
<%block name="title">
- ${page_title_breadcrumbs(self.pagetitle())}
+ ${static.get_page_title_breadcrumbs(self.pagetitle())}
%block>
diff --git a/lms/templates/navigation-edx.html b/lms/templates/navigation-edx.html
index 553ae3f7a7..35a401390d 100644
--- a/lms/templates/navigation-edx.html
+++ b/lms/templates/navigation-edx.html
@@ -6,7 +6,6 @@ from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _
from microsite_configuration import microsite
-from microsite_configuration.templatetags.microsite import platform_name
# App that handles subdomain specific branding
from branding import api as branding_api
@@ -41,7 +40,7 @@ site_status_msg = get_site_status_msg(course_id)
diff --git a/lms/templates/navigation.html b/lms/templates/navigation.html
index f99ad4202f..e3e1e97a51 100644
--- a/lms/templates/navigation.html
+++ b/lms/templates/navigation.html
@@ -6,7 +6,6 @@ from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _
from microsite_configuration import microsite
-from microsite_configuration.templatetags.microsite import platform_name
from lms.djangoapps.ccx.overrides import get_current_ccx
# App that handles subdomain specific branding
@@ -42,7 +41,7 @@ site_status_msg = get_site_status_msg(course_id)
diff --git a/lms/templates/ux/reference/teams-base.html b/lms/templates/ux/reference/teams-base.html
index 0d4506ca08..295a78b984 100644
--- a/lms/templates/ux/reference/teams-base.html
+++ b/lms/templates/ux/reference/teams-base.html
@@ -1,6 +1,5 @@
<%! from django.utils.translation import ugettext as _ %>
<%! from django.template.defaultfilters import escapejs %>
-<%! from microsite_configuration import page_title_breadcrumbs %>
<%! from edxnotes.helpers import is_feature_enabled as is_edxnotes_enabled %>
<%inherit file="/main.html" />
<%namespace name='static' file='/static_content.html'/>
diff --git a/lms/templates/ux/reference/teams-create.html b/lms/templates/ux/reference/teams-create.html
index d8a24876d8..c8cce4144e 100644
--- a/lms/templates/ux/reference/teams-create.html
+++ b/lms/templates/ux/reference/teams-create.html
@@ -1,6 +1,5 @@
<%! from django.utils.translation import ugettext as _ %>
<%! from django.template.defaultfilters import escapejs %>
-<%! from microsite_configuration import page_title_breadcrumbs %>
<%! from edxnotes.helpers import is_feature_enabled as is_edxnotes_enabled %>
<%inherit file="/main.html" />
<%namespace name='static' file='/static_content.html'/>
diff --git a/openedx/core/djangoapps/theming/helpers.py b/openedx/core/djangoapps/theming/helpers.py
new file mode 100644
index 0000000000..5957765ec9
--- /dev/null
+++ b/openedx/core/djangoapps/theming/helpers.py
@@ -0,0 +1,19 @@
+"""
+ Helpers for accessing comprehensive theming related variables.
+"""
+from microsite_configuration import microsite
+from microsite_configuration import page_title_breadcrumbs
+
+
+def get_page_title_breadcrumbs(*args):
+ """
+ This is a proxy function to hide microsite_configuration behind comprehensive theming.
+ """
+ return page_title_breadcrumbs(*args)
+
+
+def get_value(val_name, default=None, **kwargs):
+ """
+ This is a proxy function to hide microsite_configuration behind comprehensive theming.
+ """
+ return microsite.get_value(val_name, default=default, **kwargs)
diff --git a/themes/edx.org/lms/templates/header.html b/themes/edx.org/lms/templates/header.html
index 4ff5eaa41b..88adee13b1 100644
--- a/themes/edx.org/lms/templates/header.html
+++ b/themes/edx.org/lms/templates/header.html
@@ -6,7 +6,6 @@ from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _
from microsite_configuration import microsite
-from microsite_configuration.templatetags.microsite import platform_name
# App that handles subdomain specific branding
import branding
@@ -41,7 +40,7 @@ site_status_msg = get_site_status_msg(course_id)
diff --git a/themes/red-theme/lms/templates/footer.html b/themes/red-theme/lms/templates/footer.html
index e87eb8f06f..69978fb3ca 100755
--- a/themes/red-theme/lms/templates/footer.html
+++ b/themes/red-theme/lms/templates/footer.html
@@ -3,7 +3,6 @@
<%!
from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _
-from microsite_configuration.templatetags.microsite import platform_name
%>