var loaded = [], imgs = [], cur = 0, loading = false;
var url = false;

function fireBackground(href) {
    $('#slides .activeslide').addClass('prevslide').removeClass('activeslide');
    $('#slides .nextslide').hide().attr('src', href).removeClass('nextslide').addClass('activeslide').fadeIn(500);
    $('#slides .prevslide').removeClass('prevslide').addClass('nextslide');
}

function loadImage(index) {
    if (jQuery.inArray(imgs[index], loaded) < 0) {
        loading = true;
        //$('#loading').show();
        $.cacheImage(imgs[index], {
            load : function (e) {
                loaded.push(imgs[index]);
                fireBackground(imgs[index]);
                loading = false;
                //$('#loading').hide();
            }
        });
    } else {
        fireBackground(imgs[index]);
    }
}

function shiftImage(direction) {
    if (!loading) {
        cur = cur + direction;
        if (cur < 0) {
            cur = imgs.length - 1;
        } else if (cur >= imgs.length) {
            cur = 0;
        }
        loadImage(cur);
    }
    return false;
}

function initGallery(images, start) {
    cur = typeof start == 'number' ? start : 0;
    imgs = images;
    loaded.push(imgs[cur]);
    $('#toggle_left').click(function() { shiftImage(-1); return false; });
    $('#toggle_right').click(function() { shiftImage(1); return false; });
}

jQuery().ready(function() {
    $('a').each(function() {
        $(this).bind('click', function() {
            if (this.blur) {this.blur();}
        });
    });
    $('.same-height').each(function() {
        if (!$(this).hasClass('fixedheight') && $(this).siblings('.same-height').length) {
            var boxes = $(this).siblings('.same-height').andSelf();
            var max = 0;
            $(boxes).each(function() {
                max = $(this).height() > max ? $(this).height() : max;
                $(this).addClass('fixedheight');
            });
            //alert(max);
            $(boxes).height(max);
        }
    });
    
    if ($('.radio input').length) {
        $('.radio input[type=radio]').each(function() {
            var act = $(this).attr('checked') ? ' active-radio' : '';
            var radio = $(this);
            var name = $(radio).attr('name').replace(/([\[\]])/gi, '');
            $('<div class="radiobox ' + name + act + '"></div>').insertBefore($(this).hide()).click(function() {
                if (!$(this).hasClass('active-radio')) {
                    $(this).parents('form:first').find('input[name=\''+ $(radio).attr('name') + '\']').removeAttr('checked');
                    $(radio).attr('checked', true);
                    
                    $('.' + name).removeClass('active-radio');
                    $(this).addClass('active-radio');
                }
            });
        });
    }
});
