function custom_breadcrumbs_form_validate in Custom Breadcrumbs 6.2
Same name and namespace in other branches
- 5 custom_breadcrumbs.module \custom_breadcrumbs_form_validate()
- 6 custom_breadcrumbs.admin.inc \custom_breadcrumbs_form_validate()
- 7.2 custom_breadcrumbs.admin.inc \custom_breadcrumbs_form_validate()
- 7 custom_breadcrumbs.admin.inc \custom_breadcrumbs_form_validate()
Form validation handler for custom_breadcrumbs_form().
See also
custom_breadcrumbs_form_submit()
6 string references to 'custom_breadcrumbs_form_validate'
- custom_breadcrumbsapi_form in custom_breadcrumbsapi/
custom_breadcrumbsapi.module - Form builder; Displays an edit form for a module page breadcrumb.
- custom_breadcrumbs_panels_form in custom_breadcrumbs_panels/
custom_breadcrumbs_panels.module - Form builder; Displays an edit form for a panels breadcrumb.
- custom_breadcrumbs_paths_form in custom_breadcrumbs_paths/
custom_breadcrumbs_paths.module - Form builder; Provide an edit form for a custom breadcrumb paths breadcrumb.
- custom_breadcrumbs_taxonomy_term_form in custom_breadcrumbs_taxonomy/
custom_breadcrumbs_taxonomy.admin.inc - Form builder; Displays an edit form for a custom breadcrumb taxonomy term record.
- custom_breadcrumbs_taxonomy_vocabulary_form in custom_breadcrumbs_taxonomy/
custom_breadcrumbs_taxonomy.admin.inc - Form builder; Displays an edit form for a custom breadcrumb taxonomy vocabulary record.
File
- ./
custom_breadcrumbs.admin.inc, line 191 - Admin page callback file for the custom_breadcrumbs module.
Code
function custom_breadcrumbs_form_validate($form, &$form_state) {
// Check to make sure there are an equal number of paths and titles.
$check = TRUE;
if (!user_access('use php in custom breadcrumbs') || !variable_get('custom_breadcrumbs_use_php_in_titles', FALSE)) {
// Strip any PHP tags from paths and titles since they are not allowed.
$elements = array(
'titles',
'paths',
);
foreach ($elements as $element) {
if (strpos($form_state['values'][$element], '<?php') !== FALSE) {
$form_state['values'][$element] = str_replace(array(
'<?php',
'?>',
), '', $form_state['values'][$element]);
form_set_error($element, t('Use of PHP in !element is not permitted and will be filtered out.', array(
'!element' => $element,
)));
}
}
}
else {
// If PHP is used, don't validate number of paths and titles.
if (strpos($form_state['values']['titles'], '<?php') !== FALSE || strpos($form_state['values']['paths'], '<?php') !== FALSE) {
$check = FALSE;
}
}
if ($check) {
$path_count = count(explode("\n", trim($form_state['values']['paths'])));
$title_count = count(explode("\n", trim($form_state['values']['titles'])));
if ($title_count != $path_count) {
$error_field = $title_count < $path_count ? 'titles' : 'paths';
form_set_error($error_field, t('Every link path must have a matching title. There are !paths paths, and !titles titles.', array(
'!paths' => $path_count,
'!titles' => $title_count,
)));
}
}
}