added optional region to every call

This commit is contained in:
danijoo
2013-12-15 01:05:23 +01:00
parent 25a4a6148e
commit 6600841e8a
7 changed files with 36 additions and 22 deletions

View File

@@ -11,7 +11,7 @@ class Sightstone
attr_accessor :region, :api_key
attr_accessor :summoner, :champion, :game, :league, :stats, :team
def initialize(api_key, region)
def initialize(api_key, region='euw')
@api_key = api_key
@region = region

View File

@@ -7,8 +7,10 @@ class ChampionModule < SightstoneBaseModule
@sightstone = sightstone
end
def champions(free_to_play=false)
uri = "https://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/champion"
def champions(, optional={})
region = optional[:region] || @sightstone.region
free_to_play = optional[:free_to_play]
uri = "https://prod.api.pvp.net/api/lol/#{region}/v1.1/champion"
response = _get_api_response(uri, {'freeToPlay' => free_to_play})
puts response

View File

@@ -8,13 +8,14 @@ class GameModule < SightstoneBaseModule
@sightstone = sightstone
end
def recent(summoner)
def recent(summoner, optional={})
region = optional[:region] || @sightstone.region
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "https://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/game/by-summoner/#{id}/recent"
uri = "https://prod.api.pvp.net/api/lol/#{region}/v1.1/game/by-summoner/#{id}/recent"
response = _get_api_response(uri)
_parse_response(response) { |resp|

View File

@@ -7,14 +7,15 @@ class LeagueModule < SightstoneBaseModule
@sightstone = sightstone
end
def league(summoner)
def league(summoner, optional={})
region = optional[:region] || @sightstone.region
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "https://prod.api.pvp.net/api/#{@sightstone.region}/v2.1/league/by-summoner/#{id}"
uri = "https://prod.api.pvp.net/api/#{region}/v2.1/league/by-summoner/#{id}"
response = _get_api_response(uri)
_parse_response(response) { |resp|
data = JSON.parse(resp)

View File

@@ -8,13 +8,16 @@ class StatsModule < SightstoneBaseModule
@sightstone = sightstone
end
def summary(summoner, season=nil)
def summary(summoner, , optional={})
region = optional[:region] || @sightstone.region)
season = optional[:season]
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "https://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/stats/by-summoner/#{id}/summary"
uri = "https://prod.api.pvp.net/api/lol/#{region}/v1.1/stats/by-summoner/#{id}/summary"
response = if season.nil?
_get_api_response(uri)
else
@@ -28,13 +31,15 @@ class StatsModule < SightstoneBaseModule
end
def ranked(summoner, season=nil)
def ranked(summoner, optional={})
region = optional[:region] || @sightstone.region
season = optional[:season]
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "https://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/stats/by-summoner/#{id}/ranked"
uri = "https://prod.api.pvp.net/api/lol/#{region}/v1.1/stats/by-summoner/#{id}/ranked"
response = if season.nil?
_get_api_response(uri)
else

View File

@@ -9,11 +9,12 @@ class SummonerModule < SightstoneBaseModule
@sightstone = sightstone
end
def summoner(name_or_id)
def summoner(name_or_id, optional={})
region = optional[:region] || @sightstone.region
uri = if name_or_id.is_a? Integer
"https://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/summoner/#{name_or_id}"
"https://prod.api.pvp.net/api/lol/#{region}/v1.1/summoner/#{name_or_id}"
else
"https://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/summoner/by-name/#{URI::encode(name_or_id)}"
"https://prod.api.pvp.net/api/lol/#{region}/v1.1/summoner/by-name/#{URI::encode(name_or_id)}"
end
response = _get_api_response(uri)
@@ -24,9 +25,10 @@ class SummonerModule < SightstoneBaseModule
end
def names(ids)
def names(ids, optional={})
region = optional[:region] || @sightstone.region
ids = ids.join(',')
uri = "http://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/summoner/#{ids}/name"
uri = "http://prod.api.pvp.net/api/lol/#{region}/v1.1/summoner/#{ids}/name"
response = _get_api_response(uri)
_parse_response(response) { |resp|
data = JSON.parse(resp)
@@ -34,13 +36,14 @@ class SummonerModule < SightstoneBaseModule
}
end
def runes(summoner)
def runes(summoner, optional={})
region = optional[:region] || @sightstone.region
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "http://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/summoner/#{id}/runes"
uri = "http://prod.api.pvp.net/api/lol/#{region}/v1.1/summoner/#{id}/runes"
response = _get_api_response(uri)
_parse_response(response) { |resp|
data = JSON.parse(resp)
@@ -48,13 +51,14 @@ class SummonerModule < SightstoneBaseModule
}
end
def masteries(summoner)
def masteries(summoner, optional={})
region = optional[:region] || @sightstone.region
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "http://prod.api.pvp.net/api/lol/#{@sightstone.region}/v1.1/summoner/#{id}/masteries"
uri = "http://prod.api.pvp.net/api/lol/#{region}/v1.1/summoner/#{id}/masteries"
response = _get_api_response(uri)
_parse_response(response) { |resp|
data = JSON.parse(resp)

View File

@@ -7,14 +7,15 @@ class TeamModule < SightstoneBaseModule
@sightstone = sightstone
end
def teams(summoner)
def teams(summoner, optional={})
region = optional[:region] || @sightstone.region
id = if summoner.is_a? Summoner
summoner.id
else
summoner
end
uri = "https://prod.api.pvp.net/api/#{@sightstone.region}/v2.1/team/by-summoner/#{id}"
uri = "https://prod.api.pvp.net/api/#{region}/v2.1/team/by-summoner/#{id}"
response = _get_api_response(uri)
_parse_response(response) { |resp|