diff --git a/exam/migrations/0001_initial.py b/exam/migrations/0001_initial.py new file mode 100644 index 0000000..51dedc2 --- /dev/null +++ b/exam/migrations/0001_initial.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10 on 2016-10-06 18:54 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Answer', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('answer', models.CharField(max_length=200, verbose_name='Answer')), + ('order', models.PositiveSmallIntegerField(verbose_name='Order')), + ], + options={ + 'verbose_name_plural': 'Answers', + 'ordering': ('order',), + 'verbose_name': 'Answer', + }, + ), + migrations.CreateModel( + name='Exam', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=100, verbose_name='Name')), + ('beginDate', models.DateTimeField(auto_now_add=True, verbose_name='Start Date')), + ('endDate', models.DateTimeField(auto_now=True, verbose_name='Date of last update')), + ], + options={ + 'verbose_name_plural': 'Exams', + 'verbose_name': 'Exam', + }, + ), + migrations.AddField( + model_name='answer', + name='exam', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='exam.Exam', verbose_name='Answers'), + ), + ] diff --git a/forum/static/js/forum.js b/forum/static/js/forum.js index 4e2c1d8..a9d394d 100644 --- a/forum/static/js/forum.js +++ b/forum/static/js/forum.js @@ -255,6 +255,49 @@ function answer(id, url) { /* * +* Function to load form to edit post answer +* +*/ +function edit_post_answer(url, answer_id) { + $.ajax({ + url: url, + success: function(data) { + $("#answer_"+answer_id).find(".post_answer_content").hide(); + $("#answer_"+answer_id).find(".post_answer_content").after(data); + + var frm = $("#answer_"+answer_id).find(".answer_post_form"); + frm.submit(function () { + $.ajax({ + type: frm.attr('method'), + url: frm.attr('action'), + data: frm.serialize(), + success: function (data) { + $("#answer_"+answer_id).parent().after(data); + frm.parent().parent().remove(); + }, + error: function(data) { + console.log(frm.serialize()); + console.log('Error'); + } + }); + return false; + }); + } + }); +} + +/* +* +* Function to cancel post answer edition +* +*/ +function cancelEditPostAnswer(answer_id) { + $("#answer_"+answer_id).find(".post_answer_content").show(); + $("#answer_"+answer_id).find(".answer_post_form").remove(); +} + +/* +* * Function to delete an answer * */ diff --git a/forum/templates/post/post_update_form.html b/forum/templates/post/post_update_form.html index f468d0d..db80133 100644 --- a/forum/templates/post/post_update_form.html +++ b/forum/templates/post/post_update_form.html @@ -1,7 +1,7 @@ {% load i18n permission_tags list_post %} {% load widget_tweaks %} -