app/models/bigbluebutton_server.rb in bigbluebutton_rails-1.3.0 vs app/models/bigbluebutton_server.rb in bigbluebutton_rails-1.4.0.beta1
- old
+ new
@@ -1,8 +1,10 @@
require 'bigbluebutton_api'
class BigbluebuttonServer < ActiveRecord::Base
+ include ActiveModel::ForbiddenAttributesProtection
+
has_many :rooms,
:class_name => 'BigbluebuttonRoom',
:foreign_key => 'server_id',
:dependent => :nullify
@@ -36,12 +38,10 @@
validates :version,
:presence => true,
:inclusion => { :in => ['0.7', '0.8'] }
- attr_accessible :name, :url, :version, :salt, :param
-
# Array of <tt>BigbluebuttonMeeting</tt>
attr_reader :meetings
after_initialize :init
before_validation :set_param
@@ -67,18 +67,20 @@
# updates the information in the rooms that are currently in BBB
@meetings = []
response[:meetings].each do |attr|
room = BigbluebuttonRoom.find_by_server_id_and_meetingid(self.id, attr[:meetingID])
+ # TODO: there might be more attributes returned by the API, review them all
if room.nil?
room = BigbluebuttonRoom.new(:server => self, :meetingid => attr[:meetingID],
:name => attr[:meetingID], :attendee_password => attr[:attendeePW],
:moderator_password => attr[:moderatorPW], :external => true, :private => true)
else
room.update_attributes(:attendee_password => attr[:attendeePW],
:moderator_password => attr[:moderatorPW])
end
room.running = attr[:running]
+ room.update_current_meeting
@meetings << room
end
end