Class: WikiFari::Page

Inherits:
Object
  • Object
show all
Defined in:
lib/wikifari/page.rb

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ Page

Returns a new instance of Page.



3
4
5
6
# File 'lib/wikifari/page.rb', line 3

def initialize(data)
  @data = JSON.parse data
  @raw  = data
end

Instance Method Details

#contentObject



8
9
10
# File 'lib/wikifari/page.rb', line 8

def content
  self.page["revisions"].first["*"] if self.page["revisions"]
end

#idObject



12
13
14
# File 'lib/wikifari/page.rb', line 12

def id
  self.page["pageid"].to_s if self.page["pageid"]
end

#pageObject



16
17
18
# File 'lib/wikifari/page.rb', line 16

def page
  @data["query"]["pages"].values.first
end

#rawObject



20
21
22
# File 'lib/wikifari/page.rb', line 20

def raw
  @raw
end

#redirectObject



28
29
30
# File 'lib/wikifari/page.rb', line 28

def redirect
  self.content.match(/\#redirect\s*\[\[(.*?)\]\]/i)[1]
end

#redirect?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/wikifari/page.rb', line 24

def redirect?
  self.content && self.content.match(/\#redirect\s*\[\[(.*?)\]\]/i)
end

#titleObject



32
33
34
# File 'lib/wikifari/page.rb', line 32

def title
  self.page["title"] if self.page["title"]
end