Commit graph

417 commits

Author SHA1 Message Date
Alex
27df7ddee5
Remove old MailchimpBot (#12244)
* Remove old MailchimpBot

* Wake up, Travis

* Wake up, Travis
2021-01-13 14:33:21 -05:00
Alex
b168e1529f
Move HexComparer to Hex::Comparer service (#12202)
* Move HexComparere to Hex::Comparer service

* Create USER_COLORS constant and constant specs

* Move formats to constants

* Rename Hex::Comparer to Color::CompareHex
2021-01-12 11:34:30 -05:00
Alex
a7376ad10d
Move Bufferizer to services (#12171)
* Create Bufferizer::MainTweet service

* Create Bufferizer::SatelliteTweet service

* Rename text to tweet

* Create Bufferizer::FacebookPost service

* Create Bufferizer::ListingsTweet service

* Remove old Bufferizer

* Update spec wording

* Update admin_id argument

* Use constants for size limits
2021-01-08 11:17:20 -05:00
Michael Kohl
45cecc8592
Break StickyArticleCollection into services (#12147)
* Break StickyArticleCollection into services

* Add tests
2021-01-08 09:14:47 +07:00
Alex
ce4fe1aaf7
Move CodeBlockParse and MarkdownParser to service (#12112)
* Move remove_nested_linebreak_in_list to service

* Move prefex_all_images to service

* Major refactor :)

- Move MarkdownParser to /services
- Move CodeBlockParser to HtmlParser in /services
- Update specs

* Fix MarkdownParser

* Fix parser again

* Rename HtmlParser to Html::Parser

- Fix Rubocop violations :/
- Fix conflict

* Make html writer private

* Fix codeclimate

* Fix parser
2021-01-07 10:13:01 -05:00
Mac Siri
7112f0f8f5
Bump Nokogiri to 1.11.1 (#12133) 2021-01-06 10:15:13 -05:00
Michael Kohl
bfb505d088
Move LanguageDetector to service (#12035) 2021-01-04 19:12:24 -05:00
Alex
1bad9dc698
Move EmojiConverter to service (#12081)
* Move EmojiConverter to service

* Fix spec

* Rename EmojiCoverter to Html::ParseEmoji
2021-01-04 17:41:48 +01:00
Alex
5d7fa454bd
Remove CacheBuster (#12080) 2020-12-30 11:55:16 -05:00
Michael Kohl
f98cfb59d2
Move constant from initializer to app/lib/constants (#12034) 2020-12-26 19:19:09 +01:00
Michael Kohl
63cf95d811
Split BadgeRewarder into multiple services (#11902) 2020-12-23 09:55:06 -05:00
Michael Kohl
d21707a959
Move AssignTagModerator from labor to services (#11826)
* Move AssignTagModerator from labor to services

* Remove unnecessary spec file

* Remove extra newline

* Update Admin::Tags::ModeratorsController
2020-12-17 09:51:26 +07:00
Ben Halpern
4dc1a53755
Cache bust sidebar instead of home page (#11901) 2020-12-16 13:50:53 -05:00
Ben Halpern
3308bf5e3d
Add sidebar bust logic (#11878)
* Add sidebar bust logic

* Fix typo
2020-12-13 19:43:44 -05:00
Michael Kohl
1729cf02ad
Move Twilio from labor to services (#11824)
* Move Twilio from labor to services

* Update usage
2020-12-10 10:21:09 +07:00
Michael Kohl
59e2f5a025
Remove app/labor/color_from_image.rb (#11825)
* Remove app/labor/color_from_image.rb

* Remove miro gem

* Delete TODO
2020-12-10 10:08:06 +07:00
Michael Kohl
5c2f27baed
Remove timeframer from app/labor (#11782)
* Move file

* Update usages

* Simplify
2020-12-08 12:52:33 +07:00
Michael Kohl
c5a29826e8
Move app/labor/error_message_cleaner.rb to service (#11679) 2020-12-02 11:05:36 +07:00
Michael Kohl
195e228307
Move GeneratedImage to Images::GenerateSocialmage (#11691) 2020-12-02 11:03:14 +07:00
Michael Kohl
2939813168
Move app/labor/reaction_image.rb to helper (#11678) 2020-12-01 14:15:30 +07:00
Michael Kohl
5185de4c91
Move app/labor/follow_checker.rb to service (#11613)
* Move app/labor/follow_checker.rb to service

* Move to Follows:: namespace
2020-12-01 14:14:36 +07:00
Michael Kohl
06fd95f93f
Move LogWorkerQueueStats from labor to services (#11642) 2020-11-30 09:31:15 +07:00
rhymes
68b320a1de
Add contact email to SiteConfig and replace default where appropriate (#11630)
* Add a new contact email to use in place of default

* Replace :default with :contact email in all non transactional emails

* Add missing expectation
2020-11-27 16:39:38 +01:00
Michael Kohl
1ce8a762b7
Move HtmlCleaner from app/labor into service (#11609)
* Move HtmlCleaner from app/labor into service

* Move to Feeds:: namespace
2020-11-27 08:21:57 +07:00
Michael Kohl
82108ea8b5
Remove app/labor/random_gif.rb (#11611) 2020-11-25 14:58:32 +00:00
Michael Kohl
894b1b94c7
Remove UnreadNotificationsEmailer (#11561) 2020-11-23 14:15:07 +00:00
Michael Kohl
b46323d0b2
Move ArticleSuggester to Articles::Suggest service (#11370) 2020-11-11 13:06:33 -05:00
Andy Zhao
a8c3ff8c5a
Add trusted role to new tag moderators (#11242)
* Don't add to mailchimp for N/A circumstance

* Use class << self over self. methods

* Refactor and make add/remove tag mod idempotent

* Add missing param wiki_body_markdown

* Add errors_as_sentence b/c Tag not inheriting from AppRecord

* Refactor and Crayonsify tag page

* Use proper for attr to make label checkable

* Crayonsify moderator section

* Make placeholder white

* Remove remote: false for sync form submit

* Fix more merge conflicts

* Minor styling adjustments

* Fix color field value

* Don't add to Mailchimp community mod list if not enabled

* Add tests for new tag mod routes

* Add missing line oops

* Use self.method over class << self for new Rubyists

* Use more efficient query for getting tag mods

* Use parentheses to follow convention

* Use cleaner way of routing and controller

* Update tests to match new configuration
2020-11-05 10:36:26 -05:00
Michael Kohl
32f2b2d58f
Automatically mark tag supported when adding mod (#11151)
* Automatically mark tag a supported when adding mod

* Add data update script
2020-10-30 09:46:10 -04:00
ludwiczakpawel
5d3691bcc5
Notifications redesign (#11084)
* notifications

* fix

* .

* REVERT

* .

* drop ccss

* REVERT

* specs

* drop colons

* fixse

* fix

* spec 1

* eh

* Fix notification specs

Co-authored-by: Molly Struve <mollylbs@gmail.com>
2020-10-29 20:38:17 +01:00
Jacob Herrington
4dde307a43
Fix NoMethodError for tag moderators channel (#11047)
* Fix NoMethodError for tag moderators channel

In development, it is possible to hit a NoMethodError when adding a tag
moderator because the "tag-moderator" slug is hard-coded.

This change helps mitigate that by adding a safe navigation operator. We
can always remove it if we decide to get rid of the hard-coded value.

Secondarily, it adds this channel to the seeds file, since we pretty
much expect it to exist.

* Move nested conditional
2020-10-23 21:02:54 -05:00
rhymes
1f562783fc
Fix new Rubocop violations (#10808)
* Fix new Rubocop violations

* Use the latest minor version of 0.93
2020-10-20 09:28:53 -04:00
Ivan
4f79da26c3
add fullscreen to code blocks (#10784)
* add fullscreen to code blocks

* add review fixes

* remove extra import

* fix approved tests

* code review - paddings

* fix padding to make highlight code scrollable
within  padded area

* add fullscreen to existing webpack entrypoint

* fixed aria: true generated extra ids

* fix tests
2020-10-14 12:01:35 +02:00
Michael Kohl
511496c593
Update BatchRewarder::REPOSITORIES (#10593)
* Update BatchRewarder::Repositories

* Sort constant alphabetically
2020-10-07 09:00:26 +07:00
Vaidehi Joshi
d5f810a6f8
[deploy] Refactor edge caching logic to live in EdgeCache::Service (#10369)
* Refactor edge caching logic to live in EdgeCache::Service

* Rename EdgeCache::Service to EdgeCache::Buster

* Reorganize some code, move from Buster to Bust naming
2020-09-18 16:41:40 -05:00
Andy Zhao
b65ebdf99c
[deploy] Fix case sensitive published bug (#10352) 2020-09-18 11:45:45 -04:00
Ben Halpern
1a531bca0e
Replace need for GitHub ENV vars on bootup (#10372)
* Un-eagerload dev mode

* Change approach

* Fix for_user

* Fix spec?

* Fix spec?

* Fix spec?

* Fix spec?

* Fix spec?
2020-09-18 11:21:31 -04:00
Michael Kohl
6d1984163e
Add opacity to HexComparer (#10361)
* Refactor code

* Add opacity method
2020-09-18 13:49:03 +07:00
Molly Struve
7520caf0e2
[deploy] Refactor:Remove ReadingList Labor Class, Replace with user Method (#10322) 2020-09-14 11:37:59 -05:00
Molly Struve
0cdbf46828
[deploy] Refactor:Remove unused ReadingList Labor methods (#10292) 2020-09-13 13:45:14 -05:00
Vaidehi Joshi
0f74206184
Check that nginx is available before pinging it (#10287) [deploy]
* Check that nginx is available before pinging it

Currently, we don't have a good way of knowing whether Openresty is available before
we try to bust an Nginx cache via Openresty's server. This means that we can potentially
make a request to Openresty even when it is unavailable, which causes the app to not be
able to boot up when this code path is called.

This adds a check to make sure that openresty is both configured and available before
trying to bust an Nginx cache or before making additional requests to Openresty.

Closes https://github.com/forem/InternalProjectPlanning/issues/38.

* Add DataDog monitor if Openresty is unavailable
2020-09-11 15:28:03 -07:00
Ben Halpern
3a469a99e2
[deploy] Enable admin-configured app_domain (#10206)
* Move app_domain from env var to siteconfig *within app area*

* Fix SiteConfig

* Don't change URL.domain yet

* Not use in fastly cache purge yet

* Session store magoo

* Revert domain issue

* Add SetCookie middleware

* Temporarily remove cookie middleware and release tasks

* Re-enable SetCookieDomain

* Add some more comments, get it ready for testing

* Remove host from url options and temporarily show errors

* Allow forwarded host to be cookie

* Fix typo

* Change invalidAuthenticityToken

* Properly set app domain

* Proper Fastly cache

* Remove config.app_domain

* Remove config.app_domain

* Explicitely set remember_user_token

* More play with cookies

* Fiddle with remember_user_token

* Add remember_user_token changes

* Monkeypatch devise

* Sessions controller

* Include rememberable

* Include rememberable

* Proper cookie monkeypatch

* Proper cookie monkeypatch

* Proper cookie monkeypatch

* Remove extra cookie code

* User sign in tweak

* Close the loop

* Experiment with carrierwave public_url

* Finalize carrierwave monkeypatch

* Remove async controller specs

* Change some tests

* Update domain test

* Remove temporary production.rb change

* modify cookie logic

* Remove unneeded changes

* Remove unneeded changes

* Explicitely pass host

* Fix linting

* Fix social image test

* Add some cookie tests

* Modify article url

* Fix canonical urls

* Fix typo

* Remove sessions controller

* Remove devise monkeypatch

* Add monkeypatch

* Remove elsif

* Update spec/helpers/application_helper_spec.rb

Co-authored-by: Michael Kohl <citizen428@dev.to>

* Adjust remember_cookie_sync

* Remember user token experimentation

* Fiddle with devise

* Properly configure devise

* Fix typo

* Fix formatting issue

* Add comment about middleware

* Fix typo

Co-authored-by: Vaidehi Joshi <vaidehi.sj@gmail.com>

* Remove commented-out code

Co-authored-by: Michael Kohl <citizen428@dev.to>
Co-authored-by: Vaidehi Joshi <vaidehi.sj@gmail.com>
2020-09-11 09:38:34 -04:00
Ben Halpern
244195fc92
Move mailchimp API key to app logic (#10270) 2020-09-10 13:25:55 -04:00
Mac Siri
9ebd742712
[deploy] Reintroduce sticky_nav changes (ab81f36 & 7f92855) (#10263)
* Revert "[deploy] Revert removal of unneeded eager load (if needed) (#10179)"

This reverts commit 11c7b148da.

* Revert "[deploy] Revert "Migrate ProfileImage to Images::Profile (#10055)" (#10149)"

This reverts commit 5657067e55.
2020-09-09 15:33:13 -04:00
rhymes
2d881ef571
Routine rubocop fixes (#10237) 2020-09-08 12:06:47 -04:00
Molly Struve
70b5a3530c
[deploy] Optimization:Limit Column Select for Sticky Nav Articles (#10197) 2020-09-03 16:46:28 -05:00
Ben Halpern
11c7b148da
[deploy] Revert removal of unneeded eager load (if needed) (#10179) 2020-09-02 19:51:56 -05:00
Ben Halpern
7f928555a5
[deploy] Remove unneeded eager load (#10168) 2020-09-02 16:43:41 -04:00
Molly Struve
5657067e55
[deploy] Revert "Migrate ProfileImage to Images::Profile (#10055)" (#10149)
This reverts commit ab81f36a38.
2020-09-01 18:28:58 -05:00
Mac Siri
ab81f36a38
[deploy] Migrate ProfileImage to Images::Profile (#10055) 2020-09-01 17:16:03 -04:00