Viewing File: /home/rtsgrob/ww3/wp-content/plugins/tutor-pro/addons/google-meet/views/pages/meetings.php

<?php

/**
 * Google meet meetings page
 *
 * @since v2.1.0
 *
 * @package TutorPro\GoogleMeet\views
 */

use TUTOR\Input;
use TutorPro\GoogleMeet\GoogleMeet;
use TutorPro\GoogleMeet\Models\EventsModel;
use TutorPro\GoogleMeet\Utilities\Utilities;

global $wp_query;
$query_vars  = $wp_query->query_vars;
$current_tab = Input::get( 'tab', 'active-meeting' );
if ( ! is_admin() ) {
	$current_tab = isset( $query_vars['tutor_dashboard_sub_page'] ) ? $query_vars['tutor_dashboard_sub_page'] : 'active-meeting';
}
$current_page = Input::get( 'paged', 1, Input::TYPE_INT );
if ( ! is_admin() ) {
	$current_page = Input::get( 'current_page', 1, Input::TYPE_INT );
}
$posts_per_page = tutor_utils()->get_option( 'pagination_per_page' );
$offset         = ( $posts_per_page * $current_page ) - $posts_per_page;

$context      = 'active-meeting' === $current_tab ? 'active' : 'expired';
$date         = Input::get( 'date', '' );
$sorting_args = array(
	'course_id'   => Input::get( 'course-id', '' ),
	'search_term' => Input::get( 'search', '' ),
	'author_id'   => get_current_user_id(),
	'date'        => '' !== $date ? tutor_get_formated_date( 'Y-m-d', $date ) : '',
);
$paging_args  = array(
	'limit'  => $posts_per_page,
	'offset' => $offset,
);
$meetings     = EventsModel::get( $context, $sorting_args, $paging_args );

$filters = array(
	'bulk_action'   => false,
	'bulk_actions'  => false,
	'filters'       => true,
	'course_filter' => true,
	'sort_by'       => false,
);

$plugin_data = GoogleMeet::meta_data();

?>
<div id="tutor-google-meet-meta-box-wrapper">
	<?php if ( is_admin() ) : ?>
	<div class="tutor-google-meet-meetings tutor-mt-32">
		<?php
			$filters_template = tutor()->path . 'views/elements/filters.php';
			tutor_load_template_from_custom_path( $filters_template, $filters );
		?>
		<div class="tutor-admin-body tutor-mt-32">
			<div class="tutor-table-responsive">
				<table class="tutor-table tutor-table-google-meet-meeting">
					<thead>
						<tr>
							<th class="tutor-table-rows-sorting">
								<?php esc_html_e( 'Start Time', 'tutor-pro' ); ?>
								<span class="a-to-z-sort-icon tutor-icon-ordering-z-a"></span>
							</th>
							<th class="tutor-table-rows-sorting">
								<?php esc_html_e( 'End Time', 'tutor-pro' ); ?>
								<span class="a-to-z-sort-icon tutor-icon-ordering-z-a"></span>
							</th>
							<th class="">
								<?php esc_html_e( 'Meeting Title', 'tutor-pro' ); ?>
							</th>
							<th class="">
								<?php esc_html_e( 'Meeting Link', 'tutor-pro' ); ?>
							</th>
							<th class=""></th>
						</tr>
					</thead>

					<tbody>
						<?php if ( is_array( $meetings['meetings'] ) && count( $meetings['meetings'] ) ) : ?>
							<?php foreach ( $meetings['meetings'] as $meeting ) : ?>
								<?php
								$event_details = json_decode( $meeting->event_details );
								if ( ! is_object( $event_details ) ) {
									continue;
								}
								$start_date     = tutor_i18n_get_formated_date( $event_details->start_datetime, get_option( 'date_format' ) );
								$start_time     = tutor_i18n_get_formated_date( $event_details->start_datetime, get_option( 'time_format' ) );
								$end_date       = tutor_i18n_get_formated_date( $event_details->end_datetime, get_option( 'date_format' ) );
								$end_time       = tutor_i18n_get_formated_date( $event_details->end_datetime, get_option( 'time_format' ) );
								$meeting_status = $meeting->meeting_status;
								?>
								<tr class="tutor-google-meet-meeting-item" id="tutor-google-meet-list-item-<?php echo esc_attr( $meeting->ID ); ?>">
									<td>
										<div class="tutor-fs-7">
											<span><?php echo esc_html( $start_date ); ?>,</span>
											<div class="tutor-fw-normal tutor-color-muted">
												<?php echo esc_html( $start_time ); ?>
											</div>
										</div>
									</td>
									<td>
										<div class="tutor-fs-7">
											<span><?php echo esc_html( $end_date ); ?>,</span>
											<div class="tutor-fw-normal tutor-color-muted">
												<?php echo esc_html( $end_time ); ?>
											</div>
										</div>
									</td>
									<td>
										<div>
											<?php echo esc_html( $meeting->post_title ); ?>
										</div>
										<div class="tutor-meta tutor-mt-8">
											<div>
												<?php esc_html_e( 'Course:', 'tutor-pro' ); ?>
												<span class="tutor-meta-value">
													<?php
													$post_type = get_post_type( $meeting->post_parent );
													$course    = '';
													if ( $post_type === tutor()->course_post_type ) {
														$course = get_the_title( $meeting->post_parent );
													} else {
														// Get topic title.
														$course_id = get_post_parent( $meeting->post_parent );
														$course    = get_the_title( $course_id );
													}
													echo esc_html( $course );
													?>
												</span>
											</div>
										</div>
									</td>
									<td>
										<div>
											<?php echo esc_html( $event_details->meet_link ); ?>
										</div>
									</td>
									<td>
										<div class="tutor-d-flex tutor-align-center tutor-justify-end">
											<div class="tutor-d-inline-flex tutor-align-center td-action-btns">
												<?php
												$btn_class = 'tutor-btn-outline-primary';
												if ( 'start_meeting' === $meeting_status ) {
													$btn_class = 'tutor-btn-primary tutor-ws-nowrap';
												}
												?>
												<a href="<?php echo esc_url( $event_details->html_link ); ?>" class="tutor-btn tutor-btn-md tutor-mr-12 <?php echo esc_attr( $btn_class ); ?>" target="_blank" <?php echo esc_attr( 'expired' === $meeting_status ? 'disabled' : '' ); ?>><i class="tutor-icon-brand-google-meet tutor-mr-8"></i>
													<?php echo esc_html( Utilities::meeting_status()[ $meeting_status ] ); ?>
												</a>
												<a href="#" class="tutor-btn tutor-btn-outline-primary tutor-btn-md tutor-mr-4" data-tutor-modal-target="tutor-google-meet-modal-<?php echo esc_attr( $meeting->ID ); ?>">
													<?php esc_html_e( 'Edit', 'tutor-pro' ); ?>
												</a>
												<a href="#" class="tutor-iconic-btn tutor-google-meet-list-delete" data-event-id="<?php echo esc_attr( $event_details->id ); ?>" data-meeting-post-id="<?php echo esc_attr( $meeting->ID ); ?>" data-item-reference="tutor-google-meet-list-item-<?php echo esc_attr( $meeting->ID ); ?>" data-tutor-modal-target="tutor-common-confirmation-modal">
													<i class="tutor-icon-trash-can-line" area-hidden="true"></i>
												</a>
											</div>
										</div>
									</td>
								</tr>
							<?php endforeach; ?>
								<?php else : ?>
									<tr>
										<td colspan="100%">
											<?php
												tutor_utils()->tutor_empty_state(
													__( 'No records found', 'tutor-pro' )
												);
											?>
										</td>
									</tr>
						<?php endif; ?>
					</tbody>
				</table>
			</div>
			<!-- pagination  -->
			<div class="tutor-admin-page-pagination-wrapper tutor-mt-32">
				<?php
				/**
				 * Prepare pagination data & load template
				 */
				if ( $meetings['total_found'] > $posts_per_page ) {
					$pagination_data     = array(
						'total_items' => $meetings['total_found'],
						'per_page'    => $posts_per_page,
						'paged'       => $current_page,
					);
					$pagination_template = tutor()->path . 'views/elements/pagination.php';
					tutor_load_template_from_custom_path( $pagination_template, $pagination_data );
				}
				?>
			</div>    
			<!-- pagination end -->
			<?php wp_reset_postdata(); ?>
		</div>
	</div>
	<?php else : ?>
		<?php require 'frontend-meetings.php'; ?>
	<?php endif; ?>
	<?php
	// Edit/delete modal.
	if ( is_array( $meetings['meetings'] ) && count( $meetings['meetings'] ) ) {
		foreach ( $meetings['meetings'] as $meeting ) {
			tutor_load_template_from_custom_path(
				$plugin_data['views'] . 'modal/dynamic-modal-content.php',
				array(
					'post-id'  => $meeting->ID,
					'modal_id' => 'tutor-google-meet-modal-' . $meeting->ID,
				),
				false
			);
		}
	}

	// Delete confirmation modal.
	tutor_load_template_from_custom_path(
		tutor()->path . 'views/elements/common-confirm-popup.php',
		array(
			'message'           => __(
				'Do you want to delete? Google event will be deleted permanently.',
				'tutor-pro'
			),
			'additional_fields' => array(
				'event-id',
				'item-reference',
			),
			'disable_action_field' => true,
		),
		false
	);
	?>

</div>
Back to Directory File Manager