diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 06835456..09aa0fe1 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -3,7 +3,6 @@ require 'digest/sha1' class ApplicationController < ActionController::Base protect_from_forgery with: :exception - include ApplicationHelper def current_user @current_user ||= User.find_by(id: session[:user_id]) diff --git a/app/controllers/landing_controller.rb b/app/controllers/landing_controller.rb index 3c5bacd5..217ce1f6 100644 --- a/app/controllers/landing_controller.rb +++ b/app/controllers/landing_controller.rb @@ -1,33 +1,51 @@ class LandingController < ApplicationController - def meeting - @refreshable = (params[:resource] == 'meetings' && !params.has_key?(:id)) - @meeting_token = params[:id] || @meeting_token = helpers.new_meeting_token - @resource = params[:resource] - @resource_url = meeting_url(@meeting_token) + def index + if params[:resource] == 'meetings' + render_meeting + elsif params[:resource] == 'rooms' + render_room + else + render 'errors/error' + end end # GET /token.json def new_meeting respond_to do |format| - meeting_url = meeting_url(helpers.new_meeting_token) + meeting_url = resource_url('meetings', helpers.new_meeting_token) format.json { render :json => { :messageKey => "ok", :message => "New meeting URL created", :status => :ok, :response => { :meeting_url => meeting_url} }, :status => status } end end + def meeting + render_meeting + end + def room - @room_name = params[:name] - @user = User.find_by(username: @room_name) - @meeting_token = @room_name - @resource = "rooms" - @resource_url = room_url(@meeting_token) - if @user.nil? - redirect_to root_path - end + render_room end def admin? @user == current_user end helper_method :admin? + private + def render_meeting + @resource = params[:resource] + @meeting_token = params[:id] || @meeting_token = helpers.new_meeting_token + @refreshable = (params[:resource] == 'meetings' && !params.has_key?(:id)) + render :action => 'meeting' + end + + def render_room + @resource = params[:resource] + @meeting_token = params[:id] + @user = User.find_by(username: @meeting_token) + if @user.nil? + redirect_to root_path + end + render :action => 'room' + end + end diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb index 44266ed2..0b79b493 100644 --- a/app/controllers/sessions_controller.rb +++ b/app/controllers/sessions_controller.rb @@ -3,7 +3,7 @@ class SessionsController < ApplicationController @user = User.from_omniauth(request.env['omniauth.auth']) if @user.persisted? session[:user_id] = @user.id - redirect_to controller: 'landing', action: 'room', name: @user.username + redirect_to controller: 'landing', action: 'room', id: @user.username else @user.save! session[:user_id] = @user.id diff --git a/app/views/landing/_footer_message.html.erb b/app/views/landing/_footer_message.html.erb index 40f7b7f2..ed818a1e 100644 --- a/app/views/landing/_footer_message.html.erb +++ b/app/views/landing/_footer_message.html.erb @@ -1,3 +1,3 @@
diff --git a/app/views/landing/_footer_oauth_append.html.erb b/app/views/landing/_footer_oauth_append.html.erb index 8aa4a36f..2c3f58c7 100644 --- a/app/views/landing/_footer_oauth_append.html.erb +++ b/app/views/landing/_footer_oauth_append.html.erb @@ -10,10 +10,6 @@ <% end %> - <% else %> -