/* jslint verified 2008.11.19 */
/*jslint browser: true, onevar: true, undef: true, white: false, eqeqeq: true */
/*globals $, $$, Constants */
/* Javascript for tour.inc */

var Tour = function () {
	var tour = {
			back: false,
			forward: false,
			screen: false,
			curNum: false,
			curPage: false
		},
		self = {
		initNavigation: function (){
			var images = [	"tour_homepage.gif",
							"tour_discover2.gif",
							"tour_search2.gif",
							"tour_sequencer2.gif",
							"tour_profileuser2.gif",
							"tour_profilebit.gif",
							"tour_palette.gif",
							"tour_translog2.gif",
							"tour_royalties.gif",
							"tour_upload.gif"];
			return images;
		},
		initClickHandlers: function (){
			self.addNavEvents(tour.back);
			self.addNavEvents(tour.forward);
		},
		addNavEvents: function (el){
			el.addClick(self.navigate.bind(self, el));
		},
		navigate: function (el){
			var nextPage = 1,
				prevImg = new Image(),
				nextImg = new Image(),
				curPage = +tour.curNum.value;
			if (el.id === 'back') {
				tour.forward.reveal();
				if (curPage > 1) {
					nextPage = curPage - 1;
					tour.back.reveal();
				}
				if (nextPage === 1){
//					el.addClassName('hideNav');
					tour.back.cloak();
				}
			}
			else if (el.id === 'forward') {
				tour.back.reveal();
				if (tour.curNum.value < 10){
					nextPage = curPage + 1;
					tour.forward.reveal();
				}
				if (nextPage === 10){
					tour.forward.cloak();
		//			el.addClassName('hideNav');
				}
			}
			$('title_' + curPage).toggle();
			$('title_' + nextPage).toggle();
			$('tour_' + curPage).toggle();
			$('tour_' + nextPage).toggle();
			tour.curPage.update(nextPage);
			tour.curNum.value = nextPage;
			curPage = nextPage - 1;

			prevImg.src     = Constants.tourImages() + self.imagesArray[ curPage - 1 ];
			tour.screen.src = Constants.tourImages() + self.imagesArray[ curPage ];
			nextImg.src     = Constants.tourImages() + self.imagesArray[ curPage + 1 ];
		}
	};
	function setup() {
		tour.back = $('back');
		tour.forward = $('forward');
		tour.screen = $('tourScreen');
		tour.curNum = $('currentPageNum');
		tour.curPage = $('currentPage');
		self.imagesArray = self.initNavigation();
		self.initNavigation();
		self.initClickHandlers();
		self.tourUrl = Constants.ajax() + 'tour';
		self.navigate(tour.back);
	}
	window.addLoad(setup);
	return self;
}();
