Example #1
0
 public static function fromArray($input)
 {
     $event = null;
     if (array_key_exists('id', $input)) {
         try {
             // get event by id
             $event = new Event($input['id']);
         } catch (fExpectedException $e) {
         }
     }
     if ($event == null) {
         $event = new Event();
         $event->generateSecret();
         $event->setHidden(1);
     }
     // These are marked as required
     $event->setTitle(get($input['title'], 'Title missing'));
     $event->setLocname(get($input['venue'], 'Venue missing'));
     $event->setAddress(get($input['address'], 'Address missing'));
     $event->setName(get($input['organizer'], 'Organizer missing'));
     $event->setEmail(get($input['email'], 'Email missing'));
     // These are optional
     $event->setHideemail(get($input['hideemail'], 0));
     $event->setPhone(get($input['phone'], ''));
     $event->setHidephone(get($input['hidephone'], 0));
     $event->setContact(get($input['contact'], ''));
     $event->setHidecontact(get($input['hidecontact'], 0));
     $event->setDescr(get($input['details'], ''));
     $event->setEventtime(get($input['time'], ''));
     $event->setHighlight(0);
     $event->setTimedetails(get($input['timedetails'], ''));
     $event->setLocdetails(get($input['locdetails'], ''));
     $event->setEventduration(get($input['eventduration'], 0));
     $event->setWeburl(get($input['weburl'], ''));
     $event->setWebname(get($input['webname'], ''));
     $event->setAudience(get($input['audience'], ''));
     $event->setTinytitle(get($input['tinytitle'], ''));
     $event->setPrintdescr(get($input['printdescr'], ''));
     $event->setDates(get($input['datestring'], ''));
     // string field 'dates' needed for legacy admin calendar
     $event->setDatestype(get($input['datestype'], 'O'));
     $event->setArea(get($input['area'], 'P'));
     // default to 'P'ortland
     //$event->setPrintcontact(get($input['printcontact'], ''));
     // Length
     return $event;
 }