23 if ( @$_POST[
'--field'] ){
31 return PEAR::raiseError(
"No implemented yet. Please use this only via POST method.");
36 $query =&
$app->getQuery();
39 $record =&
$app->getRecord();
43 $fieldDef =& $record->_table->getField($_POST[
'--field']);
46 if ( !$record->checkPermission(
'edit', array(
'field'=>$fieldDef[
'Field'])) ){
52 if ( $fieldDef[
'Type'] ==
'container' ){
53 $fileName = $record->val($fieldDef[
'Field']);
54 if ( !$fileName )
return PEAR::raiseError(
"This record does not contain a file in the $fieldDef[Field] field.");
57 $path = $fieldDef[
'savepath'];
58 $filePath =
$path.
'/'.basename($fileName);
61 $record->setValue($fieldDef[
'Field'], null);
62 if ( @$fieldDef[
'mimetype'] ){
63 $mimeTypeField =& $record->_table->getField($fieldDef[
'mimetype']);
65 $record->setValue($fieldDef[
'mimetype'], null);
68 $res = $record->save();
71 }
else if ( $record->_table->isBlob($fieldDef[
'Field']) ){
72 $record->setValue($fieldDef[
'Field'],
'dummy');
73 $record->setValue($fieldDef[
'Field'], null);
74 if ( @$fieldDef[
'mimetype'] ){
75 $mimetypeField =& $record->_table->getField($fieldDef[
'mimetype']);
77 $record->setValue($fieldDef[
'mimetype'], null);
81 if ( @$fieldDef[
'filename'] ){
82 $filenameField =& $record->_table->getField($fieldDef[
'filename']);
84 $record->setValue($fieldDef[
'filename'], null);
87 $res = $record->save();
95 if ( @$query[
'--format'] ==
'json' ){
96 import(
'Services/JSON.php');
97 $json =
new Services_JSON;
98 header(
'Content-type: application/json; charset='.
$app->_conf[
'oe']);
102 '--msg' =>
'Successfully deleted file'
108 if ( !$redirect ) $redirect = @$query[
'-redirect'];
109 if ( !$redirect ) $redirect = @
$_SERVER[
'HTTP_REFERER'];
110 if ( !$redirect ) $redirect = $record->getURL(
'-action=edit');
113 $redirect = DATAFACE_SITE_HREF;
116 if ( strpos($redirect,
'?') ===
false ) $redirect .=
'?';
117 $redirect .=
'&--msg='.urlencode(
"File successfully deleted.");
118 $app->redirect(
"$redirect");