Beiträge von Joshua Rüsweg

    Hallo,


    es gibt bereits den Platzhalter {$username}. Dieser wird allerdings nur bei benutzerdefinierten Beschreibungen verwendet. Trophäen selber müssen nicht unbedingt Benutzer zugeordnet sein und der Beschreibungstext wird auch benutzerunabhängig eingeblendet (bspw. in der Detailansicht einer Trophäe). Dort gibt es dann keinen Platzhalter für {$username}. Daher ist es auch nicht möglich, den Platzhalter in der Trophäen-Beschreibung zu verwenden.


    Grüße


    Josh

    Hallo,


    es ist nicht zielführend in der Datenbank etwas zu ändern, damit machst du unter Umständen viel mit Kaputt.


    Zu deinem Problem: Du kannst di einzelnen Menü-Punkte im ACP bearbeiten. Such im ACP mal nach Menüs, dort bekommst du dann die verschiedenen Menüs aufgelistet und kannst dort einzelne Menüpunkte über den Button Menüpunkte (neben dem Stift in der Aufzählung) bearbeiten.


    Grüße


    Josh

    Hallo,


    SQL
    1. SELECT banBy, COUNT(*) as count FROM table GROUP BY banBy;


    PS: Bitte nutze das nächste mal eine richtige Spalten, dann ist es einfacher dir zu helfen und man muss nicht die Spalten raten.


    Grüße


    Josh

    Danke norse,


    der Abschnitt mit den Trophäen fehlt bei mir - allerdings auch hier bei Woltlab ? Dennoch sind z.B. Deine Trophäen für mich sichtbar hier.

    Sind die Gruppenrechte Kann Trophäen sehen und Maximale Anzahl an besonderen Trophäen für deine Gruppe gesetzt? Hast du bereits Trophäen erhalten?

    Hallo,


    Dodo wenn du ein Problem mit Plugins hast, ist es am einfachsten sich an den Entwickler dieser Plugins zu wenden. Darkwood.Design bietet hier Support für die Shoutbox an: https://darkwood.design/support/ bzw. hier in den Kommentaren https://pluginstore.woltlab.co…modern-shoutbox/#comments. Am besten fragst du dort einfach mal wegen deinem Style-Problem an. Wie ich Darkwood.Design kenne, wird er dir da schnell und kompetent helfen! :)


    Grüße


    Josh

    Gut zu wissen! Dann könnte ich den Haken bei diesen Trophäen unter "hat nicht Trophäe" wieder entfernen??

    Ja.

    Macht es dann aber nicht Sinn, diesen Exclude als gesetztes Häkchen bei dieser Trophäe unter "hat nicht Trophäe" zu kennzeichnen? Könnte ja auch als feste Markierung zu sehen sein, die nicht entfernt werden kann. Ist doch sonst nur verwirrend oder? :/

    Nein, bisher hat das noch keinen verwirrt (zumindest keiner der sich hier im Forum beschwert hat). Das ganze visuell hinzuzufügen ist aufgrund der dynamik des zugrundeliegenden Condition-System nur bedingt möglich.


    Grüße


    Josh

    Der Exclude ist nicht sichtbar und kann auch nicht entfernt werden. Er ist „hart“ programmiert und greift immer, egal ob die Trophäe importiert ist oder nicht.


    In meinem alten Plugin war das nicht der Fall und die Vergabe musste selber ausgeschlossen werden.


    Grüße


    Josh

    Vielleicht noch eine kleine „Optimierung“:


    PHP
    1. $sql = WCF::getDB()->prepareStatement("SELECT userID blablabla");
    2. $sql->execute([]);
    3. $insertSQL = WCF::getDB()->prepareStatement("INSERT INTO blablabla");
    4. while($row = $sql->fetchArray()) {
    5. $var = $row['userID'];
    6. $insertSQL->execute([]);
    7. }


    Sprich: Das preparen des Insert-Statements außerhalb der Schleife vorzunehmen.

    Hallo,


    bitte an den Anbieter des oben genannten Plugins wenden ( Darkwood.Design ). Dieser muss sein Plugin dementsprechend anpassen, sodass IlllegalLinkException (bzw. NamedUserException) korrekt behandelt wird und geprüft wird, ob RequestHandler::getInstance()->getActiveRequest() null zurück gibt.


    Zusätzlich dazu, Muschelschaf , rufst du die Sitemap augenscheinlich falsch auf. Der Link /sitemaps/sitemap.xml ist relativ zum WSC-Verzeichnis, nicht zum WSF (WoltLab Suite Forum) Verzeichnis.


    Grüße


    Josh

    Hallo,


    ein SQL-Befehl wäre hier zu „lästig“, da du dann sämtliche Cache, Statistiken, etc. erneuern müsstest.


    Du kannst die Trophäe einfach temporär auf „Manuell vergeben“ ändern, danach kannst du die überflüssige Trophäe löschen. Danach kannst du wieder ganz normal auf „Automatisch vergeben“ stellen (bitte denke daran, die Bedingungen wieder neu einzustellen).


    Grüße


    Josh

    Hallo,


    ist der Fehler den reproduzierbar? Ich kann ihn leider nicht reproduzieren und daher nur mutmaßen, warum das ganze passiert ist.


    Das kann ein Plugin sein, was fehlerhaft war, das kann aber auch wer weiß was sein.


    Grüße


    Josh

    Hallo,


    Trophäen kann man theoretisch zwei mal erhalten. Zumindest wenn diese manuell vergeben werden (also nicht über die automatische Vergabe). Bei der automatischen Vergabe wird automatisch ein Exclude auf die eigene Trophäe gesetzt, dadurch kann diese nicht mehrfach vergeben werden.


    Funkt(e) vielleicht ein Plugin bei der Vergabe dazwischen, welche falsche Queries genutzt hat (ist ja bereits ein bisschen her), oder wurde die Trophäe möglicherweise aus einer anderen Software oder älteren Version importiert und dadurch doppelt vergeben? Oder wird ein Plugin genutzt welche die Trophäen-Vergabe manipuliert?


    Grüße


    Josh

    Hallo,

    3. Ich meine, es hätte schonmal einen Vorschlag in diese Richtung gegeben. Hat jemand einen Link für mich parat? Ich hab's nicht wiedergefunden (und bin mir auch nicht zu 100 Prozent sicher)

    Ich habe aktuell nur das Github-Issue dazu bereit: https://github.com/WoltLab/WCF/issues/2716


    Damit wirst du mit der kommenden Version alle Aktivitäten von einem Benutzer auf einmal löschen können. Dies im Dropdown-Menü der Benutzer-Liste.



    Aktuell ist mir aber keine Lösung bekannt, um die Beiträge von Benutzern schneller zu löschen. Auch leider kein Plugin.


    Grüße


    Josh

    Hallo,


    derzeit hält das WCF keine Methode bereit, welche die TrophyIDs bzw. UserTrophyIDs für einen Benutzer zurückgibt. Die einfachste Möglichkeit wäre hier, wenn du dir selber einen Handler dafür schreibst, welcher als Core-Objekt registriert wird und dann prüft, ob der Benutzer die Trophäe bereits erhalten hat. Vermutlich würde es aber auch reichen (und wäre deutlich schöner, wenn du den Wert nur auf einer Seite brauchst), wenn du anstelle des Core-Objekts auch einfach diesen Wert auf der entsprechenden Seite ausliest und an das Template übergibst (mittels Event-Listener).


    Grüße


    Josh