summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2016-01-31 20:14:51 -0500
committerFrederic Guillot <fred@kanboard.net>2016-01-31 20:14:51 -0500
commit271543431e999032d6e91197633119309fa6c622 (patch)
tree93c84f80092b6b463dcb643ee6bd0302c18fdf47 /app
parent0bc51620c731e7cfd10db5e064fc04693205b21c (diff)
Make project creation form a inline popup
Diffstat (limited to 'app')
-rw-r--r--app/Controller/Base.php3
-rw-r--r--app/Controller/ProjectCreation.php3
-rw-r--r--app/Core/Helper.php1
-rw-r--r--app/Helper/Layout.php32
-rw-r--r--app/Template/app/layout.php4
-rw-r--r--app/Template/header.php4
-rw-r--r--app/Template/project_creation/create.php4
7 files changed, 40 insertions, 11 deletions
diff --git a/app/Controller/Base.php b/app/Controller/Base.php
index 02d87aae..0939f44c 100644
--- a/app/Controller/Base.php
+++ b/app/Controller/Base.php
@@ -189,10 +189,9 @@ abstract class Base extends \Kanboard\Core\Base
*/
protected function taskLayout($template, array $params)
{
- $params['ajax'] = $this->request->isAjax();
$content = $this->template->render($template, $params);
- if ($params['ajax']) {
+ if ($this->request->isAjax()) {
return $content;
}
diff --git a/app/Controller/ProjectCreation.php b/app/Controller/ProjectCreation.php
index a3154034..61ea2586 100644
--- a/app/Controller/ProjectCreation.php
+++ b/app/Controller/ProjectCreation.php
@@ -20,8 +20,7 @@ class ProjectCreation extends Base
$is_private = isset($values['is_private']) && $values['is_private'] == 1;
$projects_list = array(0 => t('Do not duplicate anything')) + $this->projectUserRole->getActiveProjectsByUser($this->userSession->getId());
- $this->response->html($this->template->layout('project_creation/create', array(
- 'board_selector' => $this->projectUserRole->getActiveProjectsByUser($this->userSession->getId()),
+ $this->response->html($this->helper->layout->app('project_creation/create', array(
'values' => $values,
'errors' => $errors,
'is_private' => $is_private,
diff --git a/app/Core/Helper.php b/app/Core/Helper.php
index 5edaa3f0..bf71769f 100644
--- a/app/Core/Helper.php
+++ b/app/Core/Helper.php
@@ -20,6 +20,7 @@ use Pimple\Container;
* @property \Helper\Text $text
* @property \Helper\Url $url
* @property \Helper\User $user
+ * @property \Helper\Layout $layout
*/
class Helper
{
diff --git a/app/Helper/Layout.php b/app/Helper/Layout.php
new file mode 100644
index 00000000..685c7b84
--- /dev/null
+++ b/app/Helper/Layout.php
@@ -0,0 +1,32 @@
+<?php
+
+namespace Kanboard\Helper;
+
+use Kanboard\Core\Base;
+
+/**
+ * Layout helpers
+ *
+ * @package helper
+ * @author Frederic Guillot
+ */
+class Layout extends Base
+{
+ /**
+ * Render a template without the layout if Ajax request
+ *
+ * @access public
+ * @param string $template Template name
+ * @param array $params Template parameters
+ * @return string
+ */
+ public function app($template, array $params = array())
+ {
+ if ($this->request->isAjax()) {
+ return $this->template->render($template, $params);
+ }
+
+ $params['board_selector'] = $this->projectUserRole->getActiveProjectsByUser($this->userSession->getId());
+ return $this->template->layout($template, $params);
+ }
+}
diff --git a/app/Template/app/layout.php b/app/Template/app/layout.php
index 8a745327..d54b1da7 100644
--- a/app/Template/app/layout.php
+++ b/app/Template/app/layout.php
@@ -4,12 +4,12 @@
<?php if ($this->user->hasAccess('ProjectCreation', 'create')): ?>
<li>
<i class="fa fa-plus fa-fw"></i>
- <?= $this->url->link(t('New project'), 'ProjectCreation', 'create') ?>
+ <?= $this->url->link(t('New project'), 'ProjectCreation', 'create', array(), false, 'popover') ?>
</li>
<?php endif ?>
<li>
<i class="fa fa-lock fa-fw"></i>
- <?= $this->url->link(t('New private project'), 'ProjectCreation', 'createPrivate') ?>
+ <?= $this->url->link(t('New private project'), 'ProjectCreation', 'createPrivate', array(), false, 'popover') ?>
</li>
<li>
<i class="fa fa-search fa-fw"></i>
diff --git a/app/Template/header.php b/app/Template/header.php
index 36db54d5..fd9ff24d 100644
--- a/app/Template/header.php
+++ b/app/Template/header.php
@@ -42,10 +42,10 @@
<a href="#" class="dropdown-menu dropdown-menu-link-icon"><i class="fa fa-plus fa-fw"></i><i class="fa fa-caret-down"></i></a>
<ul>
<?php if ($this->user->hasAccess('ProjectCreation', 'create')): ?>
- <li><i class="fa fa-plus fa-fw"></i><?= $this->url->link(t('New project'), 'ProjectCreation', 'create') ?></li>
+ <li><i class="fa fa-plus fa-fw"></i><?= $this->url->link(t('New project'), 'ProjectCreation', 'create', array(), false, 'popover') ?></li>
<?php endif ?>
<li>
- <i class="fa fa-lock fa-fw"></i><?= $this->url->link(t('New private project'), 'ProjectCreation', 'createPrivate') ?>
+ <i class="fa fa-lock fa-fw"></i><?= $this->url->link(t('New private project'), 'ProjectCreation', 'createPrivate', array(), false, 'popover') ?>
</li>
</ul>
</div>
diff --git a/app/Template/project_creation/create.php b/app/Template/project_creation/create.php
index 6caa36af..387f0ff4 100644
--- a/app/Template/project_creation/create.php
+++ b/app/Template/project_creation/create.php
@@ -1,8 +1,6 @@
<section id="main">
<div class="page-header">
- <ul>
- <li><i class="fa fa-folder fa-fw"></i><?= $this->url->link(t('All projects'), 'project', 'index') ?></li>
- </ul>
+ <h2><?= $title ?></h2>
</div>
<form class="form-popover" id="project-creation-form" method="post" action="<?= $this->url->href('ProjectCreation', 'save') ?>" autocomplete="off">