/// XXX hack! $form->addInput('name', 'Name', $field->name); $form->addInput('label', 'Label', $field->label); $form->addDropdown('type', 'Type', UserDataField::getTypes(), $field->type); switch ($field->type) { case UserDataField::RADIO: for ($i = 1; $i < 6; $i++) { $opt = 'opt_' . $i; $val = UserDataFieldOption::get($field->id, $opt); $form->addInput($opt, 'Option ' . $i, $val); } break; case UserDataField::AVATAR: for ($i = 1; $i < 6; $i++) { $opt = 'avatar_' . $i; $val = UserDataFieldOption::get($field->id, $opt); if ($val) { $img = new XhtmlComponentImage(); $img->src = getThumbUrl($val); $form->add($img, 'Existing picture ' . $i); // $form->addCheckbox('remove_'.$f->id, 'Remove photo'); } $form->addFile($opt, 'Avatar ' . $i, $val); } break; } $form->addSubmit('Save'); $form->setHandler('editSubmit'); echo $form->render(); break; default: