var LibraryFacebookIAP = { $FBinner: { // NOTE: Also defined in iap.h TransactionState : { TRANS_STATE_PURCHASING : 0, TRANS_STATE_PURCHASED : 1, TRANS_STATE_FAILED : 2, TRANS_STATE_RESTORED : 3, TRANS_STATE_UNVERIFIED : 4 }, // NOTE: Also defined in iap.h BillingResponse : { BILLING_RESPONSE_RESULT_OK : 0, BILLING_RESPONSE_RESULT_USER_CANCELED : 1, BILLING_RESPONSE_RESULT_BILLING_UNAVAILABLE : 3, BILLING_RESPONSE_RESULT_ITEM_UNAVAILABLE : 4, BILLING_RESPONSE_RESULT_DEVELOPER_ERROR : 5, BILLING_RESPONSE_RESULT_ERROR : 6, BILLING_RESPONSE_RESULT_ITEM_ALREADY_OWNED : 7, BILLING_RESPONSE_RESULT_ITEM_NOT_OWNED : 8 }, // See Facebook definitions https://developers.facebook.com/docs/payments/reference/errorcodes FBPaymentResponse : { FB_PAYMENT_RESPONSE_USERCANCELED : 1383010, FB_PAYMENT_RESPONSE_APPINVALIDITEMPARAM : 1383051 }, http_callback: function(xmlhttp, callback, lua_callback, products, product_ids, product_count, url_index, url_count) { if (xmlhttp.readyState == 4) { if(xmlhttp.status == 200) { var xmlDoc = document.createElement( 'html' ); xmlDoc.innerHTML = xmlhttp.responseText; var elements = xmlDoc.getElementsByTagName('meta'); var productInfo = {}; for (var i=0; i