function searchnavi($direction, $pos = 0) { if ($direction == 1) { $this->navpos = $this->navpos + $this->perpage; } else { if ($direction == 0) { $this->navpos = $this->navpos - $this->perpage; } } if ($pos != 0) { $this->navpos = $pos * $this->perpage; } if ($this->navpos < 0) { $this->navpos = 0; } else { if ($this->navpos % $this->perpage != 0) { $this->navpos = ceil($this->navpos / $this->perpage) * $this->perpage; } } switch ($this->navid) { case 7: // user history if (db_guinfo('u_access') == 0) { $uh = new userhistory(); $uh->setuid(frm_get('huid', 1)); $uh->setfilter(frm_get('filter', 1, -1)); $uh->setperpage(frm_get('hperpage', 1, 18)); $uh->show($this->navpos, $this->perpage); $this->setfollow('huid', frm_get('huid', 1)); $this->setfollow('filter', frm_get('filter', 1, -1)); $this->setfollow('hperpage', frm_get('hperpage', 1, 18)); $this->writenavi(); $uh->endshow(); } break; case 2: // normal search $kps = new kpsearch(); $kps->setrows($this->navrows); $kps->gensearchsql($this->navpos, $this->perpage); $kps->viewsearch(); $this->writenavi(); $kps->endsearch(); break; default: $gl = new genlist(); $gl->setrows($this->navrows); switch ($this->navid) { case 3: $gl->whats_new($this->navpos, $this->perpage); break; case 4: $gl->whats_hot(0, $this->navpos, $this->perpage); break; case 5: $this->setfollow('hchar', frm_get('hchar')); $gl->hotselect(frm_get('hchar'), $this->navpos, $this->perpage); break; case 6: $gl->genrelist($this->navpos, $this->perpage); break; } $gl->nhghlist(); $this->writenavi(); $gl->endlist(); break; } }