function agreement_settings_form_validate in Agreement 7.2
Agreement settings form validate callback.
Parameters
array $form: The form array.
array &$form_state: The form state array.
File
- ./
agreement.admin.inc, line 332 - Agreement administration page callback.
Code
function agreement_settings_form_validate($form, &$form_state) {
$types = agreement_type_load();
$pages = preg_split('/\\r?\\n/', $form_state['values']['settings']['visibility_pages']);
// See if there are any agreement types that have the same visibility page
// when visibility is set to match path.
if ($form_state['values']['settings']['visibility_settings']) {
foreach ($types as $name => $info) {
if ($name != $form_state['values']['name'] && $info['settings']['visibility_settings']) {
$type_pages = preg_split('/\\r?\\n/', $info['settings']['visibility_pages']);
$diff = array_diff($pages, $type_pages);
if (count($diff) < count($pages)) {
form_set_error('settings[visibility_pages]', t('Visibility page in-use by another agreement.'));
break;
}
}
}
}
}