summaryrefslogtreecommitdiff
path: root/yaksh
diff options
context:
space:
mode:
Diffstat (limited to 'yaksh')
-rw-r--r--yaksh/migrations/0009_auto_20180113_1124.py149
-rw-r--r--yaksh/migrations/0010_auto_20180226_1324.py34
-rw-r--r--yaksh/migrations/0011_release_0_8_0.py68
3 files changed, 251 insertions, 0 deletions
diff --git a/yaksh/migrations/0009_auto_20180113_1124.py b/yaksh/migrations/0009_auto_20180113_1124.py
new file mode 100644
index 0000000..dbbcb30
--- /dev/null
+++ b/yaksh/migrations/0009_auto_20180113_1124.py
@@ -0,0 +1,149 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.5 on 2018-01-13 11:24
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+import yaksh.models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ('yaksh', '0008_release_0_7_0'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='CourseStatus',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('grade', models.CharField(blank=True, max_length=255, null=True)),
+ ('total_marks', models.FloatField(default=0.0)),
+ ],
+ ),
+ migrations.CreateModel(
+ name='LearningModule',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('name', models.CharField(max_length=255)),
+ ('description', models.TextField(blank=True, default=None, null=True)),
+ ('order', models.IntegerField(default=0)),
+ ('check_prerequisite', models.BooleanField(default=True)),
+ ('html_data', models.TextField(blank=True, null=True)),
+ ('is_trial', models.BooleanField(default=False)),
+ ('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='module_creator', to=settings.AUTH_USER_MODEL)),
+ ],
+ ),
+ migrations.CreateModel(
+ name='LearningUnit',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('order', models.IntegerField()),
+ ('type', models.CharField(max_length=16)),
+ ('check_prerequisite', models.BooleanField(default=True)),
+ ],
+ ),
+ migrations.CreateModel(
+ name='Lesson',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('name', models.CharField(max_length=255)),
+ ('description', models.TextField()),
+ ('html_data', models.TextField(blank=True, null=True)),
+ ('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+ ],
+ ),
+ migrations.CreateModel(
+ name='LessonFile',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('file', models.FileField(upload_to=yaksh.models.get_file_dir)),
+ ('lesson', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='lesson', to='yaksh.Lesson')),
+ ],
+ ),
+ migrations.RemoveField(
+ model_name='quiz',
+ name='course',
+ ),
+ migrations.RemoveField(
+ model_name='quiz',
+ name='language',
+ ),
+ migrations.RemoveField(
+ model_name='quiz',
+ name='prerequisite',
+ ),
+ migrations.AddField(
+ model_name='answerpaper',
+ name='course',
+ field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='yaksh.Course'),
+ ),
+ migrations.AddField(
+ model_name='question',
+ name='min_time',
+ field=models.IntegerField(default=0, verbose_name='time in minutes'),
+ ),
+ migrations.AddField(
+ model_name='question',
+ name='solution',
+ field=models.TextField(blank=True),
+ ),
+ migrations.AddField(
+ model_name='quiz',
+ name='creator',
+ field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
+ ),
+ migrations.AddField(
+ model_name='quiz',
+ name='is_exercise',
+ field=models.BooleanField(default=False),
+ ),
+ migrations.AddField(
+ model_name='quiz',
+ name='weightage',
+ field=models.FloatField(default=1.0),
+ ),
+ migrations.AddField(
+ model_name='learningunit',
+ name='lesson',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='yaksh.Lesson'),
+ ),
+ migrations.AddField(
+ model_name='learningunit',
+ name='quiz',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='yaksh.Quiz'),
+ ),
+ migrations.AddField(
+ model_name='learningmodule',
+ name='learning_unit',
+ field=models.ManyToManyField(related_name='learning_unit', to='yaksh.LearningUnit'),
+ ),
+ migrations.AddField(
+ model_name='coursestatus',
+ name='completed_units',
+ field=models.ManyToManyField(related_name='completed_units', to='yaksh.LearningUnit'),
+ ),
+ migrations.AddField(
+ model_name='coursestatus',
+ name='course',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='yaksh.Course'),
+ ),
+ migrations.AddField(
+ model_name='coursestatus',
+ name='current_unit',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='current_unit', to='yaksh.LearningUnit'),
+ ),
+ migrations.AddField(
+ model_name='coursestatus',
+ name='user',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
+ ),
+ migrations.AddField(
+ model_name='course',
+ name='learning_module',
+ field=models.ManyToManyField(related_name='learning_module', to='yaksh.LearningModule'),
+ ),
+ ]
diff --git a/yaksh/migrations/0010_auto_20180226_1324.py b/yaksh/migrations/0010_auto_20180226_1324.py
new file mode 100644
index 0000000..b400da7
--- /dev/null
+++ b/yaksh/migrations/0010_auto_20180226_1324.py
@@ -0,0 +1,34 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.5 on 2018-02-26 13:24
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('yaksh', '0009_auto_20180113_1124'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='learningmodule',
+ name='active',
+ field=models.BooleanField(default=True),
+ ),
+ migrations.AddField(
+ model_name='lesson',
+ name='active',
+ field=models.BooleanField(default=True),
+ ),
+ migrations.AlterField(
+ model_name='quiz',
+ name='time_between_attempts',
+ field=models.FloatField(verbose_name='Time Between Quiz Attempts in hours'),
+ ),
+ migrations.AlterUniqueTogether(
+ name='answerpaper',
+ unique_together=set([('user', 'question_paper', 'attempt_number', 'course')]),
+ ),
+ ]
diff --git a/yaksh/migrations/0011_release_0_8_0.py b/yaksh/migrations/0011_release_0_8_0.py
new file mode 100644
index 0000000..41a2abd
--- /dev/null
+++ b/yaksh/migrations/0011_release_0_8_0.py
@@ -0,0 +1,68 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.5 on 2018-03-23 10:46
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('grades', 'default_grading_system'),
+ ('yaksh', '0010_auto_20180226_1324'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='ArrangeTestCase',
+ fields=[
+ ('testcase_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='yaksh.TestCase')),
+ ('options', models.TextField(default=None)),
+ ],
+ bases=('yaksh.testcase',),
+ ),
+ migrations.CreateModel(
+ name='TestCaseOrder',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('order', models.TextField()),
+ ('answer_paper', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answer_paper', to='yaksh.AnswerPaper')),
+ ],
+ ),
+ migrations.RenameField(
+ model_name='coursestatus',
+ old_name='total_marks',
+ new_name='percentage',
+ ),
+ migrations.AddField(
+ model_name='course',
+ name='grading_system',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='grades.GradingSystem'),
+ ),
+ migrations.AddField(
+ model_name='questionpaper',
+ name='shuffle_testcases',
+ field=models.BooleanField(default=True, verbose_name='Shuffle testcase for each user'),
+ ),
+ migrations.AlterField(
+ model_name='question',
+ name='type',
+ field=models.CharField(choices=[('mcq', 'Single Correct Choice'), ('mcc', 'Multiple Correct Choices'), ('code', 'Code'), ('upload', 'Assignment Upload'), ('integer', 'Answer in Integer'), ('string', 'Answer in String'), ('float', 'Answer in Float'), ('arrange', 'Arrange in Correct Order')], max_length=24),
+ ),
+ migrations.AlterField(
+ model_name='quiz',
+ name='weightage',
+ field=models.FloatField(default=100, help_text='Will be considered as percentage'),
+ ),
+ migrations.AlterField(
+ model_name='testcase',
+ name='type',
+ field=models.CharField(choices=[('standardtestcase', 'Standard Testcase'), ('stdiobasedtestcase', 'StdIO Based Testcase'), ('mcqtestcase', 'MCQ Testcase'), ('hooktestcase', 'Hook Testcase'), ('integertestcase', 'Integer Testcase'), ('stringtestcase', 'String Testcase'), ('floattestcase', 'Float Testcase'), ('arrangetestcase', 'Arrange Testcase')], max_length=24, null=True),
+ ),
+ migrations.AddField(
+ model_name='testcaseorder',
+ name='question',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='yaksh.Question'),
+ ),
+ ]