0

On a website/webshop running EE 2.5.5, and Exp-resso store 1.6.2 i'm trying to simplify the stock keeping process. I'd like to close an entry with a safecracker form.

For test purposes i created a new, blank template with only the following code:

{exp:safecracker channel="products" return="" entry_id="{segment_2}" }

<select name="status" id="status">
    {statuses}
            <option value="{status}"{selected}>{status}</option>
    {/statuses}
</select>

<input type="submit" name="submit" value="Apply" />

{/exp:safecracker}

I change the status, press "submit" and get an error:

A Database Error Occurred

You must use the "set" method to update an entry.

Filename: third_party/store/models/store_products_model.php

Line Number: 315

« Back

The strange thing is: the status does change, so i'm not sure why i'm getting this error.

Inside the store_products_model.php the lines around 315 look like this:

lines 308 - 321 from the file "store_products_model"

I want to change the status on the front end using safecracker, error free. What should I do?

A workaround question might be:

How can i change the status without triggering the store_products_model?

2
  • As this is a PHP error it's probably best to email support@exp-resso.com so we can debug it. Thanks for detailing all your research so far - it does look like a bug so we should be able to replicate this and get a fix for you. If you need an immediate solution, you could try putting the store product details field into your safecracker form, then hide it using CSS (so the data is still submitted). – Adrian Macneil Jan 29 '13 at 15:26
  • Thanks for your reply! I sent an email to support@exp-resso.com referencing this thread. – okenathan Jan 29 '13 at 17:41
0

Adrian wrote a fix. I can now use Safecracker to change the status without errors.

The fix wil be included in the next release of exp-resso store.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.