function better_formats_defaults_admin_form_validate in Better Formats 6
Same name and namespace in other branches
- 6.2 better_formats_defaults.admin.inc \better_formats_defaults_admin_form_validate()
- 7 better_formats.admin_defaults.inc \better_formats_defaults_admin_form_validate()
Validates better_formats_admin_filter_form.
See also
better_formats_defaults_admin_form()
better_formats_defaults_admin_form_submit()
1 call to better_formats_defaults_admin_form_validate()
- better_formats_node_type_form_validate in ./
better_formats.module - Handles validation of the addition to the content type edit form.
File
- ./
better_formats_defaults.admin.inc, line 46 - Contains FAPI and theme functions for the format defaults form.
Code
function better_formats_defaults_admin_form_validate($form, &$form_state) {
$formats = filter_formats();
foreach ($formats as $fid => $format) {
$roles[$fid] = explode(',', $format->roles);
}
// Get roles that have administer filters permission.
$admin_roles = better_formats_get_roles_by_perm('administer filters');
foreach ($form_state['values'] as $key => $values) {
if (strpos($key, 'node-') === 0 || strpos($key, 'comment-') === 0 || strpos($key, 'block-') === 0) {
list($type, $rid) = explode('-', $key);
if (in_array($rid, $admin_roles)) {
// Role has the 'administer filters' permission so it can use all formats.
continue;
}
$fid = $values['format'];
$site_default = filter_resolve_format(FILTER_FORMAT_DEFAULT);
if ($fid != 0 && !in_array($rid, $roles[$fid]) && $fid !== $site_default) {
form_set_error($key, t('Role does not have access to selected format.'));
}
}
}
}