@@ -332,23 +332,30 @@ function _field_ui_bundle_admin_path($entity_type, $bundle_name) {
|
||||
* Identifies inactive fields within a bundle.
|
||||
*/
|
||||
function field_ui_inactive_instances($entity_type, $bundle_name = NULL) {
|
||||
if (!empty($bundle_name)) {
|
||||
$inactive = array($bundle_name => array());
|
||||
$params = array('bundle' => $bundle_name);
|
||||
$params = array('entity_type' => $entity_type);
|
||||
|
||||
if (empty($bundle_name)) {
|
||||
$active = field_info_instances($entity_type);
|
||||
$inactive = array();
|
||||
}
|
||||
else {
|
||||
$inactive = array();
|
||||
$params = array();
|
||||
// Restrict to the specified bundle. For consistency with the case where
|
||||
// $bundle_name is NULL, the $active and $inactive arrays are keyed by
|
||||
// bundle name first.
|
||||
$params['bundle'] = $bundle_name;
|
||||
$active = array($bundle_name => field_info_instances($entity_type, $bundle_name));
|
||||
$inactive = array($bundle_name => array());
|
||||
}
|
||||
$params['entity_type'] = $entity_type;
|
||||
|
||||
$active_instances = field_info_instances($entity_type);
|
||||
// Iterate on existing definitions, and spot those that do not appear in the
|
||||
// $active list collected earlier.
|
||||
$all_instances = field_read_instances($params, array('include_inactive' => TRUE));
|
||||
foreach ($all_instances as $instance) {
|
||||
if (!isset($active_instances[$instance['bundle']][$instance['field_name']])) {
|
||||
if (!isset($active[$instance['bundle']][$instance['field_name']])) {
|
||||
$inactive[$instance['bundle']][$instance['field_name']] = $instance;
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($bundle_name)) {
|
||||
return $inactive[$bundle_name];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user