| | <?php |
| |
|
| | namespace Kanboard\Controller; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class ExportController extends BaseController |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | private function common($model, $method, $filename, $action, $page_title) |
| | { |
| | $project = $this->getProject(); |
| |
|
| | if ($this->request->isPost()) { |
| | $from = $this->request->getRawValue('from'); |
| | $to = $this->request->getRawValue('to'); |
| |
|
| | if ($from && $to) { |
| | $data = $this->$model->$method($project['id'], $from, $to); |
| | $this->response->withFileDownload($filename.'.csv'); |
| | $this->response->csv($data); |
| | } |
| | } else { |
| | $this->response->html($this->template->render('export/'.$action, array( |
| | 'values' => array( |
| | 'project_id' => $project['id'], |
| | 'from' => '', |
| | 'to' => '', |
| | ), |
| | 'errors' => array(), |
| | 'project' => $project, |
| | 'title' => $page_title, |
| | ))); |
| | } |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | public function tasks() |
| | { |
| | $this->common('taskExport', 'export', t('Tasks'), 'tasks', t('Tasks Export')); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | public function subtasks() |
| | { |
| | $this->common('subtaskExport', 'export', t('Subtasks'), 'subtasks', t('Subtasks Export')); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | public function summary() |
| | { |
| | $project = $this->getProject(); |
| |
|
| | if ($this->request->isPost()) { |
| | $from = $this->request->getRawValue('from'); |
| | $to = $this->request->getRawValue('to'); |
| |
|
| | if ($from && $to) { |
| | $from = $this->dateParser->getIsoDate($from); |
| | $to = $this->dateParser->getIsoDate($to); |
| | $data = $this->projectDailyColumnStatsModel->getAggregatedMetrics($project['id'], $from, $to); |
| | $this->response->withFileDownload(t('Summary').'.csv'); |
| | $this->response->csv($data); |
| | } |
| | } else { |
| | $this->response->html($this->template->render('export/summary', array( |
| | 'values' => array( |
| | 'project_id' => $project['id'], |
| | 'from' => '', |
| | 'to' => '', |
| | ), |
| | 'errors' => array(), |
| | 'project' => $project, |
| | 'title' => t('Daily project summary export'), |
| | ))); |
| | } |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | public function transitions() |
| | { |
| | $this->common('transitionExport', 'export', t('Transitions'), 'transitions', t('Task transitions export')); |
| | } |
| | } |
| |
|