If therubyracer gives you a problem like this one when installing it:
ERROR: Error installing therubyracer:
ERROR: Failed to build gem native extension.
/Users/tonatiuh/.rvm/rubies/ruby-1.9.3-p448/bin/ruby extconf.rb
###app/models/vertical.rb | |
class Vertical < ActiveRecord::Base | |
has_one :parent_relation, foreign_key: "child_id", class_name: "VerticalRelation" | |
has_many :child_relations, foreign_key: "parent_id", class_name: "VerticalRelation" | |
has_one :head_relation, foreign_key: "tail_id", class_name: "VerticalRelation" | |
has_one :tail_relation, foreign_key: "head_id", class_name: "VerticalRelation" | |
has_one :parent, through: :parent_relation | |
has_many :children, through: :child_relations, source: :child | |
has_one :head, through: :head_relation |
## The vertical | |
#Be sure of that vertical with id 1 exists | |
## The campaign (form) | |
#Put to the campaign the state of washignton | |
#Set to the campaign the vertical: 1 | |
## The contacts (on the rails console) | |
Contact.create(:name => 'Jodee Clore', :vertical_id => 1, :geo_id => '15121') #this geo_id's are citys of washington | |
Contact.create(:name => 'Trish Roudebush', :vertical_id => 1, :geo_id => '14974') |
def self.find_matching_campaigns_by_geo(contact) | |
matching_campaigns = [] | |
Campaign.all.each do |campaign| | |
campaign.geos.each do |geo| | |
match = Geo.where(id: contact.geo.id).includes(:geo_polygons).joins("LEFT JOIN geo_polygons as container ON container.geo_id = #{geo.id}").where('ST_Within(geo_polygons.poly, container.poly)') | |
matching_campaigns << campaign unless match.empty? | |
end | |
end | |
matching_campaigns | |
end |
def new_contact_obligations | |
# self.vertical = conversions.first.placement.vertical | |
self.attributes = load_loc_attrs | |
self.save! | |
notify_observers(:find_campaigns) | |
end |
after_save :bid_adjusts | |
def bid_adjusts | |
unless @old_exclusive_campaign.nil? | |
campaign = Campaign.find(@old_exclusive_campaign.id) | |
campaign.update_attributes(exclusivity: false) | |
campaign.save | |
end | |
end |
@javascript | |
Scenario: Returning to a form placement # features/collection.feature:12 | |
When a contact returns to a form placement completed previously # features/step_definitions/engine_steps.rb:132 | |
Unable to load URL: http://api.lvh.me:4433/placements/test (Capybara::Driver::Webkit::WebkitInvalidResponseError) | |
./features/step_definitions/engine_steps.rb:29:in `/^a contact visits a page with an? (\w+) placement$/' | |
features/collection.feature:13:in `When a contact returns to a form placement completed previously' |