diff options
Diffstat (limited to 'doc/en_US')
-rw-r--r-- | doc/en_US/api-me-procedures.markdown | 2 | ||||
-rw-r--r-- | doc/en_US/api-project-procedures.markdown | 5 | ||||
-rw-r--r-- | doc/en_US/api-task-procedures.markdown | 20 | ||||
-rw-r--r-- | doc/en_US/cli.markdown | 15 | ||||
-rw-r--r-- | doc/en_US/config.markdown | 6 | ||||
-rw-r--r-- | doc/en_US/create-tasks-by-email.markdown | 23 | ||||
-rw-r--r-- | doc/en_US/cronjob.markdown | 2 | ||||
-rw-r--r-- | doc/en_US/docker.markdown | 1 | ||||
-rw-r--r-- | doc/en_US/env.markdown | 9 | ||||
-rw-r--r-- | doc/en_US/heroku.markdown | 8 | ||||
-rw-r--r-- | doc/en_US/installation.markdown | 17 | ||||
-rw-r--r-- | doc/en_US/ldap-authentication.markdown | 27 | ||||
-rw-r--r-- | doc/en_US/mysql-configuration.markdown | 6 | ||||
-rw-r--r-- | doc/en_US/plugin-hooks.markdown | 5 | ||||
-rw-r--r-- | doc/en_US/project-permissions.markdown | 3 | ||||
-rw-r--r-- | doc/en_US/requirements.markdown | 4 | ||||
-rw-r--r-- | doc/en_US/search.markdown | 8 | ||||
-rw-r--r-- | doc/en_US/update.markdown | 3 |
18 files changed, 112 insertions, 52 deletions
diff --git a/doc/en_US/api-me-procedures.markdown b/doc/en_US/api-me-procedures.markdown index e90bee61..c2476904 100644 --- a/doc/en_US/api-me-procedures.markdown +++ b/doc/en_US/api-me-procedures.markdown @@ -78,7 +78,6 @@ Response example: "last_modified": "1438205337", "is_public": "0", "is_private": "1", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": null, @@ -369,7 +368,6 @@ Response example: "last_modified": "1436119570", "is_public": "0", "is_private": "0", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": null, diff --git a/doc/en_US/api-project-procedures.markdown b/doc/en_US/api-project-procedures.markdown index 831c4b60..91793803 100644 --- a/doc/en_US/api-project-procedures.markdown +++ b/doc/en_US/api-project-procedures.markdown @@ -70,7 +70,6 @@ Response example: "last_modified": "1436119135", "is_public": "0", "is_private": "0", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": "test", @@ -119,7 +118,6 @@ Response example: "last_modified": "1436119135", "is_public": "0", "is_private": "0", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": "test", @@ -168,7 +166,6 @@ Response example: "last_modified": "1436119135", "is_public": "0", "is_private": "0", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": "test", @@ -217,7 +214,6 @@ Response example: "last_modified": "1436119135", "is_public": "0", "is_private": "0", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": "test", @@ -265,7 +261,6 @@ Response example: "last_modified": "1436119570", "is_public": "0", "is_private": "0", - "is_everybody_allowed": "0", "default_swimlane": "Default swimlane", "show_default_swimlane": "1", "description": null, diff --git a/doc/en_US/api-task-procedures.markdown b/doc/en_US/api-task-procedures.markdown index a5691c12..cec6e0e0 100644 --- a/doc/en_US/api-task-procedures.markdown +++ b/doc/en_US/api-task-procedures.markdown @@ -255,7 +255,15 @@ Response example: "recurrence_basedate": "0", "recurrence_parent": null, "recurrence_child": null, - "url": "http:\/\/127.0.0.1:8000\/?controller=task&action=show&task_id=1&project_id=1" + "priority": "0", + "external_provider": null, + "external_uri": null, + "url": "http:\/\/127.0.0.1:8000\/?controller=task&action=show&task_id=1&project_id=1", + "color": { + "name": "Blue", + "background": "rgb(219, 235, 255)", + "border": "rgb(168, 207, 255)" + } }, { "id": "2", @@ -287,7 +295,15 @@ Response example: "recurrence_basedate": "0", "recurrence_parent": null, "recurrence_child": null, - "url": "http:\/\/127.0.0.1:8000\/?controller=task&action=show&task_id=2&project_id=1" + "priority": "0", + "external_provider": null, + "external_uri": null, + "url": "http:\/\/127.0.0.1:8000\/?controller=task&action=show&task_id=2&project_id=1", + "color": { + "name": "Green", + "background": "rgb(189, 244, 203)", + "border": "rgb(74, 227, 113)" + } }, ... ] diff --git a/doc/en_US/cli.markdown b/doc/en_US/cli.markdown index b1722308..b7d60705 100644 --- a/doc/en_US/cli.markdown +++ b/doc/en_US/cli.markdown @@ -133,11 +133,12 @@ Optional parameters: - `--show`: Display notifications sent - `--group`: Group all overdue tasks for one user (from all projects) in one email - `--manager`: Send all overdue tasks to project manager(s) in one email +- `-p|--project project_id|identifier`: Send notifications only for the given project You can also display the overdue tasks with the flag `--show`: ```bash -./kanboard notification:overdue-tasks --show +./cli notification:overdue-tasks --show +-----+---------+------------+------------+--------------+----------+ | Id | Title | Due date | Project Id | Project name | Assignee | +-----+---------+------------+------------+--------------+----------+ @@ -146,6 +147,18 @@ You can also display the overdue tasks with the flag `--show`: +-----+---------+------------+------------+--------------+----------+ ``` +Example to filter by project: + +```bash +./cli notification:overdue-tasks --project 123 +``` + +Or if you have defined a project identifier: + +```bash +./cli notification:overdue-tasks --project MY_PROJECT +``` + ### Run daily project stats calculation This command calculate the statistics of each project: diff --git a/doc/en_US/config.markdown b/doc/en_US/config.markdown index 4ccaec27..4fbb9548 100644 --- a/doc/en_US/config.markdown +++ b/doc/en_US/config.markdown @@ -10,6 +10,9 @@ Enable/Disable debug mode ```php define('DEBUG', true); define('LOG_DRIVER', 'file'); // Other drivers are: syslog, stdout, stderr or file + +// By default, the log file is in data/debug.log but you can change the path: +define('LOG_FILE', '/path/to/debug.log'); ``` The log driver must be defined if you enable the debug mode. @@ -332,4 +335,7 @@ define('API_AUTHENTICATION_TOKEN', 'My unique API Token'); // TOTP (2FA) issuer name define('TOTP_ISSUER', 'Kanboard'); + +// Maximum number of events stored in the table "project_activities" +define('PROJECT_ACTIVITIES_MAX_EVENTS', 10000); ``` diff --git a/doc/en_US/create-tasks-by-email.markdown b/doc/en_US/create-tasks-by-email.markdown index b46e5797..f0ac4753 100644 --- a/doc/en_US/create-tasks-by-email.markdown +++ b/doc/en_US/create-tasks-by-email.markdown @@ -18,28 +18,17 @@ All complicated works are already handled by those services. Incoming emails workflow ------------------------ -1. You send an email to a specific address, for example **something+myproject@inbound.mydomain.tld** +1. You send an email to a specific address, for example **myproject@inbound.mydomain.tld** 2. Your email is forwarded to the third-party SMTP servers 3. The SMTP provider call the Kanboard web hook with the email in JSON or multipart/form-data formats 4. Kanboard parses the received email and create the task to the right project -Note: New tasks are automatically created in the first column. - -Email format ------------- - -- The local part of the email address must use the plus separator, for example **kanboard+project123** -- The string defined after the plus sign must match a project identifier, for example **project123** is the identifier of the project **Project 123** -- The email subject becomes the task title -- The email body becomes the task description (Markdown format) - -Incoming emails can be written in text or HTML formats. -**Kanboard is able to convert simple HTML emails to Markdown**. - -Security and requirements -------------------------- +Notes +----- - The Kanboard web hook is protected by a random token - The sender email address must match a Kanboard user -- The Kanboard project must have a unique identifier, for example **MYPROJECT** - The Kanboard user must be a member of the project +- Kanboard is able to convert only simple HTML emails to Markdown +- New tasks are automatically created in the first column +- Refer to the documentation of each plugin for the configuration diff --git a/doc/en_US/cronjob.markdown b/doc/en_US/cronjob.markdown index 743aac95..fd7c2b1e 100644 --- a/doc/en_US/cronjob.markdown +++ b/doc/en_US/cronjob.markdown @@ -39,7 +39,7 @@ Before to configure the recurring task, create a batch file (*.bat or *.cmd) tha Here an example (`C:\kanboard.bat`): ``` -"C:\php\php.exe" -f "C:\inetpub\wwwroot\kanboard\kanboard" cronjob +"C:\php\php.exe" -f "C:\inetpub\wwwroot\kanboard\cli" cronjob ``` **You must change the path of the PHP executable and the path of the Kanboard's script according to your installation.** diff --git a/doc/en_US/docker.markdown b/doc/en_US/docker.markdown index 5b77da76..698cf5e5 100644 --- a/doc/en_US/docker.markdown +++ b/doc/en_US/docker.markdown @@ -86,6 +86,7 @@ Config files - The container already include a custom config file located at `/var/www/app/config.php`. - You can store your own config file on the data volume: `/var/www/app/data/config.php`. +- If you change your config file values, you must restart the container to take into account the new parameters. References ---------- diff --git a/doc/en_US/env.markdown b/doc/en_US/env.markdown index 902066d7..6e241f8b 100644 --- a/doc/en_US/env.markdown +++ b/doc/en_US/env.markdown @@ -3,7 +3,8 @@ Environment Variables Environment variables maybe useful when Kanboard is deployed as container (Docker). -| Variable | Description | -|---------------|---------------------------------------------------------------------------------------------------------------------------------| -| DATABASE_URL | `[database type]://[username]:[password]@[host]:[port]/[database name]`, example: `postgres://foo:foo@myserver:5432/kanboard` | -| DEBUG | Enable/Disable debug mode: "true" or "false" | +| Variable | Description | +|--------------------------|---------------------------------------------------------------------------------------------------------------------------------| +| DATABASE_URL | `[database type]://[username]:[password]@[host]:[port]/[database name]`, example: `postgres://foo:foo@myserver:5432/kanboard` | +| DEBUG | Enable/Disable debug mode: "true" or "false" | +| API_AUTHENTICATION_TOKEN | Custom API token | diff --git a/doc/en_US/heroku.markdown b/doc/en_US/heroku.markdown index 1891efb0..fa8d29b9 100644 --- a/doc/en_US/heroku.markdown +++ b/doc/en_US/heroku.markdown @@ -35,5 +35,9 @@ heroku open Limitations ----------- -- The storage of Heroku is ephemeral, that means uploaded files through Kanboard are not persistent after a restart. You may want to install a plugin to store your files in a cloud storage provider like [Amazon S3](https://github.com/kanboard/plugin-s3). -- Some features of Kanboard require that you run [a daily background job](cronjob.markdown). +Local disk storage on Heroku is ephemeral: + +- Uploaded files are not persistent after a restart. You may want to install a plugin to store your files in a cloud storage provider like [Amazon S3](https://github.com/kanboard/plugin-s3). +- Plugins installed via the web interface are stored on the local filesystem. You should include and deploy plugins with your own copy of Kanboard. + +Some features of Kanboard require that you run [a daily background job](cronjob.markdown). diff --git a/doc/en_US/installation.markdown b/doc/en_US/installation.markdown index d8969c1c..543ca4d0 100644 --- a/doc/en_US/installation.markdown +++ b/doc/en_US/installation.markdown @@ -1,7 +1,7 @@ Installation ============ -Firstly, check the [requirements](requirements.markdown) before to go further. +First, check the [requirements](requirements.markdown) before going further. From the archive (stable version) --------------------------------- @@ -11,26 +11,23 @@ From the archive (stable version) 3. Check if the directory `data` is writeable by the web server user 4. With your browser go to <http://yourpersonalserver/kanboard> 5. The default login and password is **admin/admin** -6. Start to use the software +6. Start using the software 7. Don't forget to change your password! The `data` folder is used to store: - Sqlite database: `db.sqlite` -- Debug file: `debug.log` (if debug mode enabled) +- Debug file: `debug.log` (if debug mode is enabled) - Uploaded files: `files/*` - Image thumbnails: `files/thumbnails/*` -People who are using a remote database (Mysql/Postgresql) and a remote object storage (Aws S3 or similar) don't necessarily need to have a persistent local data folder or to change the permission. +People who are using a remote database (Mysql/Postgresql) and a remote object storage (Aws S3 or similar) don't necessarily need to have a persistent local data folder or to change the permissions for the folder. From the git repository (development version) --------------------------------------------- -You must install [composer](https://getcomposer.org/) to use this method. - 1. `git clone https://github.com/kanboard/kanboard.git` -2. `composer install --no-dev` -3. Go to the third step just above +2. Go to the third step just above Note: This method will install the **current development version**, use at your own risk. @@ -67,10 +64,10 @@ Optional Installation --------------------- - Some features of Kanboard require that you run [a daily background job](cronjob.markdown) (Reports and analytics) -- [Install the background worker](worker.markdown) to improve the performances +- [Install the background worker](worker.markdown) to improve performance Security -------- - Don't forget to change the default user/password -- Don't allow everybody to access to the directory `data` from the URL. There is already a `.htaccess` for Apache and a `web.config` file for IIS but nothing for other web servers. +- Don't allow everybody to access to the directory `data` from the URL. A `.htaccess` file for Apache and a `web.config` file for IIS is included but other web servers will have to be configured manually. diff --git a/doc/en_US/ldap-authentication.markdown b/doc/en_US/ldap-authentication.markdown index e994c149..6d80e9db 100644 --- a/doc/en_US/ldap-authentication.markdown +++ b/doc/en_US/ldap-authentication.markdown @@ -153,6 +153,33 @@ define('LDAP_USER_BASE_DN', 'ou=People,dc=example,dc=com'); define('LDAP_USER_FILTER', 'uid=%s'); ``` +Example for LDAPS (SSL-encryption) +---------------------------------- + +Some LDAP servers are configured for "LDAPS" connectivity only (on port 636). This is different to TLS, which starts off in cleartext (port 389 by default) and then sets up encryption over the same channel. + +To tell PHP to use LDAPS, you need to prefix the name of your LDAP server with "ldaps://", as in the example below: + +Our LDAP server is `myserver.example.com` and is only accessible via LDAPS. Most likely we won't want to validate the server cert, and we DON'T want TLS. + +For this example we use the anonymous binding. + +```php +<?php + +// Enable LDAP authentication (false by default) +define('LDAP_AUTH', true); + +// LDAP server hostname +define('LDAP_SERVER', 'ldaps://myserver.example.com'); + +// By default, require certificate to be verified for ldaps:// style URL. Set to false to skip the verification +define('LDAP_SSL_VERIFY', false); + +// Enable LDAP START_TLS +define('LDAP_START_TLS', false);; +``` + Disable automatic account creation ----------------------------------- diff --git a/doc/en_US/mysql-configuration.markdown b/doc/en_US/mysql-configuration.markdown index c199353e..27d5141d 100644 --- a/doc/en_US/mysql-configuration.markdown +++ b/doc/en_US/mysql-configuration.markdown @@ -55,6 +55,12 @@ mysql -u root -p my_database < app/Schema/Sql/mysql.sql The file `app/Schema/Sql/mysql.sql` is a SQL dump that represents the last version of the database. +If you would like to use Unix socket connection, try this: + +```php +define('DB_HOSTNAME', '127.0.0.1;unix_socket=/var/run/mysqld/mysqld.sock'); +``` + SSL configuration ----------------- diff --git a/doc/en_US/plugin-hooks.markdown b/doc/en_US/plugin-hooks.markdown index dedea934..c01da61b 100644 --- a/doc/en_US/plugin-hooks.markdown +++ b/doc/en_US/plugin-hooks.markdown @@ -211,10 +211,8 @@ List of template hooks: | `template:config:application ` | Application settings form | | `template:config:email` | Email settings page | | `template:config:integrations` | Integration page in global settings | -| `template:dashboard:sidebar` | Sidebar on dashboard page | | `template:dashboard:show` | Main page of the dashboard | -| `template:dashboard:subtasks:header:before-timetracking` | Header of Subtask table before Time Tracking | -| `template:dashboard:subtasks:rows` | Column on row of Subtask table of the dashboard | +| `template:dashboard:page-header:menu` | Dashboard submenu | | `template:header:dropdown` | Page header dropdown menu (user avatar icon) | | `template:header:creation-dropdown` | Page header dropdown menu (plus icon) | | `template:layout:head` | Page layout `<head/>` tag | @@ -229,6 +227,7 @@ List of template hooks: | `template:project-list:menu:before` | Project list: before menu entries | | `template:project-list:menu:after` | Project list: after menu entries | | `template:project-overview:before-description` | Project overview: before description | +| `template:project-header:view-switcher` | Project view switcher | | `template:task:layout:top` | Task layout top (after page header) | | `template:task:details:top` | Task summary top | | `template:task:details:bottom` | Task summary bottom | diff --git a/doc/en_US/project-permissions.markdown b/doc/en_US/project-permissions.markdown index 99e4caa2..05c81ef9 100644 --- a/doc/en_US/project-permissions.markdown +++ b/doc/en_US/project-permissions.markdown @@ -17,7 +17,4 @@ Role assignments are visible in **Project Settings > Permissions**: ![Project Permissions](screenshots/project-permissions.png) -If you choose to allow everybody, all Kanboard users will be considered 'Project Member'. -With this setting, role management will have no effect. Permission per user or per group cannot be applied. - Private projects cannot define permissions. diff --git a/doc/en_US/requirements.markdown b/doc/en_US/requirements.markdown index 957d8750..78a0ced8 100644 --- a/doc/en_US/requirements.markdown +++ b/doc/en_US/requirements.markdown @@ -44,9 +44,13 @@ Do not use Sqlite on NFS mounts, only when you have a disk with fast I/O. | Apache HTTP Server | | Nginx | | Microsoft IIS | +| Caddy Server | Kanboard is pre-configured to work with Apache (URL rewriting). +- Note: Kanboard is not compatible with Apache `mod_security`. +- If you use Apache, you must have the module `mod_version`. + ### PHP Versions | PHP Version | diff --git a/doc/en_US/search.markdown b/doc/en_US/search.markdown index fefbe095..818a19ce 100644 --- a/doc/en_US/search.markdown +++ b/doc/en_US/search.markdown @@ -115,6 +115,7 @@ Attribute: **completed** The task reference is an external id of your task, by example a ticket number from another software. - Find tasks with a reference: `ref:1234` or `reference:TICKET-1234` +- Wildcard search: `ref:TICKET-*` ### Search by category @@ -165,6 +166,13 @@ Attribute: **tag** - Example: `tag:"My tag"` +### Search by score/complexity + +Attribute: **score** or **complexity** + +- `score:>=21` +- `complexity:8` + Activity stream search ---------------------- diff --git a/doc/en_US/update.markdown b/doc/en_US/update.markdown index 76cac27a..516b704b 100644 --- a/doc/en_US/update.markdown +++ b/doc/en_US/update.markdown @@ -30,8 +30,7 @@ From the repository (development version) ----------------------------------------- 1. `git pull` -2. `composer install --no-dev` -3. Login and check if everything is ok +2. Login and check if everything is ok Note: This method will install the **current development version**, use at your own risk. |