contacts 1.0.0 → 1.0.1
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.
- data/doc/classes/Contacts.html +195 -0
- data/doc/classes/Contacts.src/M000001.html +22 -0
- data/doc/classes/Contacts.src/M000002.html +24 -0
- data/doc/classes/Contacts/AuthenticationError.html +113 -0
- data/doc/classes/Contacts/Base.html +214 -0
- data/doc/classes/Contacts/Base.src/M000005.html +20 -0
- data/doc/classes/Contacts/Base.src/M000006.html +19 -0
- data/doc/classes/Contacts/Base.src/M000007.html +18 -0
- data/doc/classes/Contacts/Base.src/M000008.html +35 -0
- data/doc/classes/Contacts/Base.src/M000009.html +29 -0
- data/doc/classes/Contacts/Base.src/M000010.html +18 -0
- data/doc/classes/Contacts/ConnectionError.html +113 -0
- data/doc/classes/Contacts/ContactsError.html +111 -0
- data/doc/classes/Contacts/Gmail.html +172 -0
- data/doc/classes/Contacts/Gmail.src/M000004.html +60 -0
- data/doc/classes/Contacts/Hotmail.html +167 -0
- data/doc/classes/Contacts/Hotmail.src/M000011.html +63 -0
- data/doc/classes/Contacts/TypeNotFound.html +113 -0
- data/doc/classes/Contacts/Yahoo.html +167 -0
- data/doc/classes/Contacts/Yahoo.src/M000003.html +41 -0
- data/doc/created.rid +1 -0
- data/doc/files/README.html +168 -0
- data/doc/files/lib/contacts/base_rb.html +111 -0
- data/doc/files/lib/contacts/gmail_rb.html +108 -0
- data/doc/files/lib/contacts/hotmail_rb.html +101 -0
- data/doc/files/lib/contacts/yahoo_rb.html +108 -0
- data/doc/files/lib/contacts_rb.html +112 -0
- data/doc/fr_class_index.html +35 -0
- data/doc/fr_file_index.html +32 -0
- data/doc/fr_method_index.html +37 -0
- data/doc/index.html +24 -0
- data/doc/rdoc-style.css +208 -0
- data/lib/contacts/base.rb +1 -1
- data/lib/contacts/gmail.rb +1 -1
- data/lib/contacts/hotmail.rb +1 -1
- data/lib/contacts/yahoo.rb +8 -15
- metadata +44 -2
data/lib/contacts/base.rb
CHANGED
data/lib/contacts/gmail.rb
CHANGED
@@ -70,7 +70,7 @@ class Contacts
|
|
70
70
|
|
71
71
|
@contacts = parsed_data.select{|d| d[0] == "cl"}.inject([]) do |a,d|
|
72
72
|
a.concat(d.inject([]) do |ar,dr|
|
73
|
-
ar.concat(dr.is_a?(Array) ? [[dr[3],dr[4]]] : [])
|
73
|
+
ar.concat(dr.is_a?(Array) && dr[4] && !dr[4].empty? ? [[dr[3],dr[4]]] : [])
|
74
74
|
end)
|
75
75
|
end
|
76
76
|
end
|
data/lib/contacts/hotmail.rb
CHANGED
@@ -67,7 +67,7 @@ class Contacts
|
|
67
67
|
@contacts = chunks.map do |chunk|
|
68
68
|
name = chunk.split('return false;">')[1].split('</a>')[0] rescue nil
|
69
69
|
email = chunk.split('return false;">')[2].split('</a>')[0] rescue nil
|
70
|
-
[name, email] if email
|
70
|
+
[name, email] if email && email != "more"
|
71
71
|
end.compact
|
72
72
|
end
|
73
73
|
|
data/lib/contacts/yahoo.rb
CHANGED
@@ -1,8 +1,10 @@
|
|
1
|
+
require 'csv'
|
2
|
+
|
1
3
|
class Contacts
|
2
4
|
class Yahoo < Base
|
3
5
|
URL = "http://mail.yahoo.com/"
|
4
6
|
LOGIN_URL = "https://login.yahoo.com/config/login"
|
5
|
-
CONTACT_LIST_URL = "http://address.yahoo.com/"
|
7
|
+
CONTACT_LIST_URL = "http://address.yahoo.com/index.php?VPC=import_export&A=B&submit[action_export_yahoo]=Export%20Now"
|
6
8
|
PROTOCOL_ERROR = "Yahoo has changed its protocols, please upgrade this library first. If that does not work, contact lucas@rufy.com with this error"
|
7
9
|
|
8
10
|
def real_connect
|
@@ -35,20 +37,11 @@ class Contacts
|
|
35
37
|
private
|
36
38
|
|
37
39
|
def parse(data)
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
processed_data[i/2] ||= []
|
44
|
-
if i%2 == 0 # then it is a name
|
45
|
-
processed_data[i/2] << chunk.split(/[^,]\n/).grep(/contactname/).first.gsub(/(<|^).*?(>|$)/,'').strip
|
46
|
-
else # it is an email
|
47
|
-
processed_data[i/2] << chunk.split.grep(/compose.mail.yahoo.com/).first.gsub(/(<|^).*?(>|$)/,'').strip rescue next
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
@contacts = processed_data.values.delete_if{|data|data[1].nil?}
|
40
|
+
data = CSV.parse(data)
|
41
|
+
col_names = data.shift
|
42
|
+
@contacts = data.map do |person|
|
43
|
+
[[person[0], person[1], person[2]].delete_if{|i|i.empty?}.join(" "), person[4]] unless person[4].empty?
|
44
|
+
end.compact
|
52
45
|
end
|
53
46
|
|
54
47
|
end
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
|
|
3
3
|
specification_version: 1
|
4
4
|
name: contacts
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 1.0.
|
7
|
-
date: 2006-12-
|
6
|
+
version: 1.0.1
|
7
|
+
date: 2006-12-07 00:00:00 -08:00
|
8
8
|
summary: Ridiculously easy contact list information from various providers including Yahoo, Gmail, and Hotmail
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -37,6 +37,48 @@ files:
|
|
37
37
|
- LICENSE
|
38
38
|
- Rakefile
|
39
39
|
- README
|
40
|
+
- doc/classes
|
41
|
+
- doc/created.rid
|
42
|
+
- doc/files
|
43
|
+
- doc/fr_class_index.html
|
44
|
+
- doc/fr_file_index.html
|
45
|
+
- doc/fr_method_index.html
|
46
|
+
- doc/index.html
|
47
|
+
- doc/rdoc-style.css
|
48
|
+
- doc/classes/Contacts
|
49
|
+
- doc/classes/Contacts.html
|
50
|
+
- doc/classes/Contacts.src
|
51
|
+
- doc/classes/Contacts/AuthenticationError.html
|
52
|
+
- doc/classes/Contacts/Base.html
|
53
|
+
- doc/classes/Contacts/Base.src
|
54
|
+
- doc/classes/Contacts/ConnectionError.html
|
55
|
+
- doc/classes/Contacts/ContactsError.html
|
56
|
+
- doc/classes/Contacts/Gmail.html
|
57
|
+
- doc/classes/Contacts/Gmail.src
|
58
|
+
- doc/classes/Contacts/Hotmail.html
|
59
|
+
- doc/classes/Contacts/Hotmail.src
|
60
|
+
- doc/classes/Contacts/TypeNotFound.html
|
61
|
+
- doc/classes/Contacts/Yahoo.html
|
62
|
+
- doc/classes/Contacts/Yahoo.src
|
63
|
+
- doc/classes/Contacts/Base.src/M000005.html
|
64
|
+
- doc/classes/Contacts/Base.src/M000006.html
|
65
|
+
- doc/classes/Contacts/Base.src/M000007.html
|
66
|
+
- doc/classes/Contacts/Base.src/M000008.html
|
67
|
+
- doc/classes/Contacts/Base.src/M000009.html
|
68
|
+
- doc/classes/Contacts/Base.src/M000010.html
|
69
|
+
- doc/classes/Contacts/Gmail.src/M000004.html
|
70
|
+
- doc/classes/Contacts/Hotmail.src/M000011.html
|
71
|
+
- doc/classes/Contacts/Yahoo.src/M000003.html
|
72
|
+
- doc/classes/Contacts.src/M000001.html
|
73
|
+
- doc/classes/Contacts.src/M000002.html
|
74
|
+
- doc/files/lib
|
75
|
+
- doc/files/README.html
|
76
|
+
- doc/files/lib/contacts
|
77
|
+
- doc/files/lib/contacts_rb.html
|
78
|
+
- doc/files/lib/contacts/base_rb.html
|
79
|
+
- doc/files/lib/contacts/gmail_rb.html
|
80
|
+
- doc/files/lib/contacts/hotmail_rb.html
|
81
|
+
- doc/files/lib/contacts/yahoo_rb.html
|
40
82
|
- examples/grab_contacts.rb
|
41
83
|
test_files: []
|
42
84
|
|