PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 2.5.0
Tutor LMS – eLearning and online course solution v2.5.0
4.0.0 3.9.15 3.9.14 3.9.13 3.9.12 3.9.11 trunk 1.0.0 1.0.0-alpha 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.2.0 1.2.1 1.2.11 1.2.12 1.2.13 1.2.20 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.15 1.9.16 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.10 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.4.0 2.5.0 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.1.0 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.7.0 3.7.1 3.7.2 3.7.3 3.7.4 3.8.0 3.8.1 3.8.2 3.8.3 3.9.0 3.9.1 3.9.10 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9
tutor / views / modal / question_form.php
tutor / views / modal Last commit date
edit-lesson.php 2 years ago edit_quiz.php 3 years ago login.php 3 years ago question_answer_form.php 3 years ago question_answer_list.php 3 years ago question_form.php 2 years ago review.php 2 years ago topic-form.php 3 years ago
question_form.php
179 lines
1 <?php
2 /**
3 * Quiz question form template
4 *
5 * @package Tutor\Views
6 * @subpackage Tutor\Modal
7 * @author Themeum <support@themeum.com>
8 * @link https://themeum.com
9 * @since 1.0.0
10 */
11
12 global $wpdb;
13 $settings = maybe_unserialize( $question->question_settings );
14 ?>
15
16 <div id="tutor-quiz-question-wrapper"
17 data-question-id="<?php echo esc_attr( $question_id ); ?>"
18 data-question_type="<?php echo esc_attr( $question->question_type ); ?>">
19
20 <div class="question-form-header tutor-mb-12">
21 <a href="javascript:;" class="back-to-quiz-questions-btn tutor-btn tutor-btn-ghost"
22 data-quiz-id="<?php echo esc_attr( isset( $quiz_id ) ? $quiz_id : '' ); ?>"
23 data-topic-id="<?php echo esc_attr( isset( $topic_id ) ? $topic_id : '' ); ?>">
24 <span class="tutor-icon-previous" area-hidden="true"></span>
25 <?php esc_html_e( 'Back', 'tutor' ); ?>
26 </a>
27 </div>
28
29 <input type="hidden" name="quiz_id" value="<?php echo esc_attr( $quiz_id ); ?>" />
30
31 <div class="tutor-mb-32">
32 <label class="tutor-form-label"><?php esc_html_e( 'Write your question here', 'tutor' ); ?></label>
33 <div class="tutor-mb-16">
34 <input type="text" name="tutor_quiz_question[<?php echo esc_attr( $question_id ); ?>][question_title]"
35 class="tutor-form-control" placeholder="<?php esc_attr_e( 'Type your question here', 'tutor' ); ?>"
36 value="<?php echo htmlspecialchars( stripslashes( $question->question_title ) ); //phpcs:ignore ?>">
37 </div>
38 </div>
39
40 <div class="tutor-mb-32">
41 <label class="tutor-form-label"><?php esc_html_e( 'Select your question type', 'tutor' ); ?></label>
42 <div class="tutor-mb-16">
43 <div class="tutor-w-100">
44 <div class="tutor-row tutor-align-center">
45 <div class="tutor-col-12 tutor-col-md-12">
46 <div class="question-type-select">
47 <?php
48 $question_types = tutor_utils()->get_question_types();
49 $current_type = $question->question_type ? $question->question_type : 'true_false';
50 ?>
51
52 <div class="select-header">
53 <span class="lead-option">
54 <?php
55 $allowed_icon_html_tags = array(
56 'span' => array(
57 'class' => array(),
58 ),
59 'i' => array(
60 'class' => array(),
61 ),
62 );
63
64 //phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped
65 echo tutor_utils()->clean_html_content(
66 $question_types[ $current_type ]['icon'],
67 $allowed_icon_html_tags
68 );
69 echo esc_html( $question_types[ $current_type ]['name'] );
70 ?>
71 </span>
72 <span class="select-dropdown">
73 <i class="tutor-icon-down "></i>
74 </span>
75 <input type="hidden" class="tutor_select_value_holder"
76 name="tutor_quiz_question[<?php echo esc_attr( $question_id ); ?>][question_type]"
77 value="<?php echo esc_attr( $question->question_type ); ?>">
78 </div>
79
80 <div class="tutor-select-options" style="display: none;">
81 <?php
82 $has_tutor_pro = tutor()->has_pro;
83
84 foreach ( $question_types as $_type => $question_type ) {
85 ?>
86 <p class="tutor-select-option"
87 data-value="<?php echo $_type; ?>" <?php echo $question->question_type === $_type ? ' data-selected="selected"' : ''; ?>
88 data-is-pro="<?php echo ( ! $has_tutor_pro && $question_type['is_pro'] ) ? 'true' : 'false'; ?>">
89
90 <?php
91 echo tutor_utils()->clean_html_content( $question_type['icon'], $allowed_icon_html_tags ) . ' ' . esc_html( $question_type['name'] );
92 ?>
93 <?php
94 if ( ! $has_tutor_pro && $question_type['is_pro'] ) {
95 $svg_lock = '<svg width="12" height="16" xmlns="http://www.w3.org/2000/svg"><path d="M11.667 6h-1V4.667A4.672 4.672 0 0 0 6 0a4.672 4.672 0 0 0-4.667 4.667V6h-1A.333.333 0 0 0 0 6.333v8.334C0 15.402.598 16 1.333 16h9.334c.735 0 1.333-.598 1.333-1.333V6.333A.333.333 0 0 0 11.667 6zm-4.669 6.963a.334.334 0 0 1-.331.37H5.333a.333.333 0 0 1-.331-.37l.21-1.89A1.319 1.319 0 0 1 4.667 10c0-.735.598-1.333 1.333-1.333S7.333 9.265 7.333 10c0 .431-.204.824-.545 1.072l.21 1.891zM8.667 6H3.333V4.667A2.67 2.67 0 0 1 6 2a2.67 2.67 0 0 1 2.667 2.667V6z" fill="#E2E2E2" fill-rule="nonzero"/></svg>';
96 printf( "<span class='question-type-pro' title='%s'>%s</span>", __( 'Pro version required', 'tutor' ), $svg_lock );
97 }
98 ?>
99 </p>
100 <?php
101 }
102 ?>
103 </div>
104 </div>
105 </div>
106 <div class="tutor-col-12 tutor-col-md-12 tutor-mt-20">
107 <div class="tutor-row tutor-align-center">
108 <div class="tutor-col-sm-4 tutor-col-md-4 tutor-mt-4 tutor-mb-4">
109 <label class="tutor-form-toggle tutor-nowrap-ellipsis">
110 <input type="checkbox" class="tutor-form-toggle-input" value="1" name="tutor_quiz_question[<?php echo esc_attr( $question_id ); ?>][answer_required]" <?php checked( '1', tutor_utils()->avalue_dot( 'answer_required', $settings ) ); ?> />
111 <span class="tutor-form-toggle-control"></span> <?php esc_html_e( 'Answer Required', 'tutor' ); ?>
112 </label>
113 </div>
114 <div class="tutor-col-sm-4 tutor-col-md-4 tutor-mt-4 tutor-mb-4">
115 <label class="tutor-form-toggle tutor-nowrap-ellipsis">
116 <input type="checkbox" class="tutor-form-toggle-input" value="1" name="tutor_quiz_question[<?php echo esc_attr( $question_id ); ?>][randomize_question]" <?php checked( '1', tutor_utils()->avalue_dot( 'randomize_question', $settings ) ); ?> />
117 <span class="tutor-form-toggle-control"></span> <?php esc_html_e( 'Randomize', 'tutor' ); ?>
118 </label>
119 </div>
120 </div>
121 </div>
122 </div>
123 </div>
124 </div>
125 </div>
126
127 <div class="tutor-mb-32">
128 <label class="tutor-form-label"><?php esc_html_e( 'Point(s) for this answer', 'tutor' ); ?></label>
129 <div class="tutor-mb-16">
130 <div class="tutor-row tutor-align-center">
131 <div class="tutor-col-sm-6 tutor-col-md-4">
132 <input type="text" name="tutor_quiz_question[<?php echo esc_attr( $question_id ); ?>][question_mark]" class="tutor-form-control" placeholder="<?php esc_attr_e( 'set the mark ex. 10', 'tutor' ); ?>" value="<?php echo esc_attr( $question->question_mark ); ?>">
133 </div>
134 <div class="tutor-col-sm-6 tutor-col-md-4 tutor-mt-4 tutor-mb-4">
135 <label class="tutor-form-toggle tutor-nowrap-ellipsis">
136 <input type="checkbox" class="tutor-form-toggle-input" value="1" name="tutor_quiz_question[<?php echo esc_attr( $question_id ); ?>][show_question_mark]" <?php checked( '1', tutor_utils()->avalue_dot( 'show_question_mark', $settings ) ); ?> />
137 <span class="tutor-form-toggle-control"></span> <?php esc_html_e( 'Display Points', 'tutor' ); ?>
138 </label>
139 </div>
140 </div>
141 </div>
142 </div>
143 <input type="hidden" name="tutor_quiz_question_id" value="<?php echo esc_attr( $question_id ); ?>">
144 <div class="tutor-mb-32">
145 <label class="tutor-form-label"><?php esc_html_e( 'Description', 'tutor' ); ?> <span>(<?php esc_html_e( 'Optional', 'tutor' ); ?>)</span></label>
146 <div class="tutor-mb-16">
147 <?php
148 if ( tutor()->has_pro ) {
149 do_action( 'tutor_quiz_question_desc_field', $question );
150 } else {
151 $field_name = "tutor_quiz_question[{$question_id}][question_description]";
152 ?>
153 <textarea name="<?php echo esc_attr( $field_name ); ?>"
154 id="tutor_quiz_desc_text_editor"
155 class="tutor-form-control"><?php echo wp_kses_post( wp_unslash( $question->question_description ) ); ?></textarea>
156 <?php
157 }
158 ?>
159 </div>
160 </div>
161
162 <div class="tutor-mb-16">
163 <label class="tutor-form-label">
164 <?php esc_html_e( 'Input options for the question and select the correct answer.', 'tutor' ); ?>
165 </label>
166 </div>
167
168 <div id="tutor_quiz_builder_answer_wrapper">
169 <?php
170 $question_type = $question->question_type;
171 $question_id = $question_id;
172
173 require __DIR__ . '/question_answer_list.php';
174 ?>
175 </div>
176
177 <?php do_action( 'tutor_quiz_question_form_after_answer_list', $question ); ?>
178 </div>
179