<?php

$config = include 'config/config.php';

//TODO switch to array
extract($config, EXTR_OVERWRITE);

include 'include/utils.php';

if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager")
{
	response('forbiden', 403)->send();
	exit;
}

include 'include/mime_type_lib.php';

if (
	strpos($_POST['path'], '/') === 0
	|| strpos($_POST['path'], '../') !== false
	|| strpos($_POST['path'], './') === 0
)
{
	response('wrong path', 400)->send();
	exit;
}


if (strpos($_POST['name'], '/') !== false)
{
	response('wrong path', 400)->send();
	exit;
}

$path = $current_path . $_POST['path'];
$name = $_POST['name'];

$info = pathinfo($name);

if ( ! in_array(fix_strtolower($info['extension']), $ext))
{
	response('wrong extension', 400)->send();
	exit;
}

if ( ! file_exists($path . $name))
{
	response('File not found', 404)->send();
	exit;
}

$img_size = (string) (filesize($path . $name)); // Get the image size as string

$mime_type = get_file_mime_type($path . $name); // Get the correct MIME type depending on the file.

response(file_get_contents($path . $name), 200, array(
	'Pragma'              => 'private',
	'Cache-control'       => 'private, must-revalidate',
	'Content-Type'        => $mime_type,
	'Content-Length'      => $img_size,
	'Content-Disposition' => 'attachment; filename="' . ($name) . '"'
))->send();

exit;