Merge pull request #153 from shower/fix-get-current-slide-number

Fix the getCurrentSlideNumber to return 0 when it fails to find a slide
This commit is contained in:
Vadim Makeev 2013-11-08 01:44:21 -08:00
commit 0e34e948c7
1 changed files with 4 additions and 9 deletions

View File

@ -599,7 +599,7 @@ window.shower = window.shower || (function(window, document, undefined) {
/** /**
* Get current slide number. Starts from zero. Warning: when you have * Get current slide number. Starts from zero. Warning: when you have
* slide number 1 in URL this method will return 0. * slide number 1 in URL this method will return 0.
* If something is wrong return -1. * If something is wrong return 0 to get the first slide.
* @returns {Number} * @returns {Number}
*/ */
shower.getCurrentSlideNumber = function() { shower.getCurrentSlideNumber = function() {
@ -614,7 +614,7 @@ window.shower = window.shower || (function(window, document, undefined) {
} }
} }
return -1; return 0;
}; };
/** /**
@ -634,11 +634,6 @@ window.shower = window.shower || (function(window, document, undefined) {
throw new Error('You can\'t scroll to because you in slide mode. Please, switch to list mode.'); throw new Error('You can\'t scroll to because you in slide mode. Please, switch to list mode.');
} }
// @TODO: WTF?
if (-1 === slideNumber) {
return ret;
}
if (shower.slideList[slideNumber]) { if (shower.slideList[slideNumber]) {
currentSlide = document.getElementById(shower.slideList[slideNumber].id); currentSlide = document.getElementById(shower.slideList[slideNumber].id);
window.scrollTo(0, currentSlide.offsetTop); window.scrollTo(0, currentSlide.offsetTop);
@ -799,7 +794,7 @@ window.shower = window.shower || (function(window, document, undefined) {
document.addEventListener('keydown', function(e) { document.addEventListener('keydown', function(e) {
var currentSlideNumber = shower.getCurrentSlideNumber(), var currentSlideNumber = shower.getCurrentSlideNumber(),
slide = shower.slideList[ currentSlideNumber !== -1 ? currentSlideNumber : 0 ], slide = shower.slideList[currentSlideNumber],
slideNumber; slideNumber;
switch (e.which) { switch (e.which) {
@ -833,7 +828,7 @@ window.shower = window.shower || (function(window, document, undefined) {
break; break;
case 13: // Enter case 13: // Enter
if (shower.isListMode() && -1 !== currentSlideNumber) { if (shower.isListMode()) {
e.preventDefault(); e.preventDefault();
shower.enterSlideMode(); shower.enterSlideMode();