diff options
| author | Julie Lala <jules@okfoc.us> | 2014-06-13 02:24:38 -0400 |
|---|---|---|
| committer | Julie Lala <jules@okfoc.us> | 2014-06-13 02:24:38 -0400 |
| commit | 6b00fdd02612f4e5068f436627faa8b702b5f914 (patch) | |
| tree | 43de05a59f2719d60c2fa015282fd131ef8993e7 | |
| parent | ff0b10665ed839f2ae5855b90cc8dd26d3ef740e (diff) | |
delete media
| -rw-r--r-- | public/assets/javascripts/ui/editor/EditorToolbar.js | 1 | ||||
| -rw-r--r-- | public/assets/javascripts/ui/editor/MediaViewer.js | 34 | ||||
| -rw-r--r-- | public/assets/javascripts/ui/editor/WallpaperPicker.js | 6 | ||||
| -rw-r--r-- | public/assets/javascripts/ui/z_misc.js | 20 | ||||
| -rw-r--r-- | server/index.js | 1 | ||||
| -rw-r--r-- | server/lib/api/media.js | 18 | ||||
| -rw-r--r-- | views/builder.ejs | 4 | ||||
| -rwxr-xr-x | views/editor.ejs | 4 |
8 files changed, 55 insertions, 33 deletions
diff --git a/public/assets/javascripts/ui/editor/EditorToolbar.js b/public/assets/javascripts/ui/editor/EditorToolbar.js index 6be068b..4b30228 100644 --- a/public/assets/javascripts/ui/editor/EditorToolbar.js +++ b/public/assets/javascripts/ui/editor/EditorToolbar.js @@ -34,6 +34,7 @@ var EditorToolbar = View.extend({ }, deleteMedia: function(){ + $("body").toggleClass("deleteActive", isActive); }, toggleWallpaper: function(){ diff --git a/public/assets/javascripts/ui/editor/MediaViewer.js b/public/assets/javascripts/ui/editor/MediaViewer.js index 3911d3b..4ae6f97 100644 --- a/public/assets/javascripts/ui/editor/MediaViewer.js +++ b/public/assets/javascripts/ui/editor/MediaViewer.js @@ -1,13 +1,13 @@ var MediaViewer = ModalView.extend({ el: ".mediaDrawer.mediaViewer", - createAction: "/api/docs/new", - updateAction: "/api/docs/edit", - destroyAction: "/api/docs/destroy", + destroyAction: "/api/media/destroy", events: { 'click .foundToggle': "foundToggle", 'click .yourMedia': "userToggle", + 'click #deleteMedia': "deleteArmed", + 'mousedown .mediaContainer': "pick", }, foundToggle: function(){ @@ -69,11 +69,35 @@ var MediaViewer = ModalView.extend({ this.$(".myMedia").prepend($span) }, - destroy: function(name, cb){ + deleteIsArmed: false, + deleteArmed: function(e, state){ + if (typeof state != "boolean") { + state = ! this.deleteIsArmed + } + console.log(state) + this.deleteIsArmed = state + $("body").toggleClass("deleteArmed", state) + }, + + pick: function(e){ + var target = e.currentTarget + var $target = $(target) + var media = $target.data('media') + + if (this.deleteIsArmed) { + this.destroy(media._id) + $target.remove() + } + else { + // pick this image ... + } + }, + + destroy: function(_id, cb){ $.ajax({ type: "delete", url: this.destroyAction, - data: { name: name, _csrf: $("[name=_csrf]").val() } + data: { _id: _id, _csrf: $("[name=_csrf]").val() } }).complete(cb || function(){}) }, diff --git a/public/assets/javascripts/ui/editor/WallpaperPicker.js b/public/assets/javascripts/ui/editor/WallpaperPicker.js index 59dc7dd..ffbd935 100644 --- a/public/assets/javascripts/ui/editor/WallpaperPicker.js +++ b/public/assets/javascripts/ui/editor/WallpaperPicker.js @@ -3,6 +3,7 @@ var WallpaperPicker = View.extend({ el: ".wallpaper", events: { + "click .paper1": 'pick', }, toggle: function(){ @@ -10,5 +11,10 @@ var WallpaperPicker = View.extend({ // toggle the class that makes the cursor a paintbucket // $("body").removeClass("pastePaper"); }, + + pick: function(e){ + $("body").toggleClass("pastePaper"); + $(e.currentTarget).toggleClass("active"); + } }) diff --git a/public/assets/javascripts/ui/z_misc.js b/public/assets/javascripts/ui/z_misc.js index f2620b7..c0f7983 100644 --- a/public/assets/javascripts/ui/z_misc.js +++ b/public/assets/javascripts/ui/z_misc.js @@ -59,22 +59,6 @@ function bind () { $(this).toggleClass('hidden'); }); - $(".paper1").click(function(){ - $("body").toggleClass("pastePaper"); - $(this).toggleClass("active"); - }); - - $(".icon-ios7-sunny-outline").clickToToggle(function(isActive){ - $(".lightcontrol").toggleClass("active", isActive); - }); - $(".delete-image-toggle").clickToToggle(function(isActive){ - $("body").toggleClass("deleteActive", isActive); - }); - $(".icon-key").clickToToggle(function(isActive){ - $(".settings").toggleClass("active", isActive); - }); - - $(".edit-text-toggle").clickToToggle(function(isActive){ $(".image").toggleClass("editText", isActive); @@ -91,10 +75,6 @@ function bind () { $("#moveText").toggleClass("show"); }); - - $(".deleteArmed .mediaContainer").click(function(){ - $(this).addClass("deleted"); - }); $(document).on("click", ".icon-close", disable_mode) diff --git a/server/index.js b/server/index.js index d55d182..f76c40b 100644 --- a/server/index.js +++ b/server/index.js @@ -128,6 +128,7 @@ site.route = function () { app.get('/api/media/user', middleware.ensureAuthenticated, api.media.user) app.post('/api/media/new', middleware.ensureAuthenticated, api.media.create) app.post('/api/media/upload', middleware.ensureAuthenticated, api.media.upload) + app.delete('/api/media/destroy', middleware.ensureAuthenticated, api.media.destroy) } diff --git a/server/lib/api/media.js b/server/lib/api/media.js index 9898727..48446ca 100644 --- a/server/lib/api/media.js +++ b/server/lib/api/media.js @@ -48,7 +48,25 @@ var media = { res.json(rec) }) } + }, + + destroy: function(req, res){ + var _id = util.sanitize(req.body._id) + if (! _id || ! _id.length) { + res.json({ error: 404 }) + return + } + Media.findOne({ _id: _id }, function(err, doc){ + if (! doc) { return res.json({ error: 404 }) } + if (String(doc.user_id) !== String(req.user._id)) { + return res.json({ error: "access denied" }) + } + Media.remove({ _id: _id }, function(err){ + res.json({ status: "OK" }) + }) + }) } + } module.exports = media diff --git a/views/builder.ejs b/views/builder.ejs index 8e887e3..61e84c3 100644 --- a/views/builder.ejs +++ b/views/builder.ejs @@ -35,10 +35,6 @@ <div id="hud"> <div id="map" style="display: block"> </div> - - <div id="info"> - <div id="intersects"></div> - </div> </div> </div> diff --git a/views/editor.ejs b/views/editor.ejs index f4c303d..cd31b41 100755 --- a/views/editor.ejs +++ b/views/editor.ejs @@ -39,10 +39,6 @@ <div id="hud"> <div id="map" style="display: block"> </div> - - <div id="info"> - <div id="intersects"></div> - </div> </div> </div> |
