forked from External/greenlight
		
	@@ -15,6 +15,23 @@
 | 
			
		||||
        }
 | 
			
		||||
      });
 | 
			
		||||
    });
 | 
			
		||||
    $('#url_form_button').click (function (event) {
 | 
			
		||||
      $.ajax({
 | 
			
		||||
        url : $(this).data ('url'),
 | 
			
		||||
        dataType : "json",
 | 
			
		||||
        async : true,
 | 
			
		||||
        type : 'GET',
 | 
			
		||||
        success : function(data) {
 | 
			
		||||
          $('#meeting_url').html(data.response.meeting_url);
 | 
			
		||||
          $('#text_meeting_url a').href(data.response.meeting_url);
 | 
			
		||||
          $('#text_meeting_url span').html(data.response.meeting_url);
 | 
			
		||||
        },
 | 
			
		||||
        error : function(xhr, status, error) {
 | 
			
		||||
        },
 | 
			
		||||
        complete : function(xhr, status) {
 | 
			
		||||
        }
 | 
			
		||||
      });
 | 
			
		||||
    });
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  $(document).on("turbolinks:load", function() {
 | 
			
		||||
 
 | 
			
		||||
@@ -20,9 +20,6 @@ class BbbController < ApplicationController
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def close
 | 
			
		||||
  end
 | 
			
		||||
  
 | 
			
		||||
  private
 | 
			
		||||
  def render_response(messageKey, message, status, response={})
 | 
			
		||||
    respond_to do |format|
 | 
			
		||||
 
 | 
			
		||||
@@ -2,8 +2,18 @@ class LandingController < ApplicationController
 | 
			
		||||
  include LandingHelper
 | 
			
		||||
 | 
			
		||||
  def index
 | 
			
		||||
    @meeting_token = params[:id] || @meeting_token = rand.to_s[2..10]
 | 
			
		||||
    @meeting_url = meeting_url(@meeting_token)
 | 
			
		||||
    @refreshable = (params[:resource] == 'meeting' && !params.has_key?(:id))
 | 
			
		||||
    @meeting_token = params[:id] || @meeting_token = new_meeting_token
 | 
			
		||||
    @meeting_url = landing_url(@meeting_token)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  # GET /token.json
 | 
			
		||||
  def new_meeting
 | 
			
		||||
    respond_to do |format|
 | 
			
		||||
      meeting_url = landing_url(new_meeting_token)
 | 
			
		||||
      logger.info meeting_url
 | 
			
		||||
      format.json { render :json => { :messageKey => "ok", :message => "New meeting URL created", :status => :ok, :response => { :meeting_url => meeting_url} }, :status => status }
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def room
 | 
			
		||||
 
 | 
			
		||||
@@ -1,9 +1,5 @@
 | 
			
		||||
module LandingHelper
 | 
			
		||||
  def meeting_url(meeting_token)
 | 
			
		||||
    _meeting_url = "#{request.original_url}"
 | 
			
		||||
    _meeting_url += "meeting" if ( request.original_url == "#{request.base_url}/" )
 | 
			
		||||
    _meeting_url += "/" unless _meeting_url.end_with?('/')
 | 
			
		||||
    _meeting_url += "#{meeting_token}" if !params.has_key?(:id)
 | 
			
		||||
    _meeting_url.gsub(/\/+$/, '')
 | 
			
		||||
  def new_meeting_token
 | 
			
		||||
    rand.to_s[2..10]
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
@@ -6,11 +6,20 @@
 | 
			
		||||
    <div class="container">
 | 
			
		||||
      <div class="jumbotron">
 | 
			
		||||
        <!-- Meeting URL -->
 | 
			
		||||
        <% if @refreshable %>
 | 
			
		||||
        <h4 class="display-3">
 | 
			
		||||
          <div id="landing_page_url" class="center-block">
 | 
			
		||||
            <span id="meeting_url"><%= @meeting_url %></span>
 | 
			
		||||
            <form id="url_form" class="form-inline">
 | 
			
		||||
              <div class="form-group">
 | 
			
		||||
                <span id="meeting_url"><%= @meeting_url %></span>
 | 
			
		||||
              </div>
 | 
			
		||||
              <button id="url_form_button" type="button" class="btn btn-default" data-url="<%= new_meeting_url() %>">
 | 
			
		||||
                <span class="glyphicon glyphicon-refresh"></span>
 | 
			
		||||
              </button>
 | 
			
		||||
            </form>
 | 
			
		||||
          </div>
 | 
			
		||||
        </h4>
 | 
			
		||||
        <% end %>
 | 
			
		||||
 | 
			
		||||
        <!-- Join form -->
 | 
			
		||||
        <div id="landing_page_join">
 | 
			
		||||
@@ -27,7 +36,7 @@
 | 
			
		||||
      <figure class=highlight><pre><figcaption class="text" data-lang="text">
 | 
			
		||||
        <p>Hi Everyone</p>
 | 
			
		||||
        <p>The meeting will be at this URL</p>
 | 
			
		||||
        <p><a href="<%= @meeting_url %>"><span id="meeting_url"><%= @meeting_url %></a></p>
 | 
			
		||||
        <p><a id="text_meeting_url" href="<%= @meeting_url %>"><span id="text_meeting_url"><%= @meeting_url %></a></p>
 | 
			
		||||
        <p>Please join!</p>
 | 
			
		||||
      </figcaption></pre></figure>
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +1,12 @@
 | 
			
		||||
Rails.application.routes.draw do
 | 
			
		||||
  get 'bbb/join/:id', to: 'bbb#join', as: :bbb_join
 | 
			
		||||
 | 
			
		||||
  get 'meeting(/:id)', to: 'landing#index'
 | 
			
		||||
  get '/meeting/new', to: 'landing#new_meeting', as: :new_meeting
 | 
			
		||||
  get '/meeting(/:id)', to: 'landing#index', as: :landing, :resource => "meeting"
 | 
			
		||||
  get '/auth/:provider/callback', to: 'sessions#create'
 | 
			
		||||
  get '/logout', to: 'sessions#destroy'
 | 
			
		||||
  get '/rooms/:name', to: 'landing#room'
 | 
			
		||||
 | 
			
		||||
  root to: 'landing#index'
 | 
			
		||||
  root to: 'landing#index', :resource => "meeting"
 | 
			
		||||
  # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user