Vergangene Mitgliedschaften sichtbar, Antworten nicht mehr aus dem Cache
Wer sich aus einem Gruppen-CC herausredesignt hat, war trotzdem darin - der CC verschwand aber aus seiner Liste. Jetzt steht er am Fuss der Kette, in die der Spieler von dort aus gewechselt ist, gekennzeichnet als "war dabei" und mit dem Hinweis, wem er gehoert und wohin es weiterging. Verschieben oder entscheiden laesst sich daran nichts: es ist der Platz eines anderen. Frueheres, das zu keinem heutigen Platz fuehrt, steht unter "Frueher genutzt". Dasselbe gilt fuer einen gewoehnlichen Austritt. Neu eingetragene CCs tauchten manchmal erst nach einem Neuladen auf. Die Antworten der Schnittstelle trugen keinen Cache-Header, und ohne Angabe darf ein Browser selbst entscheiden, wie lange er eine GET-Antwort aufhebt - dann steht nach dem Anlegen die alte Liste auf dem Schirm. Sie tragen jetzt no-store, was nebenbei verhindert, dass Spielerdaten im Cache liegen bleiben. Ausserdem: die Pfeile zwischen den Kettengliedern sind groesser und tragen die Akzentfarbe - sie sind das Einzige, was die Leserichtung verraet. Und "Zurueknehmen" heisst jetzt "Loeschen", weil genau das passiert.
This commit is contained in:
@@ -528,18 +528,15 @@ export async function revertCharacter(
|
||||
* Die CCs eines Spielers. Maßgeblich ist die Mitgliedschaft, nicht wer den CC
|
||||
* angelegt hat - sonst fehlten Gruppen-CCs, denen der Spieler beigetreten ist.
|
||||
*
|
||||
* Mit dabei sind auch CCs, bei denen seine Mitgliedschaft ruht: wer geputzt
|
||||
* wurde oder im Rollenspiel gestorben ist, kann zurückkehren und muss den CC
|
||||
* dafür sehen. Wer freiwillig ausgetreten ist, sieht ihn nicht mehr - dort
|
||||
* gibt es nichts zurückzuholen, ein Wiedereintritt kostet neu.
|
||||
* Mit dabei ist **jede** Mitgliedschaft, auch eine beendete. Wer aus einem
|
||||
* Gruppen-CC herausredesignt hat oder ausgetreten ist, war trotzdem darin -
|
||||
* und das gehört zu seiner Geschichte. Ob daraus ein Anspruch folgt, ist eine
|
||||
* andere Frage und steht am Grund der Mitgliedschaft; hier geht es darum, was
|
||||
* überhaupt zu sehen ist.
|
||||
*/
|
||||
export async function listCharacters(playerId: number) {
|
||||
return prisma.character.findMany({
|
||||
where: {
|
||||
members: {
|
||||
some: { playerId, OR: [{ leftAt: null }, { inactiveReason: { not: null } }] },
|
||||
},
|
||||
},
|
||||
where: { members: { some: { playerId } } },
|
||||
orderBy: [{ lineageId: 'asc' }, { chainPosition: 'asc' }, { createdAt: 'asc' }],
|
||||
include: {
|
||||
predecessor: { select: { id: true, name: true } },
|
||||
|
||||
Reference in New Issue
Block a user