Commit 1c623fdf47a28aeb69b72a4a4ecfdaa5fb7e99c5

Authored by nbm
1 parent 607a06c4

Each Criterion now knows what its ID is, fixing the search widgets.


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@3084 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing 1 changed file with 17 additions and 11 deletions
lib/browse/Criteria.inc
@@ -37,11 +37,13 @@ class BrowseCriterion { @@ -37,11 +37,13 @@ class BrowseCriterion {
37 var $aLookup = null; 37 var $aLookup = null;
38 var $bFolderCriterion = false; 38 var $bFolderCriterion = false;
39 var $aOptions = array(); 39 var $aOptions = array();
  40 + var $iID;
40 41
41 - function BrowseCriterion ($sDisplay, $sDocumentField, $sSortField) { 42 + function BrowseCriterion ($sDisplay, $sDocumentField, $sSortField, $iID) {
42 $this->sDisplay =& $sDisplay; 43 $this->sDisplay =& $sDisplay;
43 $this->sDocumentField =& $sDocumentField; 44 $this->sDocumentField =& $sDocumentField;
44 $this->sSortField =& $sSortField; 45 $this->sSortField =& $sSortField;
  46 + $this->iID = $iID;
45 } 47 }
46 48
47 function headerDisplay () { 49 function headerDisplay () {
@@ -130,6 +132,10 @@ class BrowseCriterion { @@ -130,6 +132,10 @@ class BrowseCriterion {
130 return $this->sDocumentField; 132 return $this->sDocumentField;
131 } 133 }
132 134
  135 + function getID() {
  136 + return $this->iID;
  137 + }
  138 +
133 function setOptions($aOptions) { 139 function setOptions($aOptions) {
134 $this->aOptions = $aOptions; 140 $this->aOptions = $aOptions;
135 } 141 }
@@ -139,7 +145,7 @@ class BrowseCriterion { @@ -139,7 +145,7 @@ class BrowseCriterion {
139 } 145 }
140 146
141 function searchWidget ($aRequest) { 147 function searchWidget ($aRequest) {
142 - return "<input type=\"text\" size=\"50\" name=\"bmd$k\" />"; 148 + return "<input type=\"text\" size=\"50\" name=\"bmd" . $this->getID() . "\" />";
143 } 149 }
144 } 150 }
145 151
@@ -215,7 +221,7 @@ class CreatorCriterion extends BrowseCriterion { @@ -215,7 +221,7 @@ class CreatorCriterion extends BrowseCriterion {
215 return $this->documentDisplay($oFolder); 221 return $this->documentDisplay($oFolder);
216 } 222 }
217 function searchWidget ($aRequest) { 223 function searchWidget ($aRequest) {
218 - $sRet = "<select size=\"1\" name=\"bmd$k\">\n"; 224 + $sRet = "<select size=\"1\" name=\"bmd" . $this->getID() . "\">\n";
219 $aUsers = User::getList(); 225 $aUsers = User::getList();
220 $sRet .= "<option value=\"-1\">None</option>\n"; 226 $sRet .= "<option value=\"-1\">None</option>\n";
221 foreach ($aUsers as $oUser) { 227 foreach ($aUsers as $oUser) {
@@ -257,7 +263,7 @@ class DocumentTypeCriterion extends BrowseCriterion { @@ -257,7 +263,7 @@ class DocumentTypeCriterion extends BrowseCriterion {
257 return "&nbsp;"; 263 return "&nbsp;";
258 } 264 }
259 function searchWidget ($aRequest) { 265 function searchWidget ($aRequest) {
260 - $sRet = "<select size=\"1\" name=\"bmd$k\">\n"; 266 + $sRet = "<select size=\"1\" name=\"bmd" . $this->getID() . "\">\n";
261 $aUsers = DocumentType::getList(); 267 $aUsers = DocumentType::getList();
262 $sRet .= "<option value=\"-1\">None</option>\n"; 268 $sRet .= "<option value=\"-1\">None</option>\n";
263 foreach ($aUsers as $oUser) { 269 foreach ($aUsers as $oUser) {
@@ -278,7 +284,7 @@ class GenericMetadataCriterion extends BrowseCriterion { @@ -278,7 +284,7 @@ class GenericMetadataCriterion extends BrowseCriterion {
278 284
279 function GenericMetadataCriterion ($sDisplay, $sDocumentField, $sSortField, $iFieldID) { 285 function GenericMetadataCriterion ($sDisplay, $sDocumentField, $sSortField, $iFieldID) {
280 $this->iFieldID = $iFieldID; 286 $this->iFieldID = $iFieldID;
281 - $this->BrowseCriterion($sDisplay, $sDocumentField, $sSortField); 287 + $this->BrowseCriterion($sDisplay, $sDocumentField, $sSortField, $iFieldID);
282 $this->aLookup['whereClause'] = 'document_field_id = ' . $iFieldID; 288 $this->aLookup['whereClause'] = 'document_field_id = ' . $iFieldID;
283 } 289 }
284 290
@@ -310,22 +316,22 @@ class Criteria { @@ -310,22 +316,22 @@ class Criteria {
310 global $default; 316 global $default;
311 switch ($iID) { 317 switch ($iID) {
312 case -1: 318 case -1:
313 - $oCriterion =& new NameCriterion(_("Name"), 'filename', 'filename'); 319 + $oCriterion =& new NameCriterion(_("Name"), 'filename', 'filename', -1);
314 break; 320 break;
315 case -2: 321 case -2:
316 - $oCriterion =& new TitleCriterion(_("Title"), 'name', 'name'); 322 + $oCriterion =& new TitleCriterion(_("Title"), 'name', 'name', -2);
317 break; 323 break;
318 case -3: 324 case -3:
319 - $oCriterion =& new CreatorCriterion(_("Creator"), 'creator_id', 'creator_id'); 325 + $oCriterion =& new CreatorCriterion(_("Creator"), 'creator_id', 'creator_id', -3);
320 break; 326 break;
321 case -4: 327 case -4:
322 - $oCriterion =& new DateCreatedCriterion(_("Date Created"), 'id', 'id'); 328 + $oCriterion =& new DateCreatedCriterion(_("Date Created"), 'id', 'id', -4);
323 break; 329 break;
324 case -5: 330 case -5:
325 - $oCriterion =& new DocumentTypeCriterion(_("Document Type"), 'document_type_id', 'document_type_id'); 331 + $oCriterion =& new DocumentTypeCriterion(_("Document Type"), 'document_type_id', 'document_type_id', -5);
326 break; 332 break;
327 case -6: 333 case -6:
328 - $oCriterion =& new IDCriterion(_("ID"), 'id', 'id'); 334 + $oCriterion =& new IDCriterion(_("ID"), 'id', 'id', -6);
329 break; 335 break;
330 } 336 }
331 return $oCriterion; 337 return $oCriterion;