From 364382b1b58db8bf1bd2c8866e21c869a7a5d6d0 Mon Sep 17 00:00:00 2001
From: Frederic Guillot <fred@kanboard.net>
Date: Fri, 13 Feb 2015 17:50:20 -0500
Subject: Add task links (Merge pull-request #610)

---
 app/Template/link/edit.php   | 49 ++++++++++++++++++++++++++++++++++++++++++++
 app/Template/link/index.php  | 30 +++++++++++++++++++++++++++
 app/Template/link/remove.php | 17 +++++++++++++++
 3 files changed, 96 insertions(+)
 create mode 100644 app/Template/link/edit.php
 create mode 100644 app/Template/link/index.php
 create mode 100644 app/Template/link/remove.php

(limited to 'app/Template/link')

diff --git a/app/Template/link/edit.php b/app/Template/link/edit.php
new file mode 100644
index 00000000..71d4f3ca
--- /dev/null
+++ b/app/Template/link/edit.php
@@ -0,0 +1,49 @@
+<section id="link-edit-section">
+<?php use Model\Link;
+if (! isset($edit)): ?>
+    <h3><?= t('Add a new link label') ?></h3>
+<?php else: ?>
+<div class="page-header">
+    <h2><?= t('Edit the link label') ?></h2>
+</div>
+<?php endif ?>
+
+<form method="post" action="<?= $this->u('link', isset($edit) ? 'update' : 'save', array('project_id' => $project['id'], 'link_id' => @$values['id'])) ?>" autocomplete="off">
+    <?= $this->formCsrf() ?>
+
+    <?php if (isset($edit)): ?>
+        <?= $this->formHidden('link_id', $values) ?>
+        <?= $this->formHidden('id[0]', $values[0]) ?>
+        <?php if (isset($values[1])): ?>
+        <?= $this->formHidden('id[1]', $values[1]) ?>
+        <?php endif ?>
+    <?php endif ?>
+    <?= $this->formHidden('project_id', $values) ?>
+
+    <?= $this->formLabel(t('Link Label'), 'label[0]') ?>
+    <?= $this->formText('label[0]', $values[0], $errors, array('required', 'autofocus', 'placeholder="'.t('precedes').'"')) ?> &raquo;
+    
+    <?= $this->formCheckbox('behaviour[0]', t('Bidrectional link label'), Link::BEHAVIOUR_BOTH, (isset($values[0]['behaviour']) && Link::BEHAVIOUR_BOTH == $values[0]['behaviour']), 'behaviour') ?>
+
+    <div class="link-inverse-label">
+    <?= $this->formLabel(t('Link Inverse Label'), 'label[1]') ?>
+    &laquo; <?= $this->formText('label[1]', isset($values[1]) ? $values[1] : $values, $errors, array('placeholder="'.t('follows').'"')) ?>
+    </div>
+    
+    <div class="form-actions">
+        <input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
+        <?php if (isset($edit)): ?>
+        <?= t('or') ?>
+        <?= $this->a(t('cancel'), 'link', 'index', array('project_id' => $project['id'])) ?>
+        <?php endif ?>
+    </div>
+    <?php if (! isset($edit)): ?>
+    <div class="alert alert-info">
+        <strong><?= t('Example:') ?></strong>
+        <i><?= t('#9 precedes #10') ?></i>
+        <?= t('and therefore') ?>
+        <i><?= t('#10 follows #9') ?></i>
+    </div>
+    <?php endif ?>
+</form>
+</section>
\ No newline at end of file
diff --git a/app/Template/link/index.php b/app/Template/link/index.php
new file mode 100644
index 00000000..0c19b614
--- /dev/null
+++ b/app/Template/link/index.php
@@ -0,0 +1,30 @@
+<div class="page-header">
+    <h2><?= t('Link labels') ?></h2>
+</div>
+
+<section>
+<?php if (! empty($links)): ?>
+<table>
+    <tr>
+        <th width="70%"><?= t('Link labels') ?></th>
+        <th><?= t('Actions') ?></th>
+    </tr>
+    <?php foreach ($links as $link): ?>
+    <tr>
+        <td><?= t($this->e($link['label'])) ?><?php if (isset($link['label_inverse']) && !empty($link['label_inverse'])): ?> | <?= t($this->e($link['label_inverse'])) ?><?php endif ?></td>
+        <td>
+            <ul>
+                <?= $this->a(t('Edit'), 'link', 'edit', array('link_id' => $link['link_id'], 'project_id' => $link['project_id'])) ?>
+                <?= t('or') ?>
+                <?= $this->a(t('Remove'), 'link', 'confirm', array('link_id' => $link['link_id'], 'project_id' => $link['project_id'])) ?>
+            </ul>
+        </td>
+    </tr>
+    <?php endforeach ?>
+</table>
+<?php else: ?>
+    <?= t('There is no link yet.') ?>
+<?php endif ?>
+</section>
+
+<?= $this->render('link/edit', array('values' => $values, 'errors' => $errors, 'project' => $project)) ?>
diff --git a/app/Template/link/remove.php b/app/Template/link/remove.php
new file mode 100644
index 00000000..d0b14b08
--- /dev/null
+++ b/app/Template/link/remove.php
@@ -0,0 +1,17 @@
+<section id="main">
+    <div class="page-header">
+        <h2><?= t('Remove a link') ?></h2>
+    </div>
+
+    <div class="confirm">
+        <p class="alert alert-info">
+            <?= t('Do you really want to remove this link: "%s"?', t($link[0]['label']).(isset($link[1]['label']) ? ' | '.t($link[1]['label']) : '')) ?>
+        </p>
+
+        <div class="form-actions">
+            <?= $this->a(t('Yes'), 'link', 'remove', array('project_id' => $project['id'], 'link_id' => $link[0]['link_id']), true, 'btn btn-red') ?>
+            <?= t('or') ?>
+            <?= $this->a(t('cancel'), 'link', 'index', array('project_id' => $project['id'])) ?>
+        </div>
+    </div>
+</section>
\ No newline at end of file
-- 
cgit v1.2.3