Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor/views/pages/view_attempt.php

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + <?php
2 + /**
3 + * Student's Quiz Review Backend
4 + *
5 + * @package Tutor\Views
6 + * @subpackage Tutor\Uninstall
7 + * @author Themeum <support@themeum.com>
8 + * @link https://themeum.com
9 + * @since 1.0.0
10 + */
11 +
12 + if ( ! defined( 'ABSPATH' ) ) {
13 + exit;
14 + }
15 +
16 + use TUTOR\Input;
17 + use Tutor\Models\QuizModel;
18 +
19 + $attempt_id = Input::get( 'view_quiz_attempt_id', 0, Input::TYPE_INT );
20 + $attempt = tutor_utils()->get_attempt( $attempt_id );
21 + $attempt_data = $attempt;
22 + $user_id = tutor_utils()->avalue_dot( 'user_id', $attempt_data );
23 + $quiz_id = $attempt && isset( $attempt->quiz_id ) ? $attempt->quiz_id : 0;
24 + $course_id = tutor_utils()->avalue_dot( 'course_id', $attempt_data );
25 + $is_instructor = tutor_utils()->is_instructor_of_this_course( get_current_user_id(), $course_id );
26 + if ( ! $attempt ) {
27 + tutor_utils()->tutor_empty_state( __( 'Attempt not found', 'tutor' ) );
28 + return;
29 + }
30 + if ( 0 === $quiz_id ) {
31 + tutor_utils()->tutor_empty_state( __( 'Attempt not found', 'tutor' ) );
32 + return;
33 + }
34 +
35 + if ( ! current_user_can( 'manage_options' ) && ! $is_instructor ) {
36 + tutor_utils()->tutor_empty_state( __( 'Access denied!', 'tutor' ) );
37 + return;
38 + }
39 +
40 + $quiz_attempt_info = tutor_utils()->quiz_attempt_info( $attempt->attempt_info );
41 + $answers = QuizModel::get_quiz_answers_by_attempt_id( $attempt->attempt_id );
42 +
43 + $user_id = tutor_utils()->avalue_dot( 'user_id', $attempt );
44 + $user = get_userdata( $user_id );
45 + ?>
46 +
47 + <div class="tutor-admin-wrap">
48 + <div class="tutor-quiz-attempt-details-wrapper">
49 + <?php
50 + tutor_load_template_from_custom_path(
51 + tutor()->path . '/views/quiz/attempt-details.php',
52 + array(
53 + 'attempt_id' => $attempt_id,
54 + 'attempt_data' => $attempt_data,
55 + 'user_id' => $user_id,
56 + 'context' => 'backend-dashboard-students-attempts',
57 + )
58 + );
59 + ?>
60 + </div>
61 +
62 + <div class="tutor-admin-body">
63 + <?php
64 + /**
65 + * Load Instructor Feedback template
66 + * pass quiz id
67 + *
68 + * @since v2.0.0
69 + */
70 + tutor_load_template_from_custom_path(
71 + tutor()->path . 'views/quiz/instructor-feedback.php',
72 + array( 'attempt_data' => $attempt_data )
73 + );
74 + ?>
75 + </div>
76 + </div>
77 +