Skip to content

Commit

Permalink
Can pass a block to get handler options to determine which options to
Browse files Browse the repository at this point in the history
use.  Removed passing target to updater.
  • Loading branch information
Doug Youch committed Apr 2, 2010
1 parent 9083989 commit 999b81d
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 15 deletions.
24 changes: 11 additions & 13 deletions app/models/content/core_feature/email_target_connect.rb
Expand Up @@ -71,7 +71,7 @@ def webform(form, result)

update_data = { :fields => arr, :add_tags => opts.add_target_tags, :update_tags => opts.update_target_tags, :add_source => opts.add_target_source }

ContentTypeMethods.email_target_connect_update(update_data, result.data_model, result.end_user)
ContentTypeMethods.email_target_connect_update(update_data, result.data_model)
end


Expand All @@ -83,24 +83,22 @@ def email_target_connect_update
end
end

def self.email_target_connect_update(update_data, entry, target=nil)
def self.email_target_connect_update(update_data, entry)
connected_fields = update_data[:fields]

unless target
email_field = connected_fields.find() { |fld| fld[1] == 'end_user.email' }
begin
email = entry.send(email_field[0])
email_field = connected_fields.find() { |fld| fld[1] == 'end_user.email' }
begin
email = entry.send(email_field[0])

if email.blank?
return
end
rescue Exception => e
raise e.to_s
if email.blank?
return
end

target = EndUser.find_target(email, :no_create => true)
rescue Exception => e
raise e.to_s
return
end

target = EndUser.find_target(email, :no_create => true)

address = target.address || EndUserAddress.new()

Expand Down
13 changes: 11 additions & 2 deletions app/models/handler_actions.rb
Expand Up @@ -76,8 +76,17 @@ def get_handler_options(component,handler_name,initialized=false)
handlers = get_handlers(component,handler_name,initialized)
handlers.collect do |handler|
cls = handler[0].constantize
[ cls.send("#{component}_#{handler_name}_handler_info")[:name].t, handler[0].underscore ]
end

if block_given?
if yield handler, cls
[ cls.send("#{component}_#{handler_name}_handler_info")[:name].t, handler[0].underscore ]
else
nil
end
else
[ cls.send("#{component}_#{handler_name}_handler_info")[:name].t, handler[0].underscore ]
end
end.compact
end

def get_handler_info(component,handler_name,identifier=nil,initialized=false)
Expand Down

0 comments on commit 999b81d

Please sign in to comment.