diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/editing-projects.markdown | 15 | ||||
-rw-r--r-- | doc/en_US/2fa.markdown (renamed from doc/2fa.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/analytics-tasks.markdown (renamed from doc/analytics-tasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/analytics.markdown (renamed from doc/analytics.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-action-procedures.markdown (renamed from doc/api-action-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-application-procedures.markdown (renamed from doc/api-application-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-authentication.markdown (renamed from doc/api-authentication.markdown) | 3 | ||||
-rw-r--r-- | doc/en_US/api-board-procedures.markdown (renamed from doc/api-board-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-category-procedures.markdown (renamed from doc/api-category-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-column-procedures.markdown (renamed from doc/api-column-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-comment-procedures.markdown (renamed from doc/api-comment-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-examples.markdown (renamed from doc/api-examples.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-external-task-link-procedures.markdown (renamed from doc/api-external-task-link-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-group-member-procedures.markdown (renamed from doc/api-group-member-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-group-procedures.markdown (renamed from doc/api-group-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-internal-task-link-procedures.markdown (renamed from doc/api-internal-task-link-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-json-rpc.markdown (renamed from doc/api-json-rpc.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/api-link-procedures.markdown (renamed from doc/api-link-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-me-procedures.markdown (renamed from doc/api-me-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-project-file-procedures.markdown (renamed from doc/api-project-file-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-project-permission-procedures.markdown (renamed from doc/api-project-permission-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-project-procedures.markdown (renamed from doc/api-project-procedures.markdown) | 50 | ||||
-rw-r--r-- | doc/en_US/api-subtask-procedures.markdown (renamed from doc/api-subtask-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-subtask-time-tracking-procedures.markdown (renamed from doc/api-subtask-time-tracking-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-swimlane-procedures.markdown (renamed from doc/api-swimlane-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-tags-procedures.markdown | 195 | ||||
-rw-r--r-- | doc/en_US/api-task-file-procedures.markdown (renamed from doc/api-task-file-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/api-task-procedures.markdown (renamed from doc/api-task-procedures.markdown) | 22 | ||||
-rw-r--r-- | doc/en_US/api-user-procedures.markdown (renamed from doc/api-user-procedures.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/application-configuration.markdown (renamed from doc/application-configuration.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/assets.markdown (renamed from doc/assets.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/automatic-actions.markdown (renamed from doc/automatic-actions.markdown) | 28 | ||||
-rw-r--r-- | doc/en_US/board-collapsed-expanded.markdown (renamed from doc/board-collapsed-expanded.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/board-configuration.markdown (renamed from doc/board-configuration.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/board-horizontal-scrolling-and-compact-view.markdown (renamed from doc/board-horizontal-scrolling-and-compact-view.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/board-show-hide-columns.markdown (renamed from doc/board-show-hide-columns.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/bruteforce-protection.markdown (renamed from doc/bruteforce-protection.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/calendar-configuration.markdown (renamed from doc/calendar-configuration.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/calendar.markdown (renamed from doc/calendar.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/centos-installation.markdown (renamed from doc/centos-installation.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/cli.markdown (renamed from doc/cli.markdown) | 62 | ||||
-rw-r--r-- | doc/en_US/closing-tasks.markdown (renamed from doc/closing-tasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/cloudron.markdown (renamed from doc/cloudron.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/coding-standards.markdown (renamed from doc/coding-standards.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/config.markdown (renamed from doc/config.markdown) | 19 | ||||
-rw-r--r-- | doc/en_US/contributing.markdown (renamed from doc/contributing.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/create-tasks-by-email.markdown (renamed from doc/create-tasks-by-email.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/creating-projects.markdown (renamed from doc/creating-projects.markdown) | 10 | ||||
-rw-r--r-- | doc/en_US/creating-tasks.markdown (renamed from doc/creating-tasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/cronjob.markdown (renamed from doc/cronjob.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/currency-rate.markdown (renamed from doc/currency-rate.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/custom-filters.markdown (renamed from doc/custom-filters.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/custom-project-roles.markdown (renamed from doc/custom-project-roles.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/debian-installation.markdown (renamed from doc/debian-installation.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/docker.markdown (renamed from doc/docker.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/duplicate-move-tasks.markdown (renamed from doc/duplicate-move-tasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/editing-projects.markdown | 15 | ||||
-rw-r--r-- | doc/en_US/email-configuration.markdown (renamed from doc/email-configuration.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/env.markdown (renamed from doc/env.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/faq.markdown (renamed from doc/faq.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/freebsd-installation.markdown (renamed from doc/freebsd-installation.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/gantt-chart-projects.markdown (renamed from doc/gantt-chart-projects.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/gantt-chart-tasks.markdown (renamed from doc/gantt-chart-tasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/groups.markdown (renamed from doc/groups.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/heroku.markdown (renamed from doc/heroku.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/ical.markdown (renamed from doc/ical.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/index.markdown (renamed from doc/index.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/installation.markdown (renamed from doc/installation.markdown) | 14 | ||||
-rw-r--r-- | doc/en_US/kanban-vs-todo-and-scrum.markdown (renamed from doc/kanban-vs-todo-and-scrum.markdown) | 10 | ||||
-rw-r--r-- | doc/en_US/keyboard-shortcuts.markdown (renamed from doc/keyboard-shortcuts.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/ldap-authentication.markdown (renamed from doc/ldap-authentication.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/ldap-configuration-examples.markdown (renamed from doc/ldap-configuration-examples.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/ldap-group-sync.markdown (renamed from doc/ldap-group-sync.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/ldap-parameters.markdown (renamed from doc/ldap-parameters.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/ldap-profile-picture.markdown (renamed from doc/ldap-profile-picture.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/link-labels.markdown (renamed from doc/link-labels.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/mysql-configuration.markdown (renamed from doc/mysql-configuration.markdown) | 24 | ||||
-rw-r--r-- | doc/en_US/nice-urls.markdown (renamed from doc/nice-urls.markdown) | 45 | ||||
-rw-r--r-- | doc/en_US/notifications.markdown (renamed from doc/notifications.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/performances.markdown (renamed from doc/performances.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-authentication-architecture.markdown (renamed from doc/plugin-authentication-architecture.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-authentication.markdown (renamed from doc/plugin-authentication.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-authorization-architecture.markdown (renamed from doc/plugin-authorization-architecture.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-automatic-actions.markdown (renamed from doc/plugin-automatic-actions.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-avatar-provider.markdown (renamed from doc/plugin-avatar-provider.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-directory.markdown (renamed from doc/plugin-directory.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-events.markdown (renamed from doc/plugin-events.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-external-link.markdown (renamed from doc/plugin-external-link.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-external-tasks.markdown | 76 | ||||
-rw-r--r-- | doc/en_US/plugin-group-provider.markdown (renamed from doc/plugin-group-provider.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-helpers.markdown (renamed from doc/plugin-helpers.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/plugin-hooks.markdown (renamed from doc/plugin-hooks.markdown) | 4 | ||||
-rw-r--r-- | doc/en_US/plugin-ldap-client.markdown (renamed from doc/plugin-ldap-client.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-mail-transports.markdown (renamed from doc/plugin-mail-transports.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-metadata.markdown (renamed from doc/plugin-metadata.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-notifications.markdown (renamed from doc/plugin-notifications.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-overrides.markdown (renamed from doc/plugin-overrides.markdown) | 31 | ||||
-rw-r--r-- | doc/en_US/plugin-registration.markdown (renamed from doc/plugin-registration.markdown) | 32 | ||||
-rw-r--r-- | doc/en_US/plugin-routes.markdown (renamed from doc/plugin-routes.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugin-schema-migrations.markdown (renamed from doc/plugin-schema-migrations.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/plugins.markdown (renamed from doc/plugins.markdown) | 1 | ||||
-rw-r--r-- | doc/en_US/postgresql-configuration.markdown (renamed from doc/postgresql-configuration.markdown) | 8 | ||||
-rw-r--r-- | doc/en_US/project-configuration.markdown (renamed from doc/project-configuration.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/project-permissions.markdown (renamed from doc/project-permissions.markdown) | 12 | ||||
-rw-r--r-- | doc/en_US/project-types.markdown (renamed from doc/project-types.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/project-views.markdown (renamed from doc/project-views.markdown) | 20 | ||||
-rw-r--r-- | doc/en_US/recurring-tasks.markdown (renamed from doc/recurring-tasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/removing-projects.markdown (renamed from doc/removing-projects.markdown) | 4 | ||||
-rw-r--r-- | doc/en_US/requirements.markdown (renamed from doc/requirements.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/reverse-proxy-authentication.markdown (renamed from doc/reverse-proxy-authentication.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/roles.markdown (renamed from doc/roles.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/rss.markdown (renamed from doc/rss.markdown) | 0 | ||||
l--------- | doc/en_US/screenshots | 1 | ||||
-rw-r--r-- | doc/en_US/screenshots.markdown (renamed from doc/screenshots.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/search.markdown (renamed from doc/search.markdown) | 4 | ||||
-rw-r--r-- | doc/en_US/sharing-projects.markdown (renamed from doc/sharing-projects.markdown) | 16 | ||||
-rw-r--r-- | doc/en_US/solving-blank-page-issue.markdown (renamed from doc/solving-blank-page-issue.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/solving-database-migration-issues.markdown (renamed from doc/solving-database-migration-issues.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/solving-session-issue-windows-iis-ie.markdown | 19 | ||||
-rw-r--r-- | doc/en_US/sqlite-database.markdown (renamed from doc/sqlite-database.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/subtasks.markdown (renamed from doc/subtasks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/suse-installation.markdown | 14 | ||||
-rw-r--r-- | doc/en_US/swimlanes.markdown (renamed from doc/swimlanes.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/syntax-guide.markdown (renamed from doc/syntax-guide.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/tags.markdown (renamed from doc/tags.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/task-links.markdown (renamed from doc/task-links.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/tests.markdown (renamed from doc/tests.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/time-tracking.markdown (renamed from doc/time-tracking.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/transitions.markdown (renamed from doc/transitions.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/translations.markdown (renamed from doc/translations.markdown) | 4 | ||||
-rw-r--r-- | doc/en_US/ubuntu-installation.markdown (renamed from doc/ubuntu-installation.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/update.markdown (renamed from doc/update.markdown) | 22 | ||||
-rw-r--r-- | doc/en_US/usage-examples.markdown (renamed from doc/usage-examples.markdown) | 4 | ||||
-rw-r--r-- | doc/en_US/user-management.markdown (renamed from doc/user-management.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/user-mentions.markdown (renamed from doc/user-mentions.markdown) | 2 | ||||
-rw-r--r-- | doc/en_US/user-types.markdown (renamed from doc/user-types.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/vagrant.markdown (renamed from doc/vagrant.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/webhooks.markdown (renamed from doc/webhooks.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/what-is-kanban.markdown (renamed from doc/what-is-kanban.markdown) | 20 | ||||
-rw-r--r-- | doc/en_US/windows-apache-installation.markdown (renamed from doc/windows-apache-installation.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/windows-iis-installation.markdown (renamed from doc/windows-iis-installation.markdown) | 0 | ||||
-rw-r--r-- | doc/en_US/worker.markdown (renamed from doc/worker.markdown) | 4 | ||||
-rwxr-xr-x | doc/es_ES/cli.markdown | 56 | ||||
-rwxr-xr-x | doc/es_ES/cronjob.markdown | 6 | ||||
-rw-r--r-- | doc/es_ES/installation.markdown | 1 | ||||
-rw-r--r-- | doc/es_ES/kanban-vs-todo-and-scrum.markdown | 2 | ||||
-rw-r--r-- | doc/es_ES/translations.markdown | 4 | ||||
-rw-r--r-- | doc/fr_FR/index.markdown | 1 | ||||
-rw-r--r-- | doc/fr_FR/installation.markdown | 1 | ||||
-rw-r--r-- | doc/fr_FR/update.markdown | 21 | ||||
-rw-r--r-- | doc/fr_FR/user-mentions.markdown | 13 | ||||
-rw-r--r-- | doc/nitrous.markdown | 10 | ||||
-rw-r--r-- | doc/ru_RU/cli.markdown | 284 | ||||
-rw-r--r-- | doc/ru_RU/cronjob.markdown | 15 | ||||
-rw-r--r-- | doc/ru_RU/index.markdown | 1 | ||||
-rw-r--r-- | doc/ru_RU/installation.markdown | 1 | ||||
-rw-r--r-- | doc/ru_RU/translations.markdown | 87 | ||||
-rw-r--r-- | doc/screenshots/mention-autocomplete.png | bin | 3066 -> 0 bytes | |||
-rw-r--r-- | doc/screenshots/user-mentions.png | bin | 0 -> 5228 bytes | |||
-rw-r--r-- | doc/tr_TR/2fa.markdown | 33 | ||||
-rw-r--r-- | doc/tr_TR/analytics-tasks.markdown | 24 | ||||
-rw-r--r-- | doc/tr_TR/analytics.markdown | 66 | ||||
-rw-r--r-- | doc/tr_TR/api-json-rpc.markdown | 72 | ||||
-rw-r--r-- | doc/tr_TR/application-configuration.markdown | 45 | ||||
-rw-r--r-- | doc/tr_TR/assets.markdown | 50 | ||||
-rw-r--r-- | doc/tr_TR/automatic-actions.markdown | 108 | ||||
-rw-r--r-- | doc/tr_TR/board-collapsed-expanded.markdown | 18 | ||||
-rw-r--r-- | doc/tr_TR/board-configuration.markdown | 24 | ||||
-rw-r--r-- | doc/tr_TR/board-horizontal-scrolling-and-compact-view.markdown | 10 | ||||
-rw-r--r-- | doc/tr_TR/board-show-hide-columns.markdown | 12 | ||||
-rw-r--r-- | doc/tr_TR/bruteforce-protection.markdown | 35 | ||||
-rw-r--r-- | doc/tr_TR/calendar-configuration.markdown | 44 | ||||
-rw-r--r-- | doc/tr_TR/calendar.markdown | 20 | ||||
-rw-r--r-- | doc/tr_TR/centos-installation.markdown | 83 | ||||
-rw-r--r-- | doc/tr_TR/cli.markdown | 224 | ||||
-rw-r--r-- | doc/tr_TR/closing-tasks.markdown | 16 | ||||
-rw-r--r-- | doc/tr_TR/cloudron.markdown | 26 | ||||
-rw-r--r-- | doc/tr_TR/coding-standards.markdown | 24 | ||||
-rw-r--r-- | doc/tr_TR/config.markdown | 335 | ||||
-rw-r--r-- | doc/tr_TR/contributing.markdown | 70 | ||||
-rw-r--r-- | doc/tr_TR/create-tasks-by-email.markdown | 45 | ||||
-rw-r--r-- | doc/tr_TR/creating-projects.markdown | 39 | ||||
-rw-r--r-- | doc/tr_TR/creating-tasks.markdown | 30 | ||||
-rw-r--r-- | doc/tr_TR/cronjob.markdown | 56 | ||||
-rw-r--r-- | doc/tr_TR/currency-rate.markdown | 11 | ||||
-rw-r--r-- | doc/tr_TR/custom-filters.markdown | 19 | ||||
-rw-r--r-- | doc/tr_TR/custom-project-roles.markdown | 88 | ||||
-rw-r--r-- | doc/tr_TR/debian-installation.markdown | 67 | ||||
-rw-r--r-- | doc/tr_TR/docker.markdown | 96 | ||||
-rw-r--r-- | doc/tr_TR/duplicate-move-tasks.markdown | 58 | ||||
-rw-r--r-- | doc/tr_TR/editing-projects.markdown | 15 | ||||
-rw-r--r-- | doc/tr_TR/email-configuration.markdown | 116 | ||||
-rw-r--r-- | doc/tr_TR/env.markdown | 10 | ||||
-rw-r--r-- | doc/tr_TR/faq.markdown | 128 | ||||
-rw-r--r-- | doc/tr_TR/freebsd-installation.markdown | 126 | ||||
-rw-r--r-- | doc/tr_TR/gantt-chart-projects.markdown | 17 | ||||
-rw-r--r-- | doc/tr_TR/gantt-chart-tasks.markdown | 20 | ||||
-rw-r--r-- | doc/tr_TR/groups.markdown | 17 | ||||
-rw-r--r-- | doc/tr_TR/heroku.markdown | 39 | ||||
-rw-r--r-- | doc/tr_TR/ical.markdown | 78 | ||||
-rw-r--r-- | doc/tr_TR/installation.markdown | 76 | ||||
-rw-r--r-- | doc/tr_TR/kanban-vs-todo-and-scrum.markdown | 37 | ||||
-rw-r--r-- | doc/tr_TR/keyboard-shortcuts.markdown | 38 | ||||
-rw-r--r-- | doc/tr_TR/ldap-authentication.markdown | 185 | ||||
-rw-r--r-- | doc/tr_TR/ldap-configuration-examples.markdown | 222 | ||||
-rw-r--r-- | doc/tr_TR/ldap-group-sync.markdown | 79 | ||||
-rw-r--r-- | doc/tr_TR/ldap-parameters.markdown | 36 | ||||
-rw-r--r-- | doc/tr_TR/ldap-profile-picture.markdown | 27 | ||||
-rw-r--r-- | doc/tr_TR/link-labels.markdown | 11 | ||||
-rw-r--r-- | doc/tr_TR/mysql-configuration.markdown | 72 | ||||
-rw-r--r-- | doc/tr_TR/nice-urls.markdown | 129 | ||||
-rw-r--r-- | doc/tr_TR/notifications.markdown | 46 | ||||
-rw-r--r-- | doc/tr_TR/performances.markdown | 39 | ||||
-rw-r--r-- | doc/tr_TR/plugin-directory.markdown | 16 | ||||
-rw-r--r-- | doc/tr_TR/plugins.markdown | 47 | ||||
-rw-r--r-- | doc/tr_TR/postgresql-configuration.markdown | 51 | ||||
-rw-r--r-- | doc/tr_TR/project-configuration.markdown | 42 | ||||
-rw-r--r-- | doc/tr_TR/project-permissions.markdown | 23 | ||||
-rw-r--r-- | doc/tr_TR/project-types.markdown | 14 | ||||
-rw-r--r-- | doc/tr_TR/project-views.markdown | 58 | ||||
-rw-r--r-- | doc/tr_TR/recurring-tasks.markdown | 25 | ||||
-rw-r--r-- | doc/tr_TR/removing-projects.markdown | 10 | ||||
-rw-r--r-- | doc/tr_TR/requirements.markdown | 108 | ||||
-rw-r--r-- | doc/tr_TR/reverse-proxy-authentication.markdown | 66 | ||||
-rw-r--r-- | doc/tr_TR/roles.markdown | 26 | ||||
-rw-r--r-- | doc/tr_TR/rss.markdown | 24 | ||||
-rw-r--r-- | doc/tr_TR/screenshots.markdown | 25 | ||||
-rw-r--r-- | doc/tr_TR/search.markdown | 189 | ||||
-rw-r--r-- | doc/tr_TR/sharing-projects.markdown | 35 | ||||
-rw-r--r-- | doc/tr_TR/solving-blank-page-issue.markdown | 7 | ||||
-rw-r--r-- | doc/tr_TR/solving-database-migration-issues.markdown | 23 | ||||
-rw-r--r-- | doc/tr_TR/solving-session-issue-windows-iis-ie.markdown | 19 | ||||
-rw-r--r-- | doc/tr_TR/sqlite-database.markdown | 52 | ||||
-rw-r--r-- | doc/tr_TR/subtasks.markdown | 44 | ||||
-rw-r--r-- | doc/tr_TR/suse-installation.markdown (renamed from doc/suse-installation.markdown) | 2 | ||||
-rw-r--r-- | doc/tr_TR/swimlanes.markdown | 31 | ||||
-rw-r--r-- | doc/tr_TR/syntax-guide.markdown | 147 | ||||
-rw-r--r-- | doc/tr_TR/tags.markdown | 28 | ||||
-rw-r--r-- | doc/tr_TR/task-links.markdown | 24 | ||||
-rw-r--r-- | doc/tr_TR/tests.markdown | 158 | ||||
-rw-r--r-- | doc/tr_TR/time-tracking.markdown | 43 | ||||
-rw-r--r-- | doc/tr_TR/transitions.markdown | 14 | ||||
-rw-r--r-- | doc/tr_TR/translations.markdown | 68 | ||||
-rw-r--r-- | doc/tr_TR/ubuntu-installation.markdown | 65 | ||||
-rw-r--r-- | doc/tr_TR/update.markdown | 53 | ||||
-rw-r--r-- | doc/tr_TR/usage-examples.markdown | 67 | ||||
-rw-r--r-- | doc/tr_TR/user-management.markdown | 36 | ||||
-rw-r--r-- | doc/tr_TR/user-mentions.markdown | 17 | ||||
-rw-r--r-- | doc/tr_TR/user-types.markdown | 14 | ||||
-rw-r--r-- | doc/tr_TR/vagrant.markdown | 10 | ||||
-rw-r--r-- | doc/tr_TR/webhooks.markdown | 487 | ||||
-rw-r--r-- | doc/tr_TR/windows-apache-installation.markdown | 130 | ||||
-rw-r--r-- | doc/tr_TR/windows-iis-installation.markdown | 67 | ||||
-rw-r--r-- | doc/tr_TR/worker.markdown | 37 |
254 files changed, 6631 insertions, 507 deletions
diff --git a/doc/editing-projects.markdown b/doc/editing-projects.markdown deleted file mode 100644 index e7fea212..00000000 --- a/doc/editing-projects.markdown +++ /dev/null @@ -1,15 +0,0 @@ -Editing Projects -================ - -Projects can be renamed and disabled at any time. - -To rename a project, just click on the link "Edit project" on the left. - -![Project edition](screenshots/project-edition.png) - -- The start date and end date are used to generate the project Gantt chart -- The description is visible as tooltip on the board and on the projects listing page -- Administrators and project administrators can convert a private project to multiple users project by changing the checkbox "Private project". -- You can also convert multiple users project to a private project. - -Note: When you make a project private, all existing users will still have access to the project. Adjust the list of users according to your needs. diff --git a/doc/2fa.markdown b/doc/en_US/2fa.markdown index ed9b0c99..ed9b0c99 100644 --- a/doc/2fa.markdown +++ b/doc/en_US/2fa.markdown diff --git a/doc/analytics-tasks.markdown b/doc/en_US/analytics-tasks.markdown index 51dc93c7..51dc93c7 100644 --- a/doc/analytics-tasks.markdown +++ b/doc/en_US/analytics-tasks.markdown diff --git a/doc/analytics.markdown b/doc/en_US/analytics.markdown index 8b37762e..8b37762e 100644 --- a/doc/analytics.markdown +++ b/doc/en_US/analytics.markdown diff --git a/doc/api-action-procedures.markdown b/doc/en_US/api-action-procedures.markdown index 377ca56a..377ca56a 100644 --- a/doc/api-action-procedures.markdown +++ b/doc/en_US/api-action-procedures.markdown diff --git a/doc/api-application-procedures.markdown b/doc/en_US/api-application-procedures.markdown index 08474559..08474559 100644 --- a/doc/api-application-procedures.markdown +++ b/doc/en_US/api-application-procedures.markdown diff --git a/doc/api-authentication.markdown b/doc/en_US/api-authentication.markdown index 3ba1e8f5..be536be3 100644 --- a/doc/api-authentication.markdown +++ b/doc/en_US/api-authentication.markdown @@ -17,7 +17,8 @@ Default method (HTTP Basic) ### User credentials -- Use the real username and password +- Username: username +- Password: user password or personal access token The API use the [HTTP Basic Authentication Scheme described in the RFC2617](http://www.ietf.org/rfc/rfc2617.txt). diff --git a/doc/api-board-procedures.markdown b/doc/en_US/api-board-procedures.markdown index 6f8a878e..6f8a878e 100644 --- a/doc/api-board-procedures.markdown +++ b/doc/en_US/api-board-procedures.markdown diff --git a/doc/api-category-procedures.markdown b/doc/en_US/api-category-procedures.markdown index 644c09c6..644c09c6 100644 --- a/doc/api-category-procedures.markdown +++ b/doc/en_US/api-category-procedures.markdown diff --git a/doc/api-column-procedures.markdown b/doc/en_US/api-column-procedures.markdown index c5d2793b..c5d2793b 100644 --- a/doc/api-column-procedures.markdown +++ b/doc/en_US/api-column-procedures.markdown diff --git a/doc/api-comment-procedures.markdown b/doc/en_US/api-comment-procedures.markdown index 5ac25b13..5ac25b13 100644 --- a/doc/api-comment-procedures.markdown +++ b/doc/en_US/api-comment-procedures.markdown diff --git a/doc/api-examples.markdown b/doc/en_US/api-examples.markdown index 14d5db98..14d5db98 100644 --- a/doc/api-examples.markdown +++ b/doc/en_US/api-examples.markdown diff --git a/doc/api-external-task-link-procedures.markdown b/doc/en_US/api-external-task-link-procedures.markdown index 85f67b60..85f67b60 100644 --- a/doc/api-external-task-link-procedures.markdown +++ b/doc/en_US/api-external-task-link-procedures.markdown diff --git a/doc/api-group-member-procedures.markdown b/doc/en_US/api-group-member-procedures.markdown index 1065ba11..1065ba11 100644 --- a/doc/api-group-member-procedures.markdown +++ b/doc/en_US/api-group-member-procedures.markdown diff --git a/doc/api-group-procedures.markdown b/doc/en_US/api-group-procedures.markdown index cb11fb96..cb11fb96 100644 --- a/doc/api-group-procedures.markdown +++ b/doc/en_US/api-group-procedures.markdown diff --git a/doc/api-internal-task-link-procedures.markdown b/doc/en_US/api-internal-task-link-procedures.markdown index eca0d886..eca0d886 100644 --- a/doc/api-internal-task-link-procedures.markdown +++ b/doc/en_US/api-internal-task-link-procedures.markdown diff --git a/doc/api-json-rpc.markdown b/doc/en_US/api-json-rpc.markdown index ab1056f0..fad19466 100644 --- a/doc/api-json-rpc.markdown +++ b/doc/en_US/api-json-rpc.markdown @@ -18,6 +18,7 @@ There are two types of API access: ### User API - Access to the API with the user credentials (username and password) +- You can also generate a personal access token instead of your password - Application role and project permissions are checked for each procedure - A user session is created on the server - Example of possible clients: native mobile/desktop application, command line utility, etc... @@ -62,6 +63,7 @@ Usage - [Task Files](api-task-file-procedures.markdown) - [Project Files](api-project-file-procedures.markdown) - [Links](api-link-procedures.markdown) +- [Tags](api-tags-procedures.markdown) - [Internal Task Links](api-internal-task-link-procedures.markdown) - [External Task Links](api-external-task-link-procedures.markdown) - [Comments](api-comment-procedures.markdown) diff --git a/doc/api-link-procedures.markdown b/doc/en_US/api-link-procedures.markdown index 44e78a2a..44e78a2a 100644 --- a/doc/api-link-procedures.markdown +++ b/doc/en_US/api-link-procedures.markdown diff --git a/doc/api-me-procedures.markdown b/doc/en_US/api-me-procedures.markdown index e90bee61..e90bee61 100644 --- a/doc/api-me-procedures.markdown +++ b/doc/en_US/api-me-procedures.markdown diff --git a/doc/api-project-file-procedures.markdown b/doc/en_US/api-project-file-procedures.markdown index fdc5da1a..fdc5da1a 100644 --- a/doc/api-project-file-procedures.markdown +++ b/doc/en_US/api-project-file-procedures.markdown diff --git a/doc/api-project-permission-procedures.markdown b/doc/en_US/api-project-permission-procedures.markdown index d5e9b066..d5e9b066 100644 --- a/doc/api-project-permission-procedures.markdown +++ b/doc/en_US/api-project-permission-procedures.markdown diff --git a/doc/api-project-procedures.markdown b/doc/en_US/api-project-procedures.markdown index 09000e68..831c4b60 100644 --- a/doc/api-project-procedures.markdown +++ b/doc/en_US/api-project-procedures.markdown @@ -182,6 +182,56 @@ Response example: } ``` +## getProjectByEmail + +- Purpose: **Get project information** +- Parameters: + - **email** (string, required) +- Result on success: **project properties** +- Result on failure: **null** + +Request example: + +```json +{ + "jsonrpc": "2.0", + "method": "getProjectByEmail", + "id": 1620253806, + "params": { + "email": "my_project@my_domain.tld" + } +} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "id": 1620253806, + "result": { + "id": "1", + "name": "Test", + "is_active": "1", + "token": "", + "last_modified": "1436119135", + "is_public": "0", + "is_private": "0", + "is_everybody_allowed": "0", + "default_swimlane": "Default swimlane", + "show_default_swimlane": "1", + "description": "test", + "identifier": "", + "email": "my_project@my_domain.tld", + "url": { + "board": "http:\/\/127.0.0.1:8000\/?controller=board&action=show&project_id=1", + "calendar": "http:\/\/127.0.0.1:8000\/?controller=calendar&action=show&project_id=1", + "list": "http:\/\/127.0.0.1:8000\/?controller=listing&action=show&project_id=1" + } + } +} +``` + ## getAllProjects - Purpose: **Get all available projects** diff --git a/doc/api-subtask-procedures.markdown b/doc/en_US/api-subtask-procedures.markdown index c1dbae37..c1dbae37 100644 --- a/doc/api-subtask-procedures.markdown +++ b/doc/en_US/api-subtask-procedures.markdown diff --git a/doc/api-subtask-time-tracking-procedures.markdown b/doc/en_US/api-subtask-time-tracking-procedures.markdown index 67447623..67447623 100644 --- a/doc/api-subtask-time-tracking-procedures.markdown +++ b/doc/en_US/api-subtask-time-tracking-procedures.markdown diff --git a/doc/api-swimlane-procedures.markdown b/doc/en_US/api-swimlane-procedures.markdown index d7c1e28f..d7c1e28f 100644 --- a/doc/api-swimlane-procedures.markdown +++ b/doc/en_US/api-swimlane-procedures.markdown diff --git a/doc/en_US/api-tags-procedures.markdown b/doc/en_US/api-tags-procedures.markdown new file mode 100644 index 00000000..8d69430c --- /dev/null +++ b/doc/en_US/api-tags-procedures.markdown @@ -0,0 +1,195 @@ +API Tags Procedures +=================== + +getAllTags +---------- + +- Purpose: **Get all tags** +- Parameters: none +- Result on success: **List of tags** +- Result on failure: **false|null** + +Request example: + +```json +{"jsonrpc":"2.0","method":"getAllTags","id":45253426} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": [ + { + "id": "1", + "name": "another tag", + "project_id": "33" + } + ], + "id": 45253426 +} +``` + +getTagsByProject +---------------- + +- Purpose: **Get all tags for a given project** +- Parameters: + - **project_id** (integer) +- Result on success: **List of tags** +- Result on failure: **false|null** + +Request example: + +```json +{"jsonrpc":"2.0","method":"getTagsByProject","id":1217591720,"params":[33]} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": [ + { + "id": "1", + "name": "some tag", + "project_id": "33" + } + ], + "id": 1217591720 +} +``` + +createTag +--------- + +- Purpose: **Create a new tag** +- Parameters: + - **project_id** (integer) + - **tag** (string) +- Result on success: **tag_id** +- Result on failure: **false** + +Request example: + +```json +{"jsonrpc":"2.0","method":"createTag","id":1775436017,"params":[33,"some tag"]} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": 1, + "id": 1775436017 +} +``` + +updateTag +--------- + +- Purpose: **Rename a tag** +- Parameters: + - **tag_id** (integer) + - **tag** (string) +- Result on success: **true** +- Result on failure: **false** + +Request example: + +```json +{"jsonrpc":"2.0","method":"updateTag","id":2037516512,"params":["1","another tag"]} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": true, + "id": 2037516512 +} +``` + +removeTag +--------- + +- Purpose: **removeTag** +- Parameters: + - **tag_id** (integer) +- Result on success: **true** +- Result on failure: **false** + +Request example: + +```json +{"jsonrpc":"2.0","method":"removeTag","id":907581298,"params":["1"]} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": true, + "id": 907581298 +} +``` + +setTaskTags +----------- + +- Purpose: **Assign/Create/Update tags for a task** +- Parameters: + - **project_id** (integer) + - **task_id** (integer) + - **tags** List of tags ([]string) +- Result on success: **true** +- Result on failure: **false** + +Request example: + +```json +{"jsonrpc":"2.0","method":"setTaskTags","id":1524522873,"params":[39,17,["tag1","tag2"]]} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": true, + "id": 1524522873 +} +``` + +getTaskTags +----------- + +- Purpose: **Get assigned tags to a task** +- Parameters: + - **task_id** (integer) +- Result on success: **Dictionary of tags** +- Result on failure: **false|null** + +Request example: + +```json +{"jsonrpc":"2.0","method":"getTaskTags","id":1667157705,"params":[17]} +``` + +Response example: + +```json +{ + "jsonrpc": "2.0", + "result": { + "1": "tag1", + "2": "tag2" + }, + "id": 1667157705 +} +``` diff --git a/doc/api-task-file-procedures.markdown b/doc/en_US/api-task-file-procedures.markdown index 51840bea..51840bea 100644 --- a/doc/api-task-file-procedures.markdown +++ b/doc/en_US/api-task-file-procedures.markdown diff --git a/doc/api-task-procedures.markdown b/doc/en_US/api-task-procedures.markdown index 2897c81a..db106f74 100644 --- a/doc/api-task-procedures.markdown +++ b/doc/en_US/api-task-procedures.markdown @@ -17,11 +17,12 @@ API Task Procedures - **score** (integer, optional) - **swimlane_id** (integer, optional) - **priority** (integer, optional) - - **recurrence_status** (integer, optional) - - **recurrence_trigger** (integer, optional) - - **recurrence_factor** (integer, optional) - - **recurrence_timeframe** (integer, optional) - - **recurrence_basedate** (integer, optional) + - **recurrence_status** (integer, optional) + - **recurrence_trigger** (integer, optional) + - **recurrence_factor** (integer, optional) + - **recurrence_timeframe** (integer, optional) + - **recurrence_basedate** (integer, optional) + - **tags** ([]string, optional) - Result on success: **task_id** - Result on failure: **false** @@ -400,11 +401,12 @@ Response example: - **category_id** (integer, optional) - **score** (integer, optional) - **priority** (integer, optional) - - **recurrence_status** (integer, optional) - - **recurrence_trigger** (integer, optional) - - **recurrence_factor** (integer, optional) - - **recurrence_timeframe** (integer, optional) - - **recurrence_basedate** (integer, optional) + - **recurrence_status** (integer, optional) + - **recurrence_trigger** (integer, optional) + - **recurrence_factor** (integer, optional) + - **recurrence_timeframe** (integer, optional) + - **recurrence_basedate** (integer, optional) + - **tags** ([]string, optional) - Result on success: **true** - Result on failure: **false** diff --git a/doc/api-user-procedures.markdown b/doc/en_US/api-user-procedures.markdown index 6c09355d..6c09355d 100644 --- a/doc/api-user-procedures.markdown +++ b/doc/en_US/api-user-procedures.markdown diff --git a/doc/application-configuration.markdown b/doc/en_US/application-configuration.markdown index f3939555..f3939555 100644 --- a/doc/application-configuration.markdown +++ b/doc/en_US/application-configuration.markdown diff --git a/doc/assets.markdown b/doc/en_US/assets.markdown index 04082c9e..04082c9e 100644 --- a/doc/assets.markdown +++ b/doc/en_US/assets.markdown diff --git a/doc/automatic-actions.markdown b/doc/en_US/automatic-actions.markdown index d109a95b..add62662 100644 --- a/doc/automatic-actions.markdown +++ b/doc/en_US/automatic-actions.markdown @@ -1,15 +1,15 @@ Automatic Actions ================= -To minimize the user interaction, Kanboard support automated actions. +To minimize user interaction, Kanboard support automated actions. -Each automatic action is defined like that: +Each automatic action is defined with these properties: - An event to listen -- Action linked to this event -- Eventually there is some parameters to define +- Action linked to the event +- Additional parameters -Each project has a different set of automatic actions, the configuration panel is located on the project listing page, just click on the link **Automatic actions**. +Each project has a different set of automatic actions. The configuration panel is located on the project listing page - just click on the link **Automatic actions**. Add a new action ---------------- @@ -18,19 +18,19 @@ Click on the link **Add a new automatic action**. ![Automatique action](screenshots/automatic-action-creation.png) -- Choose an action -- Then, select an event -- And finally, define the parameters +1. Choose an action +2. Select an event +3. Define the parameters -List of available actions +Available actions ------------------------- - Create a comment from an external provider - Add a comment log when moving the task between columns -- Assign automatically a category based on a color +- Automatically assign a category based on a color - Change the category based on an external label -- Assign automatically a category based on a link -- Assign automatically a color based on a category +- Automatically assign a category based on a link +- Automatically assign a color based on a category - Assign a color when the task is moved to a specific column - Change task color when using a specific task link - Assign a color to a specific user @@ -75,7 +75,7 @@ Here are some examples used in real life: ### When a task is completed, duplicate this task to another project -Let's say we have two projects "Customer orders" and "Production", once the order is validated, swap it to the "Production" project. +Let's say we have two projects: "Customer orders" and "Production". Once the order is validated, swap it to the "Production" project. - Choose action: **Duplicate the task to another project** - Choose the event: **Closing a task** @@ -83,7 +83,7 @@ Let's say we have two projects "Customer orders" and "Production", once the orde ### When a task is moved to the last column, move the exact same task to another project -Let's say we have two projects "Ideas" and "Development", once the idea is validated, swap it to the "Development" project. +Let's say we have two projects: "Ideas" and "Development". Once the idea is validated, swap it to the "Development" project. - Choose action: **Move the task to another project** - Choose the event: **Move a task to another column** diff --git a/doc/board-collapsed-expanded.markdown b/doc/en_US/board-collapsed-expanded.markdown index 0164da95..aeffcf10 100644 --- a/doc/board-collapsed-expanded.markdown +++ b/doc/en_US/board-collapsed-expanded.markdown @@ -9,7 +9,7 @@ Collapsed mode ![Tasks collapsed](screenshots/board-collapsed-mode.png) -- If the task is assigned to someone, the initials of the person are shown next to the task number +- If the task is assigned to someone, the initials of the person are shown next to the task number. - If the task title is too long, you can put your mouse over the task to show a tooltip with the full title. Expanded mode diff --git a/doc/board-configuration.markdown b/doc/en_US/board-configuration.markdown index 3daebf74..3daebf74 100644 --- a/doc/board-configuration.markdown +++ b/doc/en_US/board-configuration.markdown diff --git a/doc/board-horizontal-scrolling-and-compact-view.markdown b/doc/en_US/board-horizontal-scrolling-and-compact-view.markdown index 51885529..51885529 100644 --- a/doc/board-horizontal-scrolling-and-compact-view.markdown +++ b/doc/en_US/board-horizontal-scrolling-and-compact-view.markdown diff --git a/doc/board-show-hide-columns.markdown b/doc/en_US/board-show-hide-columns.markdown index 113298d3..0da2d28d 100644 --- a/doc/board-show-hide-columns.markdown +++ b/doc/en_US/board-show-hide-columns.markdown @@ -9,4 +9,4 @@ To hide a column, click on the column dropdown menu and choose "Hide this column ![Show a column](screenshots/show-column.png) -To show again the column, click on the "plus icon". +To show the column again, click on the "plus icon". diff --git a/doc/bruteforce-protection.markdown b/doc/en_US/bruteforce-protection.markdown index 2f75b919..2f75b919 100644 --- a/doc/bruteforce-protection.markdown +++ b/doc/en_US/bruteforce-protection.markdown diff --git a/doc/calendar-configuration.markdown b/doc/en_US/calendar-configuration.markdown index 8181ab82..8181ab82 100644 --- a/doc/calendar-configuration.markdown +++ b/doc/en_US/calendar-configuration.markdown diff --git a/doc/calendar.markdown b/doc/en_US/calendar.markdown index 92e617f6..92e617f6 100644 --- a/doc/calendar.markdown +++ b/doc/en_US/calendar.markdown diff --git a/doc/centos-installation.markdown b/doc/en_US/centos-installation.markdown index 1d83aef0..1d83aef0 100644 --- a/doc/centos-installation.markdown +++ b/doc/en_US/centos-installation.markdown diff --git a/doc/cli.markdown b/doc/en_US/cli.markdown index 37cc7ee8..b1722308 100644 --- a/doc/cli.markdown +++ b/doc/en_US/cli.markdown @@ -10,7 +10,7 @@ Usage ----- - Open a terminal and go to your Kanboard directory (example: `cd /var/www/kanboard`) -- Run the command `./kanboard` +- Run the command `./cli` or `php cli` ```bash Kanboard version master @@ -30,8 +30,12 @@ Options: Available commands: cronjob Execute daily cronjob help Displays help for a command + job Execute individual job (read payload from stdin) list Lists commands worker Execute queue worker + db + db:migrate Execute SQL migrations + db:version Show database schema version export export:daily-project-column-stats Daily project column stats CSV export (number of tasks per column and per day) export:subtasks Subtasks CSV export @@ -63,13 +67,13 @@ Available commands Usage: ```bash -./kanboard export:tasks <project_id> <start_date> <end_date> +./cli export:tasks <project_id> <start_date> <end_date> ``` Example: ```bash -./kanboard export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` CSV data are sent to `stdout`. @@ -79,13 +83,13 @@ CSV data are sent to `stdout`. Usage: ```bash -./kanboard export:subtasks <project_id> <start_date> <end_date> +./cli export:subtasks <project_id> <start_date> <end_date> ``` Example: ```bash -./kanboard export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` ### Task transitions CSV export @@ -93,13 +97,13 @@ Example: Usage: ```bash -./kanboard export:transitions <project_id> <start_date> <end_date> +./cli export:transitions <project_id> <start_date> <end_date> ``` Example: ```bash -./kanboard export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` ### Export daily summaries data in CSV @@ -107,13 +111,13 @@ Example: The exported data will be printed on the standard output: ```bash -./kanboard export:daily-project-column-stats <project_id> <start_date> <end_date> +./cli export:daily-project-column-stats <project_id> <start_date> <end_date> ``` Example: ```bash -./kanboard export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` ### Send notifications for overdue tasks @@ -121,7 +125,7 @@ Example: Emails will be sent to all users with notifications enabled. ```bash -./kanboard notification:overdue-tasks +./cli notification:overdue-tasks ``` Optional parameters: @@ -147,7 +151,7 @@ You can also display the overdue tasks with the flag `--show`: This command calculate the statistics of each project: ```bash -./kanboard projects:daily-stats +./cli projects:daily-stats Run calculation for Project #0 Run calculation for Project #1 Run calculation for Project #10 @@ -158,14 +162,14 @@ Run calculation for Project #10 This command send a "daily cronjob event" to all open tasks of each project. ```bash -./kanboard trigger:tasks +./cli trigger:tasks Trigger task event: project_id=2, nb_tasks=1 ``` ### Reset user password ```bash -./kanboard user:reset-password my_user +./cli user:reset-password my_user ``` You will be prompted for a password and confirmation. Characters are not printed to the screen. @@ -173,13 +177,13 @@ You will be prompted for a password and confirmation. Characters are not printed ### Remove two-factor authentication for a user ```bash -./kanboard user:reset-2fa my_user +./cli user:reset-2fa my_user ``` ### Install a plugin ```bash -./kanboard plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip +./cli plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip ``` Note: Installed files will have the same permissions as the current user @@ -187,13 +191,13 @@ Note: Installed files will have the same permissions as the current user ### Remove a plugin ```bash -./kanboard plugin:uninstall Budget +./cli plugin:uninstall Budget ``` ### Upgrade all plugins ```bash -./kanboard plugin:upgrade +./cli plugin:upgrade * Updating plugin: Budget Planning * Plugin up to date: Github Authentication ``` @@ -201,5 +205,27 @@ Note: Installed files will have the same permissions as the current user ### Run Background worker ```bash -./kanboard worker +./cli worker +``` + +### Execute individual job (mostly for debugging) + +```bash +echo 'RAW_JOB_DATA' | ./cli job +``` + +### Execute database migrations + +If the parameter `DB_RUN_MIGRATIONS` is set to `false`, you have run the database migrations manually: + +```bash +./cli db:migrate +``` + +### Check database schema version + +```bash +./cli db:version +Current version: 95 +Last version: 96 ``` diff --git a/doc/closing-tasks.markdown b/doc/en_US/closing-tasks.markdown index d82deee3..d82deee3 100644 --- a/doc/closing-tasks.markdown +++ b/doc/en_US/closing-tasks.markdown diff --git a/doc/cloudron.markdown b/doc/en_US/cloudron.markdown index c79d0441..c79d0441 100644 --- a/doc/cloudron.markdown +++ b/doc/en_US/cloudron.markdown diff --git a/doc/coding-standards.markdown b/doc/en_US/coding-standards.markdown index 0ee3ecd6..0ee3ecd6 100644 --- a/doc/coding-standards.markdown +++ b/doc/en_US/coding-standards.markdown diff --git a/doc/config.markdown b/doc/en_US/config.markdown index 853fa6f2..4ccaec27 100644 --- a/doc/config.markdown +++ b/doc/en_US/config.markdown @@ -30,6 +30,12 @@ Enable/disable plugin installation from the user interface: define('PLUGIN_INSTALLER', true); // Default is true ``` +Change default plugin directory URL: + +```php +define('PLUGIN_API_URL', 'https://kanboard.net/plugins.json'); +``` + Folder for uploaded files ------------------------- @@ -59,7 +65,10 @@ Email configuration ------------------- ```php -// E-mail address for the "From" header (notifications) +// Enable/disable email configuration from the user interface +define('MAIL_CONFIGURATION', true); + +// E-mail address used for the "From" header (notifications) define('MAIL_FROM', 'notifications@kanboard.local'); // Mail transport to use: "smtp", "sendmail" or "mail" (PHP mail function) @@ -80,6 +89,11 @@ Database settings ----------------- ```php +// Run automatically database migrations +// If set to false, you will have to run manually the SQL migrations from the CLI during the next Kanboard upgrade +// Do not run the migrations from multiple processes at the same time (example: web page + background worker) +define('DB_RUN_MIGRATIONS', true); + // Database driver: sqlite, mysql or postgres (sqlite by default) define('DB_DRIVER', 'sqlite'); @@ -315,4 +329,7 @@ define('DISABLE_LOGOUT', false); // Override API token stored in the database, useful for automated tests define('API_AUTHENTICATION_TOKEN', 'My unique API Token'); + +// TOTP (2FA) issuer name +define('TOTP_ISSUER', 'Kanboard'); ``` diff --git a/doc/contributing.markdown b/doc/en_US/contributing.markdown index a08fa591..a08fa591 100644 --- a/doc/contributing.markdown +++ b/doc/en_US/contributing.markdown diff --git a/doc/create-tasks-by-email.markdown b/doc/en_US/create-tasks-by-email.markdown index b46e5797..b46e5797 100644 --- a/doc/create-tasks-by-email.markdown +++ b/doc/en_US/create-tasks-by-email.markdown diff --git a/doc/creating-projects.markdown b/doc/en_US/creating-projects.markdown index 373d93eb..05d5b20c 100644 --- a/doc/creating-projects.markdown +++ b/doc/en_US/creating-projects.markdown @@ -16,24 +16,24 @@ From the dashboard, click on the link **New project**: ![Project creation form](screenshots/new-project.png) -It's very easy, you just have to find a name for your project! +It's very easy: you just have to find a name for your project! Creating a private project -------------------------- -- Everybody can create a private project +- Anybody can create a private project - There is **NO** user management -- Only the owner and administrators can access to the project +- Only the owner and administrators can access the project From the dashboard, click on the link **New private project**. Creating projects from another project -------------------------------------- -When you create a new project, your can choose to duplicate the properties of another project : +When you create a new project, you can choose to duplicate the properties of another project: - Permissions - Actions - Swimlanes -- Catégories +- Categories - Tasks diff --git a/doc/creating-tasks.markdown b/doc/en_US/creating-tasks.markdown index 99dce713..99dce713 100644 --- a/doc/creating-tasks.markdown +++ b/doc/en_US/creating-tasks.markdown diff --git a/doc/cronjob.markdown b/doc/en_US/cronjob.markdown index 780f0025..743aac95 100644 --- a/doc/cronjob.markdown +++ b/doc/en_US/cronjob.markdown @@ -25,7 +25,7 @@ sudo crontab -u www-data -e Example to execute the daily cronjob at 8am: ```bash -0 8 * * * cd /path/to/kanboard && ./kanboard cronjob >/dev/null 2>&1 +0 8 * * * cd /path/to/kanboard && ./cli cronjob >/dev/null 2>&1 ``` Note: the cronjob process must have write access to the database in case you are using Sqlite. diff --git a/doc/currency-rate.markdown b/doc/en_US/currency-rate.markdown index 9cd78253..9cd78253 100644 --- a/doc/currency-rate.markdown +++ b/doc/en_US/currency-rate.markdown diff --git a/doc/custom-filters.markdown b/doc/en_US/custom-filters.markdown index b3d8ef57..b3d8ef57 100644 --- a/doc/custom-filters.markdown +++ b/doc/en_US/custom-filters.markdown diff --git a/doc/custom-project-roles.markdown b/doc/en_US/custom-project-roles.markdown index 40c28e7a..40c28e7a 100644 --- a/doc/custom-project-roles.markdown +++ b/doc/en_US/custom-project-roles.markdown diff --git a/doc/debian-installation.markdown b/doc/en_US/debian-installation.markdown index 0fe72f4c..0fe72f4c 100644 --- a/doc/debian-installation.markdown +++ b/doc/en_US/debian-installation.markdown diff --git a/doc/docker.markdown b/doc/en_US/docker.markdown index 5b77da76..5b77da76 100644 --- a/doc/docker.markdown +++ b/doc/en_US/docker.markdown diff --git a/doc/duplicate-move-tasks.markdown b/doc/en_US/duplicate-move-tasks.markdown index 2536ab88..2536ab88 100644 --- a/doc/duplicate-move-tasks.markdown +++ b/doc/en_US/duplicate-move-tasks.markdown diff --git a/doc/en_US/editing-projects.markdown b/doc/en_US/editing-projects.markdown new file mode 100644 index 00000000..c9c1a5a0 --- /dev/null +++ b/doc/en_US/editing-projects.markdown @@ -0,0 +1,15 @@ +Editing Projects +================ + +Projects can be renamed or disabled at any time. + +To rename a project, just click on the link entitled "Edit project" on the left. + +![Project edition](screenshots/project-edition.png) + +- The start date and end date are used to generate the project Gantt chart. +- The description is visible as a tooltip on the board and on the projects listing page. +- Administrators and project administrators can convert a private project to a multiple-user project by changing the checkbox "Private project". +- You can also convert a multiple-user project to a private project. + +Note: When you make a project private, all existing users will still have access to the project. You can adjust the list of users according to your needs. diff --git a/doc/email-configuration.markdown b/doc/en_US/email-configuration.markdown index 61d5980a..61d5980a 100644 --- a/doc/email-configuration.markdown +++ b/doc/en_US/email-configuration.markdown diff --git a/doc/env.markdown b/doc/en_US/env.markdown index 902066d7..902066d7 100644 --- a/doc/env.markdown +++ b/doc/en_US/env.markdown diff --git a/doc/faq.markdown b/doc/en_US/faq.markdown index 412bbe9b..412bbe9b 100644 --- a/doc/faq.markdown +++ b/doc/en_US/faq.markdown diff --git a/doc/freebsd-installation.markdown b/doc/en_US/freebsd-installation.markdown index 7b36dff1..7b36dff1 100644 --- a/doc/freebsd-installation.markdown +++ b/doc/en_US/freebsd-installation.markdown diff --git a/doc/gantt-chart-projects.markdown b/doc/en_US/gantt-chart-projects.markdown index 80d4b92c..80d4b92c 100644 --- a/doc/gantt-chart-projects.markdown +++ b/doc/en_US/gantt-chart-projects.markdown diff --git a/doc/gantt-chart-tasks.markdown b/doc/en_US/gantt-chart-tasks.markdown index 42b45835..42b45835 100644 --- a/doc/gantt-chart-tasks.markdown +++ b/doc/en_US/gantt-chart-tasks.markdown diff --git a/doc/groups.markdown b/doc/en_US/groups.markdown index 16f7ed0b..16f7ed0b 100644 --- a/doc/groups.markdown +++ b/doc/en_US/groups.markdown diff --git a/doc/heroku.markdown b/doc/en_US/heroku.markdown index 1891efb0..1891efb0 100644 --- a/doc/heroku.markdown +++ b/doc/en_US/heroku.markdown diff --git a/doc/ical.markdown b/doc/en_US/ical.markdown index 2105813e..2105813e 100644 --- a/doc/ical.markdown +++ b/doc/en_US/ical.markdown diff --git a/doc/index.markdown b/doc/en_US/index.markdown index 54010d0c..09b39d9f 100644 --- a/doc/index.markdown +++ b/doc/en_US/index.markdown @@ -89,6 +89,7 @@ Using Kanboard - [Solving database migration issues](solving-database-migration-issues.markdown) - [Blank page after upgrading](solving-blank-page-issue.markdown) +- [Unable to open a session on Windows IIS and Internet Explorer](solving-session-issue-windows-iis-ie.markdown) - [Performances](performances.markdown) Technical details @@ -110,7 +111,6 @@ Technical details - [Run Kanboard with Docker](docker.markdown) - [Run Kanboard with Vagrant](vagrant.markdown) - [Run Kanboard on Cloudron](cloudron.markdown) -- [Run Kanboard on Nitrous](nitrous.markdown) ### Configuration diff --git a/doc/installation.markdown b/doc/en_US/installation.markdown index 67b010a9..d8969c1c 100644 --- a/doc/installation.markdown +++ b/doc/en_US/installation.markdown @@ -21,7 +21,7 @@ The `data` folder is used to store: - Uploaded files: `files/*` - Image thumbnails: `files/thumbnails/*` -People who are using a remote database (Mysql/Postgresql) and a remote file 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 permission. From the git repository (development version) --------------------------------------------- @@ -42,6 +42,7 @@ If you would like to install Kanboard outside of the web server document root, y ```bash . ├── assets -> ../kanboard/assets +├── cli -> ../kanboard/cli ├── doc -> ../kanboard/doc ├── favicon.ico -> ../kanboard/favicon.ico ├── index.php -> ../kanboard/index.php @@ -53,7 +54,16 @@ The `.htaccess` is optional because its content can be included directly in the You can also define a custom location for the plugins and files folders by changing the [config file](config.markdown). -Optional installation + +Other Database Types +-------------------- + +Kanboard supports Mysql and Postgres as alternative to Sqlite. + +- [Mysql configuration](mysql-configuration.markdown) +- [Postgres configuration](postgresql-configuration.markdown) + +Optional Installation --------------------- - Some features of Kanboard require that you run [a daily background job](cronjob.markdown) (Reports and analytics) diff --git a/doc/kanban-vs-todo-and-scrum.markdown b/doc/en_US/kanban-vs-todo-and-scrum.markdown index 4e083ff8..ea97811c 100644 --- a/doc/kanban-vs-todo-and-scrum.markdown +++ b/doc/en_US/kanban-vs-todo-and-scrum.markdown @@ -11,8 +11,8 @@ Kanban vs Todo lists ### Kanban: -- Multiple phases, each column represent a step -- Bring focus and avoid multitasking because you can set a work in progress limit per column +- Multiple phases, each column represents a step +- Bring focus and avoid multitasking by setting a work-in-progress limit per column Kanban vs Scrum --------------- @@ -23,15 +23,15 @@ Kanban vs Scrum - Do not allow changes during the iteration - Estimation is required - Uses velocity as default metric -- Scrum board is cleared between each sprint +- Scrum board is cleared between sprints - Scrum has pre-defined roles like scrum master, product owners and the team - A lot of meetings: planning, backlogs grooming, daily stand-up, retrospective ### Kanban: - Continuous flow -- Changes can be made at anytime +- Changes can be made at any time - Estimation is optional - Use lead and cycle time to measure performance - Kanban board is persistent -- Kanban doesn't impose strict constraints or meetings, process is more flexible +- Kanban doesn't impose strict constraints or meetings; process is more flexible diff --git a/doc/keyboard-shortcuts.markdown b/doc/en_US/keyboard-shortcuts.markdown index 71612415..71612415 100644 --- a/doc/keyboard-shortcuts.markdown +++ b/doc/en_US/keyboard-shortcuts.markdown diff --git a/doc/ldap-authentication.markdown b/doc/en_US/ldap-authentication.markdown index e994c149..e994c149 100644 --- a/doc/ldap-authentication.markdown +++ b/doc/en_US/ldap-authentication.markdown diff --git a/doc/ldap-configuration-examples.markdown b/doc/en_US/ldap-configuration-examples.markdown index a8ad2b61..a8ad2b61 100644 --- a/doc/ldap-configuration-examples.markdown +++ b/doc/en_US/ldap-configuration-examples.markdown diff --git a/doc/ldap-group-sync.markdown b/doc/en_US/ldap-group-sync.markdown index b519146b..b519146b 100644 --- a/doc/ldap-group-sync.markdown +++ b/doc/en_US/ldap-group-sync.markdown diff --git a/doc/ldap-parameters.markdown b/doc/en_US/ldap-parameters.markdown index 80decc67..80decc67 100644 --- a/doc/ldap-parameters.markdown +++ b/doc/en_US/ldap-parameters.markdown diff --git a/doc/ldap-profile-picture.markdown b/doc/en_US/ldap-profile-picture.markdown index 4798f645..4798f645 100644 --- a/doc/ldap-profile-picture.markdown +++ b/doc/en_US/ldap-profile-picture.markdown diff --git a/doc/link-labels.markdown b/doc/en_US/link-labels.markdown index f2f8701e..f2f8701e 100644 --- a/doc/link-labels.markdown +++ b/doc/en_US/link-labels.markdown diff --git a/doc/mysql-configuration.markdown b/doc/en_US/mysql-configuration.markdown index 9d60271c..c199353e 100644 --- a/doc/mysql-configuration.markdown +++ b/doc/en_US/mysql-configuration.markdown @@ -1,23 +1,23 @@ -Mysql/MariaDB Configuration +MySQL/MariaDB Configuration =========================== By default Kanboard use Sqlite to stores its data. -However it's possible to use Mysql or MariaDB instead of Sqlite. +However it's possible to use MySQL or MariaDB instead of Sqlite. Requirements ------------ -- Mysql server +- MySQL server - The PHP extension `pdo_mysql` installed -Note: Kanboard is tested with **Mysql >= 5.5 and MariaDB >= 10.0** +Note: Kanboard is tested with **MySQL >= 5.5 and MariaDB >= 10.0** -Mysql configuration +MySQL configuration ------------------- ### Create a database -The first step is to create a database on your Mysql server. +The first step is to create a database on your MySQL server. By example, you can do that with the command line mysql client: ```sql @@ -31,10 +31,10 @@ The file `config.php` should contains those values: ```php <?php -// We choose to use Mysql instead of Sqlite +// We choose to use MySQL instead of Sqlite define('DB_DRIVER', 'mysql'); -// Mysql parameters +// MySQL parameters define('DB_USERNAME', 'REPLACE_ME'); define('DB_PASSWORD', 'REPLACE_ME'); define('DB_HOSTNAME', 'REPLACE_ME'); @@ -58,15 +58,15 @@ The file `app/Schema/Sql/mysql.sql` is a SQL dump that represents the last versi SSL configuration ----------------- -These parameters have to be defined to enable the Mysql SSL connection: +These parameters have to be defined to enable the MySQL SSL connection: ```php -// Mysql SSL key +// MySQL SSL key define('DB_SSL_KEY', '/path/to/client-key.pem'); -// Mysql SSL certificate +// MySQL SSL certificate define('DB_SSL_CERT', '/path/to/client-cert.pem'); -// Mysql SSL CA +// MySQL SSL CA define('DB_SSL_CA', '/path/to/ca-cert.pem'); ``` diff --git a/doc/nice-urls.markdown b/doc/en_US/nice-urls.markdown index bfea719d..a054e85d 100644 --- a/doc/nice-urls.markdown +++ b/doc/en_US/nice-urls.markdown @@ -85,6 +85,51 @@ In your Kanboard `config.php`: define('ENABLE_URL_REWRITE', true); ``` +Another example with Kanboard in a subfolder: + +``` +server { + listen 443 ssl default_server; + listen [::]:443 ssl default_server; + + root /var/www/html; + index index.php index.html index.htm; + server_name _; + + location / { + try_files $uri $uri/ =404; + } + + location ^~ /kanboard { + + location /kanboard { + try_files $uri $uri/ /kanboard/index.php$is_args$args; + } + + location ~ ^/kanboard/(?:kanboard|config.php|config.default.php) { + deny all; + } + + location ~* /kanboard/data { + deny all; + } + + location ~ \.php(?:$|/) { + fastcgi_split_path_info ^(.+\.php)(/.+)$; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param HTTPS on; # Use only if HTTPS is configured + include fastcgi_params; + fastcgi_pass unix:/var/run/php5-fpm.sock; + } + + location ~ /kanboard/\.ht { + deny all; + } + } +} +``` + Adapt the example above according to your own configuration. IIS configuration example diff --git a/doc/notifications.markdown b/doc/en_US/notifications.markdown index 824ed7fd..824ed7fd 100644 --- a/doc/notifications.markdown +++ b/doc/en_US/notifications.markdown diff --git a/doc/performances.markdown b/doc/en_US/performances.markdown index 7b006bf8..7b006bf8 100644 --- a/doc/performances.markdown +++ b/doc/en_US/performances.markdown diff --git a/doc/plugin-authentication-architecture.markdown b/doc/en_US/plugin-authentication-architecture.markdown index d357c933..d357c933 100644 --- a/doc/plugin-authentication-architecture.markdown +++ b/doc/en_US/plugin-authentication-architecture.markdown diff --git a/doc/plugin-authentication.markdown b/doc/en_US/plugin-authentication.markdown index e1ca6f01..e1ca6f01 100644 --- a/doc/plugin-authentication.markdown +++ b/doc/en_US/plugin-authentication.markdown diff --git a/doc/plugin-authorization-architecture.markdown b/doc/en_US/plugin-authorization-architecture.markdown index 24acee17..24acee17 100644 --- a/doc/plugin-authorization-architecture.markdown +++ b/doc/en_US/plugin-authorization-architecture.markdown diff --git a/doc/plugin-automatic-actions.markdown b/doc/en_US/plugin-automatic-actions.markdown index b309fac9..b309fac9 100644 --- a/doc/plugin-automatic-actions.markdown +++ b/doc/en_US/plugin-automatic-actions.markdown diff --git a/doc/plugin-avatar-provider.markdown b/doc/en_US/plugin-avatar-provider.markdown index 62941e5c..62941e5c 100644 --- a/doc/plugin-avatar-provider.markdown +++ b/doc/en_US/plugin-avatar-provider.markdown diff --git a/doc/plugin-directory.markdown b/doc/en_US/plugin-directory.markdown index 385e3360..385e3360 100644 --- a/doc/plugin-directory.markdown +++ b/doc/en_US/plugin-directory.markdown diff --git a/doc/plugin-events.markdown b/doc/en_US/plugin-events.markdown index f4db8ff3..f4db8ff3 100644 --- a/doc/plugin-events.markdown +++ b/doc/en_US/plugin-events.markdown diff --git a/doc/plugin-external-link.markdown b/doc/en_US/plugin-external-link.markdown index 36252aff..36252aff 100644 --- a/doc/plugin-external-link.markdown +++ b/doc/en_US/plugin-external-link.markdown diff --git a/doc/en_US/plugin-external-tasks.markdown b/doc/en_US/plugin-external-tasks.markdown new file mode 100644 index 00000000..0701ea38 --- /dev/null +++ b/doc/en_US/plugin-external-tasks.markdown @@ -0,0 +1,76 @@ +External Task Providers +======================= + +Kanboard can be used to manage tasks stored in another system. +For example, an external system can be a bug tracker or any kind of ticketing software. +In this way, you can use Kanboard to manage external tasks in the same way as native tasks. + +Workflow +-------- + +Creation: + +1. The end-user select an alternative task provider during the task creation +2. The external task provider expose a form to the user to be able to fetch the external task +3. The external task is retrieved from the other system +4. A customized form is shown to the user + +Visualization: + +When the task detail page is opened, Kanboard will load asynchronously the remote task. +This information might be cached by the plugin to improve the loading time. + +Modification: + +Optionally, the plugin can offer a custom form to save extra information to the external system. + +Interfaces +---------- + +External task providers must implements at least two interfaces: + +- `Kanboard\Core\ExternalTask\ExternalTaskProviderInterface` +- `Kanboard\Core\ExternalTask\ExternalTaskInterface` + +### ExternalTaskProviderInterface + +| Method | Usage | +|----------------------------------------------------|-----------------------------------------------------------------| +| `getName()` | Get provider name (label) | +| `fetch()` | Retrieve task from external system or cache | +| `save($uri, array $formValues, array &$formErrors)`| Save external task to another system | +| `getImportFormTemplate()` | Get task import template name | +| `getCreationFormTemplate()` | Get creation form template | +| `getModificationFormTemplate()` | Get modification form template | +| `getViewTemplate()` | Get task view template name | +| `buildTaskUri(array $formValues)` | Build external task URI based on import form values | + +### ExternalTaskInterface + +| Method | Usage | +|---------------------------------------------------|-----------------------------------------------------------------| +| `getUri()` | Return Uniform Resource Identifier for the task | +| `getFormValues()` | Return a dict to populate the task form | + + +Exceptions +---------- + +The plugin may raise an exception if something goes wrong: + +- `Kanboard\Core\ExternalTask\ExternalTaskException`: Generic error related to the external system +- `Kanboard\Core\ExternalTask\AccessForbiddenException`: Access not allowed by the external system +- `Kanboard\Core\ExternalTask\NotFoundException`: External task not found + +Provider Registration +--------------------- + +```php +class Plugin extends Base +{ + public function initialize() + { + $this->externalTaskManager->register(new MyExternalTaskProvider()); + } +} +``` diff --git a/doc/plugin-group-provider.markdown b/doc/en_US/plugin-group-provider.markdown index 31c61aaf..31c61aaf 100644 --- a/doc/plugin-group-provider.markdown +++ b/doc/en_US/plugin-group-provider.markdown diff --git a/doc/plugin-helpers.markdown b/doc/en_US/plugin-helpers.markdown index 8cc6b42a..d65467f8 100644 --- a/doc/plugin-helpers.markdown +++ b/doc/en_US/plugin-helpers.markdown @@ -6,7 +6,7 @@ Helper skeleton: ```php <?php -namespace Kanboard\Plugin\MyPlugin\Helper\MyHelper; +namespace Kanboard\Plugin\MyPlugin\Helper; use Kanboard\Core\Base; diff --git a/doc/plugin-hooks.markdown b/doc/en_US/plugin-hooks.markdown index 8f1a3bb7..23750ff7 100644 --- a/doc/plugin-hooks.markdown +++ b/doc/en_US/plugin-hooks.markdown @@ -202,6 +202,7 @@ List of template hooks: | `template:board:task:footer` | Task in board: footer | | `template:board:task:icons` | Task in board: tooltip icon | | `template:board:column:dropdown` | Dropdown menu in board columns | +| `template:board:column:header` | Board column header | | `template:board:tooltip:subtasks:header:before-assignee` | Header of Subtask table on tootip before Assignee | | `template:board:tooltip:subtasks:rows` | Column on row of Subtask table on tooltip | | `template:config:sidebar` | Sidebar on settings page | @@ -212,8 +213,6 @@ List of template hooks: | `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:export:sidebar` | Sidebar on export pages | -| `template:import:sidebar` | Sidebar on import pages | | `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 | @@ -227,6 +226,7 @@ List of template hooks: | `template:project-user:sidebar` | Sidebar on project user overview page | | `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: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/plugin-ldap-client.markdown b/doc/en_US/plugin-ldap-client.markdown index 312eea71..312eea71 100644 --- a/doc/plugin-ldap-client.markdown +++ b/doc/en_US/plugin-ldap-client.markdown diff --git a/doc/plugin-mail-transports.markdown b/doc/en_US/plugin-mail-transports.markdown index 33ce5e3b..33ce5e3b 100644 --- a/doc/plugin-mail-transports.markdown +++ b/doc/en_US/plugin-mail-transports.markdown diff --git a/doc/plugin-metadata.markdown b/doc/en_US/plugin-metadata.markdown index 49da0ac1..49da0ac1 100644 --- a/doc/plugin-metadata.markdown +++ b/doc/en_US/plugin-metadata.markdown diff --git a/doc/plugin-notifications.markdown b/doc/en_US/plugin-notifications.markdown index 868f6aef..868f6aef 100644 --- a/doc/plugin-notifications.markdown +++ b/doc/en_US/plugin-notifications.markdown diff --git a/doc/plugin-overrides.markdown b/doc/en_US/plugin-overrides.markdown index 96a09e47..3b94bd60 100644 --- a/doc/plugin-overrides.markdown +++ b/doc/en_US/plugin-overrides.markdown @@ -40,3 +40,34 @@ You can still use the original template using the "kanboard:" prefix: ```php <?= $this->render('kanboard:header') ?> ``` + +Formatter Overrides +------------------- + +Here an example to override formatter objects in Kanboard: + +```php +class MyFormatter extends UserAutoCompleteFormatter +{ + public function format() + { + $users = parent::format(); + + foreach ($users as &$user) { + $user['label'] = 'something'; // Do something useful here + } + + return $users; + } +} + +class Plugin extends Base +{ + public function initialize() + { + $this->container['userAutoCompleteFormatter'] = $this->container->factory(function ($c) { + return new MyFormatter($c); + }); + } +} +``` diff --git a/doc/plugin-registration.markdown b/doc/en_US/plugin-registration.markdown index a9273e1d..5a4a6234 100644 --- a/doc/plugin-registration.markdown +++ b/doc/en_US/plugin-registration.markdown @@ -1,6 +1,28 @@ Plugin Registration =================== +Project skeleton generator +-------------------------- + +You can use `cookiecutter` to create the project structure of your plugin automatically. + +Install Cookiecutter: + +```bash +pip install -U cookiecutter +``` + +Run Kanboard cookiecutter: + +```bash +cookiecutter gh:kanboard/cookiecutter-plugin +plugin_name [My Plugin]: Some Plugin +plugin_namespace [MyPlugin]: SomePlugin +plugin_author [Plugin Author]: Me +plugin_description [My plugin is awesome]: +plugin_homepage [https://github.com/kanboard/plugin-myplugin]: +``` + Directory structure ------------------- @@ -49,6 +71,15 @@ class Plugin extends Base { $this->template->hook->attach('template:layout:head', 'theme:layout/head'); } + + public function getCompatibleVersion() + { + // Examples: + // >=1.0.37 + // <1.0.37 + // <=1.0.37 + return '1.0.37'; + } } ``` @@ -71,6 +102,7 @@ Available methods from `Kanboard\Core\Plugin\Base`: - `getPluginHomepage()`: Should return plugin Homepage (link) - `setContentSecurityPolicy(array $rules)`: Override default HTTP CSP rules - `onStartup()`: If present, this method is executed automatically when the event "app.bootstrap" is triggered +- `getCompatibleVersion()`: You may want to specify the Kanboard version compatible with the plugin Your plugin registration class can also inherit from Kanboard\Core\Base, that way you can access all classes and methods of Kanboard easily. diff --git a/doc/plugin-routes.markdown b/doc/en_US/plugin-routes.markdown index b943bb19..b943bb19 100644 --- a/doc/plugin-routes.markdown +++ b/doc/en_US/plugin-routes.markdown diff --git a/doc/plugin-schema-migrations.markdown b/doc/en_US/plugin-schema-migrations.markdown index 36a57f37..36a57f37 100644 --- a/doc/plugin-schema-migrations.markdown +++ b/doc/en_US/plugin-schema-migrations.markdown diff --git a/doc/plugins.markdown b/doc/en_US/plugins.markdown index cff3eb6c..ff9f7b8c 100644 --- a/doc/plugins.markdown +++ b/doc/en_US/plugins.markdown @@ -23,6 +23,7 @@ Plugin creators should specify explicitly the compatible versions of Kanboard. I - [Authorization architecture](plugin-authorization-architecture.markdown) - [Custom group providers](plugin-group-provider.markdown) - [External link providers](plugin-external-link.markdown) +- [External tasks](plugin-external-tasks.markdown) - [Add avatar providers](plugin-avatar-provider.markdown) - [LDAP client](plugin-ldap-client.markdown) diff --git a/doc/postgresql-configuration.markdown b/doc/en_US/postgresql-configuration.markdown index 627e2ded..bab15313 100644 --- a/doc/postgresql-configuration.markdown +++ b/doc/en_US/postgresql-configuration.markdown @@ -6,11 +6,9 @@ By default, Kanboard use Sqlite to store its data but it's also possible to use Requirements ------------ -- Postgresql server already installed and configured +- Postgresql >= 9.3 - The PHP extension `pdo_pgsql` installed (Debian/Ubuntu: `apt-get install php5-pgsql`) -Note: Kanboard is tested with **Postgresql 9.3 and 9.4** - Configuration ------------- @@ -43,10 +41,10 @@ Note: You can also rename the template file `config.default.php` to `config.php` For the first time, Kanboard will run one by one each database migration and this process can take some time according to your configuration. -To avoid any issues or potential timeouts you can initialize the database directly by importing the SQL schema: +To avoid any issues or potential timeouts, you can initialize the database directly by importing the SQL schema: ```bash psql -U postgres my_database < app/Schema/Sql/postgres.sql ``` -The file `app/Schema/Sql/postgres.sql` is a sql dump that represents the last version of the database. +The file `app/Schema/Sql/postgres.sql` is a SQL dump that represents the last version of the database. diff --git a/doc/project-configuration.markdown b/doc/en_US/project-configuration.markdown index 0f9088d2..0f9088d2 100644 --- a/doc/project-configuration.markdown +++ b/doc/en_US/project-configuration.markdown diff --git a/doc/project-permissions.markdown b/doc/en_US/project-permissions.markdown index 16586bc6..99e4caa2 100644 --- a/doc/project-permissions.markdown +++ b/doc/en_US/project-permissions.markdown @@ -1,8 +1,8 @@ Project Permissions =================== -Each project is isolated and compartmented from each other. -The project access must be allowed by the project owner. +Each project is isolated from other projects. +Project access must be allowed by the project owner. Each user and each group can have a different role assigned. There are 3 types of [roles for projects](roles.markdown): @@ -13,11 +13,11 @@ There are 3 types of [roles for projects](roles.markdown): Only administrators have access to everything. -Roles assignation is available from **Project Settings > Permissions**: +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. -That also means there is no role management anymore. Permission per user or per group cannot be applied. +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 permission. +Private projects cannot define permissions. diff --git a/doc/project-types.markdown b/doc/en_US/project-types.markdown index ae18b9ef..ae18b9ef 100644 --- a/doc/project-types.markdown +++ b/doc/en_US/project-types.markdown diff --git a/doc/project-views.markdown b/doc/en_US/project-views.markdown index 19284407..f700055e 100644 --- a/doc/project-views.markdown +++ b/doc/en_US/project-views.markdown @@ -10,7 +10,7 @@ Board View ![Board view](screenshots/board-view.png) -- With this view you can drag and drop tasks between columns easily. +- With this view, you can drag and drop tasks between columns easily. - You can also use the keyboard shortcut **"v b"** to switch to the board view. - Tasks with a shadow are recently modified. @@ -25,7 +25,7 @@ Calendar View ![Calendar view](screenshots/calendar-view.png) -- With this view you can visualize tasks with a due date. +- With this view, you can visualize tasks with a due date. - Depending of the settings, you can also see tasks in progress. - You can also use the keyboard shortcut **"v c"** to switch to the calendar view. - [Learn more about calendar configuration](calendar-configuration.markdown) @@ -35,7 +35,7 @@ List View ![List view](screenshots/list-view.png) -- With this view all results of your search are displayed in a table. +- With this view, all results of your search are displayed in a table. - You can also use the keyboard shortcut **"v l"** to switch to the list view. Gantt View @@ -43,16 +43,16 @@ Gantt View ![Gantt view](screenshots/gantt-view.png) -- The Gantt view displays tasks on a horizontal timeline -- The start date and the due date are used to display the chart -- For quick access, use the keyboard shortcut: **v g** +- The Gantt view displays tasks on a horizontal timeline. +- The start date and the due date are used to display the chart. +- For quick access, use the keyboard shortcut: **v g**. Project Overview ---------------- ![Project overview](screenshots/project-view.png) -- View the description of the project -- Attach and upload documents to the project -- View list of project members -- View the last activities of the project +- View the description of the project. +- Attach and upload documents to the project. +- View list of project members. +- View the last activities of the project. diff --git a/doc/recurring-tasks.markdown b/doc/en_US/recurring-tasks.markdown index d2385feb..d2385feb 100644 --- a/doc/recurring-tasks.markdown +++ b/doc/en_US/recurring-tasks.markdown diff --git a/doc/removing-projects.markdown b/doc/en_US/removing-projects.markdown index f9e622cb..0c4c5f36 100644 --- a/doc/removing-projects.markdown +++ b/doc/en_US/removing-projects.markdown @@ -1,10 +1,10 @@ Removing Projects ================= -To remove a project, you must be manager of the project or administrator. +To remove a project, you must be the manager of the project or an administrator. Go to the **"Project settings"**, and from the menu on the left, at the bottom, choose **"Remove"**. ![Removing Projects](screenshots/project-remove.png) -Removing a project remove all tasks that belongs to this project. +Removing a project removes all tasks that belong to this project. diff --git a/doc/requirements.markdown b/doc/en_US/requirements.markdown index 957d8750..957d8750 100644 --- a/doc/requirements.markdown +++ b/doc/en_US/requirements.markdown diff --git a/doc/reverse-proxy-authentication.markdown b/doc/en_US/reverse-proxy-authentication.markdown index 609bad7a..609bad7a 100644 --- a/doc/reverse-proxy-authentication.markdown +++ b/doc/en_US/reverse-proxy-authentication.markdown diff --git a/doc/roles.markdown b/doc/en_US/roles.markdown index caa4380d..caa4380d 100644 --- a/doc/roles.markdown +++ b/doc/en_US/roles.markdown diff --git a/doc/rss.markdown b/doc/en_US/rss.markdown index 3e06f79c..3e06f79c 100644 --- a/doc/rss.markdown +++ b/doc/en_US/rss.markdown diff --git a/doc/en_US/screenshots b/doc/en_US/screenshots new file mode 120000 index 00000000..2b5b059b --- /dev/null +++ b/doc/en_US/screenshots @@ -0,0 +1 @@ +../screenshots
\ No newline at end of file diff --git a/doc/screenshots.markdown b/doc/en_US/screenshots.markdown index e7f1b98c..e7f1b98c 100644 --- a/doc/screenshots.markdown +++ b/doc/en_US/screenshots.markdown diff --git a/doc/search.markdown b/doc/en_US/search.markdown index 17d27416..760551df 100644 --- a/doc/search.markdown +++ b/doc/en_US/search.markdown @@ -106,6 +106,10 @@ Attribute: **description** or **desc** Example: `description:"text search"` +### Search by completion + +Attribute: **completed** + ### Search by external reference The task reference is an external id of your task, by example a ticket number from another software. diff --git a/doc/sharing-projects.markdown b/doc/en_US/sharing-projects.markdown index 614c3230..400f7cb4 100644 --- a/doc/sharing-projects.markdown +++ b/doc/en_US/sharing-projects.markdown @@ -1,13 +1,13 @@ Sharing boards and tasks ======================== -By default, boards are private but it's possible to make a board public. +By default, boards are private, but it's possible to make a board public. -A public board **cannot be modified, it's a read-only access**. -This access is protected by a random token, only people who have the right URL can see the board. +A public board **cannot be modified: it has read-only access**. +Access is protected by a random token. Only people who have the right URL can see the board. Public boards are automatically refreshed every 60 seconds. -Task details are also available in read-only. +Task details are also available in read-only mode. Usage examples: @@ -21,7 +21,7 @@ Select your project, then click on "Public access" and finally click on the butt ![Enable public access](screenshots/project-enable-sharing.png) -When the public access is enabled, a couple of links are generated: +When public access is enabled, a couple of links are generated: - Public board view - RSS feed subscription link @@ -29,7 +29,7 @@ When the public access is enabled, a couple of links are generated: ![Disable public access](screenshots/project-disable-sharing.png) -You can also disable the public access whenever you want. +You can also disable public access whenever you want. -Each time, you enable or disable the public access a new random token is generated. -**The previous links will not work anymore**. +Each time you enable or disable public access, a new random token is generated. +**The previous links will not work anymore**! diff --git a/doc/solving-blank-page-issue.markdown b/doc/en_US/solving-blank-page-issue.markdown index c24e1f6c..c24e1f6c 100644 --- a/doc/solving-blank-page-issue.markdown +++ b/doc/en_US/solving-blank-page-issue.markdown diff --git a/doc/solving-database-migration-issues.markdown b/doc/en_US/solving-database-migration-issues.markdown index ddd39db6..ddd39db6 100644 --- a/doc/solving-database-migration-issues.markdown +++ b/doc/en_US/solving-database-migration-issues.markdown diff --git a/doc/en_US/solving-session-issue-windows-iis-ie.markdown b/doc/en_US/solving-session-issue-windows-iis-ie.markdown new file mode 100644 index 00000000..1ad3124b --- /dev/null +++ b/doc/en_US/solving-session-issue-windows-iis-ie.markdown @@ -0,0 +1,19 @@ +I'm not able to login with Internet Explorer and Microsoft IIS +============================================================== + +If you are not able to login and always get the error **"Username or password required"** even if you have entered the right credentials, +that means there is a problem with the session. + +For example, this is a known issue if you meet these criteria: + +- You are using a domain name with an underscore: `kanboard_something.mycompany.tld` +- You are using Microsoft Windows Server and IIS +- Your browser is Internet Explorer + +Solution: **Do not use underscore in the domain name because this is not a valid domain name**. + +Explanation: Internet Explorer doesn't accept cookies with a domain name with underscores because it's not valid. + +Reference: + +- https://support.microsoft.com/en-us/kb/316112 diff --git a/doc/sqlite-database.markdown b/doc/en_US/sqlite-database.markdown index 0a6a0ab6..0a6a0ab6 100644 --- a/doc/sqlite-database.markdown +++ b/doc/en_US/sqlite-database.markdown diff --git a/doc/subtasks.markdown b/doc/en_US/subtasks.markdown index 721e28eb..721e28eb 100644 --- a/doc/subtasks.markdown +++ b/doc/en_US/subtasks.markdown diff --git a/doc/en_US/suse-installation.markdown b/doc/en_US/suse-installation.markdown new file mode 100644 index 00000000..2af773f7 --- /dev/null +++ b/doc/en_US/suse-installation.markdown @@ -0,0 +1,14 @@ +Installation on OpenSuse +======================== + +OpenSuse Leap 42.1 +------------------ + +```bash +sudo zypper install php5 php5-sqlite php5-gd php5-json php5-mcrypt php5-mbstring php5-openssl +cd /srv/www/htdocs +sudo wget https://kanboard.net/kanboard-latest.zip +sudo unzip kanboard-latest.zip +sudo chown -R wwwrun /srv/www/htdocs/kanboard +sudo rm kanboard-latest.zip +``` diff --git a/doc/swimlanes.markdown b/doc/en_US/swimlanes.markdown index 776af138..776af138 100644 --- a/doc/swimlanes.markdown +++ b/doc/en_US/swimlanes.markdown diff --git a/doc/syntax-guide.markdown b/doc/en_US/syntax-guide.markdown index 28d0e297..28d0e297 100644 --- a/doc/syntax-guide.markdown +++ b/doc/en_US/syntax-guide.markdown diff --git a/doc/tags.markdown b/doc/en_US/tags.markdown index 26b3169d..26b3169d 100644 --- a/doc/tags.markdown +++ b/doc/en_US/tags.markdown diff --git a/doc/task-links.markdown b/doc/en_US/task-links.markdown index 7c8c1add..7c8c1add 100644 --- a/doc/task-links.markdown +++ b/doc/en_US/task-links.markdown diff --git a/doc/tests.markdown b/doc/en_US/tests.markdown index 59177f87..59177f87 100644 --- a/doc/tests.markdown +++ b/doc/en_US/tests.markdown diff --git a/doc/time-tracking.markdown b/doc/en_US/time-tracking.markdown index 1a648573..1a648573 100644 --- a/doc/time-tracking.markdown +++ b/doc/en_US/time-tracking.markdown diff --git a/doc/transitions.markdown b/doc/en_US/transitions.markdown index 383dfa1d..383dfa1d 100644 --- a/doc/transitions.markdown +++ b/doc/en_US/transitions.markdown diff --git a/doc/translations.markdown b/doc/en_US/translations.markdown index 074d9ae3..66fd2a4c 100644 --- a/doc/translations.markdown +++ b/doc/en_US/translations.markdown @@ -50,7 +50,7 @@ How to find missing translations in the applications? From a terminal, run the following command: ```bash -./kanboard locale:compare +./cli locale:compare ``` All missing and unused translations are displayed on the screen. @@ -62,7 +62,7 @@ How to synchronize translation files? From a Unix shell run this command: ```bash -./kanboard locale:sync +./cli locale:sync ``` The French translation is used a reference to other locales. diff --git a/doc/ubuntu-installation.markdown b/doc/en_US/ubuntu-installation.markdown index 196b506a..196b506a 100644 --- a/doc/ubuntu-installation.markdown +++ b/doc/en_US/ubuntu-installation.markdown diff --git a/doc/update.markdown b/doc/en_US/update.markdown index fca0d7d4..76cac27a 100644 --- a/doc/update.markdown +++ b/doc/en_US/update.markdown @@ -11,8 +11,9 @@ Important things to do before updating - **Always make a backup of your data before upgrading** - **Check that your backup is valid!** - Check again -- Always read the [change log](https://github.com/kanboard/kanboard/blob/master/ChangeLog) to check for breaking changes -- Always close all user sessions (flush all sessions on the server) +- Always read the [change history](https://github.com/kanboard/kanboard/blob/master/ChangeLog) to check for breaking changes +- Stop the worker if you use it +- Put the web server in maintenance mode to avoid people use the software while upgrading From the archive (stable version) --------------------------------- @@ -33,3 +34,20 @@ From the repository (development version) 3. Login and check if everything is ok Note: This method will install the **current development version**, use at your own risk. + +Running SQL migrations manually +------------------------------- + +By default, SQL migrations are executed automatically. The schema version is checked at each request. +In this way, when you upgrade Kanboard to another version, the database schema is updated for you. + +You may want to disable this behaviour is case you have a specific configuration. +For example, if multiple processes try to apply the migrations in the same time you might have some concurrency problems even if each operation is executed inside a transaction. + +To disable this feature, set the parameter `DB_RUN_MIGRATIONS` at `false` in your [config file](config.markdown). + +When you will have to upgrade Kanboard, run this command: + +```bash +./cli db:migrate +``` diff --git a/doc/usage-examples.markdown b/doc/en_US/usage-examples.markdown index 5efc6f9a..c200e082 100644 --- a/doc/usage-examples.markdown +++ b/doc/en_US/usage-examples.markdown @@ -8,7 +8,7 @@ Software development - Backlog - Ready -- Work in progress +- Work-in-progress - To be validated - Validated - Deployed in production @@ -18,7 +18,7 @@ Bug tracking - Reported - Confirmed -- Work in progress +- Work-in-progress - Tested - Fixed diff --git a/doc/user-management.markdown b/doc/en_US/user-management.markdown index 3c53db99..3c53db99 100644 --- a/doc/user-management.markdown +++ b/doc/en_US/user-management.markdown diff --git a/doc/user-mentions.markdown b/doc/en_US/user-mentions.markdown index 156456d6..4ce47054 100644 --- a/doc/user-mentions.markdown +++ b/doc/en_US/user-mentions.markdown @@ -6,7 +6,7 @@ Kanboard offers the possibility to send notifications when someone is mentioned. If you need to get the attention of someone in a comment or in a task, use the @ symbol followed by their username. Kanboard will automatically suggest a list of users: -![User Mention](screenshots/mention-autocomplete.png) +![User Mention](screenshots/user-mentions.png) - At the moment, only the task description and the comment text area have this feature enabled. - The user mentions works only during tasks and comments creation. diff --git a/doc/user-types.markdown b/doc/en_US/user-types.markdown index 8c88a7dd..8c88a7dd 100644 --- a/doc/user-types.markdown +++ b/doc/en_US/user-types.markdown diff --git a/doc/vagrant.markdown b/doc/en_US/vagrant.markdown index 8fb05b20..8fb05b20 100644 --- a/doc/vagrant.markdown +++ b/doc/en_US/vagrant.markdown diff --git a/doc/webhooks.markdown b/doc/en_US/webhooks.markdown index e43ab9ce..e43ab9ce 100644 --- a/doc/webhooks.markdown +++ b/doc/en_US/webhooks.markdown diff --git a/doc/what-is-kanban.markdown b/doc/en_US/what-is-kanban.markdown index 5d2eed02..de8377b2 100644 --- a/doc/what-is-kanban.markdown +++ b/doc/en_US/what-is-kanban.markdown @@ -11,22 +11,22 @@ There are only two constraints imposed by Kanban: Visualize your workflow ----------------------- -- Your work is displayed on a board, you have a clear overview of your project +- Your work is displayed on a board so that you have a clear overview of your project - Each column represents a step in your workflow -Bring focus and avoid multitasking +Limit your work in progress ---------------------------------- - -- Each phase can have a work in progress limits -- Limits are great to identify bottlenecks +- Encourages focus by avoiding multitasking +- Each phase can have work-in-progress limits +- Limits help identify bottlenecks - Limits avoid working on too many tasks at the same time -Measure performance and improvement ------------------------------------ +Performance Measurement +======================= Kanban uses lead and cycle times to measure performance: -- **Lead time**: Time between the task is created and completed -- **Cycle time**: Time between the task is started and completed +- **Lead time**: Time between task creation and completion +- **Cycle time**: Time between task start and completion -For example, you may have a lead time of 100 days and only have to work 1 hour to complete the task. +For example, you may have a lead time of 100 days but only have to work 1 hour to complete the task. diff --git a/doc/windows-apache-installation.markdown b/doc/en_US/windows-apache-installation.markdown index 27b6812e..27b6812e 100644 --- a/doc/windows-apache-installation.markdown +++ b/doc/en_US/windows-apache-installation.markdown diff --git a/doc/windows-iis-installation.markdown b/doc/en_US/windows-iis-installation.markdown index 26ce178f..26ce178f 100644 --- a/doc/windows-iis-installation.markdown +++ b/doc/en_US/windows-iis-installation.markdown diff --git a/doc/worker.markdown b/doc/en_US/worker.markdown index 8516068b..89becacd 100644 --- a/doc/worker.markdown +++ b/doc/en_US/worker.markdown @@ -19,7 +19,7 @@ This feature is optional and require the installation of a queue daemon on your - To install Beanstalk, you can simply use the package manager of your Linux distribution - Install the [Kanboard plugin for Beanstalk](https://kanboard.net/plugin/beanstalk) -- Start the worker with the Kanboard command line tool: `./kanboard worker` +- Start the worker with the Kanboard command line tool: `./cli worker` ### RabbitMQ @@ -27,7 +27,7 @@ This feature is optional and require the installation of a queue daemon on your - Follow the official documentation of RabbitMQ for the installation and the configuration - Install the [Kanboard plugin for RabbitMQ](https://kanboard.net/plugin/rabbitmq) -- Start the worker with the Kanboard command line tool: `./kanboard worker` +- Start the worker with the Kanboard command line tool: `./cli worker` ### Notes diff --git a/doc/es_ES/cli.markdown b/doc/es_ES/cli.markdown index 3f19b39d..ec46bdd6 100755 --- a/doc/es_ES/cli.markdown +++ b/doc/es_ES/cli.markdown @@ -10,7 +10,7 @@ Uso ----- - Abre una terminal y ve a tu directorio de kanboard (ejemplo : `cd /var/www/kanboard`) -- Corre el comando `./kanboard` +- Corre el comando `./cli` / `php cli` ```bash Kanboard version master @@ -33,10 +33,10 @@ Available commands: list Lista de comandos worker Execute queue worker export - export:daily-project-column-stats Diariamente estadsticas de exportacin de CSV (nmero de tareas por columna y por da ) + export:daily-project-column-stats Diariamente estad�sticas de exportaci�n de CSV (n�mero de tareas por columna y por d�a ) export:subtasks Exportar a CSV las subtareas export:tasks Exportar a CSV las tareas - export:transitions Exportar a CSV tareas de transicin + export:transitions Exportar a CSV tareas de transici�n locale locale:compare Comparar aplicacion de traducciones con el locale fr_FR locale:sync Sincronizar todas las traducciones basadas en el locale fr_FR @@ -51,7 +51,7 @@ Available commands: trigger trigger:tasks Disparadores de eventos calendarizados para todas las tareas user - user:reset-2fa Eliminar la autenticacin two-factor para un usuario + user:reset-2fa Eliminar la autenticaci�n two-factor para un usuario user:reset-password Cambiar el passwor del usuario ``` @@ -63,13 +63,13 @@ Comandos disponibles Uso: ```bash -./kanboard export:tasks <project_id> <start_date> <end_date> +./cli export:tasks <project_id> <start_date> <end_date> ``` Ejemplo: ```bash -./kanboard export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` CSV los datos son enviados a `stdout`. @@ -79,41 +79,41 @@ CSV los datos son enviados a `stdout`. Uso: ```bash -./kanboard export:subtasks <project_id> <start_date> <end_date> +./cli export:subtasks <project_id> <start_date> <end_date> ``` Ejemplo: ```bash -./kanboard export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` -### Exportacin a CSV de tareas de transicin +### Exportaci�n a CSV de tareas de transici�n Uso: ```bash -./kanboard export:transitions <project_id> <start_date> <end_date> +./cli export:transitions <project_id> <start_date> <end_date> ``` Ejemplo: ```bash -./kanboard export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` ### Exportar diariamente resumenes de datos en CSV -Los datos exportados se pueden imprimir en la salida estndar: +Los datos exportados se pueden imprimir en la salida est�ndar: ```bash -./kanboard export:daily-project-column-stats <project_id> <start_date> <end_date> +./cli export:daily-project-column-stats <project_id> <start_date> <end_date> ``` Ejemplo: ```bash -./kanboard export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +./cli export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ``` ### Envio de notificaciones para tareas atrasadas @@ -121,7 +121,7 @@ Ejemplo: Los Emails se enviaran a todos los usuarios con las notificaciones habilitadas. ```bash -./kanboard notification:overdue-tasks +./cli notification:overdue-tasks ``` Parametros opcionales: @@ -130,10 +130,10 @@ Parametros opcionales: - `--group`: Grupo tareas atrasadas todo para un usuario (desde todos los proyectos) en un email - `--manager`: Enviar todas las tareas atrasadas a un project manager(s) en un email -Tambin puede mostrar las tareas atrasadas con la bandera `--show`: +Tambi�n puede mostrar las tareas atrasadas con la bandera `--show`: ```bash -./kanboard notification:overdue-tasks --show +./cli notification:overdue-tasks --show +-----+---------+------------+------------+--------------+----------+ | Id | Title | Due date | Project Id | Project name | Assignee | +-----+---------+------------+------------+--------------+----------+ @@ -147,7 +147,7 @@ Tambin puede mostrar las tareas atrasadas con la bandera `--show`: Este comando calcula las estadisticas por cada proyecto: ```bash -./kanboard projects:daily-stats +./cli projects:daily-stats Run calculation for Project #0 Run calculation for Project #1 Run calculation for Project #10 @@ -158,42 +158,42 @@ Run calculation for Project #10 Este comando envia a "daily cronjob event" a todas las tareas abiertas de cada proyecto. ```bash -./kanboard trigger:tasks +./cli trigger:tasks Trigger task event: project_id=2, nb_tasks=1 ``` ### Resetear el password del usuario ```bash -./kanboard user:reset-password my_user +./cli user:reset-password my_user ``` -Se le pedir una contrasea y la confirmacin. Los caracteres no se imprimen en la pantalla. +Se le pedir� una contrase�a y la confirmaci�n. Los caracteres no se imprimen en la pantalla. -### Eliminar la autenticacin two-factor para un usuario +### Eliminar la autenticaci�n two-factor para un usuario ```bash -./kanboard user:reset-2fa my_user +./cli user:reset-2fa my_user ``` ### Instalar un plugin ```bash -./kanboard plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip +./cli plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip ``` -Nota: Los archivos instalados tendrn los mismos permisos que el usuario actual +Nota: Los archivos instalados tendr�n los mismos permisos que el usuario actual ### Eliminar un usuario ```bash -./kanboard plugin:uninstall Budget +./cli plugin:uninstall Budget ``` ### Upgrade todos los plugins ```bash -./kanboard plugin:upgrade +./cli plugin:upgrade * Updating plugin: Budget Planning * Plugin up to date: Github Authentication ``` @@ -201,5 +201,5 @@ Nota: Los archivos instalados tendrn los mismos permisos que el usuario actual ### Run Background worker ```bash -./kanboard worker +./cli worker ``` diff --git a/doc/es_ES/cronjob.markdown b/doc/es_ES/cronjob.markdown index f8f9ebc8..b7dc5cee 100755 --- a/doc/es_ES/cronjob.markdown +++ b/doc/es_ES/cronjob.markdown @@ -1,4 +1,4 @@ -Programacin de Jobs en background +Programaci�n de Jobs en background ================================== Para trabajar correctamente,Kanboard requiere que se corra un job en background diariamente. @@ -10,7 +10,7 @@ Este job es necesario para estas caracteristicas: - Enviar notificaciones de tareas atrasadas. - Ejecutar automaticamente acciones conectadas a el evento "Daily background job for tasks" -Configuracin de plataformas Unix y Linux +Configuraci�n de plataformas Unix y Linux ----------------------------------------- Hay varias maneras de definir una tarea programada en sistemas operativos Unix/Linux , este ejemplo es para Ubuntu 14.04 . @@ -25,7 +25,7 @@ sudo crontab -u www-data -e Ejemplo para ejecutar diariamente cronjob a las 8am: ```bash -0 8 * * * cd /path/to/kanboard && ./kanboard cronjob >/dev/null 2>&1 +0 8 * * * cd /path/to/kanboard && ./cli cronjob >/dev/null 2>&1 ``` Nota : El proceso del cronjob debe tener acceso a escritura de la base de datos en caso de usar Sqlite. diff --git a/doc/es_ES/installation.markdown b/doc/es_ES/installation.markdown index 9491d591..f3dfc495 100644 --- a/doc/es_ES/installation.markdown +++ b/doc/es_ES/installation.markdown @@ -44,6 +44,7 @@ Si desea instalar Kanboard fuera de la raíz de documentos del servidor web, es ```bash . ├── assets -> ../kanboard/assets +├── cli -> ../kanboard/cli ├── doc -> ../kanboard/doc ├── favicon.ico -> ../kanboard/favicon.ico ├── index.php -> ../kanboard/index.php diff --git a/doc/es_ES/kanban-vs-todo-and-scrum.markdown b/doc/es_ES/kanban-vs-todo-and-scrum.markdown index 6e8d9e6c..5295a6d1 100644 --- a/doc/es_ES/kanban-vs-todo-and-scrum.markdown +++ b/doc/es_ES/kanban-vs-todo-and-scrum.markdown @@ -11,7 +11,7 @@ Kanban vs Todo lists ### Kanban: -- Multi fases, +- Multi fases, - Concentración absoluta para evitar multitareas por que se puede establecer un limite por columna para mejorar el progreso diff --git a/doc/es_ES/translations.markdown b/doc/es_ES/translations.markdown index 074d9ae3..66fd2a4c 100644 --- a/doc/es_ES/translations.markdown +++ b/doc/es_ES/translations.markdown @@ -50,7 +50,7 @@ How to find missing translations in the applications? From a terminal, run the following command: ```bash -./kanboard locale:compare +./cli locale:compare ``` All missing and unused translations are displayed on the screen. @@ -62,7 +62,7 @@ How to synchronize translation files? From a Unix shell run this command: ```bash -./kanboard locale:sync +./cli locale:sync ``` The French translation is used a reference to other locales. diff --git a/doc/fr_FR/index.markdown b/doc/fr_FR/index.markdown index d48c94ca..b33baf85 100644 --- a/doc/fr_FR/index.markdown +++ b/doc/fr_FR/index.markdown @@ -46,6 +46,7 @@ Utiliser Kanboard - [Créer des tâches par email](create-tasks-by-email.markdown) - [Sous-tâches](subtasks.markdown) - [Analytique des tâches](analytics-tasks.markdown) +- [Mentionner les utilisateurs](user-mentions.markdown) ### Travailler avec les utilisateurs diff --git a/doc/fr_FR/installation.markdown b/doc/fr_FR/installation.markdown index 4f7569ab..9e4cb47a 100644 --- a/doc/fr_FR/installation.markdown +++ b/doc/fr_FR/installation.markdown @@ -42,6 +42,7 @@ Si vous souhaitez installer Kanboard en dehors du document root de votre serveur ```bash . ├── assets -> ../kanboard/assets +├── cli -> ../kanboard/cli ├── doc -> ../kanboard/doc ├── favicon.ico -> ../kanboard/favicon.ico ├── index.php -> ../kanboard/index.php diff --git a/doc/fr_FR/update.markdown b/doc/fr_FR/update.markdown index 508f729d..68468e50 100644 --- a/doc/fr_FR/update.markdown +++ b/doc/fr_FR/update.markdown @@ -12,7 +12,8 @@ Choses importantes à faire avant la mise à jour - **Vérifiez que votre sauvegarde est valide !** - Vérifiez encore - Toujours lire la [liste des changements](https://github.com/kanboard/kanboard/blob/master/ChangeLog) pour vérifier sil y a des opérations manuelles à faire -- Toujours fermer les sessions des utilisateurs sur le serveur +- Stoppez le _worker_ +- Mettez le serveur web en mode maintenance pour éviter que les gens utilisent l'application pendant la mise à jour Depuis l'archive (version stable) --------------------------------- @@ -33,3 +34,21 @@ Depuis le dépôt git (version de développement) 3. Testez que tout fonctionne correctement Cette méthode va installer **la version en cours de développement**, utilisez là à vos risques. + +Appliquer les migrations SQL manuellement +----------------------------------------- + +Par défaut, les migrations SQL sont exécutées automatiquement. +La version du schéma est vérifiée à chaque requête. +De cette manière, les changements de base de données sont appliqués automatiquement. + +Vous pouvez désactiver ce comportement si vous le souhaitez en fonction de votre configuration. +Par exemple, si plusieurs processus essaient de mettre à jour le schéma en même temps, il se peut que vous ayez des problèmes même si chaque opération se fait dans une transaction. + +Pour désactiver cette fonctionnalité, mettez le paramètre `DB_RUN_MIGRATIONS` à `false` dans votre fichier de [configuration](config.markdown). + +Lorsque vous allez mettre à jour Kanboard, exécutez cette commande : + +```bash +./cli db:migrate +``` diff --git a/doc/fr_FR/user-mentions.markdown b/doc/fr_FR/user-mentions.markdown new file mode 100644 index 00000000..af322bb8 --- /dev/null +++ b/doc/fr_FR/user-mentions.markdown @@ -0,0 +1,13 @@ +Mentionner les utilisateurs +=========================== + +Kanboard offre la possibilité d'envoyer des notifications lorsque quelqu'un est mentionné. + +Si vous avez besoin d'obtenir l'attention de quelqu'un dans un commentaire ou une tâche, utilisez le symbole @ suivi de l'identifiant de l'utilisateur. +Kanboard va automatiquement suggérer une liste d'utilisateurs : + +![Mentions](screenshots/user-mentions.png) + +- Pour le moment, cette fonctionnalité est activée uniquement pour la description des tâches et les commentaires +- Cela fonctionne seulement lors de la création des tâches ou commentaires +- Pour être mentionné, les utilisateurs doivent être membres du projet diff --git a/doc/nitrous.markdown b/doc/nitrous.markdown deleted file mode 100644 index daaedcef..00000000 --- a/doc/nitrous.markdown +++ /dev/null @@ -1,10 +0,0 @@ -Nitrous Quickstart -================== - -Create a free development environment for this Kanboard project in the cloud on [Nitrous.io](https://www.nitrous.io) by clicking the button below. - -<a href="https://www.nitrous.io/quickstart"> - <img src="https://nitrous-image-icons.s3.amazonaws.com/quickstart.png" alt="Nitrous Quickstart" width=142 height=34> -</a> - -Simply access your site via the `Preview > 3000` link in the IDE. diff --git a/doc/ru_RU/cli.markdown b/doc/ru_RU/cli.markdown index 9c7b56a7..5ac2b4ec 100644 --- a/doc/ru_RU/cli.markdown +++ b/doc/ru_RU/cli.markdown @@ -1,236 +1,125 @@ Интерфейс командной строки ========================== - - Канборд обеспечивает простой интерфейс командной строки, которым можно воспользоваться только из Unix терминала. Эта возможность доступна только с локальной машины. - - Интерфейс командной строки полезен для выполнения команд вне процессов веб сервера. - - Использование[¶](#usage "Ссылка на этот заголовок") --------------------------------------------------- - - - Откройте терминал и перейдите в директорию Канборд (например: `cd /var/www/kanboard`) +- Выполните команду `./cli` - -- Выполните команду `./kanboard` - - - -<!-- --> - - - - Kanboard version master - - - - Usage: - - command [options] [arguments] - - - - Options: - - -h, --help Display this help message - - -q, --quiet Do not output any message - - -V, --version Display this application version - - --ansi Force ANSI output - - --no-ansi Disable ANSI output - - -n, --no-interaction Do not ask any interactive question - - -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - - - - Available commands: - - cronjob Execute daily cronjob - - help Displays help for a command - - list Lists commands - - export - - export:daily-project-column-stats Daily project column stats CSV export (number of tasks per column and per day) - - export:subtasks Subtasks CSV export - - export:tasks Tasks CSV export - - export:transitions Task transitions CSV export - - locale - - locale:compare Compare application translations with the fr_FR locale - - locale:sync Synchronize all translations based on the fr_FR locale - - notification - - notification:overdue-tasks Send notifications for overdue tasks - - plugin - - plugin:install Install a plugin from a remote Zip archive - - plugin:uninstall Remove a plugin - - plugin:upgrade Update all installed plugins - - projects - - projects:daily-stats Calculate daily statistics for all projects - - trigger - - trigger:tasks Trigger scheduler event for all tasks - - user - - user:reset-2fa Remove two-factor authentication for a user - - user:reset-password Change user password - +```bash +Kanboard version master + +Usage: + command [options] [arguments] + +Options: + -h, --help Display this help message + -q, --quiet Do not output any message + -V, --version Display this application version + --ansi Force ANSI output + --no-ansi Disable ANSI output + -n, --no-interaction Do not ask any interactive question + -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug + +Available commands: + cronjob Execute daily cronjob + help Displays help for a command + list Lists commands + worker Execute queue worker + db + db:migrate Execute SQL migrations + db:version Show database schema version + export + export:daily-project-column-stats Daily project column stats CSV export (number of tasks per column and per day) + export:subtasks Subtasks CSV export + export:tasks Tasks CSV export + export:transitions Task transitions CSV export + locale + locale:compare Compare application translations with the fr_FR locale + locale:sync Synchronize all translations based on the fr_FR locale + notification + notification:overdue-tasks Send notifications for overdue tasks + plugin + plugin:install Install a plugin from a remote Zip archive + plugin:uninstall Remove a plugin + plugin:upgrade Update all installed plugins + projects + projects:daily-stats Calculate daily statistics for all projects + trigger + trigger:tasks Trigger scheduler event for all tasks + user + user:reset-2fa Remove two-factor authentication for a user + user:reset-password Change user password +``` Доступные команды[¶](#available-commands "Ссылка на этот заголовок") -------------------------------------------------------------------- - - ### Экспорт задач в формате CSV[¶](#tasks-csv-export "Ссылка на этот заголовок") - - Применение: - - - ./kanboard export:tasks <project_id> <start_date> <end_date> - - + ./cli export:tasks <project_id> <start_date> <end_date> Пример: - - - ./kanboard export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv - - + ./cli export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv Данные CSV передаются в `stdout`. - - ### Экспорт подзадач в формате CSV[¶](#subtasks-csv-export "Ссылка на этот заголовок") - - Применение: - - - ./kanboard export:subtasks <project_id> <start_date> <end_date> - - + ./cli export:subtasks <project_id> <start_date> <end_date> Пример: - - - ./kanboard export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv - - + ./cli export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ### Экспорт перемещения задач в формате CSV[¶](#task-transitions-csv-export "Ссылка на этот заголовок") - - Применение: - - - ./kanboard export:transitions <project_id> <start_date> <end_date> - - + ./cli export:transitions <project_id> <start_date> <end_date> Пример: - - - ./kanboard export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv - - + ./cli export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ### Экспорт ежедневных сведений в формате CSV[¶](#export-daily-summaries-data-in-csv "Ссылка на этот заголовок") - - Экспортированные данные будут выведены в стандартный вывод: - - - ./kanboard export:daily-project-column-stats <project_id> <start_date> <end_date> - - + ./cli export:daily-project-column-stats <project_id> <start_date> <end_date> Пример: - - - ./kanboard export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv - - + ./cli export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv ### Отправка уведомлений для просроченных задач[¶](#send-notifications-for-overdue-tasks "Ссылка на этот заголовок") - - Email сообщения будут отправлены всем пользователям, у которых включено оповещение. - - - ./kanboard notification:overdue-tasks - - + ./cli notification:overdue-tasks Необязательные параметры: - - - `--show`: Показывать отправку уведомлений - - - - `--group`: Группировать все просроченные задачи для одного пользователя (со всех проектов) на один email - - - - `--manager`: Посылать все просроченные задачи менеджеру (менеджерам) проекта в одном email сообщении - - Вы можете просмотреть просроченные задачи с помощью параметра `--show`: - - ```bash -./kanboard notification:overdue-tasks --show +./cli notification:overdue-tasks --show +-----+---------+------------+------------+--------------+----------+ | Id | Title | Due date | Project Id | Project name | Assignee | +-----+---------+------------+------------+--------------+----------+ @@ -239,93 +128,46 @@ Email сообщения будут отправлены всем пользов +-----+---------+------------+------------+--------------+----------+ ``` - ### Запуск ежедневной калькуляции статистики[¶](#run-daily-project-stats-calculation "Ссылка на этот заголовок") - - Эта команда считает статистику для каждого проекта: - - - ./kanboard projects:daily-stats - + ./cli projects:daily-stats Run calculation for Project #0 - Run calculation for Project #1 - Run calculation for Project #10 - - ### Триггеры для задач[¶](#trigger-for-tasks) - - Эта команда посылает “событие для ежедневных фоновых заданий” для всех открытых задач в каждом проекте. - - - ./kanboard trigger:tasks - + ./cli trigger:tasks Trigger task event: project_id=2, nb_tasks=1 - - ### Сброс пароля пользователя[¶](#reset-user-password "Ссылка на этот заголовок") - - - ./kanboard user:reset-password my_user - - + ./cli user:reset-password my_user Будет запрошен пароль и подтверждение. Символы не отображаются на экране. - - ### Удаление двухуровневой аутентификации для пользователя[¶](#remove-two-factor-authentication-for-a-user "Ссылка на этот заголовок") - - - ./kanboard user:reset-2fa my_user - - + ./cli user:reset-2fa my_user ### Установка плагина[¶](#install-a-plugin "Ссылка на этот заголовок") - - - ./kanboard plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip - - + ./cli plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip Заметка: Установленные файлы будут иметь теже права, что и у текущего пользователя - - ### Удаление плагина[¶](#remove-a-plugin "Ссылка на этот заголовок") - - - ./kanboard plugin:uninstall Budget - - + ./cli plugin:uninstall Budget ### Обновление всех плагинов[¶](#upgrade-all-plugins "Ссылка на этот заголовок") - - - ./kanboard plugin:upgrade - + ./cli plugin:upgrade * Updating plugin: Budget Planning - * Plugin up to date: Github Authentication - - - - - [Русская документация Kanboard](http://kanboard.ru/doc/) - diff --git a/doc/ru_RU/cronjob.markdown b/doc/ru_RU/cronjob.markdown index 62f8e886..f6d3a2af 100644 --- a/doc/ru_RU/cronjob.markdown +++ b/doc/ru_RU/cronjob.markdown @@ -1,7 +1,6 @@ Ежедневные фоновые задачи ========================= - Для корректной работы, Канборд должен запускать ежедневные фоновые задачи. На Unix платформах этот процесс выполнятся в `cron`. Фоновые задачи необходимы для следующих возможностей: @@ -16,26 +15,14 @@ Для создания фоновых задач под операционной системой Unix/Linux используются разные решения. Здесь приведен пример для Ubuntu 14.04. Для других систем процедура похожа. - Отредактируйте crontab под пользователем вашего веб сервера: - sudo crontab -u www-data -e - Пример запуска ежедневной фоновой задачи в 8 утра: - - 0 8 * * * cd /path/to/kanboard && ./kanboard cronjob >/dev/null 2>&1 - + 0 8 * * * cd /path/to/kanboard && ./cli cronjob >/dev/null 2>&1 Примечание: процес выполнения фоновых задач должен иметь права доступа к вашей базе данных в случае если вы используете Sqlite. Обычно, достаточно запускать фоновую задачу под пользователем веб сервера. - - - - - - [Русская документация Kanboard](http://kanboard.ru/doc/) - diff --git a/doc/ru_RU/index.markdown b/doc/ru_RU/index.markdown index c4a12d52..88467206 100644 --- a/doc/ru_RU/index.markdown +++ b/doc/ru_RU/index.markdown @@ -178,7 +178,6 @@ - [Запуск Kanboard на Cloudron](cloudron.markdown) -- [Запуск Kanboard на Nitrous](nitrous.markdown) ### Настройка[¶](#configuration "Ссылка на этот заголовок") diff --git a/doc/ru_RU/installation.markdown b/doc/ru_RU/installation.markdown index e59e43d2..ff989b19 100644 --- a/doc/ru_RU/installation.markdown +++ b/doc/ru_RU/installation.markdown @@ -75,6 +75,7 @@ ├── assets -> ../kanboard/assets ├── doc -> ../kanboard/doc + ├── cli -> ../kanboard/cli ├── favicon.ico -> ../kanboard/favicon.ico ├── index.php -> ../kanboard/index.php ├── jsonrpc.php -> ../kanboard/jsonrpc.php diff --git a/doc/ru_RU/translations.markdown b/doc/ru_RU/translations.markdown index f4bcafc0..0b9c6752 100644 --- a/doc/ru_RU/translations.markdown +++ b/doc/ru_RU/translations.markdown @@ -1,61 +1,25 @@ Переводы на другие языки (локализация) ====================================== - - Как перевести Канборд на новый язык?[¶](#how-to-translate-kanboard-to-a-new-language "Ссылка на этот заголовок") ---------------------------------------------------------------------------------------------------------------- - - - Переводы хранятся в директории `app/Locale` - - - - В этой директории есть поддиректории для разных языков, например, для русского имеется `ru_RU`, для французского - `fr_FR` и т.д. - - - - Переводы находятся в PHP файле, который возвращает массив с парой ключ-значение - - - - Ключ - оригинальный текст на английском и значение - перевод на соответсвующем языке - - - - **Французские переводы всегда в актуальном состоянии** - - - - Всегда используйте последнюю версию (branch master) - - ### Создание нового перевода[¶](#create-a-new-translation "Ссылка на этот заголовок") 1. Создайте новую директорию: `app/Locale/xx_XX`, например `app/Locale/fr_CA` для канадского фрацузского - - - 2. Создайте новый файл для перевода: `app/Locale/xx_XX/translations.php` - - - 3. Используйте как образец содержимое французского перевода (локализации) и замените значения - - - 4. Внесите изменения в файл `app/Model/Language.php` - - - 5. Проверьте добавленный язык на локальной версии Канборда - - - 6. Пошлите [pull-request на Github](https://help.github.com/articles/using-pull-requests/) @@ -63,93 +27,46 @@ Как обновить имеющийся перевод?[¶](#how-to-update-an-existing-translation "Ссылка на этот заголовок") ----------------------------------------------------------------------------------------------------- - - 1. Откройте файл перевода `app/Locale/xx_XX/translations.php` - - - 2. Отсутсвующие переводы закоментированы - `//` и значения пустые, нужно заполнить значения и удалить коментарий - - - 3. Проверьте внесенные изменения на локальной версии Канборда и пошлите [pull-request](https://help.github.com/articles/using-pull-requests/) - Как добавить новый текст перевода в приложение?[¶](#how-to-add-new-translated-text-in-the-application "Ссылка на этот заголовок") --------------------------------------------------------------------------------------------------------------------------------- - - Переводы отображаются с помощью функций в исходном коде: - - `t()`: показывает текст с HTML escaping - - - - `e()`: показывает текст без HTML escaping - Всегда используйте английскую версию исходного кода. - - - Текстовые строки используют функцию `sprintf()` для замены элементов: - - - `%s` используется для замены строки - - - - `%d` используется для замены цифры - Ознакомится с доступными форматами вы можете в [документации PHP](http://php.net/sprintf). - - Как найти отсутствующие переводы в приложении?[¶](#how-to-find-missing-translations-in-the-applications "Ссылка на этот заголовок") ----------------------------------------------------------------------------------------------------------------------------------- - - Из терминала запустите следующую команду: - - - ./kanboard locale:compare - - + ./cli locale:compare Все отсутствующие и неиспользуемые переводы будут показаны на экране. Добавьте их во французскую локализацию и синхронизируйте с другими локализациями (смотрите ниже) - - Как синхронизировать файлы переводов?[¶](#how-to-synchronize-translation-files "Ссылка на этот заголовок") ---------------------------------------------------------------------------------------------------------- - - В оболочке Unix запустите следующую команду: - - - ./kanboard locale:sync - - + ./cli locale:sync Французский перевод используется для ссылки на другие локализации. - - - - - [Русская документация Kanboard](http://kanboard.ru/doc/) - diff --git a/doc/screenshots/mention-autocomplete.png b/doc/screenshots/mention-autocomplete.png Binary files differdeleted file mode 100644 index f23fb6d1..00000000 --- a/doc/screenshots/mention-autocomplete.png +++ /dev/null diff --git a/doc/screenshots/user-mentions.png b/doc/screenshots/user-mentions.png Binary files differnew file mode 100644 index 00000000..d5f7bcc6 --- /dev/null +++ b/doc/screenshots/user-mentions.png diff --git a/doc/tr_TR/2fa.markdown b/doc/tr_TR/2fa.markdown new file mode 100644 index 00000000..d101ae6b --- /dev/null +++ b/doc/tr_TR/2fa.markdown @@ -0,0 +1,33 @@ +Çift-Kademeli Kimlik Doğrulama +========================= + +Her kullanıcı [Çift-Kademeli Kimlik Doğrulama two-factor authentication](http://en.wikipedia.org/wiki/Two_factor_authentication) yı aktyif edebilir. +Başarılı bir oturum açtıktan sonra, kullanıcıya Kanboard'a erişim izni vermeleri için bir kerelik kod (6 karakter) istenecektir. + +Bu kod, genellikle akıllı telefonunuza takılı olan uyumlu bir yazılım tarafından sağlanmalıdır. + +Kanboard, [RFC 6238] (http://tools.ietf.org/html/rfc6238) içinde tanımlanan [Zamana Dayalı Bir Zamanlık Şifre Algoritması Time-based One-time Password Algorithm] (http://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm) kullanır. + +Standart TOTP sistemi ile uyumlu birçok yazılım bulunmaktadır. +Örneğin, şu uygulamaları kullanabilirsiniz: + +- [Google Authenticator](https://github.com/google/google-authenticator/) (Android, iOS, Blackberry) +- [FreeOTP](https://fedorahosted.org/freeotp/) (Android, iOS) +- [OATH Toolkit Araç Seti](http://www.nongnu.org/oath-toolkit/) (Unix/Linux'da Komut satırı yardımcı programı) + +Bu sistem çevrimdışı çalışabilir ve mutlaka cep telefonunuz olması gerekmez. + +Kurmak +----- + +1. Kullanıcı profilinize git +2. Sol tarafta **İki faktörlü kimlik doğrulama** seçeneğini tıklayın ve kutuyu işaretleyin +3. Sizin için gizli bir anahtar oluşturulur. + +![2FA](screenshots/2fa.png) + +- TOTP yazılımında gizli anahtarı kaydetmeniz gerekir. Akıllı telefon kullanıyorsanız, en kolay çözüm QR kodunu FreeOTP veya Google Authenticator ile taramaktır. +- Her sefer yeni bir oturum açtığınızda, yeni bir kod sorulur +- Oturumunuzu kapatmadan önce cihazınızı test etmeyi unutmayın + +Bu özelliği her etkinleştirirken / devre dışı bıraktığınızda yeni bir gizli anahtar oluşturulur. diff --git a/doc/tr_TR/analytics-tasks.markdown b/doc/tr_TR/analytics-tasks.markdown new file mode 100644 index 00000000..d8be59e6 --- /dev/null +++ b/doc/tr_TR/analytics-tasks.markdown @@ -0,0 +1,24 @@ +Görevler için analiz +=================== + +Her görev, görev görünümünde sol menüden erişilebilen bir analiz bölümüne sahiptir. + +Teslim ve döngü süresi +------------------- + +![Lead and cycle time](screenshots/task-lead-cycle-time.png) + +- Teslim zamanı, görev yaratma ve tamamlanma tarihi arasındaki zamandır (görev kapatıldı). +- Döngü süresi, başlangıç tarihi ile tamamlanma tarihi arasındaki zamandır. +- Görev kapalı değilse, tamamlanma tarihi yerine geçerli saat kullanılır. +- Başlangıç tarihi belirtilmemişse, çevrim süresi hesaplanmaz. + +Not: Görevi seçtiğiniz kolona taşıdığınızda başlangıç tarihini otomatik olarak tanımlamak için otomatik bir eylem yapılandırabilirsiniz. + +Her bir kolonda geçen süre +--------------------------- + +![Time spent into each column](screenshots/time-into-each-column.png) + +- Bu grafik, görev için her bir kolonda geçen toplam süreyi gösterir. +- Geçen süre, görev kapanıncaya kadar hesaplanır. diff --git a/doc/tr_TR/analytics.markdown b/doc/tr_TR/analytics.markdown new file mode 100644 index 00000000..422e01de --- /dev/null +++ b/doc/tr_TR/analytics.markdown @@ -0,0 +1,66 @@ +Analizler +========= + +Her projenin bir analiz bölümü vardır. Kanboard'u nasıl kullandığınıza bağlı olarak, şu raporları görebilirsiniz: + +Kullanıcı yeniden bölümlendirme +---------------- + +![User repartition](screenshots/user-repartition.png) + +Bu pasta grafik kullanıcı başına atanan açık görev sayısını gösterir. + +Görev dağıtımı +----------------- + +![Task distribution](screenshots/task-distribution.png) + +Bu pasta grafiği, sütun başına açık görev sayısına genel bir bakış sunar. + +Kümülatif akış diyagramı +----------------------- + +![Cumulative flow diagram](screenshots/cfd.png) + +- Bu grafik, zaman içindeki her bir sütun için toplu olarak görev sayısını gösterir. +- Her gün, her bir sütun için toplam görev sayısı kaydedilir. +- Kapatılan görevleri hariç tutmak istiyorsanız [global proje ayarları](project-configuration.markdown) seçeneğini değiştirin. + +Not: Grafiği görmek için en az iki güne kadar veri içermeniz gerekir. + +Geribildirim (Burndown) tablosu +--------------- + +![Burndown chart](screenshots/burndown-chart.png) + +Her proje için [geribildirim (Burndown) tablosu] (http://en.wikipedia.org/wiki/Burn_down_chart) mevcuttur. + +- Bu çizelge, zamana karşı yapılan işin grafik bir temsilidir. +- Kanboard, bu diyagramı oluşturmak için karmaşıklığı veya öykü(olay-hikaye) noktasını kullanır. +- Her gün, her sütunun öykü(olay-hikaye) puanlarının toplamı hesaplanır. + +Her sütuna harcanan ortalama süre +----------------------------------- + +![Average time spent into each column](screenshots/average-time-spent-into-each-column.png) + +Bu grafik, son 1000 görev için her bir sütuna harcanan ortalama süreyi gösterir. + +- Kanboard, veriyi hesaplamak için görev geçişlerini kullanır. +- Harcanan zaman, görev kapanıncaya kadar hesaplanır. + +Ortalama Teslim ve Döngü Süresi +--------------------------- + +![Average time spent into each column](screenshots/average-lead-cycle-time.png) + +Bu grafik, son 1000 görevin zaman içindeki ortalama teslim ve döngü süresini göstermektedir. + +- Teslim zamanı, görev yaratma ve tamamlanma tarihi arasındaki zamandır. +- Döngü süresi, görevin belirtilen başlangıç tarihi ile bitiş tarihine kadar olan zamandır. +- Görev kapalı değilse, tamamlanma tarihi yerine geçerli saat kullanılır. + +Bu metrikler, tüm proje için her gün hesaplanır ve kaydedilir. + +Not: Doğru istatistikleri elde etmek için [günlük-daily cronjob](cronjob.markdown) çalıştırmayı unutmayın. + diff --git a/doc/tr_TR/api-json-rpc.markdown b/doc/tr_TR/api-json-rpc.markdown new file mode 100644 index 00000000..7e3bc52f --- /dev/null +++ b/doc/tr_TR/api-json-rpc.markdown @@ -0,0 +1,72 @@ +Json-RPC API +============ + +Kullanıcı ve uygulama API'sı +------------------------ + +İki tür API erişimi vardır: + +### Uygulama API'si + +- "jsonrpc" kullanıcısı ve ayarlar sayfasında belirteç-token bulunan API'ya erişim +- Tüm prosedürlere erişim +- İzin verilen izin yok +- Sunucuda kullanıcı oturumu yok +- "My ..." ile başlayan işlemlere erişim yok (örneğin: "getMe" veya "getMyProjects") +- Olası hizmetlere-client örnek: veri taşıma / içe aktarma, başka bir sistemden görevler oluşturma, vb. + +### Kullanıcı API'si + +- Kullanıcı kimlik bilgileri (kullanıcı adı ve şifre) ile API'ye erişim +- Ayrıca, şifreniz yerine bir kişisel erişim belirteci-token da oluşturabilirsiniz. +- Uygulama rolü ve proje izinleri her prosedür için kontrol edilir +- Sunucuda bir kullanıcı oturumu oluşturuldu +- Olası hizmetlere-client örnek: yerel mobil / masaüstü uygulaması, komut satırı yardımcı programı, vb. + +Güvenlik +-------- + +- Her zaman geçerli bir sertifika ile HTTPS kullanın (düz metin iletişimi önlemek için) +- Mobil bir uygulama yaparsanız, cihazdaki kullanıcı kimlik bilgilerini güvenli bir şekilde depolamanız sizin sorumluluğunuzdur +- Kullanıcı API'sinde 3 kimlik doğrulama hatası yapıldıktan sonra, son kullanıcı end-user giriş formunu kullanarak hesabının kilidini açması gerekir +- İki-kademeli kimlik doğrulama API aracılığıyla henüz mevcut değil + +Protokol +-------- + +Kanboard, harici programlarla etkileşim kurmak için Json-RPC protokolünü kullanır. + +JSON-RPC, JSON'da kodlanmış uzaktan yordam çağrı protokolüdür. +XML-RPC ile hemen hemen aynı şey ama JSON biçimi iledir. + +[Protokolün 2. versiyonunu](http://www.jsonrpc.org/specification) kullanıyorsanız, +API'yi `POST` HTTP isteği ile çağırmalısınız. + +Kanboard, yığın isteklerini destekler, böylece tek bir HTTP isteğinde birden fazla API çağrısı yapabilirsiniz. Daha yüksek ağ gecikmeli mobil istemciler için özellikle yararlıdır. + +Kullanımı +----- + +- [Kimlik Doğrulama](api-authentication.markdown) +- [Örnekler](api-examples.markdown) +- [Uygulama](api-application-procedures.markdown) +- [Projeler](api-project-procedures.markdown) +- [Proje İzinleri](api-project-permission-procedures.markdown) +- [Panolar](api-board-procedures.markdown) +- [Kolonlar](api-column-procedures.markdown) +- [Kulvarlar](api-swimlane-procedures.markdown) +- [Kategoriler](api-category-procedures.markdown) +- [Otomatik İşlemler](api-action-procedures.markdown) +- [Görevler](api-task-procedures.markdown) +- [Alt-Görevler](api-subtask-procedures.markdown) +- [Alt Görev Süre Çizelgesi](api-subtask-time-tracking-procedures.markdown) +- [Görev Dosyaları](api-task-file-procedures.markdown) +- [Proje Dosyaları](api-project-file-procedures.markdown) +- [Bağlantılar](api-link-procedures.markdown) +- [İç Görev Bağlantıları](api-internal-task-link-procedures.markdown) +- [Harici Görev Bağlantıları](api-external-task-link-procedures.markdown) +- [Yorumlar](api-comment-procedures.markdown) +- [Kullanıcılar](api-user-procedures.markdown) +- [Gruplar](api-group-procedures.markdown) +- [Grup Üyeleri](api-group-member-procedures.markdown) +- [Ben](api-me-procedures.markdown) diff --git a/doc/tr_TR/application-configuration.markdown b/doc/tr_TR/application-configuration.markdown new file mode 100644 index 00000000..c0134469 --- /dev/null +++ b/doc/tr_TR/application-configuration.markdown @@ -0,0 +1,45 @@ +Uygulama ayarları +==================== + +Uygulama için bazı parametreler ayarlar sayfasında değiştirilebilir. +Bu ayarları yalnızca yöneticiler değiştirebilir. + +Sağ üstteki **Ayarlar** menüsüne gidin, ardından soldaki **Uygulama ayarları** seçeneğini seçin. + +![Uygulama ayarları](screenshots/application-settings.png) + + +### Uygulama URL + +Bu parametre, e-posta bildirimleri için kullanılır. +E-postalarınızda altbilgi(footer) alanı, Kanboard görevine bir bağlantı içerir. + +### Dil + +Uygulama dili her an değiştirilebilir. +Dil, tüm kullanıcılar için belirlenecek. + + +### Saat dilimi + +Varsayılan olarak, Kanboard UTC'yi saat dilimi olarak kullanır, ancak kendi saat dilimini tanımlayabilirsiniz. +Liste, web sunucunuz tarafından desteklenen tüm saat dilimlerini içerir. + + +### Tarih formatı + +Tarih alanlarında kullanılan girdi biçimi, örneğin görevler için son tarih. + +Kanboard, 4 farklı format sunuyor: + +- DD/MM/YYYY +- MM/DD/YYYY (varsayılan) +- YYYY/MM/DD +- MM.DD.YYYY + +[ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) biçimi daima kabul edilir (YYYY-MM-DD veya YYYY_MM_DD). + + +### Özel Stil(CSS) Sayfası + +Kanboard varsayılan stilini geçersiz kılmak veya geliştirmek için kendi CSS'nizi yazın. diff --git a/doc/tr_TR/assets.markdown b/doc/tr_TR/assets.markdown new file mode 100644 index 00000000..3c4ada0e --- /dev/null +++ b/doc/tr_TR/assets.markdown @@ -0,0 +1,50 @@ +Varlıklarğ-assets (Javascript ve CSS dosyaları) nasıl oluşturulur +============================================== + +Stil sayfası ve Javascript dosyaları bir araya getirilir ve küçültülür. + +- Orijinal CSS dosyaları `assets/css/src/*.css` klasöründe saklanır +- Orijinal Javascript kodu `assets/js/src/*.js` klasöründe saklanır +- `assets/*/vendor.min.*` birleştirilmiş ve küçültülmüş harici bağımlılıklardır +- `assets/*/app.min.*` birleştirme ve küçültülmüş uygulama kaynak kodu + +Gereksinimler +------------ + +- `npm` ile [NodeJS](https://nodejs.org/) + +Javascript ve CSS dosyalarını oluşturma +--------------------------------- + +Kanboard, öğeleri oluşturmak için [Gulp](http://gulpjs.com/) ve bağımlılıkları yönetmek için [Bower](http://bower.io/) kullanır. +Bu araçlar, projeye NodeJS bağımlılıkları olarak yüklenir. + +### Her şeyi çalıştır + +```bash +make static +``` + +### `vendor.min.js` ve `vendor.min.css` leri oluşturun + +```bash +gulp vendor +``` + +### `app.min.js` oluşturun + +```bash +gulp js +``` + +### `app.min.css` oluşturun + +```bash +gulp css +``` + +Notlar +----- + +Varlıkların oluşturulması Kanboard'un arşivinden mümkün değildir, havuzun klonlamanız gerekir. + diff --git a/doc/tr_TR/automatic-actions.markdown b/doc/tr_TR/automatic-actions.markdown new file mode 100644 index 00000000..600d735c --- /dev/null +++ b/doc/tr_TR/automatic-actions.markdown @@ -0,0 +1,108 @@ +Otomatik İşlemler +================= + +Kullanıcı etkileşimini en aza indirgemek için, Kanboard otomatik işlemleri desteklemektedir. + +Her otomatik işlem şu şekilde tanımlanır: + +- Dinlemek için bir etkinlik +- Bu etkinlikle bağlantılı işlem +- Sonunda tanımlamak için bazı parametreler + +Her projenin farklı otomatik eylemler kümesi vardır, proje girişi sayfasında yapılandırma panelinde bulunur, **Otomatik işlemler** bağlantısına tıklayın. + +Yeni bir eylem ekle +---------------- + +**Yeni bir otomatik işlem ekle** bağlantısını tıklayın. + +![Automatique action](screenshots/automatic-action-creation.png) + +- Bir eylem seçin +- Sonra bir etkinlik seçin +- Ve son olarak, parametreleri tanımlayın + +Kullanılabilir işlemlerin listesi +------------------------- + +- Harici bir sağlayıcının yorumunu oluşturma +- Görevi sütunlar arasında taşırken yorum günlüğü ekleme +- Otomatik olarak bir renge dayalı bir kategori atama +- Kategoriyi harici bir etikete göre değiştirin +- Bağlantıya dayalı otomatik olarak bir kategori atama +- Bir kategoriyi temel alan otomatik olarak bir renk ata +- Görev belirli bir kolona taşıntığında renk ata +- Belirli bir görev bağlantısı kullanırken görev rengini değiştirme +- Belirli bir kullanıcıya renk atama +- Görevi eylemi yapan kişiye atayın +- Görevi, sütun değiştiğinde işlemi yapan kişiye atayın +- Görevi belirli bir kullanıcıya atayın +- Harçlı kişiyi harici bir kullanıcı adına göre değiştirin +- Görevi kapat +- Görevi belirli bir sütunda kapatma +- Harici bir sağlayıcıdan bir görev oluşturma +- Görevin başka bir projeye kopyalanması +- Görevini e-postayla birine gönderin +- Görevi başka bir projeye taşı +- Görevi bir kullanıcıya atandığında başka bir kolona taşıyın +- Kategori değiştirildiğinde görevi başka bir kolona taşı +- Görev sahibi silindiğinde, görevi başka bir kolona taşı +- Görev aç +- Başlangıç tarihini otomatik olarak güncelle + +Örnekler +-------- + +İşte gerçek hayatta kullanılan bazı örnekler: + +### Bir görevi "Bitti" kolonuna taşıdığımda, bu görevi otomatik olarak kapat + +- İşlemi seçin: **Bir görevi belirli bir sütunda kapatın** +- Etkinliği seçin: **Görevi başka bir kolona taşıyın** +- Eylem parametresini tanımlayın: **Kolon=Bitti** (hedef kolon budur) + +### Bir görevi "Doğrulanacak" kolonuna taşıdığımda, bu görevi belirli bir kullanıcıya atayın + +- İşlemi seçin: **Görevi belirli bir kullanıcıya atayın** +- Etkinliği seçin: **Görevi başka bir kolona taşıyın** +- Eylem parametrelerini tanımlayın: **Kolon=Doğrulanacak** ve **Kullanıcı=Bob** (Bob bizim test görevlimizdir) + +### Görevi "Çalışma sürüyor" kolonuna taşıdığımda, bu görevi geçerli kullanıcıya atayın + +- İşlemi seçin: **Görevi, kolon değiştiğinde işlemi yapan kişiye atayın** +- Etkinliği seçin: **Görevi başka bir kolona taşıyın** +- Eylem parametresini tanımlayın: **Kolon=Çalışma sürüyor** + +### Bir görev tamamlandığında, bu görevi başka bir projeye kopyalayın + +Diyelim ki "Müşteri Siparişi" ve "Üretim" olmak üzere iki projemiz var, sipariş onaylandıktan sonra onu "Üretim" projesine değiştirelim. + +- İşlemi seçin: **Görevi başka bir projeye çoğaltın** +- Etkinliği seçin: **Görevi kapatma** +- Eylem parametrelerini tanımlayın: **Kolon=Doğrulanmış** ve **Proje=Üretim** + +### Bir görev son kolona taşıntığında, aynı görevi başka bir projeye taşıyın + +Diyelim ki iki proje "Fikirler" ve "Geliştirme" var, bir kez fikir geçerliliği onaylandıktan sonra onu "Geliştirme" projesine takas edelim. + +- İşlemi seçin: **Görevi başka bir projeye taşıyın** +- Etkinliği seçin: **Görevi başka bir kolona taşıyın** +- Eylem parametrelerini tanımlayın: **Kolon=Doğrulanmış** ve **Proje=Geliştirme** + +### Bob kullanıcısına otomatik olarak bir renk atamak istiyorum + +- İşlemi seçin: **Belirli bir kullanıcıya renk atayın** +- Etkinliği seçin: **Görev atayanı değişim** +- Eylem parametrelerini tanımlayın: **Renk=Yeşil** ve **Atayan=Bob** + +### Tanımlanan "Özellik İsteği" kategorisine otomatik olarak bir renk atamak istiyorum + +- İşlemi seçin: **Otomatik olarak bir kategoriye dayalı bir renk atayın** +- Etkinliği seçin: **Görev oluşturma veya değiştirme** +- Eylem parametrelerini tanımlayın: **Renk=Mavi** ve **Kategori=Özellik İsteği** + +### Görev "Çalışma sürüyor" sütununa taşındığında başlangıç tarihini otomatik olarak ayarlamak istiyorum + +- İşlemi seçin: **Başlangıç tarihini otomatik olarak güncelleyin** +- Etkinliği seçin: **Görevi başka bir kolona taşıyın** +- Eylem parametrelerini tanımlayın: **Kolon=Çalışma sürüyor** diff --git a/doc/tr_TR/board-collapsed-expanded.markdown b/doc/tr_TR/board-collapsed-expanded.markdown new file mode 100644 index 00000000..d26b27cb --- /dev/null +++ b/doc/tr_TR/board-collapsed-expanded.markdown @@ -0,0 +1,18 @@ +Daraltılmış ve Genişletilmiş mod +=========================== + +Tahtadaki görevler daraltılmış veya genişletilmiş modda görüntülenebilir. +Bir görünümden diğerine geçmek, **"s"** klavye kısayoluyla veya soldaki açılır menüyü kullanarak yapılabilir. + +Daraltılmış mod +-------------- + +![Tasks collapsed](screenshots/board-collapsed-mode.png) + +- Görev başkasına devredilirse, kişinin baş harfleri görev numarasının yanında gösterilir +- Görev başlığı çok uzunsa, tam başlıklı bir araç ipucu göstermek için farenizi görevin üzerine koyabilirsiniz. + +Genişletilmiş mod +------------- + +![Tasks expanded](screenshots/board-expanded-mode.png) diff --git a/doc/tr_TR/board-configuration.markdown b/doc/tr_TR/board-configuration.markdown new file mode 100644 index 00000000..99f87f07 --- /dev/null +++ b/doc/tr_TR/board-configuration.markdown @@ -0,0 +1,24 @@ +Pano ayarları +============== + +Sağ Üst menüden **Ayarlar** menüsüne gidin, ardından soldaki **Pano ayarları** seçimini yapın. + +![Board settings](screenshots/board-settings.png) + +### Görev öne çıkarma + +Bu özellik, yakın zamanda bir görev taşındığında görevin çevresinde bir gölge görüntüler. + +Bu özelliği devre dışı bırakmak için 0 değerini, varsayılan olarak 2 gün (172800 saniye) olarak ayarlayın. + +2 günden beri taşınan herşey görevin çevresinde gölgeli olacaktır. + +### Heskese açık paylaşılan Pano(public board) için yenileme aralığı + +Bir panoyu paylaştığınızda, sayfa her 60 saniyede otomatik olarak varsayılan olarak yenilenir. + +### Özel Pano için yenileme aralığı + +Web tarayıcınız bir tahtada açık olduğunda, bir şey bir başkası tarafından değiştirildiğinde Kanboard her 10 saniyede bir kontrol eder. + +Teknik olarak bu süreç Ajax yoklaması ile yapılır. diff --git a/doc/tr_TR/board-horizontal-scrolling-and-compact-view.markdown b/doc/tr_TR/board-horizontal-scrolling-and-compact-view.markdown new file mode 100644 index 00000000..e42abb65 --- /dev/null +++ b/doc/tr_TR/board-horizontal-scrolling-and-compact-view.markdown @@ -0,0 +1,10 @@ +Yatay kaydırma ve kompakt mod +===================================== + +PAno ekranınıza sığmadığı zaman, altta yatay bir kaydırma çubuğu görünür. + +Bununla birlikte, ekranınızdaki tüm sütunları görüntülemek için kompakt ekrana geçmek mümkündür. + +![Switch to compact mode](screenshots/board-compact-mode.png) + +Yatay kaydırma ve kompakt görünüm arasındaki geçiş, klavye kısayol **"c"** ile veya sol üstteki açılır menüyü kullanarak yapılabilir. diff --git a/doc/tr_TR/board-show-hide-columns.markdown b/doc/tr_TR/board-show-hide-columns.markdown new file mode 100644 index 00000000..ea362afe --- /dev/null +++ b/doc/tr_TR/board-show-hide-columns.markdown @@ -0,0 +1,12 @@ +Panoda sütunları göster ve gizle +================================== + +Sütunları çok pratik bir şekilde gizleyebilir veya görüntüleyebilirsiniz: + +![Hide a column](screenshots/hide-column.png) + +Bir sütunu gizlemek için sütun açılır menüsünü tıklayın ve "Bu sütunu gizle" yi seçin: + +![Show a column](screenshots/show-column.png) + +Sütunu tekrar göstermek için "artı simgesini" tıklayın. diff --git a/doc/tr_TR/bruteforce-protection.markdown b/doc/tr_TR/bruteforce-protection.markdown new file mode 100644 index 00000000..5b543824 --- /dev/null +++ b/doc/tr_TR/bruteforce-protection.markdown @@ -0,0 +1,35 @@ +(Brute Force)Kaba kuvvet Koruma +====================== + +Kanboard'un kaba kuvvet koruması, kullanıcı hesabı düzeyinde çalışır: + +- Aynı kullanıcı adı için üç kimlik doğrulama hatası yapıldıktan sonra, oturum açma formu, otomatik bot hazırlayıcıları önlemek için bir captcha resmi görüntüler. +- 6 kimlik doğrulama başarısızlığından sonra, kullanıcı hesabı 15 dakika boyunca kilitlenir. + +Bu özellik yalnızca oturum açma formunu kullanan kimlik doğrulama yöntemleri için kullanılabilir. + +Bununla birlikte **kullanıcı API'sı aracılığıyla üç kimlik doğrulama hatasından sonra**, giriş formunu kullanarak hesabın kilidinin açılması gerekir. + +Botlar, çeşitli anonim vekilleri kullanabileceğinden, Kanboard herhangi bir IP adresini engellemez. Bununla birlikte, büyük taramaları önlemek için [fail2ban] (http://www.fail2ban.org) gibi harici araçları kullanabilirsiniz. + +Yapılandırma +------------- + +Varsayılan ayarlar şu yapılandırma değişkenleriyle değiştirilebilir: + +```php +// 3 kimlik doğrulama hatasından sonra captcha'yı etkinleştir +define('BRUTEFORCE_CAPTCHA', 3); + +// 6 kimlik doğrulama hatasından sonra hesabı kilitle +define('BRUTEFORCE_LOCKDOWN', 6); + +// Hesap süresini dakika olarak kilitle +define('BRUTEFORCE_LOCKDOWN_DURATION', 15); +``` + +Kullanıcıların kilidini açma +--------------- + +15 dakika beklemek istemiyorsanız kullanıcı arayüzünden bir kullanıcının kilidini kaldırabilirsiniz. +Yönetici olarak, kullanıcı profiline gidin ve "Bu kullanıcının kilidini aç" ı tıklayın. diff --git a/doc/tr_TR/calendar-configuration.markdown b/doc/tr_TR/calendar-configuration.markdown new file mode 100644 index 00000000..0ab2550f --- /dev/null +++ b/doc/tr_TR/calendar-configuration.markdown @@ -0,0 +1,44 @@ +Takvim ayarları +================= + +**Ayarlar** menüsüne gidin, ardından soldaki **Takvim ayarları** seçeneğini seçin. + +![Calendar settings](screenshots/calendar-settings.png) + +Kanboard'da iki farklı takvim vardır: + +- Proje takvimi +- Kullanıcı takvimi (dashboard-gösterge tablosundan kullanılabilir) + +Proje takvimi +---------------- + +Bu takvim, oluşturulma tarihi veya başlangıç tarihine dayanan bitiş tarihi ve görevleri olan görevleri gösterir. + +### Görevleri oluşturma tarihe göre göster + +- Takvim etkinliğinin başlangıç tarihi, görevin oluşturulma tarihidir. +- Etkinliğin bitiş tarihi tamamlanma tarihidir. + +### Görevleri başlangıç tarihine göre göster + +- Takvim etkinliğinin başlangıç tarihi, görevin başlangıç tarihidir. +- Bu tarih el-ile manuel olarak tanımlanabilir. +- Etkinliğin bitiş tarihi tamamlanma tarihidir. +- Başlama tarihi yoksa, görev takvimde görünmez. + +Kullanıcı takvimi +------------- + +Bu takvim yalnızca kullanıcıya atanan görevleri ve isteğe bağlı olarak alt görev bilgisini gösterir. + +### Alt görevleri zaman izlemeye göre göster + +- Takvimdeki alt görevleri zaman izleme tablosunda kaydedilen bilgilerden görüntüleyin. +- Kullanıcı zaman çizelgesiyle kesişme noktası da hesaplanır. + +### Alt görev tahminlerini göster (gelecek çalışmaların tahmini) + +- Alt görevler için "todo" statüsünde ve tanımlanmış "tahmini" değerli gelecekteki çalışmalarının tahmini gösterilir. + + diff --git a/doc/tr_TR/calendar.markdown b/doc/tr_TR/calendar.markdown new file mode 100644 index 00000000..c2051d44 --- /dev/null +++ b/doc/tr_TR/calendar.markdown @@ -0,0 +1,20 @@ +Takvim +======== + +Takvim için iki farklı görünüm vardır: + +- Filtrelerle proje görünümü (panoda bulunur) +- Kullanıcı görünümü (kontrol panelinden ve kullanıcı bölümünden kullanılabilir) + +Şu anda takvim şu bilgileri görüntüleyebilmektedir: + +- Vade tarihli görevler, en üstte gösterilir. **Görevi başka bir güne ** geçirmek suretiyle vade değişimi yapabilirsiniz**. +- Görevler, oluşturulma tarihi veya başlangıç tarihini temel alır.** Bu etkinlikler takvimle değiştirilemez**. +- Alt görev zaman takibi, kaydedilen tüm zaman aralığı takvimde gösterilecektir. +- Alt iş tahminleri, sol iş tahminleri + +![Calendar](screenshots/calendar.png) + +Takvim yapılandırması ayarlar sayfasından değiştirilebilir. + +Not: Teslim tarihi, zaman bilgisi içermemektedir. diff --git a/doc/tr_TR/centos-installation.markdown b/doc/tr_TR/centos-installation.markdown new file mode 100644 index 00000000..df20404b --- /dev/null +++ b/doc/tr_TR/centos-installation.markdown @@ -0,0 +1,83 @@ +CentOS'da Kanboard Kurulumu +=============================== + +Centos 7 +-------- + +PHP'yi ve Apache'ye kurun: + +```bash +yum install -y php php-mbstring php-pdo php-gd unzip wget +``` + +Varsayılan olarak, Centos 7, PHP 5.4.16 ve Apache 2.4.6 kullanır. + +Apache'yi yeniden başlatın: + +```bash +systemctl restart httpd.service +``` + +Kanboard'u kurmak: + +```bash +cd /var/www/html +wget https://kanboard.net/kanboard-latest.zip +unzip kanboard-latest.zip +chown -R apache:apache kanboard/data +rm kanboard-latest.zip +``` + +Centos 6.x +---------- + +PHP'yi ve Apache'yi kurun: + +```bash +yum install -y php php-mbstring php-pdo php-gd unzip wget +``` + +Varsayılan olarak, Centos 6.5, PHP 5.3.3 ve Apache 2.2.15'i kullanır. + +Kısa etiketleri etkinleştirin: + +- Dosyayı düzenleyin `/etc/php.ini` +- Satırı değiştirin; `short_open_tag = On` + +Apache'yi yeniden başlatın: + +```bash +service httpd restart +``` + +Kanboard'u kurmak: + +```bash +cd /var/www/html +wget https://kanboard.net/kanboard-latest.zip +unzip kanboard-latest.zip +chown -R apache:apache kanboard/data +rm kanboard-latest.zip +``` + +SELinux kısıtlamaları +-------------------- + +SELinux etkinleştirilmişse, Apache kullanıcısının dizin verilerine yazabildiğinden emin olun: + +```bash +chcon -R -t httpd_sys_content_rw_t /var/www/html/kanboard/data +``` + +Sunucunuzu, SELinux'la olduğu gibi, Kanboard'un e-posta göndermelerine ve harici ağ istekleri almasına izin verecek şekilde yapılandırmalarını sağlayın: + +```bash +setsebool -P httpd_can_network_connect=1 +``` + +LDAP, SMTP, Web kancaları veya herhangi bir üçüncü taraf entegrasyonu kullanıyorsanız harici bağlantılara izin verilmesi gereklidir. + +Notlar +----- + +Kanboard'un bazı özellikleri, [günlük arka plan işleri](cronjob.markdown) çalıştırmanızı gerektirir. diff --git a/doc/tr_TR/cli.markdown b/doc/tr_TR/cli.markdown new file mode 100644 index 00000000..260921c9 --- /dev/null +++ b/doc/tr_TR/cli.markdown @@ -0,0 +1,224 @@ +Komut satırı arayüzü-CLI +====================== + +Kanboard, herhangi bir Unix terminalinden kullanılabilen basit bir komut satırı arabirimi sağlar. +Bu araç yalnızca yerel makinede kullanılabilir. + +Bu özellik, komutları web sunucusu işlemleri dışında çalıştırmak için kullanışlıdır. + +Kullanımı +----- + +- Bir terminal açın ve Kanboard dizinine gidin (örneğin: `cd /var/www/kanboard`) +- `./cli` veya `php cli` komutunu çalıştırın + +```bash +Kanboard version master + +Usage: + command [options] [arguments] + +Options: + -h, --help Display this help message + -q, --quiet Do not output any message + -V, --version Display this application version + --ansi Force ANSI output + --no-ansi Disable ANSI output + -n, --no-interaction Do not ask any interactive question + -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug + +Available commands: + cronjob Execute daily cronjob + help Displays help for a command + list Lists commands + worker Execute queue worker + db + db:migrate Execute SQL migrations + db:version Show database schema version + export + export:daily-project-column-stats Daily project column stats CSV export (number of tasks per column and per day) + export:subtasks Subtasks CSV export + export:tasks Tasks CSV export + export:transitions Task transitions CSV export + locale + locale:compare Compare application translations with the fr_FR locale + locale:sync Synchronize all translations based on the fr_FR locale + notification + notification:overdue-tasks Send notifications for overdue tasks + plugin + plugin:install Install a plugin from a remote Zip archive + plugin:uninstall Remove a plugin + plugin:upgrade Update all installed plugins + projects + projects:daily-stats Calculate daily statistics for all projects + trigger + trigger:tasks Trigger scheduler event for all tasks + user + user:reset-2fa Remove two-factor authentication for a user + user:reset-password Change user password +``` + +Kullanılabilir komutlar +------------------ + +### Görevleri CSV olarak dışa aktarma + +Kullanımı: + +```bash +./cli export:tasks <project_id> <start_date> <end_date> +``` + +Örnek: + +```bash +./cli export:tasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +``` + +CSV verileri şu adrese gönderilir; `stdout`. + +### Alt görevleri CSV olarak dışa aktarma + +Kullanımı: + +```bash +./cli export:subtasks <project_id> <start_date> <end_date> +``` + +Örnek: + +```bash +./cli export:subtasks 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +``` + +### Görev geçişlerini CSV olarak dışa aktarma + +Kullanımı: + +```bash +./cli export:transitions <project_id> <start_date> <end_date> +``` + +Örnek: + +```bash +./cli export:transitions 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +``` + +### CSV'de günlük özet verilerini dışa aktar + +Dışa aktarılan veriler standart çıktıda bastırılacaktır: + +```bash +./cli export:daily-project-column-stats <project_id> <start_date> <end_date> +``` + +Örnek: + +```bash +./cli export:daily-project-column-stats 1 2014-10-01 2014-11-30 > /tmp/my_custom_export.csv +``` + +### Gecikmiş görevler için bildirim gönder + +E-postalar, bildirimlerin etkinleştirildiği tüm kullanıcılara gönderilecektir. + +```bash +./cli notification:overdue-tasks +``` + +İsteğe bağlı parametreler: + +- `--show`: Ekran bildirimleri gönderin +- `--group`: Bir kullanıcı için tüm gecikmiş görevleri tek bir e-postayla gruplandırın (tüm projelerden) +- `--manager`: Gecikmiş tüm görevleri tek bir e-postayla proje yöneticisine gönderin + +Gecikmiş görevleri bayrağıyla da görüntüleyebilirsiniz `--show`: + +```bash +./kanboard notification:overdue-tasks --show ++-----+---------+------------+------------+--------------+----------+ +| Id | Title | Due date | Project Id | Project name | Assignee | ++-----+---------+------------+------------+--------------+----------+ +| 201 | Test | 2014-10-26 | 1 | Project #0 | admin | +| 202 | My task | 2014-10-28 | 1 | Project #0 | | ++-----+---------+------------+------------+--------------+----------+ +``` + +### Günlük proje istatistikleri hesaplamasını çalıştır + +Bu komut, her projenin istatistiklerini hesaplar: + +```bash +./cli projects:daily-stats +Run calculation for Project #0 +Run calculation for Project #1 +Run calculation for Project #10 +``` + +### Görevler için tetikleyici + +Bu komut, her projenin açık görevlerine "günlük cronjob etkinliği" gönderir. + +```bash +./cli trigger:tasks +Trigger task event: project_id=2, nb_tasks=1 +``` + +### Kullanıcı şifresini sıfırla + +```bash +./cli user:reset-password my_user +``` + +Bir şifre ve onay istenir. Karakterler ekrana yazdırılmaz. + +### Bir kullanıcı için iki-kademeli kimlik doğrulamayı kaldırma + +```bash +./cli user:reset-2fa my_user +``` + +### Bir eklenti kurma + +```bash +./cli plugin:install https://github.com/kanboard/plugin-github-auth/releases/download/v1.0.1/GithubAuth-1.0.1.zip +``` + +Not: Yüklü dosyalar, geçerli kullanıcıyla aynı izinlere sahip olacak + +### Eklentiyi kaldır + +```bash +./cli plugin:uninstall Budget +``` + +### Tüm eklentileri güncelle + +```bash +./cli plugin:upgrade +* Updating plugin: Budget Planning +* Plugin up to date: Github Authentication +``` + +### Arkaplan çalışanını çalıştır + +```bash +./cli worker +``` + +### Veritabanı geçişlerini yürütün + +`DB_RUN_MIGRATIONS` parametresi `false` olarak ayarlanırsa, veritabanı geçişlerini manuel olarak çalıştırmışsınızdır: + +```bash +./cli db:migrate +``` + +### Veritabanı şema sürümünü denetle + +```bash +./cli db:version +Current version: 95 +Last version: 96 +``` diff --git a/doc/tr_TR/closing-tasks.markdown b/doc/tr_TR/closing-tasks.markdown new file mode 100644 index 00000000..c390b477 --- /dev/null +++ b/doc/tr_TR/closing-tasks.markdown @@ -0,0 +1,16 @@ +Görevleri kapatma +================ + +Bir görev kapatıldığında, panodan gizlenir. + +Bununla birlikte, her zaman arama durumundaki **status:closed** sorgusunu kullanarak kapalı görev listesine her zaman erişebilir veya filtre açılır menüsünden **Kapalı görev** seçeneğini belirleyin. + +Bir görevi kapatmak için panodaki görev açılır menüsünden iki farklı yol vardır: + +![Close a task from drop-down menu](screenshots/menu-close-task.png) + +Veya görev ayrıntı görünümündeki görev yan çubuğu menüsünden: + +![Close task](screenshots/closing-tasks.png) + +Not: Bir görevi kapattığınızda, tamamlanmayan alt görevlerin tamamı "Bitti" durumuna değiştirilir. diff --git a/doc/tr_TR/cloudron.markdown b/doc/tr_TR/cloudron.markdown new file mode 100644 index 00000000..95c63b1d --- /dev/null +++ b/doc/tr_TR/cloudron.markdown @@ -0,0 +1,26 @@ +Cloudboard üzerinde Kanboard nasıl çalıştırılır +================================ + +[Cloudron](https://cloudron.io), Kanboard gibi web uygulamaları yükleyebileceğiniz özel bir akıllı sunucudur. +Kanboard'u özel bir alan-isim-domain e yükleyebilir ve her biri kurulum otomatik olarak Kanboard sürümleri ile yedeklenir ve güncel tutulur. + +[![Install](https://cloudron.io/img/button.svg)](https://cloudron.io/button.html?app=net.kanboard.cloudronapp) + +Hesaplar +-------- + +Uygulama, (LDAP aracılığıyla) Cloudron Kullanıcı Yönetimi ile sıkı bir şekilde bütünleşir. Sadece +Cloudron kullanıcıları Kanboard'a erişebilirler. Buna ek olarak, herhangi bir Cloudron yöneticisi +Otomatik olarak bir Kanboard yöneticisi olur. + +Eklentileri Yükleme +------------------ + +Eklentiler [Cloudron CLI](https://git.cloudron.io/cloudron/cloudron-cli) aracını kullanılarak yüklenebilir ve yapılandırılabilir. +Daha fazla bilgi için [uygulama açıklaması](https://cloudron.io/appstore.html?app=net.kanboard.cloudronapp) konusuna bakın. + +Uygulama Kaynak kodu +---------------------- + +Cloudron uygulaması için kaynak kodu [buradadır](https://git.cloudron.io/cloudron/kanboard-app). + diff --git a/doc/tr_TR/coding-standards.markdown b/doc/tr_TR/coding-standards.markdown new file mode 100644 index 00000000..f7d192a6 --- /dev/null +++ b/doc/tr_TR/coding-standards.markdown @@ -0,0 +1,24 @@ +Kodlama standartları +================ + +PHP kodu +-------- + +- Girinti: 4 spaces +- Satır sonu: Unix => `\n` +- Kodlama: UTF-8 +- Şablonlar için sadece `<?php` veya `<?=` açık tag kullanın, ancak **asla** `<?` kullanmayın +- Yöntemler ve sınıf özellikleri için daima PHPdoc yorumlarını yaz +- Kodlama stili: [PSR-1](http://www.php-fig.org/psr/psr-1/) ve [PSR-2](http://www.php-fig.org/psr/psr-2/) + +JavaScript kodu +--------------- + +- Girinti: 4 spaces +- Satır sonu: Unix => `\n` + +CSS kodu +-------- + +- Girinti: 4 spaces +- Satır sonu: Unix => `\n` diff --git a/doc/tr_TR/config.markdown b/doc/tr_TR/config.markdown new file mode 100644 index 00000000..f09b4adf --- /dev/null +++ b/doc/tr_TR/config.markdown @@ -0,0 +1,335 @@ +Yapılandırma dosyası +=========== + +Kanboard'un varsayılan ayarlarını proje kökünde veya `data` klasöründe `config.php` dosyasına ekleyerek özelleştirebilirsiniz. +`config.default.php` dosyasını` config.php` olarak yeniden adlandırabilir ve istenen değerleri değiştirebilirsiniz. + +Hata ayıklama modunu etkinleştir/devre dışı bırak +------------------------- + +```php +define('DEBUG', true); +define('LOG_DRIVER', 'file'); // Other drivers are: syslog, stdout, stderr or file +``` + +Hata ayıklama modunu etkinleştirirseniz günlük sürücüsü tanımlanmalıdır. +Hata ayıklama modu tüm SQL sorgularını ve sayfaları oluşturmak için harcanan süreyi günlüğe kaydeder. + +Eklentiler +------- + +Eklenti klasörü: + +```php +define('PLUGINS_DIR', 'data/plugins'); +``` + +Kullanıcı arayüzünden eklenti kurulumunu etkinleştirme/devre dışı bırakma: + +```php +define('PLUGIN_INSTALLER', true); // Default is true +``` + +Varsayılan eklenti dizini URL'sini değiştirin: + +```php +define('PLUGIN_API_URL', 'https://kanboard.net/plugins.json'); +``` + +Yüklenen dosyalar için klasör +------------------------- + +```php +define('FILES_DIR', 'data/files'); +``` + +Önbellek parametreleri +---------------- + +```php +// Available cache drivers are "file" and "memory" +define('CACHE_DRIVER', 'memory'); + +// Cache folder to use if cache driver is "file" (must be writeable by the web server user) +define('CACHE_DIR', DATA_DIR.DIRECTORY_SEPARATOR.'cache'); +``` + +Url yeniden yazmayı etkinleştir/devre dışı bırak +-------------------------- + +```php +define('ENABLE_URL_REWRITE', false); +``` + +E-posta yapılandırması +------------------- + +```php +// Enable/disable email configuration from the user interface +define('MAIL_CONFIGURATION', true); + +// E-mail address used for the "From" header (notifications) +define('MAIL_FROM', 'notifications@kanboard.local'); + +// Mail transport to use: "smtp", "sendmail" or "mail" (PHP mail function) +define('MAIL_TRANSPORT', 'mail'); + +// SMTP configuration to use when the "smtp" transport is chosen +define('MAIL_SMTP_HOSTNAME', ''); +define('MAIL_SMTP_PORT', 25); +define('MAIL_SMTP_USERNAME', ''); +define('MAIL_SMTP_PASSWORD', ''); +define('MAIL_SMTP_ENCRYPTION', null); // Valid values are "null", "ssl" or "tls" + +// Sendmail command to use when the transport is "sendmail" +define('MAIL_SENDMAIL_COMMAND', '/usr/sbin/sendmail -bs'); +``` + +Veritabanı ayarları +----------------- + +```php +// Run automatically database migrations +// If set to false, you will have to run manually the SQL migrations from the CLI during the next Kanboard upgrade +// Do not run the migrations from multiple processes at the same time (example: web page + background worker) +define('DB_RUN_MIGRATIONS', true); + +// Database driver: sqlite, mysql or postgres (sqlite by default) +define('DB_DRIVER', 'sqlite'); + +// Mysql/Postgres username +define('DB_USERNAME', 'root'); + +// Mysql/Postgres password +define('DB_PASSWORD', ''); + +// Mysql/Postgres hostname +define('DB_HOSTNAME', 'localhost'); + +// Mysql/Postgres database name +define('DB_NAME', 'kanboard'); + +// Mysql/Postgres custom port (null = default port) +define('DB_PORT', null); + +// Mysql SSL key +define('DB_SSL_KEY', null); + +// Mysql SSL certificate +define('DB_SSL_CERT', null); + +// Mysql SSL CA +define('DB_SSL_CA', null); +``` + +LDAP ayarları +------------- + +```php +// Enable LDAP authentication (false by default) +define('LDAP_AUTH', false); + +// LDAP server hostname +define('LDAP_SERVER', ''); + +// LDAP server port (389 by default) +define('LDAP_PORT', 389); + +// By default, require certificate to be verified for ldaps:// style URL. Set to false to skip the verification +define('LDAP_SSL_VERIFY', true); + +// Enable LDAP START_TLS +define('LDAP_START_TLS', false); + +// By default Kanboard lowercase the ldap username to avoid duplicate users (the database is case sensitive) +// Set to true if you want to preserve the case +define('LDAP_USERNAME_CASE_SENSITIVE', false); + +// LDAP bind type: "anonymous", "user" or "proxy" +define('LDAP_BIND_TYPE', 'anonymous'); + +// LDAP username to use with proxy mode +// LDAP username pattern to use with user mode +define('LDAP_USERNAME', null); + +// LDAP password to use for proxy mode +define('LDAP_PASSWORD', null); + +// LDAP DN for users +// Example for ActiveDirectory: CN=Users,DC=kanboard,DC=local +// Example for OpenLDAP: ou=People,dc=example,dc=com +define('LDAP_USER_BASE_DN', ''); + +// LDAP pattern to use when searching for a user account +// Example for ActiveDirectory: '(&(objectClass=user)(sAMAccountName=%s))' +// Example for OpenLDAP: 'uid=%s' +define('LDAP_USER_FILTER', ''); + +// LDAP attribute for username +// Example for ActiveDirectory: 'samaccountname' +// Example for OpenLDAP: 'uid' +define('LDAP_USER_ATTRIBUTE_USERNAME', 'uid'); + +// LDAP attribute for user full name +// Example for ActiveDirectory: 'displayname' +// Example for OpenLDAP: 'cn' +define('LDAP_USER_ATTRIBUTE_FULLNAME', 'cn'); + +// LDAP attribute for user email +define('LDAP_USER_ATTRIBUTE_EMAIL', 'mail'); + +// LDAP attribute to find groups in user profile +define('LDAP_USER_ATTRIBUTE_GROUPS', 'memberof'); + +// LDAP attribute for user avatar image: thumbnailPhoto or jpegPhoto +define('LDAP_USER_ATTRIBUTE_PHOTO', ''); + +// LDAP attribute for user language, example: 'preferredlanguage' +// Put an empty string to disable language sync +define('LDAP_USER_ATTRIBUTE_LANGUAGE', ''); + +// Allow automatic LDAP user creation +define('LDAP_USER_CREATION', true); + +// LDAP DN for administrators +// Example: CN=Kanboard-Admins,CN=Users,DC=kanboard,DC=local +define('LDAP_GROUP_ADMIN_DN', ''); + +// LDAP DN for managers +// Example: CN=Kanboard Managers,CN=Users,DC=kanboard,DC=local +define('LDAP_GROUP_MANAGER_DN', ''); + +// Enable LDAP group provider for project permissions +// The end-user will be able to browse LDAP groups from the user interface and allow access to specified projects +define('LDAP_GROUP_PROVIDER', false); + +// LDAP Base DN for groups +define('LDAP_GROUP_BASE_DN', ''); + +// LDAP group filter +// Example for ActiveDirectory: (&(objectClass=group)(sAMAccountName=%s*)) +define('LDAP_GROUP_FILTER', ''); + +// LDAP user group filter +// If this filter is configured, Kanboard will search user groups in LDAP_GROUP_BASE_DN +// Example for OpenLDAP: (&(objectClass=posixGroup)(memberUid=%s)) +define('LDAP_GROUP_USER_FILTER', ''); + +// LDAP attribute for the group name +define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn'); +``` + +Tersine-Proxy Kimlik Doğrulama ayarları +------------------------------------- + +```php +// Enable/disable the reverse proxy authentication +define('REVERSE_PROXY_AUTH', false); + +// Header name to use for the username +define('REVERSE_PROXY_USER_HEADER', 'REMOTE_USER'); + +// Username of the admin, by default blank +define('REVERSE_PROXY_DEFAULT_ADMIN', ''); + +// Default domain to use for setting the email address +define('REVERSE_PROXY_DEFAULT_DOMAIN', ''); +``` + +RememberMe Kimlik Doğrulama ayarları hatırla +---------------------------------- + +```php +// Enable/disable remember me authentication +define('REMEMBER_ME_AUTH', true); +``` + +Güvenli HTTP üstbilgileri ayarları +---------------------------- + +```php +// Enable or disable "Strict-Transport-Security" HTTP header +define('ENABLE_HSTS', true); + +// Enable or disable "X-Frame-Options: DENY" HTTP header +define('ENABLE_XFRAME', true); +``` + +Günlüğe kaydetme +------- + +By default, Kanboard do not log anything. +If you want to enable the logging, you have to set a log driver. + +```php +// Available log drivers: syslog, stderr, stdout or file +define('LOG_DRIVER', ''); + +// Log filename if the log driver is "file" +define('LOG_FILE', __DIR__.DIRECTORY_SEPARATOR.'data'.DIRECTORY_SEPARATOR.'debug.log'); +``` + +Kaba kuvvet Brute-force koruması +--------------------- + +```php +// Enable captcha after 3 authentication failure +define('BRUTEFORCE_CAPTCHA', 3); + +// Lock the account after 6 authentication failure +define('BRUTEFORCE_LOCKDOWN', 6); + +// Lock account duration in minute +define('BRUTEFORCE_LOCKDOWN_DURATION', 15); +``` + +Oturum +------- + +```php +// Session duration in second (0 = until the browser is closed) +// See http://php.net/manual/en/session.configuration.php#ini.session.cookie-lifetime +define('SESSION_DURATION', 0); +``` + +HTTP İstemcisi +----------- + +Harici HTTP isteklerinin bir proxy üzerinden gönderilmesi gerekiyorsa: + +```php +define('HTTP_PROXY_HOSTNAME', ''); +define('HTTP_PROXY_PORT', '3128'); +define('HTTP_PROXY_USERNAME', ''); +define('HTTP_PROXY_PASSWORD', ''); +``` + +Kendinden imzalı sertifikalara izin vermek için: + +```php +// Set to false to allow self-signed certificates +define('HTTP_VERIFY_SSL_CERTIFICATE', true); +``` + +Çeşitli ayarlar +---------------- + +```php +// Escape html inside markdown text +define('MARKDOWN_ESCAPE_HTML', true); + +// API alternative authentication header, the default is HTTP Basic Authentication defined in RFC2617 +define('API_AUTHENTICATION_HEADER', ''); + +// Hide login form, useful if all your users use Google/Github/ReverseProxy authentication +define('HIDE_LOGIN_FORM', false); + +// Disabling logout (for external SSO authentication) +define('DISABLE_LOGOUT', false); + +// Override API token stored in the database, useful for automated tests +define('API_AUTHENTICATION_TOKEN', 'My unique API Token'); + +// TOTP (2FA) issuer name +define('TOTP_ISSUER', 'Kanboard'); +``` diff --git a/doc/tr_TR/contributing.markdown b/doc/tr_TR/contributing.markdown new file mode 100644 index 00000000..ea36057b --- /dev/null +++ b/doc/tr_TR/contributing.markdown @@ -0,0 +1,70 @@ +Katılımcı Yönergeleri +====================== + +Nasıl yardımcı olabilirim? +--------------- + +Kanboard mükemmel değildir ancak yardımcı olacak birçok yol vardır: + +- Geribildirim ver +- Hataları bildir +- Çeviriler ekleyin veya güncelleyin +- Dokümantasyonu iyileştirin +- Kod yazmak +- Arkadaşlarına, Kanboard'ın harika olduğunu söyle :) + +Herhangi bir büyük taahhütte bulunmadan önce yeni bir konu açın ve teklifinizi açıklayın. + +Geribildirim vermek istiyorum +----------------------- + +- Bir şeyin geliştirilmesi gerektiğini düşünüyorsunuz (kullanıcı arayüzü, özellik talepleri) +- Fikrinizin önceden önerilip onaylanmadığını kontrol edin +- Yeni bir sayı açın +- Fikrini tarif et +- Mevcut tekliflerde +1 ile de oy kullanabilirsiniz + +Hata bildirmek istiyorum +---------------------- + +- Sorunun daha önce bildirilmediğini kontrol edin +- Yeni bir bilet aç +- Neyin kırıldığını açıkla +- Hatayı nasıl üreteceğinizi açıklayın +- Çevrenizi tanımlayın (Kanboard sürümü, işletim sistemi, web sunucusu, PHP sürümü, veritabanı sürümü, barındırma sağlayıcısı barındırma) + +Kanboard'u tercüme etmek istiyorum +---------------------------- + +Kanboard birçok dile çevrildi. +Bununla birlikte, çeviriler tam değil, [katkıda bulunmak için çeviri rehberine](https://kanboard.net/documentation/translations) göz atın. + +Belgeleri iyileştirmek istiyorum +----------------------------------- + +- Bir şeylerin net olmadığını, dilbilgisi hataları, yazım hataları var mı diye düşünüyorsun. +- Belgeler Markdown'da yazılmış ve `docs` klasöründe saklanmıştır. +- Dosyaları düzenleyin ve çekme isteği gönderin. +- Resmi web sitesindeki dokümanlar depo ile senkronize edilir. + +Koda katkıda bulunmak istiyorum +-------------------------------- + +Çekme talepleri her zaman memnuniyetle karşılanır, ancak kabul edilmesi için şu yönergeleri takip etmeniz gerekir: + +- **Büyük bir değişiklik veya tasarım önerisi yapmadan önce, tartışmaya başlamak için yeni bir bilet açın** +- Yeni bir özellik eklemek isterseniz, Kanboard'un arkasındaki felsefeye saygı gösterin. **Basitliğe** odaklanıyoruz, şişirilmiş bir yazılım istemiyoruz. +- Aynı şey, kullanıcı arabirimi, **basitlik ve verimlilik** için de geçerlidir. +- Özellik veya hata düzeltmesi başına yalnızca bir çekme isteği gönderin. +- Daha küçük bir çekme isteği daha kolay incelenir ve daha hızlı birleştirilir. +- [Birim testlerinin geçer](tests.markdown) olduğundan emin olun. +- [kodlama standartlarına](kodlama standartları.markdown) saygı gösterin. +- Korunabilir kod yazın, kod tekrarından kaçının, PHP'nin iyi uygulamalarını kullanın. + +Herhangi bir durumda, bir şey hakkında yeni bir bilet açtığından emin değilseniz. + +Arkadaşlarına, Kanboard'ın harika olduğunu söyle :) +--------------------------------------------- + +Kanboard kullanırsanız, sözcüğü çevrenize yayın. +Onlara ücretsiz ve açık kaynak yazılımın harika olduğunu söyle :) diff --git a/doc/tr_TR/create-tasks-by-email.markdown b/doc/tr_TR/create-tasks-by-email.markdown new file mode 100644 index 00000000..43762dd4 --- /dev/null +++ b/doc/tr_TR/create-tasks-by-email.markdown @@ -0,0 +1,45 @@ +E-posta ile görevler oluşturma +===================== + +Bir e-posta göndererek görevleri doğrudan oluşturabilirsiniz. +Bu özellik eklentiler kullanarak ulaşılabilir. + +Şu anda Kanboard, 3 harici hizmetler ile entegre edilmiştir: + +- [Mailgun](https://github.com/kanboard/plugin-mailgun) +- [Sendgrid](https://github.com/kanboard/plugin-sendgrid) +- [Postmark](https://github.com/kanboard/plugin-postmark) + +Bu hizmetler, herhangi bir SMTP sunucusunu yapılandırmak zorunda kalmadan gelen e-postaları işlemektedir. + +Bir e-posta alındığında, Kanboard belirli bir son noktadaki mesajı alır. +Tüm karmaşık çalışmalar bu hizmetler tarafından zaten gerçekleştirilmektedir. + +Gelen e-postaların iş akışı +------------------------ + +1. Belli bir adrese bir e-posta gönderiyorsunuz, örneğin **something+myproject@inbound.mydomain.tld** +2. E-postanız, üçüncü parti SMTP sunucularına yönlendirilir +3. SMTP sağlayıcısı, Kanboard web kancasını-hook E-postayla JSON veya çok parçalı / form-veri formatlarını çağırır +4. Kanboard, alınan e-postayı ayrıştırır ve doğru projeye göre görev oluşturur. + +Not: Yeni görevler otomatik olarak ilk kolonda oluşturulur. + +E-posta biçimi +------------ + +- E-posta adresinin yerel kısmı artı ayırıcıyı kullanmalıdır, örneğin ** kanboard + project123 ** +- Artı işaretinden sonra tanımlanan dize, bir proje tanımlayıcısıyla eşleşmelidir, örneğin **project123** ** projenin tanımlayıcısı **Proje 123** +- E-posta konusu görev başlığı haline gelir +- E-posta gövdesi görev açıklaması olur (Markdown biçimi) + +Gelen e-postalar metin veya HTML biçiminde yazılabilir. +**Kanboard, basit HTML e-postalarını Markdown** a dönüştürebilir. + +Güvenlik ve gereksinimler +------------------------- + +- Kanboard web kancası rastgele bir tokenla korunuyor +- Gönderenin e-posta adresi bir Kanboard kullanıcısı ile eşleşmelidir +- Kanboard projesinin benzersiz bir tanımlayıcısı olmalıdır, örneğin **PROJEM** +- Kanboard kullanıcısının projeye üye olması gerekir diff --git a/doc/tr_TR/creating-projects.markdown b/doc/tr_TR/creating-projects.markdown new file mode 100644 index 00000000..2a3a4913 --- /dev/null +++ b/doc/tr_TR/creating-projects.markdown @@ -0,0 +1,39 @@ +Projeleri Oluşturma +================= + +Kanboard birden fazla projeyi idare edebilir. İki tür proje vardır: + +- Takım projeleri +- Tek bir kullanıcı için özel proje + +Birden fazla kullanıcı için proje oluşturma +------------------------------------- + +- Yalnızca yöneticiler ve proje yöneticileri bu projeleri oluşturabilir +- Kullanıcı yönetimi mevcut + +Gösterge tablosundan **Yeni proje** bağlantısını tıklayın: + +![Project creation form](screenshots/new-project.png) + +Çok kolay, sadece projeniz için bir isim bulmanız gerekiyor! + +Özel proje oluşturma +-------------------------- + +- Herkes özel bir proje yaratabilir +- Burda kullanıcı yönetimi **YOK**. +- Projeye yalnızca sahibi ve yöneticiler erişebilir + +Gösterge tablosundan **Yeni özel proje** bağlantısını tıklayın. + +Başka bir projeden projeler oluşturma +-------------------------------------- + +Yeni bir proje oluşturduğunuzda, başka bir projenin özelliklerini çoğaltmayı seçebilirsiniz: + +- İzinler +- Eylemler +- Swimlanes +- Katagori +- Görevler diff --git a/doc/tr_TR/creating-tasks.markdown b/doc/tr_TR/creating-tasks.markdown new file mode 100644 index 00000000..b1953f31 --- /dev/null +++ b/doc/tr_TR/creating-tasks.markdown @@ -0,0 +1,30 @@ +Görevler Oluşturma +============== + +Panodan, sütun adının yanındaki artı işaretini tıklayın: + +![Task creation from the board](screenshots/task-creation-board.png) + +Sonra görev oluşturma formu görünür: + +![Task creation form](screenshots/task-creation-form.png) + +Alan açıklamaları: + +- **Başlık**: Panoda görünecek olan görevinizin başlığı. +- **Tanım **: [Markdown](syntax-guide.markdown) biçimini destekleyen açıklama. +- **Etiketler**: Görevlerle ilişkili etiketler listesi. +- **Başka bir görev oluştur**: Benzer bir görev oluşturmak istiyorsanız bu kutuyu işaretleyin (bazı alanlar önceden doldurulacaktır). +- **Renk**: Kartın rengini seçin. +- **Atanan**: Görev üzerinde çalışacak kişi. +- **Kategori**: Göreve yalnızca bir kategori atanabilir (yalnızca projelerde kategori varsa görünür). +- **Kolon**: Görevin oluşturulacağı kolon, göreviniz kolonun en altına yerleştirilir. +- **Öncelik**: Görev önceliği, aralık proje ayarlarında tanımlanabilir, varsayılan değerler P0 - P3'tür. +- **Karmaşıklık**: Çevik proje yönetimi (Scrum) 'da kullanılan karmaşıklık veya hikaye puanları, ekibe hikayenin ne kadar zor olduğunu anlatan bir sayıdır. Çoğu zaman insanlar Fibonacci serisini kullanıyor. +- **Referans**: Görev için harici kimlik, örneğin başka bir sistemden gelen bilet numarası olabilir +- **Orijinal Tahmin**: Görevi tamamlamak için tahmini saat. +- **Geçen Süre**: Görev üzerinde geçen süre. +- **Başlangıç Tarihi**: Bu bir tarih saati alanıdır. +- **Bitiş Tarihi**: Vadesi geçmiş görevler kırmızı geçerlilik süresine sahip olacak ve yaklaşan bitiş tarihleri panoda siyah olacaktır. Tarih seçiciye ek olarak birkaç tarih biçimi kabul edilir. + +Önizleme bağlantısıyla görev açıklamasının Markdown sözdiziminden dönüştürülmesini görebilirsiniz. diff --git a/doc/tr_TR/cronjob.markdown b/doc/tr_TR/cronjob.markdown new file mode 100644 index 00000000..188b299c --- /dev/null +++ b/doc/tr_TR/cronjob.markdown @@ -0,0 +1,56 @@ +Arka Plan İş Zaman Planlaması +========================= + +Düzgün çalışabilmek için, Kanboard günlük olarak arka planda bir iş yürütülmesini ister. +Genellikle Unix platformlarında bu işlem `cron` tarafından yapılır. + +Bu arka plan işi, bu özellikler için gereklidir: + +- Raporlar ve analizler (her bir projenin günlük istatistiklerini hesaplayın) +- Vazgeçilmiş görev bildirimleri gönder +- Olaya bağlı otomatik eylemleri yürütün "Görevler için günlük arka plan işi" + +Unix ve Linux platformlarında konfigürasyon +----------------------------------------- + +Unix/Linux işletim sistemlerinde bir cronjob tanımlamanın birden çok yolu vardır, bu örnek Ubuntu 14.04 içindir. +Prosedür, diğer sistemler için de benzerdir. + +Web sunucusu kullanıcısının crontab'sını düzenleyin: + +```bash +sudo crontab -u www-data -e +``` + +Günlük cronjobu sabah 08.00'de çalıştırma örneği: + +```bash +0 8 * * * cd /path/to/kanboard && ./cli cronjob >/dev/null 2>&1 +``` + +Not: Sqlite kullanıyorsanız, cronjob işleminin veritabanına yazma erişimi olmalıdır. +Genellikle, cronjob'u web sunucusu kullanıcısı altında çalıştırmak yeterlidir. + +Microsoft Windows Server'da Yapılandırma +----------------------------------------- + +Yinelenen görevi yapılandırmadan önce, Kanboard CLI komut dosyasını çalıştıran bir toplu iş dosyası (*.bat veya *.cmd) oluşturun. + +İşte bir örnek (`C:\kanboard.bat`): + +``` +"C:\php\php.exe" -f "C:\inetpub\wwwroot\kanboard\kanboard" cronjob +``` + +**Kurulumunuza göre PHP yürütülebilir dosyanın yolunu ve Kanboard'un komut dosyasının yolunu değiştirmelisiniz.** + +Windows Görev Zamanlayıcısını yapılandırın: + +1. "Yönetimsel Araçlar" bölümüne gidin. +2. "Görev Zamanlayıcısı" nı açın. +3. Sağda "Görev Oluştur" u seçin +4. Bir isim seçin, örneğin "Kanboard" +5. "Güvenlik Seçenekleri" altında, Sqlite kullanıyorsanız, veritabanına yazabilecek bir kullanıcı seçin (yapılandırmanıza bağlı olarak IIS_IUSRS olabilir) +6. Yeni bir "Tetikleyici" oluşturun, günlük ve bir gece, örneğin gece vakti seçin +7. Yeni bir eylem ekleyin, "Bir programı başlat" ı seçin ve yukarıda oluşturulan toplu iş dosyasını seçin + diff --git a/doc/tr_TR/currency-rate.markdown b/doc/tr_TR/currency-rate.markdown new file mode 100644 index 00000000..f775bd84 --- /dev/null +++ b/doc/tr_TR/currency-rate.markdown @@ -0,0 +1,11 @@ +Döviz kuru +============== + +Her kullanıcı, farklı para birimlerinde önceden belirlenmiş bir saat ücreti alabilir. +Birden çok para birimini işlemek zorundaysanız, burada referans para birimine göre oranı tanımlarsınız. + +Bu özellik, proje bütçesi hesaplamasında kullanılır. + +![Currency Rate](screenshots/currency-rate.png) + +Para birimi oranı ayarları ** Ayarlar> Para birimi oranları ** 'da bulunur. diff --git a/doc/tr_TR/custom-filters.markdown b/doc/tr_TR/custom-filters.markdown new file mode 100644 index 00000000..7777e2c3 --- /dev/null +++ b/doc/tr_TR/custom-filters.markdown @@ -0,0 +1,19 @@ +Özel Filtreler +============== + +Özel filtreler, herhangi bir arama sorgusunu kaydetmenize izin verir. +Bu şekilde, varsayılan filtreleri kolayca genişletebilir ve en çok kullanılan arama sorguları kaydedebilirsiniz. + +- Özel filtreler proje tarafından saklanır ve içerik oluşturucuyla ilişkilendirilir. +- Oluşturan proje yöneticisi ise, filtreyi diğer proje üyeleri ile paylaşmayı seçebilir. + +Filtre oluşturma +--------------- + +İşlem açılır menüsüne veya proje ayarlarına gidin ve **özel filtreler** öğesini seçin: + +![Custom Filter Creation](screenshots/custom-filter-creation.png) + +Filtrenizi oluşturduktan sonra, panoda varsayılan filtrelerin yanında görünecektir: + +![Custom Filter Dropdown](screenshots/custom-filter-dropdown.png) diff --git a/doc/tr_TR/custom-project-roles.markdown b/doc/tr_TR/custom-project-roles.markdown new file mode 100644 index 00000000..98c74bb4 --- /dev/null +++ b/doc/tr_TR/custom-project-roles.markdown @@ -0,0 +1,88 @@ +Özel Proje Rolleri +==================== + +Bu role ait kişiler üzerinde belirli kısıtlamalar dizisi uygulamak için özel proje rolleri oluşturabilirsiniz. +Bu özel roller her proje için tanımlanmıştır. + +Özel rol, proje üyesi rolünden devralır. +Örneğin, birini bir işlemi takip etmeye zorlamak için özel bir rol oluşturmak isteyebilirsiniz. +Görevleri yalnızca "Devam etmekte olan iş" sütunundan "Bitti" sütununa taşımanıza izin verilen bir grup insana sahip olabilirsiniz. + +Mevcut kısıtlamalar +---------------------- + +- Proje Kısıtlamaları: + - Görev oluşturulmasına izin verilmiyor + - Bir görevi kapatmak veya açmak yasaktır + - Görevin taşınmasına izin verilmiyor +- Sütun Kısıtlamaları: + - Görev oluşturulması sadece belirli bir sütun için **izin** verilir + - Görev oluşturulması yalnızca belirli bir sütun için **engel** lenir + - Bir görevi kapatmak veya açmak için sadece belirli bir sütuna **izin** verilir + - Bir görevi kapatmak veya açmak için yalnızca belirli bir sütun için **engel** lenir +- Görevleri yalnızca belirtilen sütunlar arasında taşıma + +Yapılandırma +------------- + +### 1) Yeni bir özel rol oluştur + +Proje ayarlarından, **Özel Roller** menüsünde soldaki simgesini tıklayın ve sayfanın üst kısmında **Yeni özel rol ekleyin** seçeneğini tıklayın. + +![New custom role](screenshots/new_custom_role.png) + +Rol için bir isim verin ve formu gönderin. + +### 2) Rol için bir sınırlama ekleyin + +Burada farklı kısıtlamalar vardır: + +- Proje kısıtlamaları +- Sürükle ve bırak kısıtlamaları +- Sütun kısıtlamaları + +Yeni bir kısıtlama eklemek için tabloda açılır menüye tıklayabilirsiniz: + +![Add a new restriction](screenshots/add_new_restriction.png) + +### 3) Kısıtlamalar listesi + +![List of restrictions](screenshots/example-restrictions.png) + +Örneğin, bu rol yalnızca "Geri Kayıt-Backlog" sütununda görevler oluşturabilir ve görevleri "Hazır" ve "Devam etmekte olan" sütunları arasında taşımak mümkündür. + +### 4) Rolü birine atayın + +Sol menüdeki "izinler" bölümüne gidin ve istenen rolü kullanıcıya atayın. + +![Custom project role](screenshots/custom_roles.png) + +Örnekler +-------- + +### Kullanıcıların yalnızca belirli sütunlarda görev oluşturmasına izin ver + +![Example restriction task creation](screenshots/example-restriction-task-creation.png) + +- Bu role ait kullanıcılar, yalnızca "Geri Kayıt-Backlog" sütununda yeni görevler oluşturabilir. +- 2 kuralın kombinasyonu önemlidir, aksi takdirde bu işe yaramaz. + +### Kullanıcıların görev durumunu yalnızca belirli sütunlarda değiştirmelerine izin ver + +![Example restriction task status](screenshots/example-restriction-task-status.png) + +- Bu role ait olan kullanıcılar, "Geri Kayıt-Backlog" sütunundaki görev durumunu değiştirebilecek. +- Durum açık olan görevler tahta üzerinde görünür ve durum kapalı olan görevler varsayılan olarak tahtada gizlidir. + +### Kullanıcıların belirli bir sütundaki görev durumunu değiştirmesine izin verme + +![Example column restriction](screenshots/example-restriction-task-status-blocked.png) + +Bu role ait kullanıcılar, "Tamamlandı" sütunundaki görev durumunu değiştiremez. +Ancak diğer sütunlarda da mümkün olacaktır. + +### Kullanıcıların görevleri yalnızca belirli sütunlar arasında taşımasına izin ver + +![Example restriction task drag and drop](screenshots/example-restriction-task-drag-and-drop.png) + +Bu role ait kullanıcılar, görevleri yalnızca "Hazır" ve "Devam etmekte olan" sütunları arasında taşıyabilir. diff --git a/doc/tr_TR/debian-installation.markdown b/doc/tr_TR/debian-installation.markdown new file mode 100644 index 00000000..1e1ca9f4 --- /dev/null +++ b/doc/tr_TR/debian-installation.markdown @@ -0,0 +1,67 @@ +Debian'da Kanboard Kurulumu +=============================== + +Debian 8 (Jessie) +----------------- + +Apache ve PHP'yi kurun: + +```bash +apt-get update +apt-get install -y php5 php5-sqlite php5-gd unzip +service apache2 restart +``` + +Kanboard'u kurun: + +```bash +cd /var/www/html +wget https://kanboard.net/kanboard-latest.zip +unzip kanboard-latest.zip +chown -R www-data:www-data kanboard/data +rm kanboard-latest.zip +``` + +Debian 7 (Wheezy) +----------------- + +Apache ve PHP'yi kurun: +```bash +apt-get update +apt-get install -y php5 php5-sqlite php5-gd unzip +``` + +Kanboard'u kurun: + +```bash +cd /var/www +wget https://kanboard.net/kanboard-latest.zip +unzip kanboard-latest.zip +chown -R www-data:www-data kanboard/data +rm kanboard-latest.zip +``` + +Debian 6 (Squeeze) +------------------ + +Apache ve PHP'yi kurun: + +```bash +apt-get update +apt-get install -y libapache2-mod-php5 php5-sqlite php5-gd unzip +``` + +Kanboard'u kurun: + +```bash +cd /var/www +wget https://kanboard.net/kanboard-latest.zip +unzip kanboard-latest.zip +chown -R www-data:www-data kanboard/data +rm kanboard-latest.zip +``` + +Not +----- + +Kanboard'un bazı özellikleri, [günlük arka plan işi-cronjob](cronjob.markdown) çalıştırmanızı gerektirir. diff --git a/doc/tr_TR/docker.markdown b/doc/tr_TR/docker.markdown new file mode 100644 index 00000000..b1461808 --- /dev/null +++ b/doc/tr_TR/docker.markdown @@ -0,0 +1,96 @@ +Docker ile Kanboard nasıl çalıştırılır? +================================ + +Kanboard, [Docker](https://www.docker.com) ile kolayca çalıştırabilir. + +Disk görüntü-image boyutu yaklaşık **70MB** olup aşağıdakileri içerir: + +- [Alpine Linux](http://alpinelinux.org/) +- [Süreç yöneticisi S6](http://skarnet.org/software/s6/) +- Nginx +- PHP 7 + +Kanboard cronjob'u her gece yarısı çalışıyor. +URL yeniden yazma, birlikte gelen yapılandırma dosyasında etkinleştirilmiştir. + +Kapsayıcı-konteyner çalışırken, bellek kullanımı yaklaşık **30MB** civarındadır. + +Kararlı sürümü kullanmak +---------------------- + +Kanboard'un en kararlı sürümünü elde etmek için **stable** etiketini kullanın: + +```bash +docker pull kanboard/kanboard +docker run -d --name kanboard -p 80:80 -t kanboard/kanboard:stable +``` + +Geliştirme sürümünü kullanmak (otomatik yapı) +--------------------------------------------- + +Depodaki her yeni taahhüt, [Docker Hub](https://registry.hub.docker.com/u/kanboard/kanboard/) üzerinde yeni bir yapı oluşturur. + +```bash +docker pull kanboard/kanboard +docker run -d --name kanboard -p 80:80 -t kanboard/kanboard:latest +``` + +**latest** etiketi, Kanboard'un **geliştirme versiyonudur-development version**, risk almak kendi sorumluluğunuzdadır. + +Kendi Docker görüntü-image oluşturun +--------------------------- + +Kendi görüntü-image inızı oluşturmak için Kanboard havuzunda-repository bir `Dockerfile` var. +Kanboard havuzunda-repository klonlayın ve aşağıdaki komutu çalıştırın: + +```bash +docker build -t youruser/kanboard:master . +``` + +veya + +```bash +make docker-image +``` + +Bağlantı noktası 80 üzerinde arka planda kapsayıcı-konteyner çalıştırmak için: + +```bash +docker run -d --name kanboard -p 80:80 -t youruser/kanboard:master +``` + +Cilt-Volumes +------- + +Kapsayıcınıza-konyetner 2 cilt bağlayabilirsiniz: + +- Veri klasörü: `/var/www/app/data` +- Eklentiler-Plugins klasörü: `/var/www/app/plugins` + +[Resmi Docker belgeleri](https://docs.docker.com/engine/userguide/containers/dockervolumes/) 'da açıklandığı gibi, ana makineye bir hacim bağlamak için `-v` parametresi-bayrağını kullanın. + +Kapsayıcınızı-Konteyner Yükseltme +---------------------- + +- Yeni görüntü-image koy +- Eski kapsayıcı-konteyner çıkarın +- Aynı ciltlere sahip yeni bir kapsayıcı-konteyner yeniden başlat + +Ortam Değişkenleri +--------------------- + +Ortam değişkenleri listesi [bu sayfa](env.markdown) 'da mevcuttur. + +Yapılandırma dosyaları +------------ + +- Kapsayıcı-konteyner da zaten `/var/www/app/config.php` de bulunan özel bir yapılandırma dosyası bulunmaktadır. +- Kendi yapılandırma dosyanızı veri hacmine kaydedebilirsiniz: `/var/www/app/data/config.php`. + +Kaynaklar +---------- + +- [Resmi Kanboard görüntü-image](https://registry.hub.docker.com/u/kanboard/kanboard/) +- [Docker belgeleri](https://docs.docker.com/) +- [Dockerfile kararlı sürümü](https://github.com/kanboard/docker) +- [Dockerfile dev sürümü](https://github.com/kanboard/kanboard/blob/master/Dockerfile) diff --git a/doc/tr_TR/duplicate-move-tasks.markdown b/doc/tr_TR/duplicate-move-tasks.markdown new file mode 100644 index 00000000..b0abe3a9 --- /dev/null +++ b/doc/tr_TR/duplicate-move-tasks.markdown @@ -0,0 +1,58 @@ +Görevleri çoğaltmak ve taşımak +======================== + +Bir görevi aynı projeye çoğalt +-------------------------------------- + +Görev görünümüne gidin ve soldaki **Çoğalt** seçeneğini belirleyin. + +![Task Duplication](screenshots/task-duplication.png) + +Orijinalle aynı özelliklere sahip yeni bir görev oluşturulur. + +Görevi başka bir projeye çoğalt +----------------------------------- + +Görev görünümüne gidin ve **Başka bir projeye çoğalt** seçeneğini seçin. + +![Task Duplication Another Project](screenshots/task-duplication-another-project.png) + +Açılır menüde yalnızca üye olduğunuz projeler gösterilecektir. + +Görevleri kopyalamadan önce, Kanboard kaynak ve hedef proje arasında ortak olmayan hedef özellikleri soracaktır. + +Temelde şunları tanımlamanız gerekir: + +- Hedef kulvar +- Sütun +- Kategori +- Atanan kişi + +Görevi başka bir projeye taşıma +------------------------------ + +Görev görünümüne gidin ve **Başka bir projeye taşı** öğesini seçin. + +Bir görevi başka bir proje çalışmasına çoğaltma ile aynı şekilde taşıdığınızda, görevin yeni özelliklerini seçmeniz gerekir. + +Çoğaltılan alanların listesi +------------------------- + +Çoğaltılmış özelliklerin listesi aşağıda: + +- title +- description +- date_due +- color_id +- project_id +- column_id +- owner_id +- score +- category_id +- time_estimated +- swimlane_id +- recurrence_status +- recurrence_trigger +- recurrence_factor +- recurrence_timeframe +- recurrence_basedate diff --git a/doc/tr_TR/editing-projects.markdown b/doc/tr_TR/editing-projects.markdown new file mode 100644 index 00000000..9255b88b --- /dev/null +++ b/doc/tr_TR/editing-projects.markdown @@ -0,0 +1,15 @@ +Projeleri Düzenleme +================ + +Projeler yeniden adlandırılabilir ve istediğiniz zaman devre dışı bırakılabilir. + +Bir projeyi yeniden adlandırmak için soldaki "Projeyi düzenle" bağlantısına tıklamanız yeterlidir. + +![Project edition](screenshots/project-edition.png) + +- Başlangıç tarihi ve bitiş tarihi proje Gantt grafiğini oluşturmak için kullanılır +- Tanım, panoda ve proje listeleme sayfasında araç ipucu olarak görünür +- Yöneticiler ve proje yöneticileri, "Özel proje" onay kutusunu değiştirerek özel bir projeyi birden fazla kullanıcı projesine dönüştürebilirler. +- Birden fazla kullanıcı projesini özel bir projeye dönüştürebilirsiniz. + +Not: Bir projeyi özel yaptığınızda, mevcut tüm kullanıcılar projeye hâlâ erişebilir. Kullanıcı listesini ihtiyaçlarınıza göre ayarlayın. diff --git a/doc/tr_TR/email-configuration.markdown b/doc/tr_TR/email-configuration.markdown new file mode 100644 index 00000000..b20c8a51 --- /dev/null +++ b/doc/tr_TR/email-configuration.markdown @@ -0,0 +1,116 @@ +E-posta yapılandırması +=================== + +Kullanıcı ayarları +------------- + +E-posta bildirimlerini almak için, Kanboard kullanıcıları şunları yapmalıdır: + +- Profillerinde etkinleştirilmiş bildirimler +- Profillerinde geçerli bir e-posta adresiniz olsun +- Bildirimleri tetikleyecek projenin bir üyesi olun + +Not: İşlemi gerçekleştiren oturum açmış kullanıcı herhangi bir bildirim almıyor, yalnızca diğer proje üyeleri. + +E-posta taşımaları +---------------- + +Kullanabileceğiniz birkaç e-posta ulaşımı vardır: + +- SMTP +- Sendmail +- PHP doğal-native posta fonksiyonu +- Diğer yöntemler harici eklentiler tarafından sağlanabilir: Postmark, Sendgrid ve Mailgun + +Sunucu ayarları +--------------- + +Varsayılan olarak, Kanboard, e-postalar göndermek için birlikte verilen PHP posta işlevini kullanacaktır. +Sunucunuz zaten e-posta gönderebiliyorsa genellikle yapılandırma gerektirmez. + +Bununla birlikte, SMTP protokolü ve Sendmail gibi diğer yöntemleri kullanmak mümkündür. + +### SMTP yapılandırması + +`config.default.php` dosyasını `config.php` olarak yeniden adlandırın ve bu değerleri değiştirin: + +```php +// We choose "smtp" as mail transport +define('MAIL_TRANSPORT', 'smtp'); + +// We define our server settings +define('MAIL_SMTP_HOSTNAME', 'mail.example.com'); +define('MAIL_SMTP_PORT', 25); + +// Credentials for authentication on the SMTP server (not mandatory) +define('MAIL_SMTP_USERNAME', 'username'); +define('MAIL_SMTP_PASSWORD', 'super password'); +``` + +Güvenli bir bağlantı, TLS veya SSL kullanmak da mümkündür: + +```php +define('MAIL_SMTP_ENCRYPTION', 'ssl'); // Valid values are "null", "ssl" or "tls" +``` + +### Sendmail yapılandırması + +Varsayılan olarak sendmail komutu `/usr/sbin/sendmail -bs` olacaktır, ancak bunu yapılandırma dosyanızda özelleştirebilirsiniz. + +Örnek: + +```php +// We choose "sendmail" as mail transport +define('MAIL_TRANSPORT', 'sendmail'); + +// If you need to change the sendmail command, replace the value +define('MAIL_SENDMAIL_COMMAND', '/usr/sbin/sendmail -bs'); +``` + +### PHP doğal-native posta fonksiyonu + +Varsayılan yapılandırma şu şekildedir: + +```php +define('MAIL_TRANSPORT', 'mail'); +``` + +### Gönderenin e-posta adresi + +Varsayılan olarak, e-postalar gönderenin adresini `notifications@kanboard.local` kullanacaktır. +Bu adrese cevap vermek mümkün değildir. + +Bu adresi, yapılandırma dosyanızdaki `MAIL_FROM` sabitinin değerini değiştirerek özelleştirebilirsiniz. + +```php +define('MAIL_FROM', 'kanboard@mydomain.tld'); +``` + +SMTP sunucusu yapılandırmanız varsayılan adresi kabul etmiyorsa bu yararlı olabilir. + +### Bildirimlerdeki göreve bir bağlantı nasıl görüntülenir? + +Bunu yapmak için, [Uygulama Ayarları](https://kanboard.net/documentation/application-configuration) bölümünde Kanboard kurulumunuzun URL'sini belirtmeniz gerekir. +Varsayılan olarak, hiçbir şey tanımlanmadığından hiçbir bağlantı görüntülenmez. + +Örnekler: + +- http://demo.kanboard.net/ +- http://myserver/kanboard/ +- http://kanboard.mydomain.com/ + +Bitiş eğik çizgisini`/` unutmayın. + +Kanboard, URL'yi bir komut satırı komut dosyasından tahmin edemediğinden ve bazı kişilerin çok spesifik bir yapılandırmaya sahip olmasından bunu manuel olarak tanımlamanız gerekir. + +Sorun giderme +--------------- + +E-posta gönderilmiyorsa ve her şeyin doğru yapılandırıldığından eminseniz: + +- Spam dosyanı kontrol et +- Hata ayıklama modunu etkinleştirin ve `data/debug.log` hata ayıklama dosyasını kontrol edin, tam hatayı görmelisiniz +- Sunucunuzun veya barındırma sağlayıcınızın e-postalar göndermenize izin verdiğinden emin olun +- SeLinux'u kullanırsanız, PHP'nin e-postaları göndermesine izin verin + + diff --git a/doc/tr_TR/env.markdown b/doc/tr_TR/env.markdown new file mode 100644 index 00000000..150373ce --- /dev/null +++ b/doc/tr_TR/env.markdown @@ -0,0 +1,10 @@ +Ortam Değişkenleri +===================== + +Ortam değişkenleri, Kanboard konteyner (Docker) olarak kullanıldığında yararlı olabilir. + + +| Değişken | Tanım | +|---------------|---------------------------------------------------------------------------------------------------------------------------------| +| DATABASE_URL | `[Veritabanı türü]://[kullanıcı adı]:[şifre]@[host]:[port]/[veritabanı adı]`, örnek: `postgres://foo:foo@myserver:5432/kanboard` | +| DEBUG | Hata ayıklama modunu etkinleştir/devre dışı bırak: "true" veya "false" | diff --git a/doc/tr_TR/faq.markdown b/doc/tr_TR/faq.markdown new file mode 100644 index 00000000..17cd3c8a --- /dev/null +++ b/doc/tr_TR/faq.markdown @@ -0,0 +1,128 @@ +Sıkça Sorulan Sorular (F.A.Q. -S.S.S.) +========================== + +Kanboard için bir web barındırma sağlayıcısı önerebilir misiniz? +------------------------------------------------------ + +Kanboard, herhangi bir büyük VPS barındırma sağlayıcısı ile iyi çalışır; [Digital Ocean](https://www.digitalocean.com/?refcode=4b541f47aae4), +[Linode](https://www.linode.com/?r=4e381ac8a61116f40c60dc7438acc719610d8b11) veya [Gandi](https://www.gandi.net/) gibi. + +En iyi performansa sahip olmak için, Kanboard'un varsayılan olarak Sqlite'i kullanması nedeniyle hızlı disk G/Ç(I/O)'si olan bir sağlayıcı seçin. +Paylaşılan bir NFS bağlama noktası kullanan barındırma sağlayıcılarından kaçının. + + +"Sisteminizde uygun bir CSPRNG yüklü değil" +"There is no suitable CSPRNG installed on your system" hatası; +----------------------------------------------------------------------- + +PHP <7.0 kullanıyorsanız, openssl uzantısının etkinleştirilmesini sağlamanız gerekir veya eğer bir `open_basedir` kısıtlaması ile kısıtlanmışsa uygulamadan `/dev/urandom` alanına erişilebilir olmalıdır. + + +Sayfa bulunamadı ve URL yanlış görünüyor (&amp;) +-------------------------------------------------- + +- URL, `?controller=auth&action=login&redirect_query=` yerine `/?controller=auth&action=login&redirect_query=` gibi görünüyor. +- Kanboard, "Sayfa bulunamadı" hatası döndürür + +Bu sayı PHP yapılandırmanızdan geliyor, `arg_separator.output` değeri PHP'nin varsayılanı değil, bunu düzeltmenin farklı yolları var: + +Eğer yapabiliyorsanız, doğrudan `php.ini` dosyanızdaki değeri değiştirin: + +``` +arg_separator.output = "&" +``` + +Değeri `.htaccess` ile geçersiz kılın: + +``` +php_value arg_separator.output "&" +``` + +Aksi takdirde, Kanboard değeri doğrudan PHP'de geçersiz kılmaya çalışacaktır. + + +API ve Apache + PHP-FPM ile kimlik doğrulama başarısızlığı +-------------------------------------------------------- + +Apache altındaki php-cgi, varsayılan olarak HTTP temel kullanıcı/şifre'sini PHP'ye geçirmiyor. +Bu geçici çözümün çalışması için aşağıdaki şu satırları `.htaccess` dosyanıza ekleyin: + +``` +RewriteCond %{HTTP:Authorization} ^(.+)$ +RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] +``` + + +eAccelerator ile bilinen sorunlar +------------------------------ + +Kanboard, [eAccelerator](http://eaccelerator.net) ile çok iyi çalışmıyor. +Buna sebep boş bir sayfa veya bir Apache çökmesi olabilir: + +``` +[Wed Mar 05 21:36:56 2014] [notice] child pid 22630 exit signal Segmentation fault (11) +``` + +Bu sorunu önlemenin en iyi yolu, eAccelerator'ı devre dışı bırakmak veya hangi dosyaların önbelleklemek istediğinizi `eaccelerator.filter` yapılandırma parametresiyle el-ile manuel olarak tanımlamaktır. + +[eAccelerator projesi ölü gibi görünüyor ve 2012'den beri güncellenmedi](https://github.com/eaccelerator/eaccelerator/commits/master). +[OPcache](http://php.net/manual/en/intro.opcache.php) ile paketlendiğinden PHP'nin son sürümüne geçmenizi öneririz. + + +Neden minimum gereksinim PHP 5.3.3'tir? +----------------------------------------- + +Kanboard, parolaları şifrelemek için `password_hash ()` işlevini kullanır, ancak bu işlev yalnızca PHP >= 5.5 için kullanılabilir. + +Bununla birlikte, [eski PHP sürümleri](https://github.com/ircmaxell/password_compat#requirements) için bir arka port var. +Bu kütüphane, en azından PHP 5.3.7'nin doğru çalışmasını gerektiriyor. + +Görünüşe göre, Centos ve Debian arka-port güvenlik güncellemeleri yaptı, böylece PHP 5.3.3 tamam olmalıdır. + +Kanboard v1.0.10 ve v1.0.11, en azından PHP 5.3.7 gerektirir, ancak bu değişiklik, Kanboard >= v1.0.12 ile PHP 5.3.3 ile uyumlu olacak şekilde geri döndürülmüştür + +Kanboard PHP yerel-local dahili web sunucusu ile nasıl test edilir? +------------------------------------------------------ + +Eğer localhost üzerinde Apache gibi bir web sunucusu kurmak istemiyorsanız. [PHP'nin gömülü web sunucusu ile ](http://www.php.net/manual/en/features.commandline.webserver.php) test edebilirsiniz: + +```bash +unzip kanboard-VERSION.zip +cd kanboard +php -S localhost:8000 +open http://localhost:8000/ +``` + + +Yunboard üzerinde Kanboard nasıl kurulabilir? +------------------------------------ + +[YunoHost](https://yunohost.org/) , Herkes tarafından kullanılabilir olan kendi kendini barındırmayı amaçlayan bir sunucu işletim sistemidir. + +[Yunohost üzerine Kanboard u kolayca yüklemek için paket] var. (https://github.com/mbugeia/kanboard_ynh). + + +İlgili projelerin listesini nereden bulabilirim? +-------------------------------------------- + +- [Kanboard API python istemcisi @freekoder tarafından](https://github.com/freekoder/kanboard-py) +- [Kanboard Sunum David Eberlein tarafından](https://github.com/davideberlein/kanboard-presenter) +- [CSV2Kanboard @ashbike tarafından](https://github.com/ashbike/csv2kanboard) +- [Yunohost için Kanboard by @mbugeia](https://github.com/mbugeia/kanboard_ynh) +- [Trello Içe aktarma komut dosyası @matueranet tarafından](https://github.com/matueranet/kanboard-import-trello) +- [Chrome eklentisi Timo tarafından](https://chrome.google.com/webstore/detail/kanboard-quickmenu/akjbeplnnihghabpgcfmfhfmifjljneh?utm_source=chrome-ntp-icon), [Kaynak kodu](https://github.com/BlueTeck/kanboard_chrome_extension) +- [Python istemci komut dosyası @dzudek tarafından](https://gist.github.com/fguillot/84c70d4928eb1e0cb374) +- [SQLite dan MySQL/MariaDB geçiş için için kabuk betiği @oliviermaridat tarafından](https://github.com/oliviermaridat/kanboard-sqlite2mysql) + +- [Kanboard ile entegrasyon Için Git kancaLARI(hooks) Gene Pavlovsky tarafından](https://github.com/gene-pavlovsky/kanboard-git-hooks) + +Kanboard hakkında diğer dillerde bazı eğitimler var mı? +----------------------------------------------------------- + +- [Kanboard hakkında Alman makale dizisi](http://demaya.de/wp/2014/07/kanboard-eine-jira-alternative-im-detail-installation/) + + +İpuçları +---- + +- [SQLite veritabanında ad sınırlamasını kaldırmanın kolay yolu](https://github.com/kanboard/kanboard/issues/1508) diff --git a/doc/tr_TR/freebsd-installation.markdown b/doc/tr_TR/freebsd-installation.markdown new file mode 100644 index 00000000..bb687ebf --- /dev/null +++ b/doc/tr_TR/freebsd-installation.markdown @@ -0,0 +1,126 @@ +FreeBSD 10 Kurulum +======================= + +Paketlerden yükle +--------------------- + +```bash +$ pkg update +$ pkg upgrade +$ pkg install apache24 mod_php56 kanboard +``` + +`/etc/rc.conf` dosyanızdaki Apache'yi etkinleştirin: + +```bash +$ echo apache24_enable="YES" >> /etc/rc.conf +``` + +Apache için PHP yi kurun: + +```bash +$ echo "AddType application/x-httpd-php .php" >> /usr/local/etc/apache24/Includes/php.conf +$ echo "DirectoryIndex index.php index.html" >> /usr/local/etc/apache24/Includes/php.conf +``` + +Sonra Apache'yi başlatın: + +```bash +$ service apache24 start +``` + +Kanboard klasörüne, Apache docroot'unuza sembolik bağ ekleyin: + +```bash +cd /usr/local/www/apache24/data +ln -s /usr/local/www/kanboard +``` + +http://your.server.domain.tld/ adresine gidin ve tadını çıkarın! + +*Notlar*: +- LDAP entegrasyonu gibi ek özellikler kullanmak istiyorsanız; Lütfen pkg'yi kullanarak uygun PHP modülünü kurun. +- Klasör verisinin izinlerini ayarlamanız gerekebilir + +Bağlantı noktalarından yükleme +--------------------- + +Genellikle 3 eleman kurulmalıdır: + +- Apache +- Apache için mod_php +- Kanboard + +Bağlantı noktaları getir ve çıkar + +```bash +$ portsnap fetch +$ portsnap extract +``` + +Veya mevcut haliyle güncelleme: + +```bash +$ portsnap fetch +$ portsnap update +``` + +Portsnap ile ilgili daha fazla bilgi [FreeBSD Handbook](https://www.freebsd.org/doc/handbook/ports-using.html) 'da bulunabilir. + +Apache'yi kur: + +```bash +$ cd /usr/ports/www/apache24 +$ make install clean +``` +Enable Apache in your `/etc/rc.conf`: + +```bash +$ echo apache24_enable="YES" >> /etc/rc.conf +``` + +Apache için mod_php'yi kurun: + +```bash +$ cd /usr/ports/www/mod_php5 +$ make install clean +``` + +Kanboard form bağlantı noktalarını yükle: + +```bash +$ cd /usr/ports/www/kanboard +$ make install clean +``` + +Kanboard formu portları yükleyin + +```bash +$ echo "AddType application/x-httpd-php .php" >> /usr/local/etc/apache24/Includes/php.conf +$ echo "DirectoryIndex index.php index.html" >> /usr/local/etc/apache24/Includes/php.conf +``` + +Sonra Apache'yi başlatın: + +```bash +$ service apache24 start +``` + +http://your.server.domain.tld/kanboard adresine gidin ve tadını çıkarın! + +*Not*: +LDAP entegrasyonu gibi ek özellikleri kullanmak isterseniz +Lütfen `lang/php5-extensions` den uygun PHP eklentisi-modülünü kurun. + +El ile kurulum +------------------- + +Sürüm 1.0.16 itibariyle Kanboard FreeBSD portlarında bulunabilir +Elle kurmanıza gerek yoktur. + +Lütfen aklınızda bulundurun +----------- + +- Portlar [bitbucket](https://bitbucket.org/if0/freebsd-kanboard/) üzerinde barındırılıyor . Yorum yapmaktan çekinmeyin +fork edin ve güncelleme önermek için çekinmeyin! +- Kanboard'un bazı özellikleri, [günlük arka plan işi-cronjob](cronjob.markdown) çalıştırmanızı gerektirir. diff --git a/doc/tr_TR/gantt-chart-projects.markdown b/doc/tr_TR/gantt-chart-projects.markdown new file mode 100644 index 00000000..71c53471 --- /dev/null +++ b/doc/tr_TR/gantt-chart-projects.markdown @@ -0,0 +1,17 @@ +Tüm projeler için Gantt Grafiği +============================ + +Bu Gantt tablosunun amacı, başlangıç ve bitiş tarihlerine dayanan tüm projelerin bir genel görünümünü görüntülemektir. + +- Bu Gantt tablosu proje yönetimi bölümündedir. +- Yalnızca proje yöneticileri ve yöneticiler bu bölüme erişebilir +- Proje yöneticileri yalnızca üyelerinin bulunduğu yerdeki projeleri görür +- Özel projeler bu tabloda gösterilmiyor + +![Gantt Chart for all projects](screenshots/gantt-chart-all-projects.png) + +- Projelerin **başlangıç tarihi** ve **bitiş tarihi** grafik çizmek için kullanılır +- Yatay çubuklar yeniden boyutlandırılabilir ve farenizle yatay olarak hareket ettirilebilir +- Dikey sürükle ve bırak yok +- Başlangıç veya bitiş tarihi tanımlanmadığında proje çubukları siyah renkte gösterilir +- Bilgi araç ipucu, proje yöneticilerinin ve standart üyelerin listesini gösterir diff --git a/doc/tr_TR/gantt-chart-tasks.markdown b/doc/tr_TR/gantt-chart-tasks.markdown new file mode 100644 index 00000000..528e5174 --- /dev/null +++ b/doc/tr_TR/gantt-chart-tasks.markdown @@ -0,0 +1,20 @@ +Görevler için Gantt grafiği +====================== + +Bu Gantt grafiğinin amacı, belirli bir projenin görevleri için zamana dayalı bir genel bakış sunmaktır. + +- Gantt tablosu "görüntü değiştirici" alanındadır. +- Sadece proje yöneticileri bu bölüme erişebilir + +![Gantt Chart](screenshots/gantt-chart-project.png) + +- Görevlerin **başlangıç tarihi** ve **son tarihi** grafik çizmek için kullanılır +- Görevler, farenizle yatay olarak yeniden boyutlandırılabilir ve taşınabilir +- Dikey sürükle ve bırak yok +- Çubuk görevle aynı renktedir +- Her çubuk bir ilerleme durumu yüzde olarak görüntüler, bu yüzde tahtadaki sütun pozisyonunu kullanarak hesaplanır +- Kanban modeline uymak için, görevler pano pozisyonlarına göre veya başlangıç tarihine göre sipariş edilebilir +- Bu görünümden yaratılan yeni görevler, ilk sütundaki 1 numaralı sayfada tahtada görüntülenir +- Görevler, başlangıç veya bitiş tarihi tanımlanmadığında siyah olarak görüntülenir + +![Task not defined](screenshots/gantt-chart-not-defined.png) diff --git a/doc/tr_TR/groups.markdown b/doc/tr_TR/groups.markdown new file mode 100644 index 00000000..4954903a --- /dev/null +++ b/doc/tr_TR/groups.markdown @@ -0,0 +1,17 @@ +Grup Yönetimi +================= + +Kanboard'da her kullanıcı bir veya daha fazla gruba üye olabilir. +Bir grup bir takım ya da bir organizasyon gibidir. + +Yalnızca yöneticiler yeni gruplar oluşturabilir ve kullanıcıları atayabilir. + +Gruplar **Kullanıcı yönetimi>Tüm Grupları Görüntüle** 'den yönetilebilir. +Buradan, gruplar oluşturabilir ve kullanıcıları atayabilirsiniz. + +![Group Management](screenshots/groups-management.png) + +Her proje yöneticisi, [proje izinleri sayfası](project-permissions.markdown) 'dan bir grup gruba erişimi yetkilendirir. + +Dış kimlik, çoğunlukla harici grup sağlayıcıları için kullanılır. +Kanboard [otomatik olarak grupları LDAP sunucularından senkronize et](ldap-group-sync.markdown) için bir LDAP grup sağlayıcısı sağlar. diff --git a/doc/tr_TR/heroku.markdown b/doc/tr_TR/heroku.markdown new file mode 100644 index 00000000..6be7cebb --- /dev/null +++ b/doc/tr_TR/heroku.markdown @@ -0,0 +1,39 @@ +Heroku üzerinde Kanboard dağıtma +========================= + +[Heroku](https://www.heroku.com/) 'da Kanboard'u ücretsiz deneyebilirsiniz. +Bu tek bir tıklama yükleme düğmesini kullanabilirsiniz veya aşağıdaki el-ile-manuel talimatları izleyin: + +[![Deploy](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy?template=https://github.com/kanboard/kanboard) + +Gereksinimler +------------ + +- Heroku hesabı, ücretsiz bir hesap kullanabilirsiniz +- Heroku komut satırı araçları yüklenmiş olmalı + +Manuel talimatlar +------------------- + +```bash +# Get the last development version +git clone https://github.com/kanboard/kanboard.git +cd kanboard + +# Push the code to Heroku (You can also use SSH if git over HTTP doesn't work) +heroku create +git push heroku master + +# Start a new dyno with a Postgresql database +heroku ps:scale web=1 +heroku addons:add heroku-postgresql:hobby-dev + +# Open your browser +heroku open +``` + +Sınırlamalar +----------- + +- Heroku'nun depolaması kısa ömürlüdür, bu da, bir yeniden başlatma sonrasında yüklenen dosyalar Kanboard'dan kalıcı değildir. Dosyalarınızı [Amazon S3](https://github.com/kanboard/plugin-s3) gibi bir bulut depolama sağlayıcısına depolamak için bir eklenti kurmak isteyebilirsiniz. +- Kanboard'un bazı özellikleri, [günlük arka plan işi](cronjob.markdown) çalıştırmanızı gerektirir. diff --git a/doc/tr_TR/ical.markdown b/doc/tr_TR/ical.markdown new file mode 100644 index 00000000..89d8d5f3 --- /dev/null +++ b/doc/tr_TR/ical.markdown @@ -0,0 +1,78 @@ +Takvimlerinizi (eş zamanlı bilgi aktarma) senkronize etme +====================== + +Kanboard, projeler ve kullanıcılar için iCal özet akışlarını desteklemektedir. +Bu özellik, neredeyse tüm takvim programlarında (örneğin Microsoft Outlook, Apple Takvim, Mozilla Thunderbird ve Google Takvim) Kanboard görevlerini almanıza olanak tanır. + +Takvim abonelikleri **yalnızca okunur** erişimindendir, sizin dışarıdan kullandığınız takvim yazılımından görevler oluşturamazsınız. +Takvim beslemesi(feed'i)'ni dışa aktarma, iCal standardını takip eder. + +Not: Yalnızca -2 ay (önceki) ila +6 aylık (sonraki) tarih aralıklarındaki görevler iCalendar beslemesi(feed'e)'ne aktarılır. + +Proje takvimleri +----------------- + +- Her projenin kendi takvimi vardır. +- Proje başına abonelik bağlantısı benzersizdir, projenizin herkese açık erişimini etkinleştirdiğinizde bu bağlantı etkinleştirilir: **Proje ayarları>Herkese açık erişim**. +- Bu takvim, seçilen proje için yalnızca görevleri gösterir. + +Kullanıcı takvimleri +-------------- + +- Her kullanıcının kendi takvimi vardır. +- Kullanıcı başına abonelik bağlantısı benzersizdir; kullanıcının herkese açık erişimini etkinleştirdiğinizde bağlantı etkindir: **Kullanıcı profili>Herkese açık erişim**. +- Bu takvim, kullanıcılara tüm projeler için atanan görevleri gösterir. + +Kanboard takviminizi Apple Takvim(Calendar)'e ekleme +----------------------------------------------- + +- Takvim'i aç +- **Dosya>Yeni Takvim Aboneliği** seçeneğini seçin. +- Kanboard'dan iCal özet akışı (besleme-feed) URL'sini kopyalayıp yapıştırın + +! [iCal aboneliğini ekleyin] (screenshots / apple-calendar-add-subscription.png) + +- Takvimi iCloud ile senkronize etmeyi tüm cihazlarınızda mevcut olacak şekilde seçebilirsiniz +- Yenileme sıklığını seçmeyi unutmayın + +![Edit iCal subscription](screenshots/apple-calendar-edit-subscription.png) + +Kanboard takviminizi Microsoft Outlook'a ekleme +-------------------------------------------------- + +![Outlook Add Internet Calendar](screenshots/outlook-add-subscription.png) + +- Outlook'u açın +- ** Takvimi aç>İnternet'ten** i seçin +- Kanboard'dan iCal özet akışı (besleme-feed) URL'sini kopyalayıp yapıştırın + +![Outlook Edit Internet Calendar](screenshots/outlook-edit-subscription.png) + +Mozilla Thunderbird'e Kanboard takviminizi ekleme +---------------------------------------------------- + +- Thunderbird'e takvim desteği eklemek için ** Lightning ** Eklenti yazılımını yükleyin +- **Dosya>Yeni Takvim** 'i tıklayın +- İletişim kutusunda **Ağda** seçeneğini belirleyin + +![Thunderbird Step 1](screenshots/thunderbird-new-calendar-step1.png) + +- iCalendar biçimini seçin +- Kanboard'dan iCal özet akışı (besleme-feed) URL'sini kopyalayıp yapıştırın + +![Thunderbird Step 2](screenshots/thunderbird-new-calendar-step2.png) + +- Renkleri ve diğer ayarları seçin ve sonunda kaydedin + +Kanboard takviminizi Google Takvim'e ekleme +------------------------------------------------ + +- **Diğer takvimler** 'in yanındaki aşağı-oku tıklayın. +- Menüden **Link ekle-Add URL** seçeneğini seçin. +- Kanboard'dan iCal özet akışı (besleme-feed) URL'sini kopyalayıp yapıştırın + +![Google Calendar](screenshots/google-calendar-add-subscription.png) + +Senkronizasyonunu etkinleştirirseniz, Kanboard takviminiz Android cihazınızdan da kullanılabilir. + +Not: Google Destek'e göre, harici takvimler çok sık yenilenmiyor, [belgeleri okuyun](https://support.google.com/calendar/answer/37100?hl=en&ref_topic=1672445). diff --git a/doc/tr_TR/installation.markdown b/doc/tr_TR/installation.markdown new file mode 100644 index 00000000..23093e56 --- /dev/null +++ b/doc/tr_TR/installation.markdown @@ -0,0 +1,76 @@ +Kurulum Talimatları +============ + +Öncelikle, daha ileri gitmek için önce [gereksinimler](requirements.markdown) kontrol edin. + +Arşivden (kararlı sürüm) +--------------------------------- + +1. PHP'nin yüklü olduğu bir web sunucunuz olmalıdır +2. Kaynak kodu indirin ve istediğiniz yere `kanboard` dizini kopyalayın +3. `data` dizininin web sunucusu kullanıcısı tarafından yazılabilir olup olmadığını kontrol edin +4. Tarayıcınızla <http://yourpersonalserver/kanboard> adresine gidin +5. Varsayılan kullanıcı adı ve şifre **admin/admin** +6. Kanboard yazılımını kullanmaya başlayın +7. Parolanızı değiştirmeyi unutmayın! + +`data` klasörü depolamak için kullanılır: + +Sqlite veritabanı: `db.sqlite` +- Hata ayıklama dosyası: `debug.log` (hata ayıklama modu etkinleştirilmişse) +- Yüklenen dosyalar: `files/*` +- Resim tırnak-thumb ları: `files/thumbnails/*` + +Uzak bir veritabanı (Mysql/Postgresql) ve uzak nesne depolama birimi (Aws S3 veya benzeri) kullananların mutlaka kalıcı bir yerel veri klasörüne sahip olmaları veya izinlerini değiştirmeleri gerekmez. + +Git deposundan (geliştirme versiyonu) +--------------------------------------------- + +Bu yöntemi kullanmak için [composer](https://getcomposer.org/) yüklemelisiniz. + +1. `git clone https://github.com/kanboard/kanboard.git` +2. `composer install --no-dev` +3. Yukarıdaki üçüncü adıma geçin + +Not: Bu yöntem, **mevcut geliştirme sürümünü** yükleyecektir, kendi sorumluluğunuzdadır. + +Belge kökü-root dışında kurulum +----------------------------------------- + +Kanboard'u web sunucusu belge kökü dışında yüklemek isterseniz, en azından bu sembolik bağları-symlinks oluşturmanız gerekir: + +```bash +. +├── assets -> ../kanboard/assets +├── cli -> ../kanboard/cli +├── doc -> ../kanboard/doc +├── favicon.ico -> ../kanboard/favicon.ico +├── index.php -> ../kanboard/index.php +├── jsonrpc.php -> ../kanboard/jsonrpc.php +└── robots.txt -> ../kanboard/robots.txt +``` + +İçeriği doğrudan Apache yapılandırmasına eklenebileceğinden `.htaccess` isteğe bağlıdır. + +[Yapılandırma dosyası-Config file](config.markdown) değiştirerek eklentiler ve dosyalar klasörleri için özel bir yer de tanımlayabilirsiniz. + + +Diğer Veritabanı Türleri +-------------------- + +Kanboard, MySQL ve Postgres'i Sqlite'e alternatif olarak desteklemektedir. + +- [Mysql yapılandırması](mysql-configuration.markdown) +- [Postgres yapılandırması](postgresql-configuration.markdown) + +İsteğe Bağlı Kurulum +--------------------- + +- Kanboard'un bazı özellikleri, [günlük arka plan işi-cronjob](cronjob.markdown) çalıştırmanızı gerektirir (Raporlar ve analizler için) . +- Performansı artırmak için [Arka plan çalışanını kurun](worker.markdown) + +Güvenlik +-------- + +- Varsayılan kullanıcı/şifreyi değiştirmeyi unutmayın +- Herkese URL'den `data` dizinine erişmesine izin verme. Apache için zaten bir `.htaccess` ve IIS için bir `web.config` dosyası var, ancak diğer web sunucuları için bir şey yok. diff --git a/doc/tr_TR/kanban-vs-todo-and-scrum.markdown b/doc/tr_TR/kanban-vs-todo-and-scrum.markdown new file mode 100644 index 00000000..a751b8c3 --- /dev/null +++ b/doc/tr_TR/kanban-vs-todo-and-scrum.markdown @@ -0,0 +1,37 @@ +Kanban - Todo Listeleri ve Scrum +============================== + +Kanban - Todo listeleri karşılaştırma +--------------------------------- + +### Todo listeleri: + +- Tek aşamalı (yalnızca bir öğe listesi) +- Çoklu görev mümkün (verimli değil) + +### Kanban: + +- Çok fazlı, her sütun bir adım temsil eder +- Sütun başına bir işi ilerleme sınırı belirleyebildiğiniz için Odaklanıp ve Çok görevden kaçınırsınız + +Kanban - Scrum karşılaştırma +------------------- + +### Scrum: + +- Sprint ler time-boxed zaman-kutuları, genellikle 2 veya 4 hafta +- Yineleme sırasında değişikliklere izin verilmez +- Tahmin gerekli +- Hız varsayılan metrik olarak kullanılır +- Scrum panosu her sprint arasında silinir +- Scrum, scrum master, ürün sahipleri ve takım gibi önceden tanımlanmış rollere sahiptir +- Bir çok toplantı: planlama, backlogs geri-bilgi düzenleme, günlük ayak üstü, retrospektif + +### Kanban: + +- Sürekli akış +- Değişiklikler her an yapılabilir +- Tahmin isteğe bağlıdır +- Performansı ölçmek için teslim ve döngü süresi kullanılır +- Kanban tahtası kalıcıdır +- Kanban sıkı kısıtlamalar veya toplantılar öngörmemektedir, süreç daha esnektir diff --git a/doc/tr_TR/keyboard-shortcuts.markdown b/doc/tr_TR/keyboard-shortcuts.markdown new file mode 100644 index 00000000..9257dce3 --- /dev/null +++ b/doc/tr_TR/keyboard-shortcuts.markdown @@ -0,0 +1,38 @@ +Klavye kısayolları +================== + +Klavye kısayollarının kullanılabilirliği, bulunduğunuz sayfaya bağlıdır. + +Proje görünümleri (Pano, Takvim, Liste, Gantt) +-------------------------------------------- + +- Projeye genel bakışa geçiş = **v o** +- Pano görünümüne geçin = **v b** (**v** sonra **b** üzerine basın) +- Takvim görünümüne geçin = **v c** +- Liste görünümüne geçin = **v l** +- Gantt görünümüne geçin = **v g** + +Pano görünümü +---------- + +- Yeni görev = **n** +- Görevleri genişlet/daralt **s** +- Panoda Kompakt/geniş görünüm = **c** + +Görev görünümü +--------- + +- Görevi düzenle = **e** +- Yeni alt görev ** = **s** +- Yeni yorum = **c** +- Yeni iç bağlantı-link = **l** + +Uygulama +----------- + +- Klavye kısayollarının listesini görüntüle = **?** +- Açık pano anahtarı = **b** +- Arama kutusuna gidin = **f** +- Arama kutusunu sıfırlayın = **r** +- Diyalog ekranını kapat = **ESC** +- Formu gönder = **CTRL+ENTER** veya **⌘+ENTER** diff --git a/doc/tr_TR/ldap-authentication.markdown b/doc/tr_TR/ldap-authentication.markdown new file mode 100644 index 00000000..c6d31117 --- /dev/null +++ b/doc/tr_TR/ldap-authentication.markdown @@ -0,0 +1,185 @@ +LDAP Kimlik Doğrulaması +=================== + +Gereksinimler +------------ + +- PHP LDAP uzantısı etkinleştirin +- LDAP sunucusu: + - OpenLDAP + - Microsoft Active Directory + - Novell eDirectory + +İş Akışı +-------- + +LDAP kimlik doğrulaması etkinleştirildiğinde, oturum açma işlemi şu şekilde iş görür: + +1. Önce veritabanını kullanarak kullanıcıyı doğrulamayı dener +2. Kullanıcı veritabanında bulunmazsa, bir LDAP kimlik doğrulaması yapılır +3. LDAP kimlik doğrulaması başarılı olursa, varsayılan olarak bir yerel kullanıcı otomatik olarak parola olmadan oluşturulur ve LDAP kullanıcıları olarak işaretlenir. + +Tam ad ve e-posta adresi otomatik olarak LDAP sunucusundan alınır. + +Kimlik Doğrulama Türleri +-------------------- + +| Tip | Açıklama | +|-------------------|------------------------------------------------------------------------| +| Proxy Kullanıcısı | LDAP dizinine göz atmak için belirli bir kullanıcı kullanılır. | +| Kullanıcı | Son kullanıcı kimlik bilgileri LDAP dizinine göz atmak için kullanılır | +| Anonim | LDAP tarama için kimlik doğrulama yapılmaz | + +** Tavsiye edilen kimlik doğrulama yöntemi "Proxy"'dır**. + +#### Anonim mod + +```php +define('LDAP_BIND_TYPE', 'anonymous'); +define('LDAP_USERNAME', null); +define('LDAP_PASSWORD', null); +``` + +Varsayılan değer budur, ancak bazı LDAP sunucuları güvenlik nedenleriyle anonim taramaya izin vermez. + +#### Proxy mode + +LDAP dizinine göz atmak için belirli bir kullanıcı kullanılır: + +```php +define('LDAP_BIND_TYPE', 'proxy'); +define('LDAP_USERNAME', 'my proxy user'); +define('LDAP_PASSWORD', 'my proxy password'); +``` + +#### Kullanıcı modu + +Bu yöntem, son kullanıcı tarafından sağlanan kimlik bilgilerini kullanır. + +Örneğin, Microsoft Active Directory varsayılan olarak anonim taramaya izin vermez ve bir proxy kullanıcısı kullanmak istemiyorsanız bu yöntemi kullanabilirsiniz. + +```php +define('LDAP_BIND_TYPE', 'user'); +define('LDAP_USERNAME', '%s@kanboard.local'); +define('LDAP_PASSWORD', null); +``` + +Bu durumda, `LDAP_USERNAME` sabiti ldap kullanıcı adına bir örnek olarak kullanılır, örnekler: + +- `%s@kanboard.local` Yerini alacak `my_user@kanboard.local` +- `KANBOARD\\%s` Yerini alacak `KANBOARD\my_user` + +Kullanıcı LDAP filtresi +---------------- + +LDAP dizinindeki kullanıcıları bulmak için yapılandırma parametresi `LDAP_USER_FILTER` i kullanılır. + +Örnekler: + +- `(&(objectClass=user)(sAMAccountName=%s))` yerini alır `(&(objectClass=user)(sAMAccountName=my_username))` +- `uid=%s` yerini alır `uid=my_username` + +[Active Directory için filtreler](http://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters.aspx) için diğer örnekler + +Kanboard'a erişimi filtrelemek için örnek: + +`(&(objectClass=user)(sAMAccountName=%s)(memberOf=CN=Kanboard Users,CN=Users,DC=kanboard,DC=local))` + +Bu örnek, sadece "Kanboard Kullanıcıları" grubunun üyelerine Kanboard'a bağlanmalarına izin verir. + +Microsoft Active Directory için Örnek +-------------------------------------- + +Diyelim ki 'KANBOARD' alanına (kanboard.local) sahibiz ve birincil denetleyicisi `myserver.kanboard.local` diyelim. + +Proxy moduyla ilk örnek: + +```php +<?php + +// Enable LDAP authentication (false by default) +define('LDAP_AUTH', true); + +define('LDAP_BIND_TYPE', 'proxy'); +define('LDAP_USERNAME', 'administrator@kanboard.local'); +define('LDAP_PASSWORD', 'my super secret password'); + +// LDAP server hostname +define('LDAP_SERVER', 'myserver.kanboard.local'); + +// LDAP properties +define('LDAP_USER_BASE_DN', 'CN=Users,DC=kanboard,DC=local'); +define('LDAP_USER_FILTER', '(&(objectClass=user)(sAMAccountName=%s))'); +``` + +Kullanıcı modu ile ikinci örnek: + +```php +<?php + +// Enable LDAP authentication (false by default) +define('LDAP_AUTH', true); + +define('LDAP_BIND_TYPE', 'user'); +define('LDAP_USERNAME', '%s@kanboard.local'); +define('LDAP_PASSWORD', null); + +// LDAP server hostname +define('LDAP_SERVER', 'myserver.kanboard.local'); + +// LDAP properties +define('LDAP_USER_BASE_DN', 'CN=Users,DC=kanboard,DC=local'); +define('LDAP_USER_FILTER', '(&(objectClass=user)(sAMAccountName=%s))'); +``` + +OpenLDAP için örnek +-------------------- + +LDAP sunucumuz `myserver.example.com` olup tüm kullanıcılar `ou=People,dc=example,dc=com` altına saklanır. + +Bu örnek için, anonim bağlayıcı kullanıyoruz. + +```php +<?php + +// Enable LDAP authentication (false by default) +define('LDAP_AUTH', true); + +// LDAP server hostname +define('LDAP_SERVER', 'myserver.example.com'); + +// LDAP properties +define('LDAP_USER_BASE_DN', 'ou=People,dc=example,dc=com'); +define('LDAP_USER_FILTER', 'uid=%s'); +``` + +Otomatik hesap oluşturma işlemini devre dışı bırak +----------------------------------- + +Varsayılan olarak, Kanboard hiçbir şey bulunamazsa otomatik olarak bir kullanıcı hesabı oluşturacaktır. + +Kanboard'u yalnızca bazı kişilere kısıtlamak için kullanıcı hesapları oluşturmayı tercih ederseniz, bu davranışı devre dışı bırakabilirsiniz. + +`LDAP_ACCOUNT_CREATION` değerini `false` olarak değiştirmeniz yeterlidir: + +```php +// Automatically create user account +define('LDAP_ACCOUNT_CREATION', false); +``` + +Sorun giderme +--------------- + +### SELinux kısıtlamaları + +SELinux etkinleştirilirse, Apache'nin LDAP sunucunuza erişmesine izin vermeniz gerekir. + +- SELinux'ü izin moduna-permissive mode geçirebilir veya devre dışı bırakabilirsiniz (önerilmez). +- Örneğin, `setsebool -P httpd_can_network_connect=1` gibi tüm ağ bağlantılarına izin verebilir veya daha kısıtlayıcı bir kurala sahip olabilirsiniz + +Her halükarda, resmi Redhat/Centos belgelerine bakın. + +### Hata ayıklama modunu etkinleştir + +Doğru şekilde LDAP kimlik doğrulamasını kuramazsanız, [hata ayıklama modunu etkinleştirebilirsiniz](config.markdown) ve günlük dosyalarını izleyebilirsiniz. + diff --git a/doc/tr_TR/ldap-configuration-examples.markdown b/doc/tr_TR/ldap-configuration-examples.markdown new file mode 100644 index 00000000..cd48d5aa --- /dev/null +++ b/doc/tr_TR/ldap-configuration-examples.markdown @@ -0,0 +1,222 @@ +LDAP Yapılandırma Örnekleri +=========================== + +Microsoft Active Directory +-------------------------- + +- Kullanıcı doğrulama +- Kullanıcı profili resmini Active Directory'den indirin +- Kullanıcı dilini LDAP özniteliğinden ayarlayın +- Kanboard rolleri Active Directory gruplarına eşlenir +- LDAP grup sağlayıcıları etkinleştirildi + +```php +define('LDAP_AUTH', true); + +define('LDAP_SERVER', 'my-ldap-server'); +define('LDAP_PORT', 389); + +define('LDAP_BIND_TYPE', 'proxy'); +define('LDAP_USERNAME', 'administrator@kanboard.local'); +define('LDAP_PASSWORD', 'secret'); + +define('LDAP_USER_BASE_DN', 'CN=Users,DC=kanboard,DC=local'); +define('LDAP_USER_FILTER', '(&(objectClass=user)(sAMAccountName=%s))'); + +define('LDAP_USER_ATTRIBUTE_USERNAME', 'samaccountname'); +define('LDAP_USER_ATTRIBUTE_FULLNAME', 'displayname'); +define('LDAP_USER_ATTRIBUTE_PHOTO', 'jpegPhoto'); +define('LDAP_USER_ATTRIBUTE_LANGUAGE', 'preferredLanguage'); + +define('LDAP_GROUP_ADMIN_DN', 'CN=Kanboard Admins,CN=Users,DC=kanboard,DC=local'); +define('LDAP_GROUP_MANAGER_DN', 'CN=Kanboard Managers,CN=Users,DC=kanboard,DC=local'); + +define('LDAP_GROUP_PROVIDER', true); +define('LDAP_GROUP_BASE_DN', 'CN=Users,DC=kanboard,DC=local'); +define('LDAP_GROUP_FILTER', '(&(objectClass=group)(sAMAccountName=%s*))'); +define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn'); +``` + + +MemberOf yer paylaşımı ile OpenLDAP +------------------------------ + +Kullanıcı LDIF örneği: + +``` +dn: uid=manager,ou=Users,dc=kanboard,dc=local +objectClass: top +objectClass: person +objectClass: organizationalPerson +objectClass: inetOrgPerson +uid: manager +sn: Lastname +givenName: Firstname +cn: Kanboard Manager +displayName: Kanboard Manager +mail: manager@kanboard.local +userPassword: password +memberOf: cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local +``` + +Grup LDIF örneği: + +``` +dn: cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local +objectClass: top +objectClass: groupOfNames +cn: Kanboard Managers +member: uid=manager,ou=Users,dc=kanboard,dc=local +``` + +Kanboard Konfigürasyonu: + +- Kullanıcı doğrulama +- Kanboard rolleri LDAP gruplarıyla eşlenir +- LDAP grup sağlayıcıları etkinleştirildi + +```php +define('LDAP_AUTH', true); + +define('LDAP_SERVER', 'my-ldap-server'); +define('LDAP_PORT', 389); + +define('LDAP_BIND_TYPE', 'proxy'); +define('LDAP_USERNAME', 'cn=admin,DC=kanboard,DC=local'); +define('LDAP_PASSWORD', 'password'); + +define('LDAP_USER_BASE_DN', 'OU=Users,DC=kanboard,DC=local'); +define('LDAP_USER_FILTER', 'uid=%s'); + +define('LDAP_GROUP_ADMIN_DN', 'cn=Kanboard Admins,ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_MANAGER_DN', 'cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local'); + +define('LDAP_GROUP_PROVIDER', true); +define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_FILTER', '(&(objectClass=groupOfNames)(cn=%s*))'); +define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn'); +``` + +Posix gruplarıyla OpenLDAP (memberUid) +-------------------------------------- + +Kullanıcı LDIF örneği: + +``` +dn: uid=manager,ou=Users,dc=kanboard,dc=local +objectClass: inetOrgPerson +objectClass: posixAccount +objectClass: shadowAccount +uid: manager +sn: Lastname +givenName: Firstname +cn: Kanboard Manager +displayName: Kanboard Manager +uidNumber: 10001 +gidNumber: 8000 +userPassword: password +homeDirectory: /home/manager +mail: manager@kanboard.local +``` + +Grup LDIF örneği: + +``` +dn: cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local +objectClass: posixGroup +cn: Kanboard Managers +gidNumber: 5001 +memberUid: manager +``` + +Kanboard Konfigürasyonu: + +- Kullanıcı doğrulama +- Kanboard rolleri LDAP gruplarıyla eşlenir +- LDAP grup sağlayıcıları etkinleştirildi + +```php +define('LDAP_AUTH', true); + +define('LDAP_SERVER', 'my-ldap-server'); +define('LDAP_PORT', 389); + +define('LDAP_BIND_TYPE', 'proxy'); +define('LDAP_USERNAME', 'cn=admin,DC=kanboard,DC=local'); +define('LDAP_PASSWORD', 'password'); + +define('LDAP_USER_BASE_DN', 'OU=Users,DC=kanboard,DC=local'); +define('LDAP_USER_FILTER', 'uid=%s'); + +define('LDAP_GROUP_ADMIN_DN', 'cn=Kanboard Admins,ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_MANAGER_DN', 'cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local'); + +// This filter is used to find the groups of our user +define('LDAP_GROUP_USER_FILTER', '(&(objectClass=posixGroup)(memberUid=%s))'); + +define('LDAP_GROUP_PROVIDER', true); +define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_FILTER', '(&(objectClass=posixGroup)(cn=%s*))'); +define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn'); +``` + +GroupOfNames ile OpenLDAP +-------------------------- + +Kullanıcı LDIF örneği: + +``` +dn: uid=manager,ou=Users,dc=kanboard,dc=local +objectClass: top +objectClass: person +objectClass: organizationalPerson +objectClass: inetOrgPerson +uid: manager +sn: Lastname +givenName: Firstname +cn: Kanboard Manager +displayName: Kanboard Manager +mail: manager@kanboard.local +userPassword: password +``` + +Grup LDIF örneği: + +``` +dn: cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local +objectClass: top +objectClass: groupOfNames +cn: Kanboard Managers +member: uid=manager,ou=Users,dc=kanboard,dc=local +``` + +Kanboard Konfigürasyonu: + +- Kullanıcı doğrulama +- Kanboard rolleri LDAP gruplarıyla eşlenir +- LDAP grup sağlayıcıları etkinleştirildi + +```php +define('LDAP_AUTH', true); + +define('LDAP_SERVER', 'my-ldap-server'); +define('LDAP_PORT', 389); + +define('LDAP_BIND_TYPE', 'proxy'); +define('LDAP_USERNAME', 'cn=admin,DC=kanboard,DC=local'); +define('LDAP_PASSWORD', 'password'); + +define('LDAP_USER_BASE_DN', 'OU=Users,DC=kanboard,DC=local'); +define('LDAP_USER_FILTER', 'uid=%s'); + +define('LDAP_GROUP_ADMIN_DN', 'cn=Kanboard Admins,ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_MANAGER_DN', 'cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local'); + +// This filter is used to find the groups of our user +define('LDAP_GROUP_USER_FILTER', '(&(objectClass=groupOfNames)(member=uid=%s,ou=Users,dc=kanboard,dc=local))'); + +define('LDAP_GROUP_PROVIDER', true); +define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_FILTER', '(&(objectClass=groupOfNames)(cn=%s*))'); +define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn'); +``` diff --git a/doc/tr_TR/ldap-group-sync.markdown b/doc/tr_TR/ldap-group-sync.markdown new file mode 100644 index 00000000..a5ba3d0f --- /dev/null +++ b/doc/tr_TR/ldap-group-sync.markdown @@ -0,0 +1,79 @@ +LDAP Grubu Senkronizasyonu +========================== + +Gereksinimler +------------ + +- LDAP kimlik doğrulamasının düzgün şekilde yapılandırılmış olmasını sağlayın +- `memberOf` veya `memberUid` (PosixGroups) destekleyen bir LDAP sunucusu kullanın + +Kullanıcı gruplarını LDAP gruplarına dayalı olarak otomatik olarak tanımlama +---------------------------------------------------- + +Bu sabitleri yapılandırma dosyanızda kullanın: + +- `LDAP_GROUP_ADMIN_DN`: Uygulama yöneticileri için ayırt edici isimler +- `LDAP_GROUP_MANAGER_DN`: Uygulama yöneticileri için ayırt edici isimler + +### Active Directory Örneği: + +```php +define('LDAP_GROUP_ADMIN_DN', 'CN=Kanboard Admins,CN=Users,DC=kanboard,DC=local'); +define('LDAP_GROUP_MANAGER_DN', 'CN=Kanboard Managers,CN=Users,DC=kanboard,DC=local'); +``` + +- "Kanboard Admins" kişileri "Yönetici" rolüne sahip olacak +- "Kanboard Yöneticilerinin" üyeleri "Yönetici" rolüne sahip olacak +- Herkesin "Kullanıcı" rolü olacak + +### Posix Gruplu OpenLDAP Örneği: + +```php +define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_USER_FILTER', '(&(objectClass=posixGroup)(memberUid=%s))'); +define('LDAP_GROUP_ADMIN_DN', 'cn=Kanboard Admins,ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_MANAGER_DN', 'cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local'); +``` + +LDAP sunucunuz `memberOf` yerine `memberUid` kullanıyorsa `LDAP_GROUP_USER_FILTER` **parametresini tanımlamanız gerekir**. +Bu örnekteki tüm parametreler zorunludur. + +Proje izinleri için LDAP gruplarını otomatik olarak yükle +------------------------------------------------------ + +Bu özellik, LDAP gruplarını otomatik olarak Kanboard gruplarıyla senkronize etmenizi sağlar. +Her gruba farklı bir proje rolü atanabilir. + +Proje izinleri sayfasında, kullanıcılar otomatik tamamlama alanına gruplar girebilir ve Kanboard herhangi bir sağlayıcı etkin grupları arayabilir. + +Grup yerel veritabanında yoksa, otomatik olarak senkronize edilecektir. + +- `LDAP_GROUP_PROVIDER`: LDAP grup sağlayıcısını etkinleştirin +- `LDAP_GROUP_BASE_DN`: LDAP dizinindeki grupları bulmak için ayırt edici adlar +- `LDAP_GROUP_FILTER`: Sorguyu gerçekleştirmek için kullanılan LDAP filtresi +- `LDAP_GROUP_ATTRIBUTE_NAME`: grup adını almak için kullanılan LDAP özelliği + +### Active Directory Örneği: + +```php +define('LDAP_GROUP_PROVIDER', true); +define('LDAP_GROUP_BASE_DN', 'CN=Groups,DC=kanboard,DC=local'); +define('LDAP_GROUP_FILTER', '(&(objectClass=group)(sAMAccountName=%s*))'); +``` + +Yukarıdaki örnekte verilen filtreyle Kanboard, sorguyla eşleşen grupları arayacaktır. +Son kullanıcı, otomatik tamamlama kutusuna "Grupum" metnini girerse, Kanboard, desenle eşleşen tüm grupları döndürür: `(&(objectClass=group)(sAMAccountName=My group*))`. + +- Not 1: Burada `*` özel karakterleri önemlidir, 00aksi halde tam bir eşleşme yapılacak**. +- Not 2: Bu özellik yalnızca "proxy" veya "anonim" modda yapılandırılmış LDAP kimlik doğrulamasıyla uyumludur + +[Active Directory için daha fazla LDAP filtresi örneği](http://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters.aspx) + +### Example for OpenLDAP with Posix Groups: + +```php +define('LDAP_GROUP_PROVIDER', true); +define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local'); +define('LDAP_GROUP_FILTER', '(&(objectClass=posixGroup)(cn=%s*))'); +``` + diff --git a/doc/tr_TR/ldap-parameters.markdown b/doc/tr_TR/ldap-parameters.markdown new file mode 100644 index 00000000..2da43169 --- /dev/null +++ b/doc/tr_TR/ldap-parameters.markdown @@ -0,0 +1,36 @@ +LDAP Yapılandırma Parametreleri +============================= + +Kullanılabilir LDAP parametrelerinin listesi aşağıdadır: + +| Parametre | Varsayılan değer | Açıklama | +|---------------------------------|------------------|------------------------------------------------| +| `LDAP_AUTH` | false | LDAP kimlik doğrulamasını etkinleştir | +| `LDAP_SERVER` | Empty | LDAP sunucusu ana makine adı | +| `LDAP_PORT` | 389 | LDAP server port | +| `LDAP_SSL_VERIFY` | true | `ldaps://` stil URL'si için sertifikayı doğrulama | +| `LDAP_START_TLS` | false | LDAP başlangıç TLS'i etkinleştir | +| `LDAP_USERNAME_CASE_SENSITIVE` | false | Kanboard, yinelenen kullanıcılardan kaçınmak için ldap kullanıcı adını küçük harflerle yazmaktadır (veritabanı büyük/küçük harf duyarlıdır) | +| `LDAP_BIND_TYPE` | anonymous | Bağ türü: "anonim", "kullanıcı" veya "vekil" | +| `LDAP_USERNAME` | null | Kullanıcı moduyla kullanılacak proxy modu veya kullanıcı adı kalıbıyla kullanılacak LDAP kullanıcı adı | +| `LDAP_PASSWORD` | null | Proxy modu için kullanılacak LDAP şifresi | +| `LDAP_USER_BASE_DN` | Empty | Kullanıcılar için LDAP DN (Örnek: "CN=Kullanıcılar,DC=kanboard,DC=yerel") | +| `LDAP_USER_FILTER` | Empty | Kullanıcı hesabı ararken kullanılacak LDAP deseni (Örnek: "(&(objectClass=user)(sAMAccountName=%s))") | +| `LDAP_USER_ATTRIBUTE_USERNAME` | uid | Kullanıcı adı için LDAP özelliği (Örnek: "samaccountname") | +| `LDAP_USER_ATTRIBUTE_FULLNAME` | cn | Kullanıcı tam adı için LDAP özelliği (Örnek: "displayname") | +| `LDAP_USER_ATTRIBUTE_EMAIL` | mail | Kullanıcı e-postası için LDAP özelliği | +| `LDAP_USER_ATTRIBUTE_GROUPS` | memberof | Kullanıcı profilinde gruplar bulmak için LDAP özniteliği | +| `LDAP_USER_ATTRIBUTE_PHOTO` | Empty | Kullanıcı fotoğrafını bulmak için LDAP özniteliği (jpegPhoto veya thumbnailPhoto) | +| `LDAP_USER_ATTRIBUTE_LANGUAGE` | Empty | Kullanıcı dili için LDAP özniteliği (preferredlanguage), kabul edilen dil biçimi "fr-FR" | +| `LDAP_USER_CREATION` | true | Otomatik LDAP kullanıcı yaratmayı etkinleştir | +| `LDAP_GROUP_ADMIN_DN` | Empty | Yöneticiler için LDAP DN (Örnek: "CN=Kanboard-Admins,CN=Users,DC=kanboard,DC=local") | +| `LDAP_GROUP_MANAGER_DN` | Empty | Müdürler için LDAP DN (Örnek: "CN=Kanboard Managers,CN=Users,DC=kanboard,DC=local") | +| `LDAP_GROUP_PROVIDER` | false | Proje izinleri için LDAP grup sağlayıcısını etkinleştirin | +| `LDAP_GROUP_BASE_DN` | Empty | Gruplar için LDAP Tabanı DN | +| `LDAP_GROUP_FILTER` | Empty | LDAP grup filitresi (Örnek: "(&(objectClass=group)(sAMAccountName=%s*))") | +| `LDAP_GROUP_USER_FILTER` | Empty | Kanboard, tanımlandıysa, LDAP_GROUP_BASE_DN 'deki kullanıcı gruplarını bu filtre ile arayacaktır, yalnızca posixGroups için kullanışlıdır (Örnek: `(&(objectClass=posixGroup)(memberUid=%s))`) | +| `LDAP_GROUP_ATTRIBUTE_NAME` | cn | Grup adı için LDAP özniteliği | + +Notlar: + +- LDAP nitelikleri küçük harflerle yazılmış olmalıdır diff --git a/doc/tr_TR/ldap-profile-picture.markdown b/doc/tr_TR/ldap-profile-picture.markdown new file mode 100644 index 00000000..515e9d1c --- /dev/null +++ b/doc/tr_TR/ldap-profile-picture.markdown @@ -0,0 +1,27 @@ +LDAP Kullanıcı Profili Fotoğrafı +======================= + +Kanboard otomatik olarak kullanıcı resimlerini LDAP sunucusundan indirebilir. + +Bu özellik, yalnızca LDAP kimlik doğrulaması etkinleştirildiğinde ve `LDAP_USER_ATTRIBUTE_PHOTO` parametresi tanımlanırsa etkinleştirilir. + +Yapılandırma +------------- + +`config.php` dosyasında, görüntüyü saklamak için kullanılan LDAP özniteliğini ayarlamanız gerekir. + +```php +define('LDAP_USER_ATTRIBUTE_PHOTO', 'jpegPhoto'); +``` + +Genellikle, `jpegPhoto` veya `thumbnailPhoto` nitelikleri kullanılır. +Görüntü JPEG veya PNG formatında saklanabilir. + +Görüntüyü kullanıcı profiline yüklemek için, Active Directory yöneticileri [AD Photo Edit](http://www.cjwdev.co.uk/Software/ADPhotoEdit/Info.html) gibi yazılımları kullanır. + +Notes +----- + +Profil resmi **kullanıcı daha önce bir resim yüklememişse giriş yaparken indirilir**. + +Kullanıcı fotoğrafını değiştirmek için önceki fotoğrafı kullanıcı profilinden el ile kaldırmanız gerekir. diff --git a/doc/tr_TR/link-labels.markdown b/doc/tr_TR/link-labels.markdown new file mode 100644 index 00000000..c5cb9c95 --- /dev/null +++ b/doc/tr_TR/link-labels.markdown @@ -0,0 +1,11 @@ +Bağlantı ayarları +============= + +Görev ilişkileri, uygulama ayarlarından değiştirilebilir (** Ayarlar> Bağlantı ayarları **) + +![Link Labels](screenshots/link-labels.png) + +Her etiketin zıt bir etiketi olabilir. +Herhangi bir zıtlık yoksa, etiket iki yönlü olarak değerlendirilir. + +![Link Label Creation](screenshots/link-label-creation.png) diff --git a/doc/tr_TR/mysql-configuration.markdown b/doc/tr_TR/mysql-configuration.markdown new file mode 100644 index 00000000..597d2abf --- /dev/null +++ b/doc/tr_TR/mysql-configuration.markdown @@ -0,0 +1,72 @@ +Mysql / MariaDB Yapılandırması +=========================== + +Varsayılan olarak Kanboard, verilerini depolamak için Sqlite'i kullanır. +Ancak Mql veya MariaDB yerine Sqlite kullanmak mümkündür. + +Gereksinimler +------------ + +- MySQL sunucusu +- PHP'nin `pdo_mysql` uzantısı kuruldu + +Not: Kanboard, **Mysql> = 5.5 ve MariaDB> = 10.0** ile test edilmiştir + +MySQL yapılandırması +------------------- + +### Veritabanı oluşturma + +İlk adım, MySQL sunucunuzda bir veritabanı oluşturmaktır. +Örneğin, mysql istemcisi komut satırıyla bunu yapabilirsiniz: + +```sql +CREATE DATABASE kanboard; +``` + +### Bir yapılandırma dosyası oluştur + +`config.php` dosyasında bu değerler bulunmalıdır: + +```php +<?php + +// We choose to use Mysql instead of Sqlite +define('DB_DRIVER', 'mysql'); + +// Mysql parameters +define('DB_USERNAME', 'REPLACE_ME'); +define('DB_PASSWORD', 'REPLACE_ME'); +define('DB_HOSTNAME', 'REPLACE_ME'); +define('DB_NAME', 'kanboard'); +``` + +Not: Ayrıca, `config.default.php` şablon dosyasını `config.php` olarak yeniden adlandırabilirsiniz. + +### SQL dökümünü alma (alternatif yöntem) + +İlk kez, Kanboard her bir veritabanı geçiş işleminde tek tek çalışacak ve bu işlem konfigürasyonunuza göre biraz zaman alabilir. + +Olası bir zaman aşımını önlemek için, veritabanını doğrudan SQL şemasını içe aktararak başlatabilirsiniz: + +```bash +mysql -u root -p my_database < app/Schema/Sql/mysql.sql +``` + +`app/Schema/Sql/mysql.sql` dosyası, veritabanının son sürümünü gösteren bir SQL dökümüdür. + +SSL yapılandırması +----------------- + +Bu parametrelerin Mysql SSL bağlantısını etkinleştirmek için tanımlanması gerekir: + +```php +// Mysql SSL key +define('DB_SSL_KEY', '/path/to/client-key.pem'); + +// Mysql SSL certificate +define('DB_SSL_CERT', '/path/to/client-cert.pem'); + +// Mysql SSL CA +define('DB_SSL_CA', '/path/to/ca-cert.pem'); +``` diff --git a/doc/tr_TR/nice-urls.markdown b/doc/tr_TR/nice-urls.markdown new file mode 100644 index 00000000..d13ae2f5 --- /dev/null +++ b/doc/tr_TR/nice-urls.markdown @@ -0,0 +1,129 @@ +URL yeniden yazımı-rewriting +============= + +Kanboard, URL yeniden yazarlığı etkin veya olmasın kayıtsız çalışabilir. + +- URL yeniden yazılmış örneği: `/board/123` +- Aksi takdirde: `?controller=board&action=show&project_id=123` + +Kanboard'u Apache ile kullanıyorsanız ve mod yeniden yazma özelliği etkinse, güzel URL'ler otomatik olarak kullanılacaktır. +"404 Bulunamadı" mesajı alırsanız, .htaccess dosyalarını çalıştırmak için DocumentRoot için en azından şu geçersiz kılmaları ayarlamanız gerekebilir: + +```sh +<Directory /var/www/kanboard/> + AllowOverride FileInfo Options=All,MultiViews AuthConfig +</Directory> +``` + +URL Kısayolları +------------- + +- Görev "#123"'e gidin: **/t/123** +- "#2" numaralı proje panosuna gidin: **/b/2** +- Proje takvimi "#5"'e gidin: **/c/5** +- "#8." Projenin liste görünümüne gidin : **/l/8** +- Proje numarası "#42" için proje ayarlarına gidin: **/p/42** + +Yapılandırma +------------- + +Varsayılan olarak, Kanboard, Apache modu yeniden yazmanın etkin olup olmadığını kontrol edecektir. + +URL yeniden yazmanın web sunucusundan otomatik olarak algılanmasını önlemek için, bu özelliği yapılandırma dosyanızdan etkinleştirebilirsiniz: + +```php +define('ENABLE_URL_REWRITE', true); +``` + +Bu sabit `true` olduğunda: + +- Komut satırı araçlarından üretilen URL'ler de dönüştürülecek +- Apache'den başka bir web sunucusu, örnegin Nginx veya Microsoft IIS kullanıyorsanız, kendinize URL yeniden yazmayı yapılandırmanız gerekir + +Not: Kanboard her zaman eski okul URL'lerine geçmez, yapılandırılmadığında bu yapılandırma isteğe bağlıdır. + +Nginx yapılandırma örneği +--------------------------- + +Nginx yapılandırma dosyanızın `server` bölümünde şu örneği kullanabilirsiniz: + +```bash +index index.php; + +location / { + try_files $uri $uri/ /index.php$is_args$args; + + # If Kanboard is under a subfolder + # try_files $uri $uri/ /kanboard/index.php; +} + +location ~ \.php$ { + try_files $uri =404; + fastcgi_split_path_info ^(.+\.php)(/.+)$; + fastcgi_pass unix:/var/run/php5-fpm.sock; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_index index.php; + include fastcgi_params; +} + +# Deny access to the directory data +location ~* /data { + deny all; + return 404; +} + +# Deny access to .htaccess +location ~ /\.ht { + deny all; + return 404; +} +``` + +Kanboard `config.php` de: + +```php +define('ENABLE_URL_REWRITE', true); +``` + +Yukarıdaki örneği kendi yapılandırmanıza göre uyarlayın. + +IIS yapılandırma örneği +------------------------- + +1. IIS için Yeniden Yazma modülünü indirin ve yükleyin: [İndirme linki](http://www.iis.net/learn/extensions/url-rewrite-module/using-the-url-rewrite-module) +2. Yükleme klasörünüzde bir web.config dosyası oluşturun: + +```xml +<?xml version="1.0"?> +<configuration> + <system.webServer> + <defaultDocument> + <files> + <clear /> + <add value="index.php" /> + </files> + </defaultDocument> + <rewrite> + <rules> + <rule name="Kanboard URL Rewrite" stopProcessing="true"> + <match url="^(.*)$" ignoreCase="false" /> + <conditions logicalGrouping="MatchAll"> + <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /> + </conditions> + <action type="Rewrite" url="index.php" appendQueryString="true" /> + </rule> + </rules> + </rewrite> + </system.webServer> +</configuration> +``` + +Kanboard `config.php` de: + +```php +define('ENABLE_URL_REWRITE', true); +``` + +Yukarıdaki örneği kendi yapılandırmanıza göre uyarlayın. + + diff --git a/doc/tr_TR/notifications.markdown b/doc/tr_TR/notifications.markdown new file mode 100644 index 00000000..0ded2077 --- /dev/null +++ b/doc/tr_TR/notifications.markdown @@ -0,0 +1,46 @@ +Bildirimler +============= + +Kanboard, çeşitli kanallardan bildirimler gönderebilir: + +- E-posta +- Web (Okunmamış mesajların listesi) + +Harici eklentiler Slack, Hipchat, Jabber veya herhangi bir sohbet sistemine bildirim göndermenizi sağlar. + +Yapılandırma +------------- + +Her kullanıcının profilindeki bildirimleri etkinleştirmesi gerekir: **Kullanıcı Profili>Bildirimler**. Varsayılan olarak devre dışı bırakılmıştır. + +E-posta bildirimlerini almak için profilinizde geçerli bir e-posta adresine ihtiyacınız vardır ve uygulama, e-posta göndermek üzere yapılandırılmalıdır. + +![Notifications](screenshots/notifications.png) + +Favori bildirim yönteminizi seçebilirsiniz: + +- E-postalar +- Web (aşağıya bakın) + +Üye olduğunuz her proje için aşağıdakilerle ilgili bildirim almayı seçebilirsiniz: + +- Tüm görevler +- Sadece size verilen görevler için +- Sadece sizin tarafınızdan yaratılan görevler için +- Sadece sizin tarafınızdan yaratılan ve size verilen görevler için + +Ayrıca yalnızca bazı projeleri seçebilirsiniz, varsayılan olarak tüm üyelerinizin tamamı bu projelerdir. + +Web bildirimleri +----------------- + +Web bildirimleri, gösterge tablosundan veya üstteki simgeden edinilebilir: + +![Web Notifications Icon](screenshots/web-notifications-icon.png) + +Bildirimler bir listede gösterilir, böylece tek tek bildirimi okundu olarak veya her şey olarak işaretleyebilirsiniz. + +![Web Notifications](screenshots/web-notifications.png) + +Bu şekilde e-postalar almadan bildirim alabilirsiniz. + diff --git a/doc/tr_TR/performances.markdown b/doc/tr_TR/performances.markdown new file mode 100644 index 00000000..6400a622 --- /dev/null +++ b/doc/tr_TR/performances.markdown @@ -0,0 +1,39 @@ +Kanboard Performans +===================== + +Yapılandırmanıza göre, bazı özellikler Kanboard kullanımını yavaşlatabilir. +Varsayılan olarak, tüm işlemler eşzamanlıdır ve HTTP isteği ile aynı iş parçacığında gerçekleştirilir. +Bu bir PHP kısıtlamasıdır. +Ancak, bunu iyileştirmek mümkündür. + +Yüklediğiniz eklentilere bağlı olarak, harici servislerle iletişim kurmak yüzlerce milisaniyeden fazla hatta saniyeler sürebilir. +Ana iş parçacığının engellenmesini önlemek için, bu işlemleri bir [arka plan çalışma](worker.markdown) havuzuna devretmek mümkündür. +Bu kurulum, altyapınıza ek yazılım yüklemenizi gerektirir. + +Darboğazı nasıl tespit edebilirim? +----------------------------- + +- Hata ayıklama modunu (debug mode) etkinleştir +- Günlük dosyasını (log) izleyin +- Kanboard'da bir şeyler yapın (örneğin bir görevi sürükleyip bırakın) +- Tüm işlemler yürütme süresi ile günlüğe kaydedilir (HTTP istekleri, E-posta bildirimleri, SQL istekleri) + +E-posta bildirimlerinin hızını artırın +--------------------------------- + +SMTP metodunu harici bir sunucu ile kullanmak çok yavaş olabilir. + +Olası çözümler: + +- SMTP'yi hala kullanmak istiyorsanız arka plan çalışma metodunu kullanın +- Postfix ile yerel bir e-posta geçişi kullanın ve "mail" aktarımı kullanın +- E-posta göndermek için bir HTTP API kullanan bir e-posta sağlayıcısı kullanın (Sendgrid, Mailgun veya Postmark) + +Sqlite performansını geliştirin +--------------------------- + +Olası çözümler: + +- Eşzamanlılık (çok sayıda kullanıcı) çok olduğunda Sqlite kullanmayın, bunun yerine Postgres veya Mysql seçin +- Sqlite'i paylaşılan bir NFS bağdaştırıcısı üzerinde kullanmayın +- Zayıf IOPS'li bir diskte Sqlite kullanmayın, yerel SSD sürücülerini kullanmak her zaman tercih edilir diff --git a/doc/tr_TR/plugin-directory.markdown b/doc/tr_TR/plugin-directory.markdown new file mode 100644 index 00000000..946cc57c --- /dev/null +++ b/doc/tr_TR/plugin-directory.markdown @@ -0,0 +1,16 @@ +Eklenti Dizini Yapılandırması +============================== + +Eklentileri kullanıcı arayüzünden kurmak, güncellemek ve kaldırmak için şu gereksinimlere sahip olmanız gerekir: + +- Eklenti dizini, web sunucusu kullanıcısı tarafından yazılabilir olmalıdır +- Zip uzantısı sunucunuzda mevcut olmalıdır +- `PLUGIN_INSTALLER` yapılandırma parametresi `true` olarak ayarlanmalıdır + +Bu özelliği devre dışı bırakmak için yapılandırma dosyanızdaki PLUGIN_INSTALLER` değerini `false` olarak değiştirin. +Dosya sistemi üzerindeki eklenti klasörünün izinlerini de değiştirebilirsiniz. + +Yalnızca yöneticilere kullanıcı arayüzünden eklentiler yüklemesine izin verilir. + +Varsayılan olarak, yalnızca Kanboard'un web sitesinde listelenen eklenti mevcuttur. + diff --git a/doc/tr_TR/plugins.markdown b/doc/tr_TR/plugins.markdown new file mode 100644 index 00000000..2f3ec2a7 --- /dev/null +++ b/doc/tr_TR/plugins.markdown @@ -0,0 +1,47 @@ +Eklenti(Plugin) Geliştirme +================== + +Not: Eklenti API'sı şu an **alfa olarak kabul edilmektedir**. + +Eklentiler, Kanboard'un temel işlevlerini genişletmek, özellikler eklemek, temalar oluşturmak veya varsayılan davranışı değiştirmek için kullanışlıdır. + +Eklenti yaratıcıları açıkça Kanboard'un uyumlu sürümlerini belirtmelidir. Kanboard'un dahili kodu zamanla değişebilir ve eklentiniz yeni sürümlerle test edilmelidir. Değişiklikler için lütfen [Değişiklik Günlüğü](https://github.com/kanboard/kanboard/blob/master/ChangeLog) kontrol edin. + +- [Eklenti oluşturma](plugin-registration.markdown) +- [Eklenti kancalarını kullanma](plugin-hooks.markdown) +- [Etkinlikler](plugin-events.markdown) +- [Varsayılan uygulama davranışlarını geçersiz kıl](plugin-overrides.markdown) +- [Eklentiler için transfer şemaları ekle](plugin-schema-migrations.markdown) +- [Özel rutlar](plugin-routes.markdown) +- [Yardımcı ekle](plugin-helpers.markdown) +- [Posta aktarımları ekle](plugin-mail-transports.markdown) +- [Bildirim türlerini ekle](plugin-notifications.markdown) +- Otomatik işlemler ekle](plugin-automatic-actions.markdown) +- [Meta verileri kullanıcılara, görevlere ve projelere ekleme](plugin-metadata.markdown) +- [Kimlik doğrulama mimarisi](plugin-authentication-architecture.markdown) +- [Kimlik doğrulama eklenti kaydı](plugin-authentication.markdown) +- [Yetkilendirme mimarisi](plugin-authorization-architecture.markdown) +- [Özel grup sağlayıcıları](plugin-group-provider.markdown) +- [Dış-harici link sağlayıcıları](plugin-external-link.markdown) +- [Dış görevler](plugin-external-tasks.markdown) +- [Avatar sağlayıcıları ekle](plugin-avatar-provider.markdown) +- [LDAP istemcisi](plugin-ldap-client.markdown) + +Eklentilere örnekler +------------------- + +- [SMS İki-Kademeli Kimlik Doğrulaması](https://github.com/kanboard/plugin-sms-2fa) +- [LDAP desteği ile Ters-Proxy Kimlik Doğrulaması](https://github.com/kanboard/plugin-reverse-proxy-ldap) +- [Slack](https://github.com/kanboard/plugin-slack) +- [Hipchat](https://github.com/kanboard/plugin-hipchat) +- [Jabber](https://github.com/kanboard/plugin-jabber) +- [Sendgrid](https://github.com/kanboard/plugin-sendgrid) +- [Mailgun](https://github.com/kanboard/plugin-mailgun) +- [Postmark](https://github.com/kanboard/plugin-postmark) +- [Amazon S3](https://github.com/kanboard/plugin-s3) +- [Bütçe planlaması](https://github.com/kanboard/plugin-budget) +- [Kullanıcı zaman çizelgeleri](https://github.com/kanboard/plugin-timetable) +- [Alt Görev Tahmini](https://github.com/kanboard/plugin-subtask-forecast) +- [Otomatik İşlem örneği](https://github.com/kanboard/plugin-example-automatic-action) +- [Tema eklentisi örneği](https://github.com/kanboard/plugin-example-theme) +- [CSS eklentisi örneği](https://github.com/kanboard/plugin-example-css) diff --git a/doc/tr_TR/postgresql-configuration.markdown b/doc/tr_TR/postgresql-configuration.markdown new file mode 100644 index 00000000..27727919 --- /dev/null +++ b/doc/tr_TR/postgresql-configuration.markdown @@ -0,0 +1,51 @@ +Postgresql yapılandırması +======================== + +Varsayılan olarak Kanboard, verilerini depolamak için Sqlite'i kullanır, ancak Postgresql'i kullanmak da mümkündür. + +Gereksinimler +------------ + +- Postgresql >= 9.3 +- `pdo_pgsql` PHP uzantısı kurulmuş olmalı (Debian/Ubuntu: `apt-get install php5-pgsql`) + +Configuration +------------- + +### `pgsql` komutu ile boş bir veritabanı oluşturun: + +```sql +CREATE DATABASE kanboard; +``` + +### Bir yapılandırma dosyası oluşturun + +`config.php` dosyasında aşağıdaki şu değerler bulunmalıdır: + +```php +<?php + +// PostgreSQL'i Sqlite yerine kullanmayı seçiyoruz +// We choose to use Postgresql instead of Sqlite +define('DB_DRIVER', 'postgres'); + +// Mysql parameters +define('DB_USERNAME', 'REPLACE_ME'); +define('DB_PASSWORD', 'REPLACE_ME'); +define('DB_HOSTNAME', 'REPLACE_ME'); +define('DB_NAME', 'kanboard'); +``` + +Not: Ayrıca, `config.default.php` şablon dosyasını `config.php` olarak yeniden adlandırabilirsiniz. + +### SQL dökümünü-dump alma (alternatif yöntem) + +Başlangıçta bri kez, Kanboard her bir veritabanı geçiş işleminde tek tek çalışacak ve bu işlem konfigürasyonunuza göre biraz zaman alabilir. + +Sorunları veya olası zaman aşımlarını önlemek için, veritabanını doğrudan SQL şemasını içe aktararak başlatabilirsiniz: + +```bash +psql -U postgres my_database < app/Schema/Sql/postgres.sql +``` + +`app/Schema/Sql/postgres.sql` dosyası, veritabanının son sürümünü gösteren bir SQL dökümüdür. diff --git a/doc/tr_TR/project-configuration.markdown b/doc/tr_TR/project-configuration.markdown new file mode 100644 index 00000000..793667fd --- /dev/null +++ b/doc/tr_TR/project-configuration.markdown @@ -0,0 +1,42 @@ +Proje Ayarları +================ + +Sağ üstte bulunan **Ayarlar** menüsüne gidin, ardından soldaki **Proje ayarları** seçeneğini seçin. + +![Project settings](screenshots/project-settings.png) + +### Yeni projeler için varsayılan sütunlar + +Varsayılan sütun adlarını buradan değiştirebilirsiniz. +Her zaman aynı sütunlara sahip projeler oluşturmanız yararlıdır. + +Her sütun adı virgül ile ayrılmalıdır. + +Varsayılan olarak, Kanboard şu sütun adlarını kullanır: Bekleme Listesi(Backlog), Hazır, İşlemde ve Tamamlandı. + +### Yeni projeler için varsayılan kategoriler + +Kategoriler uygulama için genel değildir, ancak bir projeye bağlıdır. +Her proje farklı kategorilere sahip olabilir. + +Bununla birlikte, her zaman tüm projeleriniz için aynı kategorileri oluşturursanız, burada otomatik olarak oluşturulacak kategorilerin listesini tanımlayabilirsiniz. + +### Bir kullanıcı için aynı anda yalnızca bir alt görev almasına izin ver + +Bu seçenek etkinleştirildiğinde, bir kullanıcı o anda yalnızca bir alt görevle çalışabilir. + +Başka bir alt görev "devam ediyor" durumuna sahipse, kullanıcı bu iletişim kutusunu görür: + +![Subtask user restriction](screenshots/subtask-user-restriction.png) + +### Tetikleme otomatik olarak alt görev zamanı izleme + +- Bu seçenek etkinleştirilirse, bir alt görev durumu "devam ediyor" olarak değiştirildiğinde, zamanlayıcı otomatik olarak başlayacaktır. +- Zaman izlemeyi kullanmıyorsanız bu seçeneği devre dışı bırakın. + +### Kümülatif akış diyagramında kapalı görevleri dahil et + +- Bu seçenek etkinleştirilirse, kapalı görevler kümülatif akış şemasına dahil edilir. +- Bu seçenek devre dışı bırakılırsa, yalnızca açık görevler dahil edilir. +- Bu seçenek tablonun "toplam" sütununu etkiler "project_daily_column_stats" + diff --git a/doc/tr_TR/project-permissions.markdown b/doc/tr_TR/project-permissions.markdown new file mode 100644 index 00000000..2440f085 --- /dev/null +++ b/doc/tr_TR/project-permissions.markdown @@ -0,0 +1,23 @@ +Proje İzinleri +=================== + +Her proje birbirinden izole edilmiş ve birbirinden ayrılmıştır. +Proje erişimine proje sahibi tarafından izin verilmelidir. + +Her kullanıcı ve her gruba ayrı bir rol atanabilir. +[Projeler için roller]3 tür var(roles.markdown): + +- Proje Müdürü +- Proje Üyesi +- Proje Görüntüleyicisi + +Yalnızca yöneticilerin her şeye erişimi vardır. + +Rol atamaları ** Proje Ayarları> İzinler ** 'den ulaşılabilir: + +![Project Permissions](screenshots/project-permissions.png) + +Herkese izin vermeyi seçerseniz, tüm Kanboard kullanıcıları Proje Üyesi olarak değerlendirilecektir. +Bu da artık rol yönetimi olmadığını gösterir. Kullanıcı veya grup başına izin kullanılamaz. + +Özel projeler izin tanımlayamaz. diff --git a/doc/tr_TR/project-types.markdown b/doc/tr_TR/project-types.markdown new file mode 100644 index 00000000..90dee0ab --- /dev/null +++ b/doc/tr_TR/project-types.markdown @@ -0,0 +1,14 @@ +Proje Tipleri +============= + +İki tür proje vardır: + +| Tip | Açıklama | +|-------------------|-----------------------------------------------------------------------| +| Takım Projesi | Kullanıcı ve grup yönetimi ile proje | +| Özel proje | Yalnızca bir kişiye ait olan projede, kullanıcı yönetimi yoktur | + +- Yalnızca Yöneticiler ve Uygulama Yöneticileri ekip projeleri oluşturabilir. +- Özel projeler herkes tarafından oluşturulabilir. + +[Kanboard'daki rollerle ilgili belgeleri okuyun](roles.markdown) diff --git a/doc/tr_TR/project-views.markdown b/doc/tr_TR/project-views.markdown new file mode 100644 index 00000000..5898bcdf --- /dev/null +++ b/doc/tr_TR/project-views.markdown @@ -0,0 +1,58 @@ +Pano, Takvim ve Liste Görünümleri +============================== + +Her bir proje için, görevler birkaç görünümle görselleştirilebilir: **Pano, Takvim ve Liste ve Gantt**. +Her görünüm en üstteki filtre kutusunun sonucunu gösterir. +Arama motoru[gelişmiş sözdizimini-syntax](search.markdown) kullanır. + +Pano Görünümü +---------- + +![Pano Görünümü](screenshots/board-view.png) + +- Bu görünümle, sütunlar arasında görevleri sürükleyip bırakabilirsiniz. +- Pano görünümüne geçmek için klavye kısayolunu da kullanabilirsiniz: **"v b"**. +- Bir gölge Görevler son anlarda değiştirilir. + +![Pano Görev Sınırı](screenshots/board-task-limit.png) + +Bir sütun için görev sınırına ulaşıldığında arka plan kırmızı olur. Yani, aynı anda çok fazla görev devam ediyor demektir. + +[Pano yapılandırması hakkında daha fazla bilgi edinin](board-configuration.markdown) + +Takvim Görünümü +-------------- + +![Takvim görünümü](screenshots/calendar-view.png) + +- Bu görünümle, görevleri vade tarihleriyle görselleştirebilirsiniz. +- Ayarlara bağlı olarak, devam eden görevleri de görebilirsiniz. +- Takvim görünümüne geçmek için klavye kısayolunu da kullanabilirsiniz: **"v c"**. +- [Takvim yapılandırması hakkında daha fazla bilgi edinin](calendar-configuration.markdown) + +Liste Görünümü +--------- + +![Liste görünümü](screenshots/list-view.png) + +- Bu görünümde, aramanızın tüm sonuçları bir tabloda gösterilir. +- Liste görünümüne geçmek için klavye kısayolunu da kullanabilirsiniz: **"v l"**. + +Gantt Görünümü +---------- + +![Gantt görünümü](screenshots/gantt-view.png) + +- Gantt görünümü görevleri yatay bir zaman çizelgesinde görüntüler +- Grafiği görüntülemek için başlangıç tarihi ve bitiş tarihi kullanılır +- Hızlı erişim için klavye kısayolunu kullanın: **v g** + +Proje Görünümü +---------------- + +![Proje görünümü](screenshots/project-view.png) + +- Projenin açıklamasını görüntüleyin +- Belgelerin projeye eklenmesi ve yüklenmesi +- Proje üyelerinin listesini görüntülenmesi +- Projenin son faaliyetlerini görüntüleyin diff --git a/doc/tr_TR/recurring-tasks.markdown b/doc/tr_TR/recurring-tasks.markdown new file mode 100644 index 00000000..29357323 --- /dev/null +++ b/doc/tr_TR/recurring-tasks.markdown @@ -0,0 +1,25 @@ +Tekrar eden görevler +=============== + +Kanban metodolojisine uymak için, tekrar eden görevler bir tarih tabanında değil, panoda olaylara dayanır. + +- Seçilen olaylar gerçekleştiğinde, tekrar eden görevler panonun ilk sütununa kopyalanır +- Teslim tarihi otomatik olarak yeniden hesaplanabilir +- Her görev, onu oluşturan üst görevin görev no(id) ve oluşturulmuş alt görevin kaydını tutar + + +Yapılandırma +------------- + +Görev görünüm sayfasına gidin veya panodaki açılır menüyü kullanın, ardından ** Tekrarı düzenleyin** seçeneğini belirleyin. + +![Recurring task](screenshots/recurring-tasks.png) + +Halen yeni tekrar eden bir görev oluşturan 3 tetikleyici vardır: + +- Bir görevi ilk sütundan taşıma +- Görevin son sütuna taşınması +- Görevi kapatmak + +Son tarihler, mevcut görev üzerinde ayarlanmışsa, verilen gün, ay veya yıl faktörü ile yeniden hesaplanabilir. +Yeni vade tarihinin hesaplanması için temel tarih, mevcut vade tarihi veya işlem tarihi olabilir. diff --git a/doc/tr_TR/removing-projects.markdown b/doc/tr_TR/removing-projects.markdown new file mode 100644 index 00000000..cf3bf78b --- /dev/null +++ b/doc/tr_TR/removing-projects.markdown @@ -0,0 +1,10 @@ +Projeleri Kaldırma +================= + +Bir projeyi kaldırmak için, projenin müdürü veya yönetici olmanız gerekir. + +**"Proje ayarları"** 'na gidin ve sol taraftaki menüden, en alttaki **"Kaldır"** seçeneğini seçin. + +![Removing Projects](screenshots/project-remove.png) + +Bir projeyi kaldırmak, bu projeye ait tüm görevleri kaldırır. diff --git a/doc/tr_TR/requirements.markdown b/doc/tr_TR/requirements.markdown new file mode 100644 index 00000000..32edce00 --- /dev/null +++ b/doc/tr_TR/requirements.markdown @@ -0,0 +1,108 @@ +Gereksinimler +============ + +Sunucu tarafı +----------- + +### Uyumlu İşletim Sistemleri + +| İşletim sistemi | +|--------------------------------------| +| Linux Ubuntu Xenial Xerus 16.04 LTS | +| Linux Ubuntu Trusty 14.04 LTS | +| Linux Centos 6.x | +| Linux Centos 7.x | +| Linux Redhat 6.x | +| Linux Redhat 7.x | +| Linux Debian 8 | +| FreeBSD 10.x | +| Microsoft Windows 2012 R2 | +| Microsoft Windows 2008 | + +### Uyumlu Veritabanları + +| Veritabanı | +|--------------------| +| Sqlite 3.x | +| Mysql >= 5.5 | +| MariaDB >= 10 | +| Postgresql >= 9.3 | + +Hangi veritabanı seçmeli? + +| Tip | Kullanımı | +|-----------------|------------------------------------------------------------| +| Sqlite | Tek kullanıcı veya küçük ekip (neredeyse eşzamanlılık yok) | +| Mysql/Postgres | Daha büyük ekip, yüksek erişilebilirlik yapılandırması | + +Sqlite'i NFS bağlarken kullanmayın; yalnızca hızlı G/Ç - I/O ile bir diskiniz olduğunda. + +### Uyumlu Web Sunucuları + +| WWeb Sunucu | +|--------------------| +| Apache HTTP Server | +| Nginx | +| Microsoft IIS | + +Kanboard, Apache ile çalışacak şekilde önceden yapılandırılmıştır (URL yeniden yazımı). + +### PHP Versionları + +| PHP Version | +|----------------| +| PHP >= 5.3.9 | +| PHP 5.4 | +| PHP 5.5 | +| PHP 5.6 | +| PHP 7.x | + +### Gerekli PHP Eklentileri + +| PHP Eklentisi | Not | +|----------------------------|--------------------------------------| +| pdo_sqlite | Sadece Sqlite kullanıyorsanız | +| pdo_mysql | Sadece Mysql/MariaDB kullanıyorsanız | +| pdo_pgsql | Sadece Postgres kullanıyorsanız | +| gd | | +| mbstring | | +| openssl | | +| json | | +| hash | | +| ctype | | +| session | | +| ldap | Yalnızca LDAP kimlik doğrulaması için| +| Zend OPcache | Tavsiye edilen | + +### İsteğe bağlı PHP Eklentileri + +| PHP Eklentisi | Not | +|----------------------------|--------------------------------------------------| +| zip | Kanboard'dan eklentileri kurmak için kullanılır | + +### Tavsiyeler + +- Modern Linux veya Unix işletim sistemi. +- En iyi performanslar OPcode önbellekleme etkinleştirilmiş haliyle PHP'nin en son sürümü ile elde edilmiştir. + +İstemci-Client tarafı +----------- + +### Tarayıcı-Browsers + +Mümkünse daima en yeni sürümü olan modern bir tarayıcı kullanın: + +| Tarayıcı | +|---------------------------------------| +| Safari | +| Google Chrome | +| Mozilla Firefox | +| Microsoft Internet Explorer >= 11 | +| Microsoft Edge | + +### Cihazlar-PC ler + +| Cihaz | Ekran çözünürlüğü | +|------------------------|--------------------| +| Dizüstü veya masaüstü | >= 1366 x 768 | +| Tablet | >= 1024 x 768 | diff --git a/doc/tr_TR/reverse-proxy-authentication.markdown b/doc/tr_TR/reverse-proxy-authentication.markdown new file mode 100644 index 00000000..56c9b1fb --- /dev/null +++ b/doc/tr_TR/reverse-proxy-authentication.markdown @@ -0,0 +1,66 @@ +Ters-Reverse Proxy Kimlik Doğrulaması +============================ + +Bu kimlik doğrulama yöntemi genellikle büyük kuruluşlar için [SSO](http://en.wikipedia.org/wiki/Single_sign-on) (Tek Oturum Açma/Single Sign-On) için kullanılır. + +Kimlik doğrulama başka bir sistem tarafından yapılır, Kanboard şifrenizi bilmiyor ve siz zaten kimliği doğrulanmış olduğunu varsayalım. + +Gereksinimler +------------ + +- İyi yapılandırılmış bir ters proxy + +veya + +- Aynı sunucuda Apache Kimliği + + +Bu nasıl çalışıyor? +------------------- + +1. Geri vekiliniz, kullanıcının kimliğini doğrular ve kullanıcı adını bir HTTP üstbilgisi aracılığıyla gönderir. +2. Kanboard talepten kullanıcı adını alır + - Kullanıcı gerekirse otomatik olarak oluşturulur + - Geçerli olduğunu varsayan herhangi bir istemeden yeni bir Kanboard oturumu açın + +Kurulum Talimatları +------------------------- + +### Ters proxy ayarlarınızı yapma + +Bu, bu dokümantasyon kapsamında değildir. +Kullanıcı girişinin bir HTTP üstbilgisi kullanarak ters proxy tarafından gönderildiğini kontrol etmeli ve bunlardan hangisinin olduğunu öğrenmelisin. + +### Kanboard'u Kurma + +Özel bir `config.php` dosyası oluşturun veya `config.default.php` dosyasını kopyalayın: + + +```php +<?php + +// Enable/disable reverse proxy authentication +define('REVERSE_PROXY_AUTH', true); // Set this value to true + +// The HTTP header to retrieve. If not specified, REMOTE_USER is the default +define('REVERSE_PROXY_USER_HEADER', 'REMOTE_USER'); + +// The default Kanboard admin for your organization. +// Since everything should be filtered by the reverse proxy, +// you should want to have a bootstrap admin user. +define('REVERSE_PROXY_DEFAULT_ADMIN', 'myadmin'); + +// The default domain to assume for the email address. +// In case the username is not an email address, it +// will be updated automatically as USER@mydomain.com +define('REVERSE_PROXY_DEFAULT_DOMAIN', 'mydomain.com'); +``` + +Notlar: + +- Proxy, Kanboard'u çalıştıran aynı web sunucusuysa, [CGI protokolü](http://www.ietf.org/rfc/rfc3875) uyarınca, başlık adı `REMOTE_USER` olacaktır. Örnek olarak, Apache, `Require valid-user` parametresi ayarlanmışsa varsayılan olarak `REMOTE_USER` ekler. + +- Apache, Kanboard çalıştıran başka bir Apache için bir ters proxy ise, `REMOTE_USER` başlığı ayarlanmamıştır (IIS ve Nginx ile aynı davranış). + +- Gerçek bir ters proxyğiniz varsa, [HTTP ICAP taslağı](http://tools.ietf.org/html/draft-stecher-icap-subid-00#section-3.4) üstbilgisini `X-Authenticated-User` Kimliği Doğrulanmış Kullanıcı. Bu fiili standart birçok araç tarafından benimsenmiştir. + diff --git a/doc/tr_TR/roles.markdown b/doc/tr_TR/roles.markdown new file mode 100644 index 00000000..98859bc0 --- /dev/null +++ b/doc/tr_TR/roles.markdown @@ -0,0 +1,26 @@ +Kullanıcı Rolleri +========== + +Uygulama Rolleri +----------------- + +Her Kanboard kullanıcısı bu rollerden birine sahiptir: + +| Rol | Açıklama | +|------------|---------------------------------------------------------------------------| +| Yönetici | Her şeye erişim | +| Müdür | Ekip projeleri oluşturabilir, ancak uygulama ayarlarını değiştiremezsiniz | +| Kullanıcı | Sadece özel projeler yaratabilir | + +Proje Rolleri +------------- + +Her bir proje ekip projesi her kullanıcıya ve gruba farklı bir rol atayabilir: + +| Rol | Açıklama | +|---------------------|---------------------------------------------------------------------------| +| Proje Müdürü | Proje ayarlarını değiştirebilir, Gantt grafiğine ve raporlara erişebilir | +| Proje Üyesi | Görevler oluşturabilir ve panoyu kullanabilir | +| Proje Görüntüleyici | Panoya ve görevlere salt okunur | + +Kullanıcılara bir dizi kısıtlama uygulamak için özel proje rolleri oluşturulabilir. diff --git a/doc/tr_TR/rss.markdown b/doc/tr_TR/rss.markdown new file mode 100644 index 00000000..6ee95c7a --- /dev/null +++ b/doc/tr_TR/rss.markdown @@ -0,0 +1,24 @@ +RSS / Atom abonelikleri +====================== + +Kanboard, projeler ve kullanıcılar için RSS yayınlarını desteklemektedir. + +- Proje akışları yalnızca projenin aktivitesini içerir +- Kullanıcı akışları, kullanıcının üye olduğu tüm projelerin etkinlik akışını içeriyor + +Bu abonelikler, yalnızca kullanıcı profilinde veya proje ayarlarında genel erişim etkinleştirildiğinde etkinleştirilir. + +Proje RSS yayınlarını etkinleştir / devre dışı bırak +-------------------------------- + +**Proje ayarları> Herkese açık erişim** 'e gidin. + +![Disable public access](screenshots/project-disable-sharing.png) + +Kullanıcı RSS yayınlarını etkinleştir / devre dışı bırak +-------------------------------- + + +**Kullanıcı profili> Herkese açık erişim** seçeneğine gidin. + +RSS bağlantısı rastgele bir belirteç-token tarafından korunuyor, yalnızca URL'yi bilen insanlar özet akışına erişebilir. diff --git a/doc/tr_TR/screenshots.markdown b/doc/tr_TR/screenshots.markdown new file mode 100644 index 00000000..e7b30ab5 --- /dev/null +++ b/doc/tr_TR/screenshots.markdown @@ -0,0 +1,25 @@ +Ekran görüntüleri ekleme +================== + +Zaman kazanmak için görüntüleri doğrudan Kanboard'a kopyalayıp yapıştırabilirsiniz. +Bu görüntüler göreve ek olarak yüklenir. + +Bu, örneğin, bir sorunu tarif etmek için ekran görüntülerinin alınması için özellikle yararlıdır. + +Açılır menüye tıklayarak veya görev görünümü sayfasında doğrudan ekran görüntüleri ekleyebilirsiniz. + +![Drop-down screenshot menu](screenshots/dropdown-screenshot.png) + +Yeni bir görüntü eklemek için ekran görüntüsünü alın ve CTRL+V veya Command+V ile yapıştırın: + +![Screenshot page](screenshots/task-screenshot.png) + +Mac OS X'te ekran görüntüleri almak için şu klavye kısayolları kullanabilirsiniz: + +- Command-Control-Shift-3: Ekranın ekran görüntüsünü alın ve kopya panoya kaydedin +- Command-Control-Shift-4, sonra bir alan seçin: Alanın ekran görüntüsünü alın ve panoya kaydedin. +- Command-Control-Shift-4, daha sonra boşluk bırakın, sonra bir pencereyi tıklatın: Bir pencerenin ekran görüntüsünü alın ve panoya kaydedin + +Ek açıklamaları ve şekilleri içeren ekran görüntüleri almak için kullanılabilecek birkaç üçüncü taraf uygulaması da vardır. + +**Not: Bu özellik tüm tarayıcılarda çalışmaz.** Şu hata yüzünden Safari ile çalışmaz:https://bugs.webkit.org/show_bug.cgi?id=49141 diff --git a/doc/tr_TR/search.markdown b/doc/tr_TR/search.markdown new file mode 100644 index 00000000..f810ad5c --- /dev/null +++ b/doc/tr_TR/search.markdown @@ -0,0 +1,189 @@ +Gelişmiş Arama Sözdizimi(Kodları) +====================== + +Kanboard, gelişmiş arama için basit bir sorgu dili kullanıyor. +Görevler, yorumlar, alt görevler, bağlantılar ile aynı zamanda etkinlik akışında da arama yapabilirsiniz. + +Sorgu örneği +---------------- + +Bu örnek, yarın için bir bitiş tarihi ve "başlığım" ı içeren bir başlık ile bana atanan tüm görevleri geri alacaktır: + +``` +assigne:me due:tomorrow başlığım +``` + +Genel arama +------------- + +### Görev kimliği veya başlığa göre arama + +- Görev kimliği ile ara: `#123` +- Görev kimliği ve görev başlığına göre ara: `123` +- Görev başlığına göre ara: herhangi bir arama nitelikleriyle eşleşmeyen herhangi bir şey + +### Duruma göre ara + +Özellik: **status** + +- Açık görevleri bulmak için sorgu: `status:open` +- Kapatılan görevleri bulmak için sorgu: `status:closed` + +### Devralan göre ara + +Özellik: **assignee** + +- Tam adıyla sorgu: `assignee:"Frederic Guillot"` +- Kullanıcı adı ile sorgu: `assignee:fguillot` +- Birden fazla atanan arama: 'assignee:user1 assignee:"John Doe" +- Atanmamış görevler için sorgu: 'assignee:nobody' +- Görevlerimin sorgulanması: 'assignee:me` + +### Görev yaratıcısına göre ara + +Özellik: **creator** + +- Benim tarafından oluşturulan görevler: `creator:me` +- John Doe tarafından oluşturulan görevler: `creator:"John Doe"` +- Kullanıcı no #1 tarafından oluşturulan görevler: `creator:1` + +### Alt görev atayan tarafından arama yapın + +Özellik: **subtask:assignee** + +- Örnek: `subtask:assignee:"John Doe"` + +### Renk ile ara + +Özellik: **color** + +- Renk kimliği ile arama yapmak için sorgu: `color:mavi` +- Renk adına göre arama yapmak için sorgu: `color:"Oranj"` + +### Vadesine göre ara + +Özellik: **due** + +- Bugünkü görevler için arama yapın: `due:today` +- Yarınki görevler için arama yapın: `due:tomorrow` +- Dünkü görevler için arama yapın: `due:yesterday` +- Tam tarihi olan görevlerde arama yapın: `due:2015-06-29` + +Tarihin ISO 8601 biçimi ile kullanması gerekir: **YYYY-MM-DD**. + +`strtotime ()` işlevi tarafından desteklenen tüm dize formatları desteklenmektedir, örneğin `next Thursday`,` -2 days`, `+2 months`, `tomorrow`, vb. + +Tarih ile desteklenen operatörler: + +- Bundan büyük: **due:>2015-06-29** +- Bundan küçük: **due:<2015-06-29** +- Bundan büyük veya eşit: **due:>=2015-06-29** +- Bundan küçük veya eşit: **due:<=2015-06-29** + +### Değiştirilme tarihine göre ara + +Özellik: **modified** or **updated** + +Tarih biçimleri son tarihle aynıdır. + +Yakın zamanda değiştirilmiş görevlerde aynı zamanda bir filtre var:: `modified:recently`. + +Bu sorgu, ayarlarda yapılandırılan pano vurgulama dönemiyle aynı değeri kullanacaktır. + +### Oluşturma tarihine göre ara + +Özellik: **created** + +Değiştirme tarihi sorguları aynı şekilde çalışır. + +### Başlangıç tarihine göre ara + +Özellik: **started** + +### Açıklamaya göre ara + +Özellik: **description** veya **desc** + +Örnek: `description:"metin arama"` + +### Dış referansa göre ara + +Görev referansı, görevinizin harici bir kimliği, örneğin başka bir yazılımdan gelen bir bilet numarasıdır. + +- Görevleri referans ile bulun: `ref:1234` veya `reference:TICKET-1234` + +### Kategoriye göre ara + +Özellik: **category** + +- Görevleri belirli bir kategori ile bulun: `category:"Feature Request"` +- Bu kategorilere sahip tüm görevleri bulun: `category:"Bug" category:"İyileştirmeler"` +- Hiçbir kategori atanmamış görevler bulun: `category:none` + +### Projeye göre ara + +Özellik: **project** + +- Görevleri proje adına göre bulun: `project:"Benim proje adım"` +- Görevleri proje idine göre bulun: `project:23` +- Çeşitli projeler için görevler bulun: `project:"Benim projem A" project:"Benim projem B"` + +### Sütunlara göre ara + +Özellik: **column** + +- Görevleri sütun adına göre bul: `column:" Devam eden işler"` +- Birkaç sütun için görevler bulun: `column:"Backlog" column:hazır` + +### Kulvar (Swim-lane) lara göre ara + +Özellik: **swimlane** + +- Görevleri kulvarlara(swim-lane) göre ara: `swimlane:"Version 42"` +- Görevleri default kulvarlar (swim-lane) göre ara: `swimlane:default` +- Çeşitli kulvarlar (swim-lanes) için görev ara: `swimlane:"Version 1.2" swimlane:"Version 1.3"` + +### Görev bağlantısı ile arama + +Özellik: **link** + +- Görevleri bağlantı adına göre bulma: `link:"is a milestone of"` +- Görevleri birkaç bağlantıya bul: `link:"is a milestone of" link:"relates to"` + +### Yorumlara göre ara + +Özellik: **comment** + +- Bu başlık içeren yorumları bulun: `comment:"Yorum mesajım"` + +### Etiketlere göre ara + +Özellik: **tag** + +- Örnek: `tag:"Etiketim"` + +Etkinlik akışı arama +---------------------- + +### Görev başlıklarına göre etkinlik arama + +Özellik: **title** veya yok (varsayılan) + +- Örnek: `title:"Benim Görevim"` +- Görev no ile ara: `#123` + +### Görev durumuna göre olayları arama + +Özellik: **status** + +### Olay yaratıcısı tarafından arayın + +Özellik: **creator** + +### Olay oluşturma tarihine göre ara + +Özellik: **created** + +### Etkinlikleri projeye göre ara + +Özellik: **project** diff --git a/doc/tr_TR/sharing-projects.markdown b/doc/tr_TR/sharing-projects.markdown new file mode 100644 index 00000000..6e0bda37 --- /dev/null +++ b/doc/tr_TR/sharing-projects.markdown @@ -0,0 +1,35 @@ +Pano ve görev paylaşımı +======================== + +Varsayılan olarak, panolar özel durumdadır, ancak panoyu herkese açık yapmak mümkündür. + +Bir genel kurul **değiştirilemez; salt-okunur bir erişimdir**. +Bu erişim rasgele belirteç (random token) tarafından korunur, yalnızca doğru URL'ye sahip kullanıcılar panoyu görebilir. + +Genel panolar her 60 saniyede bir otomatik olarak yenilenir. +Görev ayrıntıları salt okunur haldedir. + +Kullanım örnekleri: + +- Panonuzu kuruluşunuz dışındaki biriyle paylaşın +- Panoyu ofiste geniş bir ekranda görüntüle + +Herkese açık erişimi etkinleştir +-------------------- + +Projenizi seçin, ardından "Herkese açık erişim" i tıklayın ve "Herkese açık erişimi etkinleştir" düğmesini tıklayın. + +![Enable public access](screenshots/project-enable-sharing.png) + +Genel erişim etkinleştirildiğinde, birkaç bağlantı oluşturulur: + +- Genel pano görünümü +- RSS beslemesi abonelik bağlantısı +- iCalendar abonelik bağlantısı + +![Disable public access](screenshots/project-disable-sharing.png) + +Ayrıca, herkese açık erişimi istediğiniz zaman devre dışı bırakabilirsiniz. + +Her seferinde, kamu erişimini etkinleştirir veya devre dışı bırakırsanız, yeni bir rastgele belirteç (random token) üretilir. +** Önceki bağlantıları artık çalışmayacak **. diff --git a/doc/tr_TR/solving-blank-page-issue.markdown b/doc/tr_TR/solving-blank-page-issue.markdown new file mode 100644 index 00000000..8a397c84 --- /dev/null +++ b/doc/tr_TR/solving-blank-page-issue.markdown @@ -0,0 +1,7 @@ +Kanboard'u yükledikten veya yükselttikten sonra boş bir sayfa alıyorum +========================================================= + +- Tüm gereksinimleri sunucunuza yüklediniz mi kontrol edin +- PHP ve Apache hata günlüklerini kontrol edin +- Dosyaların doğru izinlere sahip olup olmadığını kontrol edin +- Agresif bir OPcode önbellekleme kullanıyorsanız, web sunucunuzu veya php-fpm'yi yeniden yükleyin diff --git a/doc/tr_TR/solving-database-migration-issues.markdown b/doc/tr_TR/solving-database-migration-issues.markdown new file mode 100644 index 00000000..4e929ae6 --- /dev/null +++ b/doc/tr_TR/solving-database-migration-issues.markdown @@ -0,0 +1,23 @@ +Veritabanlar Arası Transfer Sorunlarını Çözme +================================= + +- Kanboard'u yeni bir sürüme yükselttiğinizde, SQL transferleri(migrations) otomatik olarak yürütülür +- Postgres ve MySQL için geçerli şema sürüm numarası `schema_version` tablosunda saklanır ve Sqlite için bu değişken ` user_version` değişkeninde saklanır +- Transfer(migrations) dosyaları `app/Schema/<DatabaseType>.php` dosyasında tanımlanır +- Her işlev bir transfer işlemidir +- Her transfer, bir işlemde yürütülür +- Transfer işleminde bir hata oluşturursa geri alma gerçekleştirilir + +Yeni sürüme geçerken: + +- Daima verilerinizi yedekleyin +- Transfer işlemlerini birden çok işlemden paralel olarak çalıştırmayın + +"SQL geçişleri çalıştırılamadı [...]" hatası alıyorsanız, el ile düzeltme adımları şunlardır: + +1. Veritabanınıza karşılık gelen dosyayı açın `app/Schema/Sqlite.php` veya `app/Schema/Mysql.php` +2. Başarısız transfer işlevine gidin +3. İşlevde tanımlanan SQL sorgularını manuel olarak çalıştırın +4. Bir hata ile karşılaşırsanız, sorunu tam hata ile birlikte hata izleyicisine bildirin +5. Transferin tüm SQL deyimleri yürütüldüğünde, şema sürüm numarasını güncelleyin +6. Diğer transfer işlemlerini çalıştırın diff --git a/doc/tr_TR/solving-session-issue-windows-iis-ie.markdown b/doc/tr_TR/solving-session-issue-windows-iis-ie.markdown new file mode 100644 index 00000000..c3bc57a8 --- /dev/null +++ b/doc/tr_TR/solving-session-issue-windows-iis-ie.markdown @@ -0,0 +1,19 @@ +Internet Explorer ve Microsoft IIS ile oturum açamıyorum +============================================================== + +Eğer giriş yapamıyorsanız ve her zaman doğru kimlik bilgilerini girmiş olsanız bile **"Kullanıcı adı veya parola gerekli" ** hatasını alırsanız, +Oturumda bir sorun olduğu anlamına gelir. + +Örneğin, bu kriterler ile karşılarsanız, bu bilinen bir sorundur: + +- Alt çizgi içeren bir alan adı kullanıyorsanız: `kanboard_something.mycompany.tld` +- Microsoft Windows Server ve IIS kullanıyorsanız +- Tarayıcınız Internet Explorer ise + +Çözüm: **Etki alanı adında altçizgi kullanmayın; çünkü bu geçerli bir alan adı değildir**. + +Açıklama: Internet Explorer geçersiz kılınmış alan adlarına sahip çerezleri kabul etmiyor çünkü bu geçerli değil. + +Referans: + +- https://support.microsoft.com/en-us/kb/316112 diff --git a/doc/tr_TR/sqlite-database.markdown b/doc/tr_TR/sqlite-database.markdown new file mode 100644 index 00000000..e092ea8e --- /dev/null +++ b/doc/tr_TR/sqlite-database.markdown @@ -0,0 +1,52 @@ +Sqlite veritabanı yönetimi +========================== + +Kanboard, verilerini depolamak için varsayılan olarak Sqlite kullanır. +Tüm görevler, projeler ve kullanıcılar bu veritabanında saklanır. + +Teknik olarak, veritabanı `data` dizini içinde bulunan ve `db.sqlite` olarak adlandırılan tek bir dosyadır. + +Dışa Aktar/Yedekle +------------- + +### Komut satırı + +Yedekleme yapmak çok kolay, kimsenin yazılımı kullanmadığı zaman `data/db.sqlite` dosyasını başka bir yere kopyalamalısın. + +### Kullanıcı arayüzü + +Veritabanını istediğiniz zaman **ayarlar** menüsünden indirebilirsiniz. + +İndirilen veritabanı Gzip ile sıkıştırılır, dosya adı `db.sqlite.gz` olur. + +İthalat/Restorasyon +------------------ + +Veritabanını kullanıcı arabiriminden geri yüklemenin hiçbir yolu yoktur. +Restorasyon, herhangi bir vücut yazılımı kullanmadığında manuel olarak yapılmalıdır. + +- Eski bir yedeklemeyi geri yüklemek için `data/db.sqlite` dosyasını değiştirin ve üzerine kaydedin. +- Sıkıştırılmış bir veritabanını açmak için, terminalde bu komutu; `gunzip db.sqlite.gz` çalıştırın. + +Optimizasyon +------------ + +Bazen, `VACUUM` komutu çalıştırarak veritabanı dosyasını optimize etmek mümkündür. +Bu komut, tüm veritabanını yeniden oluşturur ve çeşitli nedenlerle kullanılabilir: + +- Dosya boyutunu küçült, verileri silerek boş alan yarat, ancak dosya boyutunu değiştirmez. +- Veritabanı sık eklemeler veya güncellemeler nedeniyle parçalanmış. + +### Komut satırından + +``` +sqlite3 data/db.sqlite 'VACUUM' +``` + +### Kullanıcı arayüzünden + +**ayarlar** menüsüne gidin ve **Veritabanını optimize et** linkine tıklayın. + +Daha fazla bilgi için [Sqlite belgeler](https://sqlite.org/lang_vacuum.html). + + diff --git a/doc/tr_TR/subtasks.markdown b/doc/tr_TR/subtasks.markdown new file mode 100644 index 00000000..11726089 --- /dev/null +++ b/doc/tr_TR/subtasks.markdown @@ -0,0 +1,44 @@ +Alt Görevler +======== + +Alt görevler bir görevin işini bölmek için yararlıdır. + +Her alt görev: + +- Bir proje üyesine atanabilir +- 3 farklı duruma sahip: **Yapılacak**, **Devam ediyor**, **Bitti** +- Zaman bilgileri bulundurun: **geçen süre** ve **tahmini süre** +- Pozisyona göre sıralanır + +Alt görevler oluşturma +----------------- + +Görev görünümünden, sol kenar çubuğunda **Bir alt görev ekle** seçeneğine tıklayın: + +![Add a subtask](screenshots/add-subtask.png) + +Ayrıca, yalnızca başlığı girerek bir alt görev ekleyebilirsiniz: + +![Add a subtask from the task view](screenshots/add-subtask-shortcut.png) + +Alt görev durumunu değiştir +--------------------- + +Alt görev başlığına tıkladığınızda durum değişir: + +![Subtask in progress](screenshots/subtask-status-inprogress.png) + +Başlıktan önceki simge duruma göre güncellenir. + +![Subtask done](screenshots/subtask-status-done.png) + +Not: Görev kapatıldığında, tüm alt görevler **Bitti** durumuna değiştirilir. + +Alt görev zamanlayıcı +------------- + +- Bir alt görev her gerçekleştirildiğinde, zamanlayıcı da başlatılır. Zamanlayıcı, herhangi bir zamanda başlatılabilir ve durdurulabilir. +- Süreölçer, alt görev için geçen süreyiotomatik olarak kaydeder. Bir alt görev düzenlediğinizde geçen süre alanının değerini manuel olarak değiştirebilirsiniz. +- Hesaplanan süre, en yakın çeyreğe yuvarlanır. Bu bilgi ayrı bir tabloda kaydedilmiştir. +- Geçen süre ve tahmini süre, tüm alt görevlerin toplamına göre otomatik olarak güncellenir. + diff --git a/doc/suse-installation.markdown b/doc/tr_TR/suse-installation.markdown index 788b4fce..b6aee5b6 100644 --- a/doc/suse-installation.markdown +++ b/doc/tr_TR/suse-installation.markdown @@ -1,4 +1,4 @@ -Installation on OpenSuse +OpenSuse kurulumu ======================== OpenSuse Leap 42.1 diff --git a/doc/tr_TR/swimlanes.markdown b/doc/tr_TR/swimlanes.markdown new file mode 100644 index 00000000..212431bf --- /dev/null +++ b/doc/tr_TR/swimlanes.markdown @@ -0,0 +1,31 @@ +Kulvarlar +========= + +Kulvarlar tahtada yatay ayrımlardır. +Örneğin, yazılım sürümlerini ayırmak, görevlerinizi farklı ürünlerde, ekiplerde ya da istediğiniz her yerde bölmek yararlıdır. + +Kulvarlar ile pano +-------------------- + +![Swimlanes](screenshots/swimlanes.png) + +- Soldaki ikonuna tıklayarak kulvar(swimlanes) daraltabilirsiniz +- Varsayılan kulvar her zaman üst kısmında gösterilir + +Kulvarları yönetmek +------------------ + +- Bütün projeler varsayılan bir kulvardadır. +- Birden fazla kulvar varsa, pano tüm kulvarları gösterecektir. +- Görevleri kulvarlar arasında sürükleyip bırakabilirsiniz. + +Kulvarları yapılandırmak için **proje yapılandırma sayfasına** gidin ve **Kulvarlar** bölümünü seçin. + +![Swimlanes Configuration](screenshots/swimlane-configuration.png) + +Oradan, yeni bir kulvar ekleyebilir veya varsayılan bir yeniden adlandırabilirsiniz. +Farklı yüzücülerin yerlerini de devre dışı bırakabilir ve değiştirebilirsiniz. + +- Varsayılan kulvar her zaman en üsttedir fakat bunu gizleyebilirsiniz. +- Aktif olmayan kulvarlar panoda gösterilmiyor. +- ** Bir kulvarın kaldırılması kendisine verilen görevleri kaldırmaz**, bu görevler varsayılan kulvara taşınacaktır. diff --git a/doc/tr_TR/syntax-guide.markdown b/doc/tr_TR/syntax-guide.markdown new file mode 100644 index 00000000..b48c7dc9 --- /dev/null +++ b/doc/tr_TR/syntax-guide.markdown @@ -0,0 +1,147 @@ +Sözdizimi Kılavuzu +============ + +Kanboard, yorumlar veya görev açıklamaları için [Markdown Sözdizimi-syntax](http://en.wikipedia.org/wiki/Markdown) kullanır. +İşte bazı örnekler: + +Kalın ve italik +---------------- + +- Kalın metin: 2 yıldız veya 2 altçizgi kullanın +- İtalik metin: 1 yıldız veya 1 altçizgi kullanın + +### Kaynak +``` +Bu **kelime** çok __önemlidir__. + +Ve burada, bir *italik* bir kelime ; bir altcizgi_ ile. +``` + +### Sonuç + +Bu **kelime** çok __önemlidir__. + +Ve burada, bir *italik* bir kelime ; bir altcizgi_ ile. + +Sırasız Listeler +--------------- + +Sırasız listeda yıldız , eksi veya artılar kullanabilir. + +### Source + +``` +- Öğe 1 +- Öğe 2 +- Öğe 3 + +veya + +* Öğe 1 +* Öğe 2 +* Öğe 3 +``` + +### Sonuç + +- Öğe 1 +- Öğe 2 +- Öğe 3 + +Sıralı listeler +------------- + +Sıralı listeler şöyle bir sayı göre öneki: + +### Source + +``` +1. Önde bunu yap +2. Bunu yap +3. Ve şu +``` + +### Result + +1. Önde bunu yap +2. Bunu yap +3. Ve şu + +Bağlantılar +----- + +### Kaynak + +``` +[Bağlantı başlığım](https://kanboard.net/) + +<https://kanboard.net> + +``` + +### Sonuç + +[Bağlantı başlığım](https://kanboard.net/) + +<https://kanboard.net> + +Kaynak kod +----------- + +### Satır içi kod + +Geri-tırnak-işareti backtick kullanın. + +``` +Bu komutu çalıştır: `tail -f /var/log/messages`. +``` + +### Sonuç + +Bu komutu çalıştır: `tail -f /var/log/messages`. + +### Kod blokları + +Sonunda dil adıyla birlikte 3 geri-tırnak-işareti kullanın. + +<pre> +<code class="language-markdown">```php +<?php + +phpinfo(); + +?> +``` +</code> +</pre> + +### Sonuç + +``` +<?php + +phpinfo(); + +?> +``` + +Başlıklar +------ + +### Kaynak + +``` +# Başlık düzeyi 1 + +## Başlık düzeyi 2 + +### Başlık düzeyi 3 +``` + +### Sonuç + +# Başlık düzeyi 1 + +## Başlık düzeyi 2 + +### Başlık düzeyi 3 diff --git a/doc/tr_TR/tags.markdown b/doc/tr_TR/tags.markdown new file mode 100644 index 00000000..ac62bce7 --- /dev/null +++ b/doc/tr_TR/tags.markdown @@ -0,0 +1,28 @@ +Etiketler +==== + +Kanboard ile, bir veya birçok etiketi görevle ilişkilendirebilirsiniz. +Etiketleri genel olarak tüm projeler için veya yalnızca belirli bir proje için tanımlayabilirsiniz. + +![Tags on the board](screenshots/tags-board.png) + +Görev formundan istediğiniz etiketleri girebilirsiniz: + +![Tags form](screenshots/tags-task.png) + +Otomatik tamamlama formu, kullanılabilir etiketleri önermek için görünür. + +Etiketleri doğrudan görev formundan da oluşturabilirsiniz. +Varsayılan olarak, bir görev formundan etiketler oluşturduğunuzda, bunlar geçerli projeyle ilişkilendirilir: + +![Project Tags](screenshots/tags-projects.png) + +Tüm etiketler proje ayarlarında yönetilebilir. + +Etiketleri tüm projeler için genel olarak tanımlamak için uygulama ayarlarına gidin: + +![Global Tags](screenshots/tags-global.png) + +Görevleri etiketler temelinde aramak için "tag" özelliğini kullanmanız yeterlidir: + +![Search Tags](screenshots/tags-search.png) diff --git a/doc/tr_TR/task-links.markdown b/doc/tr_TR/task-links.markdown new file mode 100644 index 00000000..44531f22 --- /dev/null +++ b/doc/tr_TR/task-links.markdown @@ -0,0 +1,24 @@ +İç Görev Bağlantıları +=================== + +Görevler önceden tanımlanmış ilişkilerle birlikte birbirine bağlanabilir: + +![Task Links](screenshots/internal-task-links.png) + +Bu görevler projeler arasında bağlamak için de mümkündür. + +Varsayılan ilişkiler şunlardır: + +- **alakalı** +- **bloklar** | tarafından engellendi +- **tarafından engellendi**| bloklar +- **çoğaltır** | tarafından çoğaltılan +- **tarafından çoğaltılan** | çoğaltır +- **bir çocuğun ** | bir ebeveyni +- **'nın ebeveyni ** | bir çocuğu +- **dönüm noktası hedefliyor ** | bir dönüm noktası +- **bir dönüm noktası** | dönüm noktasını hedeflemek +- **düzeltmeler** | tarafından düzeltildi +- **tarafından düzeltildi** | düzeltmeler + +Bu etiketler uygulama ayarlarından değiştirilebilir. diff --git a/doc/tr_TR/tests.markdown b/doc/tr_TR/tests.markdown new file mode 100644 index 00000000..410a8513 --- /dev/null +++ b/doc/tr_TR/tests.markdown @@ -0,0 +1,158 @@ +Otomatik testler +=============== + +[PHPUnit](https://phpunit.de/), Kanboard'da otomatik testler yapmak için kullanılır. + +Sonuçların her yerde aynı olduğundan emin olmak için farklı veritabanlarında (Sqlite, Mysql ve PostgreSQL) testler çalıştırabilirsiniz. + +Gereksinimler +------------ + +- Linux/Unix machine +- PHP +- PHPUnit yüklü +- Mysql ve Postgresql (isteğe bağlı) +- Selenium (isteğe bağlı) +- Firefox (isteğe bağlı) + +Birim Testleri +---------- + +### Sqlite ile sınama + +Sqlite testlerinde bellek içi bir veritabanı kullanılır, dosya sisteminde hiçbir şey yazılmaz. + +PHPUnit yapılandırma dosyası `tests/units.sqlite.xml`. +Kanboard dizininizden `phpunit -c tests/units.sqlite.xml` komutunu çalıştırın. + +Örnek: + +```bash +phpunit -c tests/units.sqlite.xml + +PHPUnit 5.0.0 by Sebastian Bergmann and contributors. + +............................................................... 63 / 649 ( 9%) +............................................................... 126 / 649 ( 19%) +............................................................... 189 / 649 ( 29%) +............................................................... 252 / 649 ( 38%) +............................................................... 315 / 649 ( 48%) +............................................................... 378 / 649 ( 58%) +............................................................... 441 / 649 ( 67%) +............................................................... 504 / 649 ( 77%) +............................................................... 567 / 649 ( 87%) +............................................................... 630 / 649 ( 97%) +................... 649 / 649 (100%) + +Time: 1.22 minutes, Memory: 151.25Mb + +OK (649 tests, 43595 assertions) +``` + +### Mysql ile Test + +Localhost'da MySQL veya MariaDb yüklü olmalıdır. + +Varsayılan olarak, bu kimlik bilgileri kullanılır: + +- Ana makine adı: **localhost** +- Kullanıcı adı: **kök** +- Şifre: yok +- Veritabanı: **kanboard_unit_test** + +Her yürütme için veritabanı silinir ve yeniden oluşturulur. + +PHPUnit yapılandırma dosyası `tests/units.postgres.xml` dir. +Kanboard dizininizden `phpunit -c `phpunit -c tests/units.postgres.xml` komutunu çalıştırın. + +### Postgresql ile test edin + +Postgresql'in localhost'a kurulmuş olması gerekir. + +Varsayılan olarak, bu kimlik bilgileri kullanılır: + +- Ana makine adı: **localhost** +- Kullanıcı adı: **postgres** +- Şifre: yok +- Veritabanı: **kanboard_unit_test** + +'Postgres` kullanıcısının veritabanlarını oluşturup açmasına izin verdiğinizden emin olun. +Veritabanı her yürütme için yeniden oluşturulur. + +PHPUnit yapılandırma dosyası `tests/units.postgres.xml` dir. +Kanboard dizininizden `phpunit -c tests/units.postgres.xml` komutunu çalıştırın. + +Entegrasyon Testleri +----------------- + +Entegrasyon testleri esas olarak API'yi test etmek için kullanılır. +Test paketleri, bir kapsayıcı içinde çalışan uygulamaya gerçek HTTP çağrıları yapıyor. + +### Gereksinimler + +- PHP +- Composer +- Unix işletim sistemi (Mac OS veya Linux) +- Docker +- Docker Compose + +### Uyum testlerini çalıştırmak + +Entegrasyon testleri Docker konteynerlerini kullanıyor. +Desteklenen her bir veritabanına karşı testleri çalıştırmak için kullanılabilecek 3 farklı ortam vardır. + +Her bir test paketini çalıştırmak için aşağıdaki komutları kullanabilirsiniz: + +```bash +# Run tests with Sqlite +make integration-test-sqlite + +# Run tests with Mysql +make integration-test-mysql + +# Run tests with Postgres +make integration-test-postgres +``` + +Kabul Deneyleri +---------------- + +Kabul testleri (bazen uçtan uca testler ve işlevsel testler olarak da bilinir), Selenium'u kullanan bir tarayıcıda UI'nın gerçek işlevselliğini test eder. + +Bu testleri çalıştırmak için [Selenium Standalone Server] (http://www.seleniumhq.org/download/) ve Firefox'un uyumlu bir sürümü yüklü olmalıdır. + +PHPUnit yapılandırma dosyası `tests / acceptance.xml` dir. +Selenyum ve Kanboard uygulaması çalışıyorken, Kanboard dizininizden `make test-browser` komutunu çalıştırın. Bu, test paketini başlatacak ve Firefox'un otomatik olarak açıldığını göreceksiniz ve kabul testlerinde belirtilen işlemleri uygulayacaksınız. + +Örnek: + +```bash +$ make test-browser +PHPUnit 4.8.26 by Sebastian Bergmann and contributors. + +.. + +Time: 5.59 seconds, Memory: 5.25MB + +OK (2 tests, 5 assertions) +``` + + +Travis-CI ile Sürekli Entegrasyon +------------------------------------- + +Her taahhüt ana depoda itildikten sonra, birim testleri PHP'nin 5 farklı versiyonu boyunca yürütülür: + +- PHP 7.0 +- PHP 5.6 +- PHP 5.5 +- PHP 5.4 +- PHP 5.3 + +Each version of PHP is tested against the 3 supported database: Sqlite, Mysql and Postgresql. + +The Travis config file `.travis.yml` is located on the root directory of Kanboard. + +PHP'nin her sürümü desteklenen 3 veritabanına karşı test edilmiştir: Sqlite, Mysql ve Postgresql. + +Travis yapılandırma dosyası `.travis.yml` , Kanboard'un kök dizininde bulunur. diff --git a/doc/tr_TR/time-tracking.markdown b/doc/tr_TR/time-tracking.markdown new file mode 100644 index 00000000..4994b510 --- /dev/null +++ b/doc/tr_TR/time-tracking.markdown @@ -0,0 +1,43 @@ +Zaman izleme +============= + +Zaman izleme bilgileri, görev seviyesinde veya alt görev seviyesinde tanımlanabilir. + +Görev zamanı izleme +------------------ + +![Task time tracking](screenshots/task-time-tracking.png) + +Görevlerin iki alanı vardır: + +- Tahmini zaman +- Harcanan zaman + +Bu değerler çalışma saatlerini temsil eder ve manuel olarak ayarlanması gerekir. + +Alt görev zaman izleme +--------------------- + +![Subtask time tracking](screenshots/subtask-time-tracking.png) + +Alt görevlerin "geçen süre" ve "zaman tahmini" alanları da vardır. + +Bu alanların değerini değiştirdiğinizde **görev zaman izleme değerleri otomatik olarak güncellenir ve tüm alt görev değerlerinin toplamı haline gelir**. + +Kanboard, her bir alt görev durumu değişikliği arasındaki zamanı ayrı bir tabloda kaydeder. + +- Alt görev durumunu **todo** dan **devam eden** ne olarak değiştirme başlangıç zamanını günlüğüne kaydeder +- Alt görev durumu **devam eden** dan **tamamlanmış** olarak değiştirildiğinde, bitiş saati günlüğe kaydedilir, ancak alt görevin ve görevin geöen süresi de güncellenir + +Tüm kayıtların dökümü görev görünümü sayfasında görünür: + +![Task timesheet](screenshots/task-timesheet.png) + +Her bir alt görev için zamanlayıcı, istediği zaman durdurulabilir / başlatılabilir: + +![Subtask timer](screenshots/subtask-timer.png) + +- Zamanlayıcı, alt görev durumuna bağlı değildir +- Zamanlayıcıyı her başlatışınızda, zaman takibi tablosunda yeni bir kayıt oluşturulur +- Saati durdurduğunuz her sefer, bitiş tarihi saat izleme tablosuna kaydedilir +- Hesaplanan geçen süre en yakın çeyreğe yuvarlanır (sadece Kanboard < 1.0.32 için) diff --git a/doc/tr_TR/transitions.markdown b/doc/tr_TR/transitions.markdown new file mode 100644 index 00000000..88ee0fdc --- /dev/null +++ b/doc/tr_TR/transitions.markdown @@ -0,0 +1,14 @@ +Görev Geçişleri +================ + +Bir görevin sütunlar arasındaki her hareketi veritabanına kaydedilir. + +![Task Transitions](screenshots/task-transitions.png) + +Görev görünümünden ulaşılabilir, şu bilgileri görebilirsiniz: + +- Eylem tarihi +- Kaynak kolonu +- Hedef kolon +- Yürütücü (görevi yerine getiren kullanıcılar) +- Başlangıç kolonunda geçen süre diff --git a/doc/tr_TR/translations.markdown b/doc/tr_TR/translations.markdown new file mode 100644 index 00000000..1038f489 --- /dev/null +++ b/doc/tr_TR/translations.markdown @@ -0,0 +1,68 @@ +Translations +============ + +Kanboard'u yeni bir dilde nasıl tercüme edebilirim? +-------------------------------------------- + +- Çeviriler, `app/Locale` dizininde saklanır +- Her dil için bir alt dizin var; örneğin Fransızca'da `fr_FR`, İtalyanca'da `it_IT`, Türkçe'de `tr_TR` vb. +- Bir çeviri, bir anahtar-değer çifti içeren bir dizi-Array döndüren bir PHP dosyasıdır +- Anahtar, İngilizce orijinal metindir ve değer ilgili dildeki tercümedir +- **Fransızca çeviriler her zaman günceldir** +- Daima son sürümü kullanın (branch master) + +### Yeni çeviri oluştur: + +1. Yeni bir dizin yapın: `app/Locale/xx_XX` örneğin Kanada Fransızcası için `app/Locale/fr_CA` +2. Çeviri için yeni bir dosya oluşturun: `app/Locale/xx_XX/translations.php` +3. Fransızca yerel ayarların içeriğini kullanın ve değerleri değiştirin +4. `app/Model/Language.php` dosyasını güncelleyin +5. Her şey yolunda giderse, Kanboard'u yerel olarak kurun. +6. [Github ile çekme isteği-pull-request with Github](https://help.github.com/articles/using-pull-requests/) gönderin + +Mevcut bir çeviri nasıl güncellenir? +-------------------------------------- + +1. Çeviri dosyasını açın `app/Locale/xx_XX/translations.php` +2. Kayıp çeviriler `//` ile yorumlanır ve değerler boş, sadece boşluk doldurun ve açıklamayı kaldırın. +3. Yerel kurulumunuz olan Kanboard'u kontrol edin ve bir [pull-request](https://help.github.com/articles/using-pull-requests/) gönderin. + +Uygulamaya yeni çevrilmiş metin nasıl eklenir? +-------------------------------------------------- + +Çeviriler, kaynak kodunda aşağıdaki işlevlerle birlikte görüntülenir: + +- `t()`: HTML escaping-çıkışı olan metinleri görüntüle +- `e()`: HTML escaping-çıkışı olmadan metinleri görüntüle + +Kaynak kodunda daima İngilizce sürümünü kullanın. + +Metin dizeleri, öğeleri değiştirmek için `sprintf()` işlevini kullanır: + +- `%s` bir karakter-kelime-string yerine kullanılır +- `%d` bir tamsayıyı-integer değiştirmek için kullanılır + +Tüm formatlar için [PHP Belgeleri-documentation](http://php.net/sprintf). + +Uygulamalardaki eksik çevirileri nasıl bulabilirim? +----------------------------------------------------- + +Bir terminalden aşağıdaki komutu çalıştırın: + +```bash +./cli locale:compare +``` + +Eksik ve kullanılmayan tüm çeviriler ekranda görüntülenir. +Bunu Fransız yerel ayarına koyun ve diğer yerel ayarları eşzamanlayın (aşağıya bakın). + +Çeviri dosyalarını nasıl senkronize ederim? +------------------------------------- + +Bir Unix shell-kabuğundan şu komutu çalıştırın: + +```bash +./cli locale:sync +``` + +Fransızca çevirisi diğer yerel ayarlarda referans olarak kullanılır. diff --git a/doc/tr_TR/ubuntu-installation.markdown b/doc/tr_TR/ubuntu-installation.markdown new file mode 100644 index 00000000..344ded4f --- /dev/null +++ b/doc/tr_TR/ubuntu-installation.markdown @@ -0,0 +1,65 @@ +Ubuntu üzerinde Kanboard Kurulumu +================================ + +Ubuntu Xenial 16.04 LTS +----------------------- + +Apache ve PHP'yi kurun: + +```bash +sudo apt-get update +sudo apt-get install -y apache2 libapache2-mod-php7.0 php7.0-cli php7.0-mbstring php7.0-sqlite3 \ + php7.0-opcache php7.0-json php7.0-mysql php7.0-pgsql php7.0-ldap php7.0-gd +``` + +Kanboard'u kurun: + +```bash +cd /var/www/html +sudo wget https://kanboard.net/kanboard-latest.zip +sudo unzip kanboard-latest.zip +sudo chown -R www-data:www-data kanboard/data +sudo rm kanboard-latest.zip +``` + +Ubuntu Trusty 14.04 LTS +----------------------- + +Apache ve PHP'yi kurun: + +```bash +sudo apt-get update +sudo apt-get install -y php5 php5-sqlite php5-mysql php5-pgsql php5-ldap php5-gd php5-json php5-mcrypt unzip +``` + +Kanboard'u kurun: + +```bash +cd /var/www/html +sudo wget https://kanboard.net/kanboard-latest.zip +sudo unzip kanboard-latest.zip +sudo chown -R www-data:www-data kanboard/data +sudo rm kanboard-latest.zip +``` + +Ubuntu Precise 12.04 LTS +------------------------ + +Apache ve PHP'yi kurun: + +```bash +sudo apt-get update +sudo apt-get install -y php5 php5-sqlite php5-mysql php5-pgsql php5-ldap php5-gd php5-json php5-mcrypt unzip +``` + +Kanboard'u kurun: + +```bash +cd /var/www +sudo wget https://kanboard.net/kanboard-latest.zip +sudo unzip kanboard-latest.zip +sudo chown -R www-data:www-data kanboard/data +sudo rm kanboard-latest.zip +``` + +Kanboard'un bazı özellikleri, [günlük arka plan işi-cronjob](cronjob.markdown) çalıştırmanızı gerektirir. diff --git a/doc/tr_TR/update.markdown b/doc/tr_TR/update.markdown new file mode 100644 index 00000000..842b1b5a --- /dev/null +++ b/doc/tr_TR/update.markdown @@ -0,0 +1,53 @@ +Kanboard'u yeni bir sürüme güncelleyin +================================= + +Çoğu zaman, Kanboard'un daha yeni bir sürümüne yükseltilmesi sorunsuzdur. +İşlem, yalnızca mevcut veri klasörünüzü yeni Kanboard klasörüne kopyalamak olarak özetlenebilir. +Kanboard otomatik olarak veritabanı geçişlerini-transferlerini sizin için yapar. + +Güncellemeden önce yapılması gereken önemli şeyler +-------------------------------------- + +- **Yeni sürüme geçmeden önce verilerinizin her zaman yedek alın** +- **Yedeklemenizin geçerli olup olmadığını kontrol edin!** +- Tekrar kontrol edin +- Değişikliklerin olup olmadığını kontrol etmek için daima [değişiklik geçmişini](https://github.com/kanboard/kanboard/blob/master/ChangeLog) okuyun +- Çalıştırıcıyı-worker kullanıyorsanız durdurun +- Web sunucusunu bakım moduna geçirin; böylece kullanıcılar güncelleme işlemi sırasında yazılımı kullanmazlar + +Arşivden (kararlı sürüm) +--------------------------------- + +1. Yeni arşivin sıkıştırmasını açın +2. `data` klasörünü yeni sıkıştırılması açılmış dizine kopyalayın +3. Özel ``config.php` dosyanız varsa kopyalayın. +4. Bazı eklentileri kurduysanız, en yeni sürümlerini kullanın +5. `data` dizininin web sunucusu kullanıcısı tarafından yazılabilir olduğundan emin olun +6. Test edin +7. Eski Kanboard dizininizi kaldırın + +Depodan-repository (geliştirme versiyonu) +----------------------------------------- + +1. `git pull` +2. `composer install --no-dev` +3. Giriş yapın ve her şeyin yolunda olduğunu kontrol edin + +Not: Bu yöntem, **mevcut geliştirme sürümünü** yükleyecektir, bu versiyonu kullanmanız kendi sorumluluğunuzdadır. + +SQL geçişlerini el-ile-manuel olarak çalıştırma +------------------------------- + +Varsayılan olarak, SQL geçişleri otomatik olarak yürütülür. Her istekte şema sürümü kontrol edilir. +Bu şekilde, Kanboard'u başka bir sürüme yükselttiğinizde, veritabanı şeması sizin için güncellenir. + +Belirli bir yapılandırmanız olması durumunda bu davranışı devre dışı bırakmak isteyebilirsiniz. +Örneğin, birden çok işlem göçleri-transferleri aynı anda uygulamayı denerseniz, her işlem bir işlem içinde yürütülseler de eşzamanlılık sorunlarınız olabilir. + +Bu özelliği devre dışı bırakmak için, [config file](config.markdown) 'da `DB_RUN_MIGRATIONS` parametresini `false` olarak ayarlayın. + +Kanboard'u yükseltmeniz gerektiğinde, şu komutu çalıştırın: + +```bash +./cli db:migrate +``` diff --git a/doc/tr_TR/usage-examples.markdown b/doc/tr_TR/usage-examples.markdown new file mode 100644 index 00000000..b2c95c8e --- /dev/null +++ b/doc/tr_TR/usage-examples.markdown @@ -0,0 +1,67 @@ +Kullanım Örnekleri +============== + +Panolarınızı ticari faaliyetlerinize göre özelleştirebilirsiniz: + +Yazılım geliştirme +-------------------- + +- Birikim +- Hazır +- Devam ediyor +- Onaylanacak +- Doğrulanmış +- Üretimde dağıtılmıştır + +Hata-Bug izleme +------------ + +- Bildirildi +- Onaylandı +- Devam ediyor +- Test edildi +- Onaylandı + +Satış +----- + +- Teslimatlar +- Toplantı +- Teklif +- Satın alma + +Yalın işletme yönetimi +------------------------ + +- Fikirler +- Geliştirme +- Tedbir +- Analiz +- Bitti + +İşe alım-İstihdam süreci +------------------ + +- İş başvuruları +- Adaylar +- Telefon ekranları +- Görüşmeler +- Çalışanlar + +Online mağazalar +------------ + +- Siparişler +- Paketleme +- Gönderilmeye hazır +- Kargoya verildi-Sevk edildi + +Fabrikada +----------- + +- Müşteri Siparişleri +- Montaj +- Testler +- Paketleme +- Kargo hazırlık +- Kargoya verildi-Sevk edildi diff --git a/doc/tr_TR/user-management.markdown b/doc/tr_TR/user-management.markdown new file mode 100644 index 00000000..8d625ed3 --- /dev/null +++ b/doc/tr_TR/user-management.markdown @@ -0,0 +1,36 @@ +Kullanıcı yönetimi +=============== + +Yeni kullanıcı ekle +-------------- + +Yeni bir kullanıcı eklemek için bir yönetici olmalısınız. + +1. Sağ üst köşedeki açılır menüden **Kullanıcı Yönetimi** seçeneğine gidin +2. Üst kısımda bir bağlantı var **Yeni yerel kullanıcı** veya **Yeni uzak kullanıcı** +3. Formu doldurun ve kaydedin. + +![New user](screenshots/new-user.png) + +Bir **yerel kullanıcı** oluşturduğunuzda, en azından bu değerleri belirtmeniz gerekir: + +- **kullanıcı adı**: Bu, kullanıcının benzersiz tanımlayıcısıdır (giriş) +- **şifre**: Kullanıcınızın şifresi en az 6 karakter olmalıdır + +**uzak kullanıcı** için yalnızca kullanıcı adı zorunludur. + +Kullanıcıları düzenle +---------- + +**kullanıcılar** menüsüne gittiğinizde, kullanıcıların listesine sahipsiniz. Bir kullanıcıyı değiştirmek için **bağlantıyı-link düzenle** ye tıklayınız. + +- Normal bir kullanıcısanız, yalnızca kendi profilinizi değiştirebilirsiniz +- Herhangi bir kullanıcıyı düzenleyebilmek için bir yönetici olmak zorundasınız. + +Kullanıcıları kaldır +------------ + +**kullanıcılar** menüsünden **kaldır** bağlantısını tıklayın. Bu bağlantı, yalnızca siz yönetici iseniz görünür. + +Belirli bir kullanıcıyı kaldırırsanız, **bu kişiye atanan görevler işlemden sonra atanmamış olacaktır**. + diff --git a/doc/tr_TR/user-mentions.markdown b/doc/tr_TR/user-mentions.markdown new file mode 100644 index 00000000..afca3df7 --- /dev/null +++ b/doc/tr_TR/user-mentions.markdown @@ -0,0 +1,17 @@ +Kullanıcı Mentionları +============= + +Kanboard, birinden bahsedildiğinde bildirim gönderme olanağı sunar. + +Bir yorumda veya bir görevde birinin dikkatini çekmeniz gerekiyorsa, @ simgesini ve ardından kullanıcı adını kullanın. +Kanboard otomatik olarak bir kullanıcı listesi önerecektir: + +![User Mention](screenshots/user-mentions.png) + +- Şu anda yalnızca görev açıklaması ve açıklama metin alanı bu özelliği etkinleştirmiştir. +- Kullanıcı, yalnızca görevler ve yorumlar oluşturma sırasında bahsediyor. +- Bildirilmek üzere bahsedilen kullanıcıların projenin bir üyesi olması gerekiyor. +- Birisi belirtildiğinde, bu kullanıcı bir bildirim alacaktır. +- @ kullanıcı adı yazısı genel kullanıcı profiliyle bağlantılıdır. + +Bildirim, kullanıcı ayarlarına göre gönderilir; doğru eklentileri yüklediyseniz, Slack / Hipchat / Jabber'de bir e-posta, web bildirimi veya bir mesaj olabilir. diff --git a/doc/tr_TR/user-types.markdown b/doc/tr_TR/user-types.markdown new file mode 100644 index 00000000..6df725bf --- /dev/null +++ b/doc/tr_TR/user-types.markdown @@ -0,0 +1,14 @@ +Kullanıcı Tipleri +========== + +Kanboard'da iki tür kullanıcı vardır: + +| Tip | Açıklama | +|-----------------|-----------------------------------------------------------------------------------------| +| Yerel Kullanıcı | Kullanıcı şifresini Kanboard'un veritabanında saklar | +| Uzak Kullanıcı | Kullanıcı kimlik bilgileri başka bir sistem tarafından yönetilir (Örnek: LDAP sunucusu) | + +Uzak kullanıcılara örnekler: + +- LDAP kullanıcısı +- Ters proxy ile kimlik doğrulamasına tabi tutulmuş kullanıcılar diff --git a/doc/tr_TR/vagrant.markdown b/doc/tr_TR/vagrant.markdown new file mode 100644 index 00000000..b8f7389a --- /dev/null +++ b/doc/tr_TR/vagrant.markdown @@ -0,0 +1,10 @@ +Vagrant ile Kanboard çalıştırın +========================= + +Kanboard with Vagrant'ı çok kolay deneyebilirsiniz: + +- Git havuzundan projeyi klonlamak +- `vagrant up` yapın +- Uygulamaya, `http://localhost:8001/` URL'sini kullanarak erişebilirsiniz. + +Sanal makine PHP 5.5 ile Ubuntu 14.04 üzerine kurulmuştur. diff --git a/doc/tr_TR/webhooks.markdown b/doc/tr_TR/webhooks.markdown new file mode 100644 index 00000000..571b44b4 --- /dev/null +++ b/doc/tr_TR/webhooks.markdown @@ -0,0 +1,487 @@ +Web kancası-Webhooks +======== + +Web kancası-Webhooks harici uygulamalarla işlemleri gerçekleştirmek için kullanışlıdır. + +- Webhook'lar, basit bir URL'yi çağırarak bir görev oluşturmak için kullanılabilir (Bunu da API ile yapabilirsiniz) +- Kanboard'da bir olay meydana geldiğinde (görev yaratma, açıklama güncellendi, vb.) Harici bir URL otomatik olarak çağrılabilir + +Web kancası-Webhooks alıcı nasıl yazılır? +--------------------------------- + +Kanboard'un tüm dahili olayları harici bir URL'ye gönderilebilir. + +- Web kancası-Webhooks URL'si **Ayarlar> Web kancası-Webhooks> Web kancası-Webhooks URL** 'de tanımlanmalıdır. +- Bir olay tetiklendiğinde Kanboard önceden tanımlı URL'yi otomatik olarak çağırır +- Veriler JSON formatında kodlanır ve bir POST HTTP isteğiyle gönderilir +- Web kancası-Webhooks anahtarı-token da bir sorgu dizesi parametresi olarak gönderilir, böylece isteğin gerçekten Kanboard'dan geldiğini kontrol edebilirsiniz. +- **Özel URL'niz 1 saniyeden kısa bir sürede yanıt almalıdır**, bu istekler senkron (PHP sınırlaması) olup komut dosyası çok yavaşsa kullanıcı arayüzünü yavaşlatabilir! + +### Desteklenen etkinlikler listesi + +- comment.create +- comment.update +- comment.delete +- file.create +- task.move.project +- task.move.column +- task.move.position +- task.move.swimlane +- task.update +- task.create +- task.close +- task.open +- task.assignee_change +- subtask.update +- subtask.create +- subtask.delete +- task_internal_link.create_update +- task_internal_link.delete + +### HTTP isteği örneği + +``` +POST https://your_webhook_url/?token=WEBHOOK_TOKEN_HERE +User-Agent: Kanboard Webhook +Content-Type: application/json +Connection: close + +{ + "event_name": "task.move.column", + "event_data": { + "task_id": "4", + "task": { + "id": "4", + "reference": "", + "title": "My task", + "description": "", + "date_creation": "1469314356", + "date_completed": null, + "date_modification": "1469315422", + "date_due": "1469491200", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "green", + "project_id": "1", + "column_id": "1", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "0", + "category_id": "0", + "priority": "0", + "swimlane_id": "0", + "date_moved": "1469315422", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Backlog", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + }, + "changes": { + "src_column_id": "2", + "dst_column_id": "1", + "date_moved": "1469315398" + }, + "project_id": "1", + "position": 1, + "column_id": "1", + "swimlane_id": "0", + "src_column_id": "2", + "dst_column_id": "1", + "date_moved": "1469315398", + "recurrence_status": "0", + "recurrence_trigger": "0" + } +} +``` + +Tüm etkinlik yükleri aşağıdaki biçimde: + +```json +{ + "event_name": "model.event_name", + "event_data": { + "key1": "value1", + "key2": "value2", + ... + } +} +``` + +`event_data` değerleri olaylar arasında normalize edilmek zorunda değildir. + +### Etkinlik yükü örnekleri + +Görev yaratma: + +```json +{ + "event_name": "task.create", + "event_data": { + "task_id": 5, + "task": { + "id": "5", + "reference": "", + "title": "My new task", + "description": "", + "date_creation": "1469315481", + "date_completed": null, + "date_modification": "1469315481", + "date_due": "0", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "orange", + "project_id": "1", + "column_id": "2", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "3", + "category_id": "0", + "priority": "2", + "swimlane_id": "0", + "date_moved": "1469315481", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Ready", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + } + } +} +``` + +Görev değişikliği: + +```json +{ + "event_name": "task.update", + "event_data": { + "task_id": "5", + "task": { + "id": "5", + "reference": "", + "title": "My new task", + "description": "New description", + "date_creation": "1469315481", + "date_completed": null, + "date_modification": "1469315531", + "date_due": "1469836800", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "purple", + "project_id": "1", + "column_id": "2", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "3", + "category_id": "0", + "priority": "2", + "swimlane_id": "0", + "date_moved": "1469315481", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Ready", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + }, + "changes": { + "description": "New description", + "color_id": "purple", + "date_due": 1469836800 + } + } +} +``` + +Görev güncelleme etkinlikleri, güncellenmiş değerleri içeren `changes` adı verilen bir alana sahiptir. + +Yorum yaratma: + +```json +{ + "event_name": "comment.create", + "event_data": { + "comment": { + "id": "1", + "task_id": "5", + "user_id": "1", + "date_creation": "1469315727", + "comment": "My comment.", + "reference": null, + "username": "admin", + "name": null, + "email": null, + "avatar_path": null + }, + "task": { + "id": "5", + "reference": "", + "title": "My new task", + "description": "New description", + "date_creation": "1469315481", + "date_completed": null, + "date_modification": "1469315531", + "date_due": "1469836800", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "purple", + "project_id": "1", + "column_id": "2", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "3", + "category_id": "0", + "priority": "2", + "swimlane_id": "0", + "date_moved": "1469315481", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Ready", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + } + } +} +``` + +Alt görev yaratma: + +```json +{ + "event_name": "subtask.create", + "event_data": { + "subtask": { + "id": "1", + "title": "My subtask", + "status": "0", + "time_estimated": "0", + "time_spent": "0", + "task_id": "5", + "user_id": "1", + "position": "1", + "username": "admin", + "name": null, + "timer_start_date": 0, + "status_name": "Todo", + "is_timer_started": false + }, + "task": { + "id": "5", + "reference": "", + "title": "My new task", + "description": "New description", + "date_creation": "1469315481", + "date_completed": null, + "date_modification": "1469315531", + "date_due": "1469836800", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "purple", + "project_id": "1", + "column_id": "2", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "3", + "category_id": "0", + "priority": "2", + "swimlane_id": "0", + "date_moved": "1469315481", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Ready", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + } + } +} +``` + +Dosya yükleme: + +```json +{ + "event_name": "task.file.create", + "event_data": { + "file": { + "id": "1", + "name": "kanboard-latest.zip", + "path": "tasks/5/6f32893e467e76671965b1ec58c06a2440823752", + "is_image": "0", + "task_id": "5", + "date": "1469315613", + "user_id": "1", + "size": "4907308" + }, + "task": { + "id": "5", + "reference": "", + "title": "My new task", + "description": "New description", + "date_creation": "1469315481", + "date_completed": null, + "date_modification": "1469315531", + "date_due": "1469836800", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "purple", + "project_id": "1", + "column_id": "2", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "3", + "category_id": "0", + "priority": "2", + "swimlane_id": "0", + "date_moved": "1469315481", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Ready", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + } + } +} +``` + +Görev bağlantısı oluşturulması: + +```json +{ + "event_name": "task_internal_link.create_update", + "event_data": { + "task_link": { + "id": "2", + "opposite_task_id": "5", + "task_id": "4", + "link_id": "3", + "label": "is blocked by", + "opposite_link_id": "2" + }, + "task": { + "id": "4", + "reference": "", + "title": "My task", + "description": "", + "date_creation": "1469314356", + "date_completed": null, + "date_modification": "1469315422", + "date_due": "1469491200", + "date_started": "0", + "time_estimated": "0", + "time_spent": "0", + "color_id": "green", + "project_id": "1", + "column_id": "1", + "owner_id": "1", + "creator_id": "1", + "position": "1", + "is_active": "1", + "score": "0", + "category_id": "0", + "priority": "0", + "swimlane_id": "0", + "date_moved": "1469315422", + "recurrence_status": "0", + "recurrence_trigger": "0", + "recurrence_factor": "0", + "recurrence_timeframe": "0", + "recurrence_basedate": "0", + "recurrence_parent": null, + "recurrence_child": null, + "category_name": null, + "swimlane_name": null, + "project_name": "Demo Project", + "default_swimlane": "Default swimlane", + "column_title": "Backlog", + "assignee_username": "admin", + "assignee_name": null, + "creator_username": "admin", + "creator_name": null + } + } +} +``` diff --git a/doc/tr_TR/windows-apache-installation.markdown b/doc/tr_TR/windows-apache-installation.markdown new file mode 100644 index 00000000..d45c1117 --- /dev/null +++ b/doc/tr_TR/windows-apache-installation.markdown @@ -0,0 +1,130 @@ +Windows Server ve Apache üzerinde Kurulum +========================================= + +Bu kılavuz, bir Windows Server'da Apache ve PHP ile adım adım Kanboard kurmanıza yardımcı olacaktır. + +Not: 64 bitlik bir platformunuz varsa "x64" seçin, aksi halde 32-bit sistemler için "x86" seçeneğini seçin. + +Visual C ++ Yeniden Dağıtılabilir-Redistributable Kurulum +--------------------------------------- + +PHP ve Apache Visual Studio ile derlenmiştir, bu kütüphaneyi henüz kurmadıysanız yüklemeniz gerekir. + +1. Kitaplığı [resmi Microsoft web sitesinden](http://www.microsoft.com/en-us/download/details.aspx?id=30679) indirin. +2. Yükleyicilerden `vcredist_x64.exe` veya `vcredist_x86.exe` yi platformunuza göre çalıştırın + +Apache kurulumu +--------------------------------------- + +1. Apache ikili-binary dosyasını [Apache Lounge](http://www.apachelounge.com/download/) adresinden indirin. +2. Apache24 ü `C:\Apache24` klasörününe sıkıştırılmış dosyaları açın. + +### Sunucu adını tanımla + +`C:\Apache24\conf\httpd.conf` dosyasını açın ve yönergeyi ekleyin: + +``` +ServerName localhost +``` + +### Apache hizmetini-service kur + +Bir komut istemi açın (`cmd.exe`) ve `C:\Apache24\bin` dizinine gidin: + +```bash +cd C:\Apache24\bin + +# Windows hizmetini-service yükle +httpd.exe -k install +``` + +### ApacheMonitor'i kur + +- `C:\Apache24\bin\ApacheMonitor.exe` dosyasına çift tıklayın veya başlangıç klasörüne koyun. +- Simgesine sağ tıklayın ve Apache'yi başlatın. + +### Apache kurulumunu kontrol edin + +http://localhost/ adresine giderseniz, "It works! / Çalışıyor!" metniyle birlikte boş bir sayfa görmeniz gerekir. + +PHP kurulumu +---------------- + +1. PHP'nin son kararlı sürümünü [resmi PHP web sitesinden](http://windows.php.net/download/) indirin, **İş Parçası Güvenli-Thread Safe** sürümünü seçin ve Apache ile aynı yapı türünü kullanın: x86 or x64 +2. `C:\php` klasörüne sıkıştırılmış dosyaları açın +3. PHP klasörüne gidin ve `php.ini-production` dosyasını `php.ini` olarak yeniden adlandırın + +`php.ini` yi düzenleyin: + +Uzantı dizininindeki yorum işaretlerini-Uncomment kaldırın: + +```ini +extension_dir = "C:/php/ext" +``` + +Şu PHP modüllerininden yorum işaretlerini-Uncomment kaldırın: + +```ini +extension=php_gd2.dll +extension=php_ldap.dll +extension=php_mbstring.dll +extension=php_openssl.dll +extension=php_pdo_sqlite.dll +``` + +Saat dilimini ayarlayın: + +```ini +date.timezone = Europe/Istanbul +``` + +Desteklenen saat dilimlerinin listesi [PHP belgeleri](http://php.net/manual/en/timezones.america.php) adresinde bulunabilir. + +Apache için PHP modülünü yükleyin: + +Şu yapılandırmayı `C:\Apache24\conf\httpd.conf` dosyasına ekleyin: + +``` +LoadModule php5_module "c:/php/php5apache2_4.dll" +AddHandler application/x-httpd-php .php + +# configure the path to php.ini +PHPIniDir "C:/php" + +# change this directive +DirectoryIndex index.php index.html +``` + +Apache'yi yeniden başlatın. + +PHP kurulumunuzu test edin: + +`C:\Apache24\htdocs` klasöründe `phpinfo.php` adlı bir dosya oluşturun: + +```php +<?php + +phpinfo(); + +?> +``` + +http://localhost/phpinfo.php adresine gidin ve PHP kurulumunuzla ilgili tüm bilgileri görmelisiniz. + +Kanboard kurulumu +--------------------- + +- Zipli dosyayı indirin +- Sıkıştırılmış arşiv dosyasının `C:\Apache24\htdocs\kanboard` klasöründe sıkıştırmasını açın +- Kanboard'u kullanmak için http://localhost/kanboard/ adresini web tarayıcınızı açın +- Varsayılan kimlik bilgileri **kullanıcı adı:admin/şifre:admin** + +Test edilmiş yapılandırma +-------------------- + +- Windows 2008 R2 / Apache 2.4.12 / PHP 5.6.8 + +Not +----- + +- Kanboard'un bazı özellikleri, [günlük arka plan işi-cronjob](cronjob.markdown) çalıştırmanızı gerektirir. diff --git a/doc/tr_TR/windows-iis-installation.markdown b/doc/tr_TR/windows-iis-installation.markdown new file mode 100644 index 00000000..9d8d0d67 --- /dev/null +++ b/doc/tr_TR/windows-iis-installation.markdown @@ -0,0 +1,67 @@ +Windows 2008/2012 üzerinde IIS ile Yükleme +========================================== + +Bu kılavuz, Kanboard'un IIS ve PHP ile Windows Server'da adım adım kurulmasına yardımcı olacaktır. + +PHP kurulumu +---------------- + +- IIS'yi sunucunuza yükleyin (yeni bir rol ekleyin ve CGI/FastCGI'yi etkinleştirmeyi unutmayın) +- Resmi belgeleri izleyerek PHP'yi kurun: + - [Microsoft IIS 5.1 ve IIS 6.0](http://php.net/manual/tr/install.windows.iis6.php) + - [Microsoft IIS 7.0 ve sonrası](http://php.net/manual/en/install.windows.iis7.php) + - [PHP for Windows burada mevcuttur](http://windows.php.net/download/) + + +### PHP.ini + +En azından bu uzantıları `php.ini` dosyanızda bulmanız gerekir: + +```ini +extension=php_gd2.dll +extension=php_ldap.dll +extension=php_mbstring.dll +extension=php_openssl.dll +extension=php_pdo_sqlite.dll +``` + +Gerekli PHP uzantılarının tam listesi [gereksinimler sayfasında](requirements.markdown) dır. + +Saat dilimini ayarlamayı unutmayın: + +```ini +date.timezone = Europe/Istanbul +``` + +Desteklenen saat dilimleri listesi [PHP belgelerinde](http://php.net/manual/tr/timezones.europe.php) bulunabilir. + +Notlar: + +- PHP <5.4 kullanıyorsanız, php.ini dosyanızdaki kısa etiketleri etkinleştirmeniz gerekir +- Yukarıda belirtilen gerekli php uzantılarını etkinleştirmeyi unutmayın +- "MSVCP110.dll kütüphanesi eksik / the library MSVCP110.dll is missing" konusunda bir hata alırsanız, Microsoft web sitesinden Visual Studio için Visual C ++ Yeniden Dağıtılabilir (Visual C++ Redistributable for Visual Studio) dosyasını indirmeniz gerekebilir. + +IIS Modülleri +----------- + +Kanboard arşivi(sıkıştırılmış dosya) [URL yeniden yazma](nice-urls.markdown) özelliğini etkinleştirmek için bir `web.config` dosyası içerir. +Bu yapılandırma [IIS için yeniden yazma modülü-Rewrite module for IIS](http://www.iis.net/learn/extensions/url-rewrite-module/using-the-url-rewrite-module) gerektirir. + +Yeniden yazma modülünüz yoksa, IIS'den bir dahili sunucu hatası (500) alırsınız. +Kanboard'da okunabilir-hoş URL'lerle sahip olmak istemiyorsanız `web.config` dosyasını kaldırabilirsiniz. + +Kanboard kurulumu +--------------------- + +- Zip-arşivi(sıkıştırılmış dosya) dosyasını indirin +- Arşivi(sıkıştırılmış dosya) `C:\inetpub\wwwroot\kanboard` klasörüne sıkıştırılmış dosyaları açınız +- `veri 'dizininin IIS kullanıcısı tarafından yazılabilir olduğundan emin olun +- Kanboard'u kullanmak için web tarayıcınızı açın http: // localhost / kanboard / +- Varsayılan kimlik bilgileri **admin/admin** +- [URL yeniden yazma yapılandırması](nice-urls.markdown) + +Notlar +----- + +- Kanboard'un bazı özellikleri, [günlük arka plan işi-cronjob](cronjob.markdown) çalıştırmanızı gerektirir. + diff --git a/doc/tr_TR/worker.markdown b/doc/tr_TR/worker.markdown new file mode 100644 index 00000000..808884af --- /dev/null +++ b/doc/tr_TR/worker.markdown @@ -0,0 +1,37 @@ +Arka Plan Çalışanları-Workers +================== + +**Bu özellik deneyseldir**. + +Yapılandırmanıza bağlı olarak, bazı özellikler HTTP isteği ile aynı işlemde yürütülürse uygulamayı yavaşlatabilir. +Kanboard, bu görevleri gelen olayları dinleyen bir arka plan işçisine devredebilir. + +Kanboard'u yavaşlatabilecek özellik örneği: + +- Harici bir SMTP sunucusu üzerinden e-posta göndermek birkaç saniye sürebilir +- Dış hizmetleri bildirim gönderme + +Bu özellik isteğe bağlıdır ve sunucunuza bir sıra arka plan programının yüklenmesini gerektirir. + +### Beanstalk + +[Beanstalk](http://kr.github.io/beanstalkd/) basit, hızlı bir iş kuyruğu. + +- Beanstalk'u kurmak için, Linux dağıtımınızın paket yöneticisini kullanabilirsiniz +- [Beanstalk için Kanboard eklentisi](https://kanboard.net/plugin/beanstalk) +- Çalışanı Kanboard komut satırı aracıyla çalıştırın: `./cli worker` + +### RabbitMQ + +[RabbitMQ](https://www.rabbitmq.com/), yüksek kullanılabilirlikli altyapı için daha uygun olan sağlam bir mesajlaşma sistemidir. + +- Kurulum ve yapılandırma için RabbitMQ'nun resmi belgelerini takip edin +- [RabboardMQ için Kanboard eklentisi](https://kanboard.net/plugin/rabbitmq) +- Çalışanı Kanboard komut satırı aracıyla çalıştırın: `./cli worker` + +### Notlar + +- Kanboard çalışana bir süreç denetçisi (systemd, upstart veya supervisord) ile başlanmalıdır. +- Dosyaları yerel dosya sisteminde saklıyorsanız veya Sqlite'i kullanıyorsanız işlemin veri klasörüne erişmesi gerekir + + |