New Replays now supports adding `?p2` to the end of a replay
URL, to see the replay from the opposing viewpoint.
Search results will now automatically be from the viewpoint of
the player you're searching for.
Viewpoint is now a selector rather than a "Switch sides" button,
which should hopefully be clearer about what it's doing.
Old Replays's two column support was the Panel system most notably
shown off by PSDex. It was definitely very nice but a bit hard to
port to Preact.
This new one, written from scratch, has a few niceities:
- topbar can scroll offscreen
- only one scrollable area (scroll wheel works everywhere, and
the PageUp/PageDown/Spacebar keys are unambiguous)
- uses very little JavaScript when resizing; most of the layout
work is done by CSS
With the drawbacks:
- no animation
- only two columns supported (not relevant to Replays which has
never used over two columns)
- uses a lot of modern CSS (overflow: sticky, and flexbox) but
should degrade gracefully
The headline feature here is that we now support being logged in and
searching for private replays. We also have a new button to instantly
find your own replays.
Also here is the basics of HTML5 history support. It's the first step
to having the two-column layout up and running!
The main difference is that the main search screen should look
much nicer now.
https://pokemonshowdown.com/replays/
Putting search/featured/recent in separate sections makes the new
design look much nicer. And dark mode is now fully supported.
New Replays isn't done yet but I've done a lot of work on it and
probably it deserves a commit.
Why rewrite Replays:
- I redesigned pokemonshowdown.com to look more modern and support
dark mode, and rejiggering Old Replays would be a lot of work
anyway.
- It'd be nice to actually deploy some of PS's whole Preact
infrastructure somewhere, instead of it just being in development
hell.
- Nice to get a second look at the relevant code, leading to fixes
like fc00e68231 and f28b1e9bf3.
- Replays is due for a migration from JS/PHP to TS anyway.
Anyway, feel free to try out New Replays, it's live in:
https://pokemonshowdown.com/replays/
Old Replays will stick around until we hit feature parity, but
that shouldn't be too long (I know, famous last words).
In the distant past, Lobby was open by default, so people linking
to Lobby usually meant to link to PS itself, so links to Lobby
would just open PS.
This is no longer necessary, now that we no longer open Lobby by
default.
This commit also cleans up a bunch of other .htaccess entries,
for style/readability.
Unfortunately, the my computer crashed, and took with it the PSD
for this updated logo. But fortunately, I managed to upload all
the important versions (like the orange version for "you have a
notification").
* Add a link to the staff list
[very serious comment]
The text in the first paragraph says "A full staff list can be found below." but there was no staff list below lmao.
* Update website/pages/staff.md
meow
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
I heard some complaints about Horizon looking blurry on large screens, so
here I am spending nearly 600 KB of the home page's 1 MB bandwidth use on
a nice-looking background.
To be fair, it is in fact a nice-looking background and the most
eyecatching thing there, so it's probably worth it.
This actually makes a surprising amount of difference for now nice things
look!
This takes advantage of inline-block, a feature not supported by IE6. I'm
always weirdly hesitant to use "modern" CSS, but I suppose worrying about
IE6 support is a bit insane even for me; even Replays required IE7+ when
I first wrote it.
The redesign was always designed to accommodate all PS pages; I just
dragged my feet in transitioning the other pages over.
Sadly, the other main tabs (dex, replays, ladder) can't be
transitioned over because they use our panel layout.
This keeps ads/analytics out of the repository, since they
shouldn't be used in forks and dev machines anyway.
Hiding ads in `website/news/include.php` was a thing I did in
the early days because one of the devs was ashamed of ads, and
`website/` wasn't in a public repository at the time. At this
point, though, I'm done being ashamed of it. You can obviously
see ads on the website and everyone knows they fund the server.