cinch-urbandictionary 0.10.0 → 0.10.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cinch-urbandictionary"
3
- s.version = "0.10.0"
3
+ s.version = "0.10.1"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.authors = ["Lee Jarvis"]
6
6
  s.email = ["lee@jarvis.co"]
@@ -11,6 +11,5 @@ Gem::Specification.new do |s|
11
11
  s.files = `git ls-files`.split("\n")
12
12
  s.require_paths = ["lib"]
13
13
 
14
- s.add_dependency 'cinch', '~> 2.0'
15
- s.add_dependency 'nokogiri', '>= 1.4.4'
14
+ s.add_dependency(%q<cinch>, ["~> 2.0"])
16
15
  end
@@ -1,24 +1,31 @@
1
1
  require 'cinch'
2
+ require 'cgi'
3
+ require 'json'
2
4
  require 'open-uri'
3
- require 'nokogiri'
4
5
 
5
6
  module Cinch::Plugins
6
7
  class UrbanDictionary
7
8
  include Cinch::Plugin
8
9
 
9
- match /urban (.*)/
10
-
10
+ match(/urban (.*)/)
11
11
  def execute(m, query)
12
12
  m.reply search(query)
13
13
  end
14
14
 
15
15
  private
16
16
  def search(query)
17
- url = URI.encode "http://www.urbandictionary.com/define.php?term=#{query}"
18
- Nokogiri.HTML(open url).at_css('.definition').text.strip
17
+ uri = "http://api.urbandictionary.com/v0/define?term=%s" % [CGI.escape(query)]
18
+ open(uri) do |f|
19
+ obj = JSON.parse(f.read)
20
+ if obj['list'].empty?
21
+ "No result"
22
+ else
23
+ obj['list'][0]['definition'].gsub(/(\r\n)+/, ' ')
24
+ end
25
+ end
19
26
  rescue => e
20
- e.message
27
+ exception(e)
28
+ "An exception occured"
21
29
  end
22
-
23
30
  end
24
- end
31
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cinch-urbandictionary
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.10.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-26 00:00:00.000000000 Z
12
+ date: 2014-02-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cinch
16
- requirement: &70343929137320 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,18 +21,12 @@ dependencies:
21
21
  version: '2.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70343929137320
25
- - !ruby/object:Gem::Dependency
26
- name: nokogiri
27
- requirement: &70343929136840 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
28
25
  none: false
29
26
  requirements:
30
- - - ! '>='
27
+ - - ~>
31
28
  - !ruby/object:Gem::Version
32
- version: 1.4.4
33
- type: :runtime
34
- prerelease: false
35
- version_requirements: *70343929136840
29
+ version: '2.0'
36
30
  description: A Cinch plugin for fetching the top result of an Urban Dictionary query
37
31
  email:
38
32
  - lee@jarvis.co
@@ -64,7 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
64
58
  version: '0'
65
59
  requirements: []
66
60
  rubyforge_project:
67
- rubygems_version: 1.8.11
61
+ rubygems_version: 1.8.23
68
62
  signing_key:
69
63
  specification_version: 3
70
64
  summary: A Cinch plugin for fetching the top result of an Urban Dictionary query