| // 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. |
| |
| define([ |
| "app", |
| |
| "api", |
| |
| // Modules |
| "addons/databases/resources", |
| // TODO:: fix the include flow modules so we don't have to require views here |
| "addons/databases/views" |
| ], |
| |
| function(app, FauxtonAPI, Databases, Views) { |
| |
| var AllDbsRouteObject = FauxtonAPI.RouteObject.extend({ |
| layout: "one_pane", |
| |
| crumbs: [ |
| {"name": "Databases", "link": "/_all_dbs"} |
| ], |
| |
| routes: { |
| "": "allDatabases", |
| "index.html": "allDatabases", |
| "_all_dbs(:params)": "allDatabases" |
| }, |
| |
| apiUrl: function() { |
| return [this.databases.url("apiurl"), this.databases.documentation()]; |
| }, |
| |
| selectedHeader: "Databases", |
| |
| initialize: function() { |
| this.databases = new Databases.List(); |
| this.deferred = FauxtonAPI.Deferred(); |
| }, |
| |
| allDatabases: function() { |
| var params = app.getParams(), |
| dbPage = params.page; |
| |
| this.databasesView = this.setView("#dashboard-content", new Views.List({ |
| collection: this.databases |
| })); |
| |
| this.databasesView.setPage(dbPage); |
| }, |
| |
| establish: function() { |
| return [this.databases.fetch()]; |
| } |
| }); |
| |
| Databases.RouteObjects = [AllDbsRouteObject]; |
| |
| return Databases; |
| }); |