config.html 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Studio Images</title>
  5. </head>
  6. <body>
  7. <div data-role="page" class="page type-interior pluginConfigurationPage configPage" data-require="emby-input,emby-button,emby-checkbox">
  8. <div data-role="content">
  9. <div class="content-primary">
  10. <form class="configForm">
  11. <div class="inputContainer">
  12. <input is="emby-input" type="text" id="repository" required label="Repository" />
  13. <div class="fieldDescription">This can be any Jellyfin-compatible artwork repository.</div>
  14. </div>
  15. <br />
  16. <div>
  17. <button is="emby-button" type="submit" class="raised button-submit block"><span>Save</span></button>
  18. </div>
  19. </form>
  20. </div>
  21. </div>
  22. <script type="text/javascript">
  23. var PluginConfig = {
  24. pluginId: "872a7849-1171-458d-a6fb-3de3d442ad30"
  25. };
  26. document.querySelector('.configPage')
  27. .addEventListener('pageshow', function () {
  28. Dashboard.showLoadingMsg();
  29. ApiClient.getPluginConfiguration(PluginConfig.pluginId).then(function (config) {
  30. var repository = document.querySelector('#repository');
  31. repository.value = config.RepositoryUrl;
  32. repository.dispatchEvent(new Event('change', {
  33. bubbles: true,
  34. cancelable: false
  35. }));
  36. Dashboard.hideLoadingMsg();
  37. });
  38. });
  39. document.querySelector('.configForm')
  40. .addEventListener('submit', function (e) {
  41. Dashboard.showLoadingMsg();
  42. ApiClient.getPluginConfiguration(PluginConfig.pluginId).then(function (config) {
  43. config.RepositoryUrl = document.querySelector('#server').value;
  44. ApiClient.updatePluginConfiguration(PluginConfig.pluginId, config).then(Dashboard.processPluginConfigurationUpdateResult);
  45. });
  46. e.preventDefault();
  47. return false;
  48. });
  49. </script>
  50. </div>
  51. </body>
  52. </html>