Commit graph

291 commits

Author SHA1 Message Date
Anna Buianova
e45c61a308 Bust cache on article destroy instead of resave articles #1621 (#1801)
* Bust cache on article destroy instead of resave articles

* Change articles delayed job queue
2019-02-23 19:41:06 -08:00
Anna Buianova
58b2013377 Fix delayed job errors related to follows #1621 (#1835)
* Add delayed_job_web to dev environment for debugging

* Add specs for the current Follow callbacks implementation

* Move follower touching to ActiveJob

* Spec for the touch followers job

* Move Follow#create_chat_channel to ActiveJob and make the job safe

* Add ActiveJob to send email notifications about follows

* Enqueue SendEmailNotificationJob after the follow is created

* Specs to wnsure jobs are enqueued on Follow creation

* Make CreateChatChannelJob queue name more specific
2019-02-23 18:16:20 -08:00
Mac Siri
2e647cedb4 Add more test coverage (#1829)
* Create github repos request spec

* Create article_mutes_spec.rb

* Create moderation_service_spec.rb

* Create push notification subscriptions spec

* Add PodcastEpisodeDecorator specs

* Remove randomness in test

* Create specs for ArticleWithVideoCreationService

* Update spec/decorators/podcast_episode_decorator_spec.rb

Co-Authored-By: maestromac <krairit.siri@gmail.com>
2019-02-22 09:16:57 -08:00
Carl Saunders
c1eecd1850 Added <kbd> tag support to markdown editors in article posts and comm… (#1761)
* Added <kbd> tag support to markdown editors in article posts and comments.

* Fixed typo in test.

* Fixed test - now compares against inner html.

* Removed .showpage-signi-cta as dead code was reinstated accidentally via git merge.

* Use sass placeholder as no need to output the .kbd class in the css.

* Reinstated original css as accidentally changed with merge.
2019-02-16 22:30:35 -04:00
Ben Halpern
5d1370c3b4
Add padding to video duration (#1812)
* Add proper padding in video_duration_in_minutes

* Add proper padding in video_duration_in_minutes

* Remove ffmpeg from travis for now
2019-02-16 19:31:58 -04:00
Anna Buianova
1cc0fccbf7 Reduce the number of sql queries for articles comments #1606 (#1766)
* Reduce the number of sql queries for articles comments

* Refactor comments tree display

* Refactor retrieving the comments tree

* Remove comments tree view object

* Update score in comments spec for consistent order
2019-02-16 18:14:15 -04:00
Ben Halpern
bce0b4fff6
Remove harsh video restriction and add video duration (#1811)
* Remove harsh video restriction and add video duration

* Fix video meta data and tests

* Modify video tests

* Rescue video duration fetch error

* Change log to puts in test
2019-02-16 17:42:44 -04:00
Jess Lee
49e3878239 Add Stripe Cancellation Webhook (#1682) 2019-02-13 15:56:19 -05:00
Ben Halpern
92b24a9978
Add html_variant split testing to /badge (#1763)
* Add /badge html_variant

* Fix some of the linting
2019-02-08 12:45:14 -04:00
Anna Buianova
7f6e0cf185 Fix ActiveRecord::RecordNotFound in Delayed::Jobs on article destroy (#1699)
* fixed `ActiveRecord::NotFound` issue for articles, on article destroy
* extracted ActiveJobs from article callbacks
* added specs for article and reaction deletions
2019-02-07 16:57:17 -05:00
Ben Halpern
71a419e5ee
Add profile_updated_at and github_repos_updated_at to avoid extra fet… (#1754)
* Add profile_updated_at and github_repos_updated_at to avoid extra fetches

* Fix variant_number issue

* Fix test
2019-02-06 20:39:15 -04:00
Ben Halpern
2d97a5d837
Improve performance for additional content boxes and tags index (#1750)
* Improve performance for additional content boxes and tags index

* Modify followed_articles endpoint with new classic article api
2019-02-06 16:50:35 -04:00
Glenn Carremans
1793956bdb Added 3 year anniversary badge (#1732)
* Added 3 year anniversary badge

* Fix linting error
2019-02-06 11:29:30 -04:00
Jess Lee
54426ea20b Enhance Internal Index Pages (#1747)
* add more info to internal users index

* create tag show page and add tag moderation form

* fix linting

* add tag index view and alias field

* add pagination to tag index

* fix spec
2019-02-06 10:25:19 -04:00
Mac Siri
1137d6fba4 Improve specs (#1693)
* Lock erb_lint

* Refactor moderation spec

* Remove & replace RequestSpecHelper

* Update uid to sequence

* Lower the need for persistence in specs

* Update moderation spec

* Update shoulda-matchers

* Enable backgroundjobs and update commenct spec

* Fix fail specs

* Update comment's validations

* Remove redundent specs

* Actually turn off DJ

* Apply run_background_jobs_immediately

* Remove giveawy specs

* Create Identity spec
2019-02-04 15:56:00 -04:00
Ben Halpern
d7665fcc3f
Add comment template to post (#1692)
* add myself to the core contributors

* add comment template

* merge upstream

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

* make interface admin only

* Adjust comment template form

* Fix merge conflicts

* Remove unnecessary comment template from json
2019-01-30 13:32:34 -05:00
Mac Siri
2b779d15c6 Fix inconsistent specs (#1674)
* Force test colors in Travis

* Fix inconsistent analytic spec

* Fix local inconsistent specs

* Remove JS

*  Remove JS from spec
2019-01-30 11:50:42 -05:00
Andy Zhao
f5f206e40e Render codespans properly in markdown (#1678)
* Explain test properly

* Add tests for codespan parsing

* Add codespan parsing logic
2019-01-29 11:52:18 -05:00
Juan Manuel Ramallo
49c9b5bc87 [Emojis in Markdown] (#1653)
- Adds the ability to add emojis using colons 😂 🎉
- The emoji conversion is added to the markdown parser labor
- When no emoji is found with the alias, same text is returned
- No assets added (no emoji images), so this will only be supported when the browser supports emojis (https://blog.getemoji.com/post/57054354336/which-browsers-support-emoji)
- Emoji conversion logic is out of markdown parser labor
- Adds its own spec
2019-01-28 16:28:59 -05:00
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
Ben Halpern
1cdbfe3af1
Remove hardcoded values in streak reward (#1671) 2019-01-28 14:14:45 -05:00
Ben Halpern
561882d9d5
Add writing streak badge rewarding algorithm (#1670)
* Add 4 week streak badge rewarding algorithm

* Modify badge message

* Fix typo
2019-01-28 13:46:00 -05:00
Andrew Bone
613d3d49c3 Coding style consistency (stackblitz liquid tag) (#1649)
* Style consistancy

Make style more consistent with other liquid tags

* Style consistency

Make style more consistent with other liquid tags

* Style consistency

Make style more consistent with other liquid tags

* rubocop compliance

* rubocop compliance
2019-01-25 12:03:01 -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
Ben Halpern
a0d90874a9
Move org admin privilege check into controller (#1642) 2019-01-24 13:35:39 -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
Vinicius Stock
ec2ce5d6e6 Upgrade rubocop and fix offenses (#1635) 2019-01-23 16:12:03 -05:00
Ben Halpern
ae44cc4865
Modify org admin logic for changing article author (#1634)
* Adjust org user_id change logic

* Fix test
2019-01-23 16:10:31 -05:00
Andy Zhao
9f6d00118f Mute notifications for your own article (#1594)
* Use a slightly faster call for user_id

* Remove unused file

* Test receive notifications functionality

* Notify when receive_notifications is true

* Test receiving reaction notifications

* Do not notify if receive_notifications is false

* Fix test for parent comment notification

* Add article mute notifications feature

* Remove deprecated specs

* Prevent email when receive_notification is false

* Update button messaging

* Use RESTful /article_mutes patch request

* Use parent or root article instead
2019-01-22 13:12:48 -05:00
Dave Follett
03bdf63ce4 Added the 'initalpath' and 'module' options to the codesandbox embed (#1545)
* Added the 'initalpath' and 'module' options to the codesandbox embed and updated the help page.

* Fixed spelling errors.

* Rework from previous PR: Improved exception text. Improved regex for detecting invalid options. Changed logic to raise an exception if any invalid options are found by moving the exception raising to be inside the valid_option() method.

* Added unit tests for codesandbox_tag.rb.
2019-01-21 17:39:09 -05:00
Kyle Boe
36b42b2ccd Feature/spotify liquid tag (#1573)
* WIP spotify liquid tags and specs - #1546

* update naming for clarity

* update for rubocop styling

* drop url support - #1546

* bugfix and add correct heights - #1546

* update specs to reflect url removal - #1546

* update standard error message in spec - #1573
2019-01-20 14:01:33 -05:00
Anna Buianova
9ccf0a07cb Refactored stories views (#1584) 2019-01-20 11:57:24 -05:00
rhymes
51a9e8be0a Order my tags by weight, popularity and name (#1583) 2019-01-20 11:29:37 -05:00
Andrew Bone
b56865915c Jsfiddle LiquidTag (#1509)
* Create jsfiddle_tag.rb

Add liquid tag for jsfiddle

* Create jsfiddle_tag-spec.rb

Add liquid tag for jsfiddle

* Update _editor_guide_text.html.erb

Add liquid tag for jsfiddle

* Updates for rubocop

* Edit boilerplate

Change some of the boiler plate code.

* rubocop compliance

* Fixed name

Fixed file name

* Fixed boiler plate

Changed codepen to jsfiddle

* Update guide text

Change the Guide Text to be jsfiddle specific.

Co-Authored-By: Link2Twenty <AndrewB05@gmail.com>

* Fixed typo in spec

Co-Authored-By: Link2Twenty <AndrewB05@gmail.com>

* Update Valid Link

* Update jsfiddle_tag.rb

* Add Approved html

* Remove double slash

* Revert change

* Fix XSS error

* Remove extra line

* Remove extra slash

* Remove extra slash

* Make DRY

* rubocop compliance

* Change test logic

* Revert test to Approvals

* Fix HTML approved
2019-01-17 15:44:01 -05:00
rhymes
5ee725410b Replace data with content in export email copy (#1572) 2019-01-16 17:10:06 -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
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
rhymes
dee7429883 Replace each with find_each for AR queries (#1557) 2019-01-15 16:38:03 -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
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
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
Anna Buianova
8610d503a4 Rubocop fixes (#1528) 2019-01-14 09:17:01 -05:00
Arun Kumar
a0d39e15bd Fix braces around hash params Rubocop offense (#1453) 2019-01-11 13:08:45 -05:00
M. Bellucci
a52af3da8b Avoid using meta-programming for solving code duplication. (#1457)
* Add feature spec for twitter login

* Avoid using class eval for solving code duplication.

This change make code easier to change in the future.

* Fix codeclimate issues

* Introduce explanatory methods
2019-01-11 12:00:09 -05:00
Mac Siri
11684331d4
Silence Delayed::Workers in spec [ci skip] 2019-01-10 16:33:58 -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