Add view action
parent
75e122b00d
commit
5abef4cef7
|
@ -53,5 +53,15 @@ module Librarix
|
|||
redirect to('/')
|
||||
end
|
||||
end
|
||||
|
||||
post '/view' do
|
||||
Librarix::Redis::Movie.new(params[:id]).view
|
||||
|
||||
if request.xhr?
|
||||
""
|
||||
else
|
||||
redirect to('/')
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,6 +6,14 @@ function initButtons() {
|
|||
removeMovie(this.previousElementSibling.value)
|
||||
});
|
||||
}
|
||||
|
||||
var view_buttons = document.querySelectorAll('button[data-action=view-movie]');
|
||||
for (var i = 0; i < view_buttons.length; i++) {
|
||||
view_buttons[i].addEventListener('click', function(event) {
|
||||
event.preventDefault();
|
||||
viewMovie(this.previousElementSibling.value)
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function initSearch() {
|
||||
|
@ -56,6 +64,21 @@ function removeMovie(id) {
|
|||
req.send(data)
|
||||
}
|
||||
|
||||
function viewMovie(id) {
|
||||
var data = new FormData();
|
||||
data.append('id', id);
|
||||
|
||||
var req = new XMLHttpRequest();
|
||||
req.open('POST', '/view');
|
||||
req.setRequestHeader("X-Requested-With", "XMLHttpRequest");
|
||||
|
||||
req.addEventListener('load', function(e) {
|
||||
document.querySelector('.movie[data-id="' + id + '"] button[data-action="view-movie"]').parentNode.remove();
|
||||
});
|
||||
|
||||
req.send(data)
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function(event) {
|
||||
initButtons();
|
||||
|
||||
|
|
|
@ -38,6 +38,11 @@ module Librarix
|
|||
end
|
||||
|
||||
def view
|
||||
Librarix.redis.sadd('viewed_movies_id', id)
|
||||
end
|
||||
|
||||
def viewed?
|
||||
Librarix.redis.sismember('viewed_movies_id', id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -26,6 +26,10 @@ module Librarix
|
|||
def added?
|
||||
Librarix::Redis::Movie.new(id).added?
|
||||
end
|
||||
|
||||
def viewed?
|
||||
Librarix::Redis::Movie.new(id).viewed?
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -4,10 +4,15 @@
|
|||
img src="#{poster_url(movie.poster_path, 'w154')}"
|
||||
.informations
|
||||
h2
|
||||
a href="https://www.themoviedb.org/movie/#{movie.id}" #{movie.original_title} (#{movie.release_year})
|
||||
a href="https://www.themoviedb.org/movie/#{movie.id}" #{movie.original_title}
|
||||
p = movie.release_date
|
||||
p = movie.overview
|
||||
.actions
|
||||
- if movie.added?
|
||||
- unless movie.viewed?
|
||||
form method="post" action="/view"
|
||||
input type="hidden" name="id" value="#{movie.id}"
|
||||
button type="submit" data-action="view-movie" View
|
||||
form method="post" action="/remove"
|
||||
input type="hidden" name="id" value="#{movie.id}"
|
||||
button type="submit" data-action="remove-movie" Remove
|
||||
|
|
Loading…
Reference in New Issue