path_admin_form_validate
- Versions
- 6 – 7
path_admin_form_validate($form, &$form_state)
Verify that a URL alias is valid
Code
modules/path/path.admin.inc, line 151
<?php
function path_admin_form_validate($form, &$form_state) {
$source = &$form_state['values']['source'];
$source = drupal_get_normal_path($source);
$alias = $form_state['values']['alias'];
$pid = isset($form_state['values']['pid']) ? $form_state['values']['pid'] : 0;
// Language is only set if locale module is enabled, otherwise save for all languages.
$language = isset($form_state['values']['language']) ? $form_state['values']['language'] : '';
$has_alias = db_query("SELECT COUNT(alias) FROM {url_alias} WHERE pid <> :pid AND alias = :alias AND language = :language", array(
':pid' => $pid,
':alias' => $alias,
':language' => $language,
))
->fetchField();
if ($has_alias) {
form_set_error('alias', t('The alias %alias is already in use in this language.', array('%alias' => $alias)));
}
$item = menu_get_item($source);
if (!$item || !$item['access']) {
form_set_error('source', t("The path '@link_path' is either invalid or you do not have access to it.", array('@link_path' => $source)));
}
}
?>Login or register to post comments 