summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsuelockwood <deathbearbrown@gmail.com>2013-09-06 14:19:39 -0400
committersuelockwood <deathbearbrown@gmail.com>2013-09-06 14:19:39 -0400
commit0bc81f93430153b678d4484371263de8b504b0a6 (patch)
treee9d8110b6e6bd42243d4b16a320f54aca84989e9
parent8c8e5a4671377563be6dcc942c976f9ae602c76a (diff)
downloadcouchdb-0bc81f93430153b678d4484371263de8b504b0a6.tar.gz
Fix order of action buttons in the editor
-rw-r--r--src/fauxton/app/modules/documents/views.js127
-rw-r--r--src/fauxton/app/templates/documents/doc.html15
-rw-r--r--src/fauxton/app/templates/documents/doc_field_editor_tabs.html15
-rw-r--r--src/fauxton/assets/less/database.less9
4 files changed, 85 insertions, 81 deletions
diff --git a/src/fauxton/app/modules/documents/views.js b/src/fauxton/app/modules/documents/views.js
index 805116ee2..83e1e8fd3 100644
--- a/src/fauxton/app/modules/documents/views.js
+++ b/src/fauxton/app/modules/documents/views.js
@@ -298,71 +298,7 @@ function(app, FauxtonAPI, Documents, pouchdb, Codemirror, JSHint, resizeColumns)
},
events: {
- "click button.delete": "destroy",
- "click button.duplicate": "duplicate",
- "click button.upload": "upload"
- },
-
- destroy: function(event) {
- if (this.model.isNewDoc()) {
- FauxtonAPI.addNotification({
- msg: 'This document has not been saved yet.',
- type: 'warning'
- });
- return;
- }
-
- if (!window.confirm("Are you sure you want to delete this doc?")) {
- return false;
- }
-
- var database = this.model.database;
-
- this.model.destroy().then(function(resp) {
- FauxtonAPI.addNotification({
- msg: "Succesfully destroyed your doc"
- });
- FauxtonAPI.navigate(database.url("index"));
- }, function(resp) {
- FauxtonAPI.addNotification({
- msg: "Failed to destroy your doc!",
- type: "error"
- });
- });
- },
-
- beforeRender: function () {
- this.uploadModal = this.setView('#upload-modal', new Views.UploadModal({model: this.model}));
- this.uploadModal.render();
-
- this.duplicateModal = this.setView('#duplicate-modal', new Views.DuplicateDocModal({model: this.model}));
- this.duplicateModal.render();
- },
-
- upload: function (event) {
- event.preventDefault();
- if (this.model.isNewDoc()) {
- FauxtonAPI.addNotification({
- msg: 'Please save the document before uploading an attachment.',
- type: 'warning'
- });
- return;
- }
- this.uploadModal.showModal();
- },
-
- duplicate: function(event) {
- if (this.model.isNewDoc()) {
- FauxtonAPI.addNotification({
- msg: 'Please save the document before duplicating it.',
- type: 'warning'
- });
- return;
- }
- event.preventDefault();
- this.duplicateModal.showModal();
},
-
updateSelected: function (selected) {
this.selected = selected;
this.$('.active').removeClass('active');
@@ -590,13 +526,74 @@ function(app, FauxtonAPI, Documents, pouchdb, Codemirror, JSHint, resizeColumns)
Views.Doc = FauxtonAPI.View.extend({
template: "templates/documents/doc",
events: {
- "click button.save-doc": "saveDoc"
+ "click button.save-doc": "saveDoc",
+ "click button.delete": "destroy",
+ "click button.duplicate": "duplicate",
+ "click button.upload": "upload"
},
disableLoader: true,
initialize: function (options) {
this.database = options.database;
},
+ destroy: function(event) {
+ if (this.model.isNewDoc()) {
+ FauxtonAPI.addNotification({
+ msg: 'This document has not been saved yet.',
+ type: 'warning'
+ });
+ return;
+ }
+
+ if (!window.confirm("Are you sure you want to delete this doc?")) {
+ return false;
+ }
+
+ var database = this.model.database;
+
+ this.model.destroy().then(function(resp) {
+ FauxtonAPI.addNotification({
+ msg: "Succesfully destroyed your doc"
+ });
+ FauxtonAPI.navigate(database.url("index"));
+ }, function(resp) {
+ FauxtonAPI.addNotification({
+ msg: "Failed to destroy your doc!",
+ type: "error"
+ });
+ });
+ },
+ beforeRender: function () {
+ this.uploadModal = this.setView('#upload-modal', new Views.UploadModal({model: this.model}));
+ this.uploadModal.render();
+
+ this.duplicateModal = this.setView('#duplicate-modal', new Views.DuplicateDocModal({model: this.model}));
+ this.duplicateModal.render();
+ },
+
+ upload: function (event) {
+ event.preventDefault();
+ if (this.model.isNewDoc()) {
+ FauxtonAPI.addNotification({
+ msg: 'Please save the document before uploading an attachment.',
+ type: 'warning'
+ });
+ return;
+ }
+ this.uploadModal.showModal();
+ },
+
+ duplicate: function(event) {
+ if (this.model.isNewDoc()) {
+ FauxtonAPI.addNotification({
+ msg: 'Please save the document before duplicating it.',
+ type: 'warning'
+ });
+ return;
+ }
+ event.preventDefault();
+ this.duplicateModal.showModal();
+ },
updateValues: function() {
var notification;
if (this.model.changedAttributes()) {
diff --git a/src/fauxton/app/templates/documents/doc.html b/src/fauxton/app/templates/documents/doc.html
index d6577af78..6d4c8e50b 100644
--- a/src/fauxton/app/templates/documents/doc.html
+++ b/src/fauxton/app/templates/documents/doc.html
@@ -14,8 +14,9 @@ the License.
<div id="doc">
<div class="errors-container"></div>
+
+<div class="btn-group" style="margin-bottom: 15px">
<% if (attachments) { %>
- <div class="btn-group pull-right" style="margin-bottom: 15px">
<a class="btn dropdown-toggle btn" data-toggle="dropdown" href="#">
View Attachments
<span class="caret"></span>
@@ -29,8 +30,16 @@ the License.
</li>
<% }) %>
</ul>
- </div>
- <% } %>
+
+ <% } %>
+ <button class="btn btn-small upload"><i class="icon-circle-arrow-up"></i> Upload Attachment</button>
+ <button class="btn btn-small duplicate"><i class="icon-repeat"></i> Duplicate document</button>
+ <button class="btn btn-small delete"><i class="icon-trash"></i> Delete document</button>
+ </ul>
+
+<div id="upload-modal"> </div>
+<div id="duplicate-modal"> </div>
+</div>
<textarea class="doc-code"><%- JSON.stringify(doc.attributes, null, " ") %></textarea>
<br />
diff --git a/src/fauxton/app/templates/documents/doc_field_editor_tabs.html b/src/fauxton/app/templates/documents/doc_field_editor_tabs.html
index 29c6d8bc7..af34b71bb 100644
--- a/src/fauxton/app/templates/documents/doc_field_editor_tabs.html
+++ b/src/fauxton/app/templates/documents/doc_field_editor_tabs.html
@@ -14,17 +14,6 @@ the License.
<ul class="nav nav-tabs">
<!--<li id="field_editor" class="<%= isSelectedClass('field_editor') %>"><a href="#<%= doc.url('app') %>/field_editor">Doc fields</a></li>-->
- <li id="code_editor" class="<%= isSelectedClass('code_editor') %>"><a href="#<%= doc.url('app') %>/code_editor"><i class="icon-pencil"></i> Code editor</a></li>
- <ul class="nav pull-right" style="margin:5px 10px 0px 10px;">
- <li>
- <div class="btn-group">
- <button class="btn btn-small upload"><i class="icon-circle-arrow-up"></i> Upload Attachment</button>
- <button class="btn btn-small duplicate"><i class="icon-repeat"></i> Duplicate document</button>
- <button class="btn btn-small delete"><i class="icon-trash"></i> Delete document</button>
- </div>
- </li>
- </ul>
+ <li id="code_editor" class="<%= isSelectedClass('code_editor') %>"><a href="#<%= doc.url('app') %>/code_editor"><i class="icon-pencil"> </i> Code editor</a>
+ </li>
</ul>
-
-<div id="upload-modal"> </div>
-<div id="duplicate-modal"> </div>
diff --git a/src/fauxton/assets/less/database.less b/src/fauxton/assets/less/database.less
index 3854bcddd..e1862d966 100644
--- a/src/fauxton/assets/less/database.less
+++ b/src/fauxton/assets/less/database.less
@@ -191,3 +191,12 @@ table.active-tasks{
}
}
+
+#doc {
+ .dropdown-menu{
+ width: auto;
+ }
+}
+#tabs {
+ height: 40px;
+}