diff --git a/ref-test/app/__init__.py b/ref-test/app/__init__.py
index 60c082d..a2cb575 100644
--- a/ref-test/app/__init__.py
+++ b/ref-test/app/__init__.py
@@ -31,7 +31,7 @@ def create_app():
def _check_cookie_consent():
if request.cookies.get('cookie_consent'):
return
- if any([ request.path.startswith(x) for x in [ '/admin/static/', '/root/', '/quiz/static', '/cookies/' ] ]):
+ if any([ request.path.startswith(x) for x in [ '/admin/static/', '/root/', '/quiz/static', '/cookies/', '/admin/editor/static' ] ]):
return
flash(f'Cookie Consent: This web site only stores minimal, functional cookies. It does not store any tracking information. By using this site, you consent to this use of cookies. For more information, see our privacy policy.', 'cookie_alert')
@@ -46,11 +46,13 @@ def create_app():
from .api.views import api
from .quiz.views import quiz
from .views import views
+ from .editor.views import editor
app.register_blueprint(admin, url_prefix='/admin')
app.register_blueprint(api, url_prefix='/api')
app.register_blueprint(views)
app.register_blueprint(quiz)
+ app.register_blueprint(editor, url_prefix='/admin/editor')
install_app(app)
diff --git a/ref-test/app/editor/static/css/editor.css b/ref-test/app/editor/static/css/editor.css
new file mode 100644
index 0000000..eee5d22
--- /dev/null
+++ b/ref-test/app/editor/static/css/editor.css
@@ -0,0 +1,46 @@
+.accordion-button {
+ color: inherit;
+ background-color: inherit;
+ display: block;
+ border: 1px solid rgb(0 0 0 / .3);
+ height: 60px;
+}
+
+.editor-controls {
+ width: fit-content;
+ display: block;
+ margin: 10px auto;
+}
+
+.editor-controls a {
+ margin: 0 10px;
+ z-index: 10;
+}
+
+.accordion-button div {
+ margin: 0;
+ position: absolute;
+ top: 50%;
+ transform: translate(0, -50%);
+}
+
+.accordion-button a {
+ transform: translate(-50%, -50%);
+ top: 50%;
+ right: 0%;
+ position: absolute;
+}
+
+.accordion-button::after {
+ content: none;
+}
+
+.accordion-error {
+ background-color: #bb2d3b;
+ color: white;
+}
+
+.accordion-error:not(.collapsed) {
+ background-color: #bb2d3b;
+ color: white;
+}
\ No newline at end of file
diff --git a/ref-test/app/editor/static/js/editor.js b/ref-test/app/editor/static/js/editor.js
index e69de29..ef21641 100644
--- a/ref-test/app/editor/static/js/editor.js
+++ b/ref-test/app/editor/static/js/editor.js
@@ -0,0 +1,68 @@
+const root = $('#editor-root')
+
+var data = [
+ {
+ "type": "question",
+ "q_no": 3,
+ "text": "The ball is gathered by the defensive division and a player throws it forward, hitting the korf in the other division.",
+ "options": [
+ "Play on",
+ "Opposite team restart under their defensive post",
+ "Opposite team restart where the ball was thrown from"
+ ],
+ "correct": 0,
+ "q_type": "Multiple Choice",
+ "tags": [
+ "scoring from the defence zone"
+ ]
+ },
+ {
+ "type": "question",
+ "q_no": 4,
+ "text": "At the end of the game, after the final whistle, a coach loudly confronts the referee. What can the referee do?",
+ "options": [
+ "Ignore the coach as the match has ended",
+ "Ignore the coach or inform the coach they will be reported",
+ "Ignore the coach, inform the coach they will be reported and/or show the coach a card"
+ ],
+ "correct": 2,
+ "q_type": "List",
+ "tags": [
+ "discipline"
+ ]
+ },
+]
+
+for (var i = 0; i < data.length; i++) {
+ if (data[i]['type'] == 'question') {
+ var obj = `
+
This web app was developed by Vivek Santayana. If there are any issues with the app, any bugs you need to report, or any features you would like to request, please feel free to open an issue at the Git Repository.