/** * Create an event * @return void */ private function createEvent() { // if post data is set, we are creating an event if (isset($_POST) && count($_POST) > 0) { require_once FRAMEWORK_PATH . 'models/event.php'; $event = new Event($this->registry, 0); $event->setName($this->registry->getObject('db')->sanitizeData($_POST['name'])); $event->setDescription($this->registry->getObject('db')->sanitizeData($_POST['description'])); $event->setDate($this->registry->getObject('db')->sanitizeData($_POST['date']), false); $event->setStartTime($this->registry->getObject('db')->sanitizeData($_POST['start_time'])); $event->setEndTime($this->registry->getObject('db')->sanitizeData($_POST['end_time'])); $event->setCreator($this->registry->getObject('authenticate')->getUser()->getID()); $event->setType($this->registry->getObject('db')->sanitizeData($_POST['type'])); if (isset($_POST['invitees']) && is_array($_POST['invitees']) && count($_POST['invitees']) > 0) { // assumes invitees are added to a table using javascript, with a hidden field with name invitees[] for the ID of invitee $is = array(); foreach ($_POST['invitees'] as $i) { $is[] = intval($i); } $event->setInvitees($is); } $event->save(); $this->registry->redirectUser($this->registry->buildURL(array('event', 'view', $event->getID()), '', false), 'Event created', 'Thanks, the event has been created', false); } else { $this->registry->getObject('template')->buildFromTemplates('header.tpl.php', 'events/create.tpl.php', 'footer.tpl.php'); } }