* Add route
`/api/v1/json/features`
Shows current featured image
* Add route
`/api/v1/json/features`
Shows current featured image.
* Removed binding
* Moving this file to a more appropriate name.
* Correctly named and placed
Correctly named and placed to match its module name
* Updated per review
* Changed as per review
Renamed to `PhilomenaWeb.Api.Json.FeaturedController`
Moved to `lib/philomena_web/controllers/api/json/featured_controller.ex`
* Updated route
Route `/api/v1/json/images/featured` now uses `PhilomenaWeb.Api.Json.FeaturedController`
* like this
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
* Fix for distance
Fixes the `distance` to search not being passed through to `ImageReverse.images()`
`set_scraper_cache` passes the `distance` through into `params`
`create` normalizes and inserts the result into the params passed to `ImageReverse.images()`
`normalize_dist` checks if there is a `distance` set, adds a leading 0 to it (to account for values like `.5`, which would crash `Float.parse()`), and turns it back into a well-formatted string for `ImageReverse.images()`
* Fixed space
* Adding routes for /forums
Adding routes for new /forums endpoints
* New API Routes
`/forum`
`/forum/:forum_id`
* Add New API Routes
`/forums/:forum_id/topics/:topic_id/`
`/forums/:forum_id/topics/:topic_id/:post_id`
* Adds New API Routes
`/forums/:forum_id/topics`
`/forums/:forum_id/topics/:topic_id`
* Forum JSON formatter
* Updated
Correctly filters out things that should not be shown.
* Added topic JSON filter
* Added correct pagination
* Spacing and neatened
* Cleaned up
Consolidated queries and neatened up spacing.
Fixed name
* Removed unneeded aliases
* Cleaned up
Consolidated queries
Fixed spacing
Removed unneeded aliases
* Cleaned up
Spacing
* Cleaned up
spacing
* Depluralized
* Cleaned up
Removed space
* Removed extra spaces
* Removed extra spaces
* Removed extra spaces
* Removed preloads
* Cleaned up
Grouped clauses
* Consolodated further
* Cleaned up preloads
* Cleaned up
Preloads
consolidated clauses
grouped clauses
* Cleaned up
removed `id`
`locked`
* Removed topic_id
Not useful since the API client should already know it.
* More consolodation of terms
* Add total post count
* Removed unneeded variable
* Last cleanup, I swear.
* Add `/api/v1/json/comment/:id` endpoint
* Add controller for `/api/v1/json/comment/:id`
Add controller for `/api/v1/json/comment/:id` endpoint
* Fixes permissions
Now will show `403 forbidden` if a comment on a deleted image is requested.
* Fixed endpoint schema
Now conforms to endpoint schema
* Permission adjustment
Will prevent `user_id` and `author` from leaking in the event the image is `hidden_from_users`
* Permission lockout
Lockout of all data if destroyed.
* Lockout on destroyed_content
Return 404 when `comment.destroyed_content`
* Refactored for neatness
* Update to streamline Wilson score generation
If an image's `upvotes` are 0, their Wilson score will be so minuscule as to be several (around 12) orders of magnitude before you see anything but zeros (assuming 0 `upvotes` and 1 `downvotes`). This will simply remove the calculation from such and make them fall to the default: 0
* Update elasticsearch_index.ex
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>