Merge pull request #2357 from edx/db/move-doc-url-func
Move doc_url function out of edxmako middleware
This commit is contained in:
20
cms/djangoapps/contentstore/context_processors.py
Normal file
20
cms/djangoapps/contentstore/context_processors.py
Normal file
@@ -0,0 +1,20 @@
|
||||
import ConfigParser
|
||||
from django.conf import settings
|
||||
|
||||
config_file = open(settings.REPO_ROOT / "docs" / "config.ini")
|
||||
config = ConfigParser.ConfigParser()
|
||||
config.readfp(config_file)
|
||||
|
||||
|
||||
def doc_url(request):
|
||||
# in the future, we will detect the locale; for now, we will
|
||||
# hardcode en_us, since we only have English documentation
|
||||
locale = "en_us"
|
||||
|
||||
def get_doc_url(token):
|
||||
try:
|
||||
return config.get(locale, token)
|
||||
except ConfigParser.NoOptionError:
|
||||
return config.get(locale, "default")
|
||||
|
||||
return {"doc_url": get_doc_url}
|
||||
@@ -117,6 +117,7 @@ TEMPLATE_CONTEXT_PROCESSORS = (
|
||||
'django.contrib.auth.context_processors.auth', # this is required for admin
|
||||
'django.core.context_processors.csrf',
|
||||
'dealer.contrib.django.staff.context_processor', # access git revision
|
||||
'contentstore.context_processors.doc_url',
|
||||
)
|
||||
|
||||
# use the ratelimit backend to prevent brute force attacks
|
||||
|
||||
@@ -12,8 +12,6 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import ConfigParser
|
||||
from django.conf import settings
|
||||
from django.template import RequestContext
|
||||
from util.request import safe_get_host
|
||||
requestcontext = None
|
||||
@@ -26,21 +24,3 @@ class MakoMiddleware(object):
|
||||
requestcontext = RequestContext(request)
|
||||
requestcontext['is_secure'] = request.is_secure()
|
||||
requestcontext['site'] = safe_get_host(request)
|
||||
requestcontext['doc_url'] = self.get_doc_url_func(request)
|
||||
|
||||
def get_doc_url_func(self, request):
|
||||
config_file = open(settings.REPO_ROOT / "docs" / "config.ini")
|
||||
config = ConfigParser.ConfigParser()
|
||||
config.readfp(config_file)
|
||||
|
||||
# in the future, we will detect the locale; for now, we will
|
||||
# hardcode en_us, since we only have English documentation
|
||||
locale = "en_us"
|
||||
|
||||
def doc_url(token):
|
||||
try:
|
||||
return config.get(locale, token)
|
||||
except ConfigParser.NoOptionError:
|
||||
return config.get(locale, "default")
|
||||
|
||||
return doc_url
|
||||
|
||||
Reference in New Issue
Block a user