Skip to content
Snippets Groups Projects
Commit 4d2d3904 authored by Mateus Rambo Strey's avatar Mateus Rambo Strey
Browse files

add remove pagination view to see more

parent d34b8cf5
No related branches found
No related tags found
No related merge requests found
...@@ -3,12 +3,17 @@ var search = function() { ...@@ -3,12 +3,17 @@ var search = function() {
var intervalId = 0; var intervalId = 0;
var params = {}; var params = {};
//// initialize search parameters //// initialize search parameters
params.query = ""; resetParam();
params.order = "";
params.subject = []; function resetParam() {
params.type = []; params.query = "";
params.school_year = []; params.page = 1;
params.year = ""; params.order = "";
params.subject = [];
params.type = [];
params.school_year = [];
params.year = "";
}
$(document).ready(function () { $(document).ready(function () {
checkUrl(); checkUrl();
...@@ -49,6 +54,7 @@ var search = function() { ...@@ -49,6 +54,7 @@ var search = function() {
function watchSearchInput() { function watchSearchInput() {
$('.search-input form').on('submit', function (event) { $('.search-input form').on('submit', function (event) {
event.preventDefault(); event.preventDefault();
resetParam();
params.query = $('input[name="query"]', this).val(); params.query = $('input[name="query"]', this).val();
fetch(); fetch();
}); });
...@@ -56,11 +62,19 @@ var search = function() { ...@@ -56,11 +62,19 @@ var search = function() {
function watchOrder() { function watchOrder() {
$('select[name="order"]').on('change', function (event) { $('select[name="order"]').on('change', function (event) {
params.order = $(this).val() params.order = $(this).val();
fetch(); fetch();
}); });
} }
function watchMoreResults() {
$('.search-more').on('click', function (event) {
event.preventDefault();
params.page += 1;
fetch(true);
});
}
function watchFilters() { function watchFilters() {
$('.search-link').on('change', function(e) { $('.search-link').on('change', function(e) {
// cancel previous function call // cancel previous function call
...@@ -135,22 +149,46 @@ var search = function() { ...@@ -135,22 +149,46 @@ var search = function() {
} }
// get objects html to embed // get objects html to embed
function fetch() { function fetch(append) {
// append result - see more
if (append === undefined || append === false) {
append = false;
// reset pagination
params.page = 1;
}
// change url with new parameters
var url = createUrlFromParameters(); var url = createUrlFromParameters();
history.pushState(state, url, url); history.pushState(state, url, url);
$.ajax({ $.ajax({
url:"/search/fetch", url:"/search/fetch",
type: 'get', type: 'get',
data: params, data: params,
beforeSend: function() { beforeSend: function() {
$("#search-fetch").empty(); if (append) {
$("#search-fetch").append('<br><br><div style="text-align:center;"><div class="pong-loader">Carregando...</div></div>'); $('.search-more').remove();
}
else {
$("#search-fetch").empty();
}
$("#search-fetch").append('<div class="search-loading" style="text-align:center;"><br><div class="pong-loader">Carregando...</div></div>');
} }
}) })
.done(function (data) { .done(function (data) {
$("#search-fetch").empty(); if (append) {
$('.search-more, .search-loading').remove();
}
else {
$("#search-fetch").empty();
}
$("#search-fetch").append(data); $("#search-fetch").append(data);
watchMoreResults();
}); });
} }
}; };
......
<%= render @objects, orientation: "horizontal" %> <%= render @objects, orientation: "horizontal" %>
<%= paginate @result %> <a href="javascript:void(0);" class="btn btn-primary search-more">Ver mais</a>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment