// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

$(document)
		.ready(
				function() {

					if (typeof (ukNodeCost) != "undefined")
						var usNodeCost = ukNodeCost;
					/* Slider settings */
					if (typeof (defaultNodes) == "undefined")
						defaultNodes = 2 /*
											 * Sets the default number of
											 * selected nodes
											 */
					if (typeof (maxAssignableNodes) == "undefined")
						maxAssignableNodes = 16 /*
												 * Sets the maximum number of
												 * selectable nodes
												 */

						/* Per node settings */
					nodeCPU = 400 /* In MHZ */
					nodeRAM = 256 /* In MB */
					nodeHDD = 10 /* In GB */
					nodeBandwidth = 250 /* In GB */

					for (i = 1; i <= maxAssignableNodes; i++) {
						$('#vps-net-slider .slider-wrap .slider-nodes').append(
								"<li id=\"node-" + i + "\">" + i + "</li>");
					}
					;

					function setTotalValues(nodes) {
						$('#vps-net-slider .cpu p').text(
								((nodes * nodeCPU) / 1000) + "GHz");
						$('#vps-net-slider .ram p').text(
								(nodes * nodeRAM) + "MB");
						$('#vps-net-slider .storage p').text(
								(nodes * nodeHDD) + "GB");
						$('#vps-net-slider .bandwidth p').text(
								(nodes * nodeBandwidth) + "GB");

						if ($('#vps-net-slider .nodesused').is('*'))
							$('#vps-net-slider .nodesused p').text(nodes);

						// Only Price it up if the price is shown
						if ($('#vps-net-slider .price').is('*')) {
							$('#vps-net-slider .price p.cost').text(
									"$" + (usNodeCost[nodes]));
							$('#vps-net-slider .price p.saving').text(
									"$" + Math.round(usNodeCost[nodes] / nodes)
											+ " per node");
						}
						if ($('.GBR #vps-net-slider .price').is('*')) {
							$('.GBR #vps-net-slider .price p.cost').text(
									"£" + (ukNodeCost[nodes]));
							$('.GBR #vps-net-slider .price p.saving').text(
									"£" + (ukNodeCost[nodes] / nodes)
											+ " per node");
						}

					}
					;

					selectedNodes = $(
							'#vps-net-slider .slider-wrap #slider input[name=numNodes]')
							.val();
					if (selectedNodes > 0) {
						assignedNodes = selectedNodes
					} else {
						assignedNodes = defaultNodes
					}
					;
					$('#vps-net-slider .slider-wrap #slider')
							.addClass("active");
					$('#vps-net-slider .slider-wrap #slider').css("width",
							((37.06) * maxAssignableNodes) + "px");
					// $('#vps-net-slider
					// .slider-background-repeat').css("width", (((37.06) *
					// maxAssignableNodes) + 35) + "px");
					$('#vps-net-slider .slider-wrap #slider input').css(
							"display", "none");
					setTotalValues(assignedNodes);
					for ( var y = 0; y <= assignedNodes; y++) {
						$("#vps-net-slider .slider-wrap #node-" + y).addClass(
								"active");
					}
					$('#vps-net-slider .slider-wrap #slider .ui-slider-handle')
							.mousedown( function() {
								$(this).addClass("active");
							});
					$('#vps-net-slider .slider-wrap #slider .ui-slider-handle')
							.mouseup( function() {
								$(this).removeClass("active");
							});
					$('#vps-net-slider .slider-wrap #slider.ui-slider')
							.slider(
									{
										min : 1,
										max : maxAssignableNodes,
										startValue : assignedNodes,
										animate : true,
										change : function(e, ui) {

											var t = jQuery(this);
											var x = jQuery(t).slider("value");
											jQuery(t).find('input').val(x);
											for ( var y = 0; y <= x; y++) {
												$(
														"#vps-net-slider .slider-wrap #node-"
																+ y).addClass(
														"active");
											}
											for ( var y = x + 1; y <= maxAssignableNodes; y++) {
												$(
														"#vps-net-slider .slider-wrap #node-"
																+ y)
														.removeClass("active");
											}

											setTotalValues(x);

										}
									});

				});
