wowapi 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +15 -0
- data/README.md +54 -3
- data/lib/wowapi/modules/character.rb +14 -1
- data/lib/wowapi/region.rb +17 -0
- data/lib/wowapi/version.rb +1 -1
- data/lib/wowapi/wowapi.rb +4 -4
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01f7fb2b3b80e6594f57deb3882de162fb879af2
|
4
|
+
data.tar.gz: f0b935e7a633887c89d973ffdbb41c6317a6812a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e03811c8a93a23217b9546371e41146c8bfa5f09954bbf471d50106561c6fde931592764dc82f2bd105181dc606106362bd826c75741352e9f0d2794af6c079a
|
7
|
+
data.tar.gz: e19fd9e9e7998c99840df71cfe2b14e2d5e326b51950f84912991601501869a180f89c1433c4030c8511b34446452c77140d459ad107ab79b30cde35509b2139
|
data/.travis.yml
ADDED
data/README.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# WoWAPI
|
2
|
-
[](https://badge.fury.io/rb/wowapi)
|
2
|
+
[](https://badge.fury.io/rb/wowapi)
|
3
|
+
[](https://travis-ci.org/Marahin/wowapi)
|
4
|
+
[](https://codeclimate.com/github/Marahin/wowapi)
|
5
|
+
[](https://gemnasium.com/github.com/Marahin/wowapi)
|
6
|
+
[](https://hakiri.io/github/Marahin/wowapi/master)
|
7
|
+
[](http://inch-ci.org/github/Marahin/wowapi)
|
3
8
|
|
4
9
|
**EARLY STAGE DEVELOPMENT. HERE BE DRAGONS**
|
5
10
|
However, you are welcome to contribute and/or criticise (and/or) show me the way to handle things.
|
@@ -58,16 +63,60 @@ Every resource is called as a method on `Wowapi` Object.
|
|
58
63
|
| Resource(s) | query fields | | | |
|
59
64
|
|:-----------: |:------------: |:-------------: |:----------: |:--------: |
|
60
65
|
| .guild | :news | :achievements | :challenge | :members |
|
61
|
-
| .character |
|
66
|
+
| .character | :avatar |
|
62
67
|
|
63
68
|
### Examples
|
69
|
+
|
70
|
+
#### Rails
|
71
|
+
* Create initializer called `wowapi.rb` in your Rails app's `config/initializers` directory,
|
72
|
+
* fill it with following:
|
73
|
+
```
|
74
|
+
require 'wowapi'
|
75
|
+
|
76
|
+
## Set region (defaults to :eu)
|
77
|
+
## Wowapi.region = :us
|
78
|
+
|
79
|
+
## Create Api variable usable ANYWHERE in your Rails app
|
80
|
+
::Api = Wowapi.new do |config|
|
81
|
+
config.public_key = 'your-public-apikey'
|
82
|
+
## config.secret_key = 'your-secret-key'
|
83
|
+
end
|
84
|
+
|
85
|
+
## Create your Guild name variable, usually GuildName or GuildNameApi that holds information about your guild.
|
86
|
+
## ::YourGuildName = Api.guild('Realm', 'Guild name', :field1, :field2)
|
87
|
+
::Aspects = Api.guild('Argent Dawn', 'The Aspects', :members, :news)
|
88
|
+
```
|
89
|
+
|
90
|
+
Now, in any controller / view you can do:
|
91
|
+
|
92
|
+
* controllers/pages_controller.rb
|
93
|
+
|
94
|
+
```
|
95
|
+
class PagesController < ApplicationController
|
96
|
+
def index
|
97
|
+
@news = Aspects.news
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
```
|
102
|
+
|
103
|
+
* in views:
|
104
|
+
|
105
|
+
```
|
106
|
+
@news.last(7).each do |news|
|
107
|
+
...
|
108
|
+
end
|
109
|
+
```
|
110
|
+
|
111
|
+
|
112
|
+
#### Plain ruby
|
113
|
+
You can use simple variables. For more advanced usage with global variables and namespaces, see above (Rails usage).
|
64
114
|
```
|
65
115
|
require 'wowapi'
|
66
116
|
|
67
117
|
api = Wowapi.new do |config|
|
68
118
|
config.public_key = 'your-public-apikey'
|
69
119
|
# config.secret_Key = 'optional-secret-key'
|
70
|
-
# config.region = :us # (optional)
|
71
120
|
end
|
72
121
|
|
73
122
|
# returns guild profile
|
@@ -140,6 +189,8 @@ Keep in mind that this is completely optional, and default is **_:eu_**.
|
|
140
189
|
## Contributing
|
141
190
|
I'm a single developer here. I'm working student. This is an introduction.
|
142
191
|
|
192
|
+
### IRC
|
193
|
+
`#wowapi` at Freenode
|
143
194
|
### Bugtracking / I have a question / I have a problem
|
144
195
|
Every problem / feature / bug / anything that concerns you should find place in Issues tab up top.
|
145
196
|
As soon as you get your answer, the issue will also be labeled.
|
@@ -5,7 +5,20 @@ class Wowapi
|
|
5
5
|
# CharacterClass
|
6
6
|
module Character
|
7
7
|
# todo: issue-13
|
8
|
-
class CharacterClass < Wowapi::ResponseData
|
8
|
+
class CharacterClass < Wowapi::ResponseData
|
9
|
+
def initialize(res)
|
10
|
+
super
|
11
|
+
|
12
|
+
if @table
|
13
|
+
@table[:character]['thumbnail'] = "http://render-api-#{Wowapi.region}.worldofwarcraft.com/static-render/#{Wowapi.region}/#{@table[:character]['thumbnail']}"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
## Character avatar image
|
18
|
+
def avatar
|
19
|
+
@table[:character]['thumbnail']
|
20
|
+
end
|
21
|
+
end
|
9
22
|
|
10
23
|
# Retrieve data about particular Character
|
11
24
|
# For a list of fields visit README.md
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class Wowapi
|
2
|
+
class << self
|
3
|
+
# Wowapi.region class variable that holds
|
4
|
+
# customer region (:eu, :us, ...)
|
5
|
+
# DEFAULTS TO :eu
|
6
|
+
attr_accessor :region
|
7
|
+
Wowapi.region ||= :eu
|
8
|
+
end
|
9
|
+
|
10
|
+
def region=(region)
|
11
|
+
Wowapi.region = region if region.is_a?(Symbol)
|
12
|
+
end
|
13
|
+
|
14
|
+
def region
|
15
|
+
Wowapi.region
|
16
|
+
end
|
17
|
+
end
|
data/lib/wowapi/version.rb
CHANGED
data/lib/wowapi/wowapi.rb
CHANGED
@@ -2,18 +2,18 @@ require 'open-uri'
|
|
2
2
|
require 'json'
|
3
3
|
require 'wowapi/core_extensions/object/try'
|
4
4
|
require 'wowapi/fail_silently'
|
5
|
+
require 'wowapi/region'
|
5
6
|
require 'wowapi/exceptions'
|
6
7
|
require 'wowapi/version'
|
7
8
|
require 'wowapi/response_data'
|
8
9
|
require 'wowapi/modules'
|
9
10
|
|
10
11
|
class Wowapi
|
11
|
-
# Instance variables we keep
|
12
|
-
attr_accessor :
|
12
|
+
# Instance variables we keep public_key and secret_key in
|
13
|
+
attr_accessor :public_key, :secret_key
|
13
14
|
|
14
15
|
# Creating an instance of Wowapi class
|
15
16
|
def initialize
|
16
|
-
self.region ||= :eu
|
17
17
|
yield self if block_given?
|
18
18
|
end
|
19
19
|
|
@@ -44,7 +44,7 @@ class Wowapi
|
|
44
44
|
# Returns URL for particular region
|
45
45
|
# or throws an exception if region is nonexistent
|
46
46
|
def base_url
|
47
|
-
case
|
47
|
+
case Wowapi.region
|
48
48
|
when :eu
|
49
49
|
'eu.api.battle.net/wow/'
|
50
50
|
when :us
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wowapi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Matusz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pry
|
@@ -33,6 +33,7 @@ extensions: []
|
|
33
33
|
extra_rdoc_files: []
|
34
34
|
files:
|
35
35
|
- ".gitignore"
|
36
|
+
- ".travis.yml"
|
36
37
|
- Gemfile
|
37
38
|
- LICENSE.txt
|
38
39
|
- README.md
|
@@ -47,6 +48,7 @@ files:
|
|
47
48
|
- lib/wowapi/modules.rb
|
48
49
|
- lib/wowapi/modules/character.rb
|
49
50
|
- lib/wowapi/modules/guild.rb
|
51
|
+
- lib/wowapi/region.rb
|
50
52
|
- lib/wowapi/response_data.rb
|
51
53
|
- lib/wowapi/version.rb
|
52
54
|
- lib/wowapi/wowapi.rb
|