cardmagic-contacts 1.0.13 → 1.0.14

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,14 @@
1
- require "json/add/rails"
1
+ begin
2
+ # If the json gem is available, use it
3
+ require "json/add/rails"
4
+ rescue MissingSourceFile
5
+ # Otherwise wrap the ActiveSupport JSON implementation for our simple use case
6
+ class JSON
7
+ def self.parse(i)
8
+ ActiveSupport::JSON.decode(i)
9
+ end
10
+ end
11
+ end
2
12
 
3
13
  class Contacts
4
14
  class Gmail < Base
@@ -28,9 +38,11 @@ class Contacts
28
38
  data, resp, cookies, forward, old_url = post(LOGIN_URL, postdata, cookie, LOGIN_REFERER_URL) + [LOGIN_URL]
29
39
 
30
40
  cookies = remove_cookie("GMAIL_LOGIN", cookies)
31
-
41
+
32
42
  if data.index("Username and password do not match")
33
43
  raise AuthenticationError, "Username and password do not match"
44
+ elsif data.index("The username or password you entered is incorrect")
45
+ raise AuthenticationError, "Username and password do not match"
34
46
  elsif data.index("Required field must not be blank")
35
47
  raise AuthenticationError, "Login and password must not be blank"
36
48
  elsif data.index("errormsg_0_logincaptcha")
@@ -34,8 +34,8 @@ class Contacts
34
34
  elsif code == '200'
35
35
  @contacts = []
36
36
  doc.elements.each('//contact') do |cont|
37
- name = cont.elements['fullName'].text #rescue nil
38
- email = cont.elements['email1'].text #rescue nil
37
+ name = cont.elements['fullName'].nil? ? cont.elements['displayName'].text : cont.elements['fullName'].text
38
+ email = cont.elements['email1'].text
39
39
  @contacts << [name, email]
40
40
  end.compact
41
41
  @contacts
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cardmagic-contacts
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.13
4
+ version: 1.0.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lucas Carlson
@@ -9,17 +9,18 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-07-10 00:00:00 -07:00
12
+ date: 2009-05-06 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: json
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
20
- - - ">"
21
+ - - ">="
21
22
  - !ruby/object:Gem::Version
22
- version: 0.0.0
23
+ version: 1.1.1
23
24
  version:
24
25
  description: A universal interface to grab contact list information from various providers including Yahoo, Gmail, Hotmail, and Plaxo.
25
26
  email: lucas@rufy.com