forked from External/greenlight
error pages and rec row
This commit is contained in:
parent
2b065eb7fa
commit
46bb456063
|
@ -56,12 +56,24 @@ a {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
|
||||||
.room-section {
|
.table-responsive {
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.landing-section {
|
||||||
position: relative;
|
position: relative;
|
||||||
height: 45%;
|
height: 45%;
|
||||||
background-color: $background-color;
|
background-color: $background-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.room-section {
|
||||||
|
background-color: $background-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.danger-section {
|
||||||
|
background-color: #efe6e6;
|
||||||
|
}
|
||||||
|
|
||||||
.start-block {
|
.start-block {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 3px solid lightblue;
|
border: 3px solid lightblue;
|
||||||
|
|
|
@ -90,6 +90,13 @@ class RoomsController < ApplicationController
|
||||||
redirect_to @room
|
redirect_to @room
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# PATCH /r/:room_uid/:record_id
|
||||||
|
def update_recording
|
||||||
|
bbb.publish_recordings(params[:record_id], params[:publish])
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
# DELETE /r/:room_uid/:record_id
|
# DELETE /r/:room_uid/:record_id
|
||||||
def delete_recording
|
def delete_recording
|
||||||
@room.delete_recording(params[:record_id])
|
@room.delete_recording(params[:record_id])
|
||||||
|
|
|
@ -5,6 +5,9 @@ class UsersController < ApplicationController
|
||||||
|
|
||||||
# POST /users
|
# POST /users
|
||||||
def create
|
def create
|
||||||
|
# Verify that GreenLight is configured to allow user signup.
|
||||||
|
return unless Rails.configuration.allow_user_signup
|
||||||
|
|
||||||
@user = User.new(user_params)
|
@user = User.new(user_params)
|
||||||
@user.provider = "greenlight"
|
@user.provider = "greenlight"
|
||||||
|
|
||||||
|
@ -18,7 +21,11 @@ class UsersController < ApplicationController
|
||||||
|
|
||||||
# GET /signup
|
# GET /signup
|
||||||
def new
|
def new
|
||||||
|
if Rails.configuration.allow_user_signup
|
||||||
@user = User.new
|
@user = User.new
|
||||||
|
else
|
||||||
|
redirect_to root_path
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /users/:user_uid/edit
|
# GET /users/:user_uid/edit
|
||||||
|
|
|
@ -12,4 +12,13 @@ module ApplicationHelper
|
||||||
def omniauth_login_url(provider)
|
def omniauth_login_url(provider)
|
||||||
"/auth/#{provider}"
|
"/auth/#{provider}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Determine if Greenlight is configured to allow user signups.
|
||||||
|
def allow_user_signup?
|
||||||
|
Rails.configuration.allow_user_signup
|
||||||
|
end
|
||||||
|
|
||||||
|
def bigbluebutton_endpoint_default?
|
||||||
|
Rails.configuration.bigbluebutton_endpoint_default == Rails.configuration.bigbluebutton_endpoint
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
<div class="text-center center-page">
|
<div class="page">
|
||||||
<h1 class="display-2 font-weight-400">Oh no!</h1>
|
<div class="page-content">
|
||||||
<h3>Looks like something went wrong on our end.</h3>
|
<div class="container text-center">
|
||||||
<%= link_to root_url do %>
|
<div class="display-1 text-muted mb-5">500</div>
|
||||||
<h4>Return to home page.</h4>
|
<h1 class="h2 mb-3">Oh no! Looks like something went wrong on our end.</h1>
|
||||||
<% end %>
|
<p class="h4 text-muted font-weight-normal mb-7">The error has been logged, we'll take a look!</p>
|
||||||
|
<a class="btn btn-primary" href="javascript:history.back()">
|
||||||
|
<i class="fe fe-arrow-left mr-2"></i>Go back
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
<div class="text-center center-page">
|
<div class="page">
|
||||||
<h1 class="display-2 font-weight-400">Whoops!</h1>
|
<div class="page-content">
|
||||||
<h2>Looks like we can't find that resource.</h2>
|
<div class="container text-center">
|
||||||
<h3>Is it possible its been removed?</h3>
|
<div class="display-1 text-muted mb-5">404</div>
|
||||||
<%= link_to root_url do %>
|
<h1 class="h2 mb-3">Whoops! Looks like we can't find that.</h1>
|
||||||
<h4>Return to home page.</h4>
|
<p class="h4 text-muted font-weight-normal mb-7">Is it possible its been removed?</p>
|
||||||
<% end %>
|
<a class="btn btn-primary" href="javascript:history.back()">
|
||||||
|
<i class="fe fe-arrow-left mr-2"></i>Go back
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
<div class="text-center center-page">
|
<div class="page">
|
||||||
<h1 class="display-2 font-weight-400">Oops!</h1>
|
<div class="page-content">
|
||||||
<h3>Request is unprocessable.</h3>
|
<div class="container text-center">
|
||||||
<%= link_to root_url do %>
|
<div class="display-1 text-muted mb-5">422</div>
|
||||||
<h4>Return to home page.</h4>
|
<h1 class="h2 mb-3">Oops! Request is unprocessable.</h1>
|
||||||
<% end %>
|
<p class="h4 text-muted font-weight-normal mb-7">Unforunately this isn't a valid request.</p>
|
||||||
|
<a class="btn btn-primary" href="javascript:history.back()">
|
||||||
|
<i class="fe fe-arrow-left mr-2"></i>Go back
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -27,6 +27,10 @@
|
||||||
|
|
||||||
<%= render "shared/header" %>
|
<%= render "shared/header" %>
|
||||||
|
|
||||||
|
<% if bigbluebutton_endpoint_default? %>
|
||||||
|
<%= render "shared/error_banner" %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
<%= yield %>
|
<%= yield %>
|
||||||
|
|
||||||
<!-- Modal Load -->
|
<!-- Modal Load -->
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<div class="room-section">
|
<div class="landing-section">
|
||||||
<div class="d-flex align-items-center" style="height: 100%;">
|
<div class="d-flex align-items-center" style="height: 100%;">
|
||||||
<div class="container text-center">
|
<div class="container text-center">
|
||||||
<h1 id="main-text" class="font-weight-400 resp-header">Welcome to BigBlueButton.</h1>
|
<h1 id="main-text" class="font-weight-400 resp-header">Welcome to BigBlueButton.</h1>
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row mt-7 mb-2">
|
<div class="row pt-7 pb-2">
|
||||||
<% if current_user.rooms.length > 1 %>
|
<% if current_user.rooms.length > 1 %>
|
||||||
<% current_user.rooms.each do |room| %>
|
<% current_user.rooms.each do |room| %>
|
||||||
<div class="col-lg-4 col-md-6 col-sm-12">
|
<div class="col-lg-4 col-md-6 col-sm-12">
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
<div class="pt-2 text-center text-danger danger-section pb-1">
|
||||||
|
<i class="fas fa-exclamation-triangle"></i>
|
||||||
|
<p class="d-inline"> This deployment is using a pre-configured testing server,
|
||||||
|
you should replace this with your own.
|
||||||
|
For details, see the <%= link_to "documentation", "http://docs.bigbluebutton.org/install/green-light.html#installing-greenlight", target: "_blank" %>.</p>
|
||||||
|
</div>
|
|
@ -45,7 +45,10 @@
|
||||||
</div>
|
</div>
|
||||||
<% else %>
|
<% else %>
|
||||||
<%= link_to "Login", "#loginModal", :class => "btn btn-pill btn-outline-primary mx-2", "data-toggle": "modal" %>
|
<%= link_to "Login", "#loginModal", :class => "btn btn-pill btn-outline-primary mx-2", "data-toggle": "modal" %>
|
||||||
|
|
||||||
|
<% if allow_user_signup? %>
|
||||||
<%= link_to "Signup", signup_path, :class => "btn btn-pill btn-outline-primary mx-2" %>
|
<%= link_to "Signup", signup_path, :class => "btn btn-pill btn-outline-primary mx-2" %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
<%= render "shared/modals/login_modal" %>
|
<%= render "shared/modals/login_modal" %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -26,21 +26,27 @@
|
||||||
<%= recording[:participants] %>
|
<%= recording[:participants] %>
|
||||||
</td>
|
</td>
|
||||||
<td class="text-left">
|
<td class="text-left">
|
||||||
<div class="small text-muted text-uppercase">
|
<div class="dropdown">
|
||||||
Visibility
|
<button class="btn btn-sm btn-secondary dropdown-toggle" data-toggle="dropdown"><i class="dropdown-icon fe fe-globe px-2"></i> Public</button>
|
||||||
|
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||||
|
<%= button_to update_recording_path(@room, record_id: recording[:recordID]), method: :patch, class: "dropdown-item" do %>
|
||||||
|
<i class="dropdown-icon fe fe-globe"></i> Public
|
||||||
|
<% end %>
|
||||||
|
<%= button_to update_recording_path(@room, record_id: recording[:recordID]), method: :patch, class: "dropdown-item" do %>
|
||||||
|
<i class="dropdown-icon fe fe-link"></i> Unlisted
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<%= recording[:state].capitalize %>
|
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<% recording[:playbacks].each do |p| %>
|
<% recording[:playbacks].each do |p| %>
|
||||||
<%= link_to p[:type].capitalize, p[:url], class: "btn btn-secondary", target: "_blank" %>
|
<%= link_to p[:type].capitalize, p[:url], class: "btn btn-sm btn-primary", target: "_blank" %>
|
||||||
<% end %>
|
<% end %>
|
||||||
</td>
|
</td>
|
||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
<div class="item-action dropdown">
|
<div class="item-action dropdown">
|
||||||
<a href="javascript:void(0)" data-toggle="dropdown" class="icon"><i class="fe fe-more-vertical"></i></a>
|
<a href="javascript:void(0)" data-toggle="dropdown" class="icon"><i class="fe fe-more-vertical"></i></a>
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
<div class="dropdown-menu dropdown-menu-right" x-placement="bottom-end" style="position: absolute; transform: translate3d(-181px, -156px, 0px); top: 0px; left: 0px; will-change: transform;">
|
||||||
<a href="javascript:void(0)" class="dropdown-item"><i class="dropdown-icon far fa-eye"></i> Change Visibility</a>
|
|
||||||
<a href="javascript:void(0)" class="dropdown-item"><i class="dropdown-icon far fa-envelope"></i> Email Recording</a>
|
<a href="javascript:void(0)" class="dropdown-item"><i class="dropdown-icon far fa-envelope"></i> Email Recording</a>
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<%= button_to delete_recording_path(@room, record_id: recording[:recordID]), method: :delete, class: "dropdown-item" do %>
|
<%= button_to delete_recording_path(@room, record_id: recording[:recordID]), method: :delete, class: "dropdown-item" do %>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<div class="row">
|
<div class="row mt-2">
|
||||||
<div class="col-9">
|
<div class="col-9">
|
||||||
<p class="subtitle"><%= subtitle %></p>
|
<p class="subtitle"><%= subtitle %></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -3,11 +3,10 @@
|
||||||
<div class="modal-content text-center">
|
<div class="modal-content text-center">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<div class="card-body p-6">
|
<div class="card-body p-6">
|
||||||
<div class="card-title text-primary">
|
<div class="card-title">
|
||||||
<h3>Login</h3>
|
<h3>Login</h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<hr class="small-rule">
|
|
||||||
<% configured_providers.each do |provider| %>
|
<% configured_providers.each do |provider| %>
|
||||||
<%= link_to omniauth_login_url(provider), class: "btn btn-pill btn-#{provider} btn-block" do %>
|
<%= link_to omniauth_login_url(provider), class: "btn btn-pill btn-#{provider} btn-block" do %>
|
||||||
<i class="fab fa-<%= provider %>"></i> <%= "Login with #{provider.capitalize}" %>
|
<i class="fab fa-<%= provider %>"></i> <%= "Login with #{provider.capitalize}" %>
|
||||||
|
@ -15,6 +14,7 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
<%= form_for(:session, url: create_session_path) do |f| %>
|
<%= form_for(:session, url: create_session_path) do |f| %>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="input-icon">
|
<div class="input-icon">
|
||||||
|
|
|
@ -12,6 +12,7 @@ module Greenlight20
|
||||||
# Application configuration should go into files in config/initializers
|
# Application configuration should go into files in config/initializers
|
||||||
# -- all .rb files in that directory are automatically loaded.
|
# -- all .rb files in that directory are automatically loaded.
|
||||||
|
|
||||||
|
# Use custom error routes.
|
||||||
config.exceptions_app = self.routes
|
config.exceptions_app = self.routes
|
||||||
|
|
||||||
config.loadbalanced_configuration = (ENV["USE_LOADBALANCED_CONFIGURATION"] == "true")
|
config.loadbalanced_configuration = (ENV["USE_LOADBALANCED_CONFIGURATION"] == "true")
|
||||||
|
@ -19,13 +20,21 @@ module Greenlight20
|
||||||
# Setup BigBlueButton configuration.
|
# Setup BigBlueButton configuration.
|
||||||
unless config.loadbalanced_configuration
|
unless config.loadbalanced_configuration
|
||||||
# Default credentials (test-install.blindsidenetworks.com/bigbluebutton).
|
# Default credentials (test-install.blindsidenetworks.com/bigbluebutton).
|
||||||
config.bigbluebutton_endpoint_default = "http://test-install.blindsidenetworks.com/bigbluebutton/"
|
config.bigbluebutton_endpoint_default = "http://test-install.blindsidenetworks.com/bigbluebutton/api/"
|
||||||
config.bigbluebutton_secret_default = "8cd8ef52e8e101574e400365b55e11a6"
|
config.bigbluebutton_secret_default = "8cd8ef52e8e101574e400365b55e11a6"
|
||||||
|
|
||||||
# Use standalone BigBlueButton server.
|
# Use standalone BigBlueButton server.
|
||||||
config.bigbluebutton_endpoint = ENV["BIGBLUEBUTTON_ENDPOINT"] || config.bigbluebutton_endpoint_default
|
config.bigbluebutton_endpoint = ENV["BIGBLUEBUTTON_ENDPOINT"]
|
||||||
|
config.bigbluebutton_secret = ENV["BIGBLUEBUTTON_SECRET"]
|
||||||
|
|
||||||
|
# Fallback to testing credentails.
|
||||||
|
if config.bigbluebutton_endpoint.blank?
|
||||||
|
config.bigbluebutton_endpoint = config.bigbluebutton_endpoint_default
|
||||||
|
config.bigbluebutton_secret = config.bigbluebutton_secret_default
|
||||||
|
end
|
||||||
|
|
||||||
|
# Fix endpoint format if required.
|
||||||
config.bigbluebutton_endpoint += "api/" unless config.bigbluebutton_endpoint.ends_with?('api/')
|
config.bigbluebutton_endpoint += "api/" unless config.bigbluebutton_endpoint.ends_with?('api/')
|
||||||
config.bigbluebutton_secret = ENV["BIGBLUEBUTTON_SECRET"] || config.bigbluebutton_secret_default
|
|
||||||
else
|
else
|
||||||
# Fetch credentials from a loadbalancer based on provider.
|
# Fetch credentials from a loadbalancer based on provider.
|
||||||
config.loadbalancer_endpoint = ENV["LOADBALANCER_ENDPOINT"]
|
config.loadbalancer_endpoint = ENV["LOADBALANCER_ENDPOINT"]
|
||||||
|
@ -33,6 +42,6 @@ module Greenlight20
|
||||||
end
|
end
|
||||||
|
|
||||||
# Determine if GreenLight should allow non-omniauth signup/login.
|
# Determine if GreenLight should allow non-omniauth signup/login.
|
||||||
config.greenlight_accounts = (ENV['ALLOW_GREENLIGHT_ACCOUNTS'] == "true")
|
config.allow_user_signup = (ENV['ALLOW_GREENLIGHT_ACCOUNTS'] == "true")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue