From 123407f3b80bd7e1e21121ea1603ab79e251901c Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Thu, 3 Jun 2021 21:43:06 -0600 Subject: [PATCH] Helps with conference center upgrade. --- app/conference_centers/app_defaults.php | 82 +++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 app/conference_centers/app_defaults.php diff --git a/app/conference_centers/app_defaults.php b/app/conference_centers/app_defaults.php new file mode 100644 index 0000000000..a49ceff0fe --- /dev/null +++ b/app/conference_centers/app_defaults.php @@ -0,0 +1,82 @@ + + Portions created by the Initial Developer are Copyright (C) 2021 + the Initial Developer. All Rights Reserved. + + Contributor(s): + Mark J Crane +*/ + +if ($domains_processed == 1) { + + //determine if we need to migrate the pin numbers from meetings to conference rooms table + + //get the conference room count + $sql = "select count(*) from v_conference_rooms; "; + $database = new database; + $conference_room_count = $database->select($sql, null, 'column'); + + //get the count of moderator and participant pins that are null + $sql = "select count(*) from v_conference_rooms where moderator_pin is null and participant_pin is null; "; + $database = new database; + $pin_null_count = $database->select($sql, null, 'column'); + + if ($conference_room_count > 0 and $pin_null_count > 0 and $conference_room_count == $pin_null_count) { + $sql = "UPDATE v_conference_rooms "; + $sql .= "SET participant_pin = subquery.participant_pin, moderator_pin = subquery.moderator_pin "; + $sql .= "FROM ( "; + $sql .= " SELECT "; + $sql .= " r.conference_room_uuid, r.conference_room_name, "; + $sql .= " m.moderator_pin, m.participant_pin "; + $sql .= " FROM v_conference_rooms as r, v_meetings as m "; + $sql .= "WHERE r.meeting_uuid = m.meeting_uuid "; + $sql .= " ) AS subquery "; + $sql .= "WHERE v_conference_rooms.conference_room_uuid = subquery.conference_room_uuid; "; + $database = new database; + $database->execute($sql); + unset($sql); + } + + + //get the count of moderator and participant pins that are null + $sql = "select count(*) from v_conference_room_users; "; + $database = new database; + $conference_room_user_count = $database->select($sql, null, 'column'); + + //coung the meeting users table + $sql = "select count(*) from v_meeting_users; "; + $database = new database; + $meeting_user_count = $database->select($sql, null, 'column'); + + if ($conference_room_user_count == 0 && $meeting_user_count > 0) { + $sql = "INSERT INTO v_conference_room_users ( "; + $sql .= " domain_uuid, conference_room_user_uuid, conference_room_uuid, user_uuid "; + $sql .= ") "; + $sql .= "SELECT r.domain_uuid, m.meeting_user_uuid as conference_room_user_uuid, r.conference_room_uuid, m.user_uuid "; + $sql .= "FROM v_conference_rooms as r, v_meeting_users as m "; + $sql .= "WHERE r.meeting_uuid = m.meeting_uuid; "; + $database = new database; + $database->execute($sql); + unset($sql); + } + +} + +?>