From 0114319d87f1819bdd54bb741ce2ae79f090e48c Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sun, 29 Jun 2014 23:04:50 -0400 Subject: [PATCH] fixes #795 - Support reading Xbmc nfo's --- dashboard-ui/metadata.html | 1 + dashboard-ui/metadataadvanced.html | 1 + dashboard-ui/metadatachapters.html | 1 + dashboard-ui/metadataimages.html | 1 + dashboard-ui/metadatasubtitles.html | 1 + dashboard-ui/metadataxbmc.html | 76 ++++++++++++++++++++++++++++ dashboard-ui/scripts/metadataxbmc.js | 59 +++++++++++++++++++++ 7 files changed, 140 insertions(+) create mode 100644 dashboard-ui/metadataxbmc.html create mode 100644 dashboard-ui/scripts/metadataxbmc.js diff --git a/dashboard-ui/metadata.html b/dashboard-ui/metadata.html index d82a88eab2..83eba93ef8 100644 --- a/dashboard-ui/metadata.html +++ b/dashboard-ui/metadata.html @@ -14,6 +14,7 @@ ${TabAdvanced} ${TabChapters} ${TabSubtitles} + ${TabXbmcMetadata} ${TabOther} diff --git a/dashboard-ui/metadataadvanced.html b/dashboard-ui/metadataadvanced.html index 9a83ffad50..f4900e4af1 100644 --- a/dashboard-ui/metadataadvanced.html +++ b/dashboard-ui/metadataadvanced.html @@ -14,6 +14,7 @@ ${TabAdvanced} ${TabChapters} ${TabSubtitles} + ${TabXbmcMetadata} ${TabOther} diff --git a/dashboard-ui/metadatachapters.html b/dashboard-ui/metadatachapters.html index d6155e43c1..c13cefdc58 100644 --- a/dashboard-ui/metadatachapters.html +++ b/dashboard-ui/metadatachapters.html @@ -14,6 +14,7 @@ ${TabAdvanced} ${TabChapters} ${TabSubtitles} + ${TabXbmcMetadata} ${TabOther} diff --git a/dashboard-ui/metadataimages.html b/dashboard-ui/metadataimages.html index 4bc5ac58bc..0fdfb3312b 100644 --- a/dashboard-ui/metadataimages.html +++ b/dashboard-ui/metadataimages.html @@ -14,6 +14,7 @@ ${TabAdvanced} ${TabChapters} ${TabSubtitles} + ${TabXbmcMetadata} ${TabOther} diff --git a/dashboard-ui/metadatasubtitles.html b/dashboard-ui/metadatasubtitles.html index e9469fad91..5ca3e89c0d 100644 --- a/dashboard-ui/metadatasubtitles.html +++ b/dashboard-ui/metadatasubtitles.html @@ -14,6 +14,7 @@ ${TabAdvanced} ${TabChapters} ${TabSubtitles} + ${TabXbmcMetadata} ${TabOther} diff --git a/dashboard-ui/metadataxbmc.html b/dashboard-ui/metadataxbmc.html new file mode 100644 index 0000000000..6232f82d67 --- /dev/null +++ b/dashboard-ui/metadataxbmc.html @@ -0,0 +1,76 @@ + + + + ${TitleMetadata} + + +
+ +
+ +
+ + +
+ +

${HeaderXbmcMetadataHelp}

+
+
    + +
  • + + +
    ${LabelXbmcMetadataUserHelp}
    +
  • + +
  • + + +
    ${LabelXbmcMetadataDateFormatHelp}
    +
  • +
  • + + +
    ${LabelXbmcMetadataSaveImagePathsHelp}
    +
  • +
  • + + +
    +
    ${LabelXbmcMetadataEnablePathSubstitutionHelp}
    + +
    +
  • +
+
+
    +
  • + + +
  • +
+
+
+ +
+ + +
+ + diff --git a/dashboard-ui/scripts/metadataxbmc.js b/dashboard-ui/scripts/metadataxbmc.js new file mode 100644 index 0000000000..7ac680ea82 --- /dev/null +++ b/dashboard-ui/scripts/metadataxbmc.js @@ -0,0 +1,59 @@ +(function ($, document, window) { + + var metadataKey = "xbmcmetadata"; + + function loadPage(page, config, users) { + + var html = ''; + + html += users.map(function (user) { + return ''; + }).join(''); + + $('#selectUser', page).html(html).val(config.UserId || '').selectmenu('refresh'); + $('#selectReleaseDateFormat', page).val(config.ReleaseDateFormat).selectmenu('refresh'); + $('#chkSaveImagePaths', page).checked(config.SaveImagePathsInNfo).checkboxradio('refresh'); + $('#chkEnablePathSubstitution', page).checked(config.EnablePathSubstitution).checkboxradio('refresh'); + + Dashboard.hideLoadingMsg(); + } + + $(document).on('pageshow', "#metadataXbmcPage", function () { + + Dashboard.showLoadingMsg(); + + var page = this; + + var promise1 = ApiClient.getUsers(); + var promise2 = ApiClient.getNamedConfiguration(metadataKey); + + $.when(promise1, promise2).done(function (response1, response2) { + + loadPage(page, response2[0], response1[0]); + }); + }); + + window.XbmcMetadataPage = { + + onSubmit: function () { + + Dashboard.showLoadingMsg(); + + var form = this; + + ApiClient.getNamedConfiguration(metadataKey).done(function (config) { + + config.UserId = $('#selectUser', form).val() || null; + config.ReleaseDateFormat = $('#selectReleaseDateFormat', form).val(); + config.SaveImagePathsInNfo = $('#chkSaveImagePaths', form).checked(); + config.EnablePathSubstitution = $('#chkEnablePathSubstitution', form).checked(); + + ApiClient.updateNamedConfiguration(metadataKey, config).done(Dashboard.processServerConfigurationUpdateResult); + }); + + // Disable default form submission + return false; + } + }; + +})(jQuery, document, window);