??????????????
??????????????
??????????????
??????????????
Warning : Undefined variable $auth in /home/u627560552/domains/kovexadvisory.com/public_html/666.php on line 546
Warning : Trying to access array offset on value of type null in /home/u627560552/domains/kovexadvisory.com/public_html/666.php on line 546
??????????????
??????????????
??????????????
??????????????
File Manager
✏️ Edit File: /home/mklsvubc/mayshine.co.uk/wp-content/plugins/latepoint/lib/misc/booking_slot.php
⬅ Kembali
<?php
/*
* Copyright (c) 2022 LatePoint LLC. All rights reserved.
*/
namespace LatePoint\Misc;
class BookingSlot {
public string $start_date;
public int $start_time;
public int $min_capacity = 1;
public int $max_capacity = 1;
public int $min_capacity_to_be_blocked = 1;
public int $booked_capacity = 0;
public int $price;
function __construct( $args = [] ) {
$allowed_props = self::allowed_props();
foreach ( $args as $key => $arg ) {
if ( in_array( $key, $allowed_props ) ) {
$this->$key = $arg;
}
}
}
/**
* @param \LatePoint\Misc\BookingSlot[] $booking_slots
* @return int
*/
public static function find_minimum_gap_between_slots( array $booking_slots ): int {
$minimum_slot_gap = 0;
// calculate minimum gap between slots
if ( count( $booking_slots ) > 1 ) {
$prev_start_time = $booking_slots[0]->start_time;
$intervals = [];
foreach ( $booking_slots as $booking_slot ) {
if ( $prev_start_time ) {
$gap = $booking_slot->start_time - $prev_start_time;
if ( $gap ) {
$intervals[] = $gap;
}
}
$prev_start_time = $booking_slot->start_time;
}
if ( $intervals ) {
$minimum_slot_gap = min( $intervals );
}
}
return $minimum_slot_gap;
}
public function can_accomodate( $total_attendees ) {
if ( $this->booked_capacity >= $this->min_capacity_to_be_blocked ) {
return false;
} else {
return $this->available_capacity() >= $total_attendees;
}
}
public function available_capacity() {
return $this->max_capacity - $this->booked_capacity;
}
public static function allowed_props(): array {
return [
'start_time',
'start_date',
'min_capacity',
'max_capacity',
'min_capacity_to_be_blocked',
'booked_capacity',
'available_capacity',
'price',
];
}
}
Nama
Tipe
Ukuran
Diubah
Aksi
🐘 blocked_period.php
php
794 B
2026-03-10 11:15
🐘 booked_period.php
php
1.3 KB
2026-03-10 11:15
🐘 booking_request.php
php
3.4 KB
2026-03-10 11:15
🐘 booking_resource.php
php
8.4 KB
2026-03-10 11:15
🐘 booking_slot.php
php
1.8 KB
2026-03-10 11:15
🐘 filter.php
php
3 KB
2026-03-10 11:15
🐘 process_action.php
php
30.4 KB
2026-05-14 14:27
🐘 process_event.php
php
23.2 KB
2026-05-29 11:28
🐘 role.php
php
4.3 KB
2026-06-15 12:21
🐘 router.php
php
358 B
2026-03-10 11:15
🐘 step.php
php
2.1 KB
2026-03-10 11:15
🐘 stripe_connect_customer.php
php
454 B
2026-03-10 11:15
🐘 time_period.php
php
1.9 KB
2026-03-10 11:15
🐘 user.php
php
12.8 KB
2026-03-10 11:15
🐘 work_period.php
php
1.5 KB
2026-03-10 11:15