feat: Add ability to configure and test SMTP via UI
This commit is contained in:
@@ -102,10 +102,10 @@ module.exports.custom = {
|
||||
smtpPort: process.env.SMTP_PORT || 587,
|
||||
smtpName: process.env.SMTP_NAME,
|
||||
smtpSecure: process.env.SMTP_SECURE === 'true',
|
||||
smtpTlsRejectUnauthorized: process.env.SMTP_TLS_REJECT_UNAUTHORIZED !== 'false',
|
||||
smtpUser: process.env.SMTP_USER,
|
||||
smtpPassword: process.env.SMTP_PASSWORD,
|
||||
smtpFrom: process.env.SMTP_FROM,
|
||||
smtpTlsRejectUnauthorized: process.env.SMTP_TLS_REJECT_UNAUTHORIZED !== 'false',
|
||||
|
||||
gravatarBaseUrl: process.env.GRAVATAR_BASE_URL,
|
||||
};
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Testtitel",
|
||||
"This is a test text message!": "Dies ist eine Test-Textnachricht!",
|
||||
"This is a *test* **markdown** `message`!": "Dies ist eine *Test*-**Markdown**-`Nachricht`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Dies ist eine <i>Test</i>-<b>HTML</b>-<code>Nachricht</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Dies ist eine <i>Test</i>-<b>HTML</b>-<code>Nachricht</code>!",
|
||||
"You Were Added to Card": "Sie wurden zur Karte hinzugefügt",
|
||||
"You Were Mentioned in Comment": "Sie wurden in einem Kommentar erwähnt",
|
||||
"%s added you to %s on %s": "%s hat Sie zu %s am %s hinzugefügt",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Τίτλος δοκιμής",
|
||||
"This is a test text message!": "Αυτό είναι ένα δοκιμαστικό μήνυμα!",
|
||||
"This is a *test* **markdown** `message`!": "Αυτό είναι ένα *δοκιμαστικό* **markdown** `μήνυμα`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Αυτό είναι ένα <i>δοκιμαστικό</i> <b>html</b> <code>μήνυμα</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Αυτό είναι ένα <i>δοκιμαστικό</i> <b>html</b> <code>μήνυμα</code>!",
|
||||
"You Were Added to Card": "Προστέθηκες στην κάρτα",
|
||||
"You Were Mentioned in Comment": "Αναφέρθηκες σε σχόλιο",
|
||||
"%s added you to %s on %s": "%s σε πρόσθεσε στο %s στο %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Test Title",
|
||||
"This is a test text message!": "This is a test text message!",
|
||||
"This is a *test* **markdown** `message`!": "This is a *test* **markdown** `message`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "This is a <i>test</i> <b>html</b> <code>message</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "This is a <i>test</i> <b>html</b> <code>message</code>!",
|
||||
"You Were Added to Card": "You Were Added to Card",
|
||||
"You Were Mentioned in Comment": "You Were Mentioned in Comment",
|
||||
"%s added you to %s on %s": "%s added you to %s on %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Test Title",
|
||||
"This is a test text message!": "This is a test text message!",
|
||||
"This is a *test* **markdown** `message`!": "This is a *test* **markdown** `message`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "This is a <i>test</i> <b>html</b> <code>message</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "This is a <i>test</i> <b>html</b> <code>message</code>!",
|
||||
"You Were Added to Card": "You Were Added to Card",
|
||||
"You Were Mentioned in Comment": "You Were Mentioned in Comment",
|
||||
"%s added you to %s on %s": "%s added you to %s on %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Título de prueba",
|
||||
"This is a test text message!": "¡Este es un mensaje de texto de prueba!",
|
||||
"This is a *test* **markdown** `message`!": "¡Este es un *mensaje* **markdown** `de prueba`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Este es un <i>mensaje</i> <b>html</b> <code>de prueba</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Este es un <i>mensaje</i> <b>html</b> <code>de prueba</code>!",
|
||||
"You Were Added to Card": "Fuiste añadido a la tarjeta",
|
||||
"You Were Mentioned in Comment": "Fuiste mencionado en un comentario",
|
||||
"%s added you to %s on %s": "%s te añadió a %s en %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Testin otsikko",
|
||||
"This is a test text message!": "Tämä on testiviesti!",
|
||||
"This is a *test* **markdown** `message`!": "Tämä on *testi* **markdown** `viesti`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Tämä on <i>testi</i> <b>html</b> <code>viesti</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Tämä on <i>testi</i> <b>html</b> <code>viesti</code>!",
|
||||
"You Were Added to Card": "Sinut lisättiin korttiin",
|
||||
"You Were Mentioned in Comment": "Sinut mainittiin kommentissa",
|
||||
"%s added you to %s on %s": "%s lisäsi sinut kohteeseen %s kohteessa %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Titre de test",
|
||||
"This is a test text message!": "Ceci est un message texte de test !",
|
||||
"This is a *test* **markdown** `message`!": "Ceci est un *message* **markdown** `de test` !",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Ceci est un <i>test</i> <b>html</b> <code>message</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Ceci est un <i>test</i> <b>html</b> <code>message</code>!",
|
||||
"You Were Added to Card": "Vous avez été ajouté à la carte",
|
||||
"You Were Mentioned in Comment": "Vous avez été mentionné dans un commentaire",
|
||||
"%s added you to %s on %s": "%s vous a ajouté à %s le %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Titolo di test",
|
||||
"This is a test text message!": "Questo è un messaggio di testo di test!",
|
||||
"This is a *test* **markdown** `message`!": "Questo è un *test* **markdown** `messaggio`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Questo è un <i>test</i> <b>html</b> <code>messaggio</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Questo è un <i>test</i> <b>html</b> <code>messaggio</code>!",
|
||||
"You Were Added to Card": "Sei stato aggiunto alla task",
|
||||
"You Were Mentioned in Comment": "Sei stato menzionato nel commento",
|
||||
"%s created %s in %s on %s": "%s ha creato %s in %s in %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Тестовый заголовок",
|
||||
"This is a test text message!": "Это тестовое сообщение!",
|
||||
"This is a *test* **markdown** `message`!": "Это *тестовое* **markdown** `сообщение`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Это <i>тестовое</i> <b>html</b> <code>сообщение</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Это <i>тестовое</i> <b>html</b> <code>сообщение</code>!",
|
||||
"You Were Added to Card": "Вы были добавлены к карточке",
|
||||
"You Were Mentioned in Comment": "Вы были упомянуты в комментарии",
|
||||
"%s added you to %s on %s": "%s добавил(а) вас к %s на %s",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Test başlığı",
|
||||
"This is a test text message!": "Bu bir test metin mesajıdır!",
|
||||
"This is a *test* **markdown** `message`!": "Bu bir *test* **markdown** `mesajı`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Bu bir <i>test</i> <b>html</b> <code>mesajı</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Bu bir <i>test</i> <b>html</b> <code>mesajı</code>!",
|
||||
"You Were Added to Card": "Karta eklendiniz",
|
||||
"You Were Mentioned in Comment": "Bir yorumda bahsedildiniz",
|
||||
"%s added you to %s on %s": "%s sizi %s'ye %s tarihinde ekledi",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"Test Title": "Тестовий заголовок",
|
||||
"This is a test text message!": "Це нове повідомлення!",
|
||||
"This is a *test* **markdown** `message`!": "Це *тестове* **markdown** `повідомлення`!",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>": "Це <i>тестове</i> <b>html</b> <code>повідомлення</code>",
|
||||
"This is a <i>test</i> <b>html</b> <code>message</code>!": "Це <i>тестове</i> <b>html</b> <code>повідомлення</code>!",
|
||||
"You Were Added to Card": "Вас було додано до картки",
|
||||
"You Were Mentioned in Comment": "Вас було згадано у коментарі",
|
||||
"%s added you to %s on %s": "%s додав(ла) вас до %s на %s",
|
||||
|
||||
@@ -18,6 +18,10 @@ module.exports.policies = {
|
||||
|
||||
'*': ['is-authenticated', 'is-external'],
|
||||
|
||||
'config/show': ['is-authenticated', 'is-admin'],
|
||||
'config/update': ['is-authenticated', 'is-admin'],
|
||||
'config/test-smtp': ['is-authenticated', 'is-admin'],
|
||||
|
||||
'webhooks/index': ['is-authenticated', 'is-external', 'is-admin'],
|
||||
'webhooks/create': ['is-authenticated', 'is-external', 'is-admin'],
|
||||
'webhooks/update': ['is-authenticated', 'is-external', 'is-admin'],
|
||||
@@ -35,7 +39,7 @@ module.exports.policies = {
|
||||
|
||||
'projects/create': ['is-authenticated', 'is-external', 'is-admin-or-project-owner'],
|
||||
|
||||
'config/show': true,
|
||||
'bootstrap/show': true,
|
||||
'terms/show': true,
|
||||
'access-tokens/create': true,
|
||||
'access-tokens/exchange-with-oidc': true,
|
||||
|
||||
@@ -62,10 +62,14 @@ function staticDirServer(prefix, dirFn) {
|
||||
}
|
||||
|
||||
module.exports.routes = {
|
||||
'GET /api/config': 'config/show',
|
||||
'GET /api/bootstrap': 'bootstrap/show',
|
||||
|
||||
'GET /api/terms/:type': 'terms/show',
|
||||
|
||||
'GET /api/config': 'config/show',
|
||||
'PATCH /api/config': 'config/update',
|
||||
'POST /api/config/test-smtp': 'config/test-smtp',
|
||||
|
||||
'GET /api/webhooks': 'webhooks/index',
|
||||
'POST /api/webhooks': 'webhooks/create',
|
||||
'PATCH /api/webhooks/:id': 'webhooks/update',
|
||||
|
||||
Reference in New Issue
Block a user