forked from External/greenlight
Fixed room remove task (#1695)
This commit is contained in:
parent
fe363e742b
commit
8444b2c333
|
@ -5,10 +5,19 @@ require 'bigbluebutton_api'
|
||||||
namespace :room do
|
namespace :room do
|
||||||
desc "Removes all rooms for users that can't create rooms"
|
desc "Removes all rooms for users that can't create rooms"
|
||||||
task :remove, [:include_used] => :environment do |_task, args|
|
task :remove, [:include_used] => :environment do |_task, args|
|
||||||
roles = Role.where(role_permissions: { name: "can_create_rooms", value: "false" }).pluck(:name)
|
roles = Role.where(role_permissions: { name: "can_create_rooms", value: "false" }).pluck(:name, :priority)
|
||||||
users = User.with_role(roles)
|
other_roles = Role.where(role_permissions: { name: "can_create_rooms", value: "", enabled: "false" }).pluck(:name, :priority)
|
||||||
|
|
||||||
|
roles_without_rooms = roles + other_roles
|
||||||
|
roles_arr = []
|
||||||
|
|
||||||
|
roles_without_rooms.each do |role|
|
||||||
|
roles_arr << role[0]
|
||||||
|
end
|
||||||
|
|
||||||
|
users = User.with_role(roles_arr)
|
||||||
users.each do |user|
|
users.each do |user|
|
||||||
puts "Destroying #{user.uid} rooms"
|
puts "Destroying #{user.uid} rooms - role: #{user.role.name}"
|
||||||
user.rooms.each do |room|
|
user.rooms.each do |room|
|
||||||
if room.sessions.positive? && args[:include_used] != "true"
|
if room.sessions.positive? && args[:include_used] != "true"
|
||||||
puts "Skipping room #{room.uid}"
|
puts "Skipping room #{room.uid}"
|
||||||
|
|
Loading…
Reference in New Issue