Merge pull request #2553 from edx/cdodge/microsite-cleanup

Address Microsite PR feedback - separate out middleware from microsite logic, shor...
This commit is contained in:
chrisndodge
2014-02-28 17:38:19 -05:00
39 changed files with 389 additions and 340 deletions

View File

@@ -2,7 +2,7 @@ from xmodule.modulestore.django import modulestore
from xmodule.course_module import CourseDescriptor
from django.conf import settings
from microsite_configuration.middleware import MicrositeConfiguration
from microsite_configuration import microsite
def get_visible_courses():
@@ -15,7 +15,7 @@ def get_visible_courses():
if isinstance(c, CourseDescriptor)]
courses = sorted(courses, key=lambda course: course.number)
subdomain = MicrositeConfiguration.get_microsite_configuration_value('subdomain', 'default')
subdomain = microsite.get_value('subdomain', 'default')
# See if we have filtered course listings in this domain
filtered_visible_ids = None
@@ -24,7 +24,7 @@ def get_visible_courses():
if hasattr(settings, 'COURSE_LISTINGS') and subdomain in settings.COURSE_LISTINGS and not settings.DEBUG:
filtered_visible_ids = frozenset(settings.COURSE_LISTINGS[subdomain])
filtered_by_org = MicrositeConfiguration.get_microsite_configuration_value('course_org_filter')
filtered_by_org = microsite.get_value('course_org_filter')
if filtered_by_org:
return [course for course in courses if course.location.org == filtered_by_org]
@@ -33,7 +33,7 @@ def get_visible_courses():
else:
# Let's filter out any courses in an "org" that has been declared to be
# in a Microsite
org_filter_out_set = MicrositeConfiguration.get_all_microsite_orgs()
org_filter_out_set = microsite.get_all_orgs()
return [course for course in courses if course.location.org not in org_filter_out_set]
@@ -42,7 +42,7 @@ def get_university_for_request():
Return the university name specified for the domain, or None
if no university was specified
"""
return MicrositeConfiguration.get_microsite_configuration_value('university')
return microsite.get_value('university')
def get_logo_url():
@@ -52,7 +52,7 @@ def get_logo_url():
# if the MicrositeConfiguration has a value for the logo_image_url
# let's use that
image_url = MicrositeConfiguration.get_microsite_configuration_value('logo_image_url')
image_url = microsite.get_value('logo_image_url')
if image_url:
return '{static_url}{image_url}'.format(
static_url=settings.STATIC_URL,
@@ -60,7 +60,7 @@ def get_logo_url():
)
# otherwise, use the legacy means to configure this
university = MicrositeConfiguration.get_microsite_configuration_value('university')
university = microsite.get_value('university')
if university is None:
return '{static_url}images/header-logo.png'.format(

View File

@@ -8,7 +8,7 @@ from edxmako.shortcuts import render_to_response
import student.views
import courseware.views
from microsite_configuration.middleware import MicrositeConfiguration
from microsite_configuration import microsite
from edxmako.shortcuts import marketing_link
from util.cache import cache_if_anonymous
@@ -27,7 +27,7 @@ def index(request):
from external_auth.views import ssl_login
return ssl_login(request)
enable_mktg_site = MicrositeConfiguration.get_microsite_configuration_value(
enable_mktg_site = microsite.get_value(
'ENABLE_MKTG_SITE',
settings.FEATURES.get('ENABLE_MKTG_SITE', False)
)
@@ -35,11 +35,11 @@ def index(request):
if enable_mktg_site:
return redirect(settings.MKTG_URLS.get('ROOT'))
university = MicrositeConfiguration.match_university(request.META.get('HTTP_HOST'))
domain = request.META.get('HTTP_HOST')
# keep specialized logic for Edge until we can migrate over Edge to fully use
# microsite definitions
if university == 'edge':
if domain and 'edge.edx.org' in domain:
context = {
'suppress_toplevel_navigation': True
}
@@ -59,7 +59,7 @@ def courses(request):
to that. Otherwise, if subdomain branding is on, this is the university
profile page. Otherwise, it's the edX courseware.views.courses page
"""
enable_mktg_site = MicrositeConfiguration.get_microsite_configuration_value(
enable_mktg_site = microsite.get_value(
'ENABLE_MKTG_SITE',
settings.FEATURES.get('ENABLE_MKTG_SITE', False)
)

View File

@@ -70,7 +70,7 @@ class TestMicrosites(ModuleStoreTestCase, LoginEnrollmentTestCase):
self.assertContains(resp, 'This is a Test Microsite Overlay') # Overlay test message
self.assertContains(resp, 'test_microsite/images/header-logo.png') # logo swap
self.assertContains(resp, 'test_microsite/css/test_microsite.css') # css override
self.assertContains(resp, 'test_microsite/css/test_microsite') # css override
self.assertContains(resp, 'Test Microsite') # page title
# assert that test course display name is visible
@@ -101,7 +101,7 @@ class TestMicrosites(ModuleStoreTestCase, LoginEnrollmentTestCase):
self.assertNotContains(resp, 'This is a Test Microsite Overlay') # Overlay test message
self.assertNotContains(resp, 'test_microsite/images/header-logo.png') # logo swap
self.assertNotContains(resp, 'test_microsite/css/test_microsite.css') # css override
self.assertNotContains(resp, 'test_microsite/css/test_microsite') # css override
self.assertNotContains(resp, '<title>Test Microsite</title>') # page title
# assert that test course display name IS NOT VISIBLE, since that is a Microsite only course

View File

@@ -38,7 +38,7 @@ from xmodule.modulestore.search import path_to_location
from xmodule.course_module import CourseDescriptor
import shoppingcart
from microsite_configuration.middleware import MicrositeConfiguration
from microsite_configuration import microsite
log = logging.getLogger("edx.courseware")
@@ -528,7 +528,7 @@ def registered_for_course(course, user):
@cache_if_anonymous
def course_about(request, course_id):
if MicrositeConfiguration.get_microsite_configuration_value(
if microsite.get_value(
'ENABLE_MKTG_SITE',
settings.FEATURES.get('ENABLE_MKTG_SITE', False)
):

View File

@@ -14,7 +14,7 @@ from student.models import CourseEnrollment, CourseEnrollmentAllowed
from courseware.models import StudentModule
from edxmako.shortcuts import render_to_string
from microsite_configuration.middleware import MicrositeConfiguration
from microsite_configuration import microsite
# For determining if a shibboleth course
SHIBBOLETH_DOMAIN_PREFIX = 'shib:'
@@ -229,7 +229,7 @@ def send_mail_to_student(student, param_dict):
if 'course' in param_dict:
param_dict['course_name'] = param_dict['course'].display_name_with_default
param_dict['site_name'] = MicrositeConfiguration.get_microsite_configuration_value(
param_dict['site_name'] = microsite.get_value(
'SITE_NAME',
param_dict['site_name']
)
@@ -271,7 +271,7 @@ def send_mail_to_student(student, param_dict):
# Email subject *must not* contain newlines
subject = ''.join(subject.splitlines())
from_address = MicrositeConfiguration.get_microsite_configuration_value(
from_address = microsite.get_value(
'email_from_address',
settings.DEFAULT_FROM_EMAIL
)

View File

@@ -62,7 +62,7 @@ from xblock.field_data import DictFieldData
from xblock.fields import ScopeIds
from django.utils.translation import ugettext as _u
from microsite_configuration.middleware import MicrositeConfiguration
from microsite_configuration import microsite
log = logging.getLogger(__name__)
@@ -1295,7 +1295,7 @@ def _do_enroll_students(course, course_id, students, overload=False, auto_enroll
ceaset.delete()
if email_students:
stripped_site_name = MicrositeConfiguration.get_microsite_configuration_value(
stripped_site_name = microsite.get_value(
'SITE_NAME',
settings.SITE_NAME
)
@@ -1389,7 +1389,7 @@ def _do_unenroll_students(course_id, students, email_students=False):
old_students, _ = get_and_clean_student_list(students)
status = dict([x, 'unprocessed'] for x in old_students)
stripped_site_name = MicrositeConfiguration.get_microsite_configuration_value(
stripped_site_name = microsite.get_value(
'SITE_NAME',
settings.SITE_NAME
)
@@ -1469,7 +1469,7 @@ def send_mail_to_student(student, param_dict):
# add some helpers and microconfig subsitutions
if 'course' in param_dict:
param_dict['course_name'] = param_dict['course'].display_name_with_default
param_dict['site_name'] = MicrositeConfiguration.get_microsite_configuration_value(
param_dict['site_name'] = microsite.get_value(
'SITE_NAME',
param_dict.get('site_name', '')
)
@@ -1497,7 +1497,7 @@ def send_mail_to_student(student, param_dict):
# Email subject *must not* contain newlines
subject = ''.join(subject.splitlines())
from_address = MicrositeConfiguration.get_microsite_configuration_value(
from_address = microsite.get_value(
'email_from_address',
settings.DEFAULT_FROM_EMAIL
)

View File

@@ -35,7 +35,7 @@ from verify_student.models import SoftwareSecurePhotoVerification
from .exceptions import (InvalidCartItem, PurchasedCallbackException, ItemAlreadyInCartException,
AlreadyEnrolledInCourseException, CourseDoesNotExistException)
from microsite_configuration.middleware import MicrositeConfiguration
from microsite_configuration import microsite
log = logging.getLogger("shoppingcart")
@@ -175,7 +175,7 @@ class Order(models.Model):
}
)
try:
from_address = MicrositeConfiguration.get_microsite_configuration_value(
from_address = microsite.get_value(
'email_from_address',
settings.DEFAULT_FROM_EMAIL
)
@@ -477,7 +477,7 @@ class CertificateItem(OrderItem):
user_email=course_enrollment.user.email,
order_number=order_number)
to_email = [settings.PAYMENT_SUPPORT_EMAIL]
from_email = [MicrositeConfiguration.get_microsite_configuration_value(
from_email = [microsite.get_value(
'payment_support_email',
settings.PAYMENT_SUPPORT_EMAIL
)]