diff options
-rw-r--r-- | CHANGELOG.txt | 1 | ||||
-rw-r--r-- | modules/contact.module | 13 | ||||
-rw-r--r-- | modules/contact/contact.module | 13 |
3 files changed, 23 insertions, 4 deletions
diff --git a/CHANGELOG.txt b/CHANGELOG.txt index a5903938c..0f90a2b7d 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -2,6 +2,7 @@ Drupal x.x.x, xxxx-xx-xx (development version) ------------------------ - usability: * added support for auto-complete forms (AJAX) to user profiles. + * improved configurability of the contact forms. Drupal 4.7.0, 2006-05-01 ------------------------ diff --git a/modules/contact.module b/modules/contact.module index 07bcd9553..051235b14 100644 --- a/modules/contact.module +++ b/modules/contact.module @@ -120,7 +120,7 @@ function contact_menu($may_cache) { * * Allows the user the option of enabling/disabling his personal contact form. */ -function contact_user($type, $edit, &$user, $category = NULL) { +function contact_user($type, &$edit, &$user, $category = NULL) { if ($type == 'form' && $category == 'account') { $form['contact'] = array('#type' => 'fieldset', '#title' => t('Contact settings'), @@ -134,9 +134,12 @@ function contact_user($type, $edit, &$user, $category = NULL) { ); return $form; } - if ($type == 'validate') { + elseif ($type == 'validate') { return array('contact' => $edit['contact']); } + elseif ($type == 'insert') { + $edit['contact'] = variable_get('contact_default_status', 1); + } } /** @@ -291,6 +294,12 @@ function contact_admin_settings() { '#default_value' => variable_get('contact_hourly_threshold', 3), '#description' => t('The maximum number of contact form submissions a user can perform per hour.'), ); + $form['contact_default_status'] = array( + '#type' => 'checkbox', + '#title' => t('Enable personal contact form by default'), + '#default_value' => variable_get('contact_default_status', 1), + '#description' => t('Default status of the personal contact form for new users.'), + ); $form['submit'] = array('#type' => 'submit', '#value' => t('Save configuration'), ); diff --git a/modules/contact/contact.module b/modules/contact/contact.module index 07bcd9553..051235b14 100644 --- a/modules/contact/contact.module +++ b/modules/contact/contact.module @@ -120,7 +120,7 @@ function contact_menu($may_cache) { * * Allows the user the option of enabling/disabling his personal contact form. */ -function contact_user($type, $edit, &$user, $category = NULL) { +function contact_user($type, &$edit, &$user, $category = NULL) { if ($type == 'form' && $category == 'account') { $form['contact'] = array('#type' => 'fieldset', '#title' => t('Contact settings'), @@ -134,9 +134,12 @@ function contact_user($type, $edit, &$user, $category = NULL) { ); return $form; } - if ($type == 'validate') { + elseif ($type == 'validate') { return array('contact' => $edit['contact']); } + elseif ($type == 'insert') { + $edit['contact'] = variable_get('contact_default_status', 1); + } } /** @@ -291,6 +294,12 @@ function contact_admin_settings() { '#default_value' => variable_get('contact_hourly_threshold', 3), '#description' => t('The maximum number of contact form submissions a user can perform per hour.'), ); + $form['contact_default_status'] = array( + '#type' => 'checkbox', + '#title' => t('Enable personal contact form by default'), + '#default_value' => variable_get('contact_default_status', 1), + '#description' => t('Default status of the personal contact form for new users.'), + ); $form['submit'] = array('#type' => 'submit', '#value' => t('Save configuration'), ); |