1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Design Issue Hidden Category with Watched Forums Shows Contains No Messages

Discussion in 'Resolved Bug Reports' started by Snog, May 28, 2015.

  1. Snog

    Snog Well-Known Member

    If you are watching a forum in a hidden category ('Display in the node list' unchecked), the Watch Forum lists the forum, but it says it contains no messages.

    privateforum.jpg

    The user has explicit permission to view the forum via both user permissions and user group permissions.
     
    Ċ½ivaAkcija and Mustafa Abed like this.
  2. Mike

    Mike XenForo Developer Staff Member

    Unfortunately, I think this is a design issue. The need to display the forum you're watching on this page contradicts the other display in list option requirements. It leads to a situation where we can't get the data because the forum you're viewing isn't really supposed to be listed.

    There was a similar issue to this before (where the forum you watched wasn't listed at all), so this is really a less significant issue than that.
     
  3. Snog

    Snog Well-Known Member

    I had a little time, and found that if you comment out one section of the code in library/XenForo/ControllerPublic/Watched.php the last thread shows...
    PHP:
      /**
        * List of all new watched content.
        *
        * @return XenForo_ControllerResponse_Abstract
        */
       
    public function actionForums()
       {
         
    /** @var $nodeModel XenForo_Model_Node */
         
    $nodeModel $this->getModelFromCache('XenForo_Model_Node');
         
    $forumWatchModel $this->_getForumWatchModel();
         
    $visitor XenForo_Visitor::getInstance();

         
    $forumsWatched $forumWatchModel->getUserForumWatchByUser($visitor['user_id']);
         
    $nodes $nodeModel->getAllNodes(falsefalse);

         foreach (
    $nodes AS $nodeId => $node)
         {
           if (
    $node['display_in_list'])
           {
             continue;
           }

    //       if (!isset($forumsWatched[$nodeId]))
    //       {
    //         unset($nodes[$nodeId]);
    //       }
         
    }

         
    $viewParams = array(
           
    'nodeList' => $nodeModel->getNodeListDisplayData($nodes00),
           
    'forumsWatched' => $forumsWatched
         
    );

         return 
    $this->responseView('XenForo_ViewPublic_Watched_Forums''watch_forums'$viewParams);
       }
    I don't know what impact this has on any other part of the code, but it seems to work.
     
  4. Mike

    Mike XenForo Developer Staff Member

    Yes, it creates other situations which are incorrect (listing and considering forums that aren't normally shown).
     
  5. RichardKYA

    RichardKYA Well-Known Member

    As this thread has been moved to "resolved", does that mean nothing will be done to resolve this issue?
     
  6. Brogan

    Brogan XenForo Moderator Staff Member

    Correct.
    It has been prefixed as a design issue.
     
  7. RichardKYA

    RichardKYA Well-Known Member

    OK

    Thank you
     

Share This Page