Drupal 7 FAPI - podgląd obrazu ajaxowego
Próbuję wyświetlić podgląd przesłanego obrazu za pomocą ajax w moim module D7, ale nie wiem, dlaczego nie działa. Oto, co próbuję zrobić: -
function create_ad_form($form, &$form_state)
{
$form['image_file'] = array(
'#title' => t('Upload Banner:'),
'#type' => 'file',
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Submit',
'#submit' => array('create_ad_form_submit'),
'#ajax'=> array(
'callback'=>'create_ad_form_submit',
'wrapper'=> 'im-area',
'method'=> 'replace',
'effect'=> 'fade',
)
);
$form['im-container']=array(
'#prefix'=>'<div id="im-area">',
'#suffix'=>'</div>',
);
}
function create_ad_form_submit($form, $form_state)
{
$file = file_save_upload('image_file', array(), "public://",$replace = FILE_EXISTS_REPLACE);
if ($file)
{
$file->status=FILE_STATUS_PERMANENT;
file_save($file);
$form['im-container']=array(
'#title'=>t('Preview:'),
'#prefix'=>'<div id="im-area">',
'#markup'=>'<img src="sites/default/files/'.$file->filename.'">',
'#suffix'=>'</div>',
);
}
else
drupal_set_message('No file uploaded.');
return $form['im-container'];
}
Powyższy kod nie zawiera błędu, ale podgląd obrazu nie pojawia się. Czy ktoś może powiedzieć, co robię źle tutaj i co powinienem zrobić? Dzięki.