I love the idea of the Browsing History, it's very neat.
However, I just clicked on the 'show all' and was surprised to see 136 pages of results! Really? Had I visited all 4068 discussions? I know I've been pretty hooked on Vanilla for the past few weeks but even then I doubt I've have the time, not to mention energy, to visit them all.
Anyway, here's what I get: 1 to 30 of 4068
Any ideas what the problem could be?
It looks like the pagination is calculating based on all discussions instead of what it should be: the history.
Looks like a bug. Stay tuned for a fix.
/me fires up his text editor.
It looks like this was a small detail Mark missed.
On line 193 of extensions\PanelLists\default.php (just after some very similar lines of code) insert: function DiscussionManager_FilterToHistoryCount(&$DiscussionManager) {
$s = &$DiscussionManager->DelegateParameters['SqlBuilder'];
$s->AddJoin('UserDiscussionWatch', 'utw', 'DiscussionID', 't', 'DiscussionID', 'left join', ' and utw.'.$DiscussionManager->Context->DatabaseColumns['UserDiscussionWatch']['UserID'].' = '.$DiscussionManager->Context->Session->UserID);
$s->AddWhere('utw', 'UserID', '', $DiscussionManager->Context->Session->UserID, '=');
}
$Context->AddToDelegate('DiscussionManager',
'PreGetDiscussionCount',
'DiscussionManager_FilterToHistoryCount');
The other filters (bookmarks, whispers, your discussions) appear to already do this correctly.
Comments
FWIW, I reported this via the bug report form a long time ago. And I posted this a few days ago. Meh.
On line 193 of
extensions\PanelLists\default.php
(just after some very similar lines of code) insert:function DiscussionManager_FilterToHistoryCount(&$DiscussionManager) { $s = &$DiscussionManager->DelegateParameters['SqlBuilder']; $s->AddJoin('UserDiscussionWatch', 'utw', 'DiscussionID', 't', 'DiscussionID', 'left join', ' and utw.'.$DiscussionManager->Context->DatabaseColumns['UserDiscussionWatch']['UserID'].' = '.$DiscussionManager->Context->Session->UserID); $s->AddWhere('utw', 'UserID', '', $DiscussionManager->Context->Session->UserID, '='); } $Context->AddToDelegate('DiscussionManager', 'PreGetDiscussionCount', 'DiscussionManager_FilterToHistoryCount');
The other filters (bookmarks, whispers, your discussions) appear to already do this correctly.