Commit 80c9d109 by aagusti

to public

1 parent 42bb1a75
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
'images': [ 'images': [
'static/description/2.jpg', 'static/description/2.jpg',
], ],
'depends': ['website', 'mail'], 'depends': ['website', 'mail', 'portal'],
'installable': True, 'installable': True,
'application': True, 'application': True,
} }
import logging import logging
import odoo.http as http from odoo import http
import random import random
import uuid import uuid
from odoo.http import request from odoo.http import request
...@@ -9,6 +9,12 @@ _logger = logging.getLogger(__name__) ...@@ -9,6 +9,12 @@ _logger = logging.getLogger(__name__)
class MyController(http.Controller): class MyController(http.Controller):
@http.route('/exam/title', type="http", auth="public", website=True)
def title_exam(self, **kwargs):
exams = \
http.request.env['etq.exam'].sudo().search(
[('active', '=', True)])
return request.render('exam_test_quiz.exam_title', {'exams': exams})
@http.route('/exam/<exam_slug>', type="http", auth="public", website=True) @http.route('/exam/<exam_slug>', type="http", auth="public", website=True)
def take_exam(self, exam_slug): def take_exam(self, exam_slug):
......
...@@ -18,6 +18,7 @@ class EtqExam(models.Model): ...@@ -18,6 +18,7 @@ class EtqExam(models.Model):
_name = "etq.exam" _name = "etq.exam"
_description = "etq.exam" _description = "etq.exam"
name = fields.Char(string="Name", translate=True) name = fields.Char(string="Name", translate=True)
active = fields.Boolean(string="Active", default=True, required=True)
slug = fields.Char(string="Slug", compute="slug_me", store="True") slug = fields.Char(string="Slug", compute="slug_me", store="True")
show_correct_questions = fields.Boolean(string="Show Correct Answers?") show_correct_questions = fields.Boolean(string="Show Correct Answers?")
questions = fields.One2many('etq.question', 'exam_id', string="Questions") questions = fields.One2many('etq.question', 'exam_id', string="Questions")
......
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" "id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_etq_exam","access etq.exam","model_etq_exam","base.group_public",1,0,0,0 "access_etq_exam","access etq.exam","model_etq_exam","base.group_portal",1,0,0,0
"access_etq_question","access etq.question","model_etq_question","base.group_public",1,0,0,0 "access_etq_question","access etq.question","model_etq_question","base.group_portal",1,0,0,0
"access_etq_question_option","access etq.question.option","model_etq_question_option","base.group_public",1,0,0,0 "access_etq_question_option","access etq.question.option","model_etq_question_option","base.group_portal",1,0,0,0
"access_etq_question_option_blank","access etq.question.optionblank","model_etq_question_optionblank","base.group_public",1,0,0,0 "access_etq_question_option_blank","access etq.question.optionblank","model_etq_question_optionblank","base.group_portal",1,0,0,0
"access_etq_result","access etq.result","model_etq_result","base.group_public",1,1,0,0 "access_etq_result","access etq.result","model_etq_result","base.group_portal",1,1,0,0
"access_etq_result_question","access etq.result.question","model_etq_result_question","base.group_public",1,1,0,0 "access_etq_result_question","access etq.result.question","model_etq_result_question","base.group_portal",1,1,0,0
"access_etq_result_question_option","access etq.result.question.option","model_etq_result_question_option","base.group_public",1,1,0,0 "access_etq_result_question_option","access etq.result.question.option","model_etq_result_question_option","base.group_portal",1,1,0,0
"access_etq_exam_group_examp_admin","access_group_examp_admin etq.exam","model_etq_exam","group_examp_admin",1,1,1,1 "access_etq_exam_group_examp_admin","access_group_examp_admin etq.exam","model_etq_exam","group_examp_admin",1,1,1,1
"access_etq_question_group_examp_admin","access_group_examp_admin etq.question","model_etq_question","group_examp_admin",1,1,1,1 "access_etq_question_group_examp_admin","access_group_examp_admin etq.question","model_etq_question","group_examp_admin",1,1,1,1
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<openerp> <openerp>
<data> <data>
<template id="portal_my_home_exam" name="Portal layout : Exam menu entries"
inherit_id="portal.portal_breadcrumbs" priority="95">
<xpath expr="//ol[hasclass('o_portal_submenu')]" position="inside">
<li>
<a href="/exam/title">Exam</a>
</li>
</xpath>
</template>
<template id="exam_title" name="Exam / Test / Quiz Titles">
<t t-call="website.layout">
<t t-foreach="exams" t-as="exam">
<div class="mt16 mb16">
<h1 class="text-center">
<t t-esc="exam.name"/>
</h1>
<h3 class="text-center">
<a t-attf-href="/exam/#{exam.slug}">Mulai</a>
</h3>
</div>
</t>
</t>
</template>
<template id="exam_question_page" name="Exam / Test / Quiz Questions"> <template id="exam_question_page" name="Exam / Test / Quiz Questions">
<t t-call="website.layout"> <t t-call="website.layout">
<form action="/exam/results" method="post" class="form-horizontal mt32" enctype="multipart/form-data"> <form action="/exam/results" method="post" class="form-horizontal mt32" enctype="multipart/form-data">
...@@ -19,7 +43,6 @@ ...@@ -19,7 +43,6 @@
<t t-set="question_index" t-value="question_index+1"/> <t t-set="question_index" t-value="question_index+1"/>
<div class="form-group"> <div class="form-group">
<div> <div>
<t t-if="question.question_type == 'multi_choice'"> <t t-if="question.question_type == 'multi_choice'">
<h2> <h2>
<t t-esc="question_index"/>) <t t-esc="question_index"/>)
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!