Finished making editor console
This commit is contained in:
		@@ -79,6 +79,9 @@
 | 
			
		||||
                            <li>
 | 
			
		||||
                                <a href="{{ url_for('admin._questions') }}" id="link-questions" class="dropdown-item">Question Datasets</a>
 | 
			
		||||
                            </li>
 | 
			
		||||
                            <li>
 | 
			
		||||
                                <a href="{{ url_for('editor._editor') }}" id="link-editor" class="dropdown-item">Question Editor</a>
 | 
			
		||||
                            </li>
 | 
			
		||||
                        </ul>
 | 
			
		||||
                    </li>
 | 
			
		||||
                    <li class="nav-item dropdown" id="nav-account">
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										147
									
								
								ref-test/app/editor/templates/editor/console.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										147
									
								
								ref-test/app/editor/templates/editor/console.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,147 @@
 | 
			
		||||
{% extends "editor/components/base.html" %}
 | 
			
		||||
 | 
			
		||||
{% block style %}
 | 
			
		||||
<link 
 | 
			
		||||
    rel="stylesheet"
 | 
			
		||||
    href="{{ url_for('.static', filename='css/editor.css') }}"
 | 
			
		||||
/>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
 | 
			
		||||
{% block content %}
 | 
			
		||||
    <h1>Editor</h1>
 | 
			
		||||
    <div class="container">
 | 
			
		||||
        <p class="lead">
 | 
			
		||||
            Use this console to edit the questions in this dataset. For more information on using the editor console, click on the the blue information button.
 | 
			
		||||
        </p>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="container control-panel">
 | 
			
		||||
        <button class="btn btn-primary" aria-title="Infrmation" title="Information"><i class="bi bi-info-circle-fill"></i></button>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="container info-panel">
 | 
			
		||||
        <h3>
 | 
			
		||||
            About the Editor Console
 | 
			
		||||
        </h3>
 | 
			
		||||
        <p>
 | 
			
		||||
            This console will allow you to edit the question data for the RefTest App.
 | 
			
		||||
            All of the questions will be visually displayed as blocks on the screen that you can minimise, expand, and rearrange.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            Blocks can be of two types: <strong>Blocks</strong> of multiple related questions, and <strong>Single Questions</strong> that are not part of a block.
 | 
			
		||||
            You can add, remove, or edit both Blockss and Questions through this editor.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            <strong>Blocks</strong> are useful when you have a section of the test that contains multiple questions that are related to each other, for example if there is a scenario-based section where a series of questions are about the same situation.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            Blocks can contain any number of questions within them, but cannot contain nested blocks.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            When you set up a block, you can also add <strong>header text</strong> that will be displayed with each question.
 | 
			
		||||
            You can use this to provide common information for a scenario across a series of questions.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            Questions come in three types:
 | 
			
		||||
            <ul>
 | 
			
		||||
                <li>
 | 
			
		||||
                    <strong>Yes/No</strong> for when there is only a yes or no option, 
 | 
			
		||||
                </li>
 | 
			
		||||
                <li>
 | 
			
		||||
                    <strong>Multiple Choice</strong> for your regular multiple choice questions, and
 | 
			
		||||
                </li>
 | 
			
		||||
                <li>
 | 
			
		||||
                    <strong>Ordered List</strong> for multiple choice questions that will be displayed in the same order as listed here.
 | 
			
		||||
                </li>
 | 
			
		||||
            </ul>
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            Normally, multiple choice questions will have the order of the options randomised.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            Questions will be displayed to candidates in a randomised order.
 | 
			
		||||
            Blocks of questions will be kept together, but the order within the block will also be randomised.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p><strong>Do not use language that will assume the flow of questions, such as saying ‘the previous question’, or ‘the next question’, etc. because of randomisation.</strong></p>
 | 
			
		||||
        <p>
 | 
			
		||||
            Each option will be referenced by an <strong>index number</strong>.
 | 
			
		||||
            Make sure to select which index number represents the <strong>correct option</strong>.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            You will also be able to define <strong>tags</strong> for each question.
 | 
			
		||||
            Separate multiple tags in <strong>new lines</strong>.
 | 
			
		||||
            Make sure to keep the spelling, capitalisation, and punctuation for tags consistent.
 | 
			
		||||
        </p>
 | 
			
		||||
        <p class="lead">
 | 
			
		||||
            Placeholder for Questions Remaining in a Block
 | 
			
		||||
        </p>
 | 
			
		||||
        <p>
 | 
			
		||||
            In order to show how many questions are remaining inside a block, e.g. to say ‘the next n questions are about a specific scenario’, use the placeholder <code><block_remaining_questions></code>.
 | 
			
		||||
        </p>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="container editor-panel">
 | 
			
		||||
        <h3>
 | 
			
		||||
            Edit Dataset
 | 
			
		||||
        </h3>
 | 
			
		||||
        <div class="container dataset-metadata">
 | 
			
		||||
            <div class="input-group mb-3">
 | 
			
		||||
                <span class="input-group-text">Dataset Name</span>
 | 
			
		||||
                <input type="text" class="form-control dataset-name" value="{{ dataset.get_name() }}">
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="input-group mb-3">
 | 
			
		||||
                <span class="input-group-text">Author</span>
 | 
			
		||||
                <select class="form-select dataset-creator">
 | 
			
		||||
                    {% for user in users %}
 | 
			
		||||
                        <option value="{{ user.id }}" {{default if dataset.user == user else None }}>{{ user.get_username() }}</option>
 | 
			
		||||
                    {% endfor %}
 | 
			
		||||
                </select>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="input-group mb-3">
 | 
			
		||||
                <span class="input-group-text">Last Updated</span>
 | 
			
		||||
                <span class="form-control">
 | 
			
		||||
                    {{ dataset.date.strftime('%d %b %Y %H:%M') }}
 | 
			
		||||
                </select>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="input-group mb-3">
 | 
			
		||||
                <span class="input-group-text">
 | 
			
		||||
                    <input type="checkbox" aria-label="Default" class="dataset-default" {% if dataset.default %}checked{% endif %}>
 | 
			
		||||
                </span>
 | 
			
		||||
                <span class="form-control">
 | 
			
		||||
                    Make Dataset the Default
 | 
			
		||||
                </select>
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="accordion" id="editor-root" data-target="{{ url_for('api._editor') }}" data-id="{{ dataset.id }}">
 | 
			
		||||
        </div>
 | 
			
		||||
        {% include "editor/components/client-alerts.html" %}
 | 
			
		||||
        <div class="editor-controls container">
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-primary" data-action="add-block" title="Add Block" aria-title="Add Block">
 | 
			
		||||
                <i class="bi bi-folder-plus"></i>
 | 
			
		||||
                Add Block
 | 
			
		||||
            </a>
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-primary" data-action="add-question" title="Add Question" aria-title="Add Question">
 | 
			
		||||
                <i class="bi bi-file-plus-fill"></i>
 | 
			
		||||
                Add Question
 | 
			
		||||
            </a>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="editor-controls container">
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-warning" data-action="discard" title="Discard Changes" aria-title="Discard Changes">
 | 
			
		||||
                <i class="bi bi-x-circle-fill"></i>
 | 
			
		||||
                Discard Changes
 | 
			
		||||
            </a>
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-danger {% if datasets <=1 or dataset.default or dataset.tests|length > 0 %}disabled{% endif %}" data-action="delete" title="Delete" aria-title="Delete">
 | 
			
		||||
                <i class="bi bi-trash-fill"></i>
 | 
			
		||||
                Delete
 | 
			
		||||
            </a>
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-success" data-action="save" title="Save" aria-title="Save">
 | 
			
		||||
                <i class="bi bi-cloud-arrow-up-fill"></i>
 | 
			
		||||
                Save Changes
 | 
			
		||||
            </a>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
 | 
			
		||||
{% block script %}
 | 
			
		||||
<script
 | 
			
		||||
    type="text/javascript"
 | 
			
		||||
    src="{{ url_for('.static', filename='js/editor.js') }}"
 | 
			
		||||
></script>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
@@ -1,39 +1,31 @@
 | 
			
		||||
{% extends "editor/components/base.html" %}
 | 
			
		||||
 | 
			
		||||
{% block style %}
 | 
			
		||||
<link 
 | 
			
		||||
    rel="stylesheet"
 | 
			
		||||
    href="{{ url_for('.static', filename='css/editor.css') }}"
 | 
			
		||||
/>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
{% extends "editor/components/input-forms.html" %}
 | 
			
		||||
 | 
			
		||||
{% block content %}
 | 
			
		||||
    <h1>Editor</h1>
 | 
			
		||||
    <div class="container editor-panel" id="editor" tabindex="-1">
 | 
			
		||||
        <div class="accordion" id="editor-root">
 | 
			
		||||
        </div>
 | 
			
		||||
        {% include "editor/components/client-alerts.html" %}
 | 
			
		||||
        <div class="editor-controls">
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-primary" data-action="add-block" title="Add Block" aria-title="Add Block">
 | 
			
		||||
                <i class="bi bi-folder-plus"></i>
 | 
			
		||||
                Add Block
 | 
			
		||||
            </a>
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-primary" data-action="add-question" title="Add Question" aria-title="Add Question">
 | 
			
		||||
                <i class="bi bi-file-plus-fill"></i>
 | 
			
		||||
                Add Question
 | 
			
		||||
            </a>
 | 
			
		||||
        </div>
 | 
			
		||||
 | 
			
		||||
        <div class="editor-controls">
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-danger" data-action="cancel">Cancel</a>
 | 
			
		||||
            <a href="javascript:void(0);" class="btn btn-success" data-action="done">Done</a>
 | 
			
		||||
        </div>
 | 
			
		||||
    <div class="form-container">
 | 
			
		||||
        <form name="form-editor" class="form-display form-post" action="{{ url_for(request.endpoint, **request.view_args) }}" data-rel-success="{{ url_for(request.endpoint, **request.view_args) }}">
 | 
			
		||||
            {% include "admin/components/server-alerts.html" %}
 | 
			
		||||
            <h2 class="form">Dataset Editor</h2>
 | 
			
		||||
            {{ form.hidden_tag() }}
 | 
			
		||||
            <div class="form-select-input">
 | 
			
		||||
                {{ form.dataset(placeholder="Select Question Dataset") }}
 | 
			
		||||
                {{ form.dataset.label }}
 | 
			
		||||
            </div>
 | 
			
		||||
            {% include "admin/components/client-alerts.html" %}
 | 
			
		||||
            <div class="container form-submission-button">
 | 
			
		||||
                <div class="row">
 | 
			
		||||
                    <div class="col text-center">
 | 
			
		||||
                        <button class="btn btn-md btn-success btn-block" type="submit">
 | 
			
		||||
                            <i class="bi bi-pencil-fill button-icon"></i>
 | 
			
		||||
                            Edit
 | 
			
		||||
                        </button>
 | 
			
		||||
                        <button title="New" class="btn btn-md btn-primary create-new-dataset">
 | 
			
		||||
                            <i class="bi bi-cloud-plus-fill button-icon"></i>
 | 
			
		||||
                            New
 | 
			
		||||
                        </button>
 | 
			
		||||
                    </div>
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
        </form>
 | 
			
		||||
    
 | 
			
		||||
    </div>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
 | 
			
		||||
{% block script %}
 | 
			
		||||
<script
 | 
			
		||||
    type="text/javascript"
 | 
			
		||||
    src="{{ url_for('.static', filename='js/editor.js') }}"
 | 
			
		||||
></script>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
		Reference in New Issue
	
	Block a user