Number.prototype.formatMoney = function(c, d, t)
{
  var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
  return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
};

var colors = new Array();

colors[52] = '';

colors[80] = '';

var prices = new Array();

prices[41] = new Array();

prices[41][52] = new Array();

prices[41][52][63] = new Array();

prices[41][52][82] = new Array();

prices[41][52][83] = new Array();

prices[41][52][84] = new Array();

prices[41][52][85] = new Array();

prices[41][52][86] = new Array();

prices[41][52][87] = new Array();

prices[41][52][88] = new Array();

prices[41][52][89] = new Array();

prices[41][52][90] = new Array();

prices[41][52][91] = new Array();

prices[41][52][92] = new Array();

prices[41][52][93] = new Array();

prices[41][52][94] = new Array();

prices[41][80] = new Array();

prices[41][80][63] = new Array();

prices[41][80][82] = new Array();

prices[41][80][83] = new Array();

prices[41][80][84] = new Array();

prices[41][80][85] = new Array();

prices[41][80][86] = new Array();

prices[41][80][87] = new Array();

prices[41][80][88] = new Array();

prices[41][80][89] = new Array();

prices[41][80][90] = new Array();

prices[41][80][91] = new Array();

prices[41][80][92] = new Array();

prices[41][80][93] = new Array();

prices[41][80][94] = new Array();
prices[41][52][63] = {
  price: 92.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][82] = {
  price: 134.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][83] = {
  price: 176.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][84] = {
  price: 218.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][85] = {
  price: 260.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][86] = {
  price: 302.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][87] = {
  price: 344.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][88] = {
  price: 386.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][89] = {
  price: 428.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][90] = {
  price: 470.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][91] = {
  price: 890.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][92] = {
  price: 1310.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][93] = {
  price: 1730.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][52][94] = {
  price: 2150.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][63] = {
  price: 78.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][82] = {
  price: 106.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][83] = {
  price: 134.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][84] = {
  price: 162.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][85] = {
  price: 190.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][86] = {
  price: 218.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][87] = {
  price: 246.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][88] = {
  price: 274.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][89] = {
  price: 302.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][90] = {
  price: 330.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][91] = {
  price: 610.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][92] = {
  price: 890.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][93] = {
  price: 1170.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[41][80][94] = {
  price: 1450.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};


prices[57] = new Array();

prices[57][52] = new Array();

prices[57][52][63] = new Array();

prices[57][52][82] = new Array();

prices[57][52][83] = new Array();

prices[57][52][84] = new Array();

prices[57][52][85] = new Array();

prices[57][52][86] = new Array();

prices[57][52][87] = new Array();

prices[57][52][88] = new Array();

prices[57][52][89] = new Array();

prices[57][52][90] = new Array();

prices[57][52][91] = new Array();

prices[57][52][92] = new Array();

prices[57][52][93] = new Array();

prices[57][52][94] = new Array();

prices[57][80] = new Array();

prices[57][80][63] = new Array();

prices[57][80][82] = new Array();

prices[57][80][83] = new Array();

prices[57][80][84] = new Array();

prices[57][80][85] = new Array();

prices[57][80][86] = new Array();

prices[57][80][87] = new Array();

prices[57][80][88] = new Array();

prices[57][80][89] = new Array();

prices[57][80][90] = new Array();

prices[57][80][91] = new Array();

prices[57][80][92] = new Array();

prices[57][80][93] = new Array();

prices[57][80][94] = new Array();
prices[57][52][63] = {
  price: 71.60,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][63] = {
  price: 64.40,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][82] = {
  price: 92.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][82] = {
  price: 78.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][83] = {
  price: 113.60,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][83] = {
  price: 92.40,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][84] = {
  price: 134.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][84] = {
  price: 106.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][85] = {
  price: 155.60,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][85] = {
  price: 120.40,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][86] = {
  price: 176.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][86] = {
  price: 134.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][87] = {
  price: 197.60,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][87] = {
  price: 148.40,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][88] = {
  price: 218.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][88] = {
  price: 162.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][89] = {
  price: 239.60,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][89] = {
  price: 176.40,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][90] = {
  price: 260.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][90] = {
  price: 190.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][91] = {
  price: 470.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][91] = {
  price: 330.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][92] = {
  price: 680.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][92] = {
  price: 470.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][93] = {
  price: 890.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][93] = {
  price: 610.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][52][94] = {
  price: 1100.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[57][80][94] = {
  price: 750.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};


prices[70] = new Array();

prices[70][52] = new Array();

prices[70][52][63] = new Array();

prices[70][52][82] = new Array();

prices[70][52][83] = new Array();

prices[70][52][84] = new Array();

prices[70][52][85] = new Array();

prices[70][52][86] = new Array();

prices[70][52][87] = new Array();

prices[70][52][88] = new Array();

prices[70][52][89] = new Array();

prices[70][52][90] = new Array();

prices[70][52][91] = new Array();

prices[70][52][92] = new Array();

prices[70][52][93] = new Array();

prices[70][52][94] = new Array();

prices[70][80] = new Array();

prices[70][80][63] = new Array();

prices[70][80][82] = new Array();

prices[70][80][83] = new Array();

prices[70][80][84] = new Array();

prices[70][80][85] = new Array();

prices[70][80][86] = new Array();

prices[70][80][87] = new Array();

prices[70][80][88] = new Array();

prices[70][80][89] = new Array();

prices[70][80][90] = new Array();

prices[70][80][91] = new Array();

prices[70][80][92] = new Array();

prices[70][80][93] = new Array();

prices[70][80][94] = new Array();
prices[70][52][63] = {
  price: 89.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][63] = {
  price: 76.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][82] = {
  price: 128.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][82] = {
  price: 102.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][83] = {
  price: 167.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][83] = {
  price: 128.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][84] = {
  price: 206.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][84] = {
  price: 154.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][85] = {
  price: 245.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][85] = {
  price: 180.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][86] = {
  price: 284.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][86] = {
  price: 206.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][87] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][87] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][88] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][88] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][89] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][89] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][90] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][90] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][91] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][91] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][92] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][92] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][93] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][93] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][52][94] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};
prices[70][80][94] = {
  price: 0.00,
  page_count_min_price: 0.00,
  page_count_max_price: 0.00,
  page_count_enabled: false,
  page_count_min: 0,
  page_count_max: 0,
  page_count_step: 0
};


var quantities = new Array();

quantities[63] = 5;

quantities[82] = 10;

quantities[83] = 15;

quantities[84] = 20;

quantities[85] = 25;

quantities[86] = 30;

quantities[87] = 35;

quantities[88] = 40;

quantities[89] = 45;

quantities[90] = 50;

quantities[91] = 100;

quantities[92] = 150;

quantities[93] = 200;

quantities[94] = 250;

var discount_factor = 1.0;
var tax_rate        = 0.0;
var shipping_cost   = 0.0;
var tax             = 0.0;
var subtotal        = 0;

function displayPrice( target, value )
{
  $(target).innerHTML = '$' + value.formatMoney(2, ".", ",");
}

function updateGrandTotal()
{ displayPrice( 'grand_total', tax + subtotal + shipping_cost ); }

function updateTax()
{
  if ( tax_rate == 0.0 )
    {
	  tax = 0.0;
      $('tax_group').hide();
	}
  else
    {
	  tax = subtotal * tax_rate;
	  displayPrice( 'sales_tax', tax );
	  $('tax_group').show();
	}
}

function updateSubtotal()
{
  price = prices[$('project_product_size_id').getValue()][$('project_product_color_id').getValue()][$('project_product_quantity_id').getValue()];

  if (price.page_count_enabled)
  {
    $('page_count_view').style.display = "block";
    page_count = parseInt($('project_page_count').value);
    if (page_count > price.page_count_max || isNaN(page_count))
    {
      page_count = price.page_count_max;
      subtotal = price.page_count_max_price;
    }
    else if (page_count < price.page_count_min)
    {
      page_count = price.page_count_min;
      subtotal = price.page_count_min_price;
    }
    else
    {
      for (var i = price.page_count_min; i <= price.page_count_max; i += price.page_count_step)
      {
        if ( page_count <= i )
        {
          page_count = i;
          break;
        }
      }
      price_per_step = (price.page_count_max_price - price.page_count_min_price) / ((price.page_count_max - price.page_count_min) / price.page_count_step);
      subtotal = price.page_count_min_price + (price_per_step * (page_count - price.page_count_min) / price.page_count_step);
    }

    if ( !isNaN(page_count) )
      $('project_page_count').value = page_count;
  }
  else
  {
    $('page_count_view').style.display = "none";
    subtotal = price.price;
  }

  subtotal  = ProductCustoms.addProductCustoms(subtotal);
  subtotal *= discount_factor;
/*
  $('subtotal').innerHTML = subtotal.formatMoney(2, ".", ",");
*/
  displayPrice( 'subtotal', subtotal );
  updateTax();
  updateGrandTotal();
}

var ProductCustoms = new Object();
ProductCustoms["addProductCustoms"] = function(price)
{
    return price;
}

function updateColorImage()
{
  element = $('project_product_color_id');
  if (colors[element.getValue()] != "")
    $('product_color_image').innerHTML = '<div class="form-box"><div class="form-img"><img src="' + colors[element.getValue()] + '"></div></div>';
  else
    $('product_color_image').innerHTML = '';
}

function updateCustomItemImage(custom_id)
{
  element = $('product_custom_' + custom_id);
  if (customs[custom_id][element.getValue()].image != "")
    $('product_custom_' + custom_id + '_image').innerHTML = '<div class="form-box"><div class="form-img"><img src="' + customs[custom_id][element.getValue()].image + '"></div></div>';
  else
    $('product_custom_' + custom_id + '_image').innerHTML = '';
}

calculationDisable = function() {
  $$('a.calculate').invoke('hide');
  $$('img.calculate').invoke('show');
}

calculationEnable = function() {
  $$('a.calculate').invoke('show');
  $$('img.calculate').invoke('hide');
}

shippingSelect = function(url) {
  calculationDisable();
  new Ajax.Request(url, {
    method:'put',
    asynchronous:true,
    evalScripts:true,
    parameters:Form.serialize($('calculate_form'))}
  );
}

onShippingSelect = function(cost) {
  calculationEnable();
  $('cost').innerHTML = "$0.00";
  if (isNaN(cost)) return;
  $('cost').innerHTML = "$" + cost.toFixed(2);

  shipping_cost = cost;

  updateTax();
  updateGrandTotal();
}


uploadDisable = function() {
  $$('input[type=submit]').invoke('hide');
  $$('img.upload').invoke('show');
}

uploadEnable = function() {
  $$('input[type=submit]').invoke('show');
  $$('img.upload').invoke('hide');
}


document.observe('dom:loaded', function() {
  $('project_product_color_id').observe('change', function() {
    updateColorImage();
    updateSubtotal();
  });
  $('project_product_quantity_id').observe('change', updateSubtotal );

  updateSubtotal();
  updateColorImage();

  
    new Ajax.Request('/product_sizes/update_customs_dropdowns?id=41', {asynchronous:true, evalScripts:true, method:'get', parameters:'authenticity_token=' + encodeURIComponent('yAcj9YvJ8Q4WfzqY4vqI27XtjEH8G5aur6JGUgInq9E=')})
  

  /* $('tab1').setStyle('display:block'); */
  $$('a.calculate').invoke('toggle');
});
