Ben Halpern
42a5124fe4
Clean up videos page and add tests ( #2315 )
2019-04-05 16:05:50 -04:00
Abraham Williams
b98565a931
Update rubocop to 0.67 ( #2313 ) [ci skip]
2019-04-05 12:55:13 -04:00
Anna Buianova
1b9f2432f6
Conditional validations for user github_username and twitter_username #2061 ( #2312 )
...
* Conditional validation for usernames
* Allow nil, not blank for usernames
2019-04-05 11:35:26 -04:00
Ben Halpern
d7e2a07064
Finalize suggest-a-tweet functionality ( #2310 )
2019-04-04 19:23:03 -04:00
Ben Halpern
1552df98d2
Add ability for trusted users to suggest social copy for posts ( #2306 )
...
* Add ability for trusted users to suggest social copy for posts
* Fix schema
* Fix tests
* Fix test
2019-04-04 17:01:58 -04:00
rhymes
5e9867ec56
Simplify AnalyticsService code ( #2308 )
...
* Add basic tests for Analytics service
* User/Organization are always required
* Add some data to the test
* Use queries and date times
* Fix AnalyticsService interface in the controller
* s/HTTP_API_KEY/api-key
* Defend against nils and support datetime objects
* Update app/services/analytics_service.rb
Co-Authored-By: rhymes <rhymesete@gmail.com>
* Use SQL sum, not Rails sum
* Group average_read_time
* Use SQL, not Rails
* Use ISO date
* Fix specs
2019-04-04 16:07:57 -04:00
Mac Siri
fc39f24ee3
Migrate feature test to system test ( #2301 )
...
* Move all features to system
* Remove database_cleaner & apply use_transactional_fixtures
* Move rspec-retry to :test
* Update Capybara config
* Update rails_helper
* Fix user_visits_a_comments_page_spec.rb
* Fix lint
2019-04-04 12:15:10 -04:00
Andy Zhao
3e89796d9d
Add API Analytics Endpoints ( #2293 )
...
* Add API endpoints for analytics
* Remove comment and spacing
* Use proper time formatting
* Refactor and clean up some logic
* Add pro and org member traits
* Use shared examples for analytics API spec
* Add analytics authorization specs
* Remove accidental include Pundit
* Raise not_authorized for invalid requests
* Make attributes and time methods private
* Add custom UnauthorizedError
* Raise and use rescue_from to handle 4xx requests
* Enforce date parameters to follow a specific format
* Use current user to allow same origin requests
* Use custom headers and not params for token auth
* Default to current user for same origin requests
* Use correct boolean for choosing user
* Update tests to use request headers and add stricter tests
2019-04-04 10:52:45 -04:00
rhymes
3a53d5797e
Upgrade Rails to 5.2.3 ( #1408 )
2019-04-03 13:08:59 -04:00
Anna Buianova
509c11e86f
New comment notifications to Active Jobs #1996 ( #2287 )
...
* Send new comment notification service + specs
* Call new comment notification service from the model
* Return to non-bang notifications create
* An ActiveJob for the new comment notifications
* Call comments notification ActiveJob from Notification
2019-04-03 11:38:30 -04:00
rhymes
dc2414c174
Add tests to PodcastEpisodesController ( #2297 )
...
* Add tests for existing API PodcastEpisodesController
* Generate only index route
There's no need to generate all routes if they are not implemented
2019-04-03 09:57:48 -04:00
Anna Buianova
1a0d4667c5
Unique twitter and github usernames #2061 ( #2255 )
...
* Set github and twitter usernames to nil if they are blank
* Verify github and twitter username in the Admin::UsersController (just in case)
* Add unique indexs on users twitter_username and github_username
2019-04-02 18:16:29 -04:00
Ben Halpern
b0ad7f8c74
Some night theme code, other style adjustments, and extracted app name into ENV var ( #2289 )
...
* Style, theme adjustments, plus generalization work
* Modify login cta style on home page
* Modify text
2019-04-02 13:10:28 -04:00
Ben Halpern
cc0e4b40dd
Allow orgs to be marked as sponsors ( #2282 )
...
* Allow orgs to be marked as sponsors
* Remove community sponsor condition
2019-04-01 16:41:25 -04:00
rhymes
c99fb27451
Add published in the SQL query to retrieve article ( #2248 )
...
Since we're already asking the DB to retrieve an article, we can directly ask it to filter out published articles without checking at runtime.
2019-04-01 06:24:17 -04:00
rhymes
54ccef4766
Fix error with articles API and unknown username ( #2247 )
...
Currently the articles API breaks the server when called with an unknown username. It should return nothing like when called with an unknown tag.
2019-03-31 10:47:48 -04:00
Mac Siri
73127aca01
Remove controller specs ( #2224 )
...
* Create more request specs
* Update wording
* Update guard to work with requests
* Fix broken spec
* Remove rails-controller-testing gem
* Move article_specs
* Move last controller spec out
* Remove controller spec config
* Fix broken spec
* Remove all use of render_template
* Refactor spec
* Tweak User#remember_me
* Create ArticleAnalyticFetcher spec
* Undo User#remember_me
* Use srand in rspec
* Create FeedbackMessagesHelper spec
* Add DigestMailer spec
* Fix broken test
2019-03-29 19:05:02 -04:00
Anna Buianova
75a977172c
Fix notifications about the new child comments ( #2233 )
2019-03-29 12:51:10 -04:00
Anna Buianova
4b02fe87a4
Optimize sign in: Identity #2061 ( #2231 )
...
* Add unique index to identity
* Conditional uniqueness validations on identities
* Remove redundant Identity specs
2019-03-28 16:10:23 -04:00
Filip Defar
7a3b16c1e5
Extract "following" action from "show" in DashboardsController ( #2212 )
2019-03-27 17:03:53 -04:00
Ben Halpern
d1e73dceba
Clean up new chat channel functionality and add tests ( #2220 )
2019-03-26 13:35:32 -04:00
Anna Buianova
a936aff625
DRY the Active Jobs specs ( #2215 )
2019-03-26 09:49:40 -04:00
Filip Defar
88fc2a66d3
Remove /dashboard/following_users route ( #2191 )
2019-03-25 14:49:09 -04:00
Anna Buianova
e1968e815b
Extract new reaction notification to ActiveJob ( #2122 )
2019-03-25 13:54:21 -04:00
Abraham Williams
9cb40e546b
Enables Rails cops ( #2186 )
...
* Enable Rails cops
* Fix Rails/DynamicFindBy
* Fix Rails/HttpStatus
* Fix Rails/Blank
* Fix Rails/RequestReferer
* Fix Rails/ActiveRecordAliases
* Fix Rails/FindBy
* Fix Rails/Presence
* Fix Rails/Delegate
* Fix Rails/Validation
* Fix Rails/PluralizationGrammar
* Fix Rails/Present
* Fix Rails/Output
* Fix Rails/Blank
* Fix Rails/FilePath
* Fix Rails/InverseOf
* Fix Rails/LexicallyScopedActionFilter
* Add Rails/OutputSafety to TODO
* Add Rails/HasManyOrHasOneDependent to TODO
* Add Rails/SkipsModelValidations to TODO
2019-03-25 09:25:55 -04:00
Mike Coutermarsh
dd84051ce4
Social Card upgrade - Part 1 ( #2090 )
...
* Add HtmlCssToImage for generating images
This will be used by social_previews to convert the templates into images.
Setup a fallback image primarily for local dev, so that this won't cause
errors if authentication is missing.
Caching is setup to use contents of the html/css. So it with
autobust/generate a new image whenever the markup changes.
* Update Article social preview template to not be random
+ Being random breaks caching (since we generate cachekey by a SHA of html content)
+ Use Roboto for when generating via HTML/CSS to Image
* Update Tag social preview template to not be random
+ Make rand deterministic so it doesn't break caching
* Update user social preview template for html/csstoimage
* Update shecoded template to work with both url2png and htmlcsstoimage
* Add ability to respond to .png for social previews controller
When adding .png to the url, these routes will now generate an image and
redirect to it.
This leaves the existing pages as they were, so we're backwards
compatible with all the existing links out in the world.
* Fix merge conflicts
* Remove some duplication
* Improve spec descriptions/read better
* clean up setting template with a ternary
2019-03-22 16:28:02 -04:00
Jess Lee
1b0cb47916
Merge user and give pro users trusted role ( #2176 )
...
* remove pro privelges from other roles and add trusted role for pros
* add merge user routes and methods
* add specs
* add more specs
* update languauge on /internal for clarity
* fix code climate error
2019-03-22 16:20:31 -04:00
Andy Zhao
1b4c50574a
Update pro dashboard permissions for organization members ( #2173 )
2019-03-22 12:40:31 -04:00
Ben Halpern
7f27aa32c7
Add areas for DEV Shop displays on left sidebar ( #2162 )
...
* Add areas for DEV Shop displays
* Update display_ad spec
* Add organization to spec
* Add orgs to specs properly
2019-03-22 09:57:37 -04:00
cyrillefr
a2fcbdc4a4
Enable performance rubocop cops ( #2140 )
2019-03-21 16:01:45 -04:00
Filip Defar
937bc63bbb
Add list of followed organizations to dashboard ( #2157 )
2019-03-21 15:16:23 -04:00
rhymes
116d6b3278
Replace puts with proper logging ( #2139 )
2019-03-21 13:00:21 -04:00
rhymes
df2621a8c0
Implement image upload's error handling ( #2018 )
2019-03-21 12:31:51 -04:00
Abraham Williams
9c55121dcc
Update deprecated Faker::Overwatch use ( #2142 ) [skip ci]
2019-03-21 12:17:16 -04:00
Tim Lange
3494264404
Enabled rubocop/lint ( #2130 )
...
* WIP: Enabled rubocop/lint
* FIX: Fixed failing test
* FIX: Small change to return
* FIX: Changed indent
2019-03-21 10:53:44 -04:00
Jess Lee
d7860fa76c
Removed unnecessary 'reason for warning' in internal ( #2128 )
2019-03-20 12:58:41 -04:00
Anna Buianova
f0e9c0cfef
Extract sending new follower notification to a separate job ( #2030 )
2019-03-20 12:51:09 -04:00
rhymes
27213bf6da
Use ActiveRecord::RecordNotFound instead of ActionController::RoutingError for 404s ( #2118 )
2019-03-19 20:54:25 -04:00
rhymes
c851953d83
Fix unescaped front matter description in MarkdownFixer ( #1989 )
2019-03-19 18:19:23 -04:00
Edison Yap
7a0a793a89
Redirect to 404 if badge not found ( #2066 )
2019-03-19 16:04:43 -04:00
Ben Halpern
91bd6322ad
Add organic page view sums and modify seo boostables ( #2109 )
...
* Add organic page view sums and modify seo boostables
* Add score minimum for SEO boostable
2019-03-19 09:32:26 -04:00
Anna Buianova
825128edc4
Fix reaction notification json data when a reaction is destroyed ( #2112 )
...
* Add specs for notification sending when a destroyed reaction is passed
* Keep only persisted reactions data in the notification
2019-03-19 08:34:24 -04:00
Bolarinwa Balogun
da6a916412
Add link for tags everywhere they appear ( #2088 )
2019-03-18 17:10:23 -04:00
Jess Lee
9c1e10cd9f
Improve Internal Dashboards features( #2043 )
2019-03-18 16:29:11 -04:00
Keshav Biswa
8d57d45ecc
Rubocop Style cops enabled ( #2056 )
...
* Rubocop enabled style/alias
* Enabled Style/ArrayJoin Cop
* Enabled Style/Attr
* Enabled Case Equality
* Enabled CharacterLiteral
* Enabled ColonMethodCall Cop
* Enabled CommentAnnotation cop
* Enabled PreferredHashMethods Cop
* Enabled DoubleNegation Cop
* Enabled EachWithObject Cop
* Enabled EmptyLiteral Cop
* Enabled EvenOdd Cop
* Enabled IfWithSemicolon Cop
* Enabled Lambda and LambdaCall Cop
* Enabled LineEndConcatenation Cop
* Enabled ModuleFunction Cop;
* Enable NegatedIf and NegatedWhile Cop
* Enabled NilComparison Cop
* Enabled Not Cop
* Enabled NumericLiterals Cop
* Enabled OneLineConditional Cop
* Enabled PercentLiteralDelimiters Cop
* Excluded internal/users_controller from negated_if cop
* Reverted the double negation change from github_issue_tag and github_issue.rb"
* Enabled PerlBackrefs Cop
* Changed Regexp.last_match(1) to Regexp.last_match(0)
* Enabled proc cop
* Enabled RaiseArgs Cop
* Reverted Regexp.last_match(0) to Regexp.last_match(1)
* Enabled SelfAssignment Cop
* Enabled SingleLineMethods Cop
* Enabled SpecialGlobalVars Cop
* Enabled VariableInterpolation Cop
* Enabled WhenThen Cop
* Enabled WhileUntilModifier Cop
* Enabled WordArray Cop
* Enabled IfUnlessModifier Cop
* Enabled GuardClause Cop
2019-03-15 18:33:54 -04:00
Mario See
d8709c0334
Implement open inbox for dev-connect ( #1563 )
2019-03-15 14:39:57 -04:00
Ben Halpern
d6ab255a45
Allow users to configure to use night mode (beta) and sans-serif article body ( #2072 )
...
* Initial work for config
* Add config for users
* Fix schema
2019-03-15 13:11:53 -04:00
Anna Buianova
96de5a4f60
Don't send new follower notification when followable is a tag #2041 ( #2050 )
...
* Enable djs to confirm follow spec fail
* Don't send new follower notification when followable is a tag
2019-03-13 08:16:20 -07:00
rhymes
3c6a7d4574
Display comment published timestamp according to user's locale ( #1970 )
2019-03-08 15:19:37 -05:00
Ben Halpern
825aa9be91
Add page_view model ( #1985 )
...
* Add page_view model
* Uncomment DJ routes
* Add time on site max and don't update article page views every time
2019-03-07 11:53:33 -08:00