correct validation errors, if no file selected or file could not be attached

This commit is contained in:
Ralf Becker 2010-06-14 20:20:54 +00:00
parent 2c75cd5705
commit 84ae85530f
3 changed files with 19 additions and 10 deletions

View File

@ -473,7 +473,7 @@ class link_widget
* @param mixed &$value the extension returns here it's input, if there's any
* @param mixed &$extension_data persistent storage between calls or pre- and post-process
* @param boolean &$loop can be set to true to request a re-submision of the form/dialog
* @param object &$tmpl the eTemplate the widget belongs too
* @param etemplate &$tmpl the eTemplate the widget belongs too
* @param mixed &value_in the posted values (already striped of magic-quotes)
* @return boolean true if $value has valid content, on false no content will be returned!
*/
@ -554,6 +554,7 @@ class link_widget
break;
case 'attach':
$name = preg_replace('/^exec\[([^]]+)\](.*)$/','\\1\\2',$name); // remove exec prefix
if (is_array($value['file']) && $value['to_app'] &&
!empty($value['file']['tmp_name']) && $value['file']['tmp_name'] != 'none')
{
@ -570,20 +571,26 @@ class link_widget
move_uploaded_file($value['file']['tmp_name'],$new_file);
$value['file']['tmp_name'] = $new_file;
}
$link_id = egw_link::link($value['to_app'],$value['to_id'],
egw_link::VFS_APPNAME,$value['file'],$value['remark']);
$value['remark'] = '';
if (isset($value['primary']) && !$value['anz_links'] )
if (!($link_id = egw_link::link($value['to_app'],$value['to_id'],
egw_link::VFS_APPNAME,$value['file'],$value['remark'])))
{
$value['primary'] = $link_id;
etemplate::set_validation_error($name.'[file]',lang('Error copying uploaded file to vfs!'));
}
else
{
$value['remark'] = '';
if (isset($value['primary']) && !$value['anz_links'] )
{
$value['primary'] = $link_id;
}
unset($value['comment']);
unset($value['file']);
}
unset($value['comment']);
unset($value['file']);
}
else
{
$value['msg'] = 'You need to select a file first!';
etemplate::set_validation_error($name.'[file]',lang('You need to select a file first!'));
}
$extension_data = $value;
$loop = True;

View File

@ -422,3 +422,4 @@ you are not allowed to export more then %1 entries! etemplate de Sie sind nicht
you can respond by visiting: etemplate de Sie können unter dem folgenden Verweis antworten:
error uploading file! filemanager de Fehler beim Hochladen der Datei!
maximum size for uploads filemanager de Maximale Größe beim Hochladen
you need to select a file first! etemplate de Sie müssen zuerst eine Datei auswählen!

View File

@ -422,3 +422,4 @@ you are not allowed to export more then %1 entries! etemplate en You are not all
you can respond by visiting: etemplate en You can respond by visiting:
error uploading file! filemanager en Error uploading file!
maximum size for uploads filemanager en Maximum size for uploads
you need to select a file first! etemplate en You need to select a file first!