diff options
Diffstat (limited to 'modules/forum.module')
-rw-r--r-- | modules/forum.module | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/modules/forum.module b/modules/forum.module index 47eb04d3c..267d3e120 100644 --- a/modules/forum.module +++ b/modules/forum.module @@ -203,6 +203,30 @@ function forum_admin_configure() { } /** + * Implementation of hook_form_alter(). + */ +function forum_form_alter($form_id, &$form) { + // hide critical options from forum vocabulary + if ($form_id == 'taxonomy_form_vocabulary') { + if ($form['vid']['#value'] == _forum_get_vid()) { + $form['help_forum_vocab'] = array( + '#value' => t('This is the designated forum vocabulary. Some of the normal vocabulary options have been removed.'), + '#weight' => -1, + ); + $form['nodes']['forum'] = array('#type' => 'checkbox', '#value' => 1, '#title' => t('forum topic'), '#attributes' => array('disabled' => '' ), '#description' => t('forum topic is affixed to the forum vocabulary.')); + $form['hierarchy'] = array('#type' => 'value', '#value' => 1); + unset($form['relations']); + unset($form['tags']); + unset($form['multiple']); + $form['required'] = array('#type' => 'value', '#value' => 1); + } + else { + unset($form['nodes']['forum']); + } + } +} + +/** * Implementation of hook_load(). */ function forum_load($node) { |