Se agrega modo para ver archivos que han sido subidos y poder eliminarlos
This commit is contained in:
@ -4,9 +4,31 @@ namespace ProVM\NotariaRaby\Common\Controller\Web\Admin;
|
||||
use Psr\Container\ContainerInterface as Container;
|
||||
use Psr\Http\Message\ServerRequestInterface as Request;
|
||||
use Psr\Http\Message\ResponseInterface as Response;
|
||||
use Slim\Views\Blade as View;
|
||||
use Carbon\Carbon;
|
||||
use ProVM\Common\Service\Filemanager;
|
||||
|
||||
class Documentos {
|
||||
public function __invoke(Request $request, Response $response, Container $container, View $view, $tipo): Response {
|
||||
$glob = implode(DIRECTORY_SEPARATOR, [
|
||||
$container->get('folders.upload'),
|
||||
$tipo . '*.pdf'
|
||||
]);
|
||||
$files = glob($glob);
|
||||
$archivos = [];
|
||||
foreach ($files as $filename) {
|
||||
$file = new \SplFileInfo($filename);
|
||||
$archivos []= $file;
|
||||
}
|
||||
$titulo = $tipo;
|
||||
$months = (object) ['full' => [], 'short' => []];
|
||||
$m = Carbon::createFromDate(0, 1, 1);
|
||||
for ($i = 0; $i < 12; $i ++) {
|
||||
$months->full []= ucwords($m->copy()->addMonths($i)->locale('es_ES')->isoFormat('MMMM'));
|
||||
$months->short []= ucwords($m->copy()->addMonths($i)->locale('es_ES')->isoFormat('MMM'));
|
||||
}
|
||||
return $view->render($response, 'admin.archivos.list', compact('titulo', 'archivos', 'months'));
|
||||
}
|
||||
public function upload(Request $request, Response $response, Filemanager $filemanager, Container $container): Response {
|
||||
$post = $request->getParsedBody();
|
||||
$files = $request->getUploadedFiles();
|
||||
@ -33,4 +55,21 @@ class Documentos {
|
||||
->withHeader('Content-Type', 'application/json')
|
||||
->withStatus(201);
|
||||
}
|
||||
public function delete(Request $request, Response $response, Container $container): Response {
|
||||
$post = $request->getParsedBody();
|
||||
$filename = implode(DIRECTORY_SEPARATOR, [
|
||||
$container->get('folders.upload'),
|
||||
$post['archivo'] . '.pdf'
|
||||
]);
|
||||
$status = unlink($filename);
|
||||
$output = [
|
||||
'informacion' => $post,
|
||||
'estado' => $status,
|
||||
'archivo' => $filename
|
||||
];
|
||||
$response->getBody()->write(json_encode($output));
|
||||
return $response
|
||||
->withHeader('Content-Type', 'application/json')
|
||||
->withStatus(201);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user