Browse Source
Added user family chart
Added user family chart
Added set parent from existing couple Added user siblings relation (currently for same father) Added couple to husband and wife relation Added laravel debugbarpull/3/head
18 changed files with 357 additions and 7 deletions
-
10app/Couple.php
-
8app/Http/Controllers/FamilyActionsController.php
-
34app/Http/Controllers/UsersController.php
-
24app/User.php
-
0bootstrap/app.php
-
0bootstrap/autoload.php
-
0bootstrap/cache/.gitignore
-
1composer.json
-
125composer.lock
-
1config/app.php
-
2resources/views/layouts/app.blade.php
-
86resources/views/users/chart.blade.php
-
25resources/views/users/partials/parent-spouse.blade.php
-
14resources/views/users/partials/siblings.blade.php
-
6resources/views/users/show.blade.php
-
2routes/web.php
-
2storage/debugbar/.gitignore
-
24tests/Feature/ManageUserFamiliesTest.php
@ -0,0 +1,86 @@ |
|||||
|
@extends('layouts.app') |
||||
|
|
||||
|
@section('content') |
||||
|
<div class="pull-right"> |
||||
|
{{ link_to_route('users.show', 'Lihat Profil '.$user->name, [$user->id], ['class' => 'btn btn-default']) }} |
||||
|
</div> |
||||
|
<h3 class="page-header text-center">{{ $user->profileLink('chart') }}</h3> |
||||
|
</div> |
||||
|
<div class="container-fluid"> |
||||
|
<div class="panel panel-default table-responsive"> |
||||
|
<table class="table table-bordered table-striped"> |
||||
|
<tbody> |
||||
|
<tr> |
||||
|
<th style="width: 10%">Kakek & Nenek</th> |
||||
|
<td class="text-center" colspan="{{ $colspan }}"> |
||||
|
<span class="col-xs-3">{{ $fatherGrandpa ? $fatherGrandpa->profileLink('chart') : '?' }}</span> |
||||
|
<span class="col-xs-3">{{ $fatherGrandma ? $fatherGrandma->profileLink('chart') : '?' }}</span> |
||||
|
<span class="col-xs-3" style="border-left:1px solid #ccc"> |
||||
|
{{ $motherGrandpa ? $motherGrandpa->profileLink('chart') : '?' }} |
||||
|
</span> |
||||
|
<span class="col-xs-3">{{ $motherGrandma ? $motherGrandma->profileLink('chart') : '?' }}</span> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Ayah & Ibu</th> |
||||
|
<td class="text-center" colspan="{{ $colspan }}"> |
||||
|
<span class="col-xs-6">{{ $father ? $father->profileLink('chart') : '?' }}</span> |
||||
|
<span class="col-xs-6" style="border-left:1px solid #ccc">{{ $mother ? $mother->profileLink('chart') : '?' }}</span> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th> </th> |
||||
|
<th class="text-center" colspan="{{ $colspan }}">{{ $user->profileLink('chart') }}</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Anak-Anak & Cucu-Cucu</th> |
||||
|
@foreach($childs as $child) |
||||
|
<td> |
||||
|
{{ $child->profileLink('chart') }} |
||||
|
<ul style="padding-left: 18px"> |
||||
|
@foreach($child->childs as $grand) |
||||
|
<li>{{ $grand->profileLink('chart') }}</li> |
||||
|
@endforeach |
||||
|
</ul> |
||||
|
</td> |
||||
|
@endforeach |
||||
|
</tr> |
||||
|
</tbody> |
||||
|
</table> |
||||
|
</div> |
||||
|
@foreach ($siblings->chunk(4) as $chunkedSiblings) |
||||
|
<div class="row"> |
||||
|
@foreach ($chunkedSiblings as $sibling) |
||||
|
<div class="col-sm-3"> |
||||
|
<div class="panel panel-default table-responsive"> |
||||
|
<table class="table table-bordered table-striped"> |
||||
|
<tbody> |
||||
|
<tr> |
||||
|
<th style="width: 35%">Saudara</th> |
||||
|
<th class="text-center" colspan="{{ $sibling->childs->count() }}">{{ $sibling->profileLink('chart') }}</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Keponakan & Cucu-Cucu</th> |
||||
|
<td> |
||||
|
<ol style="padding-left: 15px"> |
||||
|
@foreach($sibling->childs as $child) |
||||
|
<li> |
||||
|
{{ $child->profileLink('chart') }} |
||||
|
<ul style="padding-left: 18px"> |
||||
|
@foreach($child->childs as $grand) |
||||
|
<li>{{ $grand->profileLink('chart') }}</li> |
||||
|
@endforeach |
||||
|
</ul> |
||||
|
</li> |
||||
|
@endforeach |
||||
|
</ol> |
||||
|
</td> |
||||
|
</tr> |
||||
|
</tbody> |
||||
|
</table> |
||||
|
</div> |
||||
|
</div> |
||||
|
@endforeach |
||||
|
</div> |
||||
|
@endforeach |
||||
|
@endsection |
||||
@ -0,0 +1,14 @@ |
|||||
|
<div class="panel panel-default"> |
||||
|
<div class="panel-heading"><h3 class="panel-title">Saudara Kandung</h3></div> |
||||
|
<table class="table"> |
||||
|
<tbody> |
||||
|
@foreach($user->siblings() as $sibling) |
||||
|
<tr> |
||||
|
<td> |
||||
|
{{ $sibling->profileLink() }} ({{ $sibling->gender }}) |
||||
|
</td> |
||||
|
</tr> |
||||
|
@endforeach |
||||
|
</tbody> |
||||
|
</table> |
||||
|
</div> |
||||
@ -1,16 +1,18 @@ |
|||||
@extends('layouts.app') |
@extends('layouts.app') |
||||
|
|
||||
@section('content') |
@section('content') |
||||
<div class="container"> |
|
||||
|
<div class="pull-right"> |
||||
|
{{ link_to_route('users.chart', 'Lihat Chart Keluarga '.$currentUser->name, [$currentUser->id], ['class' => 'btn btn-default']) }} |
||||
|
</div> |
||||
<h3 class="page-header text-center">{{ $currentUser->profileLink() }}</h3> |
<h3 class="page-header text-center">{{ $currentUser->profileLink() }}</h3> |
||||
<div class="row"> |
<div class="row"> |
||||
<div class="col-md-6"> |
<div class="col-md-6"> |
||||
@include('users.partials.profile', ['user' => $currentUser]) |
@include('users.partials.profile', ['user' => $currentUser]) |
||||
|
@include('users.partials.siblings', ['user' => $currentUser]) |
||||
</div> |
</div> |
||||
<div class="col-md-6"> |
<div class="col-md-6"> |
||||
@include('users.partials.parent-spouse', ['user' => $currentUser]) |
@include('users.partials.parent-spouse', ['user' => $currentUser]) |
||||
@include('users.partials.childs', ['user' => $currentUser]) |
@include('users.partials.childs', ['user' => $currentUser]) |
||||
</div> |
</div> |
||||
</div> |
</div> |
||||
</div> |
|
||||
@endsection |
@endsection |
||||
@ -0,0 +1,2 @@ |
|||||
|
* |
||||
|
!.gitignore |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue