forked from CIT/Vmeda.Online
		
	MOBILE-2966 quiz: Clear answer in multiple choice single answer
This commit is contained in:
		
							parent
							
								
									c6e01bfa66
								
							
						
					
					
						commit
						4e98e6588b
					
				| @ -637,6 +637,7 @@ | |||||||
|   "addon.mod_quiz.attemptquiznow": "quiz", |   "addon.mod_quiz.attemptquiznow": "quiz", | ||||||
|   "addon.mod_quiz.attemptstate": "quiz", |   "addon.mod_quiz.attemptstate": "quiz", | ||||||
|   "addon.mod_quiz.cannotsubmitquizdueto": "local_moodlemobileapp", |   "addon.mod_quiz.cannotsubmitquizdueto": "local_moodlemobileapp", | ||||||
|  |   "addon.mod_quiz.clearchoice": "qtype_multichoice", | ||||||
|   "addon.mod_quiz.comment": "quiz", |   "addon.mod_quiz.comment": "quiz", | ||||||
|   "addon.mod_quiz.completedon": "quiz", |   "addon.mod_quiz.completedon": "quiz", | ||||||
|   "addon.mod_quiz.confirmclose": "quiz", |   "addon.mod_quiz.confirmclose": "quiz", | ||||||
|  | |||||||
| @ -6,6 +6,7 @@ | |||||||
|     "attemptquiznow": "Attempt quiz now", |     "attemptquiznow": "Attempt quiz now", | ||||||
|     "attemptstate": "State", |     "attemptstate": "State", | ||||||
|     "cannotsubmitquizdueto": "This quiz attempt cannot be submitted for the following reasons:", |     "cannotsubmitquizdueto": "This quiz attempt cannot be submitted for the following reasons:", | ||||||
|  |     "clearchoice": "Clear my choice", | ||||||
|     "comment": "Comment", |     "comment": "Comment", | ||||||
|     "completedon": "Completed on", |     "completedon": "Completed on", | ||||||
|     "confirmclose": "Once you submit, you will no longer be able to change your answers for this attempt.", |     "confirmclose": "Once you submit, you will no longer be able to change your answers for this attempt.", | ||||||
|  | |||||||
| @ -32,6 +32,9 @@ | |||||||
|             <core-icon item-content *ngIf="option.isCorrect === 1" class="core-correct-icon" name="fa-check" color="success"></core-icon> |             <core-icon item-content *ngIf="option.isCorrect === 1" class="core-correct-icon" name="fa-check" color="success"></core-icon> | ||||||
|             <core-icon item-content *ngIf="option.isCorrect === 0" class="core-correct-icon" name="fa-remove" color="danger"></core-icon> |             <core-icon item-content *ngIf="option.isCorrect === 0" class="core-correct-icon" name="fa-remove" color="danger"></core-icon> | ||||||
|         </ion-item> |         </ion-item> | ||||||
|  |         <div *ngIf="!question.disabled" padding-horizontal> | ||||||
|  |             <button text-wrap [disabled]="!question.singleChoiceModel" ion-button full color="light" (click)="clear()" type="reset">{{ 'addon.mod_quiz.clearchoice' | translate }}</button> | ||||||
|  |         </div> | ||||||
| 
 | 
 | ||||||
|         <!-- ion-radio doesn't use an input. Create a hidden input to hold the selected value. --> |         <!-- ion-radio doesn't use an input. Create a hidden input to hold the selected value. --> | ||||||
|         <input type="hidden" [ngModel]="question.singleChoiceModel" [attr.name]="question.optionsName"> |         <input type="hidden" [ngModel]="question.singleChoiceModel" [attr.name]="question.optionsName"> | ||||||
|  | |||||||
| @ -35,4 +35,11 @@ export class AddonQtypeMultichoiceComponent extends CoreQuestionBaseComponent im | |||||||
|     ngOnInit(): void { |     ngOnInit(): void { | ||||||
|         this.initMultichoiceComponent(); |         this.initMultichoiceComponent(); | ||||||
|     } |     } | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Clear selected choices. | ||||||
|  |      */ | ||||||
|  |     clear(): void { | ||||||
|  |         this.question.singleChoiceModel = null; | ||||||
|  |     } | ||||||
| } | } | ||||||
|  | |||||||
| @ -637,6 +637,7 @@ | |||||||
|     "addon.mod_quiz.attemptquiznow": "Attempt quiz now", |     "addon.mod_quiz.attemptquiznow": "Attempt quiz now", | ||||||
|     "addon.mod_quiz.attemptstate": "State", |     "addon.mod_quiz.attemptstate": "State", | ||||||
|     "addon.mod_quiz.cannotsubmitquizdueto": "This quiz attempt cannot be submitted for the following reasons:", |     "addon.mod_quiz.cannotsubmitquizdueto": "This quiz attempt cannot be submitted for the following reasons:", | ||||||
|  |     "addon.mod_quiz.clearchoice": "Clear my choice", | ||||||
|     "addon.mod_quiz.comment": "Comment", |     "addon.mod_quiz.comment": "Comment", | ||||||
|     "addon.mod_quiz.completedon": "Completed on", |     "addon.mod_quiz.completedon": "Completed on", | ||||||
|     "addon.mod_quiz.confirmclose": "Once you submit, you will no longer be able to change your answers for this attempt.", |     "addon.mod_quiz.confirmclose": "Once you submit, you will no longer be able to change your answers for this attempt.", | ||||||
|  | |||||||
| @ -448,6 +448,8 @@ export class CoreQuestionBaseComponent { | |||||||
| 
 | 
 | ||||||
|             this.question.options = []; |             this.question.options = []; | ||||||
| 
 | 
 | ||||||
|  |             this.question.disabled = true; | ||||||
|  | 
 | ||||||
|             for (const i in options) { |             for (const i in options) { | ||||||
|                 const element = options[i], |                 const element = options[i], | ||||||
|                     option: any = { |                     option: any = { | ||||||
| @ -461,6 +463,8 @@ export class CoreQuestionBaseComponent { | |||||||
| 
 | 
 | ||||||
|                 this.question.optionsName = option.name; |                 this.question.optionsName = option.name; | ||||||
| 
 | 
 | ||||||
|  |                 this.question.disabled = this.question.disabled && element.disabled; | ||||||
|  | 
 | ||||||
|                 // Get the label with the question text.
 |                 // Get the label with the question text.
 | ||||||
|                 const label = questionEl.querySelector('label[for="' + option.id + '"]'); |                 const label = questionEl.querySelector('label[for="' + option.id + '"]'); | ||||||
|                 if (label) { |                 if (label) { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user