I was hoping to use this module to have a checkbox for customers to agree to something which isn't required, i.e. to wave their rights to refund (distant purchase law) so that the service can be started right away instead of waiting for the refund period to pass. So they can choose to wave that right, but even though this module has the option of the TOS being required or not, if it's not required there is no way to know if the box has been checked or not, as far as I can tell it's not stored anywhere.

If I'm wrong I hope you can tell me where I can find the info in the database/order. But otherwise, having this option without it being required is useless.....

Comments

hipfox’s picture

Status: Active » Needs review
StatusFileSize
new560 bytes

Bypass checked when not required.

bgm’s picture

Status: Needs review » Needs work

It seems that we don't write to the DB whether the TOS has been accepted or not. We just assume that if they have checked out, they accepted the TOS.

I think the simplest would be to save it in the $order->data, which then gets serialized?

tr’s picture

That would be the simplest way, but a lot of contributed modules stomp all over $order->data by assigning their own values to it rather than *appending* their values. So the safest way, which is also more useful in the long run, is to create a new table for this module with columns order_id as an integer key and tos as a boolean signifying whether the TOS has been agreed to or not. Then a simple join can retrieve this value for any particular order whenever it's needed. This is still really simple, and a very small bit of code.