sMetaDataField = $sNewMetaDataField;
$this->sFormName = $sNewFormName;
$this->sValue = $sNewValue;
}
function render() {
global $default;
$sQuery = "SELECT has_lookup, data_type, has_lookuptree, id FROM $default->document_fields_table WHERE name LIKE '" . DBUtil::escapeSimple($this->sMetaDataField) . "'";/*ok*/
$sql = $default->db;
$sql->query($sQuery);
if ($sql->next_record()) {
if ($sql->f("has_lookup") and (!$sql->f("has_lookuptree"))) {
//is a lookup, so display a drop down list
$sWhereClause = "DF.name LIKE '" . $this->sMetaDataField . "'";
$sFromClause = "INNER JOIN $default->document_fields_table AS DF ON ST.document_field_id = DF.id";
$oPatternListBox = & new PatternListBox("$default->metadata_table", "name", "name", $this->sFormName);
if ($this->sValue != null) {
$oPatternListBox->setSelectedValue($this->sValue);
}
$oPatternListBox->setFromClause($sFromClause);
$oPatternListBox->setWhereClause($sWhereClause);
return $oPatternListBox->render();
} else if ($sql->f("has_lookup") and ($sql->f("has_lookuptree"))) {
$fieldTree = new MDTree();
$fieldTree->buildForField($sql->f("id"));
$fieldTree->setActiveItem($this->sValue);
return $fieldTree->_evilTreeRenderer($fieldTree, $this->sFormName);
} else {
$textboxlength = null;
switch($sql->f("data_type")) {
case "TEXT":
$sToRender = '';
break;
case "INT":
case "FLOAT":
$sToRender = '';
break;
case "STRING":
default:
$sToRender = '';
}
return sprintf($sToRender, $this->sFormName, $this->sValue);
}
} else {
return "Error in PatternMetaData";
}
}
}
?>