cookie_content_blocker_media.admin.inc in Cookie Content Blocker 7
Admin functionality for Cookie content blocker - Media.
File
modules/cookie_content_blocker_media/cookie_content_blocker_media.admin.incView source
<?php
/**
* @file
* Admin functionality for Cookie content blocker - Media.
*/
/**
* Form callback for the admin settings form.
*
* @param array $form
* The structure of the form.
* @param array $form_state
* The current state of the form.
*
* @return array
* The configuration form.
*
* @see system_settings_form_submit()
*/
function cookie_content_blocker_media_settings_form(array $form, array &$form_state) {
$form = _cookie_content_blocker_variable_form($form, 'cookie_content_blocker_media');
$providers = media_internet_get_providers();
foreach ($providers as $provider) {
$form = _cookie_content_blocker_media_settings_form_provider_fieldset($form, $provider);
}
return system_settings_form($form);
}
/**
* Helper to move form elements for a given provider into a fieldset.
*
* @param array $form
* The structure of the form.
* @param array $provider
* The media provider info.
*
* @return array
* The restructured form,
*/
function _cookie_content_blocker_media_settings_form_provider_fieldset(array $form, array $provider) {
$fieldset = array(
'#type' => 'fieldset',
'#title' => t('Settings for %provider media', array(
'%provider' => $provider['title'],
)),
'#tree' => FALSE,
);
$elements = array_filter($form, function ($element) use ($provider) {
return $element['#media_provider'] === $provider['title'];
});
foreach ($elements as $name => $element) {
$fieldset[$name] = $element;
unset($form[$name]);
}
$form[$provider['title']] = $fieldset;
return $form;
}
Functions
Name | Description |
---|---|
cookie_content_blocker_media_settings_form | Form callback for the admin settings form. |
_cookie_content_blocker_media_settings_form_provider_fieldset | Helper to move form elements for a given provider into a fieldset. |