// jQuery functions
$(document).ready(function(){
	//universal ajax function
	var ajaxFunction = function(dataString,file,replaceID,callbackFunction) {
		var f = callbackFunction;
		$.ajax({  
		  type: "POST",  
		  url: file,  
		  data: dataString,  
		  success: function(msg) {  
			$('#'+replaceID).html(msg);
			if (typeof f == "function") f(msg);
		  }  
		});
	}
	// menu functions
	var start_position = $('#side_nav').position();
	
	$(window).scroll(function(){
		var scrollTop = $(window).scrollTop();	
		var position = start_position.top;
		if(scrollTop > position){
			var pos = scrollTop;
			$('#side_nav').css({
				'position':'fixed',
				'top': 0+'px'
			});
			$('#content').css('float','right');
		} else if (scrollTop < position) {
			$('#side_nav').css({
				'position':'relative'
			});
		}
	});
		
	//gallery functions
	/*$('.brand').click(function(){
		var brand = $(this).attr('rel');
		var dataString = 'b='+encodeURIComponent(brand);
		ajaxFunction(dataString,'_ajax/gallery.php','gallery-block',brandClick);
		$('#brand-list').hide();
	});*/
	
	$('.slide-right').click(function(){
		var w = $('.slider-block').width(),
			b = $('.slider-block').length,
			max_left = w*(b-1)*(-1),
			pos = $('.slider-frame').position();
						
		if(pos.left > max_left){
			$('.slider-frame').animate({'left': (pos.left-w)+'px'},500, function() {
				if((pos.left-w) <= max_left) {
					$('.slide-right').addClass('hide');
					$('.slider-frame').animate({'left':max_left+'px'},250);
				}
			});
			$('.slide-left').removeClass('hide');
		}
	});
	
	$('.slide-left').click(function(){
		var w = $('.slider-block').width(),
			b = $('.slider-block').length,
			max_left = 0,
			pos = $('.slider-frame').position();
						
		if(pos.left < max_left){
			$('.slider-frame').animate({'left': (pos.left+w)+'px'},500, function() {
				if((pos.left+w) >= max_left) {
					$('.slide-left').addClass('hide');
					$('.slider-frame').animate({'left':max_left+'px'},250);
				}
			});
			$('.slide-right').removeClass('hide');
		}
	});
	
	$('.thumb-img').click(function(){
		$('.thumb-img').removeClass('selected');
		$(this).addClass('selected');
		var imgID = $(this).attr('rel');
		var ds = 'id='+encodeURIComponent(imgID);
		ajaxFunction(ds,'_ajax/img-replace.php','img-block');
	});
	
	$('.gallery-cat').click(function() {
		var cat = $(this).text();
		var brand = $(this).attr('rel');
		var ds = 'c='+encodeURIComponent(cat)+'&b='+encodeURIComponent(brand);
		ajaxFunction(ds,'_ajax/thumbnails.php','thumbnails',startThumbs);
		$('.gallery-cat').removeClass('selected');
		$(this).addClass('selected');
	});
	
	// put this in a function as well so we can call it when the thumbnails from ajax load
	var startThumbs = function() {
		$('.slide-right').click(function(){
			var w = $('.slider-block').width(),
				b = $('.slider-block').length,
				max_left = w*(b-1)*(-1),
				pos = $('.slider-frame').position();
							
			if(pos.left > max_left){
				$('.slider-frame').animate({'left': (pos.left-w)+'px'},500, function() {
					if((pos.left-w) <= max_left) {
						$('.slide-right').addClass('hide');
						$('.slider-frame').animate({'left':max_left+'px'},250);
					}
				});
				$('.slide-left').removeClass('hide');
			}
		});
		
		$('.slide-left').click(function(){
			var w = $('.slider-block').width(),
				b = $('.slider-block').length,
				max_left = 0,
				pos = $('.slider-frame').position();
							
			if(pos.left < max_left){
				$('.slider-frame').animate({'left': (pos.left+w)+'px'},500, function() {
					if((pos.left+w) >= max_left) {
						$('.slide-left').addClass('hide');
						$('.slider-frame').animate({'left':max_left+'px'},250);
					}
				});
				$('.slide-right').removeClass('hide');
			}
		});
		
		$('.thumb-img').click(function(){
			$('.thumb-img').removeClass('selected');
			$(this).addClass('selected');
			var imgID = $(this).attr('rel');
			var ds = 'id='+encodeURIComponent(imgID);
			ajaxFunction(ds,'_ajax/img-replace.php','img-block');
		});
		
		$('.gallery-cat').click(function() {
			var cat = $(this).text();
			var brand = $(this).attr('rel');
			var ds = 'c='+encodeURIComponent(cat)+'&b='+encodeURIComponent(brand);
			ajaxFunction(ds,'_ajax/thumbnails.php','thumbnails',startThumbs);
			$('.gallery-cat').removeClass('selected');
			$(this).addClass('selected');
		});
	}
	
	// form funtctions
	$('.required').blur(function(){
		var val = $(this).val();
		if(val == '' || val == 0) {
			$(this).css({
				"background-color":"#ffeded",
				"border":"1px solid #f00",
				"padding":"3px 3px 3px 5px"
			});
		} else {
			$(this).css({
				"background-color":"#fff",
				"border":"1px solid #aaa",
				"padding":"3px 3px 3px 5px"
			});
		}
	});
	
	$('form').submit(function() {
		var numReq = $('.required').length,
			valid = 0;
		if(numReq > 0) {
			$('.required').each(function(index){
				var val = $(this).val();
				if(val == '' || val == 0) {
					$(this).css({
						"background-color":"#ffeded",
						"border":"1px solid #f00",
						"padding":"3px 3px 3px 5px"
					});
				} else {
					$(this).css({
						"background-color":"#fff",
						"border":"1px solid #aaa",
						"padding":"3px 3px 3px 5px"
					});
					valid++;
				}
			});
			if(valid < numReq) {
				alert('Please fill in all required fields');
				return false;
			}
			else return true;
		} else {
			return true;
		}
	});
	
	$(".numbersonly").keydown(function(event) {
        if ( event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || (event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105) /*|| event.keyCode == 110 || event.keyCode == 109 || event.keyCode == 189 || event.keyCode == 190*/) {
        }
        else {
        	event.preventDefault(); 
        }
    });	
});

