Hi, I hope somebody has already did this. I've been searching in the Forum but I haven't found the right solution to my problem.
I have a custom form that updates member information with upload photo. Im using SimpleImageField here but I cant seem to make it work.
class updateMemberInfo_Controller extends Page_Controller {
..
function getMemberForm() {
// List your fields here
$fields = new FieldSet(
// List your fields here
new TextField( "FirstName", "First name" ),
new TextField( "Surname" ),
new EmailField( "Email", "Change Email Address" ),
//new EmailField( "RetypeEmail", "Re-enter Email" ),
new OptionsetField( "Gender", "Gender", array( "Male" => "Male", "Female" => "Female" ) ),
new TextAreaField( "Address" ),
new TextField( "Contact" ),
new TextField( "Country" ),
new SimpleImageField( 'Photo' )
);
$actions = new FieldSet( new FormAction( "doSave", "Save", "", "", "big-button" ) );
$requiredFields = new RequiredFields( "Email", "FirstName", "Surname", "Address" );
$form = new Form( $this, "Form", $fields, $actions, $requiredFields );
return $form;
}
function doSave( $data, $form ) {
$file = new Image();
$file->loadUploadedImage( $_FILES[ 'Photo' ] );
// Member object and load the form data into it
$member = Member::currentUser();
$form->saveInto( $member );
// Write it to the database. This needs to happen before we add it to a group
$member->Birthday = $data[ 'Month' ]."/".$data[ 'Day' ]."/".$data[ 'Year' ];
$form->saveInto( $member );
$form->AddErrorMessage( 'message', "Your profile has been updated.", 'good' );
return Director::redirectBack();
}
Any help would be greatly appreciated. Thanks!
/John