/* Constants--not all browsers support the 'const' keyword. */
var AY_TAB_WIDTH = 119;
var AY_TAB_WIDTH_UNITS = "px";
var AY_SLIDER_INCREMENT = 17; /* 119 / 17 = 7 steps per tab */
var AY_ANIMATION_INTERVAL = 25; /* ms */

function _ay_slideTabInterval(oldTab, newTab, curr) {
	var gems = document.getElementById('nav_gems');
    if (newTab > oldTab) {
        if (parseFloat(gems.style.left) >= ((newTab * AY_TAB_WIDTH))) {
            return;
        }
        curr += AY_SLIDER_INCREMENT;
    } else {
        if (parseFloat(gems.style.left) <= ((newTab * AY_TAB_WIDTH))) {
            return;
        }
        curr -= AY_SLIDER_INCREMENT;
    }
    
    /* Shift the gems. */
    gems.style.left = curr + AY_TAB_WIDTH_UNITS;
    
    /* Shift the gems again after the interval. */
    var f = function() { _ay_slideTabInterval(oldTab, newTab, curr); };
	setTimeout(f, AY_ANIMATION_INTERVAL);
}

function ay_slideTab(oldTab, newTab) {
	if (oldTab != newTab) {
        var gems = document.getElementById('nav_gems');
		gems.style.left = (oldTab * AY_TAB_WIDTH) + AY_TAB_WIDTH_UNITS;
        var f = function() {
            _ay_slideTabInterval(oldTab, newTab, (oldTab * AY_TAB_WIDTH));
        };
		setTimeout(f, AY_ANIMATION_INTERVAL);
    }
}

function ay_slideTabWebKit(oldTab, newTab) {
    var gems = document.getElementById('nav_gems');
    if (gems)
        gems.style.left = (newTab * AY_TAB_WIDTH) + AY_TAB_WIDTH_UNITS;
}
