Getting error Invalid state change requested in Magento2.2.6 - magento2

When I am placing order by my payment gateway I am getting error Invalid state change requested. I debug the core code and found that is error is coming from plugin used by core classes. i.e Magento\Quote\Model\QuoteRepository\Plugin\AccessChangeQuoteControl which is not exist in previous version of magento2 (i.e before Magento2.2) . Have anyone idea what is purpose of this plugin.

Just take a look at the source-code:
Checks if change quote's customer id is allowed for current user.

Related

Changing "purchasable" in WooCommerce using REST API

I am trying to update the "purchasable" flag on a product variation using REST API
/wp-json/wc/v3/products/<prodID>/variations/<varID>
I have tried sending a simple
{"purchasable":false}
as well as getting the current data for the variation, changing the "purchasable" entry to the new state, and submitting the entire data back to WooCommerce. In no case have I been able to change this value using REST API.
I am using jw-auth for authentication and have a proper token (I do receive a proper response back with all the data for the variation, but still with the old value of "purchasable" in it, so I know I'm communicating with the back-end).
Is there some setting elsewhere that needs to be set for me to be able to change this specific property? The variations have been created using REST API as well, and on the shop it works fine (I can pick the variations as expected).
What am I doing wrong? Or have I found a bug in WooCommerce? :-)
That field is listed as ReadOnly in the api docs. I believe Woo uses other criteria to set that value. In my research, it appears that setting the Stock Status to "outofstock" seems to be a common method for keeping an item from being purchased. Also, setting the price to null or empty.
https://woocommerce.github.io/woocommerce-rest-api-docs/#product-properties

error: Failed to run the post merge process

I'm trying to generate documents using conga composer 8 from apex code but its failing with error Failed to run the post-merge process. I have looked into url and its same as the one I used initially in another salesforce org. I couldn't find any help online or on conga-composer form.
Here is my conga endpoint URL:
https://composer.congamerge.com/Composer8/Index.Html? sessionId=00D41000000dorw!ARQAQKbinH5TXMR_70s3XCShQh5GuSVdrFcq0Fg9OidZLo9MLxzWSby8QY1B4xM8e72DPawVziclnXBjTzpG41RiCAPKQqOt
&serverUrl=https://na35.salesforce.com/services/Soap/u/29.0/00D41000000dorwEAA
&id=a1J410000012BwS
&TemplateId=a0C41000000kg5GEAQ
&APIMODE=13
&ESAgreementName=Contract+for+Test
&queryid=a0441000001PwI7AAK,a0441000001PwICAA0
&ESSignatureType=2
&ESSignatureOrder=2
&ESVisible=1
&ESCustomField=cldocgen__App__c
&ESCustomFieldValue=a1J410000012BwSEAU
&ESRecipient1=00541000000Ke9pAAC
&ESRecipient2=003410000078zVbAAI
&ESRecipient3=003410000078zVhAAI, Method=GET]
Any insight what might be causing this issue.
I had the same problem and was able to solve it using permissions. In this case make sure the user id whose sessionID is passing to Conga has the correct CRUD access to the primary object in your conga call (id=a1J410000012BwS). My guess is that this is something to do with Conga not being able to write the attachment back to salesforce.
Apart from what Greg has mentioned, there are 2 more observations for this error:
Under Email Administration -> Deliverability -> Access to Send Email (All Email Services) should be set to All email.
In case you are using the EmailTemplateId parameter then the classic email template must be available for use.
Also mostly this error is also because of some discrepancy in the URL.

Zend framework 1.2 handling 404

I am having one requirement that I want to manage 404 error differently.
When a system found 404, so before moving it to errorController, it should first check in a table which saves data for special urls and internal project url, if an entry found then it should internally execute that internal url and show the output on the page without changing url.
If no entry found in the table then it should move to error controller as it is.
Please help me on this, I have tried and succeeded using dynamic routing from db, but it is pushing route entries each time page initialize and I want to check this only on 404 to avoid useless load on system.
Thanks

Getting REQUEST_DENIED when calling Google's Autocomplete from a Browser

I have signed up for Google Places Autocomplete API and created a new key by going to following url.
http://code.google.com/apis/console/
I am using the generated key to do some testing on my browser. I am entering following url to search for City names starting with "San".
https://maps.googleapis.com/maps/api/place/autocomplete/json?input=San&types=cities&sensor=false&key=
I keep getting "REQUEST_DENIED" error message. Is there anything I am missing? I can see my usage counter going up every time I try to test this using a browser, but I keep getting REQUEST_DENIED message back. As per the google documentation it says this message is related to "Sensor" parameter. I tried setting this parameter to True/False but get the same results. Please help!
Thanks,

Facebook API - Feed.registerTemplateBundle issues

I'm trying to build a feature into my framework wrapper that automates registering template bundles. I've gotten to the point where it seems like I can do so successfully using the Feed.registerTemplateBundle API method - I don't get an error, and I do get a template id back. However, the template doesn't show up in the "Registered Templates Console", and if I try to publish a story using the id, it gives me an "invalid template bundle id" error.
Any suggestions?
I had this problem in Facebook's official example application (TheRunAround)
it was registering template but when it tried to get an id it was
using sprintf (like: sprintf('%d', ))
current template ID's are out of the 32bit range so it was returning wrong id.
May it be the cause?
Turns out there were two problems:
I was erroneously double-json-encoding the short story template
Facebook was accepting the erroneously-formatting calls and returning an id, thus resulting in the creation of "phantom" template bundles that weren't showing up in their console.
I've fixed my code, and the bug has been reported (and I believe since fixed).