view bns_website/apache/bns.wsgi @ 79:548b9e61bd64

Updated bands.json to include "asset_prefix" tags for all the bands. Incorporated all the small images from Ferenc into the bands slideshow. Went through and crushed all the large images to fit within 800x600. Make sure to "manage.py loaddata bands.json" after picking this up.
author Chris Ridgway <ckridgway@gmail.com>
date Fri, 25 Nov 2011 16:54:59 -0600
parents a5e8741452a3
children f00199f1524c
line wrap: on
line source
import os
import sys

OFFLINE = False

here = os.path.dirname(__file__)
website = os.path.dirname(here)
repo = os.path.dirname(website)
project = os.path.dirname(repo)
eggs = os.path.join(project, 'eggs')
django = os.path.join(project, 'django')

sys.path.extend([repo, website, django])

os.environ['PYTHON_EGG_CACHE'] = eggs


def offline_handler(environ, start_response):
    """
    This handler is run when the site is in maintenance mode.
    It either displays a brief outage message, or, if a template
    file exists, it reads the file and returns its contents.

    """
    wsgi_dir = os.path.dirname(__file__)
    sys.path.append(wsgi_dir)

    offline_file = os.path.abspath(
            os.path.join(wsgi_dir, '..', 'templates', 'offline.html'))
    if os.path.exists(offline_file):
        response_headers = [('Content-type','text/html')]
        response = open(offline_file).read()
    else:
        response_headers = [('Content-type','text/plain')]
        response = ('Brave New Surf website maintenance in progress; '
            'please check back soon.')

    if environ['REQUEST_METHOD'] == 'GET':
        status = '503 Service Unavailable'
    else:
        status = '405 Method Not Allowed'
    start_response(status, response_headers)
    return [response]


if not OFFLINE:
   os.environ['DJANGO_SETTINGS_MODULE'] = 'bns_website.settings.production'
   import django.core.handlers.wsgi
   application = django.core.handlers.wsgi.WSGIHandler()
else:
   application = offline_handler