docbrown/app/labor/boosted_article.rb
Ben Halpern f2101410ea
[WIP] Improve article boosting abilities and insights (#237)
* Update email subjects split test

* Create alternate editor

* Add proof of concept to emails

* Add utm for internal nav

* Add ability to boost in DEV Digest

* Adjust articles.scss

* Adjust article_form.scss

* Remove unnecessary files

* Remove files from PR

* Adjust boosted email settings

* Conditionally include organization in additional box

* Modify schema.rb
2018-05-02 12:24:54 -04:00

25 lines
798 B
Ruby

class BoostedArticle
attr_accessor :user, :article, :tags, :not_ids
def initialize(user, article, options)
@user = user
@article = article
@tags = (user&.cached_followed_tag_names.to_a + article.decorate.cached_tag_list_array).compact
@not_ids = options[:not_ids]
end
def get(area = "additional_articles")
if area == "additional_articles"
Article.boosted_via_additional_articles.
includes(:user).
includes(:organization).
where.not(id: not_ids, organization_id: nil).
tagged_with(tags, any: true).sample
else
Article.boosted_via_dev_digest_email.
includes(:user).
includes(:organization).
where.not(id: not_ids, organization_id: nil).
tagged_with(tags, any: true).sample
end
end
end