From 2a7c2a5ca3760cd78a58afb22135ef8900268a17 Mon Sep 17 00:00:00 2001 From: Jeroen De Meerleer Date: Mon, 16 Jan 2023 12:45:27 +0100 Subject: [PATCH] NEW FEATURE: added webhooks --- config/packages/translation.yaml | 2 +- config/routes.yaml | 7 + migrations/Version1003.php | 51 +++ src/Controller/JobController.php | 11 + src/Entity/Job.php | 25 ++ templates/job/add.html.twig | 454 +++++++++++------------ templates/job/view.html.twig | 1 + translations/messages.en.xlf | 4 + translations/messages.fr.xlf | 606 ------------------------------- translations/messages.leet.xlf | 550 ++++++++++++++-------------- translations/messages.lol.xlf | 586 ------------------------------ translations/messages.nl.xlf | 550 ++++++++++++++-------------- 12 files changed, 881 insertions(+), 1966 deletions(-) create mode 100644 migrations/Version1003.php delete mode 100644 translations/messages.fr.xlf delete mode 100644 translations/messages.lol.xlf diff --git a/config/packages/translation.yaml b/config/packages/translation.yaml index d87c6cf..aaf506f 100644 --- a/config/packages/translation.yaml +++ b/config/packages/translation.yaml @@ -8,7 +8,7 @@ framework: crowdin: dsn: '%env(CROWDIN_DSN)%' domains: ['messages'] - locales: ['en', 'nl', 'leet', 'lol'] + locales: ['en', 'nl', 'leet'] # loco: # dsn: '%env(LOCO_DSN)%' # lokalise: diff --git a/config/routes.yaml b/config/routes.yaml index 9ee50f2..a09b8cc 100644 --- a/config/routes.yaml +++ b/config/routes.yaml @@ -34,6 +34,13 @@ login: path: '/{_locale}/login' controller: App\Controller\UserController::loginAction +webhook: + path: '/hook/{id}/{token}' + controller: App\Controller\JobController::hookAction + requirements: + id: \d+ + token: '[A-Za-z0-9]+' + job_index: path: '/{_locale}/job' controller: App\Controller\JobController::defaultAction diff --git a/migrations/Version1003.php b/migrations/Version1003.php new file mode 100644 index 0000000..5257441 --- /dev/null +++ b/migrations/Version1003.php @@ -0,0 +1,51 @@ +connection->executeQuery('SELECT * FROM job')->fetchAllAssociative(); + foreach($allJobs as $job) { + $data = json_decode($job['data'], true); + $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + $randomString = ''; + $length = 32; + + for ($i = 0; $i < $length; $i++) { + $index = rand(0, strlen($characters) - 1); + $randomString .= $characters[$index]; + } + + $data['hooktoken'] = $randomString; + $this->addSql('UPDATE job SET data = "' . addSlashes(json_encode($data)) . '" WHERE id = ' . $job['id']); + } + } + + public function down(Schema $schema): void + { + $allJobs = $this->connection->executeQuery('SELECT * FROM job')->fetchAllAssociative(); + foreach($allJobs as $job) { + $data = json_decode($job['data'], true); + unset($data['hooktoken']); + $this->addSql('UPDATE job SET data = "' . addSlashes(json_encode($data)) . '" WHERE id = ' . $job['id']); + } + } +} diff --git a/src/Controller/JobController.php b/src/Controller/JobController.php index d78341b..09aef0d 100644 --- a/src/Controller/JobController.php +++ b/src/Controller/JobController.php @@ -111,4 +111,15 @@ class JobController extends AbstractController } return new JsonResponse(['success'=>false, 'message' => 'Your request is invalid'], Response::HTTP_BAD_REQUEST); } + + public function hookAction(Request $request, ManagerRegistry $doctrine, int $id, string $token) + { + $jobRepo = $doctrine->getRepository(Job::class); + $job = $jobRepo->find($id); + if(!empty($job->getToken()) && $job->getToken() == $token && $job->getRunning() != 1) { + return new JsonResponse($jobRepo->run($job, false, time())); + } + + return new JsonResponse(['success'=>false, 'message' => 'Your request is invalid'], Response::HTTP_BAD_REQUEST); + } } \ No newline at end of file diff --git a/src/Entity/Job.php b/src/Entity/Job.php index 50f8cd6..8c5fb95 100644 --- a/src/Entity/Job.php +++ b/src/Entity/Job.php @@ -259,4 +259,29 @@ class Job return $this; } + public function getToken(): string + { + return $this->getData('hooktoken') ?? ''; + } + + public function deleteToken(): Job + { + $this->removeData('hooktoken'); + return $this; + } + + public function addToken(): Job + { + $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + $randomString = ''; + $length = 32; + + for ($i = 0; $i < $length; $i++) { + $index = rand(0, strlen($characters) - 1); + $randomString .= $characters[$index]; + } + + $this->setData('hooktoken', $randomString); + return $this; + } } \ No newline at end of file diff --git a/templates/job/add.html.twig b/templates/job/add.html.twig index 9b9bd47..b2329f9 100644 --- a/templates/job/add.html.twig +++ b/templates/job/add.html.twig @@ -2,252 +2,252 @@ {% block title %}{{ "job.add.title" | trans }}{% endblock %} {% block content %}

{{ "job.add.header" | trans }}

-
+ -

{{ "job.addedit.generalinfo.header" | trans }}

+

{{ "job.addedit.generalinfo.header" | trans }}

-
- - - {{ "job.addedit.generalinfo.name.helptext" | trans }} -
- - - -
- - -
- -
- -
-
- -
- {{ "job.addedit.generalinfo.lastrun.eternal.label" | trans }} - -
-
- -
- - - {{ "job.addedit.generalinfo.retention.helptext" | trans }} -
- -
- -
-
50%
-
- -
-
-
- -
- - -
- -
- - - {{ "job.addedit.generalinfo.hostlabel.helptext" | trans }} -
- -

{{ "job.addedit.jobdetails.header" | trans }}

- - -
-

{{ "job.addedit.crontype.command.label" | trans }}

- - + + + {{ "job.addedit.generalinfo.name.helptext" | trans }}
- - -
-
- -
-

{{ "job.addedit.crontype.reboot.header" | trans }}

-
- - - {{ "job.addedit.crontype.reboot.reboot.command.placeholder" | trans }} -
- -
- - -
- -
- - -
- -
- - - {{ "job.addedit.crontype.reboot.reboot.delay.helptext" | trans }} -
- -
- - - {{ "job.addedit.crontype.reboot.reboot.duration.helptext" | trans }} -
-
- -
-

{{ "job.addedit.crontype.http.header" | trans }}

-
- - -
-
- - -
-
- - - {{ "job.addedit.crontype.http.basic-auth.password.helptext" | trans }} -
- -
- - -
-
- -
-

{{ "job.addedit.hosttype.local.header" | trans }}

-
{{ "job.addedit.hosttype.local.nodetails" | trans }}
-
- -
-

{{ "job.addedit.hosttype.ssh.header" | trans }}

-
- - -
- -
- - -
- -
- + - {{ "job.addedit.hosttype.ssh.privatekey.helptext" | trans }}
- - - {{ "job.addedit.hosttype.ssh.passphrase.helptext" | trans }} -
-
- -
-
- -
-

{{ "job.addedit.containertype.docker.header" | trans }}

-
- - + +
- - + +
+
+ +
+ {{ "job.addedit.generalinfo.lastrun.eternal.label" | trans }} + +
-
- -

{{ "job.addedit.variables.header" | trans }}

- -
-
- - - - {{ "job.addedit.variables.secret.label" | trans }} - - +
+ + + {{ "job.addedit.generalinfo.retention.helptext" | trans }}
-
-
-

- {{ "job.addedit.variables.helptext" | trans }} -

-
- +
+ +
+
50%
+
+ +
+
+
- - - - - +
+ + +
+ +
+ + + {{ "job.addedit.generalinfo.hostlabel.helptext" | trans }} +
+ +

{{ "job.addedit.jobdetails.header" | trans }}

+ + +
+

{{ "job.addedit.crontype.command.label" | trans }}

+
+ + +
+ +
+ + +
+
+ +
+

{{ "job.addedit.crontype.reboot.header" | trans }}

+
+ + + {{ "job.addedit.crontype.reboot.reboot.command.placeholder" | trans }} +
+ +
+ + +
+ +
+ + +
+ +
+ + + {{ "job.addedit.crontype.reboot.reboot.delay.helptext" | trans }} +
+ +
+ + + {{ "job.addedit.crontype.reboot.reboot.duration.helptext" | trans }} +
+
+ +
+

{{ "job.addedit.crontype.http.header" | trans }}

+
+ + +
+
+ + +
+
+ + + {{ "job.addedit.crontype.http.basic-auth.password.helptext" | trans }} +
+ +
+ + +
+
+ +
+

{{ "job.addedit.hosttype.local.header" | trans }}

+
{{ "job.addedit.hosttype.local.nodetails" | trans }}
+
+ +
+

{{ "job.addedit.hosttype.ssh.header" | trans }}

+
+ + +
+ +
+ + +
+ +
+ +
+ +
+ {{ "job.addedit.hosttype.ssh.privatekey.helptext" | trans }} +
+ +
+ + + {{ "job.addedit.hosttype.ssh.passphrase.helptext" | trans }} +
+
+ +
+
+ +
+

{{ "job.addedit.containertype.docker.header" | trans }}

+
+ + +
+ +
+ + +
+
+ +

{{ "job.addedit.variables.header" | trans }}

+ +
+
+ + + + {{ "job.addedit.variables.secret.label" | trans }} + + + +
+
+ +
+

+ {{ "job.addedit.variables.helptext" | trans }} +

+
+ + + + + + + {% endblock %} diff --git a/templates/job/view.html.twig b/templates/job/view.html.twig index e4619e4..c2081f5 100644 --- a/templates/job/view.html.twig +++ b/templates/job/view.html.twig @@ -2,6 +2,7 @@ {% block title %}{{ 'job.view.title' | trans({ '_jobname_': job.name }) }}{% endblock %} {% block content %}

{{ 'job.view.header' | trans({ '_jobname_': (job.name | parsetags) }) | raw }}

+

{{ 'job.view.webhookurl' | trans }}: {{ url('webhook', {id: job.id, token: job.data('hooktoken') }) }}

{{ 'job.view.edit' | trans }} {% if allruns %} | {{ 'job.view.show.onlyfailed' | trans }} diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf index 5de1869..fab062d 100644 --- a/translations/messages.en.xlf +++ b/translations/messages.en.xlf @@ -633,6 +633,10 @@ job.index.run.ran.message Cronjob ran in _runtime_ seconds with exit code _exitcode_ + + job.view.webhookurl + Webhook URL + diff --git a/translations/messages.fr.xlf b/translations/messages.fr.xlf deleted file mode 100644 index 70f3867..0000000 --- a/translations/messages.fr.xlf +++ /dev/null @@ -1,606 +0,0 @@ - - - -

- -
- - - title - Webcron management - - - header - Webcron management - - - demomode.flashnotice - Cette application est en mode démo. Les modifications sont maintenues dans la base de données, mais les tâches ne sont pas exécutées - - - demomode.credentials.header - Connexion en mode démo - - - demomode.credentials.username - Utilisateur - - - demomode.credentials.password - Mot de passe - - - menu.overview - Aperçu  - - - menu.add - Ajouter une nouvelle tâche - - - menu.settings - Paramètres - - - menu.logout - Déconnexion - - - security.login.username.label - Utilisateur - - - security.login.username.placeholder - jean@exemple.fr - - - security.login.password.label - Mot de passe - - - security.login.password.placeholder - Paris75000 - - - security.login.remember.label - Rappele-moi - - - security.login.submit-btn.label - Connecter - - - settings.title - Paramètres - - - settings.header - Paramètres - - - settings.password.header - Mot de passe - - - settings.password.current.label - Mot de passe actuel - - - settings.password.current.placeholder - Paris75000 - - - settings.password.password.label - Nouveau mot de passe - - - settings.password.password.placeholder - Nice06000 - - - settings.password.repeat.label - Confirmer mot de passe - - - settings.password.repeat.placeholder - Nice06000 - - - job.index.run.deferred.title - __job.index.run.deferred.title - - - job.index.run.deferred.message - __job.index.run.deferred.message - - - job.index.run.ran.title.success - __job.index.run.ran.title.success - - - job.index.run.ran.title.failed - __job.index.run.ran.title.failed - - - job.index.run.ran.message - __job.index.run.ran.message - - - footer.title - __footer.title - - - footer.source - __footer.source - - - job.index.title - __job.index.title - - - job.index.header - __job.index.header - - - job.index.table.headers.name - __job.index.table.headers.name - - - job.index.table.headers.host - __job.index.table.headers.host - - - job.index.table.headers.interval - __job.index.table.headers.interval - - - job.index.table.headers.nextrun - __job.index.table.headers.nextrun - - - job.index.run.selecttime.header - __job.index.run.selecttime.header - - - job.index.run.selecttime.description - __job.index.run.selecttime.description - - - job.index.run.selecttime.btnschedule.label - __job.index.run.selecttime.btnschedule.label - - - job.index.run.selecttime.btnrunnow.label - __job.index.run.selecttime.btnrunnow.label - - - job.index.run.ran.btnclose.label - __job.index.run.ran.btnclose.label - - - job.add.title - __job.add.title - - - job.add.header - __job.add.header - - - job.addedit.generalinfo.header - __job.addedit.generalinfo.header - - - job.addedit.generalinfo.name.label - __job.addedit.generalinfo.name.label - - - job.addedit.generalinfo.name.placeholder - __job.addedit.generalinfo.name.placeholder - - - job.addedit.generalinfo.name.helptext - __job.addedit.generalinfo.name.helptext - - - job.addedit.generalinfo.interval.label - __job.addedit.generalinfo.interval.label - - - job.addedit.generalinfo.interval.patterns.label - __job.addedit.generalinfo.interval.patterns.label - - - job.addedit.generalinfo.interval.patterns.minute - __job.addedit.generalinfo.interval.patterns.minute - - - job.addedit.generalinfo.interval.patterns.hour - __job.addedit.generalinfo.interval.patterns.hour - - - job.addedit.generalinfo.interval.patterns.day - __job.addedit.generalinfo.interval.patterns.day - - - job.addedit.generalinfo.interval.patterns.week - __job.addedit.generalinfo.interval.patterns.week - - - job.addedit.generalinfo.interval.patterns.4week - __job.addedit.generalinfo.interval.patterns.4week - - - job.addedit.generalinfo.nextrun.label - __job.addedit.generalinfo.nextrun.label - - - job.addedit.generalinfo.lastrun.label - __job.addedit.generalinfo.lastrun.label - - - job.addedit.generalinfo.lastrun.eternal.label - __job.addedit.generalinfo.lastrun.eternal.label - - - job.addedit.generalinfo.retention.label - __job.addedit.generalinfo.retention.label - - - job.addedit.generalinfo.retention.placeholder - __job.addedit.generalinfo.retention.placeholder - - - job.addedit.generalinfo.retention.helptext - __job.addedit.generalinfo.retention.helptext - - - job.addedit.generalinfo.failpercentage.label - __job.addedit.generalinfo.failpercentage.label - - - job.addedit.generalinfo.faildays.label - __job.addedit.generalinfo.faildays.label - - - job.addedit.generalinfo.faildays.placeholder - __job.addedit.generalinfo.faildays.placeholder - - - job.addedit.generalinfo.hostlabel.label - __job.addedit.generalinfo.hostlabel.label - - - job.addedit.generalinfo.hostlabel.placeholder - __job.addedit.generalinfo.hostlabel.placeholder - - - job.addedit.generalinfo.hostlabel.helptext - __job.addedit.generalinfo.hostlabel.helptext - - - job.addedit.jobdetails.header - __job.addedit.jobdetails.header - - - job.addedit.crontype.label - __job.addedit.crontype.label - - - job.addedit.crontype.command.label - __job.addedit.crontype.command.label - - - job.addedit.crontype.reboot.label - __job.addedit.crontype.reboot.label - - - job.addedit.crontype.http.label - __job.addedit.crontype.http.label - - - job.addedit.hosttype.label - __job.addedit.hosttype.label - - - job.addedit.hosttype.local.label - __job.addedit.hosttype.local.label - - - job.addedit.hosttype.ssh.label - __job.addedit.hosttype.ssh.label - - - job.addedit.containertype.label - __job.addedit.containertype.label - - - job.addedit.containertype.none.label - __job.addedit.containertype.none.label - - - job.addedit.containertype.docker.label - __job.addedit.containertype.docker.label - - - job.addedit.crontype.command.command.label - __job.addedit.crontype.command.command.label - - - job.addedit.crontype.command.command.placeholder - __job.addedit.crontype.command.command.placeholder - - - job.addedit.crontype.command.response.label - __job.addedit.crontype.command.response.label - - - job.addedit.crontype.command.response.placeholder - __job.addedit.crontype.command.response.placeholder - - - job.addedit.crontype.reboot.header - __job.addedit.crontype.reboot.header - - - job.addedit.crontype.reboot.reboot.command.label - __job.addedit.crontype.reboot.reboot.command.label - - - job.addedit.crontype.reboot.reboot.command.placeholder - __job.addedit.crontype.reboot.reboot.command.placeholder - - - job.addedit.crontype.reboot.getservices.command.label - __job.addedit.crontype.reboot.getservices.command.label - - - job.addedit.crontype.reboot.getservices.command.placeholder - __job.addedit.crontype.reboot.getservices.command.placeholder - - - job.addedit.crontype.reboot.getservices.response.label - __job.addedit.crontype.reboot.getservices.response.label - - - job.addedit.crontype.reboot.getservices.response.placeholder - __job.addedit.crontype.reboot.getservices.response.placeholder - - - job.addedit.crontype.reboot.reboot.delay.label - __job.addedit.crontype.reboot.reboot.delay.label - - - job.addedit.crontype.reboot.reboot.delay.placeholder - __job.addedit.crontype.reboot.reboot.delay.placeholder - - - job.addedit.crontype.reboot.reboot.delay.helptext - __job.addedit.crontype.reboot.reboot.delay.helptext - - - job.addedit.crontype.reboot.reboot.duration.label - __job.addedit.crontype.reboot.reboot.duration.label - - - job.addedit.crontype.reboot.reboot.duration.placeholder - __job.addedit.crontype.reboot.reboot.duration.placeholder - - - job.addedit.crontype.reboot.reboot.duration.helptext - __job.addedit.crontype.reboot.reboot.duration.helptext - - - job.addedit.crontype.http.header - __job.addedit.crontype.http.header - - - job.addedit.crontype.http.url.label - __job.addedit.crontype.http.url.label - - - job.addedit.crontype.http.url.placeholder - __job.addedit.crontype.http.url.placeholder - - - job.addedit.crontype.http.basic-auth.username.label - __job.addedit.crontype.http.basic-auth.username.label - - - job.addedit.crontype.http.basic-auth.username.placeholder - __job.addedit.crontype.http.basic-auth.username.placeholder - - - job.addedit.crontype.http.basic-auth.password.label - __job.addedit.crontype.http.basic-auth.password.label - - - job.addedit.crontype.http.basic-auth.password.placeholder - __job.addedit.crontype.http.basic-auth.password.placeholder - - - job.addedit.crontype.http.basic-auth.password.helptext - __job.addedit.crontype.http.basic-auth.password.helptext - - - job.addedit.crontype.http.response.label - __job.addedit.crontype.http.response.label - - - job.addedit.crontype.http.response.placeholder - __job.addedit.crontype.http.response.placeholder - - - job.addedit.hosttype.local.header - __job.addedit.hosttype.local.header - - - job.addedit.hosttype.local.nodetails - __job.addedit.hosttype.local.nodetails - - - job.addedit.hosttype.ssh.header - __job.addedit.hosttype.ssh.header - - - job.addedit.hosttype.ssh.hostname.label - __job.addedit.hosttype.ssh.hostname.label - - - job.addedit.hosttype.ssh.hostname.placeholder - __job.addedit.hosttype.ssh.hostname.placeholder - - - job.addedit.hosttype.ssh.username.label - __job.addedit.hosttype.ssh.username.label - - - job.addedit.hosttype.ssh.username.placeholder - __job.addedit.hosttype.ssh.username.placeholder - - - job.addedit.hosttype.ssh.privatekey.label - __job.addedit.hosttype.ssh.privatekey.label - - - job.addedit.hosttype.ssh.privatekey.helptext - __job.addedit.hosttype.ssh.privatekey.helptext - - - job.addedit.hosttype.ssh.passphrase.label - __job.addedit.hosttype.ssh.passphrase.label - - - job.addedit.hosttype.ssh.passphrase.placeholder - __job.addedit.hosttype.ssh.passphrase.placeholder - - - job.addedit.hosttype.ssh.passphrase.helptext - __job.addedit.hosttype.ssh.passphrase.helptext - - - job.addedit.containertype.docker.header - __job.addedit.containertype.docker.header - - - job.addedit.containertype.docker.service.label - __job.addedit.containertype.docker.service.label - - - job.addedit.containertype.docker.service.placeholder - __job.addedit.containertype.docker.service.placeholder - - - job.addedit.containertype.docker.username.label - __job.addedit.containertype.docker.username.label - - - job.addedit.containertype.docker.username.placeholder - __job.addedit.containertype.docker.username.placeholder - - - job.addedit.variables.header - __job.addedit.variables.header - - - job.addedit.variables.secret.label - __job.addedit.variables.secret.label - - - job.addedit.variables.name.placeholder - __job.addedit.variables.name.placeholder - - - job.addedit.variables.value.placeholder - __job.addedit.variables.value.placeholder - - - job.addedit.variables.helptext - __job.addedit.variables.helptext - - - job.addedit.variables.add.label - __job.addedit.variables.add.label - - - job.addedit.submit.label - __job.addedit.submit.label - - - job.view.header - __job.view.header - - - job.view.edit - __job.view.edit - - - job.view.show.onlyfailed - __job.view.show.onlyfailed - - - job.view.show.all - __job.view.show.all - - - job.view.results.exitcode - __job.view.results.exitcode - - - job.view.results.runtime - __job.view.results.runtime - - - job.view.results.manual - __job.view.results.manual - - - job.view.results.noresults.failed - __job.view.results.noresults.failed - - - job.view.results.noresults.all - __job.view.results.noresults.all - - - job.edit.title - __job.edit.title - - - job.edit.header - __job.edit.header - - - job.addedit.generalinfo.interval.placeholder - __job.addedit.generalinfo.interval.placeholder - - - job.addedit.crontype.command.header - __job.addedit.crontype.command.header - - - job.addedit.crontype.reboot.reboot.command.helptext - __job.addedit.crontype.reboot.reboot.command.helptext - - - job.addedit.hosttype.ssh.privatekey.keep.label - __job.addedit.hosttype.ssh.privatekey.keep.label - - - settings.other.header - __settings.other.header - - - settings.other.locale.label - __settings.other.locale.label - - - settings.submit.label - __settings.submit.label - - - job.view.title - __job.view.title - - - - diff --git a/translations/messages.leet.xlf b/translations/messages.leet.xlf index a50cec4..4dd9508 100644 --- a/translations/messages.leet.xlf +++ b/translations/messages.leet.xlf @@ -5,633 +5,637 @@ + + title + W3bcr0n m4n4g3m3nt + + + header + W3bcr0n m4n4g3m3nt + + + demomode.flashnotice + d1z 4ppL1c4t10n b 1n d3m0 m0d3. Ch4ng3z 1z p3rs1st3d 1n t3h d4t4b4s3, but j0bz 1z n0t b31n' 3x3cut3d + + + demomode.credentials.header + L0g1n 4 d3m0 m0d3 + + + demomode.credentials.username + Us3rn4m3 + + + demomode.credentials.password + P4ssw0rd + + + menu.overview + 0v3rv13w + + + menu.add + 4dd @ n3w cr0nj0b + + + menu.settings + S3tt1ngz + + + menu.logout + L0g0ut + + + security.login.username.label + Us3rn4m3 + + + security.login.username.placeholder + j3r03n@h4x0r.L33t + + + security.login.password.label + P4ssw0rd + + + security.login.password.placeholder + C0rr3ct H0rs3 B4tt3ry St4pL3 + + + security.login.remember.label + D0 n0t f0rg3t + + + security.login.submit-btn.label + 3nt3r + + + settings.title + S3tt1ngz + + + settings.header + S3tt1ngz + + + settings.flashes.inexistinglocale + L0c4L3 d03z n0t 3x1st + + + settings.flashes.localesaved + L0c4L3 b s4v3d + + + settings.flashes.repeatpasswordnotok + P4ssw0rdz 1z n0t 3qu4L + + + settings.flashes.currentpassnotok + P4ssw0rd b n0t c0rr3ct + + + settings.flashes.passwordsaved + P4ssw0rd b s4v3d + + + settings.password.header + P4ssw0rd + + + settings.password.current.label + Curr3nt p4ssw0rd + + + settings.password.current.placeholder + qwerty + + + settings.password.password.label + N3w p4ssw0rd + + + settings.password.password.placeholder + azerty + + + settings.password.repeat.label + R3p34t p4ssw0rd + + + settings.password.repeat.placeholder + azerty + + + settings.other.header + 0th3r s3tt1ngz + + + settings.other.locale.label + L0c4L3 + + + settings.submit.label + Subm1t + + + job.index.title + 0v3rv13w + + + job.index.header + 0v3rv13w 0f t3h cr0nj0bz + + + job.index.table.headers.name + N4m3 + + + job.index.table.headers.host + H0st + + + job.index.table.headers.interval + 1nt3rv4L + + + job.index.table.headers.nextrun + N3xtrun + job.index.flashes.jobdeleted Cr0nj0b b succ3ssfuLLy d3L3t3d - - title - W3bcr0n m4n4g3m3nt - - - header - W3bcr0n m4n4g3m3nt - - - demomode.flashnotice - d1z 4ppL1c4t10n b 1n d3m0 m0d3. Ch4ng3z 1z p3rs1st3d 1n t3h d4t4b4s3, but j0bz 1z n0t b31n' 3x3cut3d - - - demomode.credentials.header - L0g1n 4 d3m0 m0d3 - - - demomode.credentials.username - Us3rn4m3 - - - demomode.credentials.password - P4ssw0rd - - - menu.overview - 0v3rv13w - - - menu.add - 4dd @ n3w cr0nj0b - - - menu.settings - S3tt1ngz - - - menu.logout - L0g0ut - - - security.login.username.label - Us3rn4m3 - - - security.login.username.placeholder - j3r03n@h4x0r.L33t - - - security.login.password.label - P4ssw0rd - - - security.login.password.placeholder - C0rr3ct H0rs3 B4tt3ry St4pL3 - - - security.login.remember.label - D0 n0t f0rg3t - - - security.login.submit-btn.label - 3nt3r - - - settings.title - S3tt1ngz - - - settings.header - S3tt1ngz - - - settings.flashes.inexistinglocale - L0c4L3 d03z n0t 3x1st - - - settings.flashes.localesaved - L0c4L3 b s4v3d - - - settings.flashes.repeatpasswordnotok - P4ssw0rdz 1z n0t 3qu4L - - - settings.flashes.currentpassnotok - P4ssw0rd b n0t c0rr3ct - - - settings.flashes.passwordsaved - P4ssw0rd b s4v3d - - - settings.password.header - P4ssw0rd - - - settings.password.current.label - Curr3nt p4ssw0rd - - - settings.password.current.placeholder - qwerty - - - settings.password.password.label - N3w p4ssw0rd - - - settings.password.password.placeholder - azerty - - - settings.password.repeat.label - R3p34t p4ssw0rd - - - settings.password.repeat.placeholder - azerty - - - settings.other.header - 0th3r s3tt1ngz - - - settings.other.locale.label - L0c4L3 - - - settings.submit.label - Subm1t - - - job.index.title - 0v3rv13w - - - job.index.header - 0v3rv13w 0f t3h cr0nj0bz - - - job.index.table.headers.name - N4m3 - - - job.index.table.headers.host - H0st - - - job.index.table.headers.interval - 1nt3rv4L - - - job.index.table.headers.nextrun - N3xtrun - job.view.title - 0v3rv13w 0f runz 4 _jobname_ + 0v3rv13w 0f runz 4 _jobname_ job.view.header - 0v3rv13w 0f runz 4 _jobname_ + 0v3rv13w 0f runz 4 _jobname_ job.view.edit - 3d1t j0b + 3d1t j0b job.view.show.onlyfailed - 0nLy sh0w f41L3d runz + 0nLy sh0w f41L3d runz job.view.show.all - Sh0w 4LL runz + Sh0w 4LL runz job.view.results.exitcode - 3x1t c0d3 + 3x1t c0d3 job.view.results.runtime - Runt1m3 + Runt1m3 job.view.results.manual - M4nu4L run + M4nu4L run job.view.results.noresults.failed - N0 f41L3d runz f0und + N0 f41L3d runz f0und job.view.results.noresults.all - N0 runz f0und + N0 runz f0und job.edit.title - 3d1t j0b + 3d1t j0b job.edit.header - 3d1t j0b _jobname_ + 3d1t j0b _jobname_ job.edit.flashes.jobedited - Cr0nj0b b succ3ssfuLLy d3L3t3d + Cr0nj0b b succ3ssfuLLy d3L3t3d job.add.title - 4dd j0b + 4dd j0b job.add.header - 4dd n3w j0b + 4dd n3w j0b job.add.flashes.jobadded - Cr0nj0b succ3ssfuLLy 4dd3d + Cr0nj0b succ3ssfuLLy 4dd3d job.addedit.generalinfo.header - G3n3r4L 1nf0 + G3n3r4L 1nf0 job.addedit.generalinfo.name.label - N4m3 + N4m3 job.addedit.generalinfo.name.placeholder - Syst3m upd4t3 + Syst3m upd4t3 job.addedit.generalinfo.name.helptext - j00 c4n cr34t3 c0L0r3d t4gz by us1n' [t4g] + j00 c4n cr34t3 c0L0r3d t4gz by us1n' [t4g] job.addedit.generalinfo.interval.label - 1nt3rv4L (1n s3c0ndz) + 1nt3rv4L (1n s3c0ndz) job.addedit.generalinfo.interval.placeholder - 3600 + 3600 job.addedit.generalinfo.interval.patterns.label - P4tt3rnz + P4tt3rnz job.addedit.generalinfo.interval.patterns.minute - 3v3ry m1nut3 + 3v3ry m1nut3 job.addedit.generalinfo.interval.patterns.hour - 3v3ry h0ur + 3v3ry h0ur job.addedit.generalinfo.interval.patterns.day - 3v3ry d4y + 3v3ry d4y job.addedit.generalinfo.interval.patterns.week - 3v3ry w33k + 3v3ry w33k job.addedit.generalinfo.interval.patterns.4week - 3v3ry 4 w33kz + 3v3ry 4 w33kz job.addedit.generalinfo.nextrun.label - N3xt run + N3xt run job.addedit.generalinfo.lastrun.label - L4st run + L4st run job.addedit.generalinfo.lastrun.eternal.label - 3t3rn4L + 3t3rn4L job.addedit.generalinfo.retention.label - R3t3nt10n (1n d4yz) + R3t3nt10n (1n d4yz) job.addedit.generalinfo.retention.placeholder - 180 + 180 job.addedit.generalinfo.retention.helptext - H0w m4ny d4yz (4t l34st) 2 k33p runz 0f d1z j0b 1n t3h d4t4b4s3 + H0w m4ny d4yz (4t l34st) 2 k33p runz 0f d1z j0b 1n t3h d4t4b4s3 job.addedit.generalinfo.failpercentage.label - M4x f41L p3rc3nt4g3 + M4x f41L p3rc3nt4g3 job.addedit.generalinfo.faildays.label - Numb3r 0f d4yz c4LcuL4t3d 4 f41L p3rc3nt4g3 + Numb3r 0f d4yz c4LcuL4t3d 4 f41L p3rc3nt4g3 job.addedit.generalinfo.faildays.placeholder - 7 + 7 job.addedit.generalinfo.hostlabel.label - H0st l4b3L + H0st l4b3L job.addedit.generalinfo.hostlabel.placeholder - N3wb13 s3rv3r + N3wb13 s3rv3r job.addedit.generalinfo.hostlabel.helptext - Wh1ch l4b3L 4 t3h h0stn4m3 sh0uLd b d1spL4y3d? 1f 3mpty t3h d1z w1LL b t3h h0stn4m3 pr0v1d3d b3L0w + Wh1ch l4b3L 4 t3h h0stn4m3 sh0uLd b d1spL4y3d? 1f 3mpty t3h d1z w1LL b t3h h0stn4m3 pr0v1d3d b3L0w job.addedit.jobdetails.header - J0b d3t41Lz + J0b d3t41Lz job.addedit.crontype.label - J0b typ3 + J0b typ3 job.addedit.crontype.command.label - C0mm4nd + C0mm4nd job.addedit.crontype.command.header - C0mm4nd d3t41Lz + C0mm4nd d3t41Lz job.addedit.crontype.command.command.label - C0mm4nd + C0mm4nd job.addedit.crontype.command.command.placeholder - sudo rm -rf / + sudo rm -rf / job.addedit.crontype.command.response.label - 3xp3ct3d 3x1t c0d3 + 3xp3ct3d 3x1t c0d3 job.addedit.crontype.command.response.placeholder - 0 + 0 job.addedit.crontype.reboot.label - R3b00t + R3b00t job.addedit.crontype.reboot.header - R3b00t j0b d3t41Lz + R3b00t j0b d3t41Lz job.addedit.crontype.reboot.reboot.command.label - R3b00t c0mm4nd + R3b00t c0mm4nd job.addedit.crontype.reboot.reboot.command.placeholder - sudo telinit 6 + sudo telinit 6 job.addedit.crontype.reboot.reboot.command.helptext - Us3 {reboot-delay} 0r {reboot-delay-secs} 2 4dd t3h d3L4y 1n y0 c0mm4nd + Us3 {reboot-delay} 0r {reboot-delay-secs} 2 4dd t3h d3L4y 1n y0 c0mm4nd job.addedit.crontype.reboot.reboot.delay.label - R3b00t d3L4y (1n m1nut3z) + R3b00t d3L4y (1n m1nut3z) job.addedit.crontype.reboot.reboot.delay.placeholder - 5 + 5 job.addedit.crontype.reboot.reboot.delay.helptext - D3L4y b3tw33n tr1gg3r1n' r3b00t n 4ctu4L r3b00t + D3L4y b3tw33n tr1gg3r1n' r3b00t n 4ctu4L r3b00t job.addedit.crontype.reboot.reboot.duration.label - R3b00t dur4t10n (1n m1nut3z) + R3b00t dur4t10n (1n m1nut3z) job.addedit.crontype.reboot.reboot.duration.placeholder - 10 + 10 job.addedit.crontype.reboot.reboot.duration.helptext - t3h 4m0unt 0f t1m3 t3h syst3m t4k3z 2 4ctu4LLy r3b00t + t3h 4m0unt 0f t1m3 t3h syst3m t4k3z 2 4ctu4LLy r3b00t job.addedit.crontype.reboot.getservices.command.label - G3t s3rv1c3z c0mm4nd + G3t s3rv1c3z c0mm4nd job.addedit.crontype.reboot.getservices.command.placeholder - ps -aux + ps -aux job.addedit.crontype.reboot.getservices.response.label - G3t s3rv1c3z c0mm4nd 3x1t c0d3 + G3t s3rv1c3z c0mm4nd 3x1t c0d3 job.addedit.crontype.reboot.getservices.response.placeholder - 0 + 0 job.addedit.crontype.http.label - HTTP r3qu3st + HTTP r3qu3st job.addedit.crontype.http.header - HTTP r3qu3st d3t41Lz + HTTP r3qu3st d3t41Lz job.addedit.crontype.http.url.label - UrL + UrL job.addedit.crontype.http.url.placeholder - https://www.h4x0r.l33t + https://www.h4x0r.l33t job.addedit.crontype.http.basic-auth.username.label - Us3rn4m3 4 b4s1c 4uth + Us3rn4m3 4 b4s1c 4uth job.addedit.crontype.http.basic-auth.username.placeholder - www-data + root job.addedit.crontype.http.basic-auth.password.label - P4ssw0rd 4 b4s1c 4uth + P4ssw0rd 4 b4s1c 4uth job.addedit.crontype.http.basic-auth.password.placeholder - c0rr3ct h0rs3 b4tt3ry st4pL3 + c0rr3ct h0rs3 b4tt3ry st4pL3 job.addedit.crontype.http.basic-auth.password.helptext - d1z f13Ld b b31n' s4v3d 4z @ s3cr3t + d1z f13Ld b b31n' s4v3d 4z @ s3cr3t job.addedit.crontype.http.response.label - 3xp3ct3d http st4tuz c0d3 + 3xp3ct3d http st4tuz c0d3 job.addedit.crontype.http.response.placeholder - 503 + 503 job.addedit.hosttype.label - H0st typ3 + H0st typ3 job.addedit.hosttype.local.label - L0c4L + L0c4L job.addedit.hosttype.local.header - L0c4Lh0st d3t41Lz + L0c4Lh0st d3t41Lz job.addedit.hosttype.local.nodetails - N0 0pt10nz + N0 0pt10nz job.addedit.hosttype.ssh.label - SSH + SSH job.addedit.hosttype.ssh.header - SSH h0st d3t41Lz + SSH h0st d3t41Lz job.addedit.hosttype.ssh.hostname.label - H0stn4m3 + H0stn4m3 job.addedit.hosttype.ssh.hostname.placeholder - g4t3w4y.n00b.0rg + g4t3w4y.n00b.0rg job.addedit.hosttype.ssh.username.label - Us3rn4m3 + Us3rn4m3 job.addedit.hosttype.ssh.username.placeholder - anonymous + anonymous job.addedit.hosttype.ssh.privatekey.label - Pr1v4t3 k3y + Pr1v4t3 k3y job.addedit.hosttype.ssh.privatekey.helptext - d1z f1L3 b b31n' s4v3z 4z @ s3cr3t + d1z f1L3 b b31n' s4v3z 4z @ s3cr3t job.addedit.hosttype.ssh.privatekey.keep.label - K33p + K33p job.addedit.hosttype.ssh.passphrase.label - P4ssphr4s3 4 pr1v4t3 k3y + P4ssphr4s3 4 pr1v4t3 k3y job.addedit.hosttype.ssh.passphrase.placeholder - w00t w00t + w00t w00t job.addedit.hosttype.ssh.passphrase.helptext - 1f pr1v4t3 k3y b 3mpty d1z f13Ld b b31n' us3d 4z ssh-p4ssw0rd d1z f13Ld b b31n' s4v3d 4z @ s3cr3t + 1f pr1v4t3 k3y b 3mpty d1z f13Ld b b31n' us3d 4z ssh-p4ssw0rd d1z f13Ld b b31n' s4v3d 4z @ s3cr3t job.addedit.containertype.label - C0nt41n3r typ3 + C0nt41n3r typ3 job.addedit.containertype.none.label - N0n3 + N0n3 job.addedit.containertype.docker.label - D0ck3r + D0ck3r job.addedit.containertype.docker.header - D0ck3r c0nt41n3r d3t41Lz + D0ck3r c0nt41n3r d3t41Lz job.addedit.containertype.docker.service.label - S3rv1c3 + S3rv1c3 job.addedit.containertype.docker.service.placeholder - gopher + gopher job.addedit.containertype.docker.username.label - Us3rn4m3 + Us3rn4m3 job.addedit.containertype.docker.username.placeholder - root + root job.addedit.variables.header - V4r14bL3z + V4r14bL3z job.addedit.variables.secret.label - S3cr3t + S3cr3t job.addedit.variables.name.placeholder - N4m3 + N4m3 job.addedit.variables.value.placeholder - V4Lu3 + V4Lu3 job.addedit.variables.helptext - j00 c4n 4dd v4r14bL3z by us1n' {v4r14bL3-n4m3} 1n j0b d3t41Lz + j00 c4n 4dd v4r14bL3z by us1n' {v4r14bL3-n4m3} 1n j0b d3t41Lz job.addedit.variables.add.label - 4dd variable + 4dd variable job.addedit.submit.label - Subm1t! + Subm1t! footer.title - W3bcr0n m4n4g3m3nt + W3bcr0n m4n4g3m3nt footer.source - S0urc3 + S0urc3 job.index.run.selecttime.header - Wh3n 2 run d1z j0b? + Wh3n 2 run d1z j0b? job.index.run.selecttime.description - PL34s3 s3L3ct t3h t1m3 2 run d1z j0b + PL34s3 s3L3ct t3h t1m3 2 run d1z j0b job.index.run.selecttime.btnschedule.label - Sch3duL3 + Sch3duL3 job.index.run.selecttime.btnrunnow.label - Run n0w + Run n0w job.index.run.ran.btnclose.label - CL0s3 + CL0s3 job.index.run.deferred.title - Cr0nj0b h4z b33n sch3duL3d + Cr0nj0b h4z b33n sch3duL3d job.index.run.deferred.message - J0b wuz sch3duL3d 2 b run. j00 w1LL f1nd t3h 0utput s00n 1n t3h j0b d3t41Lz + J0b wuz sch3duL3d 2 b run. j00 w1LL f1nd t3h 0utput s00n 1n t3h j0b d3t41Lz job.index.run.ran.title.success - Cr0nj0b succ3sfuLLy r4n + Cr0nj0b succ3sfuLLy r4n job.index.run.ran.title.failed - Cr0nj0b f41L3d. PL34s3 ch3ck 0utput b3L0w + Cr0nj0b f41L3d. PL34s3 ch3ck 0utput b3L0w job.index.run.ran.message - Cr0nj0b r4n 1n _runtime_ s3c0ndz w1th 3x1t c0d3 _exitcode_ + Cr0nj0b r4n 1n _runtime_ s3c0ndz w1th 3x1t c0d3 _exitcode_ + + + job.view.webhookurl + W3bh00k URL diff --git a/translations/messages.lol.xlf b/translations/messages.lol.xlf deleted file mode 100644 index afb23d1..0000000 --- a/translations/messages.lol.xlf +++ /dev/null @@ -1,586 +0,0 @@ - - - -
- -
- - - title - webcROn managemnt - - - header - webcROn managemnt - - - demomode.flashnotice - tHIZ ApplicashuN R in deEMo mode?? changez iz persisTd in tEH dATabase but jobz iz not bean executd k? - - - demomode.credentials.header - loGIN fr DEEmo mode - - - demomode.credentials.username - oH hi username - - - demomode.credentials.password - oh hi paswORD k? - - - menu.overview - ovrview plz? - - - menu.add - ADD new cRONJob plz? - - - menu.settings - settingz - - - menu.logout - oh hi logowt plz? - - - security.login.username.label - oH hi username - - - security.login.username.placeholder - __security.login.username.placeholder - - - security.login.password.label - oh hi paswORD k? - - - security.login.password.placeholder - burgerz plz? - - - security.login.remember.label - rememBr me - - - security.login.submit-btn.label - login - - - settings.title - settingz - - - settings.header - settingz - - - settings.password.header - oh hi paswORD k? - - - settings.password.current.label - currnt paswoRD - - - settings.password.current.placeholder - burgerz plz? - - - settings.password.password.label - new pasword - - - settings.password.password.placeholder - MOAr paswoRD - - - settings.password.repeat.label - Repeet pasword plz? - - - settings.password.repeat.placeholder - MOAr paswoRD - - - settings.other.header - othr settingz plz? - - - settings.other.locale.label - languagE - - - settings.submit.label - __settings.submit.label - - - job.index.title - __job.index.title - - - job.index.header - __job.index.header - - - job.index.table.headers.name - __job.index.table.headers.name - - - job.index.table.headers.host - __job.index.table.headers.host - - - job.index.table.headers.interval - __job.index.table.headers.interval - - - job.index.table.headers.nextrun - __job.index.table.headers.nextrun - - - job.view.title - __job.view.title - - - job.view.header - __job.view.header - - - job.view.edit - __job.view.edit - - - job.view.show.onlyfailed - __job.view.show.onlyfailed - - - job.view.show.all - __job.view.show.all - - - job.view.results.exitcode - __job.view.results.exitcode - - - job.view.results.runtime - __job.view.results.runtime - - - job.view.results.manual - __job.view.results.manual - - - job.view.results.noresults.failed - __job.view.results.noresults.failed - - - job.view.results.noresults.all - __job.view.results.noresults.all - - - job.edit.title - __job.edit.title - - - job.edit.header - __job.edit.header - - - job.add.title - __job.add.title - - - job.add.header - __job.add.header - - - job.addedit.generalinfo.header - __job.addedit.generalinfo.header - - - job.addedit.generalinfo.name.label - __job.addedit.generalinfo.name.label - - - job.addedit.generalinfo.name.placeholder - __job.addedit.generalinfo.name.placeholder - - - job.addedit.generalinfo.name.helptext - __job.addedit.generalinfo.name.helptext - - - job.addedit.generalinfo.interval.label - __job.addedit.generalinfo.interval.label - - - job.addedit.generalinfo.interval.placeholder - __job.addedit.generalinfo.interval.placeholder - - - job.addedit.generalinfo.interval.patterns.label - __job.addedit.generalinfo.interval.patterns.label - - - job.addedit.generalinfo.interval.patterns.minute - __job.addedit.generalinfo.interval.patterns.minute - - - job.addedit.generalinfo.interval.patterns.hour - __job.addedit.generalinfo.interval.patterns.hour - - - job.addedit.generalinfo.interval.patterns.day - __job.addedit.generalinfo.interval.patterns.day - - - job.addedit.generalinfo.interval.patterns.week - __job.addedit.generalinfo.interval.patterns.week - - - job.addedit.generalinfo.interval.patterns.4week - __job.addedit.generalinfo.interval.patterns.4week - - - job.addedit.generalinfo.nextrun.label - __job.addedit.generalinfo.nextrun.label - - - job.addedit.generalinfo.lastrun.label - __job.addedit.generalinfo.lastrun.label - - - job.addedit.generalinfo.lastrun.eternal.label - __job.addedit.generalinfo.lastrun.eternal.label - - - job.addedit.generalinfo.retention.label - __job.addedit.generalinfo.retention.label - - - job.addedit.generalinfo.retention.placeholder - __job.addedit.generalinfo.retention.placeholder - - - job.addedit.generalinfo.retention.helptext - __job.addedit.generalinfo.retention.helptext - - - job.addedit.generalinfo.failpercentage.label - __job.addedit.generalinfo.failpercentage.label - - - job.addedit.generalinfo.faildays.label - __job.addedit.generalinfo.faildays.label - - - job.addedit.generalinfo.faildays.placeholder - __job.addedit.generalinfo.faildays.placeholder - - - job.addedit.generalinfo.hostlabel.label - __job.addedit.generalinfo.hostlabel.label - - - job.addedit.generalinfo.hostlabel.placeholder - __job.addedit.generalinfo.hostlabel.placeholder - - - job.addedit.generalinfo.hostlabel.helptext - __job.addedit.generalinfo.hostlabel.helptext - - - job.addedit.jobdetails.header - __job.addedit.jobdetails.header - - - job.addedit.crontype.label - __job.addedit.crontype.label - - - job.addedit.crontype.command.label - __job.addedit.crontype.command.label - - - job.addedit.crontype.command.header - __job.addedit.crontype.command.header - - - job.addedit.crontype.command.command.label - __job.addedit.crontype.command.command.label - - - job.addedit.crontype.command.command.placeholder - __job.addedit.crontype.command.command.placeholder - - - job.addedit.crontype.command.response.label - __job.addedit.crontype.command.response.label - - - job.addedit.crontype.command.response.placeholder - __job.addedit.crontype.command.response.placeholder - - - job.addedit.crontype.reboot.label - __job.addedit.crontype.reboot.label - - - job.addedit.crontype.reboot.header - __job.addedit.crontype.reboot.header - - - job.addedit.crontype.reboot.reboot.command.label - __job.addedit.crontype.reboot.reboot.command.label - - - job.addedit.crontype.reboot.reboot.command.placeholder - __job.addedit.crontype.reboot.reboot.command.placeholder - - - job.addedit.crontype.reboot.reboot.command.helptext - __job.addedit.crontype.reboot.reboot.command.helptext - - - job.addedit.crontype.reboot.reboot.delay.label - __job.addedit.crontype.reboot.reboot.delay.label - - - job.addedit.crontype.reboot.reboot.delay.placeholder - __job.addedit.crontype.reboot.reboot.delay.placeholder - - - job.addedit.crontype.reboot.reboot.delay.helptext - __job.addedit.crontype.reboot.reboot.delay.helptext - - - job.addedit.crontype.reboot.reboot.duration.label - __job.addedit.crontype.reboot.reboot.duration.label - - - job.addedit.crontype.reboot.reboot.duration.placeholder - __job.addedit.crontype.reboot.reboot.duration.placeholder - - - job.addedit.crontype.reboot.reboot.duration.helptext - __job.addedit.crontype.reboot.reboot.duration.helptext - - - job.addedit.crontype.reboot.getservices.command.label - __job.addedit.crontype.reboot.getservices.command.label - - - job.addedit.crontype.reboot.getservices.command.placeholder - __job.addedit.crontype.reboot.getservices.command.placeholder - - - job.addedit.crontype.reboot.getservices.response.label - __job.addedit.crontype.reboot.getservices.response.label - - - job.addedit.crontype.reboot.getservices.response.placeholder - __job.addedit.crontype.reboot.getservices.response.placeholder - - - job.addedit.crontype.http.label - __job.addedit.crontype.http.label - - - job.addedit.crontype.http.header - __job.addedit.crontype.http.header - - - job.addedit.crontype.http.url.label - __job.addedit.crontype.http.url.label - - - job.addedit.crontype.http.url.placeholder - __job.addedit.crontype.http.url.placeholder - - - job.addedit.crontype.http.basic-auth.username.label - __job.addedit.crontype.http.basic-auth.username.label - - - job.addedit.crontype.http.basic-auth.username.placeholder - __job.addedit.crontype.http.basic-auth.username.placeholder - - - job.addedit.crontype.http.basic-auth.password.label - __job.addedit.crontype.http.basic-auth.password.label - - - job.addedit.crontype.http.basic-auth.password.placeholder - __job.addedit.crontype.http.basic-auth.password.placeholder - - - job.addedit.crontype.http.basic-auth.password.helptext - __job.addedit.crontype.http.basic-auth.password.helptext - - - job.addedit.crontype.http.response.label - __job.addedit.crontype.http.response.label - - - job.addedit.crontype.http.response.placeholder - __job.addedit.crontype.http.response.placeholder - - - job.addedit.hosttype.label - __job.addedit.hosttype.label - - - job.addedit.hosttype.local.label - __job.addedit.hosttype.local.label - - - job.addedit.hosttype.local.header - __job.addedit.hosttype.local.header - - - job.addedit.hosttype.local.nodetails - __job.addedit.hosttype.local.nodetails - - - job.addedit.hosttype.ssh.label - __job.addedit.hosttype.ssh.label - - - job.addedit.hosttype.ssh.header - __job.addedit.hosttype.ssh.header - - - job.addedit.hosttype.ssh.hostname.label - __job.addedit.hosttype.ssh.hostname.label - - - job.addedit.hosttype.ssh.hostname.placeholder - __job.addedit.hosttype.ssh.hostname.placeholder - - - job.addedit.hosttype.ssh.username.label - __job.addedit.hosttype.ssh.username.label - - - job.addedit.hosttype.ssh.username.placeholder - __job.addedit.hosttype.ssh.username.placeholder - - - job.addedit.hosttype.ssh.privatekey.label - __job.addedit.hosttype.ssh.privatekey.label - - - job.addedit.hosttype.ssh.privatekey.helptext - __job.addedit.hosttype.ssh.privatekey.helptext - - - job.addedit.hosttype.ssh.privatekey.keep.label - __job.addedit.hosttype.ssh.privatekey.keep.label - - - job.addedit.hosttype.ssh.passphrase.label - __job.addedit.hosttype.ssh.passphrase.label - - - job.addedit.hosttype.ssh.passphrase.placeholder - __job.addedit.hosttype.ssh.passphrase.placeholder - - - job.addedit.hosttype.ssh.passphrase.helptext - __job.addedit.hosttype.ssh.passphrase.helptext - - - job.addedit.containertype.label - __job.addedit.containertype.label - - - job.addedit.containertype.none.label - __job.addedit.containertype.none.label - - - job.addedit.containertype.docker.label - __job.addedit.containertype.docker.label - - - job.addedit.containertype.docker.header - __job.addedit.containertype.docker.header - - - job.addedit.containertype.docker.service.label - __job.addedit.containertype.docker.service.label - - - job.addedit.containertype.docker.service.placeholder - __job.addedit.containertype.docker.service.placeholder - - - job.addedit.containertype.docker.username.label - __job.addedit.containertype.docker.username.label - - - job.addedit.containertype.docker.username.placeholder - __job.addedit.containertype.docker.username.placeholder - - - job.addedit.variables.header - __job.addedit.variables.header - - - job.addedit.variables.secret.label - __job.addedit.variables.secret.label - - - job.addedit.variables.name.placeholder - __job.addedit.variables.name.placeholder - - - job.addedit.variables.value.placeholder - __job.addedit.variables.value.placeholder - - - job.addedit.variables.helptext - __job.addedit.variables.helptext - - - job.addedit.variables.add.label - __job.addedit.variables.add.label - - - job.addedit.submit.label - __job.addedit.submit.label - - - footer.title - __footer.title - - - footer.source - __footer.source - - - job.index.run.selecttime.header - __job.index.run.selecttime.header - - - job.index.run.selecttime.description - __job.index.run.selecttime.description - - - job.index.run.selecttime.btnschedule.label - __job.index.run.selecttime.btnschedule.label - - - job.index.run.selecttime.btnrunnow.label - __job.index.run.selecttime.btnrunnow.label - - - job.index.run.ran.btnclose.label - __job.index.run.ran.btnclose.label - - -
-
diff --git a/translations/messages.nl.xlf b/translations/messages.nl.xlf index 34374b8..4462adc 100644 --- a/translations/messages.nl.xlf +++ b/translations/messages.nl.xlf @@ -5,633 +5,637 @@ + + title + Webcron management + + + header + Webcron management + + + demomode.flashnotice + Deze applicatie is in demo modus. Alle functies zijn actief, maar taken worden niet uitgevoerd + + + demomode.credentials.header + Aanmeldgegevens voor demo modus: + + + demomode.credentials.username + Gebruikersnaam + + + demomode.credentials.password + Wachtwoord + + + menu.overview + Overzicht + + + menu.add + Taak toevoegen + + + menu.settings + Instellingen + + + menu.logout + Afmelden + + + security.login.username.label + Gebruikersnaam + + + security.login.username.placeholder + jeroen@example.com + + + security.login.password.label + Wachtwoord + + + security.login.password.placeholder + abc123 + + + security.login.remember.label + Onthoud mij! + + + security.login.submit-btn.label + Aanmelden + + + settings.title + Instellingen + + + settings.header + Instellingen + + + settings.flashes.inexistinglocale + Taal bestaat niet + + + settings.flashes.localesaved + Taal werd opgeslagen + + + settings.flashes.repeatpasswordnotok + Wachtwoorden zijn niet gelijk + + + settings.flashes.currentpassnotok + Wachtwoord is not correct + + + settings.flashes.passwordsaved + Wachtwoord werd opgeslagen + + + settings.password.header + Wachtwoord + + + settings.password.current.label + Huidig wachtwoord + + + settings.password.current.placeholder + abc123 + + + settings.password.password.label + Nieuw wachtwoord + + + settings.password.password.placeholder + 123abc + + + settings.password.repeat.label + Herhaal wachtwoord + + + settings.password.repeat.placeholder + 123abc + + + settings.other.header + Andere instellingen + + + settings.other.locale.label + Taal + + + settings.submit.label + Verzend! + + + job.index.title + Overzicht + + + job.index.header + Overzicht van de geplande taken + + + job.index.table.headers.name + Naam + + + job.index.table.headers.host + Host + + + job.index.table.headers.interval + Interval + + + job.index.table.headers.nextrun + Volgende uitvoering + job.index.flashes.jobdeleted Taak werd succesvol verwijderd - - title - Webcron management - - - header - Webcron management - - - demomode.flashnotice - Deze applicatie is in demo modus. Alle functies zijn actief, maar taken worden niet uitgevoerd - - - demomode.credentials.header - Aanmeldgegevens voor demo modus: - - - demomode.credentials.username - Gebruikersnaam - - - demomode.credentials.password - Wachtwoord - - - menu.overview - Overzicht - - - menu.add - Taak toevoegen - - - menu.settings - Instellingen - - - menu.logout - Afmelden - - - security.login.username.label - Gebruikersnaam - - - security.login.username.placeholder - jeroen@example.com - - - security.login.password.label - Wachtwoord - - - security.login.password.placeholder - abc123 - - - security.login.remember.label - Onthoud mij! - - - security.login.submit-btn.label - Aanmelden - - - settings.title - Instellingen - - - settings.header - Instellingen - - - settings.flashes.inexistinglocale - Taal bestaat niet - - - settings.flashes.localesaved - Taal werd opgeslagen - - - settings.flashes.repeatpasswordnotok - Wachtwoorden zijn niet gelijk - - - settings.flashes.currentpassnotok - Wachtwoord is not correct - - - settings.flashes.passwordsaved - Wachtwoord werd opgeslagen - - - settings.password.header - Wachtwoord - - - settings.password.current.label - Huidig wachtwoord - - - settings.password.current.placeholder - abc123 - - - settings.password.password.label - Nieuw wachtwoord - - - settings.password.password.placeholder - 123abc - - - settings.password.repeat.label - Herhaal wachtwoord - - - settings.password.repeat.placeholder - 123abc - - - settings.other.header - Andere instellingen - - - settings.other.locale.label - Taal - - - settings.submit.label - Verzend! - - - job.index.title - Overzicht - - - job.index.header - Overzicht van de geplande taken - - - job.index.table.headers.name - Naam - - - job.index.table.headers.host - Host - - - job.index.table.headers.interval - Interval - - - job.index.table.headers.nextrun - Volgende uitvoering - job.view.title - Overzicht van uitvoeringen van _jobname_ + Overzicht van uitvoeringen van _jobname_ job.view.header - Overzicht van uitvoeringen van _jobname_ + Overzicht van uitvoeringen van _jobname_ job.view.edit - Bewerk taak + Bewerk taak job.view.show.onlyfailed - Toon alleen gefaalde uitvoeringen + Toon alleen gefaalde uitvoeringen job.view.show.all - Toon alle uitvoeringen + Toon alle uitvoeringen job.view.results.exitcode - Resultaat + Resultaat job.view.results.runtime - Duurtijd + Duurtijd job.view.results.manual - Manuele uitvoering + Manuele uitvoering job.view.results.noresults.failed - Geen gefaalde uitvoeringen gevonden + Geen gefaalde uitvoeringen gevonden job.view.results.noresults.all - Geen uitvoeringen gevonden + Geen uitvoeringen gevonden job.edit.title - Bewerk taak + Bewerk taak job.edit.header - Bewerk taak _jobname_ + Bewerk taak _jobname_ job.edit.flashes.jobedited - Taak werd succesvol bijgewerkt + Taak werd succesvol bijgewerkt job.add.title - Taak toevoegen + Taak toevoegen job.add.header - Nieuwe taak toevoegen + Nieuwe taak toevoegen job.add.flashes.jobadded - Taak werd succesvol toegevoegd + Taak werd succesvol toegevoegd job.addedit.generalinfo.header - Algemene info + Algemene info job.addedit.generalinfo.name.label - Naam + Naam job.addedit.generalinfo.name.placeholder - Systemen updaten + Systemen updaten job.addedit.generalinfo.name.helptext - Je kan gekleurde tags toevoegen met [tag] + Je kan gekleurde tags toevoegen met [tag] job.addedit.generalinfo.interval.label - Interval (in seconden) + Interval (in seconden) job.addedit.generalinfo.interval.placeholder - 3600 + 3600 job.addedit.generalinfo.interval.patterns.label - Patronen + Patronen job.addedit.generalinfo.interval.patterns.minute - Iedere minuut + Iedere minuut job.addedit.generalinfo.interval.patterns.hour - Ieder uur + Ieder uur job.addedit.generalinfo.interval.patterns.day - Iedere dag + Iedere dag job.addedit.generalinfo.interval.patterns.week - Iedere week + Iedere week job.addedit.generalinfo.interval.patterns.4week - Iedere 4 weken + Iedere 4 weken job.addedit.generalinfo.nextrun.label - Volgende uitvoering + Volgende uitvoering job.addedit.generalinfo.lastrun.label - Laatste uitvoering + Laatste uitvoering job.addedit.generalinfo.lastrun.eternal.label - Eeuwig + Eeuwig job.addedit.generalinfo.retention.label - Opslag (in dagen) + Opslag (in dagen) job.addedit.generalinfo.retention.placeholder - 180 + 180 job.addedit.generalinfo.retention.helptext - Hoeveel dagen moeten uitvoeringen van een job bewaard worden + Hoeveel dagen moeten uitvoeringen van een job bewaard worden job.addedit.generalinfo.failpercentage.label - Max faalpercentage + Max faalpercentage job.addedit.generalinfo.faildays.label - Aantal dagen berekend voor faalpercentage + Aantal dagen berekend voor faalpercentage job.addedit.generalinfo.faildays.placeholder - 7 + 7 job.addedit.generalinfo.hostlabel.label - Host label + Host label job.addedit.generalinfo.hostlabel.placeholder - petrosian.jeroened.be + petrosian.jeroened.be job.addedit.generalinfo.hostlabel.helptext - Geef hier een eenvoudig te herkennen hostnaam. Indien leeg zal hostnaam uit de taak details gebruikt worden + Geef hier een eenvoudig te herkennen hostnaam. Indien leeg zal hostnaam uit de taak details gebruikt worden job.addedit.jobdetails.header - Taak details + Taak details job.addedit.crontype.label - Taak type + Taak type job.addedit.crontype.command.label - Commando + Commando job.addedit.crontype.command.header - Commando details + Commando details job.addedit.crontype.command.command.label - Commando + Commando job.addedit.crontype.command.command.placeholder - sudo apt update + sudo apt update job.addedit.crontype.command.response.label - Verwacht resultaat + Verwacht resultaat job.addedit.crontype.command.response.placeholder - 0 + 0 job.addedit.crontype.reboot.label - Herstart + Herstart job.addedit.crontype.reboot.header - Herstart details + Herstart details job.addedit.crontype.reboot.reboot.command.label - Herstart commando + Herstart commando job.addedit.crontype.reboot.reboot.command.placeholder - systemctl reboot + systemctl reboot job.addedit.crontype.reboot.reboot.command.helptext - Gebruik {reboot-delay} of {reboot-delay-secs} om de vertraging toe te voegen in je commando + Gebruik {reboot-delay} of {reboot-delay-secs} om de vertraging toe te voegen in je commando job.addedit.crontype.reboot.reboot.delay.label - Herstart vertraging (in minuten) + Herstart vertraging (in minuten) job.addedit.crontype.reboot.reboot.delay.placeholder - 5 + 5 job.addedit.crontype.reboot.reboot.delay.helptext - Tijd tussen het aanroepen van herstart commando en de eigenlijke herstart + Tijd tussen het aanroepen van herstart commando en de eigenlijke herstart job.addedit.crontype.reboot.reboot.duration.label - Duurtijd van herstart (in minuten) + Duurtijd van herstart (in minuten) job.addedit.crontype.reboot.reboot.duration.placeholder - 10 + 10 job.addedit.crontype.reboot.reboot.duration.helptext - De tijd dat de effectieve herstart duurt + De tijd dat de effectieve herstart duurt job.addedit.crontype.reboot.getservices.command.label - Commando voor ophalen services + Commando voor ophalen services job.addedit.crontype.reboot.getservices.command.placeholder - systemctl list-units + systemctl list-units job.addedit.crontype.reboot.getservices.response.label - Resultaat van commando voor ophalen services + Resultaat van commando voor ophalen services job.addedit.crontype.reboot.getservices.response.placeholder - 0 + 0 job.addedit.crontype.http.label - HTTP request + HTTP request job.addedit.crontype.http.header - HTTP request details + HTTP request details job.addedit.crontype.http.url.label - Url + Url job.addedit.crontype.http.url.placeholder - https://www.example.com + https://www.example.com job.addedit.crontype.http.basic-auth.username.label - Gebruikersnaam voor basic auth + Gebruikersnaam voor basic auth job.addedit.crontype.http.basic-auth.username.placeholder - www-data + www-data job.addedit.crontype.http.basic-auth.password.label - Wachtwoord voor basic auth + Wachtwoord voor basic auth job.addedit.crontype.http.basic-auth.password.placeholder - correct horse battery staple + correct horse battery staple job.addedit.crontype.http.basic-auth.password.helptext - Dit veld word opgeslagen als geheime waarde + Dit veld word opgeslagen als geheime waarde job.addedit.crontype.http.response.label - Verwachte http status code + Verwachte http status code job.addedit.crontype.http.response.placeholder - 418 + 418 job.addedit.hosttype.label - Host type + Host type job.addedit.hosttype.local.label - Lokaal + Lokaal job.addedit.hosttype.local.header - Localhost details + Localhost details job.addedit.hosttype.local.nodetails - Geen opties + Geen opties job.addedit.hosttype.ssh.label - SSH + SSH job.addedit.hosttype.ssh.header - SSH host details + SSH host details job.addedit.hosttype.ssh.hostname.label - Hostnaam + Hostnaam job.addedit.hosttype.ssh.hostname.placeholder - ssh.abc.xyz + ssh.abc.xyz job.addedit.hosttype.ssh.username.label - Gebruikersnaam + Gebruikersnaam job.addedit.hosttype.ssh.username.placeholder - larry + larry job.addedit.hosttype.ssh.privatekey.label - Privésleutel + Privésleutel job.addedit.hosttype.ssh.privatekey.helptext - Dit bestand word opgeslagen als geheime waarde + Dit bestand word opgeslagen als geheime waarde job.addedit.hosttype.ssh.privatekey.keep.label - Behoud + Behoud job.addedit.hosttype.ssh.passphrase.label - Wachtwoord voor privésleutel + Wachtwoord voor privésleutel job.addedit.hosttype.ssh.passphrase.placeholder - abc123 + abc123 job.addedit.hosttype.ssh.passphrase.helptext - Indien er geen privésleutel is meegegeven zal dit gebruikt worden als gewoon wachtwoord. Dit veld word opgeslagen als geheime waarde + Indien er geen privésleutel is meegegeven zal dit gebruikt worden als gewoon wachtwoord. Dit veld word opgeslagen als geheime waarde job.addedit.containertype.label - Container type + Container type job.addedit.containertype.none.label - Geen + Geen job.addedit.containertype.docker.label - Docker + Docker job.addedit.containertype.docker.header - Docker container details + Docker container details job.addedit.containertype.docker.service.label - Service + Service job.addedit.containertype.docker.service.placeholder - mysql + mysql job.addedit.containertype.docker.username.label - Gebruikersnaam + Gebruikersnaam job.addedit.containertype.docker.username.placeholder - larry + larry job.addedit.variables.header - Variabelen + Variabelen job.addedit.variables.secret.label - Geheim + Geheim job.addedit.variables.name.placeholder - Naam + Naam job.addedit.variables.value.placeholder - Waarde + Waarde job.addedit.variables.helptext - Je kan variabelen gebruiken via {variabele-naam} in de taak details + Je kan variabelen gebruiken via {variabele-naam} in de taak details job.addedit.variables.add.label - Variable toevoegen + Variable toevoegen job.addedit.submit.label - Verzend! + Verzend! footer.title - Webcron Management + Webcron Management footer.source - Broncode + Broncode job.index.run.selecttime.header - Wanneer moet deze taak uitgevoerd worden? + Wanneer moet deze taak uitgevoerd worden? job.index.run.selecttime.description - Gelieve de datum en tijd te selecteren om deze taak uit te voeren + Gelieve de datum en tijd te selecteren om deze taak uit te voeren job.index.run.selecttime.btnschedule.label - Plan + Plan job.index.run.selecttime.btnrunnow.label - Nu uitvoeren + Nu uitvoeren job.index.run.ran.btnclose.label - Sluiten + Sluiten job.index.run.deferred.title - Taak werd doorgestuurd naar de daemon + Taak werd doorgestuurd naar de daemon job.index.run.deferred.message - Taak werd doorgestuurd naar de daemon. De output vind u binnenkort in de taakdetails + Taak werd doorgestuurd naar de daemon. De output vind u binnenkort in de taakdetails job.index.run.ran.title.success - Taak werd succesvol uitgevoerd + Taak werd succesvol uitgevoerd job.index.run.ran.title.failed - Taak faalde. Hieronder vind u de output ter controle + Taak faalde. Hieronder vind u de output ter controle job.index.run.ran.message - Taak werd in _runtime_ seconden uitgevoerd met resultaat _exitcode_ + Taak werd in _runtime_ seconden uitgevoerd met resultaat _exitcode_ + + + job.view.webhookurl + Webhook-URL