Themen sind Privat

  • Betroffene Version
    WoltLab Suite 5.3

    Servus,

    ist es irgendwie möglich wenn man ein Forum auf "Themen sind Privat" stellt vereinzelt Beiträge (vorzugsweise Angepinnte und Angekündigte) in diesem Forum dann Lesbar zu machen, da diese dann als Erklärung zu diesem Forum dienen.

    Ich habe gemerkt wenn man einen Beitrag auf Angekündigt stellt sieht man ihn zwar aber kann nicht drauf zugreifen.

  • Du musst das Thema als Ankündigung in einem nicht privaten Forum erstellen und diese im privaten Forum anzeigen lassen.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Nein, anders geht es nicht. Was stört Dich denn an dieser Lösung?

    Eine denkbare Alternative wäre vielleicht noch ein nur in diesem Forum angezeigter Hinweis.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Siehe Ergänzung oben. Jedes Thema (auch angepinnt oder Ankündigung) in so einem als privat deklarierten Bereich unterliegt nun einmal den mit der Privat-Kennzeichnung verbundenen Regeln, ist also nur für den Themenstarter und berechtigte Teammitglieder lesbar.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Was ist denn nun so schlimm an einem Hinweis? Der ist doch sogar auffälliger als ein Thema im Forum?


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Schade. Damals mit dem Plugin von WBB Elite konnte man Angepinnte und Angekündigte Beiträge sehen und lesen, dachte das wurde übernommen so.

    Unser System funktioniert auch weiterhin in dem neuen System. Man muss nur dafür sorgen, das das richtige System aktiv ist, und nicht in Konflikt mit dem von Woltlab kommt.

    Jedoch, hab ich gerade getestet in einer 5.2 Installation, dort kann ich in dem privaten Forum eine Ankündigung erstellen, die auch für den Bereich ist, diese wird dann ebenfalls für andere Mitglieder, die weder mod noch sonstige zusätzlich Rechte haben, sehen. Bei Angepinnt hingingen, funktioniert dies nicht.

    Das heißt du kannst auch im selbem Forum ein Ankündigen erstellen, oder norse wurde diese mit dem 5.3 geändert? Habe aktuell keine live Installation in der ich das testen konnte.

  • Meine Aussage basiert auf dem letzten mir erinnerlichen Stand der bisher zu diesem Thema gestellten Fragen. Ich habe es jetzt noch einmal selbst im WSF 5.2 getestet und konnte ohne das moderative Recht "Kann alle privaten Themen sehen" die Ankündigung nicht sehen.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Stimmt, das Thema wird aber angezeigt in der Übersicht, das war das was ich geprüft habe :D

    Eben das ist ja das Problem. Klar würd ich auch dein Plugin nutzen, habe ja eine Lizenz dafür. Aber wenn es eine Build-In Funktion gibt nutze ich die, aber ist es durch Änderung der Zuständigen Klassendatei nicht möglich das zu Ändern dass man Angepinnte und Angekündigte beiträge sehen und lesen kann?

  • Eben das ist ja das Problem. Klar würd ich auch dein Plugin nutzen, habe ja eine Lizenz dafür. Aber wenn es eine Build-In Funktion gibt nutze ich die, aber ist es durch Änderung der Zuständigen Klassendatei nicht möglich das zu Ändern dass man Angepinnte und Angekündigte beiträge sehen und lesen kann?

    Durch Code Änderung ist dies bestimmt möglich, aber, du müsstest dies jedesmal nach einem Update einfügen müsstest.

    Durch ein Plugin wird es nicht wirklich möglich sein, das zu erweitern.

  • Nur wo muss ich das ändern?

    Ich kann dir nicht zu 100% sagen ob folgende Änderungen reichen.

    In der Datei wbb/lib/data/thread/Thread.class.php diese Zeilen ersetzen

    PHP: Thread.class.php
    if (!WCF::getUser()->userID) {
        return false;
    }
                
    if (!$board->canReadPrivateThreads() && $this->userID != WCF::getUser()->userID) {
        return false;
    }

    durch

    PHP: Thread.class.php
    if ($this->isAnnouncement || $this->isSticky) {
        return true;
    }
    if (!WCF::getUser()->userID) {
        return false;
    }
                
    if (!$board->canReadPrivateThreads() && $this->userID != WCF::getUser()->userID) {
        return false;
    }

    Und in der Datei wbb/lib/data/thread/BoardThreadList.class.php

    PHP: BoardThreadList.class.php
    if (WCF::getUser()->userID) {
        $this->getConditionBuilder()->add("thread.userID = ?", [WCF::getUser()->userID]);
    }
    else {
        $this->getConditionBuilder()->add("1=0");
    }

    durch

    PHP: BoardThreadList.class.php
    if (WCF::getUser()->userID) {
        $this->getConditionBuilder()->add("(thread.userID = ? OR thread.isAnnouncement = ? OR thread.isSticky = ?)", [WCF::getUser()->userID, 1, 1]);
    }
    else {
        $this->getConditionBuilder()->add("(thread.isAnnouncement = ? OR thread.isSticky = ?)", [1, 1]);
    }
  • Funktioniert, danke dir.. das wird durch ein neues Update z.B. dann aber ersetzt?

    Das WCF ist ja auf Github so dass man daran eigentlich mitarbeiten kann, nur das Suite Forum leider nicht. Ist es möglich eine solche Änderung eventuell mit aufzunehmen, da das sicherlich sehr vom Vorteil sein kann Marcel Werk  Alexander Ebert

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!