Browse Source

User can cancel family connection request

family_member_connections
Nafies Luthfi 5 years ago
parent
commit
be449bb0a4
  1. 4
      app/Http/Controllers/Users/FamilyConnectionRequestController.php
  2. 2
      resources/views/users/partials/action-buttons.blade.php
  3. 22
      tests/Feature/FamilyConnectionRequestTest.php

4
app/Http/Controllers/Users/FamilyConnectionRequestController.php

@ -42,6 +42,10 @@ class FamilyConnectionRequestController extends Controller
'requester_id' => $user->id,
'requested_id' => auth()->id(),
'status_id' => FamilyConnection::STATUS_WAITING,
])->orWhere([
'requester_id' => auth()->id(),
'requested_id' => $user->id,
'status_id' => FamilyConnection::STATUS_WAITING,
])->first();
$familyConnection->delete();

2
resources/views/users/partials/action-buttons.blade.php

@ -8,7 +8,7 @@
{{ link_to_route('users.marriages', trans('app.show_marriages'), [$user->id], ['class' => Request::segment(3) == 'marriages' ? 'btn btn-default active' : 'btn btn-default']) }}
@auth
@if (auth()->user()->hasFamilyConnectionRequestTo($user))
{!! FormField::formButton(['route' => ['users.family_connection_requests.destroy', $user->id]], __('family_connection.cancel_request'), ['class' => 'btn btn-warning', 'id' => 'cancel_family_connection_request']) !!}
{!! FormField::delete(['route' => ['users.family_connection_requests.destroy', $user->id]], __('family_connection.cancel_request'), ['class' => 'btn btn-warning', 'id' => 'cancel_family_connection_request']) !!}
@else
{!! FormField::formButton(['route' => ['users.family_connection_requests.store', $user->id]], __('family_connection.send_request'), ['class' => 'btn btn-success', 'id' => 'send_family_connection_request']) !!}
@endif

22
tests/Feature/FamilyConnectionRequestTest.php

@ -36,6 +36,28 @@ class FamilyConnectionRequestTest extends TestCase
}
/** @test */
public function user_can_cancel_family_connection_request_to_other_user()
{
$user = $this->loginAsUser();
$otherPerson = factory(User::class)->create();
FamilyConnection::create([
'id' => Uuid::uuid4()->toString(),
'requester_id' => $user->id,
'requested_id' => $otherPerson->id,
]);
$this->visitRoute('users.show', $otherPerson);
$this->seeElement('button', ['id' => 'cancel_family_connection_request']);
$this->press('cancel_family_connection_request');
$this->dontSeeInDatabase('family_connections', [
'requester_id' => $otherPerson->id,
'requested_id' => $user->id,
]);
}
/** @test */
public function user_can_accept_family_connection_request_from_other_user()
{
$user = $this->loginAsUser();

Loading…
Cancel
Save