Forms API Reference
http://api.drupal.org/api/4.7/file/developer/topics/forms_api_reference.html
Forms API Quickstart Guide
http://api.drupal.org/api/4.7/file/developer/topics/forms_api.html
function legal_display_fields() {
$form = array();
$conditions = legal_get_conditions();
$form['id'] = array(
'#type' => 'value',
'#value' => $conditions['id'],
);
$form['legal'] = array(
'#type' => 'fieldset',
'#title' => t('Terms and Conditions of Use'),
'#weight' => 29,
);
$form['legal']['conditions'] = array(
'#type' => 'textarea',
'#title' => t('Terms & Conditions'),
'#default_value' => $conditions['conditions'],
'#value' => $conditions['conditions'],
'#rows' => 10,
'#weight' => 0,
'#attributes' => array('readonly' => ''),
);
$form['legal']['legal_accept'] = array(
'#type' => 'checkbox',
'#title' => t('Accept Terms & Conditions of Use'),
'#default_value' => 0,
'#weight' => 50,
'#required' => TRUE,
);
$form['#after_build'] = array('legal_preview');
$form['preview'] = array(
'#type' => 'button',
'#value' => t('Preview'),
);
$form['save'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
$output = drupal_get_form('legal_administration', $form);
return $output;
}
function legal_administration_validate($form_id, $form_values) {
if ( empty($form_values['conditions']) ) form_set_error('conditions', t('Terms & Conditions must be entered.'));
return;
}
function legal_administration_submit($form_id, $form_values) {
db_query("INSERT INTO {legal_conditions} (tc_id, conditions, date, extras, changes) VALUES (NULL, '%s', %d, '%s', '%s')", $form_values['conditions'], time(), serialize($form_values['extras']), $form_values['changes']);
drupal_set_message (t('Terms & Conditions have been saved.'));
return;
}