ffcrm_cloudfuji 0.1.1 → 0.1.3

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/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  pkg/
2
2
  *.gem
3
+ Gemfile.lock
@@ -12,7 +12,6 @@ Gem::Specification.new do |s|
12
12
  s.files = `git ls-files`.split("\n")
13
13
  s.version = FatFreeCRM::Cloudfuji::VERSION
14
14
 
15
- s.add_dependency 'fat_free_crm', '>= 0.11.3'
16
15
  s.add_dependency 'cloudfuji'
17
16
  s.add_dependency 'authlogic_cloudfuji', '~> 0.9'
18
17
 
@@ -1,6 +1,3 @@
1
- require 'cloudfuji'
2
- require 'authlogic_cloudfuji'
3
-
4
1
  module FatFreeCRM
5
2
  module Cloudfuji
6
3
  class << self
@@ -1,23 +1,25 @@
1
- module Cloudfuji
2
- module EventObservers
3
- class AppObserver < Cloudfuji::EventObserver
4
- def app_claimed
5
- puts "Updating #{User.first.inspect} with incoming data #{params.inspect}"
6
- puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
7
- puts "Setting username to: #{params.try(:[], 'ido_id')}"
1
+ module FatFreeCRM
2
+ module Cloudfuji
3
+ module EventObservers
4
+ class AppObserver < ::Cloudfuji::EventObserver
5
+ def app_claimed
6
+ puts "Updating #{User.first.inspect} with incoming data #{params.inspect}"
7
+ puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
8
+ puts "Setting username to: #{params.try(:[], 'ido_id')}"
8
9
 
9
- user = User.first
10
- if user
11
- data = params['data']
10
+ user = User.first
11
+ if user
12
+ data = params['data']
12
13
 
13
- user.email = data['email']
14
- user.first_name = user.email.split('@').first
15
- user.last_name = user.email.split('@').last
16
- user.username = data['email']
17
- user.deleted_at = nil
18
- user.send("#{::Authlogic::Cas.cas_username_column}=".to_sym, params['data'].try(:[], 'ido_id'))
19
- puts user.inspect
20
- user.save!
14
+ user.email = data['email']
15
+ user.first_name = user.email.split('@').first
16
+ user.last_name = user.email.split('@').last
17
+ user.username = data['email']
18
+ user.deleted_at = nil
19
+ user.send("#{::Authlogic::Cas.cas_username_column}=".to_sym, params['data'].try(:[], 'ido_id'))
20
+ puts user.inspect
21
+ user.save!
22
+ end
21
23
  end
22
24
  end
23
25
  end
@@ -1,53 +1,55 @@
1
- module Cloudfuji
2
- module EventObservers
3
- class CustomerObserver < Cloudfuji::EventObserver
4
- # "customer_created"
5
- # :account_balance => 0
6
- # :object => "customer"
7
- # :email => "s+cfdemo@cloudfuji.com"
8
- # :created => 1332269951
9
- # :id => "cus_cpkg4h0KfLD3lp"
10
- # :livemode => true
11
- # :human => "Customer CREATED (cus_cpkg4h0KfLD3lp), s+cfdemo@cloudfuji.com"}
12
- def customer_created
13
- note_customer_activity("#{data['email']} created as a customer with external id #{data['id']}") if data['livemode']
14
- end
15
-
16
- def customer_signed_up
17
- note_customer_activity("#{data['first_name']} #{data['last_name']} (#{data['email']}) signed up as a customer")
18
- end
1
+ module FatFreeCRM
2
+ module Cloudfuji
3
+ module EventObservers
4
+ class CustomerObserver < ::Cloudfuji::EventObserver
5
+ # "customer_created"
6
+ # :account_balance => 0
7
+ # :object => "customer"
8
+ # :email => "s+cfdemo@cloudfuji.com"
9
+ # :created => 1332269951
10
+ # :id => "cus_cpkg4h0KfLD3lp"
11
+ # :livemode => true
12
+ # :human => "Customer CREATED (cus_cpkg4h0KfLD3lp), s+cfdemo@cloudfuji.com"}
13
+ def customer_created
14
+ note_customer_activity("#{data['email']} created as a customer with external id #{data['id']}") if data['livemode']
15
+ end
19
16
 
20
- private
17
+ def customer_signed_up
18
+ note_customer_activity("#{data['first_name']} #{data['last_name']} (#{data['email']}) signed up as a customer")
19
+ end
21
20
 
22
- def note_customer_activity(message)
23
- subject = find_or_create_activity_subject!
24
- puts "Found subject: #{subject.inspect}"
21
+ private
25
22
 
26
- subject.versions.create! :event => message
27
- end
23
+ def note_customer_activity(message)
24
+ subject = find_or_create_activity_subject!
25
+ puts "Found subject: #{subject.inspect}"
28
26
 
29
- def data
30
- params['data']
31
- end
27
+ subject.versions.create! :event => message
28
+ end
32
29
 
33
- def find_or_create_activity_subject!
34
- lookups = [Account, Lead, Contact]
35
- lookups.each do |model|
36
- puts "#{model}.find_by_email( #{data['email']} )"
37
- result = model.find_by_email(data['email'])
38
- return result if result
30
+ def data
31
+ params['data']
39
32
  end
40
33
 
41
- lead = Lead.find_by_email(data['email'])
42
- lead ||= Lead.new
34
+ def find_or_create_activity_subject!
35
+ lookups = [Account, Lead, Contact]
36
+ lookups.each do |model|
37
+ puts "#{model}.find_by_email( #{data['email']} )"
38
+ result = model.find_by_email(data['email'])
39
+ return result if result
40
+ end
43
41
 
44
- lead.email = data['email']
45
- lead.first_name ||= data['first_name'] || recipient.split("@").first if lead.first_name.blank?
46
- lead.last_name ||= data['last_name'] || recipient.split("@").last if lead.last_name.blank?
42
+ lead = Lead.find_by_email(data['email'])
43
+ lead ||= Lead.new
47
44
 
48
- lead.save
45
+ lead.email = data['email']
46
+ lead.first_name ||= data['first_name'] || recipient.split("@").first if lead.first_name.blank?
47
+ lead.last_name ||= data['last_name'] || recipient.split("@").last if lead.last_name.blank?
49
48
 
50
- lead
49
+ lead.save
50
+
51
+ lead
52
+ end
51
53
  end
52
54
  end
53
55
  end
@@ -1,123 +1,125 @@
1
- module Cloudfuji
2
- module EventObservers
3
- class EmailObserver < Cloudfuji::EventObserver
4
- # NOTE: It'd be nice to have a before_filter.
5
-
6
- # "email_delivered"
7
- # :message_headers => "[[\"Received\", \"by luna.mailgun.net with SMTP mgrt 7313261; Tue, 20 Mar 2012 19:00:58 +0000\"], [\"Received\", \"from localhost.localdomain (ec2-23-20-14-40.compute-1.amazonaws.com [23.20.14.40]) by mxa.mailgun.org with ESMTP id 4f68d3e9.4ddcdf0-luna; Tue, 20 Mar 2012 19:00:57 -0000 (UTC)\"], [\"Date\", \"Tue, 20 Mar 2012 19:00:57 +0000\"], [\"From\", \"Sean Grove <sean@cloudfuji.com>\"], [\"Reply-To\", \"Cloudfuji Team <support@cloudfuji.com>\"], [\"Message-Id\", \"<4f68d3e9ad834_3c29377ea432615@ip-10-190-150-17.mail>\"], [\"X-Mailgun-Campaign-Id\", \"cloudfuji_buddies\"], [\"Repy-To\", \"support@cloudfuji.com\"], [\"To\", \"s+cfdemo@cloudfuji.com\"], [\"Subject\", \"Cloudfuji Beta: Thank you for your early support. Here's a gift for you.\"], [\"List-Unsubscribe\", \"<mailto:u+na6wcn3gmqzdszbsmrrdam3ghfstkzrxgbstgn3fgvtdgzjumvrgmyzgmm6tqnlkgetheplteuzeey3gmrsw23zfgqyge5ltnbus4zdpez2d2jjsietgipjrmi4a@email.cloudfuji.com>\"], [\"X-Mailgun-Sid\", \"WyI2NWQ4MSIsICJzK2NmZGVtb0BidXNoaS5kbyIsICIxYjgiXQ==\"], [\"Sender\", \"sean=cloudfuji.com@cloudfuji.com\"]]"
8
- # :message_id =>"<4f68d3e9ad834_3c29377ea432615@ip-10-190-150-17.mail>"
9
- # :recipient => "s+cfdemo@cloudfuji.com"
10
- # :domain => "cloudfuji.com"
11
- # :custom_variables => nil
12
- # :human =>"Mail to s+cfdemo@cloudfuji.com successfully delievered."}}
13
- def email_delivered
14
- message = ""
15
- message += "Email delivered to #{recipient}"
16
- message += " in email campaign '#{campaign.titleize}'" if campaign
17
-
18
- note_email_activity( message.strip )
19
- end
20
-
21
- # "email_opened"
22
- # :recipient=>"s+cfdemo@cloudfuji.com"
23
- # :domain=>"cloudfuji.com"
24
- # :campaign_id=>"cloudfuji_buddies"
25
- # :campaign_name=>"Cloudfuji Buddies"
26
- # :tag=>nil
27
- # :mailing_list=>nil
28
- # :custom_variables=>nil
29
- def email_opened
30
- message = ""
31
- message += "Email opened by #{recipient}"
32
- message += " in email campaign '#{campaign.titleize}" if campaign
33
-
34
- note_email_activity( message.strip )
35
- end
1
+ module FatFreeCRM
2
+ module Cloudfuji
3
+ module EventObservers
4
+ class EmailObserver < ::Cloudfuji::EventObserver
5
+ # NOTE: It'd be nice to have a before_filter.
6
+
7
+ # "email_delivered"
8
+ # :message_headers => "[[\"Received\", \"by luna.mailgun.net with SMTP mgrt 7313261; Tue, 20 Mar 2012 19:00:58 +0000\"], [\"Received\", \"from localhost.localdomain (ec2-23-20-14-40.compute-1.amazonaws.com [23.20.14.40]) by mxa.mailgun.org with ESMTP id 4f68d3e9.4ddcdf0-luna; Tue, 20 Mar 2012 19:00:57 -0000 (UTC)\"], [\"Date\", \"Tue, 20 Mar 2012 19:00:57 +0000\"], [\"From\", \"Sean Grove <sean@cloudfuji.com>\"], [\"Reply-To\", \"Cloudfuji Team <support@cloudfuji.com>\"], [\"Message-Id\", \"<4f68d3e9ad834_3c29377ea432615@ip-10-190-150-17.mail>\"], [\"X-Mailgun-Campaign-Id\", \"cloudfuji_buddies\"], [\"Repy-To\", \"support@cloudfuji.com\"], [\"To\", \"s+cfdemo@cloudfuji.com\"], [\"Subject\", \"Cloudfuji Beta: Thank you for your early support. Here's a gift for you.\"], [\"List-Unsubscribe\", \"<mailto:u+na6wcn3gmqzdszbsmrrdam3ghfstkzrxgbstgn3fgvtdgzjumvrgmyzgmm6tqnlkgetheplteuzeey3gmrsw23zfgqyge5ltnbus4zdpez2d2jjsietgipjrmi4a@email.cloudfuji.com>\"], [\"X-Mailgun-Sid\", \"WyI2NWQ4MSIsICJzK2NmZGVtb0BidXNoaS5kbyIsICIxYjgiXQ==\"], [\"Sender\", \"sean=cloudfuji.com@cloudfuji.com\"]]"
9
+ # :message_id =>"<4f68d3e9ad834_3c29377ea432615@ip-10-190-150-17.mail>"
10
+ # :recipient => "s+cfdemo@cloudfuji.com"
11
+ # :domain => "cloudfuji.com"
12
+ # :custom_variables => nil
13
+ # :human =>"Mail to s+cfdemo@cloudfuji.com successfully delievered."}}
14
+ def email_delivered
15
+ message = ""
16
+ message += "Email delivered to #{recipient}"
17
+ message += " in email campaign '#{campaign.titleize}'" if campaign
18
+
19
+ note_email_activity( message.strip )
20
+ end
36
21
 
37
- # :event=>"clicked"
38
- # :recipient=>"s+cfdemo@cloudfuji.com"
39
- # :domain=>"cloudfuji.com"
40
- # :campaign_id=>"cloudfuji_buddies"
41
- # :campaign_name=>"Cloudfuji Buddies"
42
- # :tag=>nil
43
- # :mailing_list=>nil
44
- # :custom_variables=>nil
45
- # :url=>"https://cloudfuji.com/cas/invite/?invitation_token=8hswc7kqhPys6FsUJ1Nm&service=https://cloudfuji.com/users/service&redirect=https://cloudfuji.com/apps/new?app=fat_free_crm&src=icon"
46
- # :human=>"s+cfdemo@cloudfuji.com clicked on link in Cloudfuji Buddies to https://cloudfuji.com/cas/invite/?invitation_token=8hswc7kqhPys6FsUJ1Nm&service=https://cloudfuji.com/users/service&redirect=https://cloudfuji.com/apps/new?app=fat_free_crm&src=icon"}
47
- def email_clicked
48
- message = "#{recipient} clicked #{data['url']}"
49
- message += "in email campaign '#{campaign.titleize}" if campaign
50
-
51
- note_email_activity(message)
52
- end
22
+ # "email_opened"
23
+ # :recipient=>"s+cfdemo@cloudfuji.com"
24
+ # :domain=>"cloudfuji.com"
25
+ # :campaign_id=>"cloudfuji_buddies"
26
+ # :campaign_name=>"Cloudfuji Buddies"
27
+ # :tag=>nil
28
+ # :mailing_list=>nil
29
+ # :custom_variables=>nil
30
+ def email_opened
31
+ message = ""
32
+ message += "Email opened by #{recipient}"
33
+ message += " in email campaign '#{campaign.titleize}'" if campaign
34
+
35
+ note_email_activity( message.strip )
36
+ end
53
37
 
38
+ # :event=>"clicked"
39
+ # :recipient=>"s+cfdemo@cloudfuji.com"
40
+ # :domain=>"cloudfuji.com"
41
+ # :campaign_id=>"cloudfuji_buddies"
42
+ # :campaign_name=>"Cloudfuji Buddies"
43
+ # :tag=>nil
44
+ # :mailing_list=>nil
45
+ # :custom_variables=>nil
46
+ # :url=>"https://cloudfuji.com/cas/invite/?invitation_token=8hswc7kqhPys6FsUJ1Nm&service=https://cloudfuji.com/users/service&redirect=https://cloudfuji.com/apps/new?app=fat_free_crm&src=icon"
47
+ # :human=>"s+cfdemo@cloudfuji.com clicked on link in Cloudfuji Buddies to https://cloudfuji.com/cas/invite/?invitation_token=8hswc7kqhPys6FsUJ1Nm&service=https://cloudfuji.com/users/service&redirect=https://cloudfuji.com/apps/new?app=fat_free_crm&src=icon"}
48
+ def email_clicked
49
+ message = "#{recipient} clicked #{data['url']}"
50
+ message += "in email campaign '#{campaign.titleize}'" if campaign
51
+
52
+ note_email_activity(message)
53
+ end
54
54
 
55
- def email_subscribed
56
- note_email_activity("#{recipient} subscribed to a mailing list")
57
- end
58
55
 
59
- private
56
+ def email_subscribed
57
+ note_email_activity("#{recipient} subscribed to a mailing list")
58
+ end
60
59
 
61
- def note_email_activity(message)
62
- subject = find_or_create_activity_subject!
63
- puts "Found subject: #{subject.inspect}"
60
+ private
64
61
 
65
- subject.versions.create! :event => message
66
- end
62
+ def note_email_activity(message)
63
+ subject = find_or_create_activity_subject!
64
+ puts "Found subject: #{subject.inspect}"
67
65
 
68
- def data
69
- params['data']
70
- end
66
+ subject.versions.create! :event => message
67
+ end
71
68
 
72
- def find_or_create_activity_subject!
73
- lookups = [Account, Lead, Contact]
74
- lookups.each do |model|
75
- puts "#{model}.find_by_email( #{recipient} )"
76
- result = model.find_by_email(recipient)
77
- return result if result
69
+ def data
70
+ params['data']
78
71
  end
79
72
 
80
- puts "No pre-existing records found, creating a lead"
81
- lead = Lead.find_by_email(recipient)
82
- lead ||= Lead.new
73
+ def find_or_create_activity_subject!
74
+ lookups = [Account, Lead, Contact]
75
+ lookups.each do |model|
76
+ puts "#{model}.find_by_email( #{recipient} )"
77
+ result = model.find_by_email(recipient)
78
+ return result if result
79
+ end
83
80
 
84
- lead.email = recipient
85
- lead.first_name = recipient.split("@").first if lead.first_name.blank?
86
- lead.last_name = recipient.split("@").last if lead.last_name.blank?
87
- lead.user = User.first if lead.user_id.nil?
81
+ puts "No pre-existing records found, creating a lead"
82
+ lead = Lead.find_by_email(recipient)
83
+ lead ||= Lead.new
88
84
 
89
- puts "About to save:"
90
- puts lead.inspect
85
+ lead.email = recipient
86
+ lead.first_name = recipient.split("@").first if lead.first_name.blank?
87
+ lead.last_name = recipient.split("@").last if lead.last_name.blank?
88
+ lead.user = User.first if lead.user_id.nil?
91
89
 
92
- lead.save!
90
+ puts "About to save:"
91
+ puts lead.inspect
93
92
 
94
- puts lead.inspect
93
+ lead.save!
95
94
 
96
- lead
97
- end
95
+ puts lead.inspect
98
96
 
99
- # Temp workarounds until umi delivers events properly
100
- # Good example of the necessity of deep-schema enforcement for events
101
- def headers
102
- begin
103
- JSON(data['message_headers'])
104
- rescue => e
105
- return []
97
+ lead
106
98
  end
107
- end
108
99
 
109
- def recipient
110
- data['recipient']
111
- end
100
+ # Temp workarounds until umi delivers events properly
101
+ # Good example of the necessity of deep-schema enforcement for events
102
+ def headers
103
+ begin
104
+ JSON(data['message_headers'])
105
+ rescue => e
106
+ return []
107
+ end
108
+ end
112
109
 
113
- def custom_variables
114
- JSON(data['custom_variables'])
115
- end
110
+ def recipient
111
+ data['recipient']
112
+ end
116
113
 
117
- def campaign
118
- campaign = data['campaign_id'] || data['campaign_name']
119
- campaign ||= headers.select{|key, value| key == "X-Mailgun-Campaign-Id"}.try(:first).try(:last) unless headers.empty?
120
- campaign
114
+ def custom_variables
115
+ JSON(data['custom_variables'])
116
+ end
117
+
118
+ def campaign
119
+ campaign = data['campaign_id'] || data['campaign_name']
120
+ campaign ||= headers.select{|key, value| key == "X-Mailgun-Campaign-Id"}.try(:first).try(:last) unless headers.empty?
121
+ campaign
122
+ end
121
123
  end
122
124
  end
123
125
  end
@@ -1,7 +1,9 @@
1
- module Cloudfuji
2
- module EventObservers
3
- class PaymentObserver < Cloudfuji::EventObserver
4
- # NOTE: It'd be nice to have a before_filter.
1
+ module FatFreeCRM
2
+ module Cloudfuji
3
+ module EventObservers
4
+ class PaymentObserver < ::Cloudfuji::EventObserver
5
+ # NOTE: It'd be nice to have a before_filter.
6
+ end
5
7
  end
6
8
  end
7
9
  end
@@ -1,50 +1,52 @@
1
- module Cloudfuji
2
- module EventObservers
3
- class UserObserver < Cloudfuji::EventObserver
4
- def user_added
5
- puts "Adding a new user with incoming data #{params.inspect}"
6
- puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
7
- puts "Setting username to: #{params['data'].try(:[], 'ido_id')}"
1
+ module FatFreeCRM
2
+ module Cloudfuji
3
+ module EventObservers
4
+ class UserObserver < ::Cloudfuji::EventObserver
5
+ def user_added
6
+ puts "Adding a new user with incoming data #{params.inspect}"
7
+ puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
8
+ puts "Setting username to: #{params['data'].try(:[], 'ido_id')}"
8
9
 
9
- data = params['data']
10
+ data = params['data']
10
11
 
11
- user = User.unscoped.find_or_create_by_ido_id(data['ido_id'])
12
+ user = User.unscoped.find_or_create_by_ido_id(data['ido_id'])
12
13
 
13
- user.email = data['email']
14
- user.first_name = user.email.split('@').first
15
- user.last_name = user.email.split('@').last
16
- user.username = data['email']
17
- user.deleted_at = nil
18
- user.send("#{::Authlogic::Cas.cas_username_column}=".to_sym, data.try(:[], 'ido_id'))
14
+ user.email = data['email']
15
+ user.first_name = user.email.split('@').first
16
+ user.last_name = user.email.split('@').last
17
+ user.username = data['email']
18
+ user.deleted_at = nil
19
+ user.send("#{::Authlogic::Cas.cas_username_column}=".to_sym, data.try(:[], 'ido_id'))
19
20
 
20
- puts user.inspect
21
+ puts user.inspect
21
22
 
22
- user.save!
23
- end
23
+ user.save!
24
+ end
24
25
 
25
- def user_removed
26
- puts "Removing user based on incoming data #{params.inspect}"
27
- puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
26
+ def user_removed
27
+ puts "Removing user based on incoming data #{params.inspect}"
28
+ puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
28
29
 
29
- user = User.unscoped.find_by_ido_id(params['data']['ido_id'])
30
+ user = User.unscoped.find_by_ido_id(params['data']['ido_id'])
30
31
 
31
- # TODO: Disable the user instead of destroying them (to prevent data loss)
32
- user.try(:destroy)
33
- end
32
+ # TODO: Disable the user instead of destroying them (to prevent data loss)
33
+ user.try(:destroy)
34
+ end
34
35
 
35
- def user_updated
36
- puts "Updating user based on incoming data #{params.inspect}"
37
- puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
36
+ def user_updated
37
+ puts "Updating user based on incoming data #{params.inspect}"
38
+ puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}="
38
39
 
39
- data = params['data']
40
- user = User.unscoped.find_by_ido_id(data['ido_id'])
40
+ data = params['data']
41
+ user = User.unscoped.find_by_ido_id(data['ido_id'])
41
42
 
42
- if user
43
- # Re-use the CAS login method to set all the extra attributes we
44
- # care about (first_name, last_name, email, local, timezone,
45
- # etc.)
46
- user.cloudfuji_extra_attributes(data)
47
- user.save
43
+ if user
44
+ # Re-use the CAS login method to set all the extra attributes we
45
+ # care about (first_name, last_name, email, local, timezone,
46
+ # etc.)
47
+ user.cloudfuji_extra_attributes(data)
48
+ user.save
49
+ end
48
50
  end
49
51
  end
50
52
  end
@@ -0,0 +1,24 @@
1
+ # Mail routes
2
+ Cloudfuji::Mailroute.map do |m|
3
+ m.route("mail.new_comment") do
4
+ m.subject('{:project_title}: {:mock_title} #{:mock_version} comment {:parent_comment_id}',
5
+ :project_title => m.words_and_spaces,
6
+ :mock_title => m.words_and_spaces,
7
+ :mock_version => m.number,
8
+ :parent_comment_id => m.number)
9
+
10
+
11
+ # Must be replying to send a new comment via email
12
+ m.add_constraint(:reply, :required)
13
+ end
14
+
15
+ m.route("mail.new_project") do
16
+ m.subject("{:project_title}: {:mock_title}",
17
+ :project_title => m.words_and_spaces,
18
+ :mock_title => m.words_and_spaces)
19
+ end
20
+
21
+ m.route("mail.simple") do
22
+ m.subject("hello")
23
+ end
24
+ end
@@ -1,5 +1,5 @@
1
1
  module FatFreeCRM
2
2
  module Cloudfuji
3
- VERSION = '0.1.1'
3
+ VERSION = '0.1.3'
4
4
  end
5
5
  end
@@ -1 +1,6 @@
1
+ # Gem Dependencies
2
+ require 'cloudfuji'
3
+ require 'authlogic_cloudfuji'
4
+
5
+ # Rails Engine
1
6
  require 'fat_free_crm/cloudfuji/engine'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffcrm_cloudfuji
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,24 +10,8 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-05-10 00:00:00.000000000 Z
13
+ date: 2012-05-11 00:00:00.000000000 Z
14
14
  dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: fat_free_crm
17
- requirement: !ruby/object:Gem::Requirement
18
- none: false
19
- requirements:
20
- - - ! '>='
21
- - !ruby/object:Gem::Version
22
- version: 0.11.3
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
28
- - - ! '>='
29
- - !ruby/object:Gem::Version
30
- version: 0.11.3
31
15
  - !ruby/object:Gem::Dependency
32
16
  name: cloudfuji
33
17
  requirement: !ruby/object:Gem::Requirement
@@ -68,7 +52,6 @@ extra_rdoc_files: []
68
52
  files:
69
53
  - .gitignore
70
54
  - Gemfile
71
- - Gemfile.lock
72
55
  - MIT-LICENSE
73
56
  - README
74
57
  - Rakefile
@@ -85,6 +68,7 @@ files:
85
68
  - lib/fat_free_crm/cloudfuji/event_observers/email_observer.rb
86
69
  - lib/fat_free_crm/cloudfuji/event_observers/payment_observer.rb
87
70
  - lib/fat_free_crm/cloudfuji/event_observers/user_observer.rb
71
+ - lib/fat_free_crm/cloudfuji/mail_routes.rb
88
72
  - lib/fat_free_crm/cloudfuji/version.rb
89
73
  - lib/ffcrm_cloudfuji.rb
90
74
  - uninstall.rb
@@ -102,7 +86,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
102
86
  version: '0'
103
87
  segments:
104
88
  - 0
105
- hash: 959104865
89
+ hash: -564127629
106
90
  required_rubygems_version: !ruby/object:Gem::Requirement
107
91
  none: false
108
92
  requirements:
@@ -111,7 +95,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
111
95
  version: '0'
112
96
  segments:
113
97
  - 0
114
- hash: 959104865
98
+ hash: -564127629
115
99
  requirements: []
116
100
  rubyforge_project:
117
101
  rubygems_version: 1.8.24
data/Gemfile.lock DELETED
@@ -1,193 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- ffcrm_cloudfuji (0.1.1)
5
- authlogic_cloudfuji (~> 0.9)
6
- cloudfuji
7
- fat_free_crm (>= 0.11.3)
8
-
9
- GEM
10
- remote: http://rubygems.org/
11
- specs:
12
- actionmailer (3.2.3)
13
- actionpack (= 3.2.3)
14
- mail (~> 2.4.4)
15
- actionpack (3.2.3)
16
- activemodel (= 3.2.3)
17
- activesupport (= 3.2.3)
18
- builder (~> 3.0.0)
19
- erubis (~> 2.7.0)
20
- journey (~> 1.0.1)
21
- rack (~> 1.4.0)
22
- rack-cache (~> 1.2)
23
- rack-test (~> 0.6.1)
24
- sprockets (~> 2.1.2)
25
- activemodel (3.2.3)
26
- activesupport (= 3.2.3)
27
- builder (~> 3.0.0)
28
- activerecord (3.2.3)
29
- activemodel (= 3.2.3)
30
- activesupport (= 3.2.3)
31
- arel (~> 3.0.2)
32
- tzinfo (~> 0.3.29)
33
- activeresource (3.2.3)
34
- activemodel (= 3.2.3)
35
- activesupport (= 3.2.3)
36
- activesupport (3.2.3)
37
- i18n (~> 0.6)
38
- multi_json (~> 1.0)
39
- acts-as-taggable-on (2.2.2)
40
- rails (~> 3.0)
41
- acts_as_commentable (3.0.1)
42
- acts_as_list (0.1.6)
43
- addressable (2.2.8)
44
- ajax-chosen-rails (0.2.0)
45
- chosen-rails_ffcrm
46
- railties (~> 3.0)
47
- thor (~> 0.14)
48
- arel (3.0.2)
49
- authlogic (3.1.0)
50
- activerecord (>= 3.0.7)
51
- activerecord (>= 3.0.7)
52
- authlogic_cloudfuji (0.9.4)
53
- authlogic
54
- rubycas-client (= 2.2.1)
55
- builder (3.0.0)
56
- cancan (1.6.7)
57
- chosen-rails_ffcrm (0.9.5)
58
- railties (~> 3.0)
59
- thor (~> 0.14)
60
- chronic (0.6.7)
61
- cloudfuji (0.0.39)
62
- highline (>= 1.6.1)
63
- json (>= 1.4.6)
64
- orm_adapter (~> 0.0.3)
65
- rest-client (>= 1.6.1)
66
- cocaine (0.2.1)
67
- css_parser (1.2.6)
68
- addressable
69
- rdoc
70
- dynamic_form (1.1.4)
71
- email_reply_parser_ffcrm (0.5.0)
72
- erubis (2.7.0)
73
- fat_free_crm (0.11.3)
74
- acts-as-taggable-on (~> 2.2.1)
75
- acts_as_commentable (~> 3.0.1)
76
- acts_as_list (~> 0.1.4)
77
- ajax-chosen-rails (>= 0.2.0)
78
- authlogic (~> 3.1.0)
79
- cancan
80
- chosen-rails_ffcrm
81
- dynamic_form
82
- email_reply_parser_ffcrm
83
- ffaker (>= 1.12.0)
84
- haml (~> 3.1.3)
85
- jquery-rails
86
- nokogiri
87
- paper_trail
88
- paperclip (~> 2.7.0)
89
- premailer
90
- prototype-rails
91
- rails (~> 3.2.2)
92
- ransack_ffcrm (~> 0.6.0)
93
- responds_to_parent_ffcrm
94
- sass (~> 3.1.10)
95
- simple_form (~> 2.0.1)
96
- squeel (~> 0.9.3)
97
- will_paginate (~> 3.0.2)
98
- ffaker (1.14.0)
99
- haml (3.1.5)
100
- highline (1.6.12)
101
- hike (1.2.1)
102
- htmlentities (4.3.1)
103
- i18n (0.6.0)
104
- journey (1.0.3)
105
- jquery-rails (2.0.2)
106
- railties (>= 3.2.0, < 5.0)
107
- thor (~> 0.14)
108
- json (1.7.0)
109
- mail (2.4.4)
110
- i18n (>= 0.4.0)
111
- mime-types (~> 1.16)
112
- treetop (~> 1.4.8)
113
- mime-types (1.18)
114
- multi_json (1.3.4)
115
- nokogiri (1.5.2)
116
- orm_adapter (0.0.7)
117
- paper_trail (2.6.3)
118
- activerecord (~> 3.0)
119
- railties (~> 3.0)
120
- paperclip (2.7.0)
121
- activerecord (>= 2.3.0)
122
- activesupport (>= 2.3.2)
123
- cocaine (>= 0.0.2)
124
- mime-types
125
- polyamorous (0.5.0)
126
- activerecord (~> 3.0)
127
- polyglot (0.3.3)
128
- premailer (1.7.3)
129
- css_parser (>= 1.1.9)
130
- htmlentities (>= 4.0.0)
131
- prototype-rails (3.2.1)
132
- rails (~> 3.2)
133
- rack (1.4.1)
134
- rack-cache (1.2)
135
- rack (>= 0.4)
136
- rack-ssl (1.3.2)
137
- rack
138
- rack-test (0.6.1)
139
- rack (>= 1.0)
140
- rails (3.2.3)
141
- actionmailer (= 3.2.3)
142
- actionpack (= 3.2.3)
143
- activerecord (= 3.2.3)
144
- activeresource (= 3.2.3)
145
- activesupport (= 3.2.3)
146
- bundler (~> 1.0)
147
- railties (= 3.2.3)
148
- railties (3.2.3)
149
- actionpack (= 3.2.3)
150
- activesupport (= 3.2.3)
151
- rack-ssl (~> 1.3.2)
152
- rake (>= 0.8.7)
153
- rdoc (~> 3.4)
154
- thor (~> 0.14.6)
155
- rake (0.9.2.2)
156
- ransack_ffcrm (0.6.0)
157
- actionpack (~> 3.0)
158
- activerecord (~> 3.0)
159
- chronic (~> 0.6.7)
160
- polyamorous (~> 0.5.0)
161
- rdoc (3.12)
162
- json (~> 1.4)
163
- responds_to_parent_ffcrm (1.1.0)
164
- rest-client (1.6.7)
165
- mime-types (>= 1.16)
166
- rubycas-client (2.2.1)
167
- activesupport
168
- sass (3.1.16)
169
- simple_form (2.0.2)
170
- actionpack (~> 3.0)
171
- activemodel (~> 3.0)
172
- sprockets (2.1.3)
173
- hike (~> 1.2)
174
- rack (~> 1.0)
175
- tilt (~> 1.1, != 1.3.0)
176
- squeel (0.9.5)
177
- activerecord (~> 3.0)
178
- activesupport (~> 3.0)
179
- polyamorous (~> 0.5.0)
180
- thor (0.14.6)
181
- tilt (1.3.3)
182
- treetop (1.4.10)
183
- polyglot
184
- polyglot (>= 0.3.1)
185
- tzinfo (0.3.33)
186
- will_paginate (3.0.3)
187
-
188
- PLATFORMS
189
- ruby
190
-
191
- DEPENDENCIES
192
- fat_free_crm
193
- ffcrm_cloudfuji!