Merge dev into v4

pull/3895/head
TidusJar 6 years ago
commit 511f6ace77

@ -1,8 +1,107 @@
# Changelog
## v3.0.4256 (2019-02-18)
## v3.0.4119 (2019-1-09)
### **New Features**
- Update discord link to follow the scheme of other links. [Tom McClellan]
- Update issue templates. [Jamie]
- Update README.md. [Jamie]
- Update CHANGELOG.md. [Jamie]
- Added the functionality to remove a user from getting notifications to their mobile device #2780. [tidusjar]
- Added a demo mode, this will only show movies and shows that are in the public domain. Dam that stupid fruit company. [tidusjar]
- Added Actor Searching for Movies! [TidusJar]
- Added the ability to change where the View on Emby link goes to #2730. [TidusJar]
- Added the request queue to the notifications UI so you can turn it off per notification agent #2747. [TidusJar]
- Added new classes to the posters #2732. [TidusJar]
### **Fixes**
- Fix: src/Ombi/package.json to reduce vulnerabilities. [snyk-bot]
- Fixed #2801 this is when a season is not correctly monitored in sonarr when approved by an admin. [tidusjar]
- Small improvements to try and mitigate #2750. [tidusjar]
- Removed some areas where we clear out the cache. This should help with DB locking #2750. [tidusjar]
- Fixed #2810. [tidusjar]
- Cannot create an issue comment with the API #2811. [tidusjar]
- Set the local domain if the Application URL is set for the HELO or EHLO commands. #2636. [tidusjar]
- New translations en.json (Spanish) [Jamie]
- Delete ISSUE_TEMPLATE.md. [Jamie]
- More minor grammatical edits. [Andrew Metzger]
- Minor grammatical edits. [Andrew Metzger]
- Fixed #2802 the issue where "Issues" were not being deleted correctly. [tidusjar]
- Fixed #2797. [tidusjar]
- New translations en.json (Dutch) [Jamie]
- New translations en.json (Spanish) [Jamie]
- New translations en.json (Portuguese, Brazilian) [Jamie]
- Fixed #2786. [tidusjar]
- Fixed #2756. [tidusjar]
- Ignore the UserName header as part of the Api is the value is an empty string. [tidusjar]
- Fixed #2759. [tidusjar]
- Did #2756. [TidusJar]
- Fixed the exception that sometimes makes ombi fallover. [TidusJar]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Swedish) [Jamie]
- Log the error to the ui to figure out what's going on with #2755. [tidusjar]
- Small fix when denying a request with a reason, we wasn't updating the ui. [TidusJar]
- Make sure we can only set the ApiAlias when using the API Key. [tidusjar]
- #2363 Added the ability to pass any username into the API using the ApiAlias header. [tidusjar]
- Removed the Add user to Plex from Ombi. [tidusjar]
## v3.0.4119 (2019-01-09)
### **New Features**
@ -24,27 +123,33 @@
- Added the ability to specify a year when searching for movies. [tidusjar]
- Made the newsletter use the default lanuage code set in the Ombi settings for movie information. [TidusJar]
- Update NewsletterTemplate.html. [d1slact0r]
- Added a global language flag that now applies to the search by default. [tidusjar]
- Update NewsletterTemplate.html. [d1slact0r]
- Updated the frontend packages (Using Angular 7 now) [TidusJar]
- Update NewsletterTemplate.html. [d1slact0r]
- Added capture of anonymous analytical data. [tidusjar]
- Update HtmlTemplateGenerator.cs. [d1slact0r]
- Added {AvailableDate} as a Notification Variable, this is the date the request was marked as available. See here: https://github.com/tidusjar/Ombi/wiki/Notification-Template-Variables. [tidusjar]
- Update NewsletterTemplate.html. [d1slact0r]
- Updated the Newsletter template! Better mail client support [d1slact0r]
- Update HtmlTemplateGenerator.cs. [d1slact0r]
- Updated boostrap #2694. [TidusJar]
- Update NewsletterTemplate.html. [d1slact0r]
- Added the ability to deny a request with a reason. [TidusJar]
- Updated to .net core 2.2 and included a linux-arm64 build. [aptalca]
- Update NewsletterTemplate.html. [d1slact0r]
- Make the newsletter BCC the users rather than creating a million newsletters (Hopefully will stop SMTP providers from marking as spam). This does mean that the custom user customization in the newsletter will no longer work. [TidusJar]
- Update NewsletterTemplate.html. [d1slact0r]
- Update HtmlTemplateGenerator.cs. [d1slact0r]
- New translations [TidusJar]
- Updated boostrap #2694. [Jamie]
- Added the ability to deny a request with a reason. [TidusJar]
- Update EmbyEpisodeSync.cs. [Jamie]
- Updated to .net core 2.2 and included a linux-arm64 build. [TidusJar]
### **Fixes**
@ -66,12 +171,62 @@
- Fixed #2716. [tidusjar]
- Make the newsletter BCC the users rather than creating a million newsletters (Hopefully will stop SMTP providers from marking as spam). This does mean that the custom user customization in the newsletter will no longer work. [TidusJar]
- If we don't know the Plex agent, then see if it's a ImdbId, if it's not check the string for any episode and season hints #2695. [tidusjar]
- New translations en.json (Swedish) [Jamie]
- New translations en.json (Spanish) [Jamie]
- New translations en.json (Portuguese, Brazilian) [Jamie]
- New translations en.json (Polish) [Jamie]
- New translations en.json (Norwegian) [Jamie]
- New translations en.json (Italian) [Jamie]
- New translations en.json (German) [Jamie]
- New translations en.json (French) [Jamie]
- New translations en.json (Dutch) [Jamie]
- New translations en.json (Danish) [Jamie]
- New translations en.json (Dutch) [Jamie]
- New translations en.json (Dutch) [Jamie]
- New translations en.json (Dutch) [Jamie]
- Made the search results the language specified in the search refinement. [tidusjar]
- Fixed #2704. [tidusjar]
- Now it is fixed :) [d1slact0r]
- Android please be nice now. [d1slact0r]
- Fixed title bit better. [d1slact0r]
- Fixed titles. [d1slact0r]
- This should fix the build for sure (stupid quotes) [d1slact0r]
- Fixes build. [d1slact0r]
- Rewritten the whole newsletter template. [d1slact0r]
- Fixed #2697. [tidusjar]
- Add linux-arm runtime identifier. [aptalca]
- Add back arm packages. [aptalca]
- Add arm32 package. [aptalca]
- Fixed #2691. [tidusjar]
- Fixed linting. [TidusJar]
@ -80,10 +235,13 @@
- Fixed #2678. [TidusJar]
- Deny reason for movie requests. [TidusJar]
- Set the landing and login pages background refresh to 15 seconds rather than 10 and 7. [TidusJar]
- Fixed a bug with us thinking future dated emby episodes are not available, Consoldated the emby and plex search rules (since they have the same logic) [TidusJar]
- Fixed build. [TidusJar]
## v3.0.4036 (2018-12-11)

@ -229,7 +229,7 @@ namespace Ombi.Core.Engine
}
var request = await RequestService.MovieRequestService.GetAll()
.AnyAsync(x => x.RequestedUserId.Equals(user.Id) && x.TheMovieDbId == viewModel.Id);
if (request)
if (request || viewModel.Available)
{
viewModel.ShowSubscribe = false;
}

@ -11,9 +11,9 @@
<ItemGroup>
<PackageReference Include="AutoMapper" Version="6.1.1" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="3.2.0" />
<PackageReference Include="Hangfire" Version="1.6.21" />
<PackageReference Include="Hangfire" Version="1.6.22" />
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="2.2.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.2" />
<PackageReference Include="MiniProfiler.AspNetCore" Version="4.0.0-alpha6-79" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
<PackageReference Include="System.Diagnostics.Process" Version="4.3.0" />

@ -2,7 +2,6 @@
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Query;
using Ombi.Core.Models.Search;
using Ombi.Store.Entities;
using Ombi.Store.Repository.Requests;
@ -24,7 +23,7 @@ namespace Ombi.Core.Rule.Rules.Search
if (!airedButNotAvailable)
{
var unairedEpisodes = search.SeasonRequests.Any(x =>
x.Episodes.Any(c => !c.Available && c.AirDate > DateTime.Now.Date));
x.Episodes.Any(c => !c.Available && c.AirDate > DateTime.Now.Date && c.AirDate != DateTime.MinValue));
if (unairedEpisodes)
{
search.FullyAvailable = true;
@ -41,21 +40,21 @@ namespace Ombi.Core.Rule.Rules.Search
{
epExists = await allEpisodes.FirstOrDefaultAsync(x =>
x.EpisodeNumber == episode.EpisodeNumber && x.SeasonNumber == season.SeasonNumber &&
x.Series.ImdbId == item.ImdbId.ToString());
x.Series.ImdbId == item.ImdbId);
}
if (useTheMovieDb)
{
epExists = await allEpisodes.FirstOrDefaultAsync(x =>
x.EpisodeNumber == episode.EpisodeNumber && x.SeasonNumber == season.SeasonNumber &&
x.Series.TheMovieDbId == item.TheMovieDbId.ToString());
x.Series.TheMovieDbId == item.TheMovieDbId);
}
if (useTvDb)
{
epExists = await allEpisodes.FirstOrDefaultAsync(x =>
x.EpisodeNumber == episode.EpisodeNumber && x.SeasonNumber == season.SeasonNumber &&
x.Series.TvDbId == item.TvDbId.ToString());
x.Series.TvDbId == item.TvDbId);
}
if (epExists != null)
@ -71,21 +70,21 @@ namespace Ombi.Core.Rule.Rules.Search
{
epExists = await allEpisodes.FirstOrDefaultAsync(x =>
x.EpisodeNumber == episode.EpisodeNumber && x.SeasonNumber == season.SeasonNumber &&
x.Series.ImdbId == item.ImdbId.ToString());
x.Series.ImdbId == item.ImdbId);
}
if (useTheMovieDb)
{
epExists = await allEpisodes.FirstOrDefaultAsync(x =>
x.EpisodeNumber == episode.EpisodeNumber && x.SeasonNumber == season.SeasonNumber &&
x.Series.TheMovieDbId == item.TheMovieDbId.ToString());
x.Series.TheMovieDbId == item.TheMovieDbId);
}
if (useTvDb)
{
epExists = await allEpisodes.FirstOrDefaultAsync(x =>
x.EpisodeNumber == episode.EpisodeNumber && x.SeasonNumber == season.SeasonNumber &&
x.Series.TvDbId == item.TvDbId.ToString());
x.Series.TvDbId == item.TvDbId);
}
if (epExists != null)

@ -13,7 +13,7 @@ namespace Ombi.Notifications.Templates
if (string.IsNullOrEmpty(_templateLocation))
{
#if DEBUG
_templateLocation = Path.Combine(Directory.GetCurrentDirectory(), "bin", "Debug", "netcoreapp2.0", "Templates",
_templateLocation = Path.Combine(Directory.GetCurrentDirectory(), "bin", "Debug", "netcoreapp2.2", "Templates",
"BasicTemplate.html");
#else
_templateLocation = Path.Combine(Directory.GetCurrentDirectory(), "Templates","BasicTemplate.html");

@ -57,11 +57,6 @@ namespace Ombi.Notifications
using (var client = new SmtpClient())
{
if (customization.ApplicationUrl.HasValue())
{
client.LocalDomain = customization.ApplicationUrl;
}
if (settings.DisableCertificateChecking)
{
// Disable validation of the certificate associated with the SMTP service

@ -10,8 +10,8 @@
<ItemGroup>
<PackageReference Include="Dapper" Version="1.50.2" />
<PackageReference Include="Hangfire" Version="1.6.21" />
<PackageReference Include="Hangfire.AspNetCore" Version="1.6.21" />
<PackageReference Include="Hangfire" Version="1.6.22" />
<PackageReference Include="Hangfire.AspNetCore" Version="1.6.22" />
<PackageReference Include="Hangfire.Console" Version="1.3.10" />
<PackageReference Include="Hangfire.MemoryStorage.Core" Version="1.4.0" />
<PackageReference Include="Hangfire.RecurringJobExtensions" Version="1.1.6" />

@ -12,8 +12,8 @@
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="2.2.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.2" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
<PackageReference Include="SQLitePCLRaw.bundle_e_sqlite3" Version="1.1.9" />
</ItemGroup>

@ -67,7 +67,7 @@
<div class="form-group">
<label for="authToken" class="control-label">Externally Facing Hostname
<i class="fa fa-question-circle"
pTooltip="This will be the external address that users will naviagte to when they press the 'View On Emby' button"></i>
pTooltip="This will be the external address that users will navigate to when they press the 'View On Emby' button"></i>
</label>
<div>
<input type="text" class="form-control-custom form-control" id="authToken" [(ngModel)]="server.serverHostname" placeholder="e.g. https://jellyfin.server.com/" value="{{server.serverHostname}}">

@ -1,6 +1,6 @@
{
"Login": {
"SignInButton": "Einloggen",
"SignInButton": "Anmelden",
"UsernamePlaceholder": "Benutzername",
"PasswordPlaceholder": "Passwort",
"RememberMe": "Eingeloggt bleiben",
@ -137,7 +137,7 @@
"SortStatusAsc": "Status ▲",
"SortStatusDesc": "Status ▼",
"Remaining": {
"Quota": "{{remaining}}/{{total}} requests remaining",
"Quota": "{{remaining}}/{{total}} Anfragen verbleiben",
"NextDays": "Another request will be added in {{time}} days",
"NextHours": "Another request will be added in {{time}} hours",
"NextMinutes": "Another request will be added in {{time}} minutes",
@ -171,9 +171,9 @@
"PendingApproval": "Genehmigung ausstehend"
},
"UserManagment": {
"TvRemaining": "TV: {{remaining}}/{{total}} remaining",
"MovieRemaining": "Movies: {{remaining}}/{{total}} remaining",
"MusicRemaining": "Music: {{remaining}}/{{total}} remaining",
"TvRemaining": "TV: {{remaining}}/{{total}} verbleibend",
"MovieRemaining": "Filme: {{remaining}}/{{total}} verbleibend",
"MusicRemaining": "Musik: {{remaining}}/{{total}} verbleibend",
"TvDue": "TV: {{date}}",
"MovieDue": "Film: {{date}}",
"MusicDue": "Musik: {{date}}"

@ -37,7 +37,7 @@
"OnlineParagraph": "El servidor de medios esta en línea",
"PartiallyOnlineHeading": "Parcialmente en línea",
"PartiallyOnlineParagraph": "El servidor de medios está parcialmente en línea.",
"MultipleServersUnavailable": "{{serversUnavailable}} de {{totalServers}} servidores están fuera de línea.",
"MultipleServersUnavailable": "Hay {{serversUnavailable}} de {{totalServers}} servidores fuera de línea.",
"SingleServerUnavailable": "Hay {{serversUnavailable}} de {{totalServers}} servidores fuera de línea.",
"OfflineHeading": "Fuera de línea",
"OfflineParagraph": "El servidor de medios está fuera de línea.",
@ -51,11 +51,11 @@
"Vote": "Votar",
"Donate": "¡Donar!",
"DonateLibraryMaintainer": "Donar al mantenedor de la biblioteca",
"DonateTooltip": "Para que mi esposa me deje desarrollar Ombi ;)",
"DonateTooltip": "Así es como convenzo a mi esposa para que me deje pasar mi tiempo libre desarrollando ombi;)",
"UpdateAvailableTooltip": "¡Actualización disponible!",
"Settings": "Ajustes",
"Welcome": "Bienvenido {{username}}",
"UpdateDetails": "Detalles de la actualización",
"UpdateDetails": "Editar cuenta usuario",
"Logout": "Cerrar sesión",
"OpenMobileApp": "Abrir aplicación móvil",
"RecentlyAdded": "Agregado recientemente"
@ -74,7 +74,7 @@
"ViewOnEmby": "Ver en Emby",
"RequestAdded": "La solicitud de {{title}} se ha agregado con éxito",
"Similar": "Similar",
"Refine": "Refinar",
"Refine": "Filtros",
"Movies": {
"PopularMovies": "Películas populares",
"UpcomingMovies": "Próximas películas",
@ -89,7 +89,7 @@
"MostWatched": "Más visto",
"MostAnticipated": "Más Anticipado",
"Results": "Resultados",
"AirDate": "Fecha del Aire:",
"AirDate": "Fecha de emisión:",
"AllSeasons": "Todas las temporadas",
"FirstSeason": "Primera temporada",
"LatestSeason": "Última temporada",

@ -74,7 +74,7 @@
"ViewOnEmby": "Regarder sur Emby",
"RequestAdded": "La demande pour {{title}} a été ajoutée avec succès",
"Similar": "Similaires",
"Refine": "Refine",
"Refine": "Affiner",
"Movies": {
"PopularMovies": "Films populaires",
"UpcomingMovies": "Films à venir",

@ -11,10 +11,10 @@
},
"Common": {
"ContinueButton": "Dalej",
"Available": "Dostępny",
"PartiallyAvailable": "Partially Available",
"Monitored": "Monitored",
"NotAvailable": "Niedostępny",
"Available": "Dostępne",
"PartiallyAvailable": "Częściowo dostępne",
"Monitored": "Monitorowane",
"NotAvailable": "Niedostępne",
"ProcessingRequest": "Przetwarzanie zgłoszenia",
"PendingApproval": "Oczekujące na zatwierdzenie",
"RequestDenied": "Zgłoszenie odrzucone",
@ -23,7 +23,7 @@
"Request": "Zgłoszenie",
"Denied": "Odrzucone",
"Approve": "Zatwierdź",
"PartlyAvailable": "Dostępne częściowo",
"PartlyAvailable": "Częściowo dostępne",
"Errors": {
"Validation": "Sprawdź wprowadzone dane"
}
@ -34,13 +34,13 @@
},
"LandingPage": {
"OnlineHeading": "Dostępny",
"OnlineParagraph": "Serwer mediów jest dostępny",
"PartiallyOnlineHeading": "Dostępny częściowo",
"PartiallyOnlineParagraph": "Serwer mediów jest dostępny częściowo.",
"MultipleServersUnavailable": "{{serversUnavailable}} serwerów spośród {{totalServers}} jest niedostępnych.",
"SingleServerUnavailable": "Jeden serwer spośród {{totalServers}} jest niedostępny.",
"OfflineHeading": "Niedostępny",
"OfflineParagraph": "Serwer mediów jest niedostępny.",
"OnlineParagraph": "Serwer multimediów jest aktualnie online",
"PartiallyOnlineHeading": "Częściowo online",
"PartiallyOnlineParagraph": "Serwer multimediów jest częściowo online.",
"MultipleServersUnavailable": "{{serversUnavailable}} serwerów spośród {{totalServers}} jest offline.",
"SingleServerUnavailable": "{{serversUnavailable}} serwer z {{totalServers}} jest w offline.",
"OfflineHeading": "Aktualnie offline",
"OfflineParagraph": "Serwer multimediów jest aktualnie offline.",
"CheckPageForUpdates": "Tutaj znajdziesz aktualizacje dotyczące tej strony."
},
"NavigationBar": {
@ -48,7 +48,7 @@
"Requests": "Zgłoszenia",
"UserManagement": "Zarządzanie użytkownikami",
"Issues": "Problemy",
"Vote": "Vote",
"Vote": "Głosowania",
"Donate": "Wesprzyj!",
"DonateLibraryMaintainer": "Wesprzyj właściciela biblioteki",
"DonateTooltip": "W ten sposób przekonuję moją żonę by spędzać mój wolny czas rozwijając Ombi ;)",
@ -64,8 +64,8 @@
"Title": "Szukaj",
"Paragraph": "Chcesz obejrzeć coś, co nie jest obecnie dostępne? Żaden problem, po prostu wyszukaj poniżej i dodaj zgłoszenie!",
"MoviesTab": "Filmy",
"TvTab": "Seriale",
"MusicTab": "Music",
"TvTab": "Programy TV",
"MusicTab": "Muzyka",
"Suggestions": "Sugestie",
"NoResults": "Niestety nic nie znaleziono!",
"DigitalDate": "Wydanie cyfrowe: {{date}}",
@ -74,7 +74,7 @@
"ViewOnEmby": "Obejrzyj na Emby",
"RequestAdded": "Zgłoszenie dla {{title}} zostało dodane",
"Similar": "Podobne",
"Refine": "Refine",
"Refine": "Zawęź",
"Movies": {
"PopularMovies": "Popularne filmy",
"UpcomingMovies": "Wkrótce w kinach",
@ -103,14 +103,14 @@
"Title": "Zgłoszenia",
"Paragraph": "Poniżej są twoje i wszystkie inne zgłoszenia, a także ich status akceptacji i pobierania.",
"MoviesTab": "Filmy",
"TvTab": "Seriale",
"MusicTab": "Music",
"TvTab": "Programy TV",
"MusicTab": "Muzyka",
"RequestedBy": "Zgłoszone przez:",
"Status": "Stan:",
"RequestStatus": "Stan zgłoszenia:",
"Status": "Status:",
"RequestStatus": "Status zgłoszenia:",
"Denied": "Odrzucono:",
"TheatricalRelease": "Premiera kinowa: {{date}}",
"ReleaseDate": "Released: {{date}}",
"ReleaseDate": "Wydany: {{date}}",
"TheatricalReleaseSort": "Premiera kinowa",
"DigitalRelease": "Wydanie cyfrowe: {{date}}",
"RequestDate": "Data zgłoszenia:",
@ -125,7 +125,7 @@
"Season": "Sezon:",
"GridTitle": "Tytuł",
"AirDate": "Data emisji",
"GridStatus": "Stan",
"GridStatus": "Status",
"ReportIssue": "Zgłoś problem",
"Filter": "Filtr",
"Sort": "Sortowanie",
@ -134,14 +134,14 @@
"SortTitleDesc": "Tytuł ▼",
"SortRequestDateAsc": "Data zgłoszenia ▲",
"SortRequestDateDesc": "Data zgłoszenia ▼",
"SortStatusAsc": "Stan ▲",
"SortStatusDesc": "Stan ▼",
"SortStatusAsc": "Status ▲",
"SortStatusDesc": "Status ▼",
"Remaining": {
"Quota": "{{remaining}}/{{total}} requests remaining",
"NextDays": "Another request will be added in {{time}} days",
"NextHours": "Another request will be added in {{time}} hours",
"NextMinutes": "Another request will be added in {{time}} minutes",
"NextMinute": "Another request will be added in {{time}} minute"
"Quota": "{{remaining}}/{{total}} pozostałych zgłoszeń",
"NextDays": "Kolejne zgłoszenie zostanie dodane za {{time}} dni",
"NextHours": "Kolejne zgłoszenie zostanie dodane za {{time}} godzin(y)",
"NextMinutes": "Kolejne zgłoszenie zostanie dodane za {{time}} minut(y)",
"NextMinute": "Kolejne zgłoszenie zostanie dodane za {{time}} minut(y)"
}
},
"Issues": {
@ -166,20 +166,20 @@
"Filter": {
"ClearFilter": "Wyczyść fltr",
"FilterHeaderAvailability": "Dostępność",
"FilterHeaderRequestStatus": "Stan",
"FilterHeaderRequestStatus": "Status",
"Approved": "Zatwierdzone",
"PendingApproval": "Oczekujące na zatwierdzenie"
},
"UserManagment": {
"TvRemaining": "TV: {{remaining}}/{{total}} remaining",
"MovieRemaining": "Movies: {{remaining}}/{{total}} remaining",
"MusicRemaining": "Music: {{remaining}}/{{total}} remaining",
"TvRemaining": "TV: pozostało {{remaining}}/{{total}}",
"MovieRemaining": "Filmy: pozostało {{remaining}}/{{total}}",
"MusicRemaining": "Muzyka: pozostało {{remaining}}/{{total}}",
"TvDue": "TV: {{date}}",
"MovieDue": "Movie: {{date}}",
"MusicDue": "Music: {{date}}"
"MovieDue": "Film: {{date}}",
"MusicDue": "Muzyka: {{date}}"
},
"Votes": {
"CompletedVotesTab": "Voted",
"VotesTab": "Votes Needed"
"CompletedVotesTab": "Zagłosowano",
"VotesTab": "Potrzebne głosy"
}
}

Loading…
Cancel
Save