Commit graph

1403 commits

Author SHA1 Message Date
Ben Halpern
03c28a5671
[deploy] Create private group chat channel for orgs (#7270)
* WIP chat channel for orgs

* Finalize

* Enable upsert functionality for role switch

* Private group chat

* Rearrange permissions code

* fix typo
2020-04-16 17:02:06 -04:00
Andy Zhao
f5ec83653c
[deploy] Finalize and add response templates feature (#7068) 2020-04-16 15:53:29 -04:00
Alex
cc6249beff
[deploy] Update whitelisted params on Fastly on deployments (#7279)
* Add Fastly whitelisted params

* Create FastlyVCL::WhitelistedParams.update service

* Add specs

* Create rake task to call new service

* Add rake task to setup script

* Add documentatoin

* Move sort inside params_to_array method

* Rename VCL_REGEX to VCL_DELIMITER

* Add PR URL to docs

* Move snippet name to SNIPPET_NAME constant

* Refactor setting content

* Rename params_to_array to params_to_sorted_array

* Change guard and log success on update

- Return early if params are equal
- Log success message to Rails.logger on update
- Log params diff to Datadog

* Return true explicitly

* Move rake task execution from to release-tasks

* Remove unnecessary environment guard in task

* Remove duplicate code param

* Refactor string from build_content

* Remove reliance on sort

* Reorder logging to implicitly return true

* Update docs to reference release-script.sh

* Update docs

* Update whitelisted params

* Fix params_updated? bug and add more specs

* Remove duplicate param...oopsie!
2020-04-16 15:11:57 -04:00
rhymes
0a6be8b967
[deploy] Improve some validations (#7335)
* Validations

* Fix specs

* Revert twitter tag change
2020-04-16 18:59:12 +02:00
Molly Struve
8f6fb35404
flaky spec fix: compare org updated_at properly (#7336) 2020-04-16 11:37:07 -05:00
Molly Struve
01adfc377c
[deploy] Index all readinglist Reactions into Elasticsearch (#7310) 2020-04-16 09:36:05 -05:00
rhymes
b830cdc5b8
Remove harcoded shop strings (#7319) 2020-04-16 14:51:23 +02:00
Ben Halpern
645920c09f
[deploy] Remove milestone sends (#7313) 2020-04-15 19:34:10 -04:00
Jitendra Rajpurohit
7656d10e2b
Generalized shop url by creating SiteConfig field for it (#7262)
* added shop_url to SiteConfig

* fixed issue in show config erb file

* add spec for shop_url SideConfig

* added spec

* handles blank shop_url case

* code review changes
2020-04-15 16:28:34 -04:00
Molly Struve
467e0a1b5e
[deploy] display link liquid tgs for articles that may have been deleted (#7305) 2020-04-15 16:28:01 -04:00
Molly Struve
223703f0d3
[deploy] Update URLSearchParams to handle arrays correctly for Rails (#7300) 2020-04-15 14:58:18 -05:00
Ben Halpern
2c6a4b4ecf
[deploy] Make adjustments in ld+json logic (#7307)
* Make adjustments in ld+json logic

* Add github url
2020-04-15 15:50:48 -04:00
Molly Struve
817f12c788
no need to use search_id for indexing worker (#7304) 2020-04-15 15:35:12 -04:00
Julianna Tetreault
fd9fdebc0b
[deploy] Migrate from Schema.org to JSON-LD (#6956)
* Add JSON-LD in place of schema.org in _video_player.html.erb

* Remove unnecessary tags around JSON-LD to clean up templates

* Fix indenatation and remove extra elements from show.html.erb and _profile_header.html.erb

* Remove empty line from articles/show.html.erb

* Clean up JSON-LD commas across erb templates

* Revert articleBody changes, adjust nesting, and remove extra quote

* Add application/ld+json to allowed_types in .erb-lint.yml

This addition makes it so that the no verify flag is no longer required

* Add additional data for Articles, Users, and Orgs to better SEO

* Add additional data to JSON-LD structures
*Add sameAs data to articles/show.html.erb
*Add sameAs data to users/show.html.erb
*Make adjustments to VideoObject data in _video_player
*Make adjustments to Org in _profile_header
*Add removed erb back to all erb templates

* Refactor code to fix syntax Google syntax errors
* Add missing double quotes to values
* Remove unnecessary meta tags from _video_player.html.erb
* Add additional key-value pairs to data structures
* General code clean up

* Clean up existing data structures
  *Remove useless meta tag and replace with a tag
  *Small refactor to users/show.html.erb data

* Extract user json-ld out of users/show.html.erb
  *Move json-ld logic to stories_controller
  *Use user_json_ld variable in place of entire data structure
  *Set user_json_ld as a before_action in the controller

* Add specs around JSON-LD data in templates
  *Add request spec for users/show.html.erb
  *Add request spec for articles/show.html.erb
  *Add request spec for _video_player.html.erb
  *Add request spec for _profile_header.html.erb
  *WIP: Fix pending specs for all templates

* Remove useless meta tags from users/show and _profile_header.html.erb

* Add additional test coverage to users/show.html.erb
  *Add additional tests to user_show_spec
  *Ensure that all tests pass
  *Small refactor to users/show.html.erb JSON data structure

* Add additional test coverage around JSON-LD data
  *Add more robust tests to template specs
  *Remove unnecessary comments from specs
  *Uncomment pending specs

* Adjust modified date to be more readable in article specs

* Refactor spec to be more readable and update GitHub username test

* Remove meta erb from articles/show.html.erb

* Remove meta data from _video_player.html.erb

* Clean up useless codeand whitespace for final review

* Extract users/show data structure from template into StoriesController
  * Remove JSON-LD object from users/show.html.erb
  * Place JSON-LD for users/show.html.erb in StoriesController
  * Store user_json_ld in set_json_ld method in StoriesController
  * Call user_json_ld variable in script tag in users/show
  * Clean up trailing commas and refactor articles/show.html.erb
  * Remove redundant user/profile_header_spec.rb

* Remove unnecessary code from _profile_header and articles/show
  * Remove Organization from articles/show.html.erb
  * Remove unnecessary comments from _profile_header.html.erb

* Extract user_json_ld into separate methods to fix Code Climate failures

* Rename user_profile_details and user_same_as methods to be more explicit

* Refactored user_json_ld methods to use symbols instead of strings
  * Use symbols to fetch keys from a hash instead of strings
  * Changed user_url in data structure

* Removal of erb tags and general clean up

* Revert schema changes

* Remove unnecessary quotation marks
2020-04-15 15:03:05 -04:00
rhymes
f5166e28a8
Nullify audit logs on users delete (#7275)
* Nullify audit logs on users delete

* Fix specs

* Set user as optional and test moderator audit log page

* Fix spec
2020-04-15 18:26:16 +02:00
ludwiczakpawel
d646b5e3f3
New sidebar navigation (#7212)
* new sidebar nav

* whoops

* update on reading list badge

* color

* titles + order

* themes

* remove unused images

* tests & fix

* Fix spec

* Fix specs

* sponsors update

Co-authored-by: rhymes <rhymesete@gmail.com>
2020-04-15 18:16:33 +02:00
rhymes
d6e47a03c7
[deploy] Authentication refactoring - step 1 (#7259)
* Add Authentication providers

* Making strides on refactoring

* New usr from Twitter

* Existing Twitter user

* Existing user Github

* Test skip_confirmation!

* Refactor a bit and add simplecov groups

* Test user already logged in

* Rename to Authentication::Authenticator

* Refactor to a common class

* Add existing user test for twitter login

* Refactor global handler

* Fix spec and comment Twitter provider

* Update comments and strategy TODO

* Move providers loading code to Authentication::Providers

* add SubclassResponsibility error

* Use delegation
2020-04-15 12:13:10 -04:00
Alex
83e92cbfd3
Rescue error and add specs (#7292) 2020-04-15 10:34:00 -04:00
Molly Struve
b10668a454
[deploy] Create a Bulk Index Elasticsearch Worker (#7265) 2020-04-15 09:08:59 -05:00
Ridhwana
6c8cbabdff
Remove unused file and fix social media icon css on information page (#7295)
* chore: does not look like this file is being used anywhere

* fix: the svg's didn't seem to be resizing because we did not have a viewBox tag on the svg

* chore: update spec file
2020-04-15 13:22:28 +02:00
Molly Struve
c5bca2ba49
Record DB counts with count, Fallback on estimated_count (#7286)
* call count on model and if that times out fallback on estimated

* improve specs
2020-04-15 10:53:21 +02:00
Michael Kohl
0d59f92670
Add CodeNewbie staff redirect (#7272) 2020-04-14 20:54:42 -04:00
Josh Puetz
73c16c9a9d
[deploy] Tweak comments in feed (#7261)
* Only include needed fields for top comments

* Test for included user info in comments in feed

* Omit hidden and deleted comments from feed json

* Optimize selected columns from comment

* Revert field selection to prevent user n+1

* Add profile_image_90 to users in comments in feed
2020-04-14 15:23:14 -05:00
Andy Zhao
50ba93c232
[deploy] Add character limits for reported_url and message (#7283)
* Add character limits for reported_url and message

* Use one line for reported_url validation

* Revert accidental removal of index line

* Adjust length limits to account for production values
2020-04-14 15:57:21 -04:00
Michael Kohl
c8845e647a
[deploy] Remove Google Analytics page counts (#6969)
* Remove Google Analytics page counts

* Update spec

Co-authored-by: rhymes <rhymesete@gmail.com>
Co-authored-by: Ben Halpern <bendhalpern@gmail.com>
2020-04-14 10:44:05 -04:00
Michael Kohl
4f68e1907e
Try out parallel Travis builds (#6645)
* Try out parallel Travis builds

* Add more Bundler options

* Appease the spec gods

I don't think we actually need Timecop.freeze in this spec

* Try inlining factories

* Make sure the time has actually changed

* Add CodeClimate coverage for parallel build

* Explicitly list jobs, don't rely on matrix expansion

* Merge master and move storybook to after_script

* Add missing environment variable

* Remove old cc-test-reporter config

* Move yarn build-storybook back to script, remove conditional coverage upload

* Actually remove yarn build-storybook from after_script

* Bump Octokit so we can build again

Co-authored-by: rhymes <rhymesete@gmail.com>
2020-04-14 10:25:53 -04:00
Alex
b51852e866
[deploy] Remove fastly-rails gem (#7257)
* Remove fastly-rails gem

* Remove FastlyRails.configuration references

* Remove FastlyRails initializer
2020-04-14 10:11:27 -04:00
rhymes
4e72579d6f
[deploy] Validate API key description length (#7274) 2020-04-14 15:40:56 +02:00
Molly Struve
07050baa28
[deploy] Refactor search_documents Method Into Search Base.rb Class (#7260) 2020-04-14 08:39:50 -05:00
Molly Struve
91972dd2c4
ensure that when Tag and ActsAsTaggableOn::Tag are updated their respective related docs are as well (#7218) 2020-04-14 08:38:09 -05:00
Molly Struve
7103b406ad
ignore reaction not found errors when trying to index them (#7258) 2020-04-13 13:45:21 -04:00
Alex
7dfffac3db
[deploy] Copy ActiveRecord methods from fastly-rails (#7145)
* Add comment referencing Fastly gem

* Create purgable concern and include it

* Typo: deprecate --> deprecated

* Include Purgable on the Tag model

* Rename Purgable to Purgeable

* Reorganize fastly and service methods in Purgeable

* Add and fix specs

* Add development env guards
2020-04-13 10:46:15 -04:00
Molly Struve
e4de9c2742
[deploy] Resync Elasticsearch Docs that had Previous Bugs (#7230) 2020-04-13 09:39:19 -05:00
Josh Puetz
802e225a07
[deploy] Add top comments to articles feed (#6988)
* Add 'top_comments' to article feed

* Only include root comments

* Cache and eagerly load top comments

* Clear top comments cache when article score is updated

* Add articles.top_comments to bullet whitelist

* Update app/models/article.rb

Co-Authored-By: rhymes <rhymesete@gmail.com>

* Remove limit in top_comments association, remove Rails caching of top comments

* Remove unnecessary test

Co-authored-by: rhymes <rhymesete@gmail.com>
2020-04-13 10:21:03 -04:00
Michael Kohl
ca23b8e1c6
[deploy] Introduce ClassifiedListingCategory model (#7172)
* Add ClassifiedListingCategoryModel

* Add data update script for classified listing categories

* Add foreign key to reference

* Move data update script to temporary rake task

* Update factory

* Add and fix specs

* Fix typo

* Fix migration

* Correctly add unique index

* Fix migration

* Add slug column to classified listing categories

* Add unique index for slug column
2020-04-13 09:01:58 -04:00
rhymes
b2fab26918
[deploy] Fix broken RSS settings page (#7238) 2020-04-12 18:28:51 -04:00
rhymes
540dd21ea0
[deploy] Use atomic increment for rate limiter counters (#7209)
* Use atomic increment for rate limiter

* Increase testing

* Fix spec with memory store

* Test uploading rate limit with Redis
2020-04-11 12:11:32 -04:00
Ben Halpern
b0a95cdcd7
[deploy] Small design and functionality touches to /connect (#7234)
* Small design and functionality touches to /connect

* Small fixes

* Fix test

* Fix test
2020-04-11 10:56:52 -04:00
rhymes
34848a4209
Upgrade Rubocop to 0.81 (#7219)
* Upgrade rubocop to 0.81.0

* Reordered rubocop file and updated it

* Regenerate todo

* Correct some things

* Fix specs
2020-04-11 10:10:04 +02:00
Andy Zhao
ea1c0b85af
Add single resource admin roles for a few internal pages (#7202)
* Add resourcify to allow single resource admin access

* Override application_controller resource b/c custom name

* Don't resourcify audit log because moderator actions model exists

* Add tests for checking single resource admin access

* Use rails path helpers

* Add happy path spec for single resource admin, negative reactions
2020-04-10 12:51:19 -04:00
Ben Halpern
358edf8817
Add canonical url to /new (#7206) 2020-04-10 12:49:00 -04:00
Anna Buianova
c975838013
[deploy] Replaced overriden pages with placeholders (#7210)
* Remove dev-specific info from a couple of pages

* Replace hardcoded pages that are already overriden on prod with placeholders

* Fix pages' specs
2020-04-10 12:48:21 -04:00
Molly Struve
10b094b4b6
[deploy] refactor data syncing methods to use a base class and take a single argument (#7204) 2020-04-10 11:11:35 -05:00
Ridhwana
c627f4e98a
Replace DEV with the community name... almost everywhere (#7211)
* chore: search and replace carefully

* fix: small updates

* fix: spec contains DEV hardcoded

* chore: update on badges

* feat: upcase
2020-04-10 17:03:16 +02:00
Anna Buianova
406cc95fcd
Remove /sponsorship-info (#7213) 2020-04-10 17:29:09 +03:00
Molly Struve
26acabce51
[deploy] add custom sorting and scoring for feed content (#7199) 2020-04-09 18:30:27 -04:00
Alex
10c1882548
[deploy] Log image data to Datadog for file name too long error (#7200)
* Log image data to Datadog for file name too long error

* Add guard for when no images are found
2020-04-09 18:25:26 -04:00
Ridhwana
e626cfa933
[deploy] Split out social media options (Important: post deployment task to be run) (#7173)
* feat: define the different social media handles

* feat: dynamically render all the social media fields

* feat: ensure that the social media handles are permitter and dealt in a separate path from the rest

* test: update  social_networks_handle to social_media_handles

* feat: update the sidebar to use different social media

* feat: update the twitter:site meta handle to be  SiteConfig.social_media_handles["twitter"]

* feat: update the a links to tweets

* feat: make the links dynamic and only show those that there is a value for

* refactor: make @ThePracticalDev dynamic

* refactor: make @ThePracticalDev dynamic

* feat: add dynamic social media handles

* chore: rename values

* chore: remove extra social handles

* chore: some spacing

* chore: remove lines

* rafector: user rails-settings-cached type: :hash to set the type and the defaults

* feat: use nil and blank instead of "" and empty

* chore: move the social media handles into the right box

* refactor: rearrange model placement based on the UI

* chore: code climate

* refactor: comments from PR

* chore: rename the ff

* chore: amended twitter username

* chore: add a temporary rake task

* feat: update names

* chore: why am i using the old syntax :(

* chore: revert dynamic erb variable in offline.html
2020-04-09 19:51:11 +02:00
rhymes
b8f2390cb5
Fix Datadog auth failure payload and add tests (#7150)
* Fix Datadog auth failure payload and add tests

* Use functional Ruby properly
2020-04-09 09:54:51 +07:00
Molly Struve
b652147e7a
throttle API get and write endpoints (#7167) 2020-04-08 19:17:51 -04:00