Example #1
0
 /**
  * Get project iCalendar
  *
  * @access public
  */
 public function project()
 {
     $token = $this->request->getStringParam('token');
     $project = $this->project->getByToken($token);
     // Token verification
     if (empty($project)) {
         $this->forbidden(true);
     }
     // Common filter
     $filter = $this->taskFilter->create()->filterByProject($project['id']);
     // Calendar properties
     $calendar = new iCalendar('Kanboard');
     $calendar->setName($project['name']);
     $calendar->setDescription($project['name']);
     $calendar->setPublishedTTL('PT1H');
     $this->renderCalendar($filter, $calendar);
 }
Example #2
0
 /**
  * Get project iCalendar
  *
  * @access public
  */
 public function project()
 {
     $token = $this->request->getStringParam('token');
     $project = $this->project->getByToken($token);
     // Token verification
     if (empty($project)) {
         throw AccessForbiddenException::getInstance()->withoutLayout();
     }
     // Common filter
     $queryBuilder = new QueryBuilder();
     $queryBuilder->withQuery($this->taskFinder->getICalQuery())->withFilter(new TaskStatusFilter(TaskModel::STATUS_OPEN))->withFilter(new TaskProjectFilter($project['id']));
     // Calendar properties
     $calendar = new iCalendar('Kanboard');
     $calendar->setName($project['name']);
     $calendar->setDescription($project['name']);
     $calendar->setPublishedTTL('PT1H');
     $this->renderCalendar($queryBuilder, $calendar);
 }