* Loosen up Liquid::Variable
* Improve RssReader's youtube id detection
* Revert "Loosen up Liquid::Variable"
This reverts commit fd385c6649a9e0ca3786588a29a3ff2b8fe98218.
* RSS: Wrap liquid variable in backtick
* User inner_html intead of text
* Add backend func. for muting users you follow
* Remove comment
* Add validations and update default value
* Send notifications to followers with all_articles
* adjust validations to allow org admins to edit listings
also adjusted presented elements based on bumped_at dates and published boolean status
* allow org admins to edit listings under diff user_id
adjust statement in edit so that it has to be admin not just member
* pluck via attribute not string of attribute name
* update policy for org admins
* make authorizing org admin for listing private
* update classified listing spec
user_id is required for classified listing
There was a bug where the frontend was not passing the organization id to the backend, and thus the fetching of the stats failed for organization articles.
This also adds a bit of error handling for `fetch` API
* Add base history support
* Add tags and ranking and make it work
* Fix styling
* Add article title and text excerpt to the index
* Add pagination support
* Debounce the search to 300ms
* Show history only to pro users
* Use routing helpers instead of hardcoding
* Raise the page size to 100
* Remove console log
* A bit of regrouping
* init wip react components
* wip add dashboard to listing views
- create a html.erb view to hold listing/dashboard with javascript_pack_tag
- create listingDashboard.jsx in packs
- create listingDashboard component and dashboard folder with smaller components
- added view to controller and routes
* slowly adding some formatting
adjusted styling, info
* remove listing body from dashboard
* add some styling and adjust info
* wip adding org listings
* wip multi org in dashboard
* adjust for multi org
* add styling and better multi org support
* comment out bump and delete -- save for upcoming PR
* reduce lines
* listing form has link to listings dashboard instead of listings
* adjust header boxes flex direction for mobile
* fix organization id query
* WIP testing
needs more rigorous tests
* finalize tests
* Add MVP of notification subscriptions
* Add rate limiting for notification subscriptions
* Show modal for logged out users on subscribe click
* Add enter key functionality for checkbox
* Add relationships for notification subscriptions
* Add model test for notification subscription
* Deprecated article mutes in favor of notification subscriptions
* Deprecated comment mutes in favor of notification subscriptions
* Move comment muting tests and logic over
* Merge comment and article muting into subscriptions
* Remove redundant check
* Use database to check for rate limit instead of cache
* Test for subscriptions handling notifications properly
* Fix notification model spec for subscriptions
* Fix tests for subscriptions
* Remove rate limiting
* Properly handle logged out users getting subscription status
* Fix test for new pattern
* Update reserved words
* Add config column to notification subscriptions
* Add logic for top level config and move tests
* Test for top level subscribers getting notified
* Fix logic mistake oops
* Add index and refactor comment_user_ids
* Add /stats endpoint for articles, opened only to Pro users
* Add analytics to article stats page
* Add stats button to the article page and test stats page
* Notifications unique indexes that take null values into account
* Specify import options for reaction notifications according to the indexes
* Fix specs: notifications have either user_id or organization_id
* Create notifications indexes concurrently
* Podcasts validations
* Added db constraints for podcast_episodes
* Validate podcast slug uniqueness with usernames and org slugs
* Validate podcast slug uniqueness only if it was changed
* Implemented ActiveJob for Mention#send_email_notification
* Implemented ActiveJob for Mention.create_all
* Fixed args while calling the job
* Changes as per the review