greenlight/app/views/rooms/wait.html.erb

46 lines
1.2 KiB
Plaintext

<%= render 'shared/room_event' do %>
<div class="row">
<div class="col-9">
<h3>Oops! The meeting hasn't started yet.</h3>
<h4 class="text-muted">You will automatically join when the meeting starts.</h4>
</div>
<div class="col-3">
<div class="loader align-bottom mt-3"></div>
</div>
</div>
<% end %>
<script>
$(document).on("turbolinks:load", function(){
App.waiting = App.cable.subscriptions.create({
channel: "WaitingChannel",
uid: $(".room-section").attr("room")
}, {
received: function(data){
if(data.action = "started"){ request_to_join_meeting(); }
}
});
});
var join_attempts = 0;
var request_to_join_meeting = function(){
$.ajax({
url: window.location.pathname,
type: 'POST',
data: {
join_name: $(".room-section").attr("join-name")
},
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content')
},
error: function(){
// The meeting is still booting (going slowly), retry shortly.
if(join_attempts < 4){ setTimeout(request_to_join_meeting, 5000); }
join_attempts++;
}
});
}
</script>