$(document).ready(function()
{
 Cufon.replace('a.toplink, h1, h2, h3, #phone, #fax, #phone2, #fax2, .bell', { fontFamily: 'Bell MT', hover: true });
 
 //initialize shadowbox
 Shadowbox.init({
    handleOversize:     "resize",
    continuous:         true,
    handleUnsupported:  "remove",
    autoplayMovies:     false
});
 
 //check if the quantity is numeric
 $("#frm").submit( function () 
 { 
  if( isNaN( $("#quantity").val() ) )
  {
   alert("Please enter a numeric value for Quantity.");
   
   return false;
  }
  else if( $("#quantity").val() <= 0 )
  {
  
   alert("Please enter a value greater than 0 for Quantity.");
   
   return false;
  
  } 
 });
 
 
 $("#cartfrm").submit( function () 
 {
 
 var doSubmit = true;
 
  $("input[name*='quantity[]']").each(function()
  {  
  if( isNaN( $(this).val() ) )
  {
   alert("Please enter a numeric value for Quantity.");
   
   doSubmit  = false;
  }
  else if( $(this).val() <= 0 )
  {
  
   alert("Please enter a value greater than 0 for Quantity.");
   
   doSubmit  = false;
  
  }
  
  });
  
  return doSubmit;
   
 });


});

function MM_openBrWindow(theURL,winName,features) 
{ //v2.0
  window.open(theURL,winName,features);
}

function doAjax( url ) 
{

    $.ajaxq ("ajaxqueue", 
    {
        url: url,
        cache: false,
        success: function(json) {
        
        var obj = $.parseJSON( json );
        
                  
          //$("#msgtitle").html( obj.message_title );
          
         // $("#msgtext").html( obj.message );
         
         //set the price and the sizes
        var pricestr = '';
        
        
        
       if ( $('#price').length )
       { 
      $.each(obj['prices'], function(k, v) {
      
        if ( v['quantity'] > 1 )
        {
        
         pricestr += '<option value="'+v['mod_product_attributes_id']+'">$'+number_format(v['price_override'], 2, '.', '')+' '+v['unit_override']+' '+v['title']+' '+v['product_size']+'</option>';
        
        }
        else
        {
                
        pricestr += '<option value="'+v['mod_product_attributes_id']+'">$'+number_format(v['price_override'], 2, '.', '')+' '+v['title']+' '+v['product_size']+'</option>';
        
        }
               
      });
      
      $("#price").html( pricestr );
      }
      
       if ( $('#bigimg').length )
       { 
      //$.each(obj['images'], function(k, v) {
                
        //$("#bigimg").attr('src', 'images/'+v['srcBig']);
        $("#bigimg").attr('src', 'images/'+obj['images']['srcBig']);
        
        $("#bigimglink").attr('href', 'images/'+obj['images']['srcBig']);
        
        $("#bigimglink").attr('title', obj['images']['name']);
        
        $("#zoomlink").attr('href', 'images/'+obj['images']['srcBig']);
        
        $("#zoomlink").attr('title', obj['images']['name']);
        
        Shadowbox.clearCache();
        
        Shadowbox.setup();

               
      //});
      
      //change the selected attribute on the colour drop down
       $("#colour option").each(function () {
               
               if ( $(this).val() == obj.prodid)
               {
               
                $(this).attr("selected", "true");
               
               }
               else
               {
               
                 $(this).attr("selected", "");
                 
               } 
                
              });

      
      }
      
 
        }
    });
}

//javascript equivalent of PHP's number_format function
function number_format (number, decimals, dec_point, thousands_sep) 
{
    // http://kevin.vanzonneveld.net
    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://getsprink.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +     bugfix by: Howard Yeend
    // +    revised by: Luke Smith (http://lucassmith.name)
    // +     bugfix by: Diogo Resende
    // +     bugfix by: Rival
    // +      input by: Kheang Hok Chin (http://www.distantia.ca/)
    // +   improved by: davook
    // +   improved by: Brett Zamir (http://brett-zamir.me)
    // +      input by: Jay Klehr
    // +   improved by: Brett Zamir (http://brett-zamir.me)
    // +      input by: Amir Habibi (http://www.residence-mixte.com/)
    // +     bugfix by: Brett Zamir (http://brett-zamir.me)
    // +   improved by: Theriault
    // +      input by: Amirouche
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: number_format(1234.56);
    // *     returns 1: '1,235'
    // *     example 2: number_format(1234.56, 2, ',', ' ');
    // *     returns 2: '1 234,56'
    // *     example 3: number_format(1234.5678, 2, '.', '');
    // *     returns 3: '1234.57'
    // *     example 4: number_format(67, 2, ',', '.');
    // *     returns 4: '67,00'
    // *     example 5: number_format(1000);
    // *     returns 5: '1,000'
    // *     example 6: number_format(67.311, 2);
    // *     returns 6: '67.31'
    // *     example 7: number_format(1000.55, 1);
    // *     returns 7: '1,000.6'
    // *     example 8: number_format(67000, 5, ',', '.');
    // *     returns 8: '67.000,00000'
    // *     example 9: number_format(0.9, 0);
    // *     returns 9: '1'
    // *    example 10: number_format('1.20', 2);
    // *    returns 10: '1.20'
    // *    example 11: number_format('1.20', 4);
    // *    returns 11: '1.2000'
    // *    example 12: number_format('1.2000', 3);
    // *    returns 12: '1.200'
    // *    example 13: number_format('1 000,50', 2, '.', ' ');
    // *    returns 13: '100 050.00'
    // Strip all characters but numerical ones.
    number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
    var n = !isFinite(+number) ? 0 : +number,
        prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
        sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
        dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
        s = '',
        toFixedFix = function (n, prec) {
            var k = Math.pow(10, prec);
            return '' + Math.round(n * k) / k;
        };
    // Fix for IE parseFloat(0.55).toFixed(0) = 0;
    s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
    if (s[0].length > 3) {
        s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
    }
    if ((s[1] || '').length < prec) {
        s[1] = s[1] || '';
        s[1] += new Array(prec - s[1].length + 1).join('0');
    }
    return s.join(dec);
}

