diff --git a/Changelog.md b/Changelog.md index 409acf0b7..a531e0b94 100644 --- a/Changelog.md +++ b/Changelog.md @@ -34,6 +34,7 @@ * Added link to diasporafoundation.org to invitation email [#5893](https://github.com/diaspora/diaspora/pull/5893) * Gracefully handle missing `og:url`s [#5926](https://github.com/diaspora/diaspora/pull/5926) * Remove private post content from "also commented" mails [#5931](https://github.com/diaspora/diaspora/pull/5931) +* Add a button to follow/unfollow tags to the mobile interface [#5941](https://github.com/diaspora/diaspora/pull/5941) # 0.5.0.1 diff --git a/app/assets/javascripts/app/helpers/handlebars-helpers.js b/app/assets/javascripts/app/helpers/handlebars-helpers.js index c428bfdd7..1862dc11b 100644 --- a/app/assets/javascripts/app/helpers/handlebars-helpers.js +++ b/app/assets/javascripts/app/helpers/handlebars-helpers.js @@ -12,13 +12,13 @@ Handlebars.registerHelper('imageUrl', function(path){ return ImagePaths.get(path); }); -Handlebars.registerHelper('urlTo', function(path_helper, id, data){ +Handlebars.registerHelper("urlTo", function(pathHelper, id, data){ if( !data ) { // only one argument given to helper, mangle parameters data = id; - return Routes[path_helper+'_path'](data.hash); + return Routes[pathHelper](data.hash); } - return Routes[path_helper+'_path'](id, data.hash); + return Routes[pathHelper](id, data.hash); }); Handlebars.registerHelper('linkToAuthor', function(context, block) { @@ -89,32 +89,32 @@ Handlebars.registerHelper('localTime', function(timestamp) { return new Date(timestamp).toLocaleString(); }); -Handlebars.registerHelper('fmtTags', function(tags) { +Handlebars.registerHelper("fmtTags", function(tags) { var links = _.map(tags, function(tag) { - return '' + - ' #' + tag + - ''; - }).join(' '); + return "" + + " #" + tag + + ""; + }).join(" "); return new Handlebars.SafeString(links); }); -Handlebars.registerHelper('fmtText', function(text) { +Handlebars.registerHelper("fmtText", function(text) { return new Handlebars.SafeString(app.helpers.textFormatter(text)); }); -Handlebars.registerHelper('isCurrentPage', function(path_helper, id, options){ +Handlebars.registerHelper("isCurrentPage", function(pathHelper, id, options){ var currentPage = "/"+Backbone.history.fragment; - if (currentPage === Handlebars.helpers.urlTo(path_helper, id, options.data)) { + if (currentPage === Handlebars.helpers.urlTo(pathHelper, id, options.data)) { return options.fn(this); } else { return options.inverse(this); } }); -Handlebars.registerHelper('isCurrentProfilePage', function(id, diaspora_handle, options){ - var username = diaspora_handle.split("@")[0]; - return Handlebars.helpers.isCurrentPage('person', id, options) || - Handlebars.helpers.isCurrentPage('user_profile', username, options); +Handlebars.registerHelper("isCurrentProfilePage", function(id, diasporaHandle, options){ + var username = diasporaHandle.split("@")[0]; + return Handlebars.helpers.isCurrentPage("person", id, options) || + Handlebars.helpers.isCurrentPage("userProfile", username, options); }); Handlebars.registerHelper('aspectMembershipIndicator', function(contact,in_aspect) { diff --git a/app/assets/javascripts/app/models/person.js b/app/assets/javascripts/app/models/person.js index 0cfcc9f66..8c9a7241a 100644 --- a/app/assets/javascripts/app/models/person.js +++ b/app/assets/javascripts/app/models/person.js @@ -2,7 +2,7 @@ app.models.Person = Backbone.Model.extend({ url: function() { - return Routes.person_path(this.get('guid')); + return Routes.person(this.get("guid")); }, initialize: function() { diff --git a/app/assets/javascripts/app/pages/contacts.js b/app/assets/javascripts/app/pages/contacts.js index 27e7ec126..782120b22 100644 --- a/app/assets/javascripts/app/pages/contacts.js +++ b/app/assets/javascripts/app/pages/contacts.js @@ -83,7 +83,7 @@ app.pages.Contacts = Backbone.View.extend({ update: function() { $("#aspect_nav .ui-sortable").removeClass("synced"); var data = JSON.stringify({ ordered_aspect_ids: $(this).sortable("toArray", { attribute: "data-aspect-id" }) }); - $.ajax(Routes.order_aspects_path(), + $.ajax(Routes.orderAspects(), { type: "put", dataType: "text", contentType: "application/json", data: data }) .done(function() { $("#aspect_nav .ui-sortable").addClass("synced"); }); }, diff --git a/app/assets/javascripts/app/pages/profile.js b/app/assets/javascripts/app/pages/profile.js index 767c9f3a2..f9f24da73 100644 --- a/app/assets/javascripts/app/pages/profile.js +++ b/app/assets/javascripts/app/pages/profile.js @@ -76,11 +76,11 @@ app.pages.Profile = app.views.Base.extend({ } // a collection is set, this means we want to view photos - var route = this.streamCollection ? 'person_photos_path' : 'person_stream_path'; + var route = this.streamCollection ? "personPhotos" : "personStream"; var view = this.streamViewClass ? this.streamViewClass : app.views.Stream; app.stream = new app.models.Stream(null, { - basePath: Routes[route](app.page.model.get('guid')), + basePath: Routes[route](app.page.model.get("guid")), collection: this.streamCollection }); app.stream.fetch(); diff --git a/app/assets/javascripts/app/views/help_view.js b/app/assets/javascripts/app/views/help_view.js index 6cbcdf25c..f1ec4618f 100644 --- a/app/assets/javascripts/app/views/help_view.js +++ b/app/assets/javascripts/app/views/help_view.js @@ -40,7 +40,7 @@ app.views.Help = app.views.StaticContentView.extend({ this.CHAT_SUBS = { add_contact_roster_a: { toggle_privilege: this.getChatIcons(), - contacts_page: this.linkHtml(Routes.contacts_path(), Diaspora.I18n.t('chat.contacts_page')) + contacts_page: this.linkHtml(Routes.contacts(), Diaspora.I18n.t("chat.contacts_page")) } }; diff --git a/app/assets/javascripts/app/views/notification_dropdown_view.js b/app/assets/javascripts/app/views/notification_dropdown_view.js index a2c7525db..36de9c954 100644 --- a/app/assets/javascripts/app/views/notification_dropdown_view.js +++ b/app/assets/javascripts/app/views/notification_dropdown_view.js @@ -74,7 +74,7 @@ app.views.NotificationDropdown = app.views.Base.extend({ getNotifications: function(){ var self = this; - $.getJSON(Routes.notifications_path(this.getParams()), function(notifications){ + $.getJSON(Routes.notifications(this.getParams()), function(notifications){ $.each(notifications, function(){ self.notifications.push(this); }); self.hasMoreNotifs = notifications.length >= self.perPage; if(self.nextPage){ self.nextPage++; } diff --git a/app/assets/javascripts/app/views/single-post-viewer/single_post_moderation.js b/app/assets/javascripts/app/views/single-post-viewer/single_post_moderation.js index ad636addf..8604d1adc 100644 --- a/app/assets/javascripts/app/views/single-post-viewer/single_post_moderation.js +++ b/app/assets/javascripts/app/views/single-post-viewer/single_post_moderation.js @@ -49,7 +49,7 @@ app.views.SinglePostModeration = app.views.Feedback.extend({ createParticipation: function (evt) { if(evt) { evt.preventDefault(); } var self = this; - $.post(Routes.post_participation_path(this.model.get("id")), {}, function () { + $.post(Routes.postParticipation(this.model.get("id")), {}, function () { self.model.set({participation: true}); self.render(); }); @@ -58,7 +58,7 @@ app.views.SinglePostModeration = app.views.Feedback.extend({ destroyParticipation: function (evt) { if(evt) { evt.preventDefault(); } var self = this; - $.post(Routes.post_participation_path(this.model.get("id")), { _method: "delete" }, function () { + $.post(Routes.postParticipation(this.model.get("id")), { _method: "delete" }, function () { self.model.set({participation: false}); self.render(); }); diff --git a/app/assets/javascripts/app/views/stream_post_views.js b/app/assets/javascripts/app/views/stream_post_views.js index fb44250f6..60a965136 100644 --- a/app/assets/javascripts/app/views/stream_post_views.js +++ b/app/assets/javascripts/app/views/stream_post_views.js @@ -119,7 +119,7 @@ app.views.StreamPost = app.views.Post.extend({ createParticipation: function (evt) { if(evt) { evt.preventDefault(); } that = this; - $.post(Routes.post_participation_path(this.model.get("id")), {}, function () { + $.post(Routes.postParticipation(this.model.get("id")), {}, function () { that.model.set({participation: true}); that.render(); }); @@ -128,7 +128,7 @@ app.views.StreamPost = app.views.Post.extend({ destroyParticipation: function (evt) { if(evt) { evt.preventDefault(); } that = this; - $.post(Routes.post_participation_path(this.model.get("id")), { _method: "delete" }, function () { + $.post(Routes.postParticipation(this.model.get("id")), { _method: "delete" }, function () { that.model.set({participation: false}); that.render(); }); diff --git a/app/assets/javascripts/mobile/profile_aspects.js b/app/assets/javascripts/mobile/profile_aspects.js index 11769b4bd..2c664f045 100644 --- a/app/assets/javascripts/mobile/profile_aspects.js +++ b/app/assets/javascripts/mobile/profile_aspects.js @@ -27,14 +27,14 @@ $(document).ready(function(){ if(selected.hasClass('selected')) { // remove from aspect - var membership_id = selected.data('membership_id'); + var membershipId = selected.data("membership_id"); $.ajax({ - url: Routes.aspect_membership_path(membership_id), - type: 'DELETE', - dataType: 'json', + url: Routes.aspectMembership(membershipId), + type: "DELETE", + dataType: "json", headers: { - 'Accept': "application/json, text/javascript, */*; q=0.01" + "Accept": "application/json, text/javascript, */*; q=0.01" } }).done(function() { selected.text("– " + Diaspora.I18n.t('aspect_dropdown.mobile_row_unchecked', {name: selected.data('name')})); @@ -50,7 +50,7 @@ $(document).ready(function(){ var person_id = $el.data('person-id'); $.ajax({ - url: Routes.aspect_memberships_path(), + url: Routes.aspectMemberships(), data: JSON.stringify({ "person_id": person_id, "aspect_id": parseInt(selected.val(), 10) diff --git a/app/assets/javascripts/mobile/tag_following.js b/app/assets/javascripts/mobile/tag_following.js index ef46ac984..43eda0053 100644 --- a/app/assets/javascripts/mobile/tag_following.js +++ b/app/assets/javascripts/mobile/tag_following.js @@ -6,7 +6,7 @@ $(document).ready(function(){ if(button.hasClass("btn-success")){ $.ajax({ - url: Routes.tag_followings_path(), + url: Routes.tagFollowings(), data: JSON.stringify({"name": tagName}), type: "POST", dataType: "json", @@ -26,7 +26,7 @@ $(document).ready(function(){ var tagFollowing = _.findWhere(gon.preloads.tagFollowings,{name: tagName}); if(!tagFollowing) { return; } $.ajax({ - url: Routes.tag_following_path(tagFollowing.id), + url: Routes.tagFollowing(tagFollowing.id), dataType: "json", type: "DELETE", headers: { diff --git a/app/assets/templates/profile_header_tpl.jst.hbs b/app/assets/templates/profile_header_tpl.jst.hbs index 516ae8345..45c06f9eb 100644 --- a/app/assets/templates/profile_header_tpl.jst.hbs +++ b/app/assets/templates/profile_header_tpl.jst.hbs @@ -2,7 +2,7 @@