path: root/lib/VNDB/Handler/
AgeCommit message (Collapse)AuthorFilesLines
2018-02-08Store d+ pages in the DB as versioned entries + use markdownYorhel1-74/+10
This touches a bunch of things: - Adds a new first-class database entry type - Removes the d+.+.+ BBCode link syntax, adds a new d+#+ and d+#+.+ link syntax (references have been updated where possible) - Adds a new dependency on Text::MultiMarkdown
2017-06-05Fix "All except characters" to show staffYorhel1-1/+1
2017-01-19Add Open Graph tags for the main page and vrspcflan1-3/+13
2016-02-12Minor fixes / behaviour reverts related to the removal of L10NYorhel1-1/+1
- Fix mouse-over text of language flag on homepage - Capitalize release types in edit form - Use plural form of character roles on VN page listing
2016-01-26Handler::Misc: Fix perl warning on 404 */histYorhel1-1/+1
2016-01-23L10N: Intern all VNDB::Handler::* stuffYorhel1-44/+45
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-2/+2
2016-01-17L10N: Intern blood_types/genders/(char|staff)_roles/discussion_boardsYorhel1-1/+1
I definitely needed the Tie::IxHash thing for these.
2016-01-16L10N: Intern languages/platforms/resolutions/media/ptype/rtype/vnlengthYorhel1-25/+4
2015-10-21Improve SQL in dbRevisionGet()Yorhel1-2/+1
Two main improvements: - Filtering on (non)hidden items now doesn't join any of the item tables, instead it looks up the latest revision from the changes table itself, using the index on (type,itemid,rev). It's still not super fast, but a pretty large improvement nonetheless. - The item titles/names are obtained in a separate query. I tried to modify the main query in various ways, but couldn't make it as fast as I'd have liked. I also removed the 'what' flag while I was at it, all uses of the method request all information anyway.
2015-10-17SQL: Fix all browsing queries to use the new schemaYorhel1-2/+2
This basically makes VNDB browsable again, but editing entries is still broken. I split off the get-old-revision functionality from the db*Get() methods into db*GetRev(). This split makes sense even with the old SQL schema: db*Get() had to special-case some joins/filters when fetching an older revision, and none of the other filters would work in that case. This split does cause some code duplication in that all db*GetRev() methods look very much alike, and that the columns they fetch is almost identical to the db*Get() methods. Not sure yet how to avoid the duplication elegantly. I didn't do a whole lot of query optimization yet (most issues require extra indices, I'll investigate later which indices will make a big difference), but I did fix some low hanging fruit whenever I encountered something. I don't think I've worsened anything, performance-wise.
2015-09-20Update usage kv_validate() to upcoming TUWF 1.0Yorhel1-1/+1
And added new 'page' and 'id' templates for more strict validation.
2015-07-25Handler::Misc: Fix minor calculation error in determining "admin" userYorhel1-1/+1
2015-07-19Remove reliance on Referer header for language switchingYorhel1-9/+9
First step in removing the use of the Referer header for redirects. The Referer header is ugly and not always reliable, it's better to encode the required information in the URL.
2015-06-15d7: Replace "top 5 contributors" with "special users" listingYorhel1-5/+9
Having a proper and up-to-date list of moderators is an often requested feature.
2015-01-27staff: Fix various parts to recognize the new staff databasemorkt1-1/+2
2014-12-22Initial implementation of a staff/seiyuu databasemorkt1-1/+2
2014-10-21Use TUWF's reqBaseURI() instead of $self->{uri} on site linksYorhel1-5/+7
TUWF properly detects HTTPS and includes this in the returned URL, so this change ensures that all URLs adopt properly to HTTP and HTTPS.
2011-08-22Use generic imgurl() and imgpath() functions to generate image URLs/pathsYorhel1-2/+1
2011-04-30Cleaned up permissionsYorhel1-1/+1
- Removed 'hist' and 'mod', weren't used at all - Merged 'del' and 'lock' into a single 'dbmod'
2011-04-30Added "All except characters" filter to history browserYorhel1-2/+3
2011-03-19chardb: Added 'Only characters' filter to history pagesYorhel1-1/+2
2011-02-15chardb: Added char entry tables and updated the basic revision frameworkYorhel1-1/+2
The Perl code and SQL-revisioning code only handles the name, original, alias and desc fields at the moment. There is a basic /i+ and /i+.+ page for testing, which should have all the functionality required for the revisioning framework.
2011-02-03TUWF: Replaced reqParam() with reqGet() or reqPost() where applicableYorhel1-1/+1
Cleaner this way. Also found two occurences of manually HTML-escaping text for textareas, which isn't necessary anymore.
2011-02-02Added /t/all - a listing of all recently replied to threadsYorhel1-1/+1
2011-01-27TUWF: Added tag name to several end() callsYorhel1-12/+12
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-27TUWF: Cleanup IE check code using pre_request_handler return valueYorhel1-43/+0
No more ugly hacks in my code thanks to TUWF! (a browser check in itself is already ugly enough for my tastes...)
2011-01-27TUWF: Use the uri_escape() provided by TUWFYorhel1-1/+1
2011-01-27TUWF: Replaced resHeader('Set-Cookie', ..) with resCookie()Yorhel1-4/+2
Way more convenient. This also fixes several bugs with the previous commit, since the cookie_prefix wasn't used for *all* cookies. Since it is now, the 'l10n' cookie now also respects the configured prefix, which means some people will have to set their default language again. Configuration changes: 'cookie_domain' option has been removed, the 'cookie_defaults' option of TUWF should now be used.
2011-01-25TUWF: Initial convert from YAWF to TUWFYorhel1-17/+17
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-07Added 'released' release filterYorhel1-2/+2
Just an alias for the correct date_before or date_after filter. Allows bookmarking 'just released' or 'to be released' listings since the URL doesn't change now. Same for saved filters - it's now possible to permanently exclude future releases without having to change the filter each day.
2011-01-07DB::Releases: Inverted 'unreleased' option to dbReleaseGet()Yorhel1-2/+2
Makes more sense this way.
2011-01-02Bugfix: Correctly randomize screenshots on homepage with filtersYorhel1-1/+1
2011-01-01Also apply permanent VN filters to the random screenshots on /Yorhel1-1/+7
2011-01-01Added saving notes to filter selector and applied filFetchDB()Yorhel1-3/+3
This finalizes the permanent filters feature.
2011-01-01More infrastructural changes to accomodate for the permanent filtersYorhel1-0/+19
- Added a 'prefs' option to htmlFooter() to add preference data for use by Javascript. - Added an /xml/prefs.xml URL for setting preferences from JS. - Added 'filter_*' keys to the prefs_key ENUM - Load filters by default on VN and Release browser
2010-12-23Store l10n preference in the database for logged-in usersYorhel1-2/+9
2010-12-23Converted the show_list pref. to users_prefs and inverted the valueYorhel1-1/+1
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-16Fixed perl warning on /v/search redirect without search queryYorhel1-1/+1
2010-12-13Removed /u+/tags and replaced/added links to /g/links?u=XYorhel1-0/+1
The new tag link browser has replaced the crappy old user-tags-browser.
2010-12-10Added vote listings for VNs and users (/[uv]+/votes)Yorhel1-4/+2
2010-12-09Handler::Misc: Fixed perl warning and redirect bug for old /v/search URLsYorhel1-1/+1
We can't redirect to unencoded and unescaped URLs containing unicode characters.
2010-11-27Extended IE6 warning message to show up for IE7 as wellYorhel1-6/+6
Because the site never looked good in IE7, and the new filter system doesn't work *at all*. (Doesn't work correctly on IE8 either, but I'll try to fix that)
2010-11-21Implemented the server side of the new release filter selectorYorhel1-2/+2
There's no validation of the filter string yet, and somehow I don't feel like adding that; it's a lot of code and there's nothing to protect - the values are inserted using parameters into a SELECT query, the worst thing that could happen is the user receiving a 500. Also, I've started using the perl '//=' operator, which was added in 5.10. This removes support for older perls.
2010-11-14Handler::Misc: Added title attribute to the feed cssiconsYorhel1-5/+3
This also gets rid of three perl warnings.
2010-11-13Homepage: Added feed iconsYorhel1-3/+8
2010-11-13Added <link> elements for the related atom feeds to some pagesYorhel1-2/+2
2010-11-02Handler::(Misc|VNPage): Added HTML width/height to screenshot thumbnailsYorhel1-1/+3
And made sure the dimensions are truncated in VNDBUtil::imgsize(). Setting the width/height attributes makes sure that the browser can reserve space for the image when it hasn't been loaded yet, which prevents the overall page layout from changing while the images are loading. (which is annoying if your connection isn't all that fast)
2010-01-26Removed the ?l10n= parameterYorhel1-0/+15
Setting the l10n cookie is now done from a separate url: /setlang This makes the language determination code less complex, and makes sure nobody links to pages that change the UI language without intending to. (I've seen some links floating around with the l10n parameter included, which is... bad)
2010-01-24Automatically generate the skin credits on d7Yorhel1-4/+13
Added a userid field in the skin config files, from which the credits are loaded. Now I don't have to constantly update d7 for every language when something changes in the skin files.