summaryrefslogtreecommitdiff
path: root/modules/block.module
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2005-04-12 18:52:47 +0000
committerDries Buytaert <dries@buytaert.net>2005-04-12 18:52:47 +0000
commitf33f9a5fcdb381c073501ba4c81aba3a75ce56e3 (patch)
tree195927049b20d5c3a1b3ddfc8a271b5a9780119d /modules/block.module
parentbbb746b8148be858f52b236c9c2a4053350c7aad (diff)
downloadbrdo-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.module16
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;
}
/**