Add project description field.
Description is shown in a popup when hovering the 'information' icon, like column description, which is shown in project list on dashboard and in board's title. This is useful to document the categories and colors used in the project.
This commit is contained in:
parent
0450d86a18
commit
dedf425e81
|
|
@ -127,6 +127,7 @@ class Board extends Base
|
|||
'swimlanes' => $this->board->getBoard($project['id']),
|
||||
'categories' => $this->category->getList($project['id'], false),
|
||||
'title' => $project['name'],
|
||||
'description' => $project['description'],
|
||||
'no_layout' => true,
|
||||
'not_editable' => true,
|
||||
'board_public_refresh_interval' => $this->config->get('board_public_refresh_interval'),
|
||||
|
|
@ -187,6 +188,7 @@ class Board extends Base
|
|||
'swimlanes' => $this->board->getBoard($project['id']),
|
||||
'categories' => $this->category->getList($project['id'], true, true),
|
||||
'title' => $project['name'],
|
||||
'description' => $project['description'],
|
||||
'board_selector' => $board_selector,
|
||||
'board_private_refresh_interval' => $this->config->get('board_private_refresh_interval'),
|
||||
'board_highlight_period' => $this->config->get('board_highlight_period'),
|
||||
|
|
|
|||
|
|
@ -6,7 +6,12 @@ use PDO;
|
|||
use Core\Security;
|
||||
use Model\Link;
|
||||
|
||||
const VERSION = 46;
|
||||
const VERSION = 47;
|
||||
|
||||
function version_47($pdo)
|
||||
{
|
||||
$pdo->exec('ALTER TABLE projects ADD COLUMN description TEXT');
|
||||
}
|
||||
|
||||
function version_46($pdo)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -6,7 +6,12 @@ use PDO;
|
|||
use Core\Security;
|
||||
use Model\Link;
|
||||
|
||||
const VERSION = 27;
|
||||
const VERSION = 28;
|
||||
|
||||
function version_28($pdo)
|
||||
{
|
||||
$pdo->exec('ALTER TABLE projects ADD COLUMN description TEXT');
|
||||
}
|
||||
|
||||
function version_27($pdo)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -6,7 +6,12 @@ use Core\Security;
|
|||
use PDO;
|
||||
use Model\Link;
|
||||
|
||||
const VERSION = 45;
|
||||
const VERSION = 46;
|
||||
|
||||
function version_46($pdo)
|
||||
{
|
||||
$pdo->exec('ALTER TABLE projects ADD COLUMN description TEXT');
|
||||
}
|
||||
|
||||
function version_45($pdo)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -17,9 +17,15 @@
|
|||
<?php if ($this->isManager($project['id'])): ?>
|
||||
<?= $this->a('<i class="fa fa-cog"></i>', 'project', 'show', array('project_id' => $project['id']), false, 'dashboard-table-link', t('Settings')) ?>
|
||||
<?php endif ?>
|
||||
|
||||
|
||||
<?= $this->a('<i class="fa fa-calendar"></i>', 'calendar', 'show', array('project_id' => $project['id']), false, 'dashboard-table-link', t('Calendar')) ?>
|
||||
|
||||
<?= $this->a($this->e($project['name']), 'board', 'show', array('project_id' => $project['id'])) ?>
|
||||
<?php if (! empty($project['description'])): ?>
|
||||
<span class="column-tooltip" title="<?= $this->markdown($project['description']) ?>">
|
||||
<i class="fa fa-info-circle"></i>
|
||||
</span>
|
||||
<?php endif ?>
|
||||
</td>
|
||||
<td class="dashboard-project-stats">
|
||||
<?php foreach ($project['columns'] as $column): ?>
|
||||
|
|
@ -32,4 +38,4 @@
|
|||
</table>
|
||||
|
||||
<?= $paginator ?>
|
||||
<?php endif ?>
|
||||
<?php endif ?>
|
||||
|
|
|
|||
|
|
@ -35,7 +35,13 @@
|
|||
<?php else: ?>
|
||||
<header>
|
||||
<nav>
|
||||
<h1><?= $this->a('K<span>B</span>', 'app', 'index', array(), false, 'logo', t('Dashboard')).' '.$this->summary($this->e($title)) ?></h1>
|
||||
<h1><?= $this->a('K<span>B</span>', 'app', 'index', array(), false, 'logo', t('Dashboard')).' '.$this->summary($this->e($title)) ?>
|
||||
<?php if (! empty($description)): ?>
|
||||
<span class="column-tooltip" title="<?= $this->markdown($description) ?>">
|
||||
<i class="fa fa-info-circle"></i>
|
||||
</span>
|
||||
<?php endif ?>
|
||||
</h1>
|
||||
<ul>
|
||||
<?php if (isset($board_selector) && ! empty($board_selector)): ?>
|
||||
<li>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,28 @@
|
|||
<?= $this->formLabel(t('Name'), 'name') ?>
|
||||
<?= $this->formText('name', $values, $errors, array('required', 'maxlength="50"')) ?>
|
||||
|
||||
<?= $this->formLabel(t('Description'), 'description') ?>
|
||||
|
||||
<div class="form-tabs">
|
||||
|
||||
<div class="write-area">
|
||||
<?= $this->formTextarea('description', $values, $errors) ?>
|
||||
</div>
|
||||
<div class="preview-area">
|
||||
<div class="markdown"></div>
|
||||
</div>
|
||||
<ul class="form-tabs-nav">
|
||||
<li class="form-tab form-tab-selected">
|
||||
<i class="fa fa-pencil-square-o fa-fw"></i><a id="markdown-write" href="#"><?= t('Write') ?></a>
|
||||
</li>
|
||||
<li class="form-tab">
|
||||
<a id="markdown-preview" href="#"><i class="fa fa-eye fa-fw"></i><?= t('Preview') ?></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="form-help"><a href="http://kanboard.net/documentation/syntax-guide" target="_blank" rel="noreferrer"><?= t('Write your text in Markdown') ?></a></div>
|
||||
|
||||
<div class="form-actions">
|
||||
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
||||
</div>
|
||||
</form>
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -39,7 +39,13 @@
|
|||
<?php if ($project['is_private']): ?>
|
||||
<i class="fa fa-lock fa-fw"></i>
|
||||
<?php endif ?>
|
||||
|
||||
<?= $this->a($this->e($project['name']), 'project', 'show', array('project_id' => $project['id'])) ?>
|
||||
<?php if (! empty($project['description'])): ?>
|
||||
<span class="column-tooltip" title="<?= $this->markdown($project['description']) ?>">
|
||||
<i class="fa fa-info-circle"></i>
|
||||
</span>
|
||||
<?php endif ?>
|
||||
</td>
|
||||
<td class="dashboard-project-stats">
|
||||
<?php foreach ($project['columns'] as $column): ?>
|
||||
|
|
@ -54,4 +60,4 @@
|
|||
<?= $paginator ?>
|
||||
<?php endif ?>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
|||
|
|
@ -60,3 +60,13 @@
|
|||
</tr>
|
||||
<?php endforeach ?>
|
||||
</table>
|
||||
|
||||
<?php if (! empty($project['description'])): ?>
|
||||
<div class="page-header">
|
||||
<h2><?= t('Description') ?></h2>
|
||||
</div>
|
||||
|
||||
<article class="markdown">
|
||||
<?= $this->markdown($project['description']) ?>
|
||||
</article>
|
||||
<?php endif ?>
|
||||
|
|
|
|||
|
|
@ -176,6 +176,7 @@ Response example:
|
|||
- Purpose: **Create a new project**
|
||||
- Parameters:
|
||||
- **name** (string, required)
|
||||
- **description** (string, optional)
|
||||
- Result on success: **project_id**
|
||||
- Result on failure: **false**
|
||||
|
||||
|
|
@ -235,7 +236,8 @@ Response example:
|
|||
"is_active": "1",
|
||||
"token": "",
|
||||
"last_modified": "1410263246",
|
||||
"is_public": "0"
|
||||
"is_public": "0",
|
||||
"description": "A sample project"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
|
@ -273,7 +275,8 @@ Response example:
|
|||
"is_active": "1",
|
||||
"token": "",
|
||||
"last_modified": "0",
|
||||
"is_public": "0"
|
||||
"is_public": "0",
|
||||
"description": "A sample project"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
|
@ -309,7 +312,8 @@ Response example:
|
|||
"is_active": "1",
|
||||
"token": "",
|
||||
"last_modified": "0",
|
||||
"is_public": "0"
|
||||
"is_public": "0",
|
||||
"description": "PHP client project"
|
||||
},
|
||||
{
|
||||
"id": "1",
|
||||
|
|
@ -317,7 +321,8 @@ Response example:
|
|||
"is_active": "1",
|
||||
"token": "",
|
||||
"last_modified": "0",
|
||||
"is_public": "0"
|
||||
"is_public": "0",
|
||||
"description": "Test project"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -332,6 +337,7 @@ Response example:
|
|||
- **is_active** (integer, optional)
|
||||
- **token** (string, optional)
|
||||
- **is_public** (integer, optional)
|
||||
- **description** (string, optional)
|
||||
- Result on success: **true**
|
||||
- Result on failure: **false**
|
||||
|
||||
|
|
|
|||
10
jsonrpc.php
10
jsonrpc.php
|
|
@ -22,13 +22,16 @@ $server->bind('enableProjectPublicAccess', $container['project'], 'enablePublicA
|
|||
$server->bind('disableProjectPublicAccess', $container['project'], 'disablePublicAccess');
|
||||
$server->bind('getProjectActivity', $container['projectActivity'], 'getProjects');
|
||||
|
||||
$server->register('createProject', function($name) use ($container) {
|
||||
$values = array('name' => $name);
|
||||
$server->register('createProject', function($name, $description = null) use ($container) {
|
||||
$values = array(
|
||||
'name' => $name,
|
||||
'description' => $description
|
||||
);
|
||||
list($valid,) = $container['project']->validateCreation($values);
|
||||
return $valid ? $container['project']->create($values) : false;
|
||||
});
|
||||
|
||||
$server->register('updateProject', function($id, $name, $is_active = null, $is_public = null, $token = null) use ($container) {
|
||||
$server->register('updateProject', function($id, $name, $is_active = null, $is_public = null, $token = null, $description = null) use ($container) {
|
||||
|
||||
$values = array(
|
||||
'id' => $id,
|
||||
|
|
@ -36,6 +39,7 @@ $server->register('updateProject', function($id, $name, $is_active = null, $is_p
|
|||
'is_active' => $is_active,
|
||||
'is_public' => $is_public,
|
||||
'token' => $token,
|
||||
'description' => $description
|
||||
);
|
||||
|
||||
foreach ($values as $key => $value) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue