summaryrefslogtreecommitdiff
path: root/app/Helper/CalendarHelper.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Helper/CalendarHelper.php')
-rw-r--r--app/Helper/CalendarHelper.php126
1 files changed, 0 insertions, 126 deletions
diff --git a/app/Helper/CalendarHelper.php b/app/Helper/CalendarHelper.php
deleted file mode 100644
index 0942177d..00000000
--- a/app/Helper/CalendarHelper.php
+++ /dev/null
@@ -1,126 +0,0 @@
-<?php
-
-namespace Kanboard\Helper;
-
-use Kanboard\Core\Base;
-use Kanboard\Core\Filter\QueryBuilder;
-use Kanboard\Filter\TaskDueDateRangeFilter;
-
-/**
- * Calendar Helper
- *
- * @package helper
- * @author Frederic Guillot
- */
-class CalendarHelper extends Base
-{
- /**
- * Render calendar component
- *
- * @param string $checkUrl
- * @param string $saveUrl
- * @return string
- */
- public function render($checkUrl, $saveUrl)
- {
- $params = array(
- 'checkUrl' => $checkUrl,
- 'saveUrl' => $saveUrl,
- );
-
- return '<div class="js-calendar" data-params=\''.json_encode($params, JSON_HEX_APOS).'\'></div>';
- }
-
- /**
- * Get formatted calendar task due events
- *
- * @access public
- * @param QueryBuilder $queryBuilder
- * @param string $start
- * @param string $end
- * @return array
- */
- public function getTaskDateDueEvents(QueryBuilder $queryBuilder, $start, $end)
- {
- $formatter = $this->taskCalendarFormatter;
- $formatter->setFullDay();
- $formatter->setColumns('date_due');
-
- return $queryBuilder
- ->withFilter(new TaskDueDateRangeFilter(array($start, $end)))
- ->format($formatter);
- }
-
- /**
- * Get formatted calendar task events
- *
- * @access public
- * @param QueryBuilder $queryBuilder
- * @param string $start
- * @param string $end
- * @return array
- */
- public function getTaskEvents(QueryBuilder $queryBuilder, $start, $end)
- {
- $startColumn = $this->configModel->get('calendar_project_tasks', 'date_started');
-
- $queryBuilder->getQuery()->addCondition($this->getCalendarCondition(
- $this->dateParser->getTimestampFromIsoFormat($start),
- $this->dateParser->getTimestampFromIsoFormat($end),
- $startColumn,
- 'date_due'
- ));
-
- $formatter = $this->taskCalendarFormatter;
- $formatter->setColumns($startColumn, 'date_due');
-
- return $queryBuilder->format($formatter);
- }
-
- /**
- * Get formatted calendar subtask time tracking events
- *
- * @access public
- * @param integer $user_id
- * @param string $start
- * @param string $end
- * @return array
- */
- public function getSubtaskTimeTrackingEvents($user_id, $start, $end)
- {
- return $this->subtaskTimeTrackingCalendarFormatter
- ->withQuery($this->subtaskTimeTrackingModel->getUserQuery($user_id)
- ->addCondition($this->getCalendarCondition(
- $this->dateParser->getTimestampFromIsoFormat($start),
- $this->dateParser->getTimestampFromIsoFormat($end),
- 'start',
- 'end'
- ))
- )
- ->format();
- }
-
- /**
- * Build SQL condition for a given time range
- *
- * @access public
- * @param string $start_time Start timestamp
- * @param string $end_time End timestamp
- * @param string $start_column Start column name
- * @param string $end_column End column name
- * @return string
- */
- public function getCalendarCondition($start_time, $end_time, $start_column, $end_column)
- {
- $start_column = $this->db->escapeIdentifier($start_column);
- $end_column = $this->db->escapeIdentifier($end_column);
-
- $conditions = array(
- "($start_column >= '$start_time' AND $start_column <= '$end_time')",
- "($start_column <= '$start_time' AND $end_column >= '$start_time')",
- "($start_column <= '$start_time' AND ($end_column = '0' OR $end_column IS NULL))",
- );
-
- return $start_column.' IS NOT NULL AND '.$start_column.' > 0 AND ('.implode(' OR ', $conditions).')';
- }
-}