Extremely cool module...I am using the webform integration and have found a weird issue. If you drag a field - for example 'date' into your form, then open the configuration form, and select the display tab. On this form there are several checkboxes. If you select two of them, say "Use textfield" and "private" in succession only the first will be saved. If you do the same operation except you wait a few seconds before making the second selection then everything works fine. I am thinking from a usability perspective this may make people like myself think they are going crazy.. "I thought I selected that..." so I thought this may be worth raising as an issue.
Cheers.
Comments
Comment #1
quicksketchThanks, this may indeed happen if your server responds to the requests out of order. Immediately after changing an option, a request is fired off to the server. If the first request is handled second, then you'll end up with this problem.
Ensuring some kind of order is maintained would be an excellent improvement to data integrity. We could simply do something like include a (micro)timestamp in all requests, and make sure that the latest request is always handled. Any requests that were prior to the last update's microtime could be discarded. Since all requests always contain the full configuration for a field, throwing away stale requests won't affect the final data, since any data in a stale request will be handled by the newer request that was processed first.
If we're not already, we should also use the locking API to make sure that only one request gets to set the microtime, to avoid race conditions where multiple processes (or servers) think that they're the latest request.
Comment #1.0
quicksketchfixed spelling mistake.