Skip to content

Commit

Permalink
refactor WelcomeController.php
Browse files Browse the repository at this point in the history
  • Loading branch information
fey committed May 8, 2020
1 parent e343b3f commit 32807f2
Showing 1 changed file with 28 additions and 27 deletions.
55 changes: 28 additions & 27 deletions app/Http/Controllers/WelcomeController.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,33 +13,7 @@ class WelcomeController extends Controller
public function index()
{
$logItems = Activity::latest()->with('causer')->limit(10)->get();

$countActivitiesByDays = Activity::all()
->groupBy(function (Activity $activity) {
return $activity->created_at->format('Y-m-d');
})
->map(function (Collection $group) {
return $group->count();
});

$chart = CarbonPeriod::create(now()->subMonths(12), '1 day', now())
->map(function (Carbon $dayDate) use ($countActivitiesByDays) {
$day = $dayDate->format('Y-m-d');
$dayActivitiesCount = $countActivitiesByDays->get($day, 0);

if ($dayActivitiesCount < 1) :
return 0;
elseif ($dayActivitiesCount < 5) :
return 1;
elseif ($dayActivitiesCount < 10) :
return 2;
elseif ($dayActivitiesCount < 15) :
return 3;
else :
return 4;
endif;
});

$chart = $this->getChart();
$comments = Comment::latest()->limit(10)->get();

return view(
Expand All @@ -51,4 +25,31 @@ public function index()
]
);
}

/**
* @return \Generator
*/
private function getChart(): \Generator
{
$countActivitiesByDays = Activity::all()
->groupBy(function (Activity $activity) {
return $activity->created_at->format('Y-m-d');
})
->map(function (Collection $group) {
return $group->count();
});

$chart = CarbonPeriod::create(now()->subMonths(12), '1 day', now())
->map(function (Carbon $dayDate) use ($countActivitiesByDays): int {
$day = $dayDate->format('Y-m-d');
$dayActivitiesCount = $countActivitiesByDays->get($day, 0);
$magicNumber = 4;
$maxDayActivityLevel = 4;
$dayActivityLevel = (ceil(($dayActivitiesCount) / $magicNumber));

return min($dayActivityLevel, $maxDayActivityLevel);
});

return $chart;
}
}

0 comments on commit 32807f2

Please sign in to comment.