, Jam Warehouse (Pty) Ltd, South Africa */ // main library routines and defaults require_once("../../../../config/dmsDefaults.php"); require_once(KT_LIB_DIR . "/templating/templating.inc.php"); require_once(KT_LIB_DIR . "/templating/kt3template.inc.php"); require_once(KT_LIB_DIR . "/dispatcher.inc.php"); require_once(KT_LIB_DIR . "/util/ktutil.inc"); require_once(KT_LIB_DIR . "/browse/DocumentCollection.inc.php"); require_once(KT_LIB_DIR . "/browse/BrowseColumns.inc.php"); require_once(KT_LIB_DIR . "/browse/PartialQuery.inc.php"); require_once(KT_LIB_DIR . "/foldermanagement/Folder.inc"); $sectionName = "search"; class SimpleSearchDispatcher extends KTStandardDispatcher { // Breadcrumbs base - added to in methods var $aBreadcrumbs = array( array('action' => 'browse', 'name' => 'Browse'), array('name' => 'Simple Search') ); var $sSection = "search"; var $browseType; function do_main() { // There's a fair amount here, so we want to break it down. // we want: // - folder_id // - batch info. // - (browse type)? $collection = new DocumentCollection; $this->browseType = "Folder"; $collection->addColumn(new SelectionColumn("Browse Selection","selection")); $collection->addColumn(new TitleColumn("Test 1 (title)","title")); $collection->addColumn(new DateColumn("Created","created", "getCreatedDateTime")); $collection->addColumn(new DateColumn("Last Modified","modified", "getLastModifiedDate")); $collection->addColumn(new BrowseColumn("Test 3","test3")); $collection->addColumn(new BrowseColumn("Test 4","test4")); $searchable_text = KTUtil::arrayGet($_REQUEST, "fSearchableText"); $batchPage = (int) KTUtil::arrayGet($_REQUEST, "page", 0); $batchSize = 20; $resultURL = "?fSearchableText=" . $searchable_text; $collection->setBatching($resultURL, $batchPage, $batchSize); // ordering. (direction and column) $displayOrder = KTUtil::arrayGet($_REQUEST, 'sort_order', "asc"); if ($displayOrder !== "asc") { $displayOrder = "desc"; } $displayControl = KTUtil::arrayGet($_REQUEST, 'sort_on', "title"); $collection->setSorting($displayControl, $displayOrder); // add in the query object. $qObj = new SimpleSearchQuery($searchable_text); $collection->setQueryObject($qObj); // breadcrumbs // FIXME handle breadcrumbs $collection->getResults(); $oTemplating = new KTTemplating; $oTemplate = $oTemplating->loadTemplate("kt3/browse"); $aTemplateData = array( "context" => $this, "collection" => $collection, ); return $oTemplate->render($aTemplateData); } } $oDispatcher = new SimpleSearchDispatcher(); $oDispatcher->dispatch(); ?>