Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
e1aee4e
Removed extra items in nav bar
jessieliuzx Nov 21, 2017
80341ee
Merge pull request #1 from week4jessieliu/cleanup-navbar
jessieliuzx Nov 21, 2017
28af60d
Correct Navbar name
jessieliuzx Nov 21, 2017
62be732
Merge pull request #2 from week4jessieliu/cleanup-navbar
jessieliuzx Nov 21, 2017
add16b3
home page changed to dishes
jessieliuzx Nov 21, 2017
84fedb7
Merge pull request #3 from week4jessieliu/change-homepage-to-dishes
jessieliuzx Nov 21, 2017
6c8afc1
link name to dish show page
jessieliuzx Nov 21, 2017
be9fd8e
Merge pull request #4 from week4jessieliu/link-dishes-on-dish-index-t…
jessieliuzx Nov 21, 2017
1b39d0d
added bookmarked venue to dishes on dish index page
jessieliuzx Nov 22, 2017
36d6cd7
Merge pull request #5 from week4jessieliu/dishes-displays-venue-for-e…
jessieliuzx Nov 22, 2017
04d0ae4
add bookmark option for unbooked dish on dish index
jessieliuzx Nov 22, 2017
0987c84
Merge pull request #6 from week4jessieliu/dishes-displays-venue-for-e…
jessieliuzx Nov 22, 2017
9130094
adding bookmark for unbookmarked dish
jessieliuzx Nov 22, 2017
87382d2
Merge pull request #7 from week4jessieliu/add-form-to-create-new-book…
jessieliuzx Nov 22, 2017
7105be6
dish index displaying only signed in users' bookmark
jessieliuzx Nov 22, 2017
b295ef8
recover last edit
jessieliuzx Nov 22, 2017
c1fd3e9
Merge pull request #8 from week4jessieliu/dish-index-only-display-log…
jessieliuzx Nov 22, 2017
cf773df
clean up dish index display table
jessieliuzx Nov 22, 2017
3c10a26
Merge pull request #9 from week4jessieliu/dish-index-only-display-log…
jessieliuzx Nov 22, 2017
312a037
dish index page can add new venue
jessieliuzx Nov 22, 2017
0f24977
Merge pull request #10 from week4jessieliu/dish-index-page-can-add-ne…
jessieliuzx Nov 22, 2017
099af82
add cuisine option to filter and deleted extra filters
jessieliuzx Nov 22, 2017
192d270
Merge pull request #11 from week4jessieliu/dish-index-filter-works-pr…
jessieliuzx Nov 22, 2017
2c647a1
Attempt to make filter by cuisine work
jessieliuzx Nov 22, 2017
80f9ad5
Merge pull request #12 from week4jessieliu/dish-index-filter-works-pr…
jessieliuzx Nov 22, 2017
81a5421
venue index only shows logged in users' preference
jessieliuzx Nov 22, 2017
91f7ffe
Merge pull request #13 from week4jessieliu/clean-up-dish-show-page
jessieliuzx Nov 22, 2017
ebd2c41
filter by dish on venue index page
jessieliuzx Nov 24, 2017
72dfd61
Merge pull request #14 from week4jessieliu/clean-up-filter-on-venue-i…
jessieliuzx Nov 24, 2017
3776dae
dish show page show all past venues
jessieliuzx Nov 24, 2017
4a2c3c5
Merge pull request #15 from week4jessieliu/clean-up-filter-on-venue-i…
jessieliuzx Nov 24, 2017
4ac6268
Filtering dishes by cuisine type
campbellita Nov 28, 2017
fce2fa8
Merge pull request #16 from week4jessieliu/dishes-user-can-filter-dis…
jessieliuzx Nov 28, 2017
90d51d4
Dish show page matches target
larryt1026 Nov 28, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/controllers/cuisines_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ class CuisinesController < ApplicationController
def index
@q = Cuisine.ransack(params[:q])
@cuisines = @q.result(:distinct => true).includes(:dishes).page(params[:page]).per(10)

@bookmark = Bookmark.new
render("cuisines/index.html.erb")
end

Expand Down
3 changes: 2 additions & 1 deletion app/controllers/dishes_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ class DishesController < ApplicationController
def index
@q = Dish.ransack(params[:q])
@dishes = @q.result(:distinct => true).includes(:cuisine, :bookmarks, :fans, :specialists).page(params[:page]).per(10)

@bookmark = Bookmark.new
@cuisines = Cuisine.all
render("dishes/index.html.erb")
end

Expand Down
148 changes: 70 additions & 78 deletions app/views/dishes/index.html.erb
Original file line number Diff line number Diff line change
@@ -1,112 +1,104 @@
<div class="page-header">
<h1>
Dishes
<a href="/dishes/new" class="btn btn-lg btn-success">New Dish</a>
<a href="/venues/new" class="btn btn-lg btn-success">Add a new venue</a>
</h1>
</div><div class="row mb-1">
<div class="col-md-12">
</div>
<div class="row mb-1">

<div class="col-md-3">
<%= search_form_for @q, :class => "collapse", :id => "dishes_filters" do |f| %>

<p class="lead">Narrow results:</p>

<div class="form-group">
<%= f.label :name_cont, "Name contains" %>
<%= f.text_field :name_cont, :class => "form-control", :placeholder => "Name contains" %>
</div>

<div class="form-group">
<%= f.label :created_at, "Created at" %>
<div class="row">
<div class='col-md-6 mb-1'>
<div class='input-group date' id='created_atgteqPicker'>
<%= f.text_field :created_at_gteq, :class => "form-control", :placeholder => "Created at greater than or equal to" %>
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>

<div class='col-md-6'>
<div class='input-group date' id='created_atlteqPicker'>
<%= f.text_field :created_at_lteq, :class => "form-control", :placeholder => "Created at less than or equal to" %>
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$(function () {
$('#created_atgteqPicker').datetimepicker({
format: 'YYYY-MM-DD hh:mm:SS'
});
$('#created_atlteqPicker').datetimepicker({
useCurrent: false,
format: 'YYYY-MM-DD hh:mm:SS'
});
$('#created_atgteqPicker').on("dp.change", function (e) {
$('#created_atlteqPicker').data("DateTimePicker").minDate(e.date);
});
$('#created_atlteqPicker').on("dp.change", function (e) {
$('#created_atgteqPicker').data("DateTimePicker").maxDate(e.date);
});
});
</script>

<div class="form-group">
<%= f.label :cuisine_name_cont, "Cuisine name contains" %>
<%= f.text_field :cuisine_name_cont, :class => "form-control", :placeholder => "Cuisine name contains" %>
</div>

<div class="form-group">
<%= f.label :bookmarks_notes_cont, "Bookmark notes contains" %>
<%= f.text_field :bookmarks_notes_cont, :class => "form-control", :placeholder => "Bookmark notes contains" %>
</div>

<div class="form-group">
<%= f.label :fans_username_cont, "User username contains" %>
<%= f.text_field :fans_username_cont, :class => "form-control", :placeholder => "User username contains" %>
<div class="form-group">
<%= f.label :name_cont, "Name contains" %>
<%= f.text_field :name_cont, :class => "form-control", :placeholder => "Name contains" %>
</div>

<div class="form-group">

<div class="form-group">
<%= f.label :specialists_name_cont, "Venue name contains" %>
<%= f.text_field :specialists_name_cont, :class => "form-control", :placeholder => "Venue name contains" %>
<%= f.label :cuisine_id_eq_any, "Cuisine" %>
<% @cuisines.each do |cuisine| %>
<div class="checkbox">
<label>
<%= f.check_box :cuisine_id_eq_any, {multiple: true}, cuisine.id, nil %>
<%= cuisine.name %>
</label>
</div>
<% end %>
</div>

<%= f.submit :class => "btn btn-primary btn-block mb-1" %>

<%= f.submit :class => "btn btn-primary btn-block mb-1" %>
<a href="/dishes" class="btn btn-default btn-block mb-1">Clear filters</a>

<% end %>
<a class="btn btn-default btn-block mb-1" data-toggle="collapse" href="#dishes_filters">
Show Filters
</a>

</div>

</div>

<div class="row">
<div class="col-md-12">
<table class="table table-striped table-hover">
<tr>
<th>Name</th>
<th>Cuisine</th>
<th>Actions</th>
<th>The very best...</th>
<th>is at...</th>
<th></th>
</tr>

<% @dishes.each do |dish| %>
<tr>
<td><%= dish.name %></td>
<td>
<% if dish.cuisine.present? %>
<a href="/cuisines/<%= dish.cuisine.id %>">
<%= dish.cuisine.name %>
<a href="/dishes/<%= dish.id %>"><%= dish.name %></a>
</td>
<td>
<% if dish.bookmarks.find_by(:user_id => current_user.id).present? %>
<a href="/venues/<%= dish.bookmarks.find_by(:user_id => current_user.id).venue.id %>">
<%= dish.bookmarks.find_by(:user_id => current_user.id).venue.name %>
</a>


<% else %>
<form action="/create_bookmark" method="post">
<!-- Hidden input for authenticity token to protect from forgery -->
<input name="authenticity_token" type="hidden" value="<%= form_authenticity_token %>">

<!-- Label and input for dish_id -->
<input type="hidden" name="dish_id" value="<%= dish.id %>">
<!-- Label and input for user_id -->
<input type="hidden" name="user_id" value="<%= current_user.id %>">

<!-- Label and input for venue_id -->
<div class = "form-group">
<label for="venue_id" class="control-label sr-only">
Venue
</label>
<%= select_tag(:venue_id, options_from_collection_for_select(Venue.all, :id, :name, @bookmark.venue_id), prompt:"Choose a venue...", :class => "form-control input-sm") %>
</div>

<button class="btn btn-primary btn-sm">
<i class="fa fa-heart"></i>
</button>


</form>
<% end %>
</td>
<td>
<a href="/dishes/<%= dish.id %>" class="btn btn-primary">Show</a>
<a href="/dishes/<%= dish.id %>/edit" class="btn btn-warning">Edit</a>
<a href="/delete_dish/<%= dish.id %>" class="btn btn-danger" rel="nofollow">Delete</a>
<td class="text-right">
<span class="label">
<% if dish.cuisine.present? %>
<a href="/cuisines/<%= dish.cuisine.id %>">
<%= dish.cuisine.name %>
</a>
<% end %>
</span>
</td>


</tr>
<% end %>
</table>
Expand Down
Loading