Commit graph

427 commits

Author SHA1 Message Date
rhymes
300ba1b33f
[deploy] Decouple Twitter authentication from fetching tweets (#7920)
* Add TwitterClient::Client

* Use TwitterClient::Client for Tweet

* Test retweets

* Test assignment to user

* Fix TweetTag spec

* Remove TwitterBot

* Fix some specs

* Fix RSS Reader specs
2020-05-19 18:05:41 -04:00
Anna Buianova
c02a103c7f
Refactored creating sponsorships (#7946)
* Refactored sponsorships levels and purchasing sponsorships

* Fix partnerships tests

* Refactored creating partnerships, removed unused functionality

* Display flashes in /partnerships

* Fix views
2020-05-19 18:00:01 -04:00
Molly Struve
a326019ba4
[deploy] Use User reactions_count for Reaction Cache Keys (#7939) 2020-05-19 11:34:06 -05:00
Molly Struve
548fd21768
[deploy] Limit the User Updates (#7892) 2020-05-18 11:13:38 -05:00
rhymes
3130261384
Refactor GitHub::Client to extract Github::OauthClient for users (#7848)
* Introduce Github::OAuthClient and refactor shortcut Github::Client

* Better stubbing and fix specs

* Fix Badge rewarder

* Add dummy values for Travis

* Fix spec?

* Simplify

* Fix spec take 2?

* Is this the right one?

* Hopefully this is the last time, for realz

* Fix spec for the nth time?

* Which deity do I have to offer a sacrifice to?

* This is it

* Fix Honeycomb name
2020-05-18 14:23:55 +02:00
Molly Struve
3432c96ede
[deploy] Limit Response Template Count for Users (#7890) 2020-05-15 15:18:28 -05:00
rhymes
e104c8b5c5
Upgrade validate_url to 1.0.11 to fix load error (#7882)
* Upgrade validate_url to 1.0.11 to fix load error

* Fix spec
2020-05-15 16:17:07 +02:00
Molly Struve
dd7f51f7fa
Limit the Number of API Keys a User Can Have (#7870)
* Limit the Number of API Keys a User Can Have

* tweak error message and throw in flaky spec fix
2020-05-15 11:33:02 +02:00
Michael Kohl
c23850f795
[deploy] Credit refactoring (#7841)
* Simplify Credit model

* Use enough_credits? method
2020-05-14 18:04:26 -04:00
Molly Struve
815248884c
[deploy] Enforce Uniq Abuse Reports from Reporters (#7831) 2020-05-14 09:03:10 -04:00
Molly Struve
225b87390d
[deploy] Limit Suggestions for Social Service Posts (#7811) 2020-05-13 08:38:23 -05:00
rhymes
81fff248dd
Refactoring GitHub Repos functionality - step 1 (#7764)
* Rename find_or_create to upsert and improve validation and testing

* Add User.authenticated_through?

* Refactor settings/integrations

* Refactor profile github repositories rendering

* Refactor repos fetching

* Only fetch a single repo and improve error messages

* Remove unused code

* Cleanups

* Fix specs

* Remove trailing whitespace

* Fix spec

* Trigger Travis
2020-05-12 13:48:19 +02:00
Molly Struve
625ff37398
[deploy] Only Throttle Confirmation Emails for Existing Users (#7780) 2020-05-11 16:07:39 -05:00
Molly Struve
c47430cd20
[deploy] Only Allow Direct Channels Between 2 Different People (#7773) 2020-05-11 11:20:33 -05:00
Molly Struve
96aefa873a
[deploy] Limit User Email Changes (#7746) 2020-05-11 10:42:37 -05:00
rhymes
64943016c4
Decouple GithubReadmeTag liquid tag from GitHub auth (#7707)
* Decouple GithubReadmeTag from GitHub auth

* Remove commented code

* Remove unused VCR file

* Fix spec and improve error handling
2020-05-08 13:09:27 +02:00
Michael Kohl
7e6c2b3977
Refactor classified listing social previews (#7679)
* Refactor classified listing social previews

* Rename decorator method

* Fix overeager renaming
2020-05-06 14:00:09 -04:00
rhymes
ae8a58fec2
[deploy] Decouple GitHub authentication from fetching GitHub issues (#7660)
* Improve error handling

* Add tests for Github::Client

* Add GithubIssue validation

* Refactor GithubIssue and fix bug with pull requests

* Improve tests

* Fix PR API URL generation

* Improve logic and get rid of the issue fragment

* Fix disappeared avatar

* Improve rendering

* Activate client side caching using Redis

* Remove unnecessary file

* Add RemoveGithubIssues data update script

* Fix comma

* Forgot to disable the approvals verify text

* Apply PR feedback
2020-05-04 16:17:16 -04:00
Anna Buianova
c734457a44
Fix finding existing podcast episode by website url (#7608) 2020-04-30 19:08:17 -04:00
rhymes
7ebd95f193
Upgrade field_test to 0.3.2 (#7592)
* Make sure tests are testing the right thing

* Upgrade gem field_test to 0.3.2

* Fix things

* Add test

* Fix typo
2020-04-30 18:43:30 -04:00
Molly Struve
a4cc606291
[deploy] Remove Elasticsearch from Index Worker Names (#7594) 2020-04-29 12:12:29 -05:00
Molly Struve
4c779be2ed
[deploy] Remove ALL Algolia Code (#7577) 2020-04-29 10:11:57 -05:00
rhymes
8407bf9b4e
[deploy] Authentication refactoring: cleanups (#7576)
* Use Devise registry to list available providers

* Cleanups following Devise+Omniauth docs

* More cleanups

* Use helpers

* More cleanups

* Oops, forgot to remove these specs
2020-04-29 10:33:30 -04:00
Yechiel Kalmenson
131d11aa73
[deploy] Add optional fields to user (#7246)
* add optional fields to user

- this provides the back-end implementation for #2365

* fix mistakes in schema.rb

* renamed OptionalField to userOptionalField

* rename field column in user_optional_fields to label

* add uniqueness validation on user_optional_field labels

* scope flag uniqueness to user_id

* add indexing on label in user_optional_fields

* add optional fields to user

- this provides the back-end implementation for #2365

* fix mistakes in schema.rb

* add index on user_id for user_optional_fields

* Remove duplicate model

* Fix schema

* Re-add past indexes

* Remove old index

* Remove another old index

* add `null:false` to columns in optional fields

* add `null: false` to the migration

- Updated test to account for the null constraint

* add null:false to user_id on user_optional_tables

Co-authored-by: rhymes <rhymesete@gmail.com>
Co-authored-by: Ben Halpern <bendhalpern@gmail.com>
2020-04-28 15:42:41 -04:00
Molly Struve
d910945c74
Dont double up on cache busting and reactable updates when destroying reactions (#7568) 2020-04-28 13:34:50 -05:00
Molly Struve
ee373fa6c0
[deploy] Remove Algolia from Article Model (#7540) 2020-04-28 09:55:48 -05:00
Rafi
bdcfba7d70
[deploy] Saving youtube url (#7516)
* Saving youtube url

* Fixing description in the spec

* Optimizing youtube logo svg

* Fixing indentation of form
2020-04-27 14:14:07 -04:00
Molly Struve
a7e664fc9c
[deploy] Remove Algolia from User Model (#7454)
* Remove Algolia from User Model

* check banned on self for user

* fine have your redundant method

* remove a couple more unnecessary specs
2020-04-24 18:39:36 -04:00
Molly Struve
94f3a4b6fd
[deploy] Remove Algolia from Podcast Episodes (#7489) 2020-04-24 18:36:13 -04:00
rhymes
f5a6ff32cc
Finalize Slack messengers refactoring (#7484)
* Remove dead code

* Rename SlackBotPingWorker to Slack::Messengers::Worker

* Remove useless Slack mock

* Fix specs
2020-04-24 21:15:10 +02:00
Michael Kohl
9df68f3920
Use new classified listing categories (#7250)
* Add ClassifiedListingCategoryModel

* Add data update script for classified listing categories

* Refactor and fix specs

* Resolve conflict

* Incorporate PR feedback
2020-04-23 10:06:58 +07:00
Josh Puetz
98365c878e
Parse comment html as fragments instead of docs (#7419) 2020-04-21 15:01:44 -05:00
rhymes
e97d2ccf63
[deploy] Improve badge slug generation (#7386)
* Fix badge generation and add tests

* Add unique index to badges slug
2020-04-20 15:47:44 +02:00
Fernando Valverde
f2ee0378f9
[deploy] Decorator podcast episode metadata (#7303)
* Moves podcast episode metadata to decorator

* Updates the podcast episode metadata to use image_url

* Syntax tweaks, initializeMedia() fix for initialized audio & brought back use strict
2020-04-17 12:52:11 -06:00
rhymes
1b93666b3b
[deploy] Add user_id presence validation for Identity (#7365)
* Add user_id presence validation for Identity

* Remove duplicated validation

* Save user within build_user

* Fix typo

* Fix spec with in memory user
2020-04-17 20:02:26 +02:00
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
rhymes
0a6be8b967
[deploy] Improve some validations (#7335)
* Validations

* Fix specs

* Revert twitter tag change
2020-04-16 18:59:12 +02:00
Molly Struve
817f12c788
no need to use search_id for indexing worker (#7304) 2020-04-15 15:35:12 -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
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
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
rhymes
4e72579d6f
[deploy] Validate API key description length (#7274) 2020-04-14 15:40:56 +02: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
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
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
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
Molly Struve
2048bf00f7
[deploy] keep articles updated in Elasticsearch when organization is updated (#7154) 2020-04-08 10:49:06 -05:00