From 6cdbd8d931f980130cf1d0c6a45a9c25db8a3f64 Mon Sep 17 00:00:00 2001 From: rob Date: Thu, 27 Feb 2003 07:41:56 +0000 Subject: [PATCH] Added browse functionality --- presentation/lookAndFeel/knowledgeTree/search/advancedSearchBL.php | 19 +++++++++++++++++-- presentation/lookAndFeel/knowledgeTree/search/advancedSearchUI.inc | 49 +++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 62 insertions(+), 6 deletions(-) diff --git a/presentation/lookAndFeel/knowledgeTree/search/advancedSearchBL.php b/presentation/lookAndFeel/knowledgeTree/search/advancedSearchBL.php index 86fc6f3..f2ed052 100644 --- a/presentation/lookAndFeel/knowledgeTree/search/advancedSearchBL.php +++ b/presentation/lookAndFeel/knowledgeTree/search/advancedSearchBL.php @@ -21,7 +21,8 @@ if (checkSession()) { require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); - if (isset($fForSearch)) { + //if (isset($fForSearch)) { + if (strlen($fSearchString) > 0) { if (strlen($fSearchString) > 0) { //display search results $sMetaTagIDs = getChosenMetaDataTags(); @@ -29,7 +30,13 @@ if (checkSession()) { if (strlen($sMetaTagIDs) > 0) { $sSQLSearchString = getSQLSearchString($fSearchString); $sDocument = getApprovedDocumentString($sMetaTagIDs, $sSQLSearchString); - echo $sDocument; + $oPatternCustom = & new PatternCustom(); + if (!isset($fStartIndex)) { + $fStartIndex = 0; + } + $oPatternCustom->setHtml(getSearchResults($sDocument,$fStartIndex, $fSearchString, $sMetaTagIDs)); + $main->setCentralPayload($oPatternCustom); + $main->render(); } else { $oPatternCustom = & new PatternCustom(); @@ -82,6 +89,10 @@ function getChosenMetaDataTags() { return implode(",",$aTagIDs); } +/** +* Generate a string onsisting of all documents that match the search criteria +* and that the user is allowed to see +*/ function getApprovedDocumentString($sMetaTagIDs, $sSQLSearchString) { global $default; $aApprovedDocumentIDs = array(); @@ -101,6 +112,10 @@ function getApprovedDocumentString($sMetaTagIDs, $sSQLSearchString) { return implode(",",$aApprovedDocuments); } +/* +* Generate a string that can be used in a SQL query +* from the list of documents the user is allowed to see +*/ function getSQLSearchString($sSearchString) { $aWords = explode(" ", $sSearchString); $sSQLSearchString; diff --git a/presentation/lookAndFeel/knowledgeTree/search/advancedSearchUI.inc b/presentation/lookAndFeel/knowledgeTree/search/advancedSearchUI.inc index 76aa759..b5fc46c 100644 --- a/presentation/lookAndFeel/knowledgeTree/search/advancedSearchUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/search/advancedSearchUI.inc @@ -21,7 +21,6 @@ function getMetaData($aMetaTagIDs) { while ($sql->next_record()) { $sToRender .= "f("id"), $aMetaTagIDs) . " name=\"f_adv_" . $sql->f("name") . "\" value=\"" . $sql->f("id") . "\">" . $sql->f("name") . "\n"; - } $sToRender .= "\n"; @@ -35,7 +34,8 @@ function getSearchPage($sSearchString = "", $aMetaTagIDs = array()) { $sToRender = "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "\n"; + //$sToRender .= "\n"; + $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; @@ -48,11 +48,40 @@ function getSearchPage($sSearchString = "", $aMetaTagIDs = array()) { $sToRender .= "\n"; $sToRender .= "
Search text: graphicsUrl/search.gif\" />graphicsUrl/search.gif\" value=\"search\" onClick=\"validateAdvancedSearchText()\"/>
 
\n"; - return $sToRender; + return $sToRender . getSearchValidationJavaScript();; } -function getSearchResults($sFolderIDs,$sSQLSearchString, $iStartIndex) { +function getSearchResults($sSQLSearchString, $iStartIndex, $sSearchText, $sMetaTagIDs) { + global $default; + $sQuery = "SELECT DISTINCT '" . "$default->graphicsUrl/widgets/dfolder.gif" . "' AS folder_image_url, F.id folder_id, D.id document_id, D.name AS document_name " . + "FROM $default->owl_documents_table AS D INNER JOIN $default->owl_folders_table AS F ON D.folder_id = F.id " . + "WHERE D.id IN ($sSQLSearchString)" . + "ORDER BY D.name ASC"; + + $aColumns = array("folder_image_url", "document_name"); + $aColumnTypes = array(4,3); + $aColumnHeaders = array("","Document"); + $aLinkURLs = array("$default->rootUrl/control.php?action=browse","$default->rootUrl/control.php?action=viewDocument"); + $aDBQueryStringColumns = array("document_id","folder_id"); + $aQueryStringVariableNames = array("fDocumentID", "fFolderID"); + + $oPatternBrowse = & new PatternBrowseableSearchResults($sQuery, 2, $aColumns, $aColumnTypes, $aColumnHeaders, $aLinkURLs, $aDBQueryStringColumns, $aQueryStringVariableNames); + $oPatternBrowse->setStartIndex($iStartIndex); + return $oPatternBrowse->render() . getSearchVariablesHtml($sSearchText, $sMetaTagIDs); +} + +function getSearchValidationJavaScript() { + $sToRender = "\n\n\n\n"; + return $sToRender; + } function wasSelected($iID, $aMetaTagIDs) { @@ -62,5 +91,17 @@ function wasSelected($iID, $aMetaTagIDs) { return ""; } +function getSearchVariablesHtml($sSearchText, $sMetaTagIDs) { + $aMetaTagIDs = explode(",", $sMetaTagIDs); + $sToRender = "\n\n\n"; + $sToRender .= "\n"; + for ($i = 0; $i < count($aMetaTagIDs); $i++) { + $sToRender .= "\n"; + + } + $sToRender .= "\n"; + return $sToRender; +} + ?> -- libgit2 0.21.4