summaryrefslogtreecommitdiff
path: root/rel/overlay/share/www/config.html
diff options
context:
space:
mode:
Diffstat (limited to 'rel/overlay/share/www/config.html')
-rw-r--r--rel/overlay/share/www/config.html135
1 files changed, 135 insertions, 0 deletions
diff --git a/rel/overlay/share/www/config.html b/rel/overlay/share/www/config.html
new file mode 100644
index 00000000..9863c8b5
--- /dev/null
+++ b/rel/overlay/share/www/config.html
@@ -0,0 +1,135 @@
+<!DOCTYPE html>
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software distributed
+under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, either express or implied. See the License for the
+specific language governing permissions and limitations under the License.
+
+-->
+<html lang="en">
+ <head>
+ <title>Configuration</title>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+ <link rel="stylesheet" href="style/layout.css?0.11.0" type="text/css">
+ <script src="script/json2.js"></script>
+ <script src="script/sha1.js"></script>
+ <script src="script/jquery.js?1.4.2"></script>
+ <script src="script/jquery.couch.js?0.11.0"></script>
+ <script src="script/jquery.dialog.js?0.11.0"></script>
+ <script src="script/futon.js?0.11.0"></script>
+ <script src="script/jquery.editinline.js?0.11.0"></script>
+ <script>
+ $(function() {
+ $.couch.config({
+ success: function(resp) {
+ var sections = [];
+ for (var sectionName in resp) {
+ sections.push(sectionName);
+ }
+ sections.sort();
+ $.each(sections, function(idx, sectionName) {
+ var row = $("<tr><th></th></tr>")
+ .find("th").text(sectionName).end()
+ .appendTo("#config tbody.content");
+ var section = resp[sectionName]
+ var options = [];
+ for (var option in section) {
+ options.push(option);
+ }
+ options = options.sort();
+ var prev = null;
+ $.each(options, function(idx, optionName) {
+ var cur = idx == 0 ? row : $("<tr></tr>");
+ $("<td class='name' section="+sectionName+"><b></b></td>")
+ .find("b").text(optionName).end().appendTo(cur);
+ $("<td class='value'><code></code></td>")
+ .find("code").text(section[optionName]).end().appendTo(cur);
+ cur.data("section", sectionName).data("option", optionName);
+ if (cur !== row) cur.insertAfter(prev);
+ prev = cur;
+ });
+ row.find("th").attr("rowspan", options.length);
+ });
+ $("#config tbody tr").removeClass("odd").filter(":odd").addClass("odd");
+ $("#config tbody td.value code").makeEditable({
+ accept: function(newValue) {
+ var row = $(this).parents("tr").eq(0);
+ $.couch.config({
+ success: function(resp) {
+ row.find("td.value code").text(newValue);
+ }}, row.data("section"), row.data("option"), newValue);
+ }
+ }).parent().parent()
+ .append($('<td><div style="text-align:center;""><a class="remove" href="#remove">x</a></div></td>'))
+ .click(function (ev) {
+ // There is a listener that stops all events below this element which is
+ // why the remove link listener has to be here
+ var n = $(ev.target).parent().parent().parent();
+ if ($(ev.target).attr('href') === "#remove" ) {
+ $.couch.config({ success: function () {location = location.href.split('#')[0];} }
+ , n.find('td.name').attr("section"), n.find('td.name').text(), null);
+ }
+ })
+ var add = $('<a href="#add">Add a new section</a>').click(function () {
+ $.showDialog("dialog/_create_config.html", {
+ submit: function(data, callback) {
+ var fail = false;
+ if (!data.section || data.section.length == 0) {
+ callback({section: "Please enter a section."});
+ fail = true;
+ }
+ if (!data.option || data.option.length == 0) {
+ callback({option: "Please enter a option."});
+ fail = true;
+ }
+ if (!data.val || data.val.length == 0) {
+ callback({val: "Please enter a value."});
+ fail = true;
+ }
+ if (fail) {return}
+ $.couch.config({ success: function () {callback();location = location.href.split('#')[0]} }
+ , data.section, data.option, data.val);
+ }
+ });
+ })
+ $("div#content").append(add)
+ }
+ });
+
+ });
+ </script>
+ </head>
+ <body><div id="wrap">
+ <h1>
+ <a href="index.html">Overview</a>
+ <strong>Configuration</strong>
+ </h1>
+ <div id="content">
+ <p class="help">
+ <strong>Note:</strong> Some configuration options may require
+ restarting the server to take effect after modification.
+ </p>
+ <p class="help">
+ For the strongest consistency guarantees, <tt>delayed_commits</tt> should be set to <tt>false</tt>. The default value of <tt>true</tt> is designed for single-user performance. For more details see <a href="http://wiki.apache.org/couchdb/Durability_Matrix">a discussion of durability on the CouchDB wiki</a>.
+ </p>
+ <table id="config" class="listing" cellspacing="0">
+ <caption>Configuration</caption>
+ <thead><tr>
+ <th>Section</th>
+ <th>Option</th>
+ <th>Value</th>
+ <th>Delete</th>
+ </tr></thead>
+ <tbody class="content"></tbody>
+ </table>
+
+ </div>
+ </div></body>
+</html>