summaryrefslogtreecommitdiff
path: root/share/www/script/futon.browse.js
diff options
context:
space:
mode:
Diffstat (limited to 'share/www/script/futon.browse.js')
-rw-r--r--share/www/script/futon.browse.js18
1 files changed, 10 insertions, 8 deletions
diff --git a/share/www/script/futon.browse.js b/share/www/script/futon.browse.js
index 1b91e27d..84b3474e 100644
--- a/share/www/script/futon.browse.js
+++ b/share/www/script/futon.browse.js
@@ -104,7 +104,7 @@
if (viewName) {
this.redirecting = true;
location.href = "database.html?" + encodeURIComponent(dbName) +
- "/" + encodeDocId(viewName);
+ "/" + viewName;
}
}
var db = $.couch.db(dbName);
@@ -258,9 +258,10 @@
.attr("label", doc._id.substr(8));
for (var name in doc.views) {
var option = $(document.createElement("option"))
- .attr("value", doc._id + "/" + name).text(name)
+ .attr("value", encodeURIComponent(doc._id) + "/_view/" +
+ encodeURIComponent(name)).text(name)
.appendTo(optGroup);
- if (doc._id + "/" + name == viewName) {
+ if (doc._id + "/_view/" + name == viewName) {
option[0].selected = true;
}
}
@@ -283,7 +284,7 @@
if (!page.storedViewCode) {
var viewNameParts = viewName.split("/");
var designDocId = viewNameParts[1];
- var localViewName = viewNameParts[2];
+ var localViewName = viewNameParts[3];
db.openDoc(["_design", designDocId].join("/"), {
error: function(status, error, reason) {
if (status == 404) {
@@ -332,7 +333,7 @@
if (viewName && /^_design/.test(viewName)) {
var viewNameParts = viewName.split("/");
var designDocId = viewNameParts[1];
- var localViewName = viewNameParts[2];
+ var localViewName = viewNameParts[3];
} else {
var designDocId = "", localViewName = "";
}
@@ -407,7 +408,7 @@
page.isDirty = false;
location.href = "database.html?" + encodeURIComponent(dbName) +
"/" + encodeDocId(doc._id) +
- "/" + encodeURIComponent(data.name);
+ "/_view/" + encodeURIComponent(data.name);
}
});
}
@@ -428,7 +429,7 @@
this.saveViewChanges = function() {
var viewNameParts = viewName.split("/");
var designDocId = viewNameParts[1];
- var localViewName = viewNameParts[2];
+ var localViewName = viewNameParts[3];
db.openDoc(["_design", designDocId].join("/"), {
success: function(doc) {
var numViews = 0;
@@ -635,7 +636,8 @@
if (page.isDirty) {
db.query(currentMapCode, currentReduceCode, page.viewLanguage, options);
} else {
- db.view(viewName.substr(8), options);
+ var viewParts = viewName.split('/');
+ db.view(viewParts[1] + "/" + viewParts[3], options);
}
}
}