Index: citizenspeak.theme.php =================================================================== --- citizenspeak.theme.php (révision 1068) +++ citizenspeak.theme.php (copie de travail) @@ -23,15 +23,25 @@ // Generate form, should probably be handled by forms.module $form = ''; foreach (array('name', 'email', 'adddress', 'city') as $field) { - $form .= form_textfield(t(ucfirst($field)), $field, $edit[$field], '', '', null, null, true); + if (variable_get('citizenspeak_show_'.$field, 1)) { + $form .= form_textfield(t(ucfirst($field)), $field, $edit[$field], '', '', null, null, true); + } } - $state_array = array('', 'Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'District of Columbia', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'); - $form .= form_select(t('State'), 'state', $edit['state'], drupal_map_assoc($state_array), null, 0, false, true); + if (variable_get('citizenspeak_show_state', 1)) { + $state_array = array('', 'Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'District of Columbia', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'); + $form .= form_select(t('State'), 'state', $edit['state'], drupal_map_assoc($state_array), null, 0, false, true); + } - $form .= form_textfield(t('ZIP Code'), 'zip', $edit['zip'], 5, 5, null, null, true); - $form .= form_textfield(t('Phone'), 'phone', $edit['phone'], '', '', null, null, false); - $form .= form_textfield(t('Fax'), 'fax', $edit['fax'], '', '', null, null, false); + if (variable_get('citizenspeak_show_zip', 1)) { + $form .= form_textfield(t('ZIP Code'), 'zip', $edit['zip'], 5, 5, null, null, true); + } + if (variable_get('citizenspeak_show_phone', 1)) { + $form .= form_textfield(t('Phone'), 'phone', $edit['phone'], '', '', null, null, false); + } + if (variable_get('citizenspeak_show_fax', 1)) { + $form .= form_textfield(t('Fax'), 'fax', $edit['fax'], '', '', null, null, false); + } $form .= form_textarea(t('Personal Statement'), 'personal_statement', $edit['personal_statement'], 60, 20, t('This will be included in the email sent.')); // Only make it a form if the node has been saved Index: citizenspeak.module =================================================================== --- citizenspeak.module (révision 1068) +++ citizenspeak.module (copie de travail) @@ -145,6 +145,13 @@ $output .= form_group(t("Reminder Emails"), $reminders, t("Campaign creators can be sent emails to remind them to download their reports.")); + // Field configuration + $fields = ''; + foreach (array('name', 'email', 'adddress', 'city', 'state', 'zip', 'phone', 'fax') as $field) { + $fields .= form_checkbox(t(ucfirst($field)), 'citizenspeak_show_'.$field, 1, variable_get('citizenspeak_show_'.$field, 1)); + } + $output .= form_group(t("Fields to display"), $fields, t("The fields to display in your campaigns.")); + return $output; } // function citizenspeak_settings