Commit graph

61 commits

Author SHA1 Message Date
Jess Lee
d5b8454738 stop using active record method on a non-active record object (#1676) 2019-01-29 15:02:02 -05:00
Jess Lee
9d72091f42 add mailchimp unsub when deleting or banishing user (#1644) 2019-01-24 16:14:10 -05:00
Jess Lee
0eb5402926 Delete User Functionality (#1615)
* add full delete route and update banisher

* add user deletion spec

* enhance styling

* remove availability if banned from mentorship

* add specs

* do not show banned mentors

* delete addiional associations

* include more associations for deletion

* simplify activity deletion wtih delete_all
2019-01-23 16:57:32 -05:00
Ben Halpern
b1f18f5bbc
Improve feed and add more randomness (#1570)
* Improve feed and add more randomness

* Fix tests

* Fix test score calc

* Modify home page test criteria
2019-01-16 16:01:14 -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
9736d411d3
Fix get_all_articles in RssReader (#1566) 2019-01-15 22:25:30 -05:00
rhymes
dee7429883 Replace each with find_each for AR queries (#1557) 2019-01-15 16:38:03 -05:00
Ben Halpern
7f7a35048a
Find by title or feed source URL in rss fetch (#1560) 2019-01-15 15:34:13 -05:00
Ben Halpern
47e8fbc9ec
Add feed_fetched_at for users to not refetch unnecessarily (#1555)
* Fix RSS issues by not refetching users as often

* Make rss fetch not forced in rake task

* Remove unnecesary schema line
2019-01-15 13:29:11 -05:00
Mac Siri
f780e5fbc9 Refactor RssReader (#1537)
* Update RssReader::get_all_articles

* Move RssReader to services

* Create RssReader::Assembler

* Improve RssReader's spec
2019-01-14 14:25:49 -05:00
Ben Halpern
2fd314e40b
Fix chat css and banish logic (#1515) 2019-01-10 18:09:42 -05:00
Ben Halpern
b4384867ad
Remove access_token key for twitter dump (#1510) 2019-01-10 11:48:27 -05:00
Jess Lee
5e4508ebe1 Remove callbacks from banisher + specs! (#1501)
* wip remove callbacks from banisher

* remove pry
2019-01-09 15:12:38 -05:00
rhymes
dbf5fc63ad Fix Rubocop Security/Open (#1447)
* Re-run rubocop autogen config

* Fix Layout/* violations

* Fix Security/Open and use HEAD if GET is not needed
2019-01-02 16:35:19 -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
Arun Kumar
cfcc204a20 Minor refactor (#1443)
* Rescue `ActiveRecord::RecordNotFound` exception instead of `StandardError`

* Replace `!blank?` call with `present?`
2019-01-02 10:42:42 -05:00
rhymes
96d01b20a2 Use allow/allowed instead of whitelist (#1296)
* Use allow/allowed instead of whitelist

* Remove duplication in comment
2018-12-10 13:16:16 -05:00
Jess Lee
f96bc7c6f3 Revert banisher (#1274)
* remove stalebot from milestone issues

* simplify banisher
2018-12-06 13:44:53 -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
1672098388
Removing clear notifications attempt (#1209)
* Removing clear notifications dealy

* Fix user_id issue
2018-11-27 18:29:50 -05:00
Ben Halpern
db6232adf3
Add initial ios push notifications to server (#1207)
* Add initial push notification logic for iOS

* Adjust notification form css

* Clean up schema.rb

* Add mark-all-as-read functionality for ios notifications

* Update app/models/notification.rb

Fix `find` to `find_by`

Co-Authored-By: benhalpern <bendhalpern@gmail.com>
2018-11-27 17:40:43 -05:00
Jess Lee
e36cf51a9e Refine Banish User (#1168)
* add banish user test

* refactor banish user wip

* banish user wip - bust comment cache synchronously

* add more spec scenarios

* Update Banish#strip_user_profile

* Refactor specs
2018-11-21 16:55:26 -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
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
359cc71b64
Add ability for users to publish series (#1034) 2018-10-29 13:04:42 -04:00
Ben Halpern
f4f4af776c
Fix issue where only approved orgs could make CTAs (#1017)
* Fix issue where only approved orgs could make CTAs

* Adjust articles api
2018-10-27 13:03:56 -04:00
Nihad Abbasov
4995a4af21 Performance: replace ruby methods with their faster alternatives (#949)
- Array#select.first is slower than Array#detect.

  - Array#shuffle.first is slower than Array#sample.
2018-10-19 13:21:18 -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
3bf42edd17
Add summary to select fields in sidebar follow suggestions (#934) 2018-10-16 16:50:26 -04:00
Ben Halpern
85a7c97b9b
Remove unnecessary queries from onboarding (#884) 2018-10-10 17:34:54 -04:00
Ben Halpern
2c482a355f
Remove saw_onboarding condition (#824)
* Remove saw_onboarding condition

* Remove outdated onboarding test
2018-10-05 15:07:05 -04:00
Maksim Litvinov
33db32e5f4 Fix rubocop lints (#794) 2018-10-03 13:00:09 -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
Mac Siri
32d15f2820 Update test suite configuration (#702)
* Update DatabaseCleaner

* Only retry in CI

* Update rubocop precommit hook

* Update spec

* Restructure spec configs WIP

* Restructure spec configs WIP

* Create OmniauthMacros

* Fix broken spec

* Update spec
2018-09-24 14:40:22 -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
Andy Zhao
22c9714919 V2 of Reports System (#441)
* Fix weird breakpoint top-nav issue

* Fix error handling when submitting blank note

* Change status closed to invalid

* Add ability to sort between status

* WIP

* Add working views for new report page

* Add mailer WIP

* Add MVP of new reports system

* Move collapse to the right & add show page link

* Fix buttons for index page

* Change collapse to collapse/expand

* Remove email functionality from new report

* Update copy of report abuse responses

* WIP of showing emails in reports

* Fix notes for user_role_service.rb

* Remove unused scripts from internal.html.erb

* Update tests for reports dashboard

* Add missing migration file

* Add finishing touches to reports dashboard

* Remove deprecated methods

* Update view with better timestamps

* Update and write new tests

* Add .codeclimate.yml

* Remove commented out editor thing

* Undo commented out code for recaptcha method

* Undo comment out code for development

* Use new comment path instead of old comment path
2018-09-04 17:08:41 -04:00
Araslanov Evgeny
8095c8fc4d Added ArticleWithVideoCreationService (#344) 2018-08-15 17:19:54 -04:00
Kohei Sugi
91c3eef1e1 Fix Layout/EndAlignment lint (#349) [skip ci] 2018-08-15 15:49:38 -04:00
rhymes
e588fa7ece Code cleanups (#659)
* Initial automatic cleanup with rubocop

* Fix syntax error introduced by rubocop

* Cleanup seeds file

* Cleanup lib folder

* Exclude bin folder because it contains auto generated files

* Make Rubocop a little bit more chatty

* Block length should not include comments in the count

* Cleanup config folder

* Cleanup specs

* Updated Rubocop version and generated a todo file

* Fix broken ArticlesApi spec

* Fix tests

* Restored rubocop pre-commit hook
2018-08-07 11:00:13 -04:00
Ben Halpern
76b9313e3a
Add Google noindex to possible spam articles (#607)
* Add Google noindex to possible spam articles

* Add further noindex conditions
2018-07-21 11:16:57 -04:00
Ben Halpern
e4bb8d7823
Modify timeout and make some queries more efficient (#593)
* Modify timeout and make some queries more efficient

* Only query podcasts if user signed in

* Remove unnecessary columns selected in boosted query etc.
2018-07-19 11:55:59 -04:00
Edem Attikese
6e3b64f060 Apply bundler-audit fix & Update gems (#472)
* added bundler workaround so git repos are accessed via https

* Use forked version of fix-db-schema-conflicts gem

* Update #update_stripe_plan_for_subscription

* Update stripe version

This was actually already done but not reflexed in the Gemfile

* Pessimize Gemfile

* Fix lint

* Fix lint
2018-07-11 11:01:47 -04:00
Andy Zhao
749ffabbe7 [Done] Adjust abuse reports (#540)
* Fix bad formatting of links

* Change spam bot to post in potential-spam

* Add internal report link to Slack message
2018-07-05 11:16:11 -04:00
Ben Halpern
94e5154668
Add initial invitation framework for chat channels (#528)
* Add initial invitation framework for chat channels

* Update chat_channel specs

* Add DIY concept of accepting invite

* Add some js and fix spec

* Add full invite accept functionality

* Remove console.log from chat
2018-07-02 16:31:20 -04:00
Ben Halpern
92a541a517
Add a couple specs for notifications and pages (#522)
* Add a couple specs

* Remove stream VCR from notifications_spec

* Add github readme spec

* Add notifications count specs

* Add guards in notifications controller

* Fix test

* Fix test
2018-06-29 14:14:36 -04:00
Ben Halpern
03e4f6531f
Add a few tests and fix user tag color bug (#482) 2018-06-22 10:22:53 -04:00
Andy Zhao
ecbb9d4ab1 [Done] New Reporting System MVP (#408)
* Move validations from controller to model

* Add new columns to feedback message model

* Use polymorphic notes relationship

* MVP of ticketing system

* Use new URL for reported_url param

* Add missing files

* Add validations and tests for feedback_messages

* Clean up some html

* Update create spec and add update spec

* Add mail tests and lint

* Add link to user profile
2018-06-19 16:41:31 -04:00
Andy Zhao
cfd95a65af Update "Connect Twitter acct" in settings with new callback url (#439)
* Update "Connect Twitter acct" in settings with new callback url

* Remove name from comments (#437)
2018-06-15 12:52:14 -04:00