7 changed files with 145 additions and 2 deletions
-
23app/Http/Controllers/CouplesController.php
-
4resources/lang/en/couple.php
-
4resources/lang/id/couple.php
-
55resources/views/couples/edit.blade.php
-
11resources/views/couples/show.blade.php
-
2routes/web.php
-
48tests/Feature/EditMarriagesTest.php
@ -0,0 +1,55 @@ |
|||||
|
@extends('layouts.app') |
||||
|
|
||||
|
@section('content') |
||||
|
<h2 class="page-header"> |
||||
|
{{ $couple->husband->name }} & {{ $couple->wife->name }} <small>{{ trans('couple.edit') }}</small> |
||||
|
</h2> |
||||
|
|
||||
|
@include('couples.partials.stat') |
||||
|
|
||||
|
<div class="row"> |
||||
|
<div class="col-md-4 col-md-offset-4"> |
||||
|
<div class="panel panel-default"> |
||||
|
<div class="panel-heading"><h3 class="panel-title">{{ trans('couple.update') }}</h3></div> |
||||
|
{!! Form::model($couple, ['route' => ['couples.update', $couple], 'method' => 'patch']) !!} |
||||
|
<div class="panel-body"> |
||||
|
<div class="row"> |
||||
|
<div class="col-md-6"> |
||||
|
{!! FormField::text('marriage_date', ['label' => trans('couple.marriage_date')]) !!} |
||||
|
</div> |
||||
|
<div class="col-md-6"> |
||||
|
{!! FormField::text('divorce_date', ['label' => trans('couple.divorce_date')]) !!} |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="panel-footer"> |
||||
|
{!! Form::submit(trans('couple.update'), ['class' => 'btn btn-success']) !!} |
||||
|
{{ link_to_route('couples.show', trans('app.cancel'), [$couple], ['class' => 'btn btn-default']) }} |
||||
|
</div> |
||||
|
{!! Form::close() !!} |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
@endsection |
||||
|
|
||||
|
@section ('ext_css') |
||||
|
<link rel="stylesheet" href="{{ asset('css/plugins/jquery.datetimepicker.css') }}"> |
||||
|
@endsection |
||||
|
|
||||
|
@section ('ext_js') |
||||
|
<script src="{{ asset('js/plugins/jquery.datetimepicker.js') }}"></script> |
||||
|
@endsection |
||||
|
|
||||
|
@section ('script') |
||||
|
<script> |
||||
|
(function () { |
||||
|
$('#marriage_date, #divorce_date').datetimepicker({ |
||||
|
timepicker:false, |
||||
|
format:'Y-m-d', |
||||
|
closeOnDateSelect: true, |
||||
|
scrollInput: false |
||||
|
}); |
||||
|
})(); |
||||
|
</script> |
||||
|
@endsection |
||||
@ -0,0 +1,48 @@ |
|||||
|
<?php |
||||
|
|
||||
|
namespace Tests\Feature; |
||||
|
|
||||
|
use App\Couple; |
||||
|
use Illuminate\Foundation\Testing\DatabaseMigrations; |
||||
|
use Tests\TestCase; |
||||
|
|
||||
|
class EditMarriagesTest extends TestCase |
||||
|
{ |
||||
|
use DatabaseMigrations; |
||||
|
|
||||
|
/** @test */ |
||||
|
public function user_can_visit_a_marriage_detail_page() |
||||
|
{ |
||||
|
$couple = factory(Couple::class)->create(); |
||||
|
|
||||
|
$this->visit(route('couples.show', $couple)); |
||||
|
|
||||
|
$this->see($couple->husband->name); |
||||
|
$this->see($couple->wife->name); |
||||
|
} |
||||
|
|
||||
|
/** @test */ |
||||
|
public function manager_can_edit_couple_data() |
||||
|
{ |
||||
|
$user = $this->loginAsUser(); |
||||
|
$couple = factory(Couple::class)->create(['manager_id' => $user->id]); |
||||
|
|
||||
|
$this->visit(route('couples.show', $couple)); |
||||
|
|
||||
|
$this->click(trans('couple.edit')); |
||||
|
$this->seePageIs(route('couples.edit', $couple)); |
||||
|
|
||||
|
$this->submitForm(trans('couple.update'), [ |
||||
|
'marriage_date' => '2010-04-04', |
||||
|
'divorce_date' => '2035-04-04', |
||||
|
]); |
||||
|
|
||||
|
$this->seePageIs(route('couples.show', $couple)); |
||||
|
|
||||
|
$this->seeInDatabase('couples', [ |
||||
|
'id' => $couple->id, |
||||
|
'marriage_date' => '2010-04-04', |
||||
|
'divorce_date' => '2035-04-04', |
||||
|
]); |
||||
|
} |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue