function emfield_allowed_providers in Embedded Media Field 6
Same name and namespace in other branches
- 5 emfield.module \emfield_allowed_providers()
- 6.3 deprecated/emfield-deprecated.inc \emfield_allowed_providers()
- 6.2 emfield.module \emfield_allowed_providers()
Return a list of providers allowed for a specific field.
3 calls to emfield_allowed_providers()
- emfield_content_generate in ./
emfield.module - Implementation of Devel module's hook_content_generate().
- emfield_parse_embed in ./
emfield.module - This will parse the url or embedded code pasted by the node submitter.
- _emfield_emfield_widget in ./
emfield.cck.inc - Helper function for emfield_emfield_widget, which in turn is a help function for all emfields that implement hook_widget(). This creates default widget handling for all the Embedded Media Fields. Helper modules are expected to call this function to…
File
- ./
emfield.module, line 69 - Embedded Media Field is a CCK-based framework for 3rd party media files.
Code
function emfield_allowed_providers($field, $module) {
$allowed_providers = emfield_system_list($module);
// $field sometimes is the whole $field and sometimes just the $widget,
// depending on where it is called from, so check which one we have.
$providers = isset($field['widget']['providers']) ? $field['widget']['providers'] : (isset($field['providers']) ? $field['providers'] : array());
$allow_all = TRUE;
foreach ($allowed_providers as $test) {
if (!variable_get('emfield_' . $module . '_allow_' . $test->name, TRUE)) {
unset($allowed_providers[$test->name]);
}
else {
$allow_all &= empty($providers[$test->name]);
}
}
if (!$allow_all) {
foreach ($allowed_providers as $test) {
if (empty($providers[$test->name])) {
unset($allowed_providers[$test->name]);
}
}
}
return $allowed_providers;
}