Merge pull request #6683 from svbergerem/fix-mobile-500-like

Fix 500 for mobile like without javascript
This commit is contained in:
Dennis Schubert 2016-02-08 07:59:20 +01:00
commit 9f6cc7cf12
3 changed files with 14 additions and 7 deletions

View file

@ -95,6 +95,7 @@ Contributions are very welcome, the hard work is done!
* Add navbar on mobile when not logged in [#6483](https://github.com/diaspora/diaspora/pull/6483) * Add navbar on mobile when not logged in [#6483](https://github.com/diaspora/diaspora/pull/6483)
* Fix timeago tooltips for reshares [#6648](https://github.com/diaspora/diaspora/pull/6648) * Fix timeago tooltips for reshares [#6648](https://github.com/diaspora/diaspora/pull/6648)
* "Getting started" is now turned off after first visit on mobile [#6681](https://github.com/diaspora/diaspora/pull/6681) * "Getting started" is now turned off after first visit on mobile [#6681](https://github.com/diaspora/diaspora/pull/6681)
* Fixed a 500 when liking on mobile without JS enabled [#6683](https://github.com/diaspora/diaspora/pull/6683)
## Features ## Features
* Support color themes [#6033](https://github.com/diaspora/diaspora/pull/6033) * Support color themes [#6033](https://github.com/diaspora/diaspora/pull/6033)

View file

@ -63,18 +63,18 @@ $(document).ready(function(){
evt.preventDefault(); evt.preventDefault();
var link = $(this), var link = $(this),
likeCounter = $(this).closest(".stream_element").find(".like-count"), likeCounter = $(this).closest(".stream_element").find(".like-count"),
href = link.attr("href"); url = link.data("url");
if(!link.hasClass("loading")){ if(!link.hasClass("loading")){
if(link.hasClass('inactive')) { if(link.hasClass('inactive')) {
$.ajax({ $.ajax({
url: href, url: url,
dataType: 'json', dataType: 'json',
type: 'POST', type: 'POST',
beforeSend: showLoader(link), beforeSend: showLoader(link),
success: function(data){ success: function(data){
removeLoader(link); removeLoader(link);
link.attr("href", href + "/" + data["id"]); link.data("url", url + "/" + data.id);
if(likeCounter){ if(likeCounter){
likeCounter.text(parseInt(likeCounter.text(), 10) + 1); likeCounter.text(parseInt(likeCounter.text(), 10) + 1);
@ -84,13 +84,13 @@ $(document).ready(function(){
} }
else if(link.hasClass("active")){ else if(link.hasClass("active")){
$.ajax({ $.ajax({
url: link.attr("href"), url: url,
dataType: 'json', dataType: 'json',
type: 'DELETE', type: 'DELETE',
beforeSend: showLoader(link), beforeSend: showLoader(link),
complete: function(){ complete: function(){
removeLoader(link); removeLoader(link);
link.attr("href", href.replace(/\/\d+$/, '')); link.data("url", url.replace(/\/\d+$/, ""));
if(likeCounter){ if(likeCounter){
likeCounter.text(parseInt(likeCounter.text(), 10) - 1); likeCounter.text(parseInt(likeCounter.text(), 10) - 1);

View file

@ -20,9 +20,15 @@ module MobileHelper
def mobile_like_icon(post) def mobile_like_icon(post)
if current_user && current_user.liked?(post) if current_user && current_user.liked?(post)
link_to "", post_like_path(post.id, current_user.like_for(post).id), class: "entypo-heart like-action active" link_to "",
"#",
data: {url: post_like_path(post.id, current_user.like_for(post).id)},
class: "entypo-heart like-action active"
else else
link_to "", post_likes_path(post.id), class: "entypo-heart like-action inactive" link_to "",
"#",
data: {url: post_likes_path(post.id)},
class: "entypo-heart like-action inactive"
end end
end end