var IE = document.all ? true : false;

var drag_busy = false;

var arrow_move_dir = 1;
var arrow_move_speed = 0;
var arrow_move_accel = 1;
var arrow_move_speed_max = 40;
var arrow_interval_delay = 25;
var arrow_interval;

var min_drag_x = 21;
var max_drag_x = 866;
var total_drag = max_drag_x - min_drag_x;
var x_offset;
var a = 1;
var b;

function containerInit() {
	c_width = Element.getWidth('container');
	pc_width = Element.getWidth('pc');
	if(pc_width > c_width) {
		obj = elem('container-slider');
		obj.style.visibility = 'visible';
		obj.style.display = 'block';
	} else {
		obj = elem('container');
		obj.style.height = '210px';
	}
}
function arrowLeft() {
	arrow_move_dir = -1;
	
	arrowStart();
}
function arrowRight() {
	arrow_move_dir = 1;
	
	arrowStart();
}
function arrowStart() {
	drag_busy = true;
	arrow_interval = setTimeout("arrowUpdate()", arrow_interval_delay);
	
	if (IE) {
		document.attachEvent("onmouseup", arrowStop);
		//window.event.cancelBubble = true;
		//window.event.returnValue = false;
	} else {
		document.addEventListener("mouseup", arrowStop, true);
		//event.preventDefault();
	}
}
function arrowUpdate() {
	arrow_move_speed += arrow_move_accel;
	if (arrow_move_speed >= arrow_move_speed_max)
		arrow_move_speed = arrow_move_speed_max;
	
	speed = arrow_move_dir * arrow_move_speed;
	
	obj = elem('scroll-drag');
	obj_x = obj.style.left;
	temp = obj_x.replace(/px/, "");
	obj_x = parseInt(temp);
	
	final_x = obj_x + speed;
	
	if (final_x < min_drag_x)
		final_x = min_drag_x;
	else if (final_x > max_drag_x)
		final_x = max_drag_x;
	
	obj.style.left = final_x + "px";
	
	perc = final_x / total_drag;
	
	updateDrag(perc);
	arrow_interval = setTimeout("arrowUpdate()", arrow_interval_delay);
}
function arrowStop() {
	arrow_move_speed = 0;
	clearInterval(arrow_interval);
	if (IE) {
		document.detachEvent("onmouseup", arrowStop);
	} else {
		document.removeEventListener("mouseup", arrowStop, true);
	}
	drag_busy = false;
}

function dragStart(event) {
	drag_busy = true;
	obj = elem('scroll-drag');
	
	if (IE)
		mouse_x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
	else
		mouse_x = event.clientX + window.scrollX;
	
	obj_x = obj.style.left;
	temp = obj_x.replace(/px/, "");
	obj_x = parseInt(temp);
	
	x_offset = mouse_x - obj_x;
	
	if (IE) {
		document.attachEvent("onmousemove", dragMove);
		document.attachEvent("onmouseup", dragStop);
		window.event.cancelBubble = true;
		window.event.returnValue = false;
	} else {
		document.addEventListener("mousemove", dragMove, true);
		document.addEventListener("mouseup", dragStop, true);
		event.preventDefault();
	}
}

function dragMove(event) {
	obj = elem('scroll-drag');
	
	if (IE)
		mouse_x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
	else
		mouse_x = event.clientX + window.scrollX;
	
	final_x = mouse_x - x_offset;
	
	if (final_x < min_drag_x)
		final_x = min_drag_x;
	else if (final_x > max_drag_x)
		final_x = max_drag_x;
	
	obj.style.left = final_x + "px";
	
	perc = final_x / total_drag;
	
	updateDrag(perc);
	
	if (IE) {
		window.event.cancelBubble = true;
		window.event.returnValue = false;
	} else
		Event.preventDefault();
}

function dragStop(event) {
	if (IE) {
		document.detachEvent("onmousemove", dragMove);
		document.detachEvent("onmouseup", dragStop);
	} else {
		document.removeEventListener("mousemove", dragMove, true);
		document.removeEventListener("mouseup", dragStop, true);
	}
	drag_busy = false;
}

function updateDrag(perc) {
	max_l = Element.getLeft('container')
	total_dist = Element.getWidth('container') - Element.getWidth('pc');
	
	junk = ((0 - total_dist) / 42.109375);
	new_l = total_dist * perc + junk;
	Element.setLeft('pc', new_l);
	if(a == 2) {
		a == 2;
		alert(total_dist);
	}
}

function dragJump(event) {
	if (drag_busy == false) {
		obj = elem('scroll-drag');
		
		if (IE)
			mouse_x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
		else
			mouse_x = event.clientX + window.scrollX;
		
		w = Element.getWidth('scroll-drag');
		slider_l = Element.getLeft('container-slider');
		final_x = mouse_x - slider_l - w / 2;
		
		if (final_x < min_drag_x)
			final_x = min_drag_x;
		else if (final_x > max_drag_x)
			final_x = max_drag_x;
		
		obj.style.left = final_x + "px";
		
		perc = final_x / total_drag;
		
		updateDrag(perc);
	}
}