Class: Phplist::API
- Inherits:
-
Object
- Object
- Phplist::API
- Defined in:
- lib/phplist.rb
Class Attribute Summary collapse
-
.action ⇒ Object
Returns the value of attribute action.
-
.domain ⇒ Object
Returns the value of attribute domain.
-
.password ⇒ Object
Returns the value of attribute password.
-
.ssl_enabled ⇒ Object
Returns the value of attribute ssl_enabled.
Instance Attribute Summary collapse
-
#action ⇒ Object
Returns the value of attribute action.
-
#domain ⇒ Object
Returns the value of attribute domain.
-
#password ⇒ Object
Returns the value of attribute password.
-
#ssl_enabled ⇒ Object
Returns the value of attribute ssl_enabled.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(default_parameters = {:domain => nil, :action => nil, :password => nil, :ssl_enabled => false}) ⇒ API
constructor
A new instance of API.
- #subscribe(info = {:id => nil, :subscriber => {:email => nil, :name => nil, :city => nil, :country => nil}}) ⇒ Object
- #subscribe_list(info = {:id => nil, :subscribers => [{:email => nil, :name => nil, :city => nil, :country => nil}]}) ⇒ Object
Constructor Details
#initialize(default_parameters = {:domain => nil, :action => nil, :password => nil, :ssl_enabled => false}) ⇒ API
Returns a new instance of API.
8 9 10 11 12 13 |
# File 'lib/phplist.rb', line 8 def initialize(default_parameters = {:domain => nil, :action => nil, :password => nil, :ssl_enabled => false}) @domain = default_parameters[:domain]||self.class.domain @action = default_parameters[:action]||self.class.action @password = default_parameters[:password]||self.class.password @ssl_enabled = default_parameters[:ssl_enabled]||self.class.ssl_enabled end |
Class Attribute Details
.action ⇒ Object
Returns the value of attribute action.
49 50 51 |
# File 'lib/phplist.rb', line 49 def action @action end |
.domain ⇒ Object
Returns the value of attribute domain.
49 50 51 |
# File 'lib/phplist.rb', line 49 def domain @domain end |
.password ⇒ Object
Returns the value of attribute password.
49 50 51 |
# File 'lib/phplist.rb', line 49 def password @password end |
.ssl_enabled ⇒ Object
Returns the value of attribute ssl_enabled.
49 50 51 |
# File 'lib/phplist.rb', line 49 def ssl_enabled @ssl_enabled end |
Instance Attribute Details
#action ⇒ Object
Returns the value of attribute action.
7 8 9 |
# File 'lib/phplist.rb', line 7 def action @action end |
#domain ⇒ Object
Returns the value of attribute domain.
7 8 9 |
# File 'lib/phplist.rb', line 7 def domain @domain end |
#password ⇒ Object
Returns the value of attribute password.
7 8 9 |
# File 'lib/phplist.rb', line 7 def password @password end |
#ssl_enabled ⇒ Object
Returns the value of attribute ssl_enabled.
7 8 9 |
# File 'lib/phplist.rb', line 7 def ssl_enabled @ssl_enabled end |
Class Method Details
.method_missing(sym, *args, &block) ⇒ Object
50 51 52 |
# File 'lib/phplist.rb', line 50 def method_missing(sym, *args, &block) new({:domain => self.domain, :action => self.action, :password => self.password, :ssl_enabled => self.ssl_enabled}).send(sym, *args, &block) end |
Instance Method Details
#subscribe(info = {:id => nil, :subscriber => {:email => nil, :name => nil, :city => nil, :country => nil}}) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/phplist.rb', line 15 def subscribe(info = {:id => nil, :subscriber => {:email => nil, :name => nil, :city => nil, :country => nil}}) return false if info[:id].blank? return false if info[:subscriber].blank? || info[:subscriber][:email].blank? p_email = info[:subscriber][:email] name = info[:subscriber][:name] p_name = CGI::escape(name||'') p_city = CGI::escape(info[:subscriber][:city]||'') p_country = CGI::escape(info[:subscriber][:country]||'') start_time = Time.now url = "http#{'s' if @ssl_enabled}://#{@domain}/#{@action}?passwd=#{@password}&email=#{p_email.downcase}&name=#{p_name}&city=#{p_city}&country=#{p_country}&makeconfirmed=1&lid=#{info[:id]}" url = URI.encode(url) uri = URI(url) res = Net::HTTP.get_response(uri) response_str = res.body.to_s if /success/i =~ response_str return true end return false end |
#subscribe_list(info = {:id => nil, :subscribers => [{:email => nil, :name => nil, :city => nil, :country => nil}]}) ⇒ Object
37 38 39 40 41 42 43 44 45 46 |
# File 'lib/phplist.rb', line 37 def subscribe_list(info = {:id => nil, :subscribers => [{:email => nil, :name => nil, :city => nil, :country => nil}]}) return false if info[:id].blank? return false if info[:subscribers].blank? subscribed = false info[:subscribers].each do |subscriber| subscribed = subscribe({:id => info[:id], :subscriber => subscriber}) return false unless subscribed end subscribed end |