Skip to content

Instantly share code, notes, and snippets.

@sachyya
Created September 11, 2020 05:36
Show Gist options
  • Save sachyya/2d0edfe6bb3e96d7f0bf30d6e44567b3 to your computer and use it in GitHub Desktop.
Save sachyya/2d0edfe6bb3e96d7f0bf30d6e44567b3 to your computer and use it in GitHub Desktop.
<?php
function theme_slug_disable_meeting_before_minutes( $response, $meeting_id ) {
$meeting_details = get_post_meta( $meeting_id, '_meeting_zoom_details', true );
if ( ! empty( $meeting_details ) && is_object( $meeting_details ) ) {
if ( $meeting_details->type === 8 || $meeting_details->type === 3 ) {
$meeting_details->start_time = false;
}
$meeting_date = vczapi_dateConverter( $meeting_details->start_time, $meeting_details->timezone, false );
$meeting_date = apply_filters( 'vczapi_woocommerce_check_deadline_crossed_meeting_date', $meeting_date, $meeting_id );
$current_date = vczapi_dateConverter( '+30 minutes', $meeting_details->timezone, false );
if ( $current_date > $meeting_date ) {
$response = array(
'valid' => false,
'date' => $meeting_date,
'message' => sprintf( apply_filters( 'vczapi_woocommerce_time_passed_text', __( 'Valid zoom meeting required - Meeting time of %s has passed', 'vczapi-woocommerce-addon' ), $meeting_date ), $meeting_date->format( 'F j, Y, g:i a' ) )
);
} else {
$response = array( 'valid' => true, 'date' => $meeting_date, 'message' => '' );
}
}
return $response;
}
add_filter( 'vczapi_woocommerce_check_deadline_crossed_response', 'theme_slug_disable_meeting_before_minutes', 10, 2 );
@sachyya
Copy link
Author

sachyya commented Sep 11, 2020

Disable the ability to buy appointments 30 minutes before the start for Zoom Meetings with WooCommerce

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment