Commit graph

389 commits

Author SHA1 Message Date
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
Molly Struve
8a44eb9421
[deploy] Refactor:Cleanup Naming and Optimize Email Digest Code (#10054) 2020-08-28 13:36:11 -05:00
Molly Struve
4786cbddfc
[deploy] Optimization:Dont Send Multiple Digest Emails in a Day (#10042) 2020-08-28 12:25:32 -05:00
Molly Struve
cd1db855b6
[deploy] Optimization:Break Send User Digest Emails in Single Jobs (#10043) 2020-08-28 06:37:27 -05:00
Ben Halpern
bd6a996bce
[deploy] Remove AWS SDK and private endpoints completely (#9978)
* Initial work to remove aws_sdk

* More work

* Add tests

* Typos and cleanup

* Fixed typo and misc

* Fix test typos

* Update spec

* Remove functioncaller code

* Add comment to bump tests :)

* Fix spaminess calc
2020-08-26 10:30:31 -04:00
Vaidehi Joshi
9e40e68682
Allow Nginx cached static content to be purged (#9857) [deploy]
* Only bust_fastly_cache if fastly is enabled

* Conditionally bust nginx cache from CacheBuster#bust

* Don't _actually_ call out to openresty

* Remove redundant check for FASTLY_API_KEY in CacheBuster

* Clean up and add a spec

* Do not call .purge_ methods if fastly is not configured

* Add OPENRESTY_ ENV vars to .env_sample

* Remove extra / prepending path

* Remove ConfigurationError, clean up Purgeable concern

* Use raise instead of fail like fastly-ruby

* No longer check for Rails.env.production?

* Use let! to create article in BustMultipleCachesWorker spec
2020-08-21 09:31:23 -07:00
Molly Struve
8f90305953
Bug Fix:Dont Fail Jobs If Badge Does Not Exist (#9906) 2020-08-20 17:59:37 -04:00
Molly Struve
21ebe6d0cd
[deploy] Bug Fix:Skip Busting Edge Caches if Fastly API Key is not Present (#9900) 2020-08-20 14:44:05 -05:00
Ben Halpern
6c71369df5
[deploy] Add community_name to site config (#9864)
* Add community_name to site config

* Fix a spec

* Remove SiteConfig from constants

* Change subjects to method

* Fix subjects method

* Fix linting
2020-08-19 14:54:40 -04:00
Molly Struve
469ce3c533
Refactor:Move Streak Badges to Sidekiq Cron (#9872) 2020-08-19 14:53:03 -04:00
Ben Halpern
f452086280
[deploy] Move community_copyright_start_year to SiteConfig (#9863)
* Move community_copyright_start_year to SiteConfig

* Properly translate year to string

* Change year logic

* Add env default to copyright year

* Fix logic

* Fix codeclimage issue

* Add view element

* Add constants in properly and use dynamic date
2020-08-19 10:19:11 -04:00
Molly Struve
960c51fbc0
[deploy] Refactor: Move beloved comment Badge to Sidekiq Cron (#9861) 2020-08-19 09:12:45 -04:00
Brunno Souza
5b7db97336
Reduce arguments method buff! at model buffer_update (#9793)
* Reduce arguments method buff! at model buffer_update

* Rename args and remove brackets as suggested

* Remove unnecessary args and improve buffer class

* Change constant name at buffer update and how call them
2020-08-18 19:42:01 +02:00
rhymes
f5d35c6506
Rubocop: Enable and fix Style/StringConcatenation (#9844) 2020-08-18 14:50:15 +02:00
Molly Struve
55e7e12e78
[deploy] Refactor:Move Yearly Badge Awarder to Sidekiq Cron (#9836) 2020-08-17 20:19:14 -04:00
Molly Struve
702cece697
Flaky Spec Fix:Ensure We Find Articles With Tags and Dont Cache Count for Class Method (#9833) 2020-08-17 18:38:26 -05:00
Mac Siri
a081810946
[deploy] Migrate ImageResizer to Images::Optimizer (#9720) 2020-08-14 09:44:30 -04:00
Ben Halpern
eabb24f40b
[deploy] Make read next area work for smaller communities (#9667)
* Make read next area work for smaller communities

* Fix offset
2020-08-07 14:15:42 -04:00
Mac Siri
3c5b01d490
[deploy] Implement ImageResizer module (#9652)
* Create ImageResizer module

* Refactor HtmlVariant

* Refactor CloudCoverUrl

* Fix broken spec

* Refactor PodcastEpisode

* Refactor Message

* Fix broken spec

* Refactor Articles::SocialImage

* Refactor ProfileImage & add spec

* Fix broken spec
2020-08-07 11:04:31 -04:00
Brunno Souza
00b9d0ea12
Refactoring ChatChannel - distributing into services (#9253) 2020-08-07 10:41:34 +02:00
rhymes
5a2cae4fbb
Rubocop: enable and fix new Rails cops (#9537)
* Enable new Rails/* cops and use autocorrect on them

* Fixed Rails/PluckInWhere leftovers

* Fix Rails/DefaultScope

* Enable and fix Rails/PluckId

* Fix manual mistake with forcing autocorrection on Rails/PluckId

* Apply PR feedback to remove Rails/PluckId inline disables

* Apply PR feedback to get rid of Rails/PluckInWhere inline
2020-07-29 11:14:19 +02:00
Jacob Herrington
b26919e79b
[deploy] Fix archived readinglist reactions affecting count (#9044)
* Fix archived readinglist reactions affecting count

The reading list count badge on the home page currently takes all
readinglist reactions into account, but we shouldn't be including those
that are marked "archived."

Secondarily this fixes a bug that affects only admin users: all
reactions created by admins were given the status "confirmed"
instead of the expected "valid" status.
2020-07-24 14:18:35 -05:00
narender2031
0cfc593150
[deploy] 🚀 Feature: Chat channel request manager (#9305)
* Feature 🚀 : Ability to delete messages in chat channels

- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime

* Minor Bug 🐞: Show message action only for current user

- User can delete or edit their own messages

* Test cases added

* Bug 🐞: Update message id for receiver

Message id was not sent to receiver by pusher

* Refactoring🛠: Message controller refactoring

* Test Cases📝 : Specs for Delete message added

* Feature 🚀 : Ability to edit messages

* Test Cases📝 : Specs for Edit message added

* Merge conflict resolved

* request manager info API

* 👨🏼‍🎨 Design added for requestCenter

* integrate request manager with API

* remove unused argument

* fix request manager card UI

* fix request card UI

* add request manager button

* handle no invitaion UI

* fix badge UI

* add request specs

* add jest specs

* remove the presenter

* fix code climate issues

* fix queries

* fix runbocop issues

* fix PR suggestions

* remove empty lines

Co-authored-by: Sarthak Sharma <7lovesharma7@gmail.com>
2020-07-22 09:12:09 -04:00
rhymes
6cd64c4071
Rubocop: enable and fix Style/Send and Style/Next (#9366)
* Enable and fix Style/Send

* Enable and fix Style/Next

* Fix private cookies send

* Fix merging indentation issues
2020-07-20 16:28:00 +02:00
Michael Kohl
f28deb9e71
Add regex to check for possible XSS attempts (#9400)
* Fix ruby linting issues

* Added test for uncovered branch

* Fixed typo

* Address PR comments

Co-authored-by: Brian Mayo <ioprotium@gmail.com>
2020-07-20 16:09:26 +02:00
Michael Kohl
a4dadfb728
Standardize ActiveRecord order clauses (#9395)
* Change simple order clauses

* Change nested order clauses
2020-07-20 10:00:51 -04:00
rhymes
696c712883
Rubocop: routine fixes (#9345)
* rubocop -A

* Fix Style/HashLikeCase

* regenerated todo file
2020-07-16 18:18:13 +02:00
rhymes
f1ec04a0c9
Rubocop: move dot in multi-line calls to leading position (#9262) 2020-07-16 15:51:11 +02:00
Ben Halpern
da6a6739e5
[deploy] Invite users to join and create password (#9294)
* Initial invitation work

* Add more invitation code

* Add proper registration page

* Fix up tests

* Fix failings

* Fix spec

* Add self-serve auth config

* Add registered condition

* Change profile image call and registered_at test

* Change comment

* Fix copy test

* Stub emojipedia

* Linting

* Add registered at to factory

* Ensure registered for user tag

* Update app/views/internal/invitations/index.html.erb

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

* Update app/controllers/internal/invitations_controller.rb

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

* Slight changes

* Update recover password flow

* Update app/views/internal/invitations/index.html.erb

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

* Update app/controllers/internal/invitations_controller.rb

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

* Update db/schema.rb

Co-authored-by: Michael Kohl <citizen428@dev.to>
2020-07-15 11:37:19 -04:00