diff --git a/install/data/defaults.json b/install/data/defaults.json index 9d6f12a514..085a788ca4 100644 --- a/install/data/defaults.json +++ b/install/data/defaults.json @@ -52,6 +52,7 @@ "orphanExpiryDays": 0, "resizeImageWidthThreshold": 2000, "resizeImageWidth": 760, + "resizeImageKeepOriginal": 1, "rejectImageWidth": 5000, "rejectImageHeight": 5000, "resizeImageQuality": 80, diff --git a/install/package.json b/install/package.json index ea82706eed..5ab76eb59d 100644 --- a/install/package.json +++ b/install/package.json @@ -2,7 +2,7 @@ "name": "nodebb", "license": "GPL-3.0", "description": "NodeBB Forum", - "version": "4.0.0-rc.1", + "version": "4.0.0-rc.2", "homepage": "https://www.nodebb.org", "repository": { "type": "git", @@ -61,7 +61,7 @@ "connect-mongo": "5.1.0", "connect-multiparty": "2.2.0", "connect-pg-simple": "10.0.0", - "connect-redis": "7.1.1", + "connect-redis": "8.0.0", "cookie-parser": "1.4.7", "cron": "3.2.1", "cropperjs": "1.6.2", @@ -103,14 +103,14 @@ "nodebb-plugin-dbsearch": "6.2.5", "nodebb-plugin-emoji": "6.0.1", "nodebb-plugin-emoji-android": "4.1.1", - "nodebb-plugin-markdown": "13.0.0-pre.9", + "nodebb-plugin-markdown": "13.0.0-pre.10", "nodebb-plugin-mentions": "4.6.10", "nodebb-plugin-spam-be-gone": "2.2.2", "nodebb-plugin-web-push": "0.7.0", "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "2.0.0-pre.43", "nodebb-theme-lavender": "7.1.16", - "nodebb-theme-peace": "2.2.22", + "nodebb-theme-peace": "2.2.23", "nodebb-theme-persona": "14.0.0-pre.5", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", @@ -138,7 +138,7 @@ "socket.io": "4.8.1", "socket.io-client": "4.8.1", "@socket.io/redis-adapter": "8.3.0", - "sortablejs": "1.15.4", + "sortablejs": "1.15.6", "spdx-license-list": "6.9.0", "terser-webpack-plugin": "5.3.10", "textcomplete": "0.18.2", diff --git a/public/language/ar/admin/manage/user-custom-fields.json b/public/language/ar/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/ar/admin/manage/user-custom-fields.json +++ b/public/language/ar/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/ar/admin/settings/uploads.json b/public/language/ar/admin/settings/uploads.json index ea99a9c7e3..b8d85be443 100644 --- a/public/language/ar/admin/settings/uploads.json +++ b/public/language/ar/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "الحد الأقصى لحجم الملف (بالكيبيبايت)", diff --git a/public/language/bg/admin/manage/user-custom-fields.json b/public/language/bg/admin/manage/user-custom-fields.json index b57081ac95..59547a016b 100644 --- a/public/language/bg/admin/manage/user-custom-fields.json +++ b/public/language/bg/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Минимална репутация", "minimum-reputation-help": "Ако потребителят има по-малко репутация от посочената, той няма да може да използва това поле", "delete-field-confirm-x": "Наистина ли искате да изтриете персонализираното поле „%1“?", - "custom-fields-saved": "Персонализираните полета са запазени" + "custom-fields-saved": "Персонализираните полета са запазени", + "visibility": "Видимост", + "visibility-all": "Всички могат да виждат полето", + "visibility-loggedin": "Само вписаните потребители могат да виждат полето", + "visibility-privileged": "Само потребителите с по-високи правомощия (като администратори и модератори) могат да виждат полето" } \ No newline at end of file diff --git a/public/language/bg/admin/settings/uploads.json b/public/language/bg/admin/settings/uploads.json index fb73ca7818..4820730824 100644 --- a/public/language/bg/admin/settings/uploads.json +++ b/public/language/bg/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(в пиксели; по подразбиране: 2000 пиксела. 0 = изключено)", "resize-image-width": "Намаляване на размера на изображенията до определена ширина", "resize-image-width-help": "(в пиксели; по подразбиране: 760 пиксела. 0 = изключено)", + "resize-image-keep-original": "Запазване на оригиналното изображение след преоразмеряване", "resize-image-quality": "Качество при преоразмеряване на изображенията", "resize-image-quality-help": "Използване на по-ниско качество за намаляване на размера на файловете за преоразмерените изображения.", "max-file-size": "Максимален размер на файловете (в КиБ)", diff --git a/public/language/bn/admin/manage/user-custom-fields.json b/public/language/bn/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/bn/admin/manage/user-custom-fields.json +++ b/public/language/bn/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/bn/admin/settings/uploads.json b/public/language/bn/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/bn/admin/settings/uploads.json +++ b/public/language/bn/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/cs/admin/manage/user-custom-fields.json b/public/language/cs/admin/manage/user-custom-fields.json index fbd7f88dac..354f23e52e 100644 --- a/public/language/cs/admin/manage/user-custom-fields.json +++ b/public/language/cs/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/cs/admin/settings/uploads.json b/public/language/cs/admin/settings/uploads.json index 0206a61f2c..dea6aa44df 100644 --- a/public/language/cs/admin/settings/uploads.json +++ b/public/language/cs/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Změnit velikost obrázků na určenou šířku", "resize-image-width-help": "(v pixelech, výchozí: 760 pixelů, pro zakázání - nastavte 0)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalita při změně velikosti obrázků", "resize-image-quality-help": "Pro snížení velikosti zmenšených obrázků použijte nižší nastavení kvality.", "max-file-size": "Maximální velikost souboru (v KiB)", diff --git a/public/language/da/admin/manage/user-custom-fields.json b/public/language/da/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/da/admin/manage/user-custom-fields.json +++ b/public/language/da/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/da/admin/settings/uploads.json b/public/language/da/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/da/admin/settings/uploads.json +++ b/public/language/da/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/de/admin/manage/user-custom-fields.json b/public/language/de/admin/manage/user-custom-fields.json index 00be399645..e5091d7219 100644 --- a/public/language/de/admin/manage/user-custom-fields.json +++ b/public/language/de/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimales Ansehen", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Benutzerdefinierte Felder gespeichert" + "custom-fields-saved": "Benutzerdefinierte Felder gespeichert", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/de/admin/settings/uploads.json b/public/language/de/admin/settings/uploads.json index 97fe1727df..269bfb8178 100644 --- a/public/language/de/admin/settings/uploads.json +++ b/public/language/de/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Bilder zu einer bestimmten Breite runterskalieren", "resize-image-width-help": "(in Pixeln, standardmäßig 760 Pixel, auf 0 setzen um zu deaktivieren)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Zu benutzende Qualität beim verändern von Bildauflösungen", "resize-image-quality-help": "Benutze eine niedrigere Qualitätseinstellung um die Dateigröße der gespeicherten Bilder zu minimieren.", "max-file-size": "Maximale Dateigröße (in KiB)", diff --git a/public/language/el/admin/manage/user-custom-fields.json b/public/language/el/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/el/admin/manage/user-custom-fields.json +++ b/public/language/el/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/el/admin/settings/uploads.json b/public/language/el/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/el/admin/settings/uploads.json +++ b/public/language/el/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/en-GB/admin/manage/user-custom-fields.json b/public/language/en-GB/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/en-GB/admin/manage/user-custom-fields.json +++ b/public/language/en-GB/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/en-GB/admin/settings/uploads.json b/public/language/en-GB/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/en-GB/admin/settings/uploads.json +++ b/public/language/en-GB/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/en-US/admin/manage/user-custom-fields.json b/public/language/en-US/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/en-US/admin/manage/user-custom-fields.json +++ b/public/language/en-US/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/en-US/admin/settings/uploads.json b/public/language/en-US/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/en-US/admin/settings/uploads.json +++ b/public/language/en-US/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/en-x-pirate/admin/manage/user-custom-fields.json b/public/language/en-x-pirate/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/en-x-pirate/admin/manage/user-custom-fields.json +++ b/public/language/en-x-pirate/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/en-x-pirate/admin/settings/uploads.json b/public/language/en-x-pirate/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/en-x-pirate/admin/settings/uploads.json +++ b/public/language/en-x-pirate/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/es/admin/manage/user-custom-fields.json b/public/language/es/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/es/admin/manage/user-custom-fields.json +++ b/public/language/es/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/es/admin/settings/uploads.json b/public/language/es/admin/settings/uploads.json index 0b4f97f015..60273aa8ac 100644 --- a/public/language/es/admin/settings/uploads.json +++ b/public/language/es/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Cambiar el tamaño de las imágenes hasta el ancho especificado", "resize-image-width-help": "(En píxeles, predeterminado: 760 píxeles, configúrelo 0 para desactivar)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Calidad a utlizar cuando se redimensionen imágenes", "resize-image-quality-help": "Usar una calidad inferior para reducir el tamaño de archivo de las imágenes redimensionadas.", "max-file-size": "Tamaño Máximo de Archivo (en KiB)", diff --git a/public/language/et/admin/manage/user-custom-fields.json b/public/language/et/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/et/admin/manage/user-custom-fields.json +++ b/public/language/et/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/et/admin/settings/uploads.json b/public/language/et/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/et/admin/settings/uploads.json +++ b/public/language/et/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/fa-IR/admin/manage/user-custom-fields.json b/public/language/fa-IR/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/fa-IR/admin/manage/user-custom-fields.json +++ b/public/language/fa-IR/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/fa-IR/admin/settings/uploads.json b/public/language/fa-IR/admin/settings/uploads.json index e256e20996..baf90ba0e4 100644 --- a/public/language/fa-IR/admin/settings/uploads.json +++ b/public/language/fa-IR/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/fi/admin/manage/user-custom-fields.json b/public/language/fi/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/fi/admin/manage/user-custom-fields.json +++ b/public/language/fi/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/fi/admin/settings/uploads.json b/public/language/fi/admin/settings/uploads.json index 4d0acbbced..a1412b0ed2 100644 --- a/public/language/fi/admin/settings/uploads.json +++ b/public/language/fi/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(kuvapisteinä, oletus on 760, poista käytöstä arvolla 0)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Suurin sallittu tiedostokoko (kibitavuina)", diff --git a/public/language/fr/admin/manage/user-custom-fields.json b/public/language/fr/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/fr/admin/manage/user-custom-fields.json +++ b/public/language/fr/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/fr/admin/settings/uploads.json b/public/language/fr/admin/settings/uploads.json index 53254a2c82..453b6be283 100644 --- a/public/language/fr/admin/settings/uploads.json +++ b/public/language/fr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Redimensionner les images à la largeur spécifiée", "resize-image-width-help": "(en pixels, valeur par défaut : 760 pixels, mettez 0 pour désactiver)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualité des images redimensionnées", "resize-image-quality-help": "Diminuer la qualité des images redimensionnées pour réduire leur taille.", "max-file-size": "Taille maximale d'un fichier (en Kio)", diff --git a/public/language/gl/admin/manage/user-custom-fields.json b/public/language/gl/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/gl/admin/manage/user-custom-fields.json +++ b/public/language/gl/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/gl/admin/settings/uploads.json b/public/language/gl/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/gl/admin/settings/uploads.json +++ b/public/language/gl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/he/admin/manage/user-custom-fields.json b/public/language/he/admin/manage/user-custom-fields.json index 98cddfa143..f759711c66 100644 --- a/public/language/he/admin/manage/user-custom-fields.json +++ b/public/language/he/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "מינימום מוניטין", "minimum-reputation-help": "אם למשתמש יש פחות מערך זה, הוא לא יוכל להשתמש בשדה זה", "delete-field-confirm-x": "האם למחוק שדה מותאם אישית \"%1\"?", - "custom-fields-saved": "שדות מותאמים אישית נשמרו" + "custom-fields-saved": "שדות מותאמים אישית נשמרו", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/he/admin/settings/uploads.json b/public/language/he/admin/settings/uploads.json index 176da54b20..61403d3df5 100644 --- a/public/language/he/admin/settings/uploads.json +++ b/public/language/he/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(בפיקסלים, ברירת מחדל: 2000 פיקסלים, הגדירו 0 כדי להשבית)", "resize-image-width": "שינוי גודל תמונות לגודל המוגדר", "resize-image-width-help": "(בפיקסלים, ברירת מחדל: 760 פיקסלים, הגדירו 0 כדי להשבית)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "באיזה איכות להשתמש כאשר משנים תמונה", "resize-image-quality-help": "השתמשו ברזולוציה נמוכה כדי להקטין את גודל התמונה הממוזערת", "max-file-size": "גודל קובץ מירבית (בKiB)", diff --git a/public/language/hr/admin/manage/user-custom-fields.json b/public/language/hr/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/hr/admin/manage/user-custom-fields.json +++ b/public/language/hr/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/hr/admin/settings/uploads.json b/public/language/hr/admin/settings/uploads.json index feba9685d8..1efba861e4 100644 --- a/public/language/hr/admin/settings/uploads.json +++ b/public/language/hr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maksimalna veličina datoteka (in KiB)", diff --git a/public/language/hu/admin/manage/user-custom-fields.json b/public/language/hu/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/hu/admin/manage/user-custom-fields.json +++ b/public/language/hu/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/hu/admin/settings/uploads.json b/public/language/hu/admin/settings/uploads.json index fc687bde02..fb103aea58 100644 --- a/public/language/hu/admin/settings/uploads.json +++ b/public/language/hu/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Kép átméretezése megadott szélességre", "resize-image-width-help": "(pixelben, alapértelmezett: 760 pixel, állítsd 0-ra a kikapcsoláshoz)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Használandó minőség képek átméretezésekor", "resize-image-quality-help": "Alacsonyabb minőség beállítás használata az átméretezett képek fájlméretének csökkentésére.", "max-file-size": "Maximum fájlméret (KB-ban)", diff --git a/public/language/hy/admin/manage/user-custom-fields.json b/public/language/hy/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/hy/admin/manage/user-custom-fields.json +++ b/public/language/hy/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/hy/admin/settings/uploads.json b/public/language/hy/admin/settings/uploads.json index 100ab63c39..6fa6f789fa 100644 --- a/public/language/hy/admin/settings/uploads.json +++ b/public/language/hy/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Չափափոխել պատկերները մինչև նշված լայնությունը", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Նկարների չափափոխման ժամանակ օգտագործելու որակ", "resize-image-quality-help": "Օգտագործեք ավելի ցածր որակի կարգավորում՝ չափափոխված պատկերների ֆայլի չափը նվազեցնելու համար:", "max-file-size": "Ֆայլի առավելագույն չափը (կիբ-ով)", diff --git a/public/language/id/admin/manage/user-custom-fields.json b/public/language/id/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/id/admin/manage/user-custom-fields.json +++ b/public/language/id/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/id/admin/settings/uploads.json b/public/language/id/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/id/admin/settings/uploads.json +++ b/public/language/id/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/it/admin/manage/user-custom-fields.json b/public/language/it/admin/manage/user-custom-fields.json index b522dd9556..7dc4fb8f5b 100644 --- a/public/language/it/admin/manage/user-custom-fields.json +++ b/public/language/it/admin/manage/user-custom-fields.json @@ -9,10 +9,10 @@ "icon": "Icona", "type": "TIpo", "min-rep": "Reputazione minima", - "input-type-text": "Input (Testo)", - "input-type-link": "Input (Link)", - "input-type-number": "Input (Numbero)", - "input-type-date": "Input (Date)", + "input-type-text": "Immissione (Testo)", + "input-type-link": "Immissione (Link)", + "input-type-number": "Immissione (Numero)", + "input-type-date": "Immissione (Data)", "input-type-select": "Selezione", "input-type-select-multi": "Seleziona multiplo", "select-options": "Opzioni", @@ -20,5 +20,9 @@ "minimum-reputation": "Reputazione minima", "minimum-reputation-help": "Se un utente ha un valore inferiore a questo, non potrà utilizzare questo campo", "delete-field-confirm-x": "Vuoi davvero eliminare il campo personalizzato \"%1\"?", - "custom-fields-saved": "Campi personalizzati salvati" + "custom-fields-saved": "Campi personalizzati salvati", + "visibility": "Visibilità", + "visibility-all": "Tutti possono vedere il campo", + "visibility-loggedin": "Solo gli utenti registrati possono vedere il campo", + "visibility-privileged": "Solo gli utenti privilegiati come amministratori e moderatori possono vedere il campo" } \ No newline at end of file diff --git a/public/language/it/admin/settings/uploads.json b/public/language/it/admin/settings/uploads.json index e3ae903b13..a2ba8602e9 100644 --- a/public/language/it/admin/settings/uploads.json +++ b/public/language/it/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixel, predefinito: 2000 pixel, impostare su 0 per disabilitare)", "resize-image-width": "Ridimensiona le immagini sotto specificando la larghezza", "resize-image-width-help": "(in pixel, predefinito: 760 pixel, imposta 0 per disabilitare)", + "resize-image-keep-original": "Conserva l'immagine originale dopo il ridimensionamento", "resize-image-quality": "Qualità da utilizzare nel ridimensionamento delle immagini", "resize-image-quality-help": "Utilizzare un'impostazione di qualità inferiore per ridurre la dimensione dei file delle immagini ridimensionate.", "max-file-size": "Dimensione File Massima (in KiB)", diff --git a/public/language/ja/admin/manage/user-custom-fields.json b/public/language/ja/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/ja/admin/manage/user-custom-fields.json +++ b/public/language/ja/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/ja/admin/settings/uploads.json b/public/language/ja/admin/settings/uploads.json index 116321ef45..84b216ba93 100644 --- a/public/language/ja/admin/settings/uploads.json +++ b/public/language/ja/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "最大ファイルサイズ(KB)", diff --git a/public/language/ko/admin/manage/user-custom-fields.json b/public/language/ko/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/ko/admin/manage/user-custom-fields.json +++ b/public/language/ko/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/ko/admin/settings/uploads.json b/public/language/ko/admin/settings/uploads.json index b2d1758ef2..f222e5fe80 100644 --- a/public/language/ko/admin/settings/uploads.json +++ b/public/language/ko/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "지정된 너비까지 이미지 크기 조정", "resize-image-width-help": "(픽셀 단위, 기본값: 760픽셀, 비활성화하려면 0으로 설정)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "이미지 크기 조정 시 사용할 품질", "resize-image-quality-help": "이미지의 파일 크기를 줄이기 위해 낮은 품질 설정을 사용합니다.", "max-file-size": "최대 파일 크기(키비바이트 단위)", diff --git a/public/language/lt/admin/manage/user-custom-fields.json b/public/language/lt/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/lt/admin/manage/user-custom-fields.json +++ b/public/language/lt/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/lt/admin/settings/uploads.json b/public/language/lt/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/lt/admin/settings/uploads.json +++ b/public/language/lt/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/lv/admin/manage/user-custom-fields.json b/public/language/lv/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/lv/admin/manage/user-custom-fields.json +++ b/public/language/lv/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/lv/admin/settings/uploads.json b/public/language/lv/admin/settings/uploads.json index 1b7b1987c4..0b79f6bb9a 100644 --- a/public/language/lv/admin/settings/uploads.json +++ b/public/language/lv/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Samazināt blides izmērus līdz noteiktajam platumam", "resize-image-width-help": "(pikseļos, pēc noklusējuma: 760 pikseļi, iestatīt 0, lai atspējotu)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalitāte, ko izmantot, pārveidojot bildes", "resize-image-quality-help": "Izmantot zemākas kvalitātes iestatījumu, lai samazinātu mainīto bildes faila lielumu.", "max-file-size": "Maksimālais faila lielums (KiB)", diff --git a/public/language/ms/admin/manage/user-custom-fields.json b/public/language/ms/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/ms/admin/manage/user-custom-fields.json +++ b/public/language/ms/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/ms/admin/settings/uploads.json b/public/language/ms/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/ms/admin/settings/uploads.json +++ b/public/language/ms/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/nb/admin/admin.json b/public/language/nb/admin/admin.json index a920002d3a..0a1e227cff 100644 --- a/public/language/nb/admin/admin.json +++ b/public/language/nb/admin/admin.json @@ -5,12 +5,12 @@ "acp-title": "%1 | NodeBB Admin Kontrollpanel", "settings-header-contents": "Innhold", "changes-saved": "Endringer lagret", - "changes-saved-message": "Your changes to the NodeBB configuration have been saved.", + "changes-saved-message": "Dine endringer i NodeBB-konfigurasjonen har blitt lagret.", "changes-not-saved": "Endringer ikke lagret", "changes-not-saved-message": "NodeBB støtte på et problem ved lagring av endringer. (%1)", "save-changes": "Lagre endringer", "min": "Min:", - "max": "Max:", + "max": "Maks:", "view": "Se", "edit": "Rediger", "add": "Legg til", diff --git a/public/language/nb/admin/advanced/cache.json b/public/language/nb/admin/advanced/cache.json index e5204f7d4c..fcfc1f1b03 100644 --- a/public/language/nb/admin/advanced/cache.json +++ b/public/language/nb/admin/advanced/cache.json @@ -1,10 +1,10 @@ { "cache": "Cache", - "post-cache": "Post-buffer", - "group-cache": "Group Cache", - "local-cache": "Local Cache", - "object-cache": "Object Cache", - "percent-full": "%1%full ", - "post-cache-size": "Post-buffer størrelse", + "post-cache": "Innleggsbuffer", + "group-cache": "Gruppebuffer", + "local-cache": "Lokalbuffer", + "object-cache": "Objektbuffer", + "percent-full": "%1% fullt", + "post-cache-size": "Størrelse på innleggsbuffer", "items-in-cache": "Element i buffer" } \ No newline at end of file diff --git a/public/language/nb/admin/advanced/errors.json b/public/language/nb/admin/advanced/errors.json index fad54e99eb..f8fd66d122 100644 --- a/public/language/nb/admin/advanced/errors.json +++ b/public/language/nb/admin/advanced/errors.json @@ -1,15 +1,15 @@ { - "errors": "Errors", - "figure-x": "Figure %1", - "error-events-per-day": "%1 events per day", - "error.404": "404 Not Found", - "error.503": "503 Service Unavailable", - "manage-error-log": "Manage Error Log", - "export-error-log": "Export Error Log (CSV)", - "clear-error-log": "Clear Error Log", - "route": "Route", - "count": "Count", - "no-routes-not-found": "Hooray! No 404 errors!", - "clear404-confirm": "Are you sure you wish to clear the 404 error logs?", - "clear404-success": "\"404 Not Found\" errors cleared" + "errors": "Feil", + "figure-x": "Figur %1", + "error-events-per-day": "%1 hendelser per dag", + "error.404": "404 Ikke funnet", + "error.503": "503 Tjeneste utilgjengelig", + "manage-error-log": "Administrer feillogg", + "export-error-log": "Eksporter feillogg (CSV)", + "clear-error-log": "Tøm feillogg", + "route": "Rute", + "count": "Antall", + "no-routes-not-found": "Hurra! Ingen 404-feil!", + "clear404-confirm": "Er du sikker på at du vil tømme loggen for 404-feil?", + "clear404-success": "\"404 Ikke funnet\"-feil ble tømt" } \ No newline at end of file diff --git a/public/language/nb/admin/appearance/customise.json b/public/language/nb/admin/appearance/customise.json index 147ef37bb4..7afc59fdda 100644 --- a/public/language/nb/admin/appearance/customise.json +++ b/public/language/nb/admin/appearance/customise.json @@ -1,20 +1,20 @@ { - "customise": "Customise", - "custom-css": "Custom CSS/SASS", - "custom-css.description": "Enter your own CSS/SASS declarations here, which will be applied after all other styles.", - "custom-css.enable": "Enable Custom CSS/SASS", + "customise": "Tilpass", + "custom-css": "Egendefinert CSS/SASS", + "custom-css.description": "Skriv inn dine egne CSS/SASS-erklæringer her, som vil bli brukt etter alle andre stiler.", + "custom-css.enable": "Aktiver egendefinert CSS/SASS", - "custom-js": "Custom Javascript", - "custom-js.description": "Enter your own javascript here. It will be executed after the page is loaded completely.", - "custom-js.enable": "Enable Custom Javascript", + "custom-js": "Egendefinert Javascript", + "custom-js.description": "Skriv inn din egen Javascript-kode her. Den vil bli kjørt etter at siden er fullstendig lastet.", + "custom-js.enable": "Aktiver egendefinert Javascript", - "custom-header": "Custom Header", - "custom-header.description": "Enter custom HTML here (ex. Meta Tags, etc.), which will be appended to the <head> section of your forum's markup. Script tags are allowed, but are discouraged, as the Custom Javascript tab is available.", - "custom-header.enable": "Enable Custom Header", + "custom-header": "Egendefinert header", + "custom-header.description": "Skriv inn egendefinert HTML her (f.eks. metakoder, osv.), som vil bli lagt til i <head>-delen av forumets markering. Skript-tagger er tillatt, men anbefales ikke, siden Egendefinert Javascript-fanen er tilgjengelig.", + "custom-header.enable": "Aktiver egendefinert header", - "custom-css.livereload": "Enable Live Reload", - "custom-css.livereload.description": "Enable this to force all sessions on every device under your account to refresh whenever you click save", + "custom-css.livereload": "Aktiver Live Reload", + "custom-css.livereload.description": "Aktiver dette for å tvinge alle økter på alle enheter under kontoen din til å oppdatere hver gang du klikker lagre.", "bsvariables": "_variables.scss", - "bsvariables.description": "Override bootstrap variables here. You can also use a tool like bootstrap.build and paste the output here.
Changes require a rebuild & restart.", - "bsvariables.enable": "Enable _variables.scss" + "bsvariables.description": "Overstyr bootstrap-variabler her. Du kan også bruke et verktøy som bootstrap.build og lime inn resultatet her.
Endringer krever ombygging og omstart.", + "bsvariables.enable": "Aktiver _variables.scss" } \ No newline at end of file diff --git a/public/language/nb/admin/appearance/skins.json b/public/language/nb/admin/appearance/skins.json index c98482f27b..319305deba 100644 --- a/public/language/nb/admin/appearance/skins.json +++ b/public/language/nb/admin/appearance/skins.json @@ -1,18 +1,18 @@ { - "skins": "Skins", - "bootswatch-skins": "Bootswatch Skins", - "custom-skins": "Custom Skins", - "add-skin": "Add Skin", - "save-custom-skins": "Save Custom Skins", - "save-custom-skins-success": "Custom skins saved successfully", - "custom-skin-name": "Custom Skin Name", - "custom-skin-variables": "Custom Skin Variables", - "loading": "Loading Skins...", - "homepage": "Homepage", - "select-skin": "Select Skin", - "revert-skin": "Revert Skin", - "current-skin": "Current Skin", - "skin-updated": "Skin Updated", - "applied-success": "%1 skin was succesfully applied", - "revert-success": "Skin reverted to base colours" + "skins": "Temaer", + "bootswatch-skins": "Bootswatch-temaer", + "custom-skins": "Egendefinerte temaer", + "add-skin": "Legg til tema", + "save-custom-skins": "Lagre egendefinerte temaer", + "save-custom-skins-success": "Egendefinerte temaer ble lagret", + "custom-skin-name": "Navn på egendefinert tema", + "custom-skin-variables": "Variabler for egendefinert tema", + "loading": "Laster temaer...", + "homepage": "Hjemmeside", + "select-skin": "Velg tema", + "revert-skin": "Tilbakestill tema", + "current-skin": "Nåværende tema", + "skin-updated": "Tema oppdatert", + "applied-success": "%1 tema ble vellykket brukt", + "revert-success": "Temaet ble tilbakestilt til standardfarger" } \ No newline at end of file diff --git a/public/language/nb/admin/appearance/themes.json b/public/language/nb/admin/appearance/themes.json index 957dc89eee..33a2d719a9 100644 --- a/public/language/nb/admin/appearance/themes.json +++ b/public/language/nb/admin/appearance/themes.json @@ -1,9 +1,9 @@ { - "themes": "Themes", - "checking-for-installed": "Checking for installed themes...", + "themes": "Temaer", + "checking-for-installed": "Sjekker etter installerte temaer...", "homepage": "Hjemmeside", "select-theme": "Velg tema", - "revert-theme": "Revert Theme", + "revert-theme": "Tilbakestill tema", "current-theme": "Nåværende tema", "no-themes": "Ingen installerte temaer funnet", "revert-confirm": "Er du sikker på at du vil gjenopprette standard NodeBB-tema?", diff --git a/public/language/nb/admin/development/info.json b/public/language/nb/admin/development/info.json index 8b981845c9..deb1975761 100644 --- a/public/language/nb/admin/development/info.json +++ b/public/language/nb/admin/development/info.json @@ -2,20 +2,20 @@ "you-are-on": "Du er på %1:%2", "ip": "IP %1", "nodes-responded": "%1 noder svarte innen %2ms!", - "host": "vert", - "primary": "primær", - "pid": "prosess-ID", - "nodejs": "nodejs", - "online": "pålogget", - "git": "git", - "process-memory": "prosessminne", - "system-memory": "systemminne", + "host": "Vert", + "primary": "Primær", + "pid": "Prosess-ID", + "nodejs": "Node.js", + "online": "Pålogget", + "git": "Git", + "process-memory": "Prosessminne", + "system-memory": "Systemminne", "used-memory-process": "Brukt minne av prosess", "used-memory-os": "Brukt systemminne", "total-memory-os": "Totalt systemminne", - "load": "systembelastning", + "load": "Systembelastning", "cpu-usage": "CPU-bruk", - "uptime": "oppetid", + "uptime": "Oppetid", "registered": "Registrert", "sockets": "Kontakter", diff --git a/public/language/nb/admin/development/logger.json b/public/language/nb/admin/development/logger.json index 8cc83b9775..2fa8e41c85 100644 --- a/public/language/nb/admin/development/logger.json +++ b/public/language/nb/admin/development/logger.json @@ -1,13 +1,13 @@ { "logger": "Logger", - "logger-settings": "Logger Settings", - "description": "By enabling the check boxes, you will receive logs to your terminal. If you specify a path, logs will then be saved to a file instead. HTTP logging is useful for collecting statistics about who, when, and what people access on your forum. In addition to logging HTTP requests, we can also log socket.io events. Socket.io logging, in combination with redis-cli monitor, can be very helpful for learning NodeBB's internals.", - "explanation": "Simply check/uncheck the logging settings to enable or disable logging on the fly. No restart needed.", - "enable-http": "Enable HTTP logging", - "enable-socket": "Enable socket.io event logging", - "file-path": "Path to log file", - "file-path-placeholder": "/path/to/log/file.log ::: leave blank to log to your terminal", + "logger-settings": "Logger-innstillinger", + "description": "Ved å aktivere avmerkingsboksene vil du motta logger i terminalen din. Hvis du spesifiserer en sti, blir loggene i stedet lagret i en fil. HTTP-logging er nyttig for å samle statistikk om hvem, når og hva folk besøker på forumet ditt. I tillegg til HTTP-forespørsler kan vi også logge socket.io-hendelser. Socket.io-logging, kombinert med redis-cli monitor, kan være svært nyttig for å lære mer om NodeBBs interne funksjoner.", + "explanation": "Merk av/på for loggingsinnstillingene for å aktivere eller deaktivere logging umiddelbart. Ingen omstart nødvendig.", + "enable-http": "Aktiver HTTP-logging", + "enable-socket": "Aktiver socket.io-hendelseslogging", + "file-path": "Sti til loggfil", + "file-path-placeholder": "/sti/til/logg/fil.log ::: la stå tomt for å logge til terminalen din", - "control-panel": "Logger Control Panel", - "update-settings": "Update Logger Settings" + "control-panel": "Logger Kontrollpanel", + "update-settings": "Oppdater logger-innstillinger" } \ No newline at end of file diff --git a/public/language/nb/admin/extend/plugins.json b/public/language/nb/admin/extend/plugins.json index 4849f0cab2..1af0a071fc 100644 --- a/public/language/nb/admin/extend/plugins.json +++ b/public/language/nb/admin/extend/plugins.json @@ -1,58 +1,58 @@ { "plugins": "Plugins", - "trending": "Trending", - "installed": "Installed", - "active": "Active", - "inactive": "Inactive", - "out-of-date": "Out of Date", - "none-found": "No plugins found.", - "none-active": "No Active Plugins", - "find-plugins": "Find Plugins", + "trending": "Trender", + "installed": "Installert", + "active": "Aktiv", + "inactive": "Inaktiv", + "out-of-date": "Utdatert", + "none-found": "Ingen plugins funnet.", + "none-active": "Ingen aktive plugins", + "find-plugins": "Finn plugins", - "plugin-search": "Plugin Search", - "plugin-search-placeholder": "Search for plugin...", - "submit-anonymous-usage": "Submit anonymous plugin usage data.", - "reorder-plugins": "Re-order Plugins", - "order-active": "Order Active Plugins", - "dev-interested": "Interested in writing plugins for NodeBB?", - "docs-info": "Full documentation regarding plugin authoring can be found in the NodeBB Docs Portal.", + "plugin-search": "Pluginsøk", + "plugin-search-placeholder": "Søk etter plugin...", + "submit-anonymous-usage": "Send inn anonym plugin-bruksdata.", + "reorder-plugins": "Omorganiser plugins", + "order-active": "Omorganiser aktive plugins", + "dev-interested": "Interessert i å skrive plugins for NodeBB?", + "docs-info": "Full dokumentasjon om hvordan man lager plugins finner du i NodeBB Docs Portal.", - "order.description": "Certain plugins work ideally when they are initialised before/after other plugins.", - "order.explanation": "Plugins load in the order specified here, from top to bottom", + "order.description": "Visse plugins fungerer best når de initialiseres før/etter andre plugins.", + "order.explanation": "Plugins lastes inn i den rekkefølgen som er spesifisert her, fra topp til bunn.", - "plugin-item.themes": "Themes", - "plugin-item.deactivate": "Deactivate", - "plugin-item.activate": "Activate", - "plugin-item.install": "Install", - "plugin-item.uninstall": "Uninstall", - "plugin-item.settings": "Settings", - "plugin-item.installed": "Installed", - "plugin-item.latest": "Latest", - "plugin-item.upgrade": "Upgrade", - "plugin-item.more-info": "For more information:", - "plugin-item.unknown": "Unknown", - "plugin-item.unknown-explanation": "The state of this plugin could not be determined, possibly due to a misconfiguration error.", - "plugin-item.compatible": "This plugin works on NodeBB %1", - "plugin-item.not-compatible": "This plugin has no compatibility data, make sure it works before installing on your production environment.", + "plugin-item.themes": "Temaer", + "plugin-item.deactivate": "Deaktiver", + "plugin-item.activate": "Aktiver", + "plugin-item.install": "Installer", + "plugin-item.uninstall": "Avinstaller", + "plugin-item.settings": "Innstillinger", + "plugin-item.installed": "Installert", + "plugin-item.latest": "Siste", + "plugin-item.upgrade": "Oppgrader", + "plugin-item.more-info": "For mer informasjon:", + "plugin-item.unknown": "Ukjent", + "plugin-item.unknown-explanation": "Statusen for denne plugin-en kunne ikke bestemmes, muligens på grunn av en feil i konfigurasjonen.", + "plugin-item.compatible": "Denne plugin-en fungerer på NodeBB %1", + "plugin-item.not-compatible": "Denne plugin-en har ingen kompatibilitetsdata, sørg for at den fungerer før du installerer i ditt produksjonsmiljø.", - "alert.enabled": "Plugin Enabled", - "alert.disabled": "Plugin Disabled", - "alert.upgraded": "Plugin Upgraded", - "alert.installed": "Plugin Installed", - "alert.uninstalled": "Plugin Uninstalled", - "alert.activate-success": "Please rebuild and restart your NodeBB to fully activate this plugin", - "alert.deactivate-success": "Plugin successfully deactivated", - "alert.upgrade-success": "Please rebuild and restart your NodeBB to fully upgrade this plugin.", - "alert.install-success": "Plugin successfully installed, please activate the plugin.", - "alert.uninstall-success": "The plugin has been successfully deactivated and uninstalled.", - "alert.suggest-error": "

NodeBB could not reach the package manager, proceed with installation of latest version?

Server returned (%1): %2
", - "alert.package-manager-unreachable": "

NodeBB could not reach the package manager, an upgrade is not suggested at this time.

", - "alert.incompatible": "

Your version of NodeBB (v%1) is only cleared to upgrade to v%2 of this plugin. Please update your NodeBB if you wish to install a newer version of this plugin.

", - "alert.possibly-incompatible": "

No Compatibility Information Found

This plugin did not specify a specific version for installation given your NodeBB version. Full compatibility cannot be guaranteed, and may cause your NodeBB to no longer start properly.

In the event that NodeBB cannot boot properly:

$ ./nodebb reset plugin=\"%1\"

Continue installation of latest version of this plugin?

", - "alert.reorder": "Plugins Re-ordered", - "alert.reorder-success": "Please rebuild and restart your NodeBB to fully complete the process.", + "alert.enabled": "Plugin aktivert", + "alert.disabled": "Plugin deaktivert", + "alert.upgraded": "Plugin oppgradert", + "alert.installed": "Plugin installert", + "alert.uninstalled": "Plugin avinstallert", + "alert.activate-success": "Vennligst bygg om og start NodeBB på nytt for å fullføre aktivering av denne plugin-en.", + "alert.deactivate-success": "Plugin deaktivert", + "alert.upgrade-success": "Vennligst bygg om og start NodeBB på nytt for å fullføre oppgradering av denne plugin-en.", + "alert.install-success": "Plugin installert, vennligst aktiver plugin-en.", + "alert.uninstall-success": "Plugin er deaktivert og avinstallert.", + "alert.suggest-error": "

NodeBB kunne ikke nå pakkebehandleren, vil du fortsette med installasjon av siste versjon?

Server returnerte (%1): %2
", + "alert.package-manager-unreachable": "

NodeBB kunne ikke nå pakkebehandleren, en oppgradering anbefales ikke på dette tidspunktet.

", + "alert.incompatible": "

Din versjon av NodeBB (v%1) er bare klarert for oppgradering til v%2 av denne plugin-en. Oppdater NodeBB hvis du ønsker å installere en nyere versjon av denne plugin-en.

", + "alert.possibly-incompatible": "

Ingen kompatibilitetsinformasjon funnet

Denne plugin-en spesifiserte ikke en spesifikk versjon for installasjon gitt din NodeBB-versjon. Full kompatibilitet kan ikke garanteres og kan føre til at NodeBB ikke starter riktig.

Hvis NodeBB ikke kan starte riktig:

$ ./nodebb reset plugin=\"%1\"

Fortsett installasjon av siste versjon av denne plugin-en?

", + "alert.reorder": "Plugins omorganisert", + "alert.reorder-success": "Vennligst bygg om og start NodeBB på nytt for å fullføre prosessen.", - "license.title": "Plugin License Information", - "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.title": "Informasjon om plugin-lisens", + "license.intro": "Plugin-en %1 er lisensiert under %2. Les og forstå lisensvilkårene før du aktiverer denne plugin-en.", + "license.cta": "Vil du fortsette med aktivering av denne plugin-en?" } diff --git a/public/language/nb/admin/extend/rewards.json b/public/language/nb/admin/extend/rewards.json index 2706a25f51..4796d0f1e6 100644 --- a/public/language/nb/admin/extend/rewards.json +++ b/public/language/nb/admin/extend/rewards.json @@ -1,17 +1,17 @@ { - "rewards": "Rewards", - "add-reward": "Add reward", - "condition-if-users": "If User's", - "condition-is": "Is:", - "condition-then": "Then:", - "max-claims": "Amount of times reward is claimable", - "zero-infinite": "Enter 0 for infinite", - "select-reward": "Select reward", - "delete": "Delete", - "enable": "Enable", - "disable": "Disable", + "rewards": "Belønninger", + "add-reward": "Legg til belønning", + "condition-if-users": "Hvis brukerens", + "condition-is": "Er:", + "condition-then": "Så:", + "max-claims": "Antall ganger belønningen kan kreves", + "zero-infinite": "Skriv inn 0 for ubegrenset", + "select-reward": "Velg belønning", + "delete": "Slett", + "enable": "Aktiver", + "disable": "Deaktiver", - "alert.delete-success": "Successfully deleted reward", - "alert.no-inputs-found": "Illegal reward - no inputs found!", - "alert.save-success": "Successfully saved rewards" + "alert.delete-success": "Belønning slettet", + "alert.no-inputs-found": "Ugyldig belønning - ingen innganger funnet!", + "alert.save-success": "Belønninger lagret" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/admins-mods.json b/public/language/nb/admin/manage/admins-mods.json index 999ce33aa4..6e39b35191 100644 --- a/public/language/nb/admin/manage/admins-mods.json +++ b/public/language/nb/admin/manage/admins-mods.json @@ -1,13 +1,13 @@ { - "manage-admins-and-mods": "Manage Admins & Mods", - "administrators": "Administrators", - "global-moderators": "Global Moderators", - "moderators": "Moderators", - "no-global-moderators": "No Global Moderators", - "no-sub-categories": "No subcategories", - "view-children": "View children (%1)", - "no-moderators": "No Moderators", - "add-administrator": "Add Administrator", - "add-global-moderator": "Add Global Moderator", - "add-moderator": "Add Moderator" + "manage-admins-and-mods": "Administrer administratorer og moderatorer", + "administrators": "Administratorer", + "global-moderators": "Globale moderatorer", + "moderators": "Moderatorer", + "no-global-moderators": "Ingen globale moderatorer", + "no-sub-categories": "Ingen underkategorier", + "view-children": "Vis underkategorier (%1)", + "no-moderators": "Ingen moderatorer", + "add-administrator": "Legg til administrator", + "add-global-moderator": "Legg til global moderator", + "add-moderator": "Legg til moderator" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/categories.json b/public/language/nb/admin/manage/categories.json index 98339a3cc5..582fb23c28 100644 --- a/public/language/nb/admin/manage/categories.json +++ b/public/language/nb/admin/manage/categories.json @@ -1,99 +1,99 @@ { - "manage-categories": "Manage Categories", - "add-category": "Add category", - "jump-to": "Jump to...", - "settings": "Category Settings", - "edit-category": "Edit Category", - "privileges": "Privileges", - "back-to-categories": "Back to categories", - "name": "Category Name", - "description": "Category Description", - "bg-color": "Background Colour", - "text-color": "Text Colour", - "bg-image-size": "Background Image Size", - "custom-class": "Custom Class", - "num-recent-replies": "# of Recent Replies", - "ext-link": "External Link", - "subcategories-per-page": "Subcategories per page", - "is-section": "Treat this category as a section", - "post-queue": "Post queue", - "tag-whitelist": "Tag Whitelist", - "upload-image": "Upload Image", - "upload": "Upload", - "delete-image": "Remove", - "category-image": "Category Image", - "image-and-icon": "Image & Icon", - "parent-category": "Parent Category", - "optional-parent-category": "(Optional) Parent Category", - "top-level": "Top Level", - "parent-category-none": "(None)", - "copy-parent": "Copy Parent", - "copy-settings": "Copy Settings From", - "optional-clone-settings": "(Optional) Clone Settings From Category", - "clone-children": "Clone Children Categories And Settings", - "purge": "Purge Category", + "manage-categories": "Administrer kategorier", + "add-category": "Legg til kategori", + "jump-to": "Hopp til...", + "settings": "Kategoriinnstillinger", + "edit-category": "Rediger kategori", + "privileges": "Rettigheter", + "back-to-categories": "Tilbake til kategorier", + "name": "Kategorinavn", + "description": "Kategoribeskrivelse", + "bg-color": "Bakgrunnsfarge", + "text-color": "Tekstfarge", + "bg-image-size": "Størrelse på bakgrunnsbilde", + "custom-class": "Egendefinert klasse", + "num-recent-replies": "Antall nylige svar", + "ext-link": "Ekstern lenke", + "subcategories-per-page": "Underkategorier per side", + "is-section": "Behandle denne kategorien som en seksjon", + "post-queue": "Innleggskø", + "tag-whitelist": "Hviteliste for emneord", + "upload-image": "Last opp bilde", + "upload": "Last opp", + "delete-image": "Fjern", + "category-image": "Kategori bilde", + "image-and-icon": "Bilde og ikon", + "parent-category": "Overkategori", + "optional-parent-category": "(Valgfritt) Overkategori", + "top-level": "Hovednivå", + "parent-category-none": "(Ingen)", + "copy-parent": "Kopier fra overkategori", + "copy-settings": "Kopier innstillinger fra", + "optional-clone-settings": "(Valgfritt) Klon innstillinger fra kategori", + "clone-children": "Klon underkategorier og innstillinger", + "purge": "Rensk kategori", - "enable": "Enable", - "disable": "Disable", - "edit": "Edit", - "analytics": "Analytics", + "enable": "Aktiver", + "disable": "Deaktiver", + "edit": "Rediger", + "analytics": "Analyser", - "view-category": "View category", - "set-order": "Set order", - "set-order-help": "Setting the order of the category will move this category to that order and update the order of other categories as necessary. Minimum order is 1 which puts the category at the top.", + "view-category": "Vis kategori", + "set-order": "Sett rekkefølge", + "set-order-help": "Ved å sette rekkefølgen på kategorien flytter du den til den valgte plasseringen, og oppdaterer rekkefølgen for andre kategorier etter behov. Minimumsrekkefølge er 1, som plasserer kategorien øverst.", - "select-category": "Select Category", - "set-parent-category": "Set Parent Category", + "select-category": "Velg kategori", + "set-parent-category": "Angi overkategori", - "privileges.description": "You can configure the access control privileges for portions of the site in this section. Privileges can be granted on a per-user or a per-group basis. Select the domain of effect from the dropdown below.", - "privileges.category-selector": "Configuring privileges for ", - "privileges.warning": "Note: Privilege settings take effect immediately. It is not necessary to save the category after adjusting these settings.", - "privileges.section-viewing": "Viewing Privileges", - "privileges.section-posting": "Posting Privileges", - "privileges.section-moderation": "Moderation Privileges", - "privileges.section-other": "Other", - "privileges.section-user": "User", - "privileges.search-user": "Add User", - "privileges.no-users": "No user-specific privileges in this category.", - "privileges.section-group": "Group", - "privileges.group-private": "This group is private", - "privileges.inheritance-exception": "This group does not inherit privileges from registered-users group", - "privileges.banned-user-inheritance": "Banned users inherit privileges from banned-users group", - "privileges.search-group": "Add Group", - "privileges.copy-to-children": "Copy to Children", - "privileges.copy-from-category": "Copy from Category", - "privileges.copy-privileges-to-all-categories": "Copy to All Categories", - "privileges.copy-group-privileges-to-children": "Copy this group's privileges to the children of this category.", - "privileges.copy-group-privileges-to-all-categories": "Copy this group's privileges to all categories.", - "privileges.copy-group-privileges-from": "Copy this group's privileges from another category.", - "privileges.inherit": "If the registered-users group is granted a specific privilege, all other groups receive an implicit privilege, even if they are not explicitly defined/checked. This implicit privilege is shown to you because all users are part of the registered-users user group, and so, privileges for additional groups need not be explicitly granted.", - "privileges.copy-success": "Privileges copied!", + "privileges.description": "Her kan du konfigurere tilgangskontrollrettigheter for deler av nettstedet. Rettigheter kan gis per bruker eller per gruppe. Velg området for effekten fra rullegardinmenyen nedenfor.", + "privileges.category-selector": "Konfigurerer rettigheter for", + "privileges.warning": "Merk: Rettighetsinnstillinger trer i kraft umiddelbart. Det er ikke nødvendig å lagre kategorien etter å ha justert disse innstillingene.", + "privileges.section-viewing": "Visningsrettigheter", + "privileges.section-posting": "Innleggelsesrettigheter", + "privileges.section-moderation": "Modereringsrettigheter", + "privileges.section-other": "Annet", + "privileges.section-user": "Bruker", + "privileges.search-user": "Legg til bruker", + "privileges.no-users": "Ingen brukerspesifikke rettigheter i denne kategorien.", + "privileges.section-group": "Gruppe", + "privileges.group-private": "Denne gruppen er privat", + "privileges.inheritance-exception": "Denne gruppen arver ikke rettigheter fra registrerte brukere-gruppen", + "privileges.banned-user-inheritance": "Utestengte brukere arver rettigheter fra utestengte brukere-gruppen", + "privileges.search-group": "Legg til gruppe", + "privileges.copy-to-children": "Kopier til underkategorier", + "privileges.copy-from-category": "Kopier fra kategori", + "privileges.copy-privileges-to-all-categories": "Kopier til alle kategorier", + "privileges.copy-group-privileges-to-children": "Kopier denne gruppens rettigheter til underkategoriene til denne kategorien.", + "privileges.copy-group-privileges-to-all-categories": "Kopier denne gruppens rettigheter til alle kategorier.", + "privileges.copy-group-privileges-from": "Kopier denne gruppens rettigheter fra en annen kategori.", + "privileges.inherit": "Hvis gruppen registrerte brukere har en spesifikk rettighet, får alle andre grupper en implisitt rettighet, selv om de ikke er eksplisitt definert/merket av. Denne implisitte rettigheten vises fordi alle brukere er en del av registrerte brukere-gruppen, og rettigheter for ekstra grupper trenger ikke eksplisitt tildeles.", + "privileges.copy-success": "Rettigheter kopiert!", - "analytics.back": "Back to Categories List", - "analytics.title": "Analytics for \"%1\" category", - "analytics.pageviews-hourly": "Figure 1 – Hourly page views for this category", - "analytics.pageviews-daily": "Figure 2 – Daily page views for this category", - "analytics.topics-daily": "Figur 3 – Daglige tråder publisert i denne kategorien", - "analytics.posts-daily": "Figure 4 – Daily posts made in this category", + "analytics.back": "Tilbake til kategorilisten", + "analytics.title": "Analyser for kategorien \"%1\"", + "analytics.pageviews-hourly": "Figur 1 – Timevise sidevisninger for denne kategorien", + "analytics.pageviews-daily": "Figur 2 – Daglige sidevisninger for denne kategorien", + "analytics.topics-daily": "Figur 3 – Daglige tråder publisert i denne kategorien", + "analytics.posts-daily": "Figur 4 – Daglige innlegg i denne kategorien", - "alert.created": "Created", - "alert.create-success": "Category successfully created!", - "alert.none-active": "You have no active categories.", - "alert.create": "Create a Category", + "alert.created": "Opprettet", + "alert.create-success": "Kategori opprettet!", + "alert.none-active": "Du har ingen aktive kategorier.", + "alert.create": "Opprett en kategori", "alert.confirm-purge": "

Vil du virkelig renske kategorien \"%1\"?

Advarsel! Alle tråder og innlegg i denne kategorien vil bli rensket!

Rensking av en kategori vil fjerne alle tråder og innlegg, og slette kategorien fra databasen. Hvis du vil fjerne en kategori midlertidig, vil du \"deaktivere\" kategorien i stedet.

", - "alert.purge-success": "Category purged!", - "alert.copy-success": "Settings Copied!", - "alert.set-parent-category": "Set Parent Category", - "alert.updated": "Updated Categories", - "alert.updated-success": "Category IDs %1 successfully updated.", - "alert.upload-image": "Upload category image", - "alert.find-user": "Find a User", - "alert.user-search": "Search for a user here...", - "alert.find-group": "Find a Group", - "alert.group-search": "Search for a group here...", - "alert.not-enough-whitelisted-tags": "Whitelisted tags are less than minimum tags, you need to create more whitelisted tags!", - "collapse-all": "Collapse All", - "expand-all": "Expand All", - "disable-on-create": "Disable on create", - "no-matches": "No matches" + "alert.purge-success": "Kategori renset!", + "alert.copy-success": "Innstillinger kopiert!", + "alert.set-parent-category": "Angi overkategori", + "alert.updated": "Kategorier oppdatert", + "alert.updated-success": "Kategori-ID-er %1 oppdatert.", + "alert.upload-image": "Last opp kategoribilde", + "alert.find-user": "Finn en bruker", + "alert.user-search": "Søk etter en bruker her...", + "alert.find-group": "Finn en gruppe", + "alert.group-search": "Søk etter en gruppe her...", + "alert.not-enough-whitelisted-tags": "Antall hvitelistede emneord er færre enn minimum, du må opprette flere hvitelistede emneord!", + "collapse-all": "Skjul alle", + "expand-all": "Utvid alle", + "disable-on-create": "Deaktiver ved opprettelse", + "no-matches": "Ingen treff" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/digest.json b/public/language/nb/admin/manage/digest.json index 38c634d1f6..8a2c927180 100644 --- a/public/language/nb/admin/manage/digest.json +++ b/public/language/nb/admin/manage/digest.json @@ -1,22 +1,22 @@ { - "lead": "A listing of digest delivery stats and times is displayed below.", - "disclaimer": "Please be advised that email delivery is not guaranteed, due to the nature of email technology. Many variables factor into whether an email sent to the recipient server is ultimately delivered into the user's inbox, including server reputation, blacklisted IP addresses, and whether DKIM/SPF/DMARC is configured.", - "disclaimer-continued": "A successful delivery means the message was sent successfully by NodeBB and acknowledged by the recipient server. It does not mean the email landed in the inbox. For best results, we recommend using a third-party email delivery service such as SendGrid.", + "lead": "En oversikt over statistikk og tidspunkt for utsending av sammendrag vises nedenfor.", + "disclaimer": "Vær oppmerksom på at e-postlevering ikke er garantert, på grunn av teknologien bak e-post. Mange variabler påvirker om en e-post som sendes til mottakerens server faktisk havner i brukerens innboks, inkludert serverens omdømme, svartelistede IP-adresser og om DKIM/SPF/DMARC er konfigurert.", + "disclaimer-continued": "En vellykket levering betyr at meldingen ble sendt suksessfullt av NodeBB og bekreftet av mottakerens server. Det betyr ikke at e-posten havnet i innboksen. For best resultat anbefaler vi å bruke en tredjeparts e-postleveringstjeneste som SendGrid.", - "user": "User", - "subscription": "Subscription Type", - "last-delivery": "Last successful delivery", - "default": "System default", - "default-help": "System default means the user has not explicitly overridden the global forum setting for digests, which is currently: "%1"", - "resend": "Resend Digest", - "resend-all-confirm": "Are you sure you wish to manually execute this digest run?", - "resent-single": "Manual digest resend completed", - "resent-day": "Daily digest resent", - "resent-week": "Weekly digest resent", - "resent-biweek": "Bi-Weekly digest resent", - "resent-month": "Monthly digest resent", - "null": "Never", - "manual-run": "Manual digest run:", + "user": "Bruker", + "subscription": "Abonnementstype", + "last-delivery": "Siste vellykkede levering", + "default": "Systemstandard", + "default-help": "Systemstandard betyr at brukeren ikke eksplisitt har overstyrt forumets globale innstilling for sammendrag, som for øyeblikket er: "%1"", + "resend": "Send sammendrag på nytt", + "resend-all-confirm": "Er du sikker på at du ønsker å kjøre denne utsendelsen av sammendrag manuelt?", + "resent-single": "Manuell utsendelse av sammendrag fullført", + "resent-day": "Daglig sammendrag sendt på nytt", + "resent-week": "Ukentlig sammendrag sendt på nytt", + "resent-biweek": "Annenhver ukes sammendrag sendt på nytt", + "resent-month": "Månedlig sammendrag sendt på nytt", + "null": "Aldri", + "manual-run": "Manuell kjøring av sammendrag:", - "no-delivery-data": "No delivery data found" + "no-delivery-data": "Ingen leveringsdata funnet" } diff --git a/public/language/nb/admin/manage/groups.json b/public/language/nb/admin/manage/groups.json index bab95d9c10..77cb3afe69 100644 --- a/public/language/nb/admin/manage/groups.json +++ b/public/language/nb/admin/manage/groups.json @@ -1,49 +1,49 @@ { - "manage-groups": "Manage Groups", - "add-group": "Add group", - "edit-group": "Edit Group", - "back-to-groups": "Back to groups", - "view-group": "View group", - "icon-and-title": "Icon & Title", - "name": "Group Name", - "badge": "Badge", - "properties": "Properties", - "description": "Group Description", - "member-count": "Member Count", + "manage-groups": "Administrer grupper", + "add-group": "Legg til gruppe", + "edit-group": "Rediger gruppe", + "back-to-groups": "Tilbake til grupper", + "view-group": "Vis gruppe", + "icon-and-title": "Ikon og tittel", + "name": "Gruppenavn", + "badge": "Merke", + "properties": "Egenskaper", + "description": "Gruppens beskrivelse", + "member-count": "Antall medlemmer", "system": "System", - "hidden": "Hidden", - "private": "Private", - "edit": "Edit", - "delete": "Delete", - "privileges": "Privileges", - "members-csv": "Members (CSV)", - "search-placeholder": "Search", - "create": "Create Group", - "description-placeholder": "A short description about your group", - "create-button": "Create", + "hidden": "Skjult", + "private": "Privat", + "edit": "Rediger", + "delete": "Slett", + "privileges": "Rettigheter", + "members-csv": "Medlemmer (CSV)", + "search-placeholder": "Søk", + "create": "Opprett gruppe", + "description-placeholder": "En kort beskrivelse av gruppen din", + "create-button": "Opprett", - "alerts.create-failure": "Uh-Oh

There was a problem creating your group. Please try again later!

", - "alerts.confirm-delete": "Are you sure you wish to delete this group?", + "alerts.create-failure": "Oops!

Det oppstod et problem med å opprette gruppen. Vennligst prøv igjen senere!

", + "alerts.confirm-delete": "Er du sikker på at du ønsker å slette denne gruppen?", - "edit.name": "Name", - "edit.description": "Description", - "edit.user-title": "Title of Members", - "edit.icon": "Group Icon", - "edit.label-color": "Group Label Color", - "edit.text-color": "Group Text Color", - "edit.show-badge": "Show Badge", - "edit.private-details": "If enabled, joining of groups requires approval from a group owner.", - "edit.private-override": "Warning: Private groups is disabled at system level, which overrides this option.", - "edit.disable-join": "Disable join requests", - "edit.disable-leave": "Disallow users from leaving the group", - "edit.hidden": "Hidden", - "edit.hidden-details": "If enabled, this group will not be found in the groups listing, and users will have to be invited manually", - "edit.add-user": "Add User to Group", - "edit.add-user-search": "Search Users", - "edit.members": "Member List", - "control-panel": "Groups Control Panel", - "revert": "Revert", + "edit.name": "Navn", + "edit.description": "Beskrivelse", + "edit.user-title": "Medlemstittel", + "edit.icon": "Gruppeikon", + "edit.label-color": "Farge på gruppelapp", + "edit.text-color": "Farge på gruppetekst", + "edit.show-badge": "Vis merke", + "edit.private-details": "Hvis aktivert, krever tilslutning til gruppen godkjenning fra gruppeeier.", + "edit.private-override": "Advarsel: Private grupper er deaktivert på systemnivå, som overstyrer dette valget.", + "edit.disable-join": "Deaktiver forespørsler om å bli med", + "edit.disable-leave": "Hindre brukere fra å forlate gruppen", + "edit.hidden": "Skjult", + "edit.hidden-details": "Hvis aktivert, vil denne gruppen ikke vises i gruppelisten, og brukere må inviteres manuelt", + "edit.add-user": "Legg til bruker i gruppen", + "edit.add-user-search": "Søk etter brukere", + "edit.members": "Medlemsliste", + "control-panel": "Gruppenes kontrollpanel", + "revert": "Tilbakestill", - "edit.no-users-found": "No Users Found", - "edit.confirm-remove-user": "Are you sure you want to remove this user?" + "edit.no-users-found": "Ingen brukere funnet", + "edit.confirm-remove-user": "Er du sikker på at du vil fjerne denne brukeren?" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/privileges.json b/public/language/nb/admin/manage/privileges.json index b102313cd5..1b2e763424 100644 --- a/public/language/nb/admin/manage/privileges.json +++ b/public/language/nb/admin/manage/privileges.json @@ -35,8 +35,8 @@ "view-edit-history": "Vis redigeringshistorikk", "delete-posts": "Slett innlegg", "view-deleted": "Vis slettede innlegg", - "upvote-posts": "Stem opp innlegg", - "downvote-posts": "Stem ned innlegg", + "upvote-posts": "Tilrå innlegg", + "downvote-posts": "Ikke tilrå innlegg", "delete-topics": "Slett emner", "purge": "Rensk", "moderate": "Moderere", diff --git a/public/language/nb/admin/manage/registration.json b/public/language/nb/admin/manage/registration.json index 903841257b..1194c22765 100644 --- a/public/language/nb/admin/manage/registration.json +++ b/public/language/nb/admin/manage/registration.json @@ -6,12 +6,12 @@ "list.email": "E-post", "list.ip": "IP", "list.time": "Tidspunkt", - "list.username-spam": "Hyppighet: %1 Forekomster: %2 Sikkerhet: %3", - "list.email-spam": "Hyppighet: %1 Forekomster: %2", - "list.ip-spam": "Hyppighet: %1 Forekomster: %2", + "list.username-spam": "Hyppighet: %1, Forekomster: %2, Sikkerhet: %3", + "list.email-spam": "Hyppighet: %1, Forekomster: %2", + "list.ip-spam": "Hyppighet: %1, Forekomster: %2", "invitations": "Invitasjoner", - "invitations.description": "Nedenfor er en komplett liste over utsendte invitasjoner. Bruk ctrl-f for å søke gjennom listen etter e-post eller brukernavn.

Brukernavnet vil vises til høyre for e-postene til brukere som har innløst invitasjonene sine.", + "invitations.description": "Nedenfor er en komplett liste over utsendte invitasjoner. Bruk Ctrl+F for å søke gjennom listen etter e-post eller brukernavn.

Brukernavnet vil vises til høyre for e-postene til brukere som har innløst invitasjonene sine.", "invitations.inviter-username": "Inviterens brukernavn", "invitations.invitee-email": "Invitertes e-post", "invitations.invitee-username": "Invitertes brukernavn (hvis registrert)", diff --git a/public/language/nb/admin/manage/tags.json b/public/language/nb/admin/manage/tags.json index 86fbd789eb..e48ba024a8 100644 --- a/public/language/nb/admin/manage/tags.json +++ b/public/language/nb/admin/manage/tags.json @@ -1,20 +1,20 @@ { - "manage-tags": "Manage Tags", + "manage-tags": "Administrer emneord", "none": "Forumet ditt har ingen tråder med emneord.", - "bg-color": "Background Colour", - "text-color": "Text Colour", - "description": "Select tags by clicking or dragging, use CTRL to select multiple tags.", - "create": "Create Tag", - "add-tag": "Add tag", - "modify": "Modify Tags", - "rename": "Rename Tags", - "delete": "Delete Selected Tags", - "search": "Search for tags...", - "settings": "Tags Settings", - "name": "Tag Name", + "bg-color": "Bakgrunnsfarge", + "text-color": "Tekstfarge", + "description": "Velg emneord ved å klikke eller dra, bruk CTRL for å velge flere emneord.", + "create": "Opprett emneord", + "add-tag": "Legg til emneord", + "modify": "Endre emneord", + "rename": "Gi nytt navn til emneord", + "delete": "Slett valgte emneord", + "search": "Søk etter emneord...", + "settings": "Innstillinger for emneord", + "name": "Emneordsnavn", - "alerts.editing": "Editing tag(s)", - "alerts.confirm-delete": "Do you want to delete the selected tags?", - "alerts.update-success": "Tag Updated!", - "reset-colors": "Reset colors" + "alerts.editing": "Redigerer emneord", + "alerts.confirm-delete": "Vil du slette de valgte emneordene?", + "alerts.update-success": "Emneord oppdatert!", + "reset-colors": "Tilbakestill farger" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/uploads.json b/public/language/nb/admin/manage/uploads.json index e5f3a2a940..768ba33eba 100644 --- a/public/language/nb/admin/manage/uploads.json +++ b/public/language/nb/admin/manage/uploads.json @@ -1,12 +1,12 @@ { - "manage-uploads": "Manage Uploads", - "upload-file": "Upload File", - "filename": "Filename", - "usage": "Post Usage", - "orphaned": "Orphaned", - "size/filecount": "Size / Filecount", - "confirm-delete": "Do you really want to delete this file?", - "filecount": "%1 files", - "new-folder": "New Folder", - "name-new-folder": "Enter a name for new the folder" + "manage-uploads": "Administrer opplastinger", + "upload-file": "Last opp fil", + "filename": "Filnavn", + "usage": "Bruk i innlegg", + "orphaned": "Foreldreløs", + "size/filecount": "Størrelse / Antall filer", + "confirm-delete": "Vil du virkelig slette denne filen?", + "filecount": "%1 filer", + "new-folder": "Ny mappe", + "name-new-folder": "Skriv inn et navn for den nye mappen" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/user-custom-fields.json b/public/language/nb/admin/manage/user-custom-fields.json index d584bc4f7c..1e855c52df 100644 --- a/public/language/nb/admin/manage/user-custom-fields.json +++ b/public/language/nb/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minste omdømme", "minimum-reputation-help": "Hvis en bruker har mindre enn denne verdien for omdømme, vil de ikke kunne bruke dette feltet", "delete-field-confirm-x": "Vil du virkelig slette det egendefinerte feltet \"%1\"?", - "custom-fields-saved": "Egendefinerte felt lagret" + "custom-fields-saved": "Egendefinerte felt lagret", + "visibility": "Synlighet", + "visibility-all": "Alle kan se feltet", + "visibility-loggedin": "Bare innloggede brukere kan se feltet", + "visibility-privileged": "Bare administratorer og moderatorer kan se feltet" } \ No newline at end of file diff --git a/public/language/nb/admin/menu.json b/public/language/nb/admin/menu.json index 8d057028a4..c93faaafb9 100644 --- a/public/language/nb/admin/menu.json +++ b/public/language/nb/admin/menu.json @@ -1,92 +1,92 @@ { - "section-dashboard": "Dashboards", - "dashboard/overview": "Overview", - "dashboard/logins": "Logins", - "dashboard/users": "Users", - "dashboard/topics": "Topics", - "dashboard/searches": "Searches", + "section-dashboard": "Dashbord", + "dashboard/overview": "Oversikt", + "dashboard/logins": "Innlogginger", + "dashboard/users": "Brukere", + "dashboard/topics": "Tråder", + "dashboard/searches": "Søk", "section-general": "Generelt", - "section-manage": "Manage", - "manage/categories": "Categories", - "manage/privileges": "Privileges", - "manage/tags": "Tags", + "section-manage": "Administrer", + "manage/categories": "Kategorier", + "manage/privileges": "Rettigheter", + "manage/tags": "Emneord", "manage/users": "Brukere", - "manage/admins-mods": "Admins & Mods", - "manage/registration": "Registration Queue", - "manage/flagged-content": "Flagged Content", - "manage/post-queue": "Post Queue", + "manage/admins-mods": "Administratorer og moderatorer", + "manage/registration": "Registreringskø", + "manage/flagged-content": "Flagget innhold", + "manage/post-queue": "Innleggskø", "manage/groups": "Grupper", - "manage/ip-blacklist": "IP Blacklist", - "manage/uploads": "Uploads", - "manage/digest": "Digests", + "manage/ip-blacklist": "IP-svarteliste", + "manage/uploads": "Opplastinger", + "manage/digest": "Sammendrag", - "section-settings": "Settings", - "settings/general": "General", - "settings/homepage": "Home Page", - "settings/navigation": "Navigation", - "settings/reputation": "Reputation & Flags", + "section-settings": "Innstillinger", + "settings/general": "Generelt", + "settings/homepage": "Hjemmeside", + "settings/navigation": "Navigasjon", + "settings/reputation": "Omdømme og flagg", "settings/email": "E-post", "settings/user": "Brukere", - "settings/group": "Groups", - "settings/guest": "Guests", - "settings/uploads": "Uploads", - "settings/languages": "Languages", + "settings/group": "Grupper", + "settings/guest": "Gjester", + "settings/uploads": "Opplastinger", + "settings/languages": "Språk", "settings/post": "Innlegg", - "settings/chat": "Chats", - "settings/pagination": "Pagination", - "settings/tags": "Tagger", + "settings/chat": "Chatter", + "settings/pagination": "Sidetelling", + "settings/tags": "Emneord", "settings/notifications": "Varsler", - "settings/api": "API Access", - "settings/sounds": "Sounds", - "settings/social": "Social", - "settings/cookies": "Cookies", - "settings/web-crawler": "Web Crawler", + "settings/api": "API-tilgang", + "settings/sounds": "Lyder", + "settings/social": "Sosialt", + "settings/cookies": "Informasjonskapsler", + "settings/web-crawler": "Nettleser", "settings/sockets": "Sockets", - "settings/advanced": "Advanced", + "settings/advanced": "Avansert", - "settings.page-title": "%1 Settings", + "settings.page-title": "%1 Innstillinger", - "section-appearance": "Appearance", - "appearance/themes": "Tema", + "section-appearance": "Utseende", + "appearance/themes": "Temaer", "appearance/skins": "Drakter", - "appearance/customise": "Custom Content (HTML/JS/CSS)", + "appearance/customise": "Tilpasset innhold (HTML/JS/CSS)", - "section-extend": "Extend", + "section-extend": "Utvidelser", "extend/plugins": "Tillegg", "extend/widgets": "Widgets", - "extend/rewards": "Rewards", + "extend/rewards": "Belønninger", - "section-social-auth": "Social Authentication", + "section-social-auth": "Sosial autentisering", "section-plugins": "Plugins", - "extend/plugins.install": "Install Plugins", + "extend/plugins.install": "Installer plugins", "section-advanced": "Avansert", "advanced/database": "Database", - "advanced/events": "Events", - "advanced/hooks": "Hooks", + "advanced/events": "Hendelser", + "advanced/hooks": "Kroker", "advanced/logs": "Logger", - "advanced/errors": "Errors", - "advanced/cache": "Cache", + "advanced/errors": "Feil", + "advanced/cache": "Buffer", "development/logger": "Logger", "development/info": "Info", - "rebuild-and-restart-forum": "Rebuild & Restart Forum", - "rebuild-and-restart": "Rebuild & Restart", + "rebuild-and-restart-forum": "Gjenoppbygg og restart forum", + "rebuild-and-restart": "Gjenoppbygg og restart", "restart-forum": "Restart forum", "restart": "Restart", "logout": "Logg ut", "view-forum": "Vis forum", - "search.placeholder": "Søkeinnstillinger", + "search.placeholder": "Søk i innstillinger", "search.no-results": "Ingen resultater", - "search.search-forum": "Search the forum for ", - "search.keep-typing": "Type more to see results...", - "search.start-typing": "Start typing to see results...", + "search.search-forum": "Søk i forumet etter ", + "search.keep-typing": "Skriv mer for å se resultater...", + "search.start-typing": "Begynn å skrive for å se resultater...", - "connection-lost": "Connection to %1 has been lost, attempting to reconnect...", + "connection-lost": "Tilkoblingen til %1 er brutt, prøver å koble til på nytt...", - "alerts.version": "Running NodeBB v%1", - "alerts.upgrade": "Upgrade to v%1" + "alerts.version": "Kjører NodeBB v%1", + "alerts.upgrade": "Oppgrader til v%1" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/advanced.json b/public/language/nb/admin/settings/advanced.json index 982eaa2f64..f1be4b2bff 100644 --- a/public/language/nb/admin/settings/advanced.json +++ b/public/language/nb/admin/settings/advanced.json @@ -1,50 +1,50 @@ { - "maintenance-mode": "Maintenance Mode", - "maintenance-mode.help": "When the forum is in maintenance mode, all requests will be redirected to a static holding page. Administrators are exempt from this redirection, and are able to access the site normally.", - "maintenance-mode.status": "Maintenance Mode Status Code", - "maintenance-mode.message": "Maintenance Message", - "maintenance-mode.groups-exempt-from-maintenance-mode": "Select groups that should be exempt from maintenance mode", - "headers": "Headers", - "headers.allow-from": "Set ALLOW-FROM to Place NodeBB in an iFrame", - "headers.csp-frame-ancestors": "Set Content-Security-Policy frame-ancestors header to Place NodeBB in an iFrame", - "headers.csp-frame-ancestors-help": "'none', 'self'(default) or list of URIs to allow.", - "headers.powered-by": "Customise the \"Powered By\" header sent by NodeBB", + "maintenance-mode": "Vedlikeholdsmodus", + "maintenance-mode.help": "Når forumet er i vedlikeholdsmodus, blir alle forespørsler omdirigert til en statisk holdingside. Administratorer er unntatt fra denne omdirigeringen og kan få tilgang til siden som vanlig.", + "maintenance-mode.status": "Statuskode for vedlikeholdsmodus", + "maintenance-mode.message": "Vedlikeholdsmelding", + "maintenance-mode.groups-exempt-from-maintenance-mode": "Velg grupper som skal være unntatt fra vedlikeholdsmodus", + "headers": "Overskrifter", + "headers.allow-from": "Sett ALLOW-FROM for å plassere NodeBB i en iFrame", + "headers.csp-frame-ancestors": "Sett Content-Security-Policy frame-ancestors-header for å plassere NodeBB i en iFrame", + "headers.csp-frame-ancestors-help": "'none', 'self' (standard) eller en liste over URI-er som er tillatt.", + "headers.powered-by": "Tilpass \"Drevet av\"-headeren sendt av NodeBB", "headers.acao": "Access-Control-Allow-Origin", - "headers.acao-regex": "Access-Control-Allow-Origin Regular Expression", - "headers.acao-help": "To deny access to all sites, leave empty", - "headers.acao-regex-help": "Enter regular expressions here to match dynamic origins. To deny access to all sites, leave empty", + "headers.acao-regex": "Access-Control-Allow-Origin regulært uttrykk", + "headers.acao-help": "For å nekte tilgang til alle nettsteder, la feltet stå tomt", + "headers.acao-regex-help": "Skriv inn regulære uttrykk her for å matche dynamiske opprinnelser. For å nekte tilgang til alle nettsteder, la feltet stå tomt", "headers.acac": "Access-Control-Allow-Credentials", "headers.acam": "Access-Control-Allow-Methods", "headers.acah": "Access-Control-Allow-Headers", "headers.coep": "Cross-Origin-Embedder-Policy", - "headers.coep-help": "When enabled (default), will set the header to require-corp", + "headers.coep-help": "Når aktivert (standard), vil headeren bli satt til require-corp", "headers.coop": "Cross-Origin-Opener-Policy", "headers.corp": "Cross-Origin-Resource-Policy", - "headers.permissions-policy": "Permissions-Policy", - "headers.permissions-policy-help": "Allows setting permissions policy header, for example \"geolocation=*, camera=()\", see this for more info.", - "hsts": "Strict Transport Security", - "hsts.enabled": "Enabled HSTS (recommended)", - "hsts.maxAge": "HSTS Max Age", - "hsts.subdomains": "Include subdomains in HSTS header", - "hsts.preload": "Allow preloading of HSTS header", - "hsts.help": "If enabled, an HSTS header will be set for this site. You can elect to include subdomains and preloading flags in your header. If in doubt, you can leave these unchecked. More information ", - "traffic-management": "Traffic Management", - "traffic.help": "NodeBB uses a module that automatically denies requests in high-traffic situations. You can tune these settings here, although the defaults are a good starting point.", - "traffic.enable": "Enable Traffic Management", - "traffic.event-lag": "Event Loop Lag Threshold (in milliseconds)", - "traffic.event-lag-help": "Lowering this value decreases wait times for page loads, but will also show the \"excessive load\" message to more users. (Restart required)", - "traffic.lag-check-interval": "Check Interval (in milliseconds)", - "traffic.lag-check-interval-help": "Lowering this value causes NodeBB to become more sensitive to spikes in load, but may also cause the check to become too sensitive. (Restart required)", + "headers.permissions-policy": "Tillatelser-Policy", + "headers.permissions-policy-help": "Lar deg angi tillatelsespolicy-header, for eksempel \"geolocation=*, camera=()\", se her for mer info.", + "hsts": "Streng transport-sikkerhet", + "hsts.enabled": "Aktiver HSTS (anbefalt)", + "hsts.maxAge": "HSTS Maksimal varighet", + "hsts.subdomains": "Inkluder underdomener i HSTS-headeren", + "hsts.preload": "Tillat forhåndslasting av HSTS-headeren", + "hsts.help": "Hvis aktivert, vil en HSTS-header bli satt for dette nettstedet. Du kan velge å inkludere underdomener og forhåndslastingsflagg i headeren. Hvis du er usikker, kan du la disse stå av. Mer informasjon ", + "traffic-management": "Trafikkhåndtering", + "traffic.help": "NodeBB bruker en modul som automatisk avviser forespørsler i situasjoner med høy trafikk. Du kan justere disse innstillingene her, selv om standardverdiene er et godt utgangspunkt.", + "traffic.enable": "Aktiver trafikkhåndtering", + "traffic.event-lag": "Terskel for Event Loop-forsinkelse (i millisekunder)", + "traffic.event-lag-help": "Å senke denne verdien reduserer ventetiden for sideinnlastinger, men vil også vise meldingen \"for høy belastning\" til flere brukere. (Omstart kreves)", + "traffic.lag-check-interval": "Kontrollintervall (i millisekunder)", + "traffic.lag-check-interval-help": "Å senke denne verdien gjør NodeBB mer følsom for belastningstopper, men kan også gjøre kontrollen for følsom. (Omstart kreves)", - "sockets.settings": "WebSocket Settings", - "sockets.max-attempts": "Max Reconnection Attempts", - "sockets.default-placeholder": "Default: %1", - "sockets.delay": "Reconnection Delay", + "sockets.settings": "Innstillinger for WebSocket", + "sockets.max-attempts": "Maksimalt antall tilkoblingsforsøk", + "sockets.default-placeholder": "Standard: %1", + "sockets.delay": "Forsinkelse ved tilkobling på nytt", - "analytics.settings": "Analytics Settings", - "analytics.max-cache": "Analytics Cache Max Value", - "analytics.max-cache-help": "On high-traffic installs, the cache could be exhausted continuously if there are more concurrent active users than the Max Cache value. (Restart required)", - "compression.settings": "Compression Settings", - "compression.enable": "Enable Compression", - "compression.help": "This setting enables gzip compression. For a high-traffic website in production, the best way to put compression in place is to implement it at a reverse proxy level. You can enable it here for testing purposes." + "analytics.settings": "Innstillinger for analyse", + "analytics.max-cache": "Maksimal verdi for analysedatahurtigbuffer", + "analytics.max-cache-help": "På installasjoner med høy trafikk kan hurtigbufferen bli kontinuerlig brukt opp hvis det er flere aktive brukere samtidig enn den maksimale hurtigbufferen tillater. (Omstart kreves)", + "compression.settings": "Innstillinger for komprimering", + "compression.enable": "Aktiver komprimering", + "compression.help": "Denne innstillingen aktiverer gzip-komprimering. For nettsteder med høy trafikk anbefales det å implementere komprimering på omvendt proxy-nivå. Du kan aktivere det her for testformål." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/api.json b/public/language/nb/admin/settings/api.json index 671e5eeb90..3bc2513294 100644 --- a/public/language/nb/admin/settings/api.json +++ b/public/language/nb/admin/settings/api.json @@ -1,29 +1,29 @@ { "tokens": "Tokens", - "settings": "Settings", - "lead-text": "From this page you can configure access to the Write API in NodeBB.", - "intro": "By default, the Write API authenticates users based on their session cookie, but NodeBB also supports Bearer authentication via tokens generated via this page.", - "warning": "Be advised — treat tokens like passwords. If they are leaked, your account should be considered compromised.", - "docs": "Click here to access the full API specification", + "settings": "Innstillinger", + "lead-text": "Fra denne siden kan du konfigurere tilgang til Write API i NodeBB.", + "intro": "Som standard autentiserer Write API brukere basert på deres øktinformasjonskapsel, men NodeBB støtter også Bearer-autentisering via tokens generert fra denne siden.", + "warning": "Vær oppmerksom — behandle tokens som passord. Hvis de lekker, bør kontoen din anses som kompromittert.", + "docs": "Klikk her for å få tilgang til den fullstendige API-spesifikasjonen", - "require-https": "Require API usage via HTTPS only", - "require-https-caveat": "Note: Some installations involving load balancers may proxy their requests to NodeBB using HTTP, in which case this option should remain disabled.", + "require-https": "Krev API-bruk kun via HTTPS", + "require-https-caveat": "Merk: Noen installasjoner med lastbalanserere kan videresende forespørslene sine til NodeBB via HTTP, i så fall bør dette alternativet forbli deaktivert.", - "uid": "User ID", + "uid": "Bruker-ID", "token": "Token", - "uid-help-text": "Specify a User ID to associate with this token. If the user ID is 0, it will be considered a master token, which can assume the identity of other users based on the _uid parameter", - "description": "Description", - "last-seen": "Last seen", - "created": "Created", - "create-token": "Create Token", - "update-token": "Update Token", - "master-token": "Master token", - "last-seen-never": "This key has never been used.", - "no-description": "No description specified.", - "actions": "Actions", - "edit": "Edit", - "roll": "Roll", + "uid-help-text": "Angi en bruker-ID som skal knyttes til dette tokenet. Hvis bruker-ID-en er 0, vil den bli betraktet som et master-token, som kan anta identiteten til andre brukere basert på _uid-parameteren.", + "description": "Beskrivelse", + "last-seen": "Sist sett", + "created": "Opprettet", + "create-token": "Opprett token", + "update-token": "Oppdater token", + "master-token": "Master-token", + "last-seen-never": "Denne nøkkelen har aldri blitt brukt.", + "no-description": "Ingen beskrivelse spesifisert.", + "actions": "Handlinger", + "edit": "Rediger", + "roll": "Regenerer", - "delete-confirm": "Are you sure you wish to delete this token? It will not be recoverable.", - "roll-confirm": "Are you sure you wish to regenerate this token? The old token will be immediately revoked and will not be recoverable." + "delete-confirm": "Er du sikker på at du vil slette dette tokenet? Det vil ikke kunne gjenopprettes.", + "roll-confirm": "Er du sikker på at du vil regenerere dette tokenet? Det gamle tokenet vil umiddelbart bli tilbakekalt og kan ikke gjenopprettes." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/chat.json b/public/language/nb/admin/settings/chat.json index a5412d1095..0b3cf594a0 100644 --- a/public/language/nb/admin/settings/chat.json +++ b/public/language/nb/admin/settings/chat.json @@ -1,15 +1,15 @@ { - "zero-is-disabled": "Enter 0 to disable this restriction", - "chat-settings": "Chat Settings", - "disable": "Disable chat", - "disable-editing": "Disable chat message editing/deletion", - "disable-editing-help": "Administrators and global moderators are exempt from this restriction", - "max-length": "Maximum length of chat messages", - "max-chat-room-name-length": "Maximum length of chat room names", - "max-room-size": "Maximum number of users in chat rooms", - "delay": "Time between chat messages (ms)", - "notification-delay": "Notification delay for chat messages", - "notification-delay-help": "Additional messages sent between this time are collated, and the user is notified once per delay period. Set this to 0 to disable the delay.", - "restrictions.seconds-edit-after": "Number of seconds a chat message will remain editable.", - "restrictions.seconds-delete-after": "Number of seconds a chat message will remain deletable." + "zero-is-disabled": "Skriv inn 0 for å deaktivere denne begrensningen", + "chat-settings": "Innstillinger for chat", + "disable": "Deaktiver chat", + "disable-editing": "Deaktiver redigering/sletting av chatmeldinger", + "disable-editing-help": "Administratorer og globale moderatorer er unntatt fra denne begrensningen", + "max-length": "Maksimal lengde på chatmeldinger", + "max-chat-room-name-length": "Maksimal lengde på navn på chatrom", + "max-room-size": "Maksimalt antall brukere i chatrom", + "delay": "Tid mellom chatmeldinger (ms)", + "notification-delay": "Varslingsforsinkelse for chatmeldinger", + "notification-delay-help": "Ytterligere meldinger sendt innen denne tiden blir samlet, og brukeren varsles én gang per forsinkelsesperiode. Sett denne til 0 for å deaktivere forsinkelsen.", + "restrictions.seconds-edit-after": "Antall sekunder en chatmelding forblir redigerbar.", + "restrictions.seconds-delete-after": "Antall sekunder en chatmelding forblir slettbar." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/cookies.json b/public/language/nb/admin/settings/cookies.json index 1ffd2dced4..fea86ff3d3 100644 --- a/public/language/nb/admin/settings/cookies.json +++ b/public/language/nb/admin/settings/cookies.json @@ -1,13 +1,13 @@ { - "eu-consent": "EU Consent", - "consent.enabled": "Enabled", - "consent.message": "Notification message", - "consent.acceptance": "Acceptance message", - "consent.link-text": "Policy Link Text", - "consent.link-url": "Policy Link URL", - "consent.blank-localised-default": "Leave blank to use NodeBB localised defaults", - "settings": "Settings", - "cookie-domain": "Session cookie domain", - "max-user-sessions": "Max active sessions per user", - "blank-default": "Leave blank for default" + "eu-consent": "EU-samtykke", + "consent.enabled": "Aktivert", + "consent.message": "Varslingsmelding", + "consent.acceptance": "Godkjenningsmelding", + "consent.link-text": "Lenketekst for policy", + "consent.link-url": "URL til policy", + "consent.blank-localised-default": "La stå tomt for å bruke NodeBBs lokaliserte standardverdier", + "settings": "Innstillinger", + "cookie-domain": "Domene for øktinformasjonskapsler", + "max-user-sessions": "Maksimalt antall aktive økter per bruker", + "blank-default": "La stå tomt for standard" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/email.json b/public/language/nb/admin/settings/email.json index 7c0ae04654..273ab939c0 100644 --- a/public/language/nb/admin/settings/email.json +++ b/public/language/nb/admin/settings/email.json @@ -2,51 +2,51 @@ "email-settings": "E-postinnstillinger", "address": "E-postadresse", "address-help": "Følgende e-postadresse viser til e-postadressen som mottakeren vil se i \"Fra\" og \"Svar til\"-feltene. ", - "from": "From Name", + "from": "Avsendernavn", "from-help": "Avsendernavnet som skal vises i e-posten.", - "confirmation-settings": "Confirmation", - "confirmation.expiry": "Hours to keep email confirmation link valid", + "confirmation-settings": "Bekreftelsesinnstillinger", + "confirmation.expiry": "Antall timer lenken for e-postbekreftelse er gyldig", "smtp-transport": "SMTP Transport", - "smtp-transport.enabled": "Enable SMTP Transport", - "smtp-transport-help": "You can select from a list of well-known services or enter a custom one.", - "smtp-transport.service": "Select a service", - "smtp-transport.service-custom": "Custom Service", - "smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select "Custom Service" and enter the details below.", - "smtp-transport.gmail-warning1": "If you are using GMail as your email provider, you will have to generate an "App Password" in order for NodeBB to authenticate successfully. You can generate one at the App Passwords page.", - "smtp-transport.gmail-warning2": "For more information about this workaround, please consult this NodeMailer article on the issue. An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. Browse available plugins here.", + "smtp-transport.enabled": "Aktiver SMTP Transport", + "smtp-transport-help": "Du kan velge fra en liste over kjente tjenester eller legge inn en egendefinert.", + "smtp-transport.service": "Velg en tjeneste", + "smtp-transport.service-custom": "Egendefinert tjeneste", + "smtp-transport.service-help": "Velg et tjenestenavn ovenfor for å bruke kjent informasjon. Alternativt kan du velge «Egendefinert tjeneste» og fylle inn detaljene nedenfor.", + "smtp-transport.gmail-warning1": "Hvis du bruker GMail som e-postleverandør, må du generere et \"App-passord\" for at NodeBB skal kunne autentisere seg. Du kan generere dette på App-passord -siden.", + "smtp-transport.gmail-warning2": "For mer informasjon om dette, se denne NodeMailer-artikkelen . Et alternativ kan være å bruke en tredjeparts e-posttjeneste som SendGrid eller Mailgun. Utforsk tilgjengelige plugins her.", "smtp-transport.auto-enable-toast": "Det ser ut som at du konfigurerer en SMTP transport. Vi skrudde på «SMTP Transport»-alternativet for deg.", - "smtp-transport.host": "SMTP Host", - "smtp-transport.port": "SMTP Port", - "smtp-transport.security": "Connection security", - "smtp-transport.security-encrypted": "Encrypted", + "smtp-transport.host": "SMTP-vert", + "smtp-transport.port": "SMTP-port", + "smtp-transport.security": "Tilkoblingssikkerhet", + "smtp-transport.security-encrypted": "Kryptert", "smtp-transport.security-starttls": "StartTLS", - "smtp-transport.security-none": "None", + "smtp-transport.security-none": "Ingen", "smtp-transport.username": "Brukernavn", - "smtp-transport.username-help": "For the Gmail service, enter the full email address here, especially if you are using a Google Apps managed domain.", - "smtp-transport.password": "Password", - "smtp-transport.pool": "Enable pooled connections", - "smtp-transport.pool-help": "Pooling connections prevents NodeBB from creating a new connection for every email. This option only applies if SMTP Transport is enabled.", + "smtp-transport.username-help": "For Gmail-tjenesten, legg inn hele e-postadressen her, spesielt hvis du bruker et Google Apps-administrert domene.", + "smtp-transport.password": "Passord", + "smtp-transport.pool": "Aktiver pooled-tilkoblinger", + "smtp-transport.pool-help": "Pooling forhindrer NodeBB fra å opprette en ny tilkobling for hver e-post. Dette gjelder bare hvis SMTP Transport er aktivert.", "template": "Endre e-postmal", "template.select": "Velg e-postmal", - "template.revert": "Revert to Original", + "template.revert": "Gjenopprett til original", "testing": "E-posttesting", "testing.select": "Velg e-postmal", "testing.send": "Send test-e-post", - "testing.send-help": "The test email will be sent to the currently logged in user's email address.", + "testing.send-help": "Test-e-posten vil bli sendt til e-postadressen til den påloggede brukeren.", "subscriptions": "E-postsammendrag", "subscriptions.disable": "Deaktiver e-postsammendrag", - "subscriptions.hour": "Digest Hour", - "subscriptions.hour-help": "Skriv inn et tall som representerer den timen planlagte e-postsammendrag skal sendes ut (f.eks. 0 for midnatt, 17 for 17:00). Husk at denne tiden forholder seg til serverens tid, og kan avvike fra din systemklokke.
Den omtrentlige servertiden er:
Det neste daglige sammendraget er planlagt utsendt ", - "notifications.remove-images": "Remove images from email notifications", + "subscriptions.hour": "Tidspunkt for sammendrag", + "subscriptions.hour-help": "Skriv inn timen e-postsammendrag skal sendes ut (f.eks. 0 for midnatt, 17 for kl. 17:00). Tiden refererer til serverens tid.
Serverens nåværende tid er:
Neste utsending av sammendrag er planlagt til ", + "notifications.remove-images": "Fjern bilder fra e-postvarsler", "require-email-address": "Krev at nye brukere legger til en e-postadresse", - "require-email-address-warning": "By default, users can opt-out of entering an email address by leaving the field blank. Enabling this option means new users will have to enter and confirm an email address in order to proceed with registration and subsequent access to the forum. It does not ensure user will enter a real email address, nor even an address they own.", + "require-email-address-warning": "Som standard kan brukere velge å ikke oppgi en e-postadresse. Hvis aktivert, må nye brukere oppgi og bekrefte en e-postadresse for å registrere seg. Dette sikrer ikke at e-posten er ekte eller at brukeren eier adressen.", "send-validation-email": "Send bekreftelses-e-post når en e-post legges til eller endres", - "include-unverified-emails": "Send e-post til mottakere som ikke eksplisitt har bekreftet e-postadressen sin.", - "include-unverified-warning": "Som standard, vil brukere som har e-postadresse knyttet til deres konto allerede være verifisert, men det er noen situasjoner hvor dette ikke er tilfelle (f.eks. SSO-innlogginger, grandfathered users, etc). Skru på denne innstillingen på egen risiko – å sende e-poster til uverifiserte e-postadresser kan være brudd på regionale anti-spam-regler.", - "prompt": "Prompt users to enter or confirm their emails", + "include-unverified-emails": "Send e-post til brukere med ubekreftede e-postadresser.", + "include-unverified-warning": "Som standard er brukernes e-postadresser bekreftet. Aktiver denne innstillingen på egen risiko – å sende e-post til ubekreftede adresser kan bryte regionale anti-spam-regler.", + "prompt": "Be brukere om å legge inn eller bekrefte e-posten sin", "prompt-help": "Hvis en bruker mangler e-postadresse, eller e-postadressen ikke er bekreftet, vil en advarsel vises på skjermen. ", "sendEmailToBanned": "Send e-post til brukere selv om de har blitt utestengt" } diff --git a/public/language/nb/admin/settings/general.json b/public/language/nb/admin/settings/general.json index 7d5e13572e..c8960ad53a 100644 --- a/public/language/nb/admin/settings/general.json +++ b/public/language/nb/admin/settings/general.json @@ -1,54 +1,54 @@ { - "general-settings": "General Settings", - "on-this-page": "On this page:", - "site-settings": "Site Settings", - "title": "Site Title", - "title.short": "Short Title", - "title.short-placeholder": "If no short title is specified, the site title will be used", - "title.url": "Title Link URL", - "title.url-placeholder": "The URL of the site title", - "title.url-help": "When the title is clicked, send users to this address. If left blank, user will be sent to the forum index. Note: This is not the external URL used in emails, etc. That is set by the url property in config.json", - "title.name": "Your Community Name", - "title.show-in-header": "Show Site Title in Header", - "browser-title": "Browser Title", - "browser-title-help": "If no browser title is specified, the site title will be used", - "title-layout": "Title Layout", - "title-layout-help": "Define how the browser title will be structured ie. {pageTitle} | {browserTitle}", - "description.placeholder": "A short description about your community", + "general-settings": "Generelle innstillinger", + "on-this-page": "På denne siden:", + "site-settings": "Nettstedsinnstillinger", + "title": "Nettstedstittel", + "title.short": "Kort tittel", + "title.short-placeholder": "Hvis ingen kort tittel er spesifisert, brukes nettstedstittelen", + "title.url": "Tittellink-URL", + "title.url-placeholder": "URL-en til nettstedstittelen", + "title.url-help": "Når tittelen klikkes, send brukere til denne adressen. Hvis den er tom, sendes brukerne til forumets indeks. Merk: Dette er ikke den eksterne URL-en brukt i e-poster osv. Dette settes i url i config.json", + "title.name": "Navnet på fellesskapet ditt", + "title.show-in-header": "Vis nettstedstittel i topptekst", + "browser-title": "Tittel i nettleseren", + "browser-title-help": "Hvis ingen nettlesertittel er spesifisert, brukes nettstedstittelen", + "title-layout": "Tittellayout", + "title-layout-help": "Definer hvordan nettlesertittelen skal struktureres, f.eks. {pageTitle} | {browserTitle}", + "description.placeholder": "En kort beskrivelse av fellesskapet ditt", "description": "Velg hvilken side som vises når brukere navigerer til rot-URL-en for forumet ditt.", - "keywords": "Site Keywords", - "keywords-placeholder": "Keywords describing your community, comma-separated", - "logo-and-icons": "Site Logo & Icons", - "logo.image": "Image", - "logo.image-placeholder": "Path to a logo to display on forum header", - "logo.upload": "Upload", - "logo.url": "Logo Link URL", - "logo.url-placeholder": "The URL of the site logo", - "logo.url-help": "When the logo is clicked, send users to this address. If left blank, user will be sent to the forum index.
Note: This is not the external URL used in emails, etc. That is set by the url property in config.json", - "logo.alt-text": "Alt Text", - "log.alt-text-placeholder": "Alternative text for accessibility", + "keywords": "Nøkkelord for nettstedet", + "keywords-placeholder": "Nøkkelord som beskriver fellesskapet ditt, kommaseparert", + "logo-and-icons": "Logo og ikoner for nettstedet", + "logo.image": "Bilde", + "logo.image-placeholder": "Sti til et logo som vises i forumets topptekst", + "logo.upload": "Last opp", + "logo.url": "Logolink-URL", + "logo.url-placeholder": "URL-en til nettstedets logo", + "logo.url-help": "Når logoen klikkes, send brukere til denne adressen. Hvis den er tom, sendes brukerne til forumets indeks.
Merk: Dette er ikke den eksterne URL-en brukt i e-poster osv. Dette settes i url i config.json", + "logo.alt-text": "Alternativ tekst", + "log.alt-text-placeholder": "Alternativ tekst for tilgjengelighet", "favicon": "Favicon", - "favicon.upload": "Upload", + "favicon.upload": "Last opp", "pwa": "Progressive Web App", - "touch-icon": "Touch Icon", - "touch-icon.upload": "Upload", - "touch-icon.help": "Recommended size and format: 512x512, PNG format only. If no touch icon is specified, NodeBB will fall back to using the favicon.", - "maskable-icon": "Maskable (Homescreen) Icon", - "maskable-icon.help": "Recommended size and format: 512x512, PNG format only. If no maskable icon is specified, NodeBB will fall back to the Touch Icon.", - "outgoing-links": "Outgoing Links", - "outgoing-links.warning-page": "Use Outgoing Links Warning Page", - "search": "Search", - "search-default-in": "Search In", - "search-default-in-quick": "Quick Search In", - "search-default-sort-by": "Sort by", - "outgoing-links.whitelist": "Domains to whitelist for bypassing the warning page", - "site-colors": "Site Color Metadata", - "theme-color": "Theme Color", - "background-color": "Background Color", - "background-color-help": "Color used for splash screen background when website is installed as a PWA", - "undo-timeout": "Undo Timeout", - "undo-timeout-help": "Some operations such as moving topics will allow for the moderator to undo their action within a certain timeframe. Set to 0 to disable undo completely.", - "topic-tools": "Topic Tools", + "touch-icon": "Berøringsikon", + "touch-icon.upload": "Last opp", + "touch-icon.help": "Anbefalt størrelse og format: 512x512, kun PNG-format. Hvis ingen berøringsikon er spesifisert, brukes favicon som reserve.", + "maskable-icon": "Maskerbart (Hjem-skjerm) ikon", + "maskable-icon.help": "Anbefalt størrelse og format: 512x512, kun PNG-format. Hvis ingen maskerbart ikon er spesifisert, brukes berøringsikon som reserve.", + "outgoing-links": "Utgående lenker", + "outgoing-links.warning-page": "Bruk varslingsside for utgående lenker", + "search": "Søk", + "search-default-in": "Søk i", + "search-default-in-quick": "Hurtigsøk i", + "search-default-sort-by": "Sorter etter", + "outgoing-links.whitelist": "Domener som skal hvitelistes for å omgå varslingssiden", + "site-colors": "Metadata for nettstedets farger", + "theme-color": "Temaets farge", + "background-color": "Bakgrunnsfarge", + "background-color-help": "Farge brukt for bakgrunnen til splash-skjermen når nettstedet installeres som en PWA", + "undo-timeout": "Angre tidsavbrudd", + "undo-timeout-help": "Visse handlinger som å flytte emner gir moderatorer en tidsbegrensning for å angre handlingen. Sett til 0 for å deaktivere angre helt.", + "topic-tools": "Verktøy for emner", "home-page": "Hjemmeside", "home-page-route": "Rute for hjemmeside", "custom-route": "Egendefinert rute", @@ -56,7 +56,7 @@ "home-page-title": "Tittel på hjemmesiden (standard: \"Hjem\")", "default-language": "Standardspråk", "auto-detect": "Oppdag automatisk språkinnstilling for gjester", - "default-language-help": "Det prevalgte språket avgjør språkinnstillingene for alle brukere som besøker forumet ditt.
Indiviuelle brukere kan overstyre det prevalgte språket inne på deres kontoinnstillinger.", - "post-sharing": "Post Sharing", - "info-plugins-additional": "Plugins can add additional networks for sharing posts." + "default-language-help": "Standardspråket avgjør språkinnstillingene for alle brukere som besøker forumet ditt.
Individuelle brukere kan overstyre standardspråket i kontoinnstillingene sine.", + "post-sharing": "Deling av innlegg", + "info-plugins-additional": "Plugins kan legge til flere nettverk for deling av innlegg." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/group.json b/public/language/nb/admin/settings/group.json index f13933ea7e..36a2517300 100644 --- a/public/language/nb/admin/settings/group.json +++ b/public/language/nb/admin/settings/group.json @@ -1,13 +1,13 @@ { - "general": "General", - "private-groups": "Private Groups", - "private-groups.help": "If enabled, joining of groups requires the approval of the group owner (Default: enabled)", - "private-groups.warning": "Beware! If this option is disabled and you have private groups, they automatically become public.", - "allow-multiple-badges": "Allow Multiple Badges", - "allow-multiple-badges-help": "This flag can be used to allow users to select multiple group badges, requires theme support.", - "max-name-length": "Maximum Group Name Length", - "max-title-length": "Maximum Group Title Length", - "cover-image": "Group Cover Image", - "default-cover": "Default Cover Images", - "default-cover-help": "Add comma-separated default cover images for groups that don't have an uploaded cover image" + "general": "Generelt", + "private-groups": "Private grupper", + "private-groups.help": "Hvis aktivert, krever innmelding i grupper godkjenning av gruppeeieren (Standard: aktivert)", + "private-groups.warning": "Obs! Hvis dette alternativet deaktiveres og du har private grupper, blir de automatisk offentlige.", + "allow-multiple-badges": "Tillat flere merker", + "allow-multiple-badges-help": "Dette flagget kan brukes for å la brukere velge flere gruppemerker. Krever temasupport.", + "max-name-length": "Maksimal lengde på gruppenavn", + "max-title-length": "Maksimal lengde på gruppetittel", + "cover-image": "Gruppens omslagsbilde", + "default-cover": "Standard omslagsbilder", + "default-cover-help": "Legg til kommaseparerte standard omslagsbilder for grupper uten opplastet omslagsbilde" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/navigation.json b/public/language/nb/admin/settings/navigation.json index 4282790be4..ad232173ca 100644 --- a/public/language/nb/admin/settings/navigation.json +++ b/public/language/nb/admin/settings/navigation.json @@ -1,7 +1,7 @@ { "navigation": "Navigasjon", "icon": "Ikon:", - "change-icon": "endre", + "change-icon": "Endre", "route": "Rute:", "tooltip": "Verktøytips:", "text": "Tekst:", @@ -21,6 +21,6 @@ "available-menu-items": "Tilgjengelige menyelementer", "custom-route": "Tilpasset rute", - "core": "kjerne", - "plugin": "plugin" + "core": "Kjerne", + "plugin": "Plugin" } diff --git a/public/language/nb/admin/settings/notifications.json b/public/language/nb/admin/settings/notifications.json index c6d8b928ce..989afda78d 100644 --- a/public/language/nb/admin/settings/notifications.json +++ b/public/language/nb/admin/settings/notifications.json @@ -1,7 +1,7 @@ { - "notifications": "Notifications", - "welcome-notification": "Welcome Notification", - "welcome-notification-link": "Welcome Notification Link", - "welcome-notification-uid": "Welcome Notification User (UID)", - "post-queue-notification-uid": "Post Queue User (UID)" + "notifications": "Varsler", + "welcome-notification": "Velkomstvarsel", + "welcome-notification-link": "Lenke for velkomstvarsel", + "welcome-notification-uid": "Bruker-ID for velkomstvarsel (UID)", + "post-queue-notification-uid": "Bruker-ID for innleggskø (UID)" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/pagination.json b/public/language/nb/admin/settings/pagination.json index 2fb3343b1d..f8407401c0 100644 --- a/public/language/nb/admin/settings/pagination.json +++ b/public/language/nb/admin/settings/pagination.json @@ -1,12 +1,12 @@ { - "pagination": "Pagination Settings", - "enable": "Paginer tråder og innlegg istedet for å bruke uendelig scrolling.", - "posts": "Post Pagination", - "topics": "Trådpaginering", - "posts-per-page": "Posts per Page", - "max-posts-per-page": "Maximum posts per page", - "categories": "Category Pagination", + "pagination": "Innstillinger for paginering", + "enable": "Paginér tråder og innlegg i stedet for å bruke uendelig scrolling.", + "posts": "Paginer innlegg", + "topics": "Paginer tråder", + "posts-per-page": "Innlegg per side", + "max-posts-per-page": "Maksimalt antall innlegg per side", + "categories": "Kategoripaginering", "topics-per-page": "Tråder per side", - "max-topics-per-page": "Maximum topics per page", - "categories-per-page": "Categories per page" + "max-topics-per-page": "Maksimalt antall tråder per side", + "categories-per-page": "Kategorier per side" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/reputation.json b/public/language/nb/admin/settings/reputation.json index 8a41c0750d..b3f8a553b8 100644 --- a/public/language/nb/admin/settings/reputation.json +++ b/public/language/nb/admin/settings/reputation.json @@ -28,7 +28,7 @@ "flags": "Flagginnstillinger", "flags.limit-per-target": "Maksimalt antall ganger noe kan flagges", "flags.limit-per-target-placeholder": "Standard: 0", - "flags.limit-per-target-help": "Når et innlegg eller en bruker blir flagget flere ganger, regnes hvert ekstra flagg som en "rapport" og legges til det opprinnelige flagget. Sett dette alternativet til et tall større enn null for å begrense antall rapporter et element kan motta.", + "flags.limit-per-target-help": "Når et innlegg eller en bruker blir flagget flere ganger, regnes hvert ekstra flagg som en \"rapport\" og legges til det opprinnelige flagget. Sett dette alternativet til et tall større enn null for å begrense antall rapporter et element kan motta.", "flags.limit-post-flags-per-day": "Maksimalt antall innlegg som kan flagges per dag", "flags.limit-post-flags-per-day-help": "Angi antall innlegg som kan flagges av en bruker innen en dag.", "flags.limit-user-flags-per-day": "Maksimalt antall brukere som kan flagges per dag", diff --git a/public/language/nb/admin/settings/sockets.json b/public/language/nb/admin/settings/sockets.json index d04ee42fcf..7c34564f8e 100644 --- a/public/language/nb/admin/settings/sockets.json +++ b/public/language/nb/admin/settings/sockets.json @@ -1,6 +1,6 @@ { - "reconnection": "Reconnection Settings", - "max-attempts": "Max Reconnection Attempts", - "default-placeholder": "Default: %1", - "delay": "Reconnection Delay" + "reconnection": "Innstillinger for tilkobling på nytt", + "max-attempts": "Maksimalt antall forsøk på tilkobling", + "default-placeholder": "Standard: %1", + "delay": "Forsinkelse ved tilkobling på nytt" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/tags.json b/public/language/nb/admin/settings/tags.json index ffaf21e708..798acc7885 100644 --- a/public/language/nb/admin/settings/tags.json +++ b/public/language/nb/admin/settings/tags.json @@ -1,13 +1,13 @@ { - "tag": "Tag Settings", - "link-to-manage": "Manage Tags", - "system-tags": "System Tags", - "system-tags-help": "Only privileged users will be able to use these tags.", - "tags-per-topic": "Tags per topic", + "tag": "Innstillinger for emneord", + "link-to-manage": "Administrer emneord", + "system-tags": "Systememneord", + "system-tags-help": "Bare privilegerte brukere vil kunne bruke disse emneordene.", + "tags-per-topic": "Emneord per tråd", "min-per-topic": "Minimalt antall emneord per tråd", "max-per-topic": "Maksimalt antall emneord per tråd", - "min-length": "Minimum Tag Length", - "max-length": "Maximum Tag Length", + "min-length": "Minimum lengde på emneord", + "max-length": "Maksimal lengde på emneord", "related-topics": "Relaterte tråder", - "max-related-topics": "Maks antall relaterte tråder å vise (hvis støttet av tema)" + "max-related-topics": "Maksimalt antall relaterte tråder som skal vises (hvis støttet av tema)" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/uploads.json b/public/language/nb/admin/settings/uploads.json index 40b69bc367..ff5386fedb 100644 --- a/public/language/nb/admin/settings/uploads.json +++ b/public/language/nb/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(i piksler, standard: 2000 piksler, sett til 0 for å deaktivere)", "resize-image-width": "Endre størrelse på bilder til spesifisert bredde", "resize-image-width-help": "(i piksler, standard: 760 piksler, sett til 0 for å deaktivere)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalitet ved endring av størrelse på bilder", "resize-image-quality-help": "Bruk en lavere kvalitet for å redusere filstørrelsen på bilder med endret størrelse.", "max-file-size": "Maksimal filstørrelse (i KiB)", diff --git a/public/language/nb/admin/settings/user.json b/public/language/nb/admin/settings/user.json index 7806e875e9..9d30d7988a 100644 --- a/public/language/nb/admin/settings/user.json +++ b/public/language/nb/admin/settings/user.json @@ -89,9 +89,9 @@ "restrictions.seconds-edit-after-new": "Antall sekunder en ny bruker kan redigere et innlegg", "restrictions.milliseconds-between-messages": "Millisekunder mellom meldinger", "restrictions.groups-exempt-from-new-user-restrictions": "Grupper unntatt fra nye brukerrestriksjoner", - "guest-settings": "Guest Settings", - "handles.enabled": "Allow guest handles", - "handles.enabled-help": "Dette alternativet viser et nytt felt som lar gjestene velge et navn som kan knyttes til hvert innlegg de lager. Hvis de er deaktivert, vil de bare bli kalt \"Gjest\"", + "guest-settings": "Innstillinger for gjester", + "handles.enabled": "Tillat gjestenavn", + "handles.enabled-help": "Dette alternativet viser et nytt felt som lar gjestene velge et navn for innleggene sine. Hvis deaktivert, vil de kun bli kalt \"Gjest\".", "topic-views.enabled": "La gjestene øke antall visninger av emner", - "reply-notifications.enabled": "La gjestene generere varsler på svar" + "reply-notifications.enabled": "Tillat gjestene å generere svarvarsler" } \ No newline at end of file diff --git a/public/language/nb/aria.json b/public/language/nb/aria.json index 1a7f48fef8..7f14f92216 100644 --- a/public/language/nb/aria.json +++ b/public/language/nb/aria.json @@ -1,8 +1,8 @@ { - "post-sort-option": "Valg for innleggssortering", - "topic-sort-option": "Valg for emnesortering", - "user-avatar-for": "Brukeravatar for", - "user-watched-tags": "Stikkord fulgt av bruker", + "post-sort-option": "Valg for innleggssortering, %1", + "topic-sort-option": "Valg for emnesortering, %1", + "user-avatar-for": "Brukeravatar for %1", + "user-watched-tags": "Emneord fulgt av bruker", "delete-upload-button": "Slett opplastingsknapp", - "group-page-link-for": "Gruppesidelink for" + "group-page-link-for": "Gruppesidelink for %1" } \ No newline at end of file diff --git a/public/language/nb/category.json b/public/language/nb/category.json index 3faf29068c..e6674f2cad 100644 --- a/public/language/nb/category.json +++ b/public/language/nb/category.json @@ -9,16 +9,16 @@ "no-new-posts": "Ingen nye innlegg.", "watch": "Overvåk", "ignore": "Ignorer", - "watching": "Følger", - "tracking": "Sporing", + "watching": "Varsle", + "tracking": "Følg", "not-watching": "Følger ikke", "ignoring": "Ignorerer", "watching.description": "Varsle meg om nye emner.
Vis emner i ulest og nylig", - "tracking.description": "Vis emner i ulest og nylig", + "tracking.description": "Følg emner i ulest og nylig", "not-watching.description": "Ikke vis emner i ulest, vis i nylig", "ignoring.description": "Ikke vis emner i ulest & nylig", "watching.message": "Du ser nå på oppdateringer fra denne kategorien og alle underkategorier", - "tracking.message": "Du sporer nå oppdateringer fra denne kategorien og alle underkategorier", + "tracking.message": "Du følger nå oppdateringer fra denne kategorien og alle underkategorier", "notwatching.message": "Du ser ikke på oppdateringer fra denne kategorien og alle underkategorier", "ignoring.message": "Du ignorerer nå oppdateringer fra denne kategorien og alle underkategorier", "watched-categories": "Overvåkede kategorier", diff --git a/public/language/nb/email.json b/public/language/nb/email.json index 7c9610590d..46356f2b36 100644 --- a/public/language/nb/email.json +++ b/public/language/nb/email.json @@ -22,8 +22,8 @@ "reset.notify.subject": "Passordet ble endret", "reset.notify.text1": "Vi gjør deg oppmerksom på at du endret passordet ditt den %1.", "reset.notify.text2": "Hvis det ikke var deg som autoriserte dette, vennligst gi beskjed til en administrator umiddelbart.", - "digest.unread-rooms": "Unread rooms", - "digest.room-name-unreadcount": "%1 (%2 unread)", + "digest.unread-rooms": "Uleste rom", + "digest.room-name-unreadcount": "%1 (%2 uleste)", "digest.latest-topics": "Siste emner fra %1", "digest.top-topics": "Toppemner fra %1", "digest.popular-topics": "Populære emner fra %1", @@ -43,13 +43,13 @@ "notif.post.unsub.info": "Dette innleggsvarselet ble sendt til deg basert på dine innstillinger for abonnering.", "notif.post.unsub.one-click": "Alternativt kan du avslutte abonnementet på fremtidige e-poster som dette, ved å klikke", "notif.cta": "Til forum", - "notif.cta-new-reply": "Vis post", - "notif.cta-new-chat": "Vis chatt", + "notif.cta-new-reply": "Vis innlegg", + "notif.cta-new-chat": "Vis chat", "notif.test.short": "Testing av varsler", "notif.test.long": "Dette er en test av e-postmeldingen for varsler. Send hjelp!", "test.text1": "Dette er en test e-post for å verifisere at e-postsystemet i NodeBB fungerer som det skal.", "unsub.cta": "Klikk her for å endre disse innstillingene", - "unsubscribe": "Avfølg", + "unsubscribe": "Avslutt abonnement", "unsub.success": "Du vil ikke lenger motta e-poster fra %1 utsendelseslisten", "unsub.failure.title": "Kan ikke avslutte abonnementet", "unsub.failure.message": "Dessverre kunne vi ikke melde deg av e-postlisten, da det var et problem med lenken. Du kan imidlertid endre preferansene for e-post ved å gå tilinnstillinger.

(feil:1%):", diff --git a/public/language/nb/error.json b/public/language/nb/error.json index a4e614db84..a5c14d25ac 100644 --- a/public/language/nb/error.json +++ b/public/language/nb/error.json @@ -139,7 +139,7 @@ "group-already-requested": "Forespørsel om medlemskap er allerede innsendt", "group-join-disabled": "Du kan ikke bli med i denne gruppen på dette tidspunktet", "group-leave-disabled": "Du kan ikke forlate denne gruppen på dette tidspunktet", - "group-user-not-pending": "User does not have a pending request to join this group.", + "group-user-not-pending": "Brukeren har ingen ventende forespørsel om å bli med i denne gruppen.", "gorup-user-not-invited": "User has not been invited to join this group.", "post-already-deleted": "Dette innlegget har blitt slettet", "post-already-restored": "Dette innlegget har allerede blitt gjenopprettet", @@ -165,13 +165,13 @@ "chat-deleted-already": "Denne meldingen har allerede blitt slettet.", "chat-restored-already": "Denne meldingen har allerede blitt gjenopprettet.", "chat-room-does-not-exist": "Dette chatterommet finnes ikke.", - "cant-add-users-to-chat-room": "Can't add users to chat room.", - "cant-remove-users-from-chat-room": "Can't remove users from chat room.", - "chat-room-name-too-long": "Chat room name too long. Names can't be longer than %1 characters.", + "cant-add-users-to-chat-room": "Kan ikke legge til brukere i chatterom.", + "cant-remove-users-from-chat-room": "Kan ikke fjerne brukere fra chatterom.", + "chat-room-name-too-long": "Navnet på chatterommet er for langt. Navn kan ikke være lengre enn %1 tegn.", "already-voting-for-this-post": "Du har allerede stemt på dette innlegget", "reputation-system-disabled": "Omdømmesystemet er deaktivert.", "downvoting-disabled": "Nedstemming er deaktivert", - "not-enough-reputation-to-chat": "You need %1 reputation to chat", + "not-enough-reputation-to-chat": "Du trenger %1 omdømme for å chatte", "not-enough-reputation-to-upvote": "Du trenger %1 omdømme for å stemme opp.", "not-enough-reputation-to-downvote": "Du trenger %1 omdømme for å stemme ned.", "not-enough-reputation-to-post-links": "Du trenger %1 omdømme for å poste lenker", @@ -181,7 +181,7 @@ "not-enough-reputation-min-rep-signature": "Du trenger %1 omdømme for å legge til signatur", "not-enough-reputation-min-rep-profile-picture": "Du trenger %1 omdømme for å legge til profilbilde", "not-enough-reputation-min-rep-cover-picture": "Du trenger %1 omdømme for å legge til omslagsbilde", - "not-enough-reputation-custom-field": " Du trenger %1 omdømme for %2", + "not-enough-reputation-custom-field": "Du trenger %1 omdømme for %2", "custom-user-field-value-too-long": "Egendefinert feltverdi er for lang, %1", "custom-user-field-select-value-invalid": "Valgt alternativ for egendefinert felt er ugyldig, %1", "custom-user-field-invalid-text": "Tekst for egendefinert felt er ugyldig, %1", @@ -214,11 +214,11 @@ "not-in-room": "Bruker ikke i rom", "cant-kick-self": "Du kan ikke utestenge deg selv fra gruppen", "no-users-selected": "Ingen bruker(e) valgt", - "no-groups-selected": "No group(s) selected", + "no-groups-selected": "Ingen grupper valgt", "invalid-home-page-route": "Ugyldig hjemmesidelenke", "invalid-session": "Ugyldig økt", "invalid-session-text": "Det ser ut til at din innloggingssesjon ikke lenger er aktiv. Last inn denne siden på nytt.", - "session-mismatch": "Mismatch på sesjon", + "session-mismatch": "Uoverensstemmelse i sesjon", "session-mismatch-text": "Det ser ut til at din innloggingssesjon ikke lenger matcher med serveren. Last inn denne siden på nytt.", "no-topics-selected": "Ingen tråder valgt!", "cant-move-to-same-topic": "Du kan ikke flytte innlegg til samme tråd!", @@ -232,8 +232,8 @@ "socket-reconnect-failed": "Får ikke tilgang til serveren for øyeblikket. Klikk her for å prøve igjen, eller prøv igjen senere", "invalid-plugin-id": "Ugyldig innstikk-ID", "plugin-not-whitelisted": "Ute av stand til å installere tillegget – bare tillegg som er hvitelistet av NodeBB sin pakkebehandler kan bli installert via administratorkontrollpanelet", - "plugins-set-in-configuration": "You are not allowed to change plugin state as they are defined at runtime (config.json, environmental variables or terminal arguments), please modify the configuration instead.", - "theme-not-set-in-configuration": "When defining active plugins in configuration, changing themes requires adding the new theme to the list of active plugins before updating it in the ACP", + "plugins-set-in-configuration": "Du har ikke tillatelse til å endre plugin-status da de er definert under kjøring (config.json, miljøvariabler eller terminalargumenter)Vennligst endre konfigurasjonen i stedet.", + "theme-not-set-in-configuration": "Når aktive plugins er definert i konfigurasjonen, krever endring av tema at det nye temaet legges til i listen over aktive plugins før det oppdateres i ACP.", "topic-event-unrecognized": "Trådhendelse '%1' er ukjent", "cant-set-child-as-parent": "Kan ikke sette underkategori til hovedkategori", "cant-set-self-as-parent": "Kan ikke sette denne som hovedkategori", @@ -247,5 +247,5 @@ "api.500": "En uventet feil oppstod mens vi prøvde å betjene forespørsel din.", "api.501": "Ruten du prøver å kalle er ikke implementert enda. Prøv igjen i morgen", "api.503": "Ruten du prøver å kalle er for øyeblikket ikke tilgjengelig grunnet innstilling på serveren", - "api.reauth-required": "The resource you are trying to access requires (re-)authentication." + "api.reauth-required": "Ressursen du prøver å få tilgang til krever (re-)autentisering." } \ No newline at end of file diff --git a/public/language/nb/global.json b/public/language/nb/global.json index 3eff607cae..54ee53976c 100644 --- a/public/language/nb/global.json +++ b/public/language/nb/global.json @@ -69,7 +69,7 @@ "posts": "Innlegg", "x-posts": "%1 innlegg", "x-topics": "%1 emner", - "x-reputation": "%1 rykte", + "x-reputation": "%1 omdømme", "best": "Best", "controversial": "Kontroversiell", "votes": "Stemmer", diff --git a/public/language/nb/groups.json b/public/language/nb/groups.json index 4327b3e8e7..e06dbfce31 100644 --- a/public/language/nb/groups.json +++ b/public/language/nb/groups.json @@ -1,7 +1,7 @@ { - "all-groups": "All groups", + "all-groups": "Alle grupper", "groups": "Grupper", - "members": "Members", + "members": "Medlemmer", "view-group": "Vis gruppe", "owner": "Gruppeeier", "new-group": "Opprett ny gruppe", @@ -37,14 +37,14 @@ "details.member-count": "Antall medlemmer", "details.creation-date": "Opprettelsesdato", "details.description": "Beskrivelse", - "details.member-post-cids": "Category IDs to display posts from", + "details.member-post-cids": "Kategori-ID-er for å vise innlegg fra", "details.badge-preview": "Forhåndsvisning av skilt", "details.change-icon": "Endre ikon", "details.change-label-colour": "Endre fargen på etiketten", "details.change-text-colour": "Endre farge på tekst", - "details.badge-text": "Skilt-tekst", + "details.badge-text": "Skilttekst", "details.userTitleEnabled": "Vis skilt", - "details.private-help": "Hvis aktivert, vil medlemskap i grupper kreve godkjennelse fra en gruppeeier", + "details.private-help": "Hvis aktivert, vil medlemskap i grupper kreve godkjenning fra en gruppeeier", "details.hidden": "Skjult", "details.hidden-help": "Hvis aktivert, vil ikke denne gruppen bli funnet i gruppelisten, og brukere må inviteres manuelt", "details.delete-group": "Slett gruppe", @@ -59,7 +59,7 @@ "membership.leave.notification-title": "%1 har forlatt gruppen %2", "membership.reject": "Avslå", "new-group.group-name": "Gruppenavn:", - "upload-group-cover": "Last opp et deksel for gruppen", + "upload-group-cover": "Last opp et omslagsbilde for gruppen", "bulk-invite-instructions": "Skriv inn en liste over kommaseparerte brukernavn for å invitere til denne gruppen", "bulk-invite": "Inviter i bulk", "remove-group-cover-confirm": "Er du sikker på at du vil fjerne omslagsbildet?" diff --git a/public/language/nb/modules.json b/public/language/nb/modules.json index 3eeb9aa60e..c522e0b191 100644 --- a/public/language/nb/modules.json +++ b/public/language/nb/modules.json @@ -89,12 +89,12 @@ "composer.formatting.bold": "Uthevet", "composer.formatting.italic": "Kursiv", "composer.formatting.heading": "Overskrift", - "composer.formatting.heading1": "Heading 1", - "composer.formatting.heading2": "Heading 2", - "composer.formatting.heading3": "Heading 3", - "composer.formatting.heading4": "Heading 4", - "composer.formatting.heading5": "Heading 5", - "composer.formatting.heading6": "Heading 6", + "composer.formatting.heading1": "Overskrift 1", + "composer.formatting.heading2": "Overskrift 2", + "composer.formatting.heading3": "Overskrift 3", + "composer.formatting.heading4": "Overskrift 4", + "composer.formatting.heading5": "Overskrift 5", + "composer.formatting.heading6": "Overskrift 6", "composer.formatting.list": "Liste", "composer.formatting.strikethrough": "Gjennomstreking", "composer.formatting.code": "Kode", diff --git a/public/language/nb/notifications.json b/public/language/nb/notifications.json index 328a58cfca..215be2d3bb 100644 --- a/public/language/nb/notifications.json +++ b/public/language/nb/notifications.json @@ -1,10 +1,10 @@ { "title": "Varsler", "no-notifs": "Du har ingen nye varsler", - "see-all": "Alle varslinger", + "see-all": "Alle varsler", "mark-all-read": "Marker alle som lest", "back-to-home": "Tilbake til %1", - "outgoing-link": "Utgående link", + "outgoing-link": "Utgående lenke", "outgoing-link-message": "Du forlater nå %1", "continue-to": "Fortsett til %1", "return-to": "Gå tilbake til %1", @@ -12,17 +12,17 @@ "you-have-unread-notifications": "Du har uleste varsler.", "all": "Alle", "topics": "Emner", - "tags": "Tags", + "tags": "Emneord", "categories": "Kategorier", "replies": "Svar", "chat": "Samtaler", "group-chat": "Gruppesamtaler", - "public-chat": "Public Chats", + "public-chat": "Offentlige samtaler", "follows": "Følger", "upvote": "Oppstemmer", "awards": "Tildelninger", "new-flags": "Nye flagg", - "my-flags": "Flagg som er tildelt til meg", + "my-flags": "Flagg som er tildelt meg", "bans": "Forbud", "new-message-from": "Ny melding fra %1", "new-messages-from": "%1 nye meldinger fra %2", @@ -33,7 +33,7 @@ "user-posted-in-public-room-triple": "%1, %2 og %3 skrev i %5", "user-posted-in-public-room-multiple": "%1, %2 og %3 andre skrev i %5", "upvoted-your-post-in": "%1 har stemt opp innlegget ditt i %2.", - "upvoted-your-post-in-dual": "%1 og 2% har stemt opp innlegget ditt i %3.", + "upvoted-your-post-in-dual": "%1 og %2 har stemt opp innlegget ditt i %3.", "upvoted-your-post-in-triple": "%1, %2 og %3 har stemt opp innlegget ditt i %4.", "upvoted-your-post-in-multiple": "%1, %2 og %3 andre har stemt opp innlegget ditt i %4.", "moved-your-post": "%1 har flyttet innlegget ditt til %2.", @@ -43,15 +43,15 @@ "user-flagged-post-in-triple": "%1, %2 og %3 flagget et innlegg i %4", "user-flagged-post-in-multiple": "%1, %2 og %3 andre flagget et innlegg i %4", "user-flagged-user": "%1 flagget en brukerprofil (%2)", - "user-flagged-user-dual": "%1 og 2% har flagget en brukerprofil (%3)", + "user-flagged-user-dual": "%1 og %2 har flagget en brukerprofil (%3)", "user-flagged-user-triple": "%1, %2 og %3 har flagget en brukerprofil (%4)", "user-flagged-user-multiple": "%1, %2 og %3 andre har flagget en brukerprofil (%4)", "user-posted-to": "%1 har skrevet et svar til: %2", - "user-posted-to-dual": "%1 og 2% har svart på innlegget ditt i %3.", - "user-posted-to-triple": "%1, %2 og %3 har postet svar til: %4", - "user-posted-to-multiple": "%1, %2 og %3 andre har postet svar til: %4", + "user-posted-to-dual": "%1 og %2 har svart på innlegget ditt i %3", + "user-posted-to-triple": "%1, %2 og %3 har svart til: %4", + "user-posted-to-multiple": "%1, %2 og %3 andre har svart til: %4", "user-posted-topic": "%1 har skrevet en ny tråd: %2", - "user-edited-post": "%1 har redigert ett innlegg i %2", + "user-edited-post": "%1 har redigert et innlegg i %2", "user-posted-topic-with-tag": "%1 har publisert %2 (merket %3)", "user-posted-topic-with-tag-dual": "%1 har publisert %2 (merket %3 og %4)", "user-posted-topic-with-tag-triple": "%1 har publisert %2 (merket %3, %4 og %5)", @@ -82,7 +82,7 @@ "email-only": "Kun e-post", "notification-and-email": "Notifikasjon og e-post", "notificationType-upvote": "Når noen stemmer opp innlegget ditt", - "notificationType-new-topic": "Når noen du følger følger legger ut et emne", + "notificationType-new-topic": "Når noen du følger legger ut et emne", "notificationType-new-topic-with-tag": "Når et emne publiseres med et stikkord du følger", "notificationType-new-topic-in-category": "Når et emne er lagt ut i en kategori du ser på", "notificationType-new-reply": "Når et nytt svar er lagt ut i et emne du overvåker", diff --git a/public/language/nb/pages.json b/public/language/nb/pages.json index c216bc868d..0b99a4d6e5 100644 --- a/public/language/nb/pages.json +++ b/public/language/nb/pages.json @@ -6,15 +6,15 @@ "popular-month": "Populære emner denne måneden", "popular-alltime": "Mest populære emner for all tid", "recent": "Nylige emner", - "top-day": "Dagens emne med fleste stemmer", + "top-day": "Dagens emne med flest stemmer", "top-week": "Emne med flest stemmer denne uken", - "top-month": "Emne med flest stemme denne måneden", + "top-month": "Emne med flest stemmer denne måneden", "top-alltime": "Emner med flest stemmer", "moderator-tools": "Moderatorverktøy", "flagged-content": "Flagget innhold", - "ip-blacklist": "IP Svarteliste", + "ip-blacklist": "IP-svarteliste", "post-queue": "Innleggskø", - "registration-queue": "Registration Queue", + "registration-queue": "Registreringskø", "users/online": "Påloggede Brukere", "users/latest": "Nyeste Brukere", "users/sort-posts": "Brukere med flest innlegg", @@ -24,7 +24,7 @@ "users/search": "Brukersøk", "notifications": "Varsler", "tags": "Emneord", - "tag": "Tråder tagget under "%1"", + "tag": "Tråder tagget under \"%1\"", "register": "Registrer en konto", "registration-complete": "Registrering er fullført", "login": "Logg inn på kontoen din", @@ -35,7 +35,7 @@ "chats": "Samtaler", "chat": "Samtale med %1", "flags": "Flagg", - "flag-details": "Flagg %1 Detaljer", + "flag-details": "Flagg %1 detaljer", "account/edit": "Endrer \"%1\"", "account/edit/password": "Redigeringspassord for \"%1\"", "account/edit/username": "Rediger brukernavnet til \"%1\"", @@ -47,11 +47,11 @@ "account/latest-posts": "Seneste innlegg skrevet av %1", "account/topics": "Emner opprettet av %1", "account/groups": "%1 sine grupper", - "account/watched-categories": "%1's overvåkede kategorier", - "account/watched-tags": "%1's overvåkede tagger", - "account/bookmarks": "%1's bokmerkede innlegg", + "account/watched-categories": "%1 sine overvåkede kategorier", + "account/watched-tags": "%1 sine overvåkede emneord", + "account/bookmarks": "%1 sine bokmerkede innlegg", "account/settings": "Brukerinnstillinger", - "account/settings-of": "Endre innstillingen på %1", + "account/settings-of": "Endre innstillingene til %1", "account/watched": "Innlegg overvåket av %1", "account/ignored": "Emner ignorert av %1", "account/read": "Emner lest av %1", @@ -59,7 +59,7 @@ "account/downvoted": "Innlegg nedstemt av %1", "account/best": "Beste innlegg skrevet av %1", "account/controversial": "Kontroversielle innlegg skrevet av %1", - "account/blocks": "Blokkerte brukere for %1", + "account/blocks": "Brukere blokkert av %1", "account/uploads": "Opplastninger av %1", "account/sessions": "Påloggingsøkter", "confirm": "E-post bekreftet", diff --git a/public/language/nb/recent.json b/public/language/nb/recent.json index f9446f5087..e17bf94e4d 100644 --- a/public/language/nb/recent.json +++ b/public/language/nb/recent.json @@ -7,5 +7,5 @@ "alltime": "All tid", "no-recent-topics": "Det er ingen nye emner.", "no-popular-topics": "Det er ingen populære emner.", - "load-new-posts": "Load new posts" + "load-new-posts": "Last inn nye innlegg" } \ No newline at end of file diff --git a/public/language/nb/rewards.json b/public/language/nb/rewards.json index 6a61146596..e7de839b89 100644 --- a/public/language/nb/rewards.json +++ b/public/language/nb/rewards.json @@ -1,8 +1,8 @@ { - "awarded-x-reputation": "Du har blitt tildelt 1% rykte", - "awarded-group-membership": "Du har blitt lag til i gruppen 1%", + "awarded-x-reputation": "Du har blitt tildelt %1 omdømme", + "awarded-group-membership": "Du har blitt lagt til i gruppen %1", - "essentials/user.reputation-conditional-value": "(Rykte %1 %2)", + "essentials/user.reputation-conditional-value": "(Omdømme %1 %2)", "essentials/user.postcount-conditional-value": "(Antall innlegg %1 %2)", "essentials/user.lastonline-conditional-value": "(Sist pålogget %1 %2)", "essentials/user.joindate-conditional-value": "(Innmeldingsdato %1 %2)", diff --git a/public/language/nb/search.json b/public/language/nb/search.json index b497570d93..498ab1f9a5 100644 --- a/public/language/nb/search.json +++ b/public/language/nb/search.json @@ -1,11 +1,11 @@ { "type-to-search": "Skriv for å søke", "results-matching": "%1 resultat(er) samsvarer med \"%2\", (%3 sekunder)", - "no-matches": "Ingen matcher funnet", + "no-matches": "Ingen treff funnet", "advanced-search": "Avansert søk", "in": "I", "in-titles": "I titler", - "in-titles-posts": "I tiler og innlegg", + "in-titles-posts": "I titler og innlegg", "in-posts": "I innlegg", "in-bookmarks": "I bokmerker", "in-categories": "I kategorier", @@ -14,7 +14,7 @@ "categories": "Kategorier", "all-categories": "Alle kategorier", "categories-x": "Kategorier: %1", - "categories-watched-categories": "Kategorier: Overvåkede kategorier", + "categories-watched-categories": "Kategorier: Følgede kategorier", "type-a-category": "Skriv inn en kategori", "tags": "Emneord", "tags-x": "Emneord: %1", @@ -24,23 +24,23 @@ "match-any-word": "Match hvilket som helst ord", "all": "Alle", "any": "Hvilken som helst", - "posted-by": "Skapt av", + "posted-by": "Opprettet av", "posted-by-usernames": "Publisert av: %1", "type-a-username": "Skriv inn et brukernavn", - "search-child-categories": "Søk underkategorier", + "search-child-categories": "Søk i underkategorier", "has-tags": "Har emneord", - "reply-count": "Mengde svar", - "replies": "Svarer", + "reply-count": "Antall svar", + "replies": "Svar", "replies-atleast-count": "Svar: Minst %1", "replies-atmost-count": "Svar: På det meste %1", "at-least": "Minst", - "at-most": "Maks", + "at-most": "Maksimalt", "relevance": "Relevanse", "time": "Tid", - "post-time": "Tidspunkt for innlegg", + "post-time": "Innleggstid", "votes": "Stemmer", "newer-than": "Nyere enn", - "older-than": "Eldre en", + "older-than": "Eldre enn", "any-date": "Alle datoer", "yesterday": "I går", "one-week": "En uke", @@ -53,7 +53,7 @@ "time-older-than-86400": "Tid: Eldre enn i går", "time-newer-than-604800": "Tid: Nyere enn en uke", "time-older-than-604800": "Tid: Eldre enn en uke", - "time-newer-than-1209600": "Tid. Nyere enn to uker", + "time-newer-than-1209600": "Tid: Nyere enn to uker", "time-older-than-1209600": "Tid: Eldre enn to uker", "time-newer-than-2592000": "Tid: Nyere enn en måned", "time-older-than-2592000": "Tid: Eldre enn en måned", @@ -64,46 +64,46 @@ "time-newer-than-31104000": "Tid: Nyere enn ett år", "time-older-than-31104000": "Tid: Eldre enn ett år", "sort-by": "Sorter etter", - "sort": "Sortere", + "sort": "Sorter", "last-reply-time": "Siste svartid", - "topic-title": "Tråd-tittel", - "topic-votes": "Stemmer på emne", + "topic-title": "Trådtittel", + "topic-votes": "Stemmer på tråd", "number-of-replies": "Antall svar", "number-of-views": "Antall visninger", - "topic-start-date": "Starttid for tråd", + "topic-start-date": "Startdato for tråd", "username": "Brukernavn", "category": "Kategori", - "descending": "I synkende rekkefølge", - "ascending": "I stigende rekkefølge", - "sort-by-relevance-desc": "Sorter etter: Relevans i synkende rekkefølge", - "sort-by-relevance-asc": "Sorter etter: Relevans i synkende rekkefølge", - "sort-by-timestamp-desc": "Sorter etter: Innleggstid i synkende rekkefølge", - "sort-by-timestamp-asc": "Sorter etter: Posttid i stigende rekkefølge", - "sort-by-votes-desc": "Sorter etter: Stemmer i synkende rekkefølge", - "sort-by-votes-asc": "Sorter etter: Stemmer i stigende rekkefølge", - "sort-by-topic.lastposttime-desc": "Sorter etter: Siste svartid i synkende rekkefølge", - "sort-by-topic.lastposttime-asc": "Sorter etter: Siste svartid i stigende rekkefølge", - "sort-by-topic.title-desc": "Sorter etter: Emnetittel i synkende rekkefølge", - "sort-by-topic.title-asc": "Sorter etter: Emnetittel i stigende rekkefølge", - "sort-by-topic.postcount-desc": "Sorter etter: Antall svar i synkende rekkefølge", - "sort-by-topic.postcount-asc": "Sorter etter: Antall svar i stigende rekkefølge", - "sort-by-topic.viewcount-desc": "Sorter etter: Antall visninger i synkende rekkefølge", - "sort-by-topic.viewcount-asc": "Sorter etter: Antall visninger i stigende rekkefølge", - "sort-by-topic.votes-desc": "Sorter etter: Emnestemmer i synkende rekkefølge", - "sort-by-topic.votes-asc": "Sorter etter: Temastemmer i stigende rekkefølge", - "sort-by-topic.timestamp-desc": "Sorter etter: Emnets startdato i synkende rekkefølge", - "sort-by-topic.timestamp-asc": "Sorter etter: Emnets startdato i stigende rekkefølge", - "sort-by-user.username-desc": "Sorter etter: Brukernavn i synkende rekkefølge", - "sort-by-user.username-asc": "Sorter etter: Brukernavn i stigende rekkefølge", - "sort-by-category.name-desc": "Sorter etter: Kategori i synkende rekkefølge", - "sort-by-category.name-asc": "Sorter etter: Kategori i stigende rekkefølge", + "descending": "Synkende rekkefølge", + "ascending": "Stigende rekkefølge", + "sort-by-relevance-desc": "Sorter etter: Relevanse (synkende rekkefølge)", + "sort-by-relevance-asc": "Sorter etter: Relevanse (stigende rekkefølge)", + "sort-by-timestamp-desc": "Sorter etter: Innleggstid (synkende rekkefølge)", + "sort-by-timestamp-asc": "Sorter etter: Innleggstid (stigende rekkefølge)", + "sort-by-votes-desc": "Sorter etter: Stemmer (synkende rekkefølge)", + "sort-by-votes-asc": "Sorter etter: Stemmer (stigende rekkefølge)", + "sort-by-topic.lastposttime-desc": "Sorter etter: Siste svartid (synkende rekkefølge)", + "sort-by-topic.lastposttime-asc": "Sorter etter: Siste svartid (stigende rekkefølge)", + "sort-by-topic.title-desc": "Sorter etter: Emnetittel (synkende rekkefølge)", + "sort-by-topic.title-asc": "Sorter etter: Emnetittel (stigende rekkefølge)", + "sort-by-topic.postcount-desc": "Sorter etter: Antall svar (synkende rekkefølge)", + "sort-by-topic.postcount-asc": "Sorter etter: Antall svar (stigende rekkefølge)", + "sort-by-topic.viewcount-desc": "Sorter etter: Antall visninger (synkende rekkefølge)", + "sort-by-topic.viewcount-asc": "Sorter etter: Antall visninger (stigende rekkefølge)", + "sort-by-topic.votes-desc": "Sorter etter: Trådstemmer (synkende rekkefølge)", + "sort-by-topic.votes-asc": "Sorter etter: Trådstemmer (stigende rekkefølge)", + "sort-by-topic.timestamp-desc": "Sorter etter: Trådstartdato (synkende rekkefølge)", + "sort-by-topic.timestamp-asc": "Sorter etter: Trådstartdato (stigende rekkefølge)", + "sort-by-user.username-desc": "Sorter etter: Brukernavn (synkende rekkefølge)", + "sort-by-user.username-asc": "Sorter etter: Brukernavn (stigende rekkefølge)", + "sort-by-category.name-desc": "Sorter etter: Kategori (synkende rekkefølge)", + "sort-by-category.name-asc": "Sorter etter: Kategori (stigende rekkefølge)", "save": "Lagre", "save-preferences": "Lagre innstillinger", - "clear-preferences": "Tøm innstillinnger", + "clear-preferences": "Tøm innstillinger", "search-preferences-saved": "Søkeinnstillinger lagret", "search-preferences-cleared": "Søkeinnstillinger tømt", "show-results-as": "Vis resultater som", - "show-results-as-topics": "Show results as topics", + "show-results-as-topics": "Vis resultater som tråder", "show-results-as-posts": "Vis resultater som innlegg", "see-more-results": "Se flere resultater (%1)", "search-in-category": "Søk i \"%1\"" diff --git a/public/language/nb/tags.json b/public/language/nb/tags.json index 943a869ec7..85f56e9cc8 100644 --- a/public/language/nb/tags.json +++ b/public/language/nb/tags.json @@ -8,10 +8,10 @@ "no-tags": "Det finnes ingen emneord ennå.", "select-tags": "Velg emneord", "tag-whitelist": "Hviteliste for emneord", - "watching": "Overvåker", - "not-watching": "Overvåker ikke", - "watching.description": "Gi meg beskjed om nye emner.", - "not-watching.description": "Ikke gi meg beskjed om nye emner.", + "watching": "Følger", + "not-watching": "Følger ikke", + "watching.description": "Varsle meg om nye emner.", + "not-watching.description": "Ikke varsle meg om nye emner.", "following-tag.message": "Du vil nå motta varsler når noen legger ut et emne med dette emneordet.", "not-following-tag.message": "Du vil ikke motta varsler når noen legger ut et emne med dette emneordet." } \ No newline at end of file diff --git a/public/language/nb/themes/persona.json b/public/language/nb/themes/persona.json index e7d1945303..5c565dcc77 100644 --- a/public/language/nb/themes/persona.json +++ b/public/language/nb/themes/persona.json @@ -1,10 +1,10 @@ { - "settings.title": "Theme settings", - "settings.intro": "You can customise your theme settings here. Settings are stored on a per-device basis, so you are able to have different settings on different devices (phone, tablet, desktop, etc.)", - "settings.mobile-menu-side": "Switch which side each mobile menu is on", - "settings.autoHidingNavbar": "Automatically hide the navbar on scroll", - "settings.autoHidingNavbar-xs": "Very small screens (e.g. phones in portrait mode)", - "settings.autoHidingNavbar-sm": "Smaller screens (e.g. phones, some tablets)", - "settings.autoHidingNavbar-md": "Medium sized screens (e.g. tablets in landscape mode)", - "settings.autoHidingNavbar-lg": "Larger screens (e.g. desktop computers)" + "settings.title": "Tema-innstillinger", + "settings.intro": "Du kan tilpasse tema-innstillingene dine her. Innstillingene lagres per enhet, slik at du kan ha forskjellige innstillinger på ulike enheter (telefon, nettbrett, datamaskin, osv.)", + "settings.mobile-menu-side": "Bytt hvilken side hver mobilmeny er på", + "settings.autoHidingNavbar": "Skjul navigasjonsfeltet automatisk ved scrolling", + "settings.autoHidingNavbar-xs": "Svært små skjermer (f.eks. telefoner i portrettmodus)", + "settings.autoHidingNavbar-sm": "Mindre skjermer (f.eks. telefoner, noen nettbrett)", + "settings.autoHidingNavbar-md": "Middels store skjermer (f.eks. nettbrett i landskapsmodus)", + "settings.autoHidingNavbar-lg": "Større skjermer (f.eks. stasjonære datamaskiner)" } \ No newline at end of file diff --git a/public/language/nb/topic.json b/public/language/nb/topic.json index 3a0e6bfafc..b09ebb6019 100644 --- a/public/language/nb/topic.json +++ b/public/language/nb/topic.json @@ -6,14 +6,14 @@ "post-is-deleted": "Dette innlegget er slettet!", "topic-is-deleted": "Denne tråden er slettet!", "profile": "Profil", - "posted-by": "Skapt av %1", - "posted-by-guest": "Skapt av Gjest", + "posted-by": "Opprettet av %1", + "posted-by-guest": "Opprettet av Gjest", "chat": "Chat", "notify-me": "Bli varslet om nye svar i denne tråden", "quote": "Siter", "reply": "Svar", - "replies-to-this-post": "%1 Svar", - "one-reply-to-this-post": "1 Svar", + "replies-to-this-post": "%1 svar", + "one-reply-to-this-post": "1 svar", "last-reply-time": "Siste svar", "reply-options": "Alternativer for svar", "reply-as-topic": "Svar som tråd", @@ -27,7 +27,7 @@ "restore": "Gjenopprett", "move": "Flytt", "change-owner": "Bytt eier", - "manage-editors": "Administrer Editor", + "manage-editors": "Administrer redaktører", "fork": "Forgren", "link": "Lenk til", "share": "Del", @@ -42,7 +42,7 @@ "copy-code": "Kopier kode", "copy-ip": "Kopier IP", "ban-ip": "Forby IP", - "view-history": "Redigere historie", + "view-history": "Vis redigeringshistorikk", "wrote-ago": "skrev ", "wrote-on": "skrev på ", "replied-to-user-ago": "svarte på %3 ", @@ -78,7 +78,7 @@ "deleted-message": "Denne tråden har blitt slettet. Bare brukere med trådhåndterings-privilegier kan se den.", "following-topic.message": "Du vil nå motta varsler når noen skriver i denne tråden.", "not-following-topic.message": "Du vil se denne tråden i trådlisten, men du vil ikke motta varslinger når noen skriver i den.", - "ignoring-topic.message": "Du vil ikke lenger se denne tråden blandt de uleste trådene. Du vil få et varsel når du blir nevnt eller din tråd blir oppstemt.", + "ignoring-topic.message": "Du vil ikke lenger se denne tråden blant de uleste trådene. Du vil få et varsel når du blir nevnt eller din tråd blir tilrådd.", "login-to-subscribe": "Vennligst registrer deg eller logg inn for å abonnere på denne tråden.", "markAsUnreadForAll.success": "Tråd markert som ulest for alle.", "mark-unread": "Merk som ulest", @@ -134,7 +134,7 @@ "bookmark": "Bokmerke", "bookmarks": "Bokmerker", "bookmarks.has-no-bookmarks": "Du har ikke bokmerket noen innlegg ennå.", - "copy-permalink": "Kopier permalink", + "copy-permalink": "Kopier permanent lenke", "loading-more-posts": "Laster flere innlegg", "move-topic": "Flytt tråd", "move-topics": "Flytt tråder", @@ -159,7 +159,7 @@ "move-posts-instruction": "Klikk på innleggene du vil flytte, og skriv deretter inn en emne-ID, eller gå til målemnet", "move-topic-instruction": "Velg målkategorien og klikk deretter flytt", "change-owner-instruction": "Klikk på innleggene du vil tildele til en annen bruker", - "manage-editors-instruction": "Manage the users who can edit this post below.", + "manage-editors-instruction": "Administrer brukere som kan redigere dette innlegget nedenfor.", "composer.title-placeholder": "Skriv din tråd-tittel her", "composer.handle-placeholder": "Skriv inn navnet ditt / signatur her", "composer.hide": "Gjem", @@ -187,13 +187,13 @@ "newest-to-oldest": "Nyeste til eldste", "recently-replied": "Seneste svar", "recently-created": "Siste innlegg", - "most-votes": "Flest stemmer", + "most-votes": "Flest tilrådinger", "most-posts": "Flest innlegg", "most-views": "Flest visninger", "stale.title": "Lag en ny tråd i stedet?", - "stale.warning": "Tråden du svarer på er ganske gammel. Vil du heller lage en ny tråd og refere til denne i den?", + "stale.warning": "Tråden du svarer på er ganske gammel. Vil du heller lage en ny tråd og referere til denne?", "stale.create": "Lag en ny tråd", - "stale.reply-anyway": "Svar på denne tråden allikevel", + "stale.reply-anyway": "Svar på denne tråden likevel", "link-back": "Sv: [%1](%2)", "diffs.title": "Redigeringshistorikk for innlegg", "diffs.description": "Dette innlegget har %1 redigeringer. Klikk på en av revisjonene nedenfor for å se innholdet på innlegget på det tidspunktet.", @@ -208,15 +208,15 @@ "timeago-later": "%1 senere", "timeago-earlier": "%1 tidligere", "first-post": "Første innlegg", - "last-post": "Seneste innlegg", + "last-post": "Nyeste innlegg", "go-to-my-next-post": "Gå til mitt neste innlegg", "no-more-next-post": "Du har ikke flere innlegg i dette emnet", "open-composer": "Åpne editor", "post-quick-reply": "Raskt svar", "navigator.index": "Innlegg %1 av %2", "navigator.unread": "%1 ulest", - "upvote-post": "Stem opp innlegg", - "downvote-post": "Stem ned innlegg", + "upvote-post": "Tilrå innlegg", + "downvote-post": "Ikke tilrå innlegg", "post-tools": "Innleggsverktøy", "unread-posts-link": "Lenke til uleste innlegg", "thumb-image": "Miniatyrbilde for emne" diff --git a/public/language/nb/unread.json b/public/language/nb/unread.json index 55dcaca25e..9ac5779198 100644 --- a/public/language/nb/unread.json +++ b/public/language/nb/unread.json @@ -3,7 +3,7 @@ "no-unread-topics": "Det er ingen uleste emner.", "load-more": "Last inn mer", "mark-as-read": "Marker som lest", - "mark-as-unread": "Marker som lest", + "mark-as-unread": "Marker som ulest", "selected": "Valgte", "all": "Alle", "all-categories": "Alle kategorier", diff --git a/public/language/nb/uploads.json b/public/language/nb/uploads.json index 3b9558de12..9bbce0e86f 100644 --- a/public/language/nb/uploads.json +++ b/public/language/nb/uploads.json @@ -1,9 +1,9 @@ { "uploading-file": "Laster opp filen...", - "select-file-to-upload": "Velg en fil å laste opp!", - "upload-success": "Filen ble suksessfullt lastet opp!", - "maximum-file-size": "Maksimum %1 kb", + "select-file-to-upload": "Velg en fil for opplasting!", + "upload-success": "Filen ble lastet opp!", + "maximum-file-size": "Maksimal filstørrelse: %1 kb", "no-uploads-found": "Ingen opplastninger funnet", - "public-uploads-info": "Opplastninger er offentlige, alle besøkende kan se dem.", - "private-uploads-info": "Opplastninger er private, kun innloggede brukere kan se dem." + "public-uploads-info": "Opplastninger er offentlige. Alle besøkende kan se dem.", + "private-uploads-info": "Opplastninger er private. Kun innloggede brukere kan se dem." } \ No newline at end of file diff --git a/public/language/nb/user.json b/public/language/nb/user.json index d83aeee39d..8517bb2410 100644 --- a/public/language/nb/user.json +++ b/public/language/nb/user.json @@ -79,7 +79,7 @@ "change-password": "Endre passord", "change-password-error": "Ugyldig passord!", "change-password-error-wrong-current": "Ditt gjeldende passord er ikke korrekt!", - "change-password-error-same-password": "Your new password matches your current password, please use a new password.", + "change-password-error-same-password": "Passordet ditt har utløpt, vennligst velg et nytt passord", "change-password-error-match": "Passordene må samsvare!", "change-password-error-privileges": "Du har ikke rettigheter tli å endre dette passordet.", "change-password-success": "Passordet ditt ble oppdatert!", @@ -97,7 +97,7 @@ "crop-picture": "Beskjær bilde", "upload-cropped-picture": "Beskjær og last opp", "avatar-background-colour": "Avatar bakgrunnsfarge", - "settings": "Innstillinger", + "settings": "Brukerinnstillinger", "show-email": "Vis min e-post", "show-fullname": "Vis mitt fulle navn", "restrict-chats": "Bare tillat chat-meldinger fra brukere jeg følger", @@ -111,11 +111,11 @@ "has-no-follower": "Denne brukeren har ingen følgere :(", "follows-no-one": "Denne brukeren følger ingen :(", "has-no-posts": "Denne brukeren har ikke skrevet noe enda.", - "has-no-best-posts": "Denne brukeren har ingen opp-stemte innlegg ennå.", + "has-no-best-posts": "Denne brukeren har ingen tilrådde innlegg ennå.", "has-no-topics": "Denne brukeren har ikke skrevet noen tråder enda.", "has-no-watched-topics": "Denne brukeren har ikke fulgt noen tråder enda.", "has-no-ignored-topics": "Denne brukeren har ikke ignorert noen emner ennå", - "has-no-read-topics": "This user hasn't read any topics yet.", + "has-no-read-topics": "Denne brukeren har ikke lest noen tråder enda.", "has-no-upvoted-posts": "Denne brukeren har ikke stemt opp noen innlegg ennå.", "has-no-downvoted-posts": "Denne brukeren har ikke stemt ned noen innlegg ennå.", "has-no-controversial-posts": "Denne brukeren har ikke noen nedstemte innlegg ennå.", @@ -147,8 +147,8 @@ "follow-topics-you-create": "Følg tråder du vil lage", "grouptitle": "Gruppetittel", "group-order-help": "Velg en gruppe og bruk pilene for å gi titler", - "show-group-title": "Show group title", - "hide-group-title": "Hide group title", + "show-group-title": "Vis gruppetittel", + "hide-group-title": "Skjul gruppetittel", "order-group-up": "Order group up", "order-group-down": "Order group down", "no-group-title": "Ingen gruppetittel", diff --git a/public/language/nb/users.json b/public/language/nb/users.json index ec7e43eb0d..f1f13bd283 100644 --- a/public/language/nb/users.json +++ b/public/language/nb/users.json @@ -7,7 +7,7 @@ "most-flags": "Flest flagg", "search": "Søk", "enter-username": "Skriv inn et brukernavn for å søke", - "search-user-for-chat": "Search for a user to start chat", + "search-user-for-chat": "Søk etter en bruker for å starte chat", "load-more": "Last flere", "users-found-search-took": "%1 bruker(e) funnet. Søket tok %2 sekunder.", "filter-by": "Filtrer etter", @@ -21,6 +21,6 @@ "popular-topics": "Populære tråder", "unread-topics": "Uleste tråder", "categories": "Kategorier", - "tags": "Tagger", + "tags": "Emneord", "no-users-found": "Ingen brukere funnet" } \ No newline at end of file diff --git a/public/language/nl/admin/manage/user-custom-fields.json b/public/language/nl/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/nl/admin/manage/user-custom-fields.json +++ b/public/language/nl/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/nl/admin/settings/uploads.json b/public/language/nl/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/nl/admin/settings/uploads.json +++ b/public/language/nl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/nn-NO/admin/manage/user-custom-fields.json b/public/language/nn-NO/admin/manage/user-custom-fields.json index 648c597ca7..2434a9e7ae 100644 --- a/public/language/nn-NO/admin/manage/user-custom-fields.json +++ b/public/language/nn-NO/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minste omdømme", "minimum-reputation-help": "Om ein brukar har mindre enn denne verdien i omdømme, vil dei ikkje kunne bruke dette feltet", "delete-field-confirm-x": "Vil du verkeleg slette det tilpassa feltet \"%1\"?", - "custom-fields-saved": "Tilpassa felt lagra" + "custom-fields-saved": "Tilpassa felt lagra", + "visibility": "Synlegheit", + "visibility-all": "Alle kan sjå feltet", + "visibility-loggedin": "Berre innlogga brukarar kan sjå feltet", + "visibility-privileged": "Berre priviligerte brukarar som administratorar og moderatorar kan sjå feltet" } \ No newline at end of file diff --git a/public/language/nn-NO/admin/settings/post.json b/public/language/nn-NO/admin/settings/post.json index 590da8b2ab..10d4b92671 100644 --- a/public/language/nn-NO/admin/settings/post.json +++ b/public/language/nn-NO/admin/settings/post.json @@ -29,7 +29,7 @@ "restrictions.stale-help": "Hjelp for utdatert innlegg", "timestamp": "Tidsstempel", "timestamp.cut-off": "Avskjering for tidsstempel", - "timestamp.cut-off-help": "Hjelp for avskjering av tidsstempel", + "timestamp.cut-off-help": " Datoar og klokkeslett blir vist på ein relativ måte (t.d. \"3 timar sidan\" / \"5 dagar sidan\"), og tilpassa til ulike språk\n\t\t\t\t\t. Etter eit visst punkt kan denne teksten endrast til å vise den lokaliserte datoen direkte\n\t\t\t\t\t(t.d 5. Nov 2024 15:30).
(Standard: 30, eller ein månad). Sett til 0 for å alltid vise datoar. La vere tom for å alltid vise relative tider.", "timestamp.necro-threshold": "Grense for inaktiv posting", "timestamp.necro-threshold-help": "Hjelp for grense for inaktiv posting", "timestamp.topic-views-interval": "Intervall for visningar av emne", diff --git a/public/language/nn-NO/admin/settings/uploads.json b/public/language/nn-NO/admin/settings/uploads.json index 75bdfd08f4..4986849ef3 100644 --- a/public/language/nn-NO/admin/settings/uploads.json +++ b/public/language/nn-NO/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "( i pixels, standard er 2000 pixler, angi 0 for å avvise) ", "resize-image-width": "Endre bilete breidde", "resize-image-width-help": "Angi ny breidde for bilete som vert endra ved opplasting.", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Biletekvalitet ved endring", "resize-image-quality-help": "Angi kvaliteten for bilete som vert endra ved opplasting.", "max-file-size": "Maks filstorleik", diff --git a/public/language/nn-NO/user.json b/public/language/nn-NO/user.json index ebcdfe45d6..37615d5dde 100644 --- a/public/language/nn-NO/user.json +++ b/public/language/nn-NO/user.json @@ -157,7 +157,7 @@ "no-skin": "Ingen stil", "select-homepage": "Velg ei startside", "homepage": "Startside", - "homepage-description": "Velg ei side som skal brukast som forumets startside, eller 'Ingen' for å bruke standard startsida.", + "homepage-description": "Velg ei side som skal brukast som startside, eller 'Ingen' for å bruke standard startside.", "custom-route": "Eigensett startside-rute", "custom-route-help": "Skriv inn eit URL her, utan føregåande skråstrek (t.d. \"recent\" eller \"category/2/general-discussion\")", "sso.title": "Single Sign-on tenester", diff --git a/public/language/pl/admin/manage/user-custom-fields.json b/public/language/pl/admin/manage/user-custom-fields.json index 7f26dad5ec..080a56959b 100644 --- a/public/language/pl/admin/manage/user-custom-fields.json +++ b/public/language/pl/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimalna reputacja", "minimum-reputation-help": "O ile użytkownik nie spełnia warunku to i nie użyje tego pole", "delete-field-confirm-x": "Czy chcesz skasować dodatkowe pole \"%1\"?", - "custom-fields-saved": "Dodatkowe pola zapisane" + "custom-fields-saved": "Dodatkowe pola zapisane", + "visibility": "Widoczność", + "visibility-all": "Każdy może zobaczyć pole", + "visibility-loggedin": "Tylko zalogowani zobaczą pole", + "visibility-privileged": "Tylko uprzywilejowani jak moderatorzy zobaczą pole" } \ No newline at end of file diff --git a/public/language/pl/admin/settings/uploads.json b/public/language/pl/admin/settings/uploads.json index 5103f805df..10d0606239 100644 --- a/public/language/pl/admin/settings/uploads.json +++ b/public/language/pl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(w pikselach; domyślnie 2000 pikseli; ustaw 0 aby wyłączyć)", "resize-image-width": "Zmień rozmiar obrazów na określoną szerokość", "resize-image-width-help": "(w pikselach, domyślnie: 760 pixeli, ustaw 0, aby wyłączyć)", + "resize-image-keep-original": "Zachowaj oryginał po zmniejszeniu", "resize-image-quality": "Poziom jakości użyty przy zmianie rozmiaru", "resize-image-quality-help": "Użyj niższych ustawień jakości aby zredukować rozmiar pliku zmienionego obrazu.", "max-file-size": "Maksymalny rozmiar plików (w KiB)", diff --git a/public/language/pt-BR/admin/manage/user-custom-fields.json b/public/language/pt-BR/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/pt-BR/admin/manage/user-custom-fields.json +++ b/public/language/pt-BR/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/pt-BR/admin/settings/uploads.json b/public/language/pt-BR/admin/settings/uploads.json index c8164fcdb8..c203d2cd23 100644 --- a/public/language/pt-BR/admin/settings/uploads.json +++ b/public/language/pt-BR/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Redimensionar imagens para a largura especificada", "resize-image-width-help": "(em pixels, padrão: 760 pixels, defina como 0 para desativar)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualidade para usar ao redimensionar imagens", "resize-image-quality-help": "Use uma configuração de qualidade mais baixa para reduzir o tamanho do arquivo de imagens redimensionadas.", "max-file-size": "Tamanho Máximo de Arquivo (em KiB)", diff --git a/public/language/pt-PT/admin/manage/user-custom-fields.json b/public/language/pt-PT/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/pt-PT/admin/manage/user-custom-fields.json +++ b/public/language/pt-PT/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/pt-PT/admin/settings/uploads.json b/public/language/pt-PT/admin/settings/uploads.json index 0478d0f3c1..91c89d7a46 100644 --- a/public/language/pt-PT/admin/settings/uploads.json +++ b/public/language/pt-PT/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(em pixeis, predefinido: 760 pixeis, definir 0 para desativar)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualidade a utilizar quando redimensionar imagens", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/ro/admin/manage/user-custom-fields.json b/public/language/ro/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/ro/admin/manage/user-custom-fields.json +++ b/public/language/ro/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/ro/admin/settings/uploads.json b/public/language/ro/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/ro/admin/settings/uploads.json +++ b/public/language/ro/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/ru/admin/manage/user-custom-fields.json b/public/language/ru/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/ru/admin/manage/user-custom-fields.json +++ b/public/language/ru/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/ru/admin/settings/uploads.json b/public/language/ru/admin/settings/uploads.json index fb2fadbd1f..8725c70db8 100644 --- a/public/language/ru/admin/settings/uploads.json +++ b/public/language/ru/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Уменьшать изображения до", "resize-image-width-help": "(в пикс., стандартная настройка: 760, укажите 0, чтобы отключить)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Качество уменьшаемых изображений", "resize-image-quality-help": "Чем ниже качество, тем меньше размер файла.", "max-file-size": "Макс. размер файла (в КиБ)", diff --git a/public/language/rw/admin/manage/user-custom-fields.json b/public/language/rw/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/rw/admin/manage/user-custom-fields.json +++ b/public/language/rw/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/rw/admin/settings/uploads.json b/public/language/rw/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/rw/admin/settings/uploads.json +++ b/public/language/rw/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sc/admin/manage/user-custom-fields.json b/public/language/sc/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/sc/admin/manage/user-custom-fields.json +++ b/public/language/sc/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/sc/admin/settings/uploads.json b/public/language/sc/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sc/admin/settings/uploads.json +++ b/public/language/sc/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sk/admin/manage/user-custom-fields.json b/public/language/sk/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/sk/admin/manage/user-custom-fields.json +++ b/public/language/sk/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/sk/admin/settings/uploads.json b/public/language/sk/admin/settings/uploads.json index c279445335..f9a18dcb4c 100644 --- a/public/language/sk/admin/settings/uploads.json +++ b/public/language/sk/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalita pri zmene veľkosti obrázkov", "resize-image-quality-help": "Pre zníženie veľkosti zmenšených obrázkov použite nižšie nastavenia kvality.", "max-file-size": "Maximálna veľkosť súboru (v KiB)", diff --git a/public/language/sl/admin/manage/user-custom-fields.json b/public/language/sl/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/sl/admin/manage/user-custom-fields.json +++ b/public/language/sl/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/sl/admin/settings/uploads.json b/public/language/sl/admin/settings/uploads.json index d590c65f79..fc43ca3793 100644 --- a/public/language/sl/admin/settings/uploads.json +++ b/public/language/sl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sq-AL/admin/manage/user-custom-fields.json b/public/language/sq-AL/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/sq-AL/admin/manage/user-custom-fields.json +++ b/public/language/sq-AL/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/sq-AL/admin/settings/uploads.json b/public/language/sq-AL/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sq-AL/admin/settings/uploads.json +++ b/public/language/sq-AL/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sr/admin/manage/user-custom-fields.json b/public/language/sr/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/sr/admin/manage/user-custom-fields.json +++ b/public/language/sr/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/sr/admin/settings/uploads.json b/public/language/sr/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sr/admin/settings/uploads.json +++ b/public/language/sr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sv/admin/manage/user-custom-fields.json b/public/language/sv/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/sv/admin/manage/user-custom-fields.json +++ b/public/language/sv/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/sv/admin/settings/uploads.json b/public/language/sv/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sv/admin/settings/uploads.json +++ b/public/language/sv/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/th/admin/manage/user-custom-fields.json b/public/language/th/admin/manage/user-custom-fields.json index 825fe45b7c..31377fee2f 100644 --- a/public/language/th/admin/manage/user-custom-fields.json +++ b/public/language/th/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "ชื่อเสียงขั้นต่ำ", "minimum-reputation-help": "ถ้าผู้ใช้มีค่าน้อยกว่าค่านี้ พวกเขาจะใช้ฟิลด์นี้ไม่ได้", "delete-field-confirm-x": "คุณต้องการจะลบฟิลด์ \"%1\" หรือไม่?", - "custom-fields-saved": "ฟิลด์ที่ปรับแต่งได้ถูกบันทึกแล้ว" + "custom-fields-saved": "ฟิลด์ที่ปรับแต่งได้ถูกบันทึกแล้ว", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/th/admin/settings/uploads.json b/public/language/th/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/th/admin/settings/uploads.json +++ b/public/language/th/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/tr/admin/manage/user-custom-fields.json b/public/language/tr/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/tr/admin/manage/user-custom-fields.json +++ b/public/language/tr/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/tr/admin/settings/uploads.json b/public/language/tr/admin/settings/uploads.json index e24325ae53..f9b369f66a 100644 --- a/public/language/tr/admin/settings/uploads.json +++ b/public/language/tr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Görüntüleri belirtilen genişliğe yeniden boyutlandır", "resize-image-width-help": "(piksel olarak, varsayılan: 760 piksel, devre dışı bırakmak için 0 yazın.)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Resimleri yeniden boyutlandırırken kullanılacak kalite", "resize-image-quality-help": "Yeniden boyutlandırılan görüntülerin dosya boyutunu azaltmak için daha düşük bir kalite ayarı kullan.", "max-file-size": "Maksimum Dosya Boyutu (KiB)", diff --git a/public/language/uk/admin/manage/user-custom-fields.json b/public/language/uk/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/uk/admin/manage/user-custom-fields.json +++ b/public/language/uk/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/uk/admin/settings/uploads.json b/public/language/uk/admin/settings/uploads.json index c96711241b..f54640cb29 100644 --- a/public/language/uk/admin/settings/uploads.json +++ b/public/language/uk/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Якість зображення при зміні розміру", "resize-image-quality-help": "Використовувати нижчу якість зображення для зменшення розміру файла при зміні розміру зображення.", "max-file-size": "Максимальний розмір файлу (в КіБ)", diff --git a/public/language/vi/admin/manage/user-custom-fields.json b/public/language/vi/admin/manage/user-custom-fields.json index a7c6667737..b99582cf28 100644 --- a/public/language/vi/admin/manage/user-custom-fields.json +++ b/public/language/vi/admin/manage/user-custom-fields.json @@ -12,7 +12,7 @@ "input-type-text": "Đầu vào (Văn bản)", "input-type-link": "Đầu vào (Liên kết)", "input-type-number": "Đầu vào (Số)", - "input-type-date": "Input (Date)", + "input-type-date": "Nhập vào (ngày)", "input-type-select": "Chọn", "input-type-select-multi": "Chọn Nhiều", "select-options": "Tùy chọn", @@ -20,5 +20,9 @@ "minimum-reputation": "Uy tín tối thiểu", "minimum-reputation-help": "Nếu người dùng có ít hơn giá trị này, họ sẽ không thể sử dụng trường này", "delete-field-confirm-x": "Bạn có thực sự muốn xóa trường tùy chỉnh \"%1\"?", - "custom-fields-saved": "Đã lưu trường tùy chỉnh" + "custom-fields-saved": "Đã lưu trường tùy chỉnh", + "visibility": "Khả năng hiển thị", + "visibility-all": "Mọi người đều có thể nhìn thấy trường", + "visibility-loggedin": "Chỉ người dùng đã đăng nhập mới có thể nhìn thấy trường", + "visibility-privileged": "Chỉ những người dùng có đặc quyền như quản trị viên và người kiểm duyệt mới có thể nhìn thấy trường" } \ No newline at end of file diff --git a/public/language/vi/admin/settings/uploads.json b/public/language/vi/admin/settings/uploads.json index b03f8230f3..de6c056e17 100644 --- a/public/language/vi/admin/settings/uploads.json +++ b/public/language/vi/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(tính bằng pixel, mặc định: 2000 pixel, đặt thành 0 để tắt)", "resize-image-width": "Giảm kích cỡ ảnh xuống đến chiều rộng đã đặt", "resize-image-width-help": "(tính bằng pixel, mặc định: 760 pixel, đặt thành 0 để tắt)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Chất lượng để sử dụng khi thay đổi kích thước hình ảnh", "resize-image-quality-help": "Dùng cài đặt chất lượng thấp hơn để giảm kích cỡ tệp ảnh đã thay đổi kích cỡ.", "max-file-size": "Kích Cỡ Tệp Tối Đa (KiB)", diff --git a/public/language/vi/error.json b/public/language/vi/error.json index f0f6aab852..74ef8481f3 100644 --- a/public/language/vi/error.json +++ b/public/language/vi/error.json @@ -184,7 +184,7 @@ "not-enough-reputation-custom-field": "Bạn cần uy tín %1 cho %2", "custom-user-field-value-too-long": "Giá trị trường tùy chỉnh quá dài, %1", "custom-user-field-select-value-invalid": "Tùy chọn đã chọn trường tùy chỉnh không hợp lệ, %1", - "custom-user-field-invalid-text": "Custom field text is invalid, %1", + "custom-user-field-invalid-text": "Văn bản trường tùy chỉnh không hợp lệ, %1", "custom-user-field-invalid-link": "Liên kết trường tùy chỉnh không hợp lệ, %1", "custom-user-field-invalid-number": "Số trường tùy chỉnh không hợp lệ, %1", "custom-user-field-invalid-date": "Ngày trường tùy chỉnh không hợp lệ, %1", diff --git a/public/language/zh-CN/admin/manage/user-custom-fields.json b/public/language/zh-CN/admin/manage/user-custom-fields.json index c14c176920..29a34f43b5 100644 --- a/public/language/zh-CN/admin/manage/user-custom-fields.json +++ b/public/language/zh-CN/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/zh-CN/admin/settings/uploads.json b/public/language/zh-CN/admin/settings/uploads.json index 75d1b95090..8778274e58 100644 --- a/public/language/zh-CN/admin/settings/uploads.json +++ b/public/language/zh-CN/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "缩小图片到指定宽度", "resize-image-width-help": "(像素单位,默认 760 px,设置为0以禁用)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "调整图像大小时使用的质量", "resize-image-quality-help": "使用较低质量的设置来减小调整过大小的图像的文件大小", "max-file-size": "最大文件尺寸(单位 KiB)", diff --git a/public/language/zh-CN/email.json b/public/language/zh-CN/email.json index c94326d495..da067df94d 100644 --- a/public/language/zh-CN/email.json +++ b/public/language/zh-CN/email.json @@ -36,8 +36,8 @@ "digest.title.day": "您的每日摘要", "digest.title.week": "您的每周摘要", "digest.title.month": "您的每月摘要", - "notif.chat.new-message-from-user": "New message from \"%1\"", - "notif.chat.new-message-from-user-in-room": "New message from %1 in room %2", + "notif.chat.new-message-from-user": "来自 \"%1\" 的新消息", + "notif.chat.new-message-from-user-in-room": "来自 %1 在房间 %2 中的新消息", "notif.chat.cta": "点击这里继续会话", "notif.chat.unsub.info": "根据您的订阅设置,为您发送此聊天提醒。", "notif.post.unsub.info": "根据您的订阅设置,为您发送此回帖提醒。", diff --git a/public/language/zh-CN/error.json b/public/language/zh-CN/error.json index abedb7bb2c..f859f3750a 100644 --- a/public/language/zh-CN/error.json +++ b/public/language/zh-CN/error.json @@ -51,7 +51,7 @@ "reset-rate-limited": "太多密码重置请求(总数有限)", "reset-same-password": "新的密码不能与当前使用的相同", "user-banned": "用户已禁止", - "user-banned-reason": "抱歉,此帐号已经被封禁 (原因:%1)", + "user-banned-reason": "抱歉,此帐号已经被封禁(原因:%1)", "user-banned-reason-until": "抱歉,此账号已被封禁,直到 %1(原因:%2)", "user-too-new": "抱歉,您需要等待 %1 秒后,才可以发帖!", "blacklisted-ip": "对不起,您的 IP 地址已被社区禁用。如果您认为这是一个错误,请与管理员联系。", @@ -181,20 +181,20 @@ "not-enough-reputation-min-rep-signature": "您需要 %1 声望以添加签名档", "not-enough-reputation-min-rep-profile-picture": "您需要 %1 声望以设置头像", "not-enough-reputation-min-rep-cover-picture": "您需要 %1 声望以设置封面图片", - "not-enough-reputation-custom-field": "You need %1 reputation for %2", - "custom-user-field-value-too-long": "Custom field value too long, %1", - "custom-user-field-select-value-invalid": "Custom field selected option is invalid, %1", - "custom-user-field-invalid-text": "Custom field text is invalid, %1", - "custom-user-field-invalid-link": "Custom field link is invalid, %1", - "custom-user-field-invalid-number": "Custom field number is invalid, %1", - "custom-user-field-invalid-date": "Custom field date is invalid, %1", - "invalid-custom-user-field": "Invalid custom user field, \"%1\" is already used by NodeBB", + "not-enough-reputation-custom-field": "您需要 %1 声望才能 %2", + "custom-user-field-value-too-long": "自定义字段值过长,%1", + "custom-user-field-select-value-invalid": "选中的自定义字段选项无效,%1", + "custom-user-field-invalid-text": "无效的自定义字段文本,%1", + "custom-user-field-invalid-link": "无效的自定义字段链接,%1", + "custom-user-field-invalid-number": "无效的自定义字段数字,%1", + "custom-user-field-invalid-date": "无效的自定义字段日期,%1", + "invalid-custom-user-field": "无效的自定义用户字段,“%1”已被 NodeBB 使用。", "post-already-flagged": "您已举报此帖", "user-already-flagged": "您已举报此用户", "post-flagged-too-many-times": "此贴已被其他用户举报", "user-flagged-too-many-times": "此用户已被其他用户举报", - "too-many-post-flags-per-day": "你每日可以举报%1 个帖子", - "too-many-user-flags-per-day": "你每日可以举报 %1个用户", + "too-many-post-flags-per-day": "你每日可以举报 %1 个帖子", + "too-many-user-flags-per-day": "你每日可以举报 %1 个用户", "cant-flag-privileged": "您不能举报特权用户(版主/全局版主/管理员)的内容或资料", "cant-locate-flag-report": "无法确定举报报告", "self-vote": "您不能对您自己的帖子投票", @@ -209,8 +209,8 @@ "wrong-login-type-username": "请输入您的用户名登录", "sso-registration-disabled": "已禁用通过 %1 账户的注册,请先使用邮箱地址注册", "sso-multiple-association": "您无法将此服务中的多个账户关联到您的NodeBB账号。请您分离的现有账号并重试。", - "invite-maximum-met": "您的邀请人数超出了上限 (%1 超过了 %2)。", - "no-session-found": "未登录!", + "invite-maximum-met": "您的邀请人数超出了上限(%1 超过了 %2)。", + "no-session-found": "未登录!", "not-in-room": "用户已不在聊天室中", "cant-kick-self": "您不能把自己踢出群组", "no-users-selected": "尚未选择用户", @@ -247,5 +247,5 @@ "api.500": "在试图为您的请求提供服务时出现了一个意外的错误。", "api.501": "您试图调用的路由还没被实现,请明天重试", "api.503": "您试图调用的路由因为服务器配置而目前不可用", - "api.reauth-required": "您试图访问的资源需要(重新)进行身份验证。" + "api.reauth-required": "您试图访问的资源需要(重新)进行身份验证。" } \ No newline at end of file diff --git a/public/language/zh-CN/flags.json b/public/language/zh-CN/flags.json index 3a27c1461a..f262d3fa85 100644 --- a/public/language/zh-CN/flags.json +++ b/public/language/zh-CN/flags.json @@ -14,7 +14,7 @@ "target-purged": "被举报的内容已经被清除,不再可用。", "target-aboutme-empty": "这个用户没有设置 "关于我" 。", - "graph-label": "日举报", + "graph-label": "每日举报", "quick-filters": "快速过滤器", "filter-active": "该列中有一个或更多激活的过滤器", "filter-reset": "删除过滤器", diff --git a/public/language/zh-CN/groups.json b/public/language/zh-CN/groups.json index e4b80d3f9d..74b4fbb097 100644 --- a/public/language/zh-CN/groups.json +++ b/public/language/zh-CN/groups.json @@ -52,13 +52,13 @@ "event.updated": "群组信息已更新", "event.deleted": "群组 \"%1\" 已被删除", "membership.accept-invitation": "接受邀请", - "membership.accept.notification-title": "你现在是 %1的成员了", + "membership.accept.notification-title": "你现在是 %1 的成员了", "membership.invitation-pending": "邀请中", "membership.join-group": "加入群组", "membership.leave-group": "退出群组", "membership.leave.notification-title": "%1 退出了群组:%2", "membership.reject": "拒绝", - "new-group.group-name": "群组名:", + "new-group.group-name": "群组名:", "upload-group-cover": "上传群组封面", "bulk-invite-instructions": "输入您要邀请加入此群组的用户名,多个用户以逗号分隔", "bulk-invite": "批量邀请", diff --git a/public/language/zh-CN/ip-blacklist.json b/public/language/zh-CN/ip-blacklist.json index 3ab79f710b..69eed72aed 100644 --- a/public/language/zh-CN/ip-blacklist.json +++ b/public/language/zh-CN/ip-blacklist.json @@ -5,7 +5,7 @@ "validate": "验证黑名单", "apply": "应用黑名单", "hints": "格式建议", - "hint-1": "每行定义一个独立 IP 地址。您可以添加 IP 块,只要它们满足 CIDR 格式(e.g. 192.168.100.0/22)。", + "hint-1": "每行定义一个独立 IP 地址。您可以添加 IP 块,只要它们满足 CIDR 格式(例如:192.168.100.0/22)。", "hint-2": "您可以通过以#标志开头的行来添加注释。", "validate.x-valid": "%1 / %2的规则有效。", diff --git a/public/language/zh-CN/modules.json b/public/language/zh-CN/modules.json index 2137715749..a20595f84f 100644 --- a/public/language/zh-CN/modules.json +++ b/public/language/zh-CN/modules.json @@ -10,10 +10,10 @@ "chat.chat-with-usernames-and-x-others": "与%1 & %2 和其他人聊天", "chat.send": "发送", "chat.no-active": "暂无聊天", - "chat.user-typing-1": "%1 is typing ...", - "chat.user-typing-2": "%1 and %2 are typing ...", - "chat.user-typing-3": "%1, %2 and %3 are typing ...", - "chat.user-typing-n": "%1, %2 and %3 others are typing ...", + "chat.user-typing-1": "%1 正在输入...", + "chat.user-typing-2": "%1%2 正在输入...", + "chat.user-typing-3": "%1%2%3 正在输入...", + "chat.user-typing-n": "%1%2 和其余 %3 人正在输入...", "chat.user-has-messaged-you": "%1 向您发送了消息。", "chat.replying-to": "回复 %1", "chat.see-all": "全部对话", @@ -34,10 +34,10 @@ "chat.delete-message-confirm": "您确定您要删除此消息吗?", "chat.retrieving-users": "查找用户", "chat.view-users-list": "查看用户列表", - "chat.pinned-messages": "Pinned Messages", - "chat.no-pinned-messages": "There are no pinned messages", - "chat.pin-message": "Pin Message", - "chat.unpin-message": "Unpin Message", + "chat.pinned-messages": "已置顶消息", + "chat.no-pinned-messages": "这里没有已置顶消息", + "chat.pin-message": "置顶消息", + "chat.unpin-message": "取消置顶消息", "chat.public-rooms": "公开房间(1%)", "chat.private-rooms": "私有房间(1%)", "chat.create-room": "创建聊天室", @@ -88,13 +88,13 @@ "composer.uploading": "正在上传 %1", "composer.formatting.bold": "加粗", "composer.formatting.italic": "倾斜", - "composer.formatting.heading": "Heading", - "composer.formatting.heading1": "Heading 1", - "composer.formatting.heading2": "Heading 2", - "composer.formatting.heading3": "Heading 3", - "composer.formatting.heading4": "Heading 4", - "composer.formatting.heading5": "Heading 5", - "composer.formatting.heading6": "Heading 6", + "composer.formatting.heading": "标题", + "composer.formatting.heading1": "标题 1", + "composer.formatting.heading2": "标题 2", + "composer.formatting.heading3": "标题 3", + "composer.formatting.heading4": "标题 4", + "composer.formatting.heading5": "标题 5", + "composer.formatting.heading6": "标题 6", "composer.formatting.list": "列表", "composer.formatting.strikethrough": "删除线", "composer.formatting.code": "代码", diff --git a/public/language/zh-CN/notifications.json b/public/language/zh-CN/notifications.json index d7f6a5342f..b8e3676b58 100644 --- a/public/language/zh-CN/notifications.json +++ b/public/language/zh-CN/notifications.json @@ -12,7 +12,7 @@ "you-have-unread-notifications": "您有未读的通知。", "all": "所有", "topics": "主题", - "tags": "Tags", + "tags": "标签", "categories": "版块", "replies": "回复", "chat": "聊天", @@ -25,13 +25,13 @@ "my-flags": "指派举报给我", "bans": "封禁", "new-message-from": "来自 %1 的新消息", - "new-messages-from": "%2的%1新信息", + "new-messages-from": "来自 %2 的 %1 条新消息", "new-message-in": "%1的新消息", - "new-messages-in": " %2的 %1 个新消息", + "new-messages-in": " %2的 %1 条新消息", "user-posted-in-public-room": "%1%3发表", "user-posted-in-public-room-dual": "%1%2%4发表", "user-posted-in-public-room-triple": "%1, %2%3%5发表", - "user-posted-in-public-room-multiple": "%1, %2 和 %3 其他人在 %5发表", + "user-posted-in-public-room-multiple": "%1, %2 和其余 %3 人在 %5发表", "upvoted-your-post-in": "%1%2 点赞了您的帖子。", "upvoted-your-post-in-dual": "%1%2%3 赞了您的帖子。", "upvoted-your-post-in-triple": "%1, %2%3 赞同了您在 %4的帖子。", diff --git a/public/language/zh-CN/pages.json b/public/language/zh-CN/pages.json index 5901103af8..46a380184b 100644 --- a/public/language/zh-CN/pages.json +++ b/public/language/zh-CN/pages.json @@ -48,7 +48,7 @@ "account/topics": "%1 创建的主题", "account/groups": "%1 的群组", "account/watched-categories": "%1 关注的版块", - "account/watched-tags": "%1's 关注的标签", + "account/watched-tags": "%1 关注的标签", "account/bookmarks": "%1 收藏的帖子", "account/settings": "用户设置", "account/settings-of": "改变设置的 %1", diff --git a/public/language/zh-CN/tags.json b/public/language/zh-CN/tags.json index d68b9825fa..c61222475a 100644 --- a/public/language/zh-CN/tags.json +++ b/public/language/zh-CN/tags.json @@ -8,10 +8,10 @@ "no-tags": "尚无标签。", "select-tags": "选择标签", "tag-whitelist": "标签白名单", - "watching": "Watching", - "not-watching": "Not Watching", - "watching.description": "Notify me of new topics.", - "not-watching.description": "Do not notify me of new topics.", - "following-tag.message": "You will now be receiving notifications when somebody posts a topic with this tag.", - "not-following-tag.message": "You will not receive notifications when somebody posts a topic with this tag." + "watching": "关注中", + "not-watching": "未关注", + "watching.description": "有新主题时通知我。", + "not-watching.description": "不要在有新主题时通知我。", + "following-tag.message": "当有人发布带有此标签的主题时,您将会收到通知。", + "not-following-tag.message": "当有人发布带有此标签的主题时,您将不会收到通知。" } \ No newline at end of file diff --git a/public/language/zh-TW/admin/manage/user-custom-fields.json b/public/language/zh-TW/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/zh-TW/admin/manage/user-custom-fields.json +++ b/public/language/zh-TW/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/language/zh-TW/admin/settings/uploads.json b/public/language/zh-TW/admin/settings/uploads.json index 3b82fa1ce4..fc3bddd9ca 100644 --- a/public/language/zh-TW/admin/settings/uploads.json +++ b/public/language/zh-TW/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "縮小圖片到指定寬度", "resize-image-width-help": "(像素單位,預設 760 px,設定為0以停用)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "調整圖片大小時使用的品質", "resize-image-quality-help": "使用較低品質的設定來減小調整過大小的圖片的檔案大小", "max-file-size": "最大檔案大小(單位 KiB)", diff --git a/public/src/admin/manage/users/custom-fields.js b/public/src/admin/manage/users/custom-fields.js index 631f06ea63..a7b0b65ca2 100644 --- a/public/src/admin/manage/users/custom-fields.js +++ b/public/src/admin/manage/users/custom-fields.js @@ -51,6 +51,7 @@ define('admin/manage/user/custom-fields', [ icon: el.attr('data-icon'), type: el.attr('data-type'), 'select-options': el.attr('data-select-options'), + visibility: el.attr('data-visibility'), 'min:rep': el.attr('data-min-rep'), }; } diff --git a/public/src/client/chats/messages.js b/public/src/client/chats/messages.js index e16cd36a5b..d82dff71c3 100644 --- a/public/src/client/chats/messages.js +++ b/public/src/client/chats/messages.js @@ -181,7 +181,7 @@ define('forum/chats/messages', [ const replyToEl = composerEl.find('[component="chat/composer/replying-to"]'); replyToEl.attr('data-tomid', mid) .find('[component="chat/composer/replying-to-text"]') - .translateText(`[[modules:chat.replying-to, ${msgEl.attr('data-username')}]]`); + .translateText(`[[modules:chat.replying-to, ${msgEl.attr('data-displayname')}]]`); replyToEl.removeClass('hidden'); replyToEl.find('[component="chat/composer/replying-to-cancel"]').off('click') .on('click', () => { diff --git a/public/src/client/topic.js b/public/src/client/topic.js index 0cc8ba3daf..0bef2268df 100644 --- a/public/src/client/topic.js +++ b/public/src/client/topic.js @@ -181,6 +181,7 @@ define('forum/topic', [ const clickedThumb = e.target.closest('a'); if (clickedThumb) { const clickedThumbIndex = Array.from(clickedThumb.parentNode.children).indexOf(clickedThumb); + e.stopPropagation(); e.preventDefault(); const thumbs = ajaxify.data.thumbs.map(t => ({ ...t })); thumbs.forEach((t, i) => { diff --git a/public/src/client/users.js b/public/src/client/users.js index cb6322ba74..47c16f9387 100644 --- a/public/src/client/users.js +++ b/public/src/client/users.js @@ -29,6 +29,16 @@ define('forum/users', [ searchResultCount = params && params.resultCount; $('#search-user').on('keyup', utils.debounce(doSearch, 250)); $('.search select, .search input[type="checkbox"]').on('change', doSearch); + + // Populate box with query if present + const searchEl = document.getElementById('search-user'); + const search = new URLSearchParams(document.location.search); + const query = search.get('query'); + if (query) { + searchEl.value = query; + } + + searchEl.focus(); }; function doSearch() { @@ -36,20 +46,25 @@ define('forum/users', [ return; } $('[component="user/search/icon"]').removeClass('fa-search').addClass('fa-spinner fa-spin'); - const username = $('#search-user').val(); const activeSection = getActiveSection(); const query = { - section: activeSection, + section: activeSection || 'users', page: 1, }; - if (!username) { + const username = $('#search-user').val(); + if (username) { + query.query = username; + } else { return loadPage(query); } - query.query = username; - query.sortBy = getSortBy(); + const sortBy = getSortBy(); + if (sortBy) { + query.sortBy = sortBy; + } + const filters = []; if ($('.search .online-only').is(':checked') || (activeSection === 'online')) { filters.push('online'); @@ -85,6 +100,10 @@ define('forum/users', [ api.get('/api/users', query) .then(renderSearchResults) .catch(alerts.error); + + // Update query string + const search = new URLSearchParams(query); + ajaxify.updateHistory(`users?${search.toString()}`, true); } function renderSearchResults(data) { diff --git a/src/activitypub/inbox.js b/src/activitypub/inbox.js index b32e95fa48..66bd9ab2c7 100644 --- a/src/activitypub/inbox.js +++ b/src/activitypub/inbox.js @@ -198,11 +198,15 @@ inbox.delete = async (req) => { } } const pid = object.id || object; + let type = object.type || undefined; // Deletes don't have their objects resolved automatically let method = 'purge'; try { - const { type } = await activitypub.get('uid', 0, pid); + if (!type) { + ({ type } = await activitypub.get('uid', 0, pid)); + } + if (type === 'Tombstone') { method = 'delete'; } @@ -225,7 +229,7 @@ inbox.delete = async (req) => { switch (true) { case isNote: { - const uid = await posts.getPostField(object, 'uid'); + const uid = await posts.getPostField(pid, 'uid'); await announce(pid, req.body); await api.posts[method]({ uid }, { pid }); break; diff --git a/src/activitypub/mocks.js b/src/activitypub/mocks.js index 41a60f24ad..83e4ef6151 100644 --- a/src/activitypub/mocks.js +++ b/src/activitypub/mocks.js @@ -177,7 +177,10 @@ Mocks.post = async (objects) => { let edited = new Date(updated); edited = Number.isNaN(edited.valueOf()) ? undefined : edited; - if (content && content.length) { + const sourceContent = source && source.mediaType === 'text/markdown' ? source.content : undefined; + if (sourceContent) { + content = null; + } else if (content && content.length) { content = sanitize(content, sanitizeConfig); content = await activitypub.helpers.remoteAnchorToLocalProfile(content); } else { @@ -190,7 +193,7 @@ Mocks.post = async (objects) => { // tid, --> purposely omitted name, content, - sourceContent: source && source.mediaType === 'text/markdown' ? source.content : undefined, + sourceContent, timestamp, toPid, @@ -210,7 +213,7 @@ Mocks.actors = {}; Mocks.actors.user = async (uid) => { const userData = await user.getUserData(uid); let { username, userslug, displayname, fullname, joindate, aboutme, picture, 'cover:url': cover } = userData; - let fields = await accountHelpers.getCustomUserFields(userData); + let fields = await accountHelpers.getCustomUserFields(0, userData); const publicKey = await activitypub.getPublicKey('uid', uid); let aboutmeParsed = ''; diff --git a/src/activitypub/notes.js b/src/activitypub/notes.js index cb2a7800c9..ac238b4bf1 100644 --- a/src/activitypub/notes.js +++ b/src/activitypub/notes.js @@ -179,6 +179,7 @@ Notes.assert = async (uid, input, options = { skipChecks: false }) => { timestamp, tags, content: mainPost.content, + sourceContent: mainPost.sourceContent, _activitypub: mainPost._activitypub, }), Notes.updateLocalRecipients(mainPid, { to, cc }), diff --git a/src/controllers/accounts/edit.js b/src/controllers/accounts/edit.js index 2326361fdc..61a13399a0 100644 --- a/src/controllers/accounts/edit.js +++ b/src/controllers/accounts/edit.js @@ -29,7 +29,7 @@ editController.get = async function (req, res, next) { const [canUseSignature, canManageUsers, customUserFields] = await Promise.all([ privileges.global.can('signature', req.uid), privileges.admin.can('admin:users', req.uid), - accountHelpers.getCustomUserFields(userData), + accountHelpers.getCustomUserFields(req.uid, userData), ]); userData.customUserFields = customUserFields; diff --git a/src/controllers/accounts/helpers.js b/src/controllers/accounts/helpers.js index 04705f1d10..3e1b1a8098 100644 --- a/src/controllers/accounts/helpers.js +++ b/src/controllers/accounts/helpers.js @@ -139,7 +139,7 @@ helpers.getUserDataByUserSlug = async function (userslug, callerUID, query = {}) return hookData.userData; }; -helpers.getCustomUserFields = async function (userData) { +helpers.getCustomUserFields = async function (callerUID, userData) { // Remote users' fields are serialized in hash if (!utils.isNumber(userData.uid)) { const customFields = await user.getUserField(userData.uid, 'customFields'); @@ -165,9 +165,22 @@ helpers.getCustomUserFields = async function (userData) { const keys = await db.getSortedSetRange('user-custom-fields', 0, -1); const allFields = (await db.getObjects(keys.map(k => `user-custom-field:${k}`))).filter(Boolean); + const isSelf = String(callerUID) === String(userData.uid); + const [isAdmin, isModOfAny] = await Promise.all([ + privileges.users.isAdministrator(callerUID), + user.isModeratorOfAnyCategory(callerUID), + ]); + const fields = allFields.filter((field) => { + const visibilityCheck = isAdmin || isModOfAny || isSelf || field.visibility === 'all' || + ( + field.visibility === 'loggedin' && + String(callerUID) !== '0' && + String(callerUID) !== '-1' + ); const minRep = field['min:rep'] || 0; - return userData.reputation >= minRep || meta.config['reputation:disabled']; + const repCheck = userData.reputation >= minRep || meta.config['reputation:disabled']; + return visibilityCheck && repCheck; }); fields.forEach((f) => { diff --git a/src/controllers/accounts/profile.js b/src/controllers/accounts/profile.js index a8632cbf77..288faa8a3e 100644 --- a/src/controllers/accounts/profile.js +++ b/src/controllers/accounts/profile.js @@ -27,7 +27,7 @@ profileController.get = async function (req, res, next) { const [latestPosts, bestPosts, customUserFields] = await Promise.all([ getLatestPosts(req.uid, userData), getBestPosts(req.uid, userData), - accountHelpers.getCustomUserFields(userData), + accountHelpers.getCustomUserFields(req.uid, userData), posts.parseSignature(userData, req.uid), ]); userData.customUserFields = customUserFields; diff --git a/src/controllers/admin/users.js b/src/controllers/admin/users.js index db1be70157..4ea3ebb9e5 100644 --- a/src/controllers/admin/users.js +++ b/src/controllers/admin/users.js @@ -310,6 +310,7 @@ usersController.customFields = async function (req, res) { field.selectOptionsFormatted = field['select-options'].trim().split('\n').join(', '); } field['min:rep'] = field['min:rep'] || 0; + field.visibility = field.visibility || 'all'; }); res.render('admin/manage/users/custom-fields', { fields: fields }); }; diff --git a/src/controllers/uploads.js b/src/controllers/uploads.js index d5105d25f1..29b5fac332 100644 --- a/src/controllers/uploads.js +++ b/src/controllers/uploads.js @@ -110,12 +110,16 @@ async function resizeImage(fileObj) { await image.resizeImage({ path: fileObj.path, - target: file.appendToFileName(fileObj.path, '-resized'), + target: meta.config.resizeImageKeepOriginal ? + file.appendToFileName(fileObj.path, '-resized') : + fileObj.path, width: meta.config.resizeImageWidth, quality: meta.config.resizeImageQuality, }); // Return the resized version to the composer/postData - fileObj.url = file.appendToFileName(fileObj.url, '-resized'); + if (meta.config.resizeImageKeepOriginal) { + fileObj.url = file.appendToFileName(fileObj.url, '-resized'); + } return fileObj; } diff --git a/src/controllers/well-known.js b/src/controllers/well-known.js index 93a0839176..7df8d543fc 100644 --- a/src/controllers/well-known.js +++ b/src/controllers/well-known.js @@ -31,9 +31,9 @@ Controller.webfinger = async (req, res) => { if (slug === hostname) { response = application(response); } else if (uid) { - response = await profile(req.uid, uid, response); + response = await profile(uid, response); } else if (cid) { - response = await category(req.uid, cid, response); + response = await category(cid, response); } else { return res.sendStatus(404); } @@ -59,8 +59,8 @@ function application(response) { return response; } -async function profile(callerUid, uid, response) { - const canView = await privileges.global.can('view:users', callerUid); +async function profile(uid, response) { + const canView = await privileges.global.can('view:users', -2); if (!canView) { throw new Error('[[error:no-privileges]]'); } @@ -90,8 +90,8 @@ async function profile(callerUid, uid, response) { return response; } -async function category(callerUid, cid, response) { - const canFind = await privileges.categories.can('find', cid, callerUid); +async function category(cid, response) { + const canFind = await privileges.categories.can('find', cid, -2); if (!canFind) { throw new Error('[[error:no-privileges]]'); } diff --git a/src/database/redis.js b/src/database/redis.js index 15a40c9fb4..f73ee79313 100644 --- a/src/database/redis.js +++ b/src/database/redis.js @@ -39,9 +39,9 @@ redisModule.init = async function (opts) { redisModule.createSessionStore = async function (options) { const meta = require('../meta'); - const sessionStore = require('connect-redis').default; + const { RedisStore } = require('connect-redis'); const client = await connection.connect(options); - const store = new sessionStore({ + const store = new RedisStore({ client: client, ttl: meta.getSessionTTLSeconds(), }); diff --git a/src/image.js b/src/image.js index 4f07267f16..6c0ae9e68a 100644 --- a/src/image.js +++ b/src/image.js @@ -122,7 +122,6 @@ image.stripEXIF = async function (path) { }; image.checkDimensions = async function (path) { - const meta = require('./meta'); const result = await image.size(path); if (result.width > meta.config.rejectImageWidth || result.height > meta.config.rejectImageHeight) { diff --git a/src/messaging/index.js b/src/messaging/index.js index 67b6346856..0c8bd0eded 100644 --- a/src/messaging/index.js +++ b/src/messaging/index.js @@ -234,7 +234,7 @@ Messaging.getRecentChats = async (callerUid, uid, start, stop) => { Messaging.generateUsernames = function (room, excludeUid) { const users = room.users.filter(u => u && parseInt(u.uid, 10) !== excludeUid); - const usernames = users.map(u => u.username); + const usernames = users.map(u => u.displayname); if (users.length > 3) { return translator.compile( 'modules:chat.usernames-and-x-others', @@ -248,8 +248,8 @@ Messaging.generateUsernames = function (room, excludeUid) { Messaging.generateChatWithMessage = async function (room, callerUid, userLang) { const users = room.users.filter(u => u && parseInt(u.uid, 10) !== callerUid); const usernames = users.map(u => (utils.isNumber(u.uid) ? - `${u.username}` : - `${u.username}`)); + `${u.displayname}` : + `${u.displayname}`)); let compiled = ''; if (!users.length) { return '[[modules:chat.no-users-in-room]]'; diff --git a/src/posts/create.js b/src/posts/create.js index 8833593b32..874971d501 100644 --- a/src/posts/create.js +++ b/src/posts/create.js @@ -16,7 +16,7 @@ const isEmojiShortcode = /^:[\w]+:$/; module.exports = function (Posts) { Posts.create = async function (data) { // This is an internal method, consider using Topics.reply instead - const { uid, tid, _activitypub } = data; + const { uid, tid, _activitypub, sourceContent } = data; const content = data.content.toString(); const timestamp = data.timestamp || Date.now(); const isMain = data.isMain || false; @@ -30,7 +30,7 @@ module.exports = function (Posts) { } const pid = data.pid || await db.incrObjectField('global', 'nextPid'); - let postData = { pid, uid, tid, content, timestamp }; + let postData = { pid, uid, tid, content, sourceContent, timestamp }; if (data.toPid) { postData.toPid = data.toPid; diff --git a/src/request.js b/src/request.js index 97590077ef..52604ef77d 100644 --- a/src/request.js +++ b/src/request.js @@ -1,5 +1,6 @@ 'use strict'; +const nconf = require('nconf'); const { CookieJar } = require('tough-cookie'); const fetchCookie = require('fetch-cookie').default; @@ -9,6 +10,8 @@ exports.jar = function () { // Initialize fetch - somewhat hacky, but it's required for globalDispatcher to be available +const userAgent = `NodeBB/${nconf.get('version').split('.').shift()}.x`; + async function call(url, method, { body, timeout, jar, ...config } = {}) { let fetchImpl = fetch; if (jar) { @@ -20,6 +23,7 @@ async function call(url, method, { body, timeout, jar, ...config } = {}) { method, headers: { 'content-type': 'application/json', + 'user-agent': userAgent, ...config.headers, }, }; diff --git a/src/topics/create.js b/src/topics/create.js index 40b85ee5c0..2d06d22123 100644 --- a/src/topics/create.js +++ b/src/topics/create.js @@ -100,7 +100,7 @@ module.exports = function (Topics) { await Topics.validateTags(data.tags, data.cid, uid); data.tags = await Topics.filterTags(data.tags, data.cid); if (!data.fromQueue && !isAdmin) { - Topics.checkContent(data.content); + Topics.checkContent(data.sourceContent || data.content); if (!await posts.canUserPostContentWithLinks(uid, data.content)) { throw new Error(`[[error:not-enough-reputation-to-post-links, ${meta.config['min:rep:post-links']}]]`); } @@ -186,7 +186,7 @@ module.exports = function (Topics) { if (!data.fromQueue && !isAdmin) { await user.isReadyToPost(uid, data.cid); - Topics.checkContent(data.content); + Topics.checkContent(data.sourceContent || data.content); if (!await posts.canUserPostContentWithLinks(uid, data.content)) { throw new Error(`[[error:not-enough-reputation-to-post-links, ${meta.config['min:rep:post-links']}]]`); } diff --git a/src/upgrades/3.12.0/resize-image-keep-original.js b/src/upgrades/3.12.0/resize-image-keep-original.js new file mode 100644 index 0000000000..92f889fd2c --- /dev/null +++ b/src/upgrades/3.12.0/resize-image-keep-original.js @@ -0,0 +1,13 @@ +/* eslint-disable no-await-in-loop */ + +'use strict'; + +const db = require('../../database'); + +module.exports = { + name: 'Add setting for keeping original image after resize', + timestamp: Date.UTC(2024, 11, 2), + method: async function () { + await db.setObjectField('config', 'resizeImageKeepOriginal', 1); + }, +}; diff --git a/src/upgrades/4.0.0/regenerate_slugs_for_users_with_periods.js b/src/upgrades/4.0.0/regenerate_slugs_for_users_with_periods.js new file mode 100644 index 0000000000..8b516e1883 --- /dev/null +++ b/src/upgrades/4.0.0/regenerate_slugs_for_users_with_periods.js @@ -0,0 +1,33 @@ +'use strict'; + +const db = require('../../database'); +const batch = require('../../batch'); +const user = require('../../user'); +const slugify = require('../../slugify'); + +module.exports = { + name: 'Regenerate user slugs for users whose usernames contained periods', + timestamp: Date.UTC(2024, 10, 28), + method: async function () { + const { progress } = this; + + await batch.processSortedSet('users:joindate', async (uids) => { + const data = await user.getUsersFields(uids, ['username', 'userslug']); + await Promise.all(data.map(async ({ uid, username, userslug }) => { + if (username.includes('.') && userslug !== slugify(username)) { + const value = slugify(username); + await Promise.all([ + db.sortedSetRemove('userslug:uid', userslug), + user.setUserField(uid, 'userslug', value), + db.sortedSetAdd('userslug:uid', uid, value), + ]); + } + })); + + progress.incr(uids.length); + }, { + batch: 500, + progress: progress, + }); + }, +}; diff --git a/src/views/admin/manage/users/custom-fields.tpl b/src/views/admin/manage/users/custom-fields.tpl index f3eb010987..b16a0bd754 100644 --- a/src/views/admin/manage/users/custom-fields.tpl +++ b/src/views/admin/manage/users/custom-fields.tpl @@ -21,13 +21,14 @@ [[admin/manage/user-custom-fields:key]] [[admin/manage/user-custom-fields:name]] [[admin/manage/user-custom-fields:type]] + [[admin/manage/user-custom-fields:visibility]] [[admin/manage/user-custom-fields:min-rep]] {{{ each fields }}} - + @@ -41,6 +42,9 @@ {{{ end }}} + + {./visibility} + {./min:rep} diff --git a/src/views/admin/partials/manage-custom-user-fields-modal.tpl b/src/views/admin/partials/manage-custom-user-fields-modal.tpl index 27b631a80d..327c5296e1 100644 --- a/src/views/admin/partials/manage-custom-user-fields-modal.tpl +++ b/src/views/admin/partials/manage-custom-user-fields-modal.tpl @@ -29,6 +29,15 @@ +
+ + +
+
diff --git a/src/views/admin/settings/reputation.tpl b/src/views/admin/settings/reputation.tpl index 10e72b6f47..49fa95d1e6 100644 --- a/src/views/admin/settings/reputation.tpl +++ b/src/views/admin/settings/reputation.tpl @@ -15,7 +15,7 @@
- +
- + + +
+
diff --git a/src/views/emails/digest.tpl b/src/views/emails/digest.tpl index 849c112b7e..3cc21af00a 100644 --- a/src/views/emails/digest.tpl +++ b/src/views/emails/digest.tpl @@ -9,7 +9,7 @@ @@ -75,7 +75,7 @@ @@ -110,7 +110,7 @@ @@ -145,7 +145,7 @@ diff --git a/src/views/partials/chats/message.tpl b/src/views/partials/chats/message.tpl index 527a055f17..3d2e0ce122 100644 --- a/src/views/partials/chats/message.tpl +++ b/src/views/partials/chats/message.tpl @@ -1,4 +1,4 @@ -
  • +
  • {{{ if messages.parent }}} diff --git a/src/views/partials/chats/room-teaser.tpl b/src/views/partials/chats/room-teaser.tpl index ae7f53f251..ee5aa856d8 100644 --- a/src/views/partials/chats/room-teaser.tpl +++ b/src/views/partials/chats/room-teaser.tpl @@ -2,7 +2,7 @@ {{{ if ./teaser }}}
    {buildAvatar(./teaser.user, "14px", true, "align-middle")} - {./teaser.user.username}: + {./teaser.user.displayname}: {./teaser.content}
    {{{ if ./teaser.timeagoLong }}}{./teaser.timeagoLong}{{{ else }}}{{{ end }}}
    diff --git a/src/views/partials/chats/user-list.tpl b/src/views/partials/chats/user-list.tpl index 306a625290..5825ab7874 100644 --- a/src/views/partials/chats/user-list.tpl +++ b/src/views/partials/chats/user-list.tpl @@ -3,7 +3,7 @@
    {buildAvatar(users, "24px", true)}
    - {./username} + {./displayname} {{{ if ./isOwner }}}{{{ end }}}
    diff --git a/test/uploads.js b/test/uploads.js index ff59c4c1f2..a8e48afac5 100644 --- a/test/uploads.js +++ b/test/uploads.js @@ -164,6 +164,24 @@ describe('Upload Controllers', () => { meta.config.resizeImageWidthThreshold = 2000; }); + it('should resize and upload an image to a post and replace original', async () => { + const oldValue = meta.config.resizeImageWidth; + const keepOldValue = meta.config.resizeImageKeepOriginal; + meta.config.resizeImageWidth = 10; + meta.config.resizeImageWidthThreshold = 10; + meta.config.resizeImageKeepOriginal = 0; + const { response, body } = await helpers.uploadFile(`${nconf.get('url')}/api/post/upload`, path.join(__dirname, '../test/files/test.png'), {}, jar, csrf_token); + + assert.equal(response.statusCode, 200); + assert(body && body.status && body.response && body.response.images); + assert(Array.isArray(body.response.images)); + assert(body.response.images[0].url); + assert(body.response.images[0].url.match(/\/assets\/uploads\/files\/\d+-test.png/)); + meta.config.resizeImageWidth = oldValue; + meta.config.resizeImageWidthThreshold = 2000; + meta.config.resizeImageKeepOriginal = keepOldValue; + }); + it('should upload a file to a post', async () => { const oldValue = meta.config.allowedFileExtensions; meta.config.allowedFileExtensions = 'png,jpg,bmp,html';
  • -

    [[email:greeting-with-name, {username}]]

    +

    [[email:greeting-with-name, {displayname}]]

    {function.renderDigestAvatar}

    {topTopics.title}

    -

    {topTopics.teaser.user.username}

    +

    {topTopics.teaser.user.displayname}

    {function.renderDigestAvatar}

    {popularTopics.title}

    -

    {popularTopics.teaser.user.username}

    +

    {popularTopics.teaser.user.displayname}

    {function.renderDigestAvatar}

    {recent.title}

    -

    {recent.teaser.user.username}

    +

    {recent.teaser.user.displayname}