From 5e2e0272ed78e3b729d5673da3e957ce68a30fa2 Mon Sep 17 00:00:00 2001
From: Frederic Guillot
Date: Sat, 8 Oct 2016 09:53:46 -0400
Subject: Send absolute links in email notifications
---
app/Helper/UrlHelper.php | 41 +++++++++++++++-------
app/Template/notification/footer.php | 4 +--
.../task_internal_link_create_update.php | 2 +-
.../notification/task_internal_link_delete.php | 2 +-
app/Template/notification/task_open.php | 2 +-
app/Template/notification/task_overdue.php | 8 ++---
app/Template/task_internal_link/table.php | 10 ++++--
7 files changed, 45 insertions(+), 24 deletions(-)
(limited to 'app')
diff --git a/app/Helper/UrlHelper.php b/app/Helper/UrlHelper.php
index 2127c69e..93177ed5 100644
--- a/app/Helper/UrlHelper.php
+++ b/app/Helper/UrlHelper.php
@@ -51,20 +51,35 @@ class UrlHelper extends Base
* Link element
*
* @access public
- * @param string $label Link label
- * @param string $controller Controller name
- * @param string $action Action name
- * @param array $params Url parameters
- * @param boolean $csrf Add a CSRF token
- * @param string $class CSS class attribute
- * @param string $title
- * @param boolean $new_tab Open the link in a new tab
- * @param string $anchor Link Anchor
+ * @param string $label Link label
+ * @param string $controller Controller name
+ * @param string $action Action name
+ * @param array $params Url parameters
+ * @param boolean $csrf Add a CSRF token
+ * @param string $class CSS class attribute
+ * @param string $title Link title
+ * @param boolean $new_tab Open the link in a new tab
+ * @param string $anchor Link Anchor
+ * @param bool $absolute
+ * @return string
+ */
+ public function link($label, $controller, $action, array $params = array(), $csrf = false, $class = '', $title = '', $new_tab = false, $anchor = '', $absolute = false)
+ {
+ return ''.$label.'';
+ }
+
+ /**
+ * Absolute link
+ *
+ * @param string $label
+ * @param string $controller
+ * @param string $action
+ * @param array $params
* @return string
*/
- public function link($label, $controller, $action, array $params = array(), $csrf = false, $class = '', $title = '', $new_tab = false, $anchor = '')
+ public function absoluteLink($label, $controller, $action, array $params = array())
{
- return ''.$label.'';
+ return $this->link($label, $controller, $action, $params, false, '', '', true, '', true);
}
/**
@@ -155,7 +170,7 @@ class UrlHelper extends Base
/**
* Build relative url
*
- * @access private
+ * @access protected
* @param string $separator Querystring argument separator
* @param string $controller Controller name
* @param string $action Action name
@@ -165,7 +180,7 @@ class UrlHelper extends Base
* @param boolean $absolute Absolute or relative link
* @return string
*/
- private function build($separator, $controller, $action, array $params = array(), $csrf = false, $anchor = '', $absolute = false)
+ protected function build($separator, $controller, $action, array $params = array(), $csrf = false, $anchor = '', $absolute = false)
{
$path = $this->route->findUrl($controller, $action, $params);
$qs = array();
diff --git a/app/Template/notification/footer.php b/app/Template/notification/footer.php
index 6ac260cb..da437eea 100644
--- a/app/Template/notification/footer.php
+++ b/app/Template/notification/footer.php
@@ -2,6 +2,6 @@
Kanboard
- - = t('view the task on Kanboard') ?>
- - = t('view the board on Kanboard') ?>
+ - = $this->url->absoluteLink(t('view the task on Kanboard'), 'TaskViewController', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>
+ - = $this->url->absoluteLink(t('view the board on Kanboard'), 'BoardViewController', 'show', array('project_id' => $task['project_id'])) ?>
diff --git a/app/Template/notification/task_internal_link_create_update.php b/app/Template/notification/task_internal_link_create_update.php
index 73cad84d..b66a1531 100644
--- a/app/Template/notification/task_internal_link_create_update.php
+++ b/app/Template/notification/task_internal_link_create_update.php
@@ -3,7 +3,7 @@
= e(
'This task is now linked to the task %s with the relation "%s"',
- $this->url->link(t('#%d', $task_link['opposite_task_id']), 'TaskViewController', 'show', array('task_id' => $task_link['opposite_task_id'])),
+ $this->url->absoluteLink(t('#%d', $task_link['opposite_task_id']), 'TaskViewController', 'show', array('task_id' => $task_link['opposite_task_id'])),
$this->text->e($task_link['label'])
) ?>
diff --git a/app/Template/notification/task_internal_link_delete.php b/app/Template/notification/task_internal_link_delete.php
index bb54e0a7..d556fb20 100644
--- a/app/Template/notification/task_internal_link_delete.php
+++ b/app/Template/notification/task_internal_link_delete.php
@@ -4,7 +4,7 @@
= e(
'The link with the relation "%s" to the task %s have been removed',
$this->text->e($task_link['label']),
- $this->url->link(t('#%d', $task_link['opposite_task_id']), 'TaskViewController', 'show', array('task_id' => $task_link['opposite_task_id']))
+ $this->url->absoluteLink(t('#%d', $task_link['opposite_task_id']), 'TaskViewController', 'show', array('task_id' => $task_link['opposite_task_id']))
) ?>
diff --git a/app/Template/notification/task_open.php b/app/Template/notification/task_open.php
index 6eb4ec08..2c85e9f7 100644
--- a/app/Template/notification/task_open.php
+++ b/app/Template/notification/task_open.php
@@ -2,4 +2,4 @@
= t('The task #%d have been opened.', $task['id']) ?>
-= $this->render('notification/footer', array('task' => $task, 'application_url' => $application_url)) ?>
\ No newline at end of file
+= $this->render('notification/footer', array('task' => $task, 'application_url' => $application_url)) ?>
diff --git a/app/Template/notification/task_overdue.php b/app/Template/notification/task_overdue.php
index 406e41f7..01ad0a01 100644
--- a/app/Template/notification/task_overdue.php
+++ b/app/Template/notification/task_overdue.php
@@ -13,16 +13,16 @@
#= $task['id'] ?> |
-
- = $this->text->e($task['title']) ?>
+
+ = $this->url->absoluteLink($this->text->e($task['title']), 'TaskViewController', 'show', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>
= $this->text->e($task['title']) ?>
|
= $this->dt->date($task['date_due']) ?> |
- = $task['project_name'] ?> |
+ = $this->text->e($task['project_name']) ?> |
-
+
= $this->text->e($task['assignee_name'] ?: $task['assignee_username']) ?>
|
diff --git a/app/Template/task_internal_link/table.php b/app/Template/task_internal_link/table.php
index 6584a33a..3a3a2b88 100644
--- a/app/Template/task_internal_link/table.php
+++ b/app/Template/task_internal_link/table.php
@@ -72,8 +72,14 @@
- - = $this->url->link(t('Edit'), 'TaskInternalLinkController', 'edit', array('link_id' => $link['id'], 'task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?>
- - = $this->url->link(t('Remove'), 'TaskInternalLinkController', 'confirm', array('link_id' => $link['id'], 'task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?>
+ -
+
+ = $this->url->link(t('Edit'), 'TaskInternalLinkController', 'edit', array('link_id' => $link['id'], 'task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?>
+
+ -
+
+ = $this->url->link(t('Remove'), 'TaskInternalLinkController', 'confirm', array('link_id' => $link['id'], 'task_id' => $task['id'], 'project_id' => $task['project_id']), false, 'popover') ?>
+
--
cgit v1.2.3