var talkContents = {0:"Don't you think this module worth at least $1?",
										1:"Buy Jay a small pack of Extra™ gums. Hey, thanks",
										3:"Buy Jay a medium pack of Extra™ gums. Thank you",
										6:"Buy Jay a large pack of Extra™ gums. That should keep me awake while working on the modules, thank you.",
										15:"Treat Jay with a seafood sushi set he loves so much. Cool! Thanks!",	
										25:"Help funding 0.13% of Jay's tuition fee. Thank you!",
										40:"Help funding 0.22% of Jay's tuition fee. Wow! Thank you so much!",
										60:"Give Jay full support for this module. You're the best! Heaps thanks!",
									  61:"Massive! You are the best! Thank you very much."
									 };

function init_sliderviews() {
	var divs = document.getElementsByTagName('div');
	
	for(i=0;i<divs.length;i++) {
		if (divs[i].className == 'sliderview') {
			var idName = divs[i].id;
			var track_name = 'track_sliderview-';
			this.a_id = idName.substr(track_name.length);
			
			this.max = $('max_attrib-' + a_id).getProperty('value');
			this.min = $('min_attrib-' + a_id).getProperty('value');
			var defaultValue = $('attrib-' + a_id).getProperty('value');
			var defaultPos = sda_getPos(defaultValue, min, max);
			//alert($('attrib-' + a_id).getProperty('value'));
			//alert('max = ' + this.max + '\nmin = ' + this.min + '\ndefaultValue = ' + defaultValue + '\ndefaultPos = ' + defaultPos);
			//var defaultPos = defaultValue;
			
			sda_createTalk(a_id);
			
			var slider = new Slider($('track_sliderview-' + a_id), $('handle_sliderview-' + a_id), {
				steps: 100,
				onChange: function(step){
					var value = sda_getValue(step, this.min, this.max);
					//var value = step;
					$('attrib-' + this.a_id).setProperty('value', value);
					set_talkContent(this.a_id, value);
				}.bind(this)
			}).set(defaultPos);
			
		}
	}
}

function sda_createTalk(sliderviewID) {
	//var track = document.getElementById('track_sliderview-' + sliderviewID);
	//var parent = track.parentNode;
	
	var talk = new Element('div',{'class':'talk', 'id':'talk-' + sliderviewID});
	var tl = new Element('span', {'class':'tl'}, ' ');
	var tc = new Element('span', {'class':'tc'}, ' ');
	var tr = new Element('span', {'class':'tr'}, ' ');
	var bl = new Element('span', {'class':'bl'}, ' ');
	var bc = new Element('span', {'class':'bc'}, ' ');
	var br = new Element('span', {'class':'br'}, ' ');
	var text_talk = new Element('span', {'class':'text_talk', 'id':'text_talk-' + sliderviewID});
	
	tc.injectInside(talk);
	tl.injectInside(talk);
	tr.injectInside(talk);
	bc.injectInside(talk);
	bl.injectInside(talk);
	br.injectInside(talk);
	text_talk.injectInside(talk);
	talk.injectAfter($('track_sliderview-' + sliderviewID));
	
	var value = $('attrib-' + sliderviewID).getProperty('value');
	
	set_talkContent(sliderviewID, value);
}

function sda_getValue(pos, min, max) {
	var range = max - min;
	var value = pos * range;
	value = min + value;
	value = Math.round(value)/100;
	return value;
}

function sda_getPos(value, min, max) {
	var range = max - min;
	var pos = value / range * 100;
	return pos;
}

function set_talkContent(sliderviewID, value) {
	var text_talk = $('text_talk-' + sliderviewID);
	for(key in talkContents) {
		if (parseInt(value) >= parseInt(key)) {
			text_talk.setHTML(talkContents[key]);
		}
	}
}

function setSliderview(sliderviewID, object) {
	var handle = 'handle_sliderview-' + sliderviewID;
	var track = 'track_sliderview-' + sliderviewID;
	var max = document.getElementById('max_attrib-' + sliderviewID).value;
	var min = document.getElementById('min_attrib-' + sliderviewID).value;
	var value = object.value;
	
	var pos = sda_getPos(value, min, max);

	var slider = new Slider($(track), $(handle), {
		steps: 100
	}).set(pos);
	
	//var slider = new Control.Slider(handle,track, {axis:'horizontal', minimum: 0, maximum:100, sliderValue:pos, alignx:-28, alignY: -5, increment:2});

	set_talkContent(sliderviewID, value);
}