Пример #1
0
 /**
  * Return textual error message
  *
  * @param int $code The error code
  *
  * @return string Localized message
  */
 public function getAttachmentErrorMessage($code)
 {
     $f = new File($this->_tmp_path);
     return $f->getErrorMessage($code);
 }
Пример #2
0
 * @link      http://galette.tuxfamily.org
 * @since     Available since 0.7dev - 2013-07-27
 */
use Analog\Analog;
use Galette\IO\File;
/** @ignore */
require_once 'includes/galette.inc.php';
if (!isset($_GET['file'])) {
    Analog::log('No requested file', Analog::INFO);
    header("HTTP/1.1 500 Internal Server Error");
    die;
}
$file = $_GET['file'];
$name = $_GET['name'];
//Exports main contain user confidential data, they're accessible only for
//admins or staff members
if ($login->isAdmin() || $login->isStaff()) {
    if (file_exists(GALETTE_FILES_PATH . $file)) {
        $type = File::getMimeType($file);
        header('Content-Type: ' . $type);
        header('Content-Disposition: attachment; filename="' . $name . '";');
        header('Pragma: no-cache');
        readfile(GALETTE_FILES_PATH . $file);
    } else {
        Analog::log('A request has been made to get an exported file named `' . $file . '` that does not exists.', Analog::WARNING);
        header('HTTP/1.0 404 Not Found');
    }
} else {
    Analog::log('A non authorized person asked to retrieve exported file named `' . $file . '`. Access has not been granted.', Analog::WARNING);
    header('HTTP/1.0 403 Forbidden');
}