PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 4.0.4
Tutor LMS – eLearning and online course solution v4.0.4
4.0.4 4.0.3 4.0.2 4.0.1 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 / pages / announcements.php
tutor / views / pages Last commit date
ecommerce 1 month ago tools 3 months ago add_new_instructor.php 2 years ago addons.php 1 year ago announcements.php 3 months ago answer.php 3 years ago course-builder.php 1 week ago course-list.php 3 months ago enable_disable_addons.php 1 year ago feature-promotion.php 2 years ago get-pro.php 9 months ago instructors.php 1 month ago question_answer.php 1 year ago quiz_attempts.php 1 month ago students.php 1 month ago tools.php 3 years ago view_attempt.php 1 month ago welcome.php 2 weeks ago whats-new.php 2 weeks ago withdraw_requests.php 3 months ago
announcements.php
156 lines
1 <?php
2 /**
3 * Announcement page
4 *
5 * Configure query with get params
6 *
7 * @package Tutor\Views
8 * @author Themeum <support@themeum.com>
9 * @link https://themeum.com
10 * @since 2.0.0
11 */
12
13 if ( ! defined( 'ABSPATH' ) ) {
14 exit;
15 }
16
17 use TUTOR\Input;
18 use Tutor\Models\CourseModel;
19
20 $announcement_obj = tutor_lms()->announcements;
21
22 $limit = tutor_utils()->get_option( 'pagination_per_page' );
23 $page_filter = Input::get( 'paged', 1, Input::TYPE_INT );
24 $order_filter = Input::get( 'order', 'DESC' );
25 $search_filter = Input::get( 'search', '' );
26 $course_id = Input::get( 'course-id', 0, Input::TYPE_INT );
27 $date_filter = Input::get( 'date', '' );
28
29 $year = date( 'Y', strtotime( $date_filter ) );
30 $month = date( 'm', strtotime( $date_filter ) );
31 $day = date( 'd', strtotime( $date_filter ) );
32
33 $args = array(
34 'post_type' => 'tutor_announcements',
35 'post_status' => 'publish',
36 's' => $search_filter,
37 'posts_per_page' => sanitize_text_field( $limit ),
38 'paged' => sanitize_text_field( $page_filter ),
39 'orderBy' => 'ID',
40 'order' => sanitize_text_field( $order_filter ),
41
42 );
43
44 if ( $course_id ) {
45 $args['post_parent'] = $course_id;
46 }
47
48 if ( ! empty( $date_filter ) ) {
49 $args['date_query'] = array(
50 array(
51 'year' => $year,
52 'month' => $month,
53 'day' => $day,
54 ),
55 );
56 }
57
58 if ( ! current_user_can( 'administrator' ) ) {
59 $args['author'] = get_current_user_id();
60 }
61
62 $the_query = new WP_Query( $args );
63
64 /**
65 * Navbar data to make nav menu
66 */
67 $navbar_data = array(
68 'page_title' => $announcement_obj->page_title,
69 );
70
71 /**
72 * Filters for sorting searching
73 */
74 $filters = array(
75 'bulk_action' => $announcement_obj->bulk_action,
76 'bulk_actions' => $announcement_obj->prepare_bulk_actions(),
77 'ajax_action' => 'tutor_announcement_bulk_action',
78 'filters' => array(
79 array(
80 'label' => __( 'Courses', 'tutor' ),
81 'field_type' => 'select',
82 'field_name' => 'course-id',
83 'options' => CourseModel::get_course_dropdown_options(),
84 'searchable' => true,
85 'value' => Input::get( 'course-id', '' ),
86 ),
87 array(
88 'label' => __( 'Date', 'tutor' ),
89 'field_type' => 'date',
90 'field_name' => 'date',
91 'show_label' => true,
92 'value' => Input::get( 'date', '' ),
93 ),
94 ),
95 );
96 ?>
97
98 <div class="tutor-admin-wrap">
99 <?php
100 /**
101 * Load Templates with data.
102 */
103 $filters_template = tutor()->path . 'views/elements/list-filters.php';
104 $navbar_template = tutor()->path . 'views/elements/list-navbar.php';
105 tutor_load_template_from_custom_path( $navbar_template, $navbar_data );
106 ?>
107
108 <div class="tutor-admin-container tutor-admin-container-lg tutor-mb-24">
109 <div class="tutor-card tutor-p-24">
110 <div class="tutor-row tutor-align-lg-center">
111 <div class="tutor-col-lg-auto tutor-mb-16 tutor-mb-lg-0">
112 <div class="tutor-round-box">
113 <i class="tutor-icon-bullhorn tutor-fs-3" aria-hidden="true"></i>
114 </div>
115 </div>
116
117 <div class="tutor-col tutor-mb-16 tutor-mb-lg-0">
118 <div class="tutor-fs-6 tutor-color-muted tutor-mb-4">
119 <?php esc_html_e( 'Create Announcement', 'tutor' ); ?>
120 </div>
121 <div class="tutor-fs-5 tutor-color-black">
122 <?php esc_html_e( 'Notify all students of your course', 'tutor' ); ?>
123 </div>
124 </div>
125
126 <div class="tutor-col-lg-auto">
127 <button type="button" class="tutor-btn tutor-btn-primary tutor-btn-lg" data-tutor-modal-target="tutor_announcement_new">
128 <?php esc_html_e( 'Add New Announcement', 'tutor' ); ?>
129 </button>
130 </div>
131 </div>
132 </div>
133 </div>
134
135 <?php
136 tutor_load_template_from_custom_path( $filters_template, $filters );
137 ?>
138
139 <div class="tutor-admin-container tutor-admin-container-lg">
140 <div class="tutor-admin-announcements-list tutor-mt-16">
141 <?php
142 $announcements = $the_query->have_posts() ? $the_query->posts : array();
143 $announcement_template = tutor()->path . '/views/fragments/announcement-list.php';
144 tutor_load_template_from_custom_path(
145 $announcement_template,
146 array(
147 'announcements' => is_array( $announcements ) ? $announcements : array(),
148 'the_query' => $the_query,
149 'paged' => $page_filter,
150 )
151 );
152 ?>
153 </div>
154 </div>
155 </div>
156