Create view for splash page from existing routes

This commit is contained in:
Gopesh Tulsyan 2014-05-19 21:21:06 +05:30
parent e11ad83b32
commit 7a5f47257a
8 changed files with 39 additions and 1 deletions

View file

@ -0,0 +1,5 @@
class ConferenceController < ApplicationController
def show
@conference = Conference.find_by_short_title(params[:id])
end
end

View file

@ -0,0 +1,3 @@
= content_for :splash_logo do
= link_to @conference.title, "#", :class => 'navbar-brand'
= render :partial => "home/conference_details", :locals => {:conference => @conference}

View file

@ -20,6 +20,8 @@
= simple_format(conference.venue.description, class: 'lead')
.col-md-2
.btn-group-vertical
- if !@conference || @conference != conference
= link_to "View Conference", conference_path(conference.short_title), :class =>"btn btn-default"
- if conference.registration_open?
- if conference.user_registered?(current_user)
= link_to "Modify Registration", register_conference_path(conference.short_title), :class =>"btn btn-default"

View file

@ -7,8 +7,10 @@
%span.icon-bar
%span.icon-bar
%span.icon-bar
= yield(:splash_logo)
= link_to CONFIG['name'], root_path, :class => 'navbar-brand', :title => "Open Source Event Manager"
.collapse.navbar-collapse
= yield(:splash_header)
- if @conference && !@conference.short_title.nil?
%p.navbar-text
= @conference.short_title

View file

@ -1,5 +1,7 @@
Osem::Application.routes.draw do
get 'conference/show'
devise_for :users, :controllers => { :registrations => :registrations }, :path => 'accounts'
namespace :admin do
@ -66,7 +68,7 @@ Osem::Application.routes.draw do
end
end
resources :conference, :only => [] do
resources :conference, only: [:show] do
resources :proposal do
resources :event_attachment, :controller => "event_attachments"
patch "/confirm" => "proposal#confirm"

View file

@ -0,0 +1,12 @@
require 'spec_helper'
describe ConferenceController do
describe "GET 'show'" do
it "returns http success" do
get :show, id: 'sample'
expect(response).to be_success
end
end
end

View file

@ -44,6 +44,8 @@ RSpec.configure do |config|
# Enables devise sign_in function
config.include Devise::TestHelpers, type: :controller
config.include Devise::TestHelpers, type: :view
# Use capybara-webkit as default javascript driver
Capybara.javascript_driver = :webkit

View file

@ -0,0 +1,10 @@
require 'spec_helper'
describe "conference/show.html.haml" do
it 'renders conference details' do
@conference = create(:conference)
assign :conference, @conference
render
expect(render).to include("#{@conference.title}")
end
end