function domain_source_validate in Domain Access 6.2
Same name and namespace in other branches
- 5 domain_source/domain_source.module \domain_source_validate()
- 7.3 domain_source/domain_source.module \domain_source_validate()
- 7.2 domain_source/domain_source.module \domain_source_validate()
Form validation step
2 string references to 'domain_source_validate'
- domain_source_form_domain_content_form_alter in domain_source/
domain_source.module - Form integration with Domain Content.
- domain_source_form_node_admin_content_alter in domain_source/
domain_source.module - Form integration with Administer nodes.
File
- domain_source/
domain_source.module, line 323 - Creates a source domain for linking to content from other domains.
Code
function domain_source_validate($form, &$form_state) {
if ($form_state['values']['operation'] == 'domain') {
$form_state['values']['domain_source'] == 0 ? $key = -1 : ($key = $form_state['values']['domain_source']);
if ($form_state['values']['domain_site'] && $key == -1 || $key == DOMAIN_SOURCE_USE_ACTIVE) {
// These cases are acceptable, so we let them pass.
// I find this code easier to read than a compound negative IF statement.
}
else {
if ($key == DOMAIN_SOURCE_IGNORE) {
// In this case, we need to check all the selected nodes, which is resource intensive.
$nodes = array_filter($form_state['values']['nodes']);
foreach ($nodes as $nid) {
$source = domain_source_lookup($nid, array(), $form_state['values']['domain_site'], TRUE);
$key = $source['domain_id'] == 0 ? -1 : $source['domain_id'];
// Test for the first two behaviors, which add domains to the node.
$behavior = $form_state['values']['behavior'];
if ($behavior < 2) {
if (empty($form_state['values']['domains'][$key])) {
$node = node_load($nid);
form_set_error('domain_source', t('The source affiliate must be selected as a publishing option. %title is assigned to %domain.', array(
'%title' => $node->title,
'%domain' => $source['sitename'],
)));
}
}
else {
if (!empty($form_state['values']['domains'][$key])) {
$node = node_load($nid);
form_set_error('domain_source', t('The source affiliate must be selected as a publishing option. %title is assigned to %domain.', array(
'%title' => $node->title,
'%domain' => $source['sitename'],
)));
}
}
}
}
else {
if (empty($form_state['values']['domains'][$key])) {
form_set_error('domain_source', t('The source affiliate must be selected as a publishing option.'));
}
}
}
}
}