from django.utils.safestring import mark_safe
 from django.core.urlresolvers import reverse
 
-from .models import Submission, Assignment, Attachment
+from .models import Submission, Assignment, Attachment, exercises
 from .middleware import get_current_request
 
 
-f = file(os.path.dirname(__file__) + '/fixtures/exercises.json')
-exercises = simplejson.loads(f.read())
-f.close()
-
 def get_user_exercises(user):
     assignment = Assignment.objects.get(user = user)
     return [e for e in exercises if e['id'] in assignment.exercises]
 
 from django import forms
 from django.utils import simplejson
 
-from .models import Submission, Attachment
+from .models import Submission, Attachment, exercises
 
 
 class WTEMForm(forms.ModelForm):
 
     def __init__(self, *args, **kwargs):
         super(WTEMForm, self).__init__(*args, **kwargs)
-
-        ## @@ move this one level up
-        f = file(os.path.dirname(__file__) + '/fixtures/exercises.json')
-        exercises = simplejson.loads(f.read())
-        f.close()
-
         for exercise in exercises:
             if exercise['type'] != 'file_upload':
                 continue
 
 import random
 import string
+import os
 
 from django.db import models
 from django.contrib.auth.models import User
 from django.core.exceptions import ValidationError
+from django.utils import simplejson
 from django.utils.translation import ugettext as _
 from jsonfield import JSONField
 
 from contact.models import Contact
 
+f = file(os.path.dirname(__file__) + '/fixtures/exercises.json')
+exercises = simplejson.loads(f.read())
+f.close()
 
 DEBUG_KEY = '12345'
 
 
 from django.conf import settings
 from django.http import Http404, HttpResponseForbidden
 
-from .models import Submission, DEBUG_KEY
+from .models import Submission, DEBUG_KEY, exercises
 from .forms import WTEMForm
 
 WTEM_CONTEST_STAGE = getattr(settings, 'WTEM_CONTEST_STAGE', 'before')
             submission = Submission.create(first_name = 'Debug', last_name = 'Debug', email = 'debug@debug.com', key = DEBUG_KEY)
         else:
             raise Http404
-
-    ## @@ move this out of the view
-    f = file(os.path.dirname(__file__) + '/fixtures/exercises.json')
-    exercises = simplejson.loads(f.read())
-    f.close()
-
     if request.method == 'GET':
         return render(request, 'wtem/main.html', dict(exercises = exercises))
     elif request.method == 'POST':