diff options
author | Dries Buytaert <dries@buytaert.net> | 2004-07-04 16:50:02 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2004-07-04 16:50:02 +0000 |
commit | fe2b3e7c006a607c2b9fd9a485a7bda13515a94f (patch) | |
tree | 1c16960253df2c99488fdd8cf81305ff369884d4 /modules/path.module | |
parent | 353c05d01536aac26fec7e9cfee0e84838973286 (diff) | |
download | brdo-fe2b3e7c006a607c2b9fd9a485a7bda13515a94f.tar.gz brdo-fe2b3e7c006a607c2b9fd9a485a7bda13515a94f.tar.bz2 |
- Patch by Steven and me: refactored the form handling of nodes. The node system is now using form_set_error() and friends like the rest of Drupal does. This makes for both a consistent user experience and consistent code. It simplifies the forms and validation code, however, it does change the node API slightly:
* The _validate hook and the _nodeapi('validate') hook of the node API (1) no longer take an 'error' parameter and (2) should no longer return an error array. To set an error, call form_set_error().
* The _form hook of the node module no longer takes a form hook and should not worry about displaying errors. Ditto for _nodeapi('form_post') and _nodeapi('form_pre').
Diffstat (limited to 'modules/path.module')
-rw-r--r-- | modules/path.module | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/modules/path.module b/modules/path.module index 7be86e843..38824dba4 100644 --- a/modules/path.module +++ b/modules/path.module @@ -196,12 +196,10 @@ function path_nodeapi(&$node, $op, $arg) { else { $node->path = trim($node->path); if ($node->path && !valid_url($node->path)) { - $error['path'] = t('The path is invalid.'); - return $error; + form_set_error('path', t('The path is invalid.')); } else if (db_result(db_query("SELECT COUNT(dst) FROM {url_alias} WHERE dst = '%s' AND src != '%s'", $node->path, "node/$node->nid"))) { - $error['path'] = t('The path is already in use.'); - return $error; + form_set_error('path', t('The path is already in use.')); } } break; @@ -304,8 +302,8 @@ function path_save($edit) { form_set_error('dst', t('the alias "%dst" is already in use.', array('%dst' => $dst))); } - if (form_has_errors()) { - return path_form($edit, $error); + if (form_get_errors()) { + return path_form($edit); } else { // Normally, you would use path_set_alias() to update the paths table, |