From 4d9725455963e4d3b39f264217b3b0950d138d04 Mon Sep 17 00:00:00 2001 From: Dries Buytaert <dries@buytaert.net> Date: Sat, 13 May 2006 10:19:13 +0000 Subject: [PATCH] - Patch #41352 by Steve, Zen, Crell et al: new feature: make the default behavior of the contact forms configurable. --- CHANGELOG.txt | 1 + modules/contact.module | 13 +++++++++++-- modules/contact/contact.module | 13 +++++++++++-- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index a5903938cb74..0f90a2b7d56f 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 07bcd9553f02..051235b1470b 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 07bcd9553f02..051235b1470b 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'), ); -- GitLab