The class EloquentRepository has an overall complexity of 57 which is very high. The configured complexity threshold is 50.
class EloquentRepository extends BaseRepository
{
* {@inheritdoc}
*/
The class EloquentRepository has 27 non-getter- and setter-methods. Consider refactoring EloquentRepository to keep number of methods under 25.
class EloquentRepository extends BaseRepository
{
* {@inheritdoc}
*/
EloquentRepository
has 27 functions (exceeds 20 allowed). Consider refactoring.
class EloquentRepository extends BaseRepository
{
* {@inheritdoc}
*/
Function update
has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
public function update($id, array $attributes = [], bool $syncRelations = false)
{
$updated = false;
Avoid assigning values to variables in if clauses and the like (line '21', column '32').
public function createModel()
{
if (is_string($model = $this->getModel())) {
if (! class_exists($class = '\\'.ltrim($model, '\\'))) {
throw new RepositoryException("Class {$model} does NOT exist!");
Avoid assigning values to variables in if clauses and the like (line '20', column '23').
public function createModel()
{
if (is_string($model = $this->getModel())) {
if (! class_exists($class = '\\'.ltrim($model, '\\'))) {
throw new RepositoryException("Class {$model} does NOT exist!");
Avoid assigning values to variables in if clauses and the like (line '73', column '23').
public function findOrNew($id, $attributes = ['*'])
{
if (! is_null($entity = $this->find($id, $attributes))) {
return $entity;
}
Similar blocks of code found in 2 locations. Consider refactoring.
public function paginate($perPage = null, $attributes = ['*'], $pageName = 'page', $page = null)
{
$page = $page ?: Paginator::resolveCurrentPage($pageName);
return $this->executeCallback(static::class, __FUNCTION__, array_merge(func_get_args(), compact('page')), function () use ($perPage, $attributes, $pageName, $page) {
Similar blocks of code found in 2 locations. Consider refactoring.
public function simplePaginate($perPage = null, $attributes = ['*'], $pageName = 'page', $page = null)
{
$page = $page ?: Paginator::resolveCurrentPage($pageName);
return $this->executeCallback(static::class, __FUNCTION__, array_merge(func_get_args(), compact('page')), function () use ($perPage, $attributes, $pageName, $page) {
Similar blocks of code found in 2 locations. Consider refactoring.
public function restore($id)
{
$restored = false;
Similar blocks of code found in 2 locations. Consider refactoring.
public function delete($id)
{
$deleted = false;
Similar blocks of code found in 3 locations. Consider refactoring.
public function findWhereHas(array $where, $attributes = ['*'])
{
return $this->executeCallback(static::class, __FUNCTION__, func_get_args(), function () use ($where, $attributes) {
[$relation, $callback, $operator, $count] = array_pad($where, 4, null);
Similar blocks of code found in 3 locations. Consider refactoring.
public function findWhere(array $where, $attributes = ['*'])
{
return $this->executeCallback(static::class, __FUNCTION__, func_get_args(), function () use ($where, $attributes) {
[$attribute, $operator, $value, $boolean] = array_pad($where, 4, null);
Similar blocks of code found in 3 locations. Consider refactoring.
public function findWhereIn(array $where, $attributes = ['*'])
{
return $this->executeCallback(static::class, __FUNCTION__, func_get_args(), function () use ($where, $attributes) {
[$attribute, $values, $boolean, $not] = array_pad($where, 4, null);
There are no issues that match your filters.