You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by jc...@apache.org on 2010/05/15 07:08:26 UTC
svn commit: r944570 - /couchdb/trunk/share/www/script/jquery.couch.js
Author: jchris
Date: Sat May 15 05:08:25 2010
New Revision: 944570
URL: http://svn.apache.org/viewvc?rev=944570&view=rev
Log:
jquery.couch.js option to force ensure_full_commit to true or false
Modified:
couchdb/trunk/share/www/script/jquery.couch.js
Modified: couchdb/trunk/share/www/script/jquery.couch.js
URL: http://svn.apache.org/viewvc/couchdb/trunk/share/www/script/jquery.couch.js?rev=944570&r1=944569&r2=944570&view=diff
==============================================================================
--- couchdb/trunk/share/www/script/jquery.couch.js [utf-8] (original)
+++ couchdb/trunk/share/www/script/jquery.couch.js [utf-8] Sat May 15 05:08:25 2010
@@ -258,6 +258,7 @@
);
},
saveDoc: function(doc, options) {
+ var beforeSend = fullCommit(options);
options = options || {};
if (doc._id === undefined) {
var method = "POST";
@@ -270,6 +271,7 @@
type: method, url: uri + encodeOptions(options),
contentType: "application/json",
dataType: "json", data: toJSON(doc),
+ beforeSend : beforeSend,
complete: function(req) {
var resp = $.httpData(req, "json");
if (req.status == 201) {
@@ -285,7 +287,8 @@
});
},
bulkSave: function(docs, options) {
- $.extend(options, {successStatus: 201});
+ var beforeSend = fullCommit(options);
+ $.extend(options, {successStatus: 201, beforeSend : beforeSend});
ajax({
type: "POST",
url: this.uri + "_bulk_docs" + encodeOptions(options),
@@ -472,6 +475,16 @@
}, obj), ajaxOptions));
}
+ function fullCommit(options) {
+ if (typeof options.ensure_full_commit !== "undefined") {
+ var commit = options.ensure_full_commit;
+ delete options.ensure_full_commit;
+ return function(xhr) {
+ xhr.setRequestHeader("X-Couch-Full-Commit", commit.toString());
+ };
+ }
+ };
+
// Convert a options object to an url query string.
// ex: {key:'value',key2:'value2'} becomes '?key="value"&key2="value2"'
function encodeOptions(options) {