evazion
f5c9616f62
tests: fix broken tests.
2018-09-24 17:34:08 -05:00
evazion
d9063a9f2a
nijie: support preview urls ( #3919 ).
2018-09-24 17:08:37 -05:00
evazion
99babe19f3
views/static: removed unused templates.
2018-09-23 20:18:34 -05:00
evazion
d188e5be33
wiki_page.rb: remove dead methods.
2018-09-23 20:13:51 -05:00
evazion
52704ef6cd
nijie: take artist id from url when possible ( #3919 )
...
Fixes the artist finder to work on Nijie posts that have been deleted.
2018-09-23 20:08:14 -05:00
evazion
5525bbe1ca
nijie: normalize all thumbnail urls ( #3919 ).
2018-09-23 20:08:14 -05:00
evazion
d294514dc0
nijie: don't crash on invalid urls or deleted works ( #3919 ).
2018-09-23 20:08:14 -05:00
evazion
b6228505aa
nijie: fix page_url method.
...
The id in a bare image url is the member id, not the illust id.
2018-09-23 20:08:13 -05:00
evazion
b4cf423058
Clean backtraces in uploads/show, static/error.json.
2018-09-23 20:08:13 -05:00
evazion
3414d27c78
post replacements: fix self-replacements; don't swallow upload errors.
2018-09-23 10:51:16 -05:00
evazion
39fe5273a9
Fix #3917 : Uploads: validate file before resizing/distributing.
2018-09-23 10:51:16 -05:00
evazion
39f9e01b13
nicoseiga: fix canonical_url to use the image url.
2018-09-22 11:07:18 -05:00
evazion
09a8198979
/artists: add wildcard, regex search to url field ( #3900 )
...
Allow searching the URL field by regex or by wildcard.
If the query looks like `/twitter/` do a regex search, otherwise if it
looks like `http://www.twitter.com/ *` do a wildcard search, otherwise if
it looks like an url do an artist finder search, lastly if it looks like
`twitter` do a `*twitter*` search.
2018-09-21 21:19:01 -05:00
evazion
a4608daf38
/artists: add more search options for other names, group name.
...
Add these search params:
* /artists?search[<field>]=
* /artists?search[<field>_eq]=
* /artists?search[<field>_not_eq]=
* /artists?search[<field>_like]=
* /artists?search[<field>_not_like]=
* /artists?search[<field>_ilike]=
* /artists?search[<field>_not_ilike]=
* /artists?search[<field>_regex]=
* /artists?search[<field>_not_regex]=
where `<field>` can be `name`, `group_name`, or `other_names`.
Remove these search params:
* /artists?search[name_matches]=
* /artists?search[other_names_match]=
* /artists?search[group_name_matches]=
`/artists?search[<field>_like]=` effectively does the same thing that
these searches did.
2018-09-21 20:55:14 -05:00
evazion
f917b83d6f
/artists: drop deprecated search syntax, add regex search for names.
...
Drop support for the following pseudo-metatags in the Name field in the
artists search form:
* name:<name>
* other:<other name>
* group:<group name>
* status:banned
* status:active
* http://www.example.com
Instead, make the Name field do a wildcard search against the artist
name, group name, or other names. If the query looks like `/regex/`,
then do a regex search against any of these names.
/artists?search[name] now does a literal exact match and
/artists?search{any_name_matches] does the above wildcard/regex search.
2018-09-21 20:51:53 -05:00
evazion
237ab9b782
dmail filters: fix filters being case sensitive.
2018-09-20 19:51:59 -05:00
evazion
03abbd0683
Fix #2894 : Use [[:space:]] instead of \s in regexes.
2018-09-20 19:24:38 -05:00
evazion
29cdaddd86
PostSetPresenters::Post#related_posts: clean up metatag parsing ( #2894 ).
...
* Fix `#related_tags` to use `Tag.has_metatag?`.
* Fix Tag::SUBQUERY_METATAGS and Tag::METATAGS to be arrays instead of regexes.
2018-09-20 19:23:47 -05:00
evazion
6fe883c316
posts index: clean up limit:<n> / order:random parsing ( #2894 )
...
* Move the limit:<n> / order:random metatag parsing from the controller
to the post set.
* Introduce `Tag.has_metatag?` and use it to parse these metatags
instead of using a regex (#2894 ).
2018-09-20 19:23:47 -05:00
evazion
235271706b
Fix #3913 : Remove legacy /post/create.xml endpoint.
2018-09-20 12:25:16 -05:00
evazion
958a9f505b
moebooru: rewrite sample urls + support bookmarklet on html page.
...
* Fixes #2942 : Add Moebooru Rewrite for Sample Images.
* Addresses #3911 : Improve Moebooru support.
2018-09-19 23:32:21 -05:00
evazion
f4e08ef30d
Downloads::File: fix SSRF inside is_cloudflare? ( #2498 ).
...
Fixes the banned IP check not being applied when sending the HEAD
request for is_cloudflare?.
Also fixes the `#size` method not using the uncached url (which meant
the bookmarklet could report the wrong filesize on artstation uploads).
2018-09-19 20:11:53 -05:00
Albert Yi
9e1e73ec4c
migrate blacklists during mass updates ( #2251 )
2018-09-19 16:25:06 -07:00
Albert Yi
ed5b2ad443
throw error on counts/posts endpoint during a timeout ( #2170 )
2018-09-19 13:34:50 -07:00
evazion
2f17082e73
Downloads::File: fix SSRF when following redirects ( #2498 ).
...
Fixes the banned IP check not being applied when following redirects:
http://danbooru.donmai.us/uploads/new?url=http://httpbin.org/redirect-to%3Furl=http://127.0.0.1/test.jpg
2018-09-18 16:00:03 -05:00
evazion
99221e4028
Downloads::File: fix SSRF attack when fetching remote size ( #2498 ).
...
Fixes the banned IP check not being applied when fetching the remote
file size. This allowed one to trick Danbooru into sending HEAD requests
to private IPs:
http://danbooru.donmai.us/uploads/new?url=http://127.0.0.1/test.jpg
2018-09-18 12:16:27 -05:00
evazion
488b1fd994
Downloads::File: memoize strategy.
...
Also remove unused options param from constructor
2018-09-18 10:22:15 -05:00
evazion
9cdfbba6c2
Fix #3910 : Corrupted images during upload.
...
Use a fresh tempfile for each download attempt instead of reusing the same
file (and having to rewind/truncate it after each failed attempt).
2018-09-18 10:01:44 -05:00
evazion
d3c135ec72
Downloads::File#http_get_streaming: clean up retry logic.
...
Replace handrolled retry logic with retriable gem (already pulled in by another gem).
2018-09-18 09:44:15 -05:00
evazion
96e89cecfb
tests: move twitter canonical url test.
2018-09-17 23:27:53 -05:00
evazion
5f328c842a
/artist_urls: fix timestamp formatting.
2018-09-17 21:01:42 -05:00
Albert Yi
1a1d74d1ca
add diff link on wiki page versions ( #1622 )
2018-09-17 17:36:46 -07:00
Albert Yi
79f53c25ea
skip tests that throw net::opentimeout
2018-09-17 17:00:46 -07:00
evazion
823f78af49
autocomplete.js: add data attrs on autocomplete results ( #3902 ).
2018-09-17 18:18:33 -05:00
evazion
2d5f6b8a35
Fix #3902 : Add source of tag autocomplete to the results.
2018-09-17 18:07:48 -05:00
Albert Yi
5958b3f5da
disable statement timeout in migration
2018-09-17 13:23:10 -07:00
Albert Yi
aea2d77c3a
Merge pull request #3907 from evazion/fix-3900
...
#3900 : Allow to search for urls associated with artists using wildcards
2018-09-17 12:03:15 -07:00
evazion
4a99cb098f
moebooru: use the image url as the canonical url.
2018-09-16 21:00:11 -05:00
evazion
d9ce953752
Fix #3906 : Moebooru strategy raises NotImplementedError.
2018-09-16 21:00:11 -05:00
evazion
cae78fa8ee
moebooru: move tests from unit/downloads to unit/sources.
2018-09-16 21:00:11 -05:00
evazion
f135a7c064
twitter: normalize canonical urls.
...
Normalize http://mobile.twitter.com to http://twitter.com in canonical urls.
2018-09-16 15:03:47 -05:00
evazion
bd47641601
twitter: don't fail when api key isn't configured.
2018-09-16 15:03:47 -05:00
evazion
325120ee51
twitter: fix parsing of the artist name from the url.
...
Fixes URLs like https://twitter.com/intent/user?user_id=123 being
incorrectly normalized to http://twitter.com/intent/ in artist entries.
Also fixes the artist name to be taken from the url when it can't be
obtained from the api (when the tweet is deleted).
2018-09-16 15:03:23 -05:00
evazion
4a84ec9e26
artist urls: add trigram indexes on urls.
2018-09-15 19:58:55 -05:00
evazion
c9b3c8d217
artist urls: add tests for controller + artist url search.
2018-09-15 19:58:55 -05:00
evazion
3afc0b3a78
artist urls: add more url search params for /artist_urls.
...
Adds these search params:
* /artist_urls?search[url]=...
* /artist_urls?search[url_eq]=...
* /artist_urls?search[url_not_eq]=...
* /artist_urls?search[url_like]=...
* /artist_urls?search[url_ilike]=...
* /artist_urls?search[url_not_like]=...
* /artist_urls?search[url_not_ilike]=...
* /artist_urls?search[url_regex]=...
* /artist_urls?search[url_not_regex]=...
and likewise for normalized_url.
2018-09-15 19:58:54 -05:00
evazion
c06af060f9
artist urls: add artist, url_matches search params to /artist_urls.
2018-09-15 19:58:31 -05:00
evazion
1fce794b99
artist urls: add /artist_urls index page.
2018-09-15 19:58:05 -05:00
evazion
761f2649af
artists: add more invalid name tests ( #3901 ).
2018-09-14 13:32:45 -05:00
evazion
bbb233b93f
css: remove unused or redundant rules.
2018-09-14 13:31:59 -05:00