var mediaGallerySet = 0;
var hideStuffSet = 0;
var multipleSteps = 0; 
var hideQty = 0;
var i = 0;
var loadTimeout; 
var lastColorSelected = "";
function callSwapMediaGallery(colorId){
    if(mediaGallerySet)
        swapMediaGalleryImages('product_page_' + colorId);
    else
        setTimeout('callSwapMediaGallery(\'product_page_' + colorId + '\')', 100);
        
    return; 
}

function productOptions() {
    if(!colorId) {
        colorId = $$('.color-select option')[1].value;
        $$('.color-select select')[0].value = colorId;
    } else {
        var dd = $('edit_' + uniqId + '_' + optId );
        var theSelect = dd.getElementsBySelector('select');
        theSelect[0].value = colorId;
    }

    //-- only do this stuff on the product page
    if ($$('body')[0].hasClassName('catalog-product-view')) {
        // swapMediaGalleryImages('product_page_' + colorId);
        callSwapMediaGallery(colorId);
        
        //-- update the order sample link
        updateOrderSampleLink(colorId);
    } 

    if($('checkmark_' + uniqId + '_' + colorId)) $('checkmark_' + uniqId + '_' + colorId).addClassName('active').setStyle({display:'block'});

    var checkmarkEl,
        selectId;
        
    //-- on hover show check mark
    $$('.swatch .the-color', '.swatch .checkmark').invoke('observe', 'mouseover', function(){
        checkmarkEl = (this.hasClassName('checkmark')) ? this : this.siblings()[0];
        checkmarkEl.show();

    }).invoke('observe', 'mouseout', function(){
        checkmarkEl = (this.hasClassName('checkmark')) ? this : this.siblings()[0];
        if(!checkmarkEl.hasClassName('active')) checkmarkEl.hide();

    }).invoke('observe', 'mousedown', function(){
        checkmarkEl = (this.hasClassName('checkmark')) ? this : this.siblings()[0];
        checkmarkEl.setStyle({top:'-2px', right:'-2px'});

    }).invoke('observe', 'click', function(){
		lastColorSelected = this.parentNode.title;
        checkmarkEl = (this.hasClassName('checkmark')) ? this : this.siblings()[0];
        checkmarkEl.setStyle({top:'-3px', right:'-3px'});

        //-- set checkmark (give class active)
        $$('.swatch .checkmark').invoke('removeClassName', 'active').invoke('hide');
        checkmarkEl.addClassName('active').show();

        //-- select respective option
        // $$('.color-select select')[0].value = checkmarkEl.innerHTML;
        checkmarkEl.up(2).getElementsBySelector('select')[0].value = checkmarkEl.innerHTML;

        //-- only do this stuff if we are on the product page
        if ($$('body')[0].hasClassName('catalog-product-view')) {
            //-- switch the image sets
        	swapMediaGalleryImages('product_page_' + $$('.color-select select')[0].value);

            //-- update the order sample link
            updateOrderSampleLink($$('.color-select select')[0].value);        	
        }
    });


    if(Prototype.Browser.IE6) {
        hideStuff();
    }
    
    return true;
}

function hideStuff() {
    if(!hideStuffSet) return setTimeout('hideStuff()',  100);
    
    if(multipleSteps) {
        if($$('.link-wishlist')[0] && $$('.link-wishlist')[0].up()) $$('.link-wishlist')[0].up().addClassName('personalized');
        if($$('.order-sample')[0]) $$('.button-set')[0].insert($$('.order-sample')[0]);
        if($$('.link-wishlist')[0]) $$('.button-set')[0].insert($$('.link-wishlist')[0]);
        if($$('.product-options-bottom')[0]) $$('.button-set').last().insert($$('.product-options-bottom')[0]);
        showHideOptions(false, curPageId);
    } else {
        if($$('.no-options-wishlist')[0] && $$('.add-to-cart')[0]) {
            $$('.add-to-cart')[0].insert($$('.no-options-wishlist')[0]).addClassName('no-options-add').insert('<span class="no-options-or">OR</span>', {after:$$('.button-cart')[0]});
            if(Prototype.Browser.IE6 && $$('.no-options-or')[1]) {
                $$('.no-options-or')[0].setStyle({display:'none'});
            }
        }
    }
    
    if($('qty_wrapper')) {
        if(hideQty){
            $('qty_wrapper').hide();
        } else {
            //insert it below pricebox
            if($$('.price-box').length > 0) {
                Element.insert($$('.price-box')[0], {after:$('qty_wrapper')});
            }
        }
    } 
    
    
    
    return;
}

//-- On LOAD
Element.observe(Prototype.Browser.IE ? window : document, Prototype.Browser.IE ? 'load' : 'dom:loaded', function(event) {
    if ($$('dd.choose_color')[0]) { 
        productOptions();
    }
    
    if(CUR_PAGE != 'checkout') {
        inputFocus(focusArray);
    }

    hideStuff();
});

document.observe('dom:loaded', function(event) {
    //-- required address
    if(!Prototype.Browser.IE8){
        $$('label').each(function(el){
            var el = $(el);
            var str = el.innerHTML;    
            var elUp = (el.up()) ? el.up() : false;
            if(elUp) {
                if(str.match(/return address.*envelopes/) || str.match(/response address.*envelopes/)) {
                    elUp.writeAttribute('id', 'return_addr_radio_dt');
                    if(elUp.next()) {
                        elUp.next().writeAttribute('id', 'return_addr_radio_dd');
                    }
                }
        
                if(str.match(/Enter.*address.*envelope/)) {
                    elUp.writeAttribute('id', 'return_addr_textarea_dt')
                        .setStyle({visibility:'hidden', height:'0', margin:'0'});
                    if(elUp.next()) {
                        elUp.next().writeAttribute('id', 'return_addr_textarea_dd')
                            .setStyle({visibility:'hidden', height:'0', margin:'0'});
                    }
                }
            }
        });
    
        $$('#return_addr_radio_dd .radio').each(function(el){
            var el = $(el);
            var str = (el.next()) ? el.next().innerHTML : '';
            el.observe('change', function(){
                if(str.match(/(Yes)|(yes)/)) {
                    $$('#return_addr_textarea_dd').invoke('setStyle', {visibility:'visible', height:'auto', marginBottom:'20px'});            
                    $$('#return_addr_textarea_dt').invoke('setStyle', {visibility:'visible', height:'auto', marginBottom:'8px'});            
                } else {
                    $$('#return_addr_textarea_dd','#return_addr_textarea_dt').invoke('setStyle', {visibility:'hidden', height:'0', margin:'0'});
                    if($$('#return_addr_textarea_dd textarea').length > 0) {$$('#return_addr_textarea_dd textarea')[0].value = '';}
                }
            }).observe('click', function(){
                if(str.match(/(Yes)|(yes)/)) {
                    $$('#return_addr_textarea_dd').invoke('setStyle', {visibility:'visible', height:'auto', marginBottom:'20px'});            
                    $$('#return_addr_textarea_dt').invoke('setStyle', {visibility:'visible', height:'auto', marginBottom:'8px'});            
                } else {
                    $$('#return_addr_textarea_dd','#return_addr_textarea_dt').invoke('setStyle', {visibility:'hidden', height:'0', margin:'0'});            
                    if($$('#return_addr_textarea_dd textarea').length > 0) {$$('#return_addr_textarea_dd textarea')[0].value = '';}
                }
            });
        });
    }
});

