Commit ac96c54035e7e1490aa00dba572f430ebe9dab7f

Authored by Neil Blakey-Milner
1 parent ae02a1cc

Fix archive search, and display more information on results, and a view

button for direct download.


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@3347 c91229c3-7414-0410-bfa2-8a42b809f60b
presentation/lookAndFeel/knowledgeTree/search/advancedSearchBL.php
@@ -93,10 +93,12 @@ function getAdvancedSearchResults($aOrigReq, $iStartIndex) { @@ -93,10 +93,12 @@ function getAdvancedSearchResults($aOrigReq, $iStartIndex) {
93 $sSQLSearchString = join(" AND ", $aCritQueries); 93 $sSQLSearchString = join(" AND ", $aCritQueries);
94 $sJoinSQL = join(" ", $aJoinSQL); 94 $sJoinSQL = join(" ", $aJoinSQL);
95 95
  96 + $sToSearch = KTUtil::arrayGet($aOrigReq, 'fToSearch', 'Live');
  97 +
96 $sQuery = DBUtil::compactQuery(" 98 $sQuery = DBUtil::compactQuery("
97 SELECT 99 SELECT
98 F.name AS folder_name, F.id AS folder_id, D.id AS document_id, 100 F.name AS folder_name, F.id AS folder_id, D.id AS document_id,
99 - D.name AS document_name, COUNT(D.id) AS doc_count 101 + D.name AS document_name, D.filename AS file_name, COUNT(D.id) AS doc_count, 'View' AS view
100 FROM 102 FROM
101 $default->documents_table AS D 103 $default->documents_table AS D
102 INNER JOIN $default->folders_table AS F ON D.folder_id = F.id 104 INNER JOIN $default->folders_table AS F ON D.folder_id = F.id
@@ -113,16 +115,16 @@ ORDER BY doc_count DESC"); @@ -113,16 +115,16 @@ ORDER BY doc_count DESC");
113 115
114 $aParams = array(); 116 $aParams = array();
115 $aParams[] = $_SESSION["userID"]; 117 $aParams[] = $_SESSION["userID"];
116 - $aParams[] = "Live"; 118 + $aParams[] = $sToSearch;
117 $aParams = array_merge($aParams, $aCritParams); 119 $aParams = array_merge($aParams, $aCritParams);
118 120
119 //var_dump(DBUtil::getResultArray(array($sQuery, $aParams))); 121 //var_dump(DBUtil::getResultArray(array($sQuery, $aParams)));
120 //exit(0); 122 //exit(0);
121 123
122 - $aColumns = array("folder_name", "document_name", "doc_count");  
123 - $aColumnTypes = array(3,3,1);  
124 - $aColumnHeaders = array("<font color=\"ffffff\"><img src=$default->graphicsUrl/widgets/dfolder.gif>" . _("Folder") . "</font>","<font color=\"ffffff\">" . _("Document") . "</font>", "<font color=\"ffffff\">" . _("Matches") . "</font>");  
125 - $aLinkURLs = array("$default->rootUrl/control.php?action=browse","$default->rootUrl/control.php?action=viewDocument"); 124 + $aColumns = array("folder_name", "file_name", "document_name", "doc_count", "view");
  125 + $aColumnTypes = array(3,3,3,1,3);
  126 + $aColumnHeaders = array("<font color=\"ffffff\"><img src=$default->graphicsUrl/widgets/dfolder.gif>" . _("Folder") . "</font>", "<font color=\"ffffff\">" . _("Name") . "</font>", "<font color=\"ffffff\">" . _("Title") . "</font>", "<font color=\"ffffff\">" . _("Matches") . "</font>", "<font color=\"ffffff\">" . _("View") . "</font>");
  127 + $aLinkURLs = array("$default->rootUrl/control.php?action=browse","$default->rootUrl/control.php?action=viewDocument", "$default->rootUrl/control.php?action=viewDocument", null, "$default->rootUrl/control.php?action=downloadDocument");
126 $aDBQueryStringColumns = array("document_id","folder_id"); 128 $aDBQueryStringColumns = array("document_id","folder_id");
127 $aQueryStringVariableNames = array("fDocumentID", "fFolderID"); 129 $aQueryStringVariableNames = array("fDocumentID", "fFolderID");
128 130
presentation/lookAndFeel/knowledgeTree/search/advancedSearchUI.inc
@@ -104,46 +104,6 @@ function getSearchPage($sSearchString = &quot;&quot;, $aMetaTagIDs = array(), $sHeading = @@ -104,46 +104,6 @@ function getSearchPage($sSearchString = &quot;&quot;, $aMetaTagIDs = array(), $sHeading =
104 return $sToRender . getSearchValidationJavaScript(); 104 return $sToRender . getSearchValidationJavaScript();
105 } 105 }
106 106
107 -function getSearchResults($sMetaTagIDs, $sSQLSearchString, $iStartIndex, $sSearchString, $sStatus = "Live") {  
108 - global $default;  
109 -  
110 - $aMetaTagIDs = split(',', $sMetaTagIDs);  
111 - $sQms = DBUtil::paramArray($aMetaTagIDs);  
112 -  
113 - /*ok*/ $sQuery = "SELECT F.name as folder_name, F.id folder_id, D.id document_id, D.name AS document_name, COUNT(D.id) AS doc_count " .  
114 - "FROM $default->documents_table AS D INNER JOIN $default->folders_table AS F ON D.folder_id = F.id " .  
115 - "INNER JOIN $default->document_fields_link_table AS DFL ON DFL.document_id = D.id " .  
116 - "INNER JOIN $default->document_fields_table AS DF ON DF.id = DFL.document_field_id " .  
117 - "INNER JOIN $default->search_permissions_table AS SDUL ON SDUL.document_id = D.ID " .  
118 - "INNER JOIN $default->status_table AS SL on D.status_id=SL.id " .  
119 - "WHERE DF.ID IN ($sQms) " .  
120 - "AND (" . $sSQLSearchString . ") " .  
121 - "AND (F.is_public " .  
122 - "OR SDUL.user_id = ?) " .  
123 - "AND SL.name = ? " .  
124 - "GROUP BY D.id " .  
125 - "ORDER BY doc_count DESC ";  
126 - $aParams = $aMetaTagIDs;  
127 - $aParams[] = $_SESSION["userID"];  
128 - $aParams[] = $sStatus;  
129 -  
130 - $default->log->info("getSearchResults $sQuery");  
131 -  
132 - $aColumns = array("folder_name", "document_name", "doc_count");  
133 - $aColumnTypes = array(3,3,1);  
134 - $aColumnHeaders = array("<font color=\"ffffff\"><img src=$default->graphicsUrl/widgets/dfolder.gif>" . _("Folder") . "</font>","<font color=\"ffffff\">" . _("Document") . "</font>", "<font color=\"ffffff\">" . _("Matches") . "</font>");  
135 - $aLinkURLs = array("$default->rootUrl/control.php?action=browse","$default->rootUrl/control.php?action=viewDocument");  
136 - $aDBQueryStringColumns = array("document_id","folder_id");  
137 - $aQueryStringVariableNames = array("fDocumentID", "fFolderID");  
138 -  
139 - $oPatternBrowse = & new PatternBrowseableSearchResults(array($sQuery, $aParams), 10, $aColumns, $aColumnTypes, $aColumnHeaders, $aLinkURLs, $aDBQueryStringColumns, $aQueryStringVariableNames);  
140 - $oPatternBrowse->setStartIndex($iStartIndex);  
141 - $oPatternBrowse->setSearchText($sSearchString);  
142 -  
143 - $sRefreshMessage = "<table><tr><td align=\"center\">" . _("If your browser displays a 'Warning: Page has Expired' message when you attempt to return to these search results, please click your browser's 'Refresh' button") . "</td></tr></table>";  
144 - return renderHeading(_("Advanced Search")) . $oPatternBrowse->render() . $sRefreshMessage . getSearchVariablesHtml($sSearchString, $sStatus, $sMetaTagIDs);  
145 -}  
146 -  
147 function getSearchValidationJavaScript() { 107 function getSearchValidationJavaScript() {
148 /*$sToRender = "\n\n<SCRIPT LANGUAGE=\"javascript\">\n "; 108 /*$sToRender = "\n\n<SCRIPT LANGUAGE=\"javascript\">\n ";
149 $sToRender .= "<!--\n"; 109 $sToRender .= "<!--\n";