public function process() { $event = Events::getById($this->getElementValue('id')); Events::setSignupStatus($this->user->getId(), $event['id'], 'SIGNEDUP'); Events::appendSignupComment($this->user->getId(), $event['id'], 'Forced signup.', Session::getUser()->getUsername()); logActivity('Forced signup of:' . $this->getElementValue('username') . ' to event: ' . $event['id'] . ' (' . $event['name'] . ')'); redirect('viewEvent.php?id=' . $event['id'], 'They have been signed up.'); }
public function process() { $event = Events::getById($this->getElementValue('event')); switch ($event['signups']) { case 'staff': $initialSignupStatus = 'STAFF'; break; case 'punters': $initialSignupStatus = 'SIGNEDUP'; break; case 'waitinglist': $initialSignupStatus = 'WAITING_LIST'; break; default: throw new Exception('Cannot determine your initial signup status when the event signup status is: ' . $event['signups']); } Events::setSignupStatus($this->getElementValue('user'), $this->getElementValue('event'), $initialSignupStatus); $userReq = $this->getElementValue('comment'); if (!empty($userReq)) { $userReq = 'User requirement: ' . $userReq; } Events::appendSignupComment($this->getElementValue('user'), $this->getElementValue('event'), 'User self signup. ' . $userReq); }
case 'PAID': $authenticatedMachines = getAuthenticatedMachines($user->getId(), $event['id']); $sql = 'SELECT s.numberMachinesAllowed FROM signups s WHERE s.user = :user AND s.event = :event'; $stmt = DatabaseFactory::getInstance()->prepare($sql); $stmt->bindValue(':user', $user->getId()); $stmt->bindValue(':event', $event['id']); $stmt->execute(); $signup = $stmt->fetchRowNotNull(); if (count($authenticatedMachines) >= $signup['numberMachinesAllowed']) { apiReturn('reject-overuse'); } else { $sql = 'INSERT INTO authenticated_machines (user, event, seat, ip, hostname, mac) VALUES (:user, :event, :seat, :ip, :hostname, :mac)'; $stmt = DatabaseFactory::getInstance()->prepare($sql); $stmt->bindValue(':user', $user->getId()); $stmt->bindValue(':event', $event['id']); $stmt->bindValue(':seat', $sanitizer->filterString('seat')); $stmt->bindValue(':ip', $sanitizer->filterString('ip')); $stmt->bindValue(':hostname', $sanitizer->filterString('hostname')); $stmt->bindValue(':mac', $sanitizer->filterString('mac')); $stmt->execute(); Events::setSignupStatus($user->getId(), $event['id'], 'ATTENDED'); Events::appendSignupComment($user->getId(), $event['id'], 'Authenticated machine: ' . $sanitizer->filterString('mac')); apiReturn('allow'); } case 'STAFF': apiReturn('allow-full'); case 'SIGNEDUP': apiReturn('reject-payment'); default: apiReturn('fatal', 'Unrecognised signup status: ' . $signupStatus); }