From d0a731a14aa169e8cb132cdb566d3edbd98f3e2b Mon Sep 17 00:00:00 2001 From: Asim Husanovic Date: Wed, 13 Apr 2016 18:57:57 +0200 Subject: Updated Bosnian localization --- app/Locale/bs_BA/translations.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'app/Locale') diff --git a/app/Locale/bs_BA/translations.php b/app/Locale/bs_BA/translations.php index fadf0a1b..2cb5b7b8 100644 --- a/app/Locale/bs_BA/translations.php +++ b/app/Locale/bs_BA/translations.php @@ -1163,8 +1163,8 @@ return array( 'Search by task status: ' => 'Pretraga po statusu zadatka: ', 'Search by task title: ' => 'Pretraga po naslovu zadatka: ', 'Activity stream search' => 'Pretraga aktivnosti', - // 'Projects where "%s" is manager' => '', - // 'Projects where "%s" is member' => '', - // 'Open tasks assigned to "%s"' => '', - // 'Closed tasks assigned to "%s"' => '', + 'Projects where "%s" is manager' => 'Projekti gdje je "%s" menadžer', + 'Projects where "%s" is member' => 'Projekti gdje je "%s" član', + 'Open tasks assigned to "%s"' => 'Otvoreni zadaci dodijeljeni "%s"', + 'Closed tasks assigned to "%s"' => 'Zatvoreni zadaci dodijeljeni "%s"', ); -- cgit v1.2.3 From 4253df0854cfc80ee89ef6449613944db2c066b9 Mon Sep 17 00:00:00 2001 From: Kolesar Date: Tue, 19 Apr 2016 03:51:35 +0200 Subject: Added group notifications per projects for each user for overdue task… (#2132) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Console/TaskOverdueNotificationCommand.php | 82 +++++++++++++++++++++++++- app/Locale/bs_BA/translations.php | 2 +- app/Locale/cs_CZ/translations.php | 2 +- app/Locale/da_DK/translations.php | 2 +- app/Locale/de_DE/translations.php | 2 +- app/Locale/el_GR/translations.php | 2 +- app/Locale/es_ES/translations.php | 2 +- app/Locale/fi_FI/translations.php | 2 +- app/Locale/fr_FR/translations.php | 2 +- app/Locale/hu_HU/translations.php | 2 +- app/Locale/id_ID/translations.php | 2 +- app/Locale/it_IT/translations.php | 2 +- app/Locale/ja_JP/translations.php | 2 +- app/Locale/ko_KR/translations.php | 2 +- app/Locale/my_MY/translations.php | 2 +- app/Locale/nb_NO/translations.php | 2 +- app/Locale/nl_NL/translations.php | 2 +- app/Locale/pl_PL/translations.php | 2 +- app/Locale/pt_BR/translations.php | 2 +- app/Locale/pt_PT/translations.php | 2 +- app/Locale/ru_RU/translations.php | 2 +- app/Locale/sr_Latn_RS/translations.php | 2 +- app/Locale/sv_SE/translations.php | 2 +- app/Locale/th_TH/translations.php | 2 +- app/Locale/tr_TR/translations.php | 2 +- app/Locale/zh_CN/translations.php | 2 +- app/Template/notification/task_overdue.php | 43 +++++++++----- 27 files changed, 132 insertions(+), 43 deletions(-) (limited to 'app/Locale') diff --git a/app/Console/TaskOverdueNotificationCommand.php b/app/Console/TaskOverdueNotificationCommand.php index 7d176ab1..894e4402 100644 --- a/app/Console/TaskOverdueNotificationCommand.php +++ b/app/Console/TaskOverdueNotificationCommand.php @@ -3,6 +3,8 @@ namespace Kanboard\Console; use Kanboard\Model\Task; +use Kanboard\Core\Security\Role; +use Kanboard\Model\ProjectUserRole; use Symfony\Component\Console\Helper\Table; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; @@ -15,12 +17,20 @@ class TaskOverdueNotificationCommand extends BaseCommand $this ->setName('notification:overdue-tasks') ->setDescription('Send notifications for overdue tasks') - ->addOption('show', null, InputOption::VALUE_NONE, 'Show sent overdue tasks'); + ->addOption('show', null, InputOption::VALUE_NONE, 'Show sent overdue tasks') + ->addOption('group', null, InputOption::VALUE_NONE, 'Group all overdue tasks for one user (from all projects) in one email') + ->addOption('manager', null, InputOption::VALUE_NONE, 'Send all overdue tasks to project manager(s) in one email'); } protected function execute(InputInterface $input, OutputInterface $output) { - $tasks = $this->sendOverdueTaskNotifications(); + if($input->getOption('group')) { + $tasks = $this->sendGroupOverdueTaskNotifications(); + } elseif ($input->getOption('manager')) { + $tasks = $this->sendOverdueTaskNotificationsToManagers(); + } else { + $tasks = $this->sendOverdueTaskNotifications(); + } if ($input->getOption('show')) { $this->showTable($output, $tasks); @@ -49,6 +59,54 @@ class TaskOverdueNotificationCommand extends BaseCommand ->render(); } + /** + * Send all overdue tasks for one user in one email + * + * @access public + */ + public function sendGroupOverdueTaskNotifications() + { + $tasks = $this->taskFinder->getOverdueTasks(); + + foreach ($this->groupByColumn($tasks, 'owner_id') as $user_tasks) { + $users = $this->userNotification->getUsersWithNotificationEnabled($user_tasks[0]['project_id']); + + foreach ($users as $user) { + $this->sendUserOverdueTaskNotifications($user, $user_tasks); + } + } + + return $tasks; + } + + /** + * Send all overdue tasks in one email to project manager(s) + * + * @access public + */ + public function sendOverdueTaskNotificationsToManagers() + { + $tasks = $this->taskFinder->getOverdueTasks(); + + foreach ($this->groupByColumn($tasks, 'project_id') as $project_id => $project_tasks) { + $users = $this->userNotification->getUsersWithNotificationEnabled($project_id); + + $managers = array(); + foreach ($users as $user) { + $role = $this->projectUserRole->getUserRole($project_id, $user['id']); + if($role == Role::PROJECT_MANAGER) { + $managers[] = $user; + } + } + + foreach ($managers as $manager) { + $this->sendUserOverdueTaskNotificationsToManagers($manager, $project_tasks); + } + } + + return $tasks; + } + /** * Send overdue tasks * @@ -79,10 +137,12 @@ class TaskOverdueNotificationCommand extends BaseCommand public function sendUserOverdueTaskNotifications(array $user, array $tasks) { $user_tasks = array(); + $project_names = array(); foreach ($tasks as $task) { if ($this->userNotificationFilter->shouldReceiveNotification($user, array('task' => $task))) { $user_tasks[] = $task; + $project_names[$task['project_id']] = $task['project_name']; } } @@ -90,11 +150,27 @@ class TaskOverdueNotificationCommand extends BaseCommand $this->userNotification->sendUserNotification( $user, Task::EVENT_OVERDUE, - array('tasks' => $user_tasks, 'project_name' => $tasks[0]['project_name']) + array('tasks' => $user_tasks, 'project_name' => implode(", ", $project_names)) ); } } + /** + * Send overdue tasks for a project manager(s) + * + * @access public + * @param array $user + * @param array $tasks + */ + public function sendUserOverdueTaskNotificationsToManagers(array $manager, array $tasks) + { + $this->userNotification->sendUserNotification( + $manager, + Task::EVENT_OVERDUE, + array('tasks' => $tasks, 'project_name' => $tasks[0]['project_name']) + ); + } + /** * Group a collection of records by a column * diff --git a/app/Locale/bs_BA/translations.php b/app/Locale/bs_BA/translations.php index 2cb5b7b8..e689f07a 100644 --- a/app/Locale/bs_BA/translations.php +++ b/app/Locale/bs_BA/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'pregled ploče na Kanboard-u', 'The task have been moved to the first swimlane' => 'Zadatak je premješten u prvu swimline traku', 'The task have been moved to another swimlane:' => 'Zadatak je premješten u drugu swimline traku', - 'Overdue tasks for the project "%s"' => 'Zadaci u kašnjenju za projekat "%s"', + 'Overdue tasks for the project(s) "%s"' => 'Zadaci u kašnjenju za projekat(te) "%s"', 'New title: %s' => 'Novi naslov: %s', 'The task is not assigned anymore' => 'Zadatak nema više izvršioca', 'New assignee: %s' => 'Novi izvršilac: %s', diff --git a/app/Locale/cs_CZ/translations.php b/app/Locale/cs_CZ/translations.php index 777e9b42..a8fbdead 100644 --- a/app/Locale/cs_CZ/translations.php +++ b/app/Locale/cs_CZ/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'Pinnwand in Kanboard anzeigen', 'The task have been moved to the first swimlane' => 'Die Aufgabe wurde in die erste Swimlane verschoben', 'The task have been moved to another swimlane:' => 'Die Aufgaben wurde in ene andere Swimlane verschoben', - 'Overdue tasks for the project "%s"' => 'Überfällige Aufgaben für das Projekt "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Überfällige Aufgaben für das Projekt "%s"', 'New title: %s' => 'Neuer Titel: %s', 'The task is not assigned anymore' => 'Die Aufgabe ist nicht mehr zugewiesen', 'New assignee: %s' => 'Neue Zuordnung: %s', diff --git a/app/Locale/da_DK/translations.php b/app/Locale/da_DK/translations.php index 7c255561..aa53e382 100644 --- a/app/Locale/da_DK/translations.php +++ b/app/Locale/da_DK/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', // 'New title: %s' => '', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/de_DE/translations.php b/app/Locale/de_DE/translations.php index 43b80561..71007423 100644 --- a/app/Locale/de_DE/translations.php +++ b/app/Locale/de_DE/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'Pinnwand in Kanboard anzeigen', 'The task have been moved to the first swimlane' => 'Die Aufgabe wurde in die erste Swimlane verschoben', 'The task have been moved to another swimlane:' => 'Die Aufgaben wurde in ene andere Swimlane verschoben', - 'Overdue tasks for the project "%s"' => 'Überfällige Aufgaben für das Projekt "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Überfällige Aufgaben für das Projekt "%s"', 'New title: %s' => 'Neuer Titel: %s', 'The task is not assigned anymore' => 'Die Aufgabe ist nicht mehr zugewiesen', 'New assignee: %s' => 'Neue Zuordnung: %s', diff --git a/app/Locale/el_GR/translations.php b/app/Locale/el_GR/translations.php index 664bf328..f70742a3 100644 --- a/app/Locale/el_GR/translations.php +++ b/app/Locale/el_GR/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'δείτε τον πίνακα στο Kanboard', 'The task have been moved to the first swimlane' => 'Η εργασία αυτή έχει μετακινηθεί στην πρώτη λωρίδα', 'The task have been moved to another swimlane:' => 'Η εργασία αυτή έχει μετακινηθεί σε άλλη λωρίδα:', - 'Overdue tasks for the project "%s"' => 'Εκπρόθεσμες εργασίες για το έργο « %s »', + // 'Overdue tasks for the project(s) "%s"' => 'Εκπρόθεσμες εργασίες για το έργο « %s »', 'New title: %s' => 'Νέος τίτλος: %s', 'The task is not assigned anymore' => 'Η εργασία δεν έχει ανατεθεί πλέον', 'New assignee: %s' => 'Καινούργια ανάθεση: %s', diff --git a/app/Locale/es_ES/translations.php b/app/Locale/es_ES/translations.php index 6b4dda42..240a04fe 100644 --- a/app/Locale/es_ES/translations.php +++ b/app/Locale/es_ES/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'ver el tablero en Kanboard', 'The task have been moved to the first swimlane' => 'Se ha movido la tarea a la primera calle', 'The task have been moved to another swimlane:' => 'Se ha movido la tarea a otra calle', - 'Overdue tasks for the project "%s"' => 'Tareas atrasadas para el proyecto "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Tareas atrasadas para el proyecto "%s"', 'New title: %s' => 'Nuevo título: %s', 'The task is not assigned anymore' => 'La tarea ya no está asignada', 'New assignee: %s' => 'Nuevo concesionario: %s', diff --git a/app/Locale/fi_FI/translations.php b/app/Locale/fi_FI/translations.php index f30b7b4c..147713a5 100644 --- a/app/Locale/fi_FI/translations.php +++ b/app/Locale/fi_FI/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', // 'New title: %s' => '', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/fr_FR/translations.php b/app/Locale/fr_FR/translations.php index ed4638cd..8f4bb5da 100644 --- a/app/Locale/fr_FR/translations.php +++ b/app/Locale/fr_FR/translations.php @@ -709,7 +709,7 @@ return array( '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 :', - 'Overdue tasks for the project "%s"' => 'Tâches en retard pour le projet « %s »', + // 'Overdue tasks for the project(s) "%s"' => 'Tâches en retard pour le projet « %s »', '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', diff --git a/app/Locale/hu_HU/translations.php b/app/Locale/hu_HU/translations.php index 394f89a0..920fda74 100644 --- a/app/Locale/hu_HU/translations.php +++ b/app/Locale/hu_HU/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', // 'New title: %s' => '', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/id_ID/translations.php b/app/Locale/id_ID/translations.php index bd1dd684..59fd75d4 100644 --- a/app/Locale/id_ID/translations.php +++ b/app/Locale/id_ID/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'lihat papan di Kanboard', 'The task have been moved to the first swimlane' => 'Tugas telah dipindahkan ke swimlane pertama', 'The task have been moved to another swimlane:' => 'Tugas telah dipindahkan ke swimlane lain:', - 'Overdue tasks for the project "%s"' => 'Tugas terlambat untuk proyek « %s »', + // 'Overdue tasks for the project(s) "%s"' => 'Tugas terlambat untuk proyek « %s »', 'New title: %s' => 'Judul baru : %s', 'The task is not assigned anymore' => 'Tugas tidak ditugaskan lagi', 'New assignee: %s' => 'Penerima baru : %s', diff --git a/app/Locale/it_IT/translations.php b/app/Locale/it_IT/translations.php index cee1c16a..bd85b6c2 100644 --- a/app/Locale/it_IT/translations.php +++ b/app/Locale/it_IT/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'guarda la bacheca su Kanboard', 'The task have been moved to the first swimlane' => 'Il task è stato spostato nella prima corsia', 'The task have been moved to another swimlane:' => 'Il task è stato spostato in un\'altra corsia:', - 'Overdue tasks for the project "%s"' => 'Task scaduti per il progetto "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Task scaduti per il progetto "%s"', 'New title: %s' => 'Nuovo titolo: %s', 'The task is not assigned anymore' => 'Il task non è più assegnato a nessuno', 'New assignee: %s' => 'Nuovo assegnatario: %s', diff --git a/app/Locale/ja_JP/translations.php b/app/Locale/ja_JP/translations.php index 89769edd..e3cf662c 100644 --- a/app/Locale/ja_JP/translations.php +++ b/app/Locale/ja_JP/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', // 'New title: %s' => '', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/ko_KR/translations.php b/app/Locale/ko_KR/translations.php index ed9e3b86..0cd0d93c 100644 --- a/app/Locale/ko_KR/translations.php +++ b/app/Locale/ko_KR/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', 'New title: %s' => '제목 변경: %s', 'The task is not assigned anymore' => '담당자 없음', 'New assignee: %s' => '담당자 변경: %s', diff --git a/app/Locale/my_MY/translations.php b/app/Locale/my_MY/translations.php index 4537f38c..d6109be9 100644 --- a/app/Locale/my_MY/translations.php +++ b/app/Locale/my_MY/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'lihat papan di Kanboard', 'The task have been moved to the first swimlane' => 'Tugas telah dipindahkan ke swimlane pertama', 'The task have been moved to another swimlane:' => 'Tugas telah dipindahkan ke swimlane lain:', - 'Overdue tasks for the project "%s"' => 'Tugas terlambat untuk projek « %s »', + 'Overdue tasks for the project(s) "%s"' => 'Tugas terlambat untuk projek « %s »', 'New title: %s' => 'Judul baru : %s', 'The task is not assigned anymore' => 'Tugas tidak ditugaskan lagi', 'New assignee: %s' => 'Penerima baru : %s', diff --git a/app/Locale/nb_NO/translations.php b/app/Locale/nb_NO/translations.php index 8c6a56f2..4bdbc250 100644 --- a/app/Locale/nb_NO/translations.php +++ b/app/Locale/nb_NO/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', // 'New title: %s' => '', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/nl_NL/translations.php b/app/Locale/nl_NL/translations.php index 18155816..0cf8ae6d 100644 --- a/app/Locale/nl_NL/translations.php +++ b/app/Locale/nl_NL/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', 'New title: %s' => 'Nieuw titel: %s', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/pl_PL/translations.php b/app/Locale/pl_PL/translations.php index d9427d80..4aab974d 100644 --- a/app/Locale/pl_PL/translations.php +++ b/app/Locale/pl_PL/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', 'New title: %s' => 'Nowy tytuł: %s', 'The task is not assigned anymore' => 'Brak osoby odpowiedzialnej za zadanie', 'New assignee: %s' => 'Nowy odpowiedzialny: %s', diff --git a/app/Locale/pt_BR/translations.php b/app/Locale/pt_BR/translations.php index e0cdb17d..b0aba4db 100644 --- a/app/Locale/pt_BR/translations.php +++ b/app/Locale/pt_BR/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'ver o painel no Kanboard', 'The task have been moved to the first swimlane' => 'A tarefa foi movida para a primeira swimlane', 'The task have been moved to another swimlane:' => 'A tarefa foi movida para outra swimlane:', - 'Overdue tasks for the project "%s"' => 'Tarefas atrasadas para o projeto "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Tarefas atrasadas para o projeto "%s"', 'New title: %s' => 'Novo título: %s', 'The task is not assigned anymore' => 'Agora a tarefa não está mais atribuída', 'New assignee: %s' => 'Novo designado: %s', diff --git a/app/Locale/pt_PT/translations.php b/app/Locale/pt_PT/translations.php index aa51534b..f8ace69d 100644 --- a/app/Locale/pt_PT/translations.php +++ b/app/Locale/pt_PT/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'ver o painel no Kanboard', 'The task have been moved to the first swimlane' => 'A tarefa foi movida para o primeiro Swimlane', 'The task have been moved to another swimlane:' => 'A tarefa foi movida para outro Swimlane:', - 'Overdue tasks for the project "%s"' => 'Tarefas atrasadas para o projecto "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Tarefas atrasadas para o projecto "%s"', 'New title: %s' => 'Novo título: %s', 'The task is not assigned anymore' => 'Tarefa já não está atribuída', 'New assignee: %s' => 'Novo assignado: %s', diff --git a/app/Locale/ru_RU/translations.php b/app/Locale/ru_RU/translations.php index bf2bc559..ce963d51 100644 --- a/app/Locale/ru_RU/translations.php +++ b/app/Locale/ru_RU/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'посмотреть доску на Kanboard', 'The task have been moved to the first swimlane' => 'Эта задача была перемещена в первую дорожку', 'The task have been moved to another swimlane:' => 'Эта задача была перемещена в другую дорожку:', - 'Overdue tasks for the project "%s"' => 'Просроченные задачи для проекта "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Просроченные задачи для проекта "%s"', 'New title: %s' => 'Новый заголовок: %s', 'The task is not assigned anymore' => 'Задача больше не назначена', 'New assignee: %s' => 'Новый назначенный: %s', diff --git a/app/Locale/sr_Latn_RS/translations.php b/app/Locale/sr_Latn_RS/translations.php index 0399530e..304b91dc 100644 --- a/app/Locale/sr_Latn_RS/translations.php +++ b/app/Locale/sr_Latn_RS/translations.php @@ -709,7 +709,7 @@ return array( // 'view the board on Kanboard' => '', // 'The task have been moved to the first swimlane' => '', // 'The task have been moved to another swimlane:' => '', - // 'Overdue tasks for the project "%s"' => '', + // 'Overdue tasks for the project(s) "%s"' => '', // 'New title: %s' => '', // 'The task is not assigned anymore' => '', // 'New assignee: %s' => '', diff --git a/app/Locale/sv_SE/translations.php b/app/Locale/sv_SE/translations.php index 7e738e70..6fca58a1 100644 --- a/app/Locale/sv_SE/translations.php +++ b/app/Locale/sv_SE/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'visa tavlan på Kanboard', 'The task have been moved to the first swimlane' => 'Uppgiften har flyttats till första swimlane', 'The task have been moved to another swimlane:' => 'Uppgiften har flyttats till en annan swimlane:', - 'Overdue tasks for the project "%s"' => 'Försenade uppgifter för projektet "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'Försenade uppgifter för projektet "%s"', 'New title: %s' => 'Ny titel: %s', 'The task is not assigned anymore' => 'Uppgiften är inte länge tilldelad', 'New assignee: %s' => 'Ny tilldelning: %s', diff --git a/app/Locale/th_TH/translations.php b/app/Locale/th_TH/translations.php index 6765e8ea..2cdc870c 100644 --- a/app/Locale/th_TH/translations.php +++ b/app/Locale/th_TH/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'แสดงบอร์ดบนคังบอร์ด', 'The task have been moved to the first swimlane' => 'งานถูกย้านไปสวิมเลนแรก', 'The task have been moved to another swimlane:' => 'งานถูกย้านไปสวิมเลนอื่น:', - 'Overdue tasks for the project "%s"' => 'งานที่เกินกำหนดสำหรับโปรเจค "%s"', + // 'Overdue tasks for the project(s) "%s"' => 'งานที่เกินกำหนดสำหรับโปรเจค "%s"', 'New title: %s' => 'ชื่อเรื่องใหม่: %s', 'The task is not assigned anymore' => 'ไม่กำหนดผู้รับผิดชอบ', 'New assignee: %s' => 'ผู้รับผิดชอบใหม่: %s', diff --git a/app/Locale/tr_TR/translations.php b/app/Locale/tr_TR/translations.php index f771b106..ee9242a9 100644 --- a/app/Locale/tr_TR/translations.php +++ b/app/Locale/tr_TR/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => 'Tabloyu Kanboard\'da görüntüle', 'The task have been moved to the first swimlane' => 'Görev birinci kulvara taşındı', 'The task have been moved to another swimlane:' => 'Görev başka bir kulvara taşındı:', - 'Overdue tasks for the project "%s"' => '"%s" projesi için gecikmiş görevler', + // 'Overdue tasks for the project(s) "%s"' => '"%s" projesi için gecikmiş görevler', 'New title: %s' => 'Yeni başlık: %s', 'The task is not assigned anymore' => 'Görev artık atanmamış', 'New assignee: %s' => 'Yeni atanan: %s', diff --git a/app/Locale/zh_CN/translations.php b/app/Locale/zh_CN/translations.php index baa7693a..fc3fcbfc 100644 --- a/app/Locale/zh_CN/translations.php +++ b/app/Locale/zh_CN/translations.php @@ -709,7 +709,7 @@ return array( 'view the board on Kanboard' => '在看板上查看面板', 'The task have been moved to the first swimlane' => '该任务已被移动到首个里程碑', 'The task have been moved to another swimlane:' => '该任务已被移动到别的里程碑:', - 'Overdue tasks for the project "%s"' => '"%s"项目下的超期任务', + // 'Overdue tasks for the project(s) "%s"' => '"%s"项目下的超期任务', 'New title: %s' => '新标题:%s', 'The task is not assigned anymore' => '该任务没有指派人', 'New assignee: %s' => '新指派到:%s', diff --git a/app/Template/notification/task_overdue.php b/app/Template/notification/task_overdue.php index ac0665a2..ee2ff379 100644 --- a/app/Template/notification/task_overdue.php +++ b/app/Template/notification/task_overdue.php @@ -1,18 +1,31 @@ -

+

+ + + + + + + + + - + + + + + + - +
# + + text->e($task['title']) ?> + + text->e($task['title']) ?> + + dt->date($task['date_due']) ?> + + + +
-- cgit v1.2.3 From ea5cd9cda6ae5934346564a55feb5b758664d4fc Mon Sep 17 00:00:00 2001 From: Christian González Date: Thu, 21 Apr 2016 11:53:30 +0200 Subject: better German translation of relations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit "ist übergeordnet" is a bit tricky: "Diese Aufgabe ist übergeordnet (1)": is a bad translation as the direction could be in both ways. The correct translation of "is a parent of" would be "ist ein Elternelement von". This seems a bit long, but is the only really correct possibility I can think of. Others, including "ist übergeordnet von" (not correct German IMHO), or "ist ein Kind von" (seems stupid) are not really better. But "ist übergeordnet" is definitely wrong, because in both directions valid, in this context. --- app/Locale/de_DE/translations.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'app/Locale') diff --git a/app/Locale/de_DE/translations.php b/app/Locale/de_DE/translations.php index 71007423..160cd51f 100644 --- a/app/Locale/de_DE/translations.php +++ b/app/Locale/de_DE/translations.php @@ -558,8 +558,8 @@ return array( 'is blocked by' => 'ist blockiert von', 'duplicates' => 'doppelt', 'is duplicated by' => 'ist gedoppelt von', - 'is a child of' => 'ist untergeordnet', - 'is a parent of' => 'ist übergeordnet', + 'is a child of' => 'ist ein untergeordnetes Element von', + 'is a parent of' => 'ist ein übergeordnetes Element von', 'targets milestone' => 'betrifft Meilenstein', 'is a milestone of' => 'ist ein Meilenstein von', 'fixes' => 'behebt', -- cgit v1.2.3 From b0e41bc81b40cfdc5e067bf1eb4d05e3aa438c7d Mon Sep 17 00:00:00 2001 From: Eugene Date: Fri, 22 Apr 2016 02:07:32 +0300 Subject: Russian locale update (#2161) --- app/Locale/ru_RU/translations.php | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'app/Locale') diff --git a/app/Locale/ru_RU/translations.php b/app/Locale/ru_RU/translations.php index ce963d51..322126e3 100644 --- a/app/Locale/ru_RU/translations.php +++ b/app/Locale/ru_RU/translations.php @@ -1153,18 +1153,18 @@ return array( 'Upload my avatar image' => 'Загрузить моё изображение для аватара', 'Remove my image' => 'Удалить моё изображение', 'The OAuth2 state parameter is invalid' => 'Параметр состояние OAuth2 неправильный', - // 'User not found.' => '', - // 'Search in activity stream' => '', - // 'My activities' => '', - // 'Activity until yesterday' => '', - // 'Activity until today' => '', - // 'Search by creator: ' => '', - // 'Search by creation date: ' => '', - // 'Search by task status: ' => '', - // 'Search by task title: ' => '', - // 'Activity stream search' => '', - // 'Projects where "%s" is manager' => '', - // 'Projects where "%s" is member' => '', - // 'Open tasks assigned to "%s"' => '', - // 'Closed tasks assigned to "%s"' => '', + 'User not found.' => 'Пользователь не найден', + 'Search in activity stream' => 'Поиск в потоке активности', + 'My activities' => 'Мои активности', + 'Activity until yesterday' => 'Активности до вчерашнего дня', + 'Activity until today' => 'Активности до сегодня', + 'Search by creator: ' => 'Поиск по создателю: ', + 'Search by creation date: ' => 'Поиск по дате создания: ', + 'Search by task status: ' => 'Поиск по статусу задачи: ', + 'Search by task title: ' => 'Поиск по заголоску задачи: ', + 'Activity stream search' => 'Поиск в потоке активности; ', + 'Projects where "%s" is manager' => 'Проекты, где менеджером является "%s"', + 'Projects where "%s" is member' => 'Проекты, где членом является "%s"', + 'Open tasks assigned to "%s"' => 'Открытые задачи, назначенные на "%s"', + 'Closed tasks assigned to "%s"' => 'Закрытые задачи, назначенные на "%s"', ); -- cgit v1.2.3