Skip to content

Commit

Permalink
refactor: rename is_meeting_running in is_running
Browse files Browse the repository at this point in the history
  • Loading branch information
azmeuk committed Feb 20, 2024
1 parent 3db83a4 commit b7f9193
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 13 deletions.
3 changes: 1 addition & 2 deletions web/b3desk/models/bbb.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,7 @@ def is_meeting_running(self):
request = self.bbb_request(
"isMeetingRunning", params={"meetingID": self.meeting.meetingID}
)
data = self.bbb_response(request)
return data and data["returncode"] == "SUCCESS" and data["running"] == "true"
return self.bbb_response(request)

def insertDocsNoDefault(self):
# TODO: appears to be unused
Expand Down
15 changes: 9 additions & 6 deletions web/b3desk/models/meetings.py
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,9 @@ def get_hash(self, role):
s = f"{self.meetingID}|{self.attendeePW}|{self.name}|{role}"
return hashlib.sha1(s.encode("utf-8")).hexdigest()

def is_meeting_running(self):
return self.bbb.is_meeting_running()
def is_running(self):
data = self.bbb.is_meeting_running()
return data and data["returncode"] == "SUCCESS" and data["running"] == "true"

def create_bbb(self):
result = self.bbb.create()
Expand Down Expand Up @@ -187,19 +188,21 @@ def update_recording_name(self, recording_id, name):
)

def get_join_url(self, meeting_role, fullname, fullname_suffix="", create=False):
is_meeting_available = self.is_meeting_running()
is_meeting_available = self.is_running()
should_create_room = (
not is_meeting_available and (meeting_role == "moderator") and create
)
if should_create_room:
d = self.create_bbb()
if "returncode" in d and d["returncode"] == "SUCCESS":
data = self.create_bbb()
if "returncode" in data and data["returncode"] == "SUCCESS":
is_meeting_available = True

if is_meeting_available:
nickname = (
f"{fullname} - {fullname_suffix}" if fullname_suffix else fullname
)
return self.bbb.prepare_request_to_join_bbb(meeting_role, nickname).url

return url_for(
"routes.waiting_meeting",
meeting_fake_id=self.fake_id,
Expand Down Expand Up @@ -246,7 +249,7 @@ def get_data_as_dict(self, fullname, fetch_recording=False):
}
if fetch_recording:
d["recordings"] = self.get_recordings()
d["running"] = self.is_meeting_running()
d["running"] = self.is_running()
d["attendee_signin_url"] = self.get_signin_url("attendee")
d["moderator_signin_url"] = self.get_signin_url("moderator")
d["authenticated_attendee_signin_url"] = self.get_signin_url(
Expand Down
10 changes: 8 additions & 2 deletions web/b3desk/routes.py
Original file line number Diff line number Diff line change
Expand Up @@ -929,7 +929,7 @@ def save_meeting():
"success",
)

if meeting.is_meeting_running():
if meeting.is_running():
EndMeetingForm()
EndMeetingForm.meeting_id.data = meeting.id
return render_template(
Expand Down Expand Up @@ -1026,7 +1026,7 @@ def externalUpload(meeting_id):
meeting = db.session.get(Meeting, meeting_id)
if (
meeting is not None
and meeting.is_meeting_running() is True
and meeting.is_running()
and user is not None
and meeting.user_id == user.id
):
Expand Down Expand Up @@ -1148,6 +1148,7 @@ def signin_meeting(meeting_fake_id, user_id, h):
)
elif not role:
return redirect(url_for("routes.index"))

return render_template(
"meeting/join.html",
meeting=meeting,
Expand Down Expand Up @@ -1192,6 +1193,7 @@ def waiting_meeting(meeting_fake_id, user_id, h, fullname="", fullname_suffix=""
role = meeting.get_role(h, current_user_id)
if not role:
return redirect(url_for("routes.index"))

return render_template(
"meeting/wait.html",
meeting=meeting,
Expand All @@ -1209,6 +1211,7 @@ def join_meeting():
form = JoinMeetingForm(request.form)
if not form.validate():
return redirect(url_for("routes.index"))

fullname = form["fullname"].data
meeting_fake_id = form["meeting_fake_id"].data
user_id = form["user_id"].data
Expand All @@ -1224,6 +1227,7 @@ def join_meeting():
fullname = get_authenticated_attendee_fullname()
elif not role:
return redirect(url_for("routes.index"))

return redirect(
meeting.get_join_url(
role, fullname, fullname_suffix=fullname_suffix, create=True
Expand All @@ -1237,6 +1241,7 @@ def join_mail_meeting():
if not form.validate():
flash("Lien invalide", "error")
return redirect(url_for("routes.index"))

fullname = form["fullname"].data
meeting_fake_id = form["meeting_fake_id"].data
form["user_id"].data
Expand Down Expand Up @@ -1293,6 +1298,7 @@ def join_meeting_as_role(meeting_id, role):
form = JoinMeetingAsRoleForm(data={"meeting_id": meeting_id, "role": role})
if not form.validate():
abort(404)

meeting = db.session.get(Meeting, meeting_id) or abort(404)
if meeting.user_id == user.id:
return redirect(meeting.get_join_url(role, user.fullname, create=True))
Expand Down
4 changes: 1 addition & 3 deletions web/tests/meeting/test_meeting.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@

@pytest.fixture()
def mocked_is_meeting_running(mocker):
mocker.patch(
"b3desk.models.meetings.Meeting.is_meeting_running", return_value=False
)
mocker.patch("b3desk.models.meetings.Meeting.is_running", return_value=False)


def test_show_meeting(client_app, authenticated_user, meeting, bbb_response):
Expand Down

0 comments on commit b7f9193

Please sign in to comment.