Add burndown chart

This commit is contained in:
Frederic Guillot
2015-04-11 23:01:17 -04:00
parent 7df055aff1
commit 9ca2ba2127
32 changed files with 351 additions and 26 deletions

View File

@@ -125,4 +125,46 @@ class Analytic extends Base
)));
}
}
/**
* Show burndown chart
*
* @access public
*/
public function burndown()
{
$project = $this->getProject();
$values = $this->request->getValues();
$from = $this->request->getStringParam('from', date('Y-m-d', strtotime('-1week')));
$to = $this->request->getStringParam('to', date('Y-m-d'));
if (! empty($values)) {
$from = $values['from'];
$to = $values['to'];
}
if ($this->request->isAjax()) {
$this->response->json(array(
'metrics' => $this->projectDailySummary->getRawMetricsByDay($project['id'], $from, $to),
'labels' => array(
'day' => t('Date'),
'score' => t('Complexity'),
)
));
}
else {
$this->response->html($this->layout('analytic/burndown', array(
'values' => array(
'from' => $from,
'to' => $to,
),
'display_graph' => $this->projectDailySummary->countDays($project['id'], $from, $to) >= 2,
'project' => $project,
'date_format' => $this->config->get('application_date_format'),
'date_formats' => $this->dateParser->getAvailableFormats(),
'title' => t('Burndown chart for "%s"', $project['name']),
)));
}
}
}