$(document).ready(function(){form_to_process=$("#"+form_id);preform_on_load();$("#reset").click(function(){total_price=0;for(var B=0;B<radio_group_select_option_tracker.length;B++){radio_group_select_option_tracker[B].old_element=null}for(var A=0;A<elements.length;A++){elements[A].send_to_paypal=false}validator.resetForm()});$("#printForm").click(function(){if(!$(this.form).valid()){display_error_warnings();return false}if(elements_to_hide_on_print){for(var A=0;A<elements_to_hide_on_print.length;A++){$(elements_to_hide_on_print[A]).hide()}}var B=$("#navandcontent").css("width");$("#navandcontent").css("width","100%");window.print();if(elements_to_hide_on_print){for(A=0;A<elements_to_hide_on_print.length;A++){$(elements_to_hide_on_print[A]).show()}}$("#navandcontent").css("width",B)});form_to_process.submit(function(){var C="",J="",B=1,D='<div id="shoppingCartWindow" class="jqmWindow">';if(submit_form_to_paypal==true){submit_form_to_paypal=false;return true}if(!$(this).valid()){display_error_warnings();return false}if($("#shoppingCartWindow").length>0){$("#shoppingCartWindow").remove()}if($("."+hidden_product_class).length>0){if(debug){$("#formResults").html($("#formResults").html()+"<br />Removing hidden products: "+$("."+hidden_product_class).length)}$("."+hidden_product_class).remove()}for(var I=0,L=false;I<elements.length;I++){if(elements[I].send_to_paypal==true){L=true;break}}if(!L||total_price==0){if(!L){D+='<h1>There is nothing in your shopping cart</h1><button name="close" id="close" class="jqmClose">Close</button></div>'}else{if(total_price==0){D+='<h1>Your cart contains free items only and can not be processed by PayPal. Please print the form and mail it.</h1><button name="close" id="close" class="jqmClose">Close</button></div>'}}$("body").append(D);$("#shoppingCartWindow").jqm().jqmShow();return false}else{D+='<h1>Shopping Cart:</h1><table id="shoppingCart" class="alternatingRowTable tableheaderleft wordwrapyes verticalAlignTop"><tr><th>Description:</th><th>Options:</th><th>Amount:</th></tr>'}$(".paypal_extra_info",this).each(function(){var N=$(this),M=N.attr("name"),O=N.attr("value");if(debug){$("#formResults").html($("#formResults").html()+"<br />name: "+M+" = "+O)}if(O){C+=M+":"+O+"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "}});C=C.replace(/"/g,"&quot;");C=C.replace(/_/g,"&nbsp;");if(debug){$("#formResults").html($("#formResults").html()+"<br />extra_info: "+C)}J+='<input type="hidden" name="custom" value="'+C+'" class="'+hidden_product_class+'" />';if(extended_debug){for(var G=0;G<elements.length;G++){$("#formResults").html($("#formResults").html()+"<br />");for(var A in elements[G]){$("#formResults").html($("#formResults").html()+"<br />prop: "+A+" = "+elements[G][A])}}}for(var I=0;I<elements.length;I++){if(elements[I].send_to_paypal==true){J+='<input type="hidden" name="item_name_'+B+'" value="'+elements[I].product_name+'" class="'+hidden_product_class+'" />';J+='<input type="hidden" name="amount_'+B+'" value="'+elements[I].computed_price+'"  class="'+hidden_product_class+'" />';D+="<tr><td>"+elements[I].product_name+"</td>";if((elements[I].type=="select")||elements[I].children){if(debug){if(elements[I].children){var F="<br />",G=0;for(G=0;G<elements[I].children.length;G++){F+=(G+1)+": "+elements[I].children[G].name+"<br />"}$("#formResults").html($("#formResults").html()+"<br /><br />"+elements[I].product_name+" has "+G+" children: "+F)}}if(elements[I].type=="select"){J+='<input type="hidden" name="on0_'+B+'" value="'+elements[I].option_name+'" class="'+hidden_product_class+'" />';J+='<input type="hidden" name="os0_'+B+'" value="'+elements[I].option_value+'"  class="'+hidden_product_class+'" />';D+="<td>"+elements[I].option_name+": "+elements[I].option_value+"</td>"}else{D+="<td>";for(var H=0;H<elements[I].children.length;H++){child=elements[I].children[H];if(set_jq_to_form_element(child)===false){continue}setElementType(child);switch(child.type){case"text":case"checkbox":child.value=child.jq.val();break;case"radio":child.value=child.jq.filter(":checked").val();break;case"select":var E=child.jq.val();if($.isArray(E)){child.value=E.join(", ")}else{child.value=E}}if(debug){$("#formResults").html($("#formResults").html()+"<br />Value of child = "+child.value)}J+='<input type="hidden" name="on'+H+"_"+B+'" value="'+child.name+'" class="'+hidden_product_class+'" />';J+='<input type="hidden" name="os'+H+"_"+B+'" value="'+child.value+'"  class="'+hidden_product_class+'" />';D+=child.name+": "+child.value+"<br />"}D+="</td>"}}else{D+="<td>&nbsp;</td>"}D+='<td class="right">$'+elements[I].computed_price+"</td></tr>";B++}}D+='<tr><td colspan="3" class="blankLine">&nbsp;</td><tr>';D+='<tr class="totalLine excludeFromZebraStrip"><th colspan="2">Total:</th><th class="right">$'+total_price+"</th></tr></table>";D+='<p>If the above is correct click "Pay Now". If not click "Make Changes"</p>';D+='<input name="pay_now" type="button" value="Pay Now" id="pay_now" class="jqmClose floatleft" />';D+='<input name="make_changes" type="button" value="Make Changes" id="make_changes" class="jqmClose floatright" />';D+="</div>";$(this).append(J);$("body").append(D);stripeTable({context:"#shoppingCart",evenOdd:"odd"});$("#shoppingCartWindow").jqm().jqmShow();$("#pay_now").click(function(){submit_form_to_paypal=true;form_to_process.submit()});if(debug){$("#formResults").html($("#formResults").html()+"<br />"+K(J))}function K(N){var M=N.replace(/&/g,"&amp;");M=M.replace(/</g,"&lt;");M=M.replace(/>/g,"&gt;");M=M.replace(/\r\n/g,"<br />");M=M.replace(/\n/g,"<br />");M=M.replace(/\r/g,"<br />");return(M)}return submit_form_to_paypal})});function preform_on_load(){total_price=0;submit_form_to_paypal=false;hidden_product_class="hiddenProduct";radio_group_select_option_tracker=[];if(debug){$("body").css("margin-left","500px").append("<div id='formResults' style='position:fixed;left:0;top:0;background-color:#FFFFFF;width:500px;height:95%;border:1px solid blue;font-size:10px;overflow:scroll;'></div>");$("#formResults").html($("#formResults").html()+"<br />Setting form action to Sandbox and changing business code to Erin's sandbox business #");form_to_process.attr("action","https://www.sandbox.paypal.com/cgi-bin/webscr");$("input:hidden[name='business']").attr("value","PHJAVDQU7LRAJ")}if(debug){$("#formResults").html($("#formResults").html()+"<br />BEGIN: iterate through all elements");if(extended_debug){for(var A=0;A<elements.length;A++){$("#formResults").html($("#formResults").html()+"<br />Element "+A+" = "+elements[A].id)}}}for(A=0;A<elements.length;A++){if(set_jq_to_form_element(elements[A])===false){continue}processElement(elements[A],"load");$("#total_due").attr("value",total_price);elements[A].jq.unbind(".swana_shopping_cart");switch(elements[A].type){case"select":case"text":elements[A].jq.bind("change.swana_shopping_cart",onclick_onchange);break;default:elements[A].jq.bind("click.swana_shopping_cart",onclick_onchange)}}if(debug){$("#formResults").html($("#formResults").html()+"<br />DONE: iterate through all elements")}}function set_jq_to_form_element(A){if(A.id){A.jq=$("#"+A.id)}else{if(A.radio_group_name){A.jq=$("input[name='"+A.radio_group_name+"']")}}if(A.jq.length==0){if(debug){$("#formResults").html($("#formResults").html()+"<br /><br />"+(A.id?A.id.toUpperCase():A.radio_group_name.toUpperCase())+" NOT FOUND.")}A.jq=null;return false}else{if(debug){$("#formResults").html($("#formResults").html()+"<br /><br />"+(A.id?A.id.toUpperCase():A.radio_group_name.toUpperCase())+" FOUND.")}return true}}function onclick_onchange(){if(debug){$("#formResults").html($("#formResults").html()+"<br /><br />onclick_onchange() called.")}var B=$(this),C=B.attr("id");if(debug){$("#formResults").html($("#formResults").html()+"<br />"+C+" was changed.")}for(var A=0;A<elements.length;A++){if(elements[A].id==C){processElement(elements[A]);break}}$("#total_due").attr("value",total_price)}function recalculate_prices(A){if(debug){$("#formResults").html($("#formResults").html()+"<br /><br />recalculate_prices() called.")}if(A){var B=A.attr("id")}preform_on_load()}function processElement(E,D){var D=(typeof D=="undefined")?"change":D;if(debug){$("#formResults").html($("#formResults").html()+"<br /><br />processElement() called with: "+E.id+"<br />operation = "+D)}if(E.type==null){setElementType(E)}if(debug){$("#formResults").html($("#formResults").html()+"<br />element.type = "+E.type)}if(jQuery.isFunction(E.price)){if(E.computed_price){E.old_price=E.computed_price}E.computed_price=E.price.call(this);if(debug){$("#formResults").html($("#formResults").html()+"<br />price is a function. Computed value: "+E.computed_price)}}else{E.computed_price=E.price;if(debug){$("#formResults").html($("#formResults").html()+"<br />price is a number: "+E.computed_price)}}if(E.type=="checkbox"){if(E.jq.is(":checked")){E.send_to_paypal=true;total_price+=E.computed_price}else{E.send_to_paypal=false;if(D=="change"){total_price-=E.computed_price}}}else{if((E.type=="radio")||(E.type="select")){var B=E.jq.attr("name"),C=null;if(debug){$("#formResults").html($("#formResults").html()+"<br />name of radio or select: "+B)}if(radio_group_select_option_tracker.length==0){create_radio_group_select_option_tracker_object(B)}for(var F=0;F<radio_group_select_option_tracker.length;F++){if(radio_group_select_option_tracker[F].name==B){if(debug){$("#formResults").html($("#formResults").html()+"<br />FOUND MATCH Name:"+B+", i = "+F)}C=radio_group_select_option_tracker[F];break}}if(F==radio_group_select_option_tracker.length){if(debug){$("#formResults").html($("#formResults").html()+"<br />NO MATCH. Name:"+B+", i = "+F)}C=create_radio_group_select_option_tracker_object(B)}if(E.type=="radio"){if(D=="load"&&!E.jq.is(":checked")){E.send_to_paypal=false;if(debug){$("#formResults").html($("#formResults").html()+"<br />Button checked: "+E.jq.is(":checked")+". Setting send_to_paypal: false")}return }if(C.old_element!=null){if(debug){$("#formResults").html($("#formResults").html()+"<br />old element price: "+C.old_element.computed_price)}if(extended_debug){$("#formResults").html($("#formResults").html()+"<br />tracker_object.old_element: ");for(var A in C.old_element){$("#formResults").html($("#formResults").html()+"<br />...prop: "+A+" = "+C.old_element[A])}}if(C.old_element.old_price){total_price-=C.old_element.old_price}else{total_price-=C.old_element.computed_price}C.old_element.send_to_paypal=false}total_price+=E.computed_price;E.send_to_paypal=true;C.old_element=E}else{var H=E.jq.children("[selected]"),J=H.text(),I=H.attr("value")||J,G=E.jq.children(":first");if(debug){$("#formResults").html($("#formResults").html()+"<br />select processing: "+E.id+"<br /><ul><li>Value: "+I+"</li><li>Text: "+J+"</li></ul>")}if(C.old_element!=null){total_price-=C.old_element.computed_price}if(isNumeric(I)){if(debug){$("#formResults").html($("#formResults").html()+"<br />chosen_option_value_number IS a number: "+I)}E.computed_price=Number(I);total_price+=E.computed_price}else{E.computed_price=0}E.option_value=J;if(H.text()==G.text()&&E.ignore_first_option==true){E.send_to_paypal=false}else{E.send_to_paypal=true}C.old_element=E}}}if(debug){$("#formResults").html($("#formResults").html()+"<br />END of processElement() for "+E.product_name+". Total is $"+total_price)}}function setElementType(A){if(A.jq.is(":text")){A.type="text"}else{if(A.jq.is(":checkbox")){A.type="checkbox"}else{if(A.jq.is(":radio")){A.type="radio"}else{if(A.jq[0].tagName.toLowerCase()=="select"){A.type="select"}else{if(A.jq.is(":file")){A.type="file"}}}}}if(debug){$("#formResults").html($("#formResults").html()+"<br />setElementType(): type is "+A.type)}}function create_radio_group_select_option_tracker_object(A){if(debug){$("#formResults").html($("#formResults").html()+"<br />create_radio_group_select_option_tracker_object() called. Name is: "+A+"<br />")}radio_group_select_option_tracker[radio_group_select_option_tracker.length]={name:A,old_element:null};if(debug){for(var B=0;B<radio_group_select_option_tracker.length;B++){for(var C in radio_group_select_option_tracker[B]){$("#formResults").html($("#formResults").html()+"<br />prop: "+C+" = "+radio_group_select_option_tracker[B][C])}}}return radio_group_select_option_tracker[radio_group_select_option_tracker.length-1]}function isNumeric(A){var C="0123456789.",D=true,E="";for(var B=0;B<A.length&&D==true;B++){E=A.charAt(B);if(C.indexOf(E)==-1){D=false;break}}return D}function display_error_warnings(){var A='<div id="shoppingCartWindow" class="jqmWindow">';submit_form_to_paypal=false;if($("#shoppingCartWindow").length>0){$("#shoppingCartWindow").remove()}A+='<h1>Please fill out the required form fields.</h1><button name="close" id="close" class="jqmClose">Close</button></div>';$("body").append(A);if($.browser.msie&&$.browser.version<7){$.scrollTo($(".error:not(:hidden):eq(0)"),800,{offset:-30,onAfter:function(){$("#shoppingCartWindow").jqm().jqmShow()}})}else{$.scrollTo($(".error:not(:hidden):eq(0)"),800,{offset:-30});$("#shoppingCartWindow").jqm().jqmShow()}};
