Commit graph

2600 commits

Author SHA1 Message Date
Alex
0f32eb9db0
Add Elasticsearch index for classified_listings (#6031) [deploy] 2020-02-12 18:24:01 -05:00
Vaidehi Joshi
f71c8b16e7
Allow dynamic authoring of welcome notifications (#6045) [deploy]
* Add "Welcome" type to Broadcasts, allow dynamic "authoring" of Broadcasts

This adds a new `type_of` to the Broadcast model: "Welcome". As we begin to create a new "welcome notification" workflow, we'll categorize them by making them all of the same type.

This also adds a concept of a "welcoming user", which can be set via an ENV var. The WELCOMING_USER_ID will allow us to explicitly set (and change) which user in the database is the one that "sends" welcoming notification. In production, we plan for this to be dev.to/sloan.

* Allow WelcomeNotificationWorker to accept + send any kind of broadcast

This abstracts out the logic of deciding which broadcast to send from the woker into the calling method. This will help us send many different kinds of welcome notifications using one, resuable worker class.

* Raise if a Notification can't be created

* Add STAFF_USER_ID as an ENV var

This is in preparation for moving away from SiteConfig.staff_user_id, and replacing it with an ENV var. We will need to set this in production first, and then make a separate PR to replace all instances of staff_user_id with the newly-set ENV var.
2020-02-12 13:50:37 -08:00
Michael Kohl
2a0a89239c
Add health check endpoint for Mailchimp unsubscribe webhook (#6034) [deploy] 2020-02-12 15:55:21 -05:00
rhymes
5037753163
Change error styling from syntax highlighting for a better UI in all themes (#6004) [deploy]
* Remove error styling for a better UI in all themes

* Use text shadow to highlight syntax error
2020-02-12 15:25:00 -05:00
Molly Struve
acfdd11b50
update cluster settings to prevent auto index creation, update destroy to remove ALL indexes (#6042) 2020-02-12 15:21:38 -05:00
Mac Siri
a31e15f90d
Skips verify_authenticity_token in MailchimpUnsubscribesController (#6038) 2020-02-12 15:18:50 -05:00
Michael Kohl
06d78e3676
Fix API documentation link (#6036) 2020-02-12 15:08:46 -05:00
rhymes
1df24046d8
Small API controllers refactoring (#6021) [deploy]
* TagsController inherits from ApiController
* Let ApiController inherit from ActionController::Base to have its own lifecycle
* Remove unused method
* Use only one respond_to :json for the entire API
* ApiController inherits from ActionController::Base
* Use Pundit only where needed
2020-02-12 11:51:42 -05:00
Lucas Hiago
d0b4ba2648
Change BustReactableCacheJob to BustReactableCacheWorker and move to sidekiq (#5582) [deploy] 2020-02-12 11:50:40 -05:00
Mac Siri
6b481166fe
Add unsubscribe option to badge and connect emails (#6027) 2020-02-12 10:48:51 -05:00
Josh Puetz
38622317b7
Consolidate server side main article feed logic (#5953) [deploy]
* Consolidate `.decorate` calls

* Move Activerecord finders out of main stories feed partial

* Add back in decorates to sticky_articles partial

* Combine top and new articles returned from StoriesController

* Extract feed construction logic to a service

* Some PR tweaks (naming)

* Quick test fix
2020-02-12 08:43:20 -06:00
Nick Taylor
56b7410983
Fix dev shop logos style (#6028) [deploy] 2020-02-11 18:23:45 -05:00
Andy Zhao
0f9b52f800
Use post instead of get for CSRF (#6026) 2020-02-11 17:56:11 -05:00
Maykon Menezes
cefa95b92d
fix response when article can't be found (#5999) 2020-02-11 15:23:44 -05:00
Ben Halpern
2add3ae300
Replace dev.to with ApplicationConfig in a few locations (#6008) [deploy]
* Replace dev.to with ApplicationConfig in a few locations

* Update app/labor/badge_rewarder.rb
2020-02-11 14:48:27 -05:00
Michael Kohl
050a2e2726
Implement Mailchimp unsubscribe webhook (#5804) [deploy] 2020-02-11 14:25:48 -05:00
Nick Taylor
0119918237
Homepage left side bar tags followed (#5918) [deploy]
* SASS formatting in action.

* Unnested .sidebar-nav-element in SASS

* Created the <TagsFollowed /> component.

* Mini refactor.

* Left side bar uses <TagsFollowed /> component now.

* Accomodating InstantClick

* Small refactor and added some comments.

* The homepage webpacker pack only needs to be loaded once.

* Added tests for the <TagsFollowed /> component.

* Modified the receive InstantClick callback as per their docs.

* Reverted the data-no-instant on he homepage bundle. It seems to cause issues in certain scenarios.

* Just some tweaks to <TagsFollowed /> component.

* Removed CSS for general img tag in context of sidebar as it does not appear to be used.

* Fixed copy paste error from JSX to HTML.

* Fixed <img /> styles for arbitrary sponsorship widget.

* Fixed a regression that a Capybara test caught.

* Fixed user followed tags on home page tests.

* Fixed logic for loading user data on homepage.
2020-02-11 12:09:23 -05:00
Molly Struve
3fed9338d2
Index Tags to Elasticsearch after they are created (#5958) [deploy]
* Index tags to Elasticsearch after they are created
* add rules_html to Tag index since we show it in search drop down
* change get method to find_document to make it more explicit
2020-02-11 11:58:58 -05:00
Ben Halpern
30e2fd5017
Add /embed to list of disallowed path matches (#6019) [deploy]
In service workers, we should not be adding the shell to these views.
2020-02-11 10:24:33 -05:00
Vaidehi Joshi
c33d6936b5
Do not allow staff_user_id to be mutated (#6009) [deploy]
Allowing ids to be mutated by admins from the /internal/config pages is dangerous.
This could cause issues if an admin tries to update the SiteConfig.staff_user_id to an id that is another user's id, or to an id that isn't valid.
2020-02-10 16:35:18 -08:00
Anna Buianova
611323f508
Remove full_page from the Page TEMPLATE_OPTIONS (#5981) 2020-02-10 17:04:59 -05:00
Molly Struve
0eecdf616c
soft save notification_subscription and then check persisted (#5962) [deploy] 2020-02-10 16:37:28 -05:00
Michael Kohl
ec03ffa880
Remove unused images (#5923) [deploy]
* Remove unused images

* Restore ben.jpg
2020-02-10 08:35:11 -08:00
Anna Buianova
8fb9e4940d
Removed unused special_sidebar (#5929) 2020-02-10 10:24:56 -05:00
Alex
78a25dfd54
Validate that API article params are a Hash (#5963)
* Add check for article param being a Hash & spec

* Remove unnecessary blank line

* Move logic to private method and before_action call

* Change check_if to validate

* Use is_a? to type check

* Fix type check for specs
2020-02-10 10:24:11 -05:00
rhymes
c41d66e900
Replace ban/banned with suspend/suspended in user facing text (#5816) [deploy] 2020-02-10 10:12:53 -05:00
Alex
c98190742b
Remove Users::EstimateDefaultLanguageJob & spec (#5956) [deploy] 2020-02-07 12:40:12 -08:00
Anna Buianova
1c94ffb38e
Added template select to the pages admin form (#5952) [deploy] 2020-02-07 14:59:05 -05:00
Mohamed ABDELLANI
faad0b83e6
Handle Reactions Without Users When Sending Notifications (#5820)
* Add reaction's owner existence in the database

* Add test
2020-02-07 14:10:52 -05:00
Ben Halpern
2c07b08514
Add low-value landing pages to robots.txt disallow (#5944) [deploy]
* Add low-value landing pages to robots.txt disallow

* Update app/views/pages/robots.text.erb

* Update app/views/pages/robots.text.erb
2020-02-07 14:04:36 -05:00
Maykon Menezes
58b96f104e
create Users::EstimateDefaultLanguageWorker for Sidekiq (#5697) [deploy] 2020-02-07 13:49:02 -05:00
Molly Struve
7115d7e3ed
Eager load users when handling chat channel memberships (#5954) 2020-02-07 13:45:16 -05:00
Molly Struve
e159217dce
Remove Unused ChatChannel Indexing (#5907) [deploy]
* remove unused algolia code from chat channel

* remove new chat_channel index code and unused methods
2020-02-07 12:39:59 -05:00
rhymes
69b04d38aa
Refactor API Reactions controller and add specs (#5936)
* Add specs

* Check the object, not the ID

* Use permitted params and delete cache only after create

* Inherit from ApiController, bail if the reaction user does not exist, fix naming

* Remove superflous test
2020-02-07 12:39:24 -05:00
ludwiczakpawel
45f2a6b542
removing border-box from shecoded landing page (#5949) 2020-02-07 11:08:46 -05:00
Vaidehi Joshi
c7a1bd9449
Fix logging for dev and test environments (#5922)
* Fix logging for dev and test environments

We had some unused code for Timber in our config files for development and test.
However, this was completely clobbering Rails' default behavior of logging out to log/development.log and log/test.log. We should allow for logging in these environments in particular, and since we're not using Timber there, we can just revert to using the Rails default debugging log levels.

* Add Timber logger to specs that explicitly require it

* Restore default Rails.logger in specs using Timber logger

* Explicitly use Rails.logger in OmniauthCallbacksController

We seem to have different logger classes leaking into this controller in tests.
I'm not entirely sure why this is/haven't been able to investigate yet, but I do think we should be using the Rails.logger explicitly until we can figure that out.
2020-02-07 10:15:08 -05:00
Molly Struve
bbeb3fc79d
Ensure user is authenticated before doing onboarding Actions (#5937)
* ensure user is authenticated before doing onboarding checks

* add specs for authenticating users for onboarding updates
2020-02-07 09:56:29 -05:00
rhymes
6cd46ae2f9
Enable bullet during tests to catch N+1 early (and some cleanups) (#5930) [deploy]
* Remove unused methods

* Small refactorings

* Enable bullet in testing mode

* Remove unused eager loading for notes

* Skip bullet on rolify method

* Use .present?

* Fix method name
2020-02-07 09:02:22 -05:00
Alex
7909d9825d
Remove .first query on notifications (#5943) 2020-02-07 08:58:51 -05:00
Sebastien
665f5aac0f
Refactor ProfileImage (#5803) 2020-02-07 08:56:16 -05:00
Ben Halpern
f3c86c6377
Add mod channel automation to tags (#5731) [deploy]
* Add mod channel automation to tags

* Change mod_relations to mod_relations_admin

* Run migration properly

* Make queries consistent and fix test
2020-02-06 16:27:12 -05:00
Frederico Hasegawa
7436e70158
Onboarding JS: refactor function out of repetitive blocks (#5564) [deploy] 2020-02-06 16:00:57 -05:00
Michael Kohl
4872422373
Remove extra whitespace from text inputs in Buffer share (#5924) [deploy] 2020-02-06 15:18:58 -05:00
Andy Zhao
975a716e5e
Use simpler messaging for ghost account deletion (#5906)
* Use simpler messaging for ghost account deletion

* Add 'have questions' section

* Use same language for confirm destroy page
2020-02-06 14:31:18 -05:00
Deepu K Sasidharan
5194c009ce
Style: update height of speakerdeck tag to be avoid scaling (#5818)
* style: update height of speackerdeck tag to be avoid scaling

* style: remove incorrect padding and margin from speackerdeck tag

* add a comment
2020-02-06 14:29:34 -05:00
Nick Taylor
631867b30f
Refactored userData while working on hompage makeover. (#5916) [deploy] 2020-02-06 11:18:52 -08:00
Maykon Menezes
01dc81afa9
Move Podcasts::GetEpisodesJob to Sidekiq (#5443) [deploy]
* Refactored Podcast::GetEpisodesJob to sidekiq

* fixing specs

* removing env keys

* Change arguments to Hash

* Update specs and add spec for queue

* Update references for Hash argument

* Add comment to explain parameters of #perform

Co-authored-by: Alex <alexandersmith223@gmail.com>
2020-02-06 09:42:55 -08:00
Molly Struve
00fefe5865
Add Code To Setup the Elasticsearch Tag Index (#5919) [deploy] 2020-02-06 11:46:11 -05:00
rhymes
92f6a9f007
Fix serialization error with video_thumbnail_url (#5933) 2020-02-06 10:50:44 -05:00
Molly Struve
a972c8b892
log Notification db table size (#5920) [deploy] 2020-02-06 08:33:04 -05:00