/** * The file contents is looked at and events are created here. * @param string $fileContents * @return integer The number of events saved. */ public function setEventsFromICal($fullDir, $fullFileName, $personId) { //start parse of local file $v = new vcalendar(); // set directory $v->setConfig('directory', $fullDir); // set file name $v->setConfig('filename', $fullFileName); $v->parse(); $count = 0; foreach ($v->components as $component => $info) { # get first vevent $comp = $v->getComponent("VEVENT"); $summary_array = $comp->getProperty("summary", 1, TRUE); //echo "Event: ", $summary_array["value"], "\n"; $dtstart_array = $comp->getProperty("dtstart", 1, TRUE); $dtstart = $dtstart_array["value"]; $startDate = "{$dtstart["year"]}-{$dtstart["month"]}-{$dtstart["day"]}"; $startTime = "{$dtstart["hour"]}:{$dtstart["min"]}:{$dtstart["sec"]}"; $dtend_array = $comp->getProperty("dtend", 1, TRUE); $dtend = $dtend_array["value"]; $endDate = "{$dtend["year"]}-{$dtend["month"]}-{$dtend["day"]}"; $endTime = "{$dtend["hour"]}:{$dtend["min"]}:{$dtend["sec"]}"; //echo "start: ", $startDate,"T",$startTime, "\n"; //echo "end: ", $endDate,"T",$endTime, "\n"; $location_array = $comp->getProperty("location", 1, TRUE); //echo "Location: ", $location_array["value"], "\n <br>"; //TODO: Check that this event does not already exist. $event = new Event(); $event->setPersonId($personId); $event->setName($summary_array["value"]); $event->setStartTime($startDate . "T" . $startTime); $event->setEndTime($endDate . "T" . $endTime); $event->setLocation($location_array["value"]); $event->save(); $count++; } return $count; }
$event->setRules($app->request()->put('rules')); $event->setStartDate($app->request()->put('start_date')); $event->setEndDate($app->request()->put('end_date')); $event->setStartTime($app->request()->put('start_time')); $event->setEndTime($app->request()->put('end_time')); $event->setGroupSize($app->request()->put('group_size')); $event->setLogo($app->request()->put('logo')); # --Getting the put vars and typecasting to int. Blehhh. Can't help, its PHP xD $feeHome = $app->request()->put('fee_home'); settype($feeHome, "integer"); $feeRemote = $app->request()->put('fee_remote'); settype($feeRemote, "integer"); #-- $event->setFeeHome($feeHome); $event->setFeeRemote($feeRemote); $event->setLocation($app->request()->put('location')); $event->setEventHeadName($app->request()->put('event_head_name')); $event->setEventHeadContact($app->request()->put('event_head_contact')); $event->setAward($app->request()->put('award')); $event->setEquipmentProvided($app->request()->put('equipments_provided')); if ($eventMapper->updateEvent($event)) { $status = 200; $response["code"] = $status; $response["message"] = "Event {$event->getId()} updated successfully."; } else { $status = 200; $response["code"] = $status; $response["message"] = "Some error occured while updating event {$event->getId()}."; } print json_encode($response); });
return [$event->getId(), $event->getStartdate(), $event->getEnddate(), $event->getUsers(), $event->getLocation(), $event->getDescription(), $event->getName(), $event->getHosts(), $event->getTags()]; } $app->get('/events', function () use($app, $em) { $events = $em->getRepository('Event')->findAll(); $encoded = []; foreach ($events as $event) { $encoded[] = json_encode_event($event); } return new JsonResponse($encoded); }); $app->post('/events/add', function (Request $request) use($app, $em) { $event = new Event(); $event->setStartdate($request->get('startdate', null)); $event->setEnddate($request->get('enddate', null)); $event->setUsers($request->get('users', [])); $event->setLocation($request->get('location', '')); $event->setDescription($request->get('description', '')); $event->setName($request->get('name', null)); $event->setHosts($request->get('hosts', [])); $event->setTags($request->get('tags', [])); if ($event->getName() === null) { return new JsonResponse(['error' => 'No name set'], 500); } $em->persist($event); $em->flush(); return new JsonResponse(['success' => 'Event stored']); }); //$app->get('/events/get/{id}', function ($id) use ($app, $em) { // // $event = $em->getRepository('Event')->find($id); // return new JsonResponse(json_encode_event($event));
unset($_SESSION['token']); } if (isset($_GET['code'])) { $client->authenticate(); $_SESSION['token'] = $client->getAccessToken(); header('Location: http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']); } if (isset($_SESSION['token'])) { $client->setAccessToken($_SESSION['token']); } if ($client->getAccessToken()) { $start_date_reference = array("Monday" => 13, "Tuesday" => 14, "Wednesday" => 15, "Thursday" => 16, "Friday" => 17, "Saturday" => 18, "Sunday" => 19); foreach ($_SESSION['modules'] as $module) { $event = new Event(); $event->setSummary($module['module_code'] . " " . $module['ltype']); $event->setLocation($module['venue']); $start = new EventDateTime(); $start_string = '2012-08-' . $start_date_reference[$module['day_text']] . 'T' . $module['startTime'][0] . $module['startTime'][1] . ':' . $module['startTime'][2] . $module['startTime'][3] . ':00.000+08:00'; $start->setDateTime($start_string); $start->setTimeZone('Asia/Singapore'); $event->setStart($start); $end = new EventDateTime(); $end_string = '2012-08-' . $start_date_reference[$module['day_text']] . 'T' . $module['endTime'][0] . $module['endTime'][1] . ':' . $module['endTime'][2] . $module['endTime'][3] . ':00.000+08:00'; $end->setDateTime($end_string); $end->setTimeZone('Asia/Singapore'); $event->setEnd($end); $event->setRecurrence(array('RRULE:FREQ=WEEKLY;UNTIL=20121117T000000Z;')); $createdEvent = $cal->events->insert('primary', $event); } unset($_SESSION['module']); unset($_SESSION['lessons_counter']);
} if (empty($title) || empty($start_day) || empty($end_ts)) { register_error(elgg_echo("event_manager:action:event:edit:error_fields")); forward(REFERER); } $newEvent = false; if (!isset($event)) { $newEvent = true; $event = new Event(); } $event->title = $title; $event->description = $description; $event->container_guid = $container_guid; $event->access_id = $access_id; $event->save(); $event->setLocation($location); $event->setLatLong($latitude, $longitude); $event->tags = $tags; if ($newEvent) { // add event create river event elgg_create_river_item(array('view' => 'river/object/event/create', 'action_type' => 'create', 'subject_guid' => elgg_get_logged_in_user_guid(), 'object_guid' => $event->getGUID())); // add optional organizer relationship if ($organizer_rsvp) { $event->rsvp(EVENT_MANAGER_RELATION_ORGANIZING, null, true, false); } } $event->shortdescription = $shortdescription; $event->comments_on = $comments_on; $event->registration_ended = $registration_ended; $event->registration_needed = $registration_needed; $event->show_attendees = $show_attendees;
} // In case of multiple authors who can proofread, amend: don't update unless empty. if (!$event->userId()) { $event->setUserId($user->id()); } list($date, $time) = explode(" ", $_POST['start']); list($day, $month, $year) = explode("-", $date); $start = "{$year}-{$month}-{$day} {$time}"; $event->setStart($start); list($date, $time) = explode(" ", $_POST['end']); list($day, $month, $year) = explode("-", $date); $end = "{$year}-{$month}-{$day} {$time}"; $event->setEnd($end); $event->setTitle($_POST['title']); $event->setDescription($_POST['description']); $event->setLocation($_POST['location']); $event->setFeatured(isset($_POST['featured']) && $_POST['featured'] == 'on' ? 1 : 0); $event->setVisible(isset($_POST['visible']) && $_POST['visible'] == 'on' ? 1 : 0); $event->setHashtags(isset($_POST['hashtags']) ? $_POST['hashtags'] : null); $event->setAlbumId(isset($_POST['albumId']) ? $_POST['albumId'] : null); if (!$event->title()) { $errors[] = "Je kunt geen event zonder titel opslaan!"; } Log::debug($errors); if (!sizeof($errors)) { // Save event prior to publishing to create cname. $event->save(); // Publish event. if (isset($_POST['connections'])) { foreach ($_POST['connections'] as $id => $value) { if ($value != 'on') {
$endregistration_day = mktime(0, 0, 1, $date_endregistration_day[1], $date_endregistration_day[2], $date_endregistration_day[0]); } $entity = get_entity(get_input('guid')); $event_created = false; if ($entity instanceof \Event) { $event = $entity; } else { $event_created = true; $event = new \Event(); } $event->title = $title; $event->description = get_input('description'); $event->container_guid = (int) get_input('container_guid'); $event->access_id = $access_id; $event->save(); $event->setLocation(get_input('location')); $event->setLatLong(get_input('latitude'), get_input('longitude')); $event->tags = string_to_tag_array(get_input('tags')); if ($event_created) { elgg_create_river_item(['view' => 'river/object/event/create', 'action_type' => 'create', 'subject_guid' => elgg_get_logged_in_user_guid(), 'object_guid' => $event->getGUID()]); } $event->setMaxAttendees(get_input('max_attendees')); $event->setRegion(get_input('region')); $event->setEventType(get_input('event_type')); $event->event_start = $event_start; $event->event_end = $event_end; $event->with_program = get_input('with_program'); $event->endregistration_day = $endregistration_day; $event->event_interested = 1; $metadata_fields = ['shortdescription', 'comments_on', 'registration_ended', 'registration_needed', 'show_attendees', 'notify_onsignup', 'waiting_list', 'venue', 'contact_details', 'website', 'organizer', 'fee', 'fee_details', 'register_nologin', 'waiting_list_enabled', 'registration_completed', 'organizer_guids', 'contact_guids']; foreach ($metadata_fields as $field) {