diff --git a/js/HuesCore.js b/js/HuesCore.js index 302049a..804a162 100644 --- a/js/HuesCore.js +++ b/js/HuesCore.js @@ -77,7 +77,11 @@ function HuesCore(defaults) { if(defaults.load) { this.resourceManager.addAll(defaults.respacks, function() { document.getElementById("preloadHelper").classList.add("loaded"); - that.setImage(0); + if(defaults.firstImage) { + that.setImageByName(defaults.firstImage); + } else { + that.setImage(0); + } if(defaults.autoplay) { if(defaults.firstSong) { that.setSongByName(defaults.firstSong); @@ -357,6 +361,17 @@ HuesCore.prototype.setImage = function(index) { this.userInterface.setImageText(); }; +HuesCore.prototype.setImageByName = function(name) { + var images = this.resourceManager.enabledImages; + for(var i = 0; i < images.length; i++) { + if(images[i].name == name || images[i].fullname == name) { + this.setImage(i); + return; + } + } + this.setImage(0); // fallback +}; + HuesCore.prototype.nextImage = function() { this.setIsFullAuto(false); var img=(this.imageIndex + 1) % this.resourceManager.enabledImages.length; diff --git a/js/HuesSettings.js b/js/HuesSettings.js index f888247..68f2982 100644 --- a/js/HuesSettings.js +++ b/js/HuesSettings.js @@ -29,6 +29,8 @@ HuesSettings.prototype.defaultSettings = { overwriteLocal : false, // If set, will attempt to play the named song first firstSong: null, + // If set, will attempt to set the named image first + firstImage: null, // If set, will disable the remote resources menu. For custom pages. disableRemoteResources: false, // Preloader customisation