Commit Graph
100 Commits
Author SHA1 Message Date
evazion 6ee3b2635a Fix returning incorrect pixiv profile url (fixes #3054). 2017-05-14 22:00:06 -05:00
evazion 9b73823ccd Add post replacement create action test. 2017-05-14 21:31:12 -05:00
evazion 648cc9ecb7 Move post replacement create action to post replacements controller. 2017-05-14 21:31:01 -05:00
evazion cb09b6661d Add /post_replacements.json, /posts/1234/replacements.json. 2017-05-14 18:49:57 -05:00
evazion a6737dfc14 daily_maintenance.rb: don't prune file deletion delayed jobs. 2017-05-14 12:49:11 -05:00
evazion 91a97e37cb Fix #3051: disable S3 proxy by default. 2017-05-14 10:40:15 -05:00
evazion 2c29a7ac19 /artists: only include domains in /artists/1234.json, not /artists.json. 2017-05-14 10:38:26 -05:00
evazion 087ce001e7 user name changes: don't force new name to lowercase. 2017-05-14 09:53:49 -05:00
evazion 61a37a09cc Fix translated tags for pixiv (fix #3046).
Translated tags expects `tags` to be an array of `[tag_name, search_link]` pairs.
2017-05-13 19:17:33 -05:00
evazion 71a19c28f1 forum topics: don't record a topic visit for api requests. 2017-05-13 13:50:20 -05:00
evazion 8c88e87710 /forum_topics.atom: add atom feed for forum topics. 2017-05-13 10:37:59 -05:00
evazion e68946e95d /comments.atom: add atom feed for comments. 2017-05-13 10:37:58 -05:00
evazion c68e68f3c2 /uploads/new: add show/hide commentary toggle button. 2017-05-13 00:18:52 -05:00
evazion 757a7da49b fixup! /source.json: don't encode '&' as '&' in commentaries. 2017-05-10 21:03:29 -05:00
evazion 7a656f790d /uploads/new: autopopulate commentary from /source.json. 2017-05-10 18:01:52 -05:00
evazion a2a6a0ce27 /source.json: don't encode '&' as '&' in commentaries. 2017-05-10 18:01:52 -05:00
evazion 8015d62b46 /source.json: strip html tags from artist commentary. 2017-05-10 18:01:51 -05:00
evazion b2f62482a1 Remove artist commentary handling from download rewrite strategies. 2017-05-10 18:01:51 -05:00
evazion a3a9a78015 /comments.json: default to id_desc order instead undefined order. 2017-05-09 18:12:37 -05:00
evazion 19e91f438b bans: add test for logging in with expired ban. 2017-05-07 12:13:25 -05:00
evazion fd291c8b42 bans: fix exception when user with expired ban logs in.
`ban.destroy` fails because users have many `bans`, not a single `ban`.
Destroying the expired ban isn't necessary anyway.
2017-05-07 12:13:19 -05:00
evazion fb7e6c7e8e backups: default to s3 backup for production. 2017-05-05 22:54:39 -05:00
evazion 7db40fe69f backups: add amazon s3 backup service. 2017-05-05 22:18:28 -05:00
evazion 30a1f204e9 backups: add stub backup service. 2017-05-05 22:18:28 -05:00
evazion d40da8c5c9 post replacement: leave a system comment after replacement. 2017-05-05 16:10:43 -05:00
evazion 1a058ebe9a delayed jobs: don't delete failed jobs. 2017-05-05 11:33:11 -05:00
evazion b17d564e9b /delayed_jobs: order by next-to-run first. 2017-05-05 11:33:11 -05:00
evazion 9c9bf28db4 /delayed_jobs: add run, cancel, retry, delete actions. 2017-05-05 11:33:10 -05:00
evazion 9404eeafa1 /delayed_jobs: reorganize columns; fix column sizes. 2017-05-05 11:33:10 -05:00
evazion cbb15b3e81 /delayed_jobs: add '#c-delayed-jobs #a-index' wrapper divs. 2017-05-05 11:33:10 -05:00
evazion 666381a582 time_ago_in_words_tagged: handle times set in the future. 2017-05-05 11:33:10 -05:00
evazion c1fa656bd2 posts: change flag borders from red to blue for non-approvers. 2017-05-04 17:40:17 -05:00
evazion 31a38ea39a flags: add flag cooldown test. 2017-05-04 17:37:59 -05:00
evazion 3b37bb6142 flags: add 3 day flagging cooldown period. 2017-05-04 16:51:49 -05:00
evazion 8638b7527b flags: don't set is_flagged twice.
PostFlag#update_post already sets is_flagged when the flag is created.
No need to set it again.
2017-05-04 16:51:49 -05:00
evazion 9f64857719 flags: move status locked check to post_flag.rb. 2017-05-04 16:51:49 -05:00
evazion 43ad3258e5 API: fix api limits being lowered when user doesn't have api key. 2017-05-04 12:57:20 -05:00
evazion 038e40ec98 post replacement: increase grace period to 30 days. 2017-05-04 12:30:27 -05:00
evazion 7b5ae5f8e0 Fix #3024: strip '?' from API attributes. 2017-05-04 12:19:51 -05:00
evazion 7ade3b6831 Fix #2352: return raw usernames in API instead of pretty names. 2017-05-03 22:16:38 -05:00
evazion db1fa60a43 Set pawoo sources to html page after upload. 2017-05-03 00:09:51 -05:00
evazion d6ca040198 /super_voters: remove in favor of /users?search[is_super_voter]=true search. 2017-05-02 23:15:19 -05:00
evazion 1dba314eda /users: add search options for approvers/super voters/contributors. 2017-05-02 23:15:19 -05:00
evazion 44b1a8dbf6 /users: convert search form to simple form. 2017-05-02 22:53:33 -05:00
evazion 002d54921e responsive layout: fix "More »" link from line-wrapping. 2017-05-02 22:30:56 -05:00
evazion 85f6590b1a responsive layout: fix <input> sizes and styling. 2017-05-02 22:30:56 -05:00
evazion 352a3e065f responsive layout: fix dropdown nav menu overlapping main content.
The culprit is `float: right;` but none of this other stuff is needed.
2017-05-02 22:30:56 -05:00
evazion 5f2219a005 post replacement: add tests. 2017-05-02 20:42:41 -05:00
evazion 4e841c4ea5 post replacement: add "Replace Image" dialog to post sidebar. 2017-05-02 20:41:19 -05:00
evazion df7cd67a7d post replacement: add POST /moderator/post/posts/replace endpoint. 2017-05-02 20:41:18 -05:00
evazion dd920b3ffc post replacement: disallow unhandled cases. 2017-05-02 20:41:18 -05:00
evazion ca01539c4b post replacement: delete old files after image is replaced. 2017-05-02 20:41:18 -05:00
evazion e2b988a562 post replacement: add Post#replace! method. 2017-05-02 20:41:18 -05:00
evazion b4a38c68b4 upload.rb: separate out post creation from upload processing. 2017-05-02 20:41:18 -05:00
evazion 93c9b622a1 post_approval.rb: log correct post id when approving deleted posts. 2017-05-02 00:01:21 -05:00
evazion 1baffb31ff Link dA sources as http://$artist.deviantart.com/art/$title-$id in sidebar.
Previously we used 'http://$artist.deviantart.com/gallery/#/d$id'. This
relied on a javascript redirect on Deviantart's end, which didn't work
for people with javascript disabled.
2017-05-01 23:29:16 -05:00
evazion e10327219d /users/1234.json: include upload_limit/max_upload_limit/favorite_group_count. 2017-04-29 12:26:25 -05:00
evazion f7509433b1 /users.json: make private attributes visible to the user themselves (fix #1551). 2017-04-29 12:26:24 -05:00
evazion e31f8acc34 dmails: add title search test. 2017-04-29 11:50:26 -05:00
evazion 0652b907a9 dmails: inline search form on /dmails page. 2017-04-29 11:50:26 -05:00
evazion d1216f260e dmails: add search[title_matches] param. 2017-04-29 11:50:25 -05:00
evazion 27d6025425 dmails: convert search form to simple form. 2017-04-29 11:50:25 -05:00
evazion e8b9361226 notes: display error message when note saving fails. 2017-04-28 21:37:14 -05:00
evazion a3ecfdb79d notes: disallow blank note bodies. 2017-04-28 19:34:27 -05:00
evazion b48671f59f saved searches: drop unused name and category columns. 2017-04-28 17:22:25 -05:00
evazion 8e5491a536 saved searches: add query normalization tests. 2017-04-28 16:26:44 -05:00
evazion 0b63dd32d1 saved searches: don't change tag ordering within queries.
Normalize queries aside from the tag ordering when they're saved.
Normalize queries including ordering when they're sent to listbooru.

This way tag ordering within searches is kept in the /saved_searches listing.
2017-04-28 16:24:07 -05:00
evazion 3eef8a62cc Remove unused css. 2017-04-28 15:08:07 -05:00
evazion 7aae76d80a responsive layout: move sidebars beneath main content.
Incidentally fixes bug with notes being mispositioned on top of the
sidebar because the sidebar was declared as float: left.
2017-04-28 15:05:46 -05:00
evazion 25aaef5afe Add tests for noter:<any|none>, comm:<any|none> metatags. 2017-04-26 16:51:34 -05:00
evazion b0626a9124 Add commenter:<any|none> metatags. 2017-04-26 16:51:34 -05:00
evazion 69d9cf3927 Add noter:<any|none> metatags. 2017-04-26 16:51:34 -05:00
evazion ec895d6412 /artists: add URL/Creator/Active/Banned/Has Tag fields to search form. 2017-04-26 14:08:18 -05:00
evazion b61fdc2c6b /artists: convert search form to simple form. 2017-04-26 14:08:18 -05:00
evazion d1188d8184 /artists: add search params: has_tag, name/other_names/group_name/any_name/url_matches. 2017-04-26 14:08:18 -05:00
evazion 59a179fa15 /posts: add shift+F to unfavorite hotkey. 2017-04-25 01:50:14 -05:00
evazion 9a0bc6802b /post_appeals: add blank option to Resolved dropdown. 2017-04-24 22:45:02 -05:00
evazion 146dc116d6 /posts: remove tag subscriptions from navbar. 2017-04-24 21:44:40 -05:00
evazion 54db229094 comment_test.rb: add quote-stripping test. 2017-04-24 21:15:47 -05:00
evazion c586a66e1f dtext: recognize [QUOTE] tags when quoting comments, forum_posts.
Fixes a bug with capitalized [QUOTE] tags not being handled properly
when quoting comments or forum posts.
2017-04-24 21:15:47 -05:00
evazion 869f1610fc comments: use server-side quote-stripping instead of reimplementing in js. 2017-04-24 21:15:47 -05:00
evazion 18424531fa Merge mentions quote-stripping code into DText quote-stripping code. 2017-04-24 21:15:42 -05:00
evazion 8404064854 related_tag_calculator.rb: fix memcache lookup in inner loop.
Remove the category constraint option from RelatedTagCalculator.calculate_from_posts.
It slows things down and isn't used.

This method is used to calculate the related tags sidebar during
searches for single metatags. Using Tag.category_for in the inner loop
caused a memcache call on every iteration. At 100 posts per page and
20-30 tags per post, this led to up to 2000-3000 total memcache calls,
which significantly slowed pageloads.
2017-04-23 17:10:20 -05:00
evazion 30872ebb41 Fix #2990: Wiki Autocomplete Misses On Certain Meta-wikis
/wiki_pages?search[order]=post_count didn't include wiki pages that
didn't belong to a tag. This was due to doing an inner join on the tags
table instead of a left outer join.
2017-04-23 16:55:15 -05:00
evazion 808fe0411a /notes, /note_versions: fix N+1 queries on note creators, updaters. 2017-04-23 14:59:36 -05:00
evazion 989917cb07 /notes, /note_versions: use numbered paginator. 2017-04-23 14:59:36 -05:00
evazion e6d1842545 /notes: default to listing notes, not posts. Remove group_by=post.
The posts listing is replaced by a link to order:note.
2017-04-23 14:59:36 -05:00
evazion 4631262374 Fix broken tag autocomplete on multiple pages.
Mark all tag <input>s with a `data-autocomplete` attribute, instead of
hardcoding a list of html IDs to autocomplete in javascript.

This way should be less error prone. It fixes autocomplete in several places:

* Autocomplete for the search box on /posts didn't work in the
  responsive layout. This was because /posts has two search boxes that
  both have the id `tags`: one in the normal sidebar, and one in the
  responsive tag list. $("#tags") only initialized autocomplete on the
  first one.

* Autocomplete didn't work on the aliases or implications pages. This
  was due to selecting the wrong html ids.
2017-04-22 15:24:03 -05:00
evazion f403763d8b /tag_implications: convert to simple form. 2017-04-22 15:23:14 -05:00
evazion 738c14a8a3 /tag_aliases: convert to simple form. 2017-04-22 15:23:14 -05:00
evazion 2db3af56dd /tags: convert search form to simple form. 2017-04-22 15:23:14 -05:00
evazion 0ed0fb095b /notes/search: convert to simple form. 2017-04-22 13:04:04 -05:00
evazion d8fb4399cf /artist_commentaries/search: convert to simple form. 2017-04-22 13:04:04 -05:00
evazion 0b2493b2dd tag subscriptions: fix broken saved search migrations. 2017-04-21 22:48:52 -05:00
evazion f1552539f7 notes: allow <ruby> tags for marking up furigana. 2017-04-21 14:31:05 -05:00
evazion 5f9c423542 upload.rb: detect mp4s with an ftyp of avc1. 2017-04-20 23:08:34 -05:00
evazion fce8dcc97d /users: fix self-xss in favorite tags. 2017-04-20 20:33:56 -05:00
evazion 5303d1052f /posts: fix saved search dropdown for post show page. 2017-04-20 19:05:54 -05:00
evazion 94e548cfe1 /bans: add test for searching bans. 2017-04-19 17:56:26 -05:00
evazion f6fff16e75 /bans: avoid N+1 queries for user, banner.
Avoids an N+1 issue when rendering users with link_to_user.
2017-04-19 17:56:26 -05:00