mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-17 19:08:18 -07:00
update recording dialogs
This commit is contained in:
parent
bdfd870584
commit
141344eead
@ -16,12 +16,12 @@
|
||||
},
|
||||
"devDependencies": {},
|
||||
"ignore": [],
|
||||
"version": "1.1.89",
|
||||
"_release": "1.1.89",
|
||||
"version": "1.1.90",
|
||||
"_release": "1.1.90",
|
||||
"_resolution": {
|
||||
"type": "version",
|
||||
"tag": "1.1.89",
|
||||
"commit": "eb7fd9c48824ee465f324e855025c8f66a37b628"
|
||||
"tag": "1.1.90",
|
||||
"commit": "eb52e55b0f856ac89abcea9a71f475595d718627"
|
||||
},
|
||||
"_source": "https://github.com/MediaBrowser/Emby.ApiClient.Javascript.git",
|
||||
"_target": "^1.1.51",
|
||||
|
@ -1264,7 +1264,7 @@
|
||||
url: "https://connect.emby.media/service/user/authenticate",
|
||||
data: {
|
||||
nameOrEmail: username,
|
||||
password: password
|
||||
rawpw: password
|
||||
},
|
||||
dataType: "json",
|
||||
contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
|
||||
@ -1313,7 +1313,7 @@
|
||||
var data = {
|
||||
email: email,
|
||||
userName: username,
|
||||
password: password
|
||||
rawpw: password
|
||||
};
|
||||
|
||||
if (options.grecaptcha) {
|
||||
|
@ -14,12 +14,12 @@
|
||||
},
|
||||
"devDependencies": {},
|
||||
"ignore": [],
|
||||
"version": "1.4.309",
|
||||
"_release": "1.4.309",
|
||||
"version": "1.4.311",
|
||||
"_release": "1.4.311",
|
||||
"_resolution": {
|
||||
"type": "version",
|
||||
"tag": "1.4.309",
|
||||
"commit": "165fff8c1d63560b3e18190edd7caed2da5d0308"
|
||||
"tag": "1.4.311",
|
||||
"commit": "79239f58e5686817ca11b88d3c105d5b887f6292"
|
||||
},
|
||||
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
|
||||
"_target": "^1.2.1",
|
||||
|
@ -264,12 +264,14 @@ define(['browser'], function (browser) {
|
||||
// Otherwise with HLS and mp3 audio we're seeing some browsers
|
||||
// safari is lying
|
||||
if ((videoTestElement.canPlayType('audio/mp4; codecs="ac-3"').replace(/no/, '') && !browser.safari) || browser.edgeUwp || browser.tizen) {
|
||||
videoAudioCodecs.push('ac3');
|
||||
if ((options.disableVideoAudioCodecs || []).indexOf('ac3') == -1) {
|
||||
videoAudioCodecs.push('ac3');
|
||||
|
||||
// This works in edge desktop, but not mobile
|
||||
// TODO: Retest this on mobile
|
||||
if (!browser.edge || !browser.touch) {
|
||||
hlsVideoAudioCodecs.push('ac3');
|
||||
// This works in edge desktop, but not mobile
|
||||
// TODO: Retest this on mobile
|
||||
if (!browser.edge || !browser.touch) {
|
||||
hlsVideoAudioCodecs.push('ac3');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -24,13 +24,131 @@
|
||||
});
|
||||
}
|
||||
|
||||
function showPeriodicMessage(feature, settingsKey) {
|
||||
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
||||
appSettings.set(settingsKey, new Date().getTime());
|
||||
|
||||
require(['listViewStyle', 'emby-button', 'formDialogStyle'], function () {
|
||||
|
||||
var dlg = dialogHelper.createDialog({
|
||||
size: 'fullscreen-border',
|
||||
removeOnClose: true,
|
||||
scrollY: false
|
||||
});
|
||||
|
||||
dlg.classList.add('formDialog');
|
||||
|
||||
var html = '';
|
||||
html += '<div class="formDialogHeader">';
|
||||
html += '<button is="paper-icon-button-light" class="btnCancelSupporterInfo autoSize" tabindex="-1"><i class="md-icon"></i></button>';
|
||||
html += '<h3 class="formDialogHeaderTitle">';
|
||||
html += '</h3>';
|
||||
html += '</div>';
|
||||
|
||||
|
||||
html += '<div class="formDialogContent smoothScrollY">';
|
||||
html += '<div class="dialogContentInner dialog-content-centered">';
|
||||
|
||||
html += '<h1>' + globalize.translate('sharedcomponents#HeaderDiscoverEmbyPremiere') + '</h1>';
|
||||
|
||||
html += '<p>' + globalize.translate('sharedcomponents#MessageDidYouKnowCinemaMode') + '</p>';
|
||||
html += '<p>' + globalize.translate('sharedcomponents#MessageDidYouKnowCinemaMode2') + '</p>';
|
||||
|
||||
html += '<h1 style="margin-top:1.5em;">' + globalize.translate('sharedcomponents#HeaderBenefitsEmbyPremiere') + '</h1>';
|
||||
|
||||
html += '<div class="paperList">';
|
||||
html += getSubscriptionBenefits().map(getSubscriptionBenefitHtml).join('');
|
||||
html += '</div>';
|
||||
|
||||
html += '<br/>';
|
||||
|
||||
html += '<div class="formDialogFooter">';
|
||||
html += '<button is="emby-button" type="button" class="raised button-submit block btnGetPremiere formDialogFooterItem" autoFocus><span>' + globalize.translate('sharedcomponents#HeaderBecomeProjectSupporter') + '</span></button>';
|
||||
html += '<button is="emby-button" type="button" class="raised button-cancel block btnCancelSupporterInfo formDialogFooterItem"><span>' + globalize.translate('sharedcomponents#HeaderPlayMyMedia') + '</span></button>';
|
||||
html += '</div>';
|
||||
|
||||
html += '</div>';
|
||||
html += '</div>';
|
||||
|
||||
dlg.innerHTML = html;
|
||||
|
||||
if (layoutManager.tv) {
|
||||
centerFocus(dlg.querySelector('.formDialogContent'), false, true);
|
||||
}
|
||||
|
||||
// Has to be assigned a z-index after the call to .open()
|
||||
dlg.addEventListener('close', function (e) {
|
||||
if (layoutManager.tv) {
|
||||
centerFocus(dlg.querySelector('.formDialogContent'), false, false);
|
||||
}
|
||||
|
||||
appSettings.set(settingsKey, new Date().getTime());
|
||||
resolve();
|
||||
});
|
||||
|
||||
dlg.querySelector('.btnGetPremiere').addEventListener('click', showPremiereInfo);
|
||||
|
||||
dialogHelper.open(dlg);
|
||||
|
||||
var onCancelClick = function () {
|
||||
dialogHelper.close(dlg);
|
||||
};
|
||||
var i, length;
|
||||
var elems = dlg.querySelectorAll('.btnCancelSupporterInfo');
|
||||
for (i = 0, length = elems.length; i < length; i++) {
|
||||
elems[i].addEventListener('click', onCancelClick);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function showPeriodicMessageIfNeeded(feature) {
|
||||
var intervalMs = iapManager.getPeriodicMessageIntervalMs(feature);
|
||||
if (intervalMs <= 0) {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
var settingsKey = 'periodicmessage-' + feature;
|
||||
var lastMessage = parseInt(appSettings.get(settingsKey) || '0');
|
||||
|
||||
if (!lastMessage) {
|
||||
|
||||
// Don't show on the very first playback attempt
|
||||
appSettings.set(settingsKey, new Date().getTime());
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
if ((new Date().getTime() - lastMessage) > intervalMs) {
|
||||
|
||||
connectionManager.currentApiClient().getPluginSecurityInfo().then(function (regInfo) {
|
||||
|
||||
if (regInfo.IsMBSupporter) {
|
||||
appSettings.set(settingsKey, new Date().getTime());
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
return showPeriodicMessage(feature, settingsKey);
|
||||
}, function () {
|
||||
return showPeriodicMessage(feature, settingsKey);
|
||||
});
|
||||
}
|
||||
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
function validateFeature(feature, options) {
|
||||
|
||||
options = options || {};
|
||||
|
||||
console.log('validateFeature: ' + feature);
|
||||
|
||||
return iapManager.isUnlockedByDefault(feature).catch(function () {
|
||||
return iapManager.isUnlockedByDefault(feature).then(function () {
|
||||
|
||||
return showPeriodicMessageIfNeeded(feature);
|
||||
|
||||
}, function () {
|
||||
|
||||
var unlockableFeatureCacheKey = 'featurepurchased-' + feature;
|
||||
if (appSettings.get(unlockableFeatureCacheKey) == '1') {
|
||||
@ -157,8 +275,9 @@
|
||||
html += '</p>';
|
||||
|
||||
var hasProduct = false;
|
||||
var i, length;
|
||||
|
||||
for (var i = 0, length = subscriptionOptions.length; i < length; i++) {
|
||||
for (i = 0, length = subscriptionOptions.length; i < length; i++) {
|
||||
|
||||
hasProduct = true;
|
||||
html += '<p>';
|
||||
@ -205,7 +324,6 @@
|
||||
dlg.innerHTML = html;
|
||||
document.body.appendChild(dlg);
|
||||
|
||||
var i, length;
|
||||
var btnPurchases = dlg.querySelectorAll('.btnPurchase');
|
||||
for (i = 0, length = btnPurchases.length; i < length; i++) {
|
||||
btnPurchases[i].addEventListener('click', onPurchaseButtonClick);
|
||||
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -1,12 +1,12 @@
|
||||
{
|
||||
"MessageUnlockAppWithPurchaseOrSupporter": "Unlock this feature with a small one-time purchase, or with an active Emby Premiere subscription.",
|
||||
"MessageUnlockAppWithSupporter": "Unlock this feature with an active Emby Premiere subscription.",
|
||||
"MessageToValidateSupporter": "If you have an active Emby Premiere subscription, ensure you've setup Emby Premiere in your Emby Server Dashboard, which you can access by clicking Emby Premiere within the main menu.",
|
||||
"MessageUnlockAppWithPurchaseOrSupporter": "Schalte diese Funktion mit einer kleinen einmaligen Geb\u00fchr oder einem aktiven Emby Premium Abo frei.",
|
||||
"MessageUnlockAppWithSupporter": "Schalte diese Funktion mit einem aktiven Emby Premium Abo frei.",
|
||||
"MessageToValidateSupporter": "Wenn du eine aktive Emby Premiere Mitgliedschaft hast, stelle bitte sicher, dass du diese \u00fcber das Emby Server Dashboard eingerichtet hast (Hauptmenu -> Emby Premiere).",
|
||||
"ValueSpecialEpisodeName": "Special - {0}",
|
||||
"Share": "Teilen",
|
||||
"Add": "Hinzuf\u00fcgen",
|
||||
"ServerUpdateNeeded": "Dieser Emby Server muss aktualisiert werden. Um die neueste Version herunterzuladen, besuchen sie bitte {0}",
|
||||
"LiveTvGuideRequiresUnlock": "Ihr TV-Guide ist begrenzt auf {0} Kan\u00e4le. Klicken Sie auf die Freischalten Schaltfl\u00e4che um weitere Informationen zu erhalten.",
|
||||
"ServerUpdateNeeded": "Dieser Emby Server muss aktualisiert werden. Um die neueste Version herunterzuladen, besuche bitte {0}",
|
||||
"LiveTvGuideRequiresUnlock": "Dein TV-Guide ist begrenzt auf {0} Kan\u00e4le. Klicke auf die Freischalten Schaltfl\u00e4che um weitere Informationen zu erhalten.",
|
||||
"AttributeNew": "Neu",
|
||||
"Premiere": "Premiere",
|
||||
"Live": "Live",
|
||||
@ -42,19 +42,19 @@
|
||||
"Saturday": "Samstag",
|
||||
"Days": "Tage",
|
||||
"RecordSeries": "Serie aufnehmen",
|
||||
"HeaderCinemaMode": "Cinema Mode",
|
||||
"HeaderCloudSync": "Cloud Sync",
|
||||
"HeaderOfflineDownloads": "Offline Media",
|
||||
"HeaderOfflineDownloadsDescription": "Download media to your devices for easy offline use.",
|
||||
"CloudSyncFeatureDescription": "Sync your media to the cloud for easy backup, archiving, and converting.",
|
||||
"CoverArtFeatureDescription": "Cover Art creates fun covers and other treatments to help you personalize your media images.",
|
||||
"HeaderCinemaMode": "Kinomodus",
|
||||
"HeaderCloudSync": "Cloud Synchronisation",
|
||||
"HeaderOfflineDownloads": "Offline Medien",
|
||||
"HeaderOfflineDownloadsDescription": "Lade Medien auf deine Ger\u00e4te herunter um sie einfach offline zu nutzen.",
|
||||
"CloudSyncFeatureDescription": "Synchronisiere deine Medien in die Cloud f\u00fcr ein Backup, eine Archivierung und Konvertierung.",
|
||||
"CoverArtFeatureDescription": "Cover Art erstellt z.B. lustige Cover und erlaubt dir eine weitergehende pers\u00f6nliche Gestaltung deiner Medienbilder.",
|
||||
"CoverArt": "Cover Art",
|
||||
"CinemaModeFeatureDescription": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the feature.",
|
||||
"HeaderFreeApps": "Free Emby Apps",
|
||||
"FreeAppsFeatureDescription": "Enjoy free access to Emby apps for your devices.",
|
||||
"HeaderBecomeProjectSupporter": "Holen Sie Emby Premium",
|
||||
"CinemaModeFeatureDescription": "Der Cinema Mode bringt das richtige Kinogef\u00fchl mit Trailern und eigenen Intros vor dem Hauptfilm.",
|
||||
"HeaderFreeApps": "Kostenlose Emby Apps",
|
||||
"FreeAppsFeatureDescription": "Genie\u00dfe Zugriff auf kostenlose Emby Apps f\u00fcr deine Ger\u00e4te.",
|
||||
"HeaderBecomeProjectSupporter": "Hol dir Emby Premiere",
|
||||
"MessageActiveSubscriptionRequiredSeriesRecordings": "Ein aktives Emby Premium Abo wird benn\u00f6tigt um automatische Serienaufnahmen zu erstellen.",
|
||||
"LabelEmailAddress": "E-mail address:",
|
||||
"LabelEmailAddress": "E-Mail Adresse:",
|
||||
"PromoConvertRecordingsToStreamingFormat": "Konvertiere Aufnahmen automatisch in ein Streaming-freundliches Format mit Emby Premiere. Aufnahmen werden, basierend auf den Emby Server-Einstellungen, dynamisch zu MP4 oder MKV konvertiert.",
|
||||
"FeatureRequiresEmbyPremiere": "Dieses Feature ben\u00f6tigt eine aktive Emby Premiere Mitgliedschaft.",
|
||||
"HeaderConvertYourRecordings": "Konvertiere deine Aufnahmen",
|
||||
@ -65,7 +65,7 @@
|
||||
"Advanced": "Erweitert",
|
||||
"Delete": "L\u00f6schen",
|
||||
"HeaderDeleteItem": "L\u00f6sche Element",
|
||||
"ConfirmDeleteItem": "L\u00f6schen dieses Eintrages bedeutet das L\u00f6schen der Datei und das Entfernen aus der Medien-Bibliothek. M\u00f6chten Sie wirklich fortfahren?",
|
||||
"ConfirmDeleteItem": "L\u00f6schen dieses Eintrages bedeutet das L\u00f6schen der Datei und das Entfernen aus der Medien-Bibliothek. M\u00f6chtest du wirklich fortfahren?",
|
||||
"Refresh": "Aktualisieren",
|
||||
"RefreshQueued": "Warteschlange aktualisieren.",
|
||||
"AddToCollection": "Zur Sammlung hinzuf\u00fcgen",
|
||||
@ -100,11 +100,11 @@
|
||||
"SearchForMissingMetadata": "Suche nach fehlenden Metadaten",
|
||||
"LabelRefreshMode": "Aktualisierungsmodus:",
|
||||
"NoItemsFound": "Keine Eintr\u00e4ge gefunden.",
|
||||
"HeaderSaySomethingLike": "Sagen Sie etwas wie...",
|
||||
"HeaderSaySomethingLike": "Sage etwas wie...",
|
||||
"ButtonTryAgain": "Erneut versuchen",
|
||||
"HeaderYouSaid": "Sie sagten....",
|
||||
"HeaderYouSaid": "Du sagtest...",
|
||||
"MessageWeDidntRecognizeCommand": "Entschuldigung, dieses Kommando konnten wir nicht erkennen.",
|
||||
"MessageIfYouBlockedVoice": "Wenn Sie die Sprachsteuerung f\u00fcr die App nicht erlaubt haben so m\u00fcssen Sie dies zuvor \u00e4ndern bevor Sie es erneut probieren.",
|
||||
"MessageIfYouBlockedVoice": "Wenn du die Sprachsteuerung f\u00fcr die App nicht erlaubt hast, musst du dies vor einem erneuten Versuch \u00e4ndern.",
|
||||
"ValueDiscNumber": "Disc {0}",
|
||||
"Unrated": "Nicht bewertet",
|
||||
"Favorite": "Favorit",
|
||||
@ -134,7 +134,7 @@
|
||||
"GroupVersions": "Gruppiere Versionen",
|
||||
"PleaseSelectTwoItems": "Bitte w\u00e4hle mindestens zwei Optionen aus.",
|
||||
"TryMultiSelect": "Versuche Mehrfachauswahl",
|
||||
"TryMultiSelectMessage": "F\u00fcr eine Mehrfachauswahl klicken und halten Sie ein Poster. W\u00e4hlen Sie die Eintr\u00e4ge die Sie bearbeiten m\u00f6chten. Versuchen SIe es!",
|
||||
"TryMultiSelectMessage": "F\u00fcr eine Mehrfachauswahl klicke und halte ein Poster. W\u00e4hle die Eintr\u00e4ge die du bearbeiten m\u00f6chten. Versuch es!",
|
||||
"HeaderConfirmRecordingCancellation": "Best\u00e4tige Aufzeichnungsabbruch",
|
||||
"MessageConfirmRecordingCancellation": "Bis du dir sicher, diese Aufzeichnung abzubrechen?",
|
||||
"Error": "Fehler",
|
||||
@ -145,7 +145,7 @@
|
||||
"LabelOriginalTitle": "Original Titel:",
|
||||
"LabelSortTitle": "Sortierungs Titel:",
|
||||
"LabelDateAdded": "Hinzugef\u00fcgt am:",
|
||||
"ConfigureDateAdded": "Bestimmen Sie in den Bibliotheks-Einstellungen des Emby Server Dashboards, wie das Feld \"Hinzugef\u00fcgt am\" interpretiert werden soll.",
|
||||
"ConfigureDateAdded": "Bestimme in den Bibliotheks-Einstellungen des Emby Server Dashboards, wie das Feld \"Hinzugef\u00fcgt am\" interpretiert werden soll.",
|
||||
"LabelStatus": "Status:",
|
||||
"LabelArtists": "Interpreten:",
|
||||
"LabelArtistsHelp": "Trenne mehrere Eintr\u00e4ge durch ;",
|
||||
@ -213,7 +213,7 @@
|
||||
"Continuing": "Fortdauernd",
|
||||
"Ended": "Beendent",
|
||||
"HeaderEnabledFields": "Aktiviere Felder",
|
||||
"HeaderEnabledFieldsHelp": "W\u00e4hlen Sie Felder ab um das \u00c4ndern von Daten zu verhindern.",
|
||||
"HeaderEnabledFieldsHelp": "W\u00e4hle Felder ab um das \u00c4ndern von Daten zu verhindern.",
|
||||
"Backdrops": "Hintergr\u00fcnde",
|
||||
"Images": "Bilder",
|
||||
"Keywords": "Stichworte",
|
||||
@ -236,7 +236,7 @@
|
||||
"PackageInstallCompleted": "{0} Installation abgeschlossen",
|
||||
"PackageInstallFailed": "{0} Installation fehlgeschlagen",
|
||||
"PackageInstallCancelled": "{0} Installation abgebrochen",
|
||||
"SeriesYearToPresent": "{0}-heute",
|
||||
"SeriesYearToPresent": "{0}-Heute",
|
||||
"ValueOneSong": "1 Lied",
|
||||
"ValueSongCount": "{0} Lieder",
|
||||
"ValueOneMovie": "1 Film",
|
||||
@ -261,13 +261,13 @@
|
||||
"ServerNameIsRestarting": "Emby Server - {0} startet neu.",
|
||||
"ServerNameIsShuttingDown": "Emby Server - {0} f\u00e4hrt herunter.",
|
||||
"HeaderDeleteItems": "L\u00f6sche Objekte",
|
||||
"ConfirmDeleteItems": "Das L\u00f6schen dieser Objekte l\u00f6scht die Dateien vom Laufwerk und Ihrer Medienbibliothek. Sind Sie sich wirklich sicher?",
|
||||
"ConfirmDeleteItems": "Das L\u00f6schen dieser Objekte l\u00f6scht die Dateien vom Laufwerk und in deiner Medienbibliothek. Bist du wirklich sicher?",
|
||||
"PleaseRestartServerName": "Bitte starte Emby Server - {0} neu.",
|
||||
"SyncJobCreated": "Synchronisations-Aufgabe erstellt.",
|
||||
"LabelSyncTo": "Synchronisiere mit:",
|
||||
"LabelSyncJobName": "Synchronisations-Aufgabe:",
|
||||
"LabelQuality": "Qualit\u00e4t:",
|
||||
"LabelSyncNoTargetsHelp": "Es sieht so aus als w\u00fcrden Sie aktuell keine Apps verwenden, die Synchronisation unterst\u00fctzen.",
|
||||
"LabelSyncNoTargetsHelp": "Es sieht so aus als w\u00fcrdest du aktuell keine Apps verwenden, die Synchronisation unterst\u00fctzen.",
|
||||
"DownloadScheduled": "Download geplant",
|
||||
"LearnMore": "Erfahre mehr",
|
||||
"LabelProfile": "Profil:",
|
||||
@ -277,8 +277,8 @@
|
||||
"AutomaticallySyncNewContent": "Synchronisiere neue Inhalte automatisch",
|
||||
"AutomaticallySyncNewContentHelp": "Neu zu diesem Ordner hinzugef\u00fcgte Inhalte werden automatisch mit dem Ger\u00e4t synchronisiert.",
|
||||
"LabelItemLimit": "Maximale Anzahl:",
|
||||
"LabelItemLimitHelp": "Optional. Legen Sie die maximale Anzahl der zu synchronisierenden Eintr\u00e4ge fest.",
|
||||
"PleaseSelectDeviceToSyncTo": "Bitte w\u00e4hlen Sie ein zu synchronisierendes Ger\u00e4t.",
|
||||
"LabelItemLimitHelp": "Optional. Lege die maximale Anzahl der zu synchronisierenden Eintr\u00e4ge fest.",
|
||||
"PleaseSelectDeviceToSyncTo": "Bitte w\u00e4hle ein zu synchronisierendes Ger\u00e4t.",
|
||||
"Screenshots": "Screenshots",
|
||||
"MoveRight": "Nach rechts bewegen",
|
||||
"MoveLeft": "Nach links bewegen",
|
||||
@ -334,17 +334,21 @@
|
||||
"SortChannelsBy": "Sortiere Kan\u00e4le nach:",
|
||||
"RecentlyWatched": "K\u00fcrzlich gesehen",
|
||||
"ChannelNumber": "Kanalnummer",
|
||||
"HeaderBenefitsEmbyPremiere": "Benefits of Emby Premiere",
|
||||
"ThankYouForTryingEnjoyOneMinute": "Please enjoy one minute of playback. Thank you for trying Emby.",
|
||||
"HeaderTryPlayback": "Try Playback",
|
||||
"HowDidYouPay": "How did you pay?",
|
||||
"IHaveEmbyPremiere": "I have Emby Premiere",
|
||||
"IPurchasedThisApp": "I purchased this app",
|
||||
"ButtonRestorePreviousPurchase": "Restore Purchase",
|
||||
"ButtonUnlockWithPurchase": "Unlock with Purchase",
|
||||
"ButtonUnlockPrice": "Unlock {0}",
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"HeaderBenefitsEmbyPremiere": "Vorteile von Emby Premiere",
|
||||
"ThankYouForTryingEnjoyOneMinute": "Genie\u00dfe eine Minute Wiedergabe. Danke, dass du Emby ausprobierst.",
|
||||
"HeaderTryPlayback": "Wiedergabe ausprobieren",
|
||||
"HowDidYouPay": "Wie hast Du bezahlt?",
|
||||
"IHaveEmbyPremiere": "Ich besitze Emby Premiere",
|
||||
"IPurchasedThisApp": "Ich habe diese App gekauft",
|
||||
"ButtonRestorePreviousPurchase": "Kauf wiederherstellen",
|
||||
"ButtonUnlockWithPurchase": "Freischalten durch Kauf",
|
||||
"ButtonUnlockPrice": "{0} freischalten",
|
||||
"ButtonAlreadyPaid": "Schon bezahlt?",
|
||||
"ButtonPlayOneMinute": "Eine Minute wiedergeben",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Platziere favorisierte Kan\u00e4le am Anfang",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Feature freischalten",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favourite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "\u00bfYa esta pagado?",
|
||||
"ButtonPlayOneMinute": "Reproducir un minuto",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Colocar canales favoritos al inicio",
|
||||
"HeaderUnlockFeature": "Desbloquear Caracter\u00edstica"
|
||||
"HeaderUnlockFeature": "Desbloquear Caracter\u00edstica",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Postavi omiljene kanale na po\u010detak",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "\u04d8\u043b\u0434\u0435\u049b\u0430\u0448\u0430\u043d \u0442\u04e9\u043b\u0435\u043d\u0434\u0456 \u043c\u0435?",
|
||||
"ButtonPlayOneMinute": "\u0411\u0456\u0440 \u043c\u0438\u043d\u04e9\u0442 \u043e\u0439\u043d\u0430\u0442\u0443",
|
||||
"PlaceFavoriteChannelsAtBeginning": "\u0422\u0430\u04a3\u0434\u0430\u0443\u043b\u044b \u0430\u0440\u043d\u0430\u043b\u0430\u0440\u0434\u044b \u0435\u04a3 \u0431\u0430\u0441\u044b\u043d\u0430\u043d \u043e\u0440\u043d\u0430\u043b\u0430\u0441\u0442\u044b\u0440\u0443",
|
||||
"HeaderUnlockFeature": "\u0410\u0440\u0442\u044b\u049b\u0448\u044b\u043b\u044b\u049b \u049b\u04b1\u0440\u0441\u0430\u0443\u044b\u043d \u0431\u043e\u0441\u0430\u0442\u0443"
|
||||
"HeaderUnlockFeature": "\u0410\u0440\u0442\u044b\u049b\u0448\u044b\u043b\u044b\u049b \u049b\u04b1\u0440\u0441\u0430\u0443\u044b\u043d \u0431\u043e\u0441\u0430\u0442\u0443",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"MessageUnlockAppWithPurchaseOrSupporter": "Unlock this feature with a small one-time purchase, or with an active Emby Premiere subscription.",
|
||||
"MessageUnlockAppWithSupporter": "Unlock this feature with an active Emby Premiere subscription.",
|
||||
"MessageToValidateSupporter": "If you have an active Emby Premiere subscription, ensure you've setup Emby Premiere in your Emby Server Dashboard, which you can access by clicking Emby Premiere within the main menu.",
|
||||
"MessageUnlockAppWithPurchaseOrSupporter": "Desbloqueie esta funcionalidade com uma pequena compra \u00fanica, ou com uma assinatura ativa do Emby Premiere.",
|
||||
"MessageUnlockAppWithSupporter": "Desbloqueie esta funcionalidade com uma assinatura ativa do Emby Premiere.",
|
||||
"MessageToValidateSupporter": "Se tiver uma assinatura ativa do Emby Premiere, assegure-se que configurou o Emby Premiere no Painel do Servidor Emby, que pode ser acessado clicando Emby Premiere no menu principal.",
|
||||
"ValueSpecialEpisodeName": "Especial - {0}",
|
||||
"Share": "Compartilhar",
|
||||
"Add": "Adicionar",
|
||||
@ -42,19 +42,19 @@
|
||||
"Saturday": "S\u00e1bado",
|
||||
"Days": "Dias",
|
||||
"RecordSeries": "Gravar s\u00e9rie",
|
||||
"HeaderCinemaMode": "Cinema Mode",
|
||||
"HeaderCloudSync": "Cloud Sync",
|
||||
"HeaderOfflineDownloads": "Offline Media",
|
||||
"HeaderOfflineDownloadsDescription": "Download media to your devices for easy offline use.",
|
||||
"CloudSyncFeatureDescription": "Sync your media to the cloud for easy backup, archiving, and converting.",
|
||||
"CoverArtFeatureDescription": "Cover Art creates fun covers and other treatments to help you personalize your media images.",
|
||||
"CoverArt": "Cover Art",
|
||||
"CinemaModeFeatureDescription": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the feature.",
|
||||
"HeaderFreeApps": "Free Emby Apps",
|
||||
"FreeAppsFeatureDescription": "Enjoy free access to Emby apps for your devices.",
|
||||
"HeaderCinemaMode": "Modo Cinema",
|
||||
"HeaderCloudSync": "Sincroniza\u00e7\u00e3o na Nuvem",
|
||||
"HeaderOfflineDownloads": "M\u00eddia Offline",
|
||||
"HeaderOfflineDownloadsDescription": "Download sua m\u00eddia para seus dispositivos para uso offline f\u00e1cil.",
|
||||
"CloudSyncFeatureDescription": "Sincronize sua m\u00eddia para a nuvem para backup, arquivamento e convers\u00e3o f\u00e1ceis.",
|
||||
"CoverArtFeatureDescription": "Arta da Capa cria capas divertidas e d\u00e1 outros tratamentos para ajudar na personaliza\u00e7\u00e3o das imagens da sua m\u00eddia.",
|
||||
"CoverArt": "Arta da Capa",
|
||||
"CinemaModeFeatureDescription": "Modo Cinema oferece a voc\u00ea uma verdadeira experi\u00eancia de cinema com trailers e intros customizados antes da funcionalidade.",
|
||||
"HeaderFreeApps": "Apps Emby gr\u00e1tis",
|
||||
"FreeAppsFeatureDescription": "Aproveite acesso gr\u00e1tis a apps Emby para seus dispositivos.",
|
||||
"HeaderBecomeProjectSupporter": "Obter Emby Premiere",
|
||||
"MessageActiveSubscriptionRequiredSeriesRecordings": "Uma subscri\u00e7\u00e3o ativa do Emby Premiere \u00e9 requerida para criar a grava\u00e7\u00e3o automatizada de s\u00e9ries.",
|
||||
"LabelEmailAddress": "E-mail address:",
|
||||
"LabelEmailAddress": "Endere\u00e7o de E-mail:",
|
||||
"PromoConvertRecordingsToStreamingFormat": "Converter automaticamente grava\u00e7\u00f5es para um formato amig\u00e1vel para streaming com Emby Premiere. Grava\u00e7\u00f5es ser\u00e3o convertidas em tempo real para MP4 ou MKV, baseado nas configura\u00e7\u00f5es do Servidor Emby.",
|
||||
"FeatureRequiresEmbyPremiere": "Este recurso requer uma subscri\u00e7\u00e3o ativa do Emby Premiere",
|
||||
"HeaderConvertYourRecordings": "Converter suas Grava\u00e7\u00f5es",
|
||||
@ -293,7 +293,7 @@
|
||||
"RepeatEpisodes": "Repetir epis\u00f3dios",
|
||||
"DvrSubscriptionRequired": "Emby DVR requer uma assinatura ativa do Emby Premiere",
|
||||
"HeaderCancelRecording": "Cancelar Grava\u00e7\u00e3o",
|
||||
"CancelRecording": "Cancel recording",
|
||||
"CancelRecording": "Cancelar grava\u00e7\u00e3o",
|
||||
"HeaderKeepRecording": "Continuar Gravando",
|
||||
"HeaderCancelSeries": "Cancelar S\u00e9rie",
|
||||
"HeaderKeepSeries": "Manter S\u00e9rie",
|
||||
@ -334,17 +334,21 @@
|
||||
"SortChannelsBy": "Ordenar canais por:",
|
||||
"RecentlyWatched": "Assistido recentemente",
|
||||
"ChannelNumber": "N\u00famero do canal",
|
||||
"HeaderBenefitsEmbyPremiere": "Benefits of Emby Premiere",
|
||||
"ThankYouForTryingEnjoyOneMinute": "Please enjoy one minute of playback. Thank you for trying Emby.",
|
||||
"HeaderTryPlayback": "Try Playback",
|
||||
"HowDidYouPay": "How did you pay?",
|
||||
"IHaveEmbyPremiere": "I have Emby Premiere",
|
||||
"IPurchasedThisApp": "I purchased this app",
|
||||
"ButtonRestorePreviousPurchase": "Restore Purchase",
|
||||
"ButtonUnlockWithPurchase": "Unlock with Purchase",
|
||||
"ButtonUnlockPrice": "Unlock {0}",
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"HeaderBenefitsEmbyPremiere": "Benef\u00edcios do Emby Premiere",
|
||||
"ThankYouForTryingEnjoyOneMinute": "Por favor aproveite um minuto de reprodu\u00e7\u00e3o. Obrigado por testar Emby.",
|
||||
"HeaderTryPlayback": "Testar Reprodu\u00e7\u00e3o",
|
||||
"HowDidYouPay": "Como voc\u00ea pagou?",
|
||||
"IHaveEmbyPremiere": "Eu tenho Emby Premiere",
|
||||
"IPurchasedThisApp": "Eu comprei este app",
|
||||
"ButtonRestorePreviousPurchase": "Recuperar Compra",
|
||||
"ButtonUnlockWithPurchase": "Desbloquear com Compra",
|
||||
"ButtonUnlockPrice": "Desbloquear {0}",
|
||||
"ButtonAlreadyPaid": "J\u00e1 pagou?",
|
||||
"ButtonPlayOneMinute": "Reproduzir Um Minuto",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Colocar canais favoritos no in\u00edcio",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Desbloquear Funcionalidade",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "\u0423\u0436\u0435 \u043e\u043f\u043b\u0430\u0442\u0438\u043b\u0438?",
|
||||
"ButtonPlayOneMinute": "\u0412\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043e\u0434\u043d\u0443 \u043c\u0438\u043d\u0443\u0442\u0443",
|
||||
"PlaceFavoriteChannelsAtBeginning": "\u0420\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0438\u0437\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u043a\u0430\u043d\u0430\u043b\u044b \u0432 \u043d\u0430\u0447\u0430\u043b\u0435",
|
||||
"HeaderUnlockFeature": "\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443"
|
||||
"HeaderUnlockFeature": "\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -346,5 +346,9 @@
|
||||
"ButtonAlreadyPaid": "Already Paid?",
|
||||
"ButtonPlayOneMinute": "Play One Minute",
|
||||
"PlaceFavoriteChannelsAtBeginning": "Place favorite channels at the beginning",
|
||||
"HeaderUnlockFeature": "Unlock Feature"
|
||||
"HeaderUnlockFeature": "Unlock Feature",
|
||||
"MessageDidYouKnowCinemaMode": "Did you know that with Emby Premiere, you can enhance your experience with features like Cinema Mode?",
|
||||
"MessageDidYouKnowCinemaMode2": "Cinema Mode gives you the true cinema experience with trailers and custom intros before the main feature.",
|
||||
"HeaderPlayMyMedia": "Play my Media",
|
||||
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere"
|
||||
}
|
@ -7,4 +7,63 @@
|
||||
contain: layout style;
|
||||
/* Can't use will-change because it causes the alpha picker to move when the page scrolls*/
|
||||
/*will-change: transform;*/
|
||||
}
|
||||
|
||||
@keyframes view-fadeout {
|
||||
from {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
to {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
@keyframes view-fadein {
|
||||
from {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
to {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes view-slideleft {
|
||||
from {
|
||||
transform: translate3d(100%, 0, 0);
|
||||
}
|
||||
|
||||
to {
|
||||
transform: none;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes view-slideleft-r {
|
||||
from {
|
||||
transform: none;
|
||||
}
|
||||
|
||||
to {
|
||||
transform: translate3d(-100%, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes view-slideright {
|
||||
from {
|
||||
transform: translate3d(-100%, 0, 0);
|
||||
}
|
||||
|
||||
to {
|
||||
transform: none;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes view-slideright-r {
|
||||
from {
|
||||
transform: none;
|
||||
}
|
||||
|
||||
to {
|
||||
transform: translate3d(100%, 0, 0);
|
||||
}
|
||||
}
|
@ -116,72 +116,59 @@ define(['browser', 'css!./viewcontainer-lite'], function (browser) {
|
||||
function slide(newAnimatedPage, oldAnimatedPage, transition, isBack) {
|
||||
|
||||
return new Promise(function (resolve, reject) {
|
||||
var timings = {
|
||||
duration: 450,
|
||||
iterations: 1,
|
||||
easing: 'ease-out',
|
||||
fill: 'both'
|
||||
};
|
||||
|
||||
var duration = 450;
|
||||
|
||||
var animations = [];
|
||||
|
||||
if (oldAnimatedPage) {
|
||||
var destination = isBack ? '100%' : '-100%';
|
||||
|
||||
animations.push(oldAnimatedPage.animate([
|
||||
|
||||
{ transform: 'none', offset: 0 },
|
||||
{ transform: 'translate3d(' + destination + ', 0, 0)', offset: 1 }
|
||||
|
||||
], timings));
|
||||
if (isBack) {
|
||||
oldAnimatedPage.style.animation = 'view-slideright-r ' + duration + 'ms ease-out normal both';
|
||||
setAnimation(oldAnimatedPage, 'view-slideright-r ' + duration + 'ms ease-out normal both');
|
||||
} else {
|
||||
setAnimation(oldAnimatedPage, 'view-slideleft-r ' + duration + 'ms ease-out normal both');
|
||||
}
|
||||
animations.push(oldAnimatedPage);
|
||||
}
|
||||
|
||||
var start = isBack ? '-100%' : '100%';
|
||||
|
||||
animations.push(newAnimatedPage.animate([
|
||||
|
||||
{ transform: 'translate3d(' + start + ', 0, 0)', offset: 0 },
|
||||
{ transform: 'none', offset: 1 }
|
||||
|
||||
], timings));
|
||||
if (isBack) {
|
||||
setAnimation(newAnimatedPage, 'view-slideright ' + duration + 'ms ease-out normal both');
|
||||
} else {
|
||||
setAnimation(newAnimatedPage, 'view-slideleft ' + duration + 'ms ease-out normal both');
|
||||
}
|
||||
animations.push(newAnimatedPage);
|
||||
|
||||
currentAnimations = animations;
|
||||
|
||||
animations[animations.length - 1].onfinish = resolve;
|
||||
setTimeout(resolve, duration);
|
||||
});
|
||||
}
|
||||
|
||||
function fade(newAnimatedPage, oldAnimatedPage, transition, isBack) {
|
||||
|
||||
return new Promise(function (resolve, reject) {
|
||||
var timings = {
|
||||
duration: 300,
|
||||
iterations: 1,
|
||||
easing: 'ease-out',
|
||||
fill: 'both'
|
||||
};
|
||||
|
||||
var duration = 400;
|
||||
var animations = [];
|
||||
|
||||
if (oldAnimatedPage) {
|
||||
animations.push(oldAnimatedPage.animate([
|
||||
|
||||
{ opacity: 1, offset: 0 },
|
||||
{ opacity: 0, offset: 1 }
|
||||
|
||||
], timings));
|
||||
setAnimation(oldAnimatedPage, 'view-fadeout ' + duration + 'ms ease-out normal both');
|
||||
animations.push(oldAnimatedPage);
|
||||
}
|
||||
|
||||
animations.push(newAnimatedPage.animate([
|
||||
|
||||
{ opacity: 0, offset: 0 },
|
||||
{ opacity: 1, offset: 1 }
|
||||
|
||||
], timings));
|
||||
setAnimation(newAnimatedPage, 'view-fadein ' + duration + 'ms ease-in normal both');
|
||||
animations.push(newAnimatedPage);
|
||||
|
||||
currentAnimations = animations;
|
||||
|
||||
animations[animations.length - 1].onfinish = resolve;
|
||||
setTimeout(resolve, duration);
|
||||
});
|
||||
}
|
||||
|
||||
function setAnimation(elem, value) {
|
||||
|
||||
requestAnimationFrame(function () {
|
||||
elem.style.animation = value;
|
||||
});
|
||||
}
|
||||
|
||||
@ -190,16 +177,7 @@ define(['browser', 'css!./viewcontainer-lite'], function (browser) {
|
||||
|
||||
var animations = currentAnimations;
|
||||
for (var i = 0, length = animations.length; i < length; i++) {
|
||||
cancelAnimation(animations[i]);
|
||||
}
|
||||
}
|
||||
|
||||
function cancelAnimation(animation) {
|
||||
|
||||
try {
|
||||
animation.cancel();
|
||||
} catch (err) {
|
||||
console.log('Error canceling animation: ' + err);
|
||||
animations[i].animation = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
define(['apphost', 'connectionManager', 'events', 'globalize', 'browser', 'require', 'dom', 'emby-tabs'], function (appHost, connectionManager, events, globalize, browser, require, dom) {
|
||||
define(['apphost', 'connectionManager', 'events', 'globalize', 'browser', 'require', 'dom', 'embyRouter', 'emby-tabs'], function (appHost, connectionManager, events, globalize, browser, require, dom, embyRouter) {
|
||||
|
||||
// Make sure this is pulled in after button and tab css
|
||||
require(['css!./dockedtabs']);
|
||||
@ -13,7 +13,7 @@
|
||||
})[0];
|
||||
|
||||
if (view) {
|
||||
Emby.Page.showItem(view);
|
||||
embyRouter.showItem(view);
|
||||
}
|
||||
}
|
||||
|
||||
@ -22,13 +22,13 @@
|
||||
switch (id) {
|
||||
|
||||
case 'settings':
|
||||
Emby.Page.showSettings();
|
||||
embyRouter.showSettings();
|
||||
break;
|
||||
case 'signout':
|
||||
Dashboard.logout();
|
||||
break;
|
||||
case 'selectserver':
|
||||
Emby.Page.showSelectServer();
|
||||
embyRouter.showSelectServer();
|
||||
break;
|
||||
case 'reports':
|
||||
Dashboard.navigate('reports.html');
|
||||
@ -157,7 +157,7 @@
|
||||
switch (index) {
|
||||
|
||||
case 0:
|
||||
Emby.Page.goHome();
|
||||
embyRouter.goHome();
|
||||
break;
|
||||
case 1:
|
||||
showLibrariesMenu(this);
|
||||
@ -165,10 +165,10 @@
|
||||
e.stopPropagation();
|
||||
break;
|
||||
case 2:
|
||||
Emby.Page.showLiveTV();
|
||||
embyRouter.showLiveTV();
|
||||
break;
|
||||
case 3:
|
||||
Emby.Page.showFavorites();
|
||||
embyRouter.showFavorites();
|
||||
break;
|
||||
case 4:
|
||||
Dashboard.navigate('mysync.html?mode=offline');
|
||||
@ -217,7 +217,7 @@
|
||||
var html = '';
|
||||
|
||||
var liveTVButtonClass = appHost.supports('sync') ? ' dockedtab-midsize' : '';
|
||||
|
||||
|
||||
html += ' <div is="emby-tabs" class="dockedtabs-tabs" data-selectionbar="false">\
|
||||
<button is="emby-button" class="dockedtabs-tab-button emby-tab-button emby-tab-button-active" data-index="0">\
|
||||
<div class="dockedtabs-tab-button-foreground emby-button-foreground"><i class="dockedtabs-tab-button-icon md-icon">home</i><div>' + globalize.translate('TabHome') + '</div></div>\
|
||||
|
@ -50,6 +50,15 @@
|
||||
return globalize.translate('sharedcomponents#ButtonAlreadyPaid');
|
||||
}
|
||||
|
||||
function getPeriodicMessageIntervalMs(feature) {
|
||||
|
||||
if (feature == 'playback') {
|
||||
return 259200000;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
return {
|
||||
getProductInfo: getProductInfo,
|
||||
beginPurchase: beginPurchase,
|
||||
@ -57,7 +66,8 @@
|
||||
getSubscriptionOptions: getSubscriptionOptions,
|
||||
isUnlockedByDefault: isUnlockedByDefault,
|
||||
getAdminFeatureName: getAdminFeatureName,
|
||||
getRestoreButtonText: getRestoreButtonText
|
||||
getRestoreButtonText: getRestoreButtonText,
|
||||
getPeriodicMessageIntervalMs: getPeriodicMessageIntervalMs
|
||||
};
|
||||
|
||||
});
|
@ -124,6 +124,17 @@
|
||||
}
|
||||
}
|
||||
|
||||
.ehsContent:not(.fullWidth), .ehsContent .pageTabContent {
|
||||
width: 98%;
|
||||
}
|
||||
|
||||
@media all and (min-width: 1200px) {
|
||||
|
||||
.ehsContent:not(.fullWidth), .ehsContent .pageTabContent {
|
||||
width: 96%;
|
||||
}
|
||||
}
|
||||
|
||||
.homePageSection h1 {
|
||||
padding-left: 2vw;
|
||||
}
|
||||
|
@ -16,7 +16,7 @@
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="is-active pageTabContent ehsContent" id="homeTab" data-index="0">
|
||||
<div class="is-active pageTabContent ehsContent fullWidth" id="homeTab" data-index="0">
|
||||
<div class="ui-bar-b readOnlyContent welcomeMessage hide" style="padding: 2em; border-radius: 10px; margin: 2em auto; font-weight: normal;">
|
||||
<h1 style="margin-top: 0;" class="tourHeader"></h1>
|
||||
<p>
|
||||
@ -26,7 +26,7 @@
|
||||
|
||||
<div class="sections"></div>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="nextUpTab" data-index="1">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="nextUpTab" data-index="1">
|
||||
<div class="homePageSection">
|
||||
<div>
|
||||
<h1 class="listHeader nextUpHeader" style="display: inline-block; vertical-align: middle;">${HeaderNextUp}</h1>
|
||||
@ -39,10 +39,10 @@
|
||||
</div>
|
||||
<p class="noNextUpItems hide">${NoNextUpItemsMessage}</p>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="favoritesTab" data-index="2">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="favoritesTab" data-index="2">
|
||||
<div class="favoriteSections"></div>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="upcomingTab" data-index="3">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="upcomingTab" data-index="3">
|
||||
<div id="upcomingItems">
|
||||
</div>
|
||||
<div class="noItemsMessage hide">
|
||||
|
@ -29,7 +29,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="is-active pageTabContent ehsContent" id="suggestionsTab" data-index="0">
|
||||
<div class="is-active pageTabContent ehsContent fullWidth" id="suggestionsTab" data-index="0">
|
||||
<div id="activeRecordings" class="homePageSection hide">
|
||||
<h1 class="listHeader">${HeaderActiveRecordings}</h1>
|
||||
<div is="emby-itemscontainer" class="recordingItems itemsContainer"></div>
|
||||
@ -85,7 +85,7 @@
|
||||
</div>
|
||||
<div is="emby-itemscontainer" id="items" class="itemsContainer vertical-wrap"></div>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="recordingsTab" data-index="3">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="recordingsTab" data-index="3">
|
||||
<div id="activeRecordings" class="homePageSection hide">
|
||||
<h1 class="listHeader">${HeaderActiveRecordings}</h1>
|
||||
<div is="emby-itemscontainer" class="recordingItems itemsContainer"></div>
|
||||
@ -141,7 +141,7 @@
|
||||
<div id="recordingGroupItems"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="scheduleTab" data-index="4">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="scheduleTab" data-index="4">
|
||||
<div id="activeRecordings" class="homePageSection hide">
|
||||
<h1 class="listHeader">${HeaderActiveRecordings}</h1>
|
||||
<div is="emby-itemscontainer" class="recordingItems itemsContainer"></div>
|
||||
|
@ -22,7 +22,7 @@
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="is-active pageTabContent ehsContent" id="suggestionsTab" data-index="0">
|
||||
<div class="is-active pageTabContent ehsContent fullWidth" id="suggestionsTab" data-index="0">
|
||||
<div id="resumableSection" class="homePageSection hide">
|
||||
<div>
|
||||
<h1 class="listHeader" style="display:inline-block;vertical-align:middle;">${HeaderResume}</h1>
|
||||
|
@ -26,7 +26,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pageTabContent is-active pageTabContent ehsContent" id="suggestionsTab" data-index="0">
|
||||
<div class="pageTabContent is-active pageTabContent ehsContent fullWidth" id="suggestionsTab" data-index="0">
|
||||
<div class="homePageSection">
|
||||
<h1 class="listHeader">${HeaderLatestMusic}</h1>
|
||||
|
||||
|
@ -298,13 +298,14 @@
|
||||
}
|
||||
});
|
||||
|
||||
view.querySelector('.btnCancelSignup').addEventListener('click', function () {
|
||||
Emby.Page.back();
|
||||
});
|
||||
function goBack() {
|
||||
require(['embyRouter'], function (embyRouter) {
|
||||
embyRouter.back();
|
||||
});
|
||||
}
|
||||
|
||||
view.querySelector('.btnCancelManualServer').addEventListener('click', function () {
|
||||
Emby.Page.back();
|
||||
});
|
||||
view.querySelector('.btnCancelSignup').addEventListener('click', goBack);
|
||||
view.querySelector('.btnCancelManualServer').addEventListener('click', goBack);
|
||||
|
||||
view.querySelector('.btnWelcomeNext').addEventListener('click', function () {
|
||||
Dashboard.navigate('connectlogin.html?mode=connect');
|
||||
|
@ -450,7 +450,7 @@
|
||||
html += '<div style="display:flex;align-items:center;justify-content:center;text-transform:uppercase;">';
|
||||
var userImage = DashboardPage.getUserImage(session);
|
||||
if (userImage) {
|
||||
html += '<img style="border-radius:50px;margin-right:.5em;" src="' + userImage + '" />';
|
||||
html += '<img style="height:24px;border-radius:50px;margin-right:.5em;" src="' + userImage + '" />';
|
||||
} else {
|
||||
html += '<div style="height:24px;"></div>';
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
define(['imageLoader', 'layoutManager', 'viewManager', 'libraryBrowser', 'apphost', 'paper-icon-button-light', 'material-icons'], function (imageLoader, layoutManager, viewManager, libraryBrowser, appHost) {
|
||||
define(['imageLoader', 'layoutManager', 'viewManager', 'libraryBrowser', 'apphost', 'embyRouter', 'paper-icon-button-light', 'material-icons'], function (imageLoader, layoutManager, viewManager, libraryBrowser, appHost, embyRouter) {
|
||||
|
||||
var enableBottomTabs = AppInfo.isNativeApp;
|
||||
var enableLibraryNavDrawer = !enableBottomTabs;
|
||||
@ -60,7 +60,7 @@
|
||||
|
||||
function onBackClick() {
|
||||
|
||||
Emby.Page.back();
|
||||
embyRouter.back();
|
||||
}
|
||||
|
||||
function updateUserInHeader(user) {
|
||||
@ -908,7 +908,7 @@
|
||||
var backButton = document.querySelector('.headerBackButton');
|
||||
|
||||
if (backButton) {
|
||||
if (page.getAttribute('data-backbutton') == 'true' && Emby.Page.canGoBack()) {
|
||||
if (page.getAttribute('data-backbutton') == 'true' && embyRouter.canGoBack()) {
|
||||
backButton.classList.remove('hide');
|
||||
} else {
|
||||
backButton.classList.add('hide');
|
||||
|
@ -157,7 +157,6 @@ define(['appSettings', 'userSettings', 'appStorage', 'datetime'], function (appS
|
||||
|
||||
if (!AppInfo.isNativeApp) {
|
||||
options.enableMkvProgressive = item.RunTimeTicks != null;
|
||||
options.enableTsProgressive = item.RunTimeTicks != null;
|
||||
options.enableHls = !browserInfo.firefox || item.RunTimeTicks == null;
|
||||
options.disableVideoAudioCodecs = disableVideoAudioCodecs;
|
||||
}
|
||||
|
@ -1417,9 +1417,7 @@ var AppInfo = {};
|
||||
});
|
||||
|
||||
// alias
|
||||
define("historyManager", [], function () {
|
||||
return Emby.Page;
|
||||
});
|
||||
define("historyManager", ['embyRouter'], returnFirstDependency);
|
||||
|
||||
define("headroom-window", ['headroom'], createWindowHeadroom);
|
||||
define("hammer-main", ['hammer'], createMainContentHammer);
|
||||
@ -2682,7 +2680,6 @@ var AppInfo = {};
|
||||
|
||||
window.Emby = {};
|
||||
window.Emby.Page = pageObjects;
|
||||
window.Emby.TransparencyLevel = pageObjects.TransparencyLevel;
|
||||
defineCoreRoutes();
|
||||
Emby.Page.start({
|
||||
click: true,
|
||||
|
@ -26,7 +26,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="is-active pageTabContent ehsContent" id="suggestionsTab" data-index="0">
|
||||
<div class="is-active pageTabContent ehsContent fullWidth" id="suggestionsTab" data-index="0">
|
||||
<div id="resumableSection" class="homePageSection">
|
||||
<div>
|
||||
<h1 class="listHeader" style="display: inline-block; vertical-align: middle;">${HeaderResume}</h1>
|
||||
@ -51,7 +51,7 @@
|
||||
</div>
|
||||
<p class="noNextUpItems" style="display: none;">${NoNextUpItemsMessage}</p>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="latestTab" data-index="1">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="latestTab" data-index="1">
|
||||
<div class="homePageSection">
|
||||
<div>
|
||||
<h1 class="listHeader" style="display: inline-block; vertical-align: middle;">${HeaderLatestEpisodes}</h1>
|
||||
@ -63,7 +63,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pageTabContent ehsContent" id="upcomingTab" data-index="2">
|
||||
<div class="pageTabContent ehsContent fullWidth" id="upcomingTab" data-index="2">
|
||||
<div id="upcomingItems">
|
||||
</div>
|
||||
<div class="noItemsMessage" style="display: none;">
|
||||
|
Loading…
Reference in New Issue
Block a user