diff options
Diffstat (limited to 'rel/overlay/share/www/config.html')
-rw-r--r-- | rel/overlay/share/www/config.html | 135 |
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> |