Commit graph

553 commits

Author SHA1 Message Date
byte[]
0f69ae6fcf sort tag changes by id instead of creation date (derpibooru/philomena#200) 2020-09-18 10:07:46 -04:00
Luna D
f5229654e7 make ban deletions admin-only 2020-09-17 16:01:50 -04:00
Raptorshy
9d0d622fbd Allow moderators to edit commissions
Fixes #194
2020-09-15 16:27:50 -04:00
byte[]
7736cb041f don't automatically tag 'featured image' (furbooru/philomena#33) 2020-09-14 20:20:10 -04:00
byte[]
6deab827ac store filter_id in a long-lived cookie (derpibooru/philomena#139) 2020-09-14 20:02:43 -04:00
byte[]
96f1005255 fix gallery page ordering bug (derpibooru/philomena#195) 2020-09-14 19:19:14 -04:00
liamwhite
653fd0a4af
hCaptcha (#19) 2020-09-12 13:43:16 -04:00
Luna D
c806b08f0f redirect to profile path upon user edit instead 2020-09-12 11:45:42 -04:00
byte[]
cc0077d78f prevent double deletions 2020-09-10 12:02:01 -04:00
byte[]
24994d2fa2 invoke query compiler to determine if name should be escaped 2020-09-10 11:25:00 -04:00
byte[]
ecfe60bcaa don't recode tag slugs, fixes #18 2020-09-10 11:20:25 -04:00
David Joseph Guzsik
9a8b5a7ea7 Fix being able to vote on polls past their end date (#13) 2020-09-09 22:36:40 -04:00
byte[]
75e07bfb13 disable report limit for staff 2020-09-09 22:33:57 -04:00
byte[]
389100dae2 require tampering permission to see votes 2020-09-08 19:03:18 -04:00
byte[]
f2c1dbab0b correctly return error on gallery unique constraint 2020-09-07 23:47:19 -04:00
byte[]
c1d54de22a fix changeset error when uploading avatar 2020-09-07 23:39:30 -04:00
byte[]
a079eac912 no more than *3 open reports 2020-09-07 14:52:52 -04:00
byte[]
90830d361b propagate hiding user on reports 2020-09-07 14:52:52 -04:00
byte[]
a2e524b535 remove unnecessary referrer redirects 2020-09-07 00:28:24 -04:00
byte[]
04b893eaaf allow assistants to change image hide reasons 2020-09-06 23:59:50 -04:00
byte[]
0d359ee81e add tag alias validations 2020-09-06 14:19:21 -04:00
byte[]
da1e6a145d properly transactionalize image hiding and merging 2020-09-06 12:37:31 -04:00
byte[]
4dcb2958d3 Squashed commit of the following:
commit 8ea9cff4af46e24c38020652cedeff72957354fb
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:29:24 2020 -0400

    remove remaining serializable aside hiding related

commit 99ccf06264db6319ece2a896a104031447447a5f
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:20:40 2020 -0400

    interactions: remove serializable

commit a63bef06a6962368f69cf83afbc3c44f2467618c
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:16:27 2020 -0400

    users: remove serializable

commit 8053229f6fab507c29a40f0e22dd9cab7971e34f
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:11:14 2020 -0400

    user_links: remove serializable

commit 9b058add825b0a876a91a1cf2b1b22dc34066e42
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:09:33 2020 -0400

    topics: remove serializable

commit cd9ea908c34f72c0120fca1c4d581540db60db98
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:05:23 2020 -0400

    tags: remove serializable

commit c7563fef8fc905c32a0727a4b104222227a6bafa
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:02:22 2020 -0400

    static_pages: remove serializable

commit 3da661bdd1aec74e4ac5b69ec21124bc1ebc6fb4
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 01:00:15 2020 -0400

    posts: remove serializable

commit 18a50a4e5bed1ab6e4e6c13c3051a21ae7e8fbb0
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:55:55 2020 -0400

    poll_votes: remove serializable

commit 7d946ef23d7b27877d4bf0fb6a4db4ae64a9ffab
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:51:49 2020 -0400

    galleries: remove serializable

commit d8c35a0934e5394b092b050e071abdada4bdb640
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:42:43 2020 -0400

    conversations: remove serializable

commit 079e6dca6c8064867f2c0f90f351ea83c0f12b75
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:38:28 2020 -0400

    comments: remove serializable

commit 00ae38bad566fb6badeccceac2e394e65ec9428e
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:37:15 2020 -0400

    commissions: remove serializable

commit b3c4a4b13671ca73c58080b090dd6165552c87d6
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:17:12 2020 -0400

    bans: remove serializable

commit 8be9fe913ff1f6264b899e96ee38fa52032b8bda
Author: byte[] <byteslice@airmail.cc>
Date:   Sun Sep 6 00:02:44 2020 -0400

    badges: remove serializable

commit 162adda185f705b9749774c4af8c7d8db0d89790
Author: byte[] <byteslice@airmail.cc>
Date:   Sat Sep 5 23:56:51 2020 -0400

    adverts: remove serializable
2020-09-06 01:30:53 -04:00
byte[]
6915d2ed45 add button for mods to unlock account (derpibooru/philomena#173) 2020-09-05 22:53:55 -04:00
byte[]
75de5f867d use elastic multi search API for specific pages 2020-08-23 16:53:25 -04:00
byte[]
3fce31b658 separate search definition building from search execution 2020-08-23 15:47:42 -04:00
byte[]
a97f8d23ad fix discord embed cards 2020-08-22 22:53:21 -04:00
Luna D
235a77ac8b consistent spelling of "two factor" 2020-08-18 10:04:17 -04:00
liamwhite
d1c893248d
Search navigation (#14)
* return hits from elasticsearch and add in sort param to templates

* use returned hits from elasticsearch for navigation

* mix format

* fix gallery pagination

* add missing fields to search help dropdown

* unused variable
2020-08-13 11:32:35 -04:00
byte[]
539eb223ff Fix all but one dialyzer warning 2020-08-11 19:15:32 -04:00
byte[]
3ba38edf0b add irreversible admin-only action to permanently delete an image file 2020-08-05 14:23:11 -04:00
byte[]
5532ea4dec more complete fix for commission and gallery pagination error 2020-08-01 12:42:29 -04:00
byte[]
d303d02d2c fix double render on totp auth 2020-07-31 17:06:53 -04:00
liamwhite
98f4166ea8
Replace Pow with generated Phoenix auth (#10) 2020-07-28 16:56:26 -04:00
byte[]
ad6e055aff add missing rate limit 2020-07-21 10:50:33 -04:00
byte[]
70e70254ed mix format 2020-07-06 14:20:50 -04:00
Christine Dodrill
4cdc362237 philomena_web: hack in forum posts to the firehose (#2)
* philomena_web: hack in forum posts to the firehose

(cherry-picked from commit c5ff6f38f3c1274cd0c6160b798d6f74549735ef)
2020-07-06 14:20:07 -04:00
byte[]
c65f27a1ff mix format 2020-07-06 14:12:18 -04:00
Nebbie Zebbie
6e4bd79843 Make forced filters visible to affected users if used 2020-07-06 07:43:12 +00:00
byte[]
a1f2ac5083 change max open reports to 3 2020-06-25 11:12:05 -04:00
byte[]
f81b68bc71 fixes #143, reindex alias when removed 2020-06-16 13:10:52 -04:00
byte[]
cec8b605a8 add additional live events 2020-06-15 19:57:33 -04:00
byte[]
a36e2d7368 mix format 2020-06-12 13:00:59 -04:00
byte[]
8ef94e912b add firehose API 2020-06-12 12:59:19 -04:00
Joey
c8b33f0ff6
Add Philomena Contrib Sec Role, Staff Page Visibility Toggle (#130)
* Add Philomena Contributor to secondary roles list

* Visibility toggle
2020-06-07 22:32:04 -04:00
byte[]
417305e43c filter fixes 2020-06-06 21:56:07 -04:00
byte[]
9294e54771 Filter updates 2020-06-06 21:03:17 -04:00
byte[]
7f55c63303 reject discourage from list 2020-06-03 21:40:42 -04:00
byte[]
6ef394a024 fix related images query 2020-05-28 21:04:35 -04:00
byte[]
d7f5cbcb77 fixes #124, uploads not blocked for DNP 2020-05-28 20:35:52 -04:00
byte[]
64428907f5 somewhat fix random ordering 2020-05-28 19:55:02 -04:00
byte[]
a73f270ca6 fixes #123, block DNP creation without linked tag 2020-05-28 18:46:52 -04:00
byte[]
3440a2d4a2 reliable queueing for thumbnail generation 2020-05-27 19:29:23 -04:00
byte[]
cc4103fcea stop spawning off for advert updates 2020-05-27 17:14:22 -04:00
byte[]
98db6a1ca2 mix format 2020-05-27 13:01:35 -04:00
byte[]
7b36f99c09 set samesite attribute to lax on all cookies to fix warnings 2020-05-26 17:37:49 -04:00
byte[]
3141db8bf2 mix format 2020-05-20 14:23:57 -04:00
byte[]
033fac01e9 fixes #119: link associated streams to artist tags 2020-05-13 14:17:04 -04:00
byte[]
53ad9dd139 unique tags in autocomplete 2020-05-10 06:41:57 -04:00
byte[]
a656f64225 fixes #116: hidden images appear in navigation 2020-05-07 23:58:21 -04:00
byte[]
84d784d33a move reindex logic to context for reports, image creation 2020-05-07 23:15:43 -04:00
byte[]
8e9d6285e4 move textile renderer to web namespace 2020-05-07 22:19:08 -04:00
byte[]
00415b062c hoist ImageNavigator, ImageScope, ImageSorter to web namespace 2020-05-07 22:10:54 -04:00
byte[]
7e7c0c7ec9 fixes #115, add staff forum thread renaming 2020-05-06 22:58:03 -04:00
byte[]
ef21b7c7d0 return of the stats page 2020-05-06 11:12:18 -04:00
byte[]
4b86e783ef you have to halt the plug pipeline explicitly 2020-05-04 03:18:36 -04:00
liamwhite
af9e779c59
Renaming (#112)
* First (not-yet-working) attempt at self-renaming

* Actually working renames

* last_renamed_at

* Prevent renaming while banned

* Move username changing from controller to model

* Username change logging

* Rate limiting for username changes

* username -> name and format

* add UBQ

* modify interval

Co-authored-by: Joey <joeyponi@gmail.com>
2020-05-02 18:17:55 -04:00
byte[]
d03c1d7e5b fixes #76: filter public conversion route 2020-05-02 12:58:11 -04:00
byte[]
a97006fd9c fixes #109: add ability to delete channels 2020-05-02 12:27:50 -04:00
byte[]
56ad635154 fixes #34: add scraper to replace box 2020-05-01 23:02:20 -04:00
byte[]
1f5f5ce104 fixes #70: improve visibility of adult streams 2020-05-01 22:50:54 -04:00
byte[]
2df7e1c2f8 fixes #69: livestream channel search 2020-05-01 22:33:40 -04:00
byte[]
8f59092082 fixes #77: restore cross-page gallery organization 2020-05-01 15:51:28 -04:00
byte[]
4be21fc592 #77: order the gallery list in a more sensible way 2020-05-01 14:10:10 -04:00
SomewhatDamaged
3e7ee76fe2
Api create image (#105)
* added new method (POST) to /api/v1/json/images

* Cleaned up debug

* added require_authorization plug, fixed up issues with image_controller

* make user do work

* Fixed inefficient function use

* added api fingerprinting

* more robust

* corrected holdover from merging files
2020-05-01 00:40:57 -04:00
byte[]
8fca87859c format 2020-04-30 17:26:34 -04:00
byte[]
d1783cdeb8 fixes #45: add poll administration options 2020-04-30 17:24:24 -04:00
byte[]
44b004f9ec fixes #80: broken presence check on tag_id param 2020-04-30 00:38:47 -04:00
byte[]
0b8cad77dd fixes #104: show aliases in autocomplete 2020-04-30 00:18:47 -04:00
byte[]
406c7dd74b fixes #97: add new route for changing anonymity status of upload 2020-04-30 00:14:14 -04:00
byte[]
be520b1d7c unsubscribe users from privileged topics when their role is updated, fixes #30 2020-04-29 23:05:19 -04:00
Luna D
fb08f555f4
reindex image on source update (#94) 2020-04-19 15:05:42 -04:00
byte[]
5f9e9d98a6 api relevance sorting, fixes #83 2020-04-08 11:11:58 -04:00
byte[]
603c8d4867 add ranch connection drainer 2020-04-07 00:21:44 -04:00
byte[]
d09d77c0cd more careful checking of parameter values, fixes #75 2020-04-05 11:56:53 -04:00
byte[]
904bada39e wilson 2020-04-01 00:42:46 -04:00
byte[]
1c12c010fa mix format 2020-03-31 11:39:11 -04:00
liamwhite
723bfa213f
Use JSON views for API (#64)
* AwardJson, LinkJson, UserJson to views

* FilterJson -> view

* ForumJson -> view

* TopicJson -> view

* PostJson -> view

* TagJson -> view

* CommentJson -> view

* GalleryJson -> view
2020-03-29 21:11:38 -04:00
SomewhatDamaged
196c5e14b6
API additions for user interactions on single images (#63)
* API additions for user interactions on single images

* removed ability to render without supplying interactions
2020-03-29 20:51:35 -04:00
liamwhite
b1de5389eb
Change ImageJson to view (#62) 2020-03-29 19:39:36 -04:00
byte[]
21df6bc307 fixes #52 and #53 2020-03-29 18:36:24 -04:00
SomewhatDamaged
44a20a7888
Adjusted to suit standard (#58) 2020-03-27 01:07:24 -04:00
byte[]
b20217925b ensure reports are reindexed when merged, fixes #51 2020-03-26 13:42:11 -04:00
byte[]
bc87b287e0 fixes commission counter updates (#56) 2020-03-26 13:18:45 -04:00
SomewhatDamaged
84ac9d27d7
Adds /api/v1/json/filters endpoints (#55)
* Adds /api/v1/json/filters endpoint

* Modified as per discussion

* Using Repo.paginate properly now

* Added total count to output
2020-03-25 11:32:25 -04:00
Luna D
da5135bc11
mix format 2020-03-13 09:21:17 -04:00
SomewhatDamaged
7ddd8b8ec4
New /filters/:id API endpoint (#48)
* New /filters/:id API endpoint

* Fix to use can? permissions

* Fixes requested
2020-03-12 12:53:25 -04:00
byte[]
37a2d014cd fix permission error 2020-03-05 02:04:21 -05:00
Luna D
8378e07bb8
remove auth from notification read 2020-03-03 13:54:47 -05:00
Byron Mulvogue
7a164944b4 Fixed user.avatar failure. Ran mix format. 2020-03-03 11:23:53 +00:00
Byron Mulvogue
297e0909d6 This will add the endpoint to the API. 2020-03-03 03:49:02 +00:00
Luna D
3fdae6b99c
that was not necessary 2020-02-22 11:31:57 -05:00
Luna D
d5337eb75a
more appropriate comment fix 2020-02-22 10:31:30 -05:00
Nebbie Zebbie
c7208a3098 Fix moderators not being able to unstick topics 2020-02-21 07:24:45 +00:00
Luna D
9c7bbc127b
fix assistants not being able to do user links 2020-02-17 12:21:19 -05:00
byte[]
e4e20033e7 fix misc pagination issues 2020-02-10 22:26:45 -05:00
byte[]
f664be4f85 preload tags on update failure 2020-02-06 17:27:26 -05:00
byte[]
9ea7980e3f hex upgrades 2020-02-06 17:24:41 -05:00
byte[]
14e6439ea7 run formatter 2020-02-01 11:04:11 -05:00
Nebbie Zebbie
7cee5f38ee Image hide reason changing 2020-01-31 23:50:50 +00:00
Nebbie Zebbie
d35b7a2b0e Allow repairing deleted images 2020-01-31 20:10:15 +00:00
SomewhatDamaged
c972f00cdc Featured image hiding (#24)
* Featured image hiding

This makes sure the Featured Image on the front page obeys user hiding.

* Optimized

Took the `hidden=1` check out of the `WHERE` clause.

* proper anti join

Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2020-01-26 18:04:30 -05:00
byte[]
f558e76cc8 thanks for the tip! 2020-01-23 12:32:31 -05:00
byte[]
ce534b7962 propagate cookies correctly into form values 2020-01-11 14:35:02 -05:00
byte[]
d184ee0817 copy and customize filters 2020-01-11 14:24:30 -05:00
byte[]
3ac8687c18 allow get-based reverse searching 2020-01-11 13:51:14 -05:00
byte[]
ed44160603 run formatter 2020-01-10 23:20:19 -05:00
byte[]
4ac63f9f4e use HTML escaping in RSS template, fixes #21 2020-01-10 12:43:56 -05:00
SomewhatDamaged
035b887f53 Somewhat damaged patch 1 (#20)
* Add new route

Adding route for
`/api/v1/json/posts/:id`

* Adding route controller

Adding route for
`/api/v1/json/posts/:id`
2020-01-07 10:35:24 -05:00
SomewhatDamaged
e918375c83 Somewhat damaged patch 1 (#19)
* Fix for module placement

Correcting my own mistake when I first made these routes

* Correcting module location

* Correcting module location

* Fix

Fixes a potential crash when no posts are returned.
2020-01-07 02:02:49 -05:00
SomewhatDamaged
24b9863699 Featured image API route (#18)
* 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>
2020-01-05 20:09:45 -05:00
byte[]
11e908ef14 batch tagger should resolve aliases and implications 2020-01-03 10:43:41 -05:00
SomewhatDamaged
8e39c06940 Fix for distance (#16)
* 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
2020-01-03 10:37:20 -05:00
byte[]
7ee6bf379f apparently that was necessary 2020-01-02 19:00:47 -05:00
SomewhatDamaged
ae5bfe14e4 Add /forums API Endpoints (#14)
* 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.
2020-01-02 17:47:12 -05:00
Jeremy Tan Jie Rui
c4e6a988d4 Don't put UTF-8 in search URL (#15)
Also fix TeX-style quoting
2020-01-01 22:09:53 -05:00
byte[]
2e7937cbc3 ensure commission items are sorted by price 2020-01-01 21:36:06 -05:00
byte[]
0da19674d1 reenable async commenting 2020-01-01 12:27:20 -05:00
byte[]
7000be9865 add parameter recoder to api tag controller 2019-12-31 23:22:35 -05:00
byte[]
b9ad5643dc stop generating enormous gif thumbnails for videos 2019-12-31 23:11:23 -05:00
SomewhatDamaged
9b22d2719a Adding /api/v1/json/comment/:id endpoint (#13)
* 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
2019-12-31 18:25:11 -05:00
byte[]
4c82c90cea discard old parser 2019-12-31 14:56:38 -05:00
SomewhatDamaged
6ccb3f645a Corrects failure and redirect to main page (#12)
This stops a bug I noticed when a slug that doesn't match is given. This will correctly 404 rather than redirecting to front page.
2019-12-31 09:01:14 -05:00
byte[]
f5bd8e7614 add deletion/duplicate handling to api 2019-12-31 00:10:50 -05:00
byte[]
1c6387e847 further fixes to the dnp template 2019-12-30 23:03:44 -05:00
byte[]
7503e48591 show hidden links on tag page, hidden status on profile page 2019-12-30 18:56:29 -05:00
byte[]
982adb9ba5 reindex image after replacement 2019-12-30 18:33:20 -05:00
byte[]
dd5d553c0d include intensity data in image api response 2019-12-30 09:18:38 -05:00
byte[]
9be71b512d load comment replies when the comment is hidden and when the image is merged 2019-12-30 08:58:56 -05:00
byte[]
bf5158b60e poll votes admin 2019-12-30 08:32:41 -05:00
byte[]
4342978483 hides, vote tampering 2019-12-30 07:50:02 -05:00
byte[]
f443aa5386 fix a bunch of navigation weirdness 2019-12-26 17:43:32 -05:00
byte[]
81b37e42ff add faster textile parser backend 2019-12-26 00:03:27 -05:00
byte[]
37836b2c30 more admin permissions 2019-12-25 16:10:56 -05:00
byte[]
567459bf48 avatars 2019-12-25 13:32:24 -05:00
byte[]
0981a1ba0b dynamic config 2019-12-25 11:56:19 -05:00
byte[]
1990e384da fix random endpoint and ensure search_records/4 is the only search_records exported 2019-12-24 18:09:35 -05:00
byte[]
620f316db8 break compile time dependencies for elasticsearch index usage 2019-12-24 16:14:42 -05:00
byte[]
15864ab742 api search controllers 2019-12-24 03:26:06 -05:00
byte[]
f847c560b1 prevent post deletion from jumping back to the first page 2019-12-23 09:25:11 -05:00