示例#1
0
<?php

$bookingId = (int) $page['parameters']['bookingId'];
$bookings = UTSHelpsAPI::SearchWorkshopBookings(['studentId' => User::getPaddedId(), 'pageSize' => 9999, 'active' => true]);
$page['booking'] = null;
if ($bookings != null && $bookings->IsSuccess == 1) {
    foreach ($bookings->Results as $value) {
        if ($value->BookingId == $bookingId) {
            if ($value->BookingArchived == null && $value->attended == 1 && strtotime(Session::getCurrentDateTime()) > strtotime($value->starting)) {
                $page['booking'] = $value;
            } else {
                Session::setError('Booking has not been completed, please try again.');
                Session::redirect('/bookings');
            }
        }
    }
}
if ($page['booking'] == null) {
    Session::setError('Booking does not exist, please try again.');
    Session::redirect('/bookings');
}
$page['attendance'] = Attendance::getAttendance($bookingId);
示例#2
0
            if ($value->BookingArchived == null && $value->attended == null && strtotime(Session::getCurrentDateTime()) > strtotime($value->starting)) {
                $page['booking'] = $value;
            } else {
                Session::setError('Booking has not been completed, please try again.');
                Session::redirect('/bookings');
            }
        }
    }
}
if ($page['booking'] == null) {
    Session::setError('Booking does not exist, please try again.');
    Session::redirect('/bookings');
}
// Make sure attendance hasn't already been recorded for this booking,
// or the booking hasn't been set as cancelled
$attendance = Attendance::getAttendance($bookingId);
if ($attendance != null) {
    Session::setError('You have already recorded attendance for this workshop.');
    Session::redirect('/bookings');
}
// If the request is a post
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $createNonAttendance = Attendance::createNonAttendance($bookingId, $page['booking']->workshopID);
    $updateBooking = UTSHelpsAPI::UpdateWorkshopBooking(['workshopId' => $page['booking']->workshopID, 'studentId' => User::getPaddedId(), 'Attended' => 0, 'Canceled' => 0, 'userId' => 123]);
    if ($createNonAttendance && $updateBooking != null && $updateBooking->IsSuccess == 1 && User::addStrike()) {
        Session::setSuccess('Successfully recorded non-attendance for this booking.');
        Session::redirect('/bookings');
    }
    Session::setError('Unable to record non-attendance for this booking, please try again.');
    Session::redirect('/bookings');
}
示例#3
0
        $startTime = date("g:ia", $startDate);
        $endTime = date("g:ia", $endDate);
        $date = date("jS M Y", $startDate) . ': ' . $startTime . ' - ' . $endTime;
        $location = null;
        if ($page['campuses'] != null) {
            foreach ($page['campuses'] as $campus) {
                if ($value->campusID == $campus->id) {
                    $location = $campus->campus;
                }
            }
        }
        // if booking archived field does not have a date
        if ($value->BookingArchived == null && $startDate > $currentTime && $value->canceled === null && $value->attended === null) {
            $page['bookings'][] = ['bookingId' => $value->BookingId, 'workshopId' => $value->workshopID, 'workshopSetId' => $value->WorkShopSetID, 'topic' => $value->topic, 'description' => $value->description, 'date' => $date, 'campus' => $location, 'startDate' => $startDate, 'reminders' => Notification::getNotification($value->BookingId)];
        } elseif ($value->BookingArchived == null && $value->canceled == null && $startDate < $currentTime) {
            $attendance = Attendance::getAttendance($value->BookingId);
            $cutoff = $startDate + 259200;
            if ($cutoff > $currentTime) {
                $cutoff = false;
            } else {
                $cutoff = true;
            }
            $page['pastbookings'][] = ['bookingId' => $value->BookingId, 'workshopId' => $value->workshopID, 'workshopSetId' => $value->WorkShopSetID, 'topic' => $value->topic, 'description' => $value->description, 'date' => $date, 'campus' => $location, 'attendance' => $attendance, 'cutoff' => $cutoff, 'startDate' => $startDate];
        }
    }
    usort($page['bookings'], 'compareStartDate');
    usort($page['pastbookings'], 'compareStartDateReverse');
} else {
    $page['bookings'] = null;
    $page['pastbookings'] = null;
}