summaryrefslogtreecommitdiff
path: root/lib/VNDB/Handler/ULists.pm
AgeCommit message (Collapse)AuthorFilesLines
2020-04-24v2rw/VN::Page: Remove old and unused codeYorhel1-51/+0
There's a lot of unused code in VNDB::DB::{VN,Release} still, but I'll not fiddle with that for now.
2019-12-24ulist: Delete old lists code and redirect old URLsYorhel1-482/+1
2019-12-22ulist: Use new lists for VN vote stats & listingYorhel1-1/+2
To my surprise, I actually managed to achieve acceptable performance by just adding two indices. I totally expected I'd have to keep a cache column in ulist_vns whether the row is private or not. The partial index on the users table in fact improves the performance of the vote graph query. A covering index improves that even further, but that requires Postgres 11+, which the Docker image doesn't have yet (and isn't all that crucial anyway). There's a rather annoying potential for confusion regarding the private flag on votes. The user page & list stats only look at whether the 'Voted' label is private, whereas the VN stats use the "proper" approach of checking for any public label. Not entirely sure which of the two is more intuitive.
2019-11-15Move pubskin fetching responsibility to VNWeb::HTML::framework_Yorhel1-6/+6
Requiring callers to fetch the right fields and pass it along to framework_() just seems brittle. This implementation requires an extra query but does make an effort to avoid fetching the skin and css when it's not needed.
2019-10-10rewards: Honor public custom css/skinYorhel1-6/+6
2019-10-10rewards: Apply supporters badge and unicode name (almost) everywhereYorhel1-4/+4
Only place where this isn't applied (yet?): Sorting user lists still goes by the old username and board names don't use the new unicode names. I have to say, I quite like the sql_user() and user_() pattern. It's not without problems when applied to everything, but it's good enough for several use cases.
2019-09-11VNDB::Types: Convert (wishlist|rlist|vnlist)_statusYorhel1-21/+22
I did create a function to export arrays, but ended up exporting them as hashes. That ought to simplify a conversion to an enum type. Which will likely never happen because I'd rather switch to dynamic user-defined statuses, but that's quite a step further...
2019-07-13ULists: Remove character filter in VN vote listingsYorhel1-6/+8
This can leak information about hidden users. While it's possible to fix the filter to throw all hidden users under 'h', I don't think the character filter had much value anyway and this is less error prone.
2019-07-12Display hidden users in VN vote listings, but hide their username/idYorhel1-3/+8
https://vndb.org/t950.119 - old request, but better late than never.
2018-03-04Allow decimal voting from /u+/votesYorhel1-5/+6
2016-01-23L10N: Intern all VNDB::Handler::* stuffYorhel1-35/+35
Most of these replacements were automated. This ended up being less work than I had anticipated. I also fixed a few minor bugs along the way, but probably introduced more than I fixed.
2016-01-19Move some VNDB::L10N stuff to VNDB::Func + intern VNDB::FuncYorhel1-3/+3
2016-01-17L10N: Intern tag_cats/voiced/animated/*_statusYorhel1-20/+20
2016-01-16L10N: Intern languages/platforms/resolutions/media/ptype/rtype/vnlengthYorhel1-2/+2
2015-09-20formValidate(): Let's just allow a '0' id - fix more errorsYorhel1-3/+3
Looks like 0 is actually used often to indicate some special value. Affects basically all 'check all' boxes (had to modify some of those boxes because some used -1, but that wasn't a problem).
2015-09-20Update usage kv_validate() to upcoming TUWF 1.0Yorhel1-10/+8
And added new 'page' and 'id' templates for more strict validation.
2015-08-17js: Clean up misc.jsYorhel1-4/+6
- Individual blocks don't leak variables into the parent scope anymore. Previously some blocks would re-use variables from other blocks, creating (almost invisible) dependencies between te blocks. - More consistent code for ulist-change-dropdowns, and all of them have a ref= argument now. - Use 'hidden' class instead of style.display wherever that makes sense. - Remove dead 'advselect' code. Hasn't been used since the addition of search filters. - lang_select doesn't rely on the position of the language class in className anymore (seriously that stuff is fragile...)
2015-07-19Remove reliance on Referer header for /[vr]+/list modificationsYorhel1-6/+6
2014-10-21Use TUWF's reqBaseURI() instead of $self->{uri} on site linksYorhel1-1/+2
TUWF properly detects HTTPS and includes this in the returned URL, so this change ensures that all URLs adopt properly to HTTP and HTTPS.
2013-01-21I18N: Merge all translation strings that eval to "Unknown"Yorhel1-5/+5
A generic '_unknown' is more easily usable.
2012-01-25Do most of the table striping in CSSYorhel1-4/+4
Using CSS3 selectors. This is a more elegant approach, and since browser support for CSS3 selectors isn't as crap as it used to be I can finally make use of them.
2012-01-10Allow one fractional digit for VN votesYorhel1-6/+6
The interface to set a non-integer vote isn't very nice, but at least it works. Or so I hope.
2011-04-08Added 'select' all to wishlist and moved 'select all' down on notifiesYorhel1-0/+3
For consistency
2011-04-07Bugfix: Properly format future dates on my vn listYorhel1-1/+3
2011-01-27TUWF: Added tag name to several end() callsYorhel1-8/+8
Haven't found any bugs this way, yet. I doubt there'll be any problems, but it's a nice new feature that could help quite a bit. :-D
2011-01-25TUWF: Initial convert from YAWF to TUWFYorhel1-42/+42
There may still be some bugs present and I've only converted the points where TUWF is incompatible with YAWF. The new TUWF features are not in use yet, I'll do that later on. Note that, in order to run the new code, TUWF must be installed on your system. The configuration for the TransAdmin plugin has also changed. Other than that there shouldn't be any issues.
2011-01-02Fixed perl warning on /u+/votes batchedit with nothing selectedYorhel1-1/+1
2010-12-28Bugfix: *properly* check for access priviledge on users' listsYorhel1-3/+3
Bug introduced in 6ff1efe0d07e24e9fb2db199c308c6cbed51e578.
2010-12-28Bugfix: check for validness of form arguments on /[uv]+/votesYorhel1-0/+1
2010-12-23Converted the show_list pref. to users_prefs and inverted the valueYorhel1-5/+6
In the users_prefs table, the default value should evaluate to 'false' in Perl, so show_list had to be inverted to hide_list.
2010-12-21Added vnlists.status filter to /u+/listYorhel1-1/+8
Can only filter on one option. If there are more things to filter on it would make sense to use the filter selector, but for now this will do.
2010-12-21Added notes field to the user VN listYorhel1-4/+11
The interface to set this could be more dynamic, since it'll be a lot of work to set different notes for each VN. But oh well, let's first see how many people will use this feature.
2010-12-20Added ability to batch-edit votes to /u+/votesYorhel1-2/+40
2010-12-19ULists::votelist: Added first character selectionYorhel1-4/+10
2010-12-19ULists::votelist: Don't give a 404 on /u+/votes when no votes foundYorhel1-2/+3
2010-12-19RFC-01: Code/DB cleanup and renamed some stuff for consistencyYorhel1-10/+10
2010-12-19RFC-01: Added VN list selection box to VN pagesYorhel1-3/+23
2010-12-19RFC-01: Fixed release list updating dropdown on VN pagesYorhel1-5/+2
2010-12-19RFC-01: Fixed release list selection thing on release pagesYorhel1-7/+4
2010-12-19RFC-01: Updated and improved /u+/listYorhel1-43/+62
I'm sure I broke all vnlist/rlist-related features on the rest of the site since I modified the DB abstractions. But these will all have to be updated/rewritten anyway.
2010-12-15Handler::ULists: Added noindex to /[vu]+/votesYorhel1-1/+1
In line with the noindex on other ulists pages. And it's not very interesting for googling users anyway.
2010-12-10Added vote listings for VNs and users (/[uv]+/votes)Yorhel1-0/+60
2010-11-06Fixed cross-site request forgery vulnerabilitiesYorhel1-5/+12
2010-02-06Handler::ULists: Fixed L10N bug with the char browser on /u+/listYorhel1-1/+1
2009-11-27DB: Abstracted all ORDER BY clauses in the DB abstraction layerYorhel1-2/+2
The ORDER BY was previously specified using an 'order' argument, which would then be directly inserted into the query. The new method is the same as what I used for the public API: two 'sort' and 'reverse' arguments. This should be less error-prone and more readable. This changes quite a lot of code, so I hope I haven't forgotten to update something along the way.
2009-10-17Handler::ULists: Add secundary order by title when ordered by voteYorhel1-1/+1
This fixes a strange issue that the ordering changes when browsing to the next page, resulting in some VNs not showing up at all.
2009-10-07L10N: Extracted release list statusesYorhel1-6/+6
Should be converted to enums at some point... integers don't do the trick here.
2009-10-03JS: Rewrote and generalized row group expand codeYorhel1-3/+3
2009-09-06L10N: Converted wishlist_status in global.plYorhel1-8/+8
This is one of the last easy-to-extract unextracted texts... the rest is slightly harder to extract. Either because it's in JS, used in Multi, or used in some creative way that doesn't work well together with extraction... :/
2009-09-04L10N: Converted Handler::UListsYorhel1-23/+22