diff options
Diffstat (limited to 'public/assets/javascripts/ui/editor')
| -rw-r--r-- | public/assets/javascripts/ui/editor/MediaUpload.js | 4 | ||||
| -rw-r--r-- | public/assets/javascripts/ui/editor/WallpaperPicker.js | 44 |
2 files changed, 40 insertions, 8 deletions
diff --git a/public/assets/javascripts/ui/editor/MediaUpload.js b/public/assets/javascripts/ui/editor/MediaUpload.js index 6df9961..92cf2bd 100644 --- a/public/assets/javascripts/ui/editor/MediaUpload.js +++ b/public/assets/javascripts/ui/editor/MediaUpload.js @@ -56,6 +56,10 @@ var MediaUpload = UploadView.extend({ add: function(media){ console.log(media) this.parent.mediaViewer.add(media) + }, + + beforeUpload: function(){ + this.parent.mediaViewer.deleteArmed(false) } }) diff --git a/public/assets/javascripts/ui/editor/WallpaperPicker.js b/public/assets/javascripts/ui/editor/WallpaperPicker.js index e652f83..61ecb78 100644 --- a/public/assets/javascripts/ui/editor/WallpaperPicker.js +++ b/public/assets/javascripts/ui/editor/WallpaperPicker.js @@ -2,41 +2,69 @@ var WallpaperPicker = UploadView.extend({ el: ".wallpaper", - uploadAction: "/api/wallpaper/upload", + mediaTag: "wallpaper", + uploadAction: "/api/media/upload", events: { "click .swatch": 'pick', }, initialize: function(){ + this.__super__.initialize.call(this) this.$swatches = this.$(".swatches") }, loaded: false, + show: function(){ + if (! this.loaded) { + this.load() + } + else { + this.toggle(true) + } + }, + + hide: function(){ + this.__super__.hide.call(this) + }, + load: function(){ + $.get("/api/media/user", { tag: this.mediaTag }, this.populate.bind(this)) + }, + + populate: function(data){ + console.log(data) + this.loaded = true + data && data.forEach(this.add.bind(this)) + this.toggle(true) }, - add: function (url) { + add: function (media) { + if (media.type !== "image") { return } var swatch = document.createElement("div") swatch.className = "swatch" - swatch.style.backgroundImage = "url(" + url + ")" + swatch.style.backgroundImage = "url(" + media.url + ")" this.$swatches.append(swatch) }, toggle: function (state) { - this.$el.toggleClass("active", state) + if (state && ! this.loaded) { + this.show() + } + else { + this.$el.toggleClass("active", state) + } // toggle the class that makes the cursor a paintbucket // $("body").removeClass("pastePaper") }, - show: function(){ - this.toggle(true) - }, - hide: function(){ this.toggle(false) }, + beforeUpload: function(){ + }, + pick: function(e){ var $swatch = $(e.currentTarget) var $floatingSwatch = $(".floatingSwatch") |
