* Add new render and template modes for billboards
* Add new fields to /admin
* Adjust test
* Adjust markup in form
* Add tests for script execution
* Add two script test
* Adjust scripts
* Adjust scripts
* Add new test
* Add new explicit tests
* Move JS functionaity around
* Store browser accept language header on users
* Change to tracking via user context
* Remove async info code
* First draft of spec
* Work out tests
* Delete dependents
* Remove dead code associated with old roles
* Remove test references
* Removed from seeds
* Removed unused roles from locales
---------
Co-authored-by: lightalloy <lightallloy@gmail.com>
* Settings can process markdown into html
* Update Settings with new onboarding settings
* Async render onboarding newsletter step
* Tweak onboarding design
* Fix broken spec
* Better rendered component test
* Tweaks to match design
* Try to tweak design
* Try having a default state
* Tweak placeholder content
* Better await componentDidMount
* Continue to tweak the design
* ContentRenderer#process should always return Result
* Try more clarity in the partial
* Rubocop
* feat: remove the validation for the article_id and tag_name to be unique on a tag_adjustment
* chore: remove unique index
* feat: update the validate_tag method to align with the removal of unique indexes on the table
* feat: do not allow removal and addition of tags that were added/removed by admins
* spec: add tests for the tag_adjustment_spec
* fix: update the validation of tags
* spec: article validation
* spec: test the action_panel helper
* chore: amend language
* add styles
* Empty commit
* use instance setting for enabled target geolocations
* add validation for enabled geolocations setting
* a start on the UI?
* backend tweaks for UI
* proper crack at autocomplete component
* fix region targeting toggle
* e2e spec
* logic and markup to display tag adjustment history on article mod panel
* add tag adjustment reason to markup
* add specs for article's tag adjustment association and ordered tag adjustments
* style tag adjustment history
* sketch out cypress test for visible tag moderation history
* tweak spacing and sizing of adjustment history heading
* adjust cypress tests, tag adjustments still coming back empty in spec
* get past first cypress snag by waiting for request and reloading
* add spec for viewing multiple tag adjustments in a post history
* restore defer: true in actions panel js packs call
* add e2e tests for remaining mod views with tag adjustment UI
* getting started: model setup
* basic controller action & spec
* somewhat working click events
* pick up on impressions
* there was an attempt at batching without duplicates
* (better) bulk upsert service
* fix specs?
* touch up feed events JS
* end-to-end specs??
* workers wip
* fix failing user delete spec
* Add http_header to FastText for Fastly compatibility
* Update app/services/articles/enrich_image_attributes.rb
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update app/services/html/parser.rb
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update spec/models/display_ad_spec.rb
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Fix rubocop
* Also accept canges to main image for this re-calc
* Rename display_ad_spec for compatibility with main
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* remove presence validation for summary/url/proof, update UI
* simplify everything! use AR validation syntax
* Update app/models/organization.rb
revert reordering of url validation arguments. I had overcomplicated the work with a custom validation, and then upon resetting it, I changed the order unnecessarily
* Renamed display ad variables and descriptions in tests
* Renamed api docs display_ads => billboards
* Updated billboard cypress seeds
* Fixed api billboards specs
* Update db/schema.rb
Co-authored-by: Duke Greene <dukegreene@gmail.com>
---------
Co-authored-by: Ben Halpern <bendhalpern@gmail.com>
Co-authored-by: Duke Greene <dukegreene@gmail.com>
* Renamed locale keys and ui language display_ads => billboards
* Revert locale and role name for display ad roles
* Revert locales related to locales to DisplayAd
* Fixed billboards cypress test
* feat: add a hidden tags route + controller + view
* refactor: make a re-useable template for hidden_tags and following_tags
* chore: add some jsdocs to document/help follow the code
* chore: add some jsdocs to document/help follow the code
* feat: add soem comment changes
* refactor: use more readable string concatenation
* refactor: use more readable string concatenation
* fix: whoops error in template literal
* feat: potential solution to being able to query the paginated hidden tags whilst using the existing following_tags functionality
* feat: typo
* chore: add comment
* update the count for the dashboard sidebar
* feat: add the correct count on the mobile action menu
* spec: update the request spec to ensure that we have the correct tags being displayed
* refactor: query for hidden tags
* chore: update initscrolling language in comments
* refactor: prioritize readability
* refactor: update where clause
* chore: add more clarifying comments
* feat: make sure that we only rename if action exists in initScrolling
* feat: update the styling for the update weights section
* feat: include followable on tag page
* feat: update points to explicit_points in the followings_controller
* feat: abstract out the uncommon UI elements and move them to the top level template
* feat: remove unused html
* chore: remove the antispam tag
* feat: update the tags template and corresponding localization keys
* chore: update the comment
* feat: update the following_tags spec
* spec: update accordingly
* refactor: use URLSearchParams
* feat: update the follow and antifollow/hidden tags
* feat: use a range
* fix: use explicit points
* Empty commit
* feat: update the pagination styles
* update localization
* Renamed display ad variables and constants
* Renamed display_ads associations
* Fixed variable name in display ads
* Renamed display_ads variables in views
* Fixed admin billboard view spec
* Fixed variable name in FilteredAdsQuery
* add migrations
* add countries gem?
* first pass at location model
* specs ✨
* add location to filtered ads query
* feature flag and nicer errors
* cosmetic fixes
* more tweaks (remove unnecessary index, add initializer)
* remove background image, rename prop to refer to color, pass primary brand color
* create helper method, send calculated gradient values into frontend props
* test new helper method and refine how color is darkened