dojo.provide("site.CustomPalette");
dojo.declare("site.CustomPalette", null, {

	_def: null,
	postForm: {},
	postArgs: {},
	pform: dojo.byId("palette_form"),
	jsonrpc_fid: '[{"method":"include","params":[{"logic":[{"path":"/product/custom_palette.logic"}]}],"id":"custom_palette"}]',

	addToBag: function(fargs) {
		console.log("INC FLASH: ", fargs);
		fargs.JSONRPC = this.jsonrpc_fid;
		fargs.cart_type = fargs.cartType;
		fargs.CATEGORY_ID = fargs.category_id;
		fargs.PRODUCT_ID = fargs.product_id;
		fargs.components = fargs.components.join(",");
		fargs._SUBMIT = "palette_form";

		dojo.byId("CATEGORY_ID").value = fargs.CATEGORY_ID;
		dojo.byId("PRODUCT_ID").value = fargs.PRODUCT_ID;
		dojo.byId("kit_id").value = fargs.kit_id;
		dojo.byId("kit_name").value = fargs.kit_name;
		dojo.byId("kit_sku_pcode").value = fargs.kit_sku_pcode;
		dojo.byId("components").value = fargs.components;
		dojo.byId("JSONRPC").value = fargs.JSONRPC;
		dojo.byId("cart_type").value = fargs.cart_type;

		this.postArgs = {
			form: dojo.byId("palette_form"),
			url: "/jsonrpc.logic",
			handleAs: "json-comment-optional",
			preventCache: true,
			load: function(data) {
				console.log("response from form post: ", data);
				if (data[0].error.messages[0]) {
					dojo.byId("customPalette").dispatchMessage(1, "Error", data[0].error.messages[0]);
				} else {
					if (fargs.cartType == "order" || fargs.cartType == "checkout") {
						dojo.byId("customPalette").dispatchMessage(3);
						dojo.publish("/page/cart/alterCart", [{ action: "add", cartType: fargs.cartType, resp:data }]);
					} else {
						dojo.byId("customPalette").dispatchMessage(4);
					}
				}
			},
			error: function(e, ioargs) {
				console.log("form post error: ", e);
                console.log("checking ioargs: ", ioargs);
			}
		};
		this._def = dojo.xhrPost(this.postArgs);
	}

});
site.CustomPalette = new site.CustomPalette();

