1.3.0 dev

This commit is contained in:
Rodolfo Berrios 2020-10-09 19:16:21 -03:00
parent 3caf6fed1e
commit 7f76aa89ae
113 changed files with 21930 additions and 17394 deletions

View File

@ -1,6 +1,6 @@
<?php
define('G_APP_NAME', 'Chevereto Free');
define('G_APP_VERSION', '1.2.3');
define('G_APP_VERSION', '1.3.0');
define('G_APP_GITHUB_OWNER', 'chevereto');
define('G_APP_GITHUB_REPO', 'chevereto-free');
define('G_APP_GITHUB_REPO_URL', 'https://github.com/' . G_APP_GITHUB_OWNER . '/' . G_APP_GITHUB_REPO);

View File

@ -5,10 +5,6 @@
# NOTE: To use it in production you will need to rename this file to chevereto-hook.php
namespace CHV;
use G, Exception;
use G;
use Exception;
if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
}
if(!defined('access') or !access) die('This file cannot be directly accessed.');

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-04-16 20:33+0000',
'PO-Revision-Date' => '2020-04-16 20:33+0000',
'POT-Creation-Date' => '2020-09-02 17:14+0000',
'PO-Revision-Date' => '2020-09-02 17:14+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'cs',
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "Potvrdit",
],
"The content has been approved." => [
0 => "Obsah byl schválen.",
],
"Select existing album" => [
0 => "Vyberte stávající album",
],
@ -193,6 +196,9 @@ $translation_table = [
2 => "Alb",
3 => "Alba",
],
"Approve" => [
0 => "Schválit",
],
"Delete" => [
0 => "Smazat",
],
@ -454,6 +460,15 @@ $translation_table = [
2 => "Uživatelů",
3 => "Uživatelé",
],
"adult" => [
0 => "dospělý",
],
"teen" => [
0 => "dospívající",
],
"Content of type %s is forbidden" => [
0 => "Obsah typu %s je zakázán",
],
"Can't create %s destination dir" => [
0 => "Nelze vytvořit %s cílový adresář",
],
@ -823,9 +838,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "Uvnitř prohlížeče nahoře (stránka s obrázkem)",
],
"Expected banner size 728x90" => [
0 => "Očekávaná velikost banneru je 728×90px",
],
"Inside viewer foot (image page)" => [
0 => "Uvnitř prohlížeče dole (stránka s obrázkem)",
],
@ -913,9 +925,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "Chybná barva hlavní šablony",
],
"Invalid theme top bar color" => [
0 => "Neplatná barva vrchního rámečku tématu",
],
"Invalid theme top bar button color" => [
0 => "Neplatná barva vrchního baru tématu.",
],
@ -1156,6 +1165,9 @@ $translation_table = [
"Sign in" => [
0 => "Přihlásit se",
],
"Moderate" => [
0 => "Moderovat",
],
"Upload images" => [
0 => "Nahrát obrázky",
],
@ -1435,6 +1447,12 @@ $translation_table = [
"close" => [
0 => "zavřít",
],
"Note" => [
0 => "Poznámka",
],
"We must approve the uploaded content before being able to share." => [
0 => "Než budeme moci sdílet, musíme schválit nahraný obsah.",
],
"copy" => [
0 => "kopírovat",
],
@ -1444,9 +1462,6 @@ $translation_table = [
"Remove" => [
0 => "Odstranit",
],
"Edit image" => [
0 => "Upravit obrázek",
],
"Title" => [
0 => "Název",
],
@ -1636,6 +1651,9 @@ $translation_table = [
"Untitled image" => [
0 => "Obrázek bez názvu",
],
"Mark this if the image is not safe for work" => [
0 => "Označit tento obrázek, pokud není vhodný a bezpečný",
],
"Path" => [
0 => "Cesta",
],
@ -1843,12 +1861,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "Zde se nenachází nic k zobrazení.",
],
"Edit image details" => [
0 => "Upravit detaily obrázku",
],
"Edit album details" => [
0 => "Uprav informace o albu",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "Všechny obrázky budou přesunuty do nově vytvořeného alba. Samozřejmé můžete také obrázky přesunou do již <a class=\"modal-switch\" data-switch=\"move-existing-album\">existujícího alba</a>.",
],
@ -1879,12 +1891,21 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "Opravdu si přejete tento obsah označit jako nebezpečný?",
],
"Confirm approval" => [
0 => "Potvrďte souhlas",
],
"Do you really want to approve this content? This can't be undone." => [
0 => "Opravdu chcete odstranit veškerý vybraný obsah? Toto nelze vrátit zpět.",
],
"Confirm deletion" => [
0 => "Potvrďte odstranění",
],
"Do you really want to remove this content? This can't be undone." => [
0 => "Opravdu chcete odstranit tento obsah? (Nelze vrátit zpět)",
],
"Do you really want to approve all the selected content? This can't be undone." => [
0 => "Opravdu chcete odstranit veškerý vybraný obsah? Toto nelze vrátit zpět.",
],
"Do you really want to remove all the selected content? This can't be undone." => [
0 => "Opravdu si přejete odstranit vybraný obsah? (Nelze vrátit zpět)",
],
@ -1999,9 +2020,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "Opravdu si přejete odstranit toto album a všechny obrázky do něj zařazené? (Tuto akci nelze vrátit)",
],
"Delete album" => [
0 => "Smazat album",
],
"You like this" => [
0 => "Toto se vám líbí",
],
@ -2050,9 +2068,6 @@ $translation_table = [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "Systém automaticky analyzuje veškerý obsah kontinuálním sledováním cesty %path%.",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
0 => "Systém automaticky analyzuje veškerý obsah nepřetržitým sledováním cesty %path%.",
],
"Completed jobs will be automatically re-started after %n %m." => [
0 => "Dokončené úlohy budou automaticky znovu spuštěny po %n %m.",
],
@ -2104,15 +2119,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "Všechna oprávnění systému souborů musí být udělena uživateli crontab v %path%",
],
"Required crontab entry:" => [
0 => "Požadovaný záznam cronu:",
],
"Add import job" => [
0 => "Přidat úlohu importu",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "Tento nástroj umožňuje hromadně přidávat obsah na vaše webové stránky tím, že zadává systémovou cestu s obsahem, který chcete importovat. Podporuje přidávání uživatelů, alb a obrázků pomocí struktury založené na složkách. Další informace o struktuře složek, přidání metadat a vše o tomto nástroji naleznete v naší %d.",
],
"Process import" => [
0 => "Proces importu",
],
@ -2389,12 +2398,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "Povolte pokud chcete umožnit nahrávání. Toto nastavení nemá vliv na administrátory",
],
"Guest uploads" => [
0 => "Nahráno hostem",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Povol pokud chceš umožnit neregistrovaným uživatelům nahrávání.",
],
"Upload user interface" => [
0 => "Rozhraní uživatelského nahrávání",
],
@ -2404,6 +2407,21 @@ $translation_table = [
"route" => [
0 => "trasa",
],
"Guest uploads" => [
0 => "Nahráno hostem",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Povol pokud chceš umožnit neregistrovaným uživatelům nahrávání.",
],
"Moderate uploads" => [
0 => "Moderovat nahrávání",
],
"Guests" => [
0 => "Hosté",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "Povolte tuto funkci pro moderování příchozích nahrávek. Cílový obsah bude ke schválení vyžadovat moderování.",
],
"Enable embed codes (uploader)" => [
0 => "Povolit vkládací odkazy (v nahrávacím nástroji)",
],
@ -2728,6 +2746,12 @@ $translation_table = [
"Monthly limit" => [
0 => "Měsíční limit",
],
"Lock %s editing" => [
0 => "Zamknout úpravy %s",
],
"Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission." => [
0 => "Povolte tuto funkci, aby uživatelé nemohli změnit příznak NSFW. Pokud je funkce povolena, toto oprávnění budou mít pouze administrátoři a správci.",
],
"Show not safe content in listings" => [
0 => "V galerii vypisovat i nevhodný obsah",
],
@ -2839,18 +2863,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "Použijte pro nastavení barvy hlavní šablony. Hodnota musí být v <a href=\"%s\" target=\"_blank\">hex formátu</a>.",
],
"Top bar color" => [
0 => "Barva horního baru",
],
"Black" => [
0 => "Černá",
],
"White" => [
0 => "Bílá",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "Pokud se toto nastaví na \"Bílá\", horní bar a všechny černé tóny se změní na bílé tóny.",
],
"Top bar button color" => [
0 => "Barva tlačítka horního baru",
],
@ -2869,6 +2881,12 @@ $translation_table = [
"Grey" => [
0 => "Šedá",
],
"Black" => [
0 => "Černá",
],
"White" => [
0 => "Bílá",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "Barva tlačítek na horní liště, např. jako je tlačítko \"Vytvořit účet\".",
],
@ -2977,8 +2995,11 @@ $translation_table = [
"Split landing + images" => [
0 => "Split landing + obrázky",
],
"Route explore" => [
0 => "Prozkoumejte trasu",
"Route %s" => [
0 => "Trasa %s",
],
"upload" => [
0 => "nahrát",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "Vyberte styl domovské obrazovky. Pro přispůsobení stylu jej upravte v app/themes/%s/views/index.php",
@ -3385,6 +3406,27 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "Disqus, Facebook nebo cokoliv jiného. Bude použito v zobrazení obrázku.",
],
"Automatically moderate the content using the %s service." => [
0 => "Automaticky moderujte obsah pomocí služby %s.",
],
"Automatic approve" => [
0 => "Automatické schválení",
],
"Enable this to automatically approve content moderated by this service." => [
0 => "Povolte tuto funkci pro automatické schválení obsahu moderovaného touto službou.",
],
"Block content" => [
0 => "Blokovat obsah",
],
"Adult" => [
0 => "Dospělí",
],
"Teen and adult" => [
0 => "Dospívající i dospělí",
],
"Flag NSFW" => [
0 => "Příznak NSFW",
],
"Analytics code" => [
0 => "Kód analytics.",
],
@ -3427,6 +3469,9 @@ $translation_table = [
"Load full resolution" => [
0 => "Načíst v plném rozlišení",
],
"Do you really want to approve this image? The image will go public if you approve it." => [
0 => "Opravdu chcete odstranit veškerý vybraný obsah? Toto nelze vrátit zpět.",
],
"Added to %a and categorized in %c" => [
0 => "Přidáno do alba %a a zařazeno do kategorie %c",
],
@ -3742,9 +3787,6 @@ $translation_table = [
"Delete background" => [
0 => "Odstranit pozadí",
],
"Edit profile" => [
0 => "Upravit profil",
],
"Follower" => [
0 => "Sledující",
1 => "Sledujících",

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'Chevereto V3',
'POT-Creation-Date' => '2020-04-15 13:52-0400',
'PO-Revision-Date' => '2020-04-15 13:52-0400',
'POT-Creation-Date' => '2020-09-01 09:57-0400',
'PO-Revision-Date' => '2020-09-01 09:57-0400',
'Last-Translator' => 'Rodolfo Berríos <inbox@rodolfoberrios.com>',
'Language-Team' => '',
'Language' => 'en_US',

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-04-16 20:33+0000',
'PO-Revision-Date' => '2020-04-16 20:33+0000',
'POT-Creation-Date' => '2020-09-25 18:53+0000',
'PO-Revision-Date' => '2020-09-25 18:53+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'es',
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "Confirmar",
],
"The content has been approved." => [
0 => "El contenido ha sido aprobado.",
],
"Select existing album" => [
0 => "Seleccionar álbum existente",
],
@ -191,6 +194,9 @@ $translation_table = [
0 => "Álbum",
1 => "Álbumes",
],
"Approve" => [
0 => "Aprobar",
],
"Delete" => [
0 => "Eliminar",
],
@ -428,6 +434,15 @@ $translation_table = [
0 => "Usuario",
1 => "Usuarios",
],
"adult" => [
0 => "adulto",
],
"teen" => [
0 => "adolescente",
],
"Content of type %s is forbidden" => [
0 => "El contenido de tipo %s está prohibido",
],
"Can't create %s destination dir" => [
0 => "No se puede crear el directorio %s de destino",
],
@ -793,9 +808,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "En el interior superior del visualizador (página de imagen)",
],
"Expected banner size 728x90" => [
0 => "Tamaño esperado del aviso es 728x90",
],
"Inside viewer foot (image page)" => [
0 => "En el interior inferior del visualizador (página de imagen)",
],
@ -883,9 +895,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "Color principal de tema inválido",
],
"Invalid theme top bar color" => [
0 => "Color de barra superior de tema inválido",
],
"Invalid theme top bar button color" => [
0 => "Color de botón de barra superior de tema inválido",
],
@ -1126,6 +1135,9 @@ $translation_table = [
"Sign in" => [
0 => "Entrar",
],
"Moderate" => [
0 => "Moderar",
],
"Upload images" => [
0 => "Subir imágenes",
],
@ -1405,6 +1417,12 @@ $translation_table = [
"close" => [
0 => "cerrar",
],
"Note" => [
0 => "Nota",
],
"We must approve the uploaded content before being able to share." => [
0 => "Debemos aprobar el contenido subido antes de poder compartir.",
],
"copy" => [
0 => "copiar",
],
@ -1414,9 +1432,6 @@ $translation_table = [
"Remove" => [
0 => "Eliminar",
],
"Edit image" => [
0 => "Editar imagen",
],
"Title" => [
0 => "Título",
],
@ -1606,6 +1621,12 @@ $translation_table = [
"Untitled image" => [
0 => "Imagen sin título",
],
"Mark this if the image is not safe for work" => [
0 => "Marca esto si la imagen no es segura para trabajo",
],
"Flag not safe" => [
0 => "Marcar no segura",
],
"Path" => [
0 => "Ruta",
],
@ -1813,12 +1834,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "No hay nada que mostrar aquí.",
],
"Edit image details" => [
0 => "Editar detalles de la imagen",
],
"Edit album details" => [
0 => "Editar detalles del álbum",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "Todas las imágenes serán trasladadas a este nuevo álbum. También puedes trasladar las imágenes a un <a class=\"modal-switch\" data-switch=\"move-existing-album\">álbum existente</a>.",
],
@ -1849,12 +1864,21 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "¿Realmente quieres marcar este contenido como no seguro?",
],
"Confirm approval" => [
0 => "Confirmar aprobación",
],
"Do you really want to approve this content? This can't be undone." => [
0 => "¿Realmente quieres eliminar todo el contenido seleccionado? Esto no se podrá deshacer.",
],
"Confirm deletion" => [
0 => "Confirmar eliminación",
],
"Do you really want to remove this content? This can't be undone." => [
0 => "¿Realmente quieres eliminar este contenido? Esto no se podrá deshacer.",
],
"Do you really want to approve all the selected content? This can't be undone." => [
0 => "Do you really want to approve all the selected content? This can't be undone.",
],
"Do you really want to remove all the selected content? This can't be undone." => [
0 => "¿Realmente quieres eliminar todo el contenido seleccionado? Esto no se podrá deshacer.",
],
@ -1969,9 +1993,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "¿Realmente quieres eliminar este álbum y todas sus imágenes? Esto no se podrá deshacer.",
],
"Delete album" => [
0 => "Eliminar álbum",
],
"You like this" => [
0 => "Te gusta esto",
],
@ -2020,9 +2041,6 @@ $translation_table = [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "El sistema analiza automáticamente cualquier contenido mediante una observación continua de la ruta %path%",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
0 => "El sistema analiza automáticamente cualquier contenido mediante una observación continua de la ruta %path%",
],
"Completed jobs will be automatically re-started after %n %m." => [
0 => "Los trabajos completados serán automáticamente reiniciados luego de %n %m.",
],
@ -2074,15 +2092,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "Todos los permisos del sistema de archivos deben estar concedidos para el usuario crontab en %path%",
],
"Required crontab entry:" => [
0 => "Entrada obligatoria de crontab:",
],
"Add import job" => [
0 => "Añadir trabajo de importación",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "Esta herramienta permite agregar contenido de manera masiva a tu sitio web al indicar una ruta de sistema con el contenido que quieres importar. Soporta la adición de usuarios, álbumes e imágenes usando una estructura de carpetas. Puedes aprender más sobre la estructura de carpetas, adición de metadata y todo lo relacionado a esta herramienta en nuestra %d.",
],
"Process import" => [
0 => "Procesar importación",
],
@ -2359,12 +2371,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "Habilita esto si quieres permitir subidas de imágenes. Esta configuración no afecta a los administradores.",
],
"Guest uploads" => [
0 => "Subidas de invitados",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Habilita esto si quieres permitir permitir que usuarios no registrados suban imágenes",
],
"Upload user interface" => [
0 => "Interfaz de subida",
],
@ -2374,6 +2380,21 @@ $translation_table = [
"route" => [
0 => "ruta",
],
"Guest uploads" => [
0 => "Subidas de invitados",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Habilita esto si quieres permitir permitir que usuarios no registrados suban imágenes",
],
"Moderate uploads" => [
0 => "Moderar subidas",
],
"Guests" => [
0 => "Invitados",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "Habilita esto para moderar las subidas entrantes. El contenido objetivo requerirá moderación para ser aprobado.",
],
"Enable embed codes (uploader)" => [
0 => "Habilitar códigos de inserción (subidas)",
],
@ -2698,6 +2719,12 @@ $translation_table = [
"Monthly limit" => [
0 => "Límite mensual",
],
"Lock %s editing" => [
0 => "Bloquear edición de %s",
],
"Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission." => [
0 => "Habilita esto para prevenir que los usuarios cambien la marca no segura para trabajo (NSFW). Cuando está habilitado, solo administrador y gerentes tendrán este permiso.",
],
"Show not safe content in listings" => [
0 => "Mostrar contenido no seguro en los listados",
],
@ -2809,18 +2836,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "Usa esto para establecer el color principal del tema. El valor debe estar en <a href=\"%s\" target=\"_blank\">formato hex</a>.",
],
"Top bar color" => [
0 => "Color de barra superior",
],
"Black" => [
0 => "Negro",
],
"White" => [
0 => "Blanco",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "Si estableces esto en \"blanco\" la barra superior y todos los tonos negros se cambiaran a tonos blancos.",
],
"Top bar button color" => [
0 => "Color de botón de barra superior",
],
@ -2839,6 +2854,12 @@ $translation_table = [
"Grey" => [
0 => "Gris",
],
"Black" => [
0 => "Negro",
],
"White" => [
0 => "Blanco",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "Color de los botones de la barra superior como el botón \"Crear cuenta\".",
],
@ -2947,8 +2968,11 @@ $translation_table = [
"Split landing + images" => [
0 => "Pág. caída + imágenes",
],
"Route explore" => [
0 => "Enrutar explorar",
"Route %s" => [
0 => "Ruta %s",
],
"upload" => [
0 => "subir",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "Selecciona el estilo de la página principal. Para personalizar más edita app/themes/%s/views/index.php",
@ -3355,6 +3379,27 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "Disqus, Facebook o lo que quieras. Será usado en la vista de imagen.",
],
"Automatically moderate the content using the %s service." => [
0 => "Moderar automáticamente el contenido usando el servicio de %s.",
],
"Automatic approve" => [
0 => "Aprobación automática",
],
"Enable this to automatically approve content moderated by this service." => [
0 => "Habilita esto para aprobar automáticamente el contenido moderado por este servicio.",
],
"Block content" => [
0 => "Bloquear contenido",
],
"Adult" => [
0 => "Adulto",
],
"Teen and adult" => [
0 => "Adolescente y adulto",
],
"Flag NSFW" => [
0 => "Marcar NSFW",
],
"Analytics code" => [
0 => "Código de analíticas",
],
@ -3397,6 +3442,9 @@ $translation_table = [
"Load full resolution" => [
0 => "Cargar tamaño completo",
],
"Do you really want to approve this image? The image will go public if you approve it." => [
0 => "¿Realmente quieres aprobar todo el contenido seleccionado? Esto no se podrá deshacer.",
],
"Added to %a and categorized in %c" => [
0 => "Agregada a %a y categorizada en %c",
],
@ -3712,9 +3760,6 @@ $translation_table = [
"Delete background" => [
0 => "Eliminar fondo",
],
"Edit profile" => [
0 => "Editar perfil",
],
"Follower" => [
0 => "Seguidor",
1 => "Seguidores",

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2018-12-25 14:55+0000',
'PO-Revision-Date' => '2018-12-25 14:55+0000',
'POT-Creation-Date' => '2020-09-02 17:16+0000',
'PO-Revision-Date' => '2020-09-02 17:16+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'he',
@ -20,13 +20,13 @@ $translation_table = [
0 => "דוא\"ל שגוי",
],
"Invalid username" => [
0 => "שם משתמש שגוי",
0 => "שגיאה בבחירת מצב אתר",
],
"Invalid password" => [
0 => "סיסמא שגוייה",
],
"Invalid website mode" => [
0 => "מצב אתר שגוי",
0 => "שגיאה בבחירת מצב אתר",
],
"From email address" => [
0 => "מכתובת דואר אלקטרוני",
@ -52,6 +52,33 @@ $translation_table = [
"Personal" => [
0 => "אישי",
],
"Installed version is v%s" => [
0 => "הגירסה הנוכחית היא %s",
],
"Can't connect to %s" => [
0 => "לא ניתן להתחבר ל- %s",
],
"Last available release is v%s" => [
0 => "יש עדכון זמין לגירסה %s",
],
"Update needed, proceeding to download" => [
0 => "מוריד עדכון חדש, אנא המתן",
],
"No update needed" => [
0 => "עדכון לא נדרש",
],
"System files already up to date" => [
0 => "קבצי מערכת נמצאו מעודכנים",
],
"Starting v%s download" => [
0 => "מתחיל בהורדת עדכון %s",
],
"Downloaded v%s, proceeding to extraction" => [
0 => "עדכון %s הורד בהצלחה, ממתין לאימות נתונים",
],
"Attempting to extract v%s" => [
0 => "עדכון %s עבר אימות בהצלחה, וכעת מתקין קבצים",
],
"Update in progress" => [
0 => "מעדכן נתונים",
],
@ -61,6 +88,150 @@ $translation_table = [
"Can't extract %s" => [
0 => "לא יכול לחלץ %s",
],
"Check the errors in the form to continue." => [
0 => "בדקו שגיאות בטופס כדי להמשיך.",
],
"You must enter the album name." => [
0 => "לא הוזן שם אלבום",
],
"Confirm" => [
0 => "אישור פעולה",
],
"Select existing album" => [
0 => "בחר לאלבום קיים",
],
"An error occurred. Please try again later." => [
0 => "התרחשה שגיאה. אנא נסו שוב מאוחר יותר.",
],
"Please select a valid image file type." => [
0 => "בחר סוג קובץ תמונה תקין.",
],
"Please select a picture of at most %s size." => [
0 => "ניתן לבחור תמונה עד גודל %s.",
],
"Profile image updated." => [
0 => "תמונת פרופיל עודכנה בהצלחה.",
],
"Profile background image updated." => [
0 => "תמונת רקע פרופיל עודכנה בהצלחה.",
],
"Profile background image deleted." => [
0 => "תמונת רקע פרופיל נמחקה בהצלחה.",
],
"Error deleting profile background image." => [
0 => "שגיאה בעת מחיקת תמונת רקע פרופיל, נסה שוב.",
],
"Passwords don't match" => [
0 => "הסיסמאות אינן תואמות",
],
"Update available v%s" => [
0 => "עדכון זמין (גירסה %s)",
],
"There is an update available for your system. You can automatic download and install this update or go to %s to proceed to download the file." => [
0 => "קיים עדכון זמין עבור המערכת. באפשרותך להוריד ולהתקין את העדכון באופן אוטומטי, או להיכנס לכתובת %s כדי להמשיך ולהוריד את הקובץ.",
],
"The release notes for this update are:" => [
0 => "הערות שחרור עבור עדכון זה:",
],
"Update now" => [
0 => "עדכן כעת",
],
"or" => [
0 => "או",
],
"cancel" => [
0 => "ביטול",
],
"This website is running latest %s version" => [
0 => "הינך נמצא בגירסה המעודכנת של מערכת %s",
],
"loading" => [
0 => "טוען נתונים",
],
"Toggle select" => [
0 => "סמן בחירה",
],
"Like" => [
0 => "לייק",
],
"Toggle flag" => [
0 => "סמן כתוכן פוגעני",
],
"Edit" => [
0 => "עריכה",
],
"Album" => [
0 => "אלבום",
1 => "אלבומים",
2 => "אלבומים",
3 => "אלבומים",
],
"Delete" => [
0 => "מחק",
],
"Close" => [
0 => "סגור",
],
"File too big." => [
0 => "הקובץ בנפח גדול",
],
"Some files couldn't be added" => [
0 => "לא ניתן להעלות קבצים מסויימים",
],
"image" => [
0 => "תמונה",
1 => "תמונות",
2 => "תמונות",
3 => "תמונות",
],
"%s's Albums" => [
0 => "האלבומים של %s",
],
"Image edited successfully." => [
0 => "שינוי פרטי התמונה עודכן בהצלחה",
],
"private" => [
0 => "פרטי",
],
"Album edited successfully." => [
0 => "שינוי פרטי האלבום עודכן בהצלחה",
],
"Invalid URL key." => [
0 => "מפתח קישור לא חוקי",
],
"Category URL key already being used." => [
0 => "מפתח קישור של קטגוריה כבר נמצא בשימוש",
],
"Category %s added." => [
0 => "קטגוריית %s נוספה בהצלחה.",
],
"Storage capacity can't be lower than its current usage (%s)." => [
0 => "קיבולת האיחסון לא יכולה להיות נמוכה מהנוכחית %s",
],
"User added successfully." => [
0 => "משתמש התווסף בהצלחה",
],
"The content has been deleted." => [
0 => "התוכן נמחק בהצלחה.",
],
"The content has been moved." => [
0 => "התמונות הועברו לאלבום בהצלחה.",
],
"Select" => [
0 => "בחירה",
],
"Unselect" => [
0 => "בטל בחירה",
],
"The content has been edited." => [
0 => "הפרטים נערכו בהצלחה.",
],
"album" => [
0 => "אלבום",
1 => "אלבומים",
2 => "אלבומים",
3 => "אלבומים",
],
"Untitled" => [
0 => "ללא כותרת",
],
@ -151,12 +322,6 @@ $translation_table = [
2 => "לייקים",
3 => "לייקים",
],
"image" => [
0 => "תמונה",
1 => "תמונות",
2 => "תמונות",
3 => "תמונות",
],
"Recent" => [
0 => "אחרונים",
],
@ -196,12 +361,6 @@ $translation_table = [
2 => "תמונות",
3 => "תמונות",
],
"Album" => [
0 => "אלבום",
1 => "אלבומים",
2 => "אלבומים",
3 => "אלבומים",
],
"User" => [
0 => "משתמש",
1 => "משתמשים",
@ -217,9 +376,6 @@ $translation_table = [
"Internal" => [
0 => "חיצוני",
],
"Storage capacity can't be lower than its current usage (%s)." => [
0 => "קיבולת האיחסון לא יכולה להיות נמוכה מהנוכחית %s",
],
"Unlimited" => [
0 => "בלתי מוגבל",
],
@ -256,9 +412,6 @@ $translation_table = [
"There is an update available for your Chevereto based website." => [
0 => "קיים עדכון זמין עבור אתר האינטרנט שלך מבוסס Chevereto.",
],
"The release notes for this update are:" => [
0 => "הערות שחרור עבור עדכון זה:",
],
"admin dashboard" => [
0 => "פאנל ניהול",
],
@ -268,21 +421,6 @@ $translation_table = [
"We use our own and third party cookies to improve your browsing experience and our services. If you continue using our website is understood that you accept this %cookie_policy_link." => [
0 => "<b>באתר זה נעשה שימוש בקבצי cookie כדי לשפר את חווית הגלישה שלכם.</b>\nלמידע נוסף על האופן שבו אנו משתמשים בקבצי cookies, עיינו במדיניות הפרטיות שלנו. במידה ותמשיכו להשתמש באתר שלנו, אתם מסכימים לשימוש כזה בקבצי %cookie_policy_link",
],
"You have been forbidden to use this website." => [
0 => "נחסמת זמנית לכניסה למערכת.",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "הרגישו חופשיים לעיין ולראות את כל האלבומים והתמונות המשותפים שלי.",
],
"View all my images" => [
0 => "צפייה בכל התמונות שלי",
],
"Plugin" => [
0 => "תוספים",
],
"That page doesn't exist" => [
0 => "הדף אינו קיים.",
],
"Forgot password?" => [
0 => "שכחתי סיסמא?",
],
@ -328,15 +466,9 @@ $translation_table = [
"Welcome to %s" => [
0 => "ברוכים הבאים ל%s",
],
"Passwords don't match" => [
0 => "הסיסמאות אינן תואמות",
],
"Email already being used" => [
0 => "דוא\"ל כבר בשימוש",
],
"Check the errors in the form to continue." => [
0 => "בדקו שגיאות בטופס כדי להמשיך.",
],
"Password required" => [
0 => "נדרשת סיסמא",
],
@ -550,9 +682,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "צבע עיקרי של ערכת הנושא לא חוקי",
],
"Invalid theme top bar color" => [
0 => "צבע באר עליון של ערכת הנושא לא חוקי",
],
"Invalid theme top bar button color" => [
0 => "צבע כפתור הבאר העליון של ערכת הנושא לא חוקי",
],
@ -703,9 +832,6 @@ $translation_table = [
"Sign in" => [
0 => "היכנס",
],
"Logged out" => [
0 => "התנתק",
],
"Upload images" => [
0 => "העלה תמונות",
],
@ -772,9 +898,6 @@ $translation_table = [
"%s's Images" => [
0 => "התמונות של %s",
],
"%s's Albums" => [
0 => "האלבומים של %s",
],
"Results for" => [
0 => "תוצאות עבור",
],
@ -796,9 +919,6 @@ $translation_table = [
"Discovery" => [
0 => "גלה עוד",
],
"Close" => [
0 => "סגור",
],
"Advanced search" => [
0 => "חיפוש מתקדם",
],
@ -811,9 +931,6 @@ $translation_table = [
"Notifications" => [
0 => "התראות",
],
"loading" => [
0 => "טוען נתונים",
],
"You don't have notifications" => [
0 => "אין התראות חדשות",
],
@ -958,12 +1075,6 @@ $translation_table = [
"Uploading" => [
0 => "בהעלאה..",
],
"or" => [
0 => "או",
],
"cancel" => [
0 => "ביטול",
],
"cancel remaining" => [
0 => "בטל את העלאה",
],
@ -982,15 +1093,9 @@ $translation_table = [
"copy" => [
0 => "העתק",
],
"Edit" => [
0 => "עריכה",
],
"Remove" => [
0 => "הסרה",
],
"Edit image" => [
0 => "עריכת תמונה",
],
"Title" => [
0 => "כותרת",
],
@ -1048,12 +1153,6 @@ $translation_table = [
"Error report" => [
0 => "דוח שגיאות",
],
"album" => [
0 => "אלבום",
1 => "אלבומים",
2 => "אלבומים",
3 => "אלבומים",
],
"Viewer links" => [
0 => "קישורים ישירים (מקוצר)",
],
@ -1309,9 +1408,6 @@ $translation_table = [
"Flag as safe" => [
0 => "סמן כתוכן מאושר",
],
"Delete" => [
0 => "מחק",
],
"Create new album" => [
0 => "צור אלבום חדש",
],
@ -1321,12 +1417,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "לא נמצאו נתונים.",
],
"Edit image details" => [
0 => "עריכת פרטי תמונה",
],
"Edit album details" => [
0 => "עריכת פרטי האלבום",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "כל התמונות יועברו לאלבום החדש. ניתן גם להעביר תמונות <a class=\"modal-switch\" data-switch=\"move-existing-album\">מאלבום קיים</a>",
],
@ -1378,9 +1468,6 @@ $translation_table = [
"Keyboard shortcuts" => [
0 => "קיצורי דרך במקלדת",
],
"Like" => [
0 => "לייק",
],
"Uploaded by guest" => [
0 => "הועלה על ידי אורח",
],
@ -1393,12 +1480,12 @@ $translation_table = [
"by %u" => [
0 => "מאת %u",
],
"Select" => [
0 => "בחירה",
],
"Toggle unsafe flag" => [
0 => "אפשרות דגל לא בטוח",
],
"That page doesn't exist" => [
0 => "הדף אינו קיים.",
],
"The requested page was not found." => [
0 => "הדף המבוקש אינו נמצא",
],
@ -1408,9 +1495,6 @@ $translation_table = [
"The user has been deleted" => [
0 => "המשתמש נמחק",
],
"The content has been deleted." => [
0 => "התוכן נמחק בהצלחה.",
],
"Your account is almost ready" => [
0 => "החשבון שלך כמעט מוכן",
],
@ -1477,9 +1561,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "האם הינך בטוח במחיקת האלבום כולל התמונות? לא ניתן לבטל פעולה זו.",
],
"Delete album" => [
0 => "מחיקת אלבום",
],
"You like this" => [
0 => "אהבת את זה",
],
@ -1504,15 +1585,15 @@ $translation_table = [
"Disk used" => [
0 => "שימוש דיסק",
],
"Cancel" => [
0 => "ביטול",
],
"Errors" => [
0 => "שגיאות",
],
"Status" => [
0 => "סטטוס",
],
"Cancel" => [
0 => "ביטול",
],
"Add user" => [
0 => "הוספת משתמש",
],
@ -1882,9 +1963,6 @@ $translation_table = [
"Split landing + images" => [
0 => "דף נחיתה + תמונות אחרונות",
],
"Route explore" => [
0 => "דף סיור",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "בחר את סגנון דף הבית. כדי להתאימו אישית יש לערוך את הקובץ app/themes/%s/views/index.php",
],
@ -2011,6 +2089,9 @@ $translation_table = [
"Don't have an account? <a href='%s'>Sign up</a> now." => [
0 => "אין לך משתמש? <a href='%s'>הירשם עכשיו</a>.",
],
"Logged out" => [
0 => "התנתק",
],
"You have been logged off %s. Hope to see you soon." => [
0 => "התנתקת בהצלחה ממערכת %s, מקווים לראותך בקרוב",
],
@ -2116,6 +2197,12 @@ $translation_table = [
"Tell us a little bit about you" => [
0 => "ספר בקצרה מי אתה !!",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "הרגישו חופשיים לעיין ולראות את כל האלבומים והתמונות המשותפים שלי.",
],
"View all my images" => [
0 => "צפייה בכל התמונות שלי",
],
"Login" => [
0 => "התחבר",
],
@ -2152,9 +2239,6 @@ $translation_table = [
"Delete background" => [
0 => "מחק רקע",
],
"Edit profile" => [
0 => "ערוך פרופיל",
],
"Follower" => [
0 => "עוקבים",
1 => "עוקבים",
@ -2164,6 +2248,12 @@ $translation_table = [
"Follow" => [
0 => "לעקוב",
],
"You have been forbidden to use this website." => [
0 => "נחסמת זמנית לכניסה למערכת.",
],
"Plugin" => [
0 => "תוספים",
],
"General questions/comments" => [
0 => "שאלות כלליות\\הערות",
],
@ -2194,111 +2284,6 @@ $translation_table = [
"Subject" => [
0 => "נושא",
],
"Installed version is v%s" => [
0 => "הגירסה הנוכחית היא %s",
],
"Last available release is v%s" => [
0 => "יש עדכון זמין לגירסה %s",
],
"Update needed, proceeding to download" => [
0 => "מוריד עדכון חדש, אנא המתן",
],
"No update needed" => [
0 => "עדכון לא נדרש",
],
"Starting v%s download" => [
0 => "התחיל בהורדת עדכון %s",
],
"Downloaded v%s, proceeding to extraction" => [
0 => "עדכון %s הורד בהצלחה, ממתין לאימות נתונים",
],
"Attempting to extract v%s" => [
0 => "עדכון %s עבר אימות בהצלחה, וכעת מתקין קבצים",
],
"You must enter the album name." => [
0 => "לא הוזן שם אלבום",
],
"Confirm" => [
0 => "אישור פעולה",
],
"Select existing album" => [
0 => "בחר לאלבום קיים",
],
"An error occurred. Please try again later." => [
0 => "התרחשה שגיאה. אנא נסו שוב מאוחר יותר.",
],
"Please select a valid image file type." => [
0 => "בחר סוג קובץ תמונה תקין.",
],
"Please select a picture of at most %s size." => [
0 => "ניתן לבחור תמונה עד גודל %s.",
],
"Profile image updated." => [
0 => "תמונת פרופיל עודכנה בהצלחה.",
],
"Profile background image updated." => [
0 => "תמונת רקע פרופיל עודכנה בהצלחה.",
],
"Profile background image deleted." => [
0 => "תמונת רקע פרופיל נמחקה בהצלחה.",
],
"Error deleting profile background image." => [
0 => "שגיאה בעת מחיקת תמונת רקע פרופיל, נסה שוב.",
],
"Update available v%s" => [
0 => "עדכון זמין (גירסה %s)",
],
"There is an update available for your system. You can automatic download and install this update or go to %s to proceed to download the file." => [
0 => "קיים עדכון זמין עבור המערכת. באפשרותך להוריד ולהתקין את העדכון באופן אוטומטי, או להיכנס לכתובת %s כדי להמשיך ולהוריד את הקובץ.",
],
"Update now" => [
0 => "עדכן כעת",
],
"This website is running latest %s version" => [
0 => "הינך נמצא בגירסה המעודכנת של מערכת %s",
],
"Toggle select" => [
0 => "סמן בחירה",
],
"Toggle flag" => [
0 => "סמן כתוכן פוגעני",
],
"File too big." => [
0 => "הקובץ בנפח גדול",
],
"Some files couldn't be added" => [
0 => "לא ניתן להעלות קבצים מסויימים",
],
"Image edited successfully." => [
0 => "שינוי פרטי התמונה עודכן בהצלחה",
],
"private" => [
0 => "פרטי",
],
"Album edited successfully." => [
0 => "שינוי פרטי האלבום עודכן בהצלחה",
],
"Invalid URL key." => [
0 => "מפתח קישור לא חוקי",
],
"Category URL key already being used." => [
0 => "מפתח קישור של קטגוריה כבר נמצא בשימוש",
],
"Category %s added." => [
0 => "קטגוריית %s נוספה בהצלחה.",
],
"User added successfully." => [
0 => "משתמש התווסף בהצלחה",
],
"The content has been moved." => [
0 => "התמונות הועברו לאלבום בהצלחה.",
],
"Unselect" => [
0 => "בטל בחירה",
],
"The content has been edited." => [
0 => "הפרטים נערכו בהצלחה.",
],
"All the changes that you have made will be lost if you continue." => [
0 => "השינויים שביצעת לא נשמרו. האם להמשיך?",
],

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-04-16 20:33+0000',
'PO-Revision-Date' => '2020-04-16 20:33+0000',
'POT-Creation-Date' => '2020-09-02 17:14+0000',
'PO-Revision-Date' => '2020-09-02 17:14+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'ja',
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "確認",
],
"The content has been approved." => [
0 => "コンテンツは承認されました。",
],
"Select existing album" => [
0 => "既に存在するアルバムを選択",
],
@ -190,6 +193,9 @@ $translation_table = [
"Album" => [
0 => "アルバム",
],
"Approve" => [
0 => "承認",
],
"Delete" => [
0 => "削除",
],
@ -415,6 +421,15 @@ $translation_table = [
"User" => [
0 => "ユーザ",
],
"adult" => [
0 => "アダルト",
],
"teen" => [
0 => "未成年",
],
"Content of type %s is forbidden" => [
0 => "コンテンツタイプ %s は許可されていません。",
],
"Can't create %s destination dir" => [
0 => "転送先ディレクトリ %s が作成できません。",
],
@ -778,9 +793,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "画像ビューア内上部 (画像ページ)",
],
"Expected banner size 728x90" => [
0 => "バナーサイズは 728x90を想定",
],
"Inside viewer foot (image page)" => [
0 => "画像ビューア内下部(画像ページ)",
],
@ -868,9 +880,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "無効なメインカラーです。",
],
"Invalid theme top bar color" => [
0 => "無効なトップバーの色です。",
],
"Invalid theme top bar button color" => [
0 => "無効なトップバーのボタンの色です。",
],
@ -1111,6 +1120,9 @@ $translation_table = [
"Sign in" => [
0 => "サインイン",
],
"Moderate" => [
0 => "判定",
],
"Upload images" => [
0 => "画像をアップロード",
],
@ -1390,6 +1402,12 @@ $translation_table = [
"close" => [
0 => "閉じる",
],
"Note" => [
0 => "ノート",
],
"We must approve the uploaded content before being able to share." => [
0 => "アップロードされた内容が承認されてから、共有できるようにしなければなりません。",
],
"copy" => [
0 => "コピー",
],
@ -1399,9 +1417,6 @@ $translation_table = [
"Remove" => [
0 => "削除",
],
"Edit image" => [
0 => "画像の編集",
],
"Title" => [
0 => "タイトル",
],
@ -1591,6 +1606,12 @@ $translation_table = [
"Untitled image" => [
0 => "画像のタイトルを入力",
],
"Mark this if the image is not safe for work" => [
0 => "画像が安全に作業できない場合には、マークを付けてください。",
],
"Flag not safe" => [
0 => "安全ではない印",
],
"Path" => [
0 => "パス",
],
@ -1798,12 +1819,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "表示するものはありません。",
],
"Edit image details" => [
0 => "画像の詳細の編集",
],
"Edit album details" => [
0 => "アルバムの詳細の編集",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "すべての画像は最新のアルバムへ移動されます。 <a class=\"modal-switch\" data-switch=\"move-existing-album\">既に存在する他のアルバム</a>へ移動することもできます。",
],
@ -1834,12 +1849,21 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "このコンテンツが本当にファミリーセーフティに接触するとマークしますか?",
],
"Confirm approval" => [
0 => "承認を確認",
],
"Do you really want to approve this content? This can't be undone." => [
0 => "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。",
],
"Confirm deletion" => [
0 => "削除の確認",
],
"Do you really want to remove this content? This can't be undone." => [
0 => "このコンテンツを本当に削除しますか?一度削除すると元には戻せません。",
],
"Do you really want to approve all the selected content? This can't be undone." => [
0 => "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。",
],
"Do you really want to remove all the selected content? This can't be undone." => [
0 => "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。",
],
@ -1954,9 +1978,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "本当にこのアルバムとアルバムにある全ての画像を削除しますか?削除すると元には戻せません。",
],
"Delete album" => [
0 => "アルバムを削除する",
],
"You like this" => [
0 => "いいね!しました",
],
@ -2005,9 +2026,6 @@ $translation_table = [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "システムは、 パス %path% を継続的に観測することで自動的にコンテンツの解析を行います。",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
0 => "システムは、継続的にパス %path% 内のコンテンツを自動的に解析します。",
],
"Completed jobs will be automatically re-started after %n %m." => [
0 => "完了したジョブは、%n %m 後に自動的に開始します。",
],
@ -2059,15 +2077,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "crontabユーザーへ %path% へのファイルシステムにアクセスする権利を付与してください。",
],
"Required crontab entry:" => [
0 => "crontabが必要です",
],
"Add import job" => [
0 => "インポートジョブに追加",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "このツールは、インポートするコンテンツのパスが指定された場合、一括でサイトに追加をします。また、ユーザー、アルバム、画像をフォルダ形式として使用できます。メタデータやツール内で提供されるものについてのフォルダ形式は、%dに詳細があります。",
],
"Process import" => [
0 => "インポート処理",
],
@ -2344,12 +2356,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "画像のアップロードを許可する場合には有効にしてください。この設定は管理者へ影響しません。",
],
"Guest uploads" => [
0 => "ゲストとしてアップロード",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "未登録ユーザのアップロードを許可するときに有効にしてください。",
],
"Upload user interface" => [
0 => "アップロード用ユーザインターフェース",
],
@ -2359,6 +2365,21 @@ $translation_table = [
"route" => [
0 => "ルート",
],
"Guest uploads" => [
0 => "ゲストとしてアップロード",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "未登録ユーザのアップロードを許可するときに有効にしてください。",
],
"Moderate uploads" => [
0 => "アップロードを判定",
],
"Guests" => [
0 => "ゲスト",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "これを有効にすると、アップロードを判定することができます。対象となるコンテンツは、承認のための判定が必要になります。",
],
"Enable embed codes (uploader)" => [
0 => "埋込みコード(アップロードしたユーザへのリンク)を有効にします。",
],
@ -2683,6 +2704,12 @@ $translation_table = [
"Monthly limit" => [
0 => "1ヶ月の許容量",
],
"Lock %s editing" => [
0 => "%s の編集をロック ",
],
"Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission." => [
0 => "これを有効にすると、ユーザーがNSFWフラグを変更できなくなります。有効にすると、管理者と管理者のみがこの権限を持つことになります。",
],
"Show not safe content in listings" => [
0 => "リスト中にファミリーセーフティに接触するコンテンツが含まれている場合でも表示する",
],
@ -2794,18 +2821,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "メインのテーマ色を設定するにはこちらをご利用ください。値は、<a href=\"%s\" target=\"_blank\">16進数</a>で入力する必要があります。",
],
"Top bar color" => [
0 => "トップバーの色",
],
"Black" => [
0 => "",
],
"White" => [
0 => "",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "カラーを白にセットすると、トップバーなど全ての黒系は、全て白系に変わります。",
],
"Top bar button color" => [
0 => "トップバーのボタンの色",
],
@ -2824,6 +2839,12 @@ $translation_table = [
"Grey" => [
0 => "灰色",
],
"Black" => [
0 => "",
],
"White" => [
0 => "",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "トップの”アカウントを作成”ボタンなどの色を設定します。",
],
@ -2932,8 +2953,11 @@ $translation_table = [
"Split landing + images" => [
0 => "ランディング + 画像 を分割",
],
"Route explore" => [
0 => "「もっと見る」の最初のページ",
"Route %s" => [
0 => "ルート%s",
],
"upload" => [
0 => "アップロード",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "ホームページのスタイルを選択。 カスタマイズを行う場合は app/themes/%s/views/index.php を編集します。",
@ -3340,6 +3364,27 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "Disqus,Facebookなどが必要な場合には、イメージ表示を使って下さい。",
],
"Automatically moderate the content using the %s service." => [
0 => "%s を使用してコンテンツを自動で判定する。",
],
"Automatic approve" => [
0 => "自動承認",
],
"Enable this to automatically approve content moderated by this service." => [
0 => "このサービスによってモデレートされたコンテンツを自動的に承認するには、これを有効にします。",
],
"Block content" => [
0 => "コンテンツをブロック",
],
"Adult" => [
0 => "アダルト",
],
"Teen and adult" => [
0 => "未成年とアダルト",
],
"Flag NSFW" => [
0 => "NSFW印",
],
"Analytics code" => [
0 => "アクセス解析用コード",
],
@ -3382,6 +3427,9 @@ $translation_table = [
"Load full resolution" => [
0 => "最大解像度で表示",
],
"Do you really want to approve this image? The image will go public if you approve it." => [
0 => "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。",
],
"Added to %a and categorized in %c" => [
0 => "%a へ追加してカテゴリ名: %c に分類",
],
@ -3697,9 +3745,6 @@ $translation_table = [
"Delete background" => [
0 => "背景の削除",
],
"Edit profile" => [
0 => "プロフィールの編集",
],
"Follower" => [
0 => "フォロワー",
],

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-05-16 19:37+0000',
'PO-Revision-Date' => '2020-05-16 19:37+0000',
'POT-Creation-Date' => '2020-09-25 18:53+0000',
'PO-Revision-Date' => '2020-09-25 18:53+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'ko',
@ -20,13 +20,13 @@ $translation_table = [
0 => "이메일 주소가 잘못되었습니다",
],
"Invalid username" => [
0 => "사용자 이름이 잘못되었습니다",
0 => "잘못된 사용자명",
],
"Invalid password" => [
0 => "비밀번호가 잘못되었습니다",
0 => "잘못된 암호",
],
"Invalid website mode" => [
0 => "웹사이트 모드가 잘못되었습니다",
0 => "잘못된 웹사이트 모드",
],
"From email address" => [
0 => "보내는 이메일 주소",
@ -47,10 +47,10 @@ $translation_table = [
0 => "웹사이트 모드는 언제든지 바꿀 수 있습니다.",
],
"Community" => [
0 => "커뮤니티",
0 => "모임",
],
"Personal" => [
0 => "개인",
0 => "개인",
],
"Installed version is v%s" => [
0 => "설치된 버전은 v%s 입니다",
@ -71,7 +71,7 @@ $translation_table = [
0 => "시스템 파일이 이미 최신 상태입니다",
],
"Starting v%s download" => [
0 => "v%s 다운로드를 시작하는입니다",
0 => "v%s 버전 다운로드를 시작 중",
],
"Downloaded v%s, proceeding to extraction" => [
0 => "v%s 을(를) 다운로드했습니다. 압축을 해제하는 중입니다",
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "확인",
],
"The content has been approved." => [
0 => "게시물을 승인하였습니다.",
],
"Select existing album" => [
0 => "기존 앨범 선택하기",
],
@ -131,7 +134,7 @@ $translation_table = [
0 => "오류가 발생했습니다. 잠시 후에 다시 시도해주세요.",
],
"Please select a valid image file type." => [
0 => "올바른 이미지 파일 유형을 선택해주세요.",
0 => "올바른 이미지 파일 유형을 선택하십시오.",
],
"Please select a picture of at most %s size." => [
0 => "최대 %s 크기의 이미지를 선택해주세요.",
@ -152,16 +155,16 @@ $translation_table = [
0 => "비밀번호가 일치하지 않습니다",
],
"Update available v%s" => [
0 => "v%s 업데이트가 가능합니다",
0 => "v%s 버전 업데이트가 가능합니다",
],
"There is an update available for your system. You can automatic download and install this update or go to %s to proceed to download the file." => [
0 => "시스템에 적용할 수 있는 업데이트가 발견되었습니다. 이 업데이트를 자동으로 다운로드하여 설치하거나 %s로(으로) 이동하여 파일 다운로드할 수 있습니다.",
0 => "시스템에 적용할 수 있는 업데이트가 발견되었습니다. 이 업데이트를 자동으로 다운로드하여 설치하거나 %s 로(으로) 이동하여 파일 다운로드를 진행할 수 있습니다.",
],
"The release notes for this update are:" => [
0 => "이 업데이트의 릴리즈 노트는 다음과 같습니다:",
],
"Update now" => [
0 => "지금 업데이트 하기",
0 => "업데이트 하기",
],
"or" => [
0 => "또는",
@ -173,7 +176,7 @@ $translation_table = [
0 => "이 웹사이트는 최신 %s 버전을 사용 중입니다",
],
"loading" => [
0 => "로딩",
0 => "불러오는",
],
"Toggle select" => [
0 => "선택 토글",
@ -190,6 +193,9 @@ $translation_table = [
"Album" => [
0 => "앨범",
],
"Approve" => [
0 => "승인",
],
"Delete" => [
0 => "삭제",
],
@ -218,7 +224,7 @@ $translation_table = [
0 => "이미지",
],
"%s's Albums" => [
0 => "%s의 앨범",
0 => "%s의 앨범",
],
"Image edited successfully." => [
0 => "이미지 편집이 완료되었습니다.",
@ -335,7 +341,7 @@ $translation_table = [
0 => "링크",
],
"Password" => [
0 => "비밀번",
0 => "",
],
"view" => [
0 => "조회",
@ -374,10 +380,10 @@ $translation_table = [
0 => "좋아요",
],
"Recent" => [
0 => "최신",
0 => "최신 게시물",
],
"Trending" => [
0 => "",
0 => "",
],
"Top users" => [
0 => "최고 사용자",
@ -398,7 +404,7 @@ $translation_table = [
0 => "인기순",
],
"Explore" => [
0 => "둘러보기",
0 => "탐색",
],
"Animated" => [
0 => "움짤",
@ -415,6 +421,12 @@ $translation_table = [
"User" => [
0 => "사용자",
],
"adult" => [
0 => "성인",
],
"teen" => [
0 => "미성년자",
],
"Can't create %s destination dir" => [
0 => "%s 목적지 디렉터리를 찾을 수 없습니다",
],
@ -488,13 +500,13 @@ $translation_table = [
0 => "이 웹사이트는 개인화되고 맞춤화된 서비스를 제공하기 위해서, 사용자의 정보를 저장하고 수시로 불러오는 쿠키(cookie)를 사용합니다. 웹사이트 이용을 계속하는 것은 %cookie_policy_link에 동의하는 것으로 간주합니다.",
],
"I understand" => [
0 => "동의합니다",
0 => "동의합니다.",
],
"Forgot password?" => [
0 => "비밀번호를 잊으셨나요?",
0 => "호를 잊으셨나요?",
],
"Reset password" => [
0 => "비밀번호 재설정하기",
0 => "암호 재설정",
],
"Resend account activation" => [
0 => "계정 활성화 메일 다시보내기",
@ -515,19 +527,19 @@ $translation_table = [
0 => "이메일 주소가 없는 사용자입니다.",
],
"Request denied" => [
0 => "요청이 거부되었습니다",
0 => "요청이 거부",
],
"Account needs to be activated to use this feature" => [
0 => "이 기능을 사용하려면 계정이 활성화되어야 합니다",
],
"Account already activated" => [
0 => "계정이 이미 활성화되었습니다",
0 => "계정이 이미 활성화",
],
"Allow up to 15 minutes for the email. You can try again later." => [
0 => "이메일을 다시 보내기 위해서는 최대 15분이 필요합니다. 잠시 후에 다시 시도해주세요.",
],
"Reset your password at %s" => [
0 => "%s의 비밀번호 재설정 하기",
0 => "귀하의 암호 재설정하기 - %s",
],
"Confirmation required at %s" => [
0 => "%s에서 확인해주셔야 할 내용이 있습니다.",
@ -539,7 +551,7 @@ $translation_table = [
0 => "이메일 주소가 이미 사용 중입니다",
],
"Password required" => [
0 => "비밀번호가 필요합니다",
0 => "암호 필요",
],
"Share" => [
0 => "공유하기",
@ -578,10 +590,10 @@ $translation_table = [
0 => "업데이트 설치하기",
],
"check for updates" => [
0 => "업데이트 검사하기",
0 => "업데이트 확인하기",
],
"Support" => [
0 => "고객지원",
0 => "지원",
],
"Need help? Go to %s and you will get help quickly." => [
0 => "도움이 필요하세요? %s을 방문하시면 빠르게 도움을 받을 수 있습니다.",
@ -665,7 +677,7 @@ $translation_table = [
0 => "이미지 업로드",
],
"Categories" => [
0 => "카테고리",
0 => "범주",
],
"Consent screen" => [
0 => "동의 화면",
@ -695,7 +707,7 @@ $translation_table = [
0 => "외부 저장소",
],
"Email" => [
0 => "이메일",
0 => "전자우편",
],
"Social networks" => [
0 => "소셜 네트워크",
@ -778,9 +790,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "뷰어의 상단 (이미지 페이지)",
],
"Expected banner size 728x90" => [
0 => "배너 크기 공간 728x90",
],
"Inside viewer foot (image page)" => [
0 => "뷰어의 하단 (이미지 페이지)",
],
@ -863,14 +872,11 @@ $translation_table = [
0 => "값이 잘못되었습니다",
],
"Invalid theme tone" => [
0 => "테마 톤이 잘못되었습니다",
0 => "잘못된 테마 톤",
],
"Invalid theme main color" => [
0 => "테마 주 색상이 잘못되었습니다",
],
"Invalid theme top bar color" => [
0 => "테마 상단 바 색상이 잘못되었습니다",
],
"Invalid theme top bar button color" => [
0 => "테마 상단 바 버튼 색상이 잘못되었습니다",
],
@ -1111,6 +1117,9 @@ $translation_table = [
"Sign in" => [
0 => "로그인",
],
"Moderate" => [
0 => "중재하기",
],
"Upload images" => [
0 => "이미지 업로드",
],
@ -1148,19 +1157,19 @@ $translation_table = [
0 => "웹사이트가 잘못되었습니다",
],
"Wrong password" => [
0 => "비밀번호가 일치하지 않습니다",
0 => "틀린 암호",
],
"Use a new password" => [
0 => "새로운 비밀번호 사용하기",
0 => "새로운 호 사용하기",
],
"Changes have been saved." => [
0 => "변경 사항이 저장되었습니다.",
],
"Password has been changed" => [
0 => "비밀번호가 변경되었습니다",
0 => "암호가 변경되었습니다.",
],
"Password has been created." => [
0 => "비밀번호가 생성되었습니다",
0 => "암호가 생성되었습니다.",
],
"Wrong Username/Email values" => [
0 => "사용자 이름 또는 이메일 주소가 잘못되었습니다",
@ -1390,6 +1399,9 @@ $translation_table = [
"close" => [
0 => "닫기",
],
"Note" => [
0 => "비고",
],
"copy" => [
0 => "복사",
],
@ -1399,9 +1411,6 @@ $translation_table = [
"Remove" => [
0 => "제거",
],
"Edit image" => [
0 => "이미지 편집",
],
"Title" => [
0 => "제목",
],
@ -1565,10 +1574,10 @@ $translation_table = [
0 => "비공개(링크)",
],
"Private (password protected)" => [
0 => "비공개(비밀번호)",
0 => "비공개 (암호로 보호 됨)",
],
"Album password" => [
0 => "앨범 비밀번",
0 => "앨범 ",
],
"Name" => [
0 => "이름",
@ -1591,6 +1600,9 @@ $translation_table = [
"Untitled image" => [
0 => "제목 없는 이미지",
],
"Flag not safe" => [
0 => "미안전 표기",
],
"Path" => [
0 => "경로",
],
@ -1733,7 +1745,7 @@ $translation_table = [
0 => "서버 사용자 이름",
],
"Server password" => [
0 => "서버 비밀번",
0 => "서버 ",
],
"Local path" => [
0 => "내부 경로",
@ -1798,12 +1810,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "볼 수 있는 게시물이 없습니다.",
],
"Edit image details" => [
0 => "이미지 속성 편집하기",
],
"Edit album details" => [
0 => "앨범 속성 편집하기",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "모든 이미지는 새로 만든 앨범으로 이동됩니다. 또는 <a class=\"modal-switch\" data-switch=\"move-existing-album\">기존 앨범</a>으로 이동시킬 수 있습니다.",
],
@ -1834,6 +1840,9 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "선택한 게시물에 후방주의 플래그를 설정하시겠습니까?",
],
"Confirm approval" => [
0 => "승인 확인",
],
"Confirm deletion" => [
0 => "삭제 확인",
],
@ -1844,10 +1853,10 @@ $translation_table = [
0 => "선택한 게시물을 삭제하시겠습니까? 이 작업은 원래대로 되돌릴 수 없습니다.",
],
"Fullscreen" => [
0 => "전체 화면",
0 => "전체화면",
],
"Exit fullscreen" => [
0 => "전체 화면 나가기",
0 => "전체화면 나가기",
],
"Guest" => [
0 => "손님",
@ -1859,7 +1868,7 @@ $translation_table = [
0 => "비공개 앨범",
],
"Password protected" => [
0 => "비밀번호 보호",
0 => "암호로 보호 됨",
],
"Uploaded by guest" => [
0 => "손님의 업로드",
@ -1940,7 +1949,7 @@ $translation_table = [
0 => "최소 %d개의 문자를 입력해주세요",
],
"Password strength" => [
0 => "비밀번호 강도",
0 => "호 강도",
],
"Re-enter your new password" => [
0 => "새로운 비밀번호를 다시 입력해주세요",
@ -1954,9 +1963,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "이 앨범과 앨범의 모든 이미지를 삭제하시겠습니까? 이 작업은 원래대로 되돌릴 수 없습니다.",
],
"Delete album" => [
0 => "앨범 삭제하기",
],
"You like this" => [
0 => "좋아하는 게시물입니다",
],
@ -2005,9 +2011,6 @@ $translation_table = [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "시스템은 %path% 경로를 지속적으로 감시하여 자동으로 내용물을 구문 분석합니다.",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
0 => "시스템은 %path% 경로를 지속적으로 감시하여 자동으로 내용물을 구문분석(파싱)합니다.",
],
"Completed jobs will be automatically re-started after %n %m." => [
0 => "완료된 작업은 %n %m 후에 자동으로 재시작됩니다.",
],
@ -2021,13 +2024,13 @@ $translation_table = [
0 => "작업 중",
],
"Paused" => [
0 => "일시중지",
0 => "멈춤",
],
"Canceled" => [
0 => "취소",
0 => "취소",
],
"Completed" => [
0 => "완료",
0 => "완료",
],
"Actions" => [
0 => "액션",
@ -2036,7 +2039,7 @@ $translation_table = [
0 => "재설정",
],
"Pause" => [
0 => "일시중지",
0 => "멈춤",
],
"Resume" => [
0 => "재시작",
@ -2059,15 +2062,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "crontab 사용자에게 %path% 경로의 모든 파일 시스템 권한을 부여해야 합니다.",
],
"Required crontab entry:" => [
0 => "필수 crontab 항목:",
],
"Add import job" => [
0 => "가져오기 작업 추가하기",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "이 도구를 사용하면 가져올 내용물의 시스템 경로를 지정하여 웹사이트에 내용물을 대량으로 추가할 수 있습니다. 폴더 기반 구조를 사용하여 사용자, 앨범 및 이미지의 추가를 지원합니다. 폴더 구조, 메타데이터 추가 및 이 도구에 대한 모든 정보에 대해 더 알아보려면 %d를 참조해주세요.",
],
"Process import" => [
0 => "가져오기 실행하기",
],
@ -2099,13 +2096,13 @@ $translation_table = [
0 => "사용자 추가",
],
"Role" => [
0 => "권한",
0 => "역할",
],
"Manager" => [
0 => "운영",
0 => "관리",
],
"Administrator" => [
0 => "관리자",
0 => "최고관리자",
],
"Email address" => [
0 => "이메일 주소",
@ -2237,16 +2234,16 @@ $translation_table = [
0 => "활성 페이지에만 액세스할 수 있습니다.",
],
"Type" => [
0 => "종류",
0 => "유형",
],
"Terms of service" => [
0 => "이용 약관",
0 => "이용약관",
],
"Privacy" => [
0 => "개인 정보 보호 정책",
],
"Contact" => [
0 => "문의하기",
0 => "문의",
],
"Extra page" => [
0 => "추가 페이지",
@ -2344,12 +2341,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "이미지 업로드를 허용하려면 이 옵션을 활성화로 설정해주세요. 이 설정은 관리자에게 영향을 주지 않습니다.",
],
"Guest uploads" => [
0 => "손님 업로드",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "미등록 사용자의 업로드를 허용하려면 이 옵션을 활성화로 설정해주세요.",
],
"Upload user interface" => [
0 => "업로드 사용자 인터페이스",
],
@ -2359,6 +2350,21 @@ $translation_table = [
"route" => [
0 => "라우팅",
],
"Guest uploads" => [
0 => "손님 업로드",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "미등록 사용자의 업로드를 허용하려면 이 옵션을 활성화로 설정해주세요.",
],
"Moderate uploads" => [
0 => "올려놓기 중재",
],
"Guests" => [
0 => "손님",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "활성화하면 올려놓기 요청을 중재합니다. 대상 게시물은 중재를 통한 승인이 요구됩니다.",
],
"Enable embed codes (uploader)" => [
0 => "퍼가기 코드 활성화 (업로드 창)",
],
@ -2627,7 +2633,7 @@ $translation_table = [
0 => "사용자의 URL을 %s/user/username 대신 %s/username을 사용하려면 이 옵션을 활성화로 설정해주세요.",
],
"Require email confirmation" => [
0 => "이메일 인증 요청",
0 => "전자우편 확인 요구",
],
"Enable this if users must validate their email address on sign up." => [
0 => "가입시 사용자의 이메일 주소 정상 여부를 확인하려면 이 옵션을 활성화로 설정해주세요.",
@ -2683,6 +2689,9 @@ $translation_table = [
"Monthly limit" => [
0 => "월간 업로드 제한",
],
"Lock %s editing" => [
0 => "%s의 편집 잠금",
],
"Show not safe content in listings" => [
0 => "목록에 후방주의 게시물 노출",
],
@ -2756,7 +2765,7 @@ $translation_table = [
0 => "각 대상 기기에 따라 사용되는 목록의 칼럼 개수를 설정할 수 있습니다.",
],
"Phone" => [
0 => "스마트폰",
0 => "전화",
],
"Phablet" => [
0 => "패블릿",
@ -2794,18 +2803,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "주 테마 색상을 설정하려면 이 옵션을 설정해주세요. 설정 값은 <a href=\"%s\" target=\"_blank\">헥스 코드</a>이어야 합니다.",
],
"Top bar color" => [
0 => "상단 바 색상",
],
"Black" => [
0 => "검정",
],
"White" => [
0 => "하양",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "상단 바의 색상을 \"하양\"으로 설정하면 모든 검정색의 요소가 하얀색으로 바뀝니다.",
],
"Top bar button color" => [
0 => "상단 바 버튼 색상",
],
@ -2824,6 +2821,12 @@ $translation_table = [
"Grey" => [
0 => "회색",
],
"Black" => [
0 => "검정",
],
"White" => [
0 => "하양",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "상단 바 버튼의 색상은 \"계정 만들기\" 버튼의 색상과 같이 사용됩니다.",
],
@ -2894,7 +2897,7 @@ $translation_table = [
0 => "퍼가기 코드 활성화 (게시물)",
],
"Everybody" => [
0 => "아무",
0 => "누구",
],
"Users only" => [
0 => "사용자만",
@ -2932,9 +2935,6 @@ $translation_table = [
"Split landing + images" => [
0 => "잘라낸 방문 페이지 + 이미지",
],
"Route explore" => [
0 => "둘러보기 라우팅",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "홈페이지 스타일을 선택해주세요. 추가 편집은 app/themes/%s/views/index.php에서 할 수 있습니다.",
],
@ -3008,7 +3008,7 @@ $translation_table = [
0 => "배너",
],
"Automatic updates check" => [
0 => "자동 업데이트 체크",
0 => "자동 업데이트 확인하기",
],
"When enabled the system will automatically check for new updates." => [
0 => "활성화하면 시스템은 자동으로 새로운 업데이트를 체크합니다.",
@ -3020,10 +3020,10 @@ $translation_table = [
0 => "사용 가능한 새로운 시스템 업데이트에 대한 알림을 상단 알림에 표시하려면 이 옵션을 활성화로 설정해주세요.",
],
"Dump update query" => [
0 => "업데이트 쿼리 덤프",
0 => "업데이트 쿼리 덤프 뜨기",
],
"Enable this if you want to dump the update query to run it manually." => [
0 => "업데이트 쿼리를 덤프해서 수동으로 실행하려면 이 옵션을 활성화로 설정해주세요",
0 => "활성화하면 자동으로 언어를 감자하여 각 사용자에게 맞는 언어로 설정합니다.",
],
"SEO %s URLs" => [
0 => "검색엔진 최적화 %s URL",
@ -3086,7 +3086,7 @@ $translation_table = [
0 => "앨범 라우팅",
],
"Hostname" => [
0 => "호스트 이름",
0 => "호스트네임",
],
"Hostname on which sub-domain wildcards will be added." => [
0 => "서브도메인 와일드카드가 추가될 호스트 이름입니다.",
@ -3185,7 +3185,7 @@ $translation_table = [
0 => "SMTP 사용자 이름",
],
"SMTP password" => [
0 => "SMTP 사용자 비밀번",
0 => "SMTP 사용자 ",
],
"SMTP security" => [
0 => "SMTP 보안 연결 방법",
@ -3340,6 +3340,21 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "Disqus, Facebook 또는 다른 원하는 서비스의 코드를 넣어주세요. 댓글은 이미지 뷰어에 사용됩니다.",
],
"Automatic approve" => [
0 => "자동 승인",
],
"Block content" => [
0 => "블럭한 게시물",
],
"Adult" => [
0 => "성인",
],
"Teen and adult" => [
0 => "미성년자와 성인",
],
"Flag NSFW" => [
0 => "후방주의 표기",
],
"Analytics code" => [
0 => "접속 통계 코드",
],
@ -3572,16 +3587,16 @@ $translation_table = [
0 => "시간대",
],
"Current password" => [
0 => "현재 비밀번",
0 => "현재 ",
],
"Enter your current password" => [
0 => "현재 비밀번호를 입력해주세요",
0 => "귀하의 현재 암호를 입력해주세요.",
],
"New password" => [
0 => "비밀번",
0 => "",
],
"Confirm new password" => [
0 => "비밀번호 확인",
0 => "호 확인",
],
"Add a password to be able to login using your username or email." => [
0 => "사용자 이름 또는 이메일 주소로 로그인 하려면 비밀번호를 넣어주세요.",
@ -3590,13 +3605,13 @@ $translation_table = [
0 => "이 사용자는 비밀번호를 설정하지 않았습니다. 여기서 비밀번호를 설정해주세요.",
],
"Enter your password" => [
0 => "비밀번호를 입력해주세요",
0 => "암호를 입력해주세요.",
],
"Confirm password" => [
0 => "비밀번호 확인",
0 => "호 확인",
],
"Re-enter your password" => [
0 => "비밀번호를 다시 입력해주세요",
0 => "암호를 다시 입력해주세요.",
],
"Upload new image" => [
0 => "새 이미지 업로드하기",
@ -3697,9 +3712,6 @@ $translation_table = [
"Delete background" => [
0 => "배경 지우기",
],
"Edit profile" => [
0 => "프로필 편집하기",
],
"Follower" => [
0 => "팔로워",
],

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-05-16 19:37+0000',
'PO-Revision-Date' => '2020-05-16 19:37+0000',
'POT-Creation-Date' => '2020-09-02 17:14+0000',
'PO-Revision-Date' => '2020-09-02 17:14+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'nl',
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "Bevestigen",
],
"The content has been approved." => [
0 => "De inhoud is goedgekeurd.",
],
"Select existing album" => [
0 => "Selecteer bestaand album",
],
@ -191,6 +194,9 @@ $translation_table = [
0 => "Album",
1 => "Albums",
],
"Approve" => [
0 => "Goedkeuren",
],
"Delete" => [
0 => "Verwijder",
],
@ -428,6 +434,15 @@ $translation_table = [
0 => "Gebruiker",
1 => "Gebruikers",
],
"adult" => [
0 => "Volwassene",
],
"teen" => [
0 => "Tienier",
],
"Content of type %s is forbidden" => [
0 => "%s inhoud is niet toegestaan.",
],
"Can't create %s destination dir" => [
0 => "Kan doelmap %s niet maken",
],
@ -793,9 +808,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "Vanboven in de afbeelding viewer (weergavepagina afbeelding)",
],
"Expected banner size 728x90" => [
0 => "Verwachte afmetingen banner: 728x90",
],
"Inside viewer foot (image page)" => [
0 => "Vanonder in de afbeelding viewer (weergavepagina afbeelding)",
],
@ -883,9 +895,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "Ongeldige hoofdkleur thema",
],
"Invalid theme top bar color" => [
0 => "Ongeldige topbalk thema kleur",
],
"Invalid theme top bar button color" => [
0 => "Ongeldige topbalk knop kleur",
],
@ -1126,6 +1135,9 @@ $translation_table = [
"Sign in" => [
0 => "Inloggen",
],
"Moderate" => [
0 => "Modereren",
],
"Upload images" => [
0 => "Upload afbeeldingen",
],
@ -1405,6 +1417,12 @@ $translation_table = [
"close" => [
0 => "sluiten",
],
"Note" => [
0 => "Opmerking",
],
"We must approve the uploaded content before being able to share." => [
0 => "We moeten de geüploade inhoud goedkeuren voordat deze gedeeld kan worden.",
],
"copy" => [
0 => "Kopieër",
],
@ -1414,9 +1432,6 @@ $translation_table = [
"Remove" => [
0 => "Verwijder",
],
"Edit image" => [
0 => "Wijzig foto",
],
"Title" => [
0 => "Titel",
],
@ -1606,6 +1621,12 @@ $translation_table = [
"Untitled image" => [
0 => "Naamloze afbeelding",
],
"Mark this if the image is not safe for work" => [
0 => "Markeer dit als het beeld niet veilig is voor het werk",
],
"Flag not safe" => [
0 => "Vlag niet veilig",
],
"Path" => [
0 => "Pad",
],
@ -1813,12 +1834,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "Er is hier niets te zien",
],
"Edit image details" => [
0 => "Afbeelding bewerken",
],
"Edit album details" => [
0 => "Album bewerken",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "Alle afbeeldingen zullen worden verplaatst naar dit nieuwe album. U kunt de afbeeldingen ook verplaatsen naar een <a class=\"modal-switch\" data-switch=\"move-existing-album\">bestaand album</a>.",
],
@ -1849,12 +1864,21 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "Weet u zeker dat u deze inhoud als onveilig wilt markeren?",
],
"Confirm approval" => [
0 => "Bevestig goedkeuring",
],
"Do you really want to approve this content? This can't be undone." => [
0 => "Wilt u echt alle geselecteerde inhoud verwijderen? Dit kan niet ongedaan worden gemaakt.",
],
"Confirm deletion" => [
0 => "Bevestig verwijderen",
],
"Do you really want to remove this content? This can't be undone." => [
0 => "Wilt u deze inhoud echt verwijderen? Dit kan niet ongedaan gemaakt worden.",
],
"Do you really want to approve all the selected content? This can't be undone." => [
0 => "Wilt u echt alle geselecteerde inhoud verwijderen? Dit kan niet ongedaan worden gemaakt.",
],
"Do you really want to remove all the selected content? This can't be undone." => [
0 => "Wilt u deze selectie echt verwijderen? Dit kan niet ongedaan gemaakt worden.",
],
@ -1969,9 +1993,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "Weet u zeker dat u dit album inclusief afbeeldingen wil verwijderen? Dit kan niet ongedaan gemaakt worden.",
],
"Delete album" => [
0 => "Verwijder album",
],
"You like this" => [
0 => "U waardeert dit",
],
@ -2020,9 +2041,6 @@ $translation_table = [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "Het systeem verwerkt automatisch iedere inhoud door een continue monitoring van het %path% pad.",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
0 => "Het systeem ontleedt automatisch elke inhoud door een continue observatie van het %path% pad.",
],
"Completed jobs will be automatically re-started after %n %m." => [
0 => "Voltooide jobs worden automatisch opnieuw opgestart na %n %m.",
],
@ -2074,15 +2092,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "Alle permissies voor het bestandssysteem moeten voor de crontab-gebruiker worden verleend op %path%.",
],
"Required crontab entry:" => [
0 => "Vereiste crontab voorwaarde:",
],
"Add import job" => [
0 => "Voeg importeeropdracht toe",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "Deze tool maakt het mogelijk om massaal inhoud aan uw website toe te voegen door een systeempad aan te wijzen met de inhoud die u wilt importeren. Het ondersteunt het toevoegen van gebruikers, albums en afbeeldingen met behulp van een mapstructuur. U kunt meer te weten komen over de mappenstructuur, het toevoegen van metadata, en alles over deze tool in onze %d.",
],
"Process import" => [
0 => "Procesimport",
],
@ -2359,12 +2371,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "Schakel dit in indien u het uploaden van afbeeldingen wilt toestaan. Deze instelling heeft geen invloed op beheerders.",
],
"Guest uploads" => [
0 => "Bezoeker uploads",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Schakel dit in om bezoeker uploads toe te staan",
],
"Upload user interface" => [
0 => "Gebruikersinterface uploaden",
],
@ -2374,6 +2380,21 @@ $translation_table = [
"route" => [
0 => "route",
],
"Guest uploads" => [
0 => "Bezoeker uploads",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Schakel dit in om bezoeker uploads toe te staan",
],
"Moderate uploads" => [
0 => "Modereer uploads",
],
"Guests" => [
0 => "Gasten",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "Schakel dit in om inkomende uploads te modereren. De inhoud zal moderatie vereisen voor goedkeuring.",
],
"Enable embed codes (uploader)" => [
0 => "Insluitcodes inschakelen (uploader)",
],
@ -2698,6 +2719,12 @@ $translation_table = [
"Monthly limit" => [
0 => "Maandlimiet",
],
"Lock %s editing" => [
0 => "Blokkeer %s wijzigen",
],
"Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission." => [
0 => "Schakel dit in om te voorkomen dat gebruikers de NSFW-vlag wijzigen. Indien ingeschakeld, zullen alleen admin en managers deze toestemming hebben.",
],
"Show not safe content in listings" => [
0 => "Geef onveilige (NFSW) inhoud weer",
],
@ -2809,18 +2836,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "Gebruik dit om de hoofdkleur van het thema te kiezen. Waarde moet in <a href=\"%s\" target=\"_blank\">hex formaat</a> zijn.",
],
"Top bar color" => [
0 => "Topbalk kleur",
],
"Black" => [
0 => "Zwart",
],
"White" => [
0 => "Wit",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "Als dit naar 'wit' gewijzigd wordt veranderd de kleur van de bovenbalk en alle zwarte kleurtonen naar witte tonen.",
],
"Top bar button color" => [
0 => "Topbalk knop kleur",
],
@ -2839,6 +2854,12 @@ $translation_table = [
"Grey" => [
0 => "Grijs",
],
"Black" => [
0 => "Zwart",
],
"White" => [
0 => "Wit",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "Kleur voor de knoppen in de bovenste balk, bijvoorbeeld voor 'Nieuw account'",
],
@ -2947,8 +2968,11 @@ $translation_table = [
"Split landing + images" => [
0 => "Opdelen beginpagina en afbeeldingen",
],
"Route explore" => [
0 => "Route verkennen",
"Route %s" => [
0 => "Route %s",
],
"upload" => [
0 => "upload",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "Selecteer de homepage stijl. Om het verder aan te passen, wijzig app/themes/%s/views/index.php",
@ -3355,6 +3379,27 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "Disqus, Facebook of wat u maar wilt. Het zal worden gebruikt in de afbeelding viewer.",
],
"Automatically moderate the content using the %s service." => [
0 => "Automatisch modereren van de inhoud met behulp van de %s service.",
],
"Automatic approve" => [
0 => "Automatisch goedkeuren",
],
"Enable this to automatically approve content moderated by this service." => [
0 => "Schakel dit in om de inhoud die door deze dienst gemodereerd wordt automatisch goed te keuren.",
],
"Block content" => [
0 => "Blokkeer inhoud",
],
"Adult" => [
0 => "Volwassene",
],
"Teen and adult" => [
0 => "Tiener en volwassene",
],
"Flag NSFW" => [
0 => "Vlag NSFW",
],
"Analytics code" => [
0 => "Google Analytics-code",
],
@ -3397,6 +3442,9 @@ $translation_table = [
"Load full resolution" => [
0 => "Laadt de volledige resolutie",
],
"Do you really want to approve this image? The image will go public if you approve it." => [
0 => "Wilt u echt alle geselecteerde inhoud verwijderen? Dit kan niet ongedaan worden gemaakt.",
],
"Added to %a and categorized in %c" => [
0 => "Toegevoegd aan %a en gecategoriseerd in %c",
],
@ -3712,9 +3760,6 @@ $translation_table = [
"Delete background" => [
0 => "Verwijder achtergrond",
],
"Edit profile" => [
0 => "Profiel bewerken",
],
"Follower" => [
0 => "Volger",
1 => "Volgers",

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2019-12-12 15:27+0000',
'PO-Revision-Date' => '2019-12-12 15:27+0000',
'POT-Creation-Date' => '2020-09-02 17:16+0000',
'PO-Revision-Date' => '2020-09-02 17:16+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'ru',
@ -290,9 +290,17 @@ $translation_table = [
"The content has been edited." => [
0 => "Содержимое отредактировано.",
],
"Select number of threads" => [
0 => "Выберите количество потоков",
],
"Spam detected" => [
0 => "Обнаружен спам",
],
"album" => [
0 => "альбом",
1 => "альбома",
2 => "альбомов",
],
"Untitled" => [
0 => "Безымянный",
],
@ -498,27 +506,6 @@ $translation_table = [
"I understand" => [
0 => "Хорошо",
],
"You have been forbidden to use this website." => [
0 => "Вам запрещено использовать этот сайт.",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "Чувствуйте себя как дома и наслаждайтесь моими изображениями и альбомами.",
],
"View all my images" => [
0 => "Показать мои изображения",
],
"Plugin" => [
0 => "Плагин",
],
"Request denied" => [
0 => "В запросе отказано",
],
"That page doesn't exist" => [
0 => "Эта страница не существует",
],
"Page %s" => [
0 => "Страница %s",
],
"Forgot password?" => [
0 => "Забыли пароль?",
],
@ -543,6 +530,9 @@ $translation_table = [
"User doesn't have an email." => [
0 => "Для этого пользователя не задан адрес электронной почты.",
],
"Request denied" => [
0 => "В запросе отказано",
],
"Account needs to be activated to use this feature" => [
0 => "Для использования этой функции, аккаунт должен быть активирован",
],
@ -797,9 +787,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "В заголовке просмотрщика (страница изображения)",
],
"Expected banner size 728x90" => [
0 => "Рекомендуемый размер баннера 728x90",
],
"Inside viewer foot (image page)" => [
0 => "Внизу просмотрщика (страница изображения)",
],
@ -887,9 +874,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "Неверный цвет темы",
],
"Invalid theme top bar color" => [
0 => "Неверный цвет панели",
],
"Invalid theme top bar button color" => [
0 => "Неверный цвет кнопок панели",
],
@ -1415,9 +1399,6 @@ $translation_table = [
"Remove" => [
0 => "Удалить",
],
"Edit image" => [
0 => "Редактировать изображение",
],
"Title" => [
0 => "Заголовок",
],
@ -1487,11 +1468,6 @@ $translation_table = [
"Error report" => [
0 => "Отчет об ошибках",
],
"album" => [
0 => "альбом",
1 => "альбома",
2 => "альбомов",
],
"Viewer links" => [
0 => "Ссылки на просмотр",
],
@ -1636,9 +1612,6 @@ $translation_table = [
"Threads" => [
0 => "Потоки",
],
"Select number of threads" => [
0 => "Выберите количество потоков",
],
"This determines how intensive and fast will be the import process. Don't use more than %s threads on a shared server." => [
0 => "Определяет насколько быстрым и ресурсоемким будет процесс импорта. Не используйте больше %s потоков на совместном хостинге.",
],
@ -1813,18 +1786,15 @@ $translation_table = [
"Sign in with another account" => [
0 => "Войти через",
],
"Continue with %label%" => [
0 => "Продолжить с %label%",
],
"Home" => [
0 => "Главная",
],
"There's nothing to show here." => [
0 => "Нет элементов для отображения.",
],
"Edit image details" => [
0 => "Редактировать изображение",
],
"Edit album details" => [
0 => "Редактировать альбом",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "Все изображения будут помещены в этот новый альбом. Вы также можете переместить изображения в <a class=\"modal-switch\" data-switch=\"move-existing-album\">существующий альбом</a>.",
],
@ -1897,6 +1867,9 @@ $translation_table = [
"Toggle unsafe flag" => [
0 => "Включить отметку о небезопасном содержимом",
],
"That page doesn't exist" => [
0 => "Эта страница не существует",
],
"The requested page was not found." => [
0 => "Запрошеная страница не найдена",
],
@ -1972,9 +1945,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "Вы действительно хотите удалить этот альбом со всеми изображениями? Это действие необратимо.",
],
"Delete album" => [
0 => "Удалить",
],
"You like this" => [
0 => "Вам это нравится",
],
@ -2002,41 +1972,17 @@ $translation_table = [
"Learn more about %s at our %d." => [
0 => "Узнайте больше о %s в %d.",
],
"For Nginx, you must use %nginx%. For Apache, %apache%." => [
0 => "Для Nginx необходимо использовать %nginx%. Для Apache, %apache%.",
],
"Disk used" => [
0 => "Использовано места на диске",
],
"Add import job" => [
0 => "Добавить задачу импорта",
"Automatic importing" => [
0 => "Автоматический импорт",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "Эта утилита, позволит вам добавить контент на ваш сайт, посредством указания пути к нему. Поддерживается импорт пользователей, альбомов и изображений, через структуру папок. Вы можете узнать больше о структуре папок, добавлении меток и об этой утилите в нашей %d.",
],
"Process import" => [
0 => "Импорт",
],
"Top level folders as %s" => [
0 => "Папки верхнего уровня как %s",
],
"Actions" => [
0 => "Действия",
],
"Process" => [
0 => "Процесс",
],
"Pause" => [
0 => "Пауза",
],
"Cancel" => [
0 => "Отмена",
],
"Process log" => [
0 => "Журнал импорта",
],
"Errors" => [
0 => "Ошибки",
],
"Do you really want to remove the import ID %s?" => [
0 => "Вы действительно хотите удалить задачу с ID %s?",
"Reset to clear stats and logs." => [
0 => "Сброс, для очистки статистики и журналов.",
],
"Queued" => [
0 => "В очереди",
@ -2053,12 +1999,48 @@ $translation_table = [
"Completed" => [
0 => "Завершено",
],
"Parser" => [
0 => "Парсер",
"Actions" => [
0 => "Действия",
],
"Reset" => [
0 => "Сброс",
],
"Pause" => [
0 => "Пауза",
],
"Process log" => [
0 => "Журнал импорта",
],
"Errors" => [
0 => "Ошибки",
],
"Status" => [
0 => "Статус",
],
"Add import job" => [
0 => "Добавить задачу импорта",
],
"Process import" => [
0 => "Импорт",
],
"Top level folders as %s" => [
0 => "Папки верхнего уровня как %s",
],
"Process" => [
0 => "Процесс",
],
"Cancel" => [
0 => "Отмена",
],
"Do you really want to remove the import ID %s?" => [
0 => "Вы действительно хотите удалить задачу с ID %s?",
],
"Manual importing" => [
0 => "Ручной импорт",
],
"Parser" => [
0 => "Парсер",
],
"Add user" => [
0 => "Добавить пользователя",
],
@ -2308,12 +2290,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "Включите, если вы хотите разрешить загрузку изображений. Эта настройка не влияет на администраторов.",
],
"Guest uploads" => [
0 => "Гостевые загрузки",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Включите, если хотите позволить загружать изображения незарегистрированным пользователям.",
],
"Upload user interface" => [
0 => "Загрузить интерфейс пользователя",
],
@ -2323,6 +2299,12 @@ $translation_table = [
"route" => [
0 => "маршрут",
],
"Guest uploads" => [
0 => "Гостевые загрузки",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Включите, если хотите позволить загружать изображения незарегистрированным пользователям.",
],
"Enable embed codes (uploader)" => [
0 => "Коды для встраивания (в загрузчике)",
],
@ -2758,18 +2740,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "Используйте это поле, чтобы указать основной цвет темы. Значение должно быть указано в <a href=\"%s\" target=\"_blank\">шестнадцатеричном формате</a>.",
],
"Top bar color" => [
0 => "Цвет верхней панели",
],
"Black" => [
0 => "Черный",
],
"White" => [
0 => "Белый",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "Если вы выберете \"Белый\", цвет верхней панели и некоторых других элементов будет заменен на светлый.",
],
"Top bar button color" => [
0 => "Цвет кнопок верхней панели",
],
@ -2788,6 +2758,12 @@ $translation_table = [
"Grey" => [
0 => "Серый",
],
"Black" => [
0 => "Черный",
],
"White" => [
0 => "Белый",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "Цвет кнопок на верхней панели, таких как \"Зарегистрироваться\".",
],
@ -2857,6 +2833,12 @@ $translation_table = [
"Enable embed codes (content)" => [
0 => "Коды для встраивания (в просмотре)",
],
"Everybody" => [
0 => "Все пользователи",
],
"Users only" => [
0 => "Только зарегистрированные",
],
"Enable this if you want to show embed codes for the content." => [
0 => "Включите эту настройку, если вы хотите показывать коды для встраивания в просмотре изображений.",
],
@ -2890,9 +2872,6 @@ $translation_table = [
"Split landing + images" => [
0 => "Целевая страница + изображения",
],
"Route explore" => [
0 => "Переадресовывать на Обзор",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "Выберите стиль отображения главной страницы. Для получения больших возможностей, Вы можете отредактировать файл app/themes/%s/views/index.php.",
],
@ -2980,9 +2959,6 @@ $translation_table = [
"Dump update query" => [
0 => "Просмотреть текст запроса",
],
"Enable this if you want to manually run the SQL update query." => [
0 => "Включите, чтобы автоматически определять и устанавливать язык пользователя.",
],
"SEO %s URLs" => [
0 => "SEO %s URLs",
],
@ -3583,9 +3559,6 @@ $translation_table = [
"User has no connections." => [
0 => "У пользователя нет связей с другими аккаунтами.",
],
"Link your account to external services to be able to login and share content." => [
0 => "Свяжите ваш аккаунт со сторонними сервисами, чтобы иметь возможность входить через них и делиться содержимым.",
],
"Do you really want to disconnect %s from this account?" => [
0 => "Вы действительно хотите отвязать %s от этого аккаунта?",
],
@ -3607,9 +3580,15 @@ $translation_table = [
"Connect %s" => [
0 => "Связать с %s",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "Чувствуйте себя как дома и наслаждайтесь моими изображениями и альбомами.",
],
"Button" => [
0 => "Кнопка",
],
"View all my images" => [
0 => "Показать мои изображения",
],
"Login" => [
0 => "Вход",
],
@ -3649,9 +3628,6 @@ $translation_table = [
"Delete background" => [
0 => "Удалить фон",
],
"Edit profile" => [
0 => "Редактировать профиль",
],
"Follower" => [
0 => "Подписчик",
1 => "Подписчика",
@ -3660,6 +3636,15 @@ $translation_table = [
"Follow" => [
0 => "Подписаться",
],
"You have been forbidden to use this website." => [
0 => "Вам запрещено использовать этот сайт.",
],
"Plugin" => [
0 => "Плагин",
],
"Page %s" => [
0 => "Страница %s",
],
"General questions/comments" => [
0 => "Общие вопросы/комментарии",
],

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2019-12-12 15:27+0000',
'PO-Revision-Date' => '2019-12-12 15:27+0000',
'POT-Creation-Date' => '2020-09-02 17:16+0000',
'PO-Revision-Date' => '2020-09-02 17:16+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'th',
@ -286,6 +286,9 @@ $translation_table = [
"The content has been edited." => [
0 => "เนื้อหาที่ได้รับการแก้ไข",
],
"album" => [
0 => "อัลบั้ม",
],
"Untitled" => [
0 => "ไม่มีชื่อ",
],
@ -469,24 +472,6 @@ $translation_table = [
"I understand" => [
0 => "ฉันเข้าใจ",
],
"You have been forbidden to use this website." => [
0 => "คุณถูกห้ามการใช้งานเว็บไซต์นี้",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "อย่าลังเลที่จะเรียกดูและค้นพบภาพร่วมกันทั้งหมดของภาพและอัลบั้มฉัน",
],
"View all my images" => [
0 => "ดูภาพทั้งหมดของฉัน",
],
"Plugin" => [
0 => "ปลั๊กอิน",
],
"Request denied" => [
0 => "คำขอไม่สามารถเข้าถึงได้",
],
"That page doesn't exist" => [
0 => "ไม่สามารถใช้งานหน้าเว็บไซต์นี้ได้",
],
"Forgot password?" => [
0 => "ลืมรหัสผ่าน?",
],
@ -511,6 +496,9 @@ $translation_table = [
"User doesn't have an email." => [
0 => "ผู้ใช้ไม่ได้อีเมล",
],
"Request denied" => [
0 => "คำขอไม่สามารถเข้าถึงได้",
],
"Account needs to be activated to use this feature" => [
0 => "บัญชีผู้ใช้ต้องทำการปลดล็อคเพื่อใช้งานส่วนนี้",
],
@ -760,9 +748,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "ด้านบนภายใน (หน้าภาพ)",
],
"Expected banner size 728x90" => [
0 => "ขนาดแบนเนอร์ควรจะ 728x90",
],
"Inside viewer foot (image page)" => [
0 => "ด้านท้ายของผู้ชมภายใน (หน้าภาพ)",
],
@ -850,9 +835,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "ธีมสีหลักไม่ถูกต้อง",
],
"Invalid theme top bar color" => [
0 => "รูปแบบสีแถบด้านบนไม่ถูกต้อง",
],
"Invalid theme top bar button color" => [
0 => "รูปแบบแถบด้านบนปุ่มสีไม่ถูกต้อง",
],
@ -1375,9 +1357,6 @@ $translation_table = [
"Remove" => [
0 => "ลบ",
],
"Edit image" => [
0 => "แก้ไขรูปภาพ",
],
"Title" => [
0 => "หัวข้อ",
],
@ -1447,9 +1426,6 @@ $translation_table = [
"Error report" => [
0 => "รายงานข้อผิดพลาด",
],
"album" => [
0 => "อัลบั้ม",
],
"Viewer links" => [
0 => "ผู้ชมลิ้งค์",
],
@ -1747,12 +1723,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "ไม่มีอะไรที่จะแสดงที่นี่",
],
"Edit image details" => [
0 => "แก้ไขรายละเอียดของภาพ",
],
"Edit album details" => [
0 => "แก้ไขรายละเอียดอัลบั้ม",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "ภาพทั้งหมดจะถูกย้ายไปที่อัลบั้มที่สร้างขึ้นใหม่นี้ นอกจากนี้คุณยังสามารถย้ายภาพไปที่ <a class=\"modal-switch\" data-switch=\"move-existing-album\">อัลบั้มที่มีอยู่</a>",
],
@ -1819,6 +1789,9 @@ $translation_table = [
"Toggle unsafe flag" => [
0 => "สลับสถานะที่ไม่ปลอดภัย",
],
"That page doesn't exist" => [
0 => "ไม่สามารถใช้งานหน้าเว็บไซต์นี้ได้",
],
"The requested page was not found." => [
0 => "ไม่พบหน้าที่คุณค้นหา",
],
@ -1894,9 +1867,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "คุณต้องการที่จะลบอัลบั้มนี้และทุกภาพของตนหรือไม่?",
],
"Delete album" => [
0 => "ลบอัลบั้ม",
],
"You like this" => [
0 => "คุณถูกใจสิ่งนี้",
],
@ -2584,18 +2554,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "ใช้ปุ่มนี้เพื่อกำหนดสีของธีมหลัก ค่าต้องอยู่ใน <a href=\"%s\" target=\"_blank\">รูปแบบ hex</a>",
],
"Top bar color" => [
0 => "สีของ Top bar",
],
"Black" => [
0 => "ดำ",
],
"White" => [
0 => "สีขาว",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "หากคุณตั้งค่านี้เป็น \"สีขาว\" แถบด้านบนและทุกโทนสีดำจะเปลี่ยนเป็นโทนสีขาว",
],
"Top bar button color" => [
0 => "สีปุ่มแถบด้านบน",
],
@ -2614,6 +2572,12 @@ $translation_table = [
"Grey" => [
0 => "สีเทา",
],
"Black" => [
0 => "ดำ",
],
"White" => [
0 => "สีขาว",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "สีสำหรับปุ่มแถบด้านบนเช่นปุ่ม \"สมัครสมาชิก\"",
],
@ -2713,9 +2677,6 @@ $translation_table = [
"Split landing + images" => [
0 => "แบ่งภาพ + ภาพ",
],
"Route explore" => [
0 => "เส้นทางรวมภาพ",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "เลือกรูปแบบหน้าแรก หากต้องการปรับแต่งเพิ่มเติมให้แก้ไข app/themes/%s/views/index.php",
],
@ -3325,9 +3286,6 @@ $translation_table = [
"User has no connections." => [
0 => "ผู้ใช้ไม่มีการเชื่อมต่อ",
],
"Link your account to external services to be able to login and share content." => [
0 => "เชื่อมโยงบัญชีของคุณกับบริการภายนอกเพื่อเข้าสู่ระบบและแบ่งปันเนื้อหา",
],
"Do you really want to disconnect %s from this account?" => [
0 => "คุณต้องการตัดการเชื่อมต่อ %s จากบัญชีนี้หรือไม่?",
],
@ -3349,9 +3307,15 @@ $translation_table = [
"Connect %s" => [
0 => "เชื่อมต่อ %s",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "อย่าลังเลที่จะเรียกดูและค้นพบภาพร่วมกันทั้งหมดของภาพและอัลบั้มฉัน",
],
"Button" => [
0 => "ปุ่ม",
],
"View all my images" => [
0 => "ดูภาพทั้งหมดของฉัน",
],
"Login" => [
0 => "เข้าสู่ระบบ",
],
@ -3382,15 +3346,18 @@ $translation_table = [
"Delete background" => [
0 => "ลบพื้นหลัง",
],
"Edit profile" => [
0 => "แก้ไขโปรไฟล์",
],
"Follower" => [
0 => "ผู้ติดตาม",
],
"Follow" => [
0 => "ติดตาม",
],
"You have been forbidden to use this website." => [
0 => "คุณถูกห้ามการใช้งานเว็บไซต์นี้",
],
"Plugin" => [
0 => "ปลั๊กอิน",
],
"General questions/comments" => [
0 => "คำถามทั่วไป/แสดงความคิดเห็น",
],

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-04-18 16:12+0000',
'PO-Revision-Date' => '2020-04-18 16:12+0000',
'POT-Creation-Date' => '2020-09-02 17:14+0000',
'PO-Revision-Date' => '2020-09-02 17:14+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'tr',
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "Onayla",
],
"The content has been approved." => [
0 => "İçerik onaylandı.",
],
"Select existing album" => [
0 => "Mevcut olan albümü seçin",
],
@ -191,6 +194,9 @@ $translation_table = [
0 => "Albüm",
1 => "Albümler",
],
"Approve" => [
0 => "Onayla",
],
"Delete" => [
0 => "Sil",
],
@ -428,6 +434,15 @@ $translation_table = [
0 => "Üye",
1 => "Üyeler",
],
"adult" => [
0 => "yetişkin",
],
"teen" => [
0 => "genç",
],
"Content of type %s is forbidden" => [
0 => "%s türü içerikler yasaktır.",
],
"Can't create %s destination dir" => [
0 => "%s Hedef dizin oluşturulamıyor",
],
@ -793,9 +808,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "İç izleyici üst (resim sayfası)",
],
"Expected banner size 728x90" => [
0 => "Önerilen afiş boyutu 728x90",
],
"Inside viewer foot (image page)" => [
0 => "İç izleyici ayak (resim sayfası)",
],
@ -883,9 +895,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "Temanın geçersiz ana rengi",
],
"Invalid theme top bar color" => [
0 => "Tema ana çubuğunun geçersiz rengi",
],
"Invalid theme top bar button color" => [
0 => "Tema ana çubuğu düğmelerinin geçersiz rengi",
],
@ -1126,6 +1135,9 @@ $translation_table = [
"Sign in" => [
0 => "Giriş Yap",
],
"Moderate" => [
0 => "Denetlemek",
],
"Upload images" => [
0 => "Resim yükle",
],
@ -1405,6 +1417,12 @@ $translation_table = [
"close" => [
0 => "kapat",
],
"Note" => [
0 => "Not",
],
"We must approve the uploaded content before being able to share." => [
0 => "Paylaşmadan önce yüklenen içeriği onaylamamız gerekir.",
],
"copy" => [
0 => "Kopyala",
],
@ -1414,9 +1432,6 @@ $translation_table = [
"Remove" => [
0 => "Kaldır",
],
"Edit image" => [
0 => "Resmi düzenle",
],
"Title" => [
0 => "Başlık",
],
@ -1606,6 +1621,12 @@ $translation_table = [
"Untitled image" => [
0 => "İsimsiz resim",
],
"Mark this if the image is not safe for work" => [
0 => "Görüntü aile için güvenli değilse işaretleyin.",
],
"Flag not safe" => [
0 => "Güvenli değil olarak işaretle.",
],
"Path" => [
0 => "Yol",
],
@ -1813,12 +1834,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "Burada gösterilecek birşey yok.",
],
"Edit image details" => [
0 => "Resim düzenleme ayrıntıları",
],
"Edit album details" => [
0 => "Albüm ayarlarını Düzenle",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "Resimleriniz yeni oluşturulacak bir albüme taşınacaktır. İsterseniz resimlerinizi <a class=\"modal-switch\" data-switch=\"move-existing-album\">mevcut albümlerden</a>.birisine taşıyabilirsiniz.",
],
@ -1849,12 +1864,21 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "Bu içeriği gerçekten rahatsız edici olarak işaretlemek istiyor musunuz?",
],
"Confirm approval" => [
0 => "Onayı onayla",
],
"Do you really want to approve this content? This can't be undone." => [
0 => "Seçilen tüm içeriği gerçekten kaldırmak istiyor musunuz? Bu geri alınamaz.",
],
"Confirm deletion" => [
0 => "Silmek istediğinizden emin misiniz.",
],
"Do you really want to remove this content? This can't be undone." => [
0 => "Resim veya resimleri silmek istediğinizden eminmisiniz. Resimler geri dönüşümü olmaksızın silinecektir.",
],
"Do you really want to approve all the selected content? This can't be undone." => [
0 => "Seçilen tüm içeriği gerçekten kaldırmak istiyor musunuz? Bu geri alınamaz.",
],
"Do you really want to remove all the selected content? This can't be undone." => [
0 => "Seçili resimleri silmek istediğinizden eminmisiniz ?. Resimler geri dönüşümü olmaksızın silinecektir.",
],
@ -1969,9 +1993,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "Gerçekten bu albümü ve içindekileri silmek istiyormusun? Bu işlemin geri dönüşü yok.",
],
"Delete album" => [
0 => "Albümü Sil",
],
"You like this" => [
0 => "Bunu beğendiniz",
],
@ -2014,10 +2035,10 @@ $translation_table = [
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure." => [
0 => "Bu araç, içe aktarmak istediğiniz içeriğin bulunduğu bir sistem yolunu işaretleyerek web sitenize toplu içerik eklemenize olanak tanır. Klasör tabanlı bir yapı kullanarak kullanıcıların, albümlerin ve görüntülerin eklenmesini destekler.",
],
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "Sistem, %path% yolunu sürekli gözlemleyerek herhangi bir içeriği otomatik olarak ayrıştırır.",
"Automatic importing" => [
0 => "Otomatik içe aktarma",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "Sistem, %path% yolunu sürekli gözlemleyerek herhangi bir içeriği otomatik olarak ayrıştırır.",
],
"Completed jobs will be automatically re-started after %n %m." => [
@ -2071,15 +2092,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "%path% yolundaki crontab kullanıcısı için tüm dosya sistemi izinleri verilmelidir",
],
"Required crontab entry:" => [
0 => "Gerekli crontab girişi:",
],
"Add import job" => [
0 => "İçe aktarma işi ekle",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "Bu araç, içe aktarmak istediğiniz içeriğe sahip bir sistem yolunu işaretleyerek web sitenize toplu içerik eklemenizi sağlar. Klasör tabanlı bir yapı kullanarak kullanıcıların, albümlerin ve görüntülerin eklenmesini destekler. Klasör yapısı, meta veri ekleme ve bu araçla ilgili daha fazla bilgiyi %d içinde bulabilirsiniz.",
],
"Process import" => [
0 => "İşlem içe aktarma",
],
@ -2356,12 +2371,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "Resim yükleme izin vermek için bunu etkinleştirin. Bu ayar, yöneticilerin etkilemez.",
],
"Guest uploads" => [
0 => "Misafirlerin Yüklediği Resimler",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Misafir Kullanıcıların Resim Yüklemesini İstiyorsanız Bunu Etkinleştirmeniz Gerekmektedir. ",
],
"Upload user interface" => [
0 => "Kullanıcı arayüzünü yükle",
],
@ -2371,6 +2380,21 @@ $translation_table = [
"route" => [
0 => "rota",
],
"Guest uploads" => [
0 => "Misafirlerin Yüklediği Resimler",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "Misafir Kullanıcıların Resim Yüklemesini İstiyorsanız Bunu Etkinleştirmeniz Gerekmektedir. ",
],
"Moderate uploads" => [
0 => "Yüklemeleri denetle",
],
"Guests" => [
0 => "Ziyaretçiler",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "Gelen yüklemeleri denetlemek için bunu etkinleştirin. Hedef içerik, onay için denetim gerektirecektir.",
],
"Enable embed codes (uploader)" => [
0 => "Katıştırma kodlarını etkinleştir (yükleyici)",
],
@ -2695,6 +2719,12 @@ $translation_table = [
"Monthly limit" => [
0 => "Aylık Resim Yükleme Sınırı",
],
"Lock %s editing" => [
0 => "%s düzenlemesini kilitle",
],
"Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission." => [
0 => "Gelen yüklemeleri denetlemek için bunu etkinleştirin. Hedef içerik, onay için denetim gerektirecektir.",
],
"Show not safe content in listings" => [
0 => "Listelerde güvenli olmayan içeriği göster",
],
@ -2806,18 +2836,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "Ana tema rengi olarak bunu kullan. Değer<a href=\"%s\" target=\"_blank\">heksadesimal formatta</a> olmalı.",
],
"Top bar color" => [
0 => "Üst çubuk rengi",
],
"Black" => [
0 => "Geri",
],
"White" => [
0 => "Beyaz",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "Bunu \"beyaz\" olarak ayarlarsanız, üstteki çubuk ve tüm siyah tonları beyaz tonlarına dönüştürülür.",
],
"Top bar button color" => [
0 => "Üst çubuk düğme (button) rengi",
],
@ -2836,6 +2854,12 @@ $translation_table = [
"Grey" => [
0 => "Gri",
],
"Black" => [
0 => "Geri",
],
"White" => [
0 => "Beyaz",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "\"Hesap oluştur\" düğmesi gibi en üstteki çubuk düğmeleri için renk.",
],
@ -2944,8 +2968,11 @@ $translation_table = [
"Split landing + images" => [
0 => "Bölünmüş iniş + görüntüleri",
],
"Route explore" => [
0 => "Rota keşfet",
"Route %s" => [
0 => "%s yolu",
],
"upload" => [
0 => "yükle",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "Ana sayfa stilini seçin. Daha fazla düzenlemek için app/themes/%s/views/index.php",
@ -3352,6 +3379,27 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "Disqus, Facebook veya başka bir yerden görüntü almak istiyorum. Alınacak görüntü profilde gösterilecektir.",
],
"Automatically moderate the content using the %s service." => [
0 => "%s hizmetini kullanarak içeriği otomatik olarak denetleyin.",
],
"Automatic approve" => [
0 => "Otomatik onay",
],
"Enable this to automatically approve content moderated by this service." => [
0 => "Bu hizmet tarafından denetlenen içeriği otomatik olarak onaylamak için bunu etkinleştirin.",
],
"Block content" => [
0 => "İçeriği engelle",
],
"Adult" => [
0 => "Yetişkin",
],
"Teen and adult" => [
0 => "Genç ve yetişkin",
],
"Flag NSFW" => [
0 => "NSFW olarak işaretle.",
],
"Analytics code" => [
0 => "Google Analytics kodunuzu giriniz.",
],
@ -3394,6 +3442,9 @@ $translation_table = [
"Load full resolution" => [
0 => "Tam çözünürlük yükle",
],
"Do you really want to approve this image? The image will go public if you approve it." => [
0 => "Seçilen tüm içeriği gerçekten kaldırmak istiyor musunuz? Bu geri alınamaz.",
],
"Added to %a and categorized in %c" => [
0 => "%a ya eklendi ve %c olarak kategorize edildi",
],
@ -3709,9 +3760,6 @@ $translation_table = [
"Delete background" => [
0 => "Arka Planı Sil",
],
"Edit profile" => [
0 => "Profili Düzenle",
],
"Follower" => [
0 => "takipçi",
1 => "İzleyiciler",

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2018-12-19 20:57+0000',
'PO-Revision-Date' => '2018-12-19 20:57+0000',
'POT-Creation-Date' => '2020-09-02 17:16+0000',
'PO-Revision-Date' => '2020-09-02 17:16+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'vi',
@ -52,6 +52,42 @@ $translation_table = [
"Personal" => [
0 => "Cá nhân",
],
"Installed version is v%s" => [
0 => "Phiên bản đã cài là v%s",
],
"Can't connect to %s" => [
0 => "Không thể kết nối tới %s\n",
],
"Last available release is v%s" => [
0 => "Phiên bản hiện tại v%s",
],
"Update needed, proceeding to download" => [
0 => "Cập nhật cần thiết, tiến hành tải xuống\n",
],
"No update needed" => [
0 => "Không có cập nhật\n",
],
"System files already up to date" => [
0 => "Các file hệ thống đã cập nhật",
],
"Starting v%s download" => [
0 => "Bắt đầu tải xuống v%s ",
],
"Downloaded v%s, proceeding to extraction" => [
0 => "Đã tải xuống v%s, đang tiến hành giải nén",
],
"Attempting to extract v%s" => [
0 => "Đang giải nén v%s\n",
],
"Extraction completed" => [
0 => "Giải nén thành công",
],
"Proceding to install the update" => [
0 => "Tiến hành cài đặt bản cập nhật",
],
"Update failed" => [
0 => "Cập nhật thất bại",
],
"Update in progress" => [
0 => "Đang tiến hành cập nhật",
],
@ -65,7 +101,7 @@ $translation_table = [
0 => "Mã key bản quyền không hợp lệ",
],
"Can't save file" => [
0 => "Không thể lưu file",
0 => "Không thể lưu tệp",
],
"Can't download %s" => [
0 => "Không thể tải xuống %s",
@ -79,6 +115,183 @@ $translation_table = [
"Can't update %s file - %e" => [
0 => "Không thể cập nhật file %s - %e",
],
"Check the errors in the form to continue." => [
0 => "Kiểm tra lỗi trong biểu mẫu để tiếp tục.",
],
"You must enter the album name." => [
0 => "Bạn phải đặt tên album.",
],
"Confirm" => [
0 => "Xác nhận",
],
"Select existing album" => [
0 => "Chọn album sẵn có",
],
"An error occurred. Please try again later." => [
0 => "Có lỗi xảy ra, hãy quay lại sau.",
],
"Please select a valid image file type." => [
0 => "Hãy chọn loại ảnh phù hợp",
],
"Please select a picture of at most %s size." => [
0 => "Hãy chọn dung lượng ảnh tối đa %s",
],
"Profile image updated." => [
0 => "Hình đại diện đã cập nhật",
],
"Profile background image updated." => [
0 => "Hình nền cá nhân đã cập nhật.",
],
"Profile background image deleted." => [
0 => "Hình nền cá nhân đã xóa.",
],
"Error deleting profile background image." => [
0 => "Xóa hình nền bị lỗi.",
],
"Passwords don't match" => [
0 => "Mật khẩu không khớp",
],
"Update available v%s" => [
0 => "Cập nhật có sẵn v%s",
],
"There is an update available for your system. You can automatic download and install this update or go to %s to proceed to download the file." => [
0 => "Có bản cập nhật mới cho hệ thống của bạn. Bạn có thể tự động tải xuống và cài đặt bản cập nhật này hoặc truy cập %s để tải file xuống",
],
"The release notes for this update are:" => [
0 => "Chú ý cho bản cập nhật này là:",
],
"Update now" => [
0 => "Cập nhật ngay",
],
"or" => [
0 => "hoặc",
],
"cancel" => [
0 => "hủy",
],
"This website is running latest %s version" => [
0 => "Website này đang chạy phiên bản %s mới nhất",
],
"loading" => [
0 => "đang tải",
],
"Toggle select" => [
0 => "Chọn chuyển đổi",
],
"Like" => [
0 => "Thích",
],
"Edit" => [
0 => "Sửa",
],
"Album" => [
0 => "Albums",
],
"Delete" => [
0 => "Xóa",
],
"Close" => [
0 => "Đóng",
],
"Previous" => [
0 => "Trước",
],
"Next" => [
0 => "Tiếp",
],
"Clipboard image" => [
0 => "Lưu tạm ảnh",
],
"File too big." => [
0 => "Hình quá lớn",
],
"Invalid or unsupported file format." => [
0 => "Định dạng tệp không hợp lệ hoặc không được hỗ trợ.",
],
"Some files couldn't be added" => [
0 => "Một số tệp không thêm được.",
],
"image" => [
0 => "ảnh",
],
"%s's Albums" => [
0 => "Album của %s",
],
"Image edited successfully." => [
0 => "Sửa ảnh thành công.",
],
"private" => [
0 => "riêng tư",
],
"Album edited successfully." => [
0 => "Sửa album thành công.",
],
"Invalid URL key." => [
0 => "Khóa URL không hợp lệ.",
],
"Category URL key already being used." => [
0 => "Khóa URL của danh mục đã được sử dụng.",
],
"Category successfully deleted." => [
0 => "Danh mục đã xóa thành công ",
],
"Category %s added." => [
0 => "Danh mục %s đã thêm.",
],
"Invalid expiration date." => [
0 => "Ngày hết hạn không hợp lệ.\n",
],
"IP %s already banned." => [
0 => "IP %s đã bị cấm.",
],
"IP %s banned." => [
0 => "IP %s bị cấm.",
],
"IP ban successfully deleted." => [
0 => "Bỏ cấm IP thành công.",
],
"Please fill all the required fields." => [
0 => "Vui lòng điền vào tất cả các vùng bắt buộc.",
],
"Invalid storage capacity value. Make sure to use a valid format." => [
0 => "Sức chứa dung lượng lưu trữ không hợp lệ. Hãy đảm bảo sử dụng định dạng hợp lệ.\n",
],
"Storage capacity can't be lower than its current usage (%s)." => [
0 => "Dung lượng lưu trữ không thể thấp hơn hiện tại đang sử dụng (%s)",
],
"Invalid URL." => [
0 => "URL không hợp lệ.",
],
"Storage successfully edited." => [
0 => "Đã chỉnh sửa kho lưu trữ thành công.",
],
"User added successfully." => [
0 => "Thêm người dùng thành công.",
],
"The content has been deleted." => [
0 => "Nội dung đã bị xóa",
],
"The content has been moved." => [
0 => "Nội dung đã được di chuyển.",
],
"Select" => [
0 => "Chọn",
],
"Unselect" => [
0 => "Bỏ chọn",
],
"The content has been edited." => [
0 => "Nội dung đã được chỉnh sửa.",
],
"Spam detected" => [
0 => "Phát hiện Spam",
],
"album" => [
0 => "album",
],
"Flooding detected. You can only upload %limit% %content% per %time%" => [
0 => "Phát hiện spam. Bạn chỉ có thể tải lên %limit% %content% trong %time%",
],
"Untitled" => [
0 => "Chưa đặt tên",
],
@ -92,7 +305,7 @@ $translation_table = [
0 => "Lưu ý: Nội dung này được bảo vệ bằng mật khẩu. Hãy nhớ cho mật khẩu của nội dung khi chia sẻ.",
],
"Note: This content is private. Change privacy to \"public\" to share." => [
0 => "Nội dung này ở chế độ riêng tư. Đổi sang chế độ \"public\" để chia sẻ.",
0 => "Nội dung này ở chế độ riêng tư. Đổi sang chế độ \"công khai\" để chia sẻ.",
],
"Private" => [
0 => "Riêng tư",
@ -145,9 +358,6 @@ $translation_table = [
"like" => [
0 => "thích",
],
"image" => [
0 => "ảnh",
],
"Recent" => [
0 => "Gần đây",
],
@ -187,9 +397,6 @@ $translation_table = [
"Image" => [
0 => "Ảnh",
],
"Album" => [
0 => "Albums",
],
"User" => [
0 => "Người dùng",
],
@ -205,9 +412,6 @@ $translation_table = [
"Can't insert storage." => [
0 => "Không thể chèn vào kho lưu trữ.",
],
"Storage capacity can't be lower than its current usage (%s)." => [
0 => "Dung lượng lưu trữ không thể thấp hơn hiện tại đang sử dụng (%s)",
],
"Can't update storage details." => [
0 => "Không thể cập nhật chi tiết kho lưu trữ.",
],
@ -253,9 +457,6 @@ $translation_table = [
"There is an update available for your Chevereto based website." => [
0 => "Đã có sẵn bản cập nhật cho trang Chevereto của bạn.",
],
"The release notes for this update are:" => [
0 => "Chú ý cho bản cập nhật này là:",
],
"admin dashboard" => [
0 => "bảng điều khiển ",
],
@ -274,21 +475,6 @@ $translation_table = [
"I understand" => [
0 => "Tôi hiểu",
],
"You have been forbidden to use this website." => [
0 => "Bạn bị bắt buộc dùng website này",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "Cứ thoải mái khám phá tất cả ảnh và album tôi đã chia sẻ công khai.",
],
"View all my images" => [
0 => "Xem tất cả ảnh của tôi",
],
"Plugin" => [
0 => "Plugin\n",
],
"That page doesn't exist" => [
0 => "404: Trng này không tồn tại",
],
"Forgot password?" => [
0 => "Quên mật khẩu?",
],
@ -334,15 +520,9 @@ $translation_table = [
"Welcome to %s" => [
0 => "Chào mừng %s",
],
"Passwords don't match" => [
0 => "Mật khẩu không khớp",
],
"Email already being used" => [
0 => "Email đã sử dụng",
],
"Check the errors in the form to continue." => [
0 => "Kiểm tra lỗi trong biểu mẫu để tiếp tục.",
],
"Password required" => [
0 => "Yêu cầu mật khẩu",
],
@ -439,9 +619,6 @@ $translation_table = [
"Changelog" => [
0 => "Nhật ký thay đổi",
],
"Request new features" => [
0 => "Yêu cầu thêm tính năng mới",
],
"Bug tracking" => [
0 => "Theo dõi lỗi",
],
@ -574,9 +751,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "Trong phần trên của trình duyệt ảnh (trang xem ảnh)",
],
"Expected banner size 728x90" => [
0 => "Size tốt nhất 728x90",
],
"Inside viewer foot (image page)" => [
0 => "Trong phần chân của trình duyệt ảnh (trang xem ảnh)",
],
@ -640,9 +814,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "sai màu chính",
],
"Invalid theme top bar color" => [
0 => "sai màu của top bar",
],
"Invalid theme top bar button color" => [
0 => "Sai màu nút trên topbar",
],
@ -847,9 +1018,6 @@ $translation_table = [
"Sign in" => [
0 => "Đăng nhập",
],
"Logged out" => [
0 => "Đã đăng xuất",
],
"Upload images" => [
0 => "Upload ảnh",
],
@ -919,9 +1087,6 @@ $translation_table = [
"%s's Images" => [
0 => "Ảnh của %s",
],
"%s's Albums" => [
0 => "Album của %s",
],
"Results for" => [
0 => "Kết quả cho",
],
@ -943,9 +1108,6 @@ $translation_table = [
"Discovery" => [
0 => "Khám phá",
],
"Close" => [
0 => "Đóng",
],
"Advanced search" => [
0 => "Tìm kiếm nâng cao",
],
@ -958,9 +1120,6 @@ $translation_table = [
"Notifications" => [
0 => "Thông báo",
],
"loading" => [
0 => "đang tải",
],
"You don't have notifications" => [
0 => "Bạn chưa có thông báo nào",
],
@ -980,13 +1139,13 @@ $translation_table = [
0 => "Hoặc bạn có thê copy đoạn URL sau và dán vào thanh địa chỉ của trình duyệt để kích hoạt: <a href=\"%s\">%s</a>",
],
"If you didn't intend this just ignore this message." => [
0 => "Nếu bạn không đăng ký hoặc bạn không hiểu nội dung email này nói về gì, hãy bỏ qua và xem như chưa biết gì hết Up Siêu Tốc ^^",
0 => "Nếu bạn không có ý định này, chỉ cần bỏ qua thông báo này.",
],
"This request was made from IP: %s" => [
0 => "Yêu cầu này xuất phát từ IP: %s",
],
"We received a request to register the %n account at %w." => [
0 => "Chúng tôi nhận được yêu cầu tạo tài khoản %n tại Up Siêu Tốc %w.",
0 => "Chúng tôi nhận được yêu cầu tạo tài khoản %n tại %w.",
],
"To complete the process you must <a href=\"%s\">activate your account</a>." => [
0 => "Để hoàn tất vui lòng <a href=\"%s\">kích hoạt tài khoản</a>.",
@ -998,13 +1157,13 @@ $translation_table = [
0 => "Để reset lại mật khẩu xin vui lòng <a href=\"%s\">click vào link này</a>.",
],
"Hi %n, welcome to %w" => [
0 => "Xin chào %n, rất vui khi bạn đến với Up siêu tốc %w",
0 => "Xin chào %n, rất vui khi bạn đến với %w",
],
"Now that your account is ready you can enjoy uploading your images, creating albums and setting the privacy of your content as well as many more cool things that you will discover." => [
0 => "Tài khoản của bạn đã được kích hoạt thành công. Hãy bắt đầu upload ảnh của bạn, tạo album, set chế độ riêng tư hoặc công cộng cho hình ảnh của bạn và hàng đống chức năng khác đang chờ bạn khám phá.",
],
"By the way, here is you very own awesome profile page: <a href=\"%u\">%n</a>. Go ahead and customize it, its yours!." => [
0 => "Ngoài ra thì Up siêu tốc cũng tạo cho bạn 1 trang cá nhân rất ngầu tại địa chỉ <a href=\"%u\">%n</a>. Còn chờ gì nữa mà không truy cập thử và đổi ảnh đại diện, avatar... đi :D",
0 => "Nhân tiện, đây là trang cá nhân tuyệt vời của bạn: <a href=\"%u\">%n</a>. Hãy tiếp tục tùy chỉnh, nó là của bạn !.",
],
"Thank you for joining" => [
0 => "Cảm ơn bạn đã tham gia với chúng tôi.",
@ -1096,12 +1255,6 @@ $translation_table = [
"Uploading" => [
0 => "Đang đăng",
],
"or" => [
0 => "hoặc",
],
"cancel" => [
0 => "hủy",
],
"cancel remaining" => [
0 => "Ngưng upload những ảnh còn lại",
],
@ -1126,12 +1279,6 @@ $translation_table = [
"insert" => [
0 => "chèn",
],
"Edit" => [
0 => "Sửa",
],
"Edit image" => [
0 => "Sửa ảnh",
],
"Title" => [
0 => "Tiêu đề",
],
@ -1186,9 +1333,6 @@ $translation_table = [
"Error report" => [
0 => "Thông báo lỗi",
],
"album" => [
0 => "album",
],
"Viewer links" => [
0 => "Link người xem",
],
@ -1283,7 +1427,7 @@ $translation_table = [
0 => "API",
],
"Region" => [
0 => "Region",
0 => "Khu vực",
],
"Storage region" => [
0 => "Storage region",
@ -1393,9 +1537,6 @@ $translation_table = [
"Flag as safe" => [
0 => "Ảnh an toàn",
],
"Delete" => [
0 => "Xóa",
],
"Create new album" => [
0 => "Tạo album mới",
],
@ -1405,12 +1546,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "Không có gì để hiện.",
],
"Edit image details" => [
0 => "Chỉnh thửa thông tin ảnh",
],
"Edit album details" => [
0 => "Sửa thông tin album",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "Hình đã chuyển đến album mới tạo. Bạn cố thể chuyển hình đến <a class=\"modal-switch\" data-switch=\"move-existing-album\">album hiện có</a>.",
],
@ -1462,9 +1597,6 @@ $translation_table = [
"Keyboard shortcuts" => [
0 => "Phím tắt",
],
"Like" => [
0 => "Thích",
],
"Uploaded by guest" => [
0 => "Upload by khách",
],
@ -1477,12 +1609,12 @@ $translation_table = [
"by %u" => [
0 => "bởi %u",
],
"Select" => [
0 => "Chọn",
],
"Toggle unsafe flag" => [
0 => "Bật kiểm tra nội dung không an toàn",
],
"That page doesn't exist" => [
0 => "404: Trng này không tồn tại",
],
"The requested page was not found." => [
0 => "Không tìm thấy trang yêu cầu",
],
@ -1492,9 +1624,6 @@ $translation_table = [
"The user has been deleted" => [
0 => "Người dùng đã bị xóa",
],
"The content has been deleted." => [
0 => "Nội dung đã bị xóa",
],
"Your account is almost ready" => [
0 => "Tài khoản bạn đã sẵn sàng",
],
@ -1555,9 +1684,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "Bạn có muốn xoá tất cả hình ảnh album? Không phục hồi được nhé.",
],
"Delete album" => [
0 => "Xóa album",
],
"You like this" => [
0 => "Bạn đã like",
],
@ -2014,6 +2140,9 @@ $translation_table = [
"Don't have an account? <a href='%s'>Sign up</a> now." => [
0 => "Chưa có tài khoản? <a href='%s'>Đăng ký </a> ngay!",
],
"Logged out" => [
0 => "Đã đăng xuất",
],
"You have been logged off %s. Hope to see you soon." => [
0 => "Bạn đã thoát khỏi tài khoản %s. Hẹn gặp lại sau!",
],
@ -2104,9 +2233,6 @@ $translation_table = [
"User has no connections." => [
0 => "Người dùng chưa có kết nối đến mạng xã hội",
],
"Link your account to external services to be able to login and share content." => [
0 => "Kết nối đến tài khoản xã hội để có thể đăng nhập và chia sẻ nhanh.",
],
"Do you really want to disconnect %s from this account?" => [
0 => "Bạn có chắc là muốn xóa liên kết đến %s của tài khoản",
],
@ -2128,9 +2254,15 @@ $translation_table = [
"Connect %s" => [
0 => "Kết nối %s",
],
"Feel free to browse and discover all my shared images and albums." => [
0 => "Cứ thoải mái khám phá tất cả ảnh và album tôi đã chia sẻ công khai.",
],
"Button" => [
0 => "Nút",
],
"View all my images" => [
0 => "Xem tất cả ảnh của tôi",
],
"resend account activation" => [
0 => "gửi lại email kích hoạt tài khoản",
],
@ -2158,15 +2290,18 @@ $translation_table = [
"Delete background" => [
0 => "Xóa hình nền",
],
"Edit profile" => [
0 => "Sửa hồ sơ cá nhân",
],
"Follower" => [
0 => "Người theo dõi",
],
"Follow" => [
0 => "Theo dõi",
],
"You have been forbidden to use this website." => [
0 => "Bạn bị bắt buộc dùng website này",
],
"Plugin" => [
0 => "Plugin\n",
],
"General questions/comments" => [
0 => "Hỏi đáp, thắc mắc, kiến nghị",
],
@ -2197,162 +2332,6 @@ $translation_table = [
"Subject" => [
0 => "Chủ đề",
],
"Installed version is v%s" => [
0 => "Phiên bản đã cài là v%s",
],
"Can't connect to %s" => [
0 => "Không thể kết nối tới %s\n",
],
"Last available release is v%s" => [
0 => "Phiên bản hiện tại v%s",
],
"Update needed, proceeding to download" => [
0 => "Cập nhật cần thiết, tiến hành tải xuống\n",
],
"No update needed" => [
0 => "Không có cập nhật\n",
],
"System files already up to date" => [
0 => "Các file hệ thống đã cập nhật",
],
"Starting v%s download" => [
0 => "Bắt đầu tải xuống v%s ",
],
"Downloaded v%s, proceeding to extraction" => [
0 => "Đã tải xuống v%s, đang tiến hành giải nén",
],
"Attempting to extract v%s" => [
0 => "Đang giải nén v%s\n",
],
"Extraction completed" => [
0 => "Giải nén thành công",
],
"Proceding to install the update" => [
0 => "Tiến hành cài đặt bản cập nhật",
],
"Update failed" => [
0 => "Cập nhật thất bại",
],
"You must enter the album name." => [
0 => "Bạn phải đặt tên album.",
],
"Confirm" => [
0 => "Xác nhận",
],
"Select existing album" => [
0 => "Chọn album sẵn có",
],
"An error occurred. Please try again later." => [
0 => "Có lỗi xảy ra, hãy quay lại sau.",
],
"Please select a valid image file type." => [
0 => "Hãy chọn loại ảnh phù hợp",
],
"Please select a picture of at most %s size." => [
0 => "Hãy chọn dung lượng ảnh tối đa %s",
],
"Profile image updated." => [
0 => "Hình đại diện đã cập nhật",
],
"Profile background image updated." => [
0 => "Hình nền cá nhân đã cập nhật.",
],
"Profile background image deleted." => [
0 => "Hình nền cá nhân đã xóa.",
],
"Error deleting profile background image." => [
0 => "Xóa hình nền bị lỗi.",
],
"Update available v%s" => [
0 => "Cập nhật có sẵn v%s",
],
"There is an update available for your system. You can automatic download and install this update or go to %s to proceed to download the file." => [
0 => "Có bản update mới cho hệ thống của bạn. Bạn có thể tự động tải xuống và cài đặt bản update này hoặc truy cập %s để tải file xuống",
],
"Update now" => [
0 => "Cập nhật ngay",
],
"This website is running latest %s version" => [
0 => "Trang web này đang chạy phiên bản %s mới nhất",
],
"Toggle select" => [
0 => "Chọn chuyển đổi",
],
"Previous" => [
0 => "Trước",
],
"Next" => [
0 => "Tiếp",
],
"Clipboard image" => [
0 => "Lưu tạm ảnh",
],
"File too big." => [
0 => "Hình quá lớn",
],
"Invalid or unsupported file format." => [
0 => "Định dạng tệp không hợp lệ hoặc không được hỗ trợ.",
],
"Some files couldn't be added" => [
0 => "Một số hình không thêm được.",
],
"Image edited successfully." => [
0 => "Sửa ảnh thành công.",
],
"private" => [
0 => "riêng tư",
],
"Album edited successfully." => [
0 => "Sửa album thành công.",
],
"Invalid URL key." => [
0 => "Khóa URL không hợp lệ.",
],
"Category URL key already being used." => [
0 => "Khóa URL của danh mục đã được sử dụng.",
],
"Category successfully deleted." => [
0 => "Danh mục đã xóa thành công ",
],
"Category %s added." => [
0 => "Danh mục %s đã thêm.",
],
"Invalid expiration date." => [
0 => "Ngày hết hạn không hợp lệ.\n",
],
"IP %s already banned." => [
0 => "IP %s đã bị cấm.",
],
"IP %s banned." => [
0 => "IP %s bị cấm.",
],
"IP ban successfully deleted." => [
0 => "Bỏ cấm IP thành công.",
],
"Please fill all the required fields." => [
0 => "Vui lòng điền vào tất cả các vùng bắt buộc.",
],
"Invalid storage capacity value. Make sure to use a valid format." => [
0 => "Sức chứa dung lượng lưu trữ không hợp lệ. Hãy đảm bảo sử dụng định dạng hợp lệ.\n",
],
"Invalid URL." => [
0 => "URL không hợp lệ.",
],
"Storage successfully edited." => [
0 => "Đã chỉnh sửa kho lưu trữ thành công.",
],
"User added successfully." => [
0 => "Thêm người dùng thành công.",
],
"The content has been moved." => [
0 => "Nội dung đã được di chuyển.",
],
"Unselect" => [
0 => "Bỏ chọn",
],
"The content has been edited." => [
0 => "Nội dung đã được chỉnh sửa.",
],
"All the changes that you have made will be lost if you continue." => [
0 => "Nếu tiếp tục các thay đổi sẽ mất",
],

View File

@ -1,8 +1,8 @@
<?php
$translation_header = array (
'Project-Id-Version' => 'VERSION',
'POT-Creation-Date' => '2020-04-16 12:57+0000',
'PO-Revision-Date' => '2020-04-16 12:57+0000',
'POT-Creation-Date' => '2020-09-25 18:53+0000',
'PO-Revision-Date' => '2020-09-25 18:53+0000',
'Last-Translator' => 'FULL NAME <EMAIL@ADDRESS>',
'Language-Team' => 'LANGUAGE TEAM <EMAIL@ADDRESS>',
'Language' => 'zh_CN',
@ -124,6 +124,9 @@ $translation_table = [
"Confirm" => [
0 => "确认",
],
"The content has been approved." => [
0 => "内容已获批准。",
],
"Select existing album" => [
0 => "选择现有的相册",
],
@ -190,6 +193,9 @@ $translation_table = [
"Album" => [
0 => "相册",
],
"Approve" => [
0 => "批准",
],
"Delete" => [
0 => "删除",
],
@ -415,6 +421,15 @@ $translation_table = [
"User" => [
0 => "用户",
],
"adult" => [
0 => "成人",
],
"teen" => [
0 => "青少年",
],
"Content of type %s is forbidden" => [
0 => "类型为 %s 的内容被禁止",
],
"Can't create %s destination dir" => [
0 => "无法创建 %s 目标目录",
],
@ -778,9 +793,6 @@ $translation_table = [
"Inside viewer top (image page)" => [
0 => "内部图像浏览器顶部(图像页)",
],
"Expected banner size 728x90" => [
0 => "默认的横幅大小为728x90",
],
"Inside viewer foot (image page)" => [
0 => "内部图像浏览器底部(图像页)",
],
@ -868,9 +880,6 @@ $translation_table = [
"Invalid theme main color" => [
0 => "无效的主题主要颜色",
],
"Invalid theme top bar color" => [
0 => "无效的主题顶部菜单栏颜色",
],
"Invalid theme top bar button color" => [
0 => "无效的主题顶部菜单栏按钮颜色",
],
@ -1111,6 +1120,9 @@ $translation_table = [
"Sign in" => [
0 => "登录",
],
"Moderate" => [
0 => "Moderate",
],
"Upload images" => [
0 => "上传图片",
],
@ -1390,6 +1402,12 @@ $translation_table = [
"close" => [
0 => "关闭",
],
"Note" => [
0 => "通知",
],
"We must approve the uploaded content before being able to share." => [
0 => "我们必须对上传的内容进行审核,才能进行分享。",
],
"copy" => [
0 => "复制",
],
@ -1399,9 +1417,6 @@ $translation_table = [
"Remove" => [
0 => "删除",
],
"Edit image" => [
0 => "编辑图片",
],
"Title" => [
0 => "标题",
],
@ -1571,7 +1586,7 @@ $translation_table = [
0 => "相册密码",
],
"Name" => [
0 => "",
0 => "",
],
"Category name" => [
0 => "类别名称",
@ -1591,6 +1606,12 @@ $translation_table = [
"Untitled image" => [
0 => "无标题图像",
],
"Mark this if the image is not safe for work" => [
0 => "如果图像不安全(NSFW),请在此标记。",
],
"Flag not safe" => [
0 => "标记不安全",
],
"Path" => [
0 => "路径",
],
@ -1798,12 +1819,6 @@ $translation_table = [
"There's nothing to show here." => [
0 => "没有要显示的内容",
],
"Edit image details" => [
0 => "编辑图片",
],
"Edit album details" => [
0 => "编辑相册",
],
"All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>." => [
0 => "所有的图片将被移动到这个新创建的相册. 你也可以移动图片到 <a class=\"modal-switch\" data-switch=\"move-existing-album\">现有相册</a>.",
],
@ -1834,12 +1849,21 @@ $translation_table = [
"Do you really want to flag this content as unsafe?" => [
0 => "你真的要标记这个内容为不安全?",
],
"Confirm approval" => [
0 => "确认批准",
],
"Do you really want to approve this content? This can't be undone." => [
0 => "你真的想删除所有选中的内容吗?这是无法挽回的。",
],
"Confirm deletion" => [
0 => "确认删除",
],
"Do you really want to remove this content? This can't be undone." => [
0 => "你真的想删除此内容? 一旦删除将无法恢复.",
],
"Do you really want to approve all the selected content? This can't be undone." => [
0 => "你真的想删除所有选中的内容吗?这是无法挽回的。",
],
"Do you really want to remove all the selected content? This can't be undone." => [
0 => "你真的想删除所选内容? 一旦删除将无法恢复.",
],
@ -1954,9 +1978,6 @@ $translation_table = [
"Do you really want to delete this album and all of its images? This can't be undone." => [
0 => "你真的要删除这个相册和它的所有图像? 这将不能恢复.",
],
"Delete album" => [
0 => "删除相册",
],
"You like this" => [
0 => "你喜欢它",
],
@ -1985,13 +2006,13 @@ $translation_table = [
0 => "在 %d 处了解 %s 的详情.",
],
"The connecting IP is determined using the server variable %var%. If the detected IP doesn't match yours, it means that your web server is under a proxy and you need to tweak your server to set the real connecting IP." => [
0 => "使用服务器变量 %var% 获取真实IP。如果检测到的IP与您的不匹配这意味着您的Web服务器在代理下您需要调整您的服务器设置以便获取真实IP。",
0 => "连接IP是通过服务器变量 %var% 来确定的。如果检测到的IP与你的不一致说明你的Web服务器是在代理服务器下你需要调整你的服务器来设置真正的连接IP。",
],
"For Nginx, you must use %nginx%. For Apache, %apache%." => [
0 => "对于nginx您必须使用 %nginx% 对于Apache%apache% 。",
0 => "对于Nginx你必须使用 %nginx% 对于Apache使用 %apache% 。",
],
"Make sure that you address this issue as the system relies on accurate IP detections to provide basic functionalities and to protect against spam, flooding, and brute force attacks." => [
0 => "请确保解决此问题,因为系统依准确的IP检测来提供基本功能并能防止垃圾邮件、洪水和暴力攻击。",
0 => "请确保解决此问题,因为系统依准确的IP检测来提供基本功能并能防止垃圾邮件、洪水攻击和暴力破解攻击。",
],
"Disk used" => [
0 => "已用大小",
@ -2005,9 +2026,6 @@ $translation_table = [
"The system automatically parses any content by a continuous observation of the %path% path." => [
0 => "系统将自动检测 %path% 路径,自动解析并导入内容。",
],
"The system automatically parses any content by a continous observation of the %path% path." => [
0 => "系统将自动检测 %path% 路径,自动解析并导入内容。",
],
"Completed jobs will be automatically re-started after %n %m." => [
0 => "已完成的作业将在 %n %m 之后自动重新启动。",
],
@ -2059,15 +2077,9 @@ $translation_table = [
"All file-system permissions must be granted for the crontab user at %path%" => [
0 => "必须给crontab用户授予 %path% 下所有文件的可读写权限",
],
"Required crontab entry:" => [
0 => "必需的crontab指令",
],
"Add import job" => [
0 => "添加导入作业",
],
"This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d." => [
0 => "此工具允许通过将要导入的内容指向系统路径,向网站批量添加内容。它支持使用基于文件夹的结构添加用户、相册和图像。您可以在我们的 %d 中了解更多关于文件夹结构、添加元数据,以及有关此工具的所有信息。",
],
"Process import" => [
0 => "进程导入",
],
@ -2344,12 +2356,6 @@ $translation_table = [
"Enable this if you want to allow image uploads. This setting doesn't affect administrators." => [
0 => "启用图片上传(如果你想允许图片上传请启用). 此设置不会影响管理员.",
],
"Guest uploads" => [
0 => "访客(不需注册)上传",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "启用它则允许未注册的用户上传图片",
],
"Upload user interface" => [
0 => "上传用户界面",
],
@ -2359,6 +2365,21 @@ $translation_table = [
"route" => [
0 => "路由",
],
"Guest uploads" => [
0 => "访客(不需注册)上传",
],
"Enable this if you want to allow non registered users to upload." => [
0 => "启用它则允许未注册的用户上传图片",
],
"Moderate uploads" => [
0 => "Moderate 上传",
],
"Guests" => [
0 => "访客",
],
"Enable this to moderate incoming uploads. Target content will require moderation for approval." => [
0 => "启用此功能可对传入的上传内容进行审核。目标内容将需要审核才能获得批准。",
],
"Enable embed codes (uploader)" => [
0 => "启用嵌入代码(上传者)",
],
@ -2417,7 +2438,7 @@ $translation_table = [
0 => "启用它, 如果你允许每个用户设置是否删除图像的Exif数据.",
],
"Maximum upload file size" => [
0 => "最大文件大小 (MB)",
0 => "最大上传文件大小 (MB)",
],
"Maximum size allowed by server is %s. This limit is capped by %u and %p (%f values)." => [
0 => "服务器最大允许上传%s.因为参数%u和%p(文件:%f)",
@ -2683,23 +2704,29 @@ $translation_table = [
"Monthly limit" => [
0 => "每月的限额",
],
"Lock %s editing" => [
0 => "锁定 %s 编辑",
],
"Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission." => [
0 => "启用此功能可防止用户更改NSFW标志。启用后只有管理员和管理有此权限。",
],
"Show not safe content in listings" => [
0 => "显示在列表中没有安全内容",
0 => "在列表中显示不安全内容(NSFW)",
],
"Enable this if you want to show not safe content in listings. This setting doesn't affect administrators and can be overridden by user own settings." => [
0 => "如果要在列表中显示不安全内容请启用此功能. 此设置不会影响管理员, 并且可以由用户自己的设置重写.",
0 => "如果您想在列表中显示不安全的内容(NSFW),请启用此功能。此设置不影响管理员,可由用户自己的设置覆盖。",
],
"Blur NSFW content in listings" => [
0 => "模糊NSFW(标记为不安全)的内容显示在列表",
0 => "在列表中模糊显示NSFW内容",
],
"Enable this if you want to apply a blur effect on the NSFW images in listings." => [
0 => "如果你想申请一个模糊效果的NSFW图像列表启用它.",
0 => "如果您想对列表中的NSFW图片应用高斯模糊效果请启用此功能。",
],
"Show banners in not safe content" => [
0 => "显示横幅在不安全的内容",
0 => "在不安全的内容中显示横幅广告",
],
"Enable this if you want to show banners in not safe content pages." => [
0 => "如果你想显示在不安全的内容页面的横幅请启用这个功能.",
0 => "如果您想在不安全的内容页面中显示横幅广告,请启用此功能。",
],
"Show not safe content in random mode" => [
0 => "在随机模式显示标记为不安全内容",
@ -2794,18 +2821,6 @@ $translation_table = [
"Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>." => [
0 => "使用此设置的主要主题颜色. 值必须是 <a href=\"%s\" target=\"_blank\">十六进制</a> 格式.",
],
"Top bar color" => [
0 => "顶部菜单栏颜色",
],
"Black" => [
0 => "",
],
"White" => [
0 => "",
],
"If you set this to \"white\" the top bar and all the black tones will be changed to white tones." => [
0 => "如果您将此设置为\"\"的顶部栏和所有黑色的色调将更改为白色的色调.",
],
"Top bar button color" => [
0 => "顶部菜单栏按钮颜色",
],
@ -2824,6 +2839,12 @@ $translation_table = [
"Grey" => [
0 => "",
],
"Black" => [
0 => "",
],
"White" => [
0 => "",
],
"Color for the top bar buttons like the \"Create account\" button." => [
0 => "顶栏的颜色按钮为\"创建帐户\"按钮.",
],
@ -2903,10 +2924,10 @@ $translation_table = [
0 => "启用此选项, 以内容嵌入代码 .",
],
"Not safe content checkbox in uploader" => [
0 => "查看上载不安全内容复选框",
0 => "上传时显示\"标记不安全内容\"复选框",
],
"Enable this if you want to show a checkbox to indicate not safe content upload." => [
0 => "如果你想显示一个复选框, 表示没有安全内容上传请启用这个功能.",
0 => "如果您想在上传页面显示一个复选框来标记\"不安全的内容(NSFW)\",请启用此功能。",
],
"Custom CSS code" => [
0 => "自定义CSS代码",
@ -2932,8 +2953,11 @@ $translation_table = [
"Split landing + images" => [
0 => "上传按钮 + 最新图片",
],
"Route explore" => [
0 => "直接显示探索图库",
"Route %s" => [
0 => "路径 %s",
],
"upload" => [
0 => "上传",
],
"Select the homepage style. To customize it further edit app/themes/%s/views/index.php" => [
0 => "选择主页风格. 详细定制主页编辑此 app/themes/%s/views/index.php",
@ -3340,6 +3364,27 @@ $translation_table = [
"Disqus, Facebook or anything you want. It will be used in image view." => [
0 => "DISQUS, Facebook或其他. 它将在图像视图中使用.",
],
"Automatically moderate the content using the %s service." => [
0 => "使用 %s 服务将会自动审核内容。",
],
"Automatic approve" => [
0 => "自动审核",
],
"Enable this to automatically approve content moderated by this service." => [
0 => "启用此功能可自动审核本服务所管理的内容。",
],
"Block content" => [
0 => "屏蔽内容",
],
"Adult" => [
0 => "成人",
],
"Teen and adult" => [
0 => "青少年和成人",
],
"Flag NSFW" => [
0 => "标记 NSFW",
],
"Analytics code" => [
0 => "Analytics分析代码",
],
@ -3350,7 +3395,7 @@ $translation_table = [
0 => "有关API的文档查看 <a %s>API文档</a>",
],
"API v1 key" => [
0 => "API v1 key",
0 => "API v1 密钥",
],
"Use this key when using the <a %s>API v1</a>." => [
0 => "使用<a %s>API V1</a>时使用此值.",
@ -3382,6 +3427,9 @@ $translation_table = [
"Load full resolution" => [
0 => "加载原图",
],
"Do you really want to approve this image? The image will go public if you approve it." => [
0 => "你真的想删除所有选中的内容吗?这是无法挽回的。",
],
"Added to %a and categorized in %c" => [
0 => "加入 %a 和标记上 %c",
],
@ -3697,9 +3745,6 @@ $translation_table = [
"Delete background" => [
0 => "删除背景图片",
],
"Edit profile" => [
0 => "编辑网站配置",
],
"Follower" => [
0 => "粉丝",
],

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-04-16 20:33+0000\n"
"PO-Revision-Date: 2020-04-16 20:33+0000\n"
"POT-Creation-Date: 2020-09-02 17:14+0000\n"
"PO-Revision-Date: 2020-09-02 17:14+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: cs\n"
@ -203,6 +203,9 @@ msgstr "Musíte zadat název alba."
msgid "Confirm"
msgstr "Potvrdit"
msgid "The content has been approved."
msgstr "Obsah byl schválen."
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "Vyberte stávající album"
@ -356,6 +359,9 @@ msgstr[1] "Alb"
msgstr[2] "Alb"
msgstr[3] "Alba"
msgid "Approve"
msgstr "Schválit"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -789,6 +795,16 @@ msgstr[1] "Uživatelů"
msgstr[2] "Uživatelů"
msgstr[3] "Uživatelé"
msgid "adult"
msgstr "dospělý"
msgid "teen"
msgstr "dospívající"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "Obsah typu %s je zakázán"
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1412,11 +1428,6 @@ msgstr "Stránka s obrázkem"
msgid "Inside viewer top (image page)"
msgstr "Uvnitř prohlížeče nahoře (stránka s obrázkem)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "Očekávaná velikost banneru je 728×90px"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "Uvnitř prohlížeče dole (stránka s obrázkem)"
@ -1535,10 +1546,6 @@ msgstr "Neplatný tón šablony."
msgid "Invalid theme main color"
msgstr "Chybná barva hlavní šablony"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "Neplatná barva vrchního rámečku tématu"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "Neplatná barva vrchního baru tématu."
@ -1873,6 +1880,9 @@ msgstr "Špatná kombinace přihlašovacího jména nebo e-mailu a hesla"
msgid "Sign in"
msgstr "Přihlásit se"
msgid "Moderate"
msgstr "Moderovat"
msgid "Upload images"
msgstr "Nahrát obrázky"
@ -2257,6 +2267,12 @@ msgstr "resetovat"
msgid "close"
msgstr "zavřít"
msgid "Note"
msgstr "Poznámka"
msgid "We must approve the uploaded content before being able to share."
msgstr "Než budeme moci sdílet, musíme schválit nahraný obsah."
msgid "copy"
msgstr "kopírovat"
@ -2268,10 +2284,6 @@ msgstr "vložit"
msgid "Remove"
msgstr "Odstranit"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "Upravit obrázek"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2565,6 +2577,9 @@ msgstr "Stručný popis této kategorie"
msgid "Untitled image"
msgstr "Obrázek bez názvu"
msgid "Mark this if the image is not safe for work"
msgstr "Označit tento obrázek, pokud není vhodný a bezpečný"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "Cesta"
@ -2850,18 +2865,6 @@ msgstr "Domů"
msgid "There's nothing to show here."
msgstr "Zde se nenachází nic k zobrazení."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "Upravit detaily obrázku"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "Uprav informace o albu"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "Všechny obrázky budou přesunuty do nově vytvořeného alba. Samozřejmé můžete také obrázky přesunou do již <a class=\"modal-switch\" data-switch=\"move-existing-album\">existujícího alba</a>."
@ -2902,6 +2905,12 @@ msgstr "Potvrďte, že obrázek není bezpečný"
msgid "Do you really want to flag this content as unsafe?"
msgstr "Opravdu si přejete tento obsah označit jako nebezpečný?"
msgid "Confirm approval"
msgstr "Potvrďte souhlas"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "Opravdu chcete odstranit veškerý vybraný obsah? Toto nelze vrátit zpět."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2911,6 +2920,9 @@ msgstr "Potvrďte odstranění"
msgid "Do you really want to remove this content? This can't be undone."
msgstr "Opravdu chcete odstranit tento obsah? (Nelze vrátit zpět)"
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "Opravdu chcete odstranit veškerý vybraný obsah? Toto nelze vrátit zpět."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "Opravdu si přejete odstranit vybraný obsah? (Nelze vrátit zpět)"
@ -3084,10 +3096,6 @@ msgstr "Tento obsah je soukromý"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "Opravdu si přejete odstranit toto album a všechny obrázky do něj zařazené? (Tuto akci nelze vrátit)"
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "Smazat album"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "Toto se vám líbí"
@ -3142,9 +3150,6 @@ msgstr "Automatický import"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "Systém automaticky analyzuje veškerý obsah kontinuálním sledováním cesty %path%."
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "Systém automaticky analyzuje veškerý obsah nepřetržitým sledováním cesty %path%."
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "Dokončené úlohy budou automaticky znovu spuštěny po %n %m."
@ -3197,16 +3202,9 @@ msgstr "Příkaz můžete spustit paralelně změnou celočíselné hodnoty %s%.
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "Všechna oprávnění systému souborů musí být udělena uživateli crontab v %path%"
msgid "Required crontab entry:"
msgstr "Požadovaný záznam cronu:"
msgid "Add import job"
msgstr "Přidat úlohu importu"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "Tento nástroj umožňuje hromadně přidávat obsah na vaše webové stránky tím, že zadává systémovou cestu s obsahem, který chcete importovat. Podporuje přidávání uživatelů, alb a obrázků pomocí struktury založené na složkách. Další informace o struktuře složek, přidání metadat a vše o tomto nástroji naleznete v naší %d."
msgid "Process import"
msgstr "Proces importu"
@ -3574,14 +3572,6 @@ msgstr "Povolit nahrávání"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "Povolte pokud chcete umožnit nahrávání. Toto nastavení nemá vliv na administrátory"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Nahráno hostem"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Povol pokud chceš umožnit neregistrovaným uživatelům nahrávání."
msgid "Upload user interface"
msgstr "Rozhraní uživatelského nahrávání"
@ -3591,6 +3581,23 @@ msgstr "On-page kontejner"
msgid "route"
msgstr "trasa"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Nahráno hostem"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Povol pokud chceš umožnit neregistrovaným uživatelům nahrávání."
msgid "Moderate uploads"
msgstr "Moderovat nahrávání"
msgid "Guests"
msgstr "Hosté"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "Povolte tuto funkci pro moderování příchozích nahrávek. Cílový obsah bude ke schválení vyžadovat moderování."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "Povolit vkládací odkazy (v nahrávacím nástroji)"
@ -4006,6 +4013,13 @@ msgstr "Týdenní limit"
msgid "Monthly limit"
msgstr "Měsíční limit"
#, php-format
msgid "Lock %s editing"
msgstr "Zamknout úpravy %s"
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "Povolte tuto funkci, aby uživatelé nemohli změnit příznak NSFW. Pokud je funkce povolena, toto oprávnění budou mít pouze administrátoři a správci."
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "V galerii vypisovat i nevhodný obsah"
@ -4150,26 +4164,6 @@ msgstr "Hexadecimální hodnota barvy"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "Použijte pro nastavení barvy hlavní šablony. Hodnota musí být v <a href=\"%s\" target=\"_blank\">hex formátu</a>."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "Barva horního baru"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Černá"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Bílá"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "Pokud se toto nastaví na \"Bílá\", horní bar a všechny černé tóny se změní na bílé tóny."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "Barva tlačítka horního baru"
@ -4199,6 +4193,18 @@ msgstr "Červená"
msgid "Grey"
msgstr "Šedá"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Černá"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Bílá"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "Barva tlačítek na horní liště, např. jako je tlačítko \"Vytvořit účet\"."
@ -4342,9 +4348,12 @@ msgstr "Vstupní stránka"
msgid "Split landing + images"
msgstr "Split landing + obrázky"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "Prozkoumejte trasu"
#, php-format
msgid "Route %s"
msgstr "Trasa %s"
msgid "upload"
msgstr "nahrát"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4855,6 +4864,28 @@ msgstr "Kód komentáře"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus, Facebook nebo cokoliv jiného. Bude použito v zobrazení obrázku."
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "Automaticky moderujte obsah pomocí služby %s."
msgid "Automatic approve"
msgstr "Automatické schválení"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "Povolte tuto funkci pro automatické schválení obsahu moderovaného touto službou."
msgid "Block content"
msgstr "Blokovat obsah"
msgid "Adult"
msgstr "Dospělí"
msgid "Teen and adult"
msgstr "Dospívající i dospělí"
msgid "Flag NSFW"
msgstr "Příznak NSFW"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "Kód analytics."
@ -4912,6 +4943,9 @@ msgstr "Přehrát GIF"
msgid "Load full resolution"
msgstr "Načíst v plném rozlišení"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "Opravdu chcete odstranit veškerý vybraný obsah? Toto nelze vrátit zpět."
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "Přidáno do alba %a a zařazeno do kategorie %c"
@ -5336,10 +5370,6 @@ msgstr "Profilový obrázek pozadí bude odstraněn. Tuto akci nelze vrátit. Op
msgid "Delete background"
msgstr "Odstranit pozadí"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "Upravit profil"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-04-16 20:33+0000\n"
"PO-Revision-Date: 2020-04-16 20:33+0000\n"
"POT-Creation-Date: 2020-09-25 18:53+0000\n"
"PO-Revision-Date: 2020-09-25 18:53+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: es\n"
@ -203,6 +203,9 @@ msgstr "Debes ingresar el nombre del álbum."
msgid "Confirm"
msgstr "Confirmar"
msgid "The content has been approved."
msgstr "El contenido ha sido aprobado."
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "Seleccionar álbum existente"
@ -354,6 +357,9 @@ msgid_plural "Albums"
msgstr[0] "Álbum"
msgstr[1] "Álbumes"
msgid "Approve"
msgstr "Aprobar"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -763,6 +769,16 @@ msgid_plural "Users"
msgstr[0] "Usuario"
msgstr[1] "Usuarios"
msgid "adult"
msgstr "adulto"
msgid "teen"
msgstr "adolescente"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "El contenido de tipo %s está prohibido"
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1382,11 +1398,6 @@ msgstr "Página de imagen"
msgid "Inside viewer top (image page)"
msgstr "En el interior superior del visualizador (página de imagen)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "Tamaño esperado del aviso es 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "En el interior inferior del visualizador (página de imagen)"
@ -1505,10 +1516,6 @@ msgstr "Tono de tema inválido"
msgid "Invalid theme main color"
msgstr "Color principal de tema inválido"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "Color de barra superior de tema inválido"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "Color de botón de barra superior de tema inválido"
@ -1843,6 +1850,9 @@ msgstr "Combinación Nombre de usuario / Email incorrecta"
msgid "Sign in"
msgstr "Entrar"
msgid "Moderate"
msgstr "Moderar"
msgid "Upload images"
msgstr "Subir imágenes"
@ -2227,6 +2237,12 @@ msgstr "restablecer"
msgid "close"
msgstr "cerrar"
msgid "Note"
msgstr "Nota"
msgid "We must approve the uploaded content before being able to share."
msgstr "Debemos aprobar el contenido subido antes de poder compartir."
msgid "copy"
msgstr "copiar"
@ -2238,10 +2254,6 @@ msgstr "insertar"
msgid "Remove"
msgstr "Eliminar"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "Editar imagen"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2535,6 +2547,12 @@ msgstr "Breve descripción de esta categoría"
msgid "Untitled image"
msgstr "Imagen sin título"
msgid "Mark this if the image is not safe for work"
msgstr "Marca esto si la imagen no es segura para trabajo"
msgid "Flag not safe"
msgstr "Marcar no segura"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "Ruta"
@ -2820,18 +2838,6 @@ msgstr "Principal"
msgid "There's nothing to show here."
msgstr "No hay nada que mostrar aquí."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "Editar detalles de la imagen"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "Editar detalles del álbum"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "Todas las imágenes serán trasladadas a este nuevo álbum. También puedes trasladar las imágenes a un <a class=\"modal-switch\" data-switch=\"move-existing-album\">álbum existente</a>."
@ -2872,6 +2878,12 @@ msgstr "Confirmar marcar contenido como no seguro"
msgid "Do you really want to flag this content as unsafe?"
msgstr "¿Realmente quieres marcar este contenido como no seguro?"
msgid "Confirm approval"
msgstr "Confirmar aprobación"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "¿Realmente quieres eliminar todo el contenido seleccionado? Esto no se podrá deshacer."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2881,6 +2893,9 @@ msgstr "Confirmar eliminación"
msgid "Do you really want to remove this content? This can't be undone."
msgstr "¿Realmente quieres eliminar este contenido? Esto no se podrá deshacer."
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "Do you really want to approve all the selected content? This can't be undone."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "¿Realmente quieres eliminar todo el contenido seleccionado? Esto no se podrá deshacer."
@ -3054,10 +3069,6 @@ msgstr "Este contenido es privado"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "¿Realmente quieres eliminar este álbum y todas sus imágenes? Esto no se podrá deshacer."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "Eliminar álbum"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "Te gusta esto"
@ -3112,9 +3123,6 @@ msgstr "Importación automática"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "El sistema analiza automáticamente cualquier contenido mediante una observación continua de la ruta %path%"
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "El sistema analiza automáticamente cualquier contenido mediante una observación continua de la ruta %path%"
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "Los trabajos completados serán automáticamente reiniciados luego de %n %m."
@ -3167,16 +3175,9 @@ msgstr "Puedes correr el comando en paralelo cambiando el valor entero de %s%."
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "Todos los permisos del sistema de archivos deben estar concedidos para el usuario crontab en %path%"
msgid "Required crontab entry:"
msgstr "Entrada obligatoria de crontab:"
msgid "Add import job"
msgstr "Añadir trabajo de importación"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "Esta herramienta permite agregar contenido de manera masiva a tu sitio web al indicar una ruta de sistema con el contenido que quieres importar. Soporta la adición de usuarios, álbumes e imágenes usando una estructura de carpetas. Puedes aprender más sobre la estructura de carpetas, adición de metadata y todo lo relacionado a esta herramienta en nuestra %d."
msgid "Process import"
msgstr "Procesar importación"
@ -3544,14 +3545,6 @@ msgstr "Habilitar subidas"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "Habilita esto si quieres permitir subidas de imágenes. Esta configuración no afecta a los administradores."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Subidas de invitados"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Habilita esto si quieres permitir permitir que usuarios no registrados suban imágenes"
msgid "Upload user interface"
msgstr "Interfaz de subida"
@ -3561,6 +3554,23 @@ msgstr "Contenedor en página"
msgid "route"
msgstr "ruta"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Subidas de invitados"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Habilita esto si quieres permitir permitir que usuarios no registrados suban imágenes"
msgid "Moderate uploads"
msgstr "Moderar subidas"
msgid "Guests"
msgstr "Invitados"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "Habilita esto para moderar las subidas entrantes. El contenido objetivo requerirá moderación para ser aprobado."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "Habilitar códigos de inserción (subidas)"
@ -3976,6 +3986,13 @@ msgstr "Límite semanal"
msgid "Monthly limit"
msgstr "Límite mensual"
#, php-format
msgid "Lock %s editing"
msgstr "Bloquear edición de %s"
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "Habilita esto para prevenir que los usuarios cambien la marca no segura para trabajo (NSFW). Cuando está habilitado, solo administrador y gerentes tendrán este permiso."
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "Mostrar contenido no seguro en los listados"
@ -4120,26 +4137,6 @@ msgstr "Color en valor hexadecimal"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "Usa esto para establecer el color principal del tema. El valor debe estar en <a href=\"%s\" target=\"_blank\">formato hex</a>."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "Color de barra superior"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Negro"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Blanco"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "Si estableces esto en \"blanco\" la barra superior y todos los tonos negros se cambiaran a tonos blancos."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "Color de botón de barra superior"
@ -4169,6 +4166,18 @@ msgstr "Rojo"
msgid "Grey"
msgstr "Gris"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Negro"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Blanco"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "Color de los botones de la barra superior como el botón \"Crear cuenta\"."
@ -4312,9 +4321,12 @@ msgstr "Página de caída"
msgid "Split landing + images"
msgstr "Pág. caída + imágenes"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "Enrutar explorar"
#, php-format
msgid "Route %s"
msgstr "Ruta %s"
msgid "upload"
msgstr "subir"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4825,6 +4837,28 @@ msgstr "Código de comentarios"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus, Facebook o lo que quieras. Será usado en la vista de imagen."
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "Moderar automáticamente el contenido usando el servicio de %s."
msgid "Automatic approve"
msgstr "Aprobación automática"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "Habilita esto para aprobar automáticamente el contenido moderado por este servicio."
msgid "Block content"
msgstr "Bloquear contenido"
msgid "Adult"
msgstr "Adulto"
msgid "Teen and adult"
msgstr "Adolescente y adulto"
msgid "Flag NSFW"
msgstr "Marcar NSFW"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "Código de analíticas"
@ -4882,6 +4916,9 @@ msgstr "Reproducir GIF"
msgid "Load full resolution"
msgstr "Cargar tamaño completo"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "¿Realmente quieres aprobar todo el contenido seleccionado? Esto no se podrá deshacer."
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "Agregada a %a y categorizada en %c"
@ -5306,10 +5343,6 @@ msgstr "La imagen de fondo de perfil se eliminada. Esto no se podrá deshacer.
msgid "Delete background"
msgstr "Eliminar fondo"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "Editar perfil"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-04-16 20:33+0000\n"
"PO-Revision-Date: 2020-04-16 20:33+0000\n"
"POT-Creation-Date: 2020-09-02 17:14+0000\n"
"PO-Revision-Date: 2020-09-02 17:14+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: it\n"
@ -203,6 +203,9 @@ msgstr "È necessario immettere il nome dell'album."
msgid "Confirm"
msgstr "Confermare"
msgid "The content has been approved."
msgstr "Il contenuto è stato approvato."
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "Seleziona album esistente"
@ -354,6 +357,9 @@ msgid_plural "Albums"
msgstr[0] "Album"
msgstr[1] "Album"
msgid "Approve"
msgstr "Approvare"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -763,6 +769,16 @@ msgid_plural "Users"
msgstr[0] "Utente"
msgstr[1] "Utenti"
msgid "adult"
msgstr "adulto"
msgid "teen"
msgstr "adolescente"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "Il contenuto di tipo %s è vietato"
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1382,11 +1398,6 @@ msgstr "Pagina immagine"
msgid "Inside viewer top (image page)"
msgstr "Visualizzatore interno superiore (pagina immagine)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "Dimensioni previste dell'annuncio 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "Visualizzatore interno inferiore (pagina immagine)"
@ -1505,10 +1516,6 @@ msgstr "Tonalità tema non valida"
msgid "Invalid theme main color"
msgstr "Colore principale del tema non valido"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "Colore top bar del tema non valido"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "Colore pulsante top bar del tema non valido"
@ -1843,6 +1850,9 @@ msgstr "Combinazione Username/Email/password errata"
msgid "Sign in"
msgstr "Accedi"
msgid "Moderate"
msgstr "Moderare"
msgid "Upload images"
msgstr "Carica immagini"
@ -2227,6 +2237,12 @@ msgstr "azzerare"
msgid "close"
msgstr "chiudi"
msgid "Note"
msgstr "Nota"
msgid "We must approve the uploaded content before being able to share."
msgstr "Dobbiamo approvare il contenuto caricato prima di poterlo condividere."
msgid "copy"
msgstr "copia"
@ -2238,10 +2254,6 @@ msgstr "inserire"
msgid "Remove"
msgstr "Rimuovi"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "Modifica immagine"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2535,6 +2547,12 @@ msgstr "Descrizione sintetica di questa categoria"
msgid "Untitled image"
msgstr "Immagine senza titolo"
msgid "Mark this if the image is not safe for work"
msgstr "Segna questo se l'immagine non è sicura"
msgid "Flag not safe"
msgstr "Segnala non sicuro"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "Percorso"
@ -2820,18 +2838,6 @@ msgstr "Home"
msgid "There's nothing to show here."
msgstr "Non c'è niente da mostrare qui."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "Modifica dettagli immagini"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "Modifica dettagli album"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "Tutte le immagini verranno spostate in questo album appena creato. È anche possibile spostare le immagini da un<a class=\"modal-switch\" data-switch=\"move-existing-album\">album esistente</a>."
@ -2872,6 +2878,12 @@ msgstr "Conferma che i contenuti non sono adatti a tutti"
msgid "Do you really want to flag this content as unsafe?"
msgstr "Vuoi davvero contrassegnare questo contenuto come non adatto a tutti?"
msgid "Confirm approval"
msgstr "Conferma l'approvazione"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "Vuoi davvero rimuovere tutto il contenuto selezionato? Questo non può essere annullato."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2881,6 +2893,9 @@ msgstr "Conferma la cancellazione"
msgid "Do you really want to remove this content? This can't be undone."
msgstr "Vuoi davvero cancellare questo contenuto? Questa azione non può essere annullata."
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "Vuoi davvero rimuovere tutto il contenuto selezionato? Questo non può essere annullato."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "Vuoi davvero cancellare tutto il contenuto selezionato? Questa azione non può essere annullata."
@ -3054,10 +3069,6 @@ msgstr "Questo contenuto è privato"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "Vuoi davvero cancellare questo album e le relative immagini? Questa azione non può essere annullata."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "Cancella album"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "Ti piace"
@ -3112,9 +3123,6 @@ msgstr "Importazione automatica"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "Il sistema analizza automaticamente qualsiasi contenuto mediante un'osservazione continua del percorso %path%."
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "Il sistema analizza automaticamente qualsiasi contenuto mediante un'osservazione continua del percorso %path%."
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "I lavori completati verranno riavviati automaticamente dopo %n %m."
@ -3167,16 +3175,9 @@ msgstr "È possibile eseguire il comando in parallelo modificando il valore inte
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "Tutte le autorizzazioni del file system devono essere concesse per l'utente crontab in %path%"
msgid "Required crontab entry:"
msgstr "Voce crontab richiesta:"
msgid "Add import job"
msgstr "Aggiungi lavoro di importazione"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "Questo strumento consente di aggiungere contenuti al tuo sito web puntando un percorso di sistema con il contenuto che desideri importare. Supporta l'aggiunta di utenti, album e immagini utilizzando una struttura basata su cartelle. Puoi saperne di più sulla struttura delle cartelle, aggiungere metadati e tutto su questo strumento nel nostro %d."
msgid "Process import"
msgstr "Processo di importazione"
@ -3544,14 +3545,6 @@ msgstr "Caricamenti"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "Abilitare questa opzione se si desidera consentire il caricamento di immagini. Questa impostazione non influisce sugli amministratori."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Caricamenti anonimi"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Abilita quest'opzione se vuoi consentire a utenti non registrati di caricare immagini."
msgid "Upload user interface"
msgstr "Carica l'interfaccia utente"
@ -3561,6 +3554,23 @@ msgstr "Contenitore in-page"
msgid "route"
msgstr "itinerario"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Caricamenti anonimi"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Abilita quest'opzione se vuoi consentire a utenti non registrati di caricare immagini."
msgid "Moderate uploads"
msgstr "Caricamenti da moderare"
msgid "Guests"
msgstr "Ospiti"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "Abilita questa opzione per moderare i caricamenti in arrivo. Il contenuto di destinazione richiederà moderazione per l'approvazione."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "Attiva i codici embed (uploader)"
@ -3976,6 +3986,13 @@ msgstr "Limite settimanale"
msgid "Monthly limit"
msgstr "Limite mensile"
#, php-format
msgid "Lock %s editing"
msgstr "Blocca la modifica di %s"
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "Abilitalo per impedire agli utenti di modificare il flag NSFW. Se abilitato, solo l'amministratore e i gestori avranno questa autorizzazione."
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "Mostra contenuto non sicuro in lista"
@ -4120,26 +4137,6 @@ msgstr "Valore di colore esadecimale"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "Usare questo per impostare il colore del tema principale. Il valore deve essere in <a href=\"%s\" target=\"_blank\">formato esadecimale</a>."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "Colore Top bar"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Nero"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Bianco"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "Se si imposta su \"bianco\" sulla barra superiore e tutte le tonalità di nero verranno modificati in toni di bianco."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "Colore pulsante della top bar"
@ -4169,6 +4166,18 @@ msgstr "Rosso"
msgid "Grey"
msgstr "Grigio"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Nero"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Bianco"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "Colore dei pulsanti come \"Crea account\" della top bar."
@ -4312,9 +4321,12 @@ msgstr "Arrivo pagina"
msgid "Split landing + images"
msgstr "Split atterraggio + immagini"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "Percorso da esplorare"
#, php-format
msgid "Route %s"
msgstr "Itinerario %s"
msgid "upload"
msgstr "caricare"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4825,6 +4837,28 @@ msgstr "Codice di commento"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus, Facebook e tutto quello che vuoi. Sarà usato in visualizzazione dell'immagine per condividerla"
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "Modera automaticamente il contenuto utilizzando il servizio %s."
msgid "Automatic approve"
msgstr "Approvazione automatica"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "Abilitalo per approvare automaticamente i contenuti moderati da questo servizio."
msgid "Block content"
msgstr "Blocca contenuto"
msgid "Adult"
msgstr "Adulto"
msgid "Teen and adult"
msgstr "Adolescente e adulto"
msgid "Flag NSFW"
msgstr "Segnala NSFW"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "Codice di Google Analytics"
@ -4882,6 +4916,9 @@ msgstr "Riproduci GIF"
msgid "Load full resolution"
msgstr "Caricare con una piena risoluzione"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "Vuoi davvero rimuovere tutto il contenuto selezionato? Questo non può essere annullato."
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "Aggiunto a %a e classificati in%c"
@ -5306,10 +5343,6 @@ msgstr "L'immagine di sfondo del profilo sarà cancellata. Questa azione non pu
msgid "Delete background"
msgstr "Elimina sfondo"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "Edita profilo"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-04-16 20:33+0000\n"
"PO-Revision-Date: 2020-04-16 20:33+0000\n"
"POT-Creation-Date: 2020-09-02 17:14+0000\n"
"PO-Revision-Date: 2020-09-02 17:14+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: ja\n"
@ -203,6 +203,9 @@ msgstr "アルバム名を入力して下さい。"
msgid "Confirm"
msgstr "確認"
msgid "The content has been approved."
msgstr "コンテンツは承認されました。"
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "既に存在するアルバムを選択"
@ -353,6 +356,9 @@ msgid "Album"
msgid_plural "Albums"
msgstr[0] "アルバム"
msgid "Approve"
msgstr "承認"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -750,6 +756,16 @@ msgid "User"
msgid_plural "Users"
msgstr[0] "ユーザ"
msgid "adult"
msgstr "アダルト"
msgid "teen"
msgstr "未成年"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "コンテンツタイプ %s は許可されていません。"
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1367,11 +1383,6 @@ msgstr "画像ページ"
msgid "Inside viewer top (image page)"
msgstr "画像ビューア内上部 (画像ページ)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "バナーサイズは 728x90を想定"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "画像ビューア内下部(画像ページ)"
@ -1490,10 +1501,6 @@ msgstr "テーマのトーン(色調)が有効ではありません。"
msgid "Invalid theme main color"
msgstr "無効なメインカラーです。"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "無効なトップバーの色です。"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "無効なトップバーのボタンの色です。"
@ -1828,6 +1835,9 @@ msgstr "ユーザ名/電子メールアドレスとパスワードの組合せ
msgid "Sign in"
msgstr "サインイン"
msgid "Moderate"
msgstr "判定"
msgid "Upload images"
msgstr "画像をアップロード"
@ -2212,6 +2222,12 @@ msgstr "リセット"
msgid "close"
msgstr "閉じる"
msgid "Note"
msgstr "ノート"
msgid "We must approve the uploaded content before being able to share."
msgstr "アップロードされた内容が承認されてから、共有できるようにしなければなりません。"
msgid "copy"
msgstr "コピー"
@ -2223,10 +2239,6 @@ msgstr "挿入"
msgid "Remove"
msgstr "削除"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "画像の編集"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2520,6 +2532,12 @@ msgstr "このカテゴリの簡単な説明"
msgid "Untitled image"
msgstr "画像のタイトルを入力"
msgid "Mark this if the image is not safe for work"
msgstr "画像が安全に作業できない場合には、マークを付けてください。"
msgid "Flag not safe"
msgstr "安全ではない印"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "パス"
@ -2805,18 +2823,6 @@ msgstr "ホーム"
msgid "There's nothing to show here."
msgstr "表示するものはありません。"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "画像の詳細の編集"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "アルバムの詳細の編集"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "すべての画像は最新のアルバムへ移動されます。 <a class=\"modal-switch\" data-switch=\"move-existing-album\">既に存在する他のアルバム</a>へ移動することもできます。"
@ -2857,6 +2863,12 @@ msgstr "コンテンツがファミリーセーフティに接触すると確認
msgid "Do you really want to flag this content as unsafe?"
msgstr "このコンテンツが本当にファミリーセーフティに接触するとマークしますか?"
msgid "Confirm approval"
msgstr "承認を確認"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2866,6 +2878,9 @@ msgstr "削除の確認"
msgid "Do you really want to remove this content? This can't be undone."
msgstr "このコンテンツを本当に削除しますか?一度削除すると元には戻せません。"
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。"
@ -3039,10 +3054,6 @@ msgstr "このコンテンツは非公開です。"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "本当にこのアルバムとアルバムにある全ての画像を削除しますか?削除すると元には戻せません。"
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "アルバムを削除する"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "いいね!しました"
@ -3097,9 +3108,6 @@ msgstr "自動インポート"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "システムは、 パス %path% を継続的に観測することで自動的にコンテンツの解析を行います。"
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "システムは、継続的にパス %path% 内のコンテンツを自動的に解析します。"
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "完了したジョブは、%n %m 後に自動的に開始します。"
@ -3152,16 +3160,9 @@ msgstr "%s% の値でコマンドを並列実行することができます。"
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "crontabユーザーへ %path% へのファイルシステムにアクセスする権利を付与してください。"
msgid "Required crontab entry:"
msgstr "crontabが必要です"
msgid "Add import job"
msgstr "インポートジョブに追加"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "このツールは、インポートするコンテンツのパスが指定された場合、一括でサイトに追加をします。また、ユーザー、アルバム、画像をフォルダ形式として使用できます。メタデータやツール内で提供されるものについてのフォルダ形式は、%dに詳細があります。"
msgid "Process import"
msgstr "インポート処理"
@ -3529,14 +3530,6 @@ msgstr "アップロード"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "画像のアップロードを許可する場合には有効にしてください。この設定は管理者へ影響しません。"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "ゲストとしてアップロード"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "未登録ユーザのアップロードを許可するときに有効にしてください。"
msgid "Upload user interface"
msgstr "アップロード用ユーザインターフェース"
@ -3546,6 +3539,23 @@ msgstr "ページ上のコンテナー"
msgid "route"
msgstr "ルート"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "ゲストとしてアップロード"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "未登録ユーザのアップロードを許可するときに有効にしてください。"
msgid "Moderate uploads"
msgstr "アップロードを判定"
msgid "Guests"
msgstr "ゲスト"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "これを有効にすると、アップロードを判定することができます。対象となるコンテンツは、承認のための判定が必要になります。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "埋込みコード(アップロードしたユーザへのリンク)を有効にします。"
@ -3961,6 +3971,13 @@ msgstr "1週間の許容量"
msgid "Monthly limit"
msgstr "1ヶ月の許容量"
#, php-format
msgid "Lock %s editing"
msgstr "%s の編集をロック "
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "これを有効にすると、ユーザーがNSFWフラグを変更できなくなります。有効にすると、管理者と管理者のみがこの権限を持つことになります。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "リスト中にファミリーセーフティに接触するコンテンツが含まれている場合でも表示する"
@ -4105,26 +4122,6 @@ msgstr "16進数の色の値"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "メインのテーマ色を設定するにはこちらをご利用ください。値は、<a href=\"%s\" target=\"_blank\">16進数</a>で入力する必要があります。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "トップバーの色"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "黒"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "白"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "カラーを白にセットすると、トップバーなど全ての黒系は、全て白系に変わります。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "トップバーのボタンの色"
@ -4154,6 +4151,18 @@ msgstr "赤"
msgid "Grey"
msgstr "灰色"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "黒"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "白"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "トップの”アカウントを作成”ボタンなどの色を設定します。"
@ -4297,9 +4306,12 @@ msgstr "ランディングページ"
msgid "Split landing + images"
msgstr "ランディング + 画像 を分割"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "「もっと見る」の最初のページ"
#, php-format
msgid "Route %s"
msgstr "ルート%s"
msgid "upload"
msgstr "アップロード"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4810,6 +4822,28 @@ msgstr "コメントコード"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus,Facebookなどが必要な場合には、イメージ表示を使って下さい。"
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "%s を使用してコンテンツを自動で判定する。"
msgid "Automatic approve"
msgstr "自動承認"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "このサービスによってモデレートされたコンテンツを自動的に承認するには、これを有効にします。"
msgid "Block content"
msgstr "コンテンツをブロック"
msgid "Adult"
msgstr "アダルト"
msgid "Teen and adult"
msgstr "未成年とアダルト"
msgid "Flag NSFW"
msgstr "NSFW印"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "アクセス解析用コード"
@ -4867,6 +4901,9 @@ msgstr "GIF再生"
msgid "Load full resolution"
msgstr "最大解像度で表示"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "選択されたコンテンツを本当に削除しますか?一度削除すると元には戻せません。"
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "%a へ追加してカテゴリ名: %c に分類"
@ -5291,10 +5328,6 @@ msgstr "このプロフィールの背景画像は削除されます。削除す
msgid "Delete background"
msgstr "背景の削除"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "プロフィールの編集"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-05-16 19:37+0000\n"
"PO-Revision-Date: 2020-05-16 19:37+0000\n"
"POT-Creation-Date: 2020-09-25 18:53+0000\n"
"PO-Revision-Date: 2020-09-25 18:53+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: ko\n"
@ -29,7 +29,7 @@ msgstr "이메일 주소가 잘못되었습니다"
#: ../../../app/routes/route.settings.php:181
#: ../../../app/routes/route.signup.php:100
msgid "Invalid username"
msgstr "사용자 이름이 잘못되었습니다"
msgstr "잘못된 사용자명"
#: ../../../app/install/installer.php:1174
#: ../../../app/routes/route.account.php:357
@ -37,12 +37,12 @@ msgstr "사용자 이름이 잘못되었습니다"
#: ../../../app/routes/route.settings.php:323
#: ../../../app/routes/route.signup.php:103
msgid "Invalid password"
msgstr "비밀번호가 잘못되었습니다"
msgstr "잘못된 암호"
#: ../../../app/install/installer.php:1183
#: ../../../app/routes/route.dashboard.php:667
msgid "Invalid website mode"
msgstr "웹사이트 모드가 잘못되었습니다"
msgstr "잘못된 웹사이트 모드"
#: ../../../app/install/template/ready.php:31
#: ../../../app/themes/Peafowl/views/dashboard.php:1760
@ -77,12 +77,12 @@ msgstr "웹사이트 모드는 언제든지 바꿀 수 있습니다."
#: ../../../app/install/template/ready.php:47
#: ../../../app/themes/Peafowl/views/dashboard.php:330
msgid "Community"
msgstr "커뮤니티"
msgstr "모임"
#: ../../../app/install/template/ready.php:47
#: ../../../app/themes/Peafowl/views/dashboard.php:330
msgid "Personal"
msgstr "개인"
msgstr "개인"
#: ../../../app/install/update/template/update.js:19
#, javascript-format
@ -116,7 +116,7 @@ msgstr "시스템 파일이 이미 최신 상태입니다"
#: ../../../app/install/update/template/update.js:49
#, javascript-format
msgid "Starting v%s download"
msgstr "v%s 다운로드를 시작하는입니다"
msgstr "v%s 버전 다운로드를 시작 중"
#: ../../../app/install/update/template/update.js:60
#, javascript-format
@ -203,6 +203,9 @@ msgstr "앨범 이름은 필수 요소입니다."
msgid "Confirm"
msgstr "확인"
msgid "The content has been approved."
msgstr "게시물을 승인하였습니다."
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "기존 앨범 선택하기"
@ -224,7 +227,7 @@ msgstr "오류가 발생했습니다. 잠시 후에 다시 시도해주세요."
#: ../../../app/lib/chevereto.js:1259 ../../../app/lib/chevereto.js:1339
#: ../../../app/lib/chevereto.min.js:60 ../../../app/lib/chevereto.min.js:65
msgid "Please select a valid image file type."
msgstr "올바른 이미지 파일 유형을 선택해주세요."
msgstr "올바른 이미지 파일 유형을 선택하십시오."
#: ../../../app/lib/chevereto.js:1264 ../../../app/lib/chevereto.js:1344
#: ../../../app/lib/chevereto.min.js:61 ../../../app/lib/chevereto.min.js:66
@ -260,12 +263,12 @@ msgstr "비밀번호가 일치하지 않습니다"
#: ../../../app/lib/chevereto.js:1547 ../../../app/lib/chevereto.min.js:71
#, javascript-format
msgid "Update available v%s"
msgstr "v%s 업데이트가 가능합니다"
msgstr "v%s 버전 업데이트가 가능합니다"
#: ../../../app/lib/chevereto.js:1548 ../../../app/lib/chevereto.min.js:71
#, javascript-format
msgid "There is an update available for your system. You can automatic download and install this update or go to %s to proceed to download the file."
msgstr "시스템에 적용할 수 있는 업데이트가 발견되었습니다. 이 업데이트를 자동으로 다운로드하여 설치하거나 %s로(으로) 이동하여 파일 다운로드할 수 있습니다."
msgstr "시스템에 적용할 수 있는 업데이트가 발견되었습니다. 이 업데이트를 자동으로 다운로드하여 설치하거나 %s 로(으로) 이동하여 파일 다운로드를 진행할 수 있습니다."
#: ../../../app/lib/chevereto.js:1548 ../../../app/lib/chevereto.min.js:71
msgid "The release notes for this update are:"
@ -273,7 +276,7 @@ msgstr "이 업데이트의 릴리즈 노트는 다음과 같습니다:"
#: ../../../app/lib/chevereto.js:1548 ../../../app/lib/chevereto.min.js:71
msgid "Update now"
msgstr "지금 업데이트 하기"
msgstr "업데이트 하기"
#: ../../../app/themes/Peafowl/header.php:285
#: ../../../app/themes/Peafowl/header.php:332
@ -323,7 +326,7 @@ msgstr "이 웹사이트는 최신 %s 버전을 사용 중입니다"
#: ../../../app/themes/Peafowl/views/settings.php:348
#: ../../../lib/Peafowl/peafowl.js:3520 ../../../lib/Peafowl/peafowl.min.js:234
msgid "loading"
msgstr "로딩 중"
msgstr "불러오는 중"
msgid "Toggle select"
msgstr "선택 토글"
@ -353,6 +356,9 @@ msgid "Album"
msgid_plural "Albums"
msgstr[0] "앨범"
msgid "Approve"
msgstr "승인"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -408,7 +414,7 @@ msgstr[0] "이미지"
#: ../../../app/themes/Peafowl/header.php:56
#, php-format, javascript-format
msgid "%s's Albums"
msgstr "%s의 앨범"
msgstr "%s의 앨범"
#: ../../../app/lib/chevereto.js:2860 ../../../app/lib/chevereto.min.js:154
msgid "Image edited successfully."
@ -605,7 +611,7 @@ msgstr "링크"
#: ../../../app/themes/Peafowl/views/signup.php:49
#: ../../../app/themes/Peafowl/views/signup.php:50
msgid "Password"
msgstr "비밀번호"
msgstr "호"
#: ../../../app/lib/classes/class.image.php:1230
msgid "view"
@ -665,10 +671,10 @@ msgid_plural "likes"
msgstr[0] "좋아요"
msgid "Recent"
msgstr "최신"
msgstr "최신 게시물"
msgid "Trending"
msgstr "트드"
msgstr "트드"
#: ../../../app/routes/route.dashboard.php:1163
msgid "Top users"
@ -723,7 +729,7 @@ msgstr "인기순"
#: ../../../app/themes/Peafowl/views/dashboard.php:305
#: ../../../app/themes/Peafowl/views/explore.php:9
msgid "Explore"
msgstr "둘러보기"
msgstr "탐색"
msgid "Animated"
msgstr "움짤"
@ -750,6 +756,12 @@ msgid "User"
msgid_plural "Users"
msgstr[0] "사용자"
msgid "adult"
msgstr "성인"
msgid "teen"
msgstr "미성년자"
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -849,7 +861,7 @@ msgid "We use our own and third party cookies to improve your browsing experienc
msgstr "이 웹사이트는 개인화되고 맞춤화된 서비스를 제공하기 위해서, 사용자의 정보를 저장하고 수시로 불러오는 쿠키(cookie)를 사용합니다. 웹사이트 이용을 계속하는 것은 %cookie_policy_link에 동의하는 것으로 간주합니다."
msgid "I understand"
msgstr "동의합니다"
msgstr "동의합니다."
#: ../../../app/routes/route.account.php:72
#: ../../../app/themes/Peafowl/header.php:295
@ -858,12 +870,12 @@ msgstr "동의합니다"
#: ../../../app/themes/Peafowl/views/login.php:41
#: ../../../app/themes/Peafowl/views/settings.php:299
msgid "Forgot password?"
msgstr "비밀번호를 잊으셨나요?"
msgstr "호를 잊으셨나요?"
#: ../../../app/routes/route.account.php:73
#: ../../../app/themes/Peafowl/views/account/password-reset.php:8
msgid "Reset password"
msgstr "비밀번호 재설정하기"
msgstr "암호 재설정"
#: ../../../app/routes/route.account.php:74
#: ../../../app/themes/Peafowl/views/account/resend-activation.php:8
@ -906,7 +918,7 @@ msgstr "이메일 주소가 없는 사용자입니다."
#: ../../../app/themes/Peafowl/views/request-denied.php:8
#: ../../../content/pages/default/contact.php:14
msgid "Request denied"
msgstr "요청이 거부되었습니다"
msgstr "요청이 거부"
#: ../../../app/routes/route.account.php:145
msgid "Account needs to be activated to use this feature"
@ -914,7 +926,7 @@ msgstr "이 기능을 사용하려면 계정이 활성화되어야 합니다"
#: ../../../app/routes/route.account.php:151
msgid "Account already activated"
msgstr "계정이 이미 활성화되었습니다"
msgstr "계정이 이미 활성화"
#: ../../../app/routes/route.account.php:192
msgid "Allow up to 15 minutes for the email. You can try again later."
@ -923,7 +935,7 @@ msgstr "이메일을 다시 보내기 위해서는 최대 15분이 필요합니
#: ../../../app/routes/route.account.php:231
#, php-format
msgid "Reset your password at %s"
msgstr "%s의 비밀번호 재설정 하기"
msgstr "귀하의 암호 재설정하기 - %s"
#: ../../../app/routes/route.account.php:233
#: ../../../app/routes/route.account.php:454
@ -947,7 +959,7 @@ msgid "Email already being used"
msgstr "이메일 주소가 이미 사용 중입니다"
msgid "Password required"
msgstr "비밀번호가 필요합니다"
msgstr "암호 필요"
#: ../../../app/routes/route.album.php:115
#: ../../../app/themes/Peafowl/snippets/modal_share.php:4
@ -1016,10 +1028,10 @@ msgstr "업데이트 설치하기"
#: ../../../app/routes/route.dashboard.php:162
msgid "check for updates"
msgstr "업데이트 검사하기"
msgstr "업데이트 확인하기"
msgid "Support"
msgstr "고객지원"
msgstr "지원"
#, php-format
msgid "Need help? Go to %s and you will get help quickly."
@ -1209,7 +1221,7 @@ msgstr "이미지 업로드"
#: ../../../app/routes/route.dashboard.php:232
msgid "Categories"
msgstr "카테고리"
msgstr "범주"
msgid "Consent screen"
msgstr "동의 화면"
@ -1252,7 +1264,7 @@ msgstr "외부 저장소"
#: ../../../app/routes/route.dashboard.php:241
#: ../../../app/themes/Peafowl/views/dashboard.php:99
msgid "Email"
msgstr "이메일"
msgstr "전자우편"
#: ../../../app/routes/route.dashboard.php:242
#: ../../../app/themes/Peafowl/views/album.php:79
@ -1367,11 +1379,6 @@ msgstr "이미지 페이지"
msgid "Inside viewer top (image page)"
msgstr "뷰어의 상단 (이미지 페이지)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "배너 크기 공간 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "뷰어의 하단 (이미지 페이지)"
@ -1484,16 +1491,12 @@ msgstr "값이 잘못되었습니다"
#: ../../../app/routes/route.dashboard.php:622
msgid "Invalid theme tone"
msgstr "테마 톤이 잘못되었습니다"
msgstr "잘못된 테마 톤"
#: ../../../app/routes/route.dashboard.php:627
msgid "Invalid theme main color"
msgstr "테마 주 색상이 잘못되었습니다"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "테마 상단 바 색상이 잘못되었습니다"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "테마 상단 바 버튼 색상이 잘못되었습니다"
@ -1828,6 +1831,9 @@ msgstr "사용자 이름 또는 이메일 주소의 비밀번호가 잘못되었
msgid "Sign in"
msgstr "로그인"
msgid "Moderate"
msgstr "중재하기"
msgid "Upload images"
msgstr "이미지 업로드"
@ -1882,11 +1888,11 @@ msgstr "웹사이트가 잘못되었습니다"
#: ../../../app/routes/route.settings.php:313
msgid "Wrong password"
msgstr "비밀번호가 일치하지 않습니다"
msgstr "틀린 암호"
#: ../../../app/routes/route.settings.php:316
msgid "Use a new password"
msgstr "새로운 비밀번호 사용하기"
msgstr "새로운 호 사용하기"
#: ../../../app/routes/route.settings.php:416
#: ../../../app/themes/Peafowl/views/dashboard.php:2067
@ -1896,11 +1902,11 @@ msgstr "변경 사항이 저장되었습니다."
#: ../../../app/routes/route.settings.php:435
msgid "Password has been changed"
msgstr "비밀번호가 변경되었습니다"
msgstr "암호가 변경되었습니다."
#: ../../../app/routes/route.settings.php:440
msgid "Password has been created."
msgstr "비밀번호가 생성되었습니다"
msgstr "암호가 생성되었습니다."
#: ../../../app/routes/route.settings.php:455
msgid "Wrong Username/Email values"
@ -2212,6 +2218,9 @@ msgstr "초기화"
msgid "close"
msgstr "닫기"
msgid "Note"
msgstr "비고"
msgid "copy"
msgstr "복사"
@ -2223,10 +2232,6 @@ msgstr "삽입"
msgid "Remove"
msgstr "제거"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "이미지 편집"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2479,10 +2484,10 @@ msgid "Private (anyone with the link)"
msgstr "비공개(링크)"
msgid "Private (password protected)"
msgstr "비공개(비밀번호)"
msgstr "비공개 (암호로 보호 됨)"
msgid "Album password"
msgstr "앨범 비밀번호"
msgstr "앨범 호"
#: ../../../app/themes/Peafowl/snippets/form_category_edit.php:4
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:3
@ -2520,6 +2525,9 @@ msgstr "이 카테고리에 대해 알려주세요"
msgid "Untitled image"
msgstr "제목 없는 이미지"
msgid "Flag not safe"
msgstr "미안전 표기"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "경로"
@ -2710,7 +2718,7 @@ msgstr "서버 사용자 이름"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:127
msgid "Server password"
msgstr "서버 비밀번호"
msgstr "서버 호"
msgid "Local path"
msgstr "내부 경로"
@ -2805,18 +2813,6 @@ msgstr "홈"
msgid "There's nothing to show here."
msgstr "볼 수 있는 게시물이 없습니다."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "이미지 속성 편집하기"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "앨범 속성 편집하기"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "모든 이미지는 새로 만든 앨범으로 이동됩니다. 또는 <a class=\"modal-switch\" data-switch=\"move-existing-album\">기존 앨범</a>으로 이동시킬 수 있습니다."
@ -2857,6 +2853,9 @@ msgstr "후방주의 플래그 설정 확인"
msgid "Do you really want to flag this content as unsafe?"
msgstr "선택한 게시물에 후방주의 플래그를 설정하시겠습니까?"
msgid "Confirm approval"
msgstr "승인 확인"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2871,10 +2870,10 @@ msgid "Do you really want to remove all the selected content? This can't be undo
msgstr "선택한 게시물을 삭제하시겠습니까? 이 작업은 원래대로 되돌릴 수 없습니다."
msgid "Fullscreen"
msgstr "전체 화면"
msgstr "전체화면"
msgid "Exit fullscreen"
msgstr "전체 화면 나가기"
msgstr "전체화면 나가기"
#: ../../../app/themes/Peafowl/views/image.php:57
msgid "Guest"
@ -2887,7 +2886,7 @@ msgid "Private album"
msgstr "비공개 앨범"
msgid "Password protected"
msgstr "비밀번호 보호"
msgstr "암호로 보호 됨"
msgid "Uploaded by guest"
msgstr "손님의 업로드"
@ -3018,7 +3017,7 @@ msgid "%d characters min"
msgstr "최소 %d개의 문자를 입력해주세요"
msgid "Password strength"
msgstr "비밀번호 강도"
msgstr "호 강도"
#: ../../../app/themes/Peafowl/views/account/password-reset.php:35
#: ../../../app/themes/Peafowl/views/settings.php:312
@ -3039,10 +3038,6 @@ msgstr "이 게시물은 비공개 게시물입니다"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "이 앨범과 앨범의 모든 이미지를 삭제하시겠습니까? 이 작업은 원래대로 되돌릴 수 없습니다."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "앨범 삭제하기"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "좋아하는 게시물입니다"
@ -3097,9 +3092,6 @@ msgstr "자동으로 가져오기"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "시스템은 %path% 경로를 지속적으로 감시하여 자동으로 내용물을 구문 분석합니다."
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "시스템은 %path% 경로를 지속적으로 감시하여 자동으로 내용물을 구문분석(파싱)합니다."
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "완료된 작업은 %n %m 후에 자동으로 재시작됩니다."
@ -3113,13 +3105,13 @@ msgid "Working"
msgstr "작업 중"
msgid "Paused"
msgstr "일시중지"
msgstr "멈춤"
msgid "Canceled"
msgstr "취소"
msgstr "취소"
msgid "Completed"
msgstr "완료"
msgstr "완료"
msgid "Actions"
msgstr "액션"
@ -3128,7 +3120,7 @@ msgid "Reset"
msgstr "재설정"
msgid "Pause"
msgstr "일시중지"
msgstr "멈춤"
msgid "Resume"
msgstr "재시작"
@ -3152,16 +3144,9 @@ msgstr "%s% 의 정수 값을 변경하여 명령을 병렬로 다중 실행할
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "crontab 사용자에게 %path% 경로의 모든 파일 시스템 권한을 부여해야 합니다."
msgid "Required crontab entry:"
msgstr "필수 crontab 항목:"
msgid "Add import job"
msgstr "가져오기 작업 추가하기"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "이 도구를 사용하면 가져올 내용물의 시스템 경로를 지정하여 웹사이트에 내용물을 대량으로 추가할 수 있습니다. 폴더 기반 구조를 사용하여 사용자, 앨범 및 이미지의 추가를 지원합니다. 폴더 구조, 메타데이터 추가 및 이 도구에 대한 모든 정보에 대해 더 알아보려면 %d를 참조해주세요."
msgid "Process import"
msgstr "가져오기 실행하기"
@ -3199,15 +3184,15 @@ msgstr "사용자 추가"
#: ../../../app/themes/Peafowl/views/dashboard.php:87
#: ../../../app/themes/Peafowl/views/settings.php:121
msgid "Role"
msgstr "권한"
msgstr "역할"
msgid "Manager"
msgstr "운영자"
msgstr "관리자"
#: ../../../app/themes/Peafowl/views/dashboard.php:89
#: ../../../app/themes/Peafowl/views/settings.php:125
msgid "Administrator"
msgstr "관리자"
msgstr "최고관리자"
#: ../../../app/themes/Peafowl/header.php:338
#: ../../../app/themes/Peafowl/views/account/email-needed.php:15
@ -3387,16 +3372,16 @@ msgstr "활성 페이지에만 액세스할 수 있습니다."
#: ../../../app/themes/Peafowl/views/dashboard.php:458
#: ../../../app/themes/Peafowl/views/dashboard.php:595
msgid "Type"
msgstr "종류"
msgstr "유형"
msgid "Terms of service"
msgstr "이용 약관"
msgstr "이용약관"
msgid "Privacy"
msgstr "개인 정보 보호 정책"
msgid "Contact"
msgstr "문의하기"
msgstr "문의"
msgid "Extra page"
msgstr "추가 페이지"
@ -3529,14 +3514,6 @@ msgstr "업로드 활성화"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "이미지 업로드를 허용하려면 이 옵션을 활성화로 설정해주세요. 이 설정은 관리자에게 영향을 주지 않습니다."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "손님 업로드"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "미등록 사용자의 업로드를 허용하려면 이 옵션을 활성화로 설정해주세요."
msgid "Upload user interface"
msgstr "업로드 사용자 인터페이스"
@ -3546,6 +3523,23 @@ msgstr "온페이지 컨테이너"
msgid "route"
msgstr "라우팅"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "손님 업로드"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "미등록 사용자의 업로드를 허용하려면 이 옵션을 활성화로 설정해주세요."
msgid "Moderate uploads"
msgstr "올려놓기 중재"
msgid "Guests"
msgstr "손님"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "활성화하면 올려놓기 요청을 중재합니다. 대상 게시물은 중재를 통한 승인이 요구됩니다."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "퍼가기 코드 활성화 (업로드 창)"
@ -3888,7 +3882,7 @@ msgstr "사용자의 URL을 %s/user/username 대신 %s/username을 사용하려
#: ../../../app/themes/Peafowl/views/dashboard.php:983
msgid "Require email confirmation"
msgstr "이메일 인증 요청"
msgstr "전자우편 확인 요구"
#: ../../../app/themes/Peafowl/views/dashboard.php:989
msgid "Enable this if users must validate their email address on sign up."
@ -3961,6 +3955,10 @@ msgstr "주간 업로드 제한"
msgid "Monthly limit"
msgstr "월간 업로드 제한"
#, php-format
msgid "Lock %s editing"
msgstr "%s의 편집 잠금"
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "목록에 후방주의 게시물 노출"
@ -4054,7 +4052,7 @@ msgstr "각 대상 기기에 따라 사용되는 목록의 칼럼 개수를 설
#: ../../../app/themes/Peafowl/views/dashboard.php:1143
msgid "Phone"
msgstr "스마트폰"
msgstr "전화"
#: ../../../app/themes/Peafowl/views/dashboard.php:1147
msgid "Phablet"
@ -4105,26 +4103,6 @@ msgstr "16진수 색상 코드(헥스 코드)"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "주 테마 색상을 설정하려면 이 옵션을 설정해주세요. 설정 값은 <a href=\"%s\" target=\"_blank\">헥스 코드</a>이어야 합니다."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "상단 바 색상"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "검정"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "하양"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "상단 바의 색상을 \"하양\"으로 설정하면 모든 검정색의 요소가 하얀색으로 바뀝니다."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "상단 바 버튼 색상"
@ -4154,6 +4132,18 @@ msgstr "빨강"
msgid "Grey"
msgstr "회색"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "검정"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "하양"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "상단 바 버튼의 색상은 \"계정 만들기\" 버튼의 색상과 같이 사용됩니다."
@ -4248,7 +4238,7 @@ msgid "Enable embed codes (content)"
msgstr "퍼가기 코드 활성화 (게시물)"
msgid "Everybody"
msgstr "아무나"
msgstr "누구나"
msgid "Users only"
msgstr "사용자만"
@ -4297,10 +4287,6 @@ msgstr "방문 페이지"
msgid "Split landing + images"
msgstr "잘라낸 방문 페이지 + 이미지"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "둘러보기 라우팅"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
msgid "Select the homepage style. To customize it further edit app/themes/%s/views/index.php"
@ -4399,7 +4385,7 @@ msgid "banners"
msgstr "배너"
msgid "Automatic updates check"
msgstr "자동 업데이트 체크"
msgstr "자동 업데이트 확인하기"
msgid "When enabled the system will automatically check for new updates."
msgstr "활성화하면 시스템은 자동으로 새로운 업데이트를 체크합니다."
@ -4411,10 +4397,10 @@ msgid "Enable this to show a notice on top warning you about new available syste
msgstr "사용 가능한 새로운 시스템 업데이트에 대한 알림을 상단 알림에 표시하려면 이 옵션을 활성화로 설정해주세요."
msgid "Dump update query"
msgstr "업데이트 쿼리 덤프"
msgstr "업데이트 쿼리 덤프 뜨기"
msgid "Enable this if you want to dump the update query to run it manually."
msgstr "업데이트 쿼리를 덤프해서 수동으로 실행하려면 이 옵션을 활성화로 설정해주세요"
msgstr "활성화하면 자동으로 언어를 감자하여 각 사용자에게 맞는 언어로 설정합니다."
#, php-format
msgid "SEO %s URLs"
@ -4497,7 +4483,7 @@ msgid "Album routing"
msgstr "앨범 라우팅"
msgid "Hostname"
msgstr "호스트 이름"
msgstr "호스트네임"
msgid "Hostname on which sub-domain wildcards will be added."
msgstr "서브도메인 와일드카드가 추가될 호스트 이름입니다."
@ -4622,7 +4608,7 @@ msgstr "SMTP 사용자 이름"
#: ../../../app/themes/Peafowl/views/dashboard.php:1805
msgid "SMTP password"
msgstr "SMTP 사용자 비밀번호"
msgstr "SMTP 사용자 호"
#: ../../../app/themes/Peafowl/views/dashboard.php:1810
msgid "SMTP security"
@ -4810,6 +4796,21 @@ msgstr "댓글 코드"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus, Facebook 또는 다른 원하는 서비스의 코드를 넣어주세요. 댓글은 이미지 뷰어에 사용됩니다."
msgid "Automatic approve"
msgstr "자동 승인"
msgid "Block content"
msgstr "블럭한 게시물"
msgid "Adult"
msgstr "성인"
msgid "Teen and adult"
msgstr "미성년자와 성인"
msgid "Flag NSFW"
msgstr "후방주의 표기"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "접속 통계 코드"
@ -5121,19 +5122,19 @@ msgstr "시간대"
#: ../../../app/themes/Peafowl/views/settings.php:296
msgid "Current password"
msgstr "현재 비밀번호"
msgstr "현재 호"
#: ../../../app/themes/Peafowl/views/settings.php:297
msgid "Enter your current password"
msgstr "현재 비밀번호를 입력해주세요"
msgstr "귀하의 현재 암호를 입력해주세요."
#: ../../../app/themes/Peafowl/views/settings.php:305
msgid "New password"
msgstr "새 비밀번호"
msgstr "새 호"
#: ../../../app/themes/Peafowl/views/settings.php:311
msgid "Confirm new password"
msgstr "새 비밀번호 확인"
msgstr "새 호 확인"
#: ../../../app/themes/Peafowl/views/settings.php:319
msgid "Add a password to be able to login using your username or email."
@ -5146,16 +5147,16 @@ msgstr "이 사용자는 비밀번호를 설정하지 않았습니다. 여기서
#: ../../../app/themes/Peafowl/views/login.php:40
#: ../../../app/themes/Peafowl/views/settings.php:323
msgid "Enter your password"
msgstr "비밀번호를 입력해주세요"
msgstr "암호를 입력해주세요."
#: ../../../app/themes/Peafowl/views/account/password-reset.php:34
#: ../../../app/themes/Peafowl/views/settings.php:328
msgid "Confirm password"
msgstr "비밀번호 확인"
msgstr "호 확인"
#: ../../../app/themes/Peafowl/views/settings.php:329
msgid "Re-enter your password"
msgstr "비밀번호를 다시 입력해주세요"
msgstr "암호를 다시 입력해주세요."
#: ../../../app/themes/Peafowl/views/settings.php:352
#: ../../../app/themes/Peafowl/views/user.php:21
@ -5291,10 +5292,6 @@ msgstr "배경 지우기는 프로필 배경 이미지를 삭제합니다. 프
msgid "Delete background"
msgstr "배경 지우기"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "프로필 편집하기"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-05-16 19:37+0000\n"
"PO-Revision-Date: 2020-05-16 19:37+0000\n"
"POT-Creation-Date: 2020-09-02 17:14+0000\n"
"PO-Revision-Date: 2020-09-02 17:14+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: nl\n"
@ -203,6 +203,9 @@ msgstr "U moet nog een albumnaam invoeren."
msgid "Confirm"
msgstr "Bevestigen"
msgid "The content has been approved."
msgstr "De inhoud is goedgekeurd."
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "Selecteer bestaand album"
@ -354,6 +357,9 @@ msgid_plural "Albums"
msgstr[0] "Album"
msgstr[1] "Albums"
msgid "Approve"
msgstr "Goedkeuren"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -763,6 +769,16 @@ msgid_plural "Users"
msgstr[0] "Gebruiker"
msgstr[1] "Gebruikers"
msgid "adult"
msgstr "Volwassene"
msgid "teen"
msgstr "Tienier"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "%s inhoud is niet toegestaan."
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1382,11 +1398,6 @@ msgstr "Weergavepagina afbeelding"
msgid "Inside viewer top (image page)"
msgstr "Vanboven in de afbeelding viewer (weergavepagina afbeelding)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "Verwachte afmetingen banner: 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "Vanonder in de afbeelding viewer (weergavepagina afbeelding)"
@ -1505,10 +1516,6 @@ msgstr "Ongeldige thema toonzetting"
msgid "Invalid theme main color"
msgstr "Ongeldige hoofdkleur thema"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "Ongeldige topbalk thema kleur"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "Ongeldige topbalk knop kleur"
@ -1843,6 +1850,9 @@ msgstr "Verkeerde inloggegevens"
msgid "Sign in"
msgstr "Inloggen"
msgid "Moderate"
msgstr "Modereren"
msgid "Upload images"
msgstr "Upload afbeeldingen"
@ -2227,6 +2237,12 @@ msgstr "reset"
msgid "close"
msgstr "sluiten"
msgid "Note"
msgstr "Opmerking"
msgid "We must approve the uploaded content before being able to share."
msgstr "We moeten de geüploade inhoud goedkeuren voordat deze gedeeld kan worden."
msgid "copy"
msgstr "Kopieër"
@ -2238,10 +2254,6 @@ msgstr "invoegen"
msgid "Remove"
msgstr "Verwijder"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "Wijzig foto"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2535,6 +2547,12 @@ msgstr "Korte omschrijving van deze categorie"
msgid "Untitled image"
msgstr "Naamloze afbeelding"
msgid "Mark this if the image is not safe for work"
msgstr "Markeer dit als het beeld niet veilig is voor het werk"
msgid "Flag not safe"
msgstr "Vlag niet veilig"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "Pad"
@ -2820,18 +2838,6 @@ msgstr "Home"
msgid "There's nothing to show here."
msgstr "Er is hier niets te zien"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "Afbeelding bewerken"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "Album bewerken"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "Alle afbeeldingen zullen worden verplaatst naar dit nieuwe album. U kunt de afbeeldingen ook verplaatsen naar een <a class=\"modal-switch\" data-switch=\"move-existing-album\">bestaand album</a>."
@ -2872,6 +2878,12 @@ msgstr "Bevestig dat deze content onveilig is"
msgid "Do you really want to flag this content as unsafe?"
msgstr "Weet u zeker dat u deze inhoud als onveilig wilt markeren?"
msgid "Confirm approval"
msgstr "Bevestig goedkeuring"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "Wilt u echt alle geselecteerde inhoud verwijderen? Dit kan niet ongedaan worden gemaakt."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2881,6 +2893,9 @@ msgstr "Bevestig verwijderen"
msgid "Do you really want to remove this content? This can't be undone."
msgstr "Wilt u deze inhoud echt verwijderen? Dit kan niet ongedaan gemaakt worden."
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "Wilt u echt alle geselecteerde inhoud verwijderen? Dit kan niet ongedaan worden gemaakt."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "Wilt u deze selectie echt verwijderen? Dit kan niet ongedaan gemaakt worden."
@ -3054,10 +3069,6 @@ msgstr "Deze inhoud is privé"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "Weet u zeker dat u dit album inclusief afbeeldingen wil verwijderen? Dit kan niet ongedaan gemaakt worden."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "Verwijder album"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "U waardeert dit"
@ -3112,9 +3123,6 @@ msgstr "Automatisch importeren"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "Het systeem verwerkt automatisch iedere inhoud door een continue monitoring van het %path% pad."
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "Het systeem ontleedt automatisch elke inhoud door een continue observatie van het %path% pad."
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "Voltooide jobs worden automatisch opnieuw opgestart na %n %m."
@ -3167,16 +3175,9 @@ msgstr "U kunt het commando parallel uitvoeren door de cijferwaarde van %s% te w
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "Alle permissies voor het bestandssysteem moeten voor de crontab-gebruiker worden verleend op %path%."
msgid "Required crontab entry:"
msgstr "Vereiste crontab voorwaarde:"
msgid "Add import job"
msgstr "Voeg importeeropdracht toe"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "Deze tool maakt het mogelijk om massaal inhoud aan uw website toe te voegen door een systeempad aan te wijzen met de inhoud die u wilt importeren. Het ondersteunt het toevoegen van gebruikers, albums en afbeeldingen met behulp van een mapstructuur. U kunt meer te weten komen over de mappenstructuur, het toevoegen van metadata, en alles over deze tool in onze %d."
msgid "Process import"
msgstr "Procesimport"
@ -3544,14 +3545,6 @@ msgstr "Schakel uploads in"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "Schakel dit in indien u het uploaden van afbeeldingen wilt toestaan. Deze instelling heeft geen invloed op beheerders."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Bezoeker uploads"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Schakel dit in om bezoeker uploads toe te staan"
msgid "Upload user interface"
msgstr "Gebruikersinterface uploaden"
@ -3561,6 +3554,23 @@ msgstr "Container op pagina"
msgid "route"
msgstr "route"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Bezoeker uploads"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Schakel dit in om bezoeker uploads toe te staan"
msgid "Moderate uploads"
msgstr "Modereer uploads"
msgid "Guests"
msgstr "Gasten"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "Schakel dit in om inkomende uploads te modereren. De inhoud zal moderatie vereisen voor goedkeuring."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "Insluitcodes inschakelen (uploader)"
@ -3976,6 +3986,13 @@ msgstr "Weeklimiet"
msgid "Monthly limit"
msgstr "Maandlimiet"
#, php-format
msgid "Lock %s editing"
msgstr "Blokkeer %s wijzigen"
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "Schakel dit in om te voorkomen dat gebruikers de NSFW-vlag wijzigen. Indien ingeschakeld, zullen alleen admin en managers deze toestemming hebben."
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "Geef onveilige (NFSW) inhoud weer"
@ -4120,26 +4137,6 @@ msgstr "Hexadecimale kleurwaarde"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "Gebruik dit om de hoofdkleur van het thema te kiezen. Waarde moet in <a href=\"%s\" target=\"_blank\">hex formaat</a> zijn."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "Topbalk kleur"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Zwart"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Wit"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "Als dit naar 'wit' gewijzigd wordt veranderd de kleur van de bovenbalk en alle zwarte kleurtonen naar witte tonen."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "Topbalk knop kleur"
@ -4169,6 +4166,18 @@ msgstr "Rood"
msgid "Grey"
msgstr "Grijs"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Zwart"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Wit"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "Kleur voor de knoppen in de bovenste balk, bijvoorbeeld voor 'Nieuw account'"
@ -4312,9 +4321,12 @@ msgstr "Beginpagina"
msgid "Split landing + images"
msgstr "Opdelen beginpagina en afbeeldingen"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "Route verkennen"
#, php-format
msgid "Route %s"
msgstr "Route %s"
msgid "upload"
msgstr "upload"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4825,6 +4837,28 @@ msgstr "Opmerking code"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus, Facebook of wat u maar wilt. Het zal worden gebruikt in de afbeelding viewer."
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "Automatisch modereren van de inhoud met behulp van de %s service."
msgid "Automatic approve"
msgstr "Automatisch goedkeuren"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "Schakel dit in om de inhoud die door deze dienst gemodereerd wordt automatisch goed te keuren."
msgid "Block content"
msgstr "Blokkeer inhoud"
msgid "Adult"
msgstr "Volwassene"
msgid "Teen and adult"
msgstr "Tiener en volwassene"
msgid "Flag NSFW"
msgstr "Vlag NSFW"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "Google Analytics-code"
@ -4882,6 +4916,9 @@ msgstr "Speel GIF af"
msgid "Load full resolution"
msgstr "Laadt de volledige resolutie"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "Wilt u echt alle geselecteerde inhoud verwijderen? Dit kan niet ongedaan worden gemaakt."
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "Toegevoegd aan %a en gecategoriseerd in %c"
@ -5306,10 +5343,6 @@ msgstr "Uw achtergrondafbeelding zal worden verwijderd. Dit kan niet ongedaan ge
msgid "Delete background"
msgstr "Verwijder achtergrond"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "Profiel bewerken"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2019-12-12 15:27+0000\n"
"PO-Revision-Date: 2019-12-12 15:27+0000\n"
"POT-Creation-Date: 2020-09-02 17:16+0000\n"
"PO-Revision-Date: 2020-09-02 17:16+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: ru\n"
@ -528,9 +528,20 @@ msgstr "Снять выделение"
msgid "The content has been edited."
msgstr "Содержимое отредактировано."
msgid "Select number of threads"
msgstr "Выберите количество потоков"
msgid "Spam detected"
msgstr "Обнаружен спам"
#: ../../../app/themes/Peafowl/snippets/breadcrum_owner_card.php:26
#: ../../../app/themes/Peafowl/views/user.php:99
msgid "album"
msgid_plural "albums"
msgstr[0] "альбом"
msgstr[1] "альбома"
msgstr[2] "альбомов"
#: ../../../app/lib/classes/class.album.php:100
msgid "Untitled"
msgstr "Безымянный"
@ -853,45 +864,6 @@ msgstr "Мы используем cookie-файлы, чтобы сделать
msgid "I understand"
msgstr "Хорошо"
#: ../../../app/loader.php:180
msgid "You have been forbidden to use this website."
msgstr "Вам запрещено использовать этот сайт."
#: ../../../app/loader.php:279
#: ../../../app/themes/Peafowl/views/settings.php:441
msgid "Feel free to browse and discover all my shared images and albums."
msgstr "Чувствуйте себя как дома и наслаждайтесь моими изображениями и альбомами."
#: ../../../app/loader.php:282
#: ../../../app/themes/Peafowl/views/settings.php:447
msgid "View all my images"
msgstr "Показать мои изображения"
msgid "Plugin"
msgstr "Плагин"
#: ../../../app/routes/route.account.php:140
#: ../../../app/routes/route.account.php:299
#: ../../../app/routes/route.account.php:321
#: ../../../app/routes/route.account.php:388
#: ../../../app/routes/route.json.php:24 ../../../app/routes/route.json.php:37
#: ../../../app/routes/route.json.php:49 ../../../app/routes/route.json.php:561
#: ../../../app/routes/route.json.php:623
#: ../../../app/routes/route.json.php:672
#: ../../../app/routes/route.json.php:719 ../../../app/routes/route.page.php:66
#: ../../../app/themes/Peafowl/views/request-denied.php:8
#: ../../../content/pages/default/contact.php:14
msgid "Request denied"
msgstr "В запросе отказано"
#: ../../../app/loader.php:396 ../../../app/themes/Peafowl/views/404.php:6
msgid "That page doesn't exist"
msgstr "Эта страница не существует"
#, php-format
msgid "Page %s"
msgstr "Страница %s"
#: ../../../app/routes/route.account.php:72
#: ../../../app/themes/Peafowl/header.php:295
#: ../../../app/themes/Peafowl/snippets/modal_login.php:24
@ -935,6 +907,20 @@ msgstr "Неверное Имя пользователя/E-mail"
msgid "User doesn't have an email."
msgstr "Для этого пользователя не задан адрес электронной почты."
#: ../../../app/routes/route.account.php:140
#: ../../../app/routes/route.account.php:299
#: ../../../app/routes/route.account.php:321
#: ../../../app/routes/route.account.php:388
#: ../../../app/routes/route.json.php:24 ../../../app/routes/route.json.php:37
#: ../../../app/routes/route.json.php:49 ../../../app/routes/route.json.php:561
#: ../../../app/routes/route.json.php:623
#: ../../../app/routes/route.json.php:672
#: ../../../app/routes/route.json.php:719 ../../../app/routes/route.page.php:66
#: ../../../app/themes/Peafowl/views/request-denied.php:8
#: ../../../content/pages/default/contact.php:14
msgid "Request denied"
msgstr "В запросе отказано"
#: ../../../app/routes/route.account.php:145
msgid "Account needs to be activated to use this feature"
msgstr "Для использования этой функции, аккаунт должен быть активирован"
@ -1387,11 +1373,6 @@ msgstr "Страница изображения"
msgid "Inside viewer top (image page)"
msgstr "В заголовке просмотрщика (страница изображения)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "Рекомендуемый размер баннера 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "Внизу просмотрщика (страница изображения)"
@ -1510,10 +1491,6 @@ msgstr "Неверный стиль темы"
msgid "Invalid theme main color"
msgstr "Неверный цвет темы"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "Неверный цвет панели"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "Неверный цвет кнопок панели"
@ -2240,10 +2217,6 @@ msgstr "вставить"
msgid "Remove"
msgstr "Удалить"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "Редактировать изображение"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2371,14 +2344,6 @@ msgstr "Выберите существующий альбом для перем
msgid "Error report"
msgstr "Отчет об ошибках"
#: ../../../app/themes/Peafowl/snippets/breadcrum_owner_card.php:26
#: ../../../app/themes/Peafowl/views/user.php:99
msgid "album"
msgid_plural "albums"
msgstr[0] "альбом"
msgstr[1] "альбома"
msgstr[2] "альбомов"
#: ../../../app/themes/Peafowl/snippets/embed_tpl.php:9
msgid "Viewer links"
msgstr "Ссылки на просмотр"
@ -2570,9 +2535,6 @@ msgstr "При обработке папок верхнего уровня, ка
msgid "Threads"
msgstr "Потоки"
msgid "Select number of threads"
msgstr "Выберите количество потоков"
#, php-format
msgid "This determines how intensive and fast will be the import process. Don't use more than %s threads on a shared server."
msgstr "Определяет насколько быстрым и ресурсоемким будет процесс импорта. Не используйте больше %s потоков на совместном хостинге."
@ -2821,6 +2783,9 @@ msgstr "Создать альбом"
msgid "Sign in with another account"
msgstr "Войти через"
msgid "Continue with %label%"
msgstr "Продолжить с %label%"
msgid "Home"
msgstr "Главная"
@ -2830,18 +2795,6 @@ msgstr "Главная"
msgid "There's nothing to show here."
msgstr "Нет элементов для отображения."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "Редактировать изображение"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "Редактировать альбом"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "Все изображения будут помещены в этот новый альбом. Вы также можете переместить изображения в <a class=\"modal-switch\" data-switch=\"move-existing-album\">существующий альбом</a>."
@ -2935,6 +2888,10 @@ msgstr "от %u"
msgid "Toggle unsafe flag"
msgstr "Включить отметку о небезопасном содержимом"
#: ../../../app/loader.php:396 ../../../app/themes/Peafowl/views/404.php:6
msgid "That page doesn't exist"
msgstr "Эта страница не существует"
#: ../../../app/themes/Peafowl/views/404.php:7
msgid "The requested page was not found."
msgstr "Запрошеная страница не найдена"
@ -3060,10 +3017,6 @@ msgstr "Скрытое содержимое"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "Вы действительно хотите удалить этот альбом со всеми изображениями? Это действие необратимо."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "Удалить"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "Вам это нравится"
@ -3095,46 +3048,19 @@ msgstr "документации"
msgid "Learn more about %s at our %d."
msgstr "Узнайте больше о %s в %d."
msgid "For Nginx, you must use %nginx%. For Apache, %apache%."
msgstr "Для Nginx необходимо использовать %nginx%. Для Apache, %apache%."
#: ../../../app/themes/Peafowl/views/dashboard.php:40
#: ../../../app/themes/Peafowl/views/dashboard.php:1732
msgid "Disk used"
msgstr "Использовано места на диске"
msgid "Add import job"
msgstr "Добавить задачу импорта"
msgid "Automatic importing"
msgstr "Автоматический импорт"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "Эта утилита, позволит вам добавить контент на ваш сайт, посредством указания пути к нему. Поддерживается импорт пользователей, альбомов и изображений, через структуру папок. Вы можете узнать больше о структуре папок, добавлении меток и об этой утилите в нашей %d."
msgid "Process import"
msgstr "Импорт"
#, php-format
msgid "Top level folders as %s"
msgstr "Папки верхнего уровня как %s"
msgid "Actions"
msgstr "Действия"
msgid "Process"
msgstr "Процесс"
msgid "Pause"
msgstr "Пауза"
msgid "Cancel"
msgstr "Отмена"
msgid "Process log"
msgstr "Журнал импорта"
msgid "Errors"
msgstr "Ошибки"
#, php-format
msgid "Do you really want to remove the import ID %s?"
msgstr "Вы действительно хотите удалить задачу с ID %s?"
msgid "Reset to clear stats and logs."
msgstr "Сброс, для очистки статистики и журналов."
msgid "Queued"
msgstr "В очереди"
@ -3151,13 +3077,51 @@ msgstr "Отменено"
msgid "Completed"
msgstr "Завершено"
msgid "Parser"
msgstr "Парсер"
msgid "Actions"
msgstr "Действия"
msgid "Reset"
msgstr "Сброс"
msgid "Pause"
msgstr "Пауза"
msgid "Process log"
msgstr "Журнал импорта"
msgid "Errors"
msgstr "Ошибки"
#: ../../../app/themes/Peafowl/views/settings.php:105
msgid "Status"
msgstr "Статус"
msgid "Add import job"
msgstr "Добавить задачу импорта"
msgid "Process import"
msgstr "Импорт"
#, php-format
msgid "Top level folders as %s"
msgstr "Папки верхнего уровня как %s"
msgid "Process"
msgstr "Процесс"
msgid "Cancel"
msgstr "Отмена"
#, php-format
msgid "Do you really want to remove the import ID %s?"
msgstr "Вы действительно хотите удалить задачу с ID %s?"
msgid "Manual importing"
msgstr "Ручной импорт"
msgid "Parser"
msgstr "Парсер"
#: ../../../app/themes/Peafowl/views/dashboard.php:80
#: ../../../app/themes/Peafowl/views/dashboard.php:84
msgid "Add user"
@ -3496,14 +3460,6 @@ msgstr "Включить загрузку"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "Включите, если вы хотите разрешить загрузку изображений. Эта настройка не влияет на администраторов."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Гостевые загрузки"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Включите, если хотите позволить загружать изображения незарегистрированным пользователям."
msgid "Upload user interface"
msgstr "Загрузить интерфейс пользователя"
@ -3513,6 +3469,14 @@ msgstr "Контейнер страницы"
msgid "route"
msgstr "маршрут"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Гостевые загрузки"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Включите, если хотите позволить загружать изображения незарегистрированным пользователям."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "Коды для встраивания (в загрузчике)"
@ -4072,26 +4036,6 @@ msgstr "Шестнадцатеричный код цвета"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "Используйте это поле, чтобы указать основной цвет темы. Значение должно быть указано в <a href=\"%s\" target=\"_blank\">шестнадцатеричном формате</a>."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "Цвет верхней панели"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Черный"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Белый"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "Если вы выберете \"Белый\", цвет верхней панели и некоторых других элементов будет заменен на светлый."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "Цвет кнопок верхней панели"
@ -4121,6 +4065,18 @@ msgstr "Красный"
msgid "Grey"
msgstr "Серый"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Черный"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Белый"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "Цвет кнопок на верхней панели, таких как \"Зарегистрироваться\"."
@ -4214,6 +4170,12 @@ msgstr "Включите эту настройку, чтобы показыва
msgid "Enable embed codes (content)"
msgstr "Коды для встраивания (в просмотре)"
msgid "Everybody"
msgstr "Все пользователи"
msgid "Users only"
msgstr "Только зарегистрированные"
#: ../../../app/themes/Peafowl/views/dashboard.php:1349
msgid "Enable this if you want to show embed codes for the content."
msgstr "Включите эту настройку, если вы хотите показывать коды для встраивания в просмотре изображений."
@ -4258,10 +4220,6 @@ msgstr "Целевая страница"
msgid "Split landing + images"
msgstr "Целевая страница + изображения"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "Переадресовывать на Обзор"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
msgid "Select the homepage style. To customize it further edit app/themes/%s/views/index.php"
@ -4374,9 +4332,6 @@ msgstr "Включите, чтобы показывать уведомления
msgid "Dump update query"
msgstr "Просмотреть текст запроса"
msgid "Enable this if you want to manually run the SQL update query."
msgstr "Включите, чтобы автоматически определять и устанавливать язык пользователя."
#, php-format
msgid "SEO %s URLs"
msgstr "SEO %s URLs"
@ -5153,10 +5108,6 @@ msgstr "Расскажите нам немного о себе"
msgid "User has no connections."
msgstr "У пользователя нет связей с другими аккаунтами."
#: ../../../app/themes/Peafowl/views/settings.php:391
msgid "Link your account to external services to be able to login and share content."
msgstr "Свяжите ваш аккаунт со сторонними сервисами, чтобы иметь возможность входить через них и делиться содержимым."
#: ../../../app/themes/Peafowl/views/settings.php:398
#, php-format
msgid "Do you really want to disconnect %s from this account?"
@ -5191,10 +5142,20 @@ msgstr "отвязать"
msgid "Connect %s"
msgstr "Связать с %s"
#: ../../../app/loader.php:279
#: ../../../app/themes/Peafowl/views/settings.php:441
msgid "Feel free to browse and discover all my shared images and albums."
msgstr "Чувствуйте себя как дома и наслаждайтесь моими изображениями и альбомами."
#: ../../../app/themes/Peafowl/views/settings.php:446
msgid "Button"
msgstr "Кнопка"
#: ../../../app/loader.php:282
#: ../../../app/themes/Peafowl/views/settings.php:447
msgid "View all my images"
msgstr "Показать мои изображения"
msgid "Login"
msgstr "Вход"
@ -5243,10 +5204,6 @@ msgstr "Фон профиля будет удален. Это действие
msgid "Delete background"
msgstr "Удалить фон"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "Редактировать профиль"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"
@ -5258,6 +5215,17 @@ msgstr[2] "Подписчиков"
msgid "Follow"
msgstr "Подписаться"
#: ../../../app/loader.php:180
msgid "You have been forbidden to use this website."
msgstr "Вам запрещено использовать этот сайт."
msgid "Plugin"
msgstr "Плагин"
#, php-format
msgid "Page %s"
msgstr "Страница %s"
#: ../../../app/routes/route.page.php:61
#: ../../../content/pages/default/contact.php:7
msgid "General questions/comments"

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2019-12-12 15:27+0000\n"
"PO-Revision-Date: 2019-12-12 15:27+0000\n"
"POT-Creation-Date: 2020-09-02 17:16+0000\n"
"PO-Revision-Date: 2020-09-02 17:16+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: th\n"
@ -524,6 +524,12 @@ msgstr "ยกเลิกการเลือก"
msgid "The content has been edited."
msgstr "เนื้อหาที่ได้รับการแก้ไข"
#: ../../../app/themes/Peafowl/snippets/breadcrum_owner_card.php:26
#: ../../../app/themes/Peafowl/views/user.php:99
msgid "album"
msgid_plural "albums"
msgstr[0] "อัลบั้ม"
#: ../../../app/lib/classes/class.album.php:100
msgid "Untitled"
msgstr "ไม่มีชื่อ"
@ -824,41 +830,6 @@ msgstr "เราใช้คุกกี้ของเราเองและ
msgid "I understand"
msgstr "ฉันเข้าใจ"
#: ../../../app/loader.php:180
msgid "You have been forbidden to use this website."
msgstr "คุณถูกห้ามการใช้งานเว็บไซต์นี้"
#: ../../../app/loader.php:279
#: ../../../app/themes/Peafowl/views/settings.php:441
msgid "Feel free to browse and discover all my shared images and albums."
msgstr "อย่าลังเลที่จะเรียกดูและค้นพบภาพร่วมกันทั้งหมดของภาพและอัลบั้มฉัน"
#: ../../../app/loader.php:282
#: ../../../app/themes/Peafowl/views/settings.php:447
msgid "View all my images"
msgstr "ดูภาพทั้งหมดของฉัน"
msgid "Plugin"
msgstr "ปลั๊กอิน"
#: ../../../app/routes/route.account.php:140
#: ../../../app/routes/route.account.php:299
#: ../../../app/routes/route.account.php:321
#: ../../../app/routes/route.account.php:388
#: ../../../app/routes/route.json.php:24 ../../../app/routes/route.json.php:37
#: ../../../app/routes/route.json.php:49 ../../../app/routes/route.json.php:561
#: ../../../app/routes/route.json.php:623
#: ../../../app/routes/route.json.php:672
#: ../../../app/routes/route.json.php:719 ../../../app/routes/route.page.php:66
#: ../../../app/themes/Peafowl/views/request-denied.php:8
#: ../../../content/pages/default/contact.php:14
msgid "Request denied"
msgstr "คำขอไม่สามารถเข้าถึงได้"
#: ../../../app/loader.php:396 ../../../app/themes/Peafowl/views/404.php:6
msgid "That page doesn't exist"
msgstr "ไม่สามารถใช้งานหน้าเว็บไซต์นี้ได้"
#: ../../../app/routes/route.account.php:72
#: ../../../app/themes/Peafowl/header.php:295
#: ../../../app/themes/Peafowl/snippets/modal_login.php:24
@ -902,6 +873,20 @@ msgstr "ยูสเซอร์หรือพาสเวิร์ดผิด
msgid "User doesn't have an email."
msgstr "ผู้ใช้ไม่ได้อีเมล"
#: ../../../app/routes/route.account.php:140
#: ../../../app/routes/route.account.php:299
#: ../../../app/routes/route.account.php:321
#: ../../../app/routes/route.account.php:388
#: ../../../app/routes/route.json.php:24 ../../../app/routes/route.json.php:37
#: ../../../app/routes/route.json.php:49 ../../../app/routes/route.json.php:561
#: ../../../app/routes/route.json.php:623
#: ../../../app/routes/route.json.php:672
#: ../../../app/routes/route.json.php:719 ../../../app/routes/route.page.php:66
#: ../../../app/themes/Peafowl/views/request-denied.php:8
#: ../../../content/pages/default/contact.php:14
msgid "Request denied"
msgstr "คำขอไม่สามารถเข้าถึงได้"
#: ../../../app/routes/route.account.php:145
msgid "Account needs to be activated to use this feature"
msgstr "บัญชีผู้ใช้ต้องทำการปลดล็อคเพื่อใช้งานส่วนนี้"
@ -1349,11 +1334,6 @@ msgstr "หน้าภาพ"
msgid "Inside viewer top (image page)"
msgstr "ด้านบนภายใน (หน้าภาพ)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "ขนาดแบนเนอร์ควรจะ 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "ด้านท้ายของผู้ชมภายใน (หน้าภาพ)"
@ -1472,10 +1452,6 @@ msgstr "เสียงรูปแบบไม่ถูกต้อง"
msgid "Invalid theme main color"
msgstr "ธีมสีหลักไม่ถูกต้อง"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "รูปแบบสีแถบด้านบนไม่ถูกต้อง"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "รูปแบบแถบด้านบนปุ่มสีไม่ถูกต้อง"
@ -2199,10 +2175,6 @@ msgstr "แทรก"
msgid "Remove"
msgstr "ลบ"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "แก้ไขรูปภาพ"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2330,12 +2302,6 @@ msgstr "เลือกอัลบั้มที่มีอยู่เพื
msgid "Error report"
msgstr "รายงานข้อผิดพลาด"
#: ../../../app/themes/Peafowl/snippets/breadcrum_owner_card.php:26
#: ../../../app/themes/Peafowl/views/user.php:99
msgid "album"
msgid_plural "albums"
msgstr[0] "อัลบั้ม"
#: ../../../app/themes/Peafowl/snippets/embed_tpl.php:9
msgid "Viewer links"
msgstr "ผู้ชมลิ้งค์"
@ -2756,18 +2722,6 @@ msgstr "หน้าแรก"
msgid "There's nothing to show here."
msgstr "ไม่มีอะไรที่จะแสดงที่นี่"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "แก้ไขรายละเอียดของภาพ"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "แก้ไขรายละเอียดอัลบั้ม"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "ภาพทั้งหมดจะถูกย้ายไปที่อัลบั้มที่สร้างขึ้นใหม่นี้ นอกจากนี้คุณยังสามารถย้ายภาพไปที่ <a class=\"modal-switch\" data-switch=\"move-existing-album\">อัลบั้มที่มีอยู่</a>"
@ -2855,6 +2809,10 @@ msgstr "โดย %u"
msgid "Toggle unsafe flag"
msgstr "สลับสถานะที่ไม่ปลอดภัย"
#: ../../../app/loader.php:396 ../../../app/themes/Peafowl/views/404.php:6
msgid "That page doesn't exist"
msgstr "ไม่สามารถใช้งานหน้าเว็บไซต์นี้ได้"
#: ../../../app/themes/Peafowl/views/404.php:7
msgid "The requested page was not found."
msgstr "ไม่พบหน้าที่คุณค้นหา"
@ -2980,10 +2938,6 @@ msgstr "นี่เป็นเนื้อหาส่วนตัว"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "คุณต้องการที่จะลบอัลบั้มนี้และทุกภาพของตนหรือไม่?"
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "ลบอัลบั้ม"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "คุณถูกใจสิ่งนี้"
@ -3892,26 +3846,6 @@ msgstr "ค่าสีฐานสิบหก"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "ใช้ปุ่มนี้เพื่อกำหนดสีของธีมหลัก ค่าต้องอยู่ใน <a href=\"%s\" target=\"_blank\">รูปแบบ hex</a>"
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "สีของ Top bar"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "ดำ"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "สีขาว"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "หากคุณตั้งค่านี้เป็น \"สีขาว\" แถบด้านบนและทุกโทนสีดำจะเปลี่ยนเป็นโทนสีขาว"
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "สีปุ่มแถบด้านบน"
@ -3941,6 +3875,18 @@ msgstr "สีแดง"
msgid "Grey"
msgstr "สีเทา"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "ดำ"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "สีขาว"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "สีสำหรับปุ่มแถบด้านบนเช่นปุ่ม \"สมัครสมาชิก\""
@ -4074,10 +4020,6 @@ msgstr "หน้า Landing Page"
msgid "Split landing + images"
msgstr "แบ่งภาพ + ภาพ"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "เส้นทางรวมภาพ"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
msgid "Select the homepage style. To customize it further edit app/themes/%s/views/index.php"
@ -4879,10 +4821,6 @@ msgstr "บอกเรานิด ๆ หน่อย ๆ เกี่ยว
msgid "User has no connections."
msgstr "ผู้ใช้ไม่มีการเชื่อมต่อ"
#: ../../../app/themes/Peafowl/views/settings.php:391
msgid "Link your account to external services to be able to login and share content."
msgstr "เชื่อมโยงบัญชีของคุณกับบริการภายนอกเพื่อเข้าสู่ระบบและแบ่งปันเนื้อหา"
#: ../../../app/themes/Peafowl/views/settings.php:398
#, php-format
msgid "Do you really want to disconnect %s from this account?"
@ -4917,10 +4855,20 @@ msgstr "ตัตเชื่อมต่อ"
msgid "Connect %s"
msgstr "เชื่อมต่อ %s"
#: ../../../app/loader.php:279
#: ../../../app/themes/Peafowl/views/settings.php:441
msgid "Feel free to browse and discover all my shared images and albums."
msgstr "อย่าลังเลที่จะเรียกดูและค้นพบภาพร่วมกันทั้งหมดของภาพและอัลบั้มฉัน"
#: ../../../app/themes/Peafowl/views/settings.php:446
msgid "Button"
msgstr "ปุ่ม"
#: ../../../app/loader.php:282
#: ../../../app/themes/Peafowl/views/settings.php:447
msgid "View all my images"
msgstr "ดูภาพทั้งหมดของฉัน"
msgid "Login"
msgstr "เข้าสู่ระบบ"
@ -4957,10 +4905,6 @@ msgstr "ภาพพื้นหลังโปรไฟล์จะถูกล
msgid "Delete background"
msgstr "ลบพื้นหลัง"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "แก้ไขโปรไฟล์"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"
@ -4970,6 +4914,13 @@ msgstr[0] "ผู้ติดตาม"
msgid "Follow"
msgstr "ติดตาม"
#: ../../../app/loader.php:180
msgid "You have been forbidden to use this website."
msgstr "คุณถูกห้ามการใช้งานเว็บไซต์นี้"
msgid "Plugin"
msgstr "ปลั๊กอิน"
#: ../../../app/routes/route.page.php:61
#: ../../../content/pages/default/contact.php:7
msgid "General questions/comments"

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-04-18 16:12+0000\n"
"PO-Revision-Date: 2020-04-18 16:12+0000\n"
"POT-Creation-Date: 2020-09-02 17:14+0000\n"
"PO-Revision-Date: 2020-09-02 17:14+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: tr\n"
@ -203,6 +203,9 @@ msgstr "Albüm ismi girmelisiniz."
msgid "Confirm"
msgstr "Onayla"
msgid "The content has been approved."
msgstr "İçerik onaylandı."
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "Mevcut olan albümü seçin"
@ -354,6 +357,9 @@ msgid_plural "Albums"
msgstr[0] "Albüm"
msgstr[1] "Albümler"
msgid "Approve"
msgstr "Onayla"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -763,6 +769,16 @@ msgid_plural "Users"
msgstr[0] "Üye"
msgstr[1] "Üyeler"
msgid "adult"
msgstr "yetişkin"
msgid "teen"
msgstr "genç"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "%s türü içerikler yasaktır."
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1382,11 +1398,6 @@ msgstr "Resim sayfası"
msgid "Inside viewer top (image page)"
msgstr "İç izleyici üst (resim sayfası)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "Önerilen afiş boyutu 728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "İç izleyici ayak (resim sayfası)"
@ -1505,10 +1516,6 @@ msgstr "Geçersiz tema tonu."
msgid "Invalid theme main color"
msgstr "Temanın geçersiz ana rengi"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "Tema ana çubuğunun geçersiz rengi"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "Tema ana çubuğu düğmelerinin geçersiz rengi"
@ -1843,6 +1850,9 @@ msgstr "Geçersiz kullanıcı adı ve şifre ! lütfen kullanıcı adı ve şifr
msgid "Sign in"
msgstr "Giriş Yap"
msgid "Moderate"
msgstr "Denetlemek"
msgid "Upload images"
msgstr "Resim yükle"
@ -2227,6 +2237,12 @@ msgstr "Dönüştür"
msgid "close"
msgstr "kapat"
msgid "Note"
msgstr "Not"
msgid "We must approve the uploaded content before being able to share."
msgstr "Paylaşmadan önce yüklenen içeriği onaylamamız gerekir."
msgid "copy"
msgstr "Kopyala"
@ -2238,10 +2254,6 @@ msgstr "Ekle"
msgid "Remove"
msgstr "Kaldır"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "Resmi düzenle"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2535,6 +2547,12 @@ msgstr "Kategori hakkında kısa tanım"
msgid "Untitled image"
msgstr "İsimsiz resim"
msgid "Mark this if the image is not safe for work"
msgstr "Görüntü aile için güvenli değilse işaretleyin."
msgid "Flag not safe"
msgstr "Güvenli değil olarak işaretle."
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "Yol"
@ -2820,18 +2838,6 @@ msgstr "Anasayfa"
msgid "There's nothing to show here."
msgstr "Burada gösterilecek birşey yok."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "Resim düzenleme ayrıntıları"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "Albüm ayarlarını Düzenle"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "Resimleriniz yeni oluşturulacak bir albüme taşınacaktır. İsterseniz resimlerinizi <a class=\"modal-switch\" data-switch=\"move-existing-album\">mevcut albümlerden</a>.birisine taşıyabilirsiniz."
@ -2872,6 +2878,12 @@ msgstr "İşaretli içeriği rahatsız edici olarak onaylayın"
msgid "Do you really want to flag this content as unsafe?"
msgstr "Bu içeriği gerçekten rahatsız edici olarak işaretlemek istiyor musunuz?"
msgid "Confirm approval"
msgstr "Onayı onayla"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "Seçilen tüm içeriği gerçekten kaldırmak istiyor musunuz? Bu geri alınamaz."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2881,6 +2893,9 @@ msgstr "Silmek istediğinizden emin misiniz."
msgid "Do you really want to remove this content? This can't be undone."
msgstr "Resim veya resimleri silmek istediğinizden eminmisiniz. Resimler geri dönüşümü olmaksızın silinecektir."
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "Seçilen tüm içeriği gerçekten kaldırmak istiyor musunuz? Bu geri alınamaz."
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "Seçili resimleri silmek istediğinizden eminmisiniz ?. Resimler geri dönüşümü olmaksızın silinecektir."
@ -3054,10 +3069,6 @@ msgstr "Özel içerik !"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "Gerçekten bu albümü ve içindekileri silmek istiyormusun? Bu işlemin geri dönüşü yok."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "Albümü Sil"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "Bunu beğendiniz"
@ -3106,10 +3117,10 @@ msgstr "Kullanılan disk alanı"
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure."
msgstr "Bu araç, içe aktarmak istediğiniz içeriğin bulunduğu bir sistem yolunu işaretleyerek web sitenize toplu içerik eklemenize olanak tanır. Klasör tabanlı bir yapı kullanarak kullanıcıların, albümlerin ve görüntülerin eklenmesini destekler."
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "Sistem, %path% yolunu sürekli gözlemleyerek herhangi bir içeriği otomatik olarak ayrıştırır."
msgid "Automatic importing"
msgstr "Otomatik içe aktarma"
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "Sistem, %path% yolunu sürekli gözlemleyerek herhangi bir içeriği otomatik olarak ayrıştırır."
msgid "Completed jobs will be automatically re-started after %n %m."
@ -3164,16 +3175,9 @@ msgstr "%s% tam sayı değerini değiştirerek komutu paralel olarak çalıştı
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "%path% yolundaki crontab kullanıcısı için tüm dosya sistemi izinleri verilmelidir"
msgid "Required crontab entry:"
msgstr "Gerekli crontab girişi:"
msgid "Add import job"
msgstr "İçe aktarma işi ekle"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "Bu araç, içe aktarmak istediğiniz içeriğe sahip bir sistem yolunu işaretleyerek web sitenize toplu içerik eklemenizi sağlar. Klasör tabanlı bir yapı kullanarak kullanıcıların, albümlerin ve görüntülerin eklenmesini destekler. Klasör yapısı, meta veri ekleme ve bu araçla ilgili daha fazla bilgiyi %d içinde bulabilirsiniz."
msgid "Process import"
msgstr "İşlem içe aktarma"
@ -3541,14 +3545,6 @@ msgstr "Desteklenen Formatlar"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "Resim yükleme izin vermek için bunu etkinleştirin. Bu ayar, yöneticilerin etkilemez."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Misafirlerin Yüklediği Resimler"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Misafir Kullanıcıların Resim Yüklemesini İstiyorsanız Bunu Etkinleştirmeniz Gerekmektedir. "
msgid "Upload user interface"
msgstr "Kullanıcı arayüzünü yükle"
@ -3558,6 +3554,23 @@ msgstr "Sayfa içi konteyner"
msgid "route"
msgstr "rota"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "Misafirlerin Yüklediği Resimler"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "Misafir Kullanıcıların Resim Yüklemesini İstiyorsanız Bunu Etkinleştirmeniz Gerekmektedir. "
msgid "Moderate uploads"
msgstr "Yüklemeleri denetle"
msgid "Guests"
msgstr "Ziyaretçiler"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "Gelen yüklemeleri denetlemek için bunu etkinleştirin. Hedef içerik, onay için denetim gerektirecektir."
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "Katıştırma kodlarını etkinleştir (yükleyici)"
@ -3973,6 +3986,13 @@ msgstr "Haftalık Resim Yükleme Sınırı"
msgid "Monthly limit"
msgstr "Aylık Resim Yükleme Sınırı"
#, php-format
msgid "Lock %s editing"
msgstr "%s düzenlemesini kilitle"
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "Gelen yüklemeleri denetlemek için bunu etkinleştirin. Hedef içerik, onay için denetim gerektirecektir."
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "Listelerde güvenli olmayan içeriği göster"
@ -4117,26 +4137,6 @@ msgstr "Heksadesimal renk değeri"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "Ana tema rengi olarak bunu kullan. Değer<a href=\"%s\" target=\"_blank\">heksadesimal formatta</a> olmalı."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "Üst çubuk rengi"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Geri"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Beyaz"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "Bunu \"beyaz\" olarak ayarlarsanız, üstteki çubuk ve tüm siyah tonları beyaz tonlarına dönüştürülür."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "Üst çubuk düğme (button) rengi"
@ -4166,6 +4166,18 @@ msgstr "Kırmızı"
msgid "Grey"
msgstr "Gri"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "Geri"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "Beyaz"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "\"Hesap oluştur\" düğmesi gibi en üstteki çubuk düğmeleri için renk."
@ -4309,9 +4321,12 @@ msgstr "Açılış sayfası"
msgid "Split landing + images"
msgstr "Bölünmüş iniş + görüntüleri"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "Rota keşfet"
#, php-format
msgid "Route %s"
msgstr "%s yolu"
msgid "upload"
msgstr "yükle"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4822,6 +4837,28 @@ msgstr "Kodun İçeriği"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "Disqus, Facebook veya başka bir yerden görüntü almak istiyorum. Alınacak görüntü profilde gösterilecektir."
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "%s hizmetini kullanarak içeriği otomatik olarak denetleyin."
msgid "Automatic approve"
msgstr "Otomatik onay"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "Bu hizmet tarafından denetlenen içeriği otomatik olarak onaylamak için bunu etkinleştirin."
msgid "Block content"
msgstr "İçeriği engelle"
msgid "Adult"
msgstr "Yetişkin"
msgid "Teen and adult"
msgstr "Genç ve yetişkin"
msgid "Flag NSFW"
msgstr "NSFW olarak işaretle."
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "Google Analytics kodunuzu giriniz."
@ -4879,6 +4916,9 @@ msgstr "GIF Oynat"
msgid "Load full resolution"
msgstr "Tam çözünürlük yükle"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "Seçilen tüm içeriği gerçekten kaldırmak istiyor musunuz? Bu geri alınamaz."
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "%a ya eklendi ve %c olarak kategorize edildi"
@ -5303,10 +5343,6 @@ msgstr "Profilinizin arkaplan resmi silinecektir. Bu işlem geri alınamaz. Silm
msgid "Delete background"
msgstr "Arka Planı Sil"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "Profili Düzenle"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
msgid ""
msgstr ""
"Project-Id-Version: VERSION\n"
"POT-Creation-Date: 2020-04-16 12:57+0000\n"
"PO-Revision-Date: 2020-04-16 12:57+0000\n"
"POT-Creation-Date: 2020-09-25 18:53+0000\n"
"PO-Revision-Date: 2020-09-25 18:53+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE TEAM <EMAIL@ADDRESS>\n"
"Language: zh_CN\n"
@ -203,6 +203,9 @@ msgstr "您必须输入相册名称."
msgid "Confirm"
msgstr "确认"
msgid "The content has been approved."
msgstr "内容已获批准。"
#: ../../../app/lib/chevereto.js:976 ../../../app/lib/chevereto.min.js:48
msgid "Select existing album"
msgstr "选择现有的相册"
@ -353,6 +356,9 @@ msgid "Album"
msgid_plural "Albums"
msgstr[0] "相册"
msgid "Approve"
msgstr "批准"
#: ../../../app/themes/Peafowl/snippets/listing_tools_editor.php:54
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:7
#: ../../../app/themes/Peafowl/tpl_list_item/item_album_admin_tools.php:8
@ -750,6 +756,16 @@ msgid "User"
msgid_plural "Users"
msgstr[0] "用户"
msgid "adult"
msgstr "成人"
msgid "teen"
msgstr "青少年"
#, php-format
msgid "Content of type %s is forbidden"
msgstr "类型为 %s 的内容被禁止"
#: ../../../app/lib/classes/class.page.php:108
#, php-format
msgid "Can't create %s destination dir"
@ -1367,11 +1383,6 @@ msgstr "图像页面"
msgid "Inside viewer top (image page)"
msgstr "内部图像浏览器顶部(图像页)"
#: ../../../app/routes/route.dashboard.php:413
#: ../../../app/routes/route.dashboard.php:417
msgid "Expected banner size 728x90"
msgstr "默认的横幅大小为728x90"
#: ../../../app/routes/route.dashboard.php:416
msgid "Inside viewer foot (image page)"
msgstr "内部图像浏览器底部(图像页)"
@ -1490,10 +1501,6 @@ msgstr "无效的主题色调"
msgid "Invalid theme main color"
msgstr "无效的主题主要颜色"
#: ../../../app/routes/route.dashboard.php:632
msgid "Invalid theme top bar color"
msgstr "无效的主题顶部菜单栏颜色"
#: ../../../app/routes/route.dashboard.php:637
msgid "Invalid theme top bar button color"
msgstr "无效的主题顶部菜单栏按钮颜色"
@ -1828,6 +1835,9 @@ msgstr "错误的用户名或密码"
msgid "Sign in"
msgstr "登录"
msgid "Moderate"
msgstr "Moderate"
msgid "Upload images"
msgstr "上传图片"
@ -2212,6 +2222,12 @@ msgstr "重置"
msgid "close"
msgstr "关闭"
msgid "Note"
msgstr "通知"
msgid "We must approve the uploaded content before being able to share."
msgstr "我们必须对上传的内容进行审核,才能进行分享。"
msgid "copy"
msgstr "复制"
@ -2223,10 +2239,6 @@ msgstr "插入"
msgid "Remove"
msgstr "删除"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:154
msgid "Edit image"
msgstr "编辑图片"
#: ../../../app/themes/Peafowl/snippets/anywhere_upload.php:158
#: ../../../app/themes/Peafowl/snippets/form_image.php:4
#: ../../../app/themes/Peafowl/views/dashboard.php:441
@ -2491,7 +2503,7 @@ msgstr "相册密码"
#: ../../../app/themes/Peafowl/views/settings.php:364
#: ../../../content/pages/default/contact.php:87
msgid "Name"
msgstr "称"
msgstr "称"
#: ../../../app/themes/Peafowl/snippets/form_category_edit.php:5
msgid "Category name"
@ -2520,6 +2532,12 @@ msgstr "简要描述这一类别"
msgid "Untitled image"
msgstr "无标题图像"
msgid "Mark this if the image is not safe for work"
msgstr "如果图像不安全(NSFW),请在此标记。"
msgid "Flag not safe"
msgstr "标记不安全"
#: ../../../app/themes/Peafowl/snippets/form_storage_edit.php:118
msgid "Path"
msgstr "路径"
@ -2805,18 +2823,6 @@ msgstr "首页"
msgid "There's nothing to show here."
msgstr "没有要显示的内容"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:16
#: ../../../app/themes/Peafowl/views/image.php:69
#: ../../../app/themes/Peafowl/views/image.php:457
msgid "Edit image details"
msgstr "编辑图片"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:18
#: ../../../app/themes/Peafowl/views/album.php:22
#: ../../../app/themes/Peafowl/views/album.php:118
msgid "Edit album details"
msgstr "编辑相册"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:32
msgid "All the images will be moved to this newly created album. You can also move the images to an <a class=\"modal-switch\" data-switch=\"move-existing-album\">existing album</a>."
msgstr "所有的图片将被移动到这个新创建的相册. 你也可以移动图片到 <a class=\"modal-switch\" data-switch=\"move-existing-album\">现有相册</a>."
@ -2857,6 +2863,12 @@ msgstr "确认标记内容为不安全"
msgid "Do you really want to flag this content as unsafe?"
msgstr "你真的要标记这个内容为不安全?"
msgid "Confirm approval"
msgstr "确认批准"
msgid "Do you really want to approve this content? This can't be undone."
msgstr "你真的想删除所有选中的内容吗?这是无法挽回的。"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:106
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:110
msgid "Confirm deletion"
@ -2866,6 +2878,9 @@ msgstr "确认删除"
msgid "Do you really want to remove this content? This can't be undone."
msgstr "你真的想删除此内容? 一旦删除将无法恢复."
msgid "Do you really want to approve all the selected content? This can't be undone."
msgstr "你真的想删除所有选中的内容吗?这是无法挽回的。"
#: ../../../app/themes/Peafowl/snippets/user_items_editor.php:111
msgid "Do you really want to remove all the selected content? This can't be undone."
msgstr "你真的想删除所选内容? 一旦删除将无法恢复."
@ -3039,10 +3054,6 @@ msgstr "此内容是私有的"
msgid "Do you really want to delete this album and all of its images? This can't be undone."
msgstr "你真的要删除这个相册和它的所有图像? 这将不能恢复."
#: ../../../app/themes/Peafowl/views/album.php:25
msgid "Delete album"
msgstr "删除相册"
#: ../../../app/themes/Peafowl/views/image.php:85
msgid "You like this"
msgstr "你喜欢它"
@ -3075,13 +3086,13 @@ msgid "Learn more about %s at our %d."
msgstr "在 %d 处了解 %s 的详情."
msgid "The connecting IP is determined using the server variable %var%. If the detected IP doesn't match yours, it means that your web server is under a proxy and you need to tweak your server to set the real connecting IP."
msgstr "使用服务器变量 %var% 获取真实IP。如果检测到的IP与您的不匹配这意味着您的Web服务器在代理下您需要调整您的服务器设置以便获取真实IP。"
msgstr "连接IP是通过服务器变量 %var% 来确定的。如果检测到的IP与你的不一致说明你的Web服务器是在代理服务器下你需要调整你的服务器来设置真正的连接IP。"
msgid "For Nginx, you must use %nginx%. For Apache, %apache%."
msgstr "对于nginx您必须使用 %nginx% 对于Apache%apache% 。"
msgstr "对于Nginx你必须使用 %nginx% 对于Apache使用 %apache% 。"
msgid "Make sure that you address this issue as the system relies on accurate IP detections to provide basic functionalities and to protect against spam, flooding, and brute force attacks."
msgstr "请确保解决此问题,因为系统依准确的IP检测来提供基本功能并能防止垃圾邮件、洪水和暴力攻击。"
msgstr "请确保解决此问题,因为系统依准确的IP检测来提供基本功能并能防止垃圾邮件、洪水攻击和暴力破解攻击。"
#: ../../../app/themes/Peafowl/views/dashboard.php:40
#: ../../../app/themes/Peafowl/views/dashboard.php:1732
@ -3097,9 +3108,6 @@ msgstr "自动导入"
msgid "The system automatically parses any content by a continuous observation of the %path% path."
msgstr "系统将自动检测 %path% 路径,自动解析并导入内容。"
msgid "The system automatically parses any content by a continous observation of the %path% path."
msgstr "系统将自动检测 %path% 路径,自动解析并导入内容。"
msgid "Completed jobs will be automatically re-started after %n %m."
msgstr "已完成的作业将在 %n %m 之后自动重新启动。"
@ -3152,16 +3160,9 @@ msgstr "您可以通过更改 %s% 的整数值来实现并行运行该命令。"
msgid "All file-system permissions must be granted for the crontab user at %path%"
msgstr "必须给crontab用户授予 %path% 下所有文件的可读写权限"
msgid "Required crontab entry:"
msgstr "必需的crontab指令"
msgid "Add import job"
msgstr "添加导入作业"
#, php-format
msgid "This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure. You can learn more about the folder structure, adding metadata, and all about this tool in our %d."
msgstr "此工具允许通过将要导入的内容指向系统路径,向网站批量添加内容。它支持使用基于文件夹的结构添加用户、相册和图像。您可以在我们的 %d 中了解更多关于文件夹结构、添加元数据,以及有关此工具的所有信息。"
msgid "Process import"
msgstr "进程导入"
@ -3529,14 +3530,6 @@ msgstr "启用上传"
msgid "Enable this if you want to allow image uploads. This setting doesn't affect administrators."
msgstr "启用图片上传(如果你想允许图片上传请启用). 此设置不会影响管理员."
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "访客(不需注册)上传"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "启用它则允许未注册的用户上传图片"
msgid "Upload user interface"
msgstr "上传用户界面"
@ -3546,6 +3539,23 @@ msgstr "页面容器"
msgid "route"
msgstr "路由"
#: ../../../app/themes/Peafowl/views/dashboard.php:639
msgid "Guest uploads"
msgstr "访客(不需注册)上传"
#: ../../../app/themes/Peafowl/views/dashboard.php:645
msgid "Enable this if you want to allow non registered users to upload."
msgstr "启用它则允许未注册的用户上传图片"
msgid "Moderate uploads"
msgstr "Moderate 上传"
msgid "Guests"
msgstr "访客"
msgid "Enable this to moderate incoming uploads. Target content will require moderation for approval."
msgstr "启用此功能可对传入的上传内容进行审核。目标内容将需要审核才能获得批准。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1353
msgid "Enable embed codes (uploader)"
msgstr "启用嵌入代码(上传者)"
@ -3615,7 +3625,7 @@ msgid "Enable this if you want to allow each user to configure how image Exif da
msgstr "启用它, 如果你允许每个用户设置是否删除图像的Exif数据."
msgid "Maximum upload file size"
msgstr "最大文件大小 (MB)"
msgstr "最大上传文件大小 (MB)"
msgid "Maximum size allowed by server is %s. This limit is capped by %u and %p (%f values)."
msgstr "服务器最大允许上传%s.因为参数%u和%p(文件:%f)"
@ -3961,29 +3971,36 @@ msgstr "每周的限额"
msgid "Monthly limit"
msgstr "每月的限额"
#, php-format
msgid "Lock %s editing"
msgstr "锁定 %s 编辑"
msgid "Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission."
msgstr "启用此功能可防止用户更改NSFW标志。启用后只有管理员和管理有此权限。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1070
msgid "Show not safe content in listings"
msgstr "显示在列表中没有安全内容"
msgstr "在列表中显示不安全内容(NSFW)"
#: ../../../app/themes/Peafowl/views/dashboard.php:1076
msgid "Enable this if you want to show not safe content in listings. This setting doesn't affect administrators and can be overridden by user own settings."
msgstr "如果要在列表中显示不安全内容请启用此功能. 此设置不会影响管理员, 并且可以由用户自己的设置重写."
msgstr "如果您想在列表中显示不安全的内容(NSFW),请启用此功能。此设置不影响管理员,可由用户自己的设置覆盖。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1079
msgid "Blur NSFW content in listings"
msgstr "模糊NSFW(标记为不安全)的内容显示在列表"
msgstr "在列表中模糊显示NSFW内容"
#: ../../../app/themes/Peafowl/views/dashboard.php:1085
msgid "Enable this if you want to apply a blur effect on the NSFW images in listings."
msgstr "如果你想申请一个模糊效果的NSFW图像列表启用它."
msgstr "如果您想对列表中的NSFW图片应用高斯模糊效果请启用此功能。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1088
msgid "Show banners in not safe content"
msgstr "显示横幅在不安全的内容"
msgstr "在不安全的内容中显示横幅广告"
#: ../../../app/themes/Peafowl/views/dashboard.php:1094
msgid "Enable this if you want to show banners in not safe content pages."
msgstr "如果你想显示在不安全的内容页面的横幅请启用这个功能."
msgstr "如果您想在不安全的内容页面中显示横幅广告,请启用此功能。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1098
msgid "Show not safe content in random mode"
@ -4105,26 +4122,6 @@ msgstr "十六进制颜色值"
msgid "Use this to set the main theme color. Value must be in <a href=\"%s\" target=\"_blank\">hex format</a>."
msgstr "使用此设置的主要主题颜色. 值必须是 <a href=\"%s\" target=\"_blank\">十六进制</a> 格式."
#: ../../../app/themes/Peafowl/views/dashboard.php:1203
msgid "Top bar color"
msgstr "顶部菜单栏颜色"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "黑"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "白"
#: ../../../app/themes/Peafowl/views/dashboard.php:1210
msgid "If you set this to \"white\" the top bar and all the black tones will be changed to white tones."
msgstr "如果您将此设置为\"白\"的顶部栏和所有黑色的色调将更改为白色的色调."
#: ../../../app/themes/Peafowl/views/dashboard.php:1214
msgid "Top bar button color"
msgstr "顶部菜单栏按钮颜色"
@ -4154,6 +4151,18 @@ msgstr "红"
msgid "Grey"
msgstr "灰"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1223
#: ../../../app/themes/Peafowl/views/dashboard.php:1461
msgid "Black"
msgstr "黑"
#: ../../../app/themes/Peafowl/views/dashboard.php:1206
#: ../../../app/themes/Peafowl/views/dashboard.php:1224
#: ../../../app/themes/Peafowl/views/dashboard.php:1462
msgid "White"
msgstr "白"
#: ../../../app/themes/Peafowl/views/dashboard.php:1230
msgid "Color for the top bar buttons like the \"Create account\" button."
msgstr "顶栏的颜色按钮为\"创建帐户\"按钮."
@ -4259,11 +4268,11 @@ msgstr "启用此选项, 以内容嵌入代码 ."
#: ../../../app/themes/Peafowl/views/dashboard.php:1365
msgid "Not safe content checkbox in uploader"
msgstr "在查看上载不安全内容复选框"
msgstr "在上传时显示\"标记不安全内容\"复选框"
#: ../../../app/themes/Peafowl/views/dashboard.php:1371
msgid "Enable this if you want to show a checkbox to indicate not safe content upload."
msgstr "如果你想显示一个复选框, 表示没有安全内容上传请启用这个功能."
msgstr "如果您想在上传页面显示一个复选框来标记\"不安全的内容(NSFW)\",请启用此功能。"
#: ../../../app/themes/Peafowl/views/dashboard.php:1377
msgid "Custom CSS code"
@ -4297,9 +4306,12 @@ msgstr "仅显示上传按钮"
msgid "Split landing + images"
msgstr "上传按钮 + 最新图片"
#: ../../../app/themes/Peafowl/views/dashboard.php:1396
msgid "Route explore"
msgstr "直接显示探索图库"
#, php-format
msgid "Route %s"
msgstr "路径 %s"
msgid "upload"
msgstr "上传"
#: ../../../app/themes/Peafowl/views/dashboard.php:1401
#, php-format
@ -4810,6 +4822,28 @@ msgstr "评论社会化代码"
msgid "Disqus, Facebook or anything you want. It will be used in image view."
msgstr "DISQUS, Facebook或其他. 它将在图像视图中使用."
#, php-format
msgid "Automatically moderate the content using the %s service."
msgstr "使用 %s 服务将会自动审核内容。"
msgid "Automatic approve"
msgstr "自动审核"
msgid "Enable this to automatically approve content moderated by this service."
msgstr "启用此功能可自动审核本服务所管理的内容。"
msgid "Block content"
msgstr "屏蔽内容"
msgid "Adult"
msgstr "成人"
msgid "Teen and adult"
msgstr "青少年和成人"
msgid "Flag NSFW"
msgstr "标记 NSFW"
#: ../../../app/themes/Peafowl/views/dashboard.php:2002
msgid "Analytics code"
msgstr "Analytics分析代码"
@ -4825,7 +4859,7 @@ msgstr "有关API的文档查看 <a %s>API文档</a>"
#: ../../../app/themes/Peafowl/views/dashboard.php:2019
msgid "API v1 key"
msgstr "API v1 key"
msgstr "API v1 密钥"
#: ../../../app/themes/Peafowl/views/dashboard.php:2022
#, php-format
@ -4867,6 +4901,9 @@ msgstr "播放 GIF"
msgid "Load full resolution"
msgstr "加载原图"
msgid "Do you really want to approve this image? The image will go public if you approve it."
msgstr "你真的想删除所有选中的内容吗?这是无法挽回的。"
#: ../../../app/themes/Peafowl/views/image.php:136
msgid "Added to %a and categorized in %c"
msgstr "加入 %a 和标记上 %c"
@ -5291,10 +5328,6 @@ msgstr "该个人信息的背景图像将被删除. 这将不能恢复. 您确
msgid "Delete background"
msgstr "删除背景图片"
#: ../../../app/themes/Peafowl/views/user.php:61
msgid "Edit profile"
msgstr "编辑网站配置"
#: ../../../app/themes/Peafowl/views/user.php:75
msgid "Follower"
msgid_plural "Followers"

View File

@ -1,6 +1,7 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
@ -261,7 +262,7 @@ try {
'lang_subdomain_wildcard' => 0,
'user_subdomain_wildcard' => 0,
'website_https' => 'auto',
'upload_gui' => 'js',
'upload_gui' => 'page',
'recaptcha_version' => '2',
'force_recaptcha_contact_page' => 1,
'dump_update_query' => 0,
@ -276,6 +277,15 @@ try {
'1.2.1' => null,
'1.2.2' => null,
'1.2.3' => null,
'1.3.0' => [
'moderatecontent' => 0,
'moderatecontent_key' => '',
'moderatecontent_block_rating' => 'a', // ,a,t
'moderatecontent_flag_nsfw' => 'a', // ,a,t
'moderatecontent_auto_approve' => 0,
'moderate_uploads' => '', // ,all,guest,
'image_lock_nsfw_editing' => 0,
],
];
// Settings that must be renamed from NAME to NEW NAME and DELETE old NAME
$settings_rename = [];
@ -665,6 +675,16 @@ INSERT INTO `%table_prefix%imports` (`import_path`, `import_options`, `import_st
SELECT '%rootPath%importing/parse-albums', 'a:1:{s:4:\"root\";s:6:\"albums\";}', 'working', '0', '0', '0', NOW(), NOW(), '0', '0', '1' FROM DUAL
WHERE NOT EXISTS (SELECT * FROM `%table_prefix%imports` WHERE `import_path`='%rootPath%importing/parse-albums' AND `import_continuous`=1 LIMIT 1);",
],
'1.3.0' => [
'locks' => [], // ADD TABLE
'images' => [
'image_is_approved' => [
'op' => 'ADD',
'type' => 'tinyint(1)',
'prop' => "NOT NULL DEFAULT '1'",
],
],
]
];
$sql_update = [];
@ -875,7 +895,7 @@ WHERE NOT EXISTS (SELECT * FROM `%table_prefix%imports` WHERE `import_path`='%ro
}
if ($isDumpUpdate) {
G\debug('# Dumped update query. https://chevereto.com/docs/update-guide#manual-db');
G\debug('# Dumped update query. https://v3-docs.chevereto.com/setup/update-guide.html#manual-procedure');
G\debug($sql_update);
die();
}

View File

@ -29,6 +29,7 @@ CREATE TABLE `%table_prefix%images` (
`image_expiration_date_gmt` datetime DEFAULT NULL,
`image_likes` bigint(32) NOT NULL DEFAULT '0',
`image_is_animated` tinyint(1) NOT NULL DEFAULT '0',
`image_is_approved` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`image_id`),
KEY `image_name` (`image_name`(191)),
KEY `image_extension` (`image_extension`(191)),
@ -51,6 +52,7 @@ CREATE TABLE `%table_prefix%images` (
KEY `image_expiration_date_gmt` (`image_expiration_date_gmt`),
KEY `image_likes` (`image_likes`),
KEY `image_is_animated` (`image_is_animated`),
KEY `image_is_approved` (`image_is_approved`),
KEY `image_album_id_image_id` (`image_album_id`, `image_id`),
FULLTEXT KEY `searchindex` (`image_name`,`image_title`,`image_description`,`image_original_filename`)
) ENGINE=%table_engine% DEFAULT CHARSET=utf8mb4;

11
app/install/sql/locks.sql Normal file
View File

@ -0,0 +1,11 @@
DROP TABLE IF EXISTS `%table_prefix%locks`;
CREATE TABLE `%table_prefix%locks` (
`lock_id` bigint(20) NOT NULL AUTO_INCREMENT,
`lock_name` varchar(255) NOT NULL,
`lock_date_gmt` datetime NOT NULL,
`lock_expires_gmt` datetime DEFAULT NULL,
PRIMARY KEY (`lock_id`),
KEY `lock_date_gmt` (`lock_date_gmt`),
KEY `lock_expires_gmt` (`lock_expires_gmt`),
UNIQUE KEY `lock_name` (`lock_name`(191)) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

View File

@ -1,6 +1,7 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -32,9 +32,7 @@ class Album
if (!is_array($requester)) {
$requester = User::getSingle($requester, 'id');
}
if (!defined('G_APP_GITHUB_REPO') && version_compare(Settings::get('chevereto_version_installed'), '3.9.0', '>=')) {
$joins[] = 'LEFT JOIN ' . $tables['likes'] . ' ON ' . $tables['likes'] . '.like_content_type = "album" AND ' . $tables['albums'] . '.album_id = ' . $tables['likes'] . '.like_content_id AND ' . $tables['likes'] . '.like_user_id = ' . $requester['id'];
}
}
$query .= implode("\n", $joins) . "\n";

View File

@ -1,72 +1,72 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Confirmation
{
public static function get($values, $sort=array(), $limit=1)
{
try {
return DB::get('confirmations', $values, 'AND', $sort, $limit);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
public static function insert($values)
{
if (!is_array($values)) {
throw new ConfirmationException('Expecting array values, '.gettype($values).' given in ' . __METHOD__, 100);
}
if (!$values['status']) {
$values['status'] = 'active';
}
$values['date'] = G\datetime();
$values['date_gmt'] = G\datetimegmt();
try {
return DB::insert('confirmations', $values);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
public static function update($id, $values)
{
try {
return DB::update('confirmations', $values, ['id' => $id]);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
public static function delete($values, $clause='AND')
{
try {
return DB::delete('confirmations', $values, $clause);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
}
class ConfirmationException extends Exception
{
}
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Confirmation
{
public static function get($values, $sort=array(), $limit=1)
{
try {
return DB::get('confirmations', $values, 'AND', $sort, $limit);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
public static function insert($values)
{
if (!is_array($values)) {
throw new ConfirmationException('Expecting array values, '.gettype($values).' given in ' . __METHOD__, 100);
}
if (!$values['status']) {
$values['status'] = 'active';
}
$values['date'] = G\datetime();
$values['date_gmt'] = G\datetimegmt();
try {
return DB::insert('confirmations', $values);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
public static function update($id, $values)
{
try {
return DB::update('confirmations', $values, ['id' => $id]);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
public static function delete($values, $clause='AND')
{
try {
return DB::delete('confirmations', $values, $clause);
} catch (Exception $e) {
throw new ConfirmationException($e->getMessage(), 400);
}
}
}
class ConfirmationException extends Exception
{
}

File diff suppressed because it is too large Load Diff

View File

@ -1,137 +1,137 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Ip_ban
{
public static function getSingle($args=[])
{
try {
$args = array_merge([
'ip' => G\get_client_ip()
], $args);
$db = DB::getInstance();
$query = 'SELECT * FROM ' . DB::getTable('ip_bans') . ' WHERE ';
if ($args['id']) {
$query .= 'ip_ban_id = :id;';
} else {
$query .= ':ip LIKE ip_ban_ip AND (ip_ban_expires_gmt > :now OR ip_ban_expires_gmt IS NULL) ORDER BY ip_ban_id DESC;'; // wilcard are stored as % but displayed as *
}
$db->query($query);
if ($args['id']) {
$db->bind(':id', $args['id']);
} else {
$db->bind(':ip', $args['ip']);
$db->bind(':now', G\datetimegmt());
}
$ip_ban = $db->fetchSingle();
if ($ip_ban) {
$ip_ban = DB::formatRow($ip_ban, 'ip_ban');
self::fill($ip_ban);
return $ip_ban;
} else {
return false;
}
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function getAll()
{
try {
$ip_bans_raw = DB::get('ip_bans', 'all');
$ip_bans = [];
if ($ip_bans_raw) {
foreach ($ip_bans_raw as $ip_ban) {
$idx = $ip_ban['ip_ban_id'];
$ip_bans[$idx] = DB::formatRow($ip_ban, 'ip_ban');
self::fill($ip_bans[$idx]);
}
}
return $ip_bans;
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function delete($args=[])
{
try {
return DB::delete('ip_bans', $args);
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function update($where=[], $values=[])
{
try {
if ($values['ip']) {
$values['ip'] = str_replace('*', '%', $values['ip']);
}
return DB::update('ip_bans', $values, $where);
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function insert($args=[])
{
try {
$args['ip'] = str_replace('*', '%', $args['ip']);
return DB::insert('ip_bans', $args);
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function fill(&$ip_ban)
{
$ip_ban['ip'] = str_replace('%', '*', $ip_ban['ip']);
}
public static function validateIP($ip, $wilcards=true)
{
$validate = true;
if ($wilcards) {
$base_ip = str_replace('*', '0', $ip);
if (!G\is_valid_ip($ip) && !G\is_valid_ip($base_ip)) {
$validate = false;
}
} else {
if (!G\is_valid_ip($ip)) {
$validate = false;
}
}
if (!$validate) {
throw new Ip_banException('Invalid IP address');
}
return true;
}
}
class Ip_banException extends Exception
{
}
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Ip_ban
{
public static function getSingle($args=[])
{
try {
$args = array_merge([
'ip' => G\get_client_ip()
], $args);
$db = DB::getInstance();
$query = 'SELECT * FROM ' . DB::getTable('ip_bans') . ' WHERE ';
if ($args['id']) {
$query .= 'ip_ban_id = :id;';
} else {
$query .= ':ip LIKE ip_ban_ip AND (ip_ban_expires_gmt > :now OR ip_ban_expires_gmt IS NULL) ORDER BY ip_ban_id DESC;'; // wilcard are stored as % but displayed as *
}
$db->query($query);
if ($args['id']) {
$db->bind(':id', $args['id']);
} else {
$db->bind(':ip', $args['ip']);
$db->bind(':now', G\datetimegmt());
}
$ip_ban = $db->fetchSingle();
if ($ip_ban) {
$ip_ban = DB::formatRow($ip_ban, 'ip_ban');
self::fill($ip_ban);
return $ip_ban;
} else {
return false;
}
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function getAll()
{
try {
$ip_bans_raw = DB::get('ip_bans', 'all');
$ip_bans = [];
if ($ip_bans_raw) {
foreach ($ip_bans_raw as $ip_ban) {
$idx = $ip_ban['ip_ban_id'];
$ip_bans[$idx] = DB::formatRow($ip_ban, 'ip_ban');
self::fill($ip_bans[$idx]);
}
}
return $ip_bans;
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function delete($args=[])
{
try {
return DB::delete('ip_bans', $args);
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function update($where=[], $values=[])
{
try {
if ($values['ip']) {
$values['ip'] = str_replace('*', '%', $values['ip']);
}
return DB::update('ip_bans', $values, $where);
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function insert($args=[])
{
try {
$args['ip'] = str_replace('*', '%', $args['ip']);
return DB::insert('ip_bans', $args);
} catch (Exception $e) {
throw new Ip_banException($e->getMessage(), 400);
}
}
public static function fill(&$ip_ban)
{
$ip_ban['ip'] = str_replace('%', '*', $ip_ban['ip']);
}
public static function validateIP($ip, $wilcards=true)
{
$validate = true;
if ($wilcards) {
$base_ip = str_replace('*', '0', $ip);
if (!G\is_valid_ip($ip) && !G\is_valid_ip($base_ip)) {
$validate = false;
}
} else {
if (!G\is_valid_ip($ip)) {
$validate = false;
}
}
if (!$validate) {
throw new Ip_banException('Invalid IP address');
}
return true;
}
}
class Ip_banException extends Exception
{
}

File diff suppressed because it is too large Load Diff

View File

@ -1,125 +1,64 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Lock
{
public static $expire_timeout = 15; // t=seconds
public static $path;
public function __construct($lock=null)
{
self::$path = CHV_APP_PATH_CONTENT_LOCKS;
if (strlen($lock) > 0) {
$this->setLock($lock);
}
$this->expiration = self::$expire_timeout;
$this->id = $this->getId();
}
public function getAPI()
{
return 'default';
}
public function getId()
{
if (!isset($this->id)) {
$this->id = G\random_string(8) . md5(microtime(true));
}
return $this->id;
}
public function setID($id=null)
{
$this->id = $id;
}
public function setExpiration($time)
{
$this->expiration = $time;
}
public function setLock($lock)
{
$this->lock = $lock;
}
// Magic wand here (binds ->check(), ->create() and ->destroy())
public function __call($name, $arguments)
{
if (in_array($name, ['check', 'create', 'destroy'])) {
return $this->process($name, $arguments);
}
}
private function process($action)
{
// Only accept things that look like a file name, not path or something else
$callee = debug_backtrace()[0];
$method = $callee['class'] . $callee['type'] . $callee['function'] . '()';
if (preg_replace('/[^\.\w\d-]/i', '', $this->lock) !== $this->lock) {
throw new LockException(sprintf('Invalid $lock argument \'%s\' passed in ' . $method, $this->lock));
}
$lock_folder = self::$path;
$lock_file = self::$path . $this->lock . '.lock';
clearstatcache(true, $lock_file);
switch ($action) {
case 'check':
if (!file_exists($lock_file)) {
return false;
}
$contents = file_get_contents($lock_file);
if (strpos($contents, 'expires') !== false) {
$contents = json_decode($contents);
}
if (isset($contents->expires)) {
$is_locked = $contents->expires > microtime(true);
if (!$is_locked) {
self::destroy();
}
return $is_locked;
}
break;
case 'create':
$contents = [
'id' => $this->id
];
$now = microtime(true);
if ($this->expiration) {
$contents['expires'] = $now + (int)$this->expiration;
}
if (!is_dir(self::$path) && !@mkdir(self::$path)) {
throw new LockException('Unable to create lock folder in ' . $method);
}
if (file_put_contents($lock_file, json_encode($contents), LOCK_EX) === false) {
throw new LockException('Unable to create ' . $this->lock . ' lock in ' . $method);
}
break;
case 'destroy':
if (file_exists($lock_file) && !@unlink($lock_file)) {
throw new LockException('Unable to destroy ' . $this->lock . ' lock in ' . $method);
}
break;
}
return true;
}
}
class LockException extends Exception
{
}
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Lock
{
private $name;
public function __construct($name)
{
$this->name = $name;
}
public function create()
{
$lock = DB::get('locks', ['name' => $this->name]);
$lock = isset($lock[0]) ? $lock[0] : false;
if ($lock) {
$diff = G\datetime_diff($lock['expires_gmt']);
if ($diff > 0) {
return false;
}
$this->destroy();
}
$datetime = G\datetimegmt();
try {
$insert = DB::insert('locks', [
'name' => $this->name,
'date_gmt' => $datetime,
'expires_gmt' => G\datetime_add($datetime, 'PT15S'),
]);
return $insert !== false;
} catch (\Exception $e) {
return false;
}
}
public function destroy()
{
if (DB::delete('locks', ['name' => $this->name]) === false) {
throw new LockException('Unable to destroy lock ' . $this->name);
}
return true;
}
}
class LockException extends Exception
{
}

View File

@ -54,12 +54,8 @@ class Login
public static function isPi()
{
$versionCompare = '3.14.0.beta.1';
if (defined('G_APP_GITHUB_REPO')) {
$versionCompare = '1.2.0';
}
if (!isset(self::$isPi)) {
self::$isPi = version_compare(Settings::get('chevereto_version_installed'), $versionCompare, '>=');
self::$isPi = version_compare(Settings::get('chevereto_version_installed'), '1.2.0', '>=');
}
return self::$isPi;

View File

@ -0,0 +1,135 @@
<?php
/* --------------------------------------------------------------------
Chevereto
http://chevereto.com/
@author Rodolfo Berrios A. <http://rodolfoberrios.com/>
<inbox@rodolfoberrios.com>
Copyright (C) Rodolfo Berrios A. All rights reserved.
BY USING THIS SOFTWARE YOU DECLARE TO ACCEPT THE CHEVERETO EULA
http://chevereto.com/license
--------------------------------------------------------------------- */
namespace CHV;
use G;
class ModerateContent
{
private $imageFilename;
private $imageInfo;
private $moderation;
private $error_message = '';
private $error_code = 0;
private $imageOptimized;
public function __construct($imageFilename, $info=[])
{
$this->imageFilename = $imageFilename;
$this->imageInfo = $info;
if ($this->imageInfo === []) {
$this->imageInfo = G\get_image_fileinfo($this->imageFilename);
}
$this->optimizeImage();
$url = "http://api.moderatecontent.com/moderate/?key=".Settings::get('moderatecontent_key');
$this->error_message = '';
$this->error_code = 0;
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_FAILONERROR => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('file'=> new \CURLFile($this->imageOptimized)),
));
$curl_response = curl_exec($curl);
if (curl_errno($curl)) {
$error_msg = curl_error($curl);
}
if ($curl_response === false) {
$this->error_message = $error_msg;
$this->error_code = 1402;
} else {
$json = json_decode($curl_response);
if ($json === null && json_last_error() !== JSON_ERROR_NONE) {
$this->error_message = 'Malformed content moderation response';
$this->error_code = 1403;
} else {
$this->moderation = $json;
$this->assertIsAllowed();
}
}
curl_close($curl);
}
public function moderation()
{
return $this->moderation;
}
public function isSuccess()
{
return $this->error_code === 0;
}
public function isError()
{
return $this->error_code !== 0;
}
public function errorCode()
{
return $this->error_code;
}
public function errorMessage()
{
return $this->error_message;
}
private function assertIsAllowed()
{
$block = [];
$blockRating = Settings::get('moderatecontent_block_rating');
switch ($blockRating) {
case 'a':
$block[] = 'a';
break;
case 't':
$block[] = 'a';
$block[] = 't';
break;
}
$ratings = [
'a' => _s('adult'),
't' => _s('teen'),
];
foreach ($block as $rating) {
if ($this->moderation->rating_letter == $rating) {
throw new UploadException(_s('Content of type %s is forbidden', $ratings[$rating]), 1404);
}
}
}
private function optimizeImage()
{
$this->imageOptimized = $this->imageFilename;
// if ($this->imageInfo['size'] > G\get_bytes('1 MB') && !G\is_animated_image($this->imageFilename)) {
// $this->imageOptimized = Upload::getTempNam(sys_get_temp_dir());
// if (copy($this->imageFilename, $this->imageOptimized)) {
// $option = $this->imageInfo['ratio'] >= 1 ? 'width' : 'height';
// Image::resize($this->imageOptimized, null, null, [$option => 300]);
// }
// }
}
}

View File

@ -1,424 +1,432 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Settings
{
protected static $instance;
public static $settings;
public static $defaults;
public function __construct()
{
try {
$settings = [];
try {
$db_settings = DB::get('settings', 'all', null, ['field' => 'name', 'order' => 'asc']);
foreach ($db_settings as $k => $v) {
$v = DB::formatRow($v);
$value = $v['value'];
$default = $v['default'];
if ($v['typeset'] == 'bool') {
$value = (bool) $value == 1;
$default = (bool) $default == 1;
}
if ($v['typeset'] == 'string') {
$value = (string) $value;
$default = (string) $default;
}
$settings[$v['name']] = $value;
$defaults[$v['name']] = $default;
}
foreach (Login::getSocialServices(['get' => 'all']) as $k => $v) { // Must get all to avoid endless nesting
if ($settings[$k]) {
$settings['social_signin'] = true;
break;
}
}
} catch (Exception $e) {
$settings = [];
$defaults = [];
}
if (!$db_settings) {
//throw new Exception("Can't find any DB setting. Table seems to be empty.", 400);
}
// Inject the missing settings
$injected = [
// 3.2.0
'theme_download_button' => true,
'enable_signups' => true,
'website_mode' => 'community',
// 3.3.0
'listing_pagination_mode' => 'classic',
'website_content_privacy_mode' => 'default',
'website_privacy_mode' => 'public',
// 3.3.1
'website_explore_page' => true,
// 3.4.4
'website_search' => true,
'website_random' => true,
'theme_show_social_share' => true,
// 'theme_show_embed_content' => true, // deprecated @3.14.2
'theme_show_embed_uploader' => true,
// 3.4.5
'user_routing' => true,
'require_user_email_confirmation' => true,
'require_user_email_social_signup' => true,
// 3.5.15
'homepage_style' => 'landing',
//'logged_user_logo_link' => 'homepage', // Removed in 3.7.0
// 3.5.19
'user_image_avatar_max_filesize_mb' => '1',
'user_image_background_max_filesize_mb' => '2',
// 3.5.20
'theme_image_right_click' => false,
// 3.6.0
'theme_show_exif_data' => true,
'homepage_cta_color' => 'green',
'homepage_cta_outline' => false,
'watermark_enable_guest' => true,
'watermark_enable_user' => true,
'watermark_enable_admin' => true,
// 3.6.1
'language_chooser_enable' => true,
'languages_disable' => null,
'homepage_cta_fn' => 'cta-upload',
// 3.6.5
'watermark_target_min_width' => 100,
'watermark_target_min_height' => 100,
'watermark_percentage' => 4,
'watermark_enable_file_gif' => false,
// 3.7.2
'upload_medium_fixed_dimension' => 'width',
'upload_medium_size' => 500,
// 3.7.3
'enable_followers' => true,
'enable_likes' => true,
'enable_consent_screen' => false,
'user_minimum_age' => null,
// 3.7.5
'route_image' => 'image',
'route_album' => 'album',
// 3.7.6
'enable_duplicate_uploads' => false,
// 3.8.4
'upload_enabled_image_formats' => 'jpg,png,bmp,gif',
'upload_threads' => '2',
'enable_automatic_updates_check' => true,
'comments_api' => 'js',
// 3.8.9
'image_load_max_filesize_mb' => '3',
// 3.8.12
'upload_max_image_width' => '0',
'upload_max_image_height' => '0',
// 3.9.0
'enable_expirable_uploads' => null,
// 3.10.2
'enable_user_content_delete' => false,
// 3.10.3
'enable_plugin_route' => true,
'sdk_pup_url' => null,
// 3.10.6
'website_explore_page_guest' => true,
'explore_albums_min_image_count' => 5,
'upload_max_filesize_mb_guest' => 0.5,
'notify_user_signups' => false,
'listing_viewer' => true,
// 3.11.1
'seo_image_urls' => true,
'seo_album_urls' => true,
// 3.12.0
'lang_subdomain_wildcard' => false,
'user_subdomain_wildcard' => false,
'website_https' => 'auto',
// 3.12.4
'upload_gui' => 'js',
'recaptcha_version' => '2',
// 3.12.8
'force_recaptcha_contact_page' => true,
// 3.13.0
'dump_update_query' => false,
// 3.13.4
'enable_powered_by' => true,
'akismet' => false,
'stopforumspam' => false,
// 3.14.0
'upload_enabled_image_formats' => 'jpg,png,bmp,gif,webp',
];
// Default listing thing
$device_to_columns = [
'phone' => 1,
'phablet' => 3,
'tablet' => 4,
'laptop' => 5,
'desktop' => 6,
];
foreach ($device_to_columns as $k => $v) {
$injected['listing_columns_' . $k] = $v;
}
foreach ($injected as $k => $v) {
if (!array_key_exists($k, $settings)) {
$settings[$k] = $v;
$defaults[$k] = $v;
}
}
// Fixed settings
if ($settings['email_mode'] == 'phpmail') {
$settings['email_mode'] = 'mail';
}
if (!in_array($settings['upload_medium_fixed_dimension'], ['width', 'height'])) {
$settings['upload_medium_fixed_dimension'] = 'width';
}
// Virtual settings
$settings['listing_device_to_columns'] = [];
foreach ($device_to_columns as $k => $v) {
$settings['listing_device_to_columns'][$k] = $settings['listing_columns_' . $k];
}
$settings['listing_device_to_columns']['largescreen'] = $settings['listing_columns_desktop'];
// Chevereto demo only
if (!in_array($_SERVER['SERVER_NAME'], ['demo.chevereto.com'])) {
if ($settings['twitter_account'] == 'chevereto') {
$settings['twitter_account'] = null;
}
}
// Internal settings
$settings = array_merge($settings, [
// Free tier
'enable_followers' => 0,
'enable_likes' => 0,
'social_signin' => 0,
'require_user_email_social_signup' => 0,
// HArdc0D3, so haxxor that it hurts!
'username_min_length' => 3,
'username_max_length' => 16,
'username_pattern' => '^[\w]{3,16}$',
'user_password_min_length' => 6,
'user_password_max_length' => 128,
'user_password_pattern' => '^.{6,128}$',
'maintenance_image' => 'default/maintenance_cover.jpg',
'ip_whois_url' => 'https://ipinfo.io/%IP',
'available_button_colors' => ['blue', 'green', 'orange', 'red', 'grey', 'black', 'white', 'default'],
'routing_regex' => '([\w_-]+)',
'routing_regex_path' => '([\w\/_-]+)',
'single_user_mode_on_disables' => ['enable_signups', 'guest_uploads', 'user_routing'],
'listing_safe_count' => 100,
// 3.6.5
'image_title_max_length' => 100,
'album_name_max_length' => 100,
// 3.8.4
'upload_available_image_formats' => 'jpg,png,bmp,gif,webp',
]);
if (!$settings['active_storage']) {
$settings['active_storage'] = null;
}
// '' -> NULL
foreach ($settings as $k => &$v) {
G\nullify_string($v);
}
unset($v); // break reference
foreach ($defaults as $k => &$v) {
G\nullify_string($v);
}
unset($v);
if ($settings['theme_logo_height'] > 0) {
$settings['theme_logo_height'] = (int) $settings['theme_logo_height'];
}
// Injected things due to single user mode on
if ($settings['website_mode'] == 'personal') {
if (array_key_exists('website_mode_personal_routing', $settings)) { // Single user routing workaround
if (is_null($settings['website_mode_personal_routing']) or $settings['website_mode_personal_routing'] == '/') {
$settings['website_mode_personal_routing'] = '/';
} else {
$settings['website_mode_personal_routing'] = G\get_regex_match($settings['routing_regex'], '#', $settings['website_mode_personal_routing'], 1);
}
}
if (G\is_integer($settings['website_mode_personal_uid'], ['min' => 0])) {
foreach ($settings['single_user_mode_on_disables'] as $k) {
$settings[$k] = false;
}
} else {
$settings['website_mode'] = 'community';
}
$settings['enable_likes'] = false;
$settings['enable_followers'] = false;
}
// CTA fixings
if (is_null($settings['homepage_cta_fn'])) {
$settings['homepage_cta_fn'] = 'cta-upload';
}
if ($settings['homepage_cta_fn'] == 'cta-link' and !G\is_url($settings['homepage_cta_fn_extra'])) {
$settings['homepage_cta_fn_extra'] = G\get_regex_match($settings['routing_regex_path'], '#', $settings['homepage_cta_fn_extra'], 1);
}
// Disabled languages handle
if (!is_null($settings['languages_disable'])) {
$languages_disable = (array) explode(',', $settings['languages_disable']);
$languages_disable = array_filter(array_unique($languages_disable));
} else {
$languages_disable = [];
}
$settings['languages_disable'] = $languages_disable;
self::$settings = $settings;
self::$defaults = $defaults;
} catch (Exception $e) {
throw new SettingsException($e->getMessage(), 400);
}
}
public static function getInstance()
{
if (is_null(self::$instance)) {
self::$instance = new self();
}
return self::$instance;
}
public static function getStatic($var)
{
$instance = self::getInstance();
return $instance::$$var;
}
public static function get($key = null)
{
$settings = self::getStatic('settings');
if (!is_null($key)) {
return $settings[$key];
} else {
return $settings;
}
}
public static function getType($val)
{
return ($val === 0 || $val === 1) ? 'bool' : 'string';
}
public static function getDefaults($key = null)
{
$defaults = self::getStatic('defaults');
if (!is_null($key)) {
return $defaults[$key];
} else {
return $defaults;
}
}
public static function getDefault($key)
{
return self::getDefaults($key);
}
public static function setValues($values)
{
self::$settings = $values;
}
public static function setValue($key, $value)
{
$settings = self::getStatic('settings');
self::$settings[$key] = $value ?: null;
}
/* Multi settings update [name => value]*/
public static function update($name_values)
{
try {
$query = '';
$binds = [];
$query_tpl = 'UPDATE `' . DB::getTable('settings') . '` SET `setting_value` = %v WHERE `setting_name` = %k;' . "\n";
$i = 0;
foreach ($name_values as $k => $v) {
$query .= strtr($query_tpl, ['%v' => ':v_' . $i, '%k' => ':n_' . $i]);
$binds[':v_' . $i] = $v;
$binds[':n_' . $i] = $k;
++$i;
}
unset($i);
$db = DB::getInstance();
$db->query($query);
foreach ($binds as $k => $v) {
$db->bind($k, $v);
}
$db->exec();
foreach ($name_values as $k => $v) {
self::setValue($k, $v);
}
return true;
} catch (Exception $e) {
throw new SettingsException($e->getMessage(), 400);
}
}
public static function getChevereto()
{
$api = 'https://chevereto.com/api/';
include_once G_APP_PATH . 'license/key.php';
$id = explode(':', $license)[0];
$info = $api . 'get/info/';
if (!defined('G_APP_GITHUB_REPO_URL')) {
$info .= '?id=' . $id;
$label = 'chevereto.com/panel/downloads';
$url = 'https://chevereto.com/panel/downloads';
} else {
$info .= 'free';
$label = G_APP_GITHUB_OWNER . '/' . G_APP_GITHUB_REPO;
$url = G_APP_GITHUB_REPO_URL;
}
return [
'id' => $id,
'edition' => G_APP_NAME,
'version' => G_APP_VERSION,
'source' => [
'label' => $label,
'url' => $url,
],
'api' => [
'download' => $api . 'download',
'get' => [
'info' => $info,
],
],
];
}
}
class SettingsException extends Exception
{
}
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
use Exception;
class Settings
{
protected static $instance;
public static $settings;
public static $defaults;
public function __construct()
{
try {
$settings = [];
try {
$db_settings = DB::get('settings', 'all', null, ['field' => 'name', 'order' => 'asc']);
foreach ($db_settings as $k => $v) {
$v = DB::formatRow($v);
$value = $v['value'];
$default = $v['default'];
if ($v['typeset'] == 'bool') {
$value = (bool) $value == 1;
$default = (bool) $default == 1;
}
if ($v['typeset'] == 'string') {
$value = (string) $value;
$default = (string) $default;
}
$settings[$v['name']] = $value;
$defaults[$v['name']] = $default;
}
foreach (Login::getSocialServices(['get' => 'all']) as $k => $v) { // Must get all to avoid endless nesting
if ($settings[$k]) {
$settings['social_signin'] = true;
break;
}
}
} catch (Exception $e) {
$settings = [];
$defaults = [];
}
if (!$db_settings) {
//throw new Exception("Can't find any DB setting. Table seems to be empty.", 400);
}
// Inject the missing settings
$injected = [
// 3.2.0
'theme_download_button' => true,
'enable_signups' => true,
'website_mode' => 'community',
// 3.3.0
'listing_pagination_mode' => 'classic',
'website_content_privacy_mode' => 'default',
'website_privacy_mode' => 'public',
// 3.3.1
'website_explore_page' => true,
// 3.4.4
'website_search' => true,
'website_random' => true,
'theme_show_social_share' => true,
// 'theme_show_embed_content' => true, // deprecated @3.14.2
'theme_show_embed_uploader' => true,
// 3.4.5
'user_routing' => true,
'require_user_email_confirmation' => true,
'require_user_email_social_signup' => true,
// 3.5.15
'homepage_style' => 'landing',
//'logged_user_logo_link' => 'homepage', // Removed in 3.7.0
// 3.5.19
'user_image_avatar_max_filesize_mb' => '1',
'user_image_background_max_filesize_mb' => '2',
// 3.5.20
'theme_image_right_click' => false,
// 3.6.0
'theme_show_exif_data' => true,
'homepage_cta_color' => 'green',
'homepage_cta_outline' => false,
'watermark_enable_guest' => true,
'watermark_enable_user' => true,
'watermark_enable_admin' => true,
// 3.6.1
'language_chooser_enable' => true,
'languages_disable' => null,
'homepage_cta_fn' => 'cta-upload',
// 3.6.5
'watermark_target_min_width' => 100,
'watermark_target_min_height' => 100,
'watermark_percentage' => 4,
'watermark_enable_file_gif' => false,
// 3.7.2
'upload_medium_fixed_dimension' => 'width',
'upload_medium_size' => 500,
// 3.7.3
'enable_followers' => true,
'enable_likes' => true,
'enable_consent_screen' => false,
'user_minimum_age' => null,
// 3.7.5
'route_image' => 'image',
'route_album' => 'album',
// 3.7.6
'enable_duplicate_uploads' => false,
// 3.8.4
'upload_enabled_image_formats' => 'jpg,png,bmp,gif',
'upload_threads' => '2',
'enable_automatic_updates_check' => true,
'comments_api' => 'js',
// 3.8.9
'image_load_max_filesize_mb' => '3',
// 3.8.12
'upload_max_image_width' => '0',
'upload_max_image_height' => '0',
// 3.9.0
'enable_expirable_uploads' => null,
// 3.10.2
'enable_user_content_delete' => false,
// 3.10.3
'enable_plugin_route' => true,
'sdk_pup_url' => null,
// 3.10.6
'website_explore_page_guest' => true,
'explore_albums_min_image_count' => 5,
'upload_max_filesize_mb_guest' => 0.5,
'notify_user_signups' => false,
'listing_viewer' => true,
// 3.11.1
'seo_image_urls' => true,
'seo_album_urls' => true,
// 3.12.0
'lang_subdomain_wildcard' => false,
'user_subdomain_wildcard' => false,
'website_https' => 'auto',
// 3.12.4
'upload_gui' => 'js',
'recaptcha_version' => '2',
// 3.12.8
'force_recaptcha_contact_page' => true,
// 3.13.0
'dump_update_query' => false,
// 3.13.4
'enable_powered_by' => true,
'akismet' => false,
'stopforumspam' => false,
// 3.14.0
'upload_enabled_image_formats' => 'jpg,png,bmp,gif,webp',
// 3.15.0
'hostname' => null,
'theme_show_embed_content_for' => 'all', // none,users,all
// 3.16.0
'moderatecontent' => 0,
'moderatecontent_key' => '',
'moderatecontent_block_rating' => 'a',
'moderatecontent_flag_nsfw' => 'a',
'moderate_uploads' => '', // ,
];
$device_to_columns = [
'phone' => 1,
'phablet' => 3,
'tablet' => 4,
'laptop' => 5,
'desktop' => 6,
];
foreach ($device_to_columns as $k => $v) {
$injected['listing_columns_' . $k] = $v;
}
foreach ($injected as $k => $v) {
if (!array_key_exists($k, $settings)) {
$settings[$k] = $v;
$defaults[$k] = $v;
}
}
// Fixed settings
if ($settings['email_mode'] == 'phpmail') {
$settings['email_mode'] = 'mail';
}
if (!in_array($settings['upload_medium_fixed_dimension'], ['width', 'height'])) {
$settings['upload_medium_fixed_dimension'] = 'width';
}
// Virtual settings
$settings['listing_device_to_columns'] = [];
foreach ($device_to_columns as $k => $v) {
$settings['listing_device_to_columns'][$k] = $settings['listing_columns_' . $k];
}
$settings['listing_device_to_columns']['largescreen'] = $settings['listing_columns_desktop'];
// Chevereto demo only
if (!in_array($_SERVER['SERVER_NAME'], ['demo.chevereto.com'])) {
if ($settings['twitter_account'] == 'chevereto') {
$settings['twitter_account'] = null;
}
}
// Internal settings
$settings = array_merge($settings, [
// Free tier
'enable_followers' => 0,
'enable_likes' => 0,
'social_signin' => 0,
'require_user_email_social_signup' => 0,
// HArdc0D3, so haxxor that it hurts!
'username_min_length' => 3,
'username_max_length' => 16,
'username_pattern' => '^[\w]{3,16}$',
'user_password_min_length' => 6,
'user_password_max_length' => 128,
'user_password_pattern' => '^.{6,128}$',
'maintenance_image' => 'default/maintenance_cover.jpg',
'ip_whois_url' => 'https://ipinfo.io/%IP',
'available_button_colors' => ['blue', 'green', 'orange', 'red', 'grey', 'black', 'white', 'default'],
'routing_regex' => '([\w_-]+)',
'routing_regex_path' => '([\w\/_-]+)',
'single_user_mode_on_disables' => ['enable_signups', 'guest_uploads', 'user_routing'],
'listing_safe_count' => 100,
// 3.6.5
'image_title_max_length' => 100,
'album_name_max_length' => 100,
// 3.8.4
'upload_available_image_formats' => 'jpg,png,bmp,gif,webp',
]);
if (!$settings['active_storage']) {
$settings['active_storage'] = null;
}
// '' -> NULL
foreach ($settings as $k => &$v) {
G\nullify_string($v);
}
unset($v); // break reference
foreach ($defaults as $k => &$v) {
G\nullify_string($v);
}
unset($v);
if ($settings['theme_logo_height'] > 0) {
$settings['theme_logo_height'] = (int) $settings['theme_logo_height'];
}
// Injected things due to single user mode on
if ($settings['website_mode'] == 'personal') {
if (array_key_exists('website_mode_personal_routing', $settings)) { // Single user routing workaround
if (is_null($settings['website_mode_personal_routing']) or $settings['website_mode_personal_routing'] == '/') {
$settings['website_mode_personal_routing'] = '/';
} else {
$settings['website_mode_personal_routing'] = G\get_regex_match($settings['routing_regex'], '#', $settings['website_mode_personal_routing'], 1);
}
}
if (G\is_integer($settings['website_mode_personal_uid'], ['min' => 0])) {
foreach ($settings['single_user_mode_on_disables'] as $k) {
$settings[$k] = false;
}
} else {
$settings['website_mode'] = 'community';
}
$settings['enable_likes'] = false;
$settings['enable_followers'] = false;
}
// CTA fixings
if (is_null($settings['homepage_cta_fn'])) {
$settings['homepage_cta_fn'] = 'cta-upload';
}
if ($settings['homepage_cta_fn'] == 'cta-link' and !G\is_url($settings['homepage_cta_fn_extra'])) {
$settings['homepage_cta_fn_extra'] = G\get_regex_match($settings['routing_regex_path'], '#', $settings['homepage_cta_fn_extra'], 1);
}
// Disabled languages handle
if (!is_null($settings['languages_disable'])) {
$languages_disable = (array) explode(',', $settings['languages_disable']);
$languages_disable = array_filter(array_unique($languages_disable));
} else {
$languages_disable = [];
}
$settings['languages_disable'] = $languages_disable;
self::$settings = $settings;
self::$defaults = $defaults;
} catch (Exception $e) {
throw new SettingsException($e->getMessage(), 400);
}
}
public static function getInstance()
{
if (is_null(self::$instance)) {
self::$instance = new self();
}
return self::$instance;
}
public static function getStatic($var)
{
$instance = self::getInstance();
return $instance::$$var;
}
public static function get($key = null)
{
$settings = self::getStatic('settings');
if (!is_null($key)) {
return $settings[$key];
} else {
return $settings;
}
}
public static function getType($val)
{
return ($val === 0 || $val === 1) ? 'bool' : 'string';
}
public static function getDefaults($key = null)
{
$defaults = self::getStatic('defaults');
if (!is_null($key)) {
return $defaults[$key];
} else {
return $defaults;
}
}
public static function getDefault($key)
{
return self::getDefaults($key);
}
public static function setValues($values)
{
self::$settings = $values;
}
public static function setValue($key, $value)
{
$settings = self::getStatic('settings');
self::$settings[$key] = $value ?: null;
}
/* Multi settings update [name => value]*/
public static function update($name_values)
{
try {
$query = '';
$binds = [];
$query_tpl = 'UPDATE `' . DB::getTable('settings') . '` SET `setting_value` = %v WHERE `setting_name` = %k;' . "\n";
$i = 0;
foreach ($name_values as $k => $v) {
$query .= strtr($query_tpl, ['%v' => ':v_' . $i, '%k' => ':n_' . $i]);
$binds[':v_' . $i] = $v;
$binds[':n_' . $i] = $k;
++$i;
}
unset($i);
$db = DB::getInstance();
$db->query($query);
foreach ($binds as $k => $v) {
$db->bind($k, $v);
}
$db->exec();
foreach ($name_values as $k => $v) {
self::setValue($k, $v);
}
return true;
} catch (Exception $e) {
throw new SettingsException($e->getMessage(), 400);
}
}
public static function getChevereto()
{
$api = 'https://chevereto.com/api/';
include_once G_APP_PATH . 'license/key.php';
$id = explode(':', $license)[0];
$info = $api . 'get/info/';
if (!defined('G_APP_GITHUB_REPO_URL')) {
$info .= '?id=' . $id;
$label = 'chevereto.com/panel/downloads';
$url = 'https://chevereto.com/panel/downloads';
} else {
$info .= 'free';
$label = G_APP_GITHUB_OWNER . '/' . G_APP_GITHUB_REPO;
$url = G_APP_GITHUB_REPO_URL;
}
return [
'id' => $id,
'edition' => G_APP_NAME,
'version' => G_APP_VERSION,
'source' => [
'label' => $label,
'url' => $url,
],
'api' => [
'download' => $api . 'download',
'get' => [
'info' => $info,
],
],
];
}
}
class SettingsException extends Exception
{
}

View File

@ -148,7 +148,16 @@ class Upload
}
}
$this->uploaded_file = G\name_unique_file($this->destination, $this->options['filenaming'], $this->fixed_filename);
/*
* Set uploaded_file
* Local storage uploads will be allocated at the target destination
* External storage will be allocated to the temp directory
*/
if ($this->storage_id) {
$this->uploaded_file = G\forward_slash(dirname($this->downstream)) . '/' . Storage::getStorageValidFilename($this->fixed_filename, $this->storage_id, $this->options['filenaming'], $this->destination);
} else {
$this->uploaded_file = G\name_unique_file($this->destination, $this->options['filenaming'], $this->fixed_filename);
}
$this->source = [
'filename' => $this->source_filename, // file.ext
@ -252,12 +261,10 @@ class Upload
if (!is_dir($this->destination)) { // Try to create the missing directory
$base_dir = G\add_ending_slash(G_ROOT_PATH . explode('/', preg_replace('#' . G_ROOT_PATH . '#', '', $this->destination, 1))[0]);
$base_perms = fileperms($base_dir);
$old_umask = umask(0);
$make_destination = mkdir($this->destination, $base_perms, true);
chmod($this->destination, $base_perms);
umask($old_umask);
if (!$make_destination) {
throw new UploadException('$destination ' . $this->destination . ' is not a dir', 130);
}
@ -277,6 +284,19 @@ class Upload
$this->destination = G\add_ending_slash($this->destination);
}
public static function getTempNam($destination)
{
$tempNam = @tempnam(sys_get_temp_dir(), 'chvtemp');
if (!$tempNam || !@is_writable($tempNam)) {
$tempNam = @tempnam($destination, 'chvtemp');
if (!$tempNam) {
throw new UploadException("Can't get a tempnam", 200);
}
}
return $tempNam;
}
/**
* Fetch the $source file.
*
@ -284,16 +304,7 @@ class Upload
*/
protected function fetchSource()
{
// Set the downstream file
$this->downstream = @tempnam(sys_get_temp_dir(), 'chvtemp');
if (!$this->downstream || !@is_writable($this->downstream)) {
$this->downstream = @tempnam($this->destination, 'chvtemp');
if (!$this->downstream) {
throw new UploadException("Can't get a tempnam", 200);
}
}
$this->downstream = static::getTempNam($this->destination);
if ($this->type == 'file') {
if ($this->source['error'] !== UPLOAD_ERR_OK) {
switch ($this->source['error']) {
@ -433,6 +444,16 @@ class Upload
if ($this->source_image_fileinfo['extension'] == 'webp' && G\is_animated_webp($this->downstream)) {
throw new UploadException('Animated WebP is not supported', 314);
}
if (Settings::get('moderatecontent') && (Settings::get('moderatecontent_block_rating') != '' || Settings::get('moderatecontent_flag_nsfw'))) {
$moderateContent = new ModerateContent($this->downstream, $this->source_image_fileinfo);
if ($moderateContent->isSuccess()) {
$this->moderation = $moderateContent->moderation();
} else {
throw new UploadException('Error processing content moderation: ' . $moderateContent->errorMessage());
error_log($moderateContent->errorMessage());
}
}
}
// Handle flood uploads

View File

@ -184,7 +184,9 @@ class User
if (empty($values['registration_ip'])) {
$values['registration_ip'] = G\get_client_ip();
}
if (!array_key_exists('is_dark_mode', $values)) {
$values['is_dark_mode'] = Settings::get('theme_tone') == 'dark';
}
// Detect flood (son 48 horas que hay que aprovechar)
if (!Login::getUser()['is_admin']) {
$db = DB::getInstance();

View File

@ -22,9 +22,9 @@ if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
}
function getIdFromURL($url)
function getIdFromURLComponent($component)
{
$explode = explode('.', $url);
$explode = explode('.', $component);
$encodedId = $explode[1] ?: $explode[0];
return decodeID($encodedId);

View File

@ -548,8 +548,6 @@ function get_peafowl_item_list($tpl = 'image', $item, $template, $requester = nu
// Now stock the item values
$replacements = array_change_key_case(flatten_array($item, $stock_tpl . '_'), CASE_UPPER);
// G\debug($replacements);
unset($replacements['IMAGE_ORIGINAL_EXIFDATA']);
if ($stock_tpl == 'IMAGE' or $stock_tpl == 'ALBUM') {
@ -1004,17 +1002,7 @@ function getPixel($type)
function showQueuePixel()
{
if (!defined('G_APP_GITHUB_REPO')) {
return;
}
if (version_compare(CHV\getSetting('chevereto_version_installed'), '3.5.5', '<')) {
return;
}
if (CHV\DB::queryFetchSingle('SELECT EXISTS(SELECT 1 FROM ' . CHV\DB::getTable('queues') . ' WHERE queue_status = "pending") as has')['has'] == 0) {
return;
}
echo getPixel('queue');
return;
}
function show_queue_img()

View File

@ -1,191 +1,190 @@
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
Copyright (C) 2013 Rodolfo Berrios A. All rights reserved.
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
}
/**
* SYSTEM INTEGRITY CHECK
* Welcome to the jungle of non-standard PHP setups
* ----------------------------------------------------------------------------------------------------------------------------------------
*/
function check_system_integrity()
{
$settings = Settings::get();
/*** Check server requirements ***/
// Try to fix session crap setups (OVH)
@ini_set('session.gc_divisor', 100);
@ini_set('session.gc_probability', true);
@ini_set('session.use_trans_sid', false);
@ini_set('session.use_only_cookies', true);
@ini_set('session.hash_bits_per_character', 4);
$missing_tpl = '%n (<a href="http://php.net/manual/en/%t.%u.php" target="_blank">%f</a>) %t is disabled in this server. This %t must be enabled in your PHP configuration (php.ini) and/or you must add this missing %t.';
if (version_compare(PHP_VERSION, '5.6.0', '<')) {
$install_errors[] = 'This server is currently running PHP version '.PHP_VERSION.' and Chevereto needs at least PHP 5.6.0 to run. You need to update PHP in this server.';
}
if (ini_get('allow_url_fopen') !== 1 && !function_exists('curl_init')) {
$install_errors[] = "cURL isn't installed and allow_url_fopen is disabled. Chevereto needs one of these to perform HTTP requests to remote servers.";
}
if (preg_match('/apache/i', $_SERVER['SERVER_SOFTWARE']) && function_exists('apache_get_modules') && !in_array('mod_rewrite', apache_get_modules())) {
$install_errors[] = 'Apache <a href="http://httpd.apache.org/docs/2.1/rewrite/rewrite_intro.html" target="_blank">mod_rewrite</a> is not enabled in this server. This must be enabled to run Chevereto.';
}
if (!extension_loaded('gd') && !function_exists('gd_info')) {
$install_errors[] = '<a href="http://www.libgd.org" target="_blank">GD Library</a> is not enabled in this server. GD is needed to perform image handling.';
} else {
$imagetype_fail = 'image support is not enabled in your current PHP setup (GD Library).';
if (!imagetypes() & IMG_PNG) {
$install_errors[] = 'PNG ' . $imagetype_fail;
}
if (!imagetypes() & IMG_GIF) {
$install_errors[] = 'GIF ' . $imagetype_fail;
}
if (!imagetypes() & IMG_JPG) {
$install_errors[] = 'JPG ' . $imagetype_fail;
}
if (!imagetypes() & IMG_WBMP) {
$install_errors[] = 'BMP ' . $imagetype_fail;
}
}
foreach ([
'pdo' => [
'%label'=> 'PDO',
'%name' => 'PHP Data Objects',
'%slug' => 'book.pdo',
'%desc' => 'PDO is needed to perform database operations'
],
'pdo_mysql' => [
'%label'=> 'PDO_MYSQL',
'%name' => 'PDO MySQL Functions',
'%slug' => 'ref.pdo-mysql',
'%desc' => 'PDO_MYSQL is needed to work with a MySQL database',
],
'mbstring' => [
'%label'=> 'mbstring',
'%name' => 'Multibyte string',
'%slug' => 'book.mbstring',
'%desc' => 'Mbstring is needed to handle multibyte strings',
]
] as $k => $v) {
if (!extension_loaded($k)) {
$install_errors[] = strtr('%name (<a href="http://www.php.net/manual/%slug.php">%label</a>) is not loaded in this server. %desc.', $v);
}
}
// Check those bundled classes
$disabled_classes = explode(',', preg_replace('/\s+/', '', @ini_get('disable_classes')));
if (!empty($disabled_classes)) {
foreach (['DirectoryIterator', 'RegexIterator', 'Pdo', 'Exception'] as $k) {
if (in_array($k, $disabled_classes)) {
$install_errors[] = strtr(str_replace('%t', 'class', $missing_tpl), ['%n' => $k, '%f' => $k, '%u' => str_replace('_', '-', strtolower($k))]);
}
}
}
// Check those missing functions
foreach ([
'utf8_encode' => 'UTF-8 encode',
'utf8_decode' => 'UTF-8 decode'
] as $k => $v) {
if (!function_exists($k)) {
$install_errors[] = strtr(str_replace('%t', 'function', $missing_tpl), ['%n' => $v, '%f' => $k, '%u' => str_replace('_', '-', $k)]);
}
}
/*** Folders check ***/
$writing_paths = [CHV_PATH_IMAGES, CHV_PATH_CONTENT, CHV_APP_PATH_CONTENT, CHV_APP_PATH_CONTENT_LOCKS, CHV_APP_PATH_INSTALL . 'update/temp/'];
foreach ($writing_paths as $v) {
if (!file_exists($v)) { // Exists?
if (!@mkdir($v)) {
$install_errors[] = "<code>".G\absolute_to_relative($v)."</code> doesn't exists. Make sure to upload it.";
}
} else { // Can write?
if (!is_writable($v)) {
$testFile = sprintf('%s/%s.tmp', $v, uniqid('data_write_test_'));
$handle = @fopen($testFile, 'w');
if (!$handle || fwrite($handle, 'Test write operation') === false) {
$install_errors[] = 'No write permission for PHP user '.get_current_user().' in <code>'.G\absolute_to_relative($v).'</code> directory. Chevereto needs to be able to write in this directory.';
} else {
fclose($handle);
unlink($testFile);
}
}
}
}
/*** System template file check ***/
$system_template = CHV_APP_PATH_CONTENT_SYSTEM . 'template.php';
if (!file_exists($system_template)) {
$install_errors[] = "<code>".G\absolute_to_relative($system_template)."</code> doesn't exists. Make sure to upload this.";
}
/*** License file ***/
$license_file = G_APP_PATH . 'license/check.php';
if (!file_exists($license_file)) {
$install_errors[] = "Can't find <code>".G\absolute_to_relative($license_file)."</code> file. Make sure to upload the <code>app/license</code> folder.";
} else {
require_once($license_file);
}
/*** .htaccess checks (only for Apache) ***/
if (G\is_apache()) {
// Check for the root .htaccess file
if (!file_exists(G_ROOT_PATH . '.htaccess')) {
$install_errors[] = "Can't find root <code>.htaccess</code> file. Re-upload this file and take note that in some computers this file could be hidden in your local folder.";
}
// Check for the other .htaccess files
$htaccess_files = array(CHV_PATH_IMAGES, G_APP_PATH);
foreach ($htaccess_files as $dir) {
if (file_exists($dir . '.htaccess')) {
continue;
}
switch ($dir) {
case CHV_PATH_IMAGES:
$rules = 'static';
break;
case G_APP_PATH:
$rules = 'deny_php';
break;
}
$htaccess_file = G\generate_htaccess($rules, $dir, null, true);
if (!$htaccess_file and $dir == G_APP_PATH) {
$install_errors[] = "Can't create " . G\absolute_to_relative($dir) . '.htaccess file. The file must be uploaded manually to this path.<br>
Alternatively you can create the file yourself with this contents:<br><br>
<pre><code>'.htmlspecialchars($htaccess_file).'</code></pre>';
}
}
}
if (is_array($install_errors) && count($install_errors) > 0) {
if (access === 'cli') {
G\debug($install_errors);
die(255);
}
Render\chevereto_die($install_errors);
}
}
<?php
/* --------------------------------------------------------------------
This file is part of Chevereto Free.
https://chevereto.com/free
(c) Rodolfo Berrios <rodolfo@chevereto.com>
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
--------------------------------------------------------------------- */
namespace CHV;
use G;
if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
}
/**
* SYSTEM INTEGRITY CHECK
* Welcome to the jungle of non-standard PHP setups
* ----------------------------------------------------------------------------------------------------------------------------------------
*/
function check_system_integrity()
{
$settings = Settings::get();
/*** Check server requirements ***/
// Try to fix session crap setups (OVH)
@ini_set('session.gc_divisor', 100);
@ini_set('session.gc_probability', true);
@ini_set('session.use_trans_sid', false);
@ini_set('session.use_only_cookies', true);
@ini_set('session.hash_bits_per_character', 4);
$missing_tpl = '%n (<a href="http://php.net/manual/en/%t.%u.php" target="_blank">%f</a>) %t is disabled in this server. This %t must be enabled in your PHP configuration (php.ini) and/or you must add this missing %t.';
if (version_compare(PHP_VERSION, '5.6.0', '<')) {
$install_errors[] = 'This server is currently running PHP version '.PHP_VERSION.' and Chevereto needs at least PHP 5.6.0 to run. You need to update PHP in this server.';
}
if (ini_get('allow_url_fopen') !== 1 && !function_exists('curl_init')) {
$install_errors[] = "cURL isn't installed and allow_url_fopen is disabled. Chevereto needs one of these to perform HTTP requests to remote servers.";
}
if (preg_match('/apache/i', $_SERVER['SERVER_SOFTWARE']) && function_exists('apache_get_modules') && !in_array('mod_rewrite', apache_get_modules())) {
$install_errors[] = 'Apache <a href="http://httpd.apache.org/docs/2.1/rewrite/rewrite_intro.html" target="_blank">mod_rewrite</a> is not enabled in this server. This must be enabled to run Chevereto.';
}
if (!extension_loaded('gd') && !function_exists('gd_info')) {
$install_errors[] = '<a href="http://www.libgd.org" target="_blank">GD Library</a> is not enabled in this server. GD is needed to perform image handling.';
} else {
$imagetype_fail = 'image support is not enabled in your current PHP setup (GD Library).';
if (!imagetypes() & IMG_PNG) {
$install_errors[] = 'PNG ' . $imagetype_fail;
}
if (!imagetypes() & IMG_GIF) {
$install_errors[] = 'GIF ' . $imagetype_fail;
}
if (!imagetypes() & IMG_JPG) {
$install_errors[] = 'JPG ' . $imagetype_fail;
}
if (!imagetypes() & IMG_WBMP) {
$install_errors[] = 'BMP ' . $imagetype_fail;
}
}
foreach ([
'pdo' => [
'%label'=> 'PDO',
'%name' => 'PHP Data Objects',
'%slug' => 'book.pdo',
'%desc' => 'PDO is needed to perform database operations'
],
'pdo_mysql' => [
'%label'=> 'PDO_MYSQL',
'%name' => 'PDO MySQL Functions',
'%slug' => 'ref.pdo-mysql',
'%desc' => 'PDO_MYSQL is needed to work with a MySQL database',
],
'mbstring' => [
'%label'=> 'mbstring',
'%name' => 'Multibyte string',
'%slug' => 'book.mbstring',
'%desc' => 'Mbstring is needed to handle multibyte strings',
]
] as $k => $v) {
if (!extension_loaded($k)) {
$install_errors[] = strtr('%name (<a href="http://www.php.net/manual/%slug.php">%label</a>) is not loaded in this server. %desc.', $v);
}
}
// Check those bundled classes
$disabled_classes = explode(',', preg_replace('/\s+/', '', @ini_get('disable_classes')));
if (!empty($disabled_classes)) {
foreach (['DirectoryIterator', 'RegexIterator', 'Pdo', 'Exception'] as $k) {
if (in_array($k, $disabled_classes)) {
$install_errors[] = strtr(str_replace('%t', 'class', $missing_tpl), ['%n' => $k, '%f' => $k, '%u' => str_replace('_', '-', strtolower($k))]);
}
}
}
// Check those missing functions
foreach ([
'utf8_encode' => 'UTF-8 encode',
'utf8_decode' => 'UTF-8 decode'
] as $k => $v) {
if (!function_exists($k)) {
$install_errors[] = strtr(str_replace('%t', 'function', $missing_tpl), ['%n' => $v, '%f' => $k, '%u' => str_replace('_', '-', $k)]);
}
}
/*** Folders check ***/
$writing_paths = [CHV_PATH_IMAGES, CHV_PATH_CONTENT, CHV_APP_PATH_CONTENT, CHV_APP_PATH_INSTALL . 'update/temp/'];
foreach ($writing_paths as $v) {
if (!file_exists($v)) { // Exists?
if (!@mkdir($v)) {
$install_errors[] = "<code>".G\absolute_to_relative($v)."</code> doesn't exists. Make sure to upload it.";
}
} else { // Can write?
if (!is_writable($v)) {
$testFile = sprintf('%s/%s.tmp', $v, uniqid('data_write_test_'));
$handle = @fopen($testFile, 'w');
if (!$handle || fwrite($handle, 'Test write operation') === false) {
$install_errors[] = 'No write permission for PHP user '.get_current_user().' in <code>'.G\absolute_to_relative($v).'</code> directory. Chevereto needs to be able to write in this directory.';
} else {
fclose($handle);
unlink($testFile);
}
}
}
}
/*** System template file check ***/
$system_template = CHV_APP_PATH_CONTENT_SYSTEM . 'template.php';
if (!file_exists($system_template)) {
$install_errors[] = "<code>".G\absolute_to_relative($system_template)."</code> doesn't exists. Make sure to upload this.";
}
/*** License file ***/
$license_file = G_APP_PATH . 'license/check.php';
if (!file_exists($license_file)) {
$install_errors[] = "Can't find <code>".G\absolute_to_relative($license_file)."</code> file. Make sure to upload the <code>app/license</code> folder.";
} else {
require_once($license_file);
}
/*** .htaccess checks (only for Apache) ***/
if (G\is_apache()) {
// Check for the root .htaccess file
if (!file_exists(G_ROOT_PATH . '.htaccess')) {
$install_errors[] = "Can't find root <code>.htaccess</code> file. Re-upload this file and take note that in some computers this file could be hidden in your local folder.";
}
// Check for the other .htaccess files
$htaccess_files = array(CHV_PATH_IMAGES, G_APP_PATH);
foreach ($htaccess_files as $dir) {
if (file_exists($dir . '.htaccess')) {
continue;
}
switch ($dir) {
case CHV_PATH_IMAGES:
$rules = 'static';
break;
case G_APP_PATH:
$rules = 'deny_php';
break;
}
$htaccess_file = G\generate_htaccess($rules, $dir, null, true);
if (!$htaccess_file and $dir == G_APP_PATH) {
$install_errors[] = "Can't create " . G\absolute_to_relative($dir) . '.htaccess file. The file must be uploaded manually to this path.<br>
Alternatively you can create the file yourself with this contents:<br><br>
<pre><code>'.htmlspecialchars($htaccess_file).'</code></pre>';
}
}
}
if (is_array($install_errors) && count($install_errors) > 0) {
if (access === 'cli') {
G\debug($install_errors);
die(255);
}
Render\chevereto_die($install_errors);
}
}

View File

@ -27,7 +27,7 @@ $route = function ($handler) {
// User status override redirect
CHV\User::statusRedirect($logged_user['status']);
$id = CHV\getIdFromURL($handler->request[0]);
$id = CHV\getIdFromURLComponent($handler->request[0]);
// Session stock viewed albums
if (!$_SESSION['album_view_stock']) {
@ -203,7 +203,7 @@ $route = function ($handler) {
$handler::setCond('owner', $is_owner);
$handler::setVars([
'pre_doctitle' => G\safe_html($album['name'], ENT_NOQUOTES),
'pre_doctitle' => strip_tags($album['name']),
'album' => $album,
'album_safe_html' => $safe_html_album,
'tabs' => $tabs,

View File

@ -105,7 +105,11 @@ $route = function ($handler) {
$uploaded_id = CHV\Image::uploadToWebsite($source);
$json_array['status_code'] = 200;
$json_array['success'] = array('message' => 'image uploaded', 'code' => 200);
$json_array['image'] = CHV\Image::formatArray(CHV\Image::getSingle($uploaded_id, false, false), true);
$image = CHV\Image::formatArray(CHV\Image::getSingle($uploaded_id, false, false), true);
if (!$image['is_approved']) {
unset($image['image']['url'], $image['thumb']['url'], $image['medium']['url'], $image['url'], $image['display_url']);
}
$json_array['image'] = $image;
if ($version == 1) {
switch ($_REQUEST['format']) {

View File

@ -73,10 +73,10 @@ $route = function ($handler) {
);
}
$route_menu['upgrade'] = [
'label' => ' Upgrade',
'label' => '🚀 Upgrade',
'id' => 'upgrade'
];
$handler::setVar('documentationBaseUrl', 'https://v3-docs.chevereto.com/');
$handler::setVar($route_prefix . '_menu', $route_menu);
$handler::setVar('tabs', $route_menu);
@ -132,7 +132,7 @@ $route = function ($handler) {
],
'php_version' => [
'label' => _s('PHP version'),
'content' => PHP_VERSION . ' 🐘 '. php_ini_loaded_file()
'content' => PHP_VERSION . ' 🐘 ' . php_ini_loaded_file()
],
'server' => [
'label' => _s('Server'),
@ -186,12 +186,11 @@ $route = function ($handler) {
$chevereto_urls = [
'Chevereto' => 'https://chevereto.com',
_s('Community') => 'https://chevereto.com/community/',
_s('Collaboration') => 'https://chevereto.com/community/collaboration/',
_s('Support') => 'https://chevereto.com/support',
_s('Documentation') => 'https://v3-docs.chevereto.com/',
_s('Changelog') => 'https://chevereto.com/changelog',
_s('Documentation') => 'https://v3-docs.chevereto.com',
_s('Changelog') => 'https://chevereto.com/releases',
_s('Bug tracking') => 'https://chevereto.com/bug-tracking',
'GitHub' => 'https://github.com/chevereto',
'GitHub' => 'https://github.com/Chevereto',
];
$chevereto_links = [];
foreach ($chevereto_urls as $k => $v) {
@ -242,6 +241,8 @@ $route = function ($handler) {
'tools' => _s('Tools'),
];
foreach ($settings_sections as $k => $v) {
$current = $handler->request[1] ? ($handler->request[1] == $k) : ($k == 'website');
$settings_sections[$k] = [
@ -582,7 +583,7 @@ $route = function ($handler) {
],
'homepage_style' =>
[
'validate' => in_array($_POST['homepage_style'], ['landing', 'split', 'route_explore']),
'validate' => in_array($_POST['homepage_style'], ['landing', 'split', 'route_explore', 'route_upload']),
'error_msg' => _s('Invalid homepage style')
],
'homepage_cta_color' =>
@ -848,6 +849,22 @@ $route = function ($handler) {
}
}
if ($_POST['moderatecontent'] == 1) {
$moderateContentKey = CHV\getSetting('moderatecontent_key');
if ($_POST['moderatecontent_key']) {
$moderateContentKey = $_POST['moderatecontent_key'];
}
$sample = 'http://www.moderatecontent.com/img/sample_face_2.jpg';
$json = G\fetch_url('https://api.moderatecontent.com/moderate/?key='.$moderateContentKey.'&url=' . $sample);
$data = json_decode($json);
if (isset($data->error)) {
$validations['moderatecontent_key'] = [
'validate' => false,
'error_msg' => $data->error
];
}
}
// Validate SMTP credentials
if ($_POST['email_mode'] == 'smtp') {
$email_smtp_validate = [

View File

@ -26,7 +26,7 @@ $route = function ($handler) {
// User status override redirect
CHV\User::statusRedirect($logged_user['status']);
$id = CHV\getIdFromURL($handler->request[0]);
$id = CHV\getIdFromURLComponent($handler->request[0]);
if ($id == false) {
return $handler->issue404();
@ -42,6 +42,12 @@ $route = function ($handler) {
// Get image DB
$image = CHV\Image::getSingle($id, !in_array($id, $_SESSION['image_view_stock']), true, $logged_user);
if (!$image['is_approved'] && !($logged_user['is_manager'] || $logged_user['is_admin'])) {
G\set_status_header(403);
$handler->template = 'request-denied';
return;
}
if ($image && $image['url_viewer'] != G\get_current_url()) {
G\redirect($image['url_viewer']);
}
@ -127,10 +133,8 @@ $route = function ($handler) {
}
$image_safe_html = G\safe_html($image);
$image['alt'] = $image_safe_html['description'] ?: ($image_safe_html['title'] ?: $image_safe_html['name']);
$pre_doctitle = G\safe_html($image['title'], ENT_NOQUOTES) ?: ($image_safe_html['name'] . '.' . $image['extension']) . ' hosted at ' . CHV\getSetting('website_name');
$pre_doctitle = strip_tags($image['title']) ?: ($image_safe_html['name'] . '.' . $image['extension']) . ' hosted at ' . CHV\getSetting('website_name');
$tabs = [
[

View File

@ -13,28 +13,28 @@
--------------------------------------------------------------------- */
$route = function ($handler) {
try {
if (!CHV\Login::isAdmin()) {
$this->template = 'request-denied';
return;
try {
if (!CHV\Login::isAdmin()) {
$this->template = 'request-denied';
return;
}
// Allow 3 levels only -> /importer-jobs/X/process
if ($handler->isRequestLevel(4)) {
return $handler->issue404();
}
if (is_null($handler->request[0]) || is_null($handler->request[1])) {
return $handler->issue404();
}
$filepath = G_ROOT_PATH . sprintf('app/importer/jobs/%1$s/%2$s.txt', $handler->request[0], $handler->request[1]);
if (!file_exists($filepath)) {
return $handler->issue404();
}
if (!headers_sent()) {
header('Content-Type: text/plain');
}
readfile($filepath);
exit;
} catch (Exception $e) {
G\exception_to_error($e);
}
// Allow 3 levels only -> /importer-jobs/X/process
if ($handler->isRequestLevel(4)) {
return $handler->issue404();
}
if (is_null($handler->request[0]) || is_null($handler->request[1])) {
return $handler->issue404();
}
$filepath = G_ROOT_PATH . sprintf('app/importer/jobs/%1$s/%2$s.txt', $handler->request[0], $handler->request[1]);
if (!file_exists($filepath)) {
return $handler->issue404();
}
if (!headers_sent()) {
header('Content-Type: text/plain');
}
readfile($filepath);
exit;
} catch (Exception $e) {
G\exception_to_error($e);
}
};

View File

@ -12,14 +12,17 @@
--------------------------------------------------------------------- */
use function G\str_replace_first;
$route = function ($handler) {
try {
// Parse the current query string
parse_str($_SERVER['QUERY_STRING'], $querystr);
if (!in_array(key($querystr), ['random']) and CHV\Settings::get('homepage_style') == 'route_explore') {
$handler->mapRoute('explore');
include G_APP_PATH_ROUTES . 'route.explore.php';
if (!in_array(key($querystr), ['random']) and G\starts_with('route_', CHV\Settings::get('homepage_style'))) {
$route = str_replace_first('route_', '', CHV\Settings::get('homepage_style'));
$handler->mapRoute($route);
include G_APP_PATH_ROUTES . 'route.'.$route.'.php';
return $route($handler);
}

View File

@ -91,7 +91,13 @@ $route = function ($handler) {
$uploaded_id = CHV\Image::uploadToWebsite($source, $logged_user, $_REQUEST);
$json_array['status_code'] = 200;
$json_array['success'] = array('message' => 'image uploaded', 'code' => 200);
$json_array['image'] = CHV\Image::formatArray(CHV\Image::getSingle($uploaded_id, 0, 0), 1);
$image = CHV\Image::getSingle($uploaded_id, 0, 0);
$image = CHV\Image::formatArray($image, true);
if (!$image['is_approved']) {
unset($image['image']['url'], $image['thumb']['url'], $image['medium']['url'], $image['url'], $image['display_url']);
}
$json_array['image'] = $image;
break;
case 'get-album-contents':
@ -253,6 +259,13 @@ $route = function ($handler) {
}
$list = new CHV\Listing();
if (array_key_exists('approved', $_REQUEST)) {
if ($logged_user['is_admin'] || $logged_user['is_manager']) {
$list->setApproved((int) $_REQUEST['approved']);
} else {
throw new Exception(_s('Request denied'), 403);
}
}
$list->setType($list_request); // images | users | albums
$list->setReverse($list_params['reverse']);
$list->setSeek($list_params['seek']);
@ -390,10 +403,16 @@ $route = function ($handler) {
case 'image':
$source_image_db = CHV\Image::getSingle($id, false, false);
if (!$source_image_db) {
throw new Exception("Image doesn't exists", 100);
}
if (
$editing['nsfw'] != $source_image_db['image_nsfw']
&& CHV\getSetting('image_lock_nsfw_editing')
&& !($logged_user['is_admin'] || $logged_user['is_manager'])
) {
throw new Exception('Invalid request', 403);
}
if (!$handler::getCond('content_manager') && $source_image_db['image_user_id'] !== $logged_user['id']) {
throw new Exception('Invalid content owner request', 101);
@ -448,7 +467,6 @@ $route = function ($handler) {
// Append the HTML slice
if ($image_album_slice) {
// Add the album URL to the slice
$image_album_slice['url'] = CHV\Album::getUrl(CHV\encodeID($album_id));
@ -836,6 +854,11 @@ $route = function ($handler) {
switch ($doing) {
case 'flag-safe':
case 'flag-unsafe':
if (CHV\getSetting('image_lock_nsfw_editing')
&& !($logged_user['is_admin'] || $logged_user['is_manager'])
) {
throw new Exception('Invalid request', 403);
}
$query_field = 'nsfw';
$prop = $editing['nsfw'] == 1 ? 1 : 0;
$msg = 'Content flag changed';
@ -1355,6 +1378,28 @@ $route = function ($handler) {
$logged_user = CHV\User::getSingle($logged_user['id']);
$json_array['is_dark_mode'] = (bool) $logged_user['is_dark_mode'];
break;
case 'approve':
if (!($logged_user['is_admin'] || $logged_user['is_manager'])) {
throw new Exception('Invalid request', 403);
}
$approve_ids = [];
$approving = $_REQUEST['approving'];
if ($_REQUEST['multiple'] == 'true') {
$approve_ids = $approving['ids'];
} else {
$approve_ids = [$approving['id']];
}
if ($approve_ids == []) {
throw new Exception('Missing approve target ids', 100);
}
$ids = [];
foreach ($approve_ids as $value) {
$ids[] = CHV\decodeID($value);
}
$affected = CHV\DB::queryExec(sprintf('UPDATE '.CHV\DB::getTable('images').' SET image_is_approved = 1 WHERE image_id IN (%s)', implode(',', $ids)));
$json_array['status_code'] = 200;
$json_array['affected'] = $affected;
break;
default: // EX X
throw new Exception(!G\check_value($doing) ? 'empty action' : 'invalid action', !G\check_value($doing) ? 0 : 1);
break;
@ -1410,7 +1455,6 @@ $route = function ($handler) {
$json_array['request'] = $_REQUEST;
G\Render\json_output($json_array);
} catch (Exception $e) {
// G\debug($e);
$json_array = G\json_error($e);
$json_array['request'] = $_REQUEST;
G\Render\json_output($json_array);

View File

@ -0,0 +1,68 @@
<?php
/* --------------------------------------------------------------------
Chevereto
http://chevereto.com/
@author Rodolfo Berrios A. <http://rodolfoberrios.com/>
<inbox@rodolfoberrios.com>
Copyright (C) Rodolfo Berrios A. All rights reserved.
BY USING THIS SOFTWARE YOU DECLARE TO ACCEPT THE CHEVERETO EULA
http://chevereto.com/license
--------------------------------------------------------------------- */
$route = function ($handler) {
try {
$logged_user = CHV\Login::getUser();
if (!$logged_user['is_content_manager']) {
return $handler->issue404();
}
$listing = ['label' => _s('Moderate'), 'icon' => 'icon-download2'];
$listing['list'] = G\get_route_name();
$listingParams = [
'listing' => $listing['list'],
'basename' => G\get_route_name(),
'params_hidden' => [
'approved' => 0,
'hide_empty' => 0,
'hide_banned' => 0,
'album_min_image_count' => 0,
],
'exclude_criterias' => ['most-viewed', 'most-liked']
];
$tabs = CHV\Listing::getTabs($listingParams, true);
$currentKey = $tabs['currentKey'];
$type = $tabs['tabs'][$currentKey]['type'];
$tabs = $tabs['tabs'];
parse_str($tabs[$currentKey]['params'], $tabs_params);
$list_params = CHV\Listing::getParams(); // Use CHV magic params
$list_params['sort'] = explode('_', $tabs_params['sort']); // Hack this stuff
$handler::setVar('list_params', $list_params);
// List
$list = new CHV\Listing;
$list->setApproved(0);
$list->setType($type);
$list->setReverse($list_params['reverse']);
$list->setSeek($list_params['seek']);
$list->setOffset($list_params['offset']);
$list->setLimit($list_params['limit']); // how many results?
$list->setItemsPerPage($list_params['items_per_page']); // must
$list->setSortType($list_params['sort'][0]); // date | size | views | likes
$list->setSortOrder($list_params['sort'][1]); // asc | desc
$list->setRequester(CHV\Login::getUser());
$list->setParamsHidden($listingParams['params_hidden']);
$list->exec();
$handler::setVar('listing', $listing);
$handler::setVar('pre_doctitle', _s('Moderate'));
$handler::setVar('category', null);
$handler::setVar('tabs', $tabs);
$handler::setVar('list', $list);
} catch (Exception $e) {
G\exception_to_error($e);
}
};

108
app/routes/route.oembed.php Normal file
View File

@ -0,0 +1,108 @@
<?php
/* --------------------------------------------------------------------
Chevereto
http://chevereto.com/
@author Rodolfo Berrios A. <http://rodolfoberrios.com/>
<inbox@rodolfoberrios.com>
Copyright (C) Rodolfo Berrios A. All rights reserved.
BY USING THIS SOFTWARE YOU DECLARE TO ACCEPT THE CHEVERETO EULA
http://chevereto.com/license
--------------------------------------------------------------------- */
$route = function ($handler) {
try {
if ($handler->isRequestLevel(2)) {
return $handler->issue404();
}
$viewer = CHV\Image::getUrlViewer('%id');
$viewer = str_replace('/', '\/', $viewer);
$regex = G\str_replace_last('%id', '(.*)', $viewer);
$regex = G\str_replace_first('https:', 'https?:', $regex);
$regex = G\str_replace_first('http:', 'https?:', $regex);
if (!preg_match('#^' . $regex . '$#', $_GET['url'], $matches)) {
G\set_status_header(403);
die();
}
$id = CHV\getIdFromURLComponent($matches[1]);
if ($id == false) {
G\set_status_header(404);
die();
}
$image = CHV\Image::getSingle($id, false, true, null);
if (!$image) {
G\set_status_header(404);
die();
}
if (!$image['is_approved']) {
G\set_status_header(403);
die();
}
if (in_array($image['album']['privacy'], array('password', 'private', 'custom'))) {
G\set_status_header(401);
die();
}
if ($image['user']['is_private']) {
unset($image['user']);
$image['user'] = CHV\User::getPrivate();
}
$data = [
'version' => '1.0',
'type' => 'photo',
'provider_name' => CHV\Settings::get('website_name'),
'provider_url' => G\get_base_url(),
'title' => $image['title'],
'url' => $image['url_viewer'],
'width' => $image['width'],
'height' => $image['height'],
];
if ($image['user']) {
$data = array_merge($data, [
'author_name' => $image['user']['username'],
'author_url' => $image['user']['url'],
]);
}
$thumb = 'display_url';
$maxWidth = isset($_GET['maxwidth']) ? intval($_GET['maxwidth']) : $image['width'];
$maxHeight = isset($_GET['maxHeight']) ? intval($_GET['maxHeight']) : $image['height'];
if ($image['display_width'] > $maxWidth || $image['display_height'] > $maxHeight) {
$thumb = null;
if (CHV\getSetting('upload_thumb_width') <= $maxWidth && CHV\getSetting('upload_thumb_height') <= $maxHeight) {
$thumb = 'thumb';
}
}
if ($thumb !== null) {
if ($thumb == 'thumb') {
$display_url = $image['thumb']['url'];
$display_width = CHV\getSetting('upload_thumb_width');
$display_height = CHV\getSetting('upload_thumb_height');
} else {
$display_url = $image['display_url'];
$display_width = $image['display_width'];
$display_height = $image['display_height'];
}
$data = array_merge($data, [
'thumbnail_url' => $display_url,
'thumbnail_width' => $display_width,
'thumbnail_height' => $display_height,
]);
}
switch ($_GET['format']) {
case 'xml':
G\Render\xml_output(['oembed' => $data]);
break;
case 'json':
default:
G\Render\json_output($data);
break;
}
} catch (Exception $e) {
G\exception_to_error($e);
}
};

View File

@ -13,31 +13,36 @@
--------------------------------------------------------------------- */
$route = function ($handler) {
try {
if (!$handler::getCond('upload_allowed')) {
if (CHV\Login::getUser()) {
G\set_status_header(403);
$handler->template = 'request-denied';
return;
} else {
G\redirect('login');
}
}
$logged_user = CHV\Login::getUser();
// User status override redirect
CHV\User::statusRedirect($logged_user['status']);
$album = null;
if ($_GET['toAlbum']) {
$toAlbumId = CHV\decodeID($_GET['toAlbum']);
$album = CHV\Album::getSingle($toAlbumId, false, true, $logged_user);
$is_owner = $album['user']['id'] && $album['user']['id'] == $logged_user['id'];
if (!$is_owner) {
$album = null;
}
}
$handler::setVar('album', $album);
$handler::setVar('pre_doctitle', _s('Upload'));
} catch (Exception $e) {
G\exception_to_error($e);
}
try {
if (!$handler::getCond('upload_allowed')) {
if (CHV\Login::getUser()) {
G\set_status_header(403);
$handler->template = 'request-denied';
return;
} else {
G\redirect('login');
}
}
$logged_user = CHV\Login::getUser();
// User status override redirect
CHV\User::statusRedirect($logged_user['status']);
$album = null;
if ($_GET['toAlbum']) {
$toAlbumId = CHV\decodeID($_GET['toAlbum']);
$album = CHV\Album::getSingle($toAlbumId, false, true, $logged_user);
$is_owner = $album['user']['id'] && $album['user']['id'] == $logged_user['id'];
if (!$is_owner) {
$album = null;
}
}
$handler::setVar('album', $album);
if (CHV\getSetting('homepage_style') == 'route_upload' && $handler->request_array[0] !== 'upload') {
$handler::setVar('doctitle', CHV\Settings::get('website_doctitle'));
$handler::setVar('pre_doctitle', CHV\Settings::get('website_name'));
} else {
$handler::setVar('pre_doctitle', _s('Upload'));
}
} catch (Exception $e) {
G\exception_to_error($e);
}
};

View File

@ -175,11 +175,9 @@ $route = function ($handler) {
case 'liked':
$type = "images";
$tools = $is_owner || $handler::getCond('content_manager');
$current = false;
if ($current_view == 'liked') {
$tools_available = $handler::getCond('content_manager') ? ['delete', 'category', 'flag'] : ['embed'];
}
break;
case 'following':
@ -286,7 +284,6 @@ $route = function ($handler) {
if ($type == 'albums') {
$show_user_items_editor = false;
}
try {
$list = new CHV\Listing;
$list->setType($type); // images | users | albums

View File

@ -1 +1 @@
Check the custom hooks documentation here: https://chevereto.com/docs/theme
Check the custom hooks documentation here: https://v3-docs.chevereto.com/customization/theme.html#custom-hooks

View File

@ -52,9 +52,8 @@ if (CHV\Login::isAdmin()) {
</script>
<div data-modal="form-upgrade" class="hidden" data-is-xhr data-submit-fn="CHV.fn.submit_upgradeToPaid" data-ajax-deferred="CHV.fn.complete_upgradeToPaid">
<span class="modal-box-title">Upgrade Chevereto</span>
<div class="text-align-center margin-top-30 margin-bottom-30" style="font-size: 90px;">⭐⭐⭐</div>
<p>Upgrading to paid Chevereto allows you to get more <a href="https://chevereto.com/features" target="_blank">features</a> like multiple external storage servers, manage banners, content likes, user followers, social login signup, etc. Support included.</p>
<span class="modal-box-title">🚀 Upgrade Chevereto</span>
<p>Upgrading to paid Chevereto enables more <a href="https://chevereto.com/features" target="_blank">features</a> like multiple external storage servers, manage banners, content likes, user followers, social login signup, and early access to all new stuff. Tech Support is included, of course.</p>
<p>Keep in mind that Chevereto is made <b>by a single developer</b>, your purchase helps to sustain ongoing development of this software.</p>
<p>You can upgrade now by pasting your <a href="https://chevereto.com/panel/license" target="_blank">license key</a>. If you don't have one you can <a href="https://chevereto.com/pricing" target="_blank">buy it now</a> with PayPal, AliPay, UnionPay and crypto.</p>
<div class="btn-container text-align-center"><button class="btn btn-input green" data-action="submit" type="submit">Upgrade now</button> <span class="btn-alt"><?php _se('or'); ?><a class="cancel" data-action="cancel">maybe later</a></span></div>

View File

@ -143,8 +143,12 @@
}
if (function_exists('get_image') and G\is_route('image')) {
?>
<link rel="image_src" href="<?php echo get_image()['url']; ?>">
foreach (['json', 'xml'] as $format) {
echo ' <link rel="alternate" type="application/'.$format.'+oembed" href="'
. G\get_base_url('oembed/?url='.urlencode(get_image()['url_viewer']).'&format='. $format)
. '" title="'.get_image()['title'].'">' . "\n";
} ?>
<link rel="image_src" href="<?php echo get_image()['url']; ?>">
<?php
}

View File

@ -120,6 +120,13 @@ if (is_maintenance() || is_show_consent_screen() || in_array($templateUsed, ['re
</li>
<?php
} ?>
<?php if (is_content_manager()) { ?>
<li id="top-bar-moderate" data-nav="moderate" class="top-btn-el<?php if (in_array(G\get_route_name(), ['moderate'])) {
?> current<?php
} ?>"">
<a href="<?php echo G\get_base_url('moderate'); ?>"><span class="top-btn-text"><span class="icon icon-download2"></span><span class="btn-text phone-hide phablet-hide"><?php _se('Moderate'); ?></span></span></a>
</li>
<?php } ?>
<?php if (is_search_enabled()) {
?>
@ -280,7 +287,7 @@ if (is_maintenance() || is_show_consent_screen() || in_array($templateUsed, ['re
<li><a href="<?php echo G\get_base_url(sprintf('logout/?auth_token=%s', get_auth_token())); ?>"><?php _se('Sign out'); ?></a></li>
<?php if (is_admin()) { ?>
<div class="or-separator margin-0" style="height: 1px;"></div>
<li><a data-action="upgrade"> Upgrade</a></li>
<li><a data-action="upgrade">🚀 Upgrade</a></li>
<?php } ?>
</ul>
</div>

View File

@ -1 +1 @@
Check the theme overrides documentation here: https://chevereto.com/docs/theme
Check the theme overrides documentation here: https://v3-docs.chevereto.com/customization/theme.html#theme-overrides

View File

@ -190,17 +190,24 @@ if (CHV\Login::isLoggedUser()) {
?>
<div data-group="upload-result" data-result="success" class="c16 center-box soft-hidden">
<div class="input-label margin-bottom-0 copy-hover-display">
<?php
if (is_moderate_uploads()) {
?>
<div class="growl font-size-small static text-align-center margin-bottom-30 clear-both"><b><?php _se('Note'); ?>:</b> <?php _se('We must approve the uploaded content before being able to share.'); ?></div>
<?php
} ?>
<label for="uploaded-embed-toggle"><?php _se('Embed codes'); ?></label>
<div class="c7 margin-bottom-10">
<select name="uploaded-embed-toggle" id="uploaded-embed-toggle" class="text-input" data-combo="uploaded-embed-toggle-combo">
<?php
foreach (G\get_global('embed_tpl') as $key => $value) {
echo '<optgroup label="'.$value['label'].'">'."\n";
foreach ($value['options'] as $k => $v) {
echo ' <option value="'.$k.'" data-size="'.$v["size"].'">'.$v["label"].'</option>'."\n";
}
echo '</optgroup>';
} ?>
<?php
$tpl = is_moderate_uploads() ? 'embed_unapproved_tpl' : 'embed_tpl';
foreach (G\get_global($tpl) as $key => $value) {
echo '<optgroup label="'.$value['label'].'">'."\n";
foreach ($value['options'] as $k => $v) {
echo ' <option value="'.$k.'" data-size="'.$v["size"].'">'.$v["label"].'</option>'."\n";
}
echo '</optgroup>';
} ?>
</select>
</div>
<div id="uploaded-embed-toggle-combo">
@ -249,7 +256,7 @@ if (CHV\Login::isLoggedUser()) {
</li>
</div>
<div id="anywhere-upload-edit-item">
<span class="modal-box-title"><?php _se('Edit image'); ?></span>
<span class="modal-box-title"><?php _se('Edit'); ?></span>
<div class="modal-form">
<div class="image-preview"></div>
<div class="input-label">

View File

@ -1,9 +1,8 @@
<?php
if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
}
global $embed_tpl;
global $embed_tpl, $embed_unapproved_tpl;
$embed_tpl = [
'links' => [
'label' => _s('Links'),
@ -96,3 +95,15 @@ $embed_tpl = [
],
],
];
$embed_unapproved_tpl = [
'links' => [
'label' => _s('Links'),
'options' => [
'viewer-links' => [
'label' => _s('Viewer links'),
'template' => '%URL_SHORT%',
'size' => 'viewer',
],
],
],
];

View File

@ -72,7 +72,8 @@ if (is_captcha_show() && CHV\getSetting('recaptcha_version') == 3) {
upload: {
redirect_single_upload: <?php echo json_encode(CHV\getSetting('enable_redirect_single_upload')); ?>,
threads: <?php echo json_encode(CHV\getSetting('upload_threads')); ?>,
image_types: <?php echo json_encode(CHV\Image::getEnabledImageFormats()); ?>,
image_types: <?php echo json_encode(CHV\Image::getEnabledImageFormats()); ?>,
moderation: <?php echo json_encode(is_moderate_uploads()); ?>,
},
user: {
avatar_max_filesize: "<?php echo CHV\getSetting('user_image_avatar_max_filesize_mb') . ' MB'; ?>",
@ -131,7 +132,7 @@ if (is_captcha_show() && CHV\getSetting('recaptcha_version') == 3) {
id: "<?php echo $route["id_encoded"]; ?>",
type: "<?php echo G\get_route_name(); ?>",
url: "<?php echo(G\get_route_name() == "image" ? $route["url_viewer"] : $route["url"]); ?>",
parent_url: "<?php echo G\get_route_name() == "image" ? (get_image()['user']['is_private'] ? G\get_base_url() : get_image()['album']['url']) : (G\get_route_name() == 'dashboard' ? null : $route_user['url']) ?>"
parent_url: "<?php echo function_exists('get_image') ? (get_image()['user']['is_private'] ? G\get_base_url() : get_image()['album']['url']) : (G\get_route_name() == 'dashboard' ? null : $route_user['url']) ?>"
};
<?php

View File

@ -1,4 +1,6 @@
<?php if (!defined('access') or !access) {
<?php
if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
} ?>
@ -27,10 +29,13 @@
<?php
}
?>
<div class="checkbox-label"><span rel="template-tooltip" data-tiptip="right" data-title="<?php _se('Mark this if the image is not family safe'); ?>"><label for="form-nsfw"><input class="float-left" type="checkbox" name="form-nsfw" id="form-nsfw"<?php if (function_exists('get_image') and get_image()['nsfw']) {
<div class="checkbox-label"><span rel="template-tooltip" data-tiptip="right" data-title="<?php _se('Mark this if the image is not safe for work'); ?>"><label for="form-nsfw"><input class="float-left" type="checkbox" name="form-nsfw" id="form-nsfw"<?php if (function_exists('get_image') and get_image()['nsfw']) {
echo ' checked';
} ?>><?php _se('Flag as unsafe'); ?></label></span></div>
}
if (!is_allowed_nsfw_flagging()) {
echo ' disabled';
}
?>><span class="no-select"><?php _se('Flag not safe'); ?></span></label></span></div>
<div class="input-label">
<label for="form-image-description"><?php _se('Description'); ?> <span class="optional"><?php _se('optional'); ?></span></label>
<textarea id="form-image-description" name="form-image-description" class="text-input no-resize" placeholder="<?php _se('Brief description of this image'); ?>"><?php echo function_exists('get_image_safe_html') ? get_image_safe_html()["description"] : null; ?></textarea>

View File

@ -21,69 +21,69 @@ foreach ($tabs as $tab) {
?>
<div class="content-listing-loading"></div>
<?php
}
if ($do_pagination and ($classic or count($list->output) >= $list->limit)) { // pagination
if ($list->has_page_prev || $list->has_page_next) {
?>
}
if ($do_pagination and ($classic or count($list->output) >= $list->limit)) { // pagination
if ($list->has_page_prev || $list->has_page_next) {
?>
<ul class="content-listing-pagination<?php if ($classic) {
?> visible<?php
} ?>" data-visibility="<?php echo $classic ? 'visible' : 'hidden'; ?>" data-content="listing-pagination" data-type="<?php echo $classic ? 'classic' : 'endless'; ?>">
?> visible<?php
} ?>" data-visibility="<?php echo $classic ? 'visible' : 'hidden'; ?>" data-content="listing-pagination" data-type="<?php echo $classic ? 'classic' : 'endless'; ?>">
<?php
$currentUrlPath = G\add_ending_slash(preg_replace('/\?.*/', '', CHV\get_current_url()));
$QS = filter_input(INPUT_SERVER, 'QUERY_STRING', FILTER_SANITIZE_STRING);
parse_str($QS, $current_page_qs);
unset($current_page_qs['lang']); // Get rid of any ?lang=
$current_url = $currentUrlPath . '?' . http_build_query($current_page_qs);
$page = intval(($_GET['page'] ? $_GET['page'] : $current_page_qs['page']) ?: 1);
$pages = [];
foreach (['prev', 'next'] as $v) {
$params = $current_page_qs;
$seek = $list->{'seek' . ($v == 'prev' ? 'Start' : 'End')};
if ($list->{'has_page_' . $v}) {
$params['page'] = $v == 'prev' ? ($page - 1) : ($page + 1);
if ($seek) {
unset($params['peek'], $params['seek']);
$params[$v == 'prev' ? 'peek' : 'seek'] = $seek;
}
${$v . 'Url'} = $currentUrlPath . '?' . http_build_query($params);
} else {
${$v . 'Url'} = null;
}
}
$pages['prev'] = [
$QS = filter_input(INPUT_SERVER, 'QUERY_STRING', FILTER_SANITIZE_STRING);
parse_str($QS, $current_page_qs);
unset($current_page_qs['lang']); // Get rid of any ?lang=
$current_url = $currentUrlPath . '?' . http_build_query($current_page_qs);
$page = intval(($_GET['page'] ? $_GET['page'] : $current_page_qs['page']) ?: 1);
$pages = [];
foreach (['prev', 'next'] as $v) {
$params = $current_page_qs;
$seek = $list->{'seek' . ($v == 'prev' ? 'Start' : 'End')};
if ($list->{'has_page_' . $v}) {
$params['page'] = $v == 'prev' ? ($page - 1) : ($page + 1);
if ($seek) {
unset($params['peek'], $params['seek']);
$params[$v == 'prev' ? 'peek' : 'seek'] = $seek;
}
${$v . 'Url'} = $currentUrlPath . '?' . http_build_query($params);
} else {
${$v . 'Url'} = null;
}
}
$pages['prev'] = [
'label' => '<span class="icon icon-arrow-left7"></span>',
'url' => $prevUrl,
'disabled' => !$list->has_page_prev
];
$pages[] = [
$pages[] = [
'label' => $page,
'url' => $current_url,
'current' => true
];
$pages['next'] = [
$pages['next'] = [
'label' => '<span class="icon icon-arrow-right7"></span>',
'url' => $nextUrl,
'load-more' => !$classic,
'disabled' => !$list->has_page_next,
];
foreach ($pages as $k => $page) {
if (is_numeric($k)) {
$li_class = 'pagination-page';
} else {
$li_class = 'pagination-' . $k;
}
if ($page['current']) {
$li_class .= ' pagination-current';
}
if ($page['disabled']) {
$li_class .= ' pagination-disabled';
} ?>
foreach ($pages as $k => $page) {
if (is_numeric($k)) {
$li_class = 'pagination-page';
} else {
$li_class = 'pagination-' . $k;
}
if ($page['current']) {
$li_class .= ' pagination-current';
}
if ($page['disabled']) {
$li_class .= ' pagination-disabled';
} ?>
<li class="<?php echo $li_class; ?>"><a data-pagination="<?php echo $k; ?>" <?php
if (!is_null($page['url'])) {
?>href="<?php echo $page['url']; ?>" <?php
} ?>><?php echo $page['label']; ?></a></li>
} ?>><?php echo $page['label']; ?></a></li>
<?php
} ?>
} ?>
<script>
$(document).ready(function() {
$("a[href]", "[data-content=listing-pagination]").each(function() {
@ -93,11 +93,14 @@ foreach ($tabs as $tab) {
</script>
</ul>
<?php
}
} // pagination?
}
if ($classic) {
CHV\Render\show_banner('listing_after_pagination', $list->sfw);
}
} // pagination?
if ($do_pagination && $classic == false) {
?>
if ($do_pagination && $classic == false) {
?>
<div class="content-listing-more">
<button class="btn btn-big grey" data-action="load-more" data-seek="<?php echo $list->seekEnd; ?>"><?php _se('Load more'); ?></button>
</div>
@ -108,7 +111,7 @@ foreach ($tabs as $tab) {
} ?>
</div>
<?php
} else { // !current
} else { // !current
?>
<div id="<?php echo $tab["id"]; ?>" class="tabbed-content content-listing hidden list-<?php echo $tab["type"]; ?>" data-action="list" data-list="<?php echo $tab["type"]; ?>" data-params="<?php echo $tab["params"]; ?>" data-params-hidden="<?php echo $tab["params_hidden"]; ?>" data-load="<?php echo $classic ? 'classic' : 'ajax'; ?>">
</div>

View File

@ -47,14 +47,17 @@ foreach ($tabs as $tab) {
<?php
} ?>
<?php
if ((array_key_exists('tools_available', $tab) ? in_array('flag', $tab['tools_available']) : true)) {
if (is_allowed_nsfw_flagging() && (array_key_exists('tools_available', $tab) ? (in_array('flag', $tab['tools_available'])) : true)) {
?>
<li><a data-action="flag-safe" class="hidden"><?php _se('Flag as safe'); ?></a></li>
<li><a data-action="flag-unsafe" class="hidden"><?php _se('Flag as unsafe'); ?></a></li>
<?php
} ?>
}
if (G\Handler::getRouteName() == 'moderate') { ?>
<li><a data-action="approve"><?php _se('Approve'); ?></a></li>
<?php
} ?>
}
} // images?>
<?php
if (is_allowed_to_delete_content() && (array_key_exists('tools_available', $tab) ? in_array('delete', $tab['tools_available']) : true)) {
?>

View File

@ -14,12 +14,10 @@ if ($user_items_editor !== false) {
<div data-modal="form-edit-single" class="hidden">
<span class="modal-box-title">
<?php
if ($modal_dealing_with == 'images') {
_se('Edit image details');
} else {
_se('Edit album details');
$disable_album_toggle = true;
} ?>
_se('Edit');
if ($modal_dealing_with != 'images') {
$disable_album_toggle = true;
} ?>
</span>
<div class="modal-form">
<?php
@ -100,10 +98,18 @@ if ($user_items_editor !== false) {
<p><?php _se("Do you really want to flag this content as unsafe?"); ?></p>
</div>
<div data-modal="form-approve-single" class="hidden">
<span class="modal-box-title"><?php _se('Confirm approval'); ?></span>
<p><?php _se("Do you really want to approve this content? This can't be undone."); ?></p>
</div>
<div data-modal="form-delete-single" class="hidden">
<span class="modal-box-title"><?php _se('Confirm deletion'); ?></span>
<p><?php _se("Do you really want to remove this content? This can't be undone."); ?></p>
</div>
<div data-modal="form-approve-multiple" class="hidden">
<span class="modal-box-title"><?php _se('Confirm approval'); ?></span>
<p><?php _se("Do you really want to approve all the selected content? This can't be undone."); ?></p>
</div>
<div data-modal="form-delete-multiple" class="hidden">
<span class="modal-box-title"><?php _se('Confirm deletion'); ?></span>
<p><?php _se("Do you really want to remove all the selected content? This can't be undone."); ?></p>

View File

@ -16,14 +16,6 @@
<span class="btn-icon icon-cross4"></span>
<span class="label"><?php _se('Close'); ?></span>
</li>
<li class="fullscreen-hide" data-action="viewer-fullscreen">
<span class="btn-icon icon-expand2"></span>
<span class="label"><?php _se('Fullscreen'); ?></span>
</li>
<li class="fullscreen-show" data-action="viewer-normalscreen">
<span class="btn-icon icon-contract2"></span>
<span class="label"><?php _se('Exit fullscreen'); ?></span>
</li>
</ul>
<div class="viewer-foot hover-display hover-display--flex">
<div class="viewer-owner viewer-owner--user">
@ -42,11 +34,11 @@
<?php
if (CHV\getSetting('enable_likes')) {
?>
<div class="viewer-kb-key"><kbd>L</kbd><span><?php _se('Like'); ?></span></div>
<div class="viewer-kb-key" data-key="L"><kbd>L</kbd><span><?php _se('Like'); ?></span></div>
<?php
}
?>
<div class="viewer-kb-key"><kbd>X</kbd><span><?php _se('Close'); ?></span></div>
<div class="viewer-kb-key" data-key="X"><kbd>X</kbd><span><?php _se('Close'); ?></span></div>
</div>
</div>
</div>

View File

@ -3,7 +3,7 @@ Theme Name: Peafowl
Theme URL: https://chevereto.com/
Version: 3
Author: Rodolfo Berrios
@Chevereto: 3.16.0
@Chevereto: 3.14.2
@requires peafowl.css
*/
/*
@ -908,6 +908,10 @@ html:not(.--idle) .list-item:hover .list-item-image-tools li,
color: #fff;
}
body#moderate .list-item-like, body#moderate .viewer-kb-key[data-key="L"] {
display: none;
}
.list-item-like {
color: #fff;
position: absolute;

File diff suppressed because one or more lines are too long

View File

@ -3,11 +3,25 @@
<span data-icon-selected="icon-ok" data-icon-unselected="icon-checkbox-unchecked" class="btn-icon icon-checkbox-unchecked" title="<?php _se('Select'); ?>"></span>
<span class="label label-select"><?php _se('Select'); ?></span>
</li>
<?php
if (G\Handler::getCond('allowed_nsfw_flagging')) {
?>
<li class="tool-flag" data-action="flag">
<span class="btn-icon icon-flag" title="<?php _se('Toggle unsafe flag'); ?>"></span>
<span class="label label-flag label-flag-unsafe"><?php _se('Flag as unsafe'); ?></span>
<span class="label label-flag label-flag-safe"><?php _se('Flag as safe'); ?></span>
</li>
<?php
}
if (G\Handler::getRouteName() == 'moderate') {
?>
<li class="tool-approve" data-action="approve">
<span class="btn-icon icon-checkmark" title="<?php _se('Approve'); ?>"></span>
<span class="label label-approve"><?php _se('Approve'); ?></span>
</li>
<?php
}
?>
<li class="tool-delete" data-action="delete">
<span class="btn-icon icon-remove" title="<?php _se('Delete'); ?>"></span>
<span class="label label-delete"><?php _se('Delete'); ?></span>

View File

@ -3,11 +3,17 @@
<span data-icon-selected="icon-ok" data-icon-unselected="icon-checkbox-unchecked" class="btn-icon icon-checkbox-unchecked" title="<?php _se('Select'); ?>"></span>
<span class="label label-select"><?php _se('Select'); ?></span>
</li>
<?php
if (G\Handler::getCond('allowed_nsfw_flagging')) {
?>
<li class="tool-flag" data-action="flag">
<span class="btn-icon icon-flag" title="<?php _se('Toggle unsafe flag'); ?>"></span>
<span class="label label-flag label-flag-unsafe"><?php _se('Flag as unsafe'); ?></span>
<span class="label label-flag label-flag-safe"><?php _se('Flag as safe'); ?></span>
</li>
<?php
}
?>
<li class="tool-edit" data-action="edit">
<span class="btn-icon icon-edit" title="<?php _se('Edit'); ?>"></span>
<span class="label label-edit"><?php _se('Edit'); ?></span>
@ -17,13 +23,13 @@
<span class="label label-move"><?php _ne('Album', 'Albums', 1); ?></span>
</li>
<?php
if(G\Handler::getCond('allowed_to_delete_content')) {
?>
if (G\Handler::getCond('allowed_to_delete_content')) {
?>
<li class="tool-delete" data-action="delete">
<span class="btn-icon icon-remove" title="<?php _se('Delete'); ?>"></span>
<span class="label label-delete"><?php _se('Delete'); ?></span>
</li>
<?php
}
?>
}
?>
</ul>

View File

@ -34,13 +34,13 @@
if (is_owner() or is_content_manager()) {
?>
<div class="breadcrum-item">
<a class="edit-link" data-modal="edit"><span class="icon-edit"></span><span><?php _se('Edit album details'); ?></span></a>
<a class="link link--edit" data-modal="edit"><span class="icon icon-edit"></span><span><?php _se('Edit'); ?></span></a>
</div>
<?php
if (is_allowed_to_delete_content()) {
?>
<div class="breadcrum-item">
<a class="delete-link" data-confirm="<?php _se("Do you really want to delete this album and all of its images? This can't be undone."); ?>" data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url="<?php echo G\get_base_url("json"); ?>"><?php _se('Delete album'); ?></a>
<a class="link link--delete" data-confirm="<?php _se("Do you really want to delete this album and all of its images? This can't be undone."); ?>" data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url="<?php echo G\get_base_url("json"); ?>"><span class="icon icon-remove"></span><span><?php _se('Delete'); ?></span></a>
</div>
<?php
} ?>
@ -196,7 +196,7 @@
if (is_content_manager() or is_owner()) {
?>
<div id="form-modal" class="hidden" data-before-fn="CHV.fn.before_album_edit" data-submit-fn="CHV.fn.submit_album_edit" data-ajax-deferred="CHV.fn.complete_album_edit" data-ajax-url="<?php echo G\get_base_url("json"); ?>">
<h1><?php _se('Edit album details'); ?></h1>
<h1><?php _se('Edit'); ?></h1>
<div class="modal-form">
<?php G\Render\include_theme_file('snippets/form_album'); ?>
</div>

View File

@ -2,15 +2,19 @@
die('This file cannot be directly accessed.');
} ?>
<?php G\Render\include_theme_header();
function read_the_docs($args = [])
function read_the_docs_settings($key, $subject)
{
return _s('Learn more about %s at our %d.', [
'%s' => $args['%s'],
'%d' => '<a href="https://v3-docs.chevereto.com/' . $args['%k'] . '" target="_blank">' . _s('documentation') . '</a>',
return _s('Learn about %s settings at our %d.', [
'%s' => $subject,
'%d' => get_docs_link('settings/' . $key . '.html', _s('documentation')),
]);
}
function free_version_waring($wrap=true)
function get_docs_link($key, $subject)
{
return '<a href="' . get_documentationBaseUrl() . $key . '" target="_blank">' . $subject . '</a>';
}
function free_version_warning($wrap=true)
{
$message = _s("This functionality is not part of Chevereto Free. %s to obtain this feature.", ['%s' => '<a href="https://chevereto.com/pricing" target="_blank">' . _s('Upgrade to paid version') . '</a>']);
echo($wrap ? ('<div class="input-below">' . $message . '</div>') : $message);
@ -116,14 +120,9 @@ function free_version_waring($wrap=true)
?>
<div class="header header--centering default-margin-bottom">
<h1><?php _se('Bulk importer'); ?></h1>
<div class="header-content-right phone-float-none">
<div class="list-selection header--centering">
<a class="header-link" href="https://goo.gl/q5poeY" target="_blank"><?php _se('documentation'); ?></a>
</div>
</div>
</div>
<div class="text-content">
<p><?php _se('This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure.'); ?></p>
<p><?php _se('This tool allows to mass add content to your website by pointing a system path with the content you want to import. It supports the addition of users, albums, and images using a folder based structure.'); ?> <?php _se('Check the %s for more information about this feature.', get_docs_link('features/bulk-content-importer.html', _s('documentation'))); ?></p>
</div>
<div class ="text-content margin-bottom-20">
<h3>🤖 <?php _se('Automatic importing'); ?></h3>
@ -461,8 +460,7 @@ function free_version_waring($wrap=true)
});
</script>
<?php
<?php
break;
case 'images':
@ -542,7 +540,7 @@ function free_version_waring($wrap=true)
<?php echo G\Render\get_input_auth_token(); ?>
<div class="header header--centering default-margin-bottom">
<div class="header header--centering default-margin-bottom follow-scroll">
<h1>
<span class="icon icon-cog phablet-hide tablet-hide laptop-hide desktop-hide"></span>
<span class="phone-hide"><?php echo get_dashboard_menu()[get_dashboard()]['label']; ?></span>
@ -565,8 +563,7 @@ function free_version_waring($wrap=true)
</div>
</div>
</div>
<?php if (get_settings()['key'] == 'categories') {
?>
<?php if (get_settings()['key'] == 'categories') { ?>
<div class="header-content-right phone-float-none">
<div class="list-selection header--centering">
<a class="header-link" data-modal="form" data-target="modal-add-category"><?php _se('Add category'); ?></a>
@ -580,8 +577,7 @@ function free_version_waring($wrap=true)
</div>
<?php
} ?>
<?php if (get_settings()['key'] == 'ip-bans') {
?>
<?php if (get_settings()['key'] == 'ip-bans') { ?>
<div class="header-content-right phone-float-none">
<div class="list-selection header--centering">
<a class="header-link" data-modal="form" data-target="modal-add-ip_ban"><?php _se('Add IP ban'); ?></a>
@ -625,9 +621,8 @@ function free_version_waring($wrap=true)
if (get_dashboard() == 'settings') {
?>
<?php if (get_settings()['key'] == 'website') {
?>
<?php if (get_settings()['key'] == 'website') { ?>
<p><?php echo read_the_docs_settings('website', _s('website')); ?></p>
<div class="phablet-c1">
<div class="input-label">
<label for="website_name"><?php _se('Website name'); ?></label>
@ -768,7 +763,7 @@ function free_version_waring($wrap=true)
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], CHV\Settings::get('enable_likes')); ?>
</select></div>
<?php free_version_waring(); ?>
<?php free_version_warning(); ?>
<?php personal_mode_warning(); ?>
</div>
@ -778,7 +773,7 @@ function free_version_waring($wrap=true)
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], CHV\Settings::get('enable_followers')); ?>
</select></div>
<?php free_version_waring(); ?>
<?php free_version_warning(); ?>
<?php personal_mode_warning(); ?>
</div>
@ -1093,7 +1088,7 @@ function free_version_waring($wrap=true)
} else { // display
if (get_pages() and count(get_pages()) > 0) {
$auth_token = G\Handler::getAuthToken(); ?>
<p><?php echo read_the_docs(['%s' => _s('pages'), '%k' => 'pages']); ?></p>
<p><?php echo read_the_docs_settings('pages', _s('pages')); ?></p>
<ul data-content="dashboard-categories-list" class="tabbed-content-list table-li-hover table-li margin-top-20 margin-bottom-20">
<li class="table-li-header phone-hide">
<span class="c2 display-table-cell padding-right-10"><?php echo 'ID'; ?></span>
@ -1133,9 +1128,9 @@ function free_version_waring($wrap=true)
} // pages
?>
<?php if (get_settings()['key'] == 'image-upload') {
?>
<div class="input-label">
<?php if (get_settings()['key'] == 'image-upload') { ?>
<p><?php echo read_the_docs_settings('image-upload', _s('image upload')); ?></p>
<div class="input-label">
<label><?php _se('Enabled image formats'); ?></label>
<div class="checkbox-label">
<ul class="c20 phablet-c1">
@ -1159,6 +1154,13 @@ function free_version_waring($wrap=true)
</select></div>
<div class="input-below"><?php _se("Enable this if you want to allow image uploads. This setting doesn't affect administrators."); ?></div>
</div>
<div class="input-label">
<label for="upload_gui"><?php _se('Upload user interface'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="upload_gui" id="upload_gui" class="text-input">
<?php
echo CHV\Render\get_select_options_html(['js' => _s('On-page container'), 'page' => '/upload ' . _s('route')], CHV\Settings::get('upload_gui')); ?>
</select></div>
</div>
<div class="input-label">
<label for="guest_uploads"><?php _se('Guest uploads'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="guest_uploads" id="guest_uploads" class="text-input" <?php if (CHV\getSetting('website_mode') == 'personal') {
@ -1170,16 +1172,23 @@ function free_version_waring($wrap=true)
<div class="input-below"><?php _se('Enable this if you want to allow non registered users to upload.'); ?></div>
<?php personal_mode_warning(); ?>
</div>
<div class="input-label">
<label for="upload_gui"><?php _se('Upload user interface'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="upload_gui" id="upload_gui" class="text-input">
<div class="input-label">
<label for="moderate_uploads"><?php _se('Moderate uploads'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="moderate_uploads" id="moderate_uploads" class="text-input" <?php if (CHV\getSetting('website_mode') == 'personal') {
echo ' disabled';
} ?>>
<?php
echo CHV\Render\get_select_options_html(['js' => _s('On-page container'), 'page' => '/upload ' . _s('route')], CHV\Settings::get('upload_gui')); ?>
echo CHV\Render\get_select_options_html([
'' => _s('Disabled'),
'guest' => _s('Guest'),
'all' => _s('All')
], CHV\Settings::get('moderate_uploads')); ?>
</select></div>
<div class="input-below"><?php _se('Enable this to moderate incoming uploads. Target content will require moderation for approval.'); ?></div>
<?php personal_mode_warning(); ?>
</div>
<hr class="line-separator">
<hr class="line-separator">
<div class="input-label">
<label for="theme_show_embed_uploader"><?php _se('Enable embed codes (uploader)'); ?></label>
@ -1478,13 +1487,13 @@ function free_version_waring($wrap=true)
<?php
} ?>
<?php if (get_settings()['key'] == 'categories') {
?>
<?php if (get_settings()['key'] == 'categories') { ?>
<p><?php echo read_the_docs_settings('categories', _s('categories')); ?></p>
<?php if (!CHV\getSetting('website_explore_page')) {
?>
?>
<div class="growl static"><?php _se("Categories won't work when the explorer feature is turned off. To revert this setting go to %s.", ['%s' => '<a href="' . G\get_base_url('dashboard/settings/website') . '">' . _s('Dashboard > Settings > Website') . '</a>']); ?></div>
<?php
} ?>
} ?>
<script>
$(document).ready(function() {
CHV.obj.categories = <?php echo json_encode(get_categories()); ?>;
@ -1537,7 +1546,8 @@ function free_version_waring($wrap=true)
$(document).ready(function() {
CHV.obj.ip_bans = <?php echo json_encode($ip_bans); ?>;
});
</script>
</script>
<p><?php echo read_the_docs_settings('ip-bans', _s('ip bans')); ?></p>
<ul data-content="dashboard-ip_bans-list" class="tabbed-content-list table-li table-li-hover margin-top-20 margin-bottom-20">
<li class="table-li-header phone-hide">
<span class="c6 display-table-cell padding-right-10">IP</span>
@ -1573,13 +1583,13 @@ function free_version_waring($wrap=true)
<?php
} ?>
<?php if (get_settings()['key'] == 'users') {
?>
<div class="input-label">
<?php if (get_settings()['key'] == 'users') { ?>
<p><?php echo read_the_docs_settings('users', _s('users')); ?></p>
<div class="input-label">
<label for="enable_signups"><?php _se('Enable signups'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="enable_signups" id="enable_signups" class="text-input" <?php if (CHV\getSetting('website_mode') == 'personal') {
echo ' disabled';
} ?>>
echo ' disabled';
} ?>>
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], CHV\Settings::get('enable_signups')); ?>
</select></div>
@ -1676,7 +1686,7 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'consent-screen') {
?>
<p><?php _se("Shows a consent screen before accessing the website. Useful for adult content websites where minors shouldn't be allowed."); ?></p>
<p><?php _se("Shows a consent screen before accessing the website. Useful for adult content websites where minors shouldn't be allowed."); ?> <?php echo read_the_docs_settings('consent-screen', _s('consent screen')); ?></p>
<div class="input-label">
<label for="enable_consent_screen"><?php _se('Enable consent screen'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="enable_consent_screen" id="enable_consent_screen" class="text-input" data-combo="consent-screen-combo">
@ -1703,7 +1713,7 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'flood-protection') {
?>
<p><?php _se("Block image uploads by IP if the system notice a flood behavior based on the number of uploads per time period. This setting doesn't affect administrators."); ?></p>
<p><?php _se("Block image uploads by IP if the system notice a flood behavior based on the number of uploads per time period. This setting doesn't affect administrators."); ?> <?php echo read_the_docs_settings('flood-protection', _s('flood protection')); ?></p>
<div class="input-label">
<label for="flood_uploads_protection"><?php _se('Flood protection'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="flood_uploads_protection" id="flood_uploads_protection" class="text-input" data-combo="flood-protection-combo">
@ -1753,8 +1763,22 @@ function free_version_waring($wrap=true)
<?php
} ?>
<?php if (get_settings()['key'] == 'content') {
?>
<?php if (get_settings()['key'] == 'content') { ?>
<p><?php echo read_the_docs_settings('content', _s('content')); ?></p>
<div class="input-label">
<label for="image_lock_nsfw_editing"><?php _se('Lock %s editing', _s('NSFW')); ?></label>
<div class="c5 phablet-c1"><select type="text" name="image_lock_nsfw_editing" id="image_lock_nsfw_editing" class="text-input" <?php if (CHV\getSetting('website_mode') == 'personal') {
echo ' disabled';
} ?>>
<?php
echo CHV\Render\get_select_options_html([
0 => _s('Disabled'),
1 => _s('Enabled'),
], CHV\Settings::get('image_lock_nsfw_editing')); ?>
</select></div>
<div class="input-below"><?php _se('Enable this to prevent users from changing the NSFW flag. When enabled, only admin and managers will have this permission.'); ?></div>
<?php personal_mode_warning(); ?>
</div>
<div class="input-label">
<label for="show_nsfw_in_listings"><?php _se('Show not safe content in listings'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="show_nsfw_in_listings" id="show_nsfw_in_listings" class="text-input">
@ -1777,7 +1801,7 @@ function free_version_waring($wrap=true)
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], CHV\Settings::get('show_banners_in_nsfw')); ?>
</select></div>
<?php free_version_waring(); ?>
<?php free_version_warning(); ?>
</div>
<div class="input-label">
@ -1790,8 +1814,8 @@ function free_version_waring($wrap=true)
<?php
} ?>
<?php if (get_settings()['key'] == 'listings') {
?>
<?php if (get_settings()['key'] == 'listings') { ?>
<p><?php echo read_the_docs_settings('listings', _s('listings')); ?></p>
<div class="input-label">
<label for="listing_items_per_page"><?php _se('List items per page'); ?></label>
<div class="c2"><input type="number" min="1" name="listing_items_per_page" id="listing_items_per_page" class="text-input" value="<?php echo CHV\Settings::get('listing_items_per_page', true); ?>" placeholder="<?php echo CHV\Settings::getDefault('listing_items_per_page', true); ?>" required></div>
@ -1868,9 +1892,8 @@ function free_version_waring($wrap=true)
<?php
} ?>
<?php if (get_settings()['key'] == 'theme') {
?>
<p><?php echo read_the_docs(['%s' => _s('theme editing'), '%k' => 'theme']); ?></p>
<?php if (get_settings()['key'] == 'theme') { ?>
<p><?php echo read_the_docs_settings('theme', _s('theme')); ?></p>
<hr class="line-separator">
<div class="input-label">
<label for="theme"><?php _se('Theme'); ?></label>
@ -2079,6 +2102,7 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'homepage') {
?>
<p><?php echo read_the_docs_settings('homepage', _s('homepage')); ?></p>
<div class="input-label">
<label for="homepage_style"><?php _se('Style'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="homepage_style" id="homepage_style" class="text-input" data-combo="home-style-combo">
@ -2086,7 +2110,8 @@ function free_version_waring($wrap=true)
echo CHV\Render\get_select_options_html([
'landing' => _s('Landing page'),
'split' => _s('Split landing + images'),
'route_explore' => _s('Route explore'),
'route_explore' => _s('Route %s', _s('explore')),
'route_upload' => _s('Route %s', _s('upload')),
], CHV\Settings::get('homepage_style')); ?>
</select></div>
<div class="input-below input-warning red-warning"><?php echo get_input_errors()['homepage_style']; ?></div>
@ -2235,17 +2260,18 @@ function free_version_waring($wrap=true)
<div class="input-below"><?php _se('Comma-separated list of target user IDs (integers) to show most recent images on homepage. Leave it empty to display trending images.'); ?></div>
</div>
</div>
</div>
</div>
<?php
<?php
} ?>
<?php if (get_settings()['key'] == 'banners') {
free_version_waring();
free_version_warning();
} ?>
<?php if (get_settings()['key'] == 'system') {
?>
<div class="input-label">
<p><?php echo read_the_docs_settings('system', _s('system')); ?></p>
<div class="input-label">
<label for="enable_automatic_updates_check"><?php _se('Automatic updates check'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="enable_automatic_updates_check" id="enable_automatic_updates_check" class="text-input">
<?php
@ -2333,7 +2359,7 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'routing') {
?>
<p><?php _se('Routing allows you to customize default route binds on the fly. Only alphanumeric, hyphen and underscore characters are allowed. Check out our %s if you want to override or add new routes.', '<a href="https://chevereto.com/docs/routes">' . _s('documentation') . '</a>'); ?></p>
<p><?php _se('Routing allows you to customize default route binds on the fly. Only alphanumeric, hyphen and underscore characters are allowed.'); ?> <?php echo read_the_docs_settings('routing', _s('routing')); ?></p>
<div class="input-label">
<label for="route_image"><?php _se('Image routing'); ?></label>
<div class="c9 phablet-c1">
@ -2385,9 +2411,9 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'languages') {
?>
<div class="input-label">
<p><?php echo read_the_docs_settings('languages', _s('languages')); ?></p>
<div class="input-label">
<label><?php _se('Custom language strings'); ?></label>
<p><?php echo read_the_docs(['%s' => _s('language strings'), '%k' => 'language-strings']); ?></p>
</div>
<div class="input-label">
<label for="default_language"><?php _se('Default language'); ?></label>
@ -2445,11 +2471,12 @@ function free_version_waring($wrap=true)
} ?>
<?php if (get_settings()['key'] == 'external-storage') {
free_version_waring();
free_version_warning();
} ?>
<?php if (get_settings()['key'] == 'email') {
?>
<div class="input-label">
<p><?php echo read_the_docs_settings('email', _s('email')); ?></p>
<div class="input-label">
<label for="email_from_name"><?php _se('From name'); ?></label>
<div class="c9 phablet-c1"><input type="text" name="email_from_name" id="email_from_name" class="text-input" value="<?php echo CHV\Settings::get('email_from_name', true); ?>" required></div>
<div class="input-warning red-warning"><?php echo get_input_errors()['email_from_name']; ?></div>
@ -2524,7 +2551,8 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'tools') {
?>
<div class="input-label">
<p><?php echo read_the_docs_settings('tools', _s('tools')); ?></p>
<div class="input-label">
<label for="decode-id"><?php _se('Decode ID'); ?></label>
<div class="phablet-c1">
<input type="text" data-dashboard-tool="decodeId" name="decode-id" id="decode-id" class="c4 text-input" placeholder="<?php echo CHV\encodeID(1337); ?>"> <a class="btn btn-input default" data-action="dashboardTool" data-tool="decodeId" data-data='{"id":"#decode-id"}'><span class="loading display-inline-block"></span><span class="text"><?php _se('Decode ID'); ?></span></a>
@ -2578,18 +2606,54 @@ function free_version_waring($wrap=true)
} ?>
<?php if (get_settings()['key'] == 'social-networks') {
free_version_waring();
free_version_warning();
} ?>
<?php if (get_settings()['key'] == 'external-services') {
?>
<p><?php echo read_the_docs_settings('external-services', _s('external services')); ?></p>
<div class="input-label">
<label for="akismet"><?php _se('%s spam protection', 'Akismet'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="akismet" id="akismet" class="text-input" data-combo="akismet-combo">
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], get_safe_post() ? get_safe_post()['akismet'] : CHV\Settings::get('akismet')); ?>
</select></div>
<div class="input-below"><?php _se('Enable this to use %l to block spam on %c.', [
'%l' => '<a href="https://akismet.com/" target="_blank">Akismet</a>',
'%c' => _s('user generated content')
]); ?></div>
</div>
<div id="akismet-combo" class="c9 phablet-c1">
<div data-combo-value="1" class="switch-combo<?php if (!(get_safe_post() ? get_safe_post()['akismet'] : CHV\Settings::get('akismet'))) {
echo ' soft-hidden';
} ?>">
<div class="input-label">
<label for="akismet_api_key"><?php _se('%s API key', 'Akismet'); ?></label>
<input type="text" name="akismet_api_key" id="akismet_api_key" class="text-input" value="<?php echo get_safe_post() ? get_safe_post()['akismet_api_key'] : CHV\Settings::get('akismet_api_key', true); ?>" >
<div class="input-warning red-warning"><?php echo get_input_errors()['akismet_api_key']; ?></div>
</div>
</div>
</div>
<div class="input-label">
<label for="stopforumspam"><?php _se('%s spam protection', 'StopForumSpam'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="stopforumspam" id="stopforumspam" class="text-input">
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], get_safe_post() ? get_safe_post()['stopforumspam'] : CHV\Settings::get('stopforumspam')); ?>
</select></div>
<div class="input-below"><?php _se('Enable this to use %l to block spam on %c.', [
'%l' => '<a href="https://stopforumspam.com/" target="_blank">StopForumSpam</a>',
'%c' => _s('user signup')
]); ?></div>
</div>
<hr class="line-separator">
<div class="input-label">
<label for="cdn">CDN</label>
<div class="c5 phablet-c1"><select type="text" name="cdn" id="cdn" class="text-input" data-combo="cdn-combo">
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], get_safe_post() ? get_safe_post()['cdn'] : CHV\Settings::get('cdn')); ?>
</select></div>
<div class="input-below"><?php echo read_the_docs(['%s' => 'CDN', '%k' => 'cdn']); ?></div>
</select></div>
</div>
<div id="cdn-combo" class="c9 phablet-c1">
<div data-combo-value="1" class="switch-combo<?php if (!(get_safe_post() ? get_safe_post()['cdn'] : CHV\Settings::get('cdn'))) {
@ -2694,20 +2758,59 @@ function free_version_waring($wrap=true)
<div class="input-label">
<label for="comment_code"><?php _se('Comment code'); ?></label>
<div class="c12 phablet-c1"><textarea type="text" name="comment_code" id="comment_code" class="text-input r4" value="" placeholder="<?php _se('Disqus, Facebook or anything you want. It will be used in image view.'); ?>"><?php echo CHV\Settings::get('comment_code', true); ?></textarea></div>
</div>
</div>
</div>
<hr class="line-separator">
<div class="input-label">
<label for="analytics_code"><?php _se('Analytics code'); ?></label>
<div class="c12 phablet-c1"><textarea type="text" name="analytics_code" id="analytics_code" class="text-input r4" value="" placeholder="<?php _se('Google Analytics or anything you want. It will be added to the theme footer.'); ?>"><?php echo CHV\Settings::get('analytics_code', true); ?></textarea></div>
</div>
</div>
</div>
</div>
<hr class="line-separator"></hr>
<div class="input-label">
<label for="moderatecontent">ModerateContent</label>
<div class="c5 phablet-c1"><select type="text" name="moderatecontent" id="moderatecontent" class="text-input" data-combo="moderatecontent-combo">
<?php
echo CHV\Render\get_select_options_html([1 => _s('Enabled'), 0 => _s('Disabled')], get_safe_post() ? get_safe_post()['moderatecontent'] : CHV\Settings::get('moderatecontent')); ?>
</select></div>
<div class="input-below"><?php _se('Automatically moderate the content using the %s service.', '<a href="https://www.moderatecontent.com/" target="_blank">ModerateContent</a>'); ?></div>
</div>
<div id="moderatecontent-combo" class="c12 phablet-c1">
<div data-combo-value="1" class="switch-combo<?php if ((get_safe_post() ? get_safe_post()['moderatecontent'] : CHV\Settings::get('moderatecontent')) == 0) {
echo ' soft-hidden';
} ?>">
<div class="input-label">
<label for="moderatecontent_key">ModerateContent API Key</label>
<input type="text" name="moderatecontent_key" id="moderatecontent_key" class="text-input" value="<?php echo get_safe_post() ? get_safe_post()['moderatecontent_key'] : CHV\Settings::get('moderatecontent_key'); ?>" placeholder="">
<div class="input-below input-warning red-warning"><?php echo get_input_errors()['moderatecontent_key']; ?></div>
</div>
<div class="input-label">
<label for="moderatecontent_auto_approve"><?php _se('Automatic approve'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="moderatecontent_auto_approve" id="moderatecontent_auto_approve" class="text-input">
<?php echo CHV\Render\get_select_options_html([0 => _s('Disabled'), 1 => _s('Enabled')], get_safe_post() ? get_safe_post()['moderatecontent_auto_approve'] : CHV\Settings::get('moderatecontent_auto_approve')); ?>
</select></div>
<div class="input-below"><?php _se('Enable this to automatically approve content moderated by this service.'); ?></div>
</div>
<div class="input-label">
<label for="moderatecontent_block_rating"><?php _se('Block content'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="moderatecontent_block_rating" id="moderatecontent_block_rating" class="text-input">
<?php echo CHV\Render\get_select_options_html(['' => _s('Disabled'), 'a' => _s('Adult'), 't' => _s('Teen and adult')], get_safe_post() ? get_safe_post()['moderatecontent_block_rating'] : CHV\Settings::get('moderatecontent_block_rating')); ?>
</select></div>
</div>
<div class="input-label">
<label for="moderatecontent_flag_nsfw"><?php _se('Flag NSFW'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="moderatecontent_flag_nsfw" id="moderatecontent_flag_nsfw" class="text-input">
<?php echo CHV\Render\get_select_options_html([0 => _s('Disabled'), 'a' => _s('Adult'), 't' => _s('Teen and adult')], get_safe_post() ? get_safe_post()['moderatecontent_flag_nsfw'] : CHV\Settings::get('moderatecontent_flag_nsfw')); ?>
</select></div>
</div>
</div>
</div>
<hr class="line-separator">
<div class="input-label">
<label for="analytics_code"><?php _se('Analytics code'); ?></label>
<div class="c12 phablet-c1"><textarea type="text" name="analytics_code" id="analytics_code" class="text-input r4" value="" placeholder="<?php _se('Google Analytics or anything you want. It will be added to the theme footer.'); ?>"><?php echo CHV\Settings::get('analytics_code', true); ?></textarea></div>
</div>
<?php
} ?>
<?php if (get_settings()['key'] == 'api') {
?>
<p><?php _se('For documentation about the API check the <a %s>API documentation</a>', 'href="http://bit.ly/1EFSP0H" target="_blank"'); ?></p>
<p><?php echo read_the_docs_settings('api', _s('api')); ?></p>
<div class="input-label">
<label for="api_v1_key"><?php _se('API v1 key'); ?></label>
<div class="c9 phablet-c1"><input type="text" name="api_v1_key" id="api_v1_key" class="text-input" value="<?php echo CHV\Settings::get('api_v1_key', true); ?>"></div>
@ -2719,6 +2822,7 @@ function free_version_waring($wrap=true)
<?php if (get_settings()['key'] == 'additional-settings') {
?>
<p><?php echo read_the_docs_settings('additional-settings', _s('additional settings')); ?></p>
<div class="input-label">
<label for="enable_plugin_route"><?php _se('Plugin route'); ?></label>
<div class="c5 phablet-c1"><select type="text" name="enable_plugin_route" id="enable_plugin_route" class="text-input">

View File

@ -72,14 +72,20 @@
if (is_owner() or is_content_manager()) {
?>
<div class="breadcrum-item">
<a class="edit-link" data-modal="edit"><span class="icon-edit"></span><span><?php _se('Edit image details'); ?></span></a>
<a class="link link--edit" data-modal="edit"><span class="icon icon-edit"></span><span><?php _se('Edit'); ?></span></a>
</div>
<?php
if (!get_image()['is_approved'] && is_content_manager()) { ?>
<div class="breadcrum-item">
<a class="link link--approve" data-confirm="<?php _se("Do you really want to approve this image? The image will go public if you approve it."); ?>" data-submit-fn="CHV.fn.submit_resource_approve" data-ajax-deferred="CHV.fn.complete_resource_approve" data-ajax-url="<?php echo G\get_base_url('json'); ?>"><span class="icon icon-checkmark"></span><span><?php _se('Approve'); ?></span></a>
</div>
<?php
}
if (is_allowed_to_delete_content()) {
?>
<div class="breadcrum-item">
<a class="delete-link" data-confirm="<?php _se("Do you really want to delete this image? This can't be undone."); ?>" data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url="<?php echo G\get_base_url('json'); ?>"><?php _se('Delete image'); ?></a>
</div>
<div class="breadcrum-item">
<a class="link link--delete" data-confirm="<?php _se("Do you really want to delete this image? This can't be undone."); ?>" data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url="<?php echo G\get_base_url('json'); ?>"><span class="icon icon-remove"></span><span><?php _se('Delete'); ?></span></a>
</div>
<?php
}
}
@ -109,7 +115,6 @@
<?php
} ?>
</div>
</div>
<?php
@ -274,12 +279,12 @@
</div>
<?php if (CHV\isShowEmbedContent()) {
?>
?>
<div id="tab-codes" class="tabbed-content<?php echo get_current_tab() == 'codes' ? ' visible' : null; ?>">
<div class="growl static text-align-center margin-bottom-30 clear-both<?php if (get_image()['album']['privacy'] == 'public' || get_image()['album']['privacy'] == null) {
echo ' soft-hidden';
} ?>" data-content="privacy-private"><?php echo get_image()['album']['privacy_notes']; ?></div>
echo ' soft-hidden';
} ?>" data-content="privacy-private"><?php echo get_image()['album']['privacy_notes']; ?></div>
<div class="panel-share c16 phablet-c1 grid-columns margin-right-10">
<?php
@ -305,7 +310,7 @@
</div>
<?php
} ?>
} ?>
<?php
if (is_admin()) {
@ -324,16 +329,16 @@
<?php
if (is_owner() or is_content_manager()) {
?>
?>
<div data-modal="form-modal" class="hidden" data-submit-fn="CHV.fn.submit_image_edit" data-before-fn="CHV.fn.before_image_edit" data-ajax-deferred="CHV.fn.complete_image_edit" data-ajax-url="<?php echo G\get_base_url('json'); ?>">
<span class="modal-box-title"><?php _se('Edit image details'); ?></span>
<span class="modal-box-title"><?php _se('Edit'); ?></span>
<div class="modal-form">
<?php
G\Render\include_theme_file('snippets/form_image'); ?>
</div>
</div>
<?php
}
}
if (CHV\getSetting('theme_show_social_share')) {
G\Render\include_theme_file('snippets/modal_share');

View File

@ -79,7 +79,7 @@
} ?>
<?php if (CHV\getSetting('enable_powered_by')) { ?>
<div class="footer"><?php _se('Powered by'); ?> <a href="https://chevereto.com" rel="generator">Chevereto</a></div>
<div class="footer"><?php _se('Powered by'); ?> <a href="https://chevereto.com" rel="generator" target="_blank">Chevereto</a></div>
<?php } ?>
<?php G\Render\include_theme_footer(); ?>

View File

@ -0,0 +1,29 @@
<?php if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
} ?>
<?php G\Render\include_theme_header(); ?>
<div class="content-width">
<div class="header header-tabs margin-bottom-10 follow-scroll">
<h1><strong><?php echo '<span class="margin-right-5 icon ' . get_listing()['icon'] . '"></span>' . get_listing()['label']; ?></strong></h1>
<?php G\Render\include_theme_file("snippets/tabs"); ?>
<?php
if (is_content_manager()) {
G\Render\include_theme_file("snippets/user_items_editor"); ?>
<div class="header-content-right phone-float-none">
<?php G\Render\include_theme_file("snippets/listing_tools_editor"); ?>
</div>
<?php
}
?>
</div>
<div id="content-listing-tabs" class="tabbed-listing">
<div id="tabbed-content-group">
<?php
G\Render\include_theme_file("snippets/listing");
?>
</div>
</div>
</div>
<?php G\Render\include_theme_footer(); ?>

View File

@ -1,4 +1,6 @@
<?php if(!defined('access') or !access) die('This file cannot be directly accessed.'); ?>
<?php if (!defined('access') or !access) {
die('This file cannot be directly accessed.');
} ?>
<?php G\Render\include_theme_header(); ?>
<div class="center-box c24">
@ -12,10 +14,10 @@
<p><?php _se('The plugin works in any website with user-editable content and for %sv, it will place an upload button that will match the target editor toolbar so no extra customization is needed.', ['%sv' => '<a data-toggle="pup-vendors">' . _s('supported software') . '</a>']); ?></p>
<ul data-content="pup-vendors" class="soft-hidden">
<?php
foreach (get_plugin()['vendors'] as $k => $v) {
echo '<li>' . $v . '</li>' . "\n";
}
?>
foreach (get_plugin()['vendors'] as $k => $v) {
echo '<li>' . $v . '</li>' . "\n";
}
?>
</ul>
<h2><?php _se('Add it to your website'); ?></h2>
<p><?php _se('Copy and paste the plugin code into your website HTML code (preferably inside the head section). There are plenty %o to make it fit better to your needs.', ['%o' => '<a data-toggle="pup-options">' . _s('options') . '</a>']); ?></p>
@ -31,14 +33,14 @@
<div class="c9 phablet-c1">
<select type="text" name="palette" id="palette" class="text-input">
<?php
foreach (get_plugin()['palettes'] as $k => $v) {
$attr = 'value="' . ($k == 'default' ? '' : $k) . '"';
if($k == 'default') {
$attr .= ' selected="selected"';
}
echo '<option ' . $attr . '>' . ucfirst($k) . '</option>' . "\n";
}
?>
foreach (get_plugin()['palettes'] as $k => $v) {
$attr = 'value="' . ($k == 'default' ? '' : $k) . '"';
if ($k == 'default') {
$attr .= ' selected="selected"';
}
echo '<option ' . $attr . '>' . ucfirst($k) . '</option>' . "\n";
}
?>
</select>
</div>
<div class="input-below"><?php _se('Button color scheme'); ?></div>
@ -48,14 +50,14 @@
<div class="c9 phablet-c1">
<select type="text" name="auto-insert" id="auto-insert" class="text-input">
<?php
foreach (get_plugin()['embed'] as $k => $v) {
$attr = 'value="' . $k . '"';
if(!$k) {
$attr .= ' selected="selected"';
}
echo '<option ' . $attr . '>' . $v . '</option>' . "\n";
}
?>
foreach (get_plugin()['embed'] as $k => $v) {
$attr = 'value="' . $k . '"';
if (!$k) {
$attr .= ' selected="selected"';
}
echo '<option ' . $attr . '>' . $v . '</option>' . "\n";
}
?>
</select>
</div>
<div class="input-below"><?php _se('Embed codes that will be auto-inserted in editor box'); ?></div>
@ -79,7 +81,7 @@
</div>
<div class="clear-both">
<h3><?php _se('Advanced options'); ?></h3>
<p><?php _se('The plugin has a large set of additional options that allow full customization. You can use custom HTML, CSS, own color palette, set observers and more. Check the %d and the plugin source to get a better idea of these advanced options.', ['%d' => '<a href="https://chevereto.com/docs/pup" target="_blank">' . _s('documentation') . '</a>']); ?></p>
<p><?php _se('The plugin has a large set of additional options that allow full customization. You can use custom HTML, CSS, own color palette, set observers and more. Check the %d and the plugin source to get a better idea of these advanced options.', ['%d' => '<a href="https://v3-docs.chevereto.com/features/PUP.html" target="_blank">' . _s('documentation') . '</a>']); ?></p>
</div>
</div>
</div>

View File

@ -76,11 +76,11 @@
} ?></span><?php
if (is_owner() or is_admin() or (is_content_manager() && get_user()['is_content_manager'] == false)) {
?>
<a class="edit-link" href="<?php echo G\get_base_url(is_owner() ? 'settings/profile' : 'dashboard/user/' . get_user()['id']); ?>"><span class="icon-edit"></span><span><?php _se('Edit profile'); ?></span></a>
<a class="link link--edit" href="<?php echo G\get_base_url(is_owner() ? 'settings/profile' : 'dashboard/user/' . get_user()['id']); ?>"><span class="icon icon-edit"></span><span><?php _se('Edit'); ?></span></a>
<?php
if (!is_owner() and is_content_manager()) {
?>
<a class="delete-link margin-left-5" data-confirm="<?php _se("Do you really want to delete this user? This can't be undone."); ?>" data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url="<?php echo G\get_base_url("json"); ?>"><?php _se('Delete user'); ?></a>
<a class="link link--delete margin-left-5" data-confirm="<?php _se("Do you really want to delete this user? This can't be undone."); ?>" data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url="<?php echo G\get_base_url("json"); ?>"><span class="icon icon-remove"></span><span><?php _se('Delete'); ?></span></a>
<?php
} ?>
<?php

View File

@ -19,7 +19,7 @@ private static $installed = array (
'aliases' =>
array (
),
'reference' => '892dc79d4abe4d0139868de4b440739906564564',
'reference' => '3caf6fed1e50d46f50f1389384ea7c709586b0cd',
'name' => 'chevereto/chevereto-free',
),
'versions' =>
@ -31,7 +31,7 @@ private static $installed = array (
'aliases' =>
array (
),
'reference' => '892dc79d4abe4d0139868de4b440739906564564',
'reference' => '3caf6fed1e50d46f50f1389384ea7c709586b0cd',
),
'jbroadway/urlify' =>
array (
@ -53,12 +53,12 @@ private static $installed = array (
),
'phpmailer/phpmailer' =>
array (
'pretty_version' => 'v6.1.7',
'version' => '6.1.7.0',
'pretty_version' => 'v6.1.8',
'version' => '6.1.8.0',
'aliases' =>
array (
),
'reference' => '2c2370ba3df7034f9eb7b8f387c97b52b2ba5ad0',
'reference' => '917ab212fa00dc6eacbb26e8bc387ebe40993bc1',
),
'tijsverkoyen/akismet' =>
array (

View File

@ -117,22 +117,23 @@
},
{
"name": "phpmailer/phpmailer",
"version": "v6.1.7",
"version_normalized": "6.1.7.0",
"version": "v6.1.8",
"version_normalized": "6.1.8.0",
"source": {
"type": "git",
"url": "https://github.com/PHPMailer/PHPMailer.git",
"reference": "2c2370ba3df7034f9eb7b8f387c97b52b2ba5ad0"
"reference": "917ab212fa00dc6eacbb26e8bc387ebe40993bc1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/2c2370ba3df7034f9eb7b8f387c97b52b2ba5ad0",
"reference": "2c2370ba3df7034f9eb7b8f387c97b52b2ba5ad0",
"url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/917ab212fa00dc6eacbb26e8bc387ebe40993bc1",
"reference": "917ab212fa00dc6eacbb26e8bc387ebe40993bc1",
"shasum": ""
},
"require": {
"ext-ctype": "*",
"ext-filter": "*",
"ext-hash": "*",
"php": ">=5.5.0"
},
"require-dev": {
@ -148,7 +149,7 @@
"stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication",
"symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)"
},
"time": "2020-07-14T18:50:27+00:00",
"time": "2020-10-09T14:55:58+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@ -180,7 +181,7 @@
"description": "PHPMailer is a full-featured email creation and transfer class for PHP",
"support": {
"issues": "https://github.com/PHPMailer/PHPMailer/issues",
"source": "https://github.com/PHPMailer/PHPMailer/tree/v6.1.7"
"source": "https://github.com/PHPMailer/PHPMailer/tree/v6.1.8"
},
"funding": [
{

View File

@ -6,7 +6,7 @@
'aliases' =>
array (
),
'reference' => '892dc79d4abe4d0139868de4b440739906564564',
'reference' => '3caf6fed1e50d46f50f1389384ea7c709586b0cd',
'name' => 'chevereto/chevereto-free',
),
'versions' =>
@ -18,7 +18,7 @@
'aliases' =>
array (
),
'reference' => '892dc79d4abe4d0139868de4b440739906564564',
'reference' => '3caf6fed1e50d46f50f1389384ea7c709586b0cd',
),
'jbroadway/urlify' =>
array (
@ -40,12 +40,12 @@
),
'phpmailer/phpmailer' =>
array (
'pretty_version' => 'v6.1.7',
'version' => '6.1.7.0',
'pretty_version' => 'v6.1.8',
'version' => '6.1.8.0',
'aliases' =>
array (
),
'reference' => '2c2370ba3df7034f9eb7b8f387c97b52b2ba5ad0',
'reference' => '917ab212fa00dc6eacbb26e8bc387ebe40993bc1',
),
'tijsverkoyen/akismet' =>
array (

View File

@ -12,6 +12,7 @@ $missingExtensions = array();
extension_loaded('ctype') || $missingExtensions[] = 'ctype';
extension_loaded('curl') || $missingExtensions[] = 'curl';
extension_loaded('filter') || $missingExtensions[] = 'filter';
extension_loaded('hash') || $missingExtensions[] = 'hash';
if ($missingExtensions) {
$issues[] = 'Your Composer dependencies require the following PHP extensions to be installed: ' . implode(', ', $missingExtensions);

View File

@ -1 +1 @@
6.1.7
6.1.8

View File

@ -28,7 +28,8 @@
"require": {
"php": ">=5.5.0",
"ext-ctype": "*",
"ext-filter": "*"
"ext-filter": "*",
"ext-hash": "*"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^2.2",

View File

@ -8,7 +8,7 @@
* @author Jim Jagielski (jimjag) <jimjag@gmail.com>
* @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
* @author Brent R. Matzelle (original founder)
* @copyright 2012 - 2017 Marcus Bointon
* @copyright 2012 - 2020 Marcus Bointon
* @copyright 2010 - 2012 Jim Jagielski
* @copyright 2004 - 2009 Andy Prevost
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License

View File

@ -15,6 +15,8 @@ $PHPMAILER_LANG['file_open'] = 'Dateifehler: Konnte folgende Datei ni
$PHPMAILER_LANG['from_failed'] = 'Die folgende Absenderadresse ist nicht korrekt: ';
$PHPMAILER_LANG['instantiate'] = 'Mail-Funktion konnte nicht initialisiert werden.';
$PHPMAILER_LANG['invalid_address'] = 'Die Adresse ist ungültig: ';
$PHPMAILER_LANG['invalid_hostentry'] = 'Ungültiger Hosteintrag: ';
$PHPMAILER_LANG['invalid_host'] = 'Ungültiger Host: ';
$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wird nicht unterstützt.';
$PHPMAILER_LANG['provide_address'] = 'Bitte geben Sie mindestens eine Empfängeradresse an.';
$PHPMAILER_LANG['recipients_failed'] = 'SMTP-Fehler: Die folgenden Empfänger sind nicht korrekt: ';

View File

@ -4,6 +4,7 @@
* @package PHPMailer
* @author Cecep Prawiro <cecep.prawiro@gmail.com>
* @author @januridp
* @author Ian Mustafa <mail@ianmustafa.com>
*/
$PHPMAILER_LANG['authenticate'] = 'Kesalahan SMTP: Tidak dapat mengotentikasi.';
@ -11,17 +12,19 @@ $PHPMAILER_LANG['connect_host'] = 'Kesalahan SMTP: Tidak dapat terhubung
$PHPMAILER_LANG['data_not_accepted'] = 'Kesalahan SMTP: Data tidak diterima.';
$PHPMAILER_LANG['empty_message'] = 'Isi pesan kosong';
$PHPMAILER_LANG['encoding'] = 'Pengkodean karakter tidak dikenali: ';
$PHPMAILER_LANG['execute'] = 'Tidak dapat menjalankan proses : ';
$PHPMAILER_LANG['file_access'] = 'Tidak dapat mengakses berkas : ';
$PHPMAILER_LANG['file_open'] = 'Kesalahan File: Berkas tidak dapat dibuka : ';
$PHPMAILER_LANG['from_failed'] = 'Alamat pengirim berikut mengakibatkan kesalahan : ';
$PHPMAILER_LANG['instantiate'] = 'Tidak dapat menginisialisasi fungsi surel';
$PHPMAILER_LANG['invalid_address'] = 'Gagal terkirim, alamat surel tidak benar : ';
$PHPMAILER_LANG['provide_address'] = 'Harus disediakan minimal satu alamat tujuan';
$PHPMAILER_LANG['execute'] = 'Tidak dapat menjalankan proses: ';
$PHPMAILER_LANG['file_access'] = 'Tidak dapat mengakses berkas: ';
$PHPMAILER_LANG['file_open'] = 'Kesalahan Berkas: Berkas tidak dapat dibuka: ';
$PHPMAILER_LANG['from_failed'] = 'Alamat pengirim berikut mengakibatkan kesalahan: ';
$PHPMAILER_LANG['instantiate'] = 'Tidak dapat menginisialisasi fungsi surel.';
$PHPMAILER_LANG['invalid_address'] = 'Gagal terkirim, alamat surel tidak sesuai: ';
$PHPMAILER_LANG['invalid_hostentry'] = 'Gagal terkirim, entri host tidak sesuai: ';
$PHPMAILER_LANG['invalid_host'] = 'Gagal terkirim, host tidak sesuai: ';
$PHPMAILER_LANG['provide_address'] = 'Harus tersedia minimal satu alamat tujuan';
$PHPMAILER_LANG['mailer_not_supported'] = ' mailer tidak didukung';
$PHPMAILER_LANG['recipients_failed'] = 'Kesalahan SMTP: Alamat tujuan berikut menghasilkan kesalahan : ';
$PHPMAILER_LANG['signing'] = 'Kesalahan dalam tanda tangan : ';
$PHPMAILER_LANG['recipients_failed'] = 'Kesalahan SMTP: Alamat tujuan berikut menyebabkan kesalahan: ';
$PHPMAILER_LANG['signing'] = 'Kesalahan dalam penandatangan SSL: ';
$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() gagal.';
$PHPMAILER_LANG['smtp_error'] = 'Kesalahan pada pelayan SMTP : ';
$PHPMAILER_LANG['variable_set'] = 'Tidak dapat mengatur atau mengatur ulang variable : ';
$PHPMAILER_LANG['extension_missing'] = 'Ekstensi hilang: ';
$PHPMAILER_LANG['smtp_error'] = 'Kesalahan pada pelayan SMTP: ';
$PHPMAILER_LANG['variable_set'] = 'Tidak dapat mengatur atau mengatur ulang variabel: ';
$PHPMAILER_LANG['extension_missing'] = 'Ekstensi PHP tidak tersedia: ';

View File

@ -3,25 +3,25 @@
* Tagalog PHPMailer language file: refer to English translation for definitive list
*
* @package PHPMailer
* @author Adriane Justine Tan <adrianetan12@gmail.com>
* @author Adriane Justine Tan <eidoriantan@gmail.com>
*/
$PHPMAILER_LANG['authenticate'] = 'SMTP Error: Hindi mapatotohanan.';
$PHPMAILER_LANG['connect_host'] = 'SMTP Error: Hindi makakonekta sa SMTP host.';
$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: Ang datos ay hindi maaaring matatanggap.';
$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: Ang datos ay hindi naitanggap.';
$PHPMAILER_LANG['empty_message'] = 'Walang laman ang mensahe';
$PHPMAILER_LANG['encoding'] = 'Hindi alam ang encoding: ';
$PHPMAILER_LANG['execute'] = 'Hindi maisasagawa: ';
$PHPMAILER_LANG['file_access'] = 'Hindi ma-access ang file: ';
$PHPMAILER_LANG['file_open'] = 'Hindi mabuksan ang file: ';
$PHPMAILER_LANG['file_open'] = 'File Error: Hindi mabuksan ang file: ';
$PHPMAILER_LANG['from_failed'] = 'Ang sumusunod na address ay nabigo: ';
$PHPMAILER_LANG['instantiate'] = 'Hindi maaaring magbigay ng institusyon ang mail';
$PHPMAILER_LANG['instantiate'] = 'Hindi maisimulan ang instance ng mail function.';
$PHPMAILER_LANG['invalid_address'] = 'Hindi wasto ang address na naibigay: ';
$PHPMAILER_LANG['mailer_not_supported'] = 'Ang mailer ay hindi suportado';
$PHPMAILER_LANG['provide_address'] = 'Kailangan mong magbigay ng kahit isang email address na tatanggap';
$PHPMAILER_LANG['mailer_not_supported'] = 'Ang mailer ay hindi suportado.';
$PHPMAILER_LANG['provide_address'] = 'Kailangan mong magbigay ng kahit isang email address na tatanggap.';
$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: Ang mga sumusunod na tatanggap ay nabigo: ';
$PHPMAILER_LANG['signing'] = 'Hindi ma-sign';
$PHPMAILER_LANG['smtp_connect_failed'] = 'Ang SMTP connect() ay nabigo';
$PHPMAILER_LANG['smtp_error'] = 'Ang server ng SMTP ay nabigo';
$PHPMAILER_LANG['variable_set'] = 'Hindi matatakda ang mga variables: ';
$PHPMAILER_LANG['extension_missing'] = 'Nawawala ang extension';
$PHPMAILER_LANG['signing'] = 'Hindi ma-sign: ';
$PHPMAILER_LANG['smtp_connect_failed'] = 'Ang SMTP connect() ay nabigo.';
$PHPMAILER_LANG['smtp_error'] = 'Ang server ng SMTP ay nabigo: ';
$PHPMAILER_LANG['variable_set'] = 'Hindi matatakda o ma-reset ang mga variables: ';
$PHPMAILER_LANG['extension_missing'] = 'Nawawala ang extension: ';

View File

@ -9,7 +9,7 @@
* @author Jim Jagielski (jimjag) <jimjag@gmail.com>
* @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
* @author Brent R. Matzelle (original founder)
* @copyright 2012 - 2017 Marcus Bointon
* @copyright 2012 - 2020 Marcus Bointon
* @copyright 2010 - 2012 Jim Jagielski
* @copyright 2004 - 2009 Andy Prevost
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License

View File

@ -9,7 +9,7 @@
* @author Jim Jagielski (jimjag) <jimjag@gmail.com>
* @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
* @author Brent R. Matzelle (original founder)
* @copyright 2012 - 2015 Marcus Bointon
* @copyright 2012 - 2020 Marcus Bointon
* @copyright 2010 - 2012 Jim Jagielski
* @copyright 2004 - 2009 Andy Prevost
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License

View File

@ -9,7 +9,7 @@
* @author Jim Jagielski (jimjag) <jimjag@gmail.com>
* @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
* @author Brent R. Matzelle (original founder)
* @copyright 2012 - 2019 Marcus Bointon
* @copyright 2012 - 2020 Marcus Bointon
* @copyright 2010 - 2012 Jim Jagielski
* @copyright 2004 - 2009 Andy Prevost
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
@ -747,7 +747,7 @@ class PHPMailer
*
* @var string
*/
const VERSION = '6.1.7';
const VERSION = '6.1.8';
/**
* Error severity: message only, continue processing.
@ -899,6 +899,7 @@ class PHPMailer
switch ($this->Debugoutput) {
case 'error_log':
//Don't output, just log
/** @noinspection ForgottenDebugOutputInspection */
error_log($str);
break;
case 'html':
@ -1350,7 +1351,7 @@ class PHPMailer
/*
* This is the pattern used in the HTML5 spec for validation of 'email' type form input elements.
*
* @see http://www.whatwg.org/specs/web-apps/current-work/#e-mail-state-(type=email)
* @see https://html.spec.whatwg.org/#e-mail-state-(type=email)
*/
return (bool) preg_match(
'/^[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}' .
@ -1609,6 +1610,9 @@ class PHPMailer
return $this->mailSend($this->MIMEHeader, $this->MIMEBody);
}
} catch (Exception $exc) {
if ($this->Mailer === 'smtp' && $this->SMTPKeepAlive == true) {
$this->smtp->reset();
}
$this->setError($exc->getMessage());
$this->edebug($exc->getMessage());
if ($this->exceptions) {
@ -1749,6 +1753,23 @@ class PHPMailer
return !preg_match('#^[a-z]+://#i', $path);
}
/**
* Check whether a file path is safe, accessible, and readable.
*
* @param string $path A relative or absolute path to a file
*
* @return bool
*/
protected static function fileIsAccessible($path)
{
$readable = file_exists($path);
//If not a UNC path (expected to start with \\), check read permission, see #2069
if (strpos($path, '\\\\') !== 0) {
$readable = $readable && is_readable($path);
}
return static::isPermittedPath($path) && $readable;
}
/**
* Send mail using the PHP mail() function.
*
@ -2002,7 +2023,12 @@ class PHPMailer
}
$host = $hostinfo[2];
$port = $this->Port;
if (array_key_exists(3, $hostinfo) && is_numeric($hostinfo[3]) && $hostinfo[3] > 0 && $hostinfo[3] < 65536) {
if (
array_key_exists(3, $hostinfo) &&
is_numeric($hostinfo[3]) &&
$hostinfo[3] > 0 &&
$hostinfo[3] < 65536
) {
$port = (int) $hostinfo[3];
}
if ($this->smtp->connect($prefix . $host, $port, $this->Timeout, $options)) {
@ -2132,7 +2158,7 @@ class PHPMailer
// There is no English translation file
if ('en' !== $langcode) {
// Make sure language file path is readable
if (!static::isPermittedPath($lang_file) || !file_exists($lang_file)) {
if (!static::fileIsAccessible($lang_file)) {
$foundlang = false;
} else {
// Overwrite language-specific strings.
@ -2380,21 +2406,18 @@ class PHPMailer
$result .= $this->headerLine('Date', '' === $this->MessageDate ? self::rfcDate() : $this->MessageDate);
// To be created automatically by mail()
if ($this->SingleTo) {
if ('mail' !== $this->Mailer) {
// The To header is created automatically by mail(), so needs to be omitted here
if ('mail' !== $this->Mailer) {
if ($this->SingleTo) {
foreach ($this->to as $toaddr) {
$this->SingleToArray[] = $this->addrFormat($toaddr);
}
}
} elseif (count($this->to) > 0) {
if ('mail' !== $this->Mailer) {
} elseif (count($this->to) > 0) {
$result .= $this->addrAppend('To', $this->to);
} elseif (count($this->cc) === 0) {
$result .= $this->headerLine('To', 'undisclosed-recipients:;');
}
} elseif (count($this->cc) === 0) {
$result .= $this->headerLine('To', 'undisclosed-recipients:;');
}
$result .= $this->addrAppend('From', [[trim($this->From), $this->FromName]]);
// sendmail and mail() extract Cc from the header before sending
@ -2949,7 +2972,7 @@ class PHPMailer
* @param string $path Path to the attachment
* @param string $name Overrides the attachment name
* @param string $encoding File encoding (see $Encoding)
* @param string $type File extension (MIME) type
* @param string $type MIME type, e.g. `image/jpeg`; determined automatically from $path if not specified
* @param string $disposition Disposition to use
*
* @throws Exception
@ -2964,7 +2987,7 @@ class PHPMailer
$disposition = 'attachment'
) {
try {
if (!static::isPermittedPath($path) || !@is_file($path) || !is_readable($path)) {
if (!static::fileIsAccessible($path)) {
throw new Exception($this->lang('file_access') . $path, self::STOP_CONTINUE);
}
@ -3138,7 +3161,7 @@ class PHPMailer
protected function encodeFile($path, $encoding = self::ENCODING_BASE64)
{
try {
if (!static::isPermittedPath($path) || !file_exists($path) || !is_readable($path)) {
if (!static::fileIsAccessible($path)) {
throw new Exception($this->lang('file_open') . $path, self::STOP_CONTINUE);
}
$file_buffer = file_get_contents($path);
@ -3524,7 +3547,7 @@ class PHPMailer
$disposition = 'inline'
) {
try {
if (!static::isPermittedPath($path) || !@is_file($path) || !is_readable($path)) {
if (!static::fileIsAccessible($path)) {
throw new Exception($this->lang('file_access') . $path, self::STOP_CONTINUE);
}
@ -4215,6 +4238,7 @@ class PHPMailer
'tiff' => 'image/tiff',
'tif' => 'image/tiff',
'webp' => 'image/webp',
'avif' => 'image/avif',
'heif' => 'image/heif',
'heifs' => 'image/heif-sequence',
'heic' => 'image/heic',

Some files were not shown because too many files have changed in this diff Show More