announcements
4 years ago
assignments
4 years ago
elements
4 years ago
enrolled-courses
4 years ago
instructor
4 years ago
my-courses
4 years ago
my-quiz-attempts
4 years ago
notifications
4 years ago
question-answer
4 years ago
quiz-attempts
4 years ago
reviews
4 years ago
settings
4 years ago
withdraw-method-fields
4 years ago
announcements.php
4 years ago
assignments.php
4 years ago
create-course.php
4 years ago
dashboard.php
4 years ago
enrolled-courses.php
4 years ago
index.php
4 years ago
logged-in.php
4 years ago
my-courses.php
4 years ago
my-profile.php
4 years ago
my-quiz-attempts.php
4 years ago
purchase_history.php
4 years ago
question-answer.php
4 years ago
quiz-attempts.php
4 years ago
registration.php
4 years ago
reviews.php
4 years ago
settings.php
4 years ago
wishlist.php
4 years ago
withdraw.php
4 years ago
question-answer.php
95 lines
| 1 | <?php |
| 2 | |
| 3 | /** |
| 4 | * @package TutorLMS/Templates |
| 5 | * @version 1.6.4 |
| 6 | */ |
| 7 | |
| 8 | use TUTOR\Instructor; |
| 9 | |
| 10 | if (isset($_GET['question_id'])) { |
| 11 | tutor_load_template_from_custom_path(tutor()->path . '/views/qna/qna-single.php', array( |
| 12 | 'question_id' => $_GET['question_id'], |
| 13 | 'context' => 'frontend-dashboard-qna-single' |
| 14 | )); |
| 15 | return; |
| 16 | } |
| 17 | |
| 18 | if (isset($_GET['view_as']) && in_array($_GET['view_as'], array('student', 'instructor'))) { |
| 19 | update_user_meta(get_current_user_id(), 'tutor_qa_view_as', $_GET['view_as']); |
| 20 | } |
| 21 | |
| 22 | $is_instructor = tutor_utils()->is_instructor(null, true); |
| 23 | $view_option = get_user_meta(get_current_user_id(), 'tutor_qa_view_as', true); |
| 24 | $view_as = $is_instructor ? ($view_option ? $view_option : 'instructor') : 'student'; |
| 25 | $as_instructor_url = add_query_arg(array('view_as' => 'instructor'), tutor()->current_url); |
| 26 | $as_student_url = add_query_arg(array('view_as' => 'student'), tutor()->current_url); |
| 27 | $qna_tabs = \Tutor\Q_and_A::tabs_key_value($view_as=='student' ? get_current_user_id() : null); |
| 28 | $active_tab = isset($_GET['tab']) ? sanitize_text_field($_GET['tab']) : 'all'; |
| 29 | // pr($qna_tabs); |
| 30 | ?> |
| 31 | |
| 32 | <div class="tutor-frontend-dashboard-qna-header tutor-mb-32"> |
| 33 | <div class="tutor-row tutor-mb-24"> |
| 34 | <div class="tutor-col"> |
| 35 | <div class="tutor-fs-5 tutor-fw-medium tutor-color-black"> |
| 36 | <?php _e('Question & Answer', 'tutor'); ?> |
| 37 | </div> |
| 38 | </div> |
| 39 | |
| 40 | <?php if ($is_instructor) : ?> |
| 41 | <div class="tutor-col-auto"> |
| 42 | <label class="tutor-form-toggle tutor-dashboard-qna-vew-as tutor-d-flex tutor-justify-end current-view-<?php echo $view_as == 'instructor' ? 'instructor' : 'student'; ?>"> |
| 43 | <input type="checkbox" class="tutor-form-toggle-input" <?php echo $view_as == 'instructor' ? 'checked="checked"' : ''; ?> data-as_instructor_url="<?php echo $as_instructor_url; ?>" data-as_student_url="<?php echo $as_student_url; ?>" disabled="disabled" /> |
| 44 | <span class="tutor-form-toggle-label tutor-form-toggle-<?php echo $view_as == 'student' ? 'checked' : 'unchecked'; ?>"><?php _e('Student', 'tutor'); ?></span> |
| 45 | <span class="tutor-form-toggle-control"></span> |
| 46 | <span class="tutor-form-toggle-label tutor-form-toggle-<?php echo $view_as == 'instructor' ? 'checked' : 'unchecked'; ?>"><?php _e('Instructor', 'tutor'); ?></span> |
| 47 | </label> |
| 48 | </div> |
| 49 | <?php endif; ?> |
| 50 | </div> |
| 51 | |
| 52 | <?php // if($view_as=='instructor'): ?> |
| 53 | <div class="tutor-row"> |
| 54 | <div class="tutor-col-lg-5"> |
| 55 | <div class="tutor-qna-filter tutor-d-flex tutor-align-center"> |
| 56 | <span class="tutor-fs-7 tutor-color-secondary tutor-mr-20"><?php _e('Sort By', 'tutor'); ?>:</span> |
| 57 | <div class="tutor-flex-grow-1"> |
| 58 | <select class="tutor-form-select tutor-select-redirector"> |
| 59 | <?php |
| 60 | foreach ($qna_tabs as $tab) { |
| 61 | echo '<option value="' . $tab['url'] . '" ' . ($active_tab == $tab['key'] ? 'selected="selected"' : '') . '> |
| 62 | ' . $tab['title'] . '(' .$tab['value']. ')' . ' |
| 63 | </option>'; |
| 64 | } |
| 65 | ?> |
| 66 | </select> |
| 67 | </div> |
| 68 | </div> |
| 69 | </div> |
| 70 | </div> |
| 71 | <?php // endif; ?> |
| 72 | </div> |
| 73 | |
| 74 | <?php |
| 75 | $per_page = tutor_utils()->get_option( 'pagination_per_page', 10 ); |
| 76 | $current_page = max(1, tutor_utils()->avalue_dot('current_page', $_GET)); |
| 77 | $offset = ($current_page - 1) * $per_page; |
| 78 | |
| 79 | $q_status = isset($_GET['tab']) ? sanitize_text_field($_GET['tab']) : null; |
| 80 | $asker_id = $view_as == 'instructor' ? null : get_current_user_id(); |
| 81 | $total_items = tutor_utils()->get_qa_questions($offset, $per_page, '', null, null, $asker_id, $q_status, true); |
| 82 | $questions = tutor_utils()->get_qa_questions($offset, $per_page, '', null, null, $asker_id, $q_status); |
| 83 | |
| 84 | tutor_load_template_from_custom_path(tutor()->path . '/views/qna/qna-table.php', array( |
| 85 | 'qna_list' => $questions, |
| 86 | 'context' => 'frontend-dashboard-qna-table-' . $view_as, |
| 87 | 'view_as' => $view_as, |
| 88 | 'qna_pagination' => array( |
| 89 | 'base' => '?current_page=%#%', |
| 90 | 'total_items' => $total_items, |
| 91 | 'per_page' => $per_page, |
| 92 | 'paged' => $current_page |
| 93 | ) |
| 94 | )); |
| 95 | ?> |