You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by kx...@apache.org on 2014/04/26 21:29:30 UTC
[01/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Repository: couchdb-fauxton
Updated Branches:
refs/heads/import-master 4ab2cde64 -> 14dac8d82
Add the build version to the primary nav, instead of the footer
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/53d6431b
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/53d6431b
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/53d6431b
Branch: refs/heads/import-master
Commit: 53d6431ba65454cd10ac524027757a5bda76901f
Parents: c5da8fb
Author: suelockwood <de...@apache.org>
Authored: Thu Apr 17 11:37:30 2014 -0400
Committer: suelockwood <de...@apache.org>
Committed: Thu Apr 17 11:37:54 2014 -0400
----------------------------------------------------------------------
app/addons/auth/templates/nav_link_title.html | 14 ++--
app/addons/fauxton/base.js | 21 +++--
app/addons/fauxton/templates/footer.html | 2 +-
app/addons/fauxton/templates/nav_bar.html | 7 +-
assets/less/fauxton.less | 96 ++++++++++++----------
5 files changed, 76 insertions(+), 64 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/53d6431b/app/addons/auth/templates/nav_link_title.html
----------------------------------------------------------------------
diff --git a/app/addons/auth/templates/nav_link_title.html b/app/addons/auth/templates/nav_link_title.html
index 863955c..1ec9bf4 100644
--- a/app/addons/auth/templates/nav_link_title.html
+++ b/app/addons/auth/templates/nav_link_title.html
@@ -12,20 +12,20 @@ License for the specific language governing permissions and limitations under
the License.
-->
<% if (admin_party) { %>
- <a id="user-create-admin" class="alert_nav" href="#createAdmin">
+ <a id="user-create-admin" class="alert_nav" href="#createAdmin">
<span class="fonticon-user fonticon"></span>
- Admin Party! [FIX THIS]
+ Admin Party! <br>[FIX THIS]<br>
<small>Everyone is an admin.</small>
</a>
<% } else if (user) { %>
<a href="#changePassword" >
- <span class="fonticon-user fonticon"></span>
- <%= user.name %>
+ <span class="fonticon-user fonticon"></span>
+ <%= user.name %>
</a>
<% } else { %>
- <a href="#login" >
- <span class="fonticon-user fonticon"></span>
- Login
+ <a href="#login" >
+ <span class="fonticon-user fonticon"></span>
+ Login
</a>
<% } %>
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/53d6431b/app/addons/fauxton/base.js
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/base.js b/app/addons/fauxton/base.js
index 3a6a428..861c544 100644
--- a/app/addons/fauxton/base.js
+++ b/app/addons/fauxton/base.js
@@ -46,17 +46,15 @@ function(app, FauxtonAPI, resizeColumns) {
});
Fauxton.initialize = function () {
- app.footer = new Fauxton.Footer({el: "#footer-content"}),
+ // app.footer = new Fauxton.Footer({el: "#footer-content"}),
app.navBar = new Fauxton.NavBar();
app.apiBar = new Fauxton.ApiBar();
- FauxtonAPI.when.apply(null, app.footer.establish()).done(function() {
+ FauxtonAPI.when.apply(null, app.navBar.establish()).done(function() {
FauxtonAPI.masterLayout.setView("#primary-navbar", app.navBar, true);
FauxtonAPI.masterLayout.setView("#api-navbar", app.apiBar, true);
app.navBar.render();
app.apiBar.render();
-
- app.footer.render();
});
FauxtonAPI.masterLayout.navBar = app.navBar;
@@ -114,6 +112,7 @@ function(app, FauxtonAPI, resizeColumns) {
});
Fauxton.Footer = FauxtonAPI.View.extend({
+ tagName: "p",
template: "addons/fauxton/templates/footer",
initialize: function() {
@@ -134,17 +133,17 @@ function(app, FauxtonAPI, resizeColumns) {
Fauxton.NavBar = FauxtonAPI.View.extend({
className:"navbar",
template: "addons/fauxton/templates/nav_bar",
-
+
events: {
"click .burger" : "toggleMenu"
},
-
+
toggleMenu: function(){
var $selectorList = $('body');
$selectorList.toggleClass('closeMenu');
this.resizeColumns.onResizeHandler();
},
-
+
// TODO: can we generate this list from the router?
navLinks: [
{href:"#/_all_dbs", title:"Databases", icon: "fonticon-database", className: 'databases'}
@@ -158,9 +157,10 @@ function(app, FauxtonAPI, resizeColumns) {
//resizeAnimation
app.resizeColumns = this.resizeColumns = new resizeColumns({});
this.resizeColumns.onResizeHandler();
-
+
FauxtonAPI.extensions.on('add:navbar:addHeaderLink', this.addLink);
FauxtonAPI.extensions.on('removeItem:navbar:addHeaderLink', this.removeLink);
+ this.versionFooter = new Fauxton.Footer({});
},
serialize: function() {
@@ -171,6 +171,10 @@ function(app, FauxtonAPI, resizeColumns) {
};
},
+ establish: function(){
+ return [this.versionFooter.establish()];
+ },
+
addLink: function(link) {
// link.top means it gets pushed to the top of the array,
// link.bottomNav means it goes to the additional bottom nav
@@ -230,6 +234,7 @@ function(app, FauxtonAPI, resizeColumns) {
},
beforeRender: function () {
+ this.insertView(".version", this.versionFooter);
this.addLinkViews();
},
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/53d6431b/app/addons/fauxton/templates/footer.html
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/templates/footer.html b/app/addons/fauxton/templates/footer.html
index 593c11f..781ffce 100644
--- a/app/addons/fauxton/templates/footer.html
+++ b/app/addons/fauxton/templates/footer.html
@@ -12,4 +12,4 @@ License for the specific language governing permissions and limitations under
the License.
-->
-<p>Fauxton on <a href="http://couchdb.apache.org/">Apache CouchDB</a> <%=version%></p>
+Fauxton on <a href="http://couchdb.apache.org/">Apache CouchDB</a><br> v. <%=version%>
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/53d6431b/app/addons/fauxton/templates/nav_bar.html
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/templates/nav_bar.html b/app/addons/fauxton/templates/nav_bar.html
index 877c9d5..255ebd4 100644
--- a/app/addons/fauxton/templates/nav_bar.html
+++ b/app/addons/fauxton/templates/nav_bar.html
@@ -30,7 +30,7 @@ the License.
</li>
<% }); %>
</ul>
-
+
<div id="bottom-nav">
<ul id="bottom-nav-links" class="nav">
<li data-nav-name= "Documentation">
@@ -39,7 +39,7 @@ the License.
Documentation
</a>
</li>
-
+
<% _.each(bottomNavLinks, function(link) { %>
<% if (link.view) {return;} %>
<li data-nav-name= "<%= link.title %>">
@@ -70,4 +70,5 @@ the License.
<% }); %>
</ul>
</div>
-</div>
\ No newline at end of file
+ <div class="version"></div>
+</div>
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/53d6431b/assets/less/fauxton.less
----------------------------------------------------------------------
diff --git a/assets/less/fauxton.less b/assets/less/fauxton.less
index dc6435b..ba80b5b 100644
--- a/assets/less/fauxton.less
+++ b/assets/less/fauxton.less
@@ -338,6 +338,11 @@ table.databases {
bottom: 0;
background-color: @primaryNav;
overflow-y: scroll;
+ .version {
+ color: #fff;
+ font-size: 10px;
+ padding-left: 10px;
+ }
#footer-links{
position: absolute;
bottom: 0;
@@ -388,7 +393,7 @@ table.databases {
background: url(../img/couchdb-site.png) no-repeat 0 0;
display: block;
height: 100%;
- width: 100%;
+ width: 100%;
}
.closeMenu & {
.icon {
@@ -410,7 +415,7 @@ table.databases {
text-decoration: underline;
}
}
- }
+ }
}
}
nav {
@@ -489,7 +494,7 @@ table.databases {
color: @red;
}
}
-
+
}
ul#bottom-nav-links{
margin-top: 0;
@@ -499,7 +504,7 @@ table.databases {
background-color: @bottomNav;
&.active{
background-color:@linkRed;
- }
+ }
&:hover{
background-color: @navBGHover;
}
@@ -507,6 +512,7 @@ table.databases {
&.fonticon {
position: relative;
&:before {
+ top: -5px;
left: -40px;
font-size: 22px;
}
@@ -780,14 +786,14 @@ table.databases {
.custom-inputs{
- input[type=radio],
- input[type=checkbox] {
- display: none;
- }
+ input[type=radio],
+ input[type=checkbox] {
+ display: none;
+ }
- .checkbox label:before {
- border-radius: 3px;
- }
+ .checkbox label:before {
+ border-radius: 3px;
+ }
.controls > .radio:first-child, .controls > .checkbox:first-child {
padding-top: 15px;
@@ -800,42 +806,42 @@ table.databases {
vertical-align: middle;
}
- input[type=checkbox]:checked + label:before {
+ input[type=checkbox]:checked + label:before {
/*content: "\2713"; */
- content: "\00d7";
- text-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
+ content: "\00d7";
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
font-size: 16px;
- background-color: @red;
- color: white;
- text-align: center;
- line-height: 15px;
- }
-
- label:before {
- content: "";
- display: inline-block;
-
- width: 16px;
- height: 16px;
-
- margin-right: 10px;
- position: absolute;
- left: 0;
- bottom: 1px;
- background-color: #aaa;
- box-shadow: inset 0px 2px 3px 0px rgba(0, 0, 0, .3), 0px 1px 0px 0px rgba(255, 255, 255, .8);
- }
-
- .radio label:before {
- border-radius: 8px;
- }
-
- input[type=radio]:checked + label:before {
- content: "\2022";
- color: #f3f3f3;
- font-size: 30px;
- text-align: center;
- line-height: 18px;
+ background-color: @red;
+ color: white;
+ text-align: center;
+ line-height: 15px;
+ }
+
+ label:before {
+ content: "";
+ display: inline-block;
+
+ width: 16px;
+ height: 16px;
+
+ margin-right: 10px;
+ position: absolute;
+ left: 0;
+ bottom: 1px;
+ background-color: #aaa;
+ box-shadow: inset 0px 2px 3px 0px rgba(0, 0, 0, .3), 0px 1px 0px 0px rgba(255, 255, 255, .8);
+ }
+
+ .radio label:before {
+ border-radius: 8px;
+ }
+
+ input[type=radio]:checked + label:before {
+ content: "\2022";
+ color: #f3f3f3;
+ font-size: 30px;
+ text-align: center;
+ line-height: 18px;
}
label.drop-down{
[08/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: remove superfluous token in dateformat
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/2007403c
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/2007403c
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/2007403c
Branch: refs/heads/import-master
Commit: 2007403cb8e1967cef70f28078df2195f58f0173
Parents: 007f3f3
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Thu Apr 24 19:56:48 2014 +0200
Committer: Robert Kowalski <ro...@kowalski.gd>
Committed: Thu Apr 24 19:56:58 2014 +0200
----------------------------------------------------------------------
app/addons/logs/resources.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/2007403c/app/addons/logs/resources.js
----------------------------------------------------------------------
diff --git a/app/addons/logs/resources.js b/app/addons/logs/resources.js
index dec8187..2545542 100644
--- a/app/addons/logs/resources.js
+++ b/app/addons/logs/resources.js
@@ -34,7 +34,7 @@ function (app, FauxtonAPI, Backbone, d3) {
},
time: function () {
- var formatter = d3.time.format("%H:%M%:%S");
+ var formatter = d3.time.format("%H:%M:%S");
return formatter(this.dateObject);
},
[12/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fix bug in docs list
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/14dac8d8
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/14dac8d8
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/14dac8d8
Branch: refs/heads/import-master
Commit: 14dac8d82e27dbef45d6d3a8a5f456dd6b038233
Parents: 797f8fe
Author: Garren Smith <ga...@gmail.com>
Authored: Fri Apr 25 10:57:26 2014 +0200
Committer: Garren Smith <ga...@gmail.com>
Committed: Fri Apr 25 10:57:26 2014 +0200
----------------------------------------------------------------------
app/addons/documents/resources.js | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/14dac8d8/app/addons/documents/resources.js
----------------------------------------------------------------------
diff --git a/app/addons/documents/resources.js b/app/addons/documents/resources.js
index eb6615a..99e79a2 100644
--- a/app/addons/documents/resources.js
+++ b/app/addons/documents/resources.js
@@ -372,10 +372,20 @@ function(app, FauxtonAPI, PagingCollection) {
// remove any query errors that may return without doc info
// important for when querying keys on all docs
- resp.rows = _.filter(rows, function(row){
+ var cleanRows = _.filter(rows, function(row){
return row.value;
});
+ resp.rows = _.map(cleanRows, function(row){
+ return {
+ _id: row.id,
+ _rev: row.value.rev,
+ value: row.value,
+ key: row.key,
+ doc: row.doc || undefined
+ };
+ });
+
return PagingCollection.prototype.parse.call(this, resp);
}
});
[09/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: remove superfluous console.log
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/97dd734e
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/97dd734e
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/97dd734e
Branch: refs/heads/import-master
Commit: 97dd734e21c4bd31df4db1765c3062d2bb72e6bc
Parents: 539b707
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Sun Apr 20 15:34:36 2014 +0200
Committer: Robert Kowalski <ro...@kowalski.gd>
Committed: Thu Apr 24 20:32:08 2014 +0200
----------------------------------------------------------------------
app/addons/stats/views.js | 1 -
1 file changed, 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/97dd734e/app/addons/stats/views.js
----------------------------------------------------------------------
diff --git a/app/addons/stats/views.js b/app/addons/stats/views.js
index 4bd24d8..f75ee64 100644
--- a/app/addons/stats/views.js
+++ b/app/addons/stats/views.js
@@ -21,7 +21,6 @@ define([
],
function(app, FauxtonAPI,Stats, d3, nv) {
- console.log(nv);
Views = {};
datatypeEventer = {};
[05/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: better styling for the logs
- small columns (pid, date, loglevel) get less width, so there
is more space for the message
- padding around the view
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/ef581405
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/ef581405
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/ef581405
Branch: refs/heads/import-master
Commit: ef58140559f90e96f1b3ea988d900dcedcc091f0
Parents: 321c834
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Fri Apr 11 21:53:48 2014 +0200
Committer: suelockwood <de...@apache.org>
Committed: Thu Apr 17 16:20:01 2014 -0400
----------------------------------------------------------------------
app/addons/logs/assets/less/logs.less | 19 +++++---
app/addons/logs/templates/dashboard.html | 64 ++++++++++++++-------------
2 files changed, 47 insertions(+), 36 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/ef581405/app/addons/logs/assets/less/logs.less
----------------------------------------------------------------------
diff --git a/app/addons/logs/assets/less/logs.less b/app/addons/logs/assets/less/logs.less
index e50f903..a988a46 100644
--- a/app/addons/logs/assets/less/logs.less
+++ b/app/addons/logs/assets/less/logs.less
@@ -11,14 +11,23 @@
* the License.
*/
+.logs {
+ padding: 0 15px;
+ .log-table {
+ width: auto;
+ white-space: nowrap;
+ .args {
+ width: 100%;
+ white-space: normal;
+ }
+ }
+}
+
#log-sidebar {
-
ul {
margin-left: 0px;
- list-style: none;
}
-
- .remove-filter {
- opacity: 0.2;
+ li {
+ list-style-type: none;
}
}
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/ef581405/app/addons/logs/templates/dashboard.html
----------------------------------------------------------------------
diff --git a/app/addons/logs/templates/dashboard.html b/app/addons/logs/templates/dashboard.html
index 199794c..95bee25 100644
--- a/app/addons/logs/templates/dashboard.html
+++ b/app/addons/logs/templates/dashboard.html
@@ -12,35 +12,37 @@ License for the specific language governing permissions and limitations under
the License.
-->
- <h2> CouchDB Logs </h2>
- <table class="table table-bordered" >
- <thead>
- <tr>
- <th class="Date">Date</th>
- <th class="Log Level">Log Value</th>
- <th class="Pid">Pid</th>
- <th class="Args">Url</th>
- </tr>
- </thead>
+<div class="logs">
+ <h2>CouchDB Logs</h2>
+ <table class="table table-bordered log-table">
+ <thead>
+ <tr>
+ <th class="date">Date</th>
+ <th class="level">Log Value</th>
+ <th class="pid">Pid</th>
+ <th class="args">Url</th>
+ </tr>
+ </thead>
- <tbody>
- <% logs.each(function (log) { %>
- <tr class="<%= log.logLevel() %>">
- <td>
- <!-- TODO: better format the date -->
- <%= log.date() %>
- </td>
- <td>
- <%= log.logLevel() %>
- </td>
- <td>
- <%= log.pid() %>
- </td>
- <td>
- <!-- TODO: split the line, maybe put method in it's own column -->
- <%= log.args() %>
- </td>
- </tr>
- <% }); %>
- </tbody>
-</table>
+ <tbody>
+ <% logs.each(function (log) { %>
+ <tr class="<%= log.logLevel() %>">
+ <td>
+ <!-- TODO: better format the date -->
+ <%= log.date() %>
+ </td>
+ <td>
+ <%= log.logLevel() %>
+ </td>
+ <td class="pid">
+ <%= log.pid() %>
+ </td>
+ <td class="args">
+ <!-- TODO: split the line, maybe put method in it's own column -->
+ <%= log.args() %>
+ </td>
+ </tr>
+ <% }); %>
+ </tbody>
+ </table>
+</div>
[03/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Query UI clean up. Added Validation and grouped form elements
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/a67aa73b
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/a67aa73b
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/a67aa73b
Branch: refs/heads/import-master
Commit: a67aa73b0075ee7ccfcb6ebad1de736660a556ad
Parents: 53d6431
Author: suelockwood <de...@apache.org>
Authored: Thu Apr 17 15:20:52 2014 -0400
Committer: suelockwood <de...@apache.org>
Committed: Thu Apr 17 15:23:34 2014 -0400
----------------------------------------------------------------------
app/addons/documents/assets/less/documents.less | 27 ++-
.../documents/templates/advanced_options.html | 189 +++++++++++--------
app/addons/documents/views.js | 105 +++++++----
3 files changed, 205 insertions(+), 116 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a67aa73b/app/addons/documents/assets/less/documents.less
----------------------------------------------------------------------
diff --git a/app/addons/documents/assets/less/documents.less b/app/addons/documents/assets/less/documents.less
index e49720b..e62be30 100644
--- a/app/addons/documents/assets/less/documents.less
+++ b/app/addons/documents/assets/less/documents.less
@@ -40,7 +40,8 @@ button.beautify {
#query div.controls-group.well{
- height: 150px;
+ height: 180px;
+ margin-right: 17px;
}
/** used in all_docs_list.html **/
@@ -119,16 +120,36 @@ button.beautify {
}
#keys-input {
- display: inline-block;
- width: 35%;
+ width: 100%;
}
#keys-error {
display: inline-block;
}
+
.change-sequence {
word-wrap: break-word;
}
+#dashboard-upper-content{
+ .js-query-keys-wrapper{
+ padding-top: 0;
+ }
+ /** used in advanced-options.html**/
+ .custom-inputs {
+ .row-fluid{
+ padding-top: 20px;
+ .radio, .checkbox{
+ padding-left: 0;
+ }
+ .checkbox.inline,
+ #skipRows {
+ margin-bottom: 0;
+ padding: 6px;
+ }
+ }
+ }
+}
+
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a67aa73b/app/addons/documents/templates/advanced_options.html
----------------------------------------------------------------------
diff --git a/app/addons/documents/templates/advanced_options.html b/app/addons/documents/templates/advanced_options.html
index 55c5946..439e864 100644
--- a/app/addons/documents/templates/advanced_options.html
+++ b/app/addons/documents/templates/advanced_options.html
@@ -16,115 +16,144 @@ the License.
<!-- tabs for choosing Keys or Start & end -->
- <div class="btn-group toggle-btns">
- <label for="showKeys" class="drop-down btn active">
- Specific Keys
+ <div class="btn-group toggle-btns row-fluid">
+ <label for="showKeys" class="drop-down btn span6">
+ By Key(s)
</label>
- <label for="showStartEnd" class="drop-down btn">
- Bounded Queries
+ <label for="showStartEnd" class="drop-down btn span6">
+ Between Keys
</label>
</div>
- <div class="controls-group well">
+ <div class="controls-group well hide js-query-keys-wrapper">
<div class="row-fluid" id="js-showKeys">
<div class="controls controls-row">
- <textarea id="keys-input" name="keys" class="input-xxlarge" rows="5" type="text" placeholder="Enter a key, an array of keys. This must be valid JSON."></textarea>
+ <label for="keys-input" class="drop-down">A key, or an array of keys.</label>
+ <textarea id="keys-input" name="keys" class="input-xxlarge" rows="5" type="text" placeholder='Enter valid JSON; e.g., ["1234"] or ["1234","2345"]'></textarea>
<div id="keys-error" class="inline-block js-keys-error"></div>
</div>
</div>
<div class="row-fluid hide" id="js-showStartEnd">
<div class="controls controls-row">
- <input name="startkey" class="span6" type="text" placeholder="Start Key" disabled>
- <input name="endkey" class="span6" type="text" placeholder="End Key">
- </div>
- <div class="controls controls-row checkbox inline">
- <input id="check5" name="inclusive_end" type="checkbox" value="false" disabled>
- <label for="check5">Disable Inclusive End</label>
+ <div class="span6">
+ <label for="startkey" class="drop-down">Start key</label>
+ <input name="startkey" id="startkey" type="text" placeholder='e.g., "1234"' disabled>
+ </div>
+ <div class="span6">
+ <label for="endkey" class="drop-down">End key</label>
+ <input id="endkey" name="endkey" type="text" placeholder='e.g., "1234"'>
+ <div class="controls controls-row checkbox inline">
+ <input id="check5" name="inclusive_end" type="checkbox" value="true" checked disabled>
+ <label for="check5">Include End Key in results</label>
+ </div>
+ </div>
+
</div>
+
</div>
</div>
<!-- Limit and Skip are conditional -->
<div class="controls-group">
- <label class="drop-down inline">
- Limit:
- <select name="limit" class="input-small">
- <option selected="selected">None</option>
- <option>5</option>
- <option>10</option>
- <option>20</option>
- <option>30</option>
- <option>50</option>
- <option>100</option>
- <option>500</option>
- </select>
- </label>
- <label for="skipRows" class="inline drop-down">
- Skip:
- <input name="skip" class="input-large" type="text" id="skipRows" placeholder="Number of rows to skip">
- </label>
-
- <div class="checkbox inline">
- <input id="check1" type="checkbox" name="include_docs" value="true">
- <label name="include_docs" for="check1">Include Docs (show the entire doc body)</label>
- </div>
- <% if (hasReduce) { %>
- <div class="checkbox inline">
- <input id="check2" name="reduce" type="checkbox" value="true">
- <label for="check2">Reduce</label>
- </div>
- <label id="select1" class="drop-down inline">
- Group Level:
- <select id="select1" disabled name="group_level" class="input-small">
- <option value="0">None</option>
- <option value="1">1</option>
- <option value="2">2</option>
- <option value="3">3</option>
- <option value="4">4</option>
- <option value="5">5</option>
- <option value="6">6</option>
- <option value="7">7</option>
- <option value="8">8</option>
- <option value="9">9</option>
- <option value="999" selected="selected">exact</option>
- </select>
- </label>
+ <div class="row-fluid">
+ <div class="span6">
+ <label class="drop-down inline">
+ Limit:
+ <select name="limit" class="input-medium">
+ <option selected="selected">None</option>
+ <option>5</option>
+ <option>10</option>
+ <option>20</option>
+ <option>30</option>
+ <option>50</option>
+ <option>100</option>
+ <option>500</option>
+ </select>
+ </label>
+ </div>
+ <div class="span6">
+ <label for="skipRows" class="inline drop-down">
+ # of rows to skip
+ <input name="skip" class="input-small" type="text" id="skipRows" placeholder="0">
+ </label>
+ </div>
+ </div>
+ <div class="row-fluid">
+ <div class="span6">
+ <label id="select2" class="drop-down inline">
+ Order:
+ <select id="select2" name="descending" class="input-medium">
+ <option value="false">Ascending</option>
+ <option value="true">Descending</option>
+ </select>
+ </label>
+ </div>
+ <div class="span6">
+ <label id="select2" class="drop-down inline">
+ Docs:
+ <select id="select2" name="include_docs" class="input-medium">
+ <option value="false">Exclude</option>
+ <option value="true">Include</option>
+ </select>
+ </label>
+ </div>
+ </div>
+ <div class="row-fluid">
+ <% if (showPreview) { %>
+ <div class="span6">
+ <div class="checkbox inline">
+ <input id="check7" name="stale" type="checkbox" value="true">
+ <label for="check7">Stale</label>
+ </div>
+ </div>
<% } %>
-
- <label id="select2" class="drop-down inline">
- Order:
- <select id="select2" name="descending" class="input-large">
- <option value="false">Accending</option>
- <option value="true">Descending</option>
- </select>
- </label>
-
- <div class="checkbox inline">
- <input id="check6" name="update_seq" type="checkbox" value="true">
- <label for="check6">Update Sequence</label>
+ <div class="span6 update-seq">
+ <div class="checkbox inline">
+ <input id="check6" name="update_seq" type="checkbox" value="true">
+ <label for="check6">Update Sequence</label>
+ </div>
</div>
- <% if (showPreview) { %>
- <div class="checkbox inline">
- <input id="check7" name="stale" type="checkbox" value="true">
- <label for="check7">Stale</label>
+ </div>
+ <% if (hasReduce) { %>
+ <div class="row-fluid">
+ <div class="span6">
+ <div class="checkbox inline">
+ <input id="check2" name="reduce" type="checkbox" value="true">
+ <label for="check2">Reduce</label>
+ </div>
</div>
- <% } %>
+ <div class="span6">
+ <label id="select1" class="drop-down inline">
+ Group Level:
+ <select id="select1" disabled name="group_level" class="input-small">
+ <option value="0">None</option>
+ <option value="1">1</option>
+ <option value="2">2</option>
+ <option value="3">3</option>
+ <option value="4">4</option>
+ <option value="5">5</option>
+ <option value="6">6</option>
+ <option value="7">7</option>
+ <option value="8">8</option>
+ <option value="9">9</option>
+ <option value="999" selected="selected">Exact</option>
+ </select>
+ </label>
+ </div>
+ </div>
+ <% } %>
</div>
+
<div class="controls-group">
- <div class="row-fluid">
- <div id="button-options" class="controls controls-row">
- <button type="submit" class="btn btn-success">Query</button>
- <% if (showPreview) { %>
- <button class="btn btn-info preview">Browser Preview</button>
- <% } %>
- </div>
+ <div id="button-options" class="controls controls-row">
+ <button type="submit" class="btn btn-success">Query</button>
</div>
</div>
</form>
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/a67aa73b/app/addons/documents/views.js
----------------------------------------------------------------------
diff --git a/app/addons/documents/views.js b/app/addons/documents/views.js
index bae49c0..5b096bb 100644
--- a/app/addons/documents/views.js
+++ b/app/addons/documents/views.js
@@ -392,7 +392,7 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
this.newView = options.newView || false;
this.pagination = options.pagination;
_.bindAll(this);
-
+
this._perPage = options.perPageDefault || 20;
this.listenTo(this.collection, 'totalRows:decrement', this.render);
},
@@ -1054,21 +1054,26 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
"change form.js-view-query-update input": "updateFilters",
"change form.js-view-query-update select": "updateFilters",
"submit form.js-view-query-update": "updateView",
- "click button.preview": "previewView",
"click .toggle-btns > label": "toggleQuery"
},
toggleQuery: function(e){
e.preventDefault();
- var showFunctionName =this.$(e.currentTarget).attr("for");
- //highlight current
- this.$(".toggle-btns > label").removeClass('active');
- this.$(e.currentTarget).addClass("active");
-
- this.$("[id^='js-show']").hide();
- //show section & disable what needs to be disabled
- this[showFunctionName]();
+ if (this.$(e.currentTarget).hasClass("active")){
+ this.$('.js-query-keys-wrapper').addClass("hide");
+ this.$(".toggle-btns > label").removeClass('active');
+ this.$('.js-query-keys-wrapper').find("input,textarea").attr("disabled","true");
+ } else {
+ this.$('.js-query-keys-wrapper').removeClass("hide");
+ var showFunctionName =this.$(e.currentTarget).attr("for");
+ //highlight current
+ this.$(".toggle-btns > label").removeClass('active');
+ this.$(e.currentTarget).addClass("active");
+ this.$("[id^='js-show']").hide();
+ //show section & disable what needs to be disabled
+ this[showFunctionName]();
+ }
},
showKeys: function(){
@@ -1114,7 +1119,7 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
if (_.isUndefined(parsedValue)) {
errorMsg = "Keys must be valid json.";
} else if (!_.isArray(parsedValue)) {
- errorMsg = "Keys values must be in an array. E.g [1,2,3]";
+ errorMsg = "Keys values must be in an array. E.g [1,2,3]";
}
if (errorMsg) {
@@ -1123,12 +1128,30 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
type: "error",
msg: errorMsg,
clear: false,
- selector: '.js-keys-error'
+ selector: '.advanced-options .errors-container'
});
return false;
}
- return true;
+ return true;
+ },
+ validateFields: function(params){
+ var errors = false;
+ //so ghetto. Spaghetti code.
+ for (var i= 0; i <params.length; i++){
+ if (params[i].name === "skip"){
+ if (!(/^\d+$/).test(params[i].value)){
+ FauxtonAPI.addNotification({
+ msg: "Numbers only for skip",
+ type: "warn",
+ selector: ".advanced-options .errors-container",
+ clear: true
+ });
+ errors = true;
+ }
+ }
+ }
+ return errors;
},
queryParams: function () {
var $form = this.$(".js-view-query-update"),
@@ -1145,6 +1168,8 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
if (keysParam && !this.validateKeys(keysParam)) { return false; }
+ if (params && this.validateFields(params)){ return false; }
+
// Validate *key* params to ensure they're valid JSON
var keyParams = ["keys","startkey","endkey"];
var errorParams = _.filter(params, function(param) {
@@ -1158,6 +1183,21 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
return {params: params, errorParams: errorParams};
},
+ //these are the saaaaameeeeeeee
+ updateView: function (event) {
+ event.preventDefault();
+ var params = this.queryParams();
+ if (!params) { return;}
+ this.updateViewFn(event, params);
+ },
+
+ // previewView: function (event) {
+ // var params = this.queryParams();
+ // if (!params) { return;}
+ // this.previewFn(event, params);
+ // },
+
+
updateFilters: function(event) {
event.preventDefault();
var $ele = $(event.currentTarget);
@@ -1178,17 +1218,27 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
var notification = FauxtonAPI.addNotification({
msg: "include_docs has been disabled as you cannot include docs on a reduced view",
type: "warn",
- selector: ".view.show .all-docs-list.errors-container",
+ selector: ".advanced-options .errors-container",
clear: true
});
}
$form.find("input[name=include_docs]").prop("disabled", true);
$form.find("select[name=group_level]").prop("disabled", false);
} else {
- $form.find("select[name=group_level]").prop("disabled", true);
+ $form.find("select[name=group_level]").val("999").prop("disabled", true);
$form.find("input[name=include_docs]").prop("disabled", false);
}
break;
+ case "skip":
+ if (!(/^\d+$/).test($ele.val())){
+ FauxtonAPI.addNotification({
+ msg: "Numbers only for skip",
+ type: "warn",
+ selector: ".advanced-options .errors-container",
+ clear: true
+ });
+ }
+ break;
case "include_docs":
break;
}
@@ -1217,8 +1267,8 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
}
this.updateFiltersFor(key, $ele);
break;
- case "key":
- case "keys":
+ case "key":
+ case "keys":
$form.find("textarea[name='"+key+"']").val(val);
break;
default:
@@ -1228,18 +1278,7 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
}, this);
},
- updateView: function (event) {
- event.preventDefault();
- var params = this.queryParams();
- if (!params) { return;}
- this.updateViewFn(event, params);
- },
- previewView: function (event) {
- var params = this.queryParams();
- if (!params) { return;}
- this.previewFn(event, params);
- },
serialize: function () {
return {
@@ -1619,7 +1658,7 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
toggleIndexNav: function (event) {
$('#dashboard-content').scrollTop(0); //scroll up
-
+
var $targetId = this.$(event.target).attr('id'),
$previousTab = this.$(this.$('li.active a').attr('href')),
$targetTab = this.$(this.$(event.target).attr('href'));
@@ -1628,7 +1667,7 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
$previousTab.removeAttr('style');
}
//stop polling
- this.ddocInfoView.stopRefreshInterval();
+ this.ddocInfoView.stopRefreshInterval();
if ($targetId === 'index-nav') {
if (this.newView) { return; }
@@ -1640,8 +1679,8 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
} else if ($targetId === "meta-nav"){
if (!$("#ddoc-info").is(":visible")){
this.ddocInfoView.startRefreshInterval();
- }
- $targetTab.toggle('slow');
+ }
+ $targetTab.toggle('slow');
} else {
$targetTab.toggle('slow');
}
@@ -1688,7 +1727,7 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
renderDdocInfo: function(){
if(this.ddocInfoView){
this.ddocInfoView.remove();
- }
+ }
if (this.newView) { return; }
this.ddocInfoView = this.setView('#ddoc-info', new Views.DdocInfo({model: this.ddocInfo }));
[04/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: do not slice off the error text from erlang errors
As the erlang errors contain two linebreaks, and the parsing
function is using linebreaks to separate the messages, the content
was sliced off, which looked like there would not be enough space
for the message. In fact it got lost during the parsing.
This tries to normalize the data before and after the parsing,
it removes the linebreaks of the erlang errors so it is parsed
right. As the other spaces are no &nspb;-entities it does not hurt
that the are removed.
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/321c8349
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/321c8349
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/321c8349
Branch: refs/heads/import-master
Commit: 321c8349155e41eff457e6ddfe11cc25ae1a8303
Parents: a67aa73
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Sat Apr 12 15:34:10 2014 +0200
Committer: suelockwood <de...@apache.org>
Committed: Thu Apr 17 16:17:36 2014 -0400
----------------------------------------------------------------------
app/addons/logs/resources.js | 5 +--
app/addons/logs/tests/resourcesSpec.js | 48 ++++++++++++++++++++---------
2 files changed, 37 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/321c8349/app/addons/logs/resources.js
----------------------------------------------------------------------
diff --git a/app/addons/logs/resources.js b/app/addons/logs/resources.js
index c285395..6082fcd 100644
--- a/app/addons/logs/resources.js
+++ b/app/addons/logs/resources.js
@@ -67,7 +67,8 @@ function (app, FauxtonAPI, Backbone, d3) {
},
parse: function (resp) {
- var lines = resp.split(/\n/);
+ resp = resp.replace(/\n\s/g, '');
+ var lines = resp.split(/\n/);
return _.foldr(lines, function (acc, logLine) {
var match = logLine.match(/^\[(.*?)\]\s\[(.*?)\]\s\[(.*?)\]\s(.*)/);
@@ -77,7 +78,7 @@ function (app, FauxtonAPI, Backbone, d3) {
date: match[1],
log_level: match[2],
pid: match[3],
- args: match[4]
+ args: match[4].replace(/\s\s+/g, '')
});
return acc;
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/321c8349/app/addons/logs/tests/resourcesSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/logs/tests/resourcesSpec.js b/app/addons/logs/tests/resourcesSpec.js
index d67c677..5bdd339 100644
--- a/app/addons/logs/tests/resourcesSpec.js
+++ b/app/addons/logs/tests/resourcesSpec.js
@@ -16,22 +16,42 @@ define([
], function (Log, testUtils) {
var assert = testUtils.assert;
- describe('Log Resources', function () {
+ describe('Logs Resources', function () {
- describe('Date Formatter', function () {
- it('adds leading zeros to minutes', function () {
- var model;
+ describe('Log Parser', function () {
+ it('parses GET messages', function () {
+ var parsedLog,
+ collection,
+ log = '[Sat, 12 Apr 2014 13:02:58 GMT] [info] [<0.3097.2>] 127.0.0.1 - - GET /_session 200\n' +
+ '[Sat, 12 Apr 2014 13:02:58 GMT] [info] [<0.3098.2>] 127.0.0.1 - - GET /_session 200\n' +
+ '[Sat, 12 Apr 2014 13:02:58 GMT] [info] [<0.3099.2>] 127.0.0.1 - - GET / 200\n';
- model = new Log.Model({
- date: 'Sat, 12 Apr 2014 15:04:01 GMT',
- log_level: 'info',
- pid: '123',
- args: 'ente ente'
- });
- // timezones with daylightsaving in JS are hard
- // and we use the current local time here
- // so do not test for hours and the exact day
- assert.ok(/Apr \d\d \d\d:04:01/.test(model.date()));
+ collection = new Log.Collection();
+ parsedLog = collection.parse(log);
+ assert.equal(parsedLog[0].date, 'Sat, 12 Apr 2014 13:02:58 GMT');
+ assert.equal(parsedLog[0].args, '127.0.0.1 - - GET / 200');
+ });
+
+ it('parses GET messages with erlang errors', function () {
+ var parsedLog,
+ collection,
+ log = '[Sat, 12 Apr 2014 13:14:15 GMT] [info] [<0.9491.2>] Retrying GET to http://176.9.4.195/registry/genstatic?revs=true&open_revs=%5B%224-a9be203658a59fd2116ae9acbd10f0de%22%5D&latest=true in 1.0 seconds due to error {error,\n' +
+ ' {error,\n' +
+ ' connection_closing}}\n' +
+ '[Sat, 12 Apr 2014 13:14:15 GMT] [error] [<0.9499.2>] Replicator, request GET to "http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true" failed due to error {error,connection_closing}\n' +
+ '[Sat, 12 Apr 2014 13:14:15 GMT] [info] [<0.9497.2>] Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true in 1.0 seconds due to error {error,\n' +
+ ' {error,\n' +
+ ' connection_closing}}\n' +
+ '[Sat, 12 Apr 2014 13:14:15 GMT] [error] [<0.9507.2>] Replicator, request GET to "http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%224-c8ba4809e2cacc1635f8887ec0d8d49a%22%5D&latest=true" failed due to error {error,connection_closing}\n' +
+ '[Sat, 12 Apr 2014 13:14:15 GMT] [info] [<0.9505.2>] Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%224-c8ba4809e2cacc1635f8887ec0d8d49a%22%5D&latest=true in 1.0 seconds due to error {error,\n' +
+ ' {error,\n' +
+ ' connection_closing}}\n';
+
+ collection = new Log.Collection();
+ parsedLog = collection.parse(log);
+ assert.equal(parsedLog[1].date, 'Sat, 12 Apr 2014 13:14:15 GMT');
+ assert.equal(parsedLog[1].args, 'Replicator, request GET to "http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%224-c8ba4809e2cacc1635f8887ec0d8d49a%22%5D&latest=true" failed due to error {error,connection_closing}');
+ assert.equal(parsedLog[2].args, 'Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true in 1.0 seconds due to error {error,{error,connection_closing}}');
});
});
});
[11/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: remove accidental globals
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/797f8fe5
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/797f8fe5
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/797f8fe5
Branch: refs/heads/import-master
Commit: 797f8fe56bcb321a1768cd4460da0622f052550e
Parents: 97dd734
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Sun Apr 20 15:36:47 2014 +0200
Committer: Robert Kowalski <ro...@kowalski.gd>
Committed: Thu Apr 24 20:32:08 2014 +0200
----------------------------------------------------------------------
app/addons/activetasks/tests/viewsSpec.js | 8 ++++----
app/addons/activetasks/views.js | 4 ++--
app/addons/auth/resources.js | 2 +-
app/addons/documents/resources.js | 2 +-
app/addons/documents/routes.js | 2 +-
app/addons/documents/views.js | 2 ++
app/addons/permissions/tests/viewsSpec.js | 10 +++++++---
app/addons/pouchdb/pouchdb.mapreduce.js | 10 +++++-----
app/addons/stats/routes.js | 11 +++++------
app/addons/stats/views.js | 6 +++---
10 files changed, 31 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/activetasks/tests/viewsSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/activetasks/tests/viewsSpec.js b/app/addons/activetasks/tests/viewsSpec.js
index 13c9049..c1be25b 100644
--- a/app/addons/activetasks/tests/viewsSpec.js
+++ b/app/addons/activetasks/tests/viewsSpec.js
@@ -45,7 +45,7 @@ define([
});
it("Should set polling rate", function () {
- $range = tabMenu.$('#pollingRange');
+ var $range = tabMenu.$('#pollingRange');
$range.val(15);
$range.trigger('change');
@@ -53,8 +53,8 @@ define([
});
it("Should clearInterval", function () {
- $range = tabMenu.$('#pollingRange');
- clearIntervalMock = sinon.spy(window,'clearInterval');
+ var $range = tabMenu.$('#pollingRange');
+ var clearIntervalMock = sinon.spy(window,'clearInterval');
$range.trigger('change');
assert.ok(clearIntervalMock.calledOnce);
@@ -64,7 +64,7 @@ define([
it("Should trigger update:poll event", function () {
var spy = sinon.spy();
Views.Events.on('update:poll', spy);
- $range = tabMenu.$('#pollingRange');
+ var $range = tabMenu.$('#pollingRange');
$range.trigger('change');
assert.ok(spy.calledOnce);
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/activetasks/views.js
----------------------------------------------------------------------
diff --git a/app/addons/activetasks/views.js b/app/addons/activetasks/views.js
index b0940bf..c7e904a 100644
--- a/app/addons/activetasks/views.js
+++ b/app/addons/activetasks/views.js
@@ -116,7 +116,7 @@ function (app, FauxtonAPI, activetasks) {
"click th": "sortByType"
},
initialize: function(){
- currentView = this.options.currentView;
+ this.currentView = this.options.currentView;
},
sortByType: function(e){
var currentTarget = e.currentTarget,
@@ -127,7 +127,7 @@ function (app, FauxtonAPI, activetasks) {
},
serialize: function(){
return {
- currentView: currentView,
+ currentView: this.currentView,
collection: this.collection
};
},
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/auth/resources.js
----------------------------------------------------------------------
diff --git a/app/addons/auth/resources.js b/app/addons/auth/resources.js
index ba3a438..6e191b1 100644
--- a/app/addons/auth/resources.js
+++ b/app/addons/auth/resources.js
@@ -299,7 +299,7 @@ function (app, FauxtonAPI, CouchdbSession) {
"submit #change-password": "changePassword"
},
- changePassword: function () {
+ changePassword: function (event) {
event.preventDefault();
var that = this,
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/documents/resources.js
----------------------------------------------------------------------
diff --git a/app/addons/documents/resources.js b/app/addons/documents/resources.js
index a787f0d..eb6615a 100644
--- a/app/addons/documents/resources.js
+++ b/app/addons/documents/resources.js
@@ -119,7 +119,7 @@ function(app, FauxtonAPI, PagingCollection) {
setDdocView: function (view, map, reduce) {
if (!this.isDdoc()) return false;
- var views = this.get('views');
+ var views = this.get('views'),
tempView = views[view] || {};
if (reduce) {
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/documents/routes.js
----------------------------------------------------------------------
diff --git a/app/addons/documents/routes.js b/app/addons/documents/routes.js
index d574588..5a2a04f 100644
--- a/app/addons/documents/routes.js
+++ b/app/addons/documents/routes.js
@@ -256,7 +256,7 @@ function(app, FauxtonAPI, Documents, Databases) {
viewFn: function (databaseName, ddoc, view) {
var params = this.createParams(),
urlParams = params.urlParams,
- docParams = params.docParams;
+ docParams = params.docParams,
decodeDdoc = decodeURIComponent(ddoc);
view = view.replace(/\?.*$/,'');
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/documents/views.js
----------------------------------------------------------------------
diff --git a/app/addons/documents/views.js b/app/addons/documents/views.js
index 5b096bb..77f3bde 100644
--- a/app/addons/documents/views.js
+++ b/app/addons/documents/views.js
@@ -883,6 +883,8 @@ function(app, FauxtonAPI, Components, Documents, Databases, pouchdb,
},
getDocFromEditor: function () {
+ var json;
+
if (!this.hasValidCode()) {
return false;
}
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/permissions/tests/viewsSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/permissions/tests/viewsSpec.js b/app/addons/permissions/tests/viewsSpec.js
index 27abca4..c22d405 100644
--- a/app/addons/permissions/tests/viewsSpec.js
+++ b/app/addons/permissions/tests/viewsSpec.js
@@ -16,9 +16,10 @@ define([
'testUtils'
], function (FauxtonAPI, Views, Models, testUtils) {
var assert = testUtils.assert,
- ViewSandbox = testUtils.ViewSandbox;
+ ViewSandbox = testUtils.ViewSandbox;
describe('Permission View', function () {
+ var security, section, viewSandbox;
beforeEach(function () {
security = new Models.Security({'admins': {
@@ -62,7 +63,9 @@ define([
});
describe('PermissionsSection', function () {
- var section, security;
+ var section,
+ security,
+ viewSandbox;
beforeEach(function () {
security = new Models.Security({'admins': {
@@ -124,7 +127,8 @@ define([
});
describe('PermissionItem', function () {
- var item;
+ var item,
+ viewSandbox;
beforeEach(function () {
item = new Views.PermissionItem({
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/pouchdb/pouchdb.mapreduce.js
----------------------------------------------------------------------
diff --git a/app/addons/pouchdb/pouchdb.mapreduce.js b/app/addons/pouchdb/pouchdb.mapreduce.js
index 224a6f6..502e0eb 100644
--- a/app/addons/pouchdb/pouchdb.mapreduce.js
+++ b/app/addons/pouchdb/pouchdb.mapreduce.js
@@ -36,6 +36,10 @@ function(app, FauxtonAPI, Collate) {
var Pouch = {};
Pouch.collate = Collate.collate;
+ function sum(values) {
+ return values.reduce(function(a, b) { return a + b; }, 0);
+ }
+
//var MapReduce = function(db) {
var MapReduce = function() {
@@ -59,7 +63,7 @@ function(app, FauxtonAPI, Collate) {
'max': Math.max.apply(null, values),
'count': values.length,
'sumsqr': (function(){
- _sumsqr = 0;
+ var _sumsqr = 0;
for(var idx in values){
_sumsqr += values[idx] * values[idx];
}
@@ -75,10 +79,6 @@ function(app, FauxtonAPI, Collate) {
return;
}
- function sum(values) {
- return values.reduce(function(a, b) { return a + b; }, 0);
- }
-
var results = [];
var current = null;
var num_started= 0;
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/stats/routes.js
----------------------------------------------------------------------
diff --git a/app/addons/stats/routes.js b/app/addons/stats/routes.js
index 971c111..9939d43 100644
--- a/app/addons/stats/routes.js
+++ b/app/addons/stats/routes.js
@@ -25,8 +25,8 @@ function(app, FauxtonAPI, Stats) {
"stats":"showStats",
"_stats": "showStats"
},
-
-
+
+
crumbs: [
{"name": "Statistics", "link": "_stats"}
],
@@ -35,15 +35,14 @@ function(app, FauxtonAPI, Stats) {
initialize: function () {
this.stats = new Stats.Collection();
-
- this.setView("#sidebar-content", new Views.StatSelect({
+ this.setView("#sidebar-content", new Stats.Views.StatSelect({
collection: this.stats
}));
},
showStats: function () {
- this.setView("#dashboard-content", new Views.Statistics({
+ this.setView("#dashboard-content", new Stats.Views.Statistics({
collection: this.stats
}));
},
@@ -53,7 +52,7 @@ function(app, FauxtonAPI, Stats) {
},
apiUrl: function(){
- return [ this.stats.url, this.stats.documentation];
+ return [ this.stats.url, this.stats.documentation];
}
});
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/797f8fe5/app/addons/stats/views.js
----------------------------------------------------------------------
diff --git a/app/addons/stats/views.js b/app/addons/stats/views.js
index f75ee64..275c30b 100644
--- a/app/addons/stats/views.js
+++ b/app/addons/stats/views.js
@@ -20,10 +20,10 @@ define([
],
-function(app, FauxtonAPI,Stats, d3, nv) {
- Views = {};
+function(app, FauxtonAPI, Stats, d3, nv) {
+ var Views = {},
+ datatypeEventer = {};
- datatypeEventer = {};
_.extend(datatypeEventer, Backbone.Events);
Views.Legend = FauxtonAPI.View.extend({
[10/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: test for globals
As a developer, I don't want to accidentally pollute the global
namespace and rely on global state.
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/539b707d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/539b707d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/539b707d
Branch: refs/heads/import-master
Commit: 539b707d51e23c7ff225a192df1474879233bdca
Parents: 2007403
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Sun Apr 20 15:32:42 2014 +0200
Committer: Robert Kowalski <ro...@kowalski.gd>
Committed: Thu Apr 24 20:32:08 2014 +0200
----------------------------------------------------------------------
Gruntfile.js | 36 ++++++++++++++++++++++++++++++++++--
1 file changed, 34 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/539b707d/Gruntfile.js
----------------------------------------------------------------------
diff --git a/Gruntfile.js b/Gruntfile.js
index c650b9f..8ffb2f8 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -164,7 +164,39 @@ module.exports = function(grunt) {
options: {
scripturl: true,
evil: true,
- expr: true
+ expr: true,
+ undef: true,
+ globals: {
+ document: true,
+ window: true,
+ location: true,
+ alert: true,
+ console: true,
+ clearInterval: true,
+ setInterval: true,
+ setTimeout: true,
+ prompt: true,
+ confirm: true,
+
+ jQuery: true,
+ Backbone: true,
+ $: true,
+ _: true,
+ require: true,
+ module: true,
+ sinon: true,
+ it: true,
+ describe: true,
+ beforeEach: true,
+ afterEach: true,
+ before: true,
+ after: true,
+ define: true,
+
+ Spinner: true,
+ prettyPrint: true
+
+ }
}
},
@@ -242,7 +274,7 @@ module.exports = function(grunt) {
couchserver: couchserver_config,
watch: {
- js: {
+ js: {
files: helper.watchFiles(['.js'], ["./app/**/*.js", '!./app/load_addons.js',"./assets/**/*.js", "./test/**/*.js"]),
tasks: ['watchRun'],
},
[02/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Add Roles to _all_docs for _reader, _admin, _writer
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/c5da8fb3
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/c5da8fb3
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/c5da8fb3
Branch: refs/heads/import-master
Commit: c5da8fb3c4c020df37f6c576283e991d857b4672
Parents: 4ab2cde
Author: suelockwood <de...@apache.org>
Authored: Thu Apr 17 11:36:35 2014 -0400
Committer: suelockwood <de...@apache.org>
Committed: Thu Apr 17 11:37:54 2014 -0400
----------------------------------------------------------------------
app/addons/documents/routes.js | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/c5da8fb3/app/addons/documents/routes.js
----------------------------------------------------------------------
diff --git a/app/addons/documents/routes.js b/app/addons/documents/routes.js
index 5497a30..d574588 100644
--- a/app/addons/documents/routes.js
+++ b/app/addons/documents/routes.js
@@ -90,7 +90,7 @@ function(app, FauxtonAPI, Documents, Databases) {
database = this.database;
doc.copy(newId).then(function () {
- doc.set({_id: newId});
+ doc.set({_id: newId});
docView.forceRender();
FauxtonAPI.navigate('/database/' + database.safeID() + '/' + app.utils.safeURLName(newId), {trigger: true});
FauxtonAPI.addNotification({
@@ -143,7 +143,11 @@ function(app, FauxtonAPI, Documents, Databases) {
layout: "with_tabs_sidebar",
selectedHeader: "Databases",
routes: {
- "database/:database/_all_docs(:extra)": "allDocs",
+
+ "database/:database/_all_docs(:extra)": {
+ route: "allDocs",
+ roles: ["_reader","_writer","_admin"]
+ },
"database/:database/_design/:ddoc/_view/:view": {
route: "viewFn",
roles: ['_admin']
@@ -198,7 +202,7 @@ function(app, FauxtonAPI, Documents, Databases) {
},
/*
- * docParams are the options collection uses to fetch from the server
+ * docParams are the options collection uses to fetch from the server
* urlParams are what are shown in the url and to the user
* They are not the same when paginating
*/
@@ -266,7 +270,7 @@ function(app, FauxtonAPI, Documents, Databases) {
pageSize: this.getDocPerPageLimit(urlParams, parseInt(docParams.limit, 10))
}
});
-
+
this.viewEditor = this.setView("#dashboard-upper-content", new Documents.Views.ViewEditor({
model: this.data.database,
ddocs: this.data.designDocs,
@@ -281,7 +285,7 @@ function(app, FauxtonAPI, Documents, Databases) {
this.documentsView = this.createViewDocumentsView({
designDoc: decodeDdoc,
- docParams: docParams,
+ docParams: docParams,
urlParams: urlParams,
database: this.data.database,
indexedDocs: this.data.indexedDocs,
@@ -308,7 +312,7 @@ function(app, FauxtonAPI, Documents, Databases) {
};
},
- createViewDocumentsView: function (options) {
+ createViewDocumentsView: function (options) {
return this.setView("#dashboard-lower-content", new Documents.Views.AllDocsList({
database: options.database,
@@ -374,7 +378,7 @@ function(app, FauxtonAPI, Documents, Databases) {
if (!this.documentsView) {
this.documentsView = this.createViewDocumentsView({
designDoc: ddoc,
- docParams: docParams,
+ docParams: docParams,
urlParams: urlParams,
database: this.data.database,
indexedDocs: this.indexedDocs,
@@ -453,7 +457,7 @@ function(app, FauxtonAPI, Documents, Databases) {
} else {
storedPerPage = parseInt(storedPerPage, 10);
}
- }
+ }
if (!urlParams.limit || urlParams.limit > storedPerPage) {
return parseInt(storedPerPage, 10);
[07/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Group log messages by date
Introduce a heading for each day in the logs and remove the day
from each column.
Closes COUCHDB-2136
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/007f3f30
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/007f3f30
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/007f3f30
Branch: refs/heads/import-master
Commit: 007f3f30a0c7356868790610f0f9cec26db558ed
Parents: ccef1a4
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Sat Apr 19 13:18:22 2014 +0200
Committer: Robert Kowalski <ro...@kowalski.gd>
Committed: Tue Apr 22 21:48:04 2014 +0200
----------------------------------------------------------------------
app/addons/logs/resources.js | 34 +++++++++++++--
app/addons/logs/templates/dashboard.html | 38 +++++++++--------
app/addons/logs/tests/resourcesSpec.js | 61 ++++++++++++++++++++++++++-
3 files changed, 110 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/007f3f30/app/addons/logs/resources.js
----------------------------------------------------------------------
diff --git a/app/addons/logs/resources.js b/app/addons/logs/resources.js
index 6082fcd..dec8187 100644
--- a/app/addons/logs/resources.js
+++ b/app/addons/logs/resources.js
@@ -23,11 +23,20 @@ function (app, FauxtonAPI, Backbone, d3) {
Log.Model = Backbone.Model.extend({
+ initialize: function () {
+ this.dateObject = new Date(this.get('date'));
+ },
+
date: function () {
- var date = new Date(this.get('date')),
- formatter = d3.time.format("%b %e %H:%M%:%S");
+ var formatter = d3.time.format("%b %e");
+
+ return formatter(this.dateObject);
+ },
+
+ time: function () {
+ var formatter = d3.time.format("%H:%M%:%S");
- return formatter(date);
+ return formatter(this.dateObject);
},
logLevel: function () {
@@ -66,6 +75,19 @@ function (app, FauxtonAPI, Backbone, d3) {
return Backbone.Collection.prototype.fetch.call(this, _.extend(options, {dataType: "html"}));
},
+ sortLogsIntoDays: function () {
+ return _.reduce(this.toArray(), function (sortedCollection, log, key) {
+ var date = log.date();
+
+ if (!sortedCollection[date]) {
+ sortedCollection[date] = [];
+ }
+
+ sortedCollection[date].push(log);
+ return sortedCollection;
+ }, {});
+ },
+
parse: function (resp) {
resp = resp.replace(/\n\s/g, '');
var lines = resp.split(/\n/);
@@ -110,7 +132,11 @@ function (app, FauxtonAPI, Backbone, d3) {
},
serialize: function () {
- return { logs: new Log.Collection(this.createFilteredCollection())};
+ var collection = new Log.Collection(this.createFilteredCollection());
+
+ return {
+ days: collection.sortLogsIntoDays()
+ };
},
afterRender: function () {
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/007f3f30/app/addons/logs/templates/dashboard.html
----------------------------------------------------------------------
diff --git a/app/addons/logs/templates/dashboard.html b/app/addons/logs/templates/dashboard.html
index 95bee25..855da37 100644
--- a/app/addons/logs/templates/dashboard.html
+++ b/app/addons/logs/templates/dashboard.html
@@ -17,7 +17,7 @@ the License.
<table class="table table-bordered log-table">
<thead>
<tr>
- <th class="date">Date</th>
+ <th class="time">Date</th>
<th class="level">Log Value</th>
<th class="pid">Pid</th>
<th class="args">Url</th>
@@ -25,23 +25,25 @@ the License.
</thead>
<tbody>
- <% logs.each(function (log) { %>
- <tr class="<%= log.logLevel() %>">
- <td>
- <!-- TODO: better format the date -->
- <%= log.date() %>
- </td>
- <td>
- <%= log.logLevel() %>
- </td>
- <td class="pid">
- <%= log.pid() %>
- </td>
- <td class="args">
- <!-- TODO: split the line, maybe put method in it's own column -->
- <%= log.args() %>
- </td>
- </tr>
+ <% _.forEach(days, function (logs, date) { %>
+ <tr><td class="day" colspan="4"><%= date %></td></tr>
+ <% _.forEach(logs, function (log) { %>
+ <tr class="<%= log.logLevel() %>">
+ <td>
+ <%= log.time() %>
+ </td>
+ <td>
+ <%= log.logLevel() %>
+ </td>
+ <td class="pid">
+ <%= log.pid() %>
+ </td>
+ <td class="args">
+ <!-- TODO: split the line, maybe put method in it's own column -->
+ <%= log.args() %>
+ </td>
+ </tr>
+ <% }); %>
<% }); %>
</tbody>
</table>
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/007f3f30/app/addons/logs/tests/resourcesSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/logs/tests/resourcesSpec.js b/app/addons/logs/tests/resourcesSpec.js
index 5bdd339..916dc91 100644
--- a/app/addons/logs/tests/resourcesSpec.js
+++ b/app/addons/logs/tests/resourcesSpec.js
@@ -14,7 +14,8 @@ define([
'addons/logs/resources',
'testUtils'
], function (Log, testUtils) {
- var assert = testUtils.assert;
+ var assert = testUtils.assert,
+ ViewSandbox = testUtils.ViewSandbox;
describe('Logs Resources', function () {
@@ -54,5 +55,63 @@ define([
assert.equal(parsedLog[2].args, 'Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true in 1.0 seconds due to error {error,{error,connection_closing}}');
});
});
+
+ describe('uses a heading for each date (COUCHDB-2136)', function () {
+ var collection,
+ view;
+
+ beforeEach(function () {
+ collection = new Log.Collection([
+ new Log.Model({
+ date: new Date('Fri Apr 19 2014 12:06:01 GMT+0200 (CEST)'),
+ log_level: 'info',
+ pid: 1337,
+ args: 'ente ente'
+ }),
+ new Log.Model({
+ date: new Date('Fri Apr 18 2014 12:06:01 GMT+0200 (CEST)'),
+ log_level: 'info',
+ pid: 1337,
+ args: 'ente ente'
+ }),
+ new Log.Model({
+ date: new Date('Thu Apr 17 2014 12:06:01 GMT+0200 (CEST)'),
+ log_level: 'info',
+ pid: 1337,
+ args: 'ente ente'
+ }),
+ new Log.Model({
+ date: new Date('Thu Apr 16 2014 12:06:01 GMT+0200 (CEST)'),
+ log_level: 'info',
+ pid: 1337,
+ args: 'ente ente'
+ })
+ ]);
+
+ });
+
+ it('sorts the data into an object', function () {
+ var sortedCollection = collection.sortLogsIntoDays();
+
+ assert.property(sortedCollection, 'Apr 18');
+ assert.property(sortedCollection, 'Apr 17');
+ });
+
+ it('creates headers with dates', function () {
+ var titles = [],
+ viewSandbox,
+ view;
+
+ view = new Log.Views.View({collection: collection});
+ viewSandbox = new ViewSandbox();
+ viewSandbox.renderView(view);
+
+ view.$('td[colspan="4"]').each(function (i, elem) {
+ titles.push($(elem).text());
+ });
+ assert.include(titles, 'Apr 18');
+ assert.include(titles, 'Apr 17');
+ });
+ });
});
});
[06/12] fauxton commit: updated refs/heads/import-master to 14dac8d
Posted by kx...@apache.org.
Fauxton: resizeColumns fires event on resize
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/ccef1a40
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/ccef1a40
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/ccef1a40
Branch: refs/heads/import-master
Commit: ccef1a4084003b0e430ca8b0ec95c463bcd66b21
Parents: ef58140
Author: Garren Smith <ga...@gmail.com>
Authored: Mon Apr 21 17:31:19 2014 +0200
Committer: Garren Smith <ga...@gmail.com>
Committed: Mon Apr 21 17:31:43 2014 +0200
----------------------------------------------------------------------
app/addons/fauxton/resizeColumns.js | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/ccef1a40/app/addons/fauxton/resizeColumns.js
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/resizeColumns.js b/app/addons/fauxton/resizeColumns.js
index b081580..1cdaca8 100644
--- a/app/addons/fauxton/resizeColumns.js
+++ b/app/addons/fauxton/resizeColumns.js
@@ -81,8 +81,11 @@ function(FauxtonAPI) {
if(this.options.callback) {
this.options.callback();
}
+ this.trigger('resize');
}
};
+ _.extend(Resize.prototype, Backbone.Events);
+
return Resize;
});