class Foscam::Model::MailServer
Constants
- client
Attributes
address[R]
password[R]
port[R]
recipients[R]
sender[R]
username[R]
Public Instance Methods
address=(val)
click to toggle source
# File lib/foscam/model/mail_server.rb, line 56 def address=(val) address_will_change! unless val == @address @address = val end
clear()
click to toggle source
# File lib/foscam/model/mail_server.rb, line 98 def clear run_callbacks :clear do flag = false params = {:sender => "", :user => "", :pwd => "", :svr => "", :port => 21, :receiver1 => "", :receiver2 => "", :receiver3 => "", :receiver4 => ""} flag = client.set_mail(params) @changed_attributes.clear if flag flag end end
client=(obj)
click to toggle source
# File lib/foscam/model/mail_server.rb, line 66 def client=(obj) unless obj.nil? MailServer::client = obj params = client.get_params unless params.empty? self.sender = params[:mail_sender] self.address = params[:mail_svr] self.port = params[:mail_port] self.username = params[:mail_user] self.password = params[:mail_pwd] @recipients = [] (1..4).each do |i| @recipients << Recipient.new(:id => i, :address => params["mail_receiver#{i}".to_sym]) if params.has_key?("mail_receiver#{i}".to_sym) && !params["mail_receiver#{i}".to_sym].empty? end end end end
password=(val)
click to toggle source
# File lib/foscam/model/mail_server.rb, line 51 def password=(val) password_will_change! unless val == @password @password = val end
port=(val)
click to toggle source
# File lib/foscam/model/mail_server.rb, line 61 def port=(val) port_will_change! unless val == @port @port = val end
save()
click to toggle source
# File lib/foscam/model/mail_server.rb, line 86 def save run_callbacks :save do flag = false if changed? && is_valid? @previously_changed = changes flag = client.set_mail(dirty_params_hash) @changed_attributes.clear if flag end flag end end
sender=(val)
click to toggle source
# File lib/foscam/model/mail_server.rb, line 41 def sender=(val) sender_will_change! unless val == @sender @sender = val end
username=(val)
click to toggle source
# File lib/foscam/model/mail_server.rb, line 46 def username=(val) username_will_change! unless val == @username @username = val end
Private Instance Methods
dirty_params_hash()
click to toggle source
# File lib/foscam/model/mail_server.rb, line 110 def dirty_params_hash h = {} h.merge!({:sender => self.sender}) if sender_changed? h.merge!({:user => self.username}) if username_changed? h.merge!({:pwd => self.password}) if password_changed? h.merge!({:svr => self.address}) if address_changed? h.merge!({:port => self.port}) if port_changed? self.recipients.each do |recipient| h.merge!({"receiver#{recipient.id}".to_sym => recipient.address}) if recipient.address_changed? end h end