summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authortorinky <k_tori@me.com>2017-10-15 18:12:13 +0900
committertorinky <k_tori@me.com>2017-10-15 18:12:13 +0900
commitc6f4c51f1f51f28df9f5c4fc310d0faaa5cb4aa4 (patch)
tree07fcfb86ac9acfc3f5f1e79fe41e14c320e9773a /app
parent29aecf20d34aaed69cb9717a28e26a5d8f2ae79a (diff)
parentfcc0ea6feefa888f87ad0ddaaf225a0e7804b3bc (diff)
Merge remote-tracking branch 'origin/master'
# Conflicts: # app/Locale/ja_JP/translations.php
Diffstat (limited to 'app')
-rw-r--r--app/Core/ExternalTask/ExternalTaskManager.php10
-rw-r--r--app/Core/ExternalTask/ExternalTaskProviderInterface.php16
-rw-r--r--app/Helper/TaskHelper.php69
-rw-r--r--app/Locale/bs_BA/translations.php1
-rw-r--r--app/Locale/ca_ES/translations.php1
-rw-r--r--app/Locale/cs_CZ/translations.php1
-rw-r--r--app/Locale/da_DK/translations.php1
-rw-r--r--app/Locale/de_DE/translations.php1
-rw-r--r--app/Locale/el_GR/translations.php1
-rw-r--r--app/Locale/es_ES/translations.php1
-rw-r--r--app/Locale/fi_FI/translations.php1
-rw-r--r--app/Locale/fr_FR/translations.php447
-rw-r--r--app/Locale/hr_HR/translations.php1
-rw-r--r--app/Locale/hu_HU/translations.php1
-rw-r--r--app/Locale/id_ID/translations.php1
-rw-r--r--app/Locale/it_IT/translations.php1
-rw-r--r--app/Locale/ja_JP/translations.php42
-rw-r--r--app/Locale/ko_KR/translations.php1
-rw-r--r--app/Locale/my_MY/translations.php1
-rw-r--r--app/Locale/nb_NO/translations.php1
-rw-r--r--app/Locale/nl_NL/translations.php1
-rw-r--r--app/Locale/pl_PL/translations.php1
-rw-r--r--app/Locale/pt_BR/translations.php1
-rw-r--r--app/Locale/pt_PT/translations.php21
-rw-r--r--app/Locale/ru_RU/translations.php1
-rw-r--r--app/Locale/sr_Latn_RS/translations.php1
-rw-r--r--app/Locale/sv_SE/translations.php1
-rw-r--r--app/Locale/th_TH/translations.php1
-rw-r--r--app/Locale/tr_TR/translations.php327
-rw-r--r--app/Locale/vi_VN/translations.php1
-rw-r--r--app/Locale/zh_CN/translations.php1
-rw-r--r--app/Template/board/table_column.php4
-rw-r--r--app/Template/board/task_footer.php2
-rw-r--r--app/Template/board/task_private.php2
-rw-r--r--app/Template/task/details.php2
-rw-r--r--app/Template/task_list/task_icons.php2
36 files changed, 566 insertions, 402 deletions
diff --git a/app/Core/ExternalTask/ExternalTaskManager.php b/app/Core/ExternalTask/ExternalTaskManager.php
index 102ec459..87a46b71 100644
--- a/app/Core/ExternalTask/ExternalTaskManager.php
+++ b/app/Core/ExternalTask/ExternalTaskManager.php
@@ -55,4 +55,14 @@ class ExternalTaskManager
return array();
}
+
+ /**
+ * Get all providers
+ *
+ * @return ExternalTaskProviderInterface[]
+ */
+ public function getProviders()
+ {
+ return $this->providers;
+ }
}
diff --git a/app/Core/ExternalTask/ExternalTaskProviderInterface.php b/app/Core/ExternalTask/ExternalTaskProviderInterface.php
index f67f7552..5678efb8 100644
--- a/app/Core/ExternalTask/ExternalTaskProviderInterface.php
+++ b/app/Core/ExternalTask/ExternalTaskProviderInterface.php
@@ -19,6 +19,22 @@ interface ExternalTaskProviderInterface
public function getName();
/**
+ * Get provider icon
+ *
+ * @access public
+ * @return string
+ */
+ public function getIcon();
+
+ /**
+ * Get label for adding a new task
+ *
+ * @access public
+ * @return string
+ */
+ public function getMenuAddLabel();
+
+ /**
* Retrieve task from external system or cache
*
* @access public
diff --git a/app/Helper/TaskHelper.php b/app/Helper/TaskHelper.php
index f3084759..065ece10 100644
--- a/app/Helper/TaskHelper.php
+++ b/app/Helper/TaskHelper.php
@@ -220,6 +220,21 @@ class TaskHelper extends Base
return $html;
}
+ public function renderReference(array $task)
+ {
+ if (! empty($task['reference'])) {
+ $reference = $this->helper->text->e($task['reference']);
+
+ if (filter_var($task['reference'], FILTER_VALIDATE_URL) !== false) {
+ return sprintf('<a href="%s" target=_blank">%s</a>', $reference, $reference);
+ }
+
+ return $reference;
+ }
+
+ return '';
+ }
+
public function getProgress($task)
{
if (! isset($this->columns[$task['project_id']])) {
@@ -256,4 +271,58 @@ class TaskHelper extends Base
$html .= '</ul></div></small>';
return $html;
}
+
+ public function getNewBoardTaskButton(array $swimlane, array $column)
+ {
+ $html = '<div class="board-add-icon">';
+ $providers = $this->externalTaskManager->getProviders();
+
+ if (empty($providers)) {
+ $html .= $this->helper->modal->largeIcon(
+ 'plus',
+ t('Add a new task'),
+ 'TaskCreationController',
+ 'show', array(
+ 'project_id' => $column['project_id'],
+ 'column_id' => $column['id'],
+ 'swimlane_id' => $swimlane['id'],
+ )
+ );
+ } else {
+ $html .= '<div class="dropdown">';
+ $html .= '<a href="#" class="dropdown-menu"><i class="fa fa-plus" aria-hidden="true"></i></a><ul>';
+
+ $link = $this->helper->modal->large(
+ 'plus',
+ t('Add a new Kanboard task'),
+ 'TaskCreationController',
+ 'show', array(
+ 'project_id' => $column['project_id'],
+ 'column_id' => $column['id'],
+ 'swimlane_id' => $swimlane['id'],
+ )
+ );
+
+ $html .= '<li>'.$link.'</li>';
+
+ foreach ($providers as $provider) {
+ $link = $this->helper->url->link(
+ $provider->getMenuAddLabel(),
+ 'ExternalTaskCreationController',
+ 'step1',
+ array('project_id' => $column['project_id'], 'swimlane_id' => $swimlane['id'], 'column_id' => $column['id'], 'provider_name' => $provider->getName()),
+ false,
+ 'js-modal-large'
+ );
+
+ $html .= '<li>'.$provider->getIcon().' '.$link.'</li>';
+ }
+
+ $html .= '</ul></div>';
+ }
+
+ $html .= '</div>';
+
+ return $html;
+ }
}
diff --git a/app/Locale/bs_BA/translations.php b/app/Locale/bs_BA/translations.php
index bddfafe7..5d9757fb 100644
--- a/app/Locale/bs_BA/translations.php
+++ b/app/Locale/bs_BA/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/ca_ES/translations.php b/app/Locale/ca_ES/translations.php
index 7e8100dc..5c39c926 100644
--- a/app/Locale/ca_ES/translations.php
+++ b/app/Locale/ca_ES/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/cs_CZ/translations.php b/app/Locale/cs_CZ/translations.php
index 922cec5e..178ce0e2 100644
--- a/app/Locale/cs_CZ/translations.php
+++ b/app/Locale/cs_CZ/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/da_DK/translations.php b/app/Locale/da_DK/translations.php
index d5126359..277efcee 100644
--- a/app/Locale/da_DK/translations.php
+++ b/app/Locale/da_DK/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/de_DE/translations.php b/app/Locale/de_DE/translations.php
index 51f544e8..496a11f2 100644
--- a/app/Locale/de_DE/translations.php
+++ b/app/Locale/de_DE/translations.php
@@ -1340,4 +1340,5 @@ return array(
'Write one subject by line.' => 'Schreibe ein Betreff pro Zeile.',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/el_GR/translations.php b/app/Locale/el_GR/translations.php
index 926cfd28..2ce91756 100644
--- a/app/Locale/el_GR/translations.php
+++ b/app/Locale/el_GR/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/es_ES/translations.php b/app/Locale/es_ES/translations.php
index b05ad4da..65424fd2 100644
--- a/app/Locale/es_ES/translations.php
+++ b/app/Locale/es_ES/translations.php
@@ -1340,4 +1340,5 @@ return array(
'Write one subject by line.' => 'Escriba un asunto por línea.',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/fi_FI/translations.php b/app/Locale/fi_FI/translations.php
index 3c65ab7e..98f5e216 100644
--- a/app/Locale/fi_FI/translations.php
+++ b/app/Locale/fi_FI/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/fr_FR/translations.php b/app/Locale/fr_FR/translations.php
index 780c0927..11f7773a 100644
--- a/app/Locale/fr_FR/translations.php
+++ b/app/Locale/fr_FR/translations.php
@@ -28,11 +28,11 @@ return array(
'Amber' => 'Ambre',
'Save' => 'Enregistrer',
'Login' => 'Connexion',
- 'Official website:' => 'Site web officiel :',
+ 'Official website:' => 'Site web officiel :',
'Unassigned' => 'Non assigné',
'View this task' => 'Voir cette tâche',
'Remove user' => 'Supprimer un utilisateur',
- 'Do you really want to remove this user: "%s"?' => 'Voulez-vous vraiment supprimer cet utilisateur : « %s » ?',
+ 'Do you really want to remove this user: "%s"?' => 'Voulez-vous vraiment supprimer cet utilisateur : « %s » ?',
'All users' => 'Tous les utilisateurs',
'Username' => 'Identifiant',
'Password' => 'Mot de passe',
@@ -59,25 +59,25 @@ return array(
'Disable' => 'Désactiver',
'Enable' => 'Activer',
'New project' => 'Nouveau projet',
- 'Do you really want to remove this project: "%s"?' => 'Voulez-vous vraiment supprimer ce projet : « %s » ?',
+ 'Do you really want to remove this project: "%s"?' => 'Voulez-vous vraiment supprimer ce projet : « %s » ?',
'Remove project' => 'Supprimer le projet',
- 'Edit the board for "%s"' => 'Modifier le tableau pour « %s »',
+ 'Edit the board for "%s"' => 'Modifier le tableau pour « %s »',
'Add a new column' => 'Ajouter une nouvelle colonne',
'Title' => 'Titre',
'Assigned to %s' => 'Assigné à %s',
'Remove a column' => 'Supprimer une colonne',
'Unable to remove this column.' => 'Impossible de supprimer cette colonne.',
- 'Do you really want to remove this column: "%s"?' => 'Voulez vraiment supprimer cette colonne : « %s » ?',
+ 'Do you really want to remove this column: "%s"?' => 'Voulez vraiment supprimer cette colonne : « %s » ?',
'Settings' => 'Préférences',
'Application settings' => 'Paramètres de l\'application',
'Language' => 'Langue',
- 'Webhook token:' => 'Jeton de securité pour les webhooks :',
- 'API token:' => 'Jeton de securité pour l\'API :',
+ 'Webhook token:' => 'Jeton de sécurité pour les webhooks :',
+ 'API token:' => 'Jeton de sécurité pour l\'API :',
'Database size:' => 'Taille de la base de données :',
'Download the database' => 'Télécharger la base de données',
'Optimize the database' => 'Optimiser la base de données',
'(VACUUM command)' => '(Commande VACUUM)',
- '(Gzip compressed Sqlite file)' => '(Fichier Sqlite compressé en Gzip)',
+ '(Gzip compressed Sqlite file)' => '(Fichier SQLite compressé en Gzip)',
'Close a task' => 'Fermer une tâche',
'Column' => 'Colonne',
'Color' => 'Couleur',
@@ -85,7 +85,7 @@ return array(
'Create another task' => 'Créer une autre tâche',
'New task' => 'Nouvelle tâche',
'Open a task' => 'Ouvrir une tâche',
- 'Do you really want to open this task: "%s"?' => 'Voulez-vous vraiment ouvrir cette tâche : « %s » ?',
+ 'Do you really want to open this task: "%s"?' => 'Voulez-vous vraiment ouvrir cette tâche : « %s » ?',
'Back to the board' => 'Retour au tableau',
'There is nobody assigned' => 'Il n\'y a personne d\'assigné à cette tâche',
'Column on the board:' => 'Colonne sur le tableau : ',
@@ -101,7 +101,7 @@ return array(
'The username must be unique' => 'Le nom d\'utilisateur doit être unique',
'The user id is required' => 'L\'id de l\'utilisateur est obligatoire',
'Passwords don\'t match' => 'Les mots de passe ne correspondent pas',
- 'The confirmation is required' => 'Le confirmation est requise',
+ 'The confirmation is required' => 'La confirmation est requise',
'The project is required' => 'Le projet est obligatoire',
'The id is required' => 'L\'identifiant est obligatoire',
'The project id is required' => 'L\'identifiant du projet est obligatoire',
@@ -109,7 +109,7 @@ return array(
'The title is required' => 'Le titre est obligatoire',
'Settings saved successfully.' => 'Paramètres sauvegardés avec succès.',
'Unable to save your settings.' => 'Impossible de sauvegarder vos réglages.',
- 'Database optimization done.' => 'Optmisation de la base de données terminée.',
+ 'Database optimization done.' => 'Optimisation de la base de données terminée.',
'Your project have been created successfully.' => 'Votre projet a été créé avec succès.',
'Unable to create your project.' => 'Impossible de créer un projet.',
'Project updated successfully.' => 'Votre projet a été mis à jour avec succès.',
@@ -138,11 +138,11 @@ return array(
'Backlog' => 'En attente',
'Work in progress' => 'En cours',
'Done' => 'Terminé',
- 'Application version:' => 'Version de l\'application :',
+ 'Application version:' => 'Version de l\'application :',
'Id' => 'Id.',
'Public link' => 'Lien public',
'Timezone' => 'Fuseau horaire',
- 'Sorry, I didn\'t find this information in my database!' => 'Désolé, je n\'ai pas trouvé cette information dans ma base de données !',
+ 'Sorry, I didn\'t find this information in my database!' => 'Désolé, je n\'ai pas trouvé cette information dans ma base de données !',
'Page not found' => 'Page introuvable',
'Complexity' => 'Complexité',
'Task limit' => 'Tâches Max.',
@@ -160,15 +160,15 @@ return array(
'Remove an action' => 'Supprimer une action',
'Unable to remove this action.' => 'Impossible de supprimer cette action',
'Action removed successfully.' => 'Action supprimée avec succès.',
- 'Automatic actions for the project "%s"' => 'Actions automatisées pour le projet « %s »',
+ 'Automatic actions for the project "%s"' => 'Actions automatisées pour le projet « %s »',
'Add an action' => 'Ajouter une action',
- 'Event name' => 'Nom de l\'événement',
+ 'Event name' => 'Nom de l\'évènement',
'Action' => 'Action',
- 'Event' => 'Événement',
- 'When the selected event occurs execute the corresponding action.' => 'Lorsque l\'événement sélectionné se déclenche, exécuter l\'action correspondante.',
+ 'Event' => 'Évènement',
+ 'When the selected event occurs execute the corresponding action.' => 'Lorsque l\'évènement sélectionné se déclenche, exécuter l\'action correspondante.',
'Next step' => 'Étape suivante',
'Define action parameters' => 'Définition des paramètres de l\'action',
- 'Do you really want to remove this action: "%s"?' => 'Voulez-vous vraiment supprimer cette action « %s » ?',
+ 'Do you really want to remove this action: "%s"?' => 'Voulez-vous vraiment supprimer cette action « %s » ?',
'Remove an automatic action' => 'Supprimer une action automatisée',
'Assign the task to a specific user' => 'Assigner la tâche à un utilisateur spécifique',
'Assign the task to the person who does the action' => 'Assigner la tâche à la personne qui fait l\'action',
@@ -187,8 +187,8 @@ return array(
'Remove a comment' => 'Supprimer un commentaire',
'Comment removed successfully.' => 'Commentaire supprimé avec succès.',
'Unable to remove this comment.' => 'Impossible de supprimer ce commentaire.',
- 'Do you really want to remove this comment?' => 'Voulez-vous vraiment supprimer ce commentaire ?',
- 'Current password for the user "%s"' => 'Mot de passe actuel pour l\'utilisateur « %s »',
+ 'Do you really want to remove this comment?' => 'Voulez-vous vraiment supprimer ce commentaire ?',
+ 'Current password for the user "%s"' => 'Mot de passe actuel pour l\'utilisateur « %s »',
'The current password is required' => 'Le mot de passe actuel est obligatoire',
'Wrong password' => 'Mot de passe invalide',
'Unknown' => 'Inconnu',
@@ -220,12 +220,12 @@ return array(
'Task removed successfully.' => 'Tâche supprimée avec succès.',
'Unable to remove this task.' => 'Impossible de supprimer cette tâche.',
'Remove a task' => 'Supprimer une tâche',
- 'Do you really want to remove this task: "%s"?' => 'Voulez-vous vraiment supprimer cette tâche « %s » ?',
+ 'Do you really want to remove this task: "%s"?' => 'Voulez-vous vraiment supprimer cette tâche « %s » ?',
'Assign automatically a color based on a category' => 'Assigner automatiquement une couleur par rapport à une catégorie définie',
'Assign automatically a category based on a color' => 'Assigner automatiquement une catégorie par rapport à une couleur définie',
'Task creation or modification' => 'Création ou modification d\'une tâche',
'Category' => 'Catégorie',
- 'Category:' => 'Catégorie :',
+ 'Category:' => 'Catégorie :',
'Categories' => 'Catégories',
'Your category have been created successfully.' => 'Votre catégorie a été créée avec succès.',
'This category has been updated successfully.' => 'Cette catégorie a été mise à jour avec succès.',
@@ -233,10 +233,10 @@ return array(
'Remove a category' => 'Supprimer une catégorie',
'Category removed successfully.' => 'Catégorie supprimée avec succès.',
'Unable to remove this category.' => 'Impossible de supprimer cette catégorie.',
- 'Category modification for the project "%s"' => 'Modification d\'une catégorie pour le projet « %s »',
+ 'Category modification for the project "%s"' => 'Modification d\'une catégorie pour le projet « %s »',
'Category Name' => 'Nom de la catégorie',
'Add a new category' => 'Ajouter une nouvelle catégorie',
- 'Do you really want to remove this category: "%s"?' => 'Voulez-vous vraiment supprimer cette catégorie « %s » ?',
+ 'Do you really want to remove this category: "%s"?' => 'Voulez-vous vraiment supprimer cette catégorie « %s » ?',
'All categories' => 'Toutes les catégories',
'No category' => 'Aucune catégorie',
'The name is required' => 'Le nom est requis',
@@ -244,16 +244,16 @@ return array(
'Unable to remove this file.' => 'Impossible de supprimer ce fichier.',
'File removed successfully.' => 'Fichier supprimé avec succès.',
'Attach a document' => 'Joindre un document',
- 'Do you really want to remove this file: "%s"?' => 'Voulez-vous vraiment supprimer ce fichier « %s » ?',
+ 'Do you really want to remove this file: "%s"?' => 'Voulez-vous vraiment supprimer ce fichier « %s » ?',
'Attachments' => 'Pièces-jointes',
'Edit the task' => 'Modifier la tâche',
'Add a comment' => 'Ajouter un commentaire',
'Edit a comment' => 'Modifier un commentaire',
'Summary' => 'Résumé',
'Time tracking' => 'Suivi du temps',
- 'Estimate:' => 'Estimation :',
+ 'Estimate:' => 'Estimation :',
'Spent:' => 'Passé :',
- 'Do you really want to remove this sub-task?' => 'Voulez-vous vraiment supprimer cette sous-tâche ?',
+ 'Do you really want to remove this sub-task?' => 'Voulez-vous vraiment supprimer cette sous-tâche ?',
'Remaining:' => 'Restant :',
'hours' => 'heures',
'spent' => 'passé',
@@ -287,22 +287,22 @@ return array(
'Clone' => 'Clone',
'Project cloned successfully.' => 'Projet cloné avec succès.',
'Unable to clone this project.' => 'Impossible de cloner ce projet.',
- 'Enable email notifications' => 'Activer les notifications par emails',
- 'Task position:' => 'Position de la tâche :',
+ 'Enable email notifications' => 'Activer les notifications par email',
+ 'Task position:' => 'Position de la tâche :',
'The task #%d have been opened.' => 'La tâche #%d a été ouverte.',
'The task #%d have been closed.' => 'La tâche #%d a été fermée.',
'Sub-task updated' => 'Sous-tâche mise à jour',
- 'Title:' => 'Titre :',
- 'Status:' => 'État :',
- 'Assignee:' => 'Assigné :',
- 'Time tracking:' => 'Gestion du temps :',
+ 'Title:' => 'Titre :',
+ 'Status:' => 'État :',
+ 'Assignee:' => 'Assigné :',
+ 'Time tracking:' => 'Gestion du temps :',
'New sub-task' => 'Nouvelle sous-tâche',
- 'New attachment added "%s"' => 'Nouvelle pièce-jointe ajoutée « %s »',
- 'New comment posted by %s' => 'Nouveau commentaire ajouté par « %s »',
+ 'New attachment added "%s"' => 'Nouvelle pièce-jointe ajoutée « %s »',
+ 'New comment posted by %s' => 'Nouveau commentaire ajouté par « %s »',
'New comment' => 'Nouveau commentaire',
'Comment updated' => 'Commentaire mis à jour',
'New subtask' => 'Nouvelle sous-tâche',
- 'I want to receive notifications only for those projects:' => 'Je souhaite reçevoir les notifications uniquement pour les projets sélectionnés :',
+ 'I want to receive notifications only for those projects:' => 'Je souhaite reçevoir les notifications uniquement pour les projets sélectionnés :',
'view the task on Kanboard' => 'voir la tâche sur Kanboard',
'Public access' => 'Accès public',
'Disable public access' => 'Désactiver l\'accès public',
@@ -310,7 +310,7 @@ return array(
'Public access disabled' => 'Accès public désactivé',
'Move the task to another project' => 'Déplacer la tâche vers un autre projet',
'Move to another project' => 'Déplacer vers un autre projet',
- 'Do you really want to duplicate this task?' => 'Voulez-vous vraiment dupliquer cette tâche ?',
+ 'Do you really want to duplicate this task?' => 'Voulez-vous vraiment dupliquer cette tâche ?',
'Duplicate a task' => 'Dupliquer une tâche',
'External accounts' => 'Comptes externes',
'Account type' => 'Type de compte',
@@ -318,12 +318,12 @@ return array(
'Remote' => 'Distant',
'Enabled' => 'Activé',
'Disabled' => 'Désactivé',
- 'Login:' => 'Nom d\'utilisateur :',
- 'Full Name:' => 'Nom :',
- 'Email:' => 'Email :',
- 'Notifications:' => 'Notifications :',
+ 'Login:' => 'Nom d\'utilisateur :',
+ 'Full Name:' => 'Nom :',
+ 'Email:' => 'Email :',
+ 'Notifications:' => 'Notifications :',
'Notifications' => 'Notifications',
- 'Account type:' => 'Type de compte :',
+ 'Account type:' => 'Type de compte :',
'Edit profile' => 'Modifier le profil',
'Change password' => 'Changer le mot de passe',
'Password modification' => 'Changement de mot de passe',
@@ -335,14 +335,14 @@ return array(
'Change category' => 'Changer de catégorie',
'%s updated the task %s' => '%s a mis à jour la tâche %s',
'%s opened the task %s' => '%s a ouvert la tâche %s',
- '%s moved the task %s to the position #%d in the column "%s"' => '%s a déplacé la tâche %s à la position n°%d dans la colonne « %s »',
- '%s moved the task %s to the column "%s"' => '%s a déplacé la tâche %s dans la colonne « %s »',
+ '%s moved the task %s to the position #%d in the column "%s"' => '%s a déplacé la tâche %s à la position n°%d dans la colonne « %s »',
+ '%s moved the task %s to the column "%s"' => '%s a déplacé la tâche %s dans la colonne « %s »',
'%s created the task %s' => '%s a créé la tâche %s',
'%s closed the task %s' => '%s a fermé la tâche %s',
'%s created a subtask for the task %s' => '%s a créé une sous-tâche pour la tâche %s',
'%s updated a subtask for the task %s' => '%s a mis à jour une sous-tâche appartenant à la tâche %s',
- 'Assigned to %s with an estimate of %s/%sh' => 'Assigné à %s avec un estimé de %s/%sh',
- 'Not assigned, estimate of %sh' => 'Personne assigné, estimé de %sh',
+ 'Assigned to %s with an estimate of %s/%sh' => 'Assigné à %s avec un estimé de %s/%s h',
+ 'Not assigned, estimate of %sh' => 'Personne assigné, estimé de %s h',
'%s updated a comment on the task %s' => '%s a mis à jour un commentaire appartenant à la tâche %s',
'%s commented the task %s' => '%s a ajouté un commentaire sur la tâche %s',
'%s\'s activity' => 'Activité du projet %s',
@@ -356,13 +356,13 @@ return array(
'%s closed the task #%d' => '%s a fermé la tâche n°%d',
'%s opened the task #%d' => '%s a ouvert la tâche n°%d',
'Activity' => 'Activité',
- 'Default values are "%s"' => 'Les valeurs par défaut sont « %s »',
+ 'Default values are "%s"' => 'Les valeurs par défaut sont « %s »',
'Default columns for new projects (Comma-separated)' => 'Colonnes par défaut pour les nouveaux projets (séparation par des virgules)',
'Task assignee change' => 'Modification de la personne assignée à une tâche',
'%s changed the assignee of the task #%d to %s' => '%s a changé la personne assignée à la tâche n˚%d pour %s',
'%s changed the assignee of the task %s to %s' => '%s a changé la personne assignée à la tâche %s pour %s',
- 'New password for the user "%s"' => 'Nouveau mot de passe pour l\'utilisateur « %s »',
- 'Choose an event' => 'Choisir un événement',
+ 'New password for the user "%s"' => 'Nouveau mot de passe pour l\'utilisateur « %s »',
+ 'Choose an event' => 'Choisir un évènement',
'Create a task from an external provider' => 'Créer une tâche depuis un fournisseur externe',
'Change the assignee based on an external username' => 'Changer l\'assigné en fonction d\'un utilisateur externe',
'Change the category based on an external label' => 'Changer la catégorie en fonction d\'un libellé externe',
@@ -370,13 +370,13 @@ return array(
'Label' => 'Libellé',
'Database' => 'Base de données',
'About' => 'À propos',
- 'Database driver:' => 'Type de base de données :',
+ 'Database driver:' => 'Type de base de données :',
'Board settings' => 'Paramètres du tableau',
'Webhook settings' => 'Paramètres pour les webhooks',
'Reset token' => 'Regénérer le jeton de sécurité',
- 'API endpoint:' => 'URL de l\'API :',
- 'Refresh interval for private board' => 'Intervalle pour rafraîchir un tableau privé',
- 'Refresh interval for public board' => 'Intervalle pour rafraîchir un tableau public',
+ 'API endpoint:' => 'URL de l\'API :',
+ 'Refresh interval for private board' => 'Intervalle pour rafraichir un tableau privé',
+ 'Refresh interval for public board' => 'Intervalle pour rafraichir un tableau public',
'Task highlight period' => 'Durée pour mettre une tâche en évidence',
'Period (in second) to consider a task was modified recently (0 to disable, 2 days by default)' => 'Durée en seconde pour considérer une tâche comme récemment modifiée (0 pour désactiver, 2 jours par défaut)',
'Frequency in second (60 seconds by default)' => 'Fréquence en seconde (60 secondes par défaut)',
@@ -384,7 +384,7 @@ return array(
'Application URL' => 'URL de l\'application',
'Token regenerated.' => 'Jeton de sécurité regénéré.',
'Date format' => 'Format des dates',
- 'ISO format is always accepted, example: "%s" and "%s"' => 'Le format ISO est toujours accepté, exemple : « %s » et « %s »',
+ 'ISO format is always accepted, example: "%s" and "%s"' => 'Le format ISO est toujours accepté, exemple : « %s » et « %s »',
'New private project' => 'Nouveau projet privé',
'This project is private' => 'Ce projet est privé',
'Add' => 'Ajouter',
@@ -435,14 +435,14 @@ return array(
'Do you really want to remove this swimlane: "%s"?' => 'Voulez-vous vraiment supprimer cette swimlane : « %s » ?',
'Inactive swimlanes' => 'Swimlanes inactives',
'Remove a swimlane' => 'Supprimer une swimlane',
- 'Swimlane modification for the project "%s"' => 'Modification d\'une swimlane pour le projet « %s »',
+ 'Swimlane modification for the project "%s"' => 'Modification d\'une swimlane pour le projet « %s »',
'Swimlane removed successfully.' => 'Swimlane supprimée avec succès.',
'Swimlanes' => 'Swimlanes',
'Swimlane updated successfully.' => 'Swimlane mise à jour avec succès.',
'Unable to remove this swimlane.' => 'Impossible de supprimer cette swimlane.',
'Unable to update this swimlane.' => 'Impossible de mettre à jour cette swimlane.',
'Your swimlane have been created successfully.' => 'Votre swimlane a été créée avec succès.',
- 'Example: "Bug, Feature Request, Improvement"' => 'Exemple: « Incident, Demande de fonctionnalité, Amélioration »',
+ 'Example: "Bug, Feature Request, Improvement"' => 'Exemple: « Incident, Demande de fonctionnalité, Amélioration »',
'Default categories for new projects (Comma-separated)' => 'Catégories par défaut pour les nouveaux projets (séparation par des virgules)',
'Integrations' => 'Intégrations',
'Integration with third-party services' => 'Intégration avec des services externes',
@@ -452,8 +452,8 @@ return array(
'Task Title' => 'Titre de la tâche',
'Untitled' => 'Sans nom',
'Application default' => 'Valeur par défaut de l\'application',
- 'Language:' => 'Langue :',
- 'Timezone:' => 'Fuseau horaire :',
+ 'Language:' => 'Langue :',
+ 'Timezone:' => 'Fuseau horaire :',
'All columns' => 'Toutes les colonnes',
'Next' => 'Suivant',
'#%d' => 'n˚%d',
@@ -462,8 +462,8 @@ return array(
'Moved to column %s' => 'Tâche déplacée à la colonne %s',
'User dashboard' => 'Tableau de bord de l\'utilisateur',
'Allow only one subtask in progress at the same time for a user' => 'Autoriser une seule sous-tâche en progrès en même temps pour un utilisateur',
- 'Edit column "%s"' => 'Modifier la colonne « %s »',
- 'Select the new status of the subtask: "%s"' => 'Selectionnez le nouveau statut de la sous-tâche : « %s »',
+ 'Edit column "%s"' => 'Modifier la colonne « %s »',
+ 'Select the new status of the subtask: "%s"' => 'Sélectionnez le nouveau statut de la sous-tâche : « %s »',
'Subtask timesheet' => 'Feuille de temps des sous-tâches',
'There is nothing to show.' => 'Il n\'y a rien à montrer.',
'Time Tracking' => 'Feuille de temps',
@@ -474,7 +474,7 @@ return array(
'End' => 'Fin',
'Task age in days' => 'Âge de la tâche en jours',
'Days in this column' => 'Jours dans cette colonne',
- '%dd' => '%dj',
+ '%dd' => '%d j',
'Add a new link' => 'Ajouter un nouveau lien',
'Do you really want to remove this link: "%s"?' => 'Voulez-vous vraiment supprimer ce lien : « %s » ?',
'Do you really want to remove this link with task #%d?' => 'Voulez-vous vraiment supprimer ce lien avec la tâche n°%d ?',
@@ -505,12 +505,12 @@ return array(
'fixes' => 'corrige',
'is fixed by' => 'est corrigée par',
'This task' => 'Cette tâche',
- '<1h' => '<1h',
- '%dh' => '%dh',
+ '<1h' => '< 1 h',
+ '%dh' => '%d h',
'Expand tasks' => 'Déplier les tâches',
'Collapse tasks' => 'Replier les tâches',
'Expand/collapse tasks' => 'Plier/déplier les tâches',
- 'Close dialog box' => 'Fermer une boîte de dialogue',
+ 'Close dialog box' => 'Fermer une boite de dialogue',
'Submit a form' => 'Enregistrer un formulaire',
'Board view' => 'Page du tableau',
'Keyboard shortcuts' => 'Raccourcis clavier',
@@ -524,7 +524,7 @@ return array(
'AUD - Australian Dollar' => 'AUD - Dollar australien',
'CAD - Canadian Dollar' => 'CAD - Dollar canadien',
'CHF - Swiss Francs' => 'CHF - Franc suisse',
- 'Custom Stylesheet' => 'Feuille de style personalisée',
+ 'Custom Stylesheet' => 'Feuille de style personnalisée',
'download' => 'télécharger',
'EUR - Euro' => 'EUR - Euro',
'GBP - British Pound' => 'GBP - Livre sterling',
@@ -558,9 +558,9 @@ return array(
'The two factor authentication code is valid.' => 'Le code pour l\'authentification à deux-facteurs est valide.',
'Code' => 'Code',
'Two factor authentication' => 'Authentification à deux-facteurs',
- 'This QR code contains the key URI: ' => 'Ce code QR contient l\'url de la clé : ',
+ 'This QR code contains the key URI: ' => 'Ce code QR contient l\'URL de la clé : ',
'Check my code' => 'Vérifier mon code',
- 'Secret key: ' => 'Clé secrète : ',
+ 'Secret key: ' => 'Clé secrète : ',
'Test your device' => 'Testez votre appareil',
'Assign a color when the task is moved to a specific column' => 'Assigner une couleur lorsque la tâche est déplacée dans une colonne spécifique',
'%s via Kanboard' => '%s via Kanboard',
@@ -575,13 +575,13 @@ return array(
'Disable two factor authentication' => 'Désactiver l\'authentification à deux facteurs',
'Do you really want to disable the two factor authentication for this user: "%s"?' => 'Voulez-vous vraiment désactiver l\'authentification à deux facteurs pour cet utilisateur : « %s » ?',
'Edit link' => 'Modifier un lien',
- 'Start to type task title...' => 'Entrez le titre de la tâche...',
+ 'Start to type task title...' => 'Entrez le titre de la tâche…',
'A task cannot be linked to itself' => 'Une tâche ne peut être liée à elle-même',
'The exact same link already exists' => 'Un lien identique existe déjà',
'Recurrent task is scheduled to be generated' => 'La tâche récurrente est programmée pour être créée',
'Score' => 'Complexité',
'The identifier must be unique' => 'L\'identifiant doit être unique',
- 'This linked task id doesn\'t exists' => 'L\'identifiant de la task liée n\'existe pas',
+ 'This linked task id doesn\'t exists' => 'L\'identifiant de la tâche liée n\'existe pas',
'This value must be alphanumeric' => 'Cette valeur doit être alphanumérique',
'Edit recurrence' => 'Modifier la récurrence',
'Generate recurrent task' => 'Générer une tâche récurrente',
@@ -591,7 +591,7 @@ return array(
'Base date to calculate new due date' => 'Date à utiliser pour calculer la nouvelle date d\'échéance',
'Action date' => 'Date de l\'action',
'Base date to calculate new due date: ' => 'Date utilisée pour calculer la nouvelle date d\'échéance : ',
- 'This task has created this child task: ' => 'Cette tâche a créée la tâche enfant : ',
+ 'This task has created this child task: ' => 'Cette tâche a créé la tâche enfant : ',
'Day(s)' => 'Jour(s)',
'Existing due date' => 'Date d\'échéance existante',
'Factor to calculate new due date: ' => 'Facteur pour calculer la nouvelle date d\'échéance : ',
@@ -614,7 +614,7 @@ return array(
'Two factor authentication enabled' => 'Authentification à deux facteurs activée',
'Unable to update this user.' => 'Impossible de mettre à jour cet utilisateur.',
'There is no user management for private projects.' => 'Il n\'y a pas de gestion d\'utilisateurs pour les projets privés.',
- 'User that will receive the email' => 'Utilisateur qui va reçevoir l\'email',
+ 'User that will receive the email' => 'Utilisateur qui va recevoir l\'email',
'Email subject' => 'Sujet de l\'email',
'Date' => 'Date',
'Add a comment log when moving the task between columns' => 'Ajouter un commentaire d\'information lorsque une tâche est déplacée dans une autre colonne',
@@ -628,26 +628,26 @@ return array(
'%s moved the task %s to the swimlane "%s"' => '%s a déplacé la tâche %s dans la swimlane « %s »',
'This report contains all subtasks information for the given date range.' => 'Ce rapport contient les informations de toutes les sous-tâches pour la période sélectionnée.',
'This report contains all tasks information for the given date range.' => 'Ce rapport contient les informations de toutes les tâches pour la période sélectionnée.',
- 'Project activities for %s' => 'Activité des projets pour « %s »',
+ 'Project activities for %s' => 'Activité des projets pour « %s »',
'view the board on Kanboard' => 'voir le tableau sur Kanboard',
'The task have been moved to the first swimlane' => 'La tâche a été déplacée dans la première swimlane',
- 'The task have been moved to another swimlane:' => 'La tâche a été déplacée dans une autre swimlane :',
- 'New title: %s' => 'Nouveau titre : %s',
+ 'The task have been moved to another swimlane:' => 'La tâche a été déplacée dans une autre swimlane :',
+ 'New title: %s' => 'Nouveau titre : %s',
'The task is not assigned anymore' => 'La tâche n\'est plus assignée maintenant',
- 'New assignee: %s' => 'Nouvel assigné : %s',
+ 'New assignee: %s' => 'Nouvel assigné : %s',
'There is no category now' => 'Il n\'y a plus de catégorie maintenant',
- 'New category: %s' => 'Nouvelle catégorie : %s',
- 'New color: %s' => 'Nouvelle couleur : %s',
- 'New complexity: %d' => 'Nouvelle complexité : %d',
+ 'New category: %s' => 'Nouvelle catégorie : %s',
+ 'New color: %s' => 'Nouvelle couleur : %s',
+ 'New complexity: %d' => 'Nouvelle complexité : %d',
'The due date have been removed' => 'La date d\'échéance a été enlevée',
'There is no description anymore' => 'Il n\'y a plus de description maintenant',
'Recurrence settings have been modified' => 'Les réglages de la récurrence ont été modifiés',
- 'Time spent changed: %sh' => 'Le temps passé a été changé : %sh',
- 'Time estimated changed: %sh' => 'Le temps estimé a été changé : %sh',
+ 'Time spent changed: %sh' => 'Le temps passé a été changé : %s h',
+ 'Time estimated changed: %sh' => 'Le temps estimé a été changé : %s h',
'The field "%s" have been updated' => 'Le champ « %s » a été mis à jour',
'The description has been modified:' => 'La description a été modifiée',
'Do you really want to close the task "%s" as well as all subtasks?' => 'Voulez-vous vraiment fermer la tâche « %s » ainsi que toutes ses sous-tâches ?',
- 'I want to receive notifications for:' => 'Je veux reçevoir les notifications pour :',
+ 'I want to receive notifications for:' => 'Je veux recevoir les notifications pour :',
'All tasks' => 'Toutes les Tâches',
'Only for tasks assigned to me' => 'Seulement les tâches qui me sont assignées',
'Only for tasks created by me' => 'Seulement les tâches que j\'ai créées',
@@ -655,8 +655,8 @@ return array(
'%%Y-%%m-%%d' => '%%d/%%m/%%Y',
'Total for all columns' => 'Total pour toutes les colonnes',
'You need at least 2 days of data to show the chart.' => 'Vous avez besoin d\'au minimum 2 jours de données pour afficher le graphique.',
- '<15m' => '<15m',
- '<30m' => '<30m',
+ '<15m' => '< 15 min',
+ '<30m' => '< 30 min',
'Stop timer' => 'Stopper le chrono',
'Start timer' => 'Démarrer le chrono',
'My activity stream' => 'Mon flux d\'activité',
@@ -677,31 +677,31 @@ return array(
'Go to the search/filter box' => 'Aller au champ de recherche',
'There is no activity yet.' => 'Il n\'y a pas encore d\'activité.',
'No tasks found.' => 'Aucune tâche trouvée.',
- 'Keyboard shortcut: "%s"' => 'Raccourci clavier : « %s »',
+ 'Keyboard shortcut: "%s"' => 'Raccourci clavier : « %s »',
'List' => 'Liste',
'Filter' => 'Filtre',
'Advanced search' => 'Recherche avancée',
- 'Example of query: ' => 'Exemple de requête : ',
- 'Search by project: ' => 'Rechercher par projet : ',
- 'Search by column: ' => 'Rechercher par colonne : ',
- 'Search by assignee: ' => 'Rechercher par assigné : ',
- 'Search by color: ' => 'Rechercher par couleur : ',
- 'Search by category: ' => 'Rechercher par catégorie : ',
- 'Search by description: ' => 'Rechercher par description : ',
- 'Search by due date: ' => 'Rechercher par date d\'échéance : ',
+ 'Example of query: ' => 'Exemple de requête : ',
+ 'Search by project: ' => 'Rechercher par projet : ',
+ 'Search by column: ' => 'Rechercher par colonne : ',
+ 'Search by assignee: ' => 'Rechercher par assigné : ',
+ 'Search by color: ' => 'Rechercher par couleur : ',
+ 'Search by category: ' => 'Rechercher par catégorie : ',
+ 'Search by description: ' => 'Rechercher par description : ',
+ 'Search by due date: ' => 'Rechercher par date d\'échéance : ',
'Average time spent into each column' => 'Temps moyen passé dans chaque colonne',
'Average time spent' => 'Temps moyen passé',
'This chart show the average time spent into each column for the last %d tasks.' => 'Ce graphique montre le temps passé moyen dans chaque colonne pour les %d dernières tâches.',
'Average Lead and Cycle time' => 'Durée moyenne du lead et cycle time',
- 'Average lead time: ' => 'Lead time moyen : ',
- 'Average cycle time: ' => 'Cycle time moyen : ',
+ 'Average lead time: ' => 'Lead time moyen : ',
+ 'Average cycle time: ' => 'Cycle time moyen : ',
'Cycle Time' => 'Cycle time',
'Lead Time' => 'Lead time',
'This chart show the average lead and cycle time for the last %d tasks over the time.' => 'Ce graphique montre la durée moyenne du lead et cycle time pour les %d dernières tâches.',
'Average time into each column' => 'Temps moyen dans chaque colonne',
'Lead and cycle time' => 'Lead et cycle time',
- 'Lead time: ' => 'Lead time : ',
- 'Cycle time: ' => 'Temps de cycle : ',
+ 'Lead time: ' => 'Lead time : ',
+ 'Cycle time: ' => 'Temps de cycle : ',
'Time spent into each column' => 'Temps passé dans chaque colonne',
'The lead time is the duration between the task creation and the completion.' => 'Le lead time est la durée entre la création de la tâche et sa complétion.',
'The cycle time is the duration between the start date and the completion.' => 'Le cycle time est la durée entre la date de début et la complétion.',
@@ -709,22 +709,22 @@ return array(
'Set automatically the start date' => 'Définir automatiquement la date de début',
'Edit Authentication' => 'Modifier l\'authentification',
'Remote user' => 'Utilisateur distant',
- 'Remote users do not store their password in Kanboard database, examples: LDAP, Google and Github accounts.' => 'Les utilisateurs distants ne stockent pas leur mot de passe dans la base de données de Kanboard, exemples : comptes LDAP, Github ou Google.',
+ 'Remote users do not store their password in Kanboard database, examples: LDAP, Google and Github accounts.' => 'Les utilisateurs distants ne stockent pas leur mot de passe dans la base de données de Kanboard, exemples : comptes LDAP, GitHub ou Google.',
'If you check the box "Disallow login form", credentials entered in the login form will be ignored.' => 'Si vous cochez la case « Interdire le formulaire d\'authentification », les identifiants entrés dans le formulaire d\'authentification seront ignorés.',
'Default task color' => 'Couleur par défaut des tâches',
'This feature does not work with all browsers.' => 'Cette fonctionnalité n\'est pas compatible avec tous les navigateurs',
'There is no destination project available.' => 'Il n\'y a pas de projet de destination disponible.',
'Trigger automatically subtask time tracking' => 'Déclencher automatiquement le suivi du temps pour les sous-tâches',
'Include closed tasks in the cumulative flow diagram' => 'Inclure les tâches fermées dans le diagramme de flux cumulé',
- 'Current swimlane: %s' => 'Swimlane actuelle : %s',
- 'Current column: %s' => 'Colonne actuelle : %s',
- 'Current category: %s' => 'Catégorie actuelle : %s',
+ 'Current swimlane: %s' => 'Swimlane actuelle : %s',
+ 'Current column: %s' => 'Colonne actuelle : %s',
+ 'Current category: %s' => 'Catégorie actuelle : %s',
'no category' => 'aucune catégorie',
- 'Current assignee: %s' => 'Assigné actuel : %s',
+ 'Current assignee: %s' => 'Assigné actuel : %s',
'not assigned' => 'non assigné',
- 'Author:' => 'Auteur :',
+ 'Author:' => 'Auteur :',
'contributors' => 'contributeurs',
- 'License:' => 'Licence :',
+ 'License:' => 'Licence :',
'License' => 'Licence',
'Enter the text below' => 'Entrez le texte ci-dessous',
'Start date:' => 'Date de début :',
@@ -745,7 +745,7 @@ return array(
'Change task color when using a specific task link' => 'Changer la couleur de la tâche lorsqu\'un lien spécifique est utilisé',
'Task link creation or modification' => 'Création ou modification d\'un lien sur une tâche',
'Milestone' => 'Étape importante',
- 'Documentation: %s' => 'Documentation : %s',
+ 'Documentation: %s' => 'Documentation : %s',
'Reset the search/filter box' => 'Réinitialiser le champ de recherche',
'Documentation' => 'Documentation',
'Table of contents' => 'Table des matières',
@@ -754,21 +754,21 @@ return array(
'Plugins' => 'Extensions',
'There is no plugin loaded.' => 'Il n\'y a aucune extension chargée.',
'My notifications' => 'Mes notifications',
- 'Custom filters' => 'Filtres personalisés',
- 'Your custom filter have been created successfully.' => 'Votre filter personalisé a été créé avec succès.',
- 'Unable to create your custom filter.' => 'Impossible de créer votre filter personalisé.',
- 'Custom filter removed successfully.' => 'Filtre personalisé supprimé avec succès.',
- 'Unable to remove this custom filter.' => 'Impossible de supprimer ce filter personalisé.',
- 'Edit custom filter' => 'Modification d\'un filtre personalisé',
- 'Your custom filter have been updated successfully.' => 'Votre filtre personalisé a été mis à jour avec succès.',
- 'Unable to update custom filter.' => 'Impossible de mettre à jour votre filtre personalisé.',
+ 'Custom filters' => 'Filtres personnalisés',
+ 'Your custom filter have been created successfully.' => 'Votre filtre personnalisé a été créé avec succès.',
+ 'Unable to create your custom filter.' => 'Impossible de créer votre filtre personnalisé.',
+ 'Custom filter removed successfully.' => 'Filtre personnalisé supprimé avec succès.',
+ 'Unable to remove this custom filter.' => 'Impossible de supprimer ce filtre personnalisé.',
+ 'Edit custom filter' => 'Modification d\'un filtre personnalisé',
+ 'Your custom filter have been updated successfully.' => 'Votre filtre personnalisé a été mis à jour avec succès.',
+ 'Unable to update custom filter.' => 'Impossible de mettre à jour votre filtre personnalisé.',
'Web' => 'Web',
- 'New attachment on task #%d: %s' => 'Nouveau fichier joint sur la tâche n°%d : %s',
+ 'New attachment on task #%d: %s' => 'Nouveau fichier joint sur la tâche n°%d : %s',
'New comment on task #%d' => 'Nouveau commentaire sur la tâche n°%d',
'Comment updated on task #%d' => 'Commentaire mis à jour sur la tâche n°%d',
'New subtask on task #%d' => 'Nouvelle sous-tâche sur la tâche n°%d',
'Subtask updated on task #%d' => 'Sous-tâche mise à jour sur la tâche n°%d',
- 'New task #%d: %s' => 'Nouvelle tâche n°%d : %s',
+ 'New task #%d: %s' => 'Nouvelle tâche n°%d : %s',
'Task updated #%d' => 'Tâche n°%d mise à jour',
'Task #%d closed' => 'Tâche n°%d fermée',
'Task #%d opened' => 'Tâche n°%d ouverte',
@@ -789,7 +789,7 @@ return array(
'Shared' => 'Partagé',
'Owner' => 'Propriétaire',
'Unread notifications' => 'Notifications non lus',
- 'Notification methods:' => 'Méthodes de notifications :',
+ 'Notification methods:' => 'Méthodes de notifications :',
'Unable to read your file' => 'Impossible de lire votre fichier',
'%d task(s) have been imported successfully.' => '%d tâche(s) ont été importées avec succès.',
'Nothing have been imported!' => 'Rien n\'a été importé',
@@ -800,15 +800,15 @@ return array(
'Tab' => 'Tabulation',
'Vertical bar' => 'Barre verticale',
'Double Quote' => 'Guillemet double',
- 'Single Quote' => 'Guillement simple',
+ 'Single Quote' => 'Guillemet simple',
'%s attached a file to the task #%d' => '%s a attaché un fichier sur la tâche n°%d',
'There is no column or swimlane activated in your project!' => 'Il n\'y a aucune colonne ou swimlane dans votre projet !',
- 'Append filter (instead of replacement)' => 'Ajouter le filtre au lieu de le remplaçer',
- 'Append/Replace' => 'Ajouter/Remplaçer',
+ 'Append filter (instead of replacement)' => 'Ajouter le filtre au lieu de le remplacer',
+ 'Append/Replace' => 'Ajouter/Remplacer',
'Append' => 'Ajouter',
- 'Replace' => 'Remplaçer',
+ 'Replace' => 'Remplacer',
'Import' => 'Importation',
- 'Change sorting' => 'changer l\'ordre',
+ 'Change sorting' => 'Changer l\'ordre',
'Tasks Importation' => 'Importation des tâches',
'Delimiter' => 'Délimiteur',
'Enclosure' => 'Caractère d\'encadrement',
@@ -818,7 +818,7 @@ return array(
'Your file must be encoded in UTF-8' => 'Votre fichier doit être encodé en UTF-8',
'The first row must be the header' => 'La première ligne doit être le titre des colonnes',
'Duplicates are not verified for you' => 'Les doublons ne sont pas vérifiés pour vous',
- 'The due date must use the ISO format: YYYY-MM-DD' => 'La date d\'échéance doit utiliser le format ISO : AAAA-MM-JJ',
+ 'The due date must use the ISO format: YYYY-MM-DD' => 'La date d\'échéance doit utiliser le format ISO : AAAA-MM-JJ',
'Download CSV template' => 'Télécharger le modèle CSV',
'No external integration registered.' => 'Aucune intégration externe enregistrée.',
'Duplicates are not imported' => 'Les doublons ne sont pas importés',
@@ -834,14 +834,14 @@ return array(
'Members of %s' => 'Membres de %s',
'New group' => 'Nouveau groupe',
'Group created successfully.' => 'Groupe créé avec succès.',
- 'Unable to create your group.' => 'Impossible de créé votre groupe.',
+ 'Unable to create your group.' => 'Impossible de créer votre groupe.',
'Edit group' => 'Modifier le groupe',
'Group updated successfully.' => 'Groupe mis à jour avec succès.',
'Unable to update your group.' => 'Impossible de mettre à jour votre groupe.',
- 'Add group member to "%s"' => 'Ajouter un membre au groupe « %s »',
+ 'Add group member to "%s"' => 'Ajouter un membre au groupe « %s »',
'Group member added successfully.' => 'Membre ajouté avec succès au groupe.',
'Unable to add group member.' => 'Impossible d\'ajouter ce membre au groupe.',
- 'Remove user from group "%s"' => 'Supprimer un utilisateur d\'un groupe « %s »',
+ 'Remove user from group "%s"' => 'Supprimer un utilisateur d\'un groupe « %s »',
'User removed successfully from this group.' => 'Utilisateur supprimé avec succès de ce groupe.',
'Unable to remove this user from the group.' => 'Impossible de supprimer cet utilisateur du groupe.',
'Remove group' => 'Supprimer le groupe',
@@ -853,33 +853,33 @@ return array(
'Project Member' => 'Membre du projet',
'Project Viewer' => 'Visualiseur de projet',
'Your account is locked for %d minutes' => 'Votre compte est verrouillé pour %d minutes',
- 'Invalid captcha' => 'Captcha invalid',
+ 'Invalid captcha' => 'Captcha invalide',
'The name must be unique' => 'Le nom doit être unique',
'View all groups' => 'Voir tous les groupes',
'There is no user available.' => 'Il n\'y a aucun utilisateur disponible',
- 'Do you really want to remove the user "%s" from the group "%s"?' => 'Voulez-vous vraiment supprimer l\'utilisateur « %s » du groupe « %s » ?',
+ 'Do you really want to remove the user "%s" from the group "%s"?' => 'Voulez-vous vraiment supprimer l\'utilisateur « %s » du groupe « %s » ?',
'There is no group.' => 'Il n\'y a aucun groupe.',
'Add group member' => 'Ajouter un membre au groupe',
- 'Do you really want to remove this group: "%s"?' => 'Voulez-vous vraiment supprimer ce groupe : « %s » ?',
+ 'Do you really want to remove this group: "%s"?' => 'Voulez-vous vraiment supprimer ce groupe : « %s » ?',
'There is no user in this group.' => 'Il n\'y a aucun utilisateur dans ce groupe',
'Permissions' => 'Permissions',
'Allowed Users' => 'Utilisateurs autorisés',
'No user have been allowed specifically.' => 'Aucun utilisateur a été autorisé spécifiquement.',
'Role' => 'Rôle',
- 'Enter user name...' => 'Entrez le nom de l\'utilisateur...',
+ 'Enter user name...' => 'Entrez le nom de l\'utilisateur…',
'Allowed Groups' => 'Groupes autorisés',
'No group have been allowed specifically.' => 'Aucun groupe a été autorisé spécifiquement.',
'Group' => 'Groupe',
'Group Name' => 'Nom du groupe',
- 'Enter group name...' => 'Entrez le nom du groupe...',
- 'Role:' => 'Rôle :',
+ 'Enter group name...' => 'Entrez le nom du groupe…',
+ 'Role:' => 'Rôle :',
'Project members' => 'Membres du projet',
'%s mentioned you in the task #%d' => '%s vous a mentionné dans la tâche n°%d',
'%s mentioned you in a comment on the task #%d' => '%s vous a mentionné dans un commentaire de la tâche n°%d',
'You were mentioned in the task #%d' => 'Vous avez été mentionné dans la tâche n°%d',
'You were mentioned in a comment on the task #%d' => 'Vous avez été mentionné dans un commentaire de la tâche n°%d',
- 'Estimated hours: ' => 'Heures estimées : ',
- 'Actual hours: ' => 'Heures actuelles : ',
+ 'Estimated hours: ' => 'Heures estimées : ',
+ 'Actual hours: ' => 'Heures actuelles : ',
'Hours Spent' => 'Heures passées',
'Hours Estimated' => 'Heures estimées',
'Estimated Time' => 'Temps estimé',
@@ -889,30 +889,30 @@ return array(
'Assign the task to the person who does the action when the column is changed' => 'Assigner la tâche à la personne qui fait l\'action lorsque la colonne est changée',
'Close a task in a specific column' => 'Fermer une tâche dans une colonne specifique',
'Time-based One-time Password Algorithm' => 'Mot de passe à usage unique basé sur le temps',
- 'Two-Factor Provider: ' => 'Fournisseur d\'authentification à deux facteurs : ',
+ 'Two-Factor Provider: ' => 'Fournisseur d\'authentification à deux facteurs : ',
'Disable two-factor authentication' => 'Désactiver l\'authentification à deux-facteurs',
'Enable two-factor authentication' => 'Activer l\'authentification à deux-facteurs',
'There is no integration registered at the moment.' => 'Il n\'y a aucune intégration enregistrée pour le moment.',
'Password Reset for Kanboard' => 'Réinitialisation du mot de passe pour Kanboard',
- 'Forgot password?' => 'Mot de passe oublié ?',
- 'Enable "Forget Password"' => 'Activer la fonctionnalité « Mot de passe oublié »',
+ 'Forgot password?' => 'Mot de passe oublié ?',
+ 'Enable "Forget Password"' => 'Activer la fonctionnalité « Mot de passe oublié »',
'Password Reset' => 'Réinitialisation du mot de passe',
'New password' => 'Nouveau mot de passe',
'Change Password' => 'Changer de mot de passe',
- 'To reset your password click on this link:' => 'Pour réinitialiser votre mot de passe cliquer sur ce lien :',
- 'Last Password Reset' => 'Dernières réinitialisation de mot de passe',
+ 'To reset your password click on this link:' => 'Pour réinitialiser votre mot de passe cliquer sur ce lien :',
+ 'Last Password Reset' => 'Dernières réinitialisations de mot de passe',
'The password has never been reinitialized.' => 'Le mot de passe n\'a jamais été réinitialisé.',
'Creation' => 'Création',
'Expiration' => 'Expiration',
'Password reset history' => 'Historique de la réinitialisation du mot de passe',
- 'All tasks of the column "%s" and the swimlane "%s" have been closed successfully.' => 'Toutes les tâches de la colonne « %s » et de la swimlane « %s » ont été fermées avec succès.',
- 'Do you really want to close all tasks of this column?' => 'Voulez-vous vraiment fermer toutes les tâches de cette colonne ?',
- '%d task(s) in the column "%s" and the swimlane "%s" will be closed.' => '%d tâche(s) dans la colonne « %s » et la swimlane « %s » seront fermées.',
+ 'All tasks of the column "%s" and the swimlane "%s" have been closed successfully.' => 'Toutes les tâches de la colonne « %s » et de la swimlane « %s » ont été fermées avec succès.',
+ 'Do you really want to close all tasks of this column?' => 'Voulez-vous vraiment fermer toutes les tâches de cette colonne ?',
+ '%d task(s) in the column "%s" and the swimlane "%s" will be closed.' => '%d tâche(s) dans la colonne « %s » et la swimlane « %s » seront fermées.',
'Close all tasks of this column' => 'Fermer toutes les tâches de cette colonne',
'No plugin has registered a project notification method. You can still configure individual notifications in your user profile.' => 'Aucun plugin n\'a enregistré une méthode de notification de projet. Vous pouvez toujours configurer les notifications individuelles dans votre profil utilisateur.',
'My dashboard' => 'Mon tableau de bord',
'My profile' => 'Mon profil',
- 'Project owner: ' => 'Responsable du projet : ',
+ 'Project owner: ' => 'Responsable du projet : ',
'The project identifier is optional and must be alphanumeric, example: MYPROJECT.' => 'L\'identifiant du projet est optionnel et doit être alphanumérique, example: MONPROJET.',
'Project owner' => 'Responsable du projet',
'Private projects do not have users and groups management.' => 'Les projets privés n\'ont pas de gestion d\'utilisateurs et de groupes.',
@@ -942,7 +942,7 @@ return array(
'Add a new external link' => 'Ajouter un nouveau lien externe',
'Edit external link' => 'Modifier un lien externe',
'External link' => 'Lien externe',
- 'Copy and paste your link here...' => 'Copier-coller vôtre lien ici...',
+ 'Copy and paste your link here...' => 'Copier-coller votre lien ici…',
'URL' => 'URL',
'Internal links' => 'Liens internes',
'Assign to me' => 'Assigner à moi',
@@ -954,48 +954,48 @@ return array(
'Create from another project' => 'Créer depuis un autre projet',
'open' => 'ouvert',
'closed' => 'fermé',
- 'Priority:' => 'Priorité :',
- 'Reference:' => 'Référence :',
- 'Complexity:' => 'Complexité :',
- 'Swimlane:' => 'Swimlane :',
- 'Column:' => 'Colonne :',
- 'Position:' => 'Position :',
- 'Creator:' => 'Créateur :',
- 'Time estimated:' => 'Temps estimé :',
+ 'Priority:' => 'Priorité :',
+ 'Reference:' => 'Référence :',
+ 'Complexity:' => 'Complexité :',
+ 'Swimlane:' => 'Swimlane :',
+ 'Column:' => 'Colonne :',
+ 'Position:' => 'Position :',
+ 'Creator:' => 'Créateur :',
+ 'Time estimated:' => 'Temps estimé :',
'%s hours' => '%s heures',
- 'Time spent:' => 'Temps passé :',
- 'Created:' => 'Créé le :',
- 'Modified:' => 'Modifié le :',
- 'Completed:' => 'Terminé le :',
- 'Started:' => 'Commençé le :',
- 'Moved:' => 'Déplacé le : ',
+ 'Time spent:' => 'Temps passé :',
+ 'Created:' => 'Créé le :',
+ 'Modified:' => 'Modifié le :',
+ 'Completed:' => 'Terminé le :',
+ 'Started:' => 'Commencé le :',
+ 'Moved:' => 'Déplacé le : ',
'Task #%d' => 'Tâche n°%d',
'Time format' => 'Format de l\'heure',
- 'Start date: ' => 'Date de début : ',
- 'End date: ' => 'Date de fin : ',
- 'New due date: ' => 'Nouvelle date d\'échéance : ',
- 'Start date changed: ' => 'Date de début modifiée : ',
+ 'Start date: ' => 'Date de début : ',
+ 'End date: ' => 'Date de fin : ',
+ 'New due date: ' => 'Nouvelle date d\'échéance : ',
+ 'Start date changed: ' => 'Date de début modifiée : ',
'Disable private projects' => 'Désactiver les projets privés',
- 'Do you really want to remove this custom filter: "%s"?' => 'Voulez-vous vraiment supprimer ce filtre personnalisé : « %s » ?',
+ 'Do you really want to remove this custom filter: "%s"?' => 'Voulez-vous vraiment supprimer ce filtre personnalisé : « %s » ?',
'Remove a custom filter' => 'Supprimer un filtre personnalisé',
'User activated successfully.' => 'Utilisateur activé avec succès.',
'Unable to enable this user.' => 'Impossible d\'activer cet utilisateur.',
'User disabled successfully.' => 'Utilisateur désactivé avec succès.',
'Unable to disable this user.' => 'Impossible de désactiver cet utilisateur.',
- 'All files have been uploaded successfully.' => 'Tous les fichiers ont été uploadés avec succès.',
- 'The maximum allowed file size is %sB.' => 'La taille maximale autorisée pour les fichiers est de %so.',
+ 'All files have been uploaded successfully.' => 'Tous les fichiers ont été envoyés avec succès.',
+ 'The maximum allowed file size is %sB.' => 'La taille maximale autorisée pour les fichiers est de %s o.',
'Drag and drop your files here' => 'Glissez-déposez vos fichiers ici',
'choose files' => 'choisissez des fichiers',
'View profile' => 'Voir le profil',
'Two Factor' => 'Deux-Facteurs',
'Disable user' => 'Désactiver l\'utilisateur',
- 'Do you really want to disable this user: "%s"?' => 'Voulez-vous vraiment désactiver cet utilisateur : « %s » ?',
+ 'Do you really want to disable this user: "%s"?' => 'Voulez-vous vraiment désactiver cet utilisateur : « %s » ?',
'Enable user' => 'Activer un utilisateur',
- 'Do you really want to enable this user: "%s"?' => 'Voulez-vous vraiment activer cet utilisateur : « %s » ?',
+ 'Do you really want to enable this user: "%s"?' => 'Voulez-vous vraiment activer cet utilisateur : « %s » ?',
'Download' => 'Télécharger',
- 'Uploaded: %s' => 'Uploadé : %s',
- 'Size: %s' => 'Taille : %s',
- 'Uploaded by %s' => 'Uploadé par %s',
+ 'Uploaded: %s' => 'Envoyé : %s',
+ 'Size: %s' => 'Taille : %s',
+ 'Uploaded by %s' => 'Envoyé par %s',
'Filename' => 'Nom du fichier',
'Size' => 'Taille',
'Column created successfully.' => 'La colonne a été créée avec succès.',
@@ -1012,7 +1012,7 @@ return array(
'Change subtask position' => 'Changer la position de la sous-tâche',
'This value must be greater than %d' => 'Cette valeur doit être plus grande que %d',
'Another swimlane with the same name exists in the project' => 'Une autre swimlane existe avec le même nom dans le projet',
- 'Example: http://example.kanboard.net/ (used to generate absolute URLs)' => 'Exemple : http://exemple.kanboard.net/ (utilisé pour générer les URLs absolues)',
+ 'Example: http://example.kanboard.net/ (used to generate absolute URLs)' => 'Exemple : http://exemple.kanboard.net/ (utilisé pour générer les URL absolues)',
'Actions duplicated successfully.' => 'Actions dupliquées avec succès.',
'Unable to duplicate actions.' => 'Impossible de dupliquer les actions.',
'Add a new action' => 'Ajouter une nouvelle action',
@@ -1022,11 +1022,11 @@ return array(
'There is no available project.' => 'Il n\'y a pas de projet disponible.',
'Local File' => 'Fichier local',
'Configuration' => 'Configuration',
- 'PHP version:' => 'Version de PHP :',
- 'PHP SAPI:' => 'PHP SAPI :',
- 'OS version:' => 'Version du système d\'exploitation :',
- 'Database version:' => 'Version de la base de donnée :',
- 'Browser:' => 'Navigateur web :',
+ 'PHP version:' => 'Version de PHP :',
+ 'PHP SAPI:' => 'PHP SAPI :',
+ 'OS version:' => 'Version du système d\'exploitation :',
+ 'Database version:' => 'Version de la base de donnée :',
+ 'Browser:' => 'Navigateur web :',
'Task view' => 'Vue détaillée d\'une tâche',
'Edit task' => 'Modifier la tâche',
'Edit description' => 'Modifier la description',
@@ -1037,24 +1037,24 @@ return array(
'Avatar' => 'Avatar',
'Upload my avatar image' => 'Uploader mon image d\'avatar',
'Remove my image' => 'Supprimer mon image',
- 'The OAuth2 state parameter is invalid' => 'Le paramètre "state" de OAuth2 est invalide',
+ 'The OAuth2 state parameter is invalid' => 'Le paramètre « state » de OAuth2 est invalide',
'User not found.' => 'Utilisateur introuvable.',
'Search in activity stream' => 'Chercher dans le flux d\'activité',
'My activities' => 'Mes activités',
'Activity until yesterday' => 'Activités jusqu\'à hier',
'Activity until today' => 'Activités jusqu\'à aujourd\'hui',
- 'Search by creator: ' => 'Rechercher par créateur : ',
- 'Search by creation date: ' => 'Rechercher par date de création : ',
- 'Search by task status: ' => 'Rechercher par le statut des tâches : ',
- 'Search by task title: ' => 'Rechercher par le titre des tâches : ',
+ 'Search by creator: ' => 'Rechercher par créateur : ',
+ 'Search by creation date: ' => 'Rechercher par date de création : ',
+ 'Search by task status: ' => 'Rechercher par le statut des tâches : ',
+ 'Search by task title: ' => 'Rechercher par le titre des tâches : ',
'Activity stream search' => 'Recherche dans le flux d\'activité',
- 'Projects where "%s" is manager' => 'Projets où « %s » est gestionnaire',
- 'Projects where "%s" is member' => 'Projets où « %s » est membre du projet',
- 'Open tasks assigned to "%s"' => 'Tâches ouvertes assignées à « %s »',
- 'Closed tasks assigned to "%s"' => 'Tâches fermées assignées à « %s »',
+ 'Projects where "%s" is manager' => 'Projets où « %s » est gestionnaire',
+ 'Projects where "%s" is member' => 'Projets où « %s » est membre du projet',
+ 'Open tasks assigned to "%s"' => 'Tâches ouvertes assignées à « %s »',
+ 'Closed tasks assigned to "%s"' => 'Tâches fermées assignées à « %s »',
'Assign automatically a color based on a priority' => 'Assigner automatiquement une couleur par rapport à une priorité',
- 'Overdue tasks for the project(s) "%s"' => 'Tâches en retard pour le projet(s) « %s »',
- 'Upload files' => 'Uploader les fichiers',
+ 'Overdue tasks for the project(s) "%s"' => 'Tâches en retard pour le projet(s) « %s »',
+ 'Upload files' => 'Envoyer les fichiers',
'Installed Plugins' => 'Extensions installées',
'Plugin Directory' => 'Liste des extensions',
'Plugin installed successfully.' => 'Extension installée avec succès.',
@@ -1070,32 +1070,32 @@ return array(
'Unable to open plugin archive.' => 'Impossible d\'ouvrir l\'archive du plugin.',
'There is no file in the plugin archive.' => 'Il n\'y a aucun fichier dans l\'archive du plugin.',
'Create tasks in bulk' => 'Créer plusieurs tâches en même temps',
- 'Your Kanboard instance is not configured to install plugins from the user interface.' => 'Votre instance de Kanboard n\'est pas configurée pour installer des extension depuis l\'interface utilisateur.',
+ 'Your Kanboard instance is not configured to install plugins from the user interface.' => 'Votre instance de Kanboard n\'est pas configurée pour installer des extensions depuis l\'interface utilisateur.',
'There is no plugin available.' => 'Il n\'a aucune extension disponible.',
'Install' => 'Installer',
'Update' => 'Mettre à jour',
'Up to date' => 'À jour',
'Not available' => 'Non disponible',
'Remove plugin' => 'Supprimer l\'extension',
- 'Do you really want to remove this plugin: "%s"?' => 'Voulez-vous vraiment supprimer cette extension : « %s » ?',
+ 'Do you really want to remove this plugin: "%s"?' => 'Voulez-vous vraiment supprimer cette extension : « %s » ?',
'Uninstall' => 'Désinstaller',
'Listing' => 'Listing',
'Metadata' => 'Metadonnées',
'Manage projects' => 'Gérer les projets',
'Convert to task' => 'Convertir en tâche',
'Convert sub-task to task' => 'Convertir une sous-tâche en tâche',
- 'Do you really want to convert this sub-task to a task?' => 'Voulez-vous vraiment convertir cette sous-tâche en tâche ?',
+ 'Do you really want to convert this sub-task to a task?' => 'Voulez-vous vraiment convertir cette sous-tâche en tâche ?',
'My task title' => 'Mon titre pour la tâche',
'Enter one task by line.' => 'Entrez une tâche par ligne.',
- 'Number of failed login:' => 'Nombre de connexion échouées :',
- 'Account locked until:' => 'Compte bloqué jusqu\'au :',
+ 'Number of failed login:' => 'Nombre de connexions échouées :',
+ 'Account locked until:' => 'Compte bloqué jusqu\'au :',
'Email settings' => 'Paramètres des emails',
'Email sender address' => 'Adresse email de l\'expéditeur',
'Email transport' => 'Transport des emails',
'Webhook token' => 'Jeton de sécurité des webhooks',
'Project tags management' => 'Gestion des libellés pour le projet',
'Tag created successfully.' => 'Libellé créé avec succès.',
- 'Unable to create this tag.' => 'Imposssible de créer ce libellé.',
+ 'Unable to create this tag.' => 'Impossible de créer ce libellé.',
'Tag updated successfully.' => 'Libellé mis à jour avec succès.',
'Unable to update this tag.' => 'Impossible de mettre à jour ce libellé.',
'Tag removed successfully.' => 'Libellé supprimé avec succès.',
@@ -1109,7 +1109,7 @@ return array(
'There is no specific tag for this project at the moment.' => 'Il n\'y a aucun libellé spécifique pour ce projet pour le moment.',
'Tag' => 'Libellé',
'Remove a tag' => 'Supprimer un libellé',
- 'Do you really want to remove this tag: "%s"?' => 'Voulez-vous vraiment supprimer ce libellé : « %s » ?',
+ 'Do you really want to remove this tag: "%s"?' => 'Voulez-vous vraiment supprimer ce libellé : « %s » ?',
'Global tags' => 'Libellés globaux',
'There is no global tag at the moment.' => 'Il n\'y a aucun libellé global pour le moment.',
'This field cannot be empty' => 'Ce champ ne peut être vide',
@@ -1137,21 +1137,21 @@ return array(
'Subtasks overview for %s' => 'Aperçu des sous-tâches pour %s',
'Projects overview for %s' => 'Aperçu des projets pour %s',
'Activity stream for %s' => 'Flux d\'activité pour %s',
- 'Assign a color when the task is moved to a specific swimlane' => 'Assigner une couleur lorsque une tâche est déplaçée dans une swimlane spécifique',
- 'Assign a priority when the task is moved to a specific swimlane' => 'Assigner une priorité lorsque une tâche est déplaçée dans une swimlane spécifique',
+ 'Assign a color when the task is moved to a specific swimlane' => 'Assigner une couleur lorsque une tâche est déplacée dans une swimlane spécifique',
+ 'Assign a priority when the task is moved to a specific swimlane' => 'Assigner une priorité lorsque une tâche est déplacée dans une swimlane spécifique',
'User unlocked successfully.' => 'Utilisateur débloqué avec succès.',
'Unable to unlock the user.' => 'Impossible de débloquer cet utilisateur.',
- 'Move a task to another swimlane' => 'Déplaçer une tâche dans une autre swimlane',
+ 'Move a task to another swimlane' => 'Déplacer une tâche dans une autre swimlane',
'Creator Name' => 'Nom du créateur',
'Time spent and estimated' => 'Temps passé et estimé',
'Move position' => 'Changer la position',
- 'Move task to another position on the board' => 'Déplaçer la tâche vers une autre position sur le tableau',
+ 'Move task to another position on the board' => 'Déplacer la tâche vers une autre position sur le tableau',
'Insert before this task' => 'Insérer avant cette tâche',
'Insert after this task' => 'Insérer après cette tâche',
'Unlock this user' => 'Débloquer cet utilisateur',
'Custom Project Roles' => 'Rôles personnalisés du projet',
'Add a new custom role' => 'Ajouter un nouveau rôle personnalisé',
- 'Restrictions for the role "%s"' => 'Restrictions pour le rôle « %s »',
+ 'Restrictions for the role "%s"' => 'Restrictions pour le rôle « %s »',
'Add a new project restriction' => 'Ajouter une nouvelle restriction pour ce projet',
'Add a new drag and drop restriction' => 'Ajouter une nouvelle restriction pour le glisser-déposer',
'Add a new column restriction' => 'Ajouter une nouvelle restriction basé sur les colonnes',
@@ -1181,41 +1181,41 @@ return array(
'Closing or opening a task is blocked for this column' => 'Fermer ou ouvrir une tâche est interdit pour cette colonne',
'Task creation is not permitted' => 'La création de tâche n\'est pas permise',
'Closing or opening a task is not permitted' => 'Fermer ou ouvrir une tâche n\'est pas autorisé',
- 'New drag and drop restriction for the role "%s"' => 'Nouvelle restriction de glisser-déposer pour le rôle « %s »',
- 'People belonging to this role will be able to move tasks only between the source and the destination column.' => 'Les gens qui font partis de ce rôle pourrons seulement déplaçer des tâches entre la colonne source et de destination.',
+ 'New drag and drop restriction for the role "%s"' => 'Nouvelle restriction de glisser-déposer pour le rôle « %s »',
+ 'People belonging to this role will be able to move tasks only between the source and the destination column.' => 'Les gens qui font partie de ce rôle pourront seulement déplacer des tâches entre la colonne source et de destination.',
'Remove a column restriction' => 'Supprimer une restriction de colonne',
- 'Do you really want to remove this column restriction: "%s" to "%s"?' => 'Voulez-vous vraiment supprimer cette restriction de colonne : « %s » vers « %s » ?',
- 'New column restriction for the role "%s"' => 'Nouvelle restriction de colonne pour le rôle « %s »',
+ 'Do you really want to remove this column restriction: "%s" to "%s"?' => 'Voulez-vous vraiment supprimer cette restriction de colonne : « %s » vers « %s » ?',
+ 'New column restriction for the role "%s"' => 'Nouvelle restriction de colonne pour le rôle « %s »',
'Rule' => 'Règle',
- 'Do you really want to remove this column restriction?' => 'Voulez-vous vraiment supprimer cette restriction de colonne ?',
+ 'Do you really want to remove this column restriction?' => 'Voulez-vous vraiment supprimer cette restriction de colonne ?',
'Custom roles' => 'Rôles personnalisés',
'New custom project role' => 'Nouveau rôle de projet personnalisé',
'Edit custom project role' => 'Modifier un rôle de projet personnalisé',
'Remove a custom role' => 'Supprimer un rôle personnalisé',
- 'Do you really want to remove this custom role: "%s"? All people assigned to this role will become project member.' => 'Voulez-vous vraiment supprimer ce rôle personnalisé « %s » ? Tous les gens assignés à ce rôle deviendrons membre du projet.',
+ 'Do you really want to remove this custom role: "%s"? All people assigned to this role will become project member.' => 'Voulez-vous vraiment supprimer ce rôle personnalisé « %s » ? Tous les gens assignés à ce rôle deviendront membre du projet.',
'There is no custom role for this project.' => 'Il n\'y a aucun rôle personnalisé pour ce projet.',
- 'New project restriction for the role "%s"' => 'Nouvelle restriction de projet pour le rôle « %s »',
+ 'New project restriction for the role "%s"' => 'Nouvelle restriction de projet pour le rôle « %s »',
'Restriction' => 'Restriction',
- 'Remove a project restriction' => 'Supprimer une restriction de project',
- 'Do you really want to remove this project restriction: "%s"?' => 'Voulez-vous vraiment supprimer cette restriction de projet : « %s » ?',
+ 'Remove a project restriction' => 'Supprimer une restriction de projet',
+ 'Do you really want to remove this project restriction: "%s"?' => 'Voulez-vous vraiment supprimer cette restriction de projet : « %s » ?',
'Duplicate to multiple projects' => 'Dupliquer vers plusieurs projets',
'This field is required' => 'Ce champ est requis',
- 'Moving a task is not permitted' => 'Déplaçer une tâche n\'est pas autorisé',
+ 'Moving a task is not permitted' => 'Déplacer une tâche n\'est pas autorisé',
'This value must be in the range %d to %d' => 'Cette valeur doit être définie entre %d et %d',
'You are not allowed to move this task.' => 'Vous n\'êtes pas autorisé à déplacer cette tâche.',
'API User Access' => 'Accès utilisateur de l\'API',
'Preview' => 'Aperçu',
'Write' => 'Écrire',
'Write your text in Markdown' => 'Écrivez votre texte en Markdown',
- 'New External Task: %s' => 'Nouvelle tâche externe : %s',
+ 'New External Task: %s' => 'Nouvelle tâche externe : %s',
'No personal API access token registered.' => 'Aucun jeton d\'accès personnel à l\'API enregistré.',
- 'Your personal API access token is "%s"' => 'Votre jeton d\'accès personnel à l\'API est « %s »',
+ 'Your personal API access token is "%s"' => 'Votre jeton d\'accès personnel à l\'API est « %s »',
'Remove your token' => 'Supprimer votre jeton',
'Generate a new token' => 'Générer un nouveau jeton',
'Showing %d-%d of %d' => 'Éléments %d à %d sur %d',
'Outgoing Emails' => 'Emails sortants',
'Add or change currency rate' => 'Ajouter ou changer le taux de change',
- 'Reference currency: %s' => 'Monnaie de référence : %s',
+ 'Reference currency: %s' => 'Monnaie de référence : %s',
'Add custom filters' => 'Ajouter un filtre personnalisé',
'Export' => 'Exporter',
'Add link label' => 'Ajouter un libellé de lien',
@@ -1234,8 +1234,8 @@ return array(
'Unable to create this user.' => 'Impossible de créer cet utilisateur.',
'Kanboard Invitation' => 'Invitation pour Kanboard',
'Visible on dashboard' => 'Visible sur le tableau de bord',
- 'Created at:' => 'Créé le :',
- 'Updated at:' => 'Mis à jour le :',
+ 'Created at:' => 'Créé le :',
+ 'Updated at:' => 'Mis à jour le :',
'There is no custom filter.' => 'Il n\'y a aucun filtre personnalisé.',
'New User' => 'Nouvel utilisateur',
'Authentication' => 'Authentification',
@@ -1254,7 +1254,7 @@ return array(
'This username is already taken' => 'Ce nom d\'utilisateur est déjà pris',
'A link to reset your password has been sent by email.' => 'Un lien pour réinitialiser votre mot de passe a été envoyé par email.',
'Your profile must have a valid email address.' => 'Votre profil doit avoir une adresse e-mail valide.',
- 'Unfortunately, we are unable to reset your password. Did you entered a valid username? Do you have an email address in your profile?' => 'Malheureusement, nous ne pouvons pas réinitialiser votre mot de passe. Avez-vous saisi un nom d\'utilisateur valide ? Avez-vous une adresse e-mail dans votre profil ?',
+ 'Unfortunately, we are unable to reset your password. Did you entered a valid username? Do you have an email address in your profile?' => 'Malheureusement, nous ne pouvons pas réinitialiser votre mot de passe. Avez-vous saisi un nom d\'utilisateur valide ? Avez-vous une adresse e-mail dans votre profil ?',
'TRL - Turkish Lira' => 'TRL - Livre turque',
'The project email is optional and could be used by several plugins.' => 'L\'adresse email d\'un projet est optionnel et pourrait être utilisé par plusieurs extensions.',
'The project email must be unique across all projects' => 'L\'adresse email d\'un projet doit être unique pour tous les projets',
@@ -1262,9 +1262,9 @@ return array(
'Close this project' => 'Fermer ce projet',
'Open this project' => 'Ouvrir ce projet',
'Close a project' => 'Fermer un projet',
- 'Do you really want to close this project: "%s"?' => 'Voulez-vous vraiment fermer ce projet : « %s » ?',
- 'Reopen a project' => 'Réouvrir un projet',
- 'Do you really want to reopen this project: "%s"?' => 'Voulez-vous vraiment réouvrir ce projet : « %s » ?',
+ 'Do you really want to close this project: "%s"?' => 'Voulez-vous vraiment fermer ce projet : « %s » ?',
+ 'Reopen a project' => 'Rouvrir un projet',
+ 'Do you really want to reopen this project: "%s"?' => 'Voulez-vous vraiment rouvrir ce projet : « %s » ?',
'This project is open' => 'Ce projet est actif',
'This project is closed' => 'Ce projet est fermé',
'Unable to upload files, check the permissions of your data folder.' => 'Impossible de transférer le ou les fichiers, vérifiez les permissions du répertoire de données.',
@@ -1279,12 +1279,12 @@ return array(
'Create and send a comment by email' => 'Créer et envoyer un commentaire par email',
'Subject' => 'Sujet',
'Upload the database' => 'Téléverser la base de données',
- 'You could upload the previously downloaded Sqlite database (Gzip format).' => 'Vous pouvez téléverser la base de données Sqlite précédemment téléchargée au format Gzip.',
+ 'You could upload the previously downloaded Sqlite database (Gzip format).' => 'Vous pouvez téléverser la base de données SQLite précédemment téléchargée au format Gzip.',
'Database file' => 'Fichier de la base de données',
'Upload' => 'Téléverser',
'Your project must have at least one active swimlane.' => 'Votre projet doit avoir au moins une swimlane active.',
- 'Project: %s' => 'Projet : %s',
- 'Automatic action not found: "%s"' => 'Action automatique introuvable : « %s »',
+ 'Project: %s' => 'Projet : %s',
+ 'Automatic action not found: "%s"' => 'Action automatique introuvable : « %s »',
'%d projects' => '%d projets',
'%d project' => '%d projet',
'There is no project.' => 'Il n\'y a pas de projet.',
@@ -1313,13 +1313,13 @@ return array(
'API Access' => 'Accès à l\'API',
'No users found.' => 'Aucun utilisateur trouvé.',
'User ID' => 'ID de l\'utilisateur',
- 'Notifications are activated' => 'Notifications activés',
- 'Notifications are disabled' => 'Notifications désactivés',
+ 'Notifications are activated' => 'Notifications activées',
+ 'Notifications are disabled' => 'Notifications désactivées',
'User disabled' => 'Utilisateur désactivé',
'%d notifications' => '%d notifications',
'%d notification' => '%d notification',
'There is no external integration installed.' => 'Il n\'y a aucune intégration externe installée.',
- 'You are not allowed to update tasks assigned to someone else.' => 'Vous n\'êtes pas autorisé à mettre à jour une tâche assigné à quelqu\'un d\'autre.',
+ 'You are not allowed to update tasks assigned to someone else.' => 'Vous n\'êtes pas autorisé à mettre à jour une tâche assignée à quelqu\'un d\'autre.',
'You are not allowed to change the assignee.' => 'Vous n\'êtes pas autorisé à changer l\'assigné',
'Task suppression is not permitted' => 'La suppression des tâches n\'est pas autorisée',
'Changing assignee is not permitted' => 'Changement d\'assigné non autorisé',
@@ -1335,9 +1335,10 @@ return array(
'DKK - Danish Krona' => 'DKK - Couronne danoise',
'Remove user from group' => 'Supprimer cet utilisateur du groupe',
'Assign the task to its creator' => 'Assigner une tâche à son créateur',
- 'This task was sent by email to "%s" with subject "%s".' => 'Cette tâche a été envoyée par courrier électronique à « %s » avec le sujet « %s ».',
+ 'This task was sent by email to "%s" with subject "%s".' => 'Cette tâche a été envoyée par courrier électronique à « %s » avec le sujet « %s ».',
'Predefined Email Subjects' => 'Sujets de courrier électronique prédéfinis',
'Write one subject by line.' => 'Écrivez un sujet par ligne.',
'Create another link' => 'Créer un autre lien',
'BRL - Brazilian Real' => 'BRL - Real brésilien',
+ 'Add a new Kanboard task' => 'Ajouter une nouvelle tâche Kanboard',
);
diff --git a/app/Locale/hr_HR/translations.php b/app/Locale/hr_HR/translations.php
index 0d690b61..f0cf0ae1 100644
--- a/app/Locale/hr_HR/translations.php
+++ b/app/Locale/hr_HR/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/hu_HU/translations.php b/app/Locale/hu_HU/translations.php
index 5f17805b..7e4809f5 100644
--- a/app/Locale/hu_HU/translations.php
+++ b/app/Locale/hu_HU/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/id_ID/translations.php b/app/Locale/id_ID/translations.php
index 653bcf9d..5a3ea6a1 100644
--- a/app/Locale/id_ID/translations.php
+++ b/app/Locale/id_ID/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/it_IT/translations.php b/app/Locale/it_IT/translations.php
index 45a58944..8252c3d0 100644
--- a/app/Locale/it_IT/translations.php
+++ b/app/Locale/it_IT/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/ja_JP/translations.php b/app/Locale/ja_JP/translations.php
index c2651842..134544a6 100644
--- a/app/Locale/ja_JP/translations.php
+++ b/app/Locale/ja_JP/translations.php
@@ -1299,6 +1299,48 @@ return array(
'Assign automatically a color when due date is expired' => '期限が切れたら自動的に色を割当て',
'Total score in this column across all swimlanes' => 'このカラムのすべてのスイムレーンで合計得点',
// 'HRK - Kuna' => '',
+ // 'ARS - Argentine Peso' => '',
+ // 'COP - Colombian Peso' => '',
+ // '%d groups' => '',
+ // '%d group' => '',
+ // 'Group ID' => '',
+ // 'External ID' => '',
+ // '%d users' => '',
+ // '%d user' => '',
+ // 'Hide subtasks' => '',
+ // 'Show subtasks' => '',
+ // 'Authentication Parameters' => '',
+ // 'API Access' => '',
+ // 'No users found.' => '',
+ // 'User ID' => '',
+ // 'Notifications are activated' => '',
+ // 'Notifications are disabled' => '',
+ // 'User disabled' => '',
+ // '%d notifications' => '',
+ // '%d notification' => '',
+ // 'There is no external integration installed.' => '',
+ // 'You are not allowed to update tasks assigned to someone else.' => '',
+ // 'You are not allowed to change the assignee.' => '',
+ // 'Task suppression is not permitted' => '',
+ // 'Changing assignee is not permitted' => '',
+ // 'Update only assigned tasks is permitted' => '',
+ // 'Only for tasks assigned to the current user' => '',
+ // 'My projects' => '',
+ // 'Your are not member of any project.' => '',
+ // 'My subtasks' => '',
+ // '%d subtasks' => '',
+ // '%d subtask' => '',
+ // 'Only moving task between those columns is permitted for tasks assigned to the current user' => '',
+ // '[DUPLICATE]' => '',
+ // 'DKK - Danish Krona' => '',
+ // 'Remove user from group' => '',
+ // 'Assign the task to its creator' => '',
+ // 'This task was sent by email to "%s" with subject "%s".' => '',
+ // 'Predefined Email Subjects' => '',
+ // 'Write one subject by line.' => '',
+ // 'Create another link' => '',
+ // 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
'ARS - Argentine Peso' => 'ARS - アルゼンチンペソ',
'COP - Colombian Peso' => 'COP - コロンビアペソ',
'%d groups' => '%d個のグループ',
diff --git a/app/Locale/ko_KR/translations.php b/app/Locale/ko_KR/translations.php
index 4f164e36..c85e3469 100644
--- a/app/Locale/ko_KR/translations.php
+++ b/app/Locale/ko_KR/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/my_MY/translations.php b/app/Locale/my_MY/translations.php
index 95c09334..86e92360 100644
--- a/app/Locale/my_MY/translations.php
+++ b/app/Locale/my_MY/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/nb_NO/translations.php b/app/Locale/nb_NO/translations.php
index 8f5482a3..56b58eec 100644
--- a/app/Locale/nb_NO/translations.php
+++ b/app/Locale/nb_NO/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/nl_NL/translations.php b/app/Locale/nl_NL/translations.php
index a8de3aa3..cb588a66 100644
--- a/app/Locale/nl_NL/translations.php
+++ b/app/Locale/nl_NL/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/pl_PL/translations.php b/app/Locale/pl_PL/translations.php
index 58cfb42e..662bcd96 100644
--- a/app/Locale/pl_PL/translations.php
+++ b/app/Locale/pl_PL/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/pt_BR/translations.php b/app/Locale/pt_BR/translations.php
index cf46cf9a..38e9a072 100644
--- a/app/Locale/pt_BR/translations.php
+++ b/app/Locale/pt_BR/translations.php
@@ -1340,4 +1340,5 @@ return array(
'Write one subject by line.' => 'Escreva um assunto por linha.',
'Create another link' => 'Criar outro link',
'BRL - Brazilian Real' => 'BRL - Real Brasileiro',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/pt_PT/translations.php b/app/Locale/pt_PT/translations.php
index ea6eef98..d0cf5d70 100644
--- a/app/Locale/pt_PT/translations.php
+++ b/app/Locale/pt_PT/translations.php
@@ -521,19 +521,19 @@ return array(
'Compact/wide view' => 'Alternar entre a vista compacta e ampliada',
'Currency' => 'Moeda',
'Private project' => 'Projeto privado',
- 'AUD - Australian Dollar' => 'AUD - Dólar australiano',
- 'CAD - Canadian Dollar' => 'CAD - Dólar canadense',
+ 'AUD - Australian Dollar' => 'AUD - Dólar Australiano',
+ 'CAD - Canadian Dollar' => 'CAD - Dólar Canadense',
'CHF - Swiss Francs' => 'CHF - Francos Suíços',
'Custom Stylesheet' => 'Folha de estilos personalizada',
'download' => 'transferir',
'EUR - Euro' => 'EUR - Euro',
'GBP - British Pound' => 'GBP - Libra Esterlina',
- 'INR - Indian Rupee' => 'INR - Rúpia indiana',
- 'JPY - Japanese Yen' => 'JPY - Iene japonês',
+ 'INR - Indian Rupee' => 'INR - Rúpia Indiana',
+ 'JPY - Japanese Yen' => 'JPY - Iene Japonês',
'NZD - New Zealand Dollar' => 'NZD - Dólar Neozelandês',
- 'RSD - Serbian dinar' => 'RSD - Dinar sérvio',
- // 'CNY - Chinese Yuan' => '',
- 'USD - US Dollar' => 'USD - Dólar norte-americano',
+ 'RSD - Serbian dinar' => 'RSD - Dinar Sérvio',
+ 'CNY - Chinese Yuan' => 'CNY - Yuan Chinês',
+ 'USD - US Dollar' => 'USD - Dólar Norte-americano',
'Destination column' => 'Coluna de destino',
'Move the task to another column when assigned to a user' => 'Mover a tarefa para uma outra coluna quando esta está atribuída a um utilizador',
'Move the task to another column when assignee is cleared' => 'Mover a tarefa para uma outra coluna quando esta não está atribuída',
@@ -570,7 +570,7 @@ return array(
'Add a screenshot' => 'Adicionar uma Screenshot',
'Take a screenshot and press CTRL+V or ⌘+V to paste here.' => 'Tire um screenshot e pressione CTRL + V ou ⌘ + V para colar aqui.',
'Screenshot uploaded successfully.' => 'Screenshot enviada com sucesso.',
- 'SEK - Swedish Krona' => 'SEK - Coroa sueca',
+ 'SEK - Swedish Krona' => 'SEK - Coroa Sueca',
'Identifier' => 'Identificador',
'Disable two factor authentication' => 'Desactivar autenticação com dois factores',
'Do you really want to disable the two factor authentication for this user: "%s"?' => 'Tem a certeza que quer desactivar a autenticação com dois factores para esse utilizador: "%s"?',
@@ -1338,6 +1338,7 @@ return array(
'This task was sent by email to "%s" with subject "%s".' => 'Esta tarefa foi enviada por email para "%s" com o assunto "%s".',
'Predefined Email Subjects' => 'Assuntos de email predefinidos',
'Write one subject by line.' => 'Escreva um assunto por linha.',
- // 'Create another link' => '',
- // 'BRL - Brazilian Real' => '',
+ 'Create another link' => 'Criar outro link',
+ 'BRL - Brazilian Real' => 'BRL - Real Brasileiro',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/ru_RU/translations.php b/app/Locale/ru_RU/translations.php
index 11571df7..90bac3f6 100644
--- a/app/Locale/ru_RU/translations.php
+++ b/app/Locale/ru_RU/translations.php
@@ -1340,4 +1340,5 @@ return array(
'Write one subject by line.' => 'Записываются по одной теме на строку.',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/sr_Latn_RS/translations.php b/app/Locale/sr_Latn_RS/translations.php
index 97062ec6..aa4d29e7 100644
--- a/app/Locale/sr_Latn_RS/translations.php
+++ b/app/Locale/sr_Latn_RS/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/sv_SE/translations.php b/app/Locale/sv_SE/translations.php
index 7bc73b44..882ccce5 100644
--- a/app/Locale/sv_SE/translations.php
+++ b/app/Locale/sv_SE/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/th_TH/translations.php b/app/Locale/th_TH/translations.php
index 871c21ba..d5f49540 100644
--- a/app/Locale/th_TH/translations.php
+++ b/app/Locale/th_TH/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/tr_TR/translations.php b/app/Locale/tr_TR/translations.php
index 878188ca..efcbbbd7 100644
--- a/app/Locale/tr_TR/translations.php
+++ b/app/Locale/tr_TR/translations.php
@@ -1,8 +1,8 @@
<?php
return array(
- // 'number.decimals_separator' => '',
- // 'number.thousands_separator' => '',
+ 'number.decimals_separator' => '.',
+ 'number.thousands_separator' => ',',
'None' => 'Hiçbiri',
'Edit' => 'Düzenle',
'Remove' => 'Sil',
@@ -71,8 +71,8 @@ return array(
'Settings' => 'Ayarlar',
'Application settings' => 'Uygulama ayarları',
'Language' => 'Dil',
- // 'Webhook token:' => '',
- 'API token:' => 'API belirteci:',
+ 'Webhook token:' => 'Web kancası anahtarı:',
+ 'API token:' => 'API anahtarı:',
'Database size:' => 'Veritabanı boyutu :',
'Download the database' => 'Veritabanını indir',
'Optimize the database' => 'Veritabanını optimize et',
@@ -373,7 +373,7 @@ return array(
'Database driver:' => 'Veritabanı sürücüsü:',
'Board settings' => 'Pano ayarları',
'Webhook settings' => 'Webhook ayarları',
- 'Reset token' => 'Belirteci sıfırla',
+ 'Reset token' => 'Anahtarı sıfırla',
'API endpoint:' => 'API bitiş noktası:',
'Refresh interval for private board' => 'Özel panolar için yenileme sıklığı',
'Refresh interval for public board' => 'Dışa açık panolar için yenileme sıklığı',
@@ -382,7 +382,7 @@ return array(
'Frequency in second (60 seconds by default)' => 'Saniye olarak frekans (varsayılan 60 saniye)',
'Frequency in second (0 to disable this feature, 10 seconds by default)' => 'Saniye olarak frekans (Bu özelliği iptal etmek için 0, varsayılan değer 10 saniye)',
'Application URL' => 'Uygulama URL',
- 'Token regenerated.' => 'Beliteç yeniden oluşturuldu.',
+ 'Token regenerated.' => 'Anahtar yeniden oluşturuldu.',
'Date format' => 'Tarih formatı',
'ISO format is always accepted, example: "%s" and "%s"' => 'ISO formatı her zaman kabul edilir, örneğin: "%s" ve "%s"',
'New private project' => 'Yeni özel proje',
@@ -393,11 +393,11 @@ return array(
'There is nothing assigned to you.' => 'Size atanan hiçbir şey yok.',
'My tasks' => 'Görevlerim',
'Activity stream' => 'Güncel olay akışı',
- 'Dashboard' => 'Anasayfa',
+ 'Dashboard' => 'Pano',
'Confirmation' => 'Onay',
'Allow everybody to access to this project' => 'Bu projeye herkesin erişimine izin ver',
'Everybody have access to this project.' => 'Bu projeye herkesin erişimi var.',
- 'Webhooks' => 'Webhooks',
+ 'Webhooks' => 'Web Kancaları',
'API' => 'API',
'Create a comment from an external provider' => 'Dış sağlayıcı ile bir yorum oluştur',
'Project management' => 'Proje yönetimi',
@@ -526,14 +526,14 @@ return array(
'CHF - Swiss Francs' => 'CHF - İsviçre Frangı',
'Custom Stylesheet' => 'Özel Sitil Css',
'download' => 'indir',
- // 'EUR - Euro' => '',
+ 'EUR - Euro' => 'EUR - Euro',
'GBP - British Pound' => 'GBP - İngiliz Paund',
'INR - Indian Rupee' => 'INR - Hint Rupesi',
'JPY - Japanese Yen' => 'JPY - Japon Yeni',
'NZD - New Zealand Dollar' => 'NZD - Yeni Zelanda Doları',
- // 'RSD - Serbian dinar' => '',
- // 'CNY - Chinese Yuan' => '',
- 'USD - US Dollar' => 'USD$ Amerikan Doları',
+ 'RSD - Serbian dinar' => 'Sırp Dinarı',
+ 'CNY - Chinese Yuan' => 'Çin Yuanı',
+ 'USD - US Dollar' => 'USD Amerikan Doları',
'Destination column' => 'Hedef Sütun',
'Move the task to another column when assigned to a user' => 'Bir kullanıcıya atandığında görevi başka bir sütuna taşı',
'Move the task to another column when assignee is cleared' => 'Atanmış kullanıcı kaldırıldığında görevi başka bir sütuna taşı',
@@ -550,7 +550,7 @@ return array(
'Reference currency' => 'Referans kur',
'The currency rate have been added successfully.' => 'Kur başarıyla eklendi',
'Unable to add this currency rate.' => 'Bu kur eklenemedi',
- // 'Webhook URL' => '',
+ 'Webhook URL' => 'Web kancası URL',
'%s removed the assignee of the task %s' => '%s, %s görevinin atanan bilgisini kaldırdı',
'Information' => 'Bilgi',
'Check two factor authentication code' => 'Çift-Kademeli doğrulama kodunu kontrol et',
@@ -910,9 +910,9 @@ return array(
'%d task(s) in the column "%s" and the swimlane "%s" will be closed.' => '"%s" sütunu ve "%s" kulvarındaki %d görev kapatılacak.',
'Close all tasks of this column' => 'Bu sütundaki tüm görevleri kapat',
'No plugin has registered a project notification method. You can still configure individual notifications in your user profile.' => 'Proje bildirimleri için hiçbir plugin kaydedilmedi. Yine de profil sayfanızdan bildirim ayarları yapabilirsiniz.',
- 'My dashboard' => 'Dashboard um',
+ 'My dashboard' => 'Panom',
'My profile' => 'Profilim',
- 'Project owner: ' => 'Proje sahibi',
+ 'Project owner: ' => 'Proje sahibi: ',
'The project identifier is optional and must be alphanumeric, example: MYPROJECT.' => 'Proje kodu opsiyoneldir ve alfanümerik olmalıdır, örneğin: PROJE1',
'Project owner' => 'Proje sahibi',
'Private projects do not have users and groups management.' => '(Kişiye) Özel projelerde kullanıcı ve grup yönetimi yoktur.',
@@ -1012,7 +1012,7 @@ return array(
'Change subtask position' => 'Alt görev sırasını değiştir',
'This value must be greater than %d' => 'Bu değer %d den büyük olmalı',
'Another swimlane with the same name exists in the project' => 'Projede aynı isimli başka bir kulvar var',
- 'Example: http://example.kanboard.net/ (used to generate absolute URLs)' => 'Örneğin: http://ornek.dediteknoloji.com/ (sabit URLler oluşturmak için)',
+ 'Example: http://example.kanboard.net/ (used to generate absolute URLs)' => 'Örneğin: http://ornek.kanboard.net/ (sabit URLler oluşturmak için)',
'Actions duplicated successfully.' => 'İşlemler başarıyla çoklandı.',
'Unable to duplicate actions.' => 'İşlemler çoklanamıyor.',
'Add a new action' => 'Yeni bir işlem ekle',
@@ -1034,7 +1034,7 @@ return array(
'Display list of keyboard shortcuts' => 'Kısayol tuşları listesini göster',
'Menu' => 'Menü',
'Set start date' => 'Başlangıç tarihi belirle',
- // 'Avatar' => '',
+ 'Avatar' => 'Simge',
'Upload my avatar image' => 'Avatar resmimi yükle',
'Remove my image' => 'Resmimi kaldır',
'The OAuth2 state parameter is invalid' => 'OAuth2 durum parametresi geçersiz',
@@ -1055,29 +1055,29 @@ return array(
'Assign automatically a color based on a priority' => 'Önceliğe bağlı olarak bir renk belirle',
'Overdue tasks for the project(s) "%s"' => '%s proje(leri) için süresi geçen görevler',
'Upload files' => 'Dosyaları yükle',
- 'Installed Plugins' => 'Yüklenmiş Pluginler',
- 'Plugin Directory' => 'Plugin Klasörü',
- 'Plugin installed successfully.' => 'Plugin başarıyla kuruldu.',
- 'Plugin updated successfully.' => 'Plugin başarıyla güncellendi.',
- 'Plugin removed successfully.' => 'Plugin başarıyla kaldırıldı.',
+ 'Installed Plugins' => 'Yüklenmiş Eklentiler',
+ 'Plugin Directory' => 'Eklenti Klasörü',
+ 'Plugin installed successfully.' => 'Eklenti başarıyla kuruldu.',
+ 'Plugin updated successfully.' => 'Eklenti başarıyla güncellendi.',
+ 'Plugin removed successfully.' => 'Eklenti başarıyla kaldırıldı.',
'Subtask converted to task successfully.' => 'Alt görev başarıyla göreve dönüştürüldü.',
'Unable to convert the subtask.' => 'Alt görev dönüştürülemedi',
'Unable to extract plugin archive.' => 'Plugin (sıkıştırılmış) dosyası açılamadı.',
- 'Plugin not found.' => 'Plugin bulunamadı',
+ 'Plugin not found.' => 'Eklenti bulunamadı',
'You don\'t have the permission to remove this plugin.' => 'Bu plugin\'i kaldırmak için yetkiniz yok.',
- 'Unable to download plugin archive.' => 'Plugin dosyası indirilemedi.',
- 'Unable to write temporary file for plugin.' => 'Plugin için geçici dosya oluşturulamadı.',
- 'Unable to open plugin archive.' => 'Plugin dosyası açılamadı.',
- 'There is no file in the plugin archive.' => 'Plugin (sıkıştırılmış) dosyasında, dosya bulunmuyor.',
+ 'Unable to download plugin archive.' => 'Eklenti dosyası indirilemedi.',
+ 'Unable to write temporary file for plugin.' => 'Eklenti için geçici dosya oluşturulamadı.',
+ 'Unable to open plugin archive.' => 'Eklenti dosyası açılamadı.',
+ 'There is no file in the plugin archive.' => 'Eklenti (sıkıştırılmış) dosyasında, dosya bulunmuyor.',
'Create tasks in bulk' => 'Toplu olarak görev oluştur',
- 'Your Kanboard instance is not configured to install plugins from the user interface.' => 'Kanbord sisteminiz arayüzden plugin kurulacak şekilde ayarlanmamış.',
- 'There is no plugin available.' => 'Uygun plugin yok.',
+ 'Your Kanboard instance is not configured to install plugins from the user interface.' => 'Kanbord sisteminiz arayüzden eklenti kurulacak şekilde ayarlanmamış.',
+ 'There is no plugin available.' => 'Uygun eklenti yok.',
'Install' => 'Kur',
'Update' => 'Güncelle',
'Up to date' => 'Güncel',
'Not available' => 'Uygun değil',
- 'Remove plugin' => 'Plugini kaldır',
- 'Do you really want to remove this plugin: "%s"?' => '"%s" plugin i gerçekten kaldırmak istiyor musunuz?',
+ 'Remove plugin' => 'Eklentiyi kaldır',
+ 'Do you really want to remove this plugin: "%s"?' => '"%s" eklentiyi gerçekten kaldırmak istiyor musunuz?',
'Uninstall' => 'Kaldır',
'Listing' => 'Listeliyor',
'Metadata' => 'Meta veri',
@@ -1092,7 +1092,7 @@ return array(
'Email settings' => 'E-posta ayarları',
'Email sender address' => 'E-posta gönderen adresi',
'Email transport' => 'E-posta taşıma',
- 'Webhook token' => 'Webhook token',
+ 'Webhook token' => 'Web kancası anahtarı',
'Project tags management' => 'Proje etiket yönetimi',
'Tag created successfully.' => 'Etiket başarıyla oluturuldu.',
'Unable to create this tag.' => 'Etiket oluşturulamıyor.',
@@ -1208,136 +1208,137 @@ return array(
'Write' => 'Yaz',
'Write your text in Markdown' => 'Metninizi Markdown a yazın',
'New External Task: %s' => 'Yeni Harici Görev: %s',
- 'No personal API access token registered.' => 'Kişisel API erişim belirteç-token ınız kaydedilmedi.',
- 'Your personal API access token is "%s"' => 'Kişisel API erişim belirteç-token ınız"%s"',
- 'Remove your token' => 'Belirteç-token ınızı kaldır',
- 'Generate a new token' => 'Yeni bir belirteç-token oluştur',
- // 'Showing %d-%d of %d' => '',
- // 'Outgoing Emails' => '',
+ 'No personal API access token registered.' => 'Kişisel API erişim anahtarınız kaydedilmedi.',
+ 'Your personal API access token is "%s"' => 'Kişisel API erişim anahtarınız "%s"',
+ 'Remove your token' => 'Anahtarı kaldır',
+ 'Generate a new token' => 'Yeni bir anahtar oluştur',
+ 'Showing %d-%d of %d' => 'Gösterilen %d-%d / %d',
+ 'Outgoing Emails' => 'Gönderilen ePostalar',
'Add or change currency rate' => 'Kur Oranını ekle veya değiştir',
- // 'Reference currency: %s' => '',
- // 'Add custom filters' => '',
- // 'Export' => '',
- // 'Add link label' => '',
- // 'Incompatible Plugins' => '',
- // 'Compatibility' => '',
- // 'Permissions and ownership' => '',
- // 'Priorities' => '',
- // 'Close this window' => '',
- // 'Unable to upload this file.' => '',
- // 'Import tasks' => '',
- // 'Choose a project' => '',
- // 'Profile' => '',
- // 'Application role' => '',
- // '%d invitations were sent.' => '',
- // '%d invitation was sent.' => '',
- // 'Unable to create this user.' => '',
- // 'Kanboard Invitation' => '',
- // 'Visible on dashboard' => '',
- // 'Created at:' => '',
- // 'Updated at:' => '',
- // 'There is no custom filter.' => '',
- // 'New User' => '',
- // 'Authentication' => '',
- // 'If checked, this user will use a third-party system for authentication.' => '',
- // 'The password is necessary only for local users.' => '',
- // 'You have been invited to register on Kanboard.' => '',
- // 'Click here to join your team' => '',
- // 'Invite people' => '',
- // 'Emails' => '',
- // 'Enter one email address by line.' => '',
- // 'Add these people to this project' => '',
- // 'Add this person to this project' => '',
- // 'Sign-up' => '',
- // 'Credentials' => '',
- // 'New user' => '',
- // 'This username is already taken' => '',
- // 'A link to reset your password has been sent by email.' => '',
- // 'Your profile must have a valid email address.' => '',
- // 'Unfortunately, we are unable to reset your password. Did you entered a valid username? Do you have an email address in your profile?' => '',
- // 'TRL - Turkish Lira' => '',
- // 'The project email is optional and could be used by several plugins.' => '',
- // 'The project email must be unique across all projects' => '',
- // 'The email configuration has been disabled by the administrator.' => '',
- // 'Close this project' => '',
- // 'Open this project' => '',
- // 'Close a project' => '',
- // 'Do you really want to close this project: "%s"?' => '',
- // 'Reopen a project' => '',
- // 'Do you really want to reopen this project: "%s"?' => '',
- // 'This project is open' => '',
- // 'This project is closed' => '',
- // 'Unable to upload files, check the permissions of your data folder.' => '',
- // 'Another category with the same name exists in this project' => '',
- // 'Comment sent by email successfully.' => '',
- // 'Sent by email to [%s](mailto:%s) (%s)' => '',
- // 'Unable to read uploaded file.' => '',
- // 'Database uploaded successfully.' => '',
- // 'Task sent by email successfully.' => '',
- // 'There is no category in this project.' => '',
- // 'Send by email' => '',
- // 'Create and send a comment by email' => '',
- // 'Subject' => '',
- // 'Upload the database' => '',
- // 'You could upload the previously downloaded Sqlite database (Gzip format).' => '',
- // 'Database file' => '',
- // 'Upload' => '',
- // 'Your project must have at least one active swimlane.' => '',
- // 'Project: %s' => '',
- // 'Automatic action not found: "%s"' => '',
- // '%d projects' => '',
- // '%d project' => '',
- // 'There is no project.' => '',
- // 'Sort' => '',
- // 'Project ID' => '',
- // 'Project name' => '',
- // 'Public' => '',
- // 'Private' => '',
- // '%d tasks' => '',
- // '%d task' => '',
- // 'Task ID' => '',
- // 'Assign automatically a color when due date is expired' => '',
- // 'Total score in this column across all swimlanes' => '',
- // 'HRK - Kuna' => '',
- // 'ARS - Argentine Peso' => '',
- // 'COP - Colombian Peso' => '',
- // '%d groups' => '',
- // '%d group' => '',
- // 'Group ID' => '',
- // 'External ID' => '',
- // '%d users' => '',
- // '%d user' => '',
- // 'Hide subtasks' => '',
- // 'Show subtasks' => '',
- // 'Authentication Parameters' => '',
- // 'API Access' => '',
- // 'No users found.' => '',
- // 'User ID' => '',
- // 'Notifications are activated' => '',
- // 'Notifications are disabled' => '',
- // 'User disabled' => '',
- // '%d notifications' => '',
- // '%d notification' => '',
- // 'There is no external integration installed.' => '',
- // 'You are not allowed to update tasks assigned to someone else.' => '',
- // 'You are not allowed to change the assignee.' => '',
- // 'Task suppression is not permitted' => '',
- // 'Changing assignee is not permitted' => '',
- // 'Update only assigned tasks is permitted' => '',
- // 'Only for tasks assigned to the current user' => '',
- // 'My projects' => '',
- // 'Your are not member of any project.' => '',
- // 'My subtasks' => '',
- // '%d subtasks' => '',
- // '%d subtask' => '',
- // 'Only moving task between those columns is permitted for tasks assigned to the current user' => '',
- // '[DUPLICATE]' => '',
- // 'DKK - Danish Krona' => '',
- // 'Remove user from group' => '',
- // 'Assign the task to its creator' => '',
- // 'This task was sent by email to "%s" with subject "%s".' => '',
- // 'Predefined Email Subjects' => '',
- // 'Write one subject by line.' => '',
- // 'Create another link' => '',
- // 'BRL - Brazilian Real' => '',
+ 'Reference currency: %s' => 'Referans parabirimi: %s',
+ 'Add custom filters' => 'Özel filtre ekle',
+ 'Export' => 'Dışa aktar',
+ 'Add link label' => 'Bağlantı etiketi ekle',
+ 'Incompatible Plugins' => 'Uyumsuz Eklentiler',
+ 'Compatibility' => 'Uyumluluk',
+ 'Permissions and ownership' => 'İzinler ve sahiplik',
+ 'Priorities' => 'Öncelikler',
+ 'Close this window' => 'Bu pencereyi kapat',
+ 'Unable to upload this file.' => 'Bu dosya yüklenemiyor',
+ 'Import tasks' => 'Görevleri içeri aktar',
+ 'Choose a project' => 'Proje seçin',
+ 'Profile' => 'Profil',
+ 'Application role' => 'Uygulama rolü',
+ '%d invitations were sent.' => '%d Davetiye gönderildi',
+ '%d invitation was sent.' => '%d Davetiye gönderildi',
+ 'Unable to create this user.' => 'Bu kullanıcı oluşturulamadı.',
+ 'Kanboard Invitation' => 'Kanboard Daveti',
+ 'Visible on dashboard' => 'Panoda görünür',
+ 'Created at:' => 'Oluşturulma: ',
+ 'Updated at:' => 'Güncellenme: ',
+ 'There is no custom filter.' => 'Uygulanmış özel filtre yok',
+ 'New User' => 'Yeni Kullanıcı',
+ 'Authentication' => 'Yetkilendirme',
+ 'If checked, this user will use a third-party system for authentication.' => 'İşaretlenirse, bu kullanıcı kimlik doğrulama için üçüncü parti bir sistem kullanacaktır.',
+ 'The password is necessary only for local users.' => 'Parola yalnızca yerel kullanıcılar için gereklidir',
+ 'You have been invited to register on Kanboard.' => 'Kanboarda kayıt yaptırmak için davet edildiniz.',
+ 'Click here to join your team' => 'Takımınıza katılmak için buraya tıklayın',
+ 'Invite people' => 'İnsanları davet et',
+ 'Emails' => 'ePostalar',
+ 'Enter one email address by line.' => 'Her satıra bir adet email girin.',
+ 'Add these people to this project' => 'Kişileri bu projeye ekle',
+ 'Add this person to this project' => 'Kişiyi bu projeye ekle',
+ 'Sign-up' => 'Kayıt',
+ 'Credentials' => 'Kimlik bilgileri',
+ 'New user' => 'Yeni kullanıcı',
+ 'This username is already taken' => 'Bu kullanıcı adı zaten alınmış',
+ 'A link to reset your password has been sent by email.' => 'Parola sıfırlama linkini içeren mesaj ePosta adresinize gönderildi.',
+ 'Your profile must have a valid email address.' => 'Profiliniz için geçerli bir ePosta adresi gerekiyor.',
+ 'Unfortunately, we are unable to reset your password. Did you entered a valid username? Do you have an email address in your profile?' => 'Malesef parolanızı sıfırlayamıyoruz. Kullanıcı adınızı doğru girdiniz mi? Profilinize kayıtlı ePosta adresiniz var mı?',
+ 'TRL - Turkish Lira' => 'TRL - Türk Lirası',
+ 'The project email is optional and could be used by several plugins.' => 'Proje ePostası isteğe bağlıdır ve eklentiler tarafından kullanılabilir',
+ 'The project email must be unique across all projects' => 'Proje e-postası tüm projelerde benzersiz olmalıdır.',
+ 'The email configuration has been disabled by the administrator.' => 'ePosta ayarları yönetici tarafından devre dışı bırakılmış.',
+ 'Close this project' => 'Bu projeyi kapat',
+ 'Open this project' => 'Bu projeyi aç',
+ 'Close a project' => 'Proje kapat',
+ 'Do you really want to close this project: "%s"?' => 'Bu projeyi kapatmak istediğinize emin misiniz? : "%s"',
+ 'Reopen a project' => 'Projeyi tekrar aç',
+ 'Do you really want to reopen this project: "%s"?' => 'Bu projeyi tekrar açmak istediğinizi onaylıyor musunuz? : "%s"',
+ 'This project is open' => 'Bu proje açıktır',
+ 'This project is closed' => 'Bu proje kapatılmış',
+ 'Unable to upload files, check the permissions of your data folder.' => 'Dosya yüklenemedi. Lütfen yükleme dizine yazma izninizi kontrol ediniz.',
+ 'Another category with the same name exists in this project' => 'Bu projede aynı ada sahip başka bir kategori var',
+ 'Comment sent by email successfully.' => 'Yorum ePosta ile başarıyla gönderildi.',
+ 'Sent by email to [%s](mailto:%s) (%s)' => 'ePostayı gönder [%s](mailto:%s) (%s)',
+ 'Unable to read uploaded file.' => 'Yüklenen dosya okunamadı.',
+ 'Database uploaded successfully.' => 'Veritabanı başarıyla yüklendi.',
+ 'Task sent by email successfully.' => 'Görev ePosta ile başarıyla gönderildi.',
+ 'There is no category in this project.' => 'Bu projenin kategorisi yok',
+ 'Send by email' => 'ePosta ile gönder',
+ 'Create and send a comment by email' => 'Yorum oluştur ve ePosta ile gönder',
+ 'Subject' => 'Konu',
+ 'Upload the database' => 'Veritabanına yükle',
+ 'You could upload the previously downloaded Sqlite database (Gzip format).' => 'Daha önce indirdiğiniz Sqlite Veritabanı dosyasını yükleyebilirsiniz (Gzip formatında)',
+ 'Database file' => 'Veritabanı dosyası',
+ 'Upload' => 'Yükle',
+ 'Your project must have at least one active swimlane.' => 'Projenizin en az bir aktif kulvara sahip olması gerekir',
+ 'Project: %s' => 'Proje: %s',
+ 'Automatic action not found: "%s"' => 'Otomatik işlem bulunamadı: "%s"',
+ '%d projects' => '%d proje',
+ '%d project' => '%d proje',
+ 'There is no project.' => 'Proje yok.',
+ 'Sort' => 'Sırala',
+ 'Project ID' => 'Proje No',
+ 'Project name' => 'Proje Adı',
+ 'Public' => 'Herkese açık',
+ 'Private' => 'Gizli',
+ '%d tasks' => '%d görev',
+ '%d task' => '%d görev',
+ 'Task ID' => 'Görev No',
+ 'Assign automatically a color when due date is expired' => 'Son günü geçtiğinde otomatik olarak bir renk ata',
+ 'Total score in this column across all swimlanes' => 'Tüm kulvarlara göre bu kulvarın toplam puanı',
+ 'HRK - Kuna' => 'HRK - Kuna',
+ 'ARS - Argentine Peso' => 'ARS - Arjantin Pezosu',
+ 'COP - Colombian Peso' => 'COP - Kolombiya Pezosu',
+ '%d groups' => '%d grup',
+ '%d group' => '%d grup',
+ 'Group ID' => 'Grup No',
+ 'External ID' => 'Harici No',
+ '%d users' => '%d kullanıcı',
+ '%d user' => '%d kullanıcı',
+ 'Hide subtasks' => 'Alt görevleri gizler',
+ 'Show subtasks' => 'Alt görevleri göster',
+ 'Authentication Parameters' => 'Yetkilendirme Parametreleri',
+ 'API Access' => 'API Erişimi',
+ 'No users found.' => 'Kullanıcı yok',
+ 'User ID' => 'Kullanıcı No',
+ 'Notifications are activated' => 'Bildirimler etkinleştirildi',
+ 'Notifications are disabled' => 'Bildirimler devre dışı',
+ 'User disabled' => 'Kullanıcı devre dışı',
+ '%d notifications' => '%d bildirim',
+ '%d notification' => '%d bildirim',
+ 'There is no external integration installed.' => 'Yüklenmiş harici entegrasyon yok.',
+ 'You are not allowed to update tasks assigned to someone else.' => 'Başkasına atanmış görevi güncelleme izniniz yok.',
+ 'You are not allowed to change the assignee.' => 'Atanmış kişiyi değiştirme yetkiniz yok.',
+ 'Task suppression is not permitted' => 'Görev silmeye izniniz yok',
+ 'Changing assignee is not permitted' => 'Atanmışı değiştirme izniniz yok',
+ 'Update only assigned tasks is permitted' => 'Yalnızca atandığınız görevleri güncelleyebilirsiniz',
+ 'Only for tasks assigned to the current user' => 'Yalnızca geçerli kullanıcıya atanan görevler için',
+ 'My projects' => 'Projelerim',
+ 'Your are not member of any project.' => 'Herhangi bir projenin üyesi değilsiniz.',
+ 'My subtasks' => 'Altgörevlerim',
+ '%d subtasks' => '%d alt görev',
+ '%d subtask' => '%d alt görev',
+ 'Only moving task between those columns is permitted for tasks assigned to the current user' => 'Geçerli kullanıcıya atanan görevler için yalnızca o sütunlar arasında hareket eden bir göreve izin verilir.',
+ '[DUPLICATE]' => '[ÇİFT]',
+ 'DKK - Danish Krona' => 'DKK - Danimarka Kronu',
+ 'Remove user from group' => 'Kullanıcıyı gruptan çıkar',
+ 'Assign the task to its creator' => 'Oluşturucusuna görev ata',
+ 'This task was sent by email to "%s" with subject "%s".' => 'Bu görev "%s" konusuyla "%s" ePosta adresine gönderildi.',
+ 'Predefined Email Subjects' => 'Öntanımlı ePosta konuları',
+ 'Write one subject by line.' => 'Her satıra bir konu yazınız',
+ 'Create another link' => 'Başka bağlantı oluştur',
+ 'BRL - Brazilian Real' => 'BRL - Brezilya Reali',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/vi_VN/translations.php b/app/Locale/vi_VN/translations.php
index 387791b5..7fa77c9f 100644
--- a/app/Locale/vi_VN/translations.php
+++ b/app/Locale/vi_VN/translations.php
@@ -1346,4 +1346,5 @@ return array(
'Write one subject by line.' => 'Viết một chủ đề theo dòng.',
'Create another link' => 'Tạo liên kết khác',
'BRL - Brazilian Real' => 'BRL - Brazilian Real',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Locale/zh_CN/translations.php b/app/Locale/zh_CN/translations.php
index 8df657cb..5cea713f 100644
--- a/app/Locale/zh_CN/translations.php
+++ b/app/Locale/zh_CN/translations.php
@@ -1340,4 +1340,5 @@ return array(
// 'Write one subject by line.' => '',
// 'Create another link' => '',
// 'BRL - Brazilian Real' => '',
+ // 'Add a new Kanboard task' => '',
);
diff --git a/app/Template/board/table_column.php b/app/Template/board/table_column.php
index 9d2815ff..a9652a2b 100644
--- a/app/Template/board/table_column.php
+++ b/app/Template/board/table_column.php
@@ -16,9 +16,7 @@
<!-- column in expanded mode -->
<div class="board-column-expanded">
<?php if (! $not_editable && $this->projectRole->canCreateTaskInColumn($column['project_id'], $column['id'])): ?>
- <div class="board-add-icon">
- <?= $this->modal->largeIcon('plus', t('Add a new task'), 'TaskCreationController', 'show', array('project_id' => $column['project_id'], 'column_id' => $column['id'], 'swimlane_id' => $swimlane['id'])) ?>
- </div>
+ <?= $this->task->getNewBoardTaskButton($swimlane, $column) ?>
<?php endif ?>
<?php if ($swimlane['nb_swimlanes'] > 1 && ! empty($column['column_nb_tasks'])): ?>
diff --git a/app/Template/board/task_footer.php b/app/Template/board/task_footer.php
index c78616e9..4ea5bb31 100644
--- a/app/Template/board/task_footer.php
+++ b/app/Template/board/task_footer.php
@@ -32,7 +32,7 @@
<div class="task-board-icons-row">
<?php if ($task['reference']): ?>
<span class="task-board-reference" title="<?= t('Reference') ?>">
- <?= $this->text->e($task['reference']) ?>
+ <?= $this->task->renderReference($task) ?>
</span>
<?php endif ?>
</div>
diff --git a/app/Template/board/task_private.php b/app/Template/board/task_private.php
index 28e53473..ccf09932 100644
--- a/app/Template/board/task_private.php
+++ b/app/Template/board/task_private.php
@@ -19,6 +19,7 @@
<div class="task-board-saving-icon" style="display: none;"><i class="fa fa-spinner fa-pulse"></i></div>
<?php if ($this->user->hasProjectAccess('TaskModificationController', 'edit', $task['project_id'])): ?>
<?= $this->render('task/dropdown', array('task' => $task)) ?>
+ <?= $this->modal->large('edit', '', 'TaskModificationController', 'edit', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>
<?php else: ?>
<strong><?= '#'.$task['id'] ?></strong>
<?php endif ?>
@@ -36,6 +37,7 @@
<div class="task-board-header">
<?php if ($this->user->hasProjectAccess('TaskModificationController', 'edit', $task['project_id'])): ?>
<?= $this->render('task/dropdown', array('task' => $task)) ?>
+ <?= $this->modal->large('edit', '', 'TaskModificationController', 'edit', array('task_id' => $task['id'], 'project_id' => $task['project_id'])) ?>
<?php else: ?>
<strong><?= '#'.$task['id'] ?></strong>
<?php endif ?>
diff --git a/app/Template/task/details.php b/app/Template/task/details.php
index a42e09d1..3b4d4b38 100644
--- a/app/Template/task/details.php
+++ b/app/Template/task/details.php
@@ -22,7 +22,7 @@
</li>
<?php if (! empty($task['reference'])): ?>
<li>
- <strong><?= t('Reference:') ?></strong> <span><?= $this->text->e($task['reference']) ?></span>
+ <strong><?= t('Reference:') ?></strong> <span><?= $this->task->renderReference($task) ?></span>
</li>
<?php endif ?>
<?php if (! empty($task['score'])): ?>
diff --git a/app/Template/task_list/task_icons.php b/app/Template/task_list/task_icons.php
index 03a891a2..d02c9021 100644
--- a/app/Template/task_list/task_icons.php
+++ b/app/Template/task_list/task_icons.php
@@ -1,7 +1,7 @@
<div class="task-list-icons">
<?php if ($task['reference']): ?>
<span class="task-board-reference" title="<?= t('Reference') ?>">
- <?= $this->text->e($task['reference']) ?>
+ <?= $this->task->renderReference($task) ?>
</span>
<?php endif ?>
<?php if ($task['is_milestone'] == 1): ?>