* Start with webhooks: table and model
* Start with webhooks api
* Start with webhooks api
* Webhook::Event class and events list
* Remove commented callbacks
* Start with sending events to webhook endpoints
* A couple of tests for Articles::Creator
* Send event to webhook endpoint on article destroy
* Dispatch event on article update
* Dispatch event when an article updated from admin
* Spec for the webhook job
* One more test for the dispatch event job
* Integration-like spec for event dispatching to webhook endpoints when creating an article
* Use Addressable::URI to parse endpoint url
* Add oj as a faster fast_jsonapi backend
* Renamed serializers
* Move article serialization out of a model
* Don't allow to create a webhook event with invalid type
* Add fields for ArticleSerializer
* Fix webhook event job specs
* Specify timeout when dispatching events
* Fix webhook job spec
* Change webhook events queue name
* Change serialized article fields for the dispatchable events
* Include user data when serializing an article for webhook event
* Moved decorating out of Webhook::DispatchEvent, fixed most specs
* Fix route in ArticleSerializer
* Move Article decoration to Webhook::PayloadAdapter
* Refactor image url helpers to avoid including helpers into serializer
* Fix specs
* Default url options for production
* /api/articles/me defaults to published articles
We want to make it explicit to retrieve unpublished articles, this change defaults `/api/articles/me` to only published articles, also adds `/api/articles/me/published`, `/api/articles/me/unpublished` and `/api/articles/me/all` to make requests more explicit.
* Refactor /me logic into a case switch
* wip init handle draft class and styling
* add draft button
* start splitting up listing row into multile files
* separate tag links
* split location
* fix location
* separate listing row action buttons
* update listing row proptypes to describe listing object
* contact via connect to jsx
* fix default checked
* init draft creation and first publish charge
* fix first publish logic and credit charging
* handle drafts in dashboard filtering
* adjust isDraft bool statement
* hide drafts from main listings feed
* fix expired and draft bools in listing row
* adjust create listing org credits
* internally handle drafts
* adjust listing row
* break down update method
* remove unnecessary logic and shorten lines
* fix logic again woops
* convert input hidden value + submit into one form button submit with corresponding name and value
also adds clear message that drafts do not cost credits
* handle insufficient org credits on first publish
- uses user credits to publish
- similar to bump implementation
* fix sorting for personal and all orgs
* space out some elements
* don't spend original users credit for them
* add delete buttons and delete_confirm and destroy methods
* remove notification removal since listings dont trigger notifications
* move draft message and add draft_params to tests
* Update classified_listings_controller.rb
* update tests
* update snapshot
* add del tests
* add guard preventing free draft publish
* fix draft filter
* update from master and resolve merge conflict in listing preact
* Revert "update from master and resolve merge conflict in listing preact"
This reverts commit 0a34fccf334a2ca0902644b486cb26ead6bef664.
* update column spec
instead of setting and saving
* separate two expectations into their own tests
* split more tests into single expectations
* change to unless bumped_at? instead of if nil
* Fix listing draft edge cases and styling
* Add title tags to listings pages
* Update specs for doorkeeper test
* Add bang
* Create #authenticate
* Create /api/articles/ endpoint
* Update specs
* Update me.json.jbuilder
* Fix typo and spacing
* Support pagination for #me
* Update #authenticate! to support cookies
* Make per_page a param
* Disable method-complexity check
* Enable refresh_token
* Create /api/users/me endpoint
* set up refactored onboarding
* create onboarding page
* add in first slide and change slide functionality
* fix test suite
* profile refactor
* profile refactor
* refactor to api
* add checkbox fields
* add checkbox fields
* remove puts
* add basic css
* add styling
* add redirect
* hide back and next at first and last slides
* test refactored onboarding
* test refactored onboarding
* remove article edits
* Fix schema
* Add deleted file back in
* Add default value for checked_t&c column
* Adjust HTML structure to keep nav buttons in place
* Fix ESLint issues on Onboarding.jsx file
* Handling for undefined or empty followedTags on getUserTags
* Fix codeclimate issues
* Fix codeclimate issues
* Fix more codeclimate issues
* Fix more codeclimate issues
* Update Onboarding snapshots
* Uncheck the CoC and T&C checkboxes on render
* Update snapshots
* Return false instead of raising error
* Update spec to use new onboarding
* Redirect to onboarding if haven't seen it yet
* Prevent redirect to onboarding from /signout_confirm
* Use assign_attributes instead of saving twice
* Move COC and T&C checkbox page to second slide
* Add 'go back to original page' functionality
* Reuse ready prototype logic
* Keep track of the last visited onboarding page
* Fix email subscription bug
* Fix overflow issue for tags page
* Remove height to prevent page container scrolling
* Check for CoC and T&C for displaying onboarding
* Add InstantClick redirect and preserve referrer in client
* Fix async update + check by using localStorage
* Turn off onboarding for tests
* Finalize design for onboarding
* Finalize design for onboarding
* Make bulk follows during onboarding
* Fix bulk follow test
* Add Sponsorship model
* Add Sponsorship to admin
* Add correct relationships between models
* Add temporary script to migrate sponsorship data
* Use constants for enums
* Use Sponsorship model in PartnershipsController
* Use Sponsorship in the views
* Validate sponsorship levels and tag combos
* Replace the rest of the sponsorship code to use Sponsorship
* 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
* 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
* 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
* 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