5.8 beerclub join button is not shown if user already in group

This commit is contained in:
Aaro Koivukangas
2023-11-20 15:20:02 +02:00
parent 60918a17f0
commit 7bdfb41058
3 changed files with 11 additions and 5 deletions
+1
View File
@@ -9,6 +9,7 @@ class BeerclubsController < ApplicationController
# GET /beerclubs/1 or /beerclubs/1.json
def show
@membership = @beerclub.memberships.find_by user_id: current_user
end
# GET /beerclubs/new
+1 -1
View File
@@ -27,7 +27,7 @@ class MembershipsController < ApplicationController
respond_to do |format|
if @membership.save
format.html { redirect_to membership_url(@membership), notice: "Membership was successfully created." }
format.html { redirect_to membership_url(@membership), notice: "Successfully joined the beerclub." }
format.json { render :show, status: :created, location: @membership }
else
# TODO maybe doing something wrong but the variables of new need to be reinitialized here :D
+9 -4
View File
@@ -4,11 +4,16 @@
<div>
<% if current_user %>
<%= form_with model: Membership.new do |form| %>
<%= form.hidden_field :beerclub_id, value: @beerclub.id %>
<%= form.hidden_field :user_id, value: current_user.id %>
<%= form.submit "Join the beer club" %>
<% if @membership.nil? %>
<%= form_with model: Membership.new do |form| %>
<%= form.hidden_field :beerclub_id, value: @beerclub.id %>
<%= form.hidden_field :user_id, value: current_user.id %>
<%= form.submit "Join the beer club" %>
<% end %>
<% else %>
<p>You are already in this group</p>
<% end %>
<% else %>
<p>Log in to join this beerclub</p>
<% end %>