diff options
author | Dries Buytaert <dries@buytaert.net> | 2005-04-12 18:52:47 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2005-04-12 18:52:47 +0000 |
commit | f33f9a5fcdb381c073501ba4c81aba3a75ce56e3 (patch) | |
tree | 195927049b20d5c3a1b3ddfc8a271b5a9780119d /modules/block.module | |
parent | bbb746b8148be858f52b236c9c2a4053350c7aad (diff) | |
download | brdo-f33f9a5fcdb381c073501ba4c81aba3a75ce56e3.tar.gz brdo-f33f9a5fcdb381c073501ba4c81aba3a75ce56e3.tar.bz2 |
- Patch #19965 by Robin Monks: fixed problem with duplicate block titles.
Diffstat (limited to 'modules/block.module')
-rw-r--r-- | modules/block.module | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/modules/block.module b/modules/block.module index 4248f9bb4..5990d7522 100644 --- a/modules/block.module +++ b/modules/block.module @@ -312,12 +312,13 @@ function block_box_add() { switch ($op) { case t('Save block'): - block_box_save($edit); - drupal_set_message(t('The new block has been added.')); - drupal_goto('admin/block'); - + if (block_box_save($edit)) { + drupal_set_message(t('The new block has been added.')); + drupal_goto('admin/block'); + } + // deliberate no break default: - $form = block_box_form(); + $form = block_box_form($edit); $form .= form_submit(t('Save block')); $output .= form($form); } @@ -368,8 +369,13 @@ function block_box_save($edit, $delta = NULL) { db_query("UPDATE {boxes} SET title = '%s', body = '%s', info = '%s', format = %d WHERE bid = %d", $edit['title'], $edit['body'], $edit['info'], $edit['format'], $delta); } else { + if (empty($edit['info']) || db_num_rows(db_query("SELECT info FROM {boxes} WHERE info = '%s'", $edit['info']))) { + form_set_error('title', t('Please ensure each block description is unique.')); + return false; + } db_query("INSERT INTO {boxes} (title, body, info, format) VALUES ('%s', '%s', '%s', %d)", $edit['title'], $edit['body'], $edit['info'], $edit['format']); } + return true; } /** |