diff options
author | Dries Buytaert <dries@buytaert.net> | 2005-03-03 20:02:07 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2005-03-03 20:02:07 +0000 |
commit | 749f15e7c0b55b12e1b95ad3a46e312d0e6c9c38 (patch) | |
tree | 3075d6c62fe4f9c2c2f0ece456f2a447dcdcd2cc | |
parent | 03374fc0f6c97aa576dc5563fdb6f5b2d99e6b40 (diff) | |
download | brdo-749f15e7c0b55b12e1b95ad3a46e312d0e6c9c38.tar.gz brdo-749f15e7c0b55b12e1b95ad3a46e312d0e6c9c38.tar.bz2 |
- Modified patch #18328 by Neil: currently the two forum topic blocks share a number of topics in block setting. This is a bit confusing since configuring one blockshould not affect another block. Fixed some indentation as well.
-rw-r--r-- | database/updates.inc | 9 | ||||
-rw-r--r-- | modules/forum.module | 22 | ||||
-rw-r--r-- | modules/forum/forum.module | 22 |
3 files changed, 28 insertions, 25 deletions
diff --git a/database/updates.inc b/database/updates.inc index d5b9ed5c1..fc976c817 100644 --- a/database/updates.inc +++ b/database/updates.inc @@ -101,7 +101,8 @@ $sql_updates = array( "2005-01-27" => "update_122", "2005-01-28" => "update_123", "2005-02-11" => "update_124", - "2005-02-23" => "update_125" + "2005-02-23" => "update_125", + "2005-03-03" => "update_126" ); function update_32() { @@ -2303,6 +2304,12 @@ function update_125() { return $ret; } + +function update_126() { + $ret[] = update_sql("DELETE FROM {variable} WHERE name LIKE 'forum_block_%'"); + return $ret; +} + function update_sql($sql) { $edit = $_POST["edit"]; $result = db_query($sql); diff --git a/modules/forum.module b/modules/forum.module index c51725530..77a4d82e5 100644 --- a/modules/forum.module +++ b/modules/forum.module @@ -308,29 +308,27 @@ function forum_block($op = 'list', $delta = 0, $edit = array()) { return $blocks; case 'configure': - $output = form_select(t('Number of topics in block'), 'forum_block_num', variable_get('forum_block_num', '5'), drupal_map_assoc(array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20))); + $output = form_select(t('Number of topics'), 'forum_block_num_'. $delta, variable_get('forum_block_num_'. $delta, '5'), drupal_map_assoc(array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20))); return $output; case 'save': - variable_set('forum_block_num', $edit['forum_block_num']); + variable_set('forum_block_num_'. $delta, $edit['forum_block_num_'. $delta]); break; case 'view': if (user_access('access content')) { switch ($delta) { case 0: - $title = t('Active forum topics'); - $sql = "SELECT n.nid, n.title, l.last_comment_timestamp, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.status = 1 AND n.type='forum' ORDER BY l.last_comment_timestamp DESC"; - $sql = db_rewrite_sql($sql); - $content = node_title_list(db_query_range($sql, 0, variable_get('forum_block_num', '5'))); - break; + $title = t('Active forum topics'); + $sql = db_rewrite_sql("SELECT n.nid, n.title, l.last_comment_timestamp, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.status = 1 AND n.type='forum' ORDER BY l.last_comment_timestamp DESC"); + $content = node_title_list(db_query_range($sql, 0, variable_get('forum_block_num_0', '5'))); + break; case 1: - $title = t('New forum topics'); - $sql = "SELECT n.nid, n.title, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.type = 'forum' AND n.status = 1 ORDER BY n.nid DESC"; - $sql = db_rewrite_sql($sql); - $content .= node_title_list(db_query_range($sql, 0, variable_get('forum_block_num', '5'))); - break; + $title = t('New forum topics'); + $sql = db_rewrite_sql("SELECT n.nid, n.title, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.type = 'forum' AND n.status = 1 ORDER BY n.nid DESC"); + $content = node_title_list(db_query_range($sql, 0, variable_get('forum_block_num_1', '5'))); + break; } if ($content) { diff --git a/modules/forum/forum.module b/modules/forum/forum.module index c51725530..77a4d82e5 100644 --- a/modules/forum/forum.module +++ b/modules/forum/forum.module @@ -308,29 +308,27 @@ function forum_block($op = 'list', $delta = 0, $edit = array()) { return $blocks; case 'configure': - $output = form_select(t('Number of topics in block'), 'forum_block_num', variable_get('forum_block_num', '5'), drupal_map_assoc(array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20))); + $output = form_select(t('Number of topics'), 'forum_block_num_'. $delta, variable_get('forum_block_num_'. $delta, '5'), drupal_map_assoc(array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20))); return $output; case 'save': - variable_set('forum_block_num', $edit['forum_block_num']); + variable_set('forum_block_num_'. $delta, $edit['forum_block_num_'. $delta]); break; case 'view': if (user_access('access content')) { switch ($delta) { case 0: - $title = t('Active forum topics'); - $sql = "SELECT n.nid, n.title, l.last_comment_timestamp, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.status = 1 AND n.type='forum' ORDER BY l.last_comment_timestamp DESC"; - $sql = db_rewrite_sql($sql); - $content = node_title_list(db_query_range($sql, 0, variable_get('forum_block_num', '5'))); - break; + $title = t('Active forum topics'); + $sql = db_rewrite_sql("SELECT n.nid, n.title, l.last_comment_timestamp, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.status = 1 AND n.type='forum' ORDER BY l.last_comment_timestamp DESC"); + $content = node_title_list(db_query_range($sql, 0, variable_get('forum_block_num_0', '5'))); + break; case 1: - $title = t('New forum topics'); - $sql = "SELECT n.nid, n.title, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.type = 'forum' AND n.status = 1 ORDER BY n.nid DESC"; - $sql = db_rewrite_sql($sql); - $content .= node_title_list(db_query_range($sql, 0, variable_get('forum_block_num', '5'))); - break; + $title = t('New forum topics'); + $sql = db_rewrite_sql("SELECT n.nid, n.title, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid WHERE n.type = 'forum' AND n.status = 1 ORDER BY n.nid DESC"); + $content = node_title_list(db_query_range($sql, 0, variable_get('forum_block_num_1', '5'))); + break; } if ($content) { |