Commit graph

1727 commits

Author SHA1 Message Date
liamwhite
a2368fcbf7
Merge pull request #309 from philomena-dev/bans-extraction
Bans logic cleanup
2024-06-25 17:35:57 -04:00
Liam
1b020a4fe9 Fix some credo issues 2024-06-24 23:23:43 -04:00
Liam
318ef681de Bans logic cleanup 2024-06-24 20:45:56 -04:00
Liam
dbbc067679 Fix documentation errors 2024-06-24 19:48:17 -04:00
liamwhite
bd4dfd9016
Merge pull request #303 from philomena-dev/autocomplete-extraction
Autocomplete logic cleanup
2024-06-24 19:44:29 -04:00
Liam
2136957647 Fix automatic awarding 2024-06-24 16:35:35 -04:00
Liam
0ac4a898d8 Clean up remainder of ArtistLinks context 2024-06-24 16:28:58 -04:00
Liam
9b9a30621e Separate artist badge awarding logic to new module 2024-06-24 16:28:57 -04:00
Liam
f29fdae22f Separate extra automatic verification logic to existing module 2024-06-24 16:26:56 -04:00
liamwhite
1a7fbb29eb
Merge pull request #300 from philomena-dev/ad-extraction
Ads logic cleanup
2024-06-24 16:25:46 -04:00
liamwhite
b68dcd4548
Merge pull request #299 from philomena-dev/elastix-remove
Remove Elastix and hackney
2024-06-24 07:39:11 -04:00
Liam
677ecc265c Fix API upload 2024-06-23 12:36:19 -04:00
Liam
2e5b0678cd Remove obsolete block-all-mixed-content
This was removed in all major browsers with no replacement.
See https://www.w3.org/TR/mixed-content/#strict-checking for details on the obsolescence.
2024-06-23 11:52:20 -04:00
Luna D
6f0a2698f1 Remove conn from details_func invocation 2024-06-23 10:45:37 -04:00
Luna D
dfeefb1651 Commands:
git grep -l 'defp log_details(_conn' | xargs sed -i -e 's/defp log_details(_conn, /defp log_details(/g'
git grep -l '&log_details/3' | xargs sed -i -e 's|\&log_details/3|\&log_details/2|g'
2024-06-23 10:45:31 -04:00
Luna D
bb7aa0a124 Remove remaining conn usages from log_details 2024-06-23 10:45:14 -04:00
Liam
d6facc7809 Autocomplete logic extraction 2024-06-22 21:42:43 -04:00
Liam
cc21b402a0 Fix weird indentation 2024-06-22 18:16:14 -04:00
Liam
003ebed59a Move advert update server to app namespace and convert to GenServer 2024-06-22 13:59:59 -04:00
Luna D
7570f18dcb preconnect to cdn host 2024-06-22 19:51:48 +02:00
Liam
180aa23478 Extract ad restriction application to new module 2024-06-22 12:35:19 -04:00
Liam
f7222da111 Remove Elastix and hackney 2024-06-21 11:37:47 -04:00
Liam
c616fbff5d Timebase independent video GIF previewer 2024-06-21 09:34:31 -04:00
Liam
ad2b4b004c Work around verification failure for ssl roots using SHA-1 2024-06-21 08:53:23 -04:00
Liam
9bdb1b0fb8 Remove cowboy and replace with bandit 2024-06-20 21:19:30 -04:00
Liam
a344062d53 Update response header usages for list format 2024-06-20 19:49:19 -04:00
Liam
44c160b905 Remove extremely outdated redirect follower from DA scraper 2024-06-20 19:49:19 -04:00
Liam
29dc68c714 Add Req backend for ExAws 2024-06-20 19:49:17 -04:00
Liam
6170e0b5dd Replace Tesla with Req 2024-06-19 23:35:44 -04:00
Liam
868c7dac25 Fix typo 2024-06-18 23:22:49 -04:00
liamwhite
e596f5313c
Merge pull request #291 from philomena-dev/typedoc
Documentation updates
2024-06-18 23:21:51 -04:00
Liam
ee02fa131d Fix typos 2024-06-18 18:52:46 -04:00
Liam
16e15e9c67 Add extra type and callback documentation 2024-06-18 15:06:01 -04:00
Liam
9f031725ac Fix resource name for fp ban controller 2024-06-16 09:13:25 -04:00
Luna D
97feb0ac00 Add version 4 TypeScript-based FP calculation 2024-06-13 10:24:39 -04:00
Liam
1faa98f187 mix deps.unlock --all && mix deps.get 2024-06-12 22:10:45 -04:00
Liam
b11ae51446 Fix compile warnings 2024-06-12 21:47:15 -04:00
Luna
4896857bc3 Convert tag dropdown scripts to TypeScript 2024-06-10 20:38:38 -04:00
Luna D.
6ffa24b4b8
fix vite on external devices 2024-06-10 21:18:42 +02:00
mdashlw
567eaac697
image: validate sources length 2024-06-10 17:48:29 +03:00
mdashlw
62a2f13bb6
feat: bump max source count to 15 2024-06-10 17:30:51 +03:00
Liam
0b0412786f Fix mismerge 2024-06-09 16:31:12 -04:00
Liam
1eed44aa95 Fix scraper error with invalid hostname 2024-06-09 12:40:44 -04:00
Liam
363e27f063 mix format 2024-06-09 12:40:26 -04:00
Liam
42499ae2b0 Add netmask support to ip_profile tag and source changes 2024-06-09 10:06:50 -04:00
Liam
c8d696540f Split out media processing tools into PhilomenaMedia namespace 2024-06-04 08:37:31 -04:00
Liam
9b204c908d More fully separate underlying search behavior from usage in application 2024-06-03 21:08:33 -04:00
Liam
566ba9d4c1 Split out query features to PhilomenaQuery namespace 2024-06-03 21:08:33 -04:00
Liam
f44491685e Disable search completion by default, use setting to enable 2024-06-03 10:59:49 -04:00
liamwhite
afdcd773bd
Merge pull request #263 from koloml/searchbox-ac
Tags auto-completion for search queries
2024-06-03 10:14:39 -04:00
Liam
961c9998b8 Add missing constraint conversion to artist links 2024-06-03 10:12:42 -04:00
KoloMl
ac12837941 Disable server-side autocompletion for search field 2024-06-03 17:49:01 +04:00
Liam
9122ba0829 Missing static paths 2024-06-03 09:39:02 -04:00
Liam
f92b61c176 Add missing constraint conversions for interaction tables 2024-06-02 22:58:09 -04:00
Liam
410332003b Use decimal parsing for search dist value 2024-06-02 22:48:24 -04:00
Liam
c63bc41d8b Split out HTTP client interaction into PhilomenaProxy namespace 2024-06-02 19:26:00 -04:00
liamwhite
3a2cb05995
Merge pull request #270 from philomena-dev/swoosh
Swap Bamboo for Swoosh email delivery
2024-06-02 19:15:50 -04:00
Liam
ed34dea36f Swap Bamboo for Swoosh email delivery 2024-06-02 19:08:06 -04:00
KoloMl
f84e358eec Merge branch 'master' into searchbox-ac
# Conflicts:
#	lib/philomena_web/templates/layout/_header.html.slime
2024-06-02 20:51:13 +04:00
KoloMl
1a7d59cb59 Added the local setting to disable auto-completion 2024-06-02 20:40:09 +04:00
KoloMl
9dd26f2f87 Added separate property to control autocompletion mode
This is better than using hardcoded field name.
2024-06-02 19:58:01 +04:00
Liam
a95df5ec42 Add OpenSearch XML description for browsers 2024-06-02 11:53:06 -04:00
Liam
7667aec145 Fix invalid backwards range usage with String.slice 2024-06-02 00:02:37 -04:00
liamwhite
6bde65abd1
Merge pull request #239 from philomena-dev/verified-routes2
Verified routes
2024-06-01 23:47:39 -04:00
liamwhite
e6c7651d5d
Fix MFA usage in cast_assoc (#267) 2024-06-01 23:37:39 -04:00
liamwhite
80f9fa9352
Fix Dialyzer (#265)
* Fix post-Elixir 1.16 divergence in File.stream!

* Add exclusion for PhilomenaWeb.Config compile-time variance

* Add missing Autocomplete.t
2024-06-01 23:35:19 -04:00
Liam
9d20b9c465 Ensure flash is fetched before putting flash 2024-06-01 23:34:38 -04:00
Liam
9e79648e44 Remove converter 2024-06-01 22:28:32 -04:00
Liam
d9b3fe4fc8 Remove old route helpers 2024-06-01 22:28:32 -04:00
Liam
9ba670c864 truncated_ip_link 2024-06-01 22:28:32 -04:00
Liam
42039491b6 redirect_path, user_abbrv, last_message_path 2024-06-01 22:28:32 -04:00
Liam
c506ef884e link_to_reported_thing, link_to_noted_thing 2024-06-01 22:28:32 -04:00
Liam
e69f1bf3fa Fixup 2024-06-01 22:28:32 -04:00
Liam
c1fcfe1f6c find lib/ -name '*.ex' -exec sed -i 's|defp log_details(conn, |defp log_details(_conn, |g' {} \; 2024-06-01 22:28:32 -04:00
Liam
e84d451c2b mix convert_to_verified_routes && mix format 2024-06-01 22:28:32 -04:00
Liam
974d2109e2 Add automatic converter 2024-06-01 22:28:32 -04:00
Liam
2f7f1b3802 Remove static paths 2024-06-01 22:28:32 -04:00
Liam
c64606ae02 Fix comment routes 2024-06-01 22:28:32 -04:00
Liam
f232f38d91 Add verified routes to web 2024-06-01 22:28:32 -04:00
KoloMl
8c988b002d Support search field autocompletion, enabled autocomplete for header 2024-05-29 23:57:36 +04:00
Nighty
194b2686f6
Migrate to OpenSearch (#186)
* Migrate to OpenSearch

* opensearch security is stupid

* forgor

---------

Co-authored-by: byte[] <byteslice@airmail.cc>
2024-05-24 22:58:18 +02:00
Liam
dea3bd913c Respect max_clause_count 2024-05-23 15:29:16 -04:00
liamwhite
b235f545f2
Truncate incoming referrer string (#260) 2024-05-18 16:29:27 -04:00
mdashlw
d76be72a5d
feat(thumbnailer): purge cache for file when handling :replace_original from processors (#256) 2024-05-11 12:04:52 -04:00
Eliot Partridge
377317a26b
Add local setting to enable audio on videos by default (#252)
* Add local setting to enable audio on videos by default

* Update copy

* Use ternary over `let`+`if`
2024-05-05 17:38:22 -04:00
liamwhite
5b836580e1
profile/tag_change: show total affected image count (#248)
* profile/tag_change: show total affected image count

* Incorporate count into block header

---------

Co-authored-by: prg <prg@lacunae.de>
2024-05-05 10:12:17 -04:00
mdashlw
ca9cb3a50e
feat: add "retained" column to tag changes table (#246)
* feat: add "retained" column to tag changes table

* Update lib/philomena_web/views/tag_change_view.ex

Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>

---------

Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2024-05-04 13:00:55 -04:00
liamwhite
32619be58b
Ensure HTML raw insertion is not used in template (#247) 2024-05-03 23:15:14 -04:00
Liam
852f870ccf USe compile-time environment checks 2024-05-03 21:06:15 -04:00
Nighty
dd8c2c81d9
Vite HMR for JS/TS (and jankily for CSS) (#242)
* prelim work on vite reload

* the best solution to a problem is usually the easiest one
2024-04-30 13:13:46 -04:00
Nighty
42cd107b2a
Vite (#240)
* begin vite stuff (does not work yet)

* finalize vite switch + cleanup package.json

* Assets path, re-add async, fix z

* Remove source-map-support

---------

Co-authored-by: Liam <byteslice@airmail.cc>
2024-04-29 20:39:52 -04:00
liamwhite
77548057e8
Relax CSP on development error pages (#238) 2024-04-28 14:09:08 -04:00
liamwhite
b1a23292fa
Whitespace tolerance (#237)
* Use flexbox for centering image blocks

* Fix tab display

* Make tag list wrappable and HTML whitespace tolerant

* Make header navigation HTML whitespace tolerant
2024-04-27 22:19:57 -04:00
Liam
ba87c1679e Further improve only_tag filtering 2024-04-27 19:49:24 -04:00
liamwhite
101aec001b
Use modern Phoenix HTML escaping (#236) 2024-04-27 14:01:02 -04:00
liamwhite
eb79ee45d2
Tag change search (#234)
* profile/tag_change: add search box to show only a single tag

* Minor fixup

---------

Co-authored-by: prg <prg@lacunae.de>
2024-04-27 14:00:54 -04:00
Liam
f1a75e87f2 Fix escaping error 2024-04-27 01:54:40 -04:00
Liam
ac3b15b1e2 Add tag count fields 2024-04-22 08:29:38 -04:00
Liam
3f1f208916 Drop source_count from fields pending reindex 2024-04-21 21:22:02 -04:00
mdashlw
ea25f2a01e
Source count index (#214)
* elasticsearch image index: add source_count

* images query: add source_count field
2024-04-21 21:21:00 -04:00
Liam
f9a6240014 Add tag category counts to index 2024-04-21 21:20:43 -04:00
Liam
39efe6767c Default tags assign on error 2024-04-08 13:03:20 -04:00
Liam
3ffebd1533 Fix dynamic typing mistake 2024-04-08 12:46:54 -04:00
mdashlw
cc32f5d3b9
feat(search): force display dnp entries even if found no images (#223) 2024-04-06 16:05:32 -04:00
mdashlw
3714ae115c
fix: misleading error if image is corrupted (#222)
width/height can be nil here, first case doesn't match but nil is indeed bigger than 32767, so the incorrect error message will be displayed
2024-04-06 14:10:33 -04:00
mdashlw
2cfde149ef
Twitter scraper description (#221)
* feat(scrapers/twitter): return received tweet text

Also: use url and username from received json for the sake of consistent capitalizaton

* fix: all fields are under "tweet"
2024-04-05 12:59:16 -04:00
mdashlw
5a6b2bd874
feat: more icons for source urls (#220) 2024-04-05 08:07:54 -04:00
mdashlw
9e3db6b882
feat: more icons for source urls (#218) 2024-04-02 12:40:41 -04:00
mdashlw
1f440475ed
fix sources block not updating properly after saving (#216) 2024-03-24 11:44:48 -04:00
mdashlw
921ad0c59a
Autocomplete fallback (#215)
* autocomplete: fallback to fetch if local returns no results

* fix: don't show autocomplete if by the time fetch is complete value had already changed

* autocomplete tag controller: lower images count req from 4 to 1
2024-03-24 11:38:23 -04:00
mdashlw
f5642d1d39
galleries: set actor child to the added image for notifications (#213) 2024-03-23 16:24:59 -04:00
mdashlw
2dae9118c7
scrapers/twitter: support x.com (#211) 2024-03-23 11:56:17 -04:00
mdashlw
3395cd1470
ImageView: add more hosts for source icons (#212)
* ImageView: add more hosts for source icons

* fix compile errors
2024-03-23 11:56:07 -04:00
mdashlw
89aa180c8e
parser: don't downcase some fields (#209)
* parser: don't downcase some fields

* flip condition
2024-03-18 13:25:59 -04:00
Liam
3cc9e90ff2 Fix topic subscription target 2024-03-16 14:15:30 -04:00
mdashlw
a3428945f4
Search images by file name (#206)
* feat(Images.Query): add literal file_name field

* feat(templates/search): add file_name to search dropdown
2024-03-14 09:44:15 -04:00
mdashlw
3b2f5f36cb
feat(scrapers/twitter): highest quality image url (#207) 2024-03-14 09:28:59 -04:00
Liam
886539c514 Things have not improved since this scraper was written 2024-03-07 09:09:50 -05:00
Pedro Montes Alcalde
7a3b7e6d62
Make API key & RSS feed url only show when clicked (#205) 2024-03-06 14:36:14 -05:00
Liam
838e5e15ed Mix dependency updates 2024-03-04 11:56:56 -05:00
Liam
8c9315acf2 Module.concat workaround in post renderer is no longer needed 2024-03-04 11:34:26 -05:00
Liam
59d5211926 Remove unused uri_host function 2024-03-04 11:34:26 -05:00
liamwhite
55eac3c638
fix propagation of replaced file in edit script (#192)
fixes derpibooru/philomena#281
2024-03-04 10:57:46 -05:00
liamwhite
9ece7c327c
switch to maintained twitter scraper implementation (#187) 2024-03-04 10:57:37 -05:00
Liam
49e94afa1e Fix subscription targets 2024-03-03 00:31:06 -05:00
Nighty
9b766733a5
UI to revert tag changes one-by-one (#202) 2023-12-30 11:32:49 -05:00
Eliot Partridge
217621a9e1
Hide Queue staff link if user can't approve images (#200) 2023-12-03 20:56:32 -05:00
byte[]
0c865b3f2a Dependency updates 2023-09-27 14:17:27 -04:00
Azure Star
f422c5a756
added 2 mastodon instances where I found pony artists on 2023-07-11 21:55:13 +02:00
Luna D
41349acfdb
ui improvements 2023-06-02 19:37:03 +02:00
Luna D
1b590c6296
backport parts of image view from redesign 2023-06-01 19:42:30 +02:00
Luna D
7481721d6d
fix dupe merger 2023-05-29 14:20:57 +02:00
Luna D
8f107f4940
missed one 2023-05-29 13:22:34 +02:00
Luna D
e0eb226abe
fix source url display, provide all source urls 2023-05-29 13:06:41 +02:00
Luna D
b70c0a11f6
merging sources, fix ui bugs, more icons 2023-05-28 18:12:53 +02:00
Luna D
613d316d68
nicer code 2023-05-28 16:21:57 +02:00
Luna D
4d3310eef7
few fixes, design + format 2023-05-28 16:21:57 +02:00
byte[]
a1e2122ce4
Add on_replace to sources 2023-05-28 16:21:57 +02:00
byte[]
a1f98e95a1
Fix update_in for Image 2023-05-28 16:21:57 +02:00
byte[]
cb1d2b97ff
Fix source differ and caller to accept nested fields_for input 2023-05-28 16:21:57 +02:00
SeinopSys
adc77429f6
set default sources for image view page if none are available 2023-05-28 16:21:57 +02:00
SeinopSys
a4b85feadc
implement UI for multiple image sources editing 2023-05-28 16:21:33 +02:00
byte[]
9bce2ca0a4
Multiple sources structural changes 2023-05-28 16:14:44 +02:00
Luna D
1c5b07086e
large mix update 2023-05-18 16:23:17 +02:00
Meow
c401695513
Merge pull request #180 from philomena-dev/mod-note-display
Make mod notes show the tag name instead of the requesting user
2023-05-18 11:27:51 +02:00
liamwhite
e0dc9c79f2
fix gallery notification deletion (#183) 2023-05-10 21:42:56 -04:00
Floorb
9956ce2cb6 fix: requested changes 2023-05-04 23:05:36 -04:00
Floorb
9ec25a05ec fix: make it so moderators can delete tag changes too 2023-05-02 20:05:16 -04:00
Floorb
fe8395da99 feat: add ability for staff to delete tag changes from tag change history
This used to be a thing in Booru on Rails but wasn't added to Philomena
for some reason.
2023-05-02 19:58:06 -04:00
byte[]
a82664720f Make mod notes show the tag name instead of the requesting user 2023-04-24 14:38:05 -04:00