refactor: group internship commits by date and update UI to a grid layout
This commit is contained in:
@@ -268,22 +268,34 @@ class CareerController extends Controller
|
||||
// Sort commits chronological (ascending)
|
||||
$commits = array_reverse($commits);
|
||||
|
||||
// Group commits by date (YYYY-MM-DD)
|
||||
$grouped = [];
|
||||
foreach ($commits as $c) {
|
||||
$dateStr = $c['commit']['author']['date'] ?? '';
|
||||
if ($dateStr) {
|
||||
$dateOnly = \Carbon\Carbon::parse($dateStr)->format('Y-m-d');
|
||||
$grouped[$dateOnly][] = $c;
|
||||
}
|
||||
}
|
||||
|
||||
// Sort dates chronological (ascending)
|
||||
ksort($grouped);
|
||||
|
||||
// Generate Markdown content
|
||||
$md = "# Staj Günlüğü - " . $intern->name . "\n";
|
||||
$md .= "Depo: https://github.com/{$owner}/{$repoName}\n\n";
|
||||
|
||||
$day = 1;
|
||||
foreach ($commits as $c) {
|
||||
$message = $c['commit']['message'] ?? '';
|
||||
$dateStr = $c['commit']['author']['date'] ?? '';
|
||||
$date = $dateStr ? \Carbon\Carbon::parse($dateStr)->format('d.m.Y H:i') : '';
|
||||
$hash = substr($c['sha'] ?? '', 0, 7);
|
||||
|
||||
$md .= "## {$day}. Gün\n";
|
||||
$md .= "- **Tarih:** {$date}\n";
|
||||
$md .= "- **Commit:** `{$hash}`\n";
|
||||
$md .= "- **Mesaj:** {$message}\n\n";
|
||||
|
||||
foreach ($grouped as $date => $dayCommits) {
|
||||
$formattedDate = \Carbon\Carbon::parse($date)->format('d.m.Y');
|
||||
$md .= "## {$day}. Gün ({$formattedDate})\n";
|
||||
foreach ($dayCommits as $c) {
|
||||
$message = trim($c['commit']['message'] ?? '');
|
||||
$time = \Carbon\Carbon::parse($c['commit']['author']['date'] ?? '')->format('H:i');
|
||||
$hash = substr($c['sha'] ?? '', 0, 7);
|
||||
$md .= "- [{$time}] `{$hash}`: {$message}\n";
|
||||
}
|
||||
$md .= "\n";
|
||||
$day++;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user