- https://kuschelyagi.com/
- Joined on
2018-08-19
This is (mostly) implemented, but we are experiencing hurdles with the archive itself. In other words - the redirector generates redirect URLs that are consistent with what the archive generator generates, but the archive generator is not generating the correct URLs in the first place
Progress was made. Main pain points right now:
- Template transclusion is half-baked. Note that the library we're using (mwparserfromhell) doesn't actually do this so we have to roll our own.
- Magic words (e.g. PAGENAME, NUMBEROFARTICLES etc) are not yet implemented - they would be implemented like any other template
- Category parsing/generation is also half-baked, doesn't seem to take into account template transclusion (which it should, since transclusion happens before we look for categories)
- Images are not yet included. We could make a script to pull images or just use the dump from archive.org for this
- Page name normalization is funky. Notable in that sometimes a slash (/) indicates a subpage (e.g. GlitchDex/RB:000) and sometimes it's just a slash (e.g. Gold/Silver/Crystal). We have some special logic in both the archive builder and redirector to know the difference.
- nginx normalizes URLs before passing them into our handlers so e.g. Gold%2FSilver%2FCrystal (which is what we would generate) is interpeted as Gold/Silver/Crystal (i.e. a directory structure), which obviously fails. It's probably possible to configure nginx to get around this but the goal with these archives is to avoid having special server configuration for them, and they should be hostable anywhere. Most likely we need to come up with a new character to represent / (+ is the current candidate)
Mostly done. I think the pagination on the forum threads needs to be improved (since we should know how many pages a thread has) and the bbcode has to be tidied up a bit.
This is complicated by the fact that the forum archive is generated in hierarchical order (board-X/thread-Y/page-0.html) and the forum URL only has a thread id and post id. We would either need to generate an index for the redirector or just use the generated forum.sqlite (which we probably could, since we're in the same package as the archive generator and have access to the forum.sqlite