update-rooms (#40)
Co-authored-by: Apodemus <apodemus@github.com> Reviewed-on: #40 Co-authored-by: Kiara Grouwstra <kiara@bij1.org> Co-committed-by: Kiara Grouwstra <kiara@bij1.org>
This commit is contained in:
parent
12ee04752b
commit
7ab595bc11
|
@ -17,16 +17,7 @@ class RoomsController < ApplicationController
|
|||
|
||||
# GET /rooms/new
|
||||
def new
|
||||
@room = Room.new
|
||||
|
||||
meetings = bbb_server.get_meetings[:meetings].filter { |m| m[:running] }
|
||||
if meetings.length > 0
|
||||
meeting = meetings.last
|
||||
@room.name = meeting[:meetingName]
|
||||
@room.meeting = meeting[:meetingID]
|
||||
@room.attendee_pw = meeting[:attendeePW]
|
||||
@room.moderator_pw = meeting[:moderatorPW]
|
||||
end
|
||||
@room = Room.new
|
||||
end
|
||||
|
||||
# GET /rooms/1/edit
|
||||
|
@ -119,33 +110,6 @@ class RoomsController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
# GET /rooms/1/aanwezig
|
||||
# GET /rooms/1/aanwezig.csv
|
||||
def present
|
||||
require 'csv'
|
||||
# for the desired presence dump the voters
|
||||
presence = ActiveModel::Type::Boolean.new.cast(params[:v])
|
||||
conference = get_bbb_attendees(@room)
|
||||
csv_data = CSV.generate do |csv|
|
||||
User.where(room_id: @room.id).each do |attendee|
|
||||
attendee_presence = ActiveModel::Type::Boolean.new.cast(attendee.presence)
|
||||
present = attendee.presence or conference.include?(attendee.id)
|
||||
if not attendee.proxy and (present === presence)
|
||||
if attendee.vote and voter = attendee
|
||||
csv << ["password", voter.id, voter.email, voter.name]
|
||||
end
|
||||
User.where(email: attendee.email, vote: true, proxy: true, room_id: @room.id).each do |proxy|
|
||||
csv << ["password", proxy.id, proxy.email, "gemachtigde voor #{proxy.name}"]
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
respond_to do |format|
|
||||
format.csv { send_data csv_data, filename: "#{@room.name} #{Time.zone.now}.csv" }
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
# Use callbacks to share common setup or constraints between actions.
|
||||
def set_room
|
||||
|
@ -156,14 +120,4 @@ class RoomsController < ApplicationController
|
|||
def room_params
|
||||
params.require(:room).permit(:name, :meeting, :attendee_pw, :moderator_pw, :email_subject, :email_body)
|
||||
end
|
||||
|
||||
def get_bbb_attendees(room)
|
||||
conference = Set.new()
|
||||
if bbb_server.is_meeting_running?(room.meeting)
|
||||
bbb_server.get_meeting_info(room.meeting, room.moderator_pw)[:attendees].each do |attendee|
|
||||
conference.add(attendee[:userID].to_i)
|
||||
end
|
||||
end
|
||||
conference
|
||||
end
|
||||
end
|
||||
|
|
|
@ -16,21 +16,6 @@
|
|||
<%= form.text_field :name %>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<%= form.label :meeting %>
|
||||
<%= form.text_field :meeting %>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<%= form.label :attendee_pw %>
|
||||
<%= form.text_field :attendee_pw %>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<%= form.label :moderator_pw %>
|
||||
<%= form.text_field :moderator_pw %>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<%= form.label :email_subject %>
|
||||
<%= form.text_field :email_subject %>
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
json.extract! room, :id, :name, :meeting, :attendee_pw, :moderator_pw, :email_subject, :email_body, :created_at, :updated_at
|
||||
json.extract! room, :id, :name, :email_subject, :email_body, :created_at, :updated_at
|
||||
json.url room_url(room, format: :json)
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<th>Moderator pw</th>
|
||||
<th>Email Subject</th>
|
||||
<!--<th>Email Body</th>-->
|
||||
<th colspan="4"></th>
|
||||
<th colspan="3"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
|
@ -26,7 +26,6 @@
|
|||
<!--<td><%= room.email_body %></td>-->
|
||||
<!--<td><%= link_to 'Show', room %></td>-->
|
||||
<td><%= link_to 'Users', room_users_path(room) %></td>
|
||||
<td><%= link_to 'Present Users', room_present_users_path(room) %></td>
|
||||
<td><%= link_to 'Edit', edit_room_path(room) %></td>
|
||||
<td><%= link_to 'Destroy', room, method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
||||
</tr>
|
||||
|
|
|
@ -5,21 +5,6 @@
|
|||
<%= @room.name %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong>Meeting:</strong>
|
||||
<%= @room.meeting %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong>Attendee pw:</strong>
|
||||
<%= @room.attendee_pw %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong>Moderator pw:</strong>
|
||||
<%= @room.moderator_pw %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong>Email Subject:</strong>
|
||||
<%= @room.email_subject %>
|
||||
|
@ -34,5 +19,4 @@
|
|||
<%= link_to 'Edit', edit_room_path(@room) %> |
|
||||
<%= link_to 'Import Users', bulk_new_room_users_path(@room), method: :get %> |
|
||||
<%= link_to 'Import Votes', bulk_new_room_votes_path(@room), method: :get %> |
|
||||
<%= link_to 'Present Users', room_present_users_path(@room) %> |
|
||||
<%= link_to 'Back', rooms_path %>
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
class RemoveBBBFromRoom < ActiveRecord::Migration[6.0]
|
||||
def change
|
||||
remove_column :rooms, :meeting
|
||||
remove_column :rooms, :attendee_pw
|
||||
remove_column :rooms, :moderator_pw
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue