if ($page == 'read') { $referer = elgg_get_site_url() . "messages/{$box}/{$user->username}"; } $box = 'sent'; if ($user->guid == $message->toId) { $box = 'inbox'; } if (!$message || !$message->canEdit()) { register_error(elgg_echo('messages:error:delete:single')); forward(REFERER); } if ($box == 'sent') { $attachments = unserialize($message->attachments); if (count($attachments) > 0) { foreach ($attachments as $attachment) { $file = new MessagePluginFile($attachment); if (!$file->guid) { register_error(elgg_echo("messages:deleteattacmentfailed")); } if (!$file->canEdit()) { register_error(elgg_echo("messages:deleteattacmentfailed")); } if (!$file->delete()) { register_error(elgg_echo("messages:deleteattacmentfailed")); } } } } if (!$message->delete()) { register_error(elgg_echo('messages:error:delete:single')); } else {
<?php /** * Elgg file download. * * @package ElggMessages */ gatekeeper(); // Get the guid $file_guid = get_input("file_guid"); $file = new MessagePluginFile($file_guid); if (!$file) { register_error(elgg_echo("messages:downloadfailed") . $file_guid); forward(REFERER); } $mime = $file->getMimeType(); if (!$mime) { $mime = "application/octet-stream"; } $filename = $file->originalfilename; // fix for IE https issue header("Pragma: public"); header("Content-type: {$mime}"); if (strpos($mime, "image/") !== false) { header("Content-Disposition: inline; filename=\"{$filename}\""); } else { header("Content-Disposition: attachment; filename=\"{$filename}\""); } ob_clean(); flush(); readfile($file->getFilenameOnFilestore());