mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2026-03-24 17:44:06 -04:00
Compare commits
9 Commits
cookie-per
...
v0.1.0.545
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dfb254d2dc | ||
|
|
07c03b0a12 | ||
|
|
eb0cf2d5f6 | ||
|
|
69c04ebe7a | ||
|
|
135db6d2ff | ||
|
|
c3deace9e6 | ||
|
|
9042594b14 | ||
|
|
44df0f5c3d | ||
|
|
7b9446eb35 |
2
.github/FUNDING.yml
vendored
2
.github/FUNDING.yml
vendored
@@ -1,6 +1,6 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||
github: Prowlarr # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||
patreon: # Replace with a single Patreon username
|
||||
open_collective: prowlarr
|
||||
ko_fi: # Replace with a single Ko-fi username
|
||||
|
||||
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -35,3 +35,4 @@ assignees: ''
|
||||
Turn on Trace logs under Settings -> General and wait for the bug to occur again.
|
||||
**Upload the full log file here (or another site (e.g. pastebin) and link it). Issues will be closed, if they do not include this!**
|
||||
<!-- Trace logs are named Prowlarr.trace.txt or Prowlarr.trace.#.txt and will contain "trace" in them-->
|
||||
<!-- Please see the Wiki for how to provide proper and useful trace log files https://wiki.servarr.com/prowlarr/troubleshooting#logging-and-log-files -->
|
||||
|
||||
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -5,6 +5,7 @@ YES | NO
|
||||
A few sentences describing the overall goals of the pull request's commits.
|
||||
|
||||
#### Screenshot (if UI related)
|
||||
|
||||
#### Todos
|
||||
- [ ] Tests
|
||||
- [ ] Translation Keys
|
||||
|
||||
@@ -19,6 +19,7 @@ namespace NzbDrone.Common.Test.InstrumentationTests
|
||||
[TestCase(@"http://nzb.su/getnzb/2b51db35e1912ffc138825a12b9933d2.nzb&i=37292&r=2b51db35e1910123321025a12b9933d2")]
|
||||
[TestCase(@"https://horrorcharnel.org/takeloginhorror.php: username=mySecret&password=mySecret&use_sslvalue==&perm_ssl=1&submitme=X&use_ssl=1&returnto=%2F&captchaSelection=1230456")]
|
||||
[TestCase(@"https://torrentdb.net/login: _token=2b51db35e1912ffc138825a12b9933d2&username=mySecret&password=mySecret&remember=on")]
|
||||
[TestCase(@" var authkey = ""2b51db35e1910123321025a12b9933d2"";")]
|
||||
|
||||
// NzbGet
|
||||
[TestCase(@"{ ""Name"" : ""ControlUsername"", ""Value"" : ""mySecret"" }, { ""Name"" : ""ControlPassword"", ""Value"" : ""mySecret"" }, ")]
|
||||
@@ -90,5 +91,14 @@ namespace NzbDrone.Common.Test.InstrumentationTests
|
||||
|
||||
cleansedMessage.Should().Be(message);
|
||||
}
|
||||
|
||||
[TestCase(@"&useToken=2b51db35e1910123321025a12b9933d2")]
|
||||
[TestCase(@"&useToken=2b51db35e1910123321025a12b9933d2")]
|
||||
public void should_not_clean_usetoken(string message)
|
||||
{
|
||||
var cleansedMessage = CleanseLogMessage.Cleanse(message);
|
||||
|
||||
cleansedMessage.Should().Be(message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,12 +12,13 @@ namespace NzbDrone.Common.Instrumentation
|
||||
{
|
||||
// Url
|
||||
new Regex(@"(?<=\?|&|: |;)(apikey|token|passkey|auth|authkey|user|uid|api|[a-z_]*apikey|account|passwd)=(?<secret>[^&=]+?)(?= |&|$)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"(?<=\?|&| )[^=]*?(_?token|username|passwo?rd)=(?<secret>[^&=]+?)(?= |&|$)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"(?<=\?|&| )[^=]*?(_?(?<!use)token|username|passwo?rd)=(?<secret>[^&=]+?)(?= |&|$)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"torrentleech\.org/(?!rss)(?<secret>[0-9a-z]+)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"torrentleech\.org/rss/download/[0-9]+/(?<secret>[0-9a-z]+)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"iptorrents\.com/[/a-z0-9?&;]*?(?:[?&;](u|tp)=(?<secret>[^&=;]+?))+(?= |;|&|$)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"/fetch/[a-z0-9]{32}/(?<secret>[a-z0-9]{32})", RegexOptions.Compiled),
|
||||
new Regex(@"getnzb.*?(?<=\?|&)(r)=(?<secret>[^&=]+?)(?= |&|$)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
new Regex(@"(?<=authkey = "")(?<secret>[^&=]+?)(?="")", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
|
||||
// Path
|
||||
new Regex(@"""C:\\Users\\(?<secret>[^\""]+?)(\\|$)", RegexOptions.Compiled | RegexOptions.IgnoreCase),
|
||||
|
||||
@@ -180,7 +180,7 @@ namespace NzbDrone.Core.Configuration
|
||||
public bool AnalyticsEnabled => GetValueBoolean("AnalyticsEnabled", true, persist: false);
|
||||
|
||||
// TODO: Change back to "master" for the first stable release.
|
||||
public string Branch => GetValue("Branch", "nightly").ToLowerInvariant();
|
||||
public string Branch => GetValue("Branch", "develop").ToLowerInvariant();
|
||||
|
||||
public string LogLevel => GetValue("LogLevel", "info").ToLowerInvariant();
|
||||
public string ConsoleLogLevel => GetValue("ConsoleLogLevel", string.Empty, persist: false);
|
||||
|
||||
@@ -33,7 +33,7 @@ namespace NzbDrone.Core.Configuration
|
||||
var releaseInfoPath = Path.Combine(bin, "release_info");
|
||||
|
||||
PackageUpdateMechanism = UpdateMechanism.BuiltIn;
|
||||
DefaultBranch = "nightly";
|
||||
DefaultBranch = "develop";
|
||||
|
||||
if (Path.GetFileName(bin) == "bin" && diskProvider.FileExists(packageInfoPath))
|
||||
{
|
||||
|
||||
@@ -41,10 +41,10 @@ namespace NzbDrone.Core.Download.Clients.Nzbget
|
||||
[FieldDefinition(1, Label = "Port", Type = FieldType.Textbox)]
|
||||
public int Port { get; set; }
|
||||
|
||||
[FieldDefinition(2, Label = "Use SSL", Type = FieldType.Checkbox, HelpText = "Use secure connection when connecting to Sabnzbd")]
|
||||
[FieldDefinition(2, Label = "Use SSL", Type = FieldType.Checkbox, HelpText = "Use secure connection when connecting to NZBGet")]
|
||||
public bool UseSsl { get; set; }
|
||||
|
||||
[FieldDefinition(3, Label = "Url Base", Type = FieldType.Textbox, Advanced = true, HelpText = "Adds a prefix to the nzbget url, e.g. http://[host]:[port]/[urlBase]/jsonrpc")]
|
||||
[FieldDefinition(3, Label = "Url Base", Type = FieldType.Textbox, Advanced = true, HelpText = "Adds a prefix to the NZBGet url, e.g. http://[host]:[port]/[urlBase]/jsonrpc")]
|
||||
public string UrlBase { get; set; }
|
||||
|
||||
[FieldDefinition(4, Label = "Username", Type = FieldType.Textbox, Privacy = PrivacyLevel.UserName)]
|
||||
|
||||
@@ -223,11 +223,6 @@ namespace NzbDrone.Core.Indexers.Cardigann
|
||||
}
|
||||
}
|
||||
|
||||
public override IDictionary<string, string> GrabCookies()
|
||||
{
|
||||
return ((CardigannRequestGenerator)GetRequestGenerator()).Cookies;
|
||||
}
|
||||
|
||||
public override object RequestAction(string action, IDictionary<string, string> query)
|
||||
{
|
||||
if (action == "checkCaptcha")
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using NzbDrone.Core.IndexerSearch.Definitions;
|
||||
@@ -29,8 +28,6 @@ namespace NzbDrone.Core.Indexers
|
||||
|
||||
Task<byte[]> Download(Uri link);
|
||||
|
||||
IDictionary<string, string> GrabCookies();
|
||||
|
||||
IndexerCapabilities GetCapabilities();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -125,10 +125,5 @@ namespace NzbDrone.Core.Indexers
|
||||
{
|
||||
return Definition.Name;
|
||||
}
|
||||
|
||||
public virtual IDictionary<string, string> GrabCookies()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -267,13 +267,7 @@ namespace NzbDrone.Core.Indexers
|
||||
MapCardigannDefinition(definition);
|
||||
}
|
||||
|
||||
var newDef = base.Create(definition);
|
||||
|
||||
provider.Definition = newDef;
|
||||
|
||||
_indexerStatusService.UpdateCookies(newDef.Id, provider.GrabCookies(), DateTime.Now + TimeSpan.FromDays(30));
|
||||
|
||||
return newDef;
|
||||
return base.Create(definition);
|
||||
}
|
||||
|
||||
public override void Update(IndexerDefinition definition)
|
||||
|
||||
@@ -906,5 +906,6 @@
|
||||
"AppProfileSelectHelpText": "App-Profile werden verwendet, um die Einstellungen für RSS, automatische Suche und interaktive Suche bei der Anwendungssynchronisierung zu steuern",
|
||||
"Discord": "Discord",
|
||||
"PrioritySettings": "Priorität",
|
||||
"NotificationTriggersHelpText": "Auslöser für diese Benachrichtigung auswählen"
|
||||
"NotificationTriggersHelpText": "Auslöser für diese Benachrichtigung auswählen",
|
||||
"Add": "Hinzufügen"
|
||||
}
|
||||
|
||||
@@ -283,7 +283,7 @@
|
||||
"Crew": "Equipe Técnica",
|
||||
"ConnectSettingsSummary": "Notificações, ligações para servidores/leitores de multimédia e scripts personalizados",
|
||||
"Connections": "Ligações",
|
||||
"ConnectionLostMessage": "O Prowlarr perdeu a ligação com o back-end e precisará ser recarregado para restaurar a funcionalidade.",
|
||||
"ConnectionLostMessage": "O Prowlarr perdeu a ligação com o back-end e precisará recarregar para restaurar a funcionalidade.",
|
||||
"ConnectionLostAutomaticMessage": "O Prowlarr tentará ligar automaticamente, ou você pode clicar em Recarregar abaixo.",
|
||||
"ConnectionLost": "Ligação perdida",
|
||||
"Connect": "Ligar",
|
||||
@@ -321,7 +321,7 @@
|
||||
"Added": "Adicionado",
|
||||
"Activity": "Atividade",
|
||||
"Actions": "Ações",
|
||||
"About": "Acerca de",
|
||||
"About": "Informações",
|
||||
"AvailabilityDelay": "Espera de Disponibilidade",
|
||||
"AutoUnmonitorPreviouslyDownloadedMoviesHelpText": "Filmes deletados no disco deixam automaticamente de ser monitorados no Prowlarr",
|
||||
"AutoRedownloadFailedHelpText": "Automaticamente busque e tente baixar uma versão diferente",
|
||||
@@ -337,7 +337,7 @@
|
||||
"ApplyTags": "Aplicar etiquetas",
|
||||
"AppDataDirectory": "Pasta AppData",
|
||||
"ApiKey": "Chave da API",
|
||||
"AnalyticsEnabledHelpText": "Envie informações anônimas de uso e de erros aos servidores do Prowlarr. Isso inclui informações sobre seu browser, páginas utilizadas no WebUI do Prowlarr, informações de erros, bem como as versões de sistema operacional e da aplicação. Usaremos essas informações para priorizar recursos e correções de bugs.",
|
||||
"AnalyticsEnabledHelpText": "Envie informações anônimas de uso e de erros aos servidores do Prowlarr. Isso inclui informações sobre seu browser, páginas utilizadas na WebUI do Prowlarr, relatórios de erros, bem como as versões de sistema operativo e da aplicação. Usaremos essas informações para priorizar recursos e correções de bugs.",
|
||||
"AnalyseVideoFiles": "Analizar arquivos de vídeo",
|
||||
"AlreadyInYourLibrary": "Já está em sua biblioteca",
|
||||
"AllowHardcodedSubsHelpText": "Legendas embutidas que sejam detectadas serão automaticamente baixadas",
|
||||
@@ -485,7 +485,7 @@
|
||||
"DeleteCustomFormat": "Deletar Formato Personalizado",
|
||||
"DeleteBackup": "Eliminar cópia de segurança",
|
||||
"DelayProfile": "Perfil de atraso",
|
||||
"DBMigration": "Migração de base de dados",
|
||||
"DBMigration": "Migração da base de dados",
|
||||
"CutoffHelpText": "Quando esta qualidade for alcançada, o Prowlarr não irá mais baixar filmes",
|
||||
"CutoffFormatScoreHelpText": "Quando esta pontuação do formato personalizado for alcançada, o Prowlarr não irá mais baixar filmes",
|
||||
"CustomFormatsSettings": "Ajustes Personalizados de Formatos",
|
||||
@@ -505,7 +505,7 @@
|
||||
"ClickToChangeLanguage": "Clique para mudar o idioma",
|
||||
"CleanLibraryLevel": "Limpar Nível da Biblioteca",
|
||||
"CheckForFinishedDownloadsInterval": "Intervalo de verificação de Downloads Terminados",
|
||||
"ChangeHasNotBeenSavedYet": "Mudança ainda não foi salva",
|
||||
"ChangeHasNotBeenSavedYet": "A mudança ainda não foi salva",
|
||||
"ChangeFileDate": "Modificar Data do Arquivo",
|
||||
"CertificationCountryHelpText": "Selecionar País para Certificação de Filmes",
|
||||
"CertificationCountry": "País de certificação",
|
||||
@@ -529,14 +529,14 @@
|
||||
"CheckDownloadClientForDetails": "verifique o gerenciador de downloads para mais detalhes",
|
||||
"CantFindMovie": "Por que não consigo encontrar meu filme?",
|
||||
"CancelPendingTask": "Tem a certeza que quer cancelar esta tarefa pendente?",
|
||||
"BranchUpdateMechanism": "Ramificação usada pelo mecanismo externo de atualização",
|
||||
"BranchUpdateMechanism": "Ramificação utilizada pelo mecanismo externo de atualização",
|
||||
"BranchUpdate": "Ramificação utilizada para atualizar o Prowlarr",
|
||||
"BeforeUpdate": "Antes de atualizar",
|
||||
"AvailabilityDelayHelpText": "Quantidade de tempo antes ou depois da data de disponibilidade para buscar por Filme",
|
||||
"ApplyTagsHelpTexts4": "Substituir: mudar as etiquetas pelas adicionadas (deixe em branco para limpar todas as etiquetas)",
|
||||
"ApplyTagsHelpTexts3": "Remover: eliminar as etiquetas adicionadas",
|
||||
"ApplyTagsHelpTexts2": "Adicionar: agregar as etiquetas à lista existente de etiquetas",
|
||||
"ApplyTagsHelpTexts1": "Como adicionar etiquetas aos filmes selecionados",
|
||||
"ApplyTagsHelpTexts1": "Como aplicar etiquetas aos indexadores selecionados",
|
||||
"AllowMovieChangeClickToChangeMovie": "Clique para trocar o filme",
|
||||
"AddingTag": "Adicionando etiqueta",
|
||||
"AddImportExclusionHelpText": "Impedir filme de ser adicionado ao Prowlarr através de listas",
|
||||
@@ -874,9 +874,9 @@
|
||||
"ApplicationStatusCheckSingleClientMessage": "Aplicações indisponíveis devido a falhas: {0}",
|
||||
"ApplicationStatusCheckAllClientMessage": "Todas as aplicações estão indisponíveis devido a falhas",
|
||||
"AllIndexersHiddenDueToFilter": "Todos os indexadores estão ocultos devido ao filtro aplicado.",
|
||||
"AddToDownloadClient": "Adicionar lançamento ao cliente de download",
|
||||
"AddToDownloadClient": "Adicionar versão ao cliente de transferências",
|
||||
"AddNewIndexer": "Adicionar novo indexador",
|
||||
"AddedToDownloadClient": "Lançamento adicionado ao cliente",
|
||||
"AddedToDownloadClient": "Versão adicionada ao cliente",
|
||||
"AppProfile": "Perfil da aplicação",
|
||||
"AddAppProfile": "Adicionar perfil de sincronização da aplicação",
|
||||
"SettingsFilterSentryEventsHelpText": "Filtrar eventos de erro de utilizador conhecidos para que não sejam enviados para análise",
|
||||
@@ -931,5 +931,8 @@
|
||||
"Stats": "Estatísticas",
|
||||
"Query": "Consulta",
|
||||
"Privacy": "Privacidade",
|
||||
"FullSync": "Sincronização completa"
|
||||
"FullSync": "Sincronização completa",
|
||||
"AddRemoveOnly": "Adicionar e remover apenas",
|
||||
"AddDownloadClientToProwlarr": "Adicionar um cliente de transferências possibilita ao Prowlarr enviar versões diretamente da IU ao realizar uma pesquisa manual.",
|
||||
"Add": "Adicionar"
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
"ConnectSettingsSummary": "Notificações, conexões com servidores/reprodutores de mídia, e scripts personalizados",
|
||||
"DeleteIndexerMessageText": "Tem certeza de que deseja excluir o indexador \"{0}\"?",
|
||||
"IndexerObsoleteCheckMessage": "Os seguintes indexadores são obsoletos ou foram atualizados: {0}. Remova-os e/ou adicione-os novamente ao Prowlarr",
|
||||
"DownloadClientsSettingsSummary": "Clientes de download, gerenciamento de download e mapeamentos de caminho remoto",
|
||||
"DownloadClientsSettingsSummary": "Configuração de clientes de download para integração com a pesquisa na interface do Prowlarr",
|
||||
"EnableAutoHelpText": "Se habilitada, os filmes serão automaticamente adicionados ao Prowlarr a partir desta lista",
|
||||
"EnableAutomaticSearchHelpTextWarning": "Será usado com a pesquisa interativa",
|
||||
"EnableColorImpairedModeHelpText": "Estilo alterado para permitir que usuários com daltonismo distingam melhor as informações codificadas por cores",
|
||||
@@ -416,5 +416,13 @@
|
||||
"Applications": "Aplicativos",
|
||||
"AddDownloadClient": "Adicionar cliente de download",
|
||||
"CouldNotConnectSignalR": "Não é possível conectar ao SignalR, a interface não atualizará",
|
||||
"PrioritySettings": "Prioridade"
|
||||
"PrioritySettings": "Prioridade",
|
||||
"SyncLevelFull": "Sincronização completa: manterá este aplicativo completamente sincronizado. Alterações feitas no Prowlarr são, então, sincronizadas com este aplicativo. Qualquer alteração feita remotamente será substituída pelo Prowlarr na próxima sincronização.",
|
||||
"SyncLevelAddRemove": "Adicionar e remover apenas: quando o Prowlarr adiciona ou remove, ele atualizará este aplicativo remoto.",
|
||||
"SyncLevel": "Nível de sincronização",
|
||||
"FullSync": "Sincronização completa",
|
||||
"Edit": "Editar",
|
||||
"AddRemoveOnly": "Adicionar e remover apenas",
|
||||
"AddDownloadClientToProwlarr": "Adicionar um cliente de download possibilita que o Prowlarr envie lançamentos diretamente da interface ao executar uma pesquisa manual.",
|
||||
"Add": "Adicionar"
|
||||
}
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
{}
|
||||
{
|
||||
"Added": "已添加",
|
||||
"AddDownloadClient": "添加下载客户端",
|
||||
"Add": "添加",
|
||||
"About": "关于"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user