diff --git a/tests/TranslationsTest.php b/tests/TranslationsTest.php new file mode 100644 index 00000000..3be8dd7b --- /dev/null +++ b/tests/TranslationsTest.php @@ -0,0 +1,103 @@ +file->body; + + foreach ($body->children() as $transUnit) { + self::assertNotEmpty( + (string) $transUnit->target, + sprintf( + 'Found empty translation in language "%s" and file "%s" for key "%s"', + $xml->file->attributes()['target-language'], + basename($file), + (string) $transUnit->source + ) + ); + } + } + } + + public function testReplacerWereNotTranslated() + { + $englishFiles = glob(__DIR__ . '/../translations/*.en.xlf'); + foreach ($englishFiles as $englishFile) { + $english = simplexml_load_file($englishFile); + $trans = []; + /** @var \SimpleXMLElement $body */ + $body = $english->file->body; + + foreach ($body->children() as $transUnit) { + preg_match_all('/%.+%/Uu', (string) $transUnit->target, $matches); + if (!empty($matches) && !empty($matches[0])) { + asort($matches[0]); + $trans[(string) $transUnit->source] = array_values($matches[0]); + } + } + + if (empty($trans)) { + continue; + } + + $expectedCounter = \count($trans); + $files = glob(__DIR__ . '/../translations/' . str_replace('.en.xlf', '', basename($englishFile)) . '*.xlf'); + foreach ($files as $file) { + if ($englishFile === $file) { + continue; + } + + $counter = 0; + $xml = simplexml_load_file($file); + $transLang = $trans; + + /** @var \SimpleXMLElement $body */ + $body = $xml->file->body; + + foreach ($body->children() as $transUnit) { + $key = (string) $transUnit->source; + if (isset($transLang[$key])) { + if ($key !== 'stats.percentUsedLeft') { // special case, which doesn't work properly - base translation should be changed + preg_match_all('/%.+%/Uu', (string) $transUnit->target, $matches); + asort($matches[0]); + self::assertEquals($transLang[$key], array_values($matches[0]), sprintf('Invalid replacer "%s" in "%s"', $key, basename($file))); + } + $counter++; + unset($transLang[$key]); + } + } + + $counter += \count($transLang); + self::assertEquals($expectedCounter, $counter, sprintf('Missing replacer in "%s", did not find translation keys: %s', basename($file), implode(', ', array_keys($transLang)))); + } + } + } +} diff --git a/translations/about.el.xlf b/translations/about.el.xlf new file mode 100644 index 00000000..c1e8b31a --- /dev/null +++ b/translations/about.el.xlf @@ -0,0 +1,39 @@ + + + + + + about.title + Σχετικά με το Kimai + + + support + Υποστήριξη + + + website + Αρχική σελίδα + + + help + Τεκμηρίωση + + + + published_under + %kimai% δημοσιεύτηκε κάτω από + + + special_thanks + Ιδιαίτερες ευχαριστίες πηγαίνουν σε … + + + library_authors + … στους συγγραφείς των παρακάτω βιβλιοθηκών-λογισμικού, το Kimai δεν θα ήταν πραγματοποιήσιμο χωρίς εσάς 👍 + + + + diff --git a/translations/actions.el.xlf b/translations/actions.el.xlf new file mode 100644 index 00000000..78745bbe --- /dev/null +++ b/translations/actions.el.xlf @@ -0,0 +1,103 @@ + + + + + + stop + Διακοπή + + + back + Πίσω + + + edit + Τροποποίηση + + + trash + Διαγραφή + + + report + Αναφορά + + + repeat + Εκκίνηση ξανά + + + profile-stats + Προφίλ + + + settings + Προτιμήσεις + + + timesheet + Χρονοδιάγραμμα + + + customer + Φίλτρο πελατών + + + project + Φίλτρο έργων + + + activity + Φίλτρο δραστηριοτήτων + + + copy + Δημιουργία αντίγραφου + + + home + Αρχική σελίδα + + + create-project + Δημιουργία έργου + + + create-activity + Δημιουργία δραστηριότητας + + + create-timesheet + Δημιουργία χρονοδιαγράμματος + + + create-timesheet-multiuser + Για πολλαπλούς χρήστες + + + permissions + Δικαιώματα ομάδας + + + details + Εμφάνιση + + + download + Λήψη + + + invoice.pending + Αναμονή της είσπραξης + + + invoice.paid + Τιμολόγιο εξοφλήθη + + + filter + Φιλτράρισμα δεδομένων + + + + diff --git a/translations/daterangepicker.el.xlf b/translations/daterangepicker.el.xlf new file mode 100644 index 00000000..6ae698ba --- /dev/null +++ b/translations/daterangepicker.el.xlf @@ -0,0 +1,43 @@ + + + + + + daterangepicker.today + Σήμερα + + + daterangepicker.yesterday + Χθες + + + daterangepicker.lastWeek + Προηγούμενη εβδομάδα + + + daterangepicker.thisWeek + Τρέχων εβδομάδα + + + daterangepicker.lastMonth + Προηγούμενος μήνας + + + daterangepicker.thisMonth + Τρέχων μήνας + + + daterangepicker.lastYear + Προηγούμενο έτος + + + daterangepicker.thisYear + Τρέχων έτος + + + daterangepicker.customRange + Προσαρμοσμένο εύρος + + + + diff --git a/translations/email.el.xlf b/translations/email.el.xlf new file mode 100644 index 00000000..11738cee --- /dev/null +++ b/translations/email.el.xlf @@ -0,0 +1,47 @@ + + + + + + button_copy_url_to_browser + Εάν το κουμπί δεν λειτουργεί, παρακαλούμε αντιγράψτε & επικολλήστε την ακόλουθη διεύθυνση URL στο πρόγραμμα περιήγησης: %url% + + + automated_email_dont_answer + Αυτό είναι ένα e-mail που δημιουργείται αυτόματα. Παρακαλούμε μην απαντήσετε, το περιεχόμενο δεν θα αναγνωσθεί. + + + registration.subject + Ενεργοποίηση του λογαριασμού σας + + + registration.title + Καλώς όρισες %username% + + + registration.button + Ενεργοποίηση λογαριασμού + + + registration.intro + Εγγραφήκατε στο λογισμικό παρακολούθησης χρόνου Kimai με το e-mail %email%. Τώρα χρειάζεται να ενεργοποιήσετε τον λογαριασμό σας εντός μερικών ωρών, προτού λήξει ο σύνδεσμος. + + + reset.subject + Επαναφορά του δικού σας κωδικού πρόσβασης + + + reset.title + Αυτό μπορεί να συμβεί ... + + + reset.button + Επαναφορά κωδικού πρόσβασης + + + reset.intro + ... επομένως ξεχάσατε τον δικό σας κωδικό πρόσβασης; Μην ανησυχείτε: Το λογισμικό Kimai θα σας βοηθήσει να δημιουργήσετε ένα νέο: + + + + diff --git a/translations/email.ko.xlf b/translations/email.ko.xlf index 24b34e27..836bab94 100644 --- a/translations/email.ko.xlf +++ b/translations/email.ko.xlf @@ -4,7 +4,7 @@ button_copy_url_to_browser - 버튼이 작동하지 않으면, 복사하여 & amp; 다음 URL을 브라우저에 붙여 넣으십시오: % url % + 버튼이 작동하지 않으면, 복사하여 & amp; 다음 URL을 브라우저에 붙여 넣으십시오: %url% automated_email_dont_answer @@ -24,7 +24,7 @@ registration.intro - 이메일 % email %로 Kimai 시간 트래커에 등록했습니다. 이제 링크가 만료되기 전에 계정을 활성화해야합니다. + 이메일 %email%로 Kimai 시간 트래커에 등록했습니다. 이제 링크가 만료되기 전에 계정을 활성화해야합니다. reset.subject diff --git a/translations/email.pl.xlf b/translations/email.pl.xlf index 1f0e9719..8ec9c815 100644 --- a/translations/email.pl.xlf +++ b/translations/email.pl.xlf @@ -4,7 +4,7 @@ button_copy_url_to_browser - Jeśli przycisk nie działa, skopiuj & i wklej następujący link do przeglądarki: %link% + Jeśli przycisk nie działa, skopiuj & i wklej następujący link do przeglądarki: %url% automated_email_dont_answer @@ -16,7 +16,7 @@ registration.title - Witaj %nazwa użytkownika% + Witaj %username% registration.button @@ -24,7 +24,7 @@ registration.intro - Zarejestrowałeś się w w rejestratorze czasu Kimai za pomocą e-maila %e-mail%. Aktywuj konto w ciągu kilku godzin, zanim link wygaśnie. + Zarejestrowałeś się w w rejestratorze czasu Kimai za pomocą e-maila %email%. Aktywuj konto w ciągu kilku godzin, zanim link wygaśnie. reset.subject diff --git a/translations/email.vi.xlf b/translations/email.vi.xlf index 97a2436a..9aa73b32 100644 --- a/translations/email.vi.xlf +++ b/translations/email.vi.xlf @@ -24,7 +24,7 @@ registration.intro - Bạn đã đăng ký theo dõi thời gian Kimai với email% email%. Bây giờ bạn phải kích hoạt tài khoản của mình trong vài giờ tới, trước khi liên kết hết hạn. + Bạn đã đăng ký theo dõi thời gian Kimai với email %email%. Bây giờ bạn phải kích hoạt tài khoản của mình trong vài giờ tới, trước khi liên kết hết hạn. reset.subject diff --git a/translations/exceptions.el.xlf b/translations/exceptions.el.xlf new file mode 100644 index 00000000..a7b42189 --- /dev/null +++ b/translations/exceptions.el.xlf @@ -0,0 +1,43 @@ + + + + + + access.denied + Η πρόσβαση απορρίφθηκε + + + stacktrace + Το πρόβλημα προέκυψε εδώ + + + http_error.title + Σφάλμα + + + http_error.description + Υπάρχει κάποιο λάθος + + + http_error.suggestion + Παρουσιάστηκε ένα κρίσιμο σφάλμα, παρακαλούμε δοκιμάστε ξανά. Ενδέχεται να έχετε βρει πρόβλημα στο λογισμικό, επικοινωνήστε με τον διαχειριστή σας εάν το πρόβλημα παραμένει. + + + http_error_404.description + Η σελίδα δεν βρέθηκε + + + http_error_404.suggestion + Δεν ήταν δυνατή η εύρεση της σελίδας που αναζητούσατε. Επιστρέψτε στον συνοπτικό πίνακα και ξανά-εκκινήσετε. + + + http_error_403.description + Σελίδα με περιορισμένη πρόσβαση + + + http_error_403.suggestion + Λυπούμαστε αλλά δεν έχετε, επαρκή δικαιώματα για να δείτε αυτήν τη σελίδα. Επικοινωνήστε με τον διαχειριστή σας εάν πιστεύετε ότι πρόκειται για σφάλμα. + + + + diff --git a/translations/exceptions.sv.xlf b/translations/exceptions.sv.xlf index 0e936865..ba374bec 100644 --- a/translations/exceptions.sv.xlf +++ b/translations/exceptions.sv.xlf @@ -1,53 +1,51 @@ - - - - - - access.denied - Åtkomst nekad - - - stacktrace - Ett problem uppstod här - - - http_error.title - Fel - - - http_error.description - Oj! Ett fel uppstod. - - - http_error.suggestion - + + + + + + access.denied + Åtkomst nekad + + + stacktrace + Ett problem uppstod här + + + http_error.title + Fel + + + http_error.description + Oj! Ett fel uppstod + + + http_error.suggestion + Ett oväntat fel inträffade, försök igen. Om problemet kvarstår efter att du försökt igen, kontakta din administratör. Du kan ha hittat en bugg. - - - http_error_404.description - Oj! Sidan hittades inte - - - http_error_404.suggestion - + + + http_error_404.description + Oj! Sidan hittades inte + + + http_error_404.suggestion + Vi kunde inte hitta sidan du letade efter. Under tiden kan du återvända till din dashboard och börja om. - - - http_error_403.description - - Den här sidan är begränsad. - - - - http_error_403.suggestion - + + + http_error_403.description + Den här sidan är begränsad + + + http_error_403.suggestion + Tyvärr har du inte tillräckligt med behörigheter för att se den här sidan. Var vänlig och kontakta din administratör om du tycker att det här är ett fel. - - - + + + diff --git a/translations/export.el.xlf b/translations/export.el.xlf new file mode 100644 index 00000000..184be409 --- /dev/null +++ b/translations/export.el.xlf @@ -0,0 +1,19 @@ + + + + + + default.pdf.twig + Τυπικό + + + default-budget.pdf.twig + Με υπολειπόμενο προϋπολογισμό + + + default-internal.pdf.twig + Με εσωτερικές χρεώσεις + + + + diff --git a/translations/export.pt-BR.xlf b/translations/export.pt-BR.xlf new file mode 100644 index 00000000..461a8fbb --- /dev/null +++ b/translations/export.pt-BR.xlf @@ -0,0 +1,11 @@ + + + + + + default.pdf.twig + Padrão + + + + diff --git a/translations/flashmessages.ar.xlf b/translations/flashmessages.ar.xlf index be1c7b05..fdd37eab 100644 --- a/translations/flashmessages.ar.xlf +++ b/translations/flashmessages.ar.xlf @@ -24,7 +24,7 @@ action.update.error - لا يمكن حفظ التغييرات:٪ السبب٪ + لا يمكن حفظ التغييرات:%reason% action.delete.success @@ -32,7 +32,7 @@ action.delete.error - لا يمكن حذف المشاركة:٪ السبب٪ + لا يمكن حذف المشاركة:%reason% invoice.first_template diff --git a/translations/flashmessages.el.xlf b/translations/flashmessages.el.xlf new file mode 100644 index 00000000..ba53512b --- /dev/null +++ b/translations/flashmessages.el.xlf @@ -0,0 +1,59 @@ + + + + + + warning + Προειδοποίηση + + + timesheet.stop.success + Η καταγραφή ωραρίου σταμάτησε + + + timesheet.stop.error + Η καταγραφή ωραρίου δεν μπόρεσε να σταματήσει + + + timesheet.start.success + Η καταγραφή ωραρίου ξεκίνησε + + + timesheet.start.error + Η καταγραφή ωραρίου δεν μπόρεσε να ξεκινήσει + + + timesheet.start.exceeded_limit + Έχει συμπληρωθεί το όριο των ενεργών καταγραφών ωραρίου, παρακαλούμε σταματήστε τουλάχιστον μία εκτελούμενη μέτρηση ωραρίου. + + + timesheet.locked.warning + Η εγγραφή που επεξεργάζεστε έχει ήδη εξαχθεί + + + action.update.success + Αποθηκευμένες αλλαγές + + + action.update.error + Δεν ήταν δυνατή η αποθήκευση των αλλαγών: %reason% + + + action.delete.success + Η καταχώριση διαγράφηκε + + + action.delete.error + Η καταχώριση δεν ήταν δυνατό να διαγραφεί: %reason% + + + invoice.first_template + Παρακαλούμε δημιουργήστε πρώτα ένα πρότυπο τιμολογίου + + + action.upload.error + Δεν ήταν δυνατή η μεταφόρτωση ή η αποθήκευση του αρχείου: %reason% + + + + diff --git a/translations/flashmessages.eu.xlf b/translations/flashmessages.eu.xlf index b7362e66..8e75ba07 100644 --- a/translations/flashmessages.eu.xlf +++ b/translations/flashmessages.eu.xlf @@ -52,7 +52,7 @@ action.upload.error - Ezin izan da fitxategia kargatu edo gorde: % reason% + Ezin izan da fitxategia kargatu edo gorde: %reason% diff --git a/translations/flashmessages.ko.xlf b/translations/flashmessages.ko.xlf index 3e0f45f9..20021543 100644 --- a/translations/flashmessages.ko.xlf +++ b/translations/flashmessages.ko.xlf @@ -52,7 +52,7 @@ action.upload.error - 파일을 업로드하거나 저장할 수 없습니다: % reason % + 파일을 업로드하거나 저장할 수 없습니다: %reason% diff --git a/translations/flashmessages.ro.xlf b/translations/flashmessages.ro.xlf index f88b32b7..3b37e637 100644 --- a/translations/flashmessages.ro.xlf +++ b/translations/flashmessages.ro.xlf @@ -55,7 +55,7 @@ action.upload.error - Acest fișier nu a putut fi încărcat sau salvat + Acest fișier nu a putut fi încărcat sau salvat: %reason% diff --git a/translations/invoice-renderer.de.xlf b/translations/invoice-renderer.de.xlf index cb150695..51e8f830 100644 --- a/translations/invoice-renderer.de.xlf +++ b/translations/invoice-renderer.de.xlf @@ -8,7 +8,7 @@ help.upload - Achtung: existierende Dateien werden übschrieben. Erlaubte Dateitypen sind: DOCX, ODS, XLSX + Achtung: existierende Dateien werden überschrieben. Erlaubte Dateitypen sind: DOCX, ODS, XLSX diff --git a/translations/messages.da.xlf b/translations/messages.da.xlf index b89a21f3..03ff9100 100644 --- a/translations/messages.da.xlf +++ b/translations/messages.da.xlf @@ -994,6 +994,54 @@ label.globalsOnly Kun globalt + + sum.total + Total + + + rates.title + Gebyr + + + rates.empty + Der er ikke konfigureret noget gebyr endnu. + + + file + Fik + + + attachments + Filer + + + label.orderBy + Sorter efter + + + label.desc + Faldende + + + label.asc + Stigende + + + label.remove_default + Slet søge favorit + + + label.set_as_default + Gem indstillinger som søge favorit + + + label.searchTerm + Søge betingelse + + + upload + Upload + diff --git a/translations/messages.el.xlf b/translations/messages.el.xlf new file mode 100644 index 00000000..be9007e4 --- /dev/null +++ b/translations/messages.el.xlf @@ -0,0 +1,1193 @@ + + + + + + + time_tracking + Παρακολούθηση Χρόνου + + + yes + Ναι + + + no + Όχι + + + both + Και τα δύο + + + This is a mandatory field + Υποχρεωτικό + + + create + Δημιουργία + + + confirm.delete + Θέλετε πραγματικά να το διαγράψετε; + + + admin_entity.delete_confirm + Αυτά τα δεδομένα επίσης θα διαγραφούν! Εναλλακτικά, μπορείτε να επιλέξετε μία καταχώρηση όπου όλα τα δεδομένα θα μεταφερθούν: + + + delete.not_in_use + Αυτό το στοιχείο μπορεί να διαγραφεί με ασφάλεια. + + + cancel + Ακύρωση + + + confirm + Επιβεβαίωση + + + upload + Μεταφόρτωση + + + search + Αναζήτηση + + + label.searchTerm + Όρος αναζήτησης + + + label.set_as_default + Αποθήκευση ρύθμισης αναζήτησης στα αγαπημένα + + + label.remove_default + Διαγραφή αναζήτησης από τα αγαπημένα + + + label.asc + Αύξουσα + + + label.desc + Φθίνουσα + + + label.orderBy + Αναδιάταξη με + + + my.profile + Το προφίλ μου + + + update_multiple + %action% %count% καταχωρήσεων; + + + attachments + Αρχεία + + + file + Αρχείο + + + rates.empty + Οι χρεώσεις δεν έχουν ρυθμιστεί ακόμη. + + + rates.title + Χρεώσεις + + + sum.total + Σύνολο + + + modal.dirty + Η φόρμα έχει μεταβληθεί. Παρακαλούμε πατήστε "Αποθήκευση" για να αποθηκεύσετε τις αλλαγές ή "Κλείσιμο" για να τις ακυρώσετε. + + + + label.password + Διαπιστευτήριο + + + label.password_repeat + Επανάληψη διαπιστευτηρίου + + + label.logout + Αποσύνδεση + + + label.user_profile + Το προφίλ μου + + + label.api_token + Διαπιστευτήριο API + + + label.api_token_repeat + Επανάληψη διαπιστευτηρίου API + + + login_required + Ληγμένη συνεδρία. Ανακατεύθυνση στην οθόνη σύνδεσης; + + + + menu.homepage + Συνοπτικός πίνακας + + + menu.admin + Διαχείριση + + + menu.system + Σύστημα + + + menu.logout + Αποσύνδεση + + + menu.timesheet + Οι ώρες μου + + + menu.invoice + Τιμολόγια + + + menu.export + Εξαγωγή + + + menu.reporting + Πληροφόρηση + + + menu.admin_timesheet + Δελτία απασχόλησης + + + menu.admin_customer + Πελάτες + + + menu.admin_project + Εργασίες + + + menu.admin_activity + Δραστηριότητες + + + menu.admin_user + Χρήστες + + + menu.admin_team + Ομάδες + + + menu.plugin + Πρόσθετα + + + menu.system_configuration + Ρυθμίσεις + + + menu.tags + Ετικέτες + + + menu.doctor + Διαγνώσεις + + + + error.no_entries_found + Δεν βρέθηκαν καταχωρήσεις με βάση τα επιλεγμένα φίλτρα. + + + error.no_comments_found + Δεν υπάρχουν δημοσιευμένα σχόλια ακόμη. + + + + label.date + Ημερομηνία + + + label.starttime + Εκκίνηση + + + label.endtime + Τερματισμός + + + label.duration + Διάρκεια + + + label.user + Χρήστης + + + label.username + Όνομα χρήστη + + + label.description + Περιγραφή + + + label.name + Όνομα + + + label.comment + Σχόλιο + + + label.id + ID + + + label.visible + Ορατή + + + label.budget + Προϋπολογισμός + + + label.timeBudget + Χρονικός Προϋπολογισμός + + + label.activity + Δραστηριότητα + + + label.project + Εργασία + + + label.tag + Ετικέτα + + + label.tags + Ετικέτες + + + label.hourlyRate + Ωρομίσθιο + + + label.hourly_rate + Ωρομίσθιο + + + label.skin + Εμφάνιση: Χρωμάτων + + + label.theme.layout + Εμφάνιση: διάταξη + + + label.hours + Ώρες + + + label.rate + Χρέωση + + + help.rate + Ωρομίσθια χρέωση που θα πιστωθεί + + + label.rate_internal + Εσωτερική Χρέωση + + + help.rate_internal + Εσωτερικές χρεώσεις (εάν δεν έχει προσδιοριστεί το πεδίο, η κανονική χρέωση εφαρμόζεται) + + + label.recalculate_rates + Επανυπολογισμός χρεώσεων + + + label.language + Γλώσσα + + + label.customer + Πελάτης + + + label.email + Ηλεκτρονική διεύθυνση + + + label.team + Ομάδα + + + label.teamlead + Επικεφαλής ομάδας + + + label.create_more + Δημιουργία περαιτέρω καταχωρήσεων + + + placeholder.type_message + Πληκτρολογήσετε το μήνυμα σας... + + + label.billable + Τιμολογήσιμο + + + + label.actions + Ενέργειες + + + action.edit + Τροποποίηση + + + action.delete + Διαγραφή + + + action.save + Αποθήκευση + + + action.save_all + Αποθήκευση όλων + + + action.reset + Αρχικοποίηση + + + action.back + Πίσω + + + action.close + Κλείσιμο + + + + dashboard.title + Συνοπτικός πίνακας + + + dashboard.subtitle + Καλώς ορίσατε! + + + dashboard.all + Όλοι οι χρήστες + + + + more.info.link + Περισσότερες πληροφορίες + + + label.toggle_dropdown + Εμφάνιση μενού + + + label.my_teams + Οι ομάδες μου + + + label.my_team_projects + Ομαδικές Εργασίες & προϋπολογισμοί + + + label.progress + Πρόοδος + + + label.plus_more + +%count% παραπάνω + + + + timesheet.title + Οι ώρες μου + + + timesheet.edit + Επεξεργασία εγγραφής + + + label.begin + Από + + + label.end + Σε + + + label.daterange + Χρονικό εύρος + + + modal.columns.title + Αλλαγή ορατότητας στηλών + + + modal.columns.description + Κατά την αποθήκευση, οι μη επιλεγμένες στήλες θα αποκρυφτούν, αυτή ή ρύθμιση θα αποθηκευτεί σε ένα cookie του προγράμματος περιήγησης. Εάν διαγράψετε τα cookies, οι ρυθμίσεις θα επαναφερθούν στις προεπιλεγμένες. + + + label.fixedRate + Σταθερή χρέωση + + + help.fixedRate + Κάθε εγγραφή θα έχει την ίδια τιμή, ανεξάρτητα από τη διάρκειά της + + + label.color + Χρώμα + + + label.replaceTags + Αντικατάσταση ετικετών + + + label.appendTags + Προσθήκη ετικετών + + + + profile.title + Προφίλ χρήστη + + + profile.about_me + Σχετικά με μένα + + + profile.first_entry + Εργάζεται από τότε + + + profile.registration_date + Εγγεγραμμένος στις + + + profile.settings + Προφίλ + + + profile.password + Κωδικός πρόσβασης + + + profile.api-token + API + + + profile.roles + Ρόλοι + + + profile.teams + Ομάδες + + + profile.preferences + Προτιμήσεις + + + label.theme.collapsed_sidebar + Ελαχιστοποιήση της αριστερής πλευρικής γραμμής + + + label.calendar.initial_view + Αρχική προβολή ημερολογίου + + + label.login.initial_view + Αρχική προβολή ύστερα από την σύνδεση + + + label.lastLogin + Τελευταία σύνδεση + + + + month + Μήνας + + + agendaWeek + Εβδομάδα + + + agendaDay + Ημέρα + + + label.timesheet.daily_stats + Εμφάνιση ημερήσιων στατιστικών στο δελτίο απασχόλησης + + + label.timesheet.export_decimal + Παρουσίασε την διάρκεια σε δεκαδική μορφή κατά την εξαγωγή + + + theme.update_browser_title + Ενημέρωση τίτλου προγράμματος περιήγησης + + + + calendar.title + Ημερολόγιο + + + calendar.drag_and_drop.delete + Εάν θέλετε να διαγράψετε μια καταχώριση, πρέπει να την σύρετε στο αντίστοιχο κουμπί. + + + + admin_timesheet.title + Δελτία απασχόλησης + + + + admin_project.title + Εργασίες + + + admin_project.short_stats + Επί του παρόντος, το έργο %project% για τον πελάτη %customer% έχει %activities% δραστηριότητες και %records% εγγραφές-ωρών, που συνολικά ανέρχονται σε %duration%. + + + label.project_start + Εκκίνηση έργου + + + label.project_end + Τερματισμός έργου + + + + admin_activity.title + Δραστηριότητες + + + admin_activity.short_stats + Επί του παρόντος η δραστηριότητα %activity% στο έργο %project% για τον πελάτη %customer% έχει %records% καταχωρήσεις-ωρών, που συνολικά ανέρχονται σε %duration%. + + + + admin_customer.title + Πελάτης + + + label.number + Λογαριασμός + + + label.company + Όνομα εταιρίας + + + label.vat + Φόρος(ΦΠΑ) + + + label.vat_id + Α.Φ.Μ + + + label.tax_rate + Τιμή Φόρου (Φ.Π.Α) + + + label.contact + Επικοινωνία + + + label.address + Διεύθυνση + + + label.country + Χώρα + + + label.phone + Τηλέφωνο + + + label.fax + Φαξ + + + label.mobile + Κινητό + + + label.homepage + Αρχική σελίδα + + + label.timezone + Ζώνη ώρας + + + label.currency + Νόμισμα + + + admin_customer.short_stats + Επί του παρόντος, ο πελάτης %customer% έχει %project% έργα με %activity% δραστηριότητες, οι οποίες συνοψίζονται σε %records% εγγραφές-ωρών με άθροισμα %duration%. + + + + admin_user.title + Χρήστης + + + label.alias + Όνομα + + + label.title + Τίτλος + + + label.avatar + Εικόνα προφίλ + + + label.active + Ενεργό + + + label.roles + Ρόλος + + + admin_user.short_stats + Επί του παρόντος, ο χρήστης %user% έχει %records% εγγραφές-ωρών με άθροισμα %duration%. + + + user_permissions.title + Δικαιώματα χρήστη + + + user_role.title + Ρόλος χρήστη + + + Allowed character: A-Z and _ + Επιτρεπόμενοι λατινικοί χαρακτήρες: A-Z και _ + + + + label.version + Έκδοση + + + label.required_version + Συμβατό με + + + + ROLE_SUPER_ADMIN + Διαχειριστής συστήματος + + + ROLE_ADMIN + Διαχειριστής + + + ROLE_TEAMLEAD + Επικεφαλής ομάδας + + + ROLE_USER + Χρήστης + + + + stats.workingTimeToday + Σήμερα, %day% + + + stats.workingTimeWeek + Ημερολογιακή εβδομάδα %week% + + + stats.workingTimeMonth + %month% %year% + + + stats.workingTimeYear + Πλήρες έτος %year% + + + stats.durationToday + Σημερινές ώρες εργασίας + + + stats.durationWeek + Ώρες εργασίας τρέχουσας εβδομάδας + + + stats.durationMonth + Ώρες εργασίας τρέχοντος μηνός + + + stats.durationYear + Ώρες εργασίας τρέχοντος έτους + + + stats.durationTotal + Συνολικές ώρες εργασίας + + + stats.yourWorkingHours + Οι δικές μου ώρες εργασίας + + + stats.amountToday + Σημερινά έσοδα + + + stats.amountWeek + Έσοδα τρέχουσας εβδομάδας + + + stats.amountMonth + Έσοδα τρέχοντος μηνός + + + stats.amountYear + Έσοδα τρέχοντος έτους + + + stats.amountTotal + Συνολικά έσοδα + + + stats.userActiveToday + Ενεργοί χρήστες σήμερα + + + stats.userActiveWeek + Ενεργοί χρήστες τρέχουσας εβδομάδας + + + stats.userActiveMonth + Ενεργοί χρήστες τρέχοντος μηνός + + + stats.userActiveYear + Ενεργοί χρήστες τρέχοντος έτους + + + stats.userActiveTotal + Ενεργοί χρήστες έκτοτε + + + stats.activeRecordings + Ενεργές εγγραφές + + + stats.userTotal + Χρήστες + + + stats.activityTotal + Δραστηριότητες + + + stats.projectTotal + Εργασίες + + + stats.customerTotal + Πελάτες + + + stats.percentUsed + %percent%% χρησιμοποιείται + + + stats.percentUsedLeft + %percent%% χρησιμοποιείται (%left% είναι ακόμα ενεργά) + + + + admin_invoice_template.title + Πρότυπο τιμολογίου + + + invoice.title + Τιμολόγια + + + invoice.filter + Φίλτρα στα δεδομένα τιμολογίων + + + button.preview + Προ-επισκόπηση + + + button.preview_print + Προ-επισκόπηση εκτύπωσης + + + button.print + Εκτύπωση + + + button.csv + CSV + + + button.xlsx + Excel + + + button.pdf + PDF + + + button.ods + ODS + + + invoice_print + Τιμολόγιο + + + label.mark_as_exported + Επισήμανση ως εξαγμένο + + + label.template + Πρότυπο + + + label.due_days + Διορία πληρωμής σε ημέρες + + + invoice.due_days + Διορία πληρωμής + + + invoice.payment_date + Ημερομηνία πληρωμής + + + invoice.from + Από + + + invoice.to + Στον + + + invoice.number + Αριθμός τιμολογίου + + + invoice.subtotal + Υποσύνολο + + + invoice.tax + Φόρος (Φ.Π.Α.) + + + invoice.total + Σύνολο + + + invoice.service_date + Ημερομηνία υπηρεσιών + + + label.amount + Ποσότητα + + + label.total_rate + Συνολικό ποσό + + + label.unit_price + Τιμή μονάδας + + + label.payment_terms + Όροι πληρωμής + + + invoice.signature_user + Επιβεβαίωση: Ημερομηνία / Όνομα συμβούλου / Υπογραφή + + + invoice.signature_customer + Επιβεβαίωση: Ημερομηνία / Όνομα πελάτη / Υπογραφή + + + invoice.total_working_time + Συνολική διάρκεια + + + label.orderNumber + Αριθμός παραγγελίας + + + label.orderDate + Ημερομηνία παραγγελίας + + + label.invoice_tax_number + Αριθ. ΦΠΑ: + + + label.invoice_bank_account + Τραπεζικός λογαριασμός + + + label.decimalDuration + Εμφάνιση διάρκειας ως δεκαδικό αριθμό + + + label.status + Κατάσταση + + + status.new + Νέο + + + status.pending + Εκκρεμεί + + + status.paid + Εξοφλήθηκε + + + preview.skipped_rows + Παράλειψη προ-επισκόπησης %rows% και περισσότερων γραμμών ... + + + + export.title + Εξαγωγή + + + export.subtitle + Εξαγωγή ωρολογίου προγράμματος σε διάφορες μορφές + + + export.filter + Φίλτρα για τα δεδομένα προς εξαγωγή + + + export.period + Περίοδος + + + export.document_title + Εξαγωγή φύλλων ωρολογίου προγράμματος + + + export.full_list + Πλήρης λίστα + + + export.summary + Περίληψη + + + export.page_of + Σελίδα %page% από %pages% + + + export.date_copyright + Δημιουργήθηκε την %date% με το %kimai% + + + + active.entries + Οι ενεργές μετρήσεις του χρόνου σας + + + timesheet.all + Εμφάνιση όλων των εγγραφών + + + recent.activities + Επανεκκινήστε μία από τις τελευταίες σας δραστηριότητες + + + recent.activities.format + %activity% του %project% για τον %customer% + + + timesheet.start + Δημιουργήστε νέα εγγραφή ωρών + + + + label.pageSize + Μέγεθος σελίδας + + + label.entryState + Εγγραφές + + + label.exported + Εξήχθησαν + + + entryState.exported + Εκκαθαρίστηκε + + + entryState.not_exported + Ανοικτό + + + entryState.all + Όλες + + + entryState.running + Ενεργές + + + entryState.stopped + Σταματημένες + + + export.clear_all + Επισήμανση όλων των εμφανιζόμενων εγγραφών ως ανοιχτών; + + + export.mark_all + Επισήμανση όλων των εμφανιζόμενων εγγραφών ως εκκαθαρισμένων; + + + label.globalsOnly + Μόνο καθολικά + + + label.batch_meta_fields + Πρόσθετα πεδία + + + help.batch_meta_fields + Τα πεδία που πρέπει να ενημερωθούν, πρέπει πρώτα να ενεργοποιηθούν κάνοντας κλικ στο σχετικό κουτάκι. + + + label.includeNoWork + Εμφάνιση καταχωρήσεων χωρίς κρατήσεις + + + label.includeNoBudget + Εμφάνιση καταχωρήσεων χωρίς προϋπολογισμό + + + label.not_exported + Μη Εξαχθείσα + + + label.not_invoiced + Δεν χρεώθηκε + + + label.last_record_before + Δεν υπάρχει ώρα κράτησης από + + + label.last_record + Τελευταία καταχώρηση + + + + diff --git a/translations/messages.eo.xlf b/translations/messages.eo.xlf index b1488499..24c652e3 100644 --- a/translations/messages.eo.xlf +++ b/translations/messages.eo.xlf @@ -1176,7 +1176,7 @@ preview.skipped_rows - Pretersaltis antaŭrigardon de %row% pliaj vicoj… + Pretersaltis antaŭrigardon de %rows% pliaj vicoj… invoice.payment_date diff --git a/translations/messages.eu.xlf b/translations/messages.eu.xlf index 42b83364..86ff5263 100644 --- a/translations/messages.eu.xlf +++ b/translations/messages.eu.xlf @@ -497,9 +497,9 @@ admin_project.short_stats - %customer% bezeroarentzako %project% proiektuak, %activities% jarduera eta - %records% sarrera ditu, guztizko %duration% iraupenarekin. - + %customer% bezeroarentzako %project% proiektuak, %activities% jarduera eta + %records% sarrera ditu, guztizko %duration% iraupenarekin. + label.project_start @@ -519,9 +519,9 @@ admin_activity.short_stats - %customer% bezeroarentzako %project% proiektuak - %records% sarrera ditu, guztizko %duration% iraupenarekin. - + %customer% bezeroarentzako %project% proiektuak, %activity% jarduera eta + %records% sarrera ditu, guztizko %duration% iraupenarekin. +