Commit graph

104 commits

Author SHA1 Message Date
Ben Halpern
ea63374408
Add below-article html variant (#1669)
* Add below-article html variant

* Fix tests for variant number

* Fix stories show tests for html_variants
2019-01-28 14:31:43 -05:00
Andy Zhao
c4677071a7 Mute notifications for a comment thread (#1636)
* Use idempotent update instead of toggle

* Update editor guide with new comment instructions

* Render the settings button on page load

* Add settings button to comment dropdown

* Update styles to properly render

* Add comment mute function and settings page

* Clean up erb spacing

* Remove unneccessary user_id param

* Add receive_notifications for policy spec

* Update name for accuracy

* Add request spec for comments_mute

* Remove unused permitted attributes

* Add actually used permitted attributes
2019-01-24 17:20:38 -05:00
rhymes
a0c9576bec Export comments (#1471)
* Use name attribute

* Export comments

* Update copy

* Fix time-dependent test

* Remove reactions_count from the export

* Only select needed attributes from the DB

* Add the path of the commentable to the export

Comments are attached to something but from the export that is not easily identifiable. We add the "commentable_path" to give some context.
2019-01-16 12:54:45 -05:00
Ben Halpern
f1e7f12e1d
Reduce queries in bulk follow (#1568) 2019-01-16 12:21:15 -05:00
Jess Lee
6ca4aec6c8 add spec for invalid captcha (#1569) 2019-01-16 12:20:40 -05:00
Anna Buianova
53e8490e75 Refactor redirect from the old username or organization slug (#1527) 2019-01-14 18:10:57 -05:00
Ben Halpern
d988bc71f9
Add reading time to articles (#1538)
* add comment template

* merge upstream

* Initial work

* make sure the template re-appears for top level comments after submission

* Small fix

* Fix git issues

* Account for missing reading times

* Add minimal score on sidebar

* Test for page to include min read

* rubocop cleanup

* Mess with test

* Add .to_i after score

* Modify search_score var
2019-01-14 15:58:33 -05:00
Andy Zhao
7726acf157 Update notification's request specs (#1450)
Fixes all the notification request specs that were xited. This should help us feel more comfortable making changes to notifications.

Also made a small (performance?) improvement by using an already defined variable.
2019-01-14 15:20:04 -05:00
Andy Zhao
68807c6df7 Allow Organizations to Update Slug/Username (#1411)
* Close anchor tag typo

* Remove confusing message in profile

* Fix typo in spec

* Add old_slug and old_old_slug fields to org

* Test for check_for_slug_change method

* Add ability for orgs to change slug

* Update copy to match new org language

* Add redirect for organizations with old slugs

* Use less queries for handling org/user redirect

* Use consistent syntax for user creation

* Test for organization slug redirects

* Refactor user article redirect
2019-01-10 14:16:43 -05:00
Timothy Ng
84bd3a69d7 ApiSecret model for Developer API (#1369)
* Add ApiSecret model scaffold

* Add relationships between ApiSecret, User, Organization

* Add placeholder template to account tab

* Add description column to ApiSecrets

* Add very basic access token generation

* Add basic access token deletion

* Show access token on success flash

* Add placeholder message when user has no secrets

* Use cta style on token generation button

* Add presence validation for ApiSecret description

* Add ApiSecrets factory

* Add pundit policy for ApiSecret

* Nest form field within api_secret hash to allow rails strong params

* Use pundit to authorize ApiSecretController actions

* Add error message flash for ApiSecretsController actions

* Add specs for ApiSecretsController

* Add length validation to api secret description

* Flash model error instead of generic message on save failure

* Truncate ApiSecret factory objects descriptions to prevent validation error

* Remove length restriction on ApiSecret.description

* Use darker font color for token creation date

* Consolidate ApiSecret migrations
2019-01-08 12:30:54 -05:00
Arun Kumar
08c070b7e3 Fix block delimiters Rubocop offense (#1456) 2019-01-03 16:45:28 -05:00
Jess Lee
4214bcbbf6 Add user status to internal/users (#1444)
* wip

* add indiviual user partial

* remove unnecessary attributes

* wip

* add indiviual user partial

* remove unnecessary attributes

* remove mentorship matching from view

* fix linting

* add mentor matching method back and refine test

* remove duplicate mentee descriptions

* Update app/controllers/internal/users_controller.rb

Co-Authored-By: jessleenyc <jessleenyc@gmail.com>
2019-01-03 16:44:43 -05:00
Arun Kumar
80a23ba403 Fix rubocop offenses (#1452) 2019-01-03 09:23:38 -05:00
rhymes
6553f08d94 Rubocop cleanups (#1415)
* Update rubocop-todo.yml with new violations

* Fix Layout/EmptyLine* rules

* Fix Layout/Indentation* rules

* Fix remaining Layout/* rules

* Fix Lint/DuplicateMethods by removing unused accessor

* Fix Lint/IneffectiveAccessModifier

* Fix Lint/MissingCopEnableDirective

* Re-run rubocop auto gen config

* Fix Layout/RescueEnsureAlignment

* Fix Naming/* rules

* Fix some RSpec/* rules

* Fix typos

* Fix RSpec/LetBeforeExamples

* Series should only be an attr_writer, not an attr_accessor

* Fix RSpec/InstanceVariable

* Fix RSpec/InstanceVariable

* Fix RSpec/RepeatedDescription and RSpec/RepeatedExample

* Fix Style/ClassAndModuleChildren

* Fix Style/ConditionalAssignment

* Fix some Style/* rules

* Trigger Travis CI build because failing tests are not failing locally

* Revert "Fix Style/ClassAndModuleChildren"

This reverts commit 1686801d8a1516ba1894f79e24401a20dea65f99.
2019-01-02 11:20:02 -05:00
Ben Halpern
fc0175b18d
Refactor articles api controller (#1409)
* Refactor articles api controller

* Modify authorization logic in api
2018-12-27 16:47:04 -05:00
Ben Halpern
e4c120db5d
Replace dev.to with APP_DOMAIN config in a few places (#1406)
* Replace dev.to with APP_DOMAIN config in a few places

* Modify some tests
2018-12-26 18:13:05 -05:00
Andy Zhao
cf36025a16 Fix reactions rendering on notifications (#1362)
* Use more specific find for looking for reactions

* Use basic notification tests

* Test for proper reaction button rendering

* Use the proper user for reaction test
2018-12-18 20:58:31 -05:00
Andy Zhao
88cd4c13f3 Remove all flipflop related code (#1358)
* Remove all flipflop related code

* Undo an amend

* Comment out one last test

* Remove last test
2018-12-18 16:01:18 -05:00
Mac Siri
06e0cbabbb Revert "Replace Flipflop with Sail (#841)"
This reverts commit 21870e805a.
2018-12-18 13:44:40 -05:00
Vinicius Stock
21870e805a Replace Flipflop with Sail (#841)
* Replace Flipflop with Sail

* Address PR comments

* Bump sail version to latest

* Bump Sail to latest version

* Move setting creation to config/sail.yml

* Bump Sail to latest version

* Use correct limit for cast_type in schema

* Update Sail's route
2018-12-18 12:42:30 -05:00
Ben Halpern
14bba5e4d5
Adjust button style/placement on desktop (#1288)
* Adjust button style/placement on desktop

* Change opacity on side comments

* Adjust css for side article actions

* Adjust opacity

* Adjust opacity

* Adjust opacity

* Fix test language

* Remove opacity deal
2018-12-11 13:08:43 -05:00
Ben Halpern
6b96201265
[WIP] Allow mods to remove tags and send user notification (#1252)
* Initial tag adjustments

* Finalize tag adjustments and tag adjustments controller

* Fix schema.rb

* Finalize tag removal logic

* Adjust edge cases/tests for tag adjustment moderation

* Adjust tag adjustments spec
2018-12-04 16:45:32 -05:00
Ben Halpern
651ab3ce35
Add point weights for tag follows (#1229)
* Add point weights for tag follows

* Adjust num articles to initially show up on home page

* Fix schema.rb

* Adjust follow policy spec

* Adjust dashboard styling for follow points form
2018-11-30 15:36:58 -05:00
rhymes
915e2d77b6 Export articles/posts (#576)
* Add EditorConfig file for all editors

* Add article export service

* Add setting to request an export of all articles

* On the outside they are called posts

* Add articles exported email to mailer and service

* Refactor to one public method and test flags

* Trigger the export if it was requested and send the email

* Recreated migration file with generic export fields

* Rename fields and switch to a whitelist

* Refactor ArticleExportService into a more generic structure

* Rename articles_exported_email to export_email

* Fix notify mailer spec

* Rename Exporter::Exporter to Exporter::Service

* Remove commented out line

* Removed body_html, coordinates and updated_at from export

* Invert DJ config

* Update spec
2018-11-21 11:13:36 -05:00
Ben Halpern
115e52c748
Move follow and reaction aggregation into Notification model to avoid… (#1164)
* Move follow and reaction aggregation into Notification model to avoid re-compute

* Ugh. Fixing schema

* Update tests

* Skip some tests in notifications_spec
2018-11-20 15:00:21 -05:00
Mac Siri
912b6e75f2 Remove focus [ci skip] 2018-11-20 11:12:18 -05:00
Andy Zhao
044de6a8b5 Make reads controller async and sanitize notification titles (#1158) 2018-11-19 19:33:00 -05:00
Andy Zhao
a1010201f2 Notifications part 2 (#1156)
* Remove stream and add new notification views

* Actually remove Stream

* Move followers query to async method

* Remove unused tests and fix query

* Try using without delay instead

* Add without delay and escape HTML

* Make all tests pending for now
2018-11-19 18:14:24 -05:00
Andy Zhao
2db2dd1e5a WIP Refactor/notifications (#1131)
* Add new columns to notifications table

* Remove stream from notifications and add new methods

* Turn off moderation comment notifications

* Add notifiable_type index to migration

* Stop creation of Stream-based notification model instances

* Add notification model create hooks

* Add badge achievement notification creation hook

* Fix some specs

* Add missing @ symbol

* Fix for tests and rename a few things

* forgot to uncomment code sigh
2018-11-19 16:09:02 -05:00
Ben Halpern
a1be99ebf0
Add reaction confirm/invalidate workflow for admins (#1134) 2018-11-16 18:53:36 -05:00
Ben Halpern
6a7fe9d9ad
Fix/adjust dashboard style (#1126)
* Fix/adjust dashboard style

* Add pull-to-refresh for dashboard

* Adjust test to account for new UI
2018-11-15 17:43:05 -05:00
Ben Halpern
c5807205b5
Adjust dashboard analytics to be more reliable (#1115)
* Update analytics

* Remove analytics file

* Remove unused files

* Add delete button back in on dashboard
2018-11-13 20:37:29 -05:00
Jess Lee
94e55558f1 Add slack message for warned user activity (#1077)
* add slack messsages for warned user activity

* make slack messages async

* add spec for warned user article creation

* refactor observers

* add specs

* fix specs

* enable and create observer specs
2018-11-07 13:29:05 -05:00
Ben Halpern
1aa8e70a5b
Allow removal of collection element (#1036)
* Allow removal of collection element

* Update tests
2018-10-29 15:14:13 -04:00
Ben Halpern
359cc71b64
Add ability for users to publish series (#1034) 2018-10-29 13:04:42 -04:00
Andy Zhao
db9c16db4d 404 comments for unpublished posts (#1013) 2018-10-26 13:37:34 -04:00
Frédéric Planté
2b2a7afb03 Correctly handle trying to edit not existing settings tab (#1011) 2018-10-26 13:06:55 -04:00
Ben Halpern
302e8f202d
Add HTML variants for cta optimization and other nav bar adjustments (#970)
* Add HTML variants for cta optimization and other nav bar adjustments

* Fix 1==1 non-random mistake

* Spruce up org call-to-action

* Change default text color

* Add html variant trial and success request specs

* Fix article sidebar caching issue

* One line adjustment

* Modify schema

* Add include ActionView::Helpers::TagHelper to user_tag_spec

* Modify follow_button to remove session context

* Dummy commit

* Change Edit Article to Edit Post

* Dummy commit

* Fix rubocop concerns

* Fix rubocop style
2018-10-22 17:03:57 -04:00
rhymes
1b60ee5009 Use timezone aware methods (#893)
* Use timezone aware datetime methods

* Use timezone aware date parse for GitHub issue tag

* Introduce a bit of chaos programming using Zonebie

Zonebie uses a random timezone to run tests, it's a really good way to see if the code is timezone dependent or not.

* Convert GitHub issue date as UTC
2018-10-18 16:26:29 -04:00
Ben Halpern
79bc96e1ca
Simplify article show view/remove queries (#905) 2018-10-14 11:18:06 -04:00
Ben Halpern
a761dfbc83
Finalize merge accounts (#820)
* Add initial remove association feature

* Add initial account deletion feature

* Add back in cursor pointer

* Update email text copy

* Update copy on email html

* Fix nav issue and add integration buttons to account
2018-10-04 12:27:37 -04:00
Maksim Litvinov
33db32e5f4 Fix rubocop lints (#794) 2018-10-03 13:00:09 -04:00
Ben Halpern
18c5e8718d
Add page_views_count to articles and track from analytics (#761) 2018-09-28 14:33:25 -04:00
Ben Halpern
2517bb555b
Add functionality for buffering to different accounts (#752)
* Create initial buffer updates logic

* Add UI functionality and test for sattelite tweets

* Add additional /mod functionality and re-use script partial in /internal
2018-09-26 15:51:39 -04:00
Ben Halpern
cf075d4a9f
Ben/fix authorization edge case (#748)
* Add top param to article tag api

* Fix user validation persistence bug
2018-09-25 18:46:17 -04:00
Ben Halpern
e80bf919fc
Add top param to article tag api (#741) 2018-09-25 15:13:49 -04:00
Andy Zhao
5814d0a263 Add slack notifications to notes for reports (#660)
* Remove extraneous string conversion

* Add slack message for new notes

* Move status and minimize buttons to the bottom

* Add note model spec

* Remove extraneous param for reported links
2018-09-25 14:36:54 -04:00
Ben Halpern
160056a19d
Add organization users to sidebar and other org ajustments (#707) 2018-09-20 15:43:43 -04:00
Andy Zhao
13ab37951c Update analytics controller with new policy (#630) 2018-09-11 16:45:27 -04:00
Jess Lee
4451e5eb38 Update User Dashboard With Mentorship Admin Features (#440)
* create mentor relationship table and begin dashboard

* add missing files from previous commit

* add mentorship relationship status

* remove uniqueness validation

* add multiple notes

* ban from mentorship deactives all relationships

* add untracked files

* fix logic issue and add specs

* add model specs

* add request specs

* add request specs and fix linting

* fix internal users spec

* remove phantom columns

* remove bizzaro character

* move all attr_accessor to one line
2018-09-11 15:59:25 -04:00