diff options
author | John Christopher Anderson <jchris@apache.org> | 2009-02-22 07:31:26 +0000 |
---|---|---|
committer | John Christopher Anderson <jchris@apache.org> | 2009-02-22 07:31:26 +0000 |
commit | 1ebc2117452516f6ac6f4f458d7372bc710b79d2 (patch) | |
tree | e6dc0c62e64e29247e5c2cf18343690d01e1bc0c /share/www/script/jquery.couch.js | |
parent | 4838c35db5f4d49181b22d72f4cb5697b89c8870 (diff) |
Link to design docs that have ddoc.couchapp.index or index.html, from Futon database index.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@746644 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'share/www/script/jquery.couch.js')
-rw-r--r-- | share/www/script/jquery.couch.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/share/www/script/jquery.couch.js b/share/www/script/jquery.couch.js index b4566e3a..c912a4bd 100644 --- a/share/www/script/jquery.couch.js +++ b/share/www/script/jquery.couch.js @@ -173,6 +173,38 @@ } }); }, + allDesignDocs: function(options) { + options = options || {}; + this.allDocs($.extend({startkey:"_design", endkey:"_design0"}, options)); + }, + allApps: function(options) { + options = options || {}; + var self = this; + if (options.eachApp) { + this.allDesignDocs({ + success: function(resp) { + $.each(resp.rows, function() { + self.openDoc(this.id, { + success: function(ddoc) { + var index, appPath, appName = ddoc._id.split('/'); + appName.shift(); + appName = appName.join('/'); + index = ddoc.couchapp && ddoc.couchapp.index; + if (index) { + appPath = ['', name, index[0], appName, index[1]].join('/'); + } else if (ddoc._attachments["index.html"]) { + appPath = ['', name, '_design', appName, "index.html"].join('/'); + } + if (appPath) options.eachApp(appName, appPath, ddoc); + } + }); + }); + } + }); + } else { + alert("please provide an eachApp function for allApps()"); + } + }, openDoc: function(docId, options) { options = options || {}; $.ajax({ |