Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor/templates/dashboard/announcements.php
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
<?php
2
+
/**
3
+
* Template for displaying Announcements
4
+
*
5
+
* @package Tutor\Templates
6
+
* @subpackage Dashboard
7
+
* @author Themeum <support@themeum.com>
8
+
* @link https://themeum.com
9
+
* @since 1.7.9
10
+
*/
11
+
12
+
use TUTOR\Input;
13
+
use Tutor\Models\CourseModel;
14
+
15
+
if ( ! defined( 'ABSPATH' ) ) {
16
+
exit;
17
+
}
18
+
19
+
$per_page = tutor_utils()->get_option( 'pagination_per_page', 10 );
20
+
$paged = max( 1, Input::get( 'current_page', 1, Input::TYPE_INT ) );
21
+
22
+
$order_filter = Input::get( 'order', 'DESC' );
23
+
$search_filter = Input::get( 'search', '' );
24
+
25
+
// Announcement's parent.
26
+
$course_id = Input::get( 'course-id', '' );
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' => sanitize_text_field( $search_filter ),
37
+
'post_parent' => sanitize_text_field( $course_id ),
38
+
'posts_per_page' => sanitize_text_field( $per_page ),
39
+
'paged' => sanitize_text_field( $paged ),
40
+
'orderBy' => 'ID',
41
+
'order' => sanitize_text_field( $order_filter ),
42
+
43
+
);
44
+
if ( ! empty( $date_filter ) ) {
45
+
$args['date_query'] = array(
46
+
array(
47
+
'year' => $year,
48
+
'month' => $month,
49
+
'day' => $day,
50
+
),
51
+
);
52
+
}
53
+
if ( ! current_user_can( 'administrator' ) ) {
54
+
$args['author'] = get_current_user_id();
55
+
}
56
+
$the_query = new WP_Query( $args );
57
+
58
+
// Get courses.
59
+
$courses = ( current_user_can( 'administrator' ) ) ? CourseModel::get_courses() : CourseModel::get_courses_by_instructor();
60
+
$image_base = tutor()->url . '/assets/images/';
61
+
?>
62
+
63
+
<div class="tutor-card tutor-p-24">
64
+
<div class="tutor-row tutor-align-lg-center">
65
+
<div class="tutor-col-lg-auto tutor-mb-16 tutor-mb-lg-0">
66
+
<div class="tutor-round-box tutor-p-8">
67
+
<i class="tutor-icon-bullhorn tutor-fs-3" area-hidden="true"></i>
68
+
</div>
69
+
</div>
70
+
71
+
<div class="tutor-col tutor-mb-16 tutor-mb-lg-0">
72
+
<div class="tutor-fs-6 tutor-color-muted tutor-mb-4">
73
+
<?php esc_html_e( 'Create Announcement', 'tutor' ); ?>
74
+
</div>
75
+
<div class="tutor-fs-5 tutor-color-black">
76
+
<?php esc_html_e( 'Notify all students of your course', 'tutor' ); ?>
77
+
</div>
78
+
</div>
79
+
80
+
<div class="tutor-col-lg-auto">
81
+
<button type="button" class="tutor-btn tutor-btn-primary" data-tutor-modal-target="tutor_announcement_new">
82
+
<?php esc_html_e( 'Add New Announcement', 'tutor' ); ?>
83
+
</button>
84
+
</div>
85
+
</div>
86
+
</div>
87
+
88
+
<div class="tutor-row tutor-mb-32 tutor-mt-44" style="width: calc(100% + 30px);">
89
+
<div class="tutor-col-12 tutor-col-lg-6 tutor-mt-12 tutor-mt-lg-0">
90
+
<label class="tutor-d-block tutor-mb-12 tutor-form-label">
91
+
<?php esc_html_e( 'Courses', 'tutor' ); ?>
92
+
</label>
93
+
<select class="tutor-form-select tutor-announcement-course-sorting" data-searchable>
94
+
<option value=""><?php esc_html_e( 'All', 'tutor' ); ?></option>
95
+
<?php if ( $courses ) : ?>
96
+
<?php foreach ( $courses as $course ) : ?>
97
+
<option value="<?php echo esc_attr( $course->ID ); ?>" <?php selected( $course_id, $course->ID, 'selected' ); ?>>
98
+
<?php echo esc_html( $course->post_title ); ?>
99
+
</option>
100
+
<?php endforeach; ?>
101
+
<?php else : ?>
102
+
<option value=""><?php esc_html_e( 'No course found', 'tutor' ); ?></option>
103
+
<?php endif; ?>
104
+
</select>
105
+
</div>
106
+
107
+
<div class="tutor-col-6 tutor-col-lg-3 tutor-mt-12 tutor-mt-lg-0">
108
+
<label class="tutor-d-block tutor-mb-12 tutor-form-label"><?php esc_html_e( 'Sort By', 'tutor' ); ?></label>
109
+
<select class="tutor-form-select tutor-announcement-order-sorting tutor-form-control-sm" data-search="no">
110
+
<option <?php selected( $order_filter, 'ASC' ); ?>><?php esc_html_e( 'ASC', 'tutor' ); ?></option>
111
+
<option <?php selected( $order_filter, 'DESC' ); ?>><?php esc_html_e( 'DESC', 'tutor' ); ?></option>
112
+
</select>
113
+
</div>
114
+
115
+
<div class="tutor-col-6 tutor-col-lg-3 tutor-mt-12 tutor-mt-lg-0">
116
+
<label class="tutor-form-label tutor-d-block tutor-mb-12"><?php esc_html_e( 'Date', 'tutor' ); ?></label>
117
+
<div class="tutor-v2-date-picker">
118
+
<div class="tutor-form-wrap">
119
+
<span class="tutor-form-icon tutor-form-icon-reverse">
120
+
<span class="tutor-icon-calender-line" aria-hidden="true"></span>
121
+
</span>
122
+
<input class="tutor-form-control" placeholder="<?php esc_attr_e( 'Loading...', 'tutor' ); ?>">
123
+
</div>
124
+
</div>
125
+
</div>
126
+
</div>
127
+
128
+
<?php
129
+
$announcements = $the_query->have_posts() ? $the_query->posts : array();
130
+
tutor_load_template_from_custom_path(
131
+
tutor()->path . '/views/fragments/announcement-list.php',
132
+
array(
133
+
'announcements' => is_array( $announcements ) ? $announcements : array(),
134
+
'the_query' => $the_query,
135
+
'paged' => $paged,
136
+
)
137
+
);
138
+
?>
139
+