* Make notifications reactions specs more confident about time
* Protect AnalyticsService specs if run on International Date Line West time zone
* Display local datetime to make it easier to reproduce time zone bugs
* Display date in RFC 3339
* Freeze time and confront without nanoseconds
* 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
* Transform GET sign in links into POST
* Ignore CVE-2015-9284 for now
* Update app/views/layouts/_signup_modal.html.erb
Co-Authored-By: Mac Siri <krairit.siri@gmail.com>
* Modify sponsorship copy
* Update sponsorship stuff
* Fix spec and add tag 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
* 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
* 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
* 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