View offer_share.rb
# Jeff's pure architecture didn't allow him
# to customize message body in a right way.
# That is why we fuck it up right here.
def fuck_short_url(text)
return nil unless text
# Offer short url in email should differ from generic one
# Additional parameters should be included:
# share_specific_short_url includes {source: 'email', email_shared_with: email}
# Sometimes we can not avoid this hack because of the following usecase:
# When user is sharing offer via email though talkable offer page
View gist:eed4d23b7c1fe2325420b44725fdf68e
diff --git a/app/models/custom_property.rb b/app/models/custom_property.rb
index eea3a8c70f..5763ecd547 100644
--- a/app/models/custom_property.rb
+++ b/app/models/custom_property.rb
@@ -80,17 +80,12 @@ class CustomProperty < BaseModel
end || CustomProperty.new(key: key, value: existing_properties[key]&.first&.value)
target_property.person = person
target_property.visitor = visitor
- target_property.value = new_properties[key] if new_properties.has_key?(key)
- if target_property.value.nil?
View zz.diff
diff --git a/app/liquid/templates/shared/_offers_claim.erb b/app/liquid/templates/shared/_offers_claim.erb
index b29e040521..03796ab6ff 100644
--- a/app/liquid/templates/shared/_offers_claim.erb
+++ b/app/liquid/templates/shared/_offers_claim.erb
@@ -6,7 +6,7 @@
{% endif %}
{% if friend_reward != blank %}
- {% assign friend_claim_page_hide_coupon_code = "hide_coupon_code" | localize: "Yes", "No", trait: "boolean", default: "No" %}
+ {% assign hide_coupon_code = "hide_coupon_code" | localize: "Yes", "No", trait: "boolean", default: "No" %}
View tickets.txt
Философия покупки авиабилетов и бронирования отелей
Очень часто подходящие билеты по самой выгодной цене продаются на сайтах мягко говоря не удобных для использования.
Это в общем-то логично - чем более удобный сайт по покупке билетов, тем более много сил в него вложено и тем большую комиссию сайт имеет право требовать.
Однако это не все. На данный момент хорошие ИТ специалисты крайне редки и дороги. Поэтому рядовым компаниям просто не под силу сделать хороший сайт по продаже билетов.
Для меня покупка редко проходит гладко. Всегда что-то не так или с сайтом или банковским платежем.
При чем в большинстве случаев причина не понятнa. Первое природное желание человека, столкнувшегося с такой проблемой - разобраться в логике работы сайта и банка. Но к сожалению на практике их логика существует, но крайне сложна и часто уходит в дебри ("Почему так? Ну просто так исторически сложилось"). Причинно-следственные связи есть, но отследить их тяжело.
Это быстро понимаешь в ситуациях, когда оплата произошла, но билет к ва
View reward.rb
def void!
self.update_attribute(:status, BASE_STATUSES[:voided])
# TODO: Need to better figure out which redeem activity to modify...
# For now, see if there was one around the time of the reward creation and void that if found
[:redeem, :referral].each do |r|
void_activities = offer.activities.by_action(r).by_date_times(created_at..(created_at + 5.minutes))
unless void_activities.empty?
activity = void_activities.first
logger.info("Reward#void! reward #{id} voided, voiding #{activity.action} activity: #{activity.id}")
activity.update_attribute(:action, "#{r}_voided")
View dom.rb
class Generator
class Tag
attr_accessort :name, :children, :level
def initialize(name, level = 0, &block)
@name = name
@level = level
@children = []
instance_eval(&block)
end
View forwardable.rb
def self._delegator_method(obj, accessor, method, ali)
accessor = accessor.to_s unless Symbol === accessor
if Module === obj ?
obj.method_defined?(accessor) || obj.private_method_defined?(accessor) :
obj.respond_to?(accessor, true)
accessor = "#{accessor}()"
end
method_call = ".__send__(:#{method}, *args, &block)"
View site_nested_controller.rb
# Loads @site into controller and check if current user is authorized
# to view this site.
module SiteNestedController
extend ActiveSupport::Concern
included do
class_attribute :site_param
self.site_param = :site_id
before_action :require_user
View df.diff
diff --git a/app/models/visitor_offer.rb b/app/models/visitor_offer.rb
index 1d4f8f2807..e72771ad20 100644
--- a/app/models/visitor_offer.rb
+++ b/app/models/visitor_offer.rb
@@ -307,20 +307,23 @@ class VisitorOffer < BaseModel
end
def click_reward_in_email!
- return click_reward if click_reward
- return if sample?
View log.log
> r!;ShareEmail.perform(Offer.last, 'A A <alexey.vlasov@gmail.com>', nil, nil, nil, nil)
Reloading...
Offer Load (0.3ms) SELECT `offers`.* FROM `offers` ORDER BY `offers`.`id` DESC LIMIT 1
Campaign Load (0.3ms) SELECT `campaigns`.* FROM `campaigns` WHERE `campaigns`.`id` = 37228 LIMIT 1
Site Load (0.3ms) SELECT `sites`.* FROM `sites` WHERE `sites`.`id` = 2901 LIMIT 1
Person Load (0.3ms) SELECT `people`.* FROM `people` WHERE `people`.`site_id` = 2901 AND `people`.`email` = 'alexey.vlasov@gmail.com'
CustomAttribute Load (0.3ms) SELECT `custom_attributes`.* FROM `custom_attributes` WHERE `custom_attributes`.`foreign_id` = 18425477 AND `custom_attributes`.`model` = 'Person'
Mailgun Batch Email Validation: passed - 1, failed - 0, total - 1
Account Load (0.2ms) SELECT `accounts`.* FROM `accounts` WHERE `accounts`.`id` = 4416 LIMIT 1
Person Load (0.5ms) SELECT `people`.* FROM `people` INNER JOIN `offer_shares` ON `people`.`id` = `offer_shares`.`person_id` WHERE `offer_shares`.`type` IN ('Em