window.addEvent('load',function(){
    if( $('InputCountry') ){
        $('InputCountry').addEvent('change',function(){
            var pars = $('InputCountry').name+'='+$('InputCountry').options[$('InputCountry').selectedIndex].value;
            if ($('InputCountry').options[$('InputCountry').selectedIndex].value != ""){
                new Ajax( '/ajax/select_province.php', {
                    method: 'post',
                    postBody: pars,
                    update: $('InputProvinceDiv')
                } ).request();
            }
        });
    }
    if( $('sq') ){
         $('sq').value='type keyword here';
        $('sq').addEvent('focus',function(){
            $('sq').value='';
           /* var pars = $('InputCountry').name+'='+$('InputCountry').options[$('InputCountry').selectedIndex].value;
            if ($('InputCountry').options[$('InputCountry').selectedIndex].value != ""){
                new Ajax( '/ajax/select_province.php', {
                    method: 'post',
                    postBody: pars,
                    update: $('InputProvinceDiv')
                } ).request();
            }*/
        });
    }

    if ($('ShoppingCartForm') && $('same_')){
        var selects=[
        'country',
        'province'
        ];
        var fields=[
        'fname',
        'lname',
        'address',
        'city',
        'postal_code',
        'email',
        'taxid',
        'phone'
        ];

        $('same_').addEvent('click',function(){
            if($('same_').checked){
                fields.each(function(inp){	$('S_'+inp).value = $('B_'+inp).value; });
                selects.each(function(inp){
                    for(i=$('B_'+inp).options.length-1;i>=0;i--){
                        if ($('B_'+inp).options[i].selected == true){
                            $('S_'+inp).options[i].selected = true;
                        }
                    }
                });
            };
        });
    };

    if ( $('submit_clear') ){
        $('submit_clear').addEvent('click',function(evt){
            var evt = new Event(evt).stop();
            var form = $('submit_clear');
            do {
                form = form.getParent();
            } while ( form.tagName != 'FORM' && form.tagName != 'BODY' )
            if ( form.tagName != 'BODY' ){
                //get form identifier
                var formId = '#'+form.id;
                // clear form input text / password / checkbox
                $$(formId+' input[type=text]').each(function(el){ el.value = ''; });
                $$(formId+' input[type=password]').each(function(el){ el.value = ''; });
                $$(formId+' input[type=checkbox]').each(function(el){ el.checked = false; });
                // clear form select
                $$(formId+' select').each(function(el){ el.selectedIndex = 0; });
            }
        });
    }

    if ( $('ShippingCharge') ){

        $('ShippingCharge').addEvent('click',function(){
            var iPostalCodeDiv = new Element('div').setProperty('id','iPostalCodeDiv');
            var iPostalCode = new Element('input').setProperties({'type':'text','id':'iPostalCode'}).injectInside(iPostalCodeDiv);

            var subButton = new Element('input').setProperties({'class':'InputButton','type':'button','id':'btnSubPC'});
            subButton.value = 'Submit';

            var cancelButton = new Element('input').setProperties({'class':'InputButton','type':'button','id':'btnCanPC'});
            cancelButton.value = 'Go Back';
            subButton.addEvent('click', function(e){
                var pars = 'postal_code='+iPostalCode.value;
                $('ShippingCharge').setHTML(' Processing... ');
                new Ajax( '/ajax/calcShipPrice.php', {
                    method: 'post',
                    postBody: pars,
                    onComplete: function(rsp){
                        if (rsp == ''){
                            $('ShippingCharge').setHTML('Incorect Zip/Postal Code');
                        }else{
                            var par = $('ShippingCharge').getParent();;
                            par.setStyle('height','auto');
                            par.setHTML(rsp);
                            if ( $('CartShippingTotal') ){
                                var sub = $('CartSubTotal').innerHTML.replace('$','').toFloat()
                                var sht = $('CartShippingTotal').innerHTML.replace('$','').toFloat();
                                var tax = ($('CartTax'))?$('CartTax').innerHTML.replace('$','').toFloat():0;
                                var total = sub + sht + tax;
                                if ( total > 0 ){
                                    total = Math.floor( (total) * 100) / 100;
                                    $('CartTotal').setHTML('$'+total.toFixed(2));
                                }
                            }
                            if ( $('ShippingTypeSelect') ){
                                bindShippingSelectType();
                            }
                        }
                    }
                }).request();
            });

            var boxHtml = new MooPrompt('Enter your Shipping Zip/Postal Code', iPostalCodeDiv, {
                buttons: 2,
                button1: subButton,
                button2: cancelButton,
                width: 240,
                height: 75
            });

        });
    }

    if ( $('ShippingTypeSelect') ){
        bindShippingSelectType();
    }

    if ( $('perpage_by') || $('order_by') ){
        bindRullerOptions();
    }
});

function bindShippingSelectType(){
    $('ShippingTypeSelect').addEvent('change',function(){
        $('ShippingTypeSelect').setProperty('disabled',true);
        var coords = $('ShippingTypeSelect').getCoordinates();
        var div = new Element('div').setHTML('Processing...').setProperty('id','STProcessing').injectAfter( $('ShippingTypeSelect') );
        div.setStyles({
        'position':'absolute',
        'left' : (coords.left-3)+'px',
        'top'  : coords.top +'px',
        'width': coords.width+'px'
        });

        $('ShippingTypeSelect').setStyle('display','none');
        div.setStyle('display','');

        pars = "usecookie=1&shipping_type="+$('ShippingTypeSelect').value;
        new Ajax( '/ajax/calcShipPrice.php', {
            method: 'post',
            postBody: pars,
            onComplete: function(rsp){
                $('ShippingTypeSelect').setProperty('disabled',false);
                $('ShippingTypeSelect').setStyle('display','');
                div.setStyle('display','none');
                div.remove();

                if (rsp == ''){
                    $('CartShippingTotal').setHTML('Incorect Zip/Postal Code');
                }else{
                    $('ShippingTotal').setHTML(rsp);
                    if ( $('CartShippingTotal') ){
                        var sub = $('CartSubTotal').innerHTML.replace('$','').toFloat()
                        var sht = $('CartShippingTotal').innerHTML.replace('$','').toFloat();
                        var tax = ($('CartTax'))?$('CartTax').innerHTML.replace('$','').toFloat():0;
                        var total = sub + sht + tax;
                        if ( total > 0 ){
                            total = Math.floor( (total) * 100) / 100;
                            $('CartTotal').setHTML('$'+total.toFixed(2));
                        }
                    }
                }
            }
        }).request();
    });
}

function orderByChange(id, query){
    var select = document.getElementById(id);

    window.location = window.location.pathname + '?' + query +
    '&order_by=' + select.options[select.selectedIndex].value;
}

function bindRullerOptions(){
    var opt = [];
    var map = ['order_by','perpage'];
    $$('.paging').each(function(rul,row){
        opt[row]=[];
        $ES('select', rul).each(function(sel){
            opt[row][opt[row].length]=sel;
            sel.addEvent('change',function(ev){
                ev = new Event(ev).stop();
                var src = window.location.search;
                if (src.length>1){
                    src = src.substr(1);
                    var parts = src.split('&');
                    var pairs = {};
                    $each(parts,function(item,i){
                        if (item!=''){
                            item = item.split('=');
                            pairs[item[0]]=(item[1]||'');
                        }
                    });
                }else{
                    var pairs = {};
                    src='';
                }

                $each(opt[row],function(el){
                    if (el.getProperty('name')){
                        pairs[el.getProperty('name')] = el.getProperty('value');
                    }
                });
                str=Object.toQueryString(pairs);
                str=str.replace('%2B','+');
                window.location.search = '?'+str;
            });
        });
    });
}

window.addEvent('domready',function(){
    hideSearchForm();
});

function hideSearchForm(){
    var formDiv = $('SearchForm');
    if (formDiv && formDiv.getNext()){
        var n = (formDiv.getNext().getNext() || null);
        if (n && n.id && n.id!='divNoResults'){
            formDiv.setStyle('display','none');
        }
    }
}