27d570578d
The quicksave feature was added back in 2011 when the framework was somewhat unstable---we were taking calls from users and it wasn't a pleasent experience to tell them that they had to refresh the page to work around some issue with bad state, and lose all unsaved data. This feature is now more trouble than it's worth, since it causes a number of bugs and can even cause data corruption. If this is reintroduced in the future, I'd prefer it be done by periodically saving quote state after every or a few bucket modifications, to permit Meteor-like features. This keeps the feature available on the client as a heartbeat for quote locking; this can be removed in the future when we handle distributed locking. * src/client/Client.js (_changeQuote): Stop setting quicksave data from request. (_mergeQuickSaveData): Remove now-unused method. (_createUi): Stop merging quicksave data on render. (saveStaging): Add note that this method is now only used as a heartbeat. * src/client/quote/ClientQuote.js (saveStaging): Add comment indicating that this is now used for a heartbeat. (setQuickSaveData, getQuickSaveData): Remove methods. * src/quote/BaseQuote.js (_quickSaveData): Remove field. (setQuickSaveData, getQuickSaveData): Remove methods. * src/server/Server.js (initQuote): Do not create or initialize quicksave data. (handleQuickSave): Remove method. * src/server/daemon/controller.js (doRoute): Return empty reply without processing quicksave data. Continue touching session to retain quote lock. * src/server/db/MongoServerDao.js (saveQuote): Do not clear quicksave. (quickSaveQuote): Remove method. |
||
---|---|---|
.. | ||
BaseQuote.js | ||
Quote.js | ||
README |
README
Quote => Document ================= The original terminology for a document containing data is ``quote'', which represents what Liza was designed for. To generalize this, it should be changed to ``document'', as in a database document.