added responsable class to index

This commit is contained in:
Denis Duliçi
2020-11-06 00:43:46 +03:00
parent 96963ef0e1
commit e5a7f5b15e
31 changed files with 139 additions and 32 deletions

View File

@ -2,6 +2,7 @@
namespace App\Abstracts\Http;
use App\Abstracts\Http\Response;
use App\Traits\Jobs;
use App\Traits\Relationships;
use Illuminate\Database\Eloquent\Collection;
@ -99,4 +100,25 @@ abstract class Controller extends BaseController
return new LengthAwarePaginator($items->forPage($page, $perPage), $items->count(), $perPage, $page, $options);
}
/**
* Generate a response based on request type like HTML, JSON, or anything else.
*
* @param string $view
* @param array $data
*
* @return \Illuminate\Http\Response
*/
public function response($view, $data = [])
{
$class_name = str_replace('Controllers', 'Responses', (new \ReflectionClass($this))->getName());
if (class_exists($class_name)) {
$response = new $class_name($view, $data);
} else {
$response = new class($view, $data) extends Response {};
}
return $response;
}
}