Can anyone explain why the function below was changed from 1.3.2 to
1.4.*? My clients used the dublin core items in the item type
dropdowns for csvimport, etc and this change does NOT pull dublin core
into the dropdown lists. Thanks for any insight!
From:
/**
* Override parent class method to retrieve a multidimensional array
of
* elements, organized by element set, to be used in Zend's FormSelect
view
* helper.
*
* @param array $options Set of parameters for searching/filtering
results.
* @see Omeka_Db_Table::findPairsForSelectForm()
* @return array
*/
public function findPairsForSelectForm(array $options = array())
{
$db = $this->getDb();
$sql = "
SELECT
e.id AS element_id,
e.name AS element_name,
es.name AS
element_set_name
FROM {$db->Element} AS e
JOIN {$db->ElementSet} AS es
ON e.element_set_id =
es.id
JOIN {$db->RecordType} AS rt
ON es.record_type_id =
rt.id
WHERE
rt.name = 'Item'
OR
rt.name = 'All'
ORDER BY element_set_name ASC, element_name ASC";
$elements = $this->fetchAll($sql);
$options = array();
foreach ($elements as $element) {
$options[$element['element_set_name']][$element['element_id']] =
$element['element_name'];
}
return $options;
}
To:
/**
* Override parent class method to retrieve a multidimensional array
of
* elements, organized by element set, to be used in Zend's FormSelect
view
* helper.
*
* @param array $options Set of parameters for searching/filtering
results.
* @see Omeka_Db_Table::findPairsForSelectForm()
* @return array
*/
public function findPairsForSelectForm(array $options = array())
{
$db = $this->getDb();
// For backwards-compatibility.
if (!array_key_exists('record_types', $options)) {
$options['record_types'] = array('Item', 'All');
}
$select = $this->getSelectForFindBy($options);
$select->reset(Zend_Db_Select::COLUMNS);
$select->from(array(), array(
'id' => '
e.id',
'name' => '
e.name',
'set_name' => '
es.name',
));
$elements = $this->fetchAll($select);
$options = array();
foreach ($elements as $element) {
$options[$element['set_name']][$element['id']] = $element['name'];
}
return $options;
}