summaryrefslogtreecommitdiff
path: root/app/Template/project
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2016-05-25 22:28:09 -0400
committerFrederic Guillot <fred@kanboard.net>2016-05-25 22:28:09 -0400
commitff892c5d25e0bab560f005c788189d38c2bcab7b (patch)
tree72edfcffd52db61f9a7632f860b6d914445593ab /app/Template/project
parent872dc79dbd8b04424520e32675a6e0dcb6ed44bc (diff)
Split project controller into multiple classes
Diffstat (limited to 'app/Template/project')
-rw-r--r--app/Template/project/disable.php14
-rw-r--r--app/Template/project/dropdown.php2
-rw-r--r--app/Template/project/duplicate.php28
-rw-r--r--app/Template/project/enable.php14
-rw-r--r--app/Template/project/index.php85
-rw-r--r--app/Template/project/integrations.php15
-rw-r--r--app/Template/project/notifications.php20
-rw-r--r--app/Template/project/remove.php14
-rw-r--r--app/Template/project/share.php19
-rw-r--r--app/Template/project/show.php85
-rw-r--r--app/Template/project/sidebar.php34
11 files changed, 18 insertions, 312 deletions
diff --git a/app/Template/project/disable.php b/app/Template/project/disable.php
deleted file mode 100644
index ddfcdca2..00000000
--- a/app/Template/project/disable.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<div class="page-header">
- <h2><?= t('Project activation') ?></h2>
-</div>
-
-<div class="confirm">
- <p class="alert alert-info">
- <?= t('Do you really want to disable this project: "%s"?', $project['name']) ?>
- </p>
-
- <div class="form-actions">
- <?= $this->url->link(t('Yes'), 'project', 'disable', array('project_id' => $project['id'], 'disable' => 'yes'), true, 'btn btn-red') ?>
- <?= t('or') ?> <?= $this->url->link(t('cancel'), 'project', 'show', array('project_id' => $project['id'])) ?>
- </div>
-</div> \ No newline at end of file
diff --git a/app/Template/project/dropdown.php b/app/Template/project/dropdown.php
index 843574fe..02bc4c02 100644
--- a/app/Template/project/dropdown.php
+++ b/app/Template/project/dropdown.php
@@ -37,7 +37,7 @@
<?php if ($this->user->hasProjectAccess('ProjectEdit', 'edit', $project['id'])): ?>
<li>
<i class="fa fa-cog fa-fw"></i>
- <?= $this->url->link(t('Settings'), 'project', 'show', array('project_id' => $project['id'])) ?>
+ <?= $this->url->link(t('Settings'), 'ProjectViewController', 'show', array('project_id' => $project['id'])) ?>
</li>
<?php endif ?>
</ul>
diff --git a/app/Template/project/duplicate.php b/app/Template/project/duplicate.php
deleted file mode 100644
index e856ec80..00000000
--- a/app/Template/project/duplicate.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<div class="page-header">
- <h2><?= t('Clone this project') ?></h2>
-</div>
-
-<div class="confirm">
- <p class="alert alert-info">
- <?= t('Which parts of the project do you want to duplicate?') ?>
- </p>
- <form method="post" action="<?= $this->url->href('project', 'duplicate', array('project_id' => $project['id'], 'duplicate' => 'yes')) ?>" autocomplete="off">
-
- <?= $this->form->csrf() ?>
-
- <?php if ($project['is_private'] == 0): ?>
- <?= $this->form->checkbox('projectPermission', t('Permissions'), 1, true) ?>
- <?php endif ?>
-
- <?= $this->form->checkbox('category', t('Categories'), 1, true) ?>
- <?= $this->form->checkbox('action', t('Actions'), 1, true) ?>
- <?= $this->form->checkbox('swimlane', t('Swimlanes'), 1, false) ?>
- <?= $this->form->checkbox('task', t('Tasks'), 1, false) ?>
- <?= $this->form->checkbox('projectMetadata', t('Metadata'), 1, false) ?>
-
- <div class="form-actions">
- <button type="submit" class="btn btn-red"><?= t('Duplicate') ?></button>
- <?= t('or') ?> <?= $this->url->link(t('cancel'), 'project', 'show', array('project_id' => $project['id'])) ?>
- </div>
- </form>
-</div> \ No newline at end of file
diff --git a/app/Template/project/enable.php b/app/Template/project/enable.php
deleted file mode 100644
index c10d2f12..00000000
--- a/app/Template/project/enable.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<div class="page-header">
- <h2><?= t('Project activation') ?></h2>
-</div>
-
-<div class="confirm">
- <p class="alert alert-info">
- <?= t('Do you really want to enable this project: "%s"?', $project['name']) ?>
- </p>
-
- <div class="form-actions">
- <?= $this->url->link(t('Yes'), 'project', 'enable', array('project_id' => $project['id'], 'enable' => 'yes'), true, 'btn btn-red') ?>
- <?= t('or') ?> <?= $this->url->link(t('cancel'), 'project', 'show', array('project_id' => $project['id'])) ?>
- </div>
-</div> \ No newline at end of file
diff --git a/app/Template/project/index.php b/app/Template/project/index.php
deleted file mode 100644
index 06e4a626..00000000
--- a/app/Template/project/index.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<section id="main">
- <div class="page-header">
- <ul>
- <?php if ($this->user->hasAccess('projectuser', 'managers')): ?>
- <li><i class="fa fa-user fa-fw"></i><?= $this->url->link(t('Users overview'), 'projectuser', 'managers') ?></li>
- <?php endif ?>
- <?php if ($this->user->hasAccess('gantt', 'projects')): ?>
- <li><i class="fa fa-sliders fa-fw"></i><?= $this->url->link(t('Projects Gantt chart'), 'gantt', 'projects') ?></li>
- <?php endif ?>
- </ul>
- </div>
- <?php if ($paginator->isEmpty()): ?>
- <p class="alert"><?= t('No project') ?></p>
- <?php else: ?>
- <table class="table-stripped table-small">
- <tr>
- <th class="column-3"><?= $paginator->order(t('Id'), 'id') ?></th>
- <th class="column-5"><?= $paginator->order(t('Status'), 'is_active') ?></th>
- <th class="column-15"><?= $paginator->order(t('Project'), 'name') ?></th>
- <th class="column-8"><?= $paginator->order(t('Start date'), 'start_date') ?></th>
- <th class="column-8"><?= $paginator->order(t('End date'), 'end_date') ?></th>
- <th class="column-15"><?= $paginator->order(t('Owner'), 'owner_id') ?></th>
- <?php if ($this->user->hasAccess('projectuser', 'managers')): ?>
- <th class="column-10"><?= t('Users') ?></th>
- <?php endif ?>
- <th><?= t('Columns') ?></th>
- </tr>
- <?php foreach ($paginator->getCollection() as $project): ?>
- <tr>
- <td>
- <?= $this->render('project/dropdown', array('project' => $project)) ?>
- </td>
- <td>
- <?php if ($project['is_active']): ?>
- <?= t('Active') ?>
- <?php else: ?>
- <?= t('Inactive') ?>
- <?php endif ?>
- </td>
- <td>
- <?= $this->url->link($this->text->e($project['name']), 'board', 'show', array('project_id' => $project['id'])) ?>
-
- <?php if ($project['is_public']): ?>
- <i class="fa fa-share-alt fa-fw" title="<?= t('Shared project') ?>"></i>
- <?php endif ?>
- <?php if ($project['is_private']): ?>
- <i class="fa fa-lock fa-fw" title="<?= t('Private project') ?>"></i>
- <?php endif ?>
-
- <?php if (! empty($project['description'])): ?>
- <span class="tooltip" title="<?= $this->text->markdownAttribute($project['description']) ?>">
- <i class="fa fa-info-circle"></i>
- </span>
- <?php endif ?>
- </td>
- <td>
- <?= $this->dt->date($project['start_date']) ?>
- </td>
- <td>
- <?= $this->dt->date($project['end_date']) ?>
- </td>
- <td>
- <?php if ($project['owner_id'] > 0): ?>
- <?= $this->text->e($project['owner_name'] ?: $project['owner_username']) ?>
- <?php endif ?>
- </td>
- <?php if ($this->user->hasAccess('projectuser', 'managers')): ?>
- <td>
- <i class="fa fa-users fa-fw"></i>
- <span class="tooltip" title="<?= t('Members') ?>" data-href="<?= $this->url->href('Projectuser', 'users', array('project_id' => $project['id'])) ?>"><?= t('Members') ?></span>
- </td>
- <?php endif ?>
- <td class="dashboard-project-stats">
- <?php foreach ($project['columns'] as $column): ?>
- <strong title="<?= t('Task count') ?>"><?= $column['nb_tasks'] ?></strong>
- <span><?= $this->text->e($column['title']) ?></span>
- <?php endforeach ?>
- </td>
- </tr>
- <?php endforeach ?>
- </table>
-
- <?= $paginator ?>
- <?php endif ?>
-</section>
diff --git a/app/Template/project/integrations.php b/app/Template/project/integrations.php
deleted file mode 100644
index 54720c69..00000000
--- a/app/Template/project/integrations.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<div class="page-header">
- <h2><?= t('Integration with third-party services') ?></h2>
-</div>
-
-<form method="post" action="<?= $this->url->href('project', 'integrations', array('project_id' => $project['id'])) ?>" autocomplete="off">
- <?= $this->form->csrf() ?>
-
- <?php $integrations = $this->hook->render('template:project:integrations', array('project' => $project, 'values' => $values, 'webhook_token' => $webhook_token)) ?>
-
- <?php if (empty($integrations)): ?>
- <p class="alert"><?= t('There is no integration registered at the moment.') ?></p>
- <?php else: ?>
- <?= $integrations ?>
- <?php endif ?>
-</form> \ No newline at end of file
diff --git a/app/Template/project/notifications.php b/app/Template/project/notifications.php
deleted file mode 100644
index 494a322a..00000000
--- a/app/Template/project/notifications.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<div class="page-header">
- <h2><?= t('Notifications') ?></h2>
-</div>
-<?php if (empty($types)): ?>
- <p class="alert"><?= t('No plugin has registered a project notification method. You can still configure individual notifications in your user profile.') ?></p>
-<?php else: ?>
- <form method="post" action="<?= $this->url->href('project', 'notifications', array('project_id' => $project['id'])) ?>" autocomplete="off">
-
- <?= $this->form->csrf() ?>
-
- <h4><?= t('Notification methods:') ?></h4>
- <?= $this->form->checkboxes('notification_types', $types, $notifications) ?>
-
- <div class="form-actions">
- <button type="submit" class="btn btn-blue"><?= t('Save') ?></button>
- <?= t('or') ?>
- <?= $this->url->link(t('cancel'), 'project', 'show', array('project_id' => $project['id'])) ?>
- </div>
- </form>
-<?php endif ?> \ No newline at end of file
diff --git a/app/Template/project/remove.php b/app/Template/project/remove.php
deleted file mode 100644
index fa43fc78..00000000
--- a/app/Template/project/remove.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<div class="page-header">
- <h2><?= t('Remove project') ?></h2>
-</div>
-
-<div class="confirm">
- <p class="alert alert-info">
- <?= t('Do you really want to remove this project: "%s"?', $project['name']) ?>
- </p>
-
- <div class="form-actions">
- <?= $this->url->link(t('Yes'), 'project', 'remove', array('project_id' => $project['id'], 'remove' => 'yes'), true, 'btn btn-red') ?>
- <?= t('or') ?> <?= $this->url->link(t('cancel'), 'project', 'show', array('project_id' => $project['id'])) ?>
- </div>
-</div> \ No newline at end of file
diff --git a/app/Template/project/share.php b/app/Template/project/share.php
deleted file mode 100644
index 6f66c97e..00000000
--- a/app/Template/project/share.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<div class="page-header">
- <h2><?= t('Public access') ?></h2>
-</div>
-
-<?php if ($project['is_public']): ?>
-
- <div class="listing">
- <ul class="no-bullet">
- <li><strong><i class="fa fa-share-alt"></i> <?= $this->url->link(t('Public link'), 'board', 'readonly', array('token' => $project['token']), false, '', '', true) ?></strong></li>
- <li><strong><i class="fa fa-rss-square"></i> <?= $this->url->link(t('RSS feed'), 'feed', 'project', array('token' => $project['token']), false, '', '', true) ?></strong></li>
- <li><strong><i class="fa fa-calendar"></i> <?= $this->url->link(t('iCal feed'), 'ical', 'project', array('token' => $project['token']), false, '', '', true) ?></strong></li>
- </ul>
- </div>
-
- <?= $this->url->link(t('Disable public access'), 'project', 'share', array('project_id' => $project['id'], 'switch' => 'disable'), true, 'btn btn-red') ?>
-
-<?php else: ?>
- <?= $this->url->link(t('Enable public access'), 'project', 'share', array('project_id' => $project['id'], 'switch' => 'enable'), true, 'btn btn-blue') ?>
-<?php endif ?>
diff --git a/app/Template/project/show.php b/app/Template/project/show.php
deleted file mode 100644
index 4aba4919..00000000
--- a/app/Template/project/show.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<div class="page-header">
- <h2><?= t('Summary') ?></h2>
-</div>
-<ul class="listing">
- <li><strong><?= $project['is_active'] ? t('Active') : t('Inactive') ?></strong></li>
-
- <?php if ($project['owner_id'] > 0): ?>
- <li><?= t('Project owner: ') ?><strong><?= $this->text->e($project['owner_name'] ?: $project['owner_username']) ?></strong></li>
- <?php endif ?>
-
- <?php if ($project['is_private']): ?>
- <li><i class="fa fa-lock"></i> <?= t('This project is private') ?></li>
- <?php endif ?>
-
- <?php if ($project['is_public']): ?>
- <li><i class="fa fa-share-alt"></i> <?= $this->url->link(t('Public link'), 'board', 'readonly', array('token' => $project['token']), false, '', '', true) ?></li>
- <li><i class="fa fa-rss-square"></i> <?= $this->url->link(t('RSS feed'), 'feed', 'project', array('token' => $project['token']), false, '', '', true) ?></li>
- <li><i class="fa fa-calendar"></i> <?= $this->url->link(t('iCal feed'), 'ical', 'project', array('token' => $project['token'])) ?></li>
- <?php else: ?>
- <li><?= t('Public access disabled') ?></li>
- <?php endif ?>
-
- <?php if ($project['last_modified']): ?>
- <li><?= t('Modified:').' '.$this->dt->datetime($project['last_modified']) ?></li>
- <?php endif ?>
-
- <?php if ($project['start_date']): ?>
- <li><?= t('Start date: ').$this->dt->date($project['start_date']) ?></li>
- <?php endif ?>
-
- <?php if ($project['end_date']): ?>
- <li><?= t('End date: ').$this->dt->date($project['end_date']) ?></li>
- <?php endif ?>
-
- <?php if ($stats['nb_tasks'] > 0): ?>
-
- <?php if ($stats['nb_active_tasks'] > 0): ?>
- <li><?= $this->url->link(t('%d tasks on the board', $stats['nb_active_tasks']), 'board', 'show', array('project_id' => $project['id'], 'search' => 'status:open')) ?></li>
- <?php endif ?>
-
- <?php if ($stats['nb_inactive_tasks'] > 0): ?>
- <li><?= $this->url->link(t('%d closed tasks', $stats['nb_inactive_tasks']), 'listing', 'show', array('project_id' => $project['id'], 'search' => 'status:closed')) ?></li>
- <?php endif ?>
-
- <li><?= t('%d tasks in total', $stats['nb_tasks']) ?></li>
-
- <?php else: ?>
- <li><?= t('No task for this project') ?></li>
- <?php endif ?>
-</ul>
-
-<div class="page-header">
- <h2><?= t('Board') ?></h2>
-</div>
-<table class="table-stripped">
- <tr>
- <th class="column-60"><?= t('Column') ?></th>
- <th class="column-20"><?= t('Task limit') ?></th>
- <th class="column-20"><?= t('Active tasks') ?></th>
- </tr>
- <?php foreach ($stats['columns'] as $column): ?>
- <tr>
- <td>
- <?= $this->text->e($column['title']) ?>
- <?php if (! empty($column['description'])): ?>
- <span class="tooltip" title="<?= $this->text->markdownAttribute($column['description']) ?>">
- <i class="fa fa-info-circle"></i>
- </span>
- <?php endif ?>
- </td>
- <td><?= $column['task_limit'] ?: '∞' ?></td>
- <td><?= $column['nb_active_tasks'] ?></td>
- </tr>
- <?php endforeach ?>
-</table>
-
-<?php if (! empty($project['description'])): ?>
- <div class="page-header">
- <h2><?= t('Description') ?></h2>
- </div>
-
- <article class="markdown">
- <?= $this->text->markdown($project['description']) ?>
- </article>
-<?php endif ?>
diff --git a/app/Template/project/sidebar.php b/app/Template/project/sidebar.php
index 7fb7718d..50929977 100644
--- a/app/Template/project/sidebar.php
+++ b/app/Template/project/sidebar.php
@@ -1,8 +1,8 @@
<div class="sidebar">
<h2><?= t('Actions') ?></h2>
<ul>
- <li <?= $this->app->checkMenuSelection('project', 'show') ?>>
- <?= $this->url->link(t('Summary'), 'project', 'show', array('project_id' => $project['id'])) ?>
+ <li <?= $this->app->checkMenuSelection('ProjectViewController', 'show') ?>>
+ <?= $this->url->link(t('Summary'), 'ProjectViewController', 'show', array('project_id' => $project['id'])) ?>
</li>
<?php if ($this->user->hasProjectAccess('customfilter', 'index', $project['id'])): ?>
<li <?= $this->app->checkMenuSelection('customfilter') ?>>
@@ -14,14 +14,14 @@
<li <?= $this->app->checkMenuSelection('ProjectEdit') ?>>
<?= $this->url->link(t('Edit project'), 'ProjectEdit', 'edit', array('project_id' => $project['id'])) ?>
</li>
- <li <?= $this->app->checkMenuSelection('project', 'share') ?>>
- <?= $this->url->link(t('Public access'), 'project', 'share', array('project_id' => $project['id'])) ?>
+ <li <?= $this->app->checkMenuSelection('ProjectViewController', 'share') ?>>
+ <?= $this->url->link(t('Public access'), 'ProjectViewController', 'share', array('project_id' => $project['id'])) ?>
</li>
- <li <?= $this->app->checkMenuSelection('project', 'notifications') ?>>
- <?= $this->url->link(t('Notifications'), 'project', 'notifications', array('project_id' => $project['id'])) ?>
+ <li <?= $this->app->checkMenuSelection('ProjectViewController', 'notifications') ?>>
+ <?= $this->url->link(t('Notifications'), 'ProjectViewController', 'notifications', array('project_id' => $project['id'])) ?>
</li>
- <li <?= $this->app->checkMenuSelection('project', 'integrations') ?>>
- <?= $this->url->link(t('Integrations'), 'project', 'integrations', array('project_id' => $project['id'])) ?>
+ <li <?= $this->app->checkMenuSelection('ProjectViewController', 'integrations') ?>>
+ <?= $this->url->link(t('Integrations'), 'ProjectViewController', 'integrations', array('project_id' => $project['id'])) ?>
</li>
<li <?= $this->app->checkMenuSelection('column') ?>>
<?= $this->url->link(t('Columns'), 'column', 'index', array('project_id' => $project['id'])) ?>
@@ -40,23 +40,23 @@
<li <?= $this->app->checkMenuSelection('action') ?>>
<?= $this->url->link(t('Automatic actions'), 'action', 'index', array('project_id' => $project['id'])) ?>
</li>
- <li <?= $this->app->checkMenuSelection('project', 'duplicate') ?>>
- <?= $this->url->link(t('Duplicate'), 'project', 'duplicate', array('project_id' => $project['id'])) ?>
+ <li <?= $this->app->checkMenuSelection('ProjectViewController', 'duplicate') ?>>
+ <?= $this->url->link(t('Duplicate'), 'ProjectViewController', 'duplicate', array('project_id' => $project['id'])) ?>
</li>
<?php if ($project['is_active']): ?>
- <li <?= $this->app->checkMenuSelection('project', 'disable') ?>>
- <?= $this->url->link(t('Disable'), 'project', 'disable', array('project_id' => $project['id']), true) ?>
+ <li>
+ <?= $this->url->link(t('Disable'), 'ProjectStatusController', 'confirmDisable', array('project_id' => $project['id']), false, 'popover') ?>
<?php else: ?>
- <li <?= $this->app->checkMenuSelection('project', 'enable') ?>>
- <?= $this->url->link(t('Enable'), 'project', 'enable', array('project_id' => $project['id']), true) ?>
+ <li>
+ <?= $this->url->link(t('Enable'), 'ProjectStatusController', 'confirmEnable', array('project_id' => $project['id']), false, 'popover') ?>
<?php endif ?>
</li>
<li <?= $this->app->checkMenuSelection('taskImport') ?>>
<?= $this->url->link(t('Import'), 'taskImport', 'step1', array('project_id' => $project['id'])) ?>
</li>
- <?php if ($this->user->hasProjectAccess('project', 'remove', $project['id'])): ?>
- <li <?= $this->app->checkMenuSelection('project', 'remove') ?>>
- <?= $this->url->link(t('Remove'), 'project', 'remove', array('project_id' => $project['id'])) ?>
+ <?php if ($this->user->hasProjectAccess('ProjectStatusController', 'remove', $project['id'])): ?>
+ <li>
+ <?= $this->url->link(t('Remove'), 'ProjectStatusController', 'confirmRemove', array('project_id' => $project['id']), false, 'popover') ?>
</li>
<?php endif ?>
<?php endif ?>