/**
  * Rebuild Messenger Totals
  *
  * @access	public
  * @return	void
  */
 public function rebuildMsgCounts()
 {
     //-----------------------------------------
     // Grab messenger lib
     //-----------------------------------------
     require_once IPSLib::getAppDir("members") . '/sources/classes/messaging/messengerFunctions.php';
     $messengerFunctions = new messengerFunctions($this->registry);
     //-----------------------------------------
     // Set up
     //-----------------------------------------
     $done = 0;
     $start = intval($this->request['st']) >= 0 ? intval($this->request['st']) : 0;
     $end = intval($this->request['pergo']) ? intval($this->request['pergo']) : 100;
     $dis = $end + $start;
     $output = array();
     //-----------------------------------------
     // Got any more?
     //-----------------------------------------
     $tmp = $this->DB->buildAndFetch(array('select' => 'member_id', 'from' => 'members', 'limit' => array($dis, 1)));
     $max = intval($tmp['member_id']);
     //-----------------------------------------
     // Avoid limit...
     //-----------------------------------------
     $this->DB->build(array('select' => 'member_id, members_display_name', 'from' => 'members', 'order' => 'member_id ASC', 'limit' => array($start, $end)));
     $outer = $this->DB->execute();
     //-----------------------------------------
     // Process...
     //-----------------------------------------
     while ($r = $this->DB->fetch($outer)) {
         $messengerFunctions->resetMembersFolderCounts($r['member_id']);
         $messengerFunctions->resetMembersTotalTopicCount($r['member_id']);
         $messengerFunctions->resetMembersNewTopicCount($r['member_id']);
         $done++;
     }
     //-----------------------------------------
     // Finish - or more?...
     //-----------------------------------------
     if (!$done and !$max) {
         //-----------------------------------------
         // Done..
         //-----------------------------------------
         $text = $this->lang->words['re_rebuildcomp'] . implode("<br />", $output);
         $url = "{$this->settings['base_url']}{$this->form_code}";
         $time = 2;
     } else {
         //-----------------------------------------
         // More..
         //-----------------------------------------
         $thisgoeshere = sprintf($this->lang->words['re_thisgoeshere'], $dis);
         $text = $thisgoeshere . implode("<br />", $output);
         $url = "{$this->settings['base_url']}{$this->form_code}&do={$this->request['do']}&pergo={$this->request['pergo']}&st={$dis}";
         $time = 0;
     }
     //-----------------------------------------
     // Bye....
     //-----------------------------------------
     $this->registry->output->redirect($url, $text, $time);
 }