From a69f8563e804d72123d2018715948105ca7b73ad Mon Sep 17 00:00:00 2001
From: Marcin Kurczewski <mkurczew@gmail.com>
Date: Fri, 29 May 2015 16:51:15 +0200
Subject: [PATCH] Fixed prev/next button behavior in pager

---
 public_html/js/Presenters/PagerPresenter.js | 37 +++++++++++----------
 1 file changed, 19 insertions(+), 18 deletions(-)

diff --git a/public_html/js/Presenters/PagerPresenter.js b/public_html/js/Presenters/PagerPresenter.js
index eda3abcd..261afb4e 100644
--- a/public_html/js/Presenters/PagerPresenter.js
+++ b/public_html/js/Presenters/PagerPresenter.js
@@ -62,16 +62,8 @@ App.Presenters.PagerPresenter = function(
 			.fail(loaded);
 
 		if (!endlessScroll) {
-			keyboard.keydown('a', function() {
-				if (pager.prevPage()) {
-					syncUrl({page: pager.getPage()});
-				}
-			});
-			keyboard.keydown('d', function() {
-				if (pager.nextPage()) {
-					syncUrl({page: pager.getPage()});
-				}
-			});
+			keyboard.keydown('a', navigateToPrevPage);
+			keyboard.keydown('d', navigateToNextPage);
 		}
 	}
 
@@ -183,6 +175,19 @@ App.Presenters.PagerPresenter = function(
 		$pageList.hide();
 	}
 
+	function navigateToPrevPage() {
+		console.log('!');
+		if (pager.prevPage()) {
+			syncUrl({page: pager.getPage()});
+		}
+	}
+
+	function navigateToNextPage() {
+		if (pager.nextPage()) {
+			syncUrl({page: pager.getPage()});
+		}
+	}
+
 	function refreshPageList() {
 		var $lastItem = $pageList.find('li:last-child');
 		var currentPage = pager.getPage();
@@ -208,17 +213,13 @@ App.Presenters.PagerPresenter = function(
 			jQuery('<li class="page"/>').append($a).insertBefore($lastItem);
 		});
 
-		$pageList.find('li.next a').click(function(e) {
+		$pageList.find('li.next a').unbind('click').bind('click', function(e) {
 			e.preventDefault();
-			if (currentPage + 1 < pages.length) {
-				syncUrl({page: currentPage + 1});
-			}
+			navigateToNextPage();
 		});
-		$pageList.find('li.prev a').click(function(e) {
+		$pageList.find('li.prev a').unbind('click').bind('click', function(e) {
 			e.preventDefault();
-			if (currentPage - 1 >= 1) {
-				syncUrl({page: currentPage - 1});
-			}
+			navigateToPrevPage();
 		});
 	}