summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
Diffstat (limited to 'share')
-rw-r--r--share/www/database.html7
-rw-r--r--share/www/script/futon.browse.js18
2 files changed, 11 insertions, 14 deletions
diff --git a/share/www/database.html b/share/www/database.html
index 5a722e1a..1abed3db 100644
--- a/share/www/database.html
+++ b/share/www/database.html
@@ -40,11 +40,6 @@ specific language governing permissions and limitations under the License.
if (page.redirecting) return;
$("h1 strong").text(page.db.name);
var viewPath = page.viewName || "_all_docs";
- if (/^_design\//.test(viewPath)) {
- var parts = viewPath.split("/");
- parts.splice(2, 0, "_view");
- viewPath = parts.join("/");
- }
if (viewPath != "_temp_view" && viewPath != "_design_docs") {
$("h1 a.raw").attr("href", "/" + encodeURIComponent(page.db.name) +
"/" + viewPath);
@@ -95,7 +90,7 @@ specific language governing permissions and limitations under the License.
var viewName = $(this).val();
if (!viewName) $.cookies.remove(page.db.name + ".view");
location.href = "?" + encodeURIComponent(page.db.name) +
- (viewName ? "/" + encodeURIComponent(viewName) : "");
+ (viewName ? "/" + viewName : "");
});
$("#documents thead th.key").click(function() {
$(this).toggleClass("desc");
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);
}
}
}