/*
 * PrintedEasy Product page dynamic functions
 *
 * @copyright Copyright ©Falkland Press Ltd 2010
 * @author Karl Orbell
 */
var panelTypes=["default","environment"];var shortPantones=["C","M","Y","K"];var initProductElementsEvent;var optionSetAdditional;function initProductElements(c){var b=$(".options-group .input-radio");var a=$(".options-group .input-checkbox");var g=$(".options-group .input-select");var f=$(".show-hide-button a");var e=f.parents(".panel");var h=$(".pantone-input");if(c==null){c=false}b.add(a).parents("tr").children("td").removeClass("row-selected").addClass("row");b.add(a).parents("form").find(":checked").parents("tr").children("td").removeClass("row").addClass("row-selected");b.change(function(){var i=$(this).parents(".panel");var j=$(this).parents(".options-group");var k=$(this).parents("tr");if(this.checked&&k.children("td").hasClass("row")){j.find("td").filter(".row-selected").removeClass("row-selected").addClass("row");k.children("td").removeClass("row").addClass("row-selected");refreshProductPage(i)}});a.change(function(){var i=$(this).parents(".panel");var j=$(this).parents("tr");if(this.checked){if(j.children("td").hasClass("row")){j.children("td").removeClass("row").addClass("row-selected");refreshProductPage(i)}}else{if(j.children("td").hasClass("row-selected")){j.children("td").removeClass("row-selected").addClass("row");refreshProductPage(i)}}});if(jQuery.browser.msie){b.add(a).click(function(){$(this).change()})}g.change(function(){var i=$(this).parents(".panel");refreshProductPage(i)});var d={id:"",code:"",valid:false};h.bind("change keyup",function(){var j=$(this).val().toUpperCase();if(d.id==$(this).attr("id")&&d.code==j){return}lastSeenValid=d.valid;d={id:$(this).attr("id"),code:j,valid:false};var i=$(this).parents(".options-table").next(".pantoneswatch");if(j.length<3&&jQuery.inArray(j,shortPantones)==-1){i.css("background-color","#edeff5");if(lastSeenValid){refreshSummary()}return}var k={};k.pantoneCode=j;if(pantoneSearchURL){$.getJSON(pantoneSearchURL,k,function(l){if(l.result){i.css("background-color","#"+l.hex);d.valid=true}else{i.css("background-color","#edeff5")}refreshSummary();return false})}});if($("#businesscard-addpack").size()>0){$("#businesscard-addpack a").click(function(){if($(this).hasClass("disabled")){return false}var o=$(this).parents(".increase,.decrease").hasClass("increase");var q=$(this).parents(".single,.ten").hasClass("single");var n=$("#ptbl-multi-pack .input-radio:checked").val();if(n==undefined){return false}var s=n.split(/_/);var m=parseInt(s[1]);var k=parseInt($("#additional-packs").val());var r=m+(m==8?k:0);var j=r+(o?1:-1)*(q?1:10);if(j<=8){var l=s[0]+"_"+j+"_"+s[2];var i=$("#ptbl-multi-pack .input-radio[value="+l+"]");if(i.size()==0){i=$("#ptbl-multi-pack .input-radio[value^="+s[0]+"_"+j+"]:last")}$("#additional-packs").val(0);if(!o&&j==8){var p=$(this).parents(".panel");refreshProductPage(p)}else{i.attr("checked","checked").change()}}else{var p=$(this).parents(".panel");$("#additional-packs").val(j-8);if(m!=8){var l=s[0]+"_8_"+s[2];var i=$("#ptbl-multi-pack .input-radio[value="+l+"]");if(i.size()==0){i=$("#ptbl-multi-pack .input-radio[value^="+s[0]+"_8]:last")}i.attr("checked","checked").change()}else{refreshProductPage(p)}}return false})}if(!c){e.children(".initial-close").parents(".panel").each(function(){var i=$(this);var j=getPanelType(i);i.children(".body-"+j).hide();i.children("#statusProcessing, #statusInformation").hide();i.children(".header-"+j+"-open").removeClass("header-"+j+"-open initial-close").addClass("header-"+j+"-closed")});f.click(function(){var i=$(this).parents(".panel");var j=getPanelType(i);if(i.children("div").hasClass("header-"+j+"-open")){i.children(".body-"+j).hide();i.children("#statusProcessing, #statusInformation").hide();i.children(".header-"+j+"-open").removeClass("header-"+j+"-open").addClass("header-"+j+"-closed")}else{i.children(".header-"+j+"-closed").removeClass("header-"+j+"-closed").addClass("header-"+j+"-open");if(jQuery.browser.msie){i.find(".input-checkbox").parents("tr").children("td").removeClass("row-selected").addClass("row");i.find(".input-checkbox").parents("form").find(":checked").parents("tr").children("td").removeClass("row").addClass("row-selected")}i.children(".body-"+j).show()}return false})}if(typeof initProductElementsEvent=="function"){initProductElementsEvent(c)}}function getPanelType(b){for(pTypeIndex in panelTypes){var a=panelTypes[pTypeIndex];if(b.children(".body-"+a).size()){return a}}return"default"}function refreshProductPage(a){var e=getOptionSet();var d=$("#statusProcessing").parents(".panel").get(0);var c=getPanelType(a);$("#statusInformation").hide();if(d==a.get(0)){$("#statusProcessing").show();b()}else{$("#statusProcessing").insertAfter(a.find(".header-"+c+"-open")).slideDown("fast",b)}function b(){e.ajaxReload=1;var g=jQuery.param(e);var f=$("#product-form").attr("action");$.post(f,g,function(j){var i=$("<div/>").append(j);var n=[];if(refreshListIDText.length){n=refreshListIDText.split(",");n.push("#ptbl-vat")}var m=false;if(n.length>0){for(var k=0;k<n.length;k++){var l=n[k];var h=i.find(l);if(h.size()){$(l).replaceWith(h);m=true}}}else{var h=i.find("#product-form");if(h.size()){$("#product-form").replaceWith(h);m=true}}if(m){initProductElements(true)}$("#statusProcessing").stop().hide();$("#statusInformation").insertAfter(a.find(".header-"+c+"-open")).css("visibility","visible").show()},"html");return true}}function refreshSummary(){var a=getOptionSet();a.ajaxReload=1;a.summaryOnly=1;var c=jQuery.param(a);var b=$("#product-form").attr("action");$.post(b,c,function(f){var e=$("<div/>").append(f);var d=e.find("#product-summary");if(d.size()){$("#product-summary").replaceWith(d)}},"html")}function getOptionSet(){var a=$("#product-form :input");if(typeof optionSetAdditional=="object"){optionSet=jQuery.extend({},optionSetAdditional)}else{optionSet={}}a.each(function(){var b=this.type;if(b=="checkbox"||b=="radio"){if(this.checked){optionSet[this.name]=this.value}}else{optionSet[this.name]=this.value}});return optionSet}function addInitEventsListener(b){if(typeof b!="function"){return false}if(typeof initProductElementsEvent=="function"){var a=initProductElementsEvent;initProductElementsEvent=function(c){a(c);b(c)}}else{initProductElementsEvent=b}return false}$(document).ready(function(){$("#statusProcessing").add("#statusInformation").css("visibility","visible");initProductElements()});