Add section for predefined contents

This commit is contained in:
Frederic Guillot
2017-10-30 16:46:39 -07:00
parent 0a3f2a6a32
commit 48b40ec7bf
35 changed files with 137 additions and 6 deletions

View File

@@ -0,0 +1,61 @@
<?php
namespace Kanboard\Controller;
/**
* Project Predefined Content Controller
*
* @package Kanboard\Controller
* @author Frederic Guillot
*/
class ProjectPredefinedContentController extends BaseController
{
/**
* Edit project
*
* @access public
* @param array $values
* @param array $errors
*/
public function show(array $values = array(), array $errors = array())
{
$project = $this->getProject();
$this->response->html($this->helper->layout->project('project_predefined_content/show', array(
'values' => empty($values) ? $project : $values,
'errors' => $errors,
'project' => $project,
'title' => t('Predefined Contents')
)));
}
/**
* Validate and update a project
*
* @access public
*/
public function update()
{
$project = $this->getProject();
$values = $this->request->getValues();
$values = array(
'id' => $project['id'],
'name' => $project['name'],
'predefined_email_subjects' => isset($values['predefined_email_subjects']) ? $values['predefined_email_subjects'] : '',
);
list($valid, $errors) = $this->projectValidator->validateModification($values);
if ($valid) {
if ($this->projectModel->update($values)) {
$this->flash->success(t('Project updated successfully.'));
return $this->response->redirect($this->helper->url->to('ProjectPredefinedContentController', 'show', array('project_id' => $project['id'])), true);
} else {
$this->flash->failure(t('Unable to update this project.'));
}
}
return $this->show($values, $errors);
}
}