diff --git a/ChangeLog b/ChangeLog index 15ec0979e..bd14aaf4a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -11,6 +11,7 @@ Improvements: * Open task import in modal box * Open form to create customer filters in modal box * Open project activities in modal box +* Display project analytics in modal box Version 1.0.36 (Dec 30, 2016) ----------------------------- diff --git a/app/Controller/ActivityController.php b/app/Controller/ActivityController.php index edf0fbb41..476e4aac2 100644 --- a/app/Controller/ActivityController.php +++ b/app/Controller/ActivityController.php @@ -19,9 +19,10 @@ class ActivityController extends BaseController { $project = $this->getProject(); - $this->response->html($this->template->render('activity/project', array( + $this->response->html($this->helper->layout->app('activity/project', array( 'events' => $this->helper->projectActivity->getProjectEvents($project['id']), 'project' => $project, + 'title' => t('%s\'s activity', $project['name']) ))); } diff --git a/app/Core/Paginator.php b/app/Core/Paginator.php index 046c539c9..9075a7131 100644 --- a/app/Core/Paginator.php +++ b/app/Core/Paginator.php @@ -374,7 +374,9 @@ class Paginator '← '.t('Previous'), $this->controller, $this->action, - $this->getUrlParams($this->page - 1, $this->order, $this->direction) + $this->getUrlParams($this->page - 1, $this->order, $this->direction), + false, + 'js-modal-replace' ); } else { $html .= '← '.t('Previous'); @@ -400,7 +402,9 @@ class Paginator t('Next').' →', $this->controller, $this->action, - $this->getUrlParams($this->page + 1, $this->order, $this->direction) + $this->getUrlParams($this->page + 1, $this->order, $this->direction), + false, + 'js-modal-replace' ); } else { $html .= t('Next').' →'; @@ -486,7 +490,9 @@ class Paginator $label, $this->controller, $this->action, - $this->getUrlParams($this->page, $column, $direction) + $this->getUrlParams($this->page, $column, $direction), + false, + 'js-modal-replace' ); } } diff --git a/app/Helper/LayoutHelper.php b/app/Helper/LayoutHelper.php index 8d2e7e001..8be717573 100644 --- a/app/Helper/LayoutHelper.php +++ b/app/Helper/LayoutHelper.php @@ -22,7 +22,10 @@ class LayoutHelper extends Base */ public function app($template, array $params = array()) { - if ($this->request->isAjax()) { + $isAjax = $this->request->isAjax(); + $params['is_ajax'] = $isAjax; + + if ($isAjax) { return $this->template->render($template, $params); } @@ -160,7 +163,7 @@ class LayoutHelper extends Base $params['title'] = $params['project']['name'].' > '.$params['title']; } - return $this->subLayout('analytic/layout', 'analytic/sidebar', $template, $params); + return $this->subLayout('analytic/layout', 'analytic/sidebar', $template, $params, true); } /** @@ -188,13 +191,16 @@ class LayoutHelper extends Base * @param string $sidebar * @param string $template * @param array $params + * @param bool $ignoreAjax * @return string */ - public function subLayout($sublayout, $sidebar, $template, array $params = array()) + public function subLayout($sublayout, $sidebar, $template, array $params = array(), $ignoreAjax = false) { + $isAjax = $this->request->isAjax(); + $params['is_ajax'] = $isAjax; $content = $this->template->render($template, $params); - if ($this->request->isAjax()) { + if (!$ignoreAjax && $isAjax) { return $content; } diff --git a/app/Helper/ModalHelper.php b/app/Helper/ModalHelper.php index b3241b9df..efbe2c4d0 100644 --- a/app/Helper/ModalHelper.php +++ b/app/Helper/ModalHelper.php @@ -75,4 +75,9 @@ class ModalHelper extends Base { return $this->helper->url->link($label, $controller, $action, $params, false, 'js-modal-confirm'); } + + public function replaceLink($label, $controller, $action, array $params = array()) + { + return $this->helper->url->link($label, $controller, $action, $params, false, 'js-modal-replace'); + } } diff --git a/app/Template/analytic/avg_time_columns.php b/app/Template/analytic/avg_time_columns.php index 929331a96..1af69c8b9 100644 --- a/app/Template/analytic/avg_time_columns.php +++ b/app/Template/analytic/avg_time_columns.php @@ -1,6 +1,8 @@ - + + +

@@ -11,16 +13,16 @@ )) ?> - - - - - - - - - - + + + + + + + + + +
text->e($column['title']) ?>dt->duration($column['average']) ?>
text->e($column['title']) ?>dt->duration($column['average']) ?>

diff --git a/app/Template/analytic/burndown.php b/app/Template/analytic/burndown.php index 674c76dd5..d62c9ba05 100644 --- a/app/Template/analytic/burndown.php +++ b/app/Template/analytic/burndown.php @@ -1,6 +1,8 @@ -

+ + +

@@ -15,20 +17,10 @@
- form->csrf() ?> - -
- form->date(t('Start date'), 'from', $values) ?> -
- -
- form->date(t('End date'), 'to', $values) ?> -
- -
- -
+ form->date(t('Start date'), 'from', $values) ?> + form->date(t('End date'), 'to', $values) ?> + modal->submitButtons(array('submitLabel' => t('Execute'))) ?>

diff --git a/app/Template/analytic/cfd.php b/app/Template/analytic/cfd.php index 5eb42e828..dcd7b58f1 100644 --- a/app/Template/analytic/cfd.php +++ b/app/Template/analytic/cfd.php @@ -1,6 +1,8 @@ - + + +

@@ -14,18 +16,8 @@
- form->csrf() ?> - -
- form->date(t('Start date'), 'from', $values) ?> -
- -
- form->date(t('End date'), 'to', $values) ?> -
- -
- -
+ form->date(t('Start date'), 'from', $values) ?> + form->date(t('End date'), 'to', $values) ?> + modal->submitButtons(array('submitLabel' => t('Execute'))) ?>
diff --git a/app/Template/analytic/layout.php b/app/Template/analytic/layout.php index e3c6099f4..7159094cb 100644 --- a/app/Template/analytic/layout.php +++ b/app/Template/analytic/layout.php @@ -1,10 +1,14 @@ -
+ + + projectHeader->render($project, 'TaskListController', 'show') ?> - diff --git a/app/Template/analytic/lead_cycle_time.php b/app/Template/analytic/lead_cycle_time.php index 8884a4419..780b47b64 100644 --- a/app/Template/analytic/lead_cycle_time.php +++ b/app/Template/analytic/lead_cycle_time.php @@ -1,6 +1,8 @@ - + + +