From 5ca4f07c6070da7ece84001e5c4cdc52b8f35ebb Mon Sep 17 00:00:00 2001 From: philipp lang <philipp@aweos.de> Date: Sun, 22 Aug 2021 23:32:54 +0200 Subject: [PATCH] Delete membership --- app/Membership/MembershipController.php | 17 +++++++++++++++-- packages/laravel-nami | 2 +- resources/js/views/member/Memberships.vue | 4 ++-- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/app/Membership/MembershipController.php b/app/Membership/MembershipController.php index ba1730ec..dcc42180 100644 --- a/app/Membership/MembershipController.php +++ b/app/Membership/MembershipController.php @@ -5,27 +5,40 @@ namespace App\Membership; use App\Activity; use App\Http\Controllers\Controller; use App\Member\Member; +use App\Member\Membership; use App\Subactivity; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; class MembershipController extends Controller { + public function store(Member $member, Request $request): RedirectResponse { $namiId = auth()->user()->api()->group($member->group->nami_id)->member($member->nami_id) ->putMembership([ - 'created_at' => now(), + 'starts_at' => now(), 'group_id' => $member->group->nami_id, 'activity_id' => Activity::find($request->input('activity_id'))->nami_id, 'subactivity_id' => optional(Subactivity::find($request->input('subactivity_id')))->nami_id, ]); - $membership = $member->memberships()->create(array_merge( + $member->memberships()->create(array_merge( $request->input(), ['nami_id' => $namiId], )); return redirect()->back(); } + + public function destroy(Member $member, Membership $membership): RedirectResponse + { + auth()->user()->api()->group($member->group->nami_id)->member($member->nami_id) + ->deleteMembership($membership->nami_id); + + $membership->delete(); + + return redirect()->back(); + } + } diff --git a/packages/laravel-nami b/packages/laravel-nami index 9f5324b0..24491543 160000 --- a/packages/laravel-nami +++ b/packages/laravel-nami @@ -1 +1 @@ -Subproject commit 9f5324b0d00a417c90d5ca1473d16ff350ad4f1d +Subproject commit 244915432bd2a7e191e9868985bd9a5cadddcadc diff --git a/resources/js/views/member/Memberships.vue b/resources/js/views/member/Memberships.vue index b9c2ce6c..67ed2a91 100644 --- a/resources/js/views/member/Memberships.vue +++ b/resources/js/views/member/Memberships.vue @@ -46,8 +46,8 @@ export default { components: { SidebarHeader }, methods: { - remove(payment) { - this.$inertia.delete(`/member/${this.value.id}/payment/${payment.id}`); + remove(membership) { + this.$inertia.delete(`/member/${this.value.id}/membership/${membership.id}`); }, accept(payment) {