Sunday, January 25, 2009
Hosting
Batalkan pemindahan ke VPS zenpipe.com. Terlalu banyak kerja pengurusan server perlu dilakukan. Latency ke webfaction dan slicehost juga bertambah baik kebelakangan ini. Masih menunggu jawapan daripada ustaz Hasrizal untuk memindahkan saifulislam.com ke webfaction buat sementara untuk menguji sama ada webfaction mampu menanggung beban saifulislam.com.
Wednesday, October 11, 2006
Customizing Drupal form
By default, Drupal Form API would render each element per row. To alter the presentation, we have several ways. The simplest one is by defining #suffix, #prefix attributes in the form elements. The prefered one is by defining the theme function that would override the default presentation. Consider the following form definition:-
function customer_form($customer) {
Notes:-
This example make use PHPHtmllib library to build the HTML table.
function customer_form($customer) {
$form = array();The form is build by the following function:-
$form['name'] = array('#type' => 'textfield',
'#default_value' => $customer->name,
'#title' => 'Nama');
$form['address'] = array('#type' => 'textarea',
'#default_value' => $customer->address,
'#size' => 30,
'#title' => 'Alamat');
$form['postcode'] = array('#type' => 'textfield',
'#title' => t('Poskod'),
'#size' => 5,
'#maxlength' => 5,
'#default_value' => $customer->postcode);
$form['city'] = array('#type' => 'textfield',
'#title' => t('Bandar'),
'#size' => 30,
'#default_value' => $customer->city);
}
function customer_new($customer) {
return drupal_get_form('customer_new', customer_form($customer));
}
So to override the default presentation, we define the theme function as `theme_form_id`:-function theme_customer_new($form) {
$output = new Container;
$output->add(form_render($form['name']));
$table = html_table();
$table->add_row(form_render($form['address']), form_render($form['city']), form_render($form['postcode']));
$output->add($table);
// render the rest of the elements
$output->add(form_render($form));
return $output->render();
}
References:- http://drupal.org/node/47582Notes:-
This example make use PHPHtmllib library to build the HTML table.
Sunday, October 26, 2003
Subscribe to:
Posts (Atom)