Skip to content

Commit

Permalink
Rename BigbluebuttonServer#salt to #secret
Browse files Browse the repository at this point in the history
  • Loading branch information
daronco committed Jun 14, 2016
1 parent 2683a6a commit 217f7e0
Show file tree
Hide file tree
Showing 22 changed files with 59 additions and 56 deletions.
2 changes: 1 addition & 1 deletion app/controllers/bigbluebutton/servers_controller.rb
Expand Up @@ -197,7 +197,7 @@ def server_params
end

def server_allowed_params
[ :name, :url, :salt, :param ]
[ :name, :url, :secret, :param ]
end

end
2 changes: 1 addition & 1 deletion app/models/bigbluebutton_room.rb
Expand Up @@ -343,7 +343,7 @@ def create_meeting_record(metadata=nil)
:room => self,
:server => self.server,
:server_url => self.server.url,
:server_shared_secret => self.server.salt,
:server_secret => self.server.secret,
:meetingid => self.meetingid,
:name => self.name,
:recorded => self.record_meeting,
Expand Down
12 changes: 6 additions & 6 deletions app/models/bigbluebutton_server.rb
Expand Up @@ -42,7 +42,7 @@ class BigbluebuttonServer < ActiveRecord::Base
:format => { :with => /\A[a-zA-Z\d_]+[a-zA-Z\d_-]*[a-zA-Z\d_]+\z/,
:message => I18n.t('bigbluebutton_rails.servers.errors.param_format') }

validates :salt,
validates :secret,
:presence => true,
:length => { :minimum => 1, :maximum => 500 }

Expand Down Expand Up @@ -75,7 +75,7 @@ def api

version = self.version
version = set_api_version_from_server if version.blank?
@api = BigBlueButton::BigBlueButtonApi.new(self.url, self.salt, version.to_s, false)
@api = BigBlueButton::BigBlueButtonApi.new(self.url, self.secret, version.to_s, false)
end

# Fetches the meetings currently created in the server (running or not).
Expand Down Expand Up @@ -156,7 +156,7 @@ def to_param
def set_api_version_from_server
begin
# creating the object with version=nil makes the gem fetch the version from the server
api = BigBlueButton::BigBlueButtonApi.new(self.url, self.salt, nil, false)
api = BigBlueButton::BigBlueButtonApi.new(self.url, self.secret, nil, false)
self.version = api.version
rescue BigBlueButton::BigBlueButtonException
# we just ignore errors in case the server is not responding
Expand Down Expand Up @@ -187,16 +187,16 @@ def create_config

# Checks if we have to update the server version or not and do it if needed.
# If the user only changes the version, we assume he's trying to force an API version.
# If the user changes url/salt and the version, we also assume that he wants
# If the user changes url/secret and the version, we also assume that he wants
# to force the API version
def check_for_version_update
if [:url, :salt, :version].any? { |k| self.changes.key?(k) }
if [:url, :secret, :version].any? { |k| self.changes.key?(k) }
self.set_api_version_from_server
end
end

def check_for_config_update
if [:url, :salt, :version].any?{ |k| self.changes.key?(k) }
if [:url, :secret, :version].any?{ |k| self.changes.key?(k) }
self.update_config
end
end
Expand Down
4 changes: 2 additions & 2 deletions app/views/bigbluebutton/servers/_form.html.erb
Expand Up @@ -23,8 +23,8 @@
<%= f.text_field :url %>
</div>
<div class="field">
<%= f.label :salt %><br />
<%= f.text_field :salt %>
<%= f.label :secret %><br />
<%= f.text_field :secret %>
</div>
<div class="field">
<%= f.label :version %><br />
Expand Down
2 changes: 1 addition & 1 deletion app/views/bigbluebutton/servers/index.html.erb
Expand Up @@ -12,7 +12,7 @@
<div><label><%= BigbluebuttonServer.human_attribute_name(:id) %></label> <%= server.id %></div>
<div><label><%= BigbluebuttonServer.human_attribute_name(:name) %></label> <%= server.name %></div>
<div><label><%= BigbluebuttonServer.human_attribute_name(:url) %></label> <%= server.url %></div>
<div><label><%= BigbluebuttonServer.human_attribute_name(:salt) %></label> <%= server.salt %></div>
<div><label><%= BigbluebuttonServer.human_attribute_name(:secret) %></label> <%= server.secret %></div>
<div><label><%= BigbluebuttonServer.human_attribute_name(:version) %></label> <%= server.version %></div>
<div><label><%= BigbluebuttonServer.human_attribute_name(:param) %></label> <%= server.param %></div>
<div><label>Access</label>
Expand Down
4 changes: 2 additions & 2 deletions app/views/bigbluebutton/servers/show.html.erb
Expand Up @@ -45,8 +45,8 @@
</p>

<p>
<b><%= BigbluebuttonServer.human_attribute_name(:salt) %>:</b>
<%= @server.salt %>
<b><%= BigbluebuttonServer.human_attribute_name(:secret) %>:</b>
<%= @server.secret %>
</p>

<p>
Expand Down
2 changes: 1 addition & 1 deletion config/locales/en.yml
Expand Up @@ -56,7 +56,7 @@ en:
bigbluebutton_server:
name: Name
param: "String ID"
salt: "Security Salt"
secret: "Shared Secret"
url: URL
version: Version
bigbluebutton_server_config:
Expand Down
2 changes: 1 addition & 1 deletion config/locales/pt-br.yml
Expand Up @@ -56,7 +56,7 @@ pt-br:
bigbluebutton_server:
name: Nome
param: Identificador
salt: "Chave de segurança"
secret: "Chave de segurança"
url: URL
version: Versão
bigbluebutton_server_config:
Expand Down
4 changes: 2 additions & 2 deletions lib/generators/bigbluebutton_rails/templates/migration.rb
Expand Up @@ -4,7 +4,7 @@ def self.up
create_table :bigbluebutton_servers do |t|
t.string :name
t.string :url
t.string :salt
t.string :secret
t.string :version
t.string :param
t.timestamps
Expand Down Expand Up @@ -94,7 +94,7 @@ def self.up
create_table :bigbluebutton_meetings do |t|
t.integer :server_id
t.string :server_url
t.string :server_shared_secret
t.string :server_secret
t.integer :room_id
t.string :meetingid
t.string :name
Expand Down
@@ -1,19 +1,21 @@
class BigbluebuttonRailsTo210 < ActiveRecord::Migration
def self.up
add_column :bigbluebutton_meetings, :server_url, :string
add_column :bigbluebutton_meetings, :server_shared_secret, :string
add_column :bigbluebutton_meetings, :server_secret, :string
add_column :bigbluebutton_meetings, :create_time, :decimal, precision: 14, scale: 0
add_column :bigbluebutton_meetings, :ended, :boolean, :default => false
remove_index :bigbluebutton_meetings, [:meetingid, :start_time]
add_index :bigbluebutton_meetings, [:meetingid, :create_time], :unique => true
rename_column :bigbluebutton_servers, :salt, :secret
end

def self.down
remove_column :bigbluebutton_meetings, :server_url
remove_column :bigbluebutton_meetings, :server_shared_secret
remove_column :bigbluebutton_meetings, :server_secret
remove_column :bigbluebutton_meetings, :create_time
remove_column :bigbluebutton_meetings, :ended
remove_index :bigbluebutton_meetings, [:meetingid, :create_time]
add_index :bigbluebutton_meetings, [:meetingid, :start_time], :unique => true
rename_column :bigbluebutton_servers, :secret, :salt
end
end
4 changes: 2 additions & 2 deletions spec/controllers/bigbluebutton/servers_controller_spec.rb
Expand Up @@ -88,7 +88,7 @@
let(:attrs) { FactoryGirl.attributes_for(:bigbluebutton_server) }
let(:params) { { :bigbluebutton_server => attrs } }
let(:allowed_params) {
[ :name, :url, :salt, :param ]
[ :name, :url, :secret, :param ]
}

it {
Expand Down Expand Up @@ -179,7 +179,7 @@
let(:attrs) { FactoryGirl.attributes_for(:bigbluebutton_server) }
let(:params) { { :bigbluebutton_server => attrs } }
let(:allowed_params) {
[ :name, :url, :salt, :param ]
[ :name, :url, :secret, :param ]
}

it {
Expand Down
2 changes: 1 addition & 1 deletion spec/factories/bigbluebutton_server.rb
Expand Up @@ -2,7 +2,7 @@
factory :bigbluebutton_server do |s|
s.sequence(:name) { |n| "Server #{n}" }
s.sequence(:url) { |n| "http://bigbluebutton#{n}.test.com/bigbluebutton/api" }
s.salt { Forgery(:basic).password :at_least => 30, :at_most => 40 }
s.secret { Forgery(:basic).password :at_least => 30, :at_most => 40 }
s.version '0.9'
s.sequence(:param) { |n| "server-#{n}" }
end
Expand Down
2 changes: 1 addition & 1 deletion spec/models/bigbluebutton_meeting_db_spec.rb
Expand Up @@ -17,7 +17,7 @@
it { should have_db_index([:meetingid, :create_time]).unique(true) }
it { should have_db_column(:ended).of_type(:boolean) }
it { should have_db_column(:server_url).of_type(:string) }
it { should have_db_column(:server_shared_secret).of_type(:string) }
it { should have_db_column(:server_secret).of_type(:string) }
it "default values" do
room = BigbluebuttonMeeting.new
room.running.should be(false)
Expand Down
4 changes: 2 additions & 2 deletions spec/models/bigbluebutton_room_spec.rb
Expand Up @@ -583,7 +583,7 @@
it { subject.room.should eql(room) }
it { subject.server_id.should eql(room.server.id) }
it { subject.server_url.should eql(room.server.url) }
it { subject.server_shared_secret.should eql(room.server.salt) }
it { subject.server_secret.should eql(room.server.secret) }
it { subject.meetingid.should eql(room.meetingid) }
it { subject.name.should eql(room.name) }
it { subject.recorded.should eql(room.record_meeting) }
Expand Down Expand Up @@ -1324,7 +1324,7 @@
subject { BigbluebuttonMeeting.last }
it("sets server") { subject.server.should eq(room.server) }
it("sets server_url") { subject.server_url.should eq(room.server.url) }
it("sets server_shared_secret") { subject.server_shared_secret.should eq(room.server.salt) }
it("sets server_secret") { subject.server_secret.should eq(room.server.secret) }
it("sets room") { subject.room.should eq(room) }
it("sets meetingid") { subject.meetingid.should eq(room.meetingid) }
it("sets name") { subject.name.should eq(room.name) }
Expand Down
2 changes: 1 addition & 1 deletion spec/models/bigbluebutton_server_db_spec.rb
Expand Up @@ -6,7 +6,7 @@
context "db" do
it { should have_db_column(:name).of_type(:string) }
it { should have_db_column(:url).of_type(:string) }
it { should have_db_column(:salt).of_type(:string) }
it { should have_db_column(:secret).of_type(:string) }
it { should have_db_column(:version).of_type(:string) }
it { should have_db_column(:param).of_type(:string) }
it { should have_db_column(:created_at).of_type(:datetime) }
Expand Down
34 changes: 19 additions & 15 deletions spec/models/bigbluebutton_server_spec.rb
Expand Up @@ -19,7 +19,7 @@

it { should validate_presence_of(:name) }
it { should validate_presence_of(:url) }
it { should validate_presence_of(:salt) }
it { should validate_presence_of(:secret) }
it { should validate_presence_of(:param) }

context "uniqueness of" do
Expand Down Expand Up @@ -49,7 +49,7 @@

it { should ensure_length_of(:name).is_at_least(1).is_at_most(500) }
it { should ensure_length_of(:url).is_at_most(500) }
it { should ensure_length_of(:salt).is_at_least(1).is_at_most(500) }
it { should ensure_length_of(:secret).is_at_least(1).is_at_most(500) }
it { should ensure_length_of(:param).is_at_least(3) }

context ".to_param" do
Expand Down Expand Up @@ -118,17 +118,21 @@
it { server.api.should_not be_nil }

context "with the correct attributes" do
let(:api) { BigBlueButton::BigBlueButtonApi.new(server.url, server.salt, server.version, false) }
let(:api) { BigBlueButton::BigBlueButtonApi.new(server.url, server.secret, server.version, false) }
it { server.api.should == api }

# updating any of these attributes should update the api
{ :url => 'http://anotherurl.com/bigbluebutton/api',
:salt => '12345-abcde-67890-fghijk', :version => '0.9' }.each do |k,v|
it {
server.send("#{k}=", v)
server.api.send(k).should == v
}
end
it {
server.url = 'http://anotherurl.com/bigbluebutton/api'
server.api.url.should eql('http://anotherurl.com/bigbluebutton/api')
}
it {
server.secret = '12345-abcde-67890-fghijk'
server.api.salt.should eql('12345-abcde-67890-fghijk')
}
it {
server.version = '0.9'
server.api.version.should eql('0.9')
}
end

context "returns the cached API object, if any" do
Expand Down Expand Up @@ -339,9 +343,9 @@
it { server.update_attributes(url: server.url + "-2") }
end

context "if #salt changed" do
context "if #secret changed" do
before { server.should_receive(:update_config).once }
it { server.update_attributes(salt: server.salt + "-2") }
it { server.update_attributes(secret: server.secret + "-2") }
end

context "if #version changed" do
Expand Down Expand Up @@ -374,9 +378,9 @@
it { server.update_attributes(url: server.url + "-2") }
end

context "if #salt changed" do
context "if #secret changed" do
before { server.should_receive(:set_api_version_from_server).once }
it { server.update_attributes(salt: server.salt + "-2") }
it { server.update_attributes(secret: server.secret + "-2") }
end

context "if #version changed" do
Expand Down
6 changes: 2 additions & 4 deletions spec/rails_app/features/config.yml.example
Expand Up @@ -3,10 +3,8 @@ timeout_bot_start: 60

servers:
bbb-dev-07:
salt: 'your-salt'
secret: 'your-secret'
url: 'http://your-server/bigbluebutton/api'
version: '0.9'
test-install-09:
salt: '8cd8ef52e8e101574e400365b55e11a6'
secret: '8cd8ef52e8e101574e400365b55e11a6'
url: 'http://test-install.blindsidenetworks.com/bigbluebutton/api'
version: '0.9'
Expand Up @@ -2,7 +2,7 @@
attrs = FactoryGirl.attributes_for(:bigbluebutton_server_integration)
fill_in("bigbluebutton_server[name]", :with => attrs[:name])
fill_in("bigbluebutton_server[url]", :with => attrs[:url])
fill_in("bigbluebutton_server[salt]", :with => attrs[:salt])
fill_in("bigbluebutton_server[secret]", :with => attrs[:secret])
fill_in("bigbluebutton_server[version]", :with => attrs[:version])
fill_in("bigbluebutton_server[param]", :with => attrs[:param])
click_button("Create")
Expand All @@ -12,7 +12,7 @@
attrs = FactoryGirl.attributes_for(:bigbluebutton_server_integration)
fill_in("bigbluebutton_server[name]", :with => attrs[:name])
fill_in("bigbluebutton_server[url]", :with => "invalid url")
fill_in("bigbluebutton_server[salt]", :with => attrs[:salt])
fill_in("bigbluebutton_server[secret]", :with => attrs[:secret])
fill_in("bigbluebutton_server[version]", :with => attrs[:version])
fill_in("bigbluebutton_server[param]", :with => attrs[:param])
click_button("Create")
Expand Down
Expand Up @@ -9,7 +9,6 @@
# check params that are specific for this server
doesnt_have_content(@server.name)
doesnt_have_content(@server.url)
doesnt_have_content(@server.salt)
doesnt_have_content(@server.secret)
doesnt_have_content(@server.param)
end

@@ -1,7 +1,7 @@
FactoryGirl.define do
factory :bigbluebutton_server_integration, :parent => :bigbluebutton_server do |s|
s.url { FeaturesConfig.server["url"] }
s.salt { FeaturesConfig.server["salt"] }
s.secret { FeaturesConfig.server["secret"] }
s.version { FeaturesConfig.server["version"] }
end
end
10 changes: 5 additions & 5 deletions spec/rails_app/features/support/templates.rb
Expand Up @@ -33,15 +33,15 @@ def check_server_form
{ :name => 'bigbluebutton_server[name]', :type => 'text' })
has_element("input#bigbluebutton_server_url",
{ :name => 'bigbluebutton_server[url]', :type => 'text' })
has_element("input#bigbluebutton_server_salt",
{ :name => 'bigbluebutton_server[salt]', :type => 'text' })
has_element("input#bigbluebutton_server_secret",
{ :name => 'bigbluebutton_server[secret]', :type => 'text' })
has_element("input#bigbluebutton_server_version",
{ :name => 'bigbluebutton_server[version]', :type => 'text' })
has_element("input#bigbluebutton_server_param",
{ :name => 'bigbluebutton_server[param]', :type => 'text' })
has_element("label", { :for => 'bigbluebutton_server_name' })
has_element("label", { :for => 'bigbluebutton_server_url' })
has_element("label", { :for => 'bigbluebutton_server_salt' })
has_element("label", { :for => 'bigbluebutton_server_secret' })
has_element("label", { :for => 'bigbluebutton_server_version' })
has_element("label", { :for => 'bigbluebutton_server_param' })
has_element("input", { :name => 'commit', :type => 'submit' })
Expand All @@ -53,7 +53,7 @@ def check_show_server(options)

page_has_content(server.name)
page_has_content(server.url)
page_has_content(server.salt)
page_has_content(server.secret)
page_has_content(server.version)
page_has_content(server.param)
has_element("a", { :href => edit_bigbluebutton_server_path(server) }) # edit
Expand All @@ -74,7 +74,7 @@ def check_servers_index(options)
# server data
has_content(server.name)
has_content(server.url)
has_content(server.salt)
has_content(server.secret)
has_content(server.version)
has_content(server.param)
has_content(server.url)
Expand Down
2 changes: 1 addition & 1 deletion spec/rails_app/lib/tasks/db/populate.rake
Expand Up @@ -27,7 +27,7 @@ namespace :db do
params = {
:name => "Server #{n1}",
:url => "http://bigbluebutton#{n1}.test.com/bigbluebutton/api",
:salt => Forgery(:basic).password(:at_least => 30, :at_most => 40),
:secret => Forgery(:basic).password(:at_least => 30, :at_most => 40),
:version => '0.9',
:param => "server-#{n1}"
}
Expand Down

0 comments on commit 217f7e0

Please sign in to comment.