diff --git a/app/views/conference/_location.html.haml b/app/views/conference/_location.html.haml index 69d1e31f..ed5a7dfe 100644 --- a/app/views/conference/_location.html.haml +++ b/app/views/conference/_location.html.haml @@ -25,11 +25,12 @@ = link_to 'Visit Venue Website', @conference.venue.website, target: '_blank' -:javascript - $(document).ready(function(){ - var photo = "#{@conference.venue.photo}"; - if(photo) - { - $('#location').css('background-image', 'url('+photo+')'); - } - }); +- unless @conference.venue.photo.blank? + :javascript + $(document).ready(function(){ + var photo = "#{@conference.venue.photo}"; + if(photo) + { + $('#location').css('background-image', 'url('+photo+')'); + } + }); diff --git a/app/views/conference/_lodging.html.haml b/app/views/conference/_lodging.html.haml new file mode 100644 index 00000000..de09c222 --- /dev/null +++ b/app/views/conference/_lodging.html.haml @@ -0,0 +1,18 @@ +%div.row.col-md-12.text-center + %h2 Lodgings + -unless @conference.lodging_description.blank? + %p.lead + = @conference.lodging_description + +%div.row + - @conference.venue.lodgings.each do |r| + %div.col-md-3.thumbnail + -unless r.photo.blank? + = image_tag r.photo(:large), class: 'img-responsive' + -unless r.name.blank? + %h4.text-center #{ r.name } + -unless r.description.blank? + %p.text-left #{ r.description } + - unless r.website_link.blank? + .text-center + = link_to 'Go to Website', r.website_link diff --git a/app/views/conference/show.html.haml b/app/views/conference/show.html.haml index 311da44b..330da61f 100644 --- a/app/views/conference/show.html.haml +++ b/app/views/conference/show.html.haml @@ -13,6 +13,9 @@ -unless @conference.venue.blank? %div#location = render 'location' +- if @conference.venue + - unless @conference.venue.lodgings.empty? + = render 'lodging' %div#sponsors = render 'sponsor' %div#social-media diff --git a/spec/views/conference/show.html.haml_spec.rb b/spec/views/conference/show.html.haml_spec.rb index e2187680..0290add8 100644 --- a/spec/views/conference/show.html.haml_spec.rb +++ b/spec/views/conference/show.html.haml_spec.rb @@ -17,6 +17,7 @@ describe 'conference/show.html.haml' do @sponsorship_level.sponsors << create(:sponsor, sponsorship_level: @sponsorship_level, conference: @conference) @conference.venue = create(:venue) + @conference.venue.lodgings << create(:lodging, venue: @conference.venue) assign :conference, @conference render end @@ -60,4 +61,11 @@ describe 'conference/show.html.haml' do expect(rendered).to include('www.opensuse.org') expect(rendered).to include('Lorem Ipsum Dolor') end + + it 'renders lodging partial' do + expect(view).to render_template(partial: 'conference/_lodging') + expect(rendered).to include('Example Hotel') + expect(rendered).to include('Lorem Ipsum Dolor') + expect(rendered).to include('http://www.example.com') + end end