diff --git a/app/controllers/share_visibilities_controller.rb b/app/controllers/share_visibilities_controller.rb index b7fca1386..1c6cb9a8e 100644 --- a/app/controllers/share_visibilities_controller.rb +++ b/app/controllers/share_visibilities_controller.rb @@ -20,7 +20,7 @@ class ShareVisibilitiesController < ApplicationController @vis.hidden = !@vis.hidden if @vis.save update_cache(@vis) - render 'update' + render :nothing => true, :status => 200 return end end diff --git a/app/views/share_visibilities/update.js.erb b/app/views/share_visibilities/update.js.erb deleted file mode 100644 index f679cdb68..000000000 --- a/app/views/share_visibilities/update.js.erb +++ /dev/null @@ -1,10 +0,0 @@ -var target = $("#<%= @post.guid %>") -target.find(".sm_body").toggleClass("hidden"); -target.find(".undo_text").toggleClass("hidden"); -target.find(".hide_loader").toggleClass("hidden"); - -var hide_icon = target.find(".stream_element_delete") -if (target.find(".undo_text").hasClass("hidden")) { - hide_icon.toggleClass("hidden"); - target.find(".hide_loader").toggleClass("hidden"); -} diff --git a/app/views/templates/stream_element.jst b/app/views/templates/stream_element.jst index 3e898e14b..89e217e8d 100644 --- a/app/views/templates/stream_element.jst +++ b/app/views/templates/stream_element.jst @@ -2,6 +2,7 @@ <% if(author.id != current_user.id) { %> Ignoreuser + <% } else { %> diff --git a/config/locales/javascript/javascript.en.yml b/config/locales/javascript/javascript.en.yml index 745cae215..ebf27c377 100644 --- a/config/locales/javascript/javascript.en.yml +++ b/config/locales/javascript/javascript.en.yml @@ -70,6 +70,7 @@ en: wasnt_that_interesting: "OK, I suppose #<%= tagName %> wasn't all that interesting..." stream: + hide: "Hide" public: "Public" limited: "Limited" like: "Like" diff --git a/public/javascripts/app/views/post_view.js b/public/javascripts/app/views/post_view.js index 0e20a7779..fae53a95d 100644 --- a/public/javascripts/app/views/post_view.js +++ b/public/javascripts/app/views/post_view.js @@ -8,6 +8,7 @@ app.views.Post = app.views.StreamObject.extend({ "click .focus_comment_textarea": "focusCommentTextarea", "click .shield a": "removeNsfwShield", "click .remove_post": "destroyModel", + "click .hide_post": "hidePost", "click .block_user": "blockUser" }, @@ -90,6 +91,21 @@ app.views.Post = app.views.StreamObject.extend({ }) }, + hidePost : function(evt) { + if(evt) { evt.preventDefault(); } + if(!confirm(Diaspora.I18n.t('confirm_dialog'))) { return } + + $.ajax({ + url : "/share_visibilities/42", + type : "PUT", + data : { + post_id : this.model.id + } + }) + + this.slideAndRemove(); + }, + focusCommentTextarea: function(evt){ evt.preventDefault(); this.$(".new_comment_form_wrapper").removeClass("hidden"); diff --git a/public/javascripts/app/views/stream_object_view.js b/public/javascripts/app/views/stream_object_view.js index 36121ba2a..253a9c654 100644 --- a/public/javascripts/app/views/stream_object_view.js +++ b/public/javascripts/app/views/stream_object_view.js @@ -24,7 +24,10 @@ app.views.StreamObject = app.views.Base.extend({ if(!confirm(Diaspora.I18n.t("confirm_dialog"))) { return } this.model.destroy(); + this.slideAndRemove(); + }, + slideAndRemove : function(){ $(this.el).slideUp(400, function(){ $(this).remove(); });