diff options
Diffstat (limited to 'website/views.py')
-rw-r--r-- | website/views.py | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/website/views.py b/website/views.py index a26ae91..aba54a2 100644 --- a/website/views.py +++ b/website/views.py @@ -7,7 +7,8 @@ from django.db.models import Q from website.helpers import scilab_run from website.models import TextbookCompanionPreference,\ TextbookCompanionProposal, TextbookCompanionChapter,\ - TextbookCompanionExample + TextbookCompanionExample, TextbookCompanionExampleFiles,\ + TextbookCompanionExampleDependency, TextbookCompanionDependencyFiles def index(request): context = {} @@ -22,11 +23,11 @@ def ajax_books(request): if category_id: ids = TextbookCompanionProposal.objects.using('scilab')\ .filter(proposal_status=3).values('id') - + books = TextbookCompanionPreference.objects.using('scilab')\ .filter(category=category_id).filter(approval_status=1)\ .filter(proposal_id__in=ids).order_by('book') - + context = { 'books': books } @@ -54,12 +55,27 @@ def ajax_examples(request): if chapter_id: examples = TextbookCompanionExample.objects.using('scilab')\ .filter(chapter_id=chapter_id).order_by('number') - + context = { 'examples': examples } return render(request, 'website/templates/ajax-examples.html', context) +@csrf_exempt +def ajax_code(request): + if request.method == "POST": + example_id = request.POST['example_id'] + example = TextbookCompanionExampleFiles.objects.using('scilab')\ + .get(id=example_id) + + example_path = '/var/www/scilab_in/uploads/' + example.filepath + f = open(example_path) + code = f.readlines() + f.close() + + print code + return HttpResponse(code) + def ajax_execute(request): if request.method == "POST": code = request.POST['code'] |