Commit graph

1704 commits

Author SHA1 Message Date
Mac Siri
90f54773dc
Fix GistTag & RunkitTag preview issue (#3388) 2019-07-09 15:58:08 -04:00
Ben Halpern
87002e5786
Fix profile pin display limit (#3427) 2019-07-09 15:42:46 -04:00
Ben Halpern
a8ef9663a4
Add internal page for spinning up group chats (and make jokes flare tag) (#3384) 2019-07-09 13:04:58 -04:00
rhymes
1f97669e66 Credits ledger (#3395)
* Add #purchase to Credit

* Assigns spent credits to the listing

* Add Credits::Ledger and use it

* Localize ledger datetimes

* Add organization to the ledger

* Add tests for ledger

* Remove unused class

* Fix scope error

* Compare UTC times

* Fix broken specs

* Wrap listing create in a transaction

* Wrap listings bump into a transaction

* Avoid microseconds issue with datetimes in tests

* Use .detect instead of .select.first

* Fix spec description
2019-07-09 10:11:18 -04:00
Zak Henry
a9acb8642e Add markdown to article api response (#3394)
* Add failing test asserting markdown is returned

* Add markdown to the get article api response
2019-07-09 10:09:20 -04:00
rhymes
5db8b7e1e5 Fix Rubocop lint (#3423) [ci skip] 2019-07-09 09:06:38 -04:00
Mac Siri
1afb572485 Revert "Mitigate CVE 2015-9284 (#3413)"
This reverts commit 002998adc5.
2019-07-08 20:10:12 -04:00
Mario See
42cb72d185 Listing Liquid Tag (#3250)
* init wip

still needs html, styling, and specs

* add more html

similar to singleListing.jsx

* add generate_new_liquid method to spec

* remove unexpected period

* add error handling for invalid slugs and expired listings

* initial styling

* styling for author and tags

* import variables to sass

* more styling and swithc tags and author info

* add specs

* handle error for slug with no category

* add listing tag to editor guide

* reduce complexity

* render expired listing rather than raise error

* update expired listing spec

* import mixins to classified listing tag styling
2019-07-08 18:19:01 -04:00
cyrillefr
3c1d51b836 Move RssReader fetch_user to Active Jobs (#3387)
- add job + spec job
  - refactor call
2019-07-08 18:17:35 -04:00
Ben Halpern
a5ccfb2b32
Add history to sidebar for pro users (#3417)
* Add history to sidebar for pro users

* Add filmstrip image
2019-07-08 18:10:01 -04:00
cyrillefr
5146532c82 Move messages send_push delay calls to ActiveJob (#3314) 2019-07-08 18:00:19 -04:00
Edison Yap
8ffe0f3de3 Bust cache for articles in series (#3052) 2019-07-08 17:28:27 -04:00
rhymes
002998adc5 Mitigate CVE 2015-9284 (#3413) 2019-07-08 14:15:57 -04:00
Anna Buianova
c3ed38f832 Moved creating a new podcast to a separate ActiveJob #2952 (#3373)
* Podcasts reachable status #2952

* Specs for podcasts statuses

* Moved podcast episode create to a separate ActiveJob

* Use RssItemData wrapper in GetEpisode for consistency

* Reorganize services/podcasts
2019-07-04 13:10:54 -04:00
Andy Zhao
da224d56aa Remove notifications if article is unpublished (#3362)
* Add tests for article notifications

* Remove notifications if unpublished and refactor
2019-07-03 16:50:23 -04:00
Ben Halpern
4ebfcd8bc0
Self-serve sponsorship options (#3371)
* WIP - Initial work on sponsorship landing page

* Add initial partnership page
2019-07-03 12:04:03 -04:00
Andy Zhao
22e76bee84 Add functionality to remove and recover identity (#3377)
* Lint some quotation marks

* Add BackupData table

* Add identity and removal functionality

* Test additional functionality

* Remove dependent destroy for backup data

* Add auth_data_dump column

* Add challenge to reserved words

* Add more shoulda matchers
2019-07-03 12:01:16 -04:00
Anna Buianova
3d81753285 Rescue possible SSLError when fetching a podcast (#3374) 2019-07-03 10:36:36 -04:00
Andy Zhao
2b5a1c83a2 Allow full links for cache buster tool (#3378) 2019-07-03 10:32:27 -04:00
Andy Zhao
04ce7738ab Add /challenge redirect (#3368) 2019-07-02 16:27:39 -04:00
Tim Downey
062361eefd Use time tags for publish dates on dashboard (#3369) 2019-07-02 16:25:29 -04:00
Chris Manson
f328adceed Add ids to terms page (#3367) [ci skip] 2019-07-02 16:24:59 -04:00
rhymes
209b0ba607 History and reading list refactoring (#3338)
* Make readingList testable

* Make history and readingList more similar

* Extract ItemListTags component

* Simplify load next page logic

* History and reading list load more should be the same

* Extract ItemListLoadMoreButton component

* Use the same exact CSS for both

* Use empty instead of 0

* Extract ItemListItem component

* Remove unnecessary else

* Same search function

* Use a common module to group related functionality

* Extract loadNextPage and fix load more button presence logic

* Extract toggleTag

* Refactor toggleStatusView and pass page

* Added additional tests
2019-07-02 09:22:21 -04:00
Anna Buianova
d6a151703c Podcasts reachable status #2952 (#3341)
* Podcasts reachable status #2952

* Specs for podcasts statuses
2019-07-02 09:18:27 -04:00
Nick Taylor
4edf4a646f JS: Refactor & Fix Lint (#3082) 2019-07-01 14:04:25 -04:00
Anna Buianova
186e5bb52b Fix lint (#3342) [ci skip] 2019-07-01 11:32:28 -04:00
Mazen Touati
6797567de9 Fix instagram URL validation rule (#3336) 2019-07-01 08:16:34 -04:00
Mac Siri
29e0f5597c Disable use of localStorage when cookie-less (#3322)
* Disable use of localStorage when cookie-less

* Add missing return
2019-06-28 17:11:49 -04:00
Andy Zhao
ea139e5ca5 Allow multiple banishes on the same account (#3326)
* Allow banished users to be banished again

* Remove deprecated method banished
2019-06-28 14:18:15 -04:00
Bolarinwa Balogun
86b0777938 Set max file size limit for profile images (#3313) 2019-06-28 12:06:25 -04:00
Andy Zhao
f8989ea9b2 Add GET /internal/tags/:id route back in (#3327)
* Add GET internal/tags/:id route

* Remove unused edit route
2019-06-28 08:13:03 -04:00
Andy Zhao
0633ba1f72 Fix org credits in internal view (#3321) 2019-06-28 07:56:09 -04:00
Bolarinwa Balogun
bd360c7cf4 Make item count 'empty' instead of '0' when reading list is empty (#3320) 2019-06-28 07:55:43 -04:00
Anna Buianova
7ee0350ac5 Refactored and optimized getting existing podcast episode (#3319)
* Refactored and optimized getting existing podcast episode

* Podcast#existing_episode fixes
2019-06-27 11:50:27 -04:00
Ben Halpern
26af371ebd
Fix comment title encoding issue (#3311)
* Fix comment title encoding issue

* Remove puts statements

* Fix flaky test

* Change flaky test

* Add & fix
2019-06-26 15:24:05 -04:00
Andy Zhao
111e5503b4 Hide delete article button for non-authors (#3315) 2019-06-26 15:23:46 -04:00
Ben Halpern
0432da190f
Tweak black box so posts won't stick (#3312) 2019-06-26 10:15:07 -04:00
Mario See
4e75108d8b Fix escape key handling and add space in single listing view (#3306)
* add space and handle escape key down

* properly handle escape
2019-06-26 09:58:48 -04:00
Bolarinwa Balogun
dbc4abc587 Add rel="nofollow" to links in comments (#3304)
* Add rel="nofollow" to links in comments

* Improve code quality and Add tests
2019-06-26 09:02:11 -04:00
Bolarinwa Balogun
b52d8e931d Add Instagram URL to profile links (#3307) 2019-06-26 08:56:07 -04:00
Bolarinwa Balogun
a30e06d673 Allow Embed of specific gist version (#3310)
* Allow Embed of specific gist version

* Add tests and documentation
2019-06-26 08:54:26 -04:00
rhymes
7da7a16d8d Pro: add referrers to dashboard and single article stats (#3295)
* Reorganize PageViewsController

* Add domain and path to PageView model

* Add before_create callback to populate domain and path

* Add list of referrers to AnalyticsService

* Add referrers to the UI

* Remove useless referrers card and tweak table line height

* Add referrer stats to article stats page

* Add not null and empty default to domain and path

* Refactor JS analytics client

* create_list is a step back here

* Revert "Add not null and empty default to domain and path"

This reverts commit bc02440076047a887c65d300bccd4661ecc8ffd0.

* Add index on domain concurrently

* Make the script more robust
2019-06-25 13:58:09 -04:00
Andy Zhao
16b59db15c Use publish date for article notifications (#3301) 2019-06-25 11:54:33 -04:00
Sushant Bajracharya
108a961324 Use dynamic route name for sign up (#3147) [ci skip] 2019-06-25 10:01:28 -04:00
Bolarinwa Balogun
bc54f30365 Add Item Count to Reading List Header (#3162) 2019-06-25 09:41:28 -04:00
Mike Coutermarsh
8afb797ec9 Improve social card caching 🚀 (#3265)
* Add failing tests for social previews controller. HTML changes between
requests, which breaks caching.

Since we use the HTML to generate the cache key. When the views have any
randomness in them, it breaks the cache, which means we regenerate
images on each request, rather than using what's in memcached.

Adding test to protect from regressions

* Fix randomness in social card templates

The aria tags are randomly generated. Since this is for rendering
images, they aren't needed.

* Make the linter happy by using the sanitize helper
2019-06-25 08:45:30 -04:00
rhymes
e3c2bf08e6 Deduplicate history items (#3279) 2019-06-25 08:42:01 -04:00
Eduardo Alencar
6d800da4d4 Increase tag length from 20 to 30 chars (#3299)
This commit increases the tag length from 20 to 30 chars and also increases the cached_tag_list length to maintain the limit of 4 tags. Specs were adapted to respect the changes.
2019-06-24 16:43:21 -04:00
Ben Halpern
dcbb188cf1
Add pinned articles box to profiles (#3269)
* Initial pins work

* Add pin box to profiles

* Fix test snapshot spacing and optimize svg

* Fix listings spacing
2019-06-24 15:18:29 -04:00
cyrillefr
0267d4e829 Move bust_cache methods in own jobs (#3071) 2019-06-24 13:28:25 -04:00