Merge branch 'master' into openstreetbugs
authorTom Hughes <tom@compton.nu>
Fri, 7 May 2010 21:29:09 +0000 (22:29 +0100)
committerTom Hughes <tom@compton.nu>
Fri, 7 May 2010 21:29:09 +0000 (22:29 +0100)
Conflicts:
lib/osm.rb

1  2 
config/environment.rb
config/locales/en.yml
config/routes.rb
lib/osm.rb

Simple merge
Simple merge
Simple merge
diff --cc lib/osm.rb
@@@ -498,15 -499,24 +499,34 @@@ module OS
      return "#{tilesql} AND #{prefix}latitude BETWEEN #{minlat} AND #{maxlat} AND #{prefix}longitude BETWEEN #{minlon} AND #{maxlon}"
    end
  
 +  # Return an SQL fragment to select a given area of the globe without using the quadtile index
 +  def self.sql_for_area_no_quadtile(minlat, minlon, maxlat, maxlon, prefix = nil, without_quadtile = :false)
 +    minlat = (minlat * 10000000).round
 +    minlon = (minlon * 10000000).round
 +    maxlat = (maxlat * 10000000).round
 +    maxlon = (maxlon * 10000000).round
 +
 +    return "#{prefix}latitude BETWEEN #{minlat} AND #{maxlat} AND #{prefix}longitude BETWEEN #{minlon} AND #{maxlon}"
 +  end
 +
+   # Return a spam score for a chunk of text
+   def self.spam_score(text)
+     link_count = 0
+     link_size = 0
  
+     doc = Nokogiri::HTML(text)
+     if doc.content.length > 0
+       doc.xpath("//a").each do |link|
+         link_count += 1
+         link_size += link.content.length
+       end
+       link_proportion = link_size.to_f / doc.content.length.to_f
+     else
+       link_proportion = 0
+     end
+     return [link_proportion - 0.2, 0.0].max * 200 + link_count * 20
+   end
  end