Fix new rubocop warnings
This commit is contained in:
parent
fbd6909b91
commit
6c2093b29d
21 changed files with 51 additions and 0 deletions
|
@ -30,6 +30,9 @@ Rails/ApplicationRecord:
|
|||
Rails/CreateTableWithTimestamps:
|
||||
Enabled: false
|
||||
|
||||
Rails/FindEach:
|
||||
Enabled: false
|
||||
|
||||
Rails/HasManyOrHasOneDependent:
|
||||
Enabled: false
|
||||
|
||||
|
|
|
@ -143,6 +143,7 @@ class AmfController < ApplicationController
|
|||
|
||||
if cstags
|
||||
return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(cstags)
|
||||
|
||||
cstags = strip_non_xml_chars cstags
|
||||
end
|
||||
|
||||
|
@ -497,6 +498,7 @@ class AmfController < ApplicationController
|
|||
rel = Relation.where(:id => relid).first
|
||||
|
||||
return [-4, "relation", relid] if rel.nil? || !rel.visible
|
||||
|
||||
[0, "", relid, rel.tags, rel.members, rel.version]
|
||||
end
|
||||
end
|
||||
|
@ -533,6 +535,7 @@ class AmfController < ApplicationController
|
|||
return -1, "You must accept the contributor terms before you can edit." if REQUIRE_TERMS_AGREED && user.terms_agreed.nil?
|
||||
|
||||
return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(tags)
|
||||
|
||||
tags = strip_non_xml_chars tags
|
||||
|
||||
relid = relid.to_i
|
||||
|
@ -622,6 +625,7 @@ class AmfController < ApplicationController
|
|||
return -2, "Server error - way is only #{pointlist.length} points long." if pointlist.length < 2
|
||||
|
||||
return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(attributes)
|
||||
|
||||
attributes = strip_non_xml_chars attributes
|
||||
|
||||
originalway = originalway.to_i
|
||||
|
@ -651,6 +655,7 @@ class AmfController < ApplicationController
|
|||
|
||||
# fixup node tags in a way as well
|
||||
return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(node.tags)
|
||||
|
||||
node.tags = strip_non_xml_chars node.tags
|
||||
|
||||
node.tags.delete("created_by")
|
||||
|
@ -728,6 +733,7 @@ class AmfController < ApplicationController
|
|||
return -1, "You must accept the contributor terms before you can edit." if REQUIRE_TERMS_AGREED && user.terms_agreed.nil?
|
||||
|
||||
return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(tags)
|
||||
|
||||
tags = strip_non_xml_chars tags
|
||||
|
||||
id = id.to_i
|
||||
|
|
|
@ -481,6 +481,7 @@ class ChangesetController < ApplicationController
|
|||
u = if name.nil?
|
||||
# user input checking, we don't have any UIDs < 1
|
||||
raise OSM::APIBadUserInput, "invalid user ID" if user.to_i < 1
|
||||
|
||||
u = User.find(user.to_i)
|
||||
else
|
||||
u = User.find_by(:display_name => name)
|
||||
|
|
|
@ -54,6 +54,7 @@ class NodeController < ApplicationController
|
|||
new_node = Node.from_xml(request.raw_post)
|
||||
|
||||
raise OSM::APIBadUserInput, "The id in the url (#{node.id}) is not the same as provided in the xml (#{new_node.id})" unless new_node && new_node.id == node.id
|
||||
|
||||
node.delete_with_history!(new_node, current_user)
|
||||
render :plain => node.version.to_s
|
||||
end
|
||||
|
@ -65,6 +66,7 @@ class NodeController < ApplicationController
|
|||
ids = params["nodes"].split(",").collect(&:to_i)
|
||||
|
||||
raise OSM::APIBadUserInput, "No nodes were given to search for" if ids.empty?
|
||||
|
||||
doc = OSM::API.new.get_xml_doc
|
||||
|
||||
Node.find(ids).each do |node|
|
||||
|
|
|
@ -826,6 +826,7 @@ class UserController < ApplicationController
|
|||
def gravatar_enable(user)
|
||||
# code from example https://en.gravatar.com/site/implement/images/ruby/
|
||||
return false if user.image.present?
|
||||
|
||||
hash = Digest::MD5.hexdigest(user.email.downcase)
|
||||
url = "https://www.gravatar.com/avatar/#{hash}?d=404" # without d=404 we will always get an image back
|
||||
response = OSM.http_client.get(URI.parse(url))
|
||||
|
|
|
@ -106,6 +106,7 @@ class Changeset < ActiveRecord::Base
|
|||
pt.find("tag").each do |tag|
|
||||
raise OSM::APIBadXMLError.new("changeset", pt, "tag is missing key") if tag["k"].nil?
|
||||
raise OSM::APIBadXMLError.new("changeset", pt, "tag is missing value") if tag["v"].nil?
|
||||
|
||||
cs.add_tag_keyval(tag["k"], tag["v"])
|
||||
end
|
||||
|
||||
|
|
|
@ -57,6 +57,7 @@ class ClientApplication < ActiveRecord::Base
|
|||
def self.verify_request(request, options = {}, &block)
|
||||
signature = OAuth::Signature.build(request, options, &block)
|
||||
return false unless OauthNonce.remember(signature.request.nonce, signature.request.timestamp)
|
||||
|
||||
value = signature.verify
|
||||
value
|
||||
rescue OAuth::Signature::UnknownSignatureMethod
|
||||
|
|
|
@ -88,19 +88,23 @@ class Node < ActiveRecord::Base
|
|||
|
||||
raise OSM::APIBadXMLError.new("node", pt, "lat missing") if pt["lat"].nil?
|
||||
raise OSM::APIBadXMLError.new("node", pt, "lon missing") if pt["lon"].nil?
|
||||
|
||||
node.lat = OSM.parse_float(pt["lat"], OSM::APIBadXMLError, "node", pt, "lat not a number")
|
||||
node.lon = OSM.parse_float(pt["lon"], OSM::APIBadXMLError, "node", pt, "lon not a number")
|
||||
raise OSM::APIBadXMLError.new("node", pt, "Changeset id is missing") if pt["changeset"].nil?
|
||||
|
||||
node.changeset_id = pt["changeset"].to_i
|
||||
|
||||
raise OSM::APIBadUserInput, "The node is outside this world" unless node.in_world?
|
||||
|
||||
# version must be present unless creating
|
||||
raise OSM::APIBadXMLError.new("node", pt, "Version is required when updating") unless create || !pt["version"].nil?
|
||||
|
||||
node.version = create ? 0 : pt["version"].to_i
|
||||
|
||||
unless create
|
||||
raise OSM::APIBadXMLError.new("node", pt, "ID is required when updating.") if pt["id"].nil?
|
||||
|
||||
node.id = pt["id"].to_i
|
||||
# .to_i will return 0 if there is no number that can be parsed.
|
||||
# We want to make sure that there is no id with zero anyway
|
||||
|
@ -119,6 +123,7 @@ class Node < ActiveRecord::Base
|
|||
pt.find("tag").each do |tag|
|
||||
raise OSM::APIBadXMLError.new("node", pt, "tag is missing key") if tag["k"].nil?
|
||||
raise OSM::APIBadXMLError.new("node", pt, "tag is missing value") if tag["v"].nil?
|
||||
|
||||
node.add_tag_key_val(tag["k"], tag["v"])
|
||||
end
|
||||
|
||||
|
|
|
@ -22,8 +22,10 @@ class OauthNonce < ActiveRecord::Base
|
|||
# Remembers a nonce and it's associated timestamp. It returns false if it has already been used
|
||||
def self.remember(nonce, timestamp)
|
||||
return false if Time.now.to_i - timestamp.to_i > 86400
|
||||
|
||||
oauth_nonce = OauthNonce.create(:nonce => nonce, :timestamp => timestamp.to_i)
|
||||
return false if oauth_nonce.new_record?
|
||||
|
||||
oauth_nonce
|
||||
end
|
||||
end
|
||||
|
|
|
@ -70,12 +70,15 @@ class Relation < ActiveRecord::Base
|
|||
relation = Relation.new
|
||||
|
||||
raise OSM::APIBadXMLError.new("relation", pt, "Version is required when updating") unless create || !pt["version"].nil?
|
||||
|
||||
relation.version = pt["version"]
|
||||
raise OSM::APIBadXMLError.new("relation", pt, "Changeset id is missing") if pt["changeset"].nil?
|
||||
|
||||
relation.changeset_id = pt["changeset"]
|
||||
|
||||
unless create
|
||||
raise OSM::APIBadXMLError.new("relation", pt, "ID is required when updating") if pt["id"].nil?
|
||||
|
||||
relation.id = pt["id"].to_i
|
||||
# .to_i will return 0 if there is no number that can be parsed.
|
||||
# We want to make sure that there is no id with zero anyway
|
||||
|
@ -94,6 +97,7 @@ class Relation < ActiveRecord::Base
|
|||
pt.find("tag").each do |tag|
|
||||
raise OSM::APIBadXMLError.new("relation", pt, "tag is missing key") if tag["k"].nil?
|
||||
raise OSM::APIBadXMLError.new("relation", pt, "tag is missing value") if tag["v"].nil?
|
||||
|
||||
relation.add_tag_keyval(tag["k"], tag["v"])
|
||||
end
|
||||
|
||||
|
@ -106,6 +110,7 @@ class Relation < ActiveRecord::Base
|
|||
pt.find("member").each do |member|
|
||||
# member_type =
|
||||
raise OSM::APIBadXMLError.new("relation", pt, "The #{member['type']} is not allowed only, #{TYPES.inspect} allowed") unless TYPES.include? member["type"]
|
||||
|
||||
# member_ref = member['ref']
|
||||
# member_role
|
||||
member["role"] ||= "" # Allow the upload to not include this, in which case we default to an empty string.
|
||||
|
@ -207,6 +212,7 @@ class Relation < ActiveRecord::Base
|
|||
lock!
|
||||
check_consistency(self, new_relation, user)
|
||||
raise OSM::APIPreconditionFailedError, "Cannot update relation #{id}: data or member data is invalid." unless new_relation.preconditions_ok?(members)
|
||||
|
||||
self.changeset_id = new_relation.changeset_id
|
||||
self.changeset = new_relation.changeset
|
||||
self.tags = new_relation.tags
|
||||
|
@ -219,6 +225,7 @@ class Relation < ActiveRecord::Base
|
|||
def create_with_history(user)
|
||||
check_create_consistency(self, user)
|
||||
raise OSM::APIPreconditionFailedError, "Cannot create relation: data or member data is invalid." unless preconditions_ok?
|
||||
|
||||
self.version = 0
|
||||
self.visible = true
|
||||
save_with_history!
|
||||
|
@ -254,6 +261,7 @@ class Relation < ActiveRecord::Base
|
|||
|
||||
# and check that it is OK to use.
|
||||
raise OSM::APIPreconditionFailedError, "Relation with id #{id} cannot be saved due to #{m[0]} with id #{m[1]}" unless element && element.visible? && element.preconditions_ok?
|
||||
|
||||
hash[m[1]] = true
|
||||
end
|
||||
|
||||
|
@ -270,6 +278,7 @@ class Relation < ActiveRecord::Base
|
|||
if old_id < 0
|
||||
new_id = id_map[type.downcase.to_sym][old_id]
|
||||
raise OSM::APIBadUserInput, "Placeholder #{type} not found for reference #{old_id} in relation #{self.id.nil? ? placeholder_id : self.id}." if new_id.nil?
|
||||
|
||||
[type, new_id, role]
|
||||
else
|
||||
[type, id, role]
|
||||
|
|
|
@ -40,6 +40,7 @@ class RequestToken < OauthToken
|
|||
|
||||
def authorize!(user)
|
||||
return false if authorized?
|
||||
|
||||
self.user = user
|
||||
self.authorized_at = Time.now
|
||||
self.verifier = OAuth::Helper.generate_key(20)[0, 20] unless oauth10?
|
||||
|
|
|
@ -214,10 +214,12 @@ class Trace < ActiveRecord::Base
|
|||
|
||||
def update_from_xml_node(pt, create = false)
|
||||
raise OSM::APIBadXMLError.new("trace", pt, "visibility missing") if pt["visibility"].nil?
|
||||
|
||||
self.visibility = pt["visibility"]
|
||||
|
||||
unless create
|
||||
raise OSM::APIBadXMLError.new("trace", pt, "ID is required when updating.") if pt["id"].nil?
|
||||
|
||||
id = pt["id"].to_i
|
||||
# .to_i will return 0 if there is no number that can be parsed.
|
||||
# We want to make sure that there is no id with zero anyway
|
||||
|
@ -232,6 +234,7 @@ class Trace < ActiveRecord::Base
|
|||
|
||||
description = pt.find("description").first
|
||||
raise OSM::APIBadXMLError.new("trace", pt, "description missing") if description.nil?
|
||||
|
||||
self.description = description.content
|
||||
|
||||
self.tags = pt.find("tag").collect do |tag|
|
||||
|
|
|
@ -68,12 +68,15 @@ class Way < ActiveRecord::Base
|
|||
way = Way.new
|
||||
|
||||
raise OSM::APIBadXMLError.new("way", pt, "Version is required when updating") unless create || !pt["version"].nil?
|
||||
|
||||
way.version = pt["version"]
|
||||
raise OSM::APIBadXMLError.new("way", pt, "Changeset id is missing") if pt["changeset"].nil?
|
||||
|
||||
way.changeset_id = pt["changeset"]
|
||||
|
||||
unless create
|
||||
raise OSM::APIBadXMLError.new("way", pt, "ID is required when updating") if pt["id"].nil?
|
||||
|
||||
way.id = pt["id"].to_i
|
||||
# .to_i will return 0 if there is no number that can be parsed.
|
||||
# We want to make sure that there is no id with zero anyway
|
||||
|
@ -92,6 +95,7 @@ class Way < ActiveRecord::Base
|
|||
pt.find("tag").each do |tag|
|
||||
raise OSM::APIBadXMLError.new("way", pt, "tag is missing key") if tag["k"].nil?
|
||||
raise OSM::APIBadXMLError.new("way", pt, "tag is missing value") if tag["v"].nil?
|
||||
|
||||
way.add_tag_keyval(tag["k"], tag["v"])
|
||||
end
|
||||
|
||||
|
@ -194,6 +198,7 @@ class Way < ActiveRecord::Base
|
|||
def create_with_history(user)
|
||||
check_create_consistency(self, user)
|
||||
raise OSM::APIPreconditionFailedError, "Cannot create way: data is invalid." unless preconditions_ok?
|
||||
|
||||
self.version = 0
|
||||
self.visible = true
|
||||
save_with_history!
|
||||
|
@ -252,6 +257,7 @@ class Way < ActiveRecord::Base
|
|||
if node_id < 0
|
||||
new_id = id_map[:node][node_id]
|
||||
raise OSM::APIBadUserInput, "Placeholder node not found for reference #{node_id} in way #{id.nil? ? placeholder_id : id}" if new_id.nil?
|
||||
|
||||
new_id
|
||||
else
|
||||
node_id
|
||||
|
|
|
@ -5,6 +5,7 @@ module I18n
|
|||
super
|
||||
rescue InvalidPluralizationData => ex
|
||||
raise ex unless ex.entry.key?(:other)
|
||||
|
||||
ex.entry[:other]
|
||||
end
|
||||
end
|
||||
|
|
|
@ -52,6 +52,7 @@ module OpenStreetMap
|
|||
def oauth1_verify(request, options = {}, &block)
|
||||
signature = OAuth::Signature.build(request, options, &block)
|
||||
return false unless OauthNonce.remember(signature.request.nonce, signature.request.timestamp)
|
||||
|
||||
value = signature.verify
|
||||
if request.ssl? && !value
|
||||
http_request = request.dup
|
||||
|
|
|
@ -61,6 +61,7 @@ class BoundingBox
|
|||
# check the bbox is sane
|
||||
raise OSM::APIBadBoundingBox, "The minimum longitude must be less than the maximum longitude, but it wasn't" if min_lon > max_lon
|
||||
raise OSM::APIBadBoundingBox, "The minimum latitude must be less than the maximum latitude, but it wasn't" if min_lat > max_lat
|
||||
|
||||
if min_lon < -LON_LIMIT || min_lat < -LAT_LIMIT || max_lon > +LON_LIMIT || max_lat > +LAT_LIMIT
|
||||
raise OSM::APIBadBoundingBox, "The latitudes must be between #{-LAT_LIMIT} and #{LAT_LIMIT}," \
|
||||
" and longitudes between #{-LON_LIMIT} and #{LON_LIMIT}"
|
||||
|
@ -157,6 +158,7 @@ class BoundingBox
|
|||
|
||||
def from_bbox_array(bbox_array)
|
||||
raise OSM::APIBadUserInput, "The parameter bbox is required, and must be of the form min_lon,min_lat,max_lon,max_lat" unless bbox_array
|
||||
|
||||
# Take an array of length 4, create a bounding box with min_lon, min_lat, max_lon and
|
||||
# max_lat within their respective boundaries.
|
||||
min_lon = [[bbox_array[0].to_f, -LON_LIMIT].max, +LON_LIMIT].min
|
||||
|
|
|
@ -316,6 +316,7 @@ module ActionController
|
|||
# same page number).
|
||||
def ==(other)
|
||||
return false if other.nil?
|
||||
|
||||
@paginator == other.paginator &&
|
||||
@number == other.number
|
||||
end
|
||||
|
@ -326,6 +327,7 @@ module ActionController
|
|||
# if the pages do not belong to the same Paginator object.
|
||||
def <=>(other)
|
||||
raise ArgumentError unless @paginator == other.paginator
|
||||
|
||||
@number <=> other.number
|
||||
end
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@ module GeoRecord
|
|||
def in_world?
|
||||
return false if lat < -90 || lat > 90
|
||||
return false if lon < -180 || lon > 180
|
||||
|
||||
true
|
||||
end
|
||||
|
||||
|
|
|
@ -38,6 +38,7 @@ module Potlatch
|
|||
arr = {}
|
||||
while (key = getstring(s))
|
||||
break if key == ""
|
||||
|
||||
arr[key] = getvalue(s)
|
||||
end
|
||||
s.getbyte # skip the 9 'end of object' value
|
||||
|
|
|
@ -4,6 +4,7 @@ module UTF8
|
|||
# using the iconv library, which is in the standard library.
|
||||
def self.valid?(str)
|
||||
return true if str.nil?
|
||||
|
||||
str.valid_encoding?
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,6 +6,7 @@ start = 0
|
|||
User.where("image_use_gravatar AND id >=" + start.to_s).order("id").find_each do |user|
|
||||
p "checked up to id " + user.id.to_s if (user.id % 1000).zero? # just give a rough indication where we are for restarting
|
||||
next if user.image.present?
|
||||
|
||||
hash = Digest::MD5.hexdigest(user.email.downcase)
|
||||
url = "https://www.gravatar.com/avatar/#{hash}?d=404" # without d=404 we will always get an image back
|
||||
response = OSM.http_client.get(URI.parse(url))
|
||||
|
|
Loading…
Add table
Reference in a new issue