summaryrefslogtreecommitdiff
path: root/exam/models.py
AgeCommit message (Collapse)Author
2011-12-09Moved all the apps to testapp folderparth
2011-11-25ENH: Adding support for Multiple Choice QuestionsPrabhu Ramachandran
Adds simple support for multiple choice questions that are also auto-checked. Many fixes to the templates and useful feature additions. This changes the database.
2011-11-24ENH/TMP: Preliminary support for bash scripts.Prabhu Ramachandran
- Changing the Question model to add a language attribute. - Moving python_server.py -> code_server.py. - Adding functionality to test for Shell scripts. This is still incomplete since the shell code checker seems to have some problems. - Modified the xmlrpc_clients to support multiple languages and right now two. - Using setgid/setuid instead of setegid/seteuid in the code_server.py.. - Adding a bash example to the sample_questions.py. The shell script support doesn't quite work yet but this is really a code_server/checking issue.
2011-11-23ENH: Cleanup and adding error/comments for answersPrabhu Ramachandran
Adding error and marks field to each answer. Adding a new comment field to the question paper and also a profile field for convenience. Changing the views, templates and dump scripts to use the models rather than Python code. This cleans things up a lot more. The user data logged and printed is also way more comprehensive, paving the way for easy online grading as well in the next phase of changes.
2011-11-21ENH: Added an active attribute to Questions.Prabhu Ramachandran
This allows us to enable/disable questions in a question paper. Only questions that are active are used to create a question paper. I've also modified the load_exam/load_questions_xml to deactivate rather than delete old questions.
2011-11-21ENH: Adding dept/insti/pos fields in profile.Prabhu Ramachandran
Adding institute/department/position fields, prettifying form with some help text. Also prettified monitor and user data. Updated commands to show/dump new fields.
2011-11-19BUG: Misc. bug fixes.Prabhu Ramachandran
- Timeout for signal.alarm is an integer. - The total_seconds method on timedelta is new to 2.7 and doesn't work on older versions.
2011-11-19Changed load_questions to load_examPrabhu Ramachandran
Added option to define quizzes in the file we load from. Also fixed bug in import for the xmlrpc_clients.py and changed the verbose name for Quiz objects.
2011-11-17ENH: Added a Quiz model and time based papersPrabhu Ramachandran
Added a model called Quiz which allows the admin to define a quiz on a date which can be active or deactivated. Users can take a quiz if one is active and are given a fixed duration to complete the quiz. They may login as many times as needed to finish it but the total time is logged. Javascript code updates a timer on the page.
2011-11-17ENH: Changing Quiz to QuestionPaper.Prabhu Ramachandran
This changes the models. The Quiz should really be QuestionPaper and a Quiz should be like an event that the admin creates to start a quiz and each QuestionPaper should be related to a Quiz. This will be added later.
2011-11-10Now the users cannot retake the test once they logout.Nishanth Amuluru
2011-11-09ENH: Saving answers and added quit page/button.Prabhu Ramachandran
Cleaned up the models so the answers submitted are all saved. Also added a quit button to each question page so a user can easily quit the exam in order that another may start.
2011-11-08BUG: Fixing various issuesPrabhu Ramachandran
- Modified the question model to use description instead of question. - Once a user completes the exam it would not allow another one to start. - Improved the error messages displayed on errors. - If there is a mistake, it doesn't wipe out the old attempt so student can modify what they submitted last.
2011-11-08NEW: First cut of exam app.Prabhu Ramachandran
This application allows us to create questions via the admin interface. The questions are proper programming questions and one enters test cases for each question. The user logs in and submits the answer which is checked. The app is rather simple now but does work.