forked from External/greenlight
wait for moderator with action cable
This commit is contained in:
55
app/assets/javascripts/shared.js
Normal file
55
app/assets/javascripts/shared.js
Normal file
@ -0,0 +1,55 @@
|
||||
var meetingInstance = null;
|
||||
class Meeting {
|
||||
constructor(url, name) {
|
||||
this.url = url;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
static getInstance() {
|
||||
if (meetingInstance) {
|
||||
return meetingInstance;
|
||||
}
|
||||
var url = $('.meeting-url').val();
|
||||
var name = $('.meeting-user-name').val();
|
||||
meetingInstance = new Meeting(url, name);
|
||||
return meetingInstance;
|
||||
}
|
||||
|
||||
getjoinMeetingURL() {
|
||||
return $.get(this.url + "/join?name=" + this.name, function() {
|
||||
});
|
||||
};
|
||||
|
||||
setURL(url) {
|
||||
this.url = url;
|
||||
}
|
||||
setName(name) {
|
||||
this.name = name;
|
||||
}
|
||||
setModJoined(modJoined) {
|
||||
this.modJoined = modJoined;
|
||||
}
|
||||
getModJoined() {
|
||||
return this.modJoined;
|
||||
}
|
||||
setWaitingForMod(wMod) {
|
||||
this.waitingForMod = wMod;
|
||||
}
|
||||
getWaitingForMod() {
|
||||
return this.waitingForMod;
|
||||
}
|
||||
}
|
||||
|
||||
var loopJoin = function() {
|
||||
var jqxhr = Meeting.getInstance().getjoinMeetingURL();
|
||||
jqxhr.done(function(data) {
|
||||
if (data.messageKey === 'wait_for_moderator') {
|
||||
setTimeout(loopJoin, 5000);
|
||||
} else {
|
||||
$(location).attr("href", data.response.join_url);
|
||||
}
|
||||
});
|
||||
jqxhr.fail(function(xhr, status, error) {
|
||||
console.info("meeting join failed");
|
||||
});
|
||||
}
|
Reference in New Issue
Block a user