Add rel=nofollow to links to tagless nodes in browse pages
authorTom Hughes <tom@compton.nu>
Sun, 20 Dec 2015 00:19:16 +0000 (00:19 +0000)
committerTom Hughes <tom@compton.nu>
Sun, 20 Dec 2015 00:19:16 +0000 (00:19 +0000)
.rubocop_todo.yml
app/helpers/browse_helper.rb
app/views/browse/_relation_member.html.erb
app/views/browse/_way.html.erb
app/views/browse/changeset.html.erb

index 287fcd9..b317054 100644 (file)
@@ -85,7 +85,7 @@ Metrics/MethodLength:
 # Offense count: 1
 # Configuration parameters: CountComments.
 Metrics/ModuleLength:
-  Max: 126
+  Max: 129
 
 # Offense count: 4
 # Configuration parameters: CountKeywordArgs.
index 3723186..6c9e108 100644 (file)
@@ -52,6 +52,10 @@ module BrowseHelper
     end
   end
 
+  def link_follow(object)
+    "nofollow" if object.tags.empty?
+  end
+
   def format_key(key)
     if url = wiki_link("key", key)
       link_to h(key), url, :title => t("browse.tag_details.wiki_link.key", :key => key)
index 0d17de3..87b7e30 100644 (file)
@@ -1,6 +1,6 @@
 <%
   member_class = link_class(relation_member.member_type.downcase, relation_member.member)
-  linked_name = link_to printable_name(relation_member.member), { :action => relation_member.member_type.downcase, :id => relation_member.member_id.to_s }, :title => link_title(relation_member.member)
+  linked_name = link_to printable_name(relation_member.member), { :action => relation_member.member_type.downcase, :id => relation_member.member_id.to_s }, :title => link_title(relation_member.member), :rel => link_follow(relation_member.member)
   type_str = t'browse.relation_member.type.' + relation_member.member_type.downcase
 %>
   <li class="<%= member_class %>"><%=
index b1dffb9..489b9cf 100644 (file)
@@ -15,7 +15,7 @@
       <ul>
         <% way.way_nodes.each do |wn| %>
           <li>
-            <%= link_to printable_name(wn.node), { :action => "node", :id => wn.node_id.to_s }, :class => link_class('node', wn.node), :title => link_title(wn.node) %>
+            <%= link_to printable_name(wn.node), { :action => "node", :id => wn.node_id.to_s }, :class => link_class('node', wn.node), :title => link_title(wn.node), :rel => link_follow(wn.node) %>
             <% related_ways = wn.node.ways.reject { |w| w.id == wn.way_id } %>
             <% if related_ways.size > 0 then %>
               (<%= raw t 'browse.way.also_part_of', :count => related_ways.size, :related_ways => related_ways.map { |w| link_to(printable_name(w), { :action => "way", :id => w.id.to_s }, :class => link_class('way', w), :title => link_title(w) ) }.to_sentence %>)
index efb7bb7..9629e60 100644 (file)
     </h4>
     <ul>
       <% @nodes.each do |node| %>
-        <li><%= link_to printable_name(node, true), { :action => "node", :id => node.node_id.to_s }, :class => link_class('node', node), :title => link_title(node) %></li>
+        <li><%= link_to printable_name(node, true), { :action => "node", :id => node.node_id.to_s }, :class => link_class('node', node), :title => link_title(node), :rel => link_follow(node) %></li>
       <% end %>
     </ul>
   <% end %>