path_form_element_validate
function path_form_element_validate
path_form_element_validate($element, &$form_state, $complete_form)
Form element validation handler for URL alias form element.
See also
File
- modules/path/path.module, line 152
- Enables users to rename URLs.
Code
function path_form_element_validate($element, &$form_state, $complete_form) { // Trim the submitted value. $alias = trim($form_state['values']['path']['alias']); if (!empty($alias)) { form_set_value($element['alias'], $alias, $form_state); // Node language (Locale module) needs special care. Since the language of // the URL alias depends on the node language, and the node language can be // switched right within the same form, we need to conditionally overload // the originally assigned URL alias language. // @todo Remove this after converting Path module to a field, and, after // stopping Locale module from abusing the content language system. if (isset($form_state['values']['language'])) { form_set_value($element['language'], $form_state['values']['language'], $form_state); } $path = $form_state['values']['path']; // Ensure that the submitted alias does not exist yet. $query = db_select('url_alias') ->condition('alias', $path['alias']) ->condition('language', $path['language']); if (!empty($path['source'])) { $query->condition('source', $path['source'], '<>'); } $query->addExpression('1'); $query->range(0, 1); if ($query->execute()->fetchField()) { form_error($element, t('The alias is already in use.')); } } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!path!path.module/function/path_form_element_validate/7.x