Add per-event default photo sort setting with 6 options: - Upload Date (Newest/Oldest First) - Date Taken (Newest/Oldest First) — uses EXIF captured_at - Filename (A-Z / Z-A) Backend: - Migration 077 adds default_photo_sort column to events table - Event create/update handlers accept and validate the setting - Gallery info endpoint returns default_photo_sort for frontend Frontend: - "Date Taken" added to gallery sort dropdown (alongside Date, Name, Size, Rating) - Gallery initializes with event's default sort instead of hardcoded "date" - "Default Photo Sort" dropdown in event create and edit forms - Photos without EXIF dates fall back to upload date i18n: All 5 locales (EN, DE, NL, PT, RU) updated with sort labels. Closes #283
2411 lines
114 KiB
JSON
2411 lines
114 KiB
JSON
{
|
||
"userManagement": {
|
||
"title": "Gerenciamento de Usuários",
|
||
"subtitle": "Gerencie usuários administradores e convites",
|
||
"loading": "Carregando usuários...",
|
||
"loadError": "Falha ao carregar usuários. Por favor, tente novamente.",
|
||
"inviteUser": "Convidar Usuário",
|
||
"createInvitation": "Criar Convite",
|
||
"email": "Endereço de email",
|
||
"emailPlaceholder": "[email protected]",
|
||
"role": "Função",
|
||
"selectRole": "Selecione uma função",
|
||
"sendInvitation": "Enviar Convite",
|
||
"editUser": "Editar Usuário",
|
||
"editingUser": "Editando usuário",
|
||
"saveChanges": "Salvar Alterações",
|
||
"deactivateUser": "Desativar Usuário",
|
||
"cancelInvitation": "Cancelar Convite",
|
||
"invitationSent": "Convite enviado com sucesso",
|
||
"invitationError": "Falha ao enviar convite",
|
||
"invitationCancelled": "Convite cancelado",
|
||
"cancelInvitationError": "Falha ao cancelar convite",
|
||
"userUpdated": "Usuário atualizado com sucesso",
|
||
"updateUserError": "Falha ao atualizar usuário",
|
||
"userDeactivated": "Usuário desativado com sucesso",
|
||
"deactivateUserError": "Falha ao desativar usuário",
|
||
"noRole": "Sem Função",
|
||
"neverLoggedIn": "Nunca fez login",
|
||
"expired": "Expirado",
|
||
"deactivate": "Desativar",
|
||
"cancel": "Cancelar",
|
||
"tabs": {
|
||
"users": "Usuários",
|
||
"invitations": "Convites"
|
||
},
|
||
"stats": {
|
||
"totalUsers": "Total de Usuários",
|
||
"activeUsers": "Usuários Ativos",
|
||
"pendingInvitations": "Convites Pendentes",
|
||
"inactiveUsers": "Usuários Inativos"
|
||
},
|
||
"status": {
|
||
"active": "Ativo",
|
||
"inactive": "Inativo"
|
||
},
|
||
"table": {
|
||
"user": "Usuário",
|
||
"email": "Email",
|
||
"role": "Função",
|
||
"status": "Status",
|
||
"lastLogin": "Último Login",
|
||
"actions": "Ações",
|
||
"invitedBy": "Convidado Por",
|
||
"expires": "Expira"
|
||
},
|
||
"validation": {
|
||
"emailRequired": "Email é obrigatório",
|
||
"emailInvalid": "Formato de email inválido",
|
||
"roleRequired": "Função é obrigatória"
|
||
},
|
||
"searchUsersPlaceholder": "Buscar usuários...",
|
||
"searchInvitationsPlaceholder": "Buscar convites...",
|
||
"noUsers": "Nenhum usuário encontrado",
|
||
"noUsersFound": "Nenhum usuário corresponde à sua busca",
|
||
"noInvitations": "Nenhum convite pendente",
|
||
"noInvitationsFound": "Nenhum convite corresponde à sua busca",
|
||
"confirmDeactivate": {
|
||
"title": "Desativar Usuário",
|
||
"message": "Tem certeza que deseja desativar {{name}}? Ele(a) não poderá mais fazer login."
|
||
},
|
||
"confirmCancelInvitation": {
|
||
"title": "Cancelar Convite",
|
||
"message": "Tem certeza que deseja cancelar o convite para {{email}}?"
|
||
}
|
||
},
|
||
"common": {
|
||
"loading": "Carregando...",
|
||
"error": "Erro",
|
||
"save": "Salvar",
|
||
"cancel": "Cancelar",
|
||
"delete": "Excluir",
|
||
"edit": "Editar",
|
||
"add": "Adicionar",
|
||
"search": "Buscar",
|
||
"filter": "Filtrar",
|
||
"sortBy": "Ordenar por",
|
||
"yes": "Sim",
|
||
"no": "Não",
|
||
"back": "Voltar",
|
||
"next": "Próximo",
|
||
"previous": "Anterior",
|
||
"close": "Fechar",
|
||
"logout": "Sair",
|
||
"menu": "Menu",
|
||
"change": "Alterar",
|
||
"remove": "Remover",
|
||
"download": "Baixar",
|
||
"downloadAll": "Baixar Tudo",
|
||
"uploading": "Enviando...",
|
||
"uploaded": "Enviado",
|
||
"photo": "foto",
|
||
"photos": "fotos",
|
||
"video": "vídeo",
|
||
"videos": "vídeos",
|
||
"media": "mídia",
|
||
"restore": "Restaurar",
|
||
"actions": "Ações",
|
||
"refresh": "Atualizar",
|
||
"preview": "Pré-visualização",
|
||
"processing": "Processando...",
|
||
"upload": "Enviar",
|
||
"days": "dias",
|
||
"customize": "Personalizar",
|
||
"hide": "Ocultar",
|
||
"unknown": "Desconhecido",
|
||
"notSet": "Não definido",
|
||
"of": "de",
|
||
"up": "Cima",
|
||
"select": "Selecionar",
|
||
"selected": "Selecionado",
|
||
"chunk": "Lote",
|
||
"optional": "opcional"
|
||
},
|
||
"upload": {
|
||
"photoCategory": "Categoria da Foto",
|
||
"noCategory": "Sem categoria",
|
||
"eventSpecific": "(Específico do evento)",
|
||
"clickToUpload": "Clique para enviar ou arraste e solte",
|
||
"fileRequirements": "JPEG, PNG ou WebP (máx. 50MB por arquivo, {{limit}} arquivos por envio)",
|
||
"fileRequirementsMedia": "Imagens JPEG, PNG ou WebP, além de vídeos MP4/MOV/WEBM (máx. 50MB por arquivo, {{limit}} arquivos por envio)",
|
||
"unsupportedFiles": "Alguns arquivos foram ignorados porque o formato não é compatível (use JPEG/PNG/WebP/MP4/MOV/WEBM).",
|
||
"selectedFiles": "Arquivos selecionados",
|
||
"uploading": "Enviando...",
|
||
"uploadComplete": "Envio concluído!",
|
||
"uploadFailed": "Falha no envio",
|
||
"someFilesFailed": "Alguns arquivos falharam ao enviar",
|
||
"uploadPhotos": "Enviar Fotos",
|
||
"uploadMedia": "Enviar Fotos e Vídeos",
|
||
"importExternal": "Importar de Pasta Externa",
|
||
"externalImportInfo": "Todas as imagens da pasta selecionada serão importadas.",
|
||
"selectExternalFolder": "Selecionar pasta externa em /external-media",
|
||
"importFromSelectedFolder": "Importar da pasta selecionada",
|
||
"maxFilesReached": "Máximo de {{limit}} arquivos permitido",
|
||
"someFilesSkipped": "Apenas {{allowed}} arquivo(s) pode(m) ser adicionado(s) (limite {{limit}})",
|
||
"tooManyFiles": "Máximo de {{limit}} arquivos podem ser enviados de uma vez",
|
||
"limitInfo": "{{selected}} de {{limit}} arquivos selecionados ({{remaining}} restantes)",
|
||
"limitReached": "Limite de envio atingido ({{limit}} arquivos por lote)",
|
||
"uploadingChunks": "Enviando {{count}} arquivos em {{total}} lotes...",
|
||
"mediaCategory": "Categoria de mídia",
|
||
"uploadAction": "Enviar {{count}} arquivos"
|
||
},
|
||
"navigation": {
|
||
"dashboard": "Painel",
|
||
"events": "Eventos",
|
||
"archives": "Arquivos",
|
||
"settings": "Configurações",
|
||
"eventTypes": "Tipos de Evento",
|
||
"branding": "Identidade Visual",
|
||
"analytics": "Análises",
|
||
"emailSettings": "Configurações de Email",
|
||
"backup": "Backup e Restauração",
|
||
"cmsPages": "Páginas CMS",
|
||
"users": "Usuários"
|
||
},
|
||
"archives": {
|
||
"title": "Arquivos",
|
||
"subtitle": "Gerencie galerias de fotos arquivadas",
|
||
"loadingArchives": "Carregando arquivos...",
|
||
"totalArchives": "Total de Arquivos",
|
||
"storageUsed": "Armazenamento Usado",
|
||
"totalPhotos": "Total de Fotos",
|
||
"avgArchiveSize": "Tamanho Médio do Arquivo",
|
||
"searchPlaceholder": "Buscar arquivos...",
|
||
"allTypes": "Todos os Tipos",
|
||
"wedding": "Casamento",
|
||
"birthday": "Aniversário",
|
||
"corporate": "Corporativo",
|
||
"other": "Outro",
|
||
"sortByDate": "Ordenar por Data",
|
||
"sortByName": "Ordenar por Nome",
|
||
"sortBySize": "Ordenar por Tamanho",
|
||
"tableHeaders": {
|
||
"event": "Evento",
|
||
"type": "Tipo",
|
||
"archivedDate": "Data de Arquivo",
|
||
"size": "Tamanho",
|
||
"photos": "Fotos",
|
||
"actions": "Ações"
|
||
},
|
||
"noArchivesFound": "Nenhum arquivo encontrado",
|
||
"eventDateNA": "Data do evento: N/D",
|
||
"processing": "Processando...",
|
||
"download": "Baixar",
|
||
"restore": "Restaurar",
|
||
"delete": "Excluir",
|
||
"showing": "Exibindo {{from}} a {{to}} de {{total}} arquivos",
|
||
"page": "Página {{current}} de {{total}}",
|
||
"storageManagement": "Gerenciamento de Armazenamento",
|
||
"storageInfo": "Os arquivos são armazenados permanentemente, a menos que sejam excluídos manualmente. Considere implementar uma política de retenção para gerenciar os custos de armazenamento.",
|
||
"confirmRestore": "Tem certeza que deseja restaurar este arquivo? O evento ficará ativo novamente.",
|
||
"confirmDelete": "Tem certeza que deseja excluir permanentemente este arquivo? Esta ação não pode ser desfeita.",
|
||
"restoreSuccess": "Arquivo restaurado com sucesso",
|
||
"deleteSuccess": "Arquivo excluído permanentemente"
|
||
},
|
||
"auth": {
|
||
"login": "Entrar",
|
||
"password": "Senha",
|
||
"enterPassword": "Digite a Senha da Galeria",
|
||
"passwordPlaceholder": "Digite a senha da galeria",
|
||
"invalidPassword": "Senha inválida",
|
||
"wrongPassword": "Senha incorreta. Por favor, verifique sua senha e tente novamente.",
|
||
"tooManyAttempts": "Muitas tentativas de login malsucedidas. Por favor, tente novamente mais tarde.",
|
||
"sessionExpired": "Sessão expirada",
|
||
"pleaseEnterPassword": "Por favor, digite uma senha",
|
||
"passwordHint": "A senha foi fornecida pelo organizador do evento. Entre em contato com ele se você não a tiver."
|
||
},
|
||
"gallery": {
|
||
"title": "Galeria de Fotos",
|
||
"welcomeMessage": "Mensagem de Boas-vindas",
|
||
"expiresOn": "Expira em",
|
||
"expires": "Expira",
|
||
"expired": "Expirado",
|
||
"daysRemaining": "{{days}} dias restantes",
|
||
"dayRemaining": "1 dia restante",
|
||
"hoursRemaining": "{{hours}} horas restantes",
|
||
"expiredMessage": "Esta galeria expirou em {{date}}",
|
||
"contactOrganizer": "Por favor, entre em contato com o organizador do evento se precisar de acesso a essas fotos.",
|
||
"searchPhotos": "Buscar fotos por nome de arquivo...",
|
||
"sortByDate": "Ordenar por Data",
|
||
"sortByName": "Ordenar por Nome",
|
||
"sortBySize": "Ordenar por Tamanho",
|
||
"allPhotos": "Todas as Fotos",
|
||
"filter": "Filtrar",
|
||
"feedbackFilter": "Filtro de Feedback",
|
||
"all": "Todas",
|
||
"liked": "Curtidas",
|
||
"favorited": "Favoritadas",
|
||
"favorites": "Favoritos",
|
||
"downloadSelected": "Baixar {{count}} Selecionadas",
|
||
"shareGallery": "Compartilhar Galeria",
|
||
"needHelp": "Precisa de ajuda? Entre em contato em",
|
||
"noPhotosFound": "Nenhuma foto encontrada",
|
||
"failedToLoad": "Falha ao carregar fotos",
|
||
"tryAgain": "Tentar Novamente",
|
||
"loading": "Carregando galeria...",
|
||
"expiredOn": "Esta galeria expirou em {{date}}.",
|
||
"expiresIn": "A galeria expira em {{count}} dia",
|
||
"expiresIn_plural": "A galeria expira em {{count}} dias",
|
||
"downloadBefore": "Baixe suas fotos antes que elas não estejam mais disponíveis.",
|
||
"publicGalleryTitle": "Esta galeria é de acesso público",
|
||
"publicGallerySubtitle": "Carregando as fotos agora...",
|
||
"viewGallery": "Ver Galeria",
|
||
"downloadAll": "Baixar Tudo",
|
||
"downloading": "Baixando {{count}} foto...",
|
||
"downloading_plural": "Baixando {{count}} fotos...",
|
||
"downloadedPhotos": "{{count}} foto baixada!",
|
||
"downloadedPhotos_plural": "{{count}} fotos baixadas!",
|
||
"downloadError": "Algumas fotos falharam ao baixar",
|
||
"selectPhotos": "Selecionar Fotos",
|
||
"cancelSelection": "Cancelar Seleção",
|
||
"photosSelected": "{{count}} selecionadas",
|
||
"selectAll": "Selecionar Tudo",
|
||
"deselectAll": "Desmarcar Tudo",
|
||
"deleteSelected": "Excluir Selecionadas",
|
||
"photosCount": "{{count}} foto",
|
||
"photosCount_plural": "{{count}} fotos",
|
||
"searchByFilename": "Buscar por nome de arquivo...",
|
||
"uncategorized": "Sem categoria",
|
||
"sortAscending": "Ordenar crescente",
|
||
"sortDescending": "Ordenar decrescente",
|
||
"remaining": "restantes",
|
||
"selectPhotosHint": "Dica: Use Ctrl+Clique (Cmd+Clique no Mac) para selecionar várias fotos rapidamente",
|
||
"filters": "Filtros",
|
||
"openFilters": "Abrir filtros",
|
||
"toggleSidebar": "Alternar barra lateral",
|
||
"toggleMenu": "Alternar menu",
|
||
"allCategories": "Todas as Categorias",
|
||
"categories": "Categorias",
|
||
"mediaType": "Mídia",
|
||
"allMedia": "Toda a mídia",
|
||
"photosOnly": "Fotos",
|
||
"videosOnly": "Vídeos",
|
||
"download": "Baixar",
|
||
"noMedia": "Nenhuma mídia enviada ainda",
|
||
"searchPlaceholder": "Buscar fotos...",
|
||
"sortBy": "Ordenar Por",
|
||
"sortByCaptureDate": "Ordenar por Data de Captura",
|
||
"sortByRating": "Ordenar por Avaliação",
|
||
"photoGallery": "Galeria de Fotos",
|
||
"photos": "Fotos",
|
||
"allRightsReserved": "Todos os direitos reservados",
|
||
"searchMemories": "Buscar memórias...",
|
||
"thankYou": "Obrigado",
|
||
"thankYouMessage": "Por fazer parte da nossa história e tornar nosso dia especial inesquecível.",
|
||
"feedback": {
|
||
"title": "Feedback",
|
||
"shareThoughts": "Compartilhe sua opinião sobre \"{{name}}\"",
|
||
"rateThisMoment": "Avalie este momento",
|
||
"comments": "Comentários",
|
||
"noComments": "Nenhum comentário ainda. Seja o primeiro!",
|
||
"yourName": "Seu nome",
|
||
"yourEmail": "Seu email",
|
||
"writeLovelyNote": "Escreva uma mensagem carinhosa...",
|
||
"postComment": "Publicar Comentário",
|
||
"anonymous": "Anônimo"
|
||
},
|
||
"rated": "Avaliado",
|
||
"commented": "Comentado"
|
||
},
|
||
"categories": {
|
||
"title": "Categorias de Fotos",
|
||
"global": "Categorias Globais",
|
||
"eventSpecific": "Categorias Específicas do Evento",
|
||
"addCategory": "Adicionar Categoria",
|
||
"organizationInfo": "Organize suas fotos em categorias. As categorias ajudam os convidados a navegar e encontrar tipos específicos de fotos.",
|
||
"eventSpecificCategories": "Categorias Específicas do Evento",
|
||
"noEventSpecificCategories": "Sem categorias específicas do evento. As categorias globais estão disponíveis por padrão.",
|
||
"globalCategoriesAlwaysAvailable": "Categorias Globais (sempre disponíveis):",
|
||
"deleteCategoryTitle": "Excluir categoria",
|
||
"categoryCreatedSuccess": "Categoria criada com sucesso",
|
||
"categoryDeletedSuccess": "Categoria excluída com sucesso",
|
||
"failedToCreateCategory": "Falha ao criar categoria",
|
||
"failedToDeleteCategory": "Falha ao excluir categoria",
|
||
"categoryName": "Nome da categoria",
|
||
"noCategory": "Sem categoria",
|
||
"noCategoriesYet": "Nenhuma categoria ainda. Crie sua primeira categoria para organizar as fotos.",
|
||
"deleteConfirm": "Tem certeza de que deseja excluir \"{{name}}\"?",
|
||
"cannotDelete": "Não é possível excluir uma categoria com fotos. Reatribua as fotos primeiro.",
|
||
"setCoverPhoto": "Definir Foto de Capa",
|
||
"removeCoverPhoto": "Remover Foto de Capa",
|
||
"coverPhotoSet": "Foto de capa definida com sucesso",
|
||
"coverPhotoRemoved": "Foto de capa removida",
|
||
"failedToSetCoverPhoto": "Falha ao definir foto de capa",
|
||
"categoryHeroHint": "Se nenhuma foto de capa for definida para uma categoria, a foto hero padrão será utilizada."
|
||
},
|
||
"events": {
|
||
"title": "Eventos",
|
||
"create": "Criar",
|
||
"createEvent": "Criar Evento",
|
||
"totalViews": "Total de Visualizações",
|
||
"totalDownloads": "Total de Downloads",
|
||
"uniqueVisitors": "Visitantes Únicos",
|
||
"createNewEvent": "Criar Novo Evento",
|
||
"setupNewGallery": "Configure uma nova galeria de fotos para seu evento",
|
||
"createNewEventSubtitle": "Configure uma nova galeria de fotos para seu evento",
|
||
"eventNamePlaceholder": "Ex.: Casamento de João e Maria",
|
||
"welcomeMessageOptional": "Mensagem de Boas-Vindas (Opcional)",
|
||
"welcomeMessagePlaceholder": "Bem-vindo(a) ao nosso dia especial! Sinta-se à vontade para baixar e compartilhar essas memórias...",
|
||
"hostEmailPlaceholder": "[email protected]",
|
||
"adminEmailPlaceholder": "[email protected]",
|
||
"securityAndAccess": "Segurança e Acesso",
|
||
"accessAndSecurity": "Acesso e Segurança",
|
||
"enterPassword": "Digite a senha",
|
||
"passwordPlaceholder": "Digite uma senha segura",
|
||
"confirmPasswordPlaceholder": "Confirme a senha",
|
||
"galleryExpiresOn": "A galeria expirará em {{date}}",
|
||
"guestsWillReceiveWarning": "Os convidados receberão um email de aviso 7 dias antes da expiração.",
|
||
"types": {
|
||
"wedding": "Casamento",
|
||
"birthday": "Aniversário",
|
||
"corporate": "Corporativo",
|
||
"other": "Outro"
|
||
},
|
||
"themes": {
|
||
"default": "Padrão",
|
||
"oceanBlue": "Azul Oceano",
|
||
"royalPurple": "Roxo Real",
|
||
"roseGold": "Ouro Rosé",
|
||
"sunsetAmber": "Âmbar Pôr do Sol"
|
||
},
|
||
"eventDetails": "Detalhes do Evento",
|
||
"eventName": "Nome do Evento",
|
||
"eventType": "Tipo de Evento",
|
||
"eventDate": "Data do Evento",
|
||
"hostEmail": "Email do Cliente",
|
||
"hostName": "Nome do Cliente",
|
||
"hostNamePlaceholder": "João Silva",
|
||
"adminEmail": "Email do Administrador",
|
||
"adminNotificationEmail": "Email de Notificação do Administrador",
|
||
"expirationDate": "Data de Expiração",
|
||
"active": "Ativo",
|
||
"archived": "Arquivado",
|
||
"photoCount": "{{count}} fotos",
|
||
"totalSize": "Tamanho Total",
|
||
"shareLink": "Link de Compartilhamento",
|
||
"copyLink": "Copiar Link",
|
||
"linkCopied": "Link copiado!",
|
||
"viewGallery": "Ver Galeria",
|
||
"uploadPhotos": "Enviar Fotos",
|
||
"archiveEvent": "Arquivar Evento",
|
||
"archiveConfirm": "Tem certeza de que deseja arquivar este evento? Esta ação não pode ser desfeita.",
|
||
"extendExpiration": "Estender {{days}} Dias",
|
||
"backToEvents": "Voltar aos Eventos",
|
||
"loadingEventDetails": "Carregando detalhes do evento...",
|
||
"saveChanges": "Salvar Alterações",
|
||
"eventExpired": "Este evento expirou",
|
||
"eventExpiresIn": "Este evento expira em {{days}} dias",
|
||
"guestsNoAccess": "Os convidados não podem mais acessar a galeria. Considere arquivar este evento.",
|
||
"warningEmailsSent": "Emails de aviso foram enviados ao cliente.",
|
||
"overview": "Visão Geral",
|
||
"photos": "Fotos",
|
||
"categories": "Categorias",
|
||
"eventInformation": "Informações do Evento",
|
||
"sourceMode": "Modo de Origem",
|
||
"sourceModeManaged": "Gerenciado (enviar para o PicPeak)",
|
||
"sourceModeReference": "Referenciar pasta externa",
|
||
"sourceModeHelp": "Use o modo gerenciado para uploads diretos ou aponte para uma pasta /external-media montada ao usar armazenamento local.",
|
||
"externalFolder": "Pasta Externa",
|
||
"externalFolderHint": "Essas pastas são lidas do ponto de montagem /external-media dentro do seu container ou host.",
|
||
"externalFolderRequired": "Selecione uma pasta externa antes de salvar.",
|
||
"welcomeMessage": "Mensagem de Boas-Vindas",
|
||
"noWelcomeMessage": "Nenhuma mensagem de boas-vindas definida",
|
||
"created": "Criado",
|
||
"expires": "Expira",
|
||
"shareWithGuests": "Compartilhe este link com os convidados. Eles precisarão da senha para acessar a galeria.",
|
||
"shareWithGuestsPublic": "Compartilhe este link com os convidados. Nenhuma senha é necessária para esta galeria.",
|
||
"resetGalleryPassword": "Redefinir Senha da Galeria",
|
||
"resendCreationEmail": "Reenviar Email de Criação",
|
||
"creationEmailResent": "Email de criação foi colocado na fila para envio",
|
||
"failedToResendEmail": "Falha ao reenviar email de criação",
|
||
"photoStatistics": "Estatísticas de Fotos",
|
||
"totalPhotos": "Total de Fotos",
|
||
"managePhotos": "Gerenciar Fotos",
|
||
"actions": "Ações",
|
||
"archivingInfo": "O arquivamento criará um arquivo ZIP de todas as fotos e removerá a galeria do acesso público.",
|
||
"statistics": "Estatísticas",
|
||
"views": "Visualizações",
|
||
"downloads": "Downloads",
|
||
"noStatistics": "Nenhuma estatística disponível ainda",
|
||
"archiveStatus": "Status do Arquivo",
|
||
"archivedOn": "Arquivado Em",
|
||
"downloadArchive": "Baixar Arquivo",
|
||
"loadingPhotos": "Carregando fotos...",
|
||
"photoCategories": "Categorias de Fotos",
|
||
"organizeCategoriesInfo": "Organize suas fotos em categorias. As categorias ajudam os convidados a navegar e encontrar tipos específicos de fotos.",
|
||
"categoriesTip": "Dica: As categorias são específicas para cada evento. Você pode criar categorias personalizadas como \"Cerimônia\", \"Recepção\", \"Retratos\", etc.",
|
||
"contactInformation": "Informações de Contato",
|
||
"hostEmailHelp": "O cliente receberá notificações de criação e expiração da galeria",
|
||
"adminEmailHelp": "Receberá notificações do sistema e confirmações de arquivamento",
|
||
"securityAccess": "Segurança e Acesso",
|
||
"galleryPassword": "Senha da Galeria",
|
||
"requirePasswordToggle": "Exigir senha para esta galeria",
|
||
"requirePasswordToggleHelp": "Desative isso se quiser compartilhar a galeria sem senha. Qualquer pessoa com o link poderá ver as fotos.",
|
||
"publicGalleryWarning": "Galerias públicas são acessíveis a qualquer pessoa com o link. Considere ativar marcas d'água nos downloads e monitorar a atividade.",
|
||
"passwordHelperText": "Você pode usar datas como \"04.07.2025\" ou qualquer texto com 6+ caracteres",
|
||
"confirmPassword": "Confirmar Senha",
|
||
"showPasswords": "Mostrar senhas",
|
||
"newPasswordLabel": "Nova Senha da Galeria",
|
||
"gallerySettings": "Configurações da Galeria",
|
||
"themeAndStyle": "Tema e Estilo",
|
||
"colorTheme": "Tema de Cores",
|
||
"galleryExpiration": "Expiração da Galeria",
|
||
"galleryExpiresIn": "A Galeria Expira Em",
|
||
"daysAfterEvent": "dias após a data do evento",
|
||
"expiresOn": "Expira em",
|
||
"galleryWillExpireOn": "A galeria expirará em {{date}}",
|
||
"expirationWarning": "Os convidados receberão um email de aviso 7 dias antes da expiração.",
|
||
"noExpiration": "Sem Expiração",
|
||
"noExpirationHelp": "Esta galeria permanecerá ativa até ser arquivada manualmente.",
|
||
"photoCap": "Limite de Fotos",
|
||
"photoCapHelp": "Número máximo de fotos permitidas. 0 = ilimitado",
|
||
"userUploads": "Configurações de Upload de Convidados",
|
||
"allowUserUploads": "Permitir que convidados enviem fotos",
|
||
"allowUserUploadsHelp": "Habilitar convidados a enviar suas próprias fotos para esta galeria",
|
||
"allowUserUploadsDescription": "Habilitar convidados a enviar suas próprias fotos para esta galeria",
|
||
"uploadCategory": "Categoria de Upload",
|
||
"selectCategory": "Selecione uma categoria para uploads de convidados",
|
||
"uploadCategoryHelp": "Todas as fotos enviadas por convidados serão adicionadas a esta categoria",
|
||
"userUploadWarning": "Os uploads de convidados serão moderados e podem ser removidos por administradores a qualquer momento.",
|
||
"allowDownloads": "Permitir download de fotos",
|
||
"allowDownloadsHelp": "Permitir que convidados baixem fotos desta galeria",
|
||
"downloadPermissions": "Permissões de Download",
|
||
"downloadsEnabled": "Downloads Habilitados",
|
||
"downloadsDisabled": "Downloads Desabilitados",
|
||
"downloadProtection": "Proteção de Download",
|
||
"disableRightClick": "Bloquear menu de contexto (botão direito)",
|
||
"watermarkDownloads": "Adicionar marca d'água aos downloads",
|
||
"enableDevtoolsProtection": "Detectar ferramentas do desenvolvedor",
|
||
"useCanvasRendering": "Renderização em canvas (proteção avançada)",
|
||
"protectionInfo": "Os recursos de proteção ajudam a evitar downloads não autorizados, mas não podem bloquear todos os métodos.",
|
||
"protectionLevelBasic": "Básico - Apenas bloqueio de clique direito",
|
||
"protectionLevelStandard": "Padrão - Atalhos de teclado bloqueados",
|
||
"protectionLevelEnhanced": "Aprimorado - Detecção de print screen",
|
||
"protectionLevelMaximum": "Máximo - Detecção de DevTools e renderização em canvas",
|
||
"heroLogoSettings": "Configurações do Logo Hero",
|
||
"heroLogoVisible": "Exibir logo na seção hero",
|
||
"heroLogoSize": "Tamanho do Logo",
|
||
"heroLogoSizeSmall": "Pequeno",
|
||
"heroLogoSizeMedium": "Médio",
|
||
"heroLogoSizeLarge": "Grande",
|
||
"heroLogoSizeXLarge": "Extra Grande",
|
||
"heroLogoPosition": "Posição do Logo",
|
||
"heroLogoPositionTop": "Topo (acima do título)",
|
||
"heroLogoPositionCenter": "Centro (entre o título e as datas)",
|
||
"heroLogoPositionBottom": "Rodapé (abaixo das datas)",
|
||
"heroLogoInfo": "Essas configurações se aplicam quando a galeria usa o layout Hero. Você pode ocultar o logo ou personalizar seu tamanho e posição.",
|
||
"eventCustomLogo": "Logo Personalizado do Evento",
|
||
"eventCustomLogoDescription": "Envie um logo personalizado para este evento. Isso substitui o logo de identidade visual global somente para esta galeria.",
|
||
"uploadEventLogo": "Enviar Logo",
|
||
"replaceLogo": "Substituir",
|
||
"removeLogo": "Remover",
|
||
"eventLogoUploaded": "Logo do evento enviado com sucesso",
|
||
"eventLogoUploadFailed": "Falha ao enviar logo do evento",
|
||
"eventLogoRemoved": "Logo do evento removido com sucesso",
|
||
"eventLogoRemoveFailed": "Falha ao remover logo do evento",
|
||
"heroLogoVisibleLabel": "Logo visível",
|
||
"heroLogoSizeLabel": "Tamanho",
|
||
"heroLogoPositionLabel": "Posição",
|
||
"heroLogoHidden": "Logo oculto",
|
||
"heroPhoto": "Foto Hero",
|
||
"heroPhotoHelp": "Selecione uma foto hero padrão para a galeria. Você pode substituí-la por categoria.",
|
||
"selectHeroPhoto": "Selecionar Foto Hero",
|
||
"noHeroPhotoSelected": "Nenhuma foto hero selecionada",
|
||
"heroPhotoSelected": "Foto hero selecionada",
|
||
"heroImageAnchor": "Posição de Corte da Imagem Hero",
|
||
"heroImageAnchorDescription": "Clique na imagem para definir o ponto focal do corte.",
|
||
"heroImageAnchorTop": "Topo",
|
||
"heroImageAnchorCenter": "Centro",
|
||
"heroImageAnchorBottom": "Rodapé",
|
||
"heroPreview": "Pré-visualização Hero",
|
||
"noPhotosAvailable": "Nenhuma foto disponível",
|
||
"processingRequest": "Processando sua solicitação...",
|
||
"eventTypeWedding": "Casamento",
|
||
"eventTypeBirthday": "Aniversário",
|
||
"eventTypeCorporate": "Corporativo",
|
||
"eventTypeOther": "Outro",
|
||
"days30": "30 dias",
|
||
"days60": "60 dias",
|
||
"days90": "90 dias",
|
||
"days365": "1 ano",
|
||
"inactive": "Inativo",
|
||
"expired": "Expirado",
|
||
"draft": "Rascunho",
|
||
"publishAndNotify": "Publicar e notificar cliente",
|
||
"publishConfirm": "Isso tornará a galeria acessível e enviará o e-mail de notificação ao cliente. Continuar?",
|
||
"publishSuccess": "Galeria publicada e cliente notificado!",
|
||
"draftBanner": "Esta galeria está em modo rascunho. Envie suas fotos e publique quando estiver pronto.",
|
||
"daysLeft": "({{count}} dia restante)",
|
||
"daysLeft_plural": "({{count}} dias restantes)",
|
||
"subtitle": "Gerencie suas galerias de fotos e eventos",
|
||
"loadingEvents": "Carregando eventos...",
|
||
"failedToLoadEvents": "Falha ao carregar eventos",
|
||
"tryAgain": "Tentar Novamente",
|
||
"bulkArchiveSuccess": "{{count}} eventos arquivados com sucesso",
|
||
"bulkArchivePartial": "{{success}} eventos arquivados, {{failed}} com falha",
|
||
"searchEventsPlaceholder": "Buscar eventos...",
|
||
"all": "Todos",
|
||
"expiring": "Expirando",
|
||
"eventsSelected": "{{count}} evento selecionado",
|
||
"eventsSelected_plural": "{{count}} eventos selecionados",
|
||
"clear": "Limpar",
|
||
"archiveSelected": "Arquivar Selecionados",
|
||
"publicAccess": "Acesso público",
|
||
"passwordProtected": "Protegido por senha",
|
||
"newPasswordRequired": "Por favor, defina uma senha antes de habilitar a proteção.",
|
||
"event": "Evento",
|
||
"type": "Tipo",
|
||
"date": "Data",
|
||
"status": "Status",
|
||
"noEventsFound": "Nenhum evento encontrado",
|
||
"stats": {
|
||
"totalEvents": "Total de Eventos",
|
||
"activeEvents": "Eventos Ativos",
|
||
"totalPhotos": "Total de Fotos",
|
||
"expiringEvents": "Expirando em Breve"
|
||
},
|
||
"viewDetails": "Ver Detalhes",
|
||
"archiveEventAction": "Arquivar Evento",
|
||
"downloadArchiveAction": "Baixar Arquivo",
|
||
"deleteEvent": "Excluir Evento",
|
||
"deleteEventConfirm": "Tem certeza de que deseja excluir este evento?",
|
||
"downloadArchiveSoon": "Download do arquivo em breve",
|
||
"eventExpiredMessage": "Este evento expirou",
|
||
"guestsCannotAccessGallery": "Os convidados não podem mais acessar a galeria. Considere arquivar este evento.",
|
||
"warningEmailsHaveBeenSent": "Emails de aviso foram enviados ao cliente.",
|
||
"extendSevenDays": "Estender 7 Dias",
|
||
"welcomeMessageLabel": "Mensagem de Boas-Vindas",
|
||
"noWelcomeMessageSet": "Nenhuma mensagem de boas-vindas definida",
|
||
"createdOn": "Criado",
|
||
"copy": "Copiar",
|
||
"copied": "Copiado!",
|
||
"organizingPhotosInfo": "Organize suas fotos em categorias. As categorias ajudam os convidados a navegar e encontrar tipos específicos de fotos.",
|
||
"archiveStatusTitle": "Status do Arquivo",
|
||
"downloadingArchive": "Baixando arquivo de {{name}}...",
|
||
"downloadStarted": "Download iniciado",
|
||
"failedToDownloadArchive": "Falha ao baixar arquivo",
|
||
"statisticsNotAvailable": "Nenhuma estatística disponível ainda",
|
||
"photoFilters": "Filtros de Fotos",
|
||
"noStatisticsAvailableYet": "Nenhuma estatística disponível ainda",
|
||
"addPlus": "Adicionar+",
|
||
"galleryTheme": "Tema da Galeria",
|
||
"customizeTheme": "Personalizar Tema",
|
||
"noThemeSet": "Nenhum tema configurado",
|
||
"customizingTheme": "Personalizando tema da galeria",
|
||
"customizingThemeFor": "Personalizando tema para {{event}}",
|
||
"customCssTemplate": "Modelo de CSS Personalizado",
|
||
"customCssTemplateDesc": "Aplique um modelo de CSS personalizado para estilizar a galeria com efeitos visuais únicos.",
|
||
"noTemplate": "Sem Modelo",
|
||
"useThemeOnly": "Usar apenas o tema predefinido",
|
||
"customTemplate": "Modelo Personalizado",
|
||
"rename": {
|
||
"button": "Renomear",
|
||
"title": "Renomear Evento",
|
||
"validating": "Validando novo nome...",
|
||
"renamingFiles": "Renomeando arquivos...",
|
||
"complete": "Concluído!",
|
||
"failed": "Falha ao renomear",
|
||
"filesRenamed": "{{count}} arquivos atualizados",
|
||
"confirm": "Renomear Evento"
|
||
},
|
||
"activeFilter": "Ativos",
|
||
"archivedFilter": "Arquivados",
|
||
"sortByName": "Por nome",
|
||
"sortByDate": "Por data",
|
||
"sortByExpiration": "Por expiração",
|
||
"photosCount": "Fotos",
|
||
"moreActions": "Mais ações",
|
||
"copyLinkTooltip": "Copiar link",
|
||
"viewGalleryTooltip": "Ver galeria",
|
||
"uploadPhotosTooltip": "Enviar fotos",
|
||
"editTooltip": "Editar",
|
||
"archiveTooltip": "Arquivar",
|
||
"noEvents": "Nenhum evento encontrado",
|
||
"noEventsDescription": "Crie seu primeiro evento para começar.",
|
||
"bulkArchive": "Arquivar",
|
||
"confirmBulkArchive": "Tem certeza de que deseja arquivar {{count}} evento(s)?",
|
||
"confirmBulkArchiveDescription": "Esta ação não pode ser desfeita. Eventos arquivados não serão mais acessíveis publicamente."
|
||
},
|
||
"settings": {
|
||
"title": "Configurações do Sistema",
|
||
"subtitle": "Defina as configurações e preferências globais do sistema",
|
||
"loadingSettings": "Carregando configurações...",
|
||
"general": {
|
||
"title": "Geral",
|
||
"siteConfiguration": "Configuração do Site",
|
||
"siteUrl": "URL do Site",
|
||
"siteUrlHelp": "Usado para gerar links de galeria nos emails",
|
||
"defaultExpiration": "Expiração Padrão (dias)",
|
||
"defaultExpirationHelp": "Por quanto tempo as galerias permanecem ativas por padrão",
|
||
"maxFileSize": "Tamanho Máximo de Arquivo (MB)",
|
||
"maxFileSizeHelp": "Tamanho máximo por foto enviada",
|
||
"maxFilesPerUpload": "Máximo de Arquivos por Upload",
|
||
"maxFilesPerUploadHelp": "Número máximo de fotos permitidas em um único lote de upload (1-{{max}}).",
|
||
"allowedFileTypes": "Tipos de Arquivo Permitidos",
|
||
"allowedFileTypesHelp": "Lista de extensões de arquivo separadas por vírgula",
|
||
"featureToggles": "Alternância de Recursos",
|
||
"enableAnalytics": "Habilitar rastreamento de análises",
|
||
"enableRegistration": "Permitir auto-registro para administradores",
|
||
"enableShortGalleryUrls": "Usar URLs curtas de galeria",
|
||
"enableShortGalleryUrlsHelp": "Remove o slug do evento dos novos links de compartilhamento, mantendo os links existentes funcionando.",
|
||
"maintenanceMode": "Habilitar modo de manutenção",
|
||
"language": "Idioma",
|
||
"defaultLanguage": "Idioma Padrão",
|
||
"defaultLanguageHelp": "Idioma exibido para convidados antes do login",
|
||
"defaultWelcomeMessage": "Mensagem de Boas-Vindas Padrão",
|
||
"welcomeMessage": "Mensagem de Boas-Vindas",
|
||
"welcomeMessagePlaceholder": "Digite uma mensagem de boas-vindas padrão que será incluída nos emails de criação de galeria",
|
||
"welcomeMessageHelp": "Esta mensagem será incluída em todos os emails de criação de galeria, a menos que seja substituída ao criar um evento",
|
||
"saveSettings": "Salvar Configurações Gerais",
|
||
"saveGeneralSettings": "Salvar Configurações Gerais",
|
||
"dateTimeFormat": "Formato de Data e Hora",
|
||
"dateFormat": "Formato de Data",
|
||
"dateFormatHelp": "Como as datas são exibidas nos emails e em todo o aplicativo",
|
||
"accountSection": "Conta do Administrador",
|
||
"accountUsername": "Nome de Usuário do Administrador",
|
||
"accountUsernameHelp": "Exibido na interface administrativa e usado nos registros de atividade.",
|
||
"accountUsernameRequired": "Nome de usuário é obrigatório",
|
||
"accountUsernameLength": "O nome de usuário deve ter pelo menos 3 caracteres",
|
||
"accountEmail": "email do Administrador",
|
||
"accountEmailHelp": "Usado para login e recebimento de notificações de segurança.",
|
||
"accountEmailRequired": "O endereço de email é obrigatório",
|
||
"accountEmailInvalid": "Digite um endereço de email válido",
|
||
"accountSaveButton": "Salvar detalhes da conta",
|
||
"accountSaveSuccess": "Detalhes da conta atualizados"
|
||
},
|
||
"publicSite": {
|
||
"tabLabel": "Site Público",
|
||
"badge": "Landing Pública",
|
||
"title": "Página de Landing Pública",
|
||
"subtitle": "Publique uma página de landing personalizada para convidados quando visitarem seu domínio.",
|
||
"loading": "Carregando configurações do site público...",
|
||
"enabled": "Habilitado",
|
||
"disabled": "Desabilitado",
|
||
"htmlLabel": "HTML da Página de Landing",
|
||
"htmlPlaceholder": "Forneça o código HTML para o hero, seções e chamadas para ação da sua página de landing.",
|
||
"htmlHelp": "O HTML bruto é sanitizado ao salvar. Tags inseguras, scripts inline e atributos não permitidos são removidos automaticamente. Tokens como {{company_name}}, {{company_tagline}} e {{support_email}} serão substituídos pelos valores das configurações de Identidade Visual.",
|
||
"cssLabel": "CSS Personalizado",
|
||
"cssPlaceholder": "Substituições CSS opcionais para ajustar layout, cores ou tipografia.",
|
||
"cssHelp": "Imports e URLs de JavaScript são removidos. Use seletores CSS padrão para substituir o estilo padrão.",
|
||
"saveCta": "Salvar site público",
|
||
"saving": "Salvando...",
|
||
"saveSuccess": "Configurações do site público salvas.",
|
||
"saveError": "Falha ao salvar configurações do site público.",
|
||
"resetCta": "Redefinir para o padrão",
|
||
"resetting": "Redefinindo...",
|
||
"resetSuccess": "Modelo do site público redefinido para os padrões.",
|
||
"resetError": "Falha ao redefinir modelo do site público.",
|
||
"previewTitle": "Pré-visualização ao Vivo",
|
||
"previewSandboxed": "Pré-visualização em sandbox",
|
||
"previewDisabled": "Habilite o site público para ver a pré-visualização ao vivo.",
|
||
"sanitizationNotice": "Scripts, frames incorporados e atributos inseguros são removidos antes da publicação. Apenas HTML seguro, links e imagens são permitidos.",
|
||
"htmlRequired": "Forneça conteúdo HTML antes de habilitar o site público."
|
||
},
|
||
"storage": {
|
||
"title": "Armazenamento",
|
||
"overview": "Visão Geral do Armazenamento",
|
||
"totalUsed": "Total Utilizado",
|
||
"archiveStorage": "Armazenamento de Arquivos",
|
||
"storageLimit": "Limite de Armazenamento",
|
||
"storageLimitHelper": "Defina um limite para o uso de armazenamento de fotos. Este limite é indicativo e será destacado quando atingido.",
|
||
"softLimitInputLabel": "Limite (GB)",
|
||
"softLimitHelper": "Digite o uso máximo de armazenamento preferido em gigabytes.",
|
||
"recommendedSoftLimit": "Limite Sugerido",
|
||
"diskCapacity": "Capacidade do Disco",
|
||
"diskCapacityReported": "Capacidade do Disco (informada)",
|
||
"diskAvailable": "Disponível",
|
||
"diskAvailableReported": "Disponível (informado)",
|
||
"diskFree": "Livre",
|
||
"diskFreeReported": "Livre (informado)",
|
||
"diskMetricsUnavailable": "As métricas de disco não estão disponíveis no Docker Desktop ou em ambientes virtualizados.",
|
||
"applyRecommended": "Usar recomendado",
|
||
"applyAvailable": "Corresponder disponível",
|
||
"invalidSoftLimit": "Digite um número válido para o limite.",
|
||
"saveSoftLimit": "Salvar limite",
|
||
"limitNotEnforced": "Este limite é apenas indicativo e não é aplicado automaticamente.",
|
||
"overrideTitle": "Substituição manual de capacidade",
|
||
"diskOverrideEnvNote": "A capacidade do disco é controlada por variáveis de ambiente e não pode ser editada aqui.",
|
||
"diskOverrideSettingsHelp": "Defina valores de capacidade personalizados quando o Docker reportar números irreais.",
|
||
"overrideCapacityLabel": "Capacidade total (GB)",
|
||
"overrideCapacityHelper": "Deixe em branco para usar a leitura automática.",
|
||
"overrideAvailableLabel": "Espaço disponível (GB)",
|
||
"overrideAvailableHelper": "Opcional. Deixe em branco para calcular a partir da capacidade total menos o armazenamento utilizado.",
|
||
"saveOverride": "Salvar substituição de capacidade",
|
||
"capacityRequiredForAvailable": "Digite uma capacidade total antes de definir o espaço disponível.",
|
||
"availableExceedsCapacity": "O espaço disponível não pode exceder a capacidade total.",
|
||
"storageUsage": "Uso de Armazenamento",
|
||
"storageByEvent": "Armazenamento por Evento",
|
||
"storageManagement": "Gerenciamento de Armazenamento",
|
||
"storageManagementHelp": "Considere arquivar ou excluir eventos antigos para liberar espaço de armazenamento. Eventos arquivados são comprimidos e usam menos armazenamento do que galerias ativas.",
|
||
"noEventsUsingStorage": "Nenhum evento usando armazenamento",
|
||
"unlimited": "Ilimitado"
|
||
},
|
||
"security": {
|
||
"title": "Segurança",
|
||
"passwordSettings": "Configurações de Senha",
|
||
"minPasswordLength": "Comprimento Mínimo da Senha",
|
||
"minPasswordLengthHelp": "Número mínimo de caracteres para senhas de galeria",
|
||
"passwordComplexity": "Complexidade da Senha",
|
||
"passwordComplexityHelp": "Nível de segurança exigido para senhas de galeria",
|
||
"complexitySimple": "Simples (6+ caracteres, qualquer texto)",
|
||
"complexityModerate": "Moderado (8+ caracteres, maiúsculas/números)",
|
||
"complexityStrong": "Forte (12+ caracteres, maiúsculas/minúsculas/números)",
|
||
"complexityVeryStrong": "Muito Forte (12+ caracteres, todos os tipos de caracteres)",
|
||
"sessionAuth": "Sessão e Autenticação",
|
||
"sessionTimeout": "Tempo Limite de Sessão (minutos)",
|
||
"sessionTimeoutHelp": "Tempo limite de sessão do administrador em minutos",
|
||
"maxLoginAttempts": "Máximo de Tentativas de Login",
|
||
"maxLoginAttemptsHelp": "Máximo de tentativas de login com falha por IP antes do bloqueio",
|
||
"attemptWindowMinutes": "Janela de Tentativas (minutos)",
|
||
"attemptWindowMinutesHelp": "Quanto tempo considerar ao contabilizar tentativas de login com falha",
|
||
"lockoutDurationMinutes": "Duração do Bloqueio (minutos)",
|
||
"lockoutDurationMinutesHelp": "Por quanto tempo a galeria ou conta fica bloqueada após muitas tentativas falhas",
|
||
"enable2FA": "Habilitar autenticação de dois fatores para administradores",
|
||
"recaptchaSettings": "Configurações de reCAPTCHA",
|
||
"enableRecaptcha": "Habilitar reCAPTCHA para formulários de login",
|
||
"siteKey": "Chave do Site",
|
||
"siteKeyHelp": "Sua chave de site reCAPTCHA v2 (pública)",
|
||
"secretKey": "Chave Secreta",
|
||
"secretKeyHelp": "Sua chave secreta reCAPTCHA v2 (mantenha privada)",
|
||
"recaptchaHelp": "Obtenha suas chaves reCAPTCHA em",
|
||
"saveSettings": "Salvar Configurações de Segurança",
|
||
"saveSecuritySettings": "Salvar Configurações de Segurança"
|
||
},
|
||
"categories": {
|
||
"title": "Categorias",
|
||
"about": "Sobre Categorias de Fotos",
|
||
"aboutText": "As categorias globais estão disponíveis para todos os eventos. Você também pode criar categorias específicas do evento ao editar eventos individuais. As categorias ajudam a organizar as fotos e permitem que os convidados filtrem fotos por tipo na visualização da galeria."
|
||
},
|
||
"systemStatus": {
|
||
"title": "Status do Sistema",
|
||
"storageOverview": "Visão Geral do Armazenamento",
|
||
"systemInfo": "Informações do Sistema",
|
||
"databaseInfo": "Informações do Banco de Dados",
|
||
"platform": "Plataforma",
|
||
"nodeVersion": "Versão do Node",
|
||
"uptime": "Tempo de Atividade",
|
||
"cpuCores": "Núcleos de CPU",
|
||
"memoryUsage": "Uso de Memória",
|
||
"memoryUsed": "Memória Utilizada",
|
||
"photos": "Fotos",
|
||
"admins": "Administradores",
|
||
"dbSize": "Tamanho do Banco de Dados",
|
||
"services": "Serviços em Segundo Plano",
|
||
"fileWatcher": "Monitoramento de Arquivos",
|
||
"fileWatcherDesc": "Monitora novas fotos",
|
||
"expirationChecker": "Verificador de Expiração",
|
||
"expirationCheckerDesc": "Arquiva galerias expiradas",
|
||
"emailProcessor": "Processador de Email",
|
||
"emailProcessorDesc": "Envia emails na fila",
|
||
"emailQueue": "Status da Fila de Email",
|
||
"pending": "Pendente",
|
||
"sent": "Enviado",
|
||
"failed": "Com Falha",
|
||
"lastUpdate": "Última atualização"
|
||
},
|
||
"photoDimensions": {
|
||
"title": "Dimensões das Fotos",
|
||
"totalPhotos": "Total de Fotos",
|
||
"withDimensions": "Com Dimensões",
|
||
"missingDimensions": "Dimensões Ausentes",
|
||
"repairButton": "Reparar Dimensões",
|
||
"repairing": "Reparando...",
|
||
"alreadyRunning": "O reparo já está em andamento",
|
||
"started": "Iniciou o reparo de {{count}} fotos",
|
||
"noneToRepair": "Todas as fotos já possuem dimensões",
|
||
"resultSuccess": "Último reparo: {{success}} atualizadas, {{failed}} com falha",
|
||
"description": "Preencha largura/altura ausentes para fotos enviadas antes da implementação do rastreamento de dimensões. Necessário para os layouts Masonry e Mosaico."
|
||
},
|
||
"updateNotifications": {
|
||
"title": "Notificações de Atualização",
|
||
"description": "Receba notificações por email quando novas versões do PicPeak estiverem disponíveis.",
|
||
"enableEmails": "Habilitar notificações por email",
|
||
"enableEmailsDesc": "Enviar email aos administradores quando uma nova versão estiver disponível",
|
||
"recipients": "Destinatários do Email",
|
||
"recipientsPlaceholder": "[email protected], [email protected]",
|
||
"recipientsHelper": "Endereços de email separados por vírgula. Deixe em branco para enviar a todos os usuários administradores.",
|
||
"lastNotified": "Última notificação enviada para a versão: {{version}}",
|
||
"checkNow": "Verificar e Notificar",
|
||
"sendTest": "Enviar Email de Teste",
|
||
"saved": "Configurações salvas",
|
||
"saveError": "Falha ao salvar configurações",
|
||
"emailSent": "Email de notificação enviado para {{count}} destinatários",
|
||
"emailFailed": "Falha ao enviar notificação",
|
||
"checkSuccess": "Notificação enviada para nova versão",
|
||
"checkNoAction": "Nenhuma notificação necessária: {{reason}}",
|
||
"checkError": "Falha ao verificar atualizações"
|
||
},
|
||
"events": {
|
||
"title": "Criação de Eventos",
|
||
"requiredFields": "Campos Obrigatórios",
|
||
"requiredFieldsDescription": "Configure quais campos de contato são obrigatórios ao criar novos eventos.",
|
||
"requireCustomerName": "Exigir nome do cliente",
|
||
"requireCustomerNameHelp": "O nome do cliente deve ser fornecido para novos eventos",
|
||
"requireCustomerEmail": "Exigir email do cliente",
|
||
"requireCustomerEmailHelp": "O email do cliente deve ser fornecido para novos eventos",
|
||
"customerEmailWarning": "Obrigatório para enviar convites de galeria",
|
||
"requireAdminEmail": "Exigir email do administrador",
|
||
"requireAdminEmailHelp": "O email do administrador deve ser fornecido para novos eventos",
|
||
"adminEmailWarning": "Obrigatório para receber notificações de eventos",
|
||
"requireEventDate": "Exigir data do evento",
|
||
"requireEventDateHelp": "A data do evento deve ser fornecida ao criar eventos",
|
||
"eventDateWarning": "As URLs da galeria usarão identificadores aleatórios em vez de datas",
|
||
"requireExpiration": "Exigir data de expiração",
|
||
"requireExpirationHelp": "As galerias devem ter uma data de expiração",
|
||
"expirationWarning": "Galerias sem expiração permanecerão ativas até serem arquivadas manualmente",
|
||
"saveSettings": "Salvar Configurações de Eventos",
|
||
"noteTitle": "Nota",
|
||
"noteText": "Essas configurações afetam apenas a criação de novos eventos. Eventos existentes não são afetados. O comportamento padrão exige todos os campos."
|
||
},
|
||
"imageSecurity": {
|
||
"title": "Proteção de Imagens",
|
||
"saveSuccess": "Configurações de segurança de imagem salvas",
|
||
"saveError": "Falha ao salvar configurações",
|
||
"loadError": "Falha ao carregar configurações de segurança de imagem",
|
||
"defaultProtection": "Configurações de Proteção Padrão",
|
||
"defaultProtectionHelp": "Essas configurações se aplicam a todos os novos eventos. Eventos individuais podem substituir esses padrões.",
|
||
"protectionLevel": "Nível de Proteção Padrão",
|
||
"imageQuality": "Qualidade de Imagem Padrão",
|
||
"fragmentationLevel": "Nível de Fragmentação",
|
||
"enableDevtools": "Habilitar detecção de DevTools por padrão",
|
||
"enableCanvas": "Habilitar renderização em canvas por padrão (proteção avançada)",
|
||
"rateLimiting": "Limitação de Taxa",
|
||
"rateLimitingHelp": "Limite quantas imagens podem ser solicitadas para evitar raspagem.",
|
||
"requestsPerMinute": "Solicitações por minuto",
|
||
"requestsPer5Minutes": "Solicitações por 5 min",
|
||
"requestsPerHour": "Solicitações por hora",
|
||
"securityMonitoring": "Monitoramento de Segurança",
|
||
"suspiciousThreshold": "Limite de atividade suspeita",
|
||
"autoBlockThreshold": "Limite de bloqueio automático",
|
||
"enableMonitoring": "Habilitar monitoramento de segurança",
|
||
"blockSuspiciousIps": "Bloquear automaticamente IPs suspeitos",
|
||
"logEvents": "Registrar eventos de segurança no banco de dados",
|
||
"infoTitle": "Sobre Proteção de Imagens",
|
||
"infoText": "Esses recursos de proteção ajudam a evitar downloads e cópias não autorizados, mas não podem bloquear todos os métodos. Usuários determinados ainda podem encontrar formas de capturar imagens. Considere usar marcas d'água e contratos legais para proteção abrangente."
|
||
},
|
||
"moderation": {
|
||
"title": "Moderação",
|
||
"wordFilters": "Filtros de Palavras",
|
||
"description": "Gerencie palavras que devem ser filtradas ou bloqueadas nos comentários",
|
||
"addFilter": "Adicionar Novo Filtro",
|
||
"enterWord": "Digite a palavra a filtrar",
|
||
"searchFilters": "Buscar filtros...",
|
||
"filterAdded": "Filtro de palavra adicionado com sucesso",
|
||
"filterExists": "Este filtro de palavra já existe",
|
||
"addError": "Falha ao adicionar filtro de palavra",
|
||
"filterUpdated": "Filtro de palavra atualizado com sucesso",
|
||
"updateError": "Falha ao atualizar filtro de palavra",
|
||
"filterDeleted": "Filtro de palavra excluído com sucesso",
|
||
"deleteError": "Falha ao excluir filtro de palavra",
|
||
"wordRequired": "Por favor, digite uma palavra para filtrar",
|
||
"confirmDelete": "Tem certeza de que deseja excluir este filtro de palavra?",
|
||
"loading": "Carregando filtros de palavras...",
|
||
"noMatchingFilters": "Nenhum filtro correspondente encontrado",
|
||
"noFilters": "Nenhum filtro de palavra configurado ainda",
|
||
"severityLow": "Baixo",
|
||
"severityModerate": "Moderado",
|
||
"severityHigh": "Alto",
|
||
"severityBlock": "Bloquear",
|
||
"severityLevels": "Níveis de Severidade",
|
||
"lowDescription": "A palavra é sinalizada para revisão, mas não bloqueada automaticamente",
|
||
"moderateDescription": "O comentário requer aprovação manual antes de ser visível",
|
||
"highDescription": "O comentário é ocultado automaticamente e requer revisão do administrador",
|
||
"blockDescription": "O comentário é rejeitado imediatamente e não pode ser enviado"
|
||
},
|
||
"styling": {
|
||
"title": "CSS Personalizado"
|
||
},
|
||
"thumbnails": {
|
||
"title": "Miniaturas",
|
||
"dimensionsTitle": "Dimensões e Qualidade das Miniaturas",
|
||
"dimensionsHelp": "Configure o tamanho e a qualidade das miniaturas geradas automaticamente. Valores mais altos produzem pré-visualizações de melhor aparência, mas aumentam o armazenamento e os tempos de carregamento.",
|
||
"width": "Largura (px)",
|
||
"widthHelp": "50-1000 pixels",
|
||
"height": "Altura (px)",
|
||
"heightHelp": "50-1000 pixels",
|
||
"quality": "Qualidade",
|
||
"qualityHelp": "1-100, maior = melhor qualidade mas arquivos maiores",
|
||
"format": "Formato",
|
||
"fit": "Modo de Ajuste",
|
||
"fitHelp": "Como as imagens são redimensionadas para caber nas dimensões da miniatura. \"Cobrir\" corta para preencher, \"Conter\" cabe dentro dos limites.",
|
||
"fit_cover": "Cobrir (cortar para preencher)",
|
||
"fit_contain": "Conter (caber dentro)",
|
||
"fit_fill": "Preencher (esticar)",
|
||
"fit_inside": "Interior (reduzir para caber)",
|
||
"fit_outside": "Exterior (expandir para cobrir)",
|
||
"regenerateTitle": "Regenerar Miniaturas",
|
||
"regenerateHelp": "Após alterar as configurações de miniaturas, regenere todas as miniaturas existentes para aplicar a nova configuração. Isso é executado em segundo plano e pode demorar para galerias grandes.",
|
||
"regenerateButton": "Regenerar Todas as Miniaturas",
|
||
"regenerateStarted": "Regeneração de miniaturas iniciada",
|
||
"regenerateError": "Falha ao iniciar regeneração de miniaturas",
|
||
"saveSuccess": "Configurações de miniaturas salvas",
|
||
"saveError": "Falha ao salvar configurações de miniaturas",
|
||
"loadError": "Falha ao carregar configurações de miniaturas",
|
||
"infoTitle": "Sobre Miniaturas",
|
||
"infoText": "As miniaturas são imagens de pré-visualização menores geradas a partir dos originais. Aumentar o tamanho ou a qualidade melhora a aparência das fotos na grade da galeria, mas usa mais armazenamento e largura de banda. Após alterar as configurações, use \"Regenerar Todas as Miniaturas\" para atualizar as fotos existentes."
|
||
},
|
||
"seo": {
|
||
"title": "SEO e Robôs",
|
||
"indexingTitle": "Indexação por Mecanismos de Busca",
|
||
"allowIndexing": "Permitir indexação por mecanismos de busca",
|
||
"allowIndexingHelp": "Quando desabilitado, todos os rastreadores são bloqueados via robots.txt. Recomendado desativado para plataformas de fotos privadas.",
|
||
"sitemapUrl": "URL do Sitemap",
|
||
"sitemapUrlHelp": "Opcional. Adicionado ao robots.txt se fornecido.",
|
||
"aiBlockingTitle": "Bloqueio de IA e Bots",
|
||
"blockAiCrawlers": "Bloquear rastreadores de IA/LLM",
|
||
"blockAiCrawlersHelp": "Impedir que bots de treinamento de IA acessem seu conteúdo.",
|
||
"blockedAgents": "Agentes de IA bloqueados",
|
||
"addAgentPlaceholder": "Digite o nome do agente...",
|
||
"blockSocialBots": "Bloquear bots de pré-visualização de redes sociais",
|
||
"blockSocialBotsHelp": "Impedir pré-visualizações de links no Twitter, Facebook, LinkedIn, etc.",
|
||
"metaTagsTitle": "Meta Tags e Regras Personalizadas",
|
||
"metaNoindex": "Adicionar meta tag noindex",
|
||
"metaNoindexHelp": "Informa aos mecanismos de busca para não indexar páginas (nível HTML, complementa robots.txt).",
|
||
"metaNofollow": "Adicionar meta tag nofollow",
|
||
"metaNofollowHelp": "Informa aos mecanismos de busca para não seguir links nas páginas.",
|
||
"metaNoai": "Adicionar meta tag noai/noimageai",
|
||
"metaNoaiHelp": "Sinaliza que o conteúdo não deve ser usado para treinamento de IA.",
|
||
"customRules": "Regras personalizadas de robots.txt",
|
||
"ruleAgentPlaceholder": "User-agent",
|
||
"rulePathPlaceholder": "Caminho para Disallow",
|
||
"showPreview": "Mostrar pré-visualização do robots.txt",
|
||
"hidePreview": "Ocultar pré-visualização do robots.txt",
|
||
"saveSettings": "Salvar Configurações de SEO"
|
||
},
|
||
"analytics": {
|
||
"title": "Análises",
|
||
"umamiIntegration": "Integração com Umami Analytics",
|
||
"enableUmami": "Habilitar Umami Analytics",
|
||
"umamiUrl": "URL do Umami",
|
||
"umamiUrlHelp": "A URL da sua instância do Umami (ex.: https://analytics.seudominio.com)",
|
||
"websiteId": "ID do Site",
|
||
"websiteIdHelp": "O ID do seu site no Umami (encontrado no painel do Umami)",
|
||
"shareUrl": "URL de Compartilhamento (Opcional)",
|
||
"shareUrlHelp": "URL pública de compartilhamento para incorporar o painel completo (criar no Umami)",
|
||
"umamiInfo": "Sobre o Umami Analytics",
|
||
"umamiInfoText": "O Umami é uma plataforma de análises open-source focada em privacidade. Rastreia visualizações de página, visitantes únicos e eventos personalizados sem usar cookies.",
|
||
"learnMore": "Saiba mais sobre o Umami",
|
||
"saveAnalyticsSettings": "Salvar Configurações de Análises",
|
||
"backendAnalytics": "Análises do Backend",
|
||
"backendAnalyticsText": "O sistema também rastreia análises básicas no lado do servidor para monitoramento de segurança e desempenho.",
|
||
"tracked": "Métricas Rastreadas",
|
||
"galleryViews": "Visualizações de página da galeria",
|
||
"photoDownloads": "Downloads individuais e em massa",
|
||
"uniqueVisitors": "Visitantes únicos por IP",
|
||
"deviceTypes": "Tipos de dispositivo por user agents",
|
||
"privacy": "Privacidade",
|
||
"privacyText": "Os endereços IP são hasheados para privacidade. Nenhum dado pessoal é armazenado. Os dados de análises são retidos por 90 dias."
|
||
}
|
||
},
|
||
"analytics": {
|
||
"title": "Painel de Análises",
|
||
"titleSimple": "Análises",
|
||
"subtitle": "Acompanhe o desempenho das galerias e o engajamento dos visitantes",
|
||
"detailedSubtitle": "Análises detalhadas fornecidas pelo Umami",
|
||
"loadingAnalytics": "Carregando análises...",
|
||
"showSummaryView": "Mostrar Visão Resumida",
|
||
"fullDashboard": "Painel Completo",
|
||
"refresh": "Atualizar",
|
||
"last7Days": "Últimos 7 dias",
|
||
"last30Days": "Últimos 30 dias",
|
||
"last90Days": "Últimos 90 dias",
|
||
"pageViews": "Visualizações de Página",
|
||
"uniqueVisitors": "Visitantes Únicos",
|
||
"totalDownloads": "Total de Downloads",
|
||
"topGallery": "Galeria Mais Visitada",
|
||
"topPages": "Páginas Mais Visitadas",
|
||
"views": "visualizações",
|
||
"visitors": "visitantes únicos",
|
||
"topDownloadsByGallery": "Top Downloads por Galeria",
|
||
"deviceBreakdown": "Distribuição por Dispositivo",
|
||
"desktop": "Desktop",
|
||
"mobile": "Mobile",
|
||
"tablet": "Tablet",
|
||
"storageUsage": "Uso de Armazenamento",
|
||
"used": "Utilizado",
|
||
"of": "de",
|
||
"totalPhotos": "Total de Fotos",
|
||
"activeEvents": "Eventos Ativos",
|
||
"notConfigured": "Umami Analytics Não Configurado",
|
||
"configureInstructions": "Para ver dados reais de análises, configure o Umami nas variáveis de ambiente e nas configurações do painel administrativo.",
|
||
"noData": "Nenhum dado disponível",
|
||
"percentChange": "{{percent}}% em relação ao período anterior"
|
||
},
|
||
"branding": {
|
||
"title": "Identidade Visual e Temas",
|
||
"titleFull": "Identidade Visual e Personalização",
|
||
"subtitle": "Personalize a aparência das suas galerias",
|
||
"loadingBranding": "Carregando configurações de identidade visual...",
|
||
"themeAndStyle": "Tema e Estilo",
|
||
"companyInfo": "Informações da Empresa",
|
||
"companyName": "Nome da Empresa",
|
||
"companyNameHelp": "Exibido nos cabeçalhos das galerias e nos emails",
|
||
"companyTagline": "Slogan da Empresa",
|
||
"companyTaglineHelp": "Uma breve descrição do seu negócio",
|
||
"supportEmail": "Email de Suporte",
|
||
"supportEmailHelp": "email de contato para suporte aos convidados",
|
||
"footerText": "Texto do Rodapé",
|
||
"footerTextHelp": "Exibido na parte inferior das galerias",
|
||
"logo": "Logo",
|
||
"currentLogo": "Logo atual",
|
||
"uploadLogo": "Enviar Logo",
|
||
"removeLogo": "Remover Logo",
|
||
"logoHelp": "Tamanho recomendado: 200x60px, PNG ou JPEG",
|
||
"favicon": "Favicon",
|
||
"currentFavicon": "Favicon atual",
|
||
"uploadFavicon": "Enviar Favicon",
|
||
"removeFavicon": "Remover Favicon",
|
||
"faviconHelp": "Formato PNG ou ICO, tamanho recomendado: 32x32px",
|
||
"watermark": "Marca d'Água",
|
||
"watermarkSettings": "Configurações de Marca d'Água",
|
||
"enableWatermarks": "Habilitar Marcas d'Água",
|
||
"watermarkHelp": "Adicione o nome da sua empresa como marca d'água nas fotos baixadas",
|
||
"watermarkLogo": "Logo da Marca d'Água",
|
||
"currentWatermark": "Marca d'água atual",
|
||
"uploadWatermarkLogo": "Enviar Logo para Marca d'Água",
|
||
"watermarkPosition": "Posição da Marca d'Água",
|
||
"topLeft": "Superior Esquerdo",
|
||
"topRight": "Superior Direito",
|
||
"center": "Centro",
|
||
"bottomLeft": "Inferior Esquerdo",
|
||
"bottomRight": "Inferior Direito",
|
||
"watermarkOpacity": "Opacidade da Marca d'Água",
|
||
"watermarkSize": "Tamanho da Marca d'Água",
|
||
"theme": "Tema",
|
||
"galleryTheme": "Tema da Galeria",
|
||
"themeCustomization": "Personalização do Tema",
|
||
"selectPreset": "Selecione um tema predefinido",
|
||
"colors": "Cores",
|
||
"primaryColor": "Cor Primária",
|
||
"secondaryColor": "Cor Secundária",
|
||
"accentColor": "Cor de Destaque",
|
||
"backgroundColor": "Cor de Fundo",
|
||
"textColor": "Cor do Texto",
|
||
"colorMode": "Modo de Cor",
|
||
"colorModeLight": "Claro",
|
||
"colorModeDark": "Escuro",
|
||
"colorModeAuto": "Automático",
|
||
"colorModeHelp": "Automático segue a preferência do sistema do visitante.",
|
||
"customCSS": "CSS Personalizado",
|
||
"preview": "Pré-visualização",
|
||
"previewInNewTab": "Pré-visualizar em Nova Aba",
|
||
"reset": "Redefinir",
|
||
"saveChanges": "Salvar Alterações",
|
||
"applyLivePreview": "Aplicar alterações imediatamente (Pré-visualização ao Vivo)",
|
||
"eventSpecificThemes": "Temas Específicos do Evento",
|
||
"eventThemesInfo": "Você pode substituir essas configurações de tema globais para eventos individuais ao criá-los ou editá-los.",
|
||
"themePresets": "Temas Predefinidos",
|
||
"galleryLayout": "Layout da Galeria",
|
||
"layoutDescriptions": {
|
||
"grid": "Layout de grade clássico com tamanhos de foto uniformes",
|
||
"masonry": "Layout estilo Pinterest com alturas variadas",
|
||
"carousel": "Slideshow em tela cheia com navegação",
|
||
"timeline": "Fotos organizadas por data",
|
||
"hero": "Imagem em destaque com grade abaixo",
|
||
"mosaic": "Layout artístico com tamanhos mistos",
|
||
"justified": "Layout baseado em linhas preservando as proporções",
|
||
"gallery-premium": "Tema claro elegante com hero e masonry (Beta)",
|
||
"gallery-story": "Tema escuro cinematográfico com seções de cenas (Beta)"
|
||
},
|
||
"layoutSettings": "Configurações de Layout",
|
||
"photoSpacing": "Espaçamento das Fotos",
|
||
"spacing": {
|
||
"tight": "Compacto",
|
||
"normal": "Normal",
|
||
"relaxed": "Espaçado"
|
||
},
|
||
"photoAnimation": "Animação das Fotos",
|
||
"animation": {
|
||
"none": "Nenhuma",
|
||
"fade": "Fade",
|
||
"scale": "Escala",
|
||
"slide": "Deslizamento"
|
||
},
|
||
"columns": "Colunas",
|
||
"mobile": "Mobile",
|
||
"tablet": "Tablet",
|
||
"desktop": "Desktop",
|
||
"enableAutoplay": "Habilitar Reprodução Automática",
|
||
"autoplayInterval": "Intervalo de Reprodução Automática (segundos)",
|
||
"groupPhotosBy": "Agrupar Fotos Por",
|
||
"grouping": {
|
||
"day": "Dia",
|
||
"week": "Semana",
|
||
"month": "Mês"
|
||
},
|
||
"masonryMode": "Modo de Layout",
|
||
"masonryModeOptions": {
|
||
"columns": "Colunas (estilo Pinterest)",
|
||
"rows": "Linhas (Justified personalizado)",
|
||
"flickr": "Flickr (Justified testado)",
|
||
"justified": "Google Fotos (algoritmo Knuth-Plass)"
|
||
},
|
||
"masonryModeHint": {
|
||
"columns": "Colunas verticais estilo Pinterest com alturas variadas",
|
||
"rows": "Layout justified por linhas personalizado",
|
||
"flickr": "Algoritmo de layout justified open-source do Flickr",
|
||
"justified": "Layout de linhas estilo Google Fotos usando o algoritmo Knuth-Plass para quebras otimizadas"
|
||
},
|
||
"targetRowHeight": "Altura Alvo da Linha",
|
||
"targetRowHeightHint": "Altura em pixels (150-400). As fotos serão dimensionadas para caber nas linhas.",
|
||
"lastRowBehavior": "Alinhamento da Última Linha",
|
||
"lastRowOptions": {
|
||
"left": "Alinhado à esquerda",
|
||
"center": "Centralizado",
|
||
"justify": "Justified (esticado)"
|
||
},
|
||
"thumbnailScale": "Escala de Miniaturas",
|
||
"thumbnailScaleOptions": {
|
||
"xs": "XS — Mais fotos",
|
||
"sm": "SM — Muitas fotos",
|
||
"md": "MD — Padrão",
|
||
"lg": "LG — Fotos maiores",
|
||
"xl": "XL — Fotos grandes"
|
||
},
|
||
"thumbnailScaleHint": "Ajusta a contagem de colunas em relação às colunas base da grade",
|
||
"showHeroSection": "Mostrar Seção Hero",
|
||
"showHeroSectionHint": "Exibir uma imagem hero em destaque acima da galeria justified",
|
||
"heroHeight": "Altura da Seção Hero",
|
||
"heroHeightOptions": {
|
||
"small": "Pequena (40-50%)",
|
||
"medium": "Média (50-70%)",
|
||
"large": "Grande (60-80%)"
|
||
},
|
||
"heroOverlayOpacity": "Opacidade do Overlay Hero",
|
||
"heroOverlayHint": "Escureça a imagem hero para melhorar a legibilidade do texto",
|
||
"typographyAndStyle": "Tipografia e Estilo",
|
||
"bodyFont": "Fonte do Corpo",
|
||
"headingFont": "Fonte dos Títulos",
|
||
"sameAsBody": "Igual ao corpo",
|
||
"fontSize": "Tamanho da Fonte",
|
||
"fontSizes": {
|
||
"small": "Pequeno",
|
||
"normal": "Normal",
|
||
"large": "Grande"
|
||
},
|
||
"borderRadius": "Arredondamento das Bordas",
|
||
"borderRadiusOptions": {
|
||
"none": "Nenhum",
|
||
"small": "Pequeno",
|
||
"medium": "Médio",
|
||
"large": "Grande"
|
||
},
|
||
"shadowStyle": "Estilo de Sombra",
|
||
"shadowOptions": {
|
||
"none": "Nenhuma",
|
||
"subtle": "Sutil",
|
||
"normal": "Normal",
|
||
"dramatic": "Dramática"
|
||
},
|
||
"backgroundPattern": "Fundo",
|
||
"backgroundOptions": {
|
||
"none": "Nenhum",
|
||
"dots": "Pontos",
|
||
"grid": "Grade",
|
||
"waves": "Ondas"
|
||
},
|
||
"customCSSHelp": "Avançado: Adicione CSS personalizado para personalizar ainda mais a aparência",
|
||
"cssInstructions": {
|
||
"title": "Como usar CSS Personalizado",
|
||
"variables": "Variáveis CSS do Tema",
|
||
"variablesDesc": "Use essas variáveis CSS para corresponder aos seus temas predefinidos:",
|
||
"layouts": "Layouts de Galeria Personalizados",
|
||
"layoutsDesc": "Direcione elementos da galeria com esses seletores:",
|
||
"glassEffect": "Efeito Glassmorphism",
|
||
"glassEffectDesc": "Crie efeitos de vidro modernos:",
|
||
"tip": "Dica",
|
||
"tipText": "Use Modelos de CSS em Configurações > Modelos CSS para designs pré-construídos como Apple Liquid Glass."
|
||
},
|
||
"resetToDefault": "Redefinir para Padrão",
|
||
"applyTheme": "Aplicar Tema",
|
||
"customTheme": "Tema Personalizado",
|
||
"customizeTheme": "Personalizar Tema",
|
||
"saveTheme": "Salvar Tema",
|
||
"previewLayout": "Pré-visualizar Layout",
|
||
"livePreview": "Pré-visualização ao Vivo",
|
||
"heroPlaceholderText": "A foto hero do seu evento aparecerá aqui",
|
||
"whiteLabel": "White Label",
|
||
"hidePoweredBy": "Ocultar marca \"Desenvolvido por PicPeak\"",
|
||
"hidePoweredByHelp": "Remover a atribuição do PicPeak dos rodapés das galerias para uma experiência totalmente white-label",
|
||
"logoCustomization": "Personalização do Logo",
|
||
"changeLogo": "Alterar Logo",
|
||
"logoSizeSmall": "Pequeno (32px)",
|
||
"logoSizeMedium": "Médio (48px)",
|
||
"logoSizeLarge": "Grande (64px)",
|
||
"logoSizeXLarge": "Extra Grande (96px)",
|
||
"logoSizeCustom": "Personalizado",
|
||
"logoMaxHeight": "Altura Máxima (pixels)",
|
||
"logoMaxHeightHelp": "Defina uma altura máxima personalizada para o logo (20-200 pixels)",
|
||
"logoPosition": "Posição do Logo no Cabeçalho",
|
||
"positionLeft": "Esquerda",
|
||
"positionCenter": "Centro",
|
||
"positionRight": "Direita",
|
||
"logoDisplayMode": "Modo de Exibição",
|
||
"logoOnly": "Apenas Logo",
|
||
"textOnly": "Apenas Nome da Empresa",
|
||
"logoAndText": "Logo e Nome da Empresa",
|
||
"showLogoInHeader": "Mostrar logo no cabeçalho da galeria",
|
||
"showLogoInHeaderHelp": "Exibir o logo na barra de cabeçalho principal",
|
||
"showLogoInHero": "Mostrar logo na seção hero",
|
||
"showLogoInHeroHelp": "Exibir o logo nas seções hero (para layouts não-grade)",
|
||
"headerStyle": "Estilo do Cabeçalho",
|
||
"headerStyleDescription": "Escolha como o cabeçalho da galeria é exibido. O estilo do cabeçalho é independente do layout das fotos.",
|
||
"headerStyleOptions": {
|
||
"hero": "Imagem Hero",
|
||
"standard": "Banner Padrão",
|
||
"minimal": "Minimalista",
|
||
"none": "Sem Cabeçalho"
|
||
},
|
||
"headerStyleDescriptions": {
|
||
"hero": "Imagem em altura total com sobreposição de informações do evento",
|
||
"standard": "Banner clássico com detalhes do evento",
|
||
"minimal": "Cabeçalho compacto com informações essenciais",
|
||
"none": "Ocultar cabeçalho completamente"
|
||
},
|
||
"heroDividerStyle": "Estilo do Divisor",
|
||
"heroDividerDescription": "Escolha como é a transição entre a imagem hero e o conteúdo da galeria.",
|
||
"dividerOptions": {
|
||
"wave": "Onda",
|
||
"straight": "Reto",
|
||
"angle": "Ângulo",
|
||
"curve": "Curva",
|
||
"none": "Nenhum"
|
||
},
|
||
"controlsStyle": "Estilo dos Controles",
|
||
"controlsStyleDescription": "Escolha como os filtros e controles da galeria são exibidos.",
|
||
"controlsStyleOptions": {
|
||
"classic": "Clássico",
|
||
"sidebar": "Barra Lateral"
|
||
},
|
||
"controlsStyleDescriptions": {
|
||
"classic": "Barra de filtros inline abaixo do cabeçalho",
|
||
"sidebar": "Botão de menu abre barra lateral com filtros"
|
||
},
|
||
"controlsStyleHeroWarning": "A barra lateral é recomendada para cabeçalhos hero para evitar que os controles apareçam acima da imagem hero.",
|
||
"betaThumbnailWarningTitle": "Baixa resolução de miniatura detectada",
|
||
"betaThumbnailWarningText": "Suas miniaturas são atualmente {{width}}×{{height}}px. Temas beta exibem fotos em tamanhos maiores e requerem pelo menos {{recommended}}×{{recommended}}px para boa qualidade. Aumente as dimensões das miniaturas em Configurações > Miniaturas e regenere.",
|
||
"betaThumbnailWarningLink": "Ir para configurações de miniaturas"
|
||
},
|
||
"admin": {
|
||
"title": "Painel Admin",
|
||
"welcome": "Bem-vindo de volta, {{name}}",
|
||
"recentActivity": "Atividade Recente",
|
||
"systemStatus": "Status do Sistema",
|
||
"totalEvents": "Total de Eventos",
|
||
"activeGalleries": "Galerias Ativas",
|
||
"storageUsed": "Armazenamento Usado",
|
||
"totalPhotos": "Total de Fotos",
|
||
"storagePercent": "{{percent}}% do limite {{limit}}",
|
||
"storageSoftLimitConfigured": "Limite configurado: {{limit}}",
|
||
"storageSoftLimitRecommended": "Limite sugerido: {{limit}}",
|
||
"version": "Versão",
|
||
"archivedEvents": "Eventos Arquivados",
|
||
"systemHealth": "Saúde do Sistema",
|
||
"health": {
|
||
"healthy": "Saudável",
|
||
"warning": "Aviso",
|
||
"error": "Erro",
|
||
"checking": "Verificando..."
|
||
},
|
||
"updates": {
|
||
"available": "Atualização Disponível",
|
||
"newVersion": "A versão {{version}} está disponível",
|
||
"currentVersion": "Atual: {{version}}",
|
||
"channel": "Canal: {{channel}}",
|
||
"channelStable": "Estável",
|
||
"channelBeta": "Beta",
|
||
"beta": "BETA",
|
||
"viewReleaseNotes": "Ver Notas de Versão",
|
||
"updateAvailableShort": "v{{version}} disponível",
|
||
"checkForUpdates": "Verificar Atualizações",
|
||
"upToDate": "Você está atualizado",
|
||
"lastChecked": "Última verificação: {{time}}",
|
||
"updateNow": "Atualizar Agora",
|
||
"updateDialog": {
|
||
"title": "Atualizar PicPeak",
|
||
"detectedEnv": "Ambiente Detectado",
|
||
"beforeUpdating": "Antes de atualizar:",
|
||
"updateCommands": "Comandos de Atualização:",
|
||
"afterUpdating": "Após atualizar:",
|
||
"copyAllCommands": "Copiar Todos os Comandos",
|
||
"completeChecklist": "Complete a lista de verificação antes de atualizar",
|
||
"error": "Falha ao carregar as instruções de atualização"
|
||
}
|
||
},
|
||
"notifications": "Notificações",
|
||
"viewAllNotifications": "Ver todas as notificações",
|
||
"noNotifications": "Nenhuma notificação nova",
|
||
"markAllRead": "Marcar todas como lidas",
|
||
"clearAll": "Limpar tudo",
|
||
"close": "Fechar",
|
||
"noNotificationsMessage": "Nenhuma notificação",
|
||
"notificationMessages": {
|
||
"eventCreated": "Novo evento \"{{eventName}}\" foi criado",
|
||
"eventArchived": "Evento \"{{eventName}}\" foi arquivado",
|
||
"eventUpdated": "Evento \"{{eventName}}\" foi atualizado",
|
||
"eventDeleted": "Evento \"{{eventName}}\" foi excluído",
|
||
"photosUploaded": "{{count}} fotos enviadas para \"{{eventName}}\"",
|
||
"photoDeleted": "Foto excluída de \"{{eventName}}\"",
|
||
"photosBulkDeleted": "{{count}} fotos excluídas de \"{{eventName}}\"",
|
||
"eventExpiring": "O evento \"{{eventName}}\" expira em {{days}} dias",
|
||
"eventExpired": "O evento \"{{eventName}}\" expirou",
|
||
"passwordChanged": "Senha alterada por {{actorName}}",
|
||
"passwordReset": "Senha redefinida para \"{{eventName}}\"",
|
||
"settingsUpdated": "Configurações de {{type}} atualizadas",
|
||
"emailTemplateUpdated": "Modelo de email \"{{template}}\" atualizado",
|
||
"bulkDownload": "{{count}} fotos baixadas de \"{{eventName}}\"",
|
||
"storageWarning": "Uso de armazenamento em {{percentage}}%",
|
||
"adminLogout": "Admin {{actorName}} encerrou a sessão",
|
||
"categoryCreated": "Categoria \"{{name}}\" criada para \"{{eventName}}\"",
|
||
"categoryUpdated": "Categoria \"{{name}}\" atualizada para \"{{eventName}}\"",
|
||
"categoryDeleted": "Categoria \"{{name}}\" excluída de \"{{eventName}}\"",
|
||
"cmsPageUpdated": "Página CMS \"{{slug}}\" atualizada",
|
||
"emailConfigUpdated": "Configuração de email atualizada",
|
||
"faviconUploaded": "Favicon enviado",
|
||
"brandingUpdated": "Configurações de identidade visual atualizadas",
|
||
"generalSettingsUpdated": "Configurações gerais atualizadas",
|
||
"securitySettingsUpdated": "Configurações de segurança atualizadas",
|
||
"themeUpdated": "Configurações de tema atualizadas",
|
||
"archiveDownloaded": "Arquivo baixado para \"{{eventName}}\"",
|
||
"archiveDeleted": "Arquivo excluído para \"{{eventName}}\"",
|
||
"archiveRestored": "Arquivo restaurado para \"{{eventName}}\"",
|
||
"systemActivity": "Atividade do sistema: {{type}}",
|
||
"adminProfileUpdated": "Perfil admin atualizado por {{actorName}}"
|
||
},
|
||
"notificationToasts": {
|
||
"markedAllRead": "Todas as notificações marcadas como lidas",
|
||
"clearedAll": "{{count}} notificações apagadas",
|
||
"profileUpdated": "Perfil admin atualizado"
|
||
},
|
||
"markAsRead": "Marcar como lida",
|
||
"markAllAsRead": "Marcar todas como lidas",
|
||
"notificationSettings": "Configurações de Notificação",
|
||
"changePassword": "Alterar Senha",
|
||
"darkMode": "Mudar para modo escuro",
|
||
"lightMode": "Mudar para modo claro",
|
||
"accountSettings": {
|
||
"title": "Conta admin",
|
||
"description": "Atualize as credenciais usadas para entrar no PicPeak.",
|
||
"username": "Nome de usuário",
|
||
"usernamePlaceholder": "Admin",
|
||
"email": "Email",
|
||
"emailPlaceholder": "[email protected]",
|
||
"updateButton": "Atualizar perfil"
|
||
},
|
||
"profileUpdateError": "Não foi possível atualizar o perfil admin. Por favor, tente novamente.",
|
||
"loadingDashboard": "Carregando painel...",
|
||
"activeEvents": "Eventos Ativos",
|
||
"expiringSoon": "Expirando em Breve",
|
||
"next7Days": "Próximos 7 dias",
|
||
"totalViews": "Total de Visualizações",
|
||
"downloads": "Downloads",
|
||
"percentFromLastWeek": "{{percent}}% da semana passada",
|
||
"dashboardSubtitle": "Bem-vindo de volta! Veja o que está acontecendo com suas galerias.",
|
||
"eventsExpiringSoon": "Eventos Expirando em Breve",
|
||
"noEventsExpiring": "Nenhum evento expirando nos próximos 7 dias",
|
||
"daysLeft": "{{count}} dia restante",
|
||
"daysLeft_plural": "{{count}} dias restantes",
|
||
"viewAllExpiringEvents": "Ver todos os {{count}} eventos expirando",
|
||
"noRecentActivity": "Nenhuma atividade recente",
|
||
"viewAllActivity": "Ver toda a atividade",
|
||
"quickActions": "Ações Rápidas",
|
||
"viewArchives": "Ver Arquivos",
|
||
"analytics": "Análises",
|
||
"activities": {
|
||
"event_created": "Novo evento criado: {{eventName}}",
|
||
"photos_uploaded": "{{count}} fotos enviadas para {{eventName}}",
|
||
"event_archived": "Evento arquivado: {{eventName}}",
|
||
"archive_restored": "Arquivo restaurado: {{eventName}}",
|
||
"archive_deleted": "Arquivo excluído: {{eventName}}",
|
||
"archive_downloaded": "Arquivo baixado: {{eventName}}",
|
||
"email_config_updated": "Configuração de email atualizada",
|
||
"email_template_updated": "Modelo de email atualizado: {{template}}",
|
||
"branding_updated": "Configurações de identidade visual atualizadas",
|
||
"theme_updated": "Configurações de tema atualizadas",
|
||
"bulk_download": "{{count}} fotos baixadas de {{eventName}}",
|
||
"gallery_password_entry": "Senha inserida para {{eventName}}",
|
||
"expiration_warning_viewed": "Aviso de expiração visualizado para {{eventName}}",
|
||
"feedback_settings_updated": "Configurações de feedback atualizadas",
|
||
"feedback_moderated": "Feedback moderado",
|
||
"feedback_deleted": "Feedback excluído",
|
||
"photo_like": "Foto curtida em {{eventName}}",
|
||
"photo_favorite": "Foto favoritada em {{eventName}}",
|
||
"photo_rating": "Foto avaliada em {{eventName}}",
|
||
"photo_comment": "Foto comentada em {{eventName}}",
|
||
"guest_feedback_like": "Visitante curtiu uma foto em {{eventName}}",
|
||
"guest_feedback_favorite": "Visitante favoritou uma foto em {{eventName}}",
|
||
"guest_feedback_rating": "Visitante avaliou uma foto em {{eventName}}",
|
||
"guest_feedback_comment": "Visitante comentou em uma foto em {{eventName}}",
|
||
"word_filter_added": "Filtro de palavras adicionado",
|
||
"external_import_completed": "Importação de mídia externa concluída ({{imported}} importadas, {{skipped}} ignoradas)",
|
||
"bulk_archive_completed": "Arquivamento em massa concluído",
|
||
"event_activated": "Evento ativado: {{eventName}}",
|
||
"event_deactivated": "Evento desativado: {{eventName}}",
|
||
"photo_deleted": "Foto excluída de {{eventName}}",
|
||
"photos_bulk_deleted": "{{count}} fotos excluídas de {{eventName}}",
|
||
"settings_updated": "Configurações atualizadas",
|
||
"event_updated": "Evento atualizado: {{eventName}}",
|
||
"event_renamed": "Evento renomeado: {{eventName}}",
|
||
"event_deleted": "Evento excluído: {{eventName}}",
|
||
"password_changed": "Senha alterada",
|
||
"email_resent": "Email de criação reenviado para: {{eventName}}",
|
||
"category_created": "Categoria criada: {{categoryName}}",
|
||
"category_updated": "Categoria atualizada: {{categoryName}}",
|
||
"category_deleted": "Categoria excluída: {{categoryName}}",
|
||
"general_settings_updated": "Configurações gerais atualizadas",
|
||
"favicon_uploaded": "Favicon enviado",
|
||
"analytics_settings_updated": "Configurações de análise atualizadas",
|
||
"cms_page_updated": "Página CMS atualizada: {{page}}",
|
||
"security_settings_updated": "Configurações de segurança atualizadas",
|
||
"password_reset": "Senha redefinida para: {{eventName}}",
|
||
"admin_logout": "Admin {{actorName}} encerrou a sessão",
|
||
"system_activity": "Atividade do sistema: {{type}}",
|
||
"unknown": "Atividade desconhecida"
|
||
},
|
||
"userManagement": "Gerenciamento de Usuários",
|
||
"inviteUser": "Convidar Usuário",
|
||
"pendingInvitations": "Convites Pendentes",
|
||
"roles": {
|
||
"super_admin": "Super Admin",
|
||
"admin": "Admin",
|
||
"editor": "Editor",
|
||
"viewer": "Visualizador"
|
||
},
|
||
"userStatus": {
|
||
"active": "Ativo",
|
||
"inactive": "Inativo"
|
||
},
|
||
"inviteForm": {
|
||
"email": "Endereço de Email",
|
||
"role": "Função",
|
||
"send": "Enviar Convite"
|
||
},
|
||
"acceptInvite": {
|
||
"title": "Aceitar Convite de Admin",
|
||
"username": "Escolha um Nome de Usuário",
|
||
"password": "Criar Senha",
|
||
"submit": "Criar Conta"
|
||
},
|
||
"photos": {
|
||
"hidden": "Oculta",
|
||
"hideSelected": "Ocultar",
|
||
"showSelected": "Exibir",
|
||
"hiddenSuccess": "Fotos ocultadas dos visitantes",
|
||
"visibleSuccess": "Fotos agora visíveis aos visitantes"
|
||
}
|
||
},
|
||
"permissions": {
|
||
"insufficient": "Você não tem permissão para realizar esta ação",
|
||
"viewOnly": "Somente Visualização"
|
||
},
|
||
"acceptInvitation": {
|
||
"title": "Aceitar Convite",
|
||
"subtitle": "Crie sua conta admin",
|
||
"validating": "Validando convite...",
|
||
"invalidToken": "Convite Inválido",
|
||
"invalidTokenMessage": "Este link de convite é inválido ou expirou. Entre em contato com seu administrador para um novo convite.",
|
||
"expiredToken": "Convite Expirado",
|
||
"expiredTokenMessage": "Este convite expirou. Solicite um novo convite ao seu administrador.",
|
||
"alreadyUsed": "Convite Já Utilizado",
|
||
"alreadyUsedMessage": "Este convite já foi usado para criar uma conta.",
|
||
"invitedAs": "Você foi convidado como",
|
||
"expiresAt": "O convite expira em",
|
||
"usernameLabel": "Nome de usuário",
|
||
"usernamePlaceholder": "Escolha um nome de usuário",
|
||
"usernameHelp": "3-50 caracteres, apenas letras, números, sublinhados e hífens",
|
||
"passwordLabel": "Senha",
|
||
"passwordPlaceholder": "Crie uma senha forte",
|
||
"confirmPasswordLabel": "Confirmar Senha",
|
||
"confirmPasswordPlaceholder": "Confirme sua senha",
|
||
"passwordStrength": "Força da senha",
|
||
"requirements": {
|
||
"title": "Requisitos da senha:",
|
||
"minLength": "Pelo menos 12 caracteres",
|
||
"uppercase": "Pelo menos uma letra maiúscula",
|
||
"lowercase": "Pelo menos uma letra minúscula",
|
||
"number": "Pelo menos um número",
|
||
"special": "Pelo menos um caractere especial"
|
||
},
|
||
"strength": {
|
||
"weak": "Fraca",
|
||
"fair": "Razoável",
|
||
"good": "Boa",
|
||
"strong": "Forte"
|
||
},
|
||
"createAccount": "Criar Conta",
|
||
"creating": "Criando conta...",
|
||
"success": "Conta Criada!",
|
||
"successMessage": "Sua conta foi criada com sucesso. Agora você pode entrar com suas credenciais.",
|
||
"redirecting": "Redirecionando para o login em {{seconds}}...",
|
||
"goToLogin": "Ir para Login",
|
||
"contactAdminMessage": "Entre em contato com seu administrador para solicitar um novo convite.",
|
||
"passwordsMatch": "As senhas coincidem",
|
||
"alreadyHaveAccount": "Já tem uma conta?",
|
||
"signIn": "Entrar",
|
||
"errors": {
|
||
"usernameRequired": "Nome de usuário é obrigatório",
|
||
"usernameTooShort": "O nome de usuário deve ter pelo menos 3 caracteres",
|
||
"usernameTooLong": "O nome de usuário deve ter no máximo 50 caracteres",
|
||
"usernameInvalid": "O nome de usuário só pode conter letras, números, sublinhados e hífens",
|
||
"passwordRequired": "Senha é obrigatória",
|
||
"passwordTooShort": "A senha deve ter pelo menos 12 caracteres",
|
||
"passwordsDoNotMatch": "As senhas não coincidem",
|
||
"confirmPasswordRequired": "Por favor, confirme sua senha",
|
||
"usernameTaken": "Este nome de usuário já está em uso",
|
||
"emailTaken": "Já existe uma conta com este email",
|
||
"genericError": "Falha ao criar conta. Por favor, tente novamente."
|
||
}
|
||
},
|
||
"errors": {
|
||
"notFound": "Não Encontrado",
|
||
"galleryNotFound": "Galeria Não Encontrada",
|
||
"galleryNotFoundMessage": "Esta galeria não existe ou foi removida.",
|
||
"galleryArchived": "Galeria Arquivada",
|
||
"galleryArchivedMessage": "Esta galeria foi arquivada e não está mais acessível. Entre em contato com o organizador do evento se precisar de acesso a estas fotos.",
|
||
"unauthorized": "Não Autorizado",
|
||
"forbidden": "Acesso Negado",
|
||
"serverError": "Erro no Servidor",
|
||
"somethingWentWrong": "Algo deu errado",
|
||
"tryAgainLater": "Por favor, tente novamente mais tarde",
|
||
"refreshPage": "Recarregar Página",
|
||
"oopsSomethingWentWrong": "Ops! Algo deu errado",
|
||
"unexpectedError": "Encontramos um erro inesperado. Não se preocupe, seus dados estão seguros.",
|
||
"goToHomepage": "Ir para a Página Inicial",
|
||
"errorDetails": "Detalhes do Erro",
|
||
"requiredFields": "Por favor, preencha todos os campos obrigatórios",
|
||
"enterTestEmail": "Por favor, insira um endereço de email de teste",
|
||
"failedToCreateEvent": "Falha ao criar evento",
|
||
"eventCreationFailed": "Falha ao criar evento",
|
||
"networkError": "Erro de rede. Por favor, verifique sua conexão e tente novamente.",
|
||
"sessionExpired": "Sessão expirada. Por favor, faça login novamente."
|
||
},
|
||
"validation": {
|
||
"eventNameRequired": "O nome do evento é obrigatório",
|
||
"hostEmailRequired": "O email do cliente é obrigatório",
|
||
"hostNameRequired": "O nome do cliente é obrigatório",
|
||
"adminEmailRequired": "O email do admin é obrigatório",
|
||
"invalidEmailFormat": "Formato de email inválido",
|
||
"passwordRequired": "Senha é obrigatória",
|
||
"passwordMinLength": "A senha deve ter pelo menos 6 caracteres",
|
||
"passwordsDoNotMatch": "As senhas não coincidem",
|
||
"passwordSecurityRequirements": "A senha não atende aos requisitos de segurança",
|
||
"expirationRange": "A expiração deve ser entre 1 e 365 dias"
|
||
},
|
||
"legal": {
|
||
"impressum": "Aviso Legal",
|
||
"datenschutz": "Política de Privacidade",
|
||
"termsOfService": "Termos de Serviço",
|
||
"cookiePolicy": "Política de Cookies"
|
||
},
|
||
"toast": {
|
||
"saveSuccess": "Alterações salvas com sucesso",
|
||
"saveError": "Falha ao salvar alterações",
|
||
"deleteSuccess": "Excluído com sucesso",
|
||
"deleteError": "Falha ao excluir",
|
||
"uploadSuccess": "Upload concluído com sucesso",
|
||
"uploadError": "Falha no upload",
|
||
"loginSuccess": "Login realizado com sucesso",
|
||
"loginError": "Falha no login",
|
||
"passwordChanged": "Senha alterada com sucesso",
|
||
"linkCopied": "Link copiado para a área de transferência",
|
||
"eventCreated": "Evento criado com sucesso",
|
||
"eventUpdated": "Evento atualizado com sucesso",
|
||
"eventArchived": "Evento arquivado com sucesso",
|
||
"settingsSaved": "Configurações salvas com sucesso",
|
||
"themeUpdated": "Tema atualizado com sucesso",
|
||
"brandingUpdated": "Identidade visual atualizada com sucesso",
|
||
"categoryAdded": "Categoria adicionada com sucesso",
|
||
"categoryDeleted": "Categoria excluída com sucesso",
|
||
"categoryUpdated": "Categoria atualizada com sucesso",
|
||
"emailConfigSaved": "Configuração de email salva com sucesso",
|
||
"testEmailSent": "Email de teste enviado com sucesso",
|
||
"pageUpdated": "Página atualizada com sucesso",
|
||
"archiveRestored": "Arquivo restaurado com sucesso",
|
||
"archiveDeleted": "Arquivo excluído permanentemente"
|
||
},
|
||
"email": {
|
||
"title": "Configuração de Email",
|
||
"subtitle": "Configure as definições de email para notificações",
|
||
"loadingSettings": "Carregando configurações de email...",
|
||
"smtpConfiguration": "Configuração SMTP",
|
||
"smtpHost": "Host SMTP",
|
||
"smtpHostHelp": "O nome do host do seu servidor de email",
|
||
"smtpPort": "Porta SMTP",
|
||
"smtpPortHelp": "Geralmente 587 para TLS, 465 para SSL, 25 para sem criptografia",
|
||
"smtpSecure": "Usar SSL/TLS",
|
||
"smtpSecureHelp": "Ative para transmissão segura de email",
|
||
"smtpUsername": "Usuário SMTP",
|
||
"smtpUsernameHelp": "O nome de usuário da sua conta de email",
|
||
"smtpPassword": "Senha SMTP",
|
||
"smtpPasswordHelp": "A senha da sua conta de email",
|
||
"fromDetails": "Detalhes do Remetente",
|
||
"fromEmail": "Email do Remetente",
|
||
"fromEmailHelp": "Endereço de email que aparece como remetente",
|
||
"fromName": "Nome do Remetente",
|
||
"fromNameHelp": "Nome que aparece como remetente",
|
||
"testConfiguration": "Testar Configuração",
|
||
"testEmail": "Endereço de Email de Teste",
|
||
"testEmailHelp": "Envie um email de teste para verificar as configurações",
|
||
"sendTestEmail": "Enviar Email de Teste",
|
||
"saveConfiguration": "Salvar Configuração",
|
||
"emailTemplates": "Modelos de Email",
|
||
"templateVariables": "Variáveis Disponíveis",
|
||
"previewTemplate": "Pré-visualizar Modelo",
|
||
"smtpSettings": "Configurações SMTP",
|
||
"testEmailSuccess": "Email de teste enviado com sucesso",
|
||
"saveSmtpSettings": "Salvar Configurações SMTP",
|
||
"testEmailSection": "Email de Teste",
|
||
"beforeTesting": "Antes de testar:",
|
||
"saveSmtpFirst": "Salve suas configurações SMTP primeiro",
|
||
"ensureFirewall": "Certifique-se de que seu firewall permite SMTP de saída",
|
||
"gmailAppPassword": "Para Gmail, use uma senha específica de aplicativo",
|
||
"testEmailAddressLabel": "Endereço de Email de Teste",
|
||
"sendTestEmailButton": "Enviar Email de Teste",
|
||
"commonSmtpSettings": "Configurações SMTP Comuns:",
|
||
"editTemplate": "Editar Modelo",
|
||
"templateName": "Nome do Modelo",
|
||
"subjectLine": "Linha de Assunto",
|
||
"emailBody": "Corpo do Email",
|
||
"preview": "Pré-visualizar",
|
||
"save": "Salvar",
|
||
"saveChanges": "Salvar Alterações",
|
||
"templates": "Modelos",
|
||
"variableHelp": "Use estas variáveis no seu modelo. Elas serão substituídas pelos valores reais quando os emails forem enviados.",
|
||
"port": "Porta",
|
||
"security": "Segurança",
|
||
"username": "Usuário",
|
||
"password": "Senha",
|
||
"enterPassword": "Digite a senha",
|
||
"required": "obrigatório",
|
||
"ignoreSslErrors": "Ignorar erros de certificado SSL/TLS",
|
||
"ignoreSslWarning": "Aviso: Desativar a verificação de certificado torna a conexão vulnerável a ataques man-in-the-middle. Ative isso somente se você confia no servidor SMTP e compreende as implicações de segurança.",
|
||
"brandingTitle": "Identidade Visual do Email",
|
||
"brandingDescription": "Personalize as cores usadas nos modelos de email. As alterações se aplicam à barra de cabeçalho, botões, links e fundo do rodapé.",
|
||
"primaryColor": "Cor Primária",
|
||
"primaryColorHint": "Usada para cabeçalho, botões e links",
|
||
"secondaryColor": "Fundo do Rodapé",
|
||
"secondaryColorHint": "Usada para o fundo da seção de rodapé",
|
||
"saveEmailColors": "Salvar Cores do Email",
|
||
"editor": {
|
||
"bold": "Negrito",
|
||
"italic": "Itálico",
|
||
"bulletList": "Lista com Marcadores",
|
||
"numberedList": "Lista Numerada",
|
||
"blockquote": "Citação",
|
||
"link": "Adicionar Link",
|
||
"horizontalRule": "Linha Horizontal",
|
||
"alignLeft": "Alinhar à Esquerda",
|
||
"alignCenter": "Centralizar",
|
||
"alignRight": "Alinhar à Direita",
|
||
"clearFormatting": "Limpar Formatação",
|
||
"undo": "Desfazer",
|
||
"redo": "Refazer",
|
||
"insertVariable": "Inserir Variável",
|
||
"sourceMode": "Código",
|
||
"visualMode": "Visual",
|
||
"enterUrl": "Digite a URL...",
|
||
"addLink": "Adicionar",
|
||
"cancel": "Cancelar"
|
||
},
|
||
"copiedFromLanguage": "Conteúdo copiado de {{language}}",
|
||
"noTranslation": "Ainda sem tradução",
|
||
"noTranslationYet": "Ainda não existe tradução para este idioma. Copie de um idioma existente para começar:",
|
||
"copyFrom": "Copiar de"
|
||
},
|
||
"cms": {
|
||
"title": "Páginas CMS",
|
||
"subtitle": "Gerencie páginas legais e informativas",
|
||
"loadingPages": "Carregando páginas...",
|
||
"pages": "Páginas",
|
||
"previewLinks": "Links de Visualização",
|
||
"englishVersion": "Versão em Inglês",
|
||
"germanVersion": "Versão em Alemão",
|
||
"editPage": "Editar {{page}}",
|
||
"pageTitle": "Título da Página",
|
||
"pageContent": "Conteúdo da Página",
|
||
"pageTitlePlaceholder": "Digite o título da página...",
|
||
"saveChanges": "Salvar Alterações",
|
||
"lastUpdated": "Última atualização:",
|
||
"impressum": "Aviso Legal",
|
||
"datenschutz": "Política de Privacidade",
|
||
"pageUpdated": "Página atualizada com sucesso"
|
||
},
|
||
"eventTypes": {
|
||
"title": "Tipos de Evento",
|
||
"subtitle": "Personalize os tipos de evento e seus temas padrão",
|
||
"loading": "Carregando tipos de evento...",
|
||
"loadError": "Falha ao carregar tipos de evento",
|
||
"createNew": "Novo Tipo de Evento",
|
||
"edit": "Editar Tipo de Evento",
|
||
"created": "Tipo de evento criado com sucesso",
|
||
"updated": "Tipo de evento atualizado com sucesso",
|
||
"deleted": "Tipo de evento excluído com sucesso",
|
||
"createError": "Falha ao criar tipo de evento",
|
||
"updateError": "Falha ao atualizar tipo de evento",
|
||
"deleteError": "Falha ao excluir tipo de evento",
|
||
"searchPlaceholder": "Pesquisar tipos de evento...",
|
||
"showInactive": "Mostrar inativos",
|
||
"noResults": "Nenhum tipo de evento encontrado",
|
||
"empty": "Nenhum tipo de evento ainda",
|
||
"system": "Sistema",
|
||
"table": {
|
||
"type": "Tipo",
|
||
"slugPrefix": "Prefixo de URL",
|
||
"theme": "Tema Padrão",
|
||
"status": "Status",
|
||
"actions": "Ações"
|
||
},
|
||
"form": {
|
||
"name": "Nome de Exibição",
|
||
"namePlaceholder": "ex.: Ensaio de Família",
|
||
"slugPrefix": "Prefixo de URL",
|
||
"slugPrefixPlaceholder": "ex.: familia",
|
||
"slugPreview": "URL de exemplo:",
|
||
"emoji": "Ícone",
|
||
"themePreset": "Tema Padrão",
|
||
"isActive": "Ativo (visível na criação de eventos)"
|
||
},
|
||
"validation": {
|
||
"slugFormat": "Apenas letras, números e hifens são permitidos"
|
||
},
|
||
"slugInfo": {
|
||
"title": "Informações sobre o Prefixo de URL:",
|
||
"description": "O prefixo de URL é usado para gerar as URLs das galerias. Por exemplo, um tipo de evento com o prefixo \"familia\" criará URLs como: familia-silva-familia-2025-01-22"
|
||
},
|
||
"deleteConfirm": {
|
||
"title": "Excluir Tipo de Evento",
|
||
"message": "Tem certeza que deseja excluir",
|
||
"warning": "Esta ação não pode ser desfeita. Certifique-se de que nenhum evento está usando este tipo."
|
||
}
|
||
},
|
||
"backup": {
|
||
"external": {
|
||
"warning": {
|
||
"title": "Mídia externa excluída",
|
||
"body": "Esta instalação referencia fotos de /external-media. Esses originais estão excluídos dos backups. Miniaturas e banco de dados ainda são incluídos no backup."
|
||
}
|
||
},
|
||
"title": "Gerenciamento de Backup",
|
||
"subtitle": "Gerencie backups do sistema, configure backups automatizados e restaure a partir de backups anteriores.",
|
||
"tabs": {
|
||
"dashboard": "Painel",
|
||
"configuration": "Configuração",
|
||
"history": "Histórico de Backups",
|
||
"restore": "Restaurar"
|
||
},
|
||
"status": {
|
||
"inProgress": "Backup em andamento...",
|
||
"lastBackup": "Último backup",
|
||
"noBackups": "Nenhum backup encontrado",
|
||
"nextBackup": "Próximo backup",
|
||
"notScheduled": "Não agendado",
|
||
"enabled": "Ativado",
|
||
"disabled": "Desativado"
|
||
},
|
||
"actions": {
|
||
"runBackupNow": "Executar Backup Agora",
|
||
"starting": "Iniciando...",
|
||
"running": "Executando...",
|
||
"testConnection": "Testar Conexão",
|
||
"save": "Salvar Configuração",
|
||
"delete": "Excluir",
|
||
"view": "Ver Detalhes",
|
||
"download": "Baixar",
|
||
"refresh": "Atualizar"
|
||
},
|
||
"dashboard": {
|
||
"backupHealth": "Integridade do Backup",
|
||
"healthStatus": {
|
||
"excellent": "Excelente",
|
||
"good": "Bom",
|
||
"warning": "Atenção",
|
||
"critical": "Crítico"
|
||
},
|
||
"health": {
|
||
"title": "Integridade do Backup"
|
||
},
|
||
"healthMessages": {
|
||
"noBackups": "Nenhum backup encontrado",
|
||
"lastBackupFailed": "Último backup falhou",
|
||
"upToDate": "Backup está atualizado",
|
||
"recent": "Backup é recente",
|
||
"gettingOld": "Backup está ficando antigo",
|
||
"outdated": "Backup está desatualizado",
|
||
"failed": "Último backup falhou",
|
||
"old": "Backup está ficando antigo"
|
||
},
|
||
"stats": {
|
||
"totalBackups": "Total de Backups",
|
||
"backupSize": "Tamanho do Backup",
|
||
"lastDuration": "Duração do Último",
|
||
"backupStatus": "Status do Backup",
|
||
"last": "Último",
|
||
"files": "arquivos",
|
||
"minutes": "{{count}}m",
|
||
"active": "Ativo",
|
||
"inactive": "Inativo",
|
||
"noBackupsYet": "Nenhum backup ainda"
|
||
},
|
||
"recentActivity": {
|
||
"title": "Atividade Recente de Backup"
|
||
},
|
||
"notConfigured": {
|
||
"title": "Backup Não Configurado",
|
||
"message": "Por favor, configure as definições de backup na aba Configuração antes de executar backups."
|
||
},
|
||
"actions": {
|
||
"runBackupNow": "Executar Backup Agora",
|
||
"running": "Executando..."
|
||
},
|
||
"coverage": {
|
||
"title": "Cobertura do Backup",
|
||
"database": "Banco de Dados",
|
||
"photos": "Fotos",
|
||
"archives": "Arquivos",
|
||
"systemFiles": "Arquivos do Sistema",
|
||
"included": "Incluído",
|
||
"excluded": "Excluído",
|
||
"optional": "Opcional"
|
||
},
|
||
"storageDestination": "Destino de Armazenamento",
|
||
"nextScheduledBackup": "Próximo Backup Agendado",
|
||
"backupType": "Backup {{type}}",
|
||
"noDestinationSet": "Nenhum destino definido"
|
||
},
|
||
"configuration": {
|
||
"enableBackup": "Ativar Backups Automatizados",
|
||
"enableBackupHelp": "Criar backups automaticamente de acordo com o agendamento configurado",
|
||
"destinationType": "Destino do Backup",
|
||
"destinationTypes": {
|
||
"local": {
|
||
"name": "Armazenamento Local",
|
||
"description": "Armazenar backups no sistema de arquivos local do servidor"
|
||
},
|
||
"rsync": {
|
||
"name": "Servidor Remoto (Rsync)",
|
||
"description": "Sincronizar backups para um servidor remoto via SSH/Rsync"
|
||
},
|
||
"s3": {
|
||
"name": "Armazenamento S3 Compatível",
|
||
"description": "Armazenar backups no Amazon S3 ou armazenamento de objetos compatível"
|
||
}
|
||
},
|
||
"fields": {
|
||
"destinationPath": "Caminho de Destino",
|
||
"destinationPathHelp": "Caminho do diretório local para armazenar backups",
|
||
"destinationPathPlaceholder": "/caminho/para/diretorio/backup",
|
||
"rsyncHost": "Host Remoto",
|
||
"rsyncHostHelp": "Nome do host SSH ou endereço IP",
|
||
"rsyncHostPlaceholder": "backup.exemplo.com",
|
||
"rsyncUser": "Usuário SSH",
|
||
"rsyncUserHelp": "Nome de usuário para conexão SSH",
|
||
"rsyncUserPlaceholder": "usuario-backup",
|
||
"rsyncPath": "Caminho Remoto",
|
||
"rsyncPathHelp": "Caminho do diretório no servidor remoto",
|
||
"rsyncPathPlaceholder": "/home/backup/compartilhamento-fotos",
|
||
"rsyncSshKey": "Chave Privada SSH",
|
||
"rsyncSshKeyHelp": "Chave privada SSH para autenticação (opcional)",
|
||
"rsyncSshKeyPlaceholder": "-----BEGIN RSA PRIVATE KEY-----",
|
||
"s3Endpoint": "Endpoint S3",
|
||
"s3EndpointHelp": "Endpoint da API S3 (ex.: s3.amazonaws.com)",
|
||
"s3EndpointPlaceholder": "https://s3.amazonaws.com",
|
||
"s3Bucket": "Nome do Bucket",
|
||
"s3BucketHelp": "Bucket S3 para armazenar backups",
|
||
"s3BucketPlaceholder": "meu-bucket-de-backup",
|
||
"s3AccessKey": "ID da Chave de Acesso",
|
||
"s3AccessKeyHelp": "ID da chave de acesso AWS/S3",
|
||
"s3AccessKeyPlaceholder": "AKIAIOSFODNN7EXAMPLE",
|
||
"s3SecretKey": "Chave de Acesso Secreta",
|
||
"s3SecretKeyHelp": "Chave de acesso secreta AWS/S3",
|
||
"s3SecretKeyPlaceholder": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
|
||
"s3Region": "Região",
|
||
"s3RegionHelp": "Região S3 (ex.: us-east-1)",
|
||
"s3RegionPlaceholder": "us-east-1"
|
||
},
|
||
"schedule": {
|
||
"title": "Agendamento de Backup",
|
||
"scheduleType": "Tipo de Agendamento",
|
||
"scheduleOptions": {
|
||
"hourly": "A cada hora",
|
||
"daily": "Diariamente",
|
||
"weekly": "Semanalmente",
|
||
"custom": "Expressão cron personalizada"
|
||
},
|
||
"options": {
|
||
"hourly": "A cada hora",
|
||
"daily": "Diariamente",
|
||
"weekly": "Semanalmente",
|
||
"custom": "Expressão cron personalizada"
|
||
},
|
||
"customCron": "Expressão Cron",
|
||
"customCronHelp": "Digite uma expressão cron válida (ex.: 0 3 * * *)",
|
||
"retention": "Período de Retenção",
|
||
"retentionDays": "Manter backups por",
|
||
"retentionHelp": "dias (backups mais antigos serão excluídos automaticamente)"
|
||
},
|
||
"whatToBackup": {
|
||
"title": "O Que Incluir no Backup",
|
||
"database": "Banco de Dados",
|
||
"databaseHelp": "Todos os dados de eventos, configurações e definições",
|
||
"photos": "Fotos",
|
||
"photosHelp": "Todas as fotos enviadas em galerias ativas",
|
||
"archives": "Arquivos",
|
||
"archivesHelp": "Arquivos ZIP de eventos arquivados",
|
||
"thumbnails": "Miniaturas",
|
||
"thumbnailsHelp": "Imagens de miniatura geradas (podem ser recriadas)",
|
||
"tempFiles": "Arquivos Temporários",
|
||
"tempFilesHelp": "Arquivos temporários de upload e processamento"
|
||
},
|
||
"advancedOptions": {
|
||
"title": "Opções Avançadas",
|
||
"compression": "Ativar Compressão",
|
||
"compressionHelp": "Comprimir arquivos de backup para economizar espaço de armazenamento",
|
||
"encryption": "Ativar Criptografia",
|
||
"encryptionHelp": "Criptografar backups para segurança adicional",
|
||
"encryptionPassphrase": "Senha de Criptografia",
|
||
"encryptionPassphraseHelp": "Senha forte para criptografia de backup",
|
||
"confirmPassphrase": "Confirmar Senha",
|
||
"passphrasesDontMatch": "As senhas não coincidem"
|
||
},
|
||
"validation": {
|
||
"requiredFields": "Por favor, preencha todos os campos obrigatórios",
|
||
"invalidCron": "Expressão cron inválida",
|
||
"connectionTestFailed": "Teste de conexão falhou",
|
||
"connectionTestSuccess": "Teste de conexão bem-sucedido!"
|
||
},
|
||
"messages": {
|
||
"requiredFields": "Por favor, preencha todos os campos obrigatórios",
|
||
"connectionSuccess": "Teste de conexão bem-sucedido!",
|
||
"connectionFailed": "Teste de conexão falhou"
|
||
},
|
||
"testingConnection": "Testando conexão...",
|
||
"saveSettings": "Salvar Configuração",
|
||
"savingSettings": "Salvando..."
|
||
},
|
||
"history": {
|
||
"searchPlaceholder": "Pesquisar backups...",
|
||
"allStatus": "Todos os Status",
|
||
"status": {
|
||
"completed": "Concluído",
|
||
"failed": "Falhou",
|
||
"running": "Executando",
|
||
"partial": "Parcial"
|
||
},
|
||
"deleteConfirm": "Tem certeza que deseja excluir este backup de {{date}}?",
|
||
"noBackups": "Nenhum backup encontrado",
|
||
"tableHeaders": {
|
||
"date": "Data",
|
||
"type": "Tipo",
|
||
"status": "Status",
|
||
"size": "Tamanho",
|
||
"duration": "Duração",
|
||
"actions": "Ações"
|
||
},
|
||
"columns": {
|
||
"status": "Status",
|
||
"dateTime": "Data e Hora",
|
||
"type": "Tipo",
|
||
"size": "Tamanho",
|
||
"duration": "Duração",
|
||
"actions": "Ações"
|
||
},
|
||
"details": {
|
||
"backupDetails": "Detalhes do Backup",
|
||
"destination": "Destino",
|
||
"started": "Iniciado",
|
||
"completed": "Concluído",
|
||
"contentBackedUp": "Conteúdo no Backup",
|
||
"errorDetails": "Detalhes do Erro",
|
||
"manifest": "Manifesto"
|
||
},
|
||
"statistics": "Estatísticas",
|
||
"errors": "Erros",
|
||
"backupDetails": {
|
||
"backupId": "ID do Backup",
|
||
"startTime": "Hora de Início",
|
||
"endTime": "Hora de Término",
|
||
"destination": "Destino",
|
||
"filesProcessed": "Arquivos Processados",
|
||
"totalSize": "Tamanho Total",
|
||
"compressionRatio": "Taxa de Compressão",
|
||
"errorLog": "Log de Erros",
|
||
"noErrors": "Nenhum erro ocorreu"
|
||
},
|
||
"pagination": {
|
||
"showing": "Exibindo {{from}}-{{to}} de {{total}} backups",
|
||
"previous": "Anterior",
|
||
"next": "Próximo"
|
||
},
|
||
"filter": {
|
||
"allStatus": "Todos os Status",
|
||
"completed": "Concluído",
|
||
"failed": "Falhou",
|
||
"running": "Executando",
|
||
"partial": "Parcial"
|
||
},
|
||
"noBackupsFound": "Nenhum backup encontrado",
|
||
"backupsWillAppear": "Os backups aparecerão aqui quando criados",
|
||
"messages": {
|
||
"deleteSuccess": "Backup excluído com sucesso"
|
||
}
|
||
},
|
||
"restore": {
|
||
"steps": {
|
||
"selectSource": "Selecionar Origem",
|
||
"chooseBackup": "Escolher Backup",
|
||
"restoreOptions": "Opções de Restauração",
|
||
"reviewConfirm": "Revisar e Confirmar",
|
||
"progress": "Progresso da Restauração"
|
||
},
|
||
"source": {
|
||
"title": "Selecionar Origem do Backup",
|
||
"subtitle": "Escolha de onde restaurar o backup",
|
||
"local": {
|
||
"name": "Backup Local",
|
||
"description": "Restaurar a partir do sistema de arquivos local"
|
||
},
|
||
"s3": {
|
||
"name": "Armazenamento S3",
|
||
"description": "Restaurar a partir do bucket S3"
|
||
},
|
||
"upload": {
|
||
"name": "Enviar Backup",
|
||
"description": "Enviar um arquivo de backup",
|
||
"comingSoon": "Funcionalidade de upload em breve"
|
||
},
|
||
"configuration": {
|
||
"s3": "Configuração S3",
|
||
"endpoint": "URL do Endpoint S3",
|
||
"bucket": "Nome do Bucket",
|
||
"accessKey": "ID da Chave de Acesso",
|
||
"secretKey": "Chave de Acesso Secreta"
|
||
}
|
||
},
|
||
"backup": {
|
||
"title": "Escolher Backup para Restaurar",
|
||
"subtitle": "Selecione entre os backups disponíveis",
|
||
"noBackupsFound": "Nenhum backup encontrado na origem selecionada",
|
||
"encrypted": "Backup Criptografado",
|
||
"encryptedMessage": "Você precisará fornecer a senha de criptografia para restaurar este backup.",
|
||
"enterPassphrase": "Digite a senha de criptografia",
|
||
"at": "às"
|
||
},
|
||
"restoreTypes": {
|
||
"full": {
|
||
"name": "Restauração Completa",
|
||
"description": "Restaurar tudo, incluindo banco de dados, fotos e arquivos",
|
||
"warning": "Isso substituirá todos os dados atuais"
|
||
},
|
||
"database": {
|
||
"name": "Somente Banco de Dados",
|
||
"description": "Restaurar apenas o banco de dados (configurações, eventos, usuários)",
|
||
"warning": "O banco de dados atual será substituído"
|
||
},
|
||
"files": {
|
||
"name": "Somente Arquivos",
|
||
"description": "Restaurar apenas fotos e arquivos",
|
||
"warning": "Arquivos existentes podem ser sobrescritos"
|
||
},
|
||
"selective": {
|
||
"name": "Restauração Seletiva",
|
||
"description": "Escolher itens específicos para restaurar",
|
||
"warning": "Apenas os itens selecionados serão restaurados"
|
||
}
|
||
},
|
||
"options": {
|
||
"title": "Opções de Restauração",
|
||
"subtitle": "Escolha o que restaurar",
|
||
"additionalOptions": {
|
||
"title": "Opções Adicionais",
|
||
"skipPreBackup": "Ignorar Backup Pré-Restauração",
|
||
"skipPreBackupHelp": "Por padrão, um backup é criado antes da restauração. Marque esta opção para ignorar.",
|
||
"force": "Forçar Restauração",
|
||
"forceHelp": "Ignorar verificações e avisos de segurança (use com cuidado)"
|
||
}
|
||
},
|
||
"confirmation": {
|
||
"title": "Revisar e Confirmar",
|
||
"subtitle": "Por favor, revise sua configuração de restauração",
|
||
"validation": {
|
||
"passed": "Validação Aprovada",
|
||
"failed": "Validação Falhou",
|
||
"checking": "Validando configuração de restauração..."
|
||
},
|
||
"spaceCheck": {
|
||
"title": "Espaço de Armazenamento",
|
||
"required": "Necessário",
|
||
"available": "Disponível",
|
||
"insufficient": "Espaço de armazenamento insuficiente"
|
||
},
|
||
"summary": {
|
||
"title": "Resumo da Restauração",
|
||
"source": "Origem",
|
||
"backupDate": "Data do Backup",
|
||
"restoreType": "Tipo de Restauração",
|
||
"preBackup": "Pré-backup",
|
||
"enabled": "Ativado",
|
||
"skipped": "Ignorado"
|
||
},
|
||
"warning": {
|
||
"title": "Aviso Importante",
|
||
"message": "Esta operação de restauração substituirá os dados existentes. Certifique-se de ter um backup atual antes de continuar. Esta ação não pode ser desfeita."
|
||
}
|
||
},
|
||
"progress": {
|
||
"title": "Progresso da Restauração",
|
||
"inProgress": "Restauração em andamento...",
|
||
"completed": "Restauração concluída",
|
||
"overallProgress": "Progresso Geral",
|
||
"current": "Atual",
|
||
"statusDetails": "Detalhes do Status",
|
||
"restoreLogs": "Logs de Restauração",
|
||
"steps": {
|
||
"completed": "Concluído",
|
||
"running": "Executando",
|
||
"failed": "Falhou",
|
||
"pending": "Pendente"
|
||
},
|
||
"success": {
|
||
"title": "Restauração Concluída com Sucesso",
|
||
"message": "Seus dados foram restaurados. Por favor, verifique se tudo está funcionando corretamente."
|
||
}
|
||
},
|
||
"actions": {
|
||
"back": "Voltar",
|
||
"next": "Próximo",
|
||
"startRestore": "Iniciar Restauração",
|
||
"starting": "Iniciando...",
|
||
"validating": "Validando...",
|
||
"startNewRestore": "Iniciar Nova Restauração"
|
||
},
|
||
"messages": {
|
||
"restoreStarted": "Restauração iniciada com sucesso"
|
||
}
|
||
},
|
||
"messages": {
|
||
"backupStarted": "Backup iniciado com sucesso",
|
||
"backupFailed": "Falha ao iniciar backup",
|
||
"configUpdated": "Configuração de backup atualizada",
|
||
"configUpdateFailed": "Falha ao atualizar configuração",
|
||
"backupDeleted": "Backup excluído com sucesso",
|
||
"deleteFailed": "Falha ao excluir backup",
|
||
"testEmailSent": "Teste de conexão bem-sucedido!",
|
||
"testEmailFailed": "Teste de conexão falhou"
|
||
}
|
||
},
|
||
"cssTemplates": {
|
||
"title": "Modelos de CSS Personalizado",
|
||
"template": "Modelo",
|
||
"templateName": "Nome do Modelo",
|
||
"enableTemplate": "Ativar este modelo",
|
||
"enableHint": "Modelos ativados podem ser selecionados ao criar eventos",
|
||
"cssContent": "Conteúdo CSS",
|
||
"cssHint": "Use .gallery-page para aplicar estilos à galeria. Variáveis disponíveis: --gallery-bg, --gallery-text, --gallery-accent",
|
||
"securityNotice": "Aviso de Segurança",
|
||
"securityText": "O CSS é sanitizado para evitar código malicioso. URLs externas, @import e expressões JavaScript são bloqueados.",
|
||
"resetToDefault": "Redefinir para Padrão",
|
||
"resetConfirm": "Redefinir este modelo para o padrão? Suas alterações serão perdidas.",
|
||
"unsavedChanges": "Alterações não salvas",
|
||
"saveTemplate": "Salvar Modelo",
|
||
"lastUpdated": "Última atualização",
|
||
"saved": "Modelo salvo com sucesso",
|
||
"saveFailed": "Falha ao salvar modelo",
|
||
"sanitizationWarning": "Alguns padrões CSS foram bloqueados por segurança",
|
||
"reset": "Modelo redefinido para o padrão",
|
||
"resetFailed": "Falha ao redefinir modelo"
|
||
},
|
||
"maintenance": {
|
||
"title": "Manutenção do Sistema",
|
||
"message": "Estamos realizando manutenção programada para melhorar nosso serviço. Voltaremos em breve.",
|
||
"expectedCompletion": "Previsão de conclusão:",
|
||
"checkBackLater": "Por favor, volte mais tarde",
|
||
"urgentMatters": "Para assuntos urgentes, entre em contato com"
|
||
},
|
||
"passwordChange": {
|
||
"title": "Alterar Senha",
|
||
"currentPassword": "Senha Atual",
|
||
"newPassword": "Nova Senha",
|
||
"confirmPassword": "Confirmar Nova Senha",
|
||
"currentPasswordPlaceholder": "Digite a senha atual",
|
||
"newPasswordPlaceholder": "Digite a nova senha",
|
||
"confirmPasswordPlaceholder": "Confirme a nova senha",
|
||
"requirements": "Requisitos de Senha:",
|
||
"minLength": "Pelo menos 6 caracteres",
|
||
"mustDiffer": "Deve ser diferente da senha atual",
|
||
"success": "Senha alterada com sucesso",
|
||
"failed": "Falha ao alterar senha",
|
||
"currentRequired": "A senha atual é obrigatória",
|
||
"newRequired": "A nova senha é obrigatória",
|
||
"minLengthError": "A senha deve ter pelo menos 6 caracteres",
|
||
"confirmRequired": "Por favor, confirme sua nova senha",
|
||
"noMatch": "As senhas não coincidem",
|
||
"mustBeDifferent": "A nova senha deve ser diferente da senha atual",
|
||
"cancel": "Cancelar"
|
||
},
|
||
"mandatoryPasswordChange": {
|
||
"title": "Alteração de Senha Obrigatória",
|
||
"description": "Por razões de segurança, você deve alterar sua senha antes de acessar o painel de administração.",
|
||
"success": "Senha alterada com sucesso! Você já pode acessar o painel de administração.",
|
||
"minLength": "Pelo menos 12 caracteres",
|
||
"mustContainUpperLower": "Deve conter letras maiúsculas e minúsculas",
|
||
"mustContainNumbers": "Deve conter números",
|
||
"mustContainSpecial": "Deve conter caracteres especiais (!@#$%^&*)",
|
||
"minLengthError": "A senha deve ter pelo menos 12 caracteres",
|
||
"mustContainLowercase": "A senha deve conter letras minúsculas",
|
||
"mustContainUppercase": "A senha deve conter letras maiúsculas",
|
||
"mustContainNumbersError": "A senha deve conter números",
|
||
"mustContainSpecialError": "A senha deve conter caracteres especiais"
|
||
},
|
||
"offline": {
|
||
"backOnline": "Conexão restabelecida",
|
||
"noConnection": "Sem conexão com a internet"
|
||
},
|
||
"download": {
|
||
"downloading": "Baixando...",
|
||
"percentComplete": "% concluído"
|
||
},
|
||
"passwordGenerator": {
|
||
"weak": "Fraca",
|
||
"fair": "Razoável",
|
||
"good": "Boa",
|
||
"strong": "Forte",
|
||
"generating": "Gerando...",
|
||
"generatePassword": "Gerar Senha",
|
||
"showSuggestions": "Mostrar sugestões de senha",
|
||
"moreOptions": "Mais Opções",
|
||
"suggestions": "Sugestões de Senha",
|
||
"characters": "caracteres",
|
||
"copyPassword": "Copiar senha",
|
||
"use": "Usar",
|
||
"pattern": "Padrão:",
|
||
"patternDescription": "As senhas são geradas usando o nome e a data do seu evento. Exemplo: \"Local2024$Agosto\" para maior segurança e facilidade de memorização."
|
||
},
|
||
"feedback": {
|
||
"comments": "Comentários",
|
||
"addComment": "Adicionar Comentário",
|
||
"yourName": "Seu nome",
|
||
"yourEmail": "Seu email",
|
||
"writeComment": "Escreva um comentário...",
|
||
"submit": "Enviar",
|
||
"commentSubmitted": "Comentário enviado",
|
||
"commentError": "Falha ao enviar comentário",
|
||
"rateLimited": "Por favor, aguarde antes de comentar novamente",
|
||
"commentRequired": "O comentário é obrigatório",
|
||
"nameRequired": "O nome é obrigatório",
|
||
"emailRequired": "O email é obrigatório",
|
||
"anonymous": "Anônimo",
|
||
"pendingApproval": "Aguardando aprovação",
|
||
"noComments": "Nenhum comentário ainda. Seja o primeiro a comentar!",
|
||
"rating": "Avaliação",
|
||
"ratePhoto": "Avaliar esta foto",
|
||
"yourRating": "Sua avaliação",
|
||
"averageRating": "Avaliação média",
|
||
"totalRatings": "avaliações",
|
||
"likes": "Curtidas",
|
||
"favorites": "Favoritos",
|
||
"likePhoto": "Curtir esta foto",
|
||
"favoritePhoto": "Adicionar aos favoritos",
|
||
"photoFeedback": "Feedback da Foto",
|
||
"hasFeedback": "Tem feedback",
|
||
"hasComments": "Tem comentários",
|
||
"hasRating": "Tem avaliação",
|
||
"settings": {
|
||
"title": "Configurações de Feedback dos Convidados",
|
||
"enableFeedback": "Ativar feedback",
|
||
"feedbackTypes": "Tipos de Feedback",
|
||
"ratings": "Avaliações por Estrelas",
|
||
"ratingsDesc": "Permitir que convidados avaliem fotos (1-5 estrelas)",
|
||
"likes": "Curtidas",
|
||
"likesDesc": "Funcionalidade simples de curtir/descurtir",
|
||
"comments": "Comentários",
|
||
"commentsDesc": "Comentários de texto nas fotos",
|
||
"favorites": "Favoritos",
|
||
"favoritesDesc": "Marcar fotos como favoritas"
|
||
}
|
||
},
|
||
"filter": {
|
||
"feedbackFilters": "Filtros de Feedback",
|
||
"clear": "Limpar",
|
||
"rating": "Avaliação",
|
||
"allPhotos": "Todas as Fotos",
|
||
"anyRating": "Qualquer Avaliação",
|
||
"oneStarPlus": "1+ Estrela",
|
||
"twoStarsPlus": "2+ Estrelas",
|
||
"threeStarsPlus": "3+ Estrelas",
|
||
"fourStarsPlus": "4+ Estrelas",
|
||
"fiveStarsOnly": "Apenas 5 Estrelas",
|
||
"hasLikes": "Tem curtidas",
|
||
"hasFavorites": "Tem favoritos",
|
||
"hasComments": "Tem comentários",
|
||
"showingPhotos": "Total de fotos",
|
||
"withRatings": "Com avaliações"
|
||
},
|
||
"adminLogin": {
|
||
"title": "Login de Administrador",
|
||
"subtitle": "Entre para gerenciar suas galerias de fotos",
|
||
"sessionExpired": "Sua sessão expirou. Por favor, faça login novamente.",
|
||
"emailLabel": "Endereço de email",
|
||
"emailPlaceholder": "[email protected]",
|
||
"emailRequired": "O email é obrigatório",
|
||
"invalidEmail": "Formato de email inválido",
|
||
"passwordLabel": "Senha",
|
||
"passwordPlaceholder": "Digite sua senha",
|
||
"passwordRequired": "A senha é obrigatória",
|
||
"passwordMinLength": "A senha deve ter pelo menos 6 caracteres",
|
||
"rememberMe": "Lembrar de mim",
|
||
"forgotPassword": "Esqueceu a senha?",
|
||
"signIn": "Entrar",
|
||
"loginSuccess": "Login realizado com sucesso!",
|
||
"networkError": "Erro de rede. Por favor, verifique sua conexão e tente novamente.",
|
||
"tooManyAttempts": "Muitas tentativas de login. Por favor, tente novamente mais tarde.",
|
||
"invalidCredentials": "email ou senha inválidos",
|
||
"generalError": "Ocorreu um erro. Por favor, tente novamente.",
|
||
"needHelp": "Precisa de ajuda? Entre em contato com",
|
||
"poweredBy": "Desenvolvido por PicPeak",
|
||
"devModeHint": "Modo de Desenvolvimento: Use email: [email protected], senha: admin123"
|
||
},
|
||
"clientAccess": {
|
||
"title": "Acesso do Cliente",
|
||
"description": "Revise as fotos e gerencie a visibilidade antes de compartilhar a galeria com os convidados.",
|
||
"pinLabel": "PIN do Cliente",
|
||
"pinPlaceholder": "Digite seu PIN de cliente",
|
||
"enterPin": "Por favor, digite seu PIN de cliente",
|
||
"invalidPin": "PIN inválido. Por favor, tente novamente.",
|
||
"loginFailed": "Autenticação falhou. Por favor, tente novamente.",
|
||
"loginButton": "Acessar Galeria",
|
||
"guestHint": "Procurando pela galeria de convidados?",
|
||
"guestLink": "Ir para a visualização de convidados",
|
||
"banner": "Modo Cliente",
|
||
"visibleCount": "{{visible}} de {{total}} fotos visíveis para os convidados",
|
||
"hideSelected": "Ocultar Selecionadas",
|
||
"showSelected": "Mostrar Selecionadas",
|
||
"adminTitle": "Acesso do Cliente",
|
||
"enableToggle": "Ativar Acesso do Cliente",
|
||
"enableDescription": "Permitir que clientes revisem e ocultem fotos antes de a galeria ser compartilhada com os convidados.",
|
||
"pinHelperText": "O cliente usará este PIN para acessar a página de revisão.",
|
||
"pinUpdated": "PIN do cliente atualizado",
|
||
"setPin": "Definir PIN",
|
||
"linkLabel": "Link de Acesso do Cliente",
|
||
"regenerateToken": "Regenerar link",
|
||
"tokenRegenerated": "Link de acesso do cliente regenerado"
|
||
},
|
||
"export": {
|
||
"button": "Exportar",
|
||
"success": "Exportação baixada com sucesso",
|
||
"error": "Falha na exportação: ",
|
||
"exportSelected": "Exportar {{count}} selecionados",
|
||
"exportFiltered": "Exportar fotos filtradas",
|
||
"hint": "Selecione fotos ou aplique filtros para exportar"
|
||
},
|
||
"photoSort": {
|
||
"defaultSort": "Ordenação padrão das fotos",
|
||
"uploadDateNewest": "Data de envio (Mais recentes)",
|
||
"uploadDateOldest": "Data de envio (Mais antigas)",
|
||
"captureDateNewest": "Data da captura (Mais recentes)",
|
||
"captureDateOldest": "Data da captura (Mais antigas)",
|
||
"filenameAZ": "Nome do arquivo (A-Z)",
|
||
"filenameZA": "Nome do arquivo (Z-A)",
|
||
"dateTaken": "Data da captura"
|
||
}
|
||
}
|