function _accordion_menu_block_validate in Accordion Menu 6
Same name and namespace in other branches
- 7 includes/configure.inc \_accordion_menu_block_validate()
Form validation handler for hook_block_configure().
1 call to _accordion_menu_block_validate()
- accordion_menu_block_validate in ./
accordion_menu.module - Form validation handler for block_admin_configure().
File
- includes/
configure.inc, line 156 - Provides block configuration routines.
Code
function _accordion_menu_block_validate($form, &$form_state) {
foreach (array(
'animated',
'script_scope',
) as $key) {
// Value may include letters only.
// This is not validating the string, but simply requiring one.
$value = $form_state['values']['accordion_menu_' . $key];
if (preg_match('@[^a-z]@', strtolower($value))) {
form_set_error('accordion_menu_' . $key, t('Enter a string with only letters. (' . $key . ')'));
}
}
// Value may include letters and a digit only.
// This is not a true test for an HTML tag, but should prevent foul play.
$key = 'header';
$value = $form_state['values']['accordion_menu_' . $key];
preg_match('@^([a-z]+([1-9]|)).*@', strtolower($value), $matches);
if (empty($matches) || $matches[0] != $matches[1]) {
form_set_error('accordion_menu_' . $key, t('Enter a valid HTML tag. (' . $key . ')'));
}
// Do not allow both menu source options to be blank.
$key1 = 'menu_source';
$value1 = $form_state['values']['accordion_menu_' . $key1];
$key2 = 'block_source';
$value2 = $form_state['values']['accordion_menu_' . $key2];
if (isset($value2)) {
if (empty($value1) && empty($value2)) {
form_set_error('accordion_menu_' . $key1, t('Select either a menu source or a menu block source. (' . $key1 . ')'));
form_set_error('accordion_menu_' . $key2, t('Select either a menu source or a menu block source. (' . $key2 . ')'));
}
}
elseif (empty($value1)) {
form_set_error('accordion_menu_' . $key1, t('Select a menu source. (' . $key1 . ')'));
}
}