function loadSelectContent($childFieldName, $parentVal, $doCategoryFilter = true, $childVal = "", $initialLoad = true) { global $conn, $LookupSQL, $strTableName; $table = $strTableName; $Lookup = ""; $response = array(); $output = ""; $LookupSQL = buildLookupSQL($childFieldName, $table, $parentVal, $childVal, $doCategoryFilter, FastType($childFieldName, $table) && $initialLoad); $rs = db_query($LookupSQL, $conn); if (!FastType($childFieldName, $table)) { while ($data = db_fetch_numarray($rs)) { $response[] = $data[0]; $response[] = $data[1]; } } else { $data = db_fetch_numarray($rs); // one record only if ($data && (strlen($childVal) || !db_fetch_numarray($rs))) { $response[] = $data[0]; $response[] = $data[1]; } } return $response; }
function loadSelectContent($pageType, $childFieldName, $parentVal, $doCategoryFilter = true, $childVal = "", $initialLoad = true) { global $conn, $LookupSQL, $strTableName; $pSet = new ProjectSettings($strTableName, $pageType); $response = array(); $lookupType = $pSet->getLookupType($childFieldName); $isUnique = $pSet->isLookupUnique($childFieldName); if ($pSet->useCategory($childFieldName) && $doCategoryFilter) { if ($lookupType == LT_QUERY) { $lookupTable = $pSet->getLookupTable($childFieldName); $cipherer = new RunnerCipherer($lookupTable); $tempParentVal = $cipherer->MakeDBValue($pSet->getCategoryControl($childFieldName), $parentVal, "", $lookupTable, true); } else { $tempParentVal = make_db_value($childFieldName, $parentVal); } if ($tempParentVal === "null") { return $response; } } $LookupSQL = buildLookupSQL($pageType, $childFieldName, $strTableName, $parentVal, $childVal, $doCategoryFilter, $pSet->fastType($childFieldName) && $initialLoad); $lookupIndexes = GetLookupFieldsIndexes($pSet, $childFieldName); $rs = db_query($LookupSQL, $conn); if (!$pSet->fastType($childFieldName)) { while ($data = db_fetch_numarray($rs)) { if ($lookupType == LT_QUERY && $isUnique) { if (!isset($uniqueArray)) { $uniqueArray = array(); } if (in_array($data[$lookupIndexes["displayFieldIndex"]], $uniqueArray)) { continue; } $uniqueArray[] = $data[$lookupIndexes["displayFieldIndex"]]; } $response[] = $data[$lookupIndexes["linkFieldIndex"]]; $response[] = $data[$lookupIndexes["displayFieldIndex"]]; } } else { $data = db_fetch_numarray($rs); // one record only if ($data && (strlen($childVal) || !db_fetch_numarray($rs))) { $response[] = $data[$lookupIndexes["linkFieldIndex"]]; $response[] = $data[$lookupIndexes["displayFieldIndex"]]; } } return $response; }
function suggestValue($value, $searchFor, &$response, &$row) { if (!GetGlobalData("handleSearchSuggestInLookup", true)) { parent::suggestValue($value, $searchFor, $response, $row); return; } global $conn; $lookupSQL = buildLookupSQL($this->lookupPageType, $this->field, $this->pageObject->tName, "", $value, false, true, false, true, true, true); $this->fillLookupFieldsIndexes(); $rs_lookup = db_query($lookupSQL, $conn); if ($data = db_fetch_numarray($rs_lookup)) { if ($this->isDisplayFieldEncrypted) { $lookup_value = $this->ciphererDisplay->DecryptField($this->lookupType == LT_QUERY ? $this->displayFieldName : $this->field, $data[$this->displayFieldIndex]); } else { $lookup_value = $data[$this->displayFieldIndex]; } parent::suggestValue($lookup_value, $searchFor, $response, $row); } }