Add UCQ
This commit is contained in:
parent
00f196bac3
commit
4619e2356a
3
db.go
3
db.go
@ -94,7 +94,7 @@ CREATE TABLE IF NOT EXISTS survey_quests(
|
|||||||
title VARCHAR(255),
|
title VARCHAR(255),
|
||||||
description TEXT,
|
description TEXT,
|
||||||
placeholder VARCHAR(255),
|
placeholder VARCHAR(255),
|
||||||
kind ENUM('text', 'mcq') NOT NULL,
|
kind ENUM('text', 'ucq', 'mcq') NOT NULL,
|
||||||
FOREIGN KEY(id_survey) REFERENCES surveys(id_survey)
|
FOREIGN KEY(id_survey) REFERENCES surveys(id_survey)
|
||||||
) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_bin;
|
) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_bin;
|
||||||
`); err != nil {
|
`); err != nil {
|
||||||
@ -105,7 +105,6 @@ CREATE TABLE IF NOT EXISTS survey_proposals(
|
|||||||
id_proposal INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
|
id_proposal INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
|
||||||
id_question INTEGER NOT NULL,
|
id_question INTEGER NOT NULL,
|
||||||
label VARCHAR(255),
|
label VARCHAR(255),
|
||||||
value VARCHAR(255),
|
|
||||||
FOREIGN KEY(id_question) REFERENCES survey_quests(id_question)
|
FOREIGN KEY(id_question) REFERENCES survey_quests(id_question)
|
||||||
) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_bin;
|
) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_bin;
|
||||||
`); err != nil {
|
`); err != nil {
|
||||||
|
@ -21,6 +21,12 @@
|
|||||||
<label class="form-check-label" for="p{{proposal.id}}">{{ proposal.label }}</label>
|
<label class="form-check-label" for="p{{proposal.id}}">{{ proposal.label }}</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="card-text" ng-if="question.kind == 'ucq'" ng-controller="ProposalsController">
|
||||||
|
<div class="form-group form-check" ng-repeat="proposal in proposals">
|
||||||
|
<input type="radio" disabled class="form-check-input" id="p{{proposal.id}}" ng-checked="response.value.indexOf(proposal.id) != -1">
|
||||||
|
<label class="form-check-label" for="p{{proposal.id}}">{{ proposal.label }}</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="input-group mb-1">
|
<div class="input-group mb-1">
|
||||||
|
@ -72,6 +72,7 @@
|
|||||||
<div class="col">
|
<div class="col">
|
||||||
<select class="custom-select" id="q{{qid}}kind" ng-model="question.kind">
|
<select class="custom-select" id="q{{qid}}kind" ng-model="question.kind">
|
||||||
<option value="text">Texte</option>
|
<option value="text">Texte</option>
|
||||||
|
<option value="ucq">QCU</option>
|
||||||
<option value="mcq">QCM</option>
|
<option value="mcq">QCM</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
@ -86,21 +87,25 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div ng-controller="ProposalsController" ng-if="question.kind == 'mcq'">
|
<div ng-controller="ProposalsController" ng-if="question.kind == 'ucq' || question.kind == 'mcq'">
|
||||||
<div class="form-group form-check" ng-if="!question.edit" ng-repeat="proposal in proposals">
|
<div class="form-group form-check" ng-if="!question.edit && question.kind == 'mcq'" ng-repeat="proposal in proposals">
|
||||||
<input type="checkbox" class="form-check-input" id="p{{proposal.id}}" ng-model="question['p' + proposal.id]" ng-disabled="survey.readonly">
|
<input type="checkbox" class="form-check-input" id="p{{proposal.id}}" ng-model="question['p' + proposal.id]" ng-disabled="survey.readonly">
|
||||||
<label class="form-check-label" for="p{{proposal.id}}">{{ proposal.label }}</label>
|
<label class="form-check-label" for="p{{proposal.id}}">{{ proposal.label }}</label>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group form-check" ng-if="!question.edit && question.kind == 'ucq'" ng-repeat="proposal in proposals">
|
||||||
|
<input type="radio" class="form-check-input" name="proposals{{question.id}}" id="p{{proposal.id}}" ng-model="question['p' + proposal.id]" ng-disabled="survey.readonly">
|
||||||
|
<label class="form-check-label" for="p{{proposal.id}}">{{ proposal.label }}</label>
|
||||||
|
</div>
|
||||||
<div class="form-group row" ng-if="question.edit" ng-repeat="proposal in proposals">
|
<div class="form-group row" ng-if="question.edit" ng-repeat="proposal in proposals">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<input type="text" class="form-control" id="pi{{proposal.id}}" placeholder="Label" ng-model="proposal.label">
|
<input type="text" class="form-control" id="pi{{proposal.id}}" placeholder="Label" ng-model="proposal.label">
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<button type="button" class="btn btn-success ml-1" ng-click="saveProposal()" ng-if="question.edit && question.kind == 'mcq'"><svg class="bi bi-check" width="1em" height="1em" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15.854 5.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L8.5 12.293l6.646-6.647a.5.5 0 01.708 0z" clip-rule="evenodd"></path></svg></button>
|
<button type="button" class="btn btn-success ml-1" ng-click="saveProposal()" ng-if="question.edit && (question.kind == 'ucq' || question.kind == 'mcq')"><svg class="bi bi-check" width="1em" height="1em" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15.854 5.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L8.5 12.293l6.646-6.647a.5.5 0 01.708 0z" clip-rule="evenodd"></path></svg></button>
|
||||||
<button type="button" class="btn btn-danger ml-1" ng-click="deleteProposal()" ng-if="question.edit && question.kind == 'mcq'"><svg class="bi bi-trash-fill" width="1em" height="1em" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.5 3a1 1 0 00-1 1v1a1 1 0 001 1H5v9a2 2 0 002 2h6a2 2 0 002-2V6h.5a1 1 0 001-1V4a1 1 0 00-1-1H12a1 1 0 00-1-1H9a1 1 0 00-1 1H4.5zm3 4a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zM10 7a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7A.5.5 0 0110 7zm3 .5a.5.5 0 00-1 0v7a.5.5 0 001 0v-7z" clip-rule="evenodd"></path></svg></button>
|
<button type="button" class="btn btn-danger ml-1" ng-click="deleteProposal()" ng-if="question.edit && (question.kind == 'ucq' || question.kind == 'mcq')"><svg class="bi bi-trash-fill" width="1em" height="1em" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.5 3a1 1 0 00-1 1v1a1 1 0 001 1H5v9a2 2 0 002 2h6a2 2 0 002-2V6h.5a1 1 0 001-1V4a1 1 0 00-1-1H12a1 1 0 00-1-1H9a1 1 0 00-1 1H4.5zm3 4a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zM10 7a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7A.5.5 0 0110 7zm3 .5a.5.5 0 00-1 0v7a.5.5 0 001 0v-7z" clip-rule="evenodd"></path></svg></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn btn-info ml-1" ng-click="addProposal()" ng-if="question.edit && question.kind == 'mcq'"><svg class="bi bi-plus" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3.5a.5.5 0 01.5.5v4a.5.5 0 01-.5.5H4a.5.5 0 010-1h3.5V4a.5.5 0 01.5-.5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M7.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H8.5V12a.5.5 0 01-1 0V8z" clip-rule="evenodd"></path></svg> Ajouter des proposals
|
<button type="button" class="btn btn-info ml-1" ng-click="addProposal()" ng-if="question.edit && (question.kind == 'ucq' || question.kind == 'mcq')"><svg class="bi bi-plus" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3.5a.5.5 0 01.5.5v4a.5.5 0 01-.5.5H4a.5.5 0 010-1h3.5V4a.5.5 0 01.5-.5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M7.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H8.5V12a.5.5 0 01-1 0V8z" clip-rule="evenodd"></path></svg> Ajouter des proposals
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user