Improve link labels pages navigation

This commit is contained in:
Frederic Guillot
2017-01-08 21:18:54 -05:00
parent 47f4bceb1a
commit 0960a4d0b0
7 changed files with 82 additions and 72 deletions

View File

@@ -16,11 +16,11 @@ class LinkController extends BaseController
/**
* Get the current link
*
* @access private
* @access protected
* @return array
* @throws PageNotFoundException
*/
private function getLink()
protected function getLink()
{
$link = $this->linkModel->getById($this->request->getIntegerParam('link_id'));
@@ -32,19 +32,31 @@ class LinkController extends BaseController
}
/**
* List of links
* List of labels
*
* @access public
*/
public function show()
{
$this->response->html($this->helper->layout->config('link/show', array(
'links' => $this->linkModel->getMergedList(),
'title' => t('Settings').' > '.t('Link labels'),
)));
}
/**
* Add new link label
*
* @access public
* @param array $values
* @param array $errors
*/
public function index(array $values = array(), array $errors = array())
public function create(array $values = array(), array $errors = array())
{
$this->response->html($this->helper->layout->config('link/index', array(
'links' => $this->linkModel->getMergedList(),
$this->response->html($this->template->render('link/create', array(
'links' => $this->linkModel->getMergedList(),
'values' => $values,
'errors' => $errors,
'title' => t('Settings').' > '.t('Task\'s links'),
)));
}
@@ -61,21 +73,22 @@ class LinkController extends BaseController
if ($valid) {
if ($this->linkModel->create($values['label'], $values['opposite_label']) !== false) {
$this->flash->success(t('Link added successfully.'));
return $this->response->redirect($this->helper->url->to('LinkController', 'index'));
$this->response->redirect($this->helper->url->to('LinkController', 'show'), true);
return;
} else {
$this->flash->failure(t('Unable to create your link.'));
}
}
return $this->index($values, $errors);
$this->create($values, $errors);
}
/**
* Edit form
*
* @access public
* @param array $values
* @param array $errors
* @param array $values
* @param array $errors
* @throws PageNotFoundException
*/
public function edit(array $values = array(), array $errors = array())
@@ -83,12 +96,11 @@ class LinkController extends BaseController
$link = $this->getLink();
$link['label'] = t($link['label']);
$this->response->html($this->helper->layout->config('link/edit', array(
$this->response->html($this->template->render('link/edit', array(
'values' => $values ?: $link,
'errors' => $errors,
'labels' => $this->linkModel->getList($link['id']),
'link' => $link,
'title' => t('Link modification')
'link' => $link,
)));
}
@@ -105,13 +117,14 @@ class LinkController extends BaseController
if ($valid) {
if ($this->linkModel->update($values)) {
$this->flash->success(t('Link updated successfully.'));
return $this->response->redirect($this->helper->url->to('LinkController', 'index'));
$this->response->redirect($this->helper->url->to('LinkController', 'show'), true);
return;
} else {
$this->flash->failure(t('Unable to update your link.'));
}
}
return $this->edit($values, $errors);
$this->edit($values, $errors);
}
/**
@@ -123,9 +136,8 @@ class LinkController extends BaseController
{
$link = $this->getLink();
$this->response->html($this->helper->layout->config('link/remove', array(
$this->response->html($this->template->render('link/remove', array(
'link' => $link,
'title' => t('Remove a link')
)));
}
@@ -145,6 +157,6 @@ class LinkController extends BaseController
$this->flash->failure(t('Unable to remove this link.'));
}
$this->response->redirect($this->helper->url->to('LinkController', 'index'));
$this->response->redirect($this->helper->url->to('LinkController', 'show'), true);
}
}