/**
 * Ribbon class
 * @author Razor (coyc00@gmail.com)
 */


function ribbon(id, id_fwd, id_rwd, cells_count, cells_visible, cell_lenght)
{
	var cells_count = cells_count;
	var cells_visible = cells_visible;
	var cell_lenght = cell_lenght;
	var el = jQuery('#'+id);
	var fwd = jQuery('#'+id_fwd);
	var rwd = jQuery('#'+id_rwd);
	var cur_cell = 0;
	var locked = 0;


	var forward = function() {
		if (locked || cur_cell >= (cells_count - cells_visible)) return;
		move(-cell_lenght);
		cur_cell++;
		show_hide_buttons();
	}


	var rewind = function() {
		if (locked || cur_cell <= 0) return;
		move(cell_lenght);
		cur_cell--;
		show_hide_buttons();
	}


	var move = function(value) {
		locked = 1;
		var cur_pos = parseInt(el.css("left").replace('px',''));
		el.animate({left: cur_pos + value}, 'normal', 'linear', function() {locked = 0;});
	}


	var show_hide_buttons = function() {
		if (cur_cell < (cells_count - cells_visible)) fwd.show();
		else fwd.hide();

		if (cur_cell == 0) rwd.hide();
		else rwd.show();
	}




	// ----- CONSTRUCTOR:

	jQuery('a', fwd).bind("click", forward);
	jQuery('a', rwd).bind("click", rewind);

	show_hide_buttons();
}


