Example #1
0
 public function loadEvents()
 {
     if ($this->components === array()) {
         $diary = @fopen($this->getFile(), 'r');
         $headers = null;
         if ($diary === false) {
             $error = error_get_last();
             throw new Exception("Cannot find event file: " . $error['message']);
         }
         $this->log->info('Parsing diary CSV');
         while (false !== ($row = fgetcsv($diary))) {
             if ($headers === null) {
                 $headers = $row;
             } else {
                 $row = array_combine($headers, $row);
                 $event = new Event();
                 $event->setDtStart(new \DateTime($row[$this->headers['date']]));
                 $event->setDtEnd(new \DateTime($row[$this->headers['date']]));
                 $event->setNoTime(true);
                 $event->setSummary($row[$this->headers['summary']]);
                 $event->setDescription($this->getEventDescription($row));
                 $event->setUrl($row[$this->headers['url']]);
                 $this->addEvent($event);
             }
         }
         $this->log->info('Parsing complete');
     }
 }