// JavaScript Core Document

function external(){
	var l = $$('a');
	l.each(function(el){
		if (el.getProperty('rel')=='external'){
			el.setProperty('target', '_blank');
		}
	});
}

function forms(){
	var s = $$('form #sort');
	s.each(function(el){
		el.addEvent('change', function(e){
			if (el.value != 'Please select'){
				el.getParent().getParent().submit();
			}
		});
	});
}
function hide_notice(){
	if ($('hide_notice')){
		$('hide_notice').addEvent('click', function(e){
			var myFx = new Fx.Tween($('notice_holder'), {duration: 2000});
			myFx.start('opacity', '1', '0');
			var e= new Event(e);
			e.stop();
		});
	}
}
function sliders(){
	var sliders = $$('.bf_line');
	sliders.each(function(el){
		var steps = el.getProperty('rel');
		var target = el.getElement('input');
		var slider = new Slider(el, el.getElement('.bf_knob'), {
			steps: steps,
			wheel: true,
			range: [1],	// Minimum value is 8
			onChange: function(step){
				// Everytime the value changes, we change the font of an element
				el.getElement('.bf_tip').removeClass('hide');
				target.value = step;
				if ($(el.id + '_' + step) && !isNaN(step)){
					el.getElement('.bf_tip').set('html', $(el.id + '_' + step).innerHTML);
					// alert ($(el.id + '_' + step).innerHTML);
				}
			}
		});
		el.getElement('.bf_tip').addClass('hide');
		slider.set(1);
	});
	/*
	var tipz = new Tips('.bf_knob',{
		className: 'tipz',
		fixed: true,
		hideDelay: 250,
		showDelay: 50
	});
	*/
}
function swap_imagery(){
	var swappers = $$('.bike_image_small a');
	if ($('bike_photo')){
		var dir = '/userfiles/Image/bikes/extra_large/';
		var l_dir = '/userfiles/Image/bikes/large/';
		swappers.each(function(el){
			el.addEvent('click', function(e){
				var target = el.get('rel');
				var a_array = $$('#bike_photo a');
				var a = a_array[0];
				a.setProperty('href', dir + target);
				var i_array = $$('#bike_photo img');
				var i = i_array[0];
				i.setProperty('src', l_dir + target);
				var e = new Event(e);
				e.stop();
			});
		});
	}
}

function _getmap(){
	var map_exists = $$('#gmap');
	if (map_exists.length > 0){
		window.addEvent('load',function(){
			load('gmap');
		});	
		window.addEvent('unload',function(){
			GUnload();
		});	
	}
}
var size_guide = function(){
	if ($('size_guide')){
		var myFx = new Fx.Morph($('size_guide'), {});
		$('size_guide').set({'opacity': 0});
		$('size_guide').visible = false;
		$$('a.size_guide')[0].addEvent('click', function(e){
			if (!$('size_guide').visible){
				myFx.start({'opacity': 1});
				$('size_guide').visible = true;
			}else{
				myFx.start({'opacity': 0});
				$('size_guide').visible = false;
			}
			var e = new Event(e).stop();
		});
		$('closeGuide').addEvent('click', function(e){
			if ($('size_guide').visible){
				myFx.start({'opacity': 0});
				$('size_guide').visible = false;
			}
			var e = new Event(e).stop();
		});
		
	}
}
var autoSlimbox = function(){
	var maxWidth = 700, maxHeight = 600;
	$$('img').each(function(el){
		if (el.naturalWidth > el.width || el.naturalHeight > el.height){
			if (el.getParent().nodeName != 'A'){
				el.alt = el.alt ? el.alt : 'No ALT tag is set.';
				var a = new Element('a', {'rel': 'lightbox[]', 'href': el.src, 'title': el.alt}).wraps(el);
				if (el.naturalWidth > maxWidth || el.naturalHeight > maxHeight){
					// Do physical resize				
					// alert ('resizing ' + el.src);
					var myRequest = new Request({'url': '/_lib/js/resize_img.php'}).send("url=" + el.src);
				}
			}
		}
	});
}

window.addEvent('domready', function(){
	external();
	forms();
	sliders();
	hide_notice();
	// swap_imagery();
	_getmap();
	size_guide();
	autoSlimbox();
	// if ($('subForm'))$('subForm').setProperty('target', '_blank');
});
