couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From d..@apache.org
Subject [25/26] git commit: updated refs/heads/1.4.x to 81b1601
Date Wed, 07 Aug 2013 16:04:56 GMT
Remove fauxton from 1.4.x branch.


Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/a2b7d6a1
Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/a2b7d6a1
Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/a2b7d6a1

Branch: refs/heads/1.4.x
Commit: a2b7d6a1cb2f1abac632587925fafa2c279b984f
Parents: 1769fb7
Author: Dirkjan Ochtman <djc@apache.org>
Authored: Wed Aug 7 18:02:05 2013 +0200
Committer: Dirkjan Ochtman <djc@apache.org>
Committed: Wed Aug 7 18:02:05 2013 +0200

----------------------------------------------------------------------
 src/fauxton/Gruntfile.js                        |   413 -
 src/fauxton/TODO.md                             |    26 -
 .../activetasks/assets/less/activetasks.less    |     4 -
 src/fauxton/app/addons/activetasks/base.js      |    26 -
 src/fauxton/app/addons/activetasks/resources.js |   108 -
 src/fauxton/app/addons/activetasks/routes.js    |    52 -
 .../addons/activetasks/templates/detail.html    |    21 -
 .../app/addons/activetasks/templates/table.html |    52 -
 .../activetasks/templates/tabledetail.html      |    36 -
 .../app/addons/activetasks/templates/tabs.html  |    28 -
 src/fauxton/app/addons/activetasks/views.js     |   165 -
 src/fauxton/app/addons/auth/base.js             |    58 -
 src/fauxton/app/addons/auth/resources.js        |   404 -
 src/fauxton/app/addons/auth/routes.js           |    22 -
 .../auth/templates/change_password_modal.html   |    35 -
 .../auth/templates/create_admin_modal.html      |    46 -
 .../app/addons/auth/templates/login_modal.html  |    35 -
 .../app/addons/auth/templates/nav_dropdown.html |    26 -
 .../app/addons/auth/templates/nav_link.html     |    19 -
 .../addons/auth/templates/nav_link_title.html   |    24 -
 .../app/addons/auth/templates/noAccess.html     |    19 -
 src/fauxton/app/addons/config/base.js           |    28 -
 src/fauxton/app/addons/config/resources.js      |   175 -
 src/fauxton/app/addons/config/routes.js         |    59 -
 .../app/addons/config/templates/dashboard.html  |    52 -
 .../app/addons/config/templates/item.html       |    31 -
 src/fauxton/app/addons/contribute/base.js       |    33 -
 src/fauxton/app/addons/exampleAuth/base.js      |    59 -
 .../addons/exampleAuth/templates/noAccess.html  |    19 -
 src/fauxton/app/addons/logs/base.js             |    28 -
 src/fauxton/app/addons/logs/resources.js        |   223 -
 src/fauxton/app/addons/logs/routes.js           |    58 -
 .../app/addons/logs/templates/dashboard.html    |    46 -
 .../app/addons/logs/templates/filterItem.html   |    16 -
 .../app/addons/logs/templates/sidebar.html      |    27 -
 src/fauxton/app/addons/logs/tests/logSpec.js    |    38 -
 .../app/addons/stats/assets/less/stats.less     |    20 -
 src/fauxton/app/addons/stats/base.js            |    26 -
 src/fauxton/app/addons/stats/resources.js       |    37 -
 src/fauxton/app/addons/stats/routes.js          |    56 -
 .../app/addons/stats/templates/by_method.html   |    16 -
 .../app/addons/stats/templates/pie_table.html   |    56 -
 .../app/addons/stats/templates/stats.html       |    16 -
 .../app/addons/stats/templates/statselect.html  |    22 -
 src/fauxton/app/addons/stats/views.js           |   171 -
 src/fauxton/app/api.js                          |   390 -
 src/fauxton/app/app.js                          |    75 -
 src/fauxton/app/config.js                       |    56 -
 src/fauxton/app/helpers.js                      |    54 -
 src/fauxton/app/initialize.js                   |    66 -
 src/fauxton/app/load_addons.js.underscore       |    27 -
 src/fauxton/app/main.js                         |    38 -
 src/fauxton/app/modules/databases/base.js       |    36 -
 src/fauxton/app/modules/databases/resources.js  |   148 -
 src/fauxton/app/modules/databases/routes.js     |    84 -
 src/fauxton/app/modules/databases/views.js      |   190 -
 src/fauxton/app/modules/documents/base.js       |    24 -
 src/fauxton/app/modules/documents/resources.js  |   435 -
 src/fauxton/app/modules/documents/routes.js     |   367 -
 src/fauxton/app/modules/documents/views.js      |  1399 --
 src/fauxton/app/modules/fauxton/base.js         |   191 -
 src/fauxton/app/modules/fauxton/layout.js       |    96 -
 src/fauxton/app/modules/pouchdb/base.js         |    60 -
 .../app/modules/pouchdb/pouch.collate.js        |   115 -
 .../app/modules/pouchdb/pouchdb.mapreduce.js    |   324 -
 src/fauxton/app/router.js                       |   147 -
 src/fauxton/app/templates/databases/item.html   |    20 -
 src/fauxton/app/templates/databases/list.html   |    30 -
 .../app/templates/databases/sidebar.html        |    31 -
 .../app/templates/documents/all_docs_item.html  |    26 -
 .../app/templates/documents/all_docs_list.html  |    59 -
 .../app/templates/documents/changes.html        |    38 -
 .../app/templates/documents/ddoc_info.html      |    21 -
 src/fauxton/app/templates/documents/doc.html    |    41 -
 .../templates/documents/doc_field_editor.html   |    74 -
 .../documents/doc_field_editor_tabs.html        |    30 -
 .../documents/duplicate_doc_modal.html          |    36 -
 .../templates/documents/index_menu_item.html    |    17 -
 .../templates/documents/index_row_docular.html  |    26 -
 .../templates/documents/index_row_tabular.html  |    25 -
 src/fauxton/app/templates/documents/search.html |    15 -
 .../app/templates/documents/sidebar.html        |    41 -
 src/fauxton/app/templates/documents/tabs.html   |    39 -
 .../app/templates/documents/upload_modal.html   |    42 -
 .../app/templates/documents/view_editor.html    |   195 -
 src/fauxton/app/templates/fauxton/api_bar.html  |    30 -
 .../app/templates/fauxton/breadcrumbs.html      |    24 -
 src/fauxton/app/templates/fauxton/footer.html   |    15 -
 src/fauxton/app/templates/fauxton/nav_bar.html  |    35 -
 .../app/templates/fauxton/notification.html     |    18 -
 .../app/templates/fauxton/pagination.html       |    31 -
 src/fauxton/app/templates/layouts/one_pane.html |    28 -
 src/fauxton/app/templates/layouts/two_pane.html |    29 -
 .../templates/layouts/with_right_sidebar.html   |    27 -
 .../app/templates/layouts/with_sidebar.html     |    27 -
 .../app/templates/layouts/with_tabs.html        |    27 -
 .../templates/layouts/with_tabs_sidebar.html    |    31 -
 src/fauxton/assets/css/codemirror.css           |   169 -
 src/fauxton/assets/css/nv.d3.css                |   656 -
 src/fauxton/assets/img/couchdblogo.png          |   Bin 2738 -> 0 bytes
 .../assets/img/glyphicons-halflings-white.png   |   Bin 8777 -> 0 bytes
 src/fauxton/assets/img/glyphicons-halflings.png |   Bin 13826 -> 0 bytes
 src/fauxton/assets/img/loader.gif               |   Bin 5193 -> 0 bytes
 src/fauxton/assets/index.underscore             |    54 -
 src/fauxton/assets/js/libs/almond.js            |   314 -
 src/fauxton/assets/js/libs/backbone.js          |  1571 --
 src/fauxton/assets/js/libs/bootstrap.js         |  2025 ---
 src/fauxton/assets/js/libs/codemirror.js        |  3231 ----
 src/fauxton/assets/js/libs/d3.js                |  7026 ---------
 src/fauxton/assets/js/libs/jquery.js            |  9597 ------------
 src/fauxton/assets/js/libs/jshint.js            |  4529 ------
 src/fauxton/assets/js/libs/lodash.js            |  4355 ------
 src/fauxton/assets/js/libs/nv.d3.js             | 13048 -----------------
 src/fauxton/assets/js/libs/require.js           |  2045 ---
 .../assets/js/plugins/backbone.layoutmanager.js |   875 --
 .../assets/js/plugins/codemirror-javascript.js  |   361 -
 src/fauxton/assets/js/plugins/jquery.form.js    |  1190 --
 src/fauxton/assets/js/plugins/prettify.js       |    28 -
 .../assets/less/bootstrap/accordion.less        |    34 -
 src/fauxton/assets/less/bootstrap/alerts.less   |    65 -
 .../assets/less/bootstrap/bootstrap.less        |    63 -
 .../assets/less/bootstrap/breadcrumbs.less      |    24 -
 .../assets/less/bootstrap/button-groups.less    |   242 -
 src/fauxton/assets/less/bootstrap/buttons.less  |   232 -
 src/fauxton/assets/less/bootstrap/carousel.less |   131 -
 src/fauxton/assets/less/bootstrap/close.less    |    31 -
 src/fauxton/assets/less/bootstrap/code.less     |    58 -
 .../less/bootstrap/component-animations.less    |    22 -
 .../assets/less/bootstrap/dropdowns.less        |   237 -
 src/fauxton/assets/less/bootstrap/forms.less    |   683 -
 src/fauxton/assets/less/bootstrap/grid.less     |    21 -
 .../assets/less/bootstrap/hero-unit.less        |    25 -
 .../assets/less/bootstrap/labels-badges.less    |    74 -
 src/fauxton/assets/less/bootstrap/layouts.less  |    16 -
 src/fauxton/assets/less/bootstrap/media.less    |    55 -
 src/fauxton/assets/less/bootstrap/mixins.less   |   686 -
 src/fauxton/assets/less/bootstrap/modals.less   |    94 -
 src/fauxton/assets/less/bootstrap/navbar.less   |   475 -
 src/fauxton/assets/less/bootstrap/navs.less     |   385 -
 src/fauxton/assets/less/bootstrap/pager.less    |    41 -
 .../assets/less/bootstrap/pagination.less       |   121 -
 src/fauxton/assets/less/bootstrap/popovers.less |   117 -
 .../assets/less/bootstrap/progress-bars.less    |   122 -
 src/fauxton/assets/less/bootstrap/reset.less    |   138 -
 .../less/bootstrap/responsive-1200px-min.less   |    28 -
 .../less/bootstrap/responsive-767px-max.less    |   193 -
 .../less/bootstrap/responsive-768px-979px.less  |    19 -
 .../less/bootstrap/responsive-navbar.less       |   185 -
 .../less/bootstrap/responsive-utilities.less    |    43 -
 .../assets/less/bootstrap/responsive.less       |    48 -
 .../assets/less/bootstrap/scaffolding.less      |    52 -
 src/fauxton/assets/less/bootstrap/sprites.less  |   193 -
 src/fauxton/assets/less/bootstrap/tables.less   |   236 -
 .../assets/less/bootstrap/thumbnails.less       |    52 -
 src/fauxton/assets/less/bootstrap/tooltip.less  |    70 -
 src/fauxton/assets/less/bootstrap/type.less     |   227 -
 .../assets/less/bootstrap/utilities.less        |    30 -
 .../assets/less/bootstrap/variables.less        |   301 -
 src/fauxton/assets/less/bootstrap/wells.less    |    29 -
 src/fauxton/assets/less/config.less             |    46 -
 src/fauxton/assets/less/couchdb.less            |    72 -
 src/fauxton/assets/less/database.less           |   174 -
 src/fauxton/assets/less/fauxton.less            |   102 -
 src/fauxton/assets/less/logs.less               |    24 -
 src/fauxton/assets/less/prettyprint.less        |    38 -
 src/fauxton/bin/grunt                           |    18 -
 src/fauxton/couchapp.js                         |    27 -
 src/fauxton/favicon.ico                         |   Bin 1150 -> 0 bytes
 src/fauxton/index.html                          |    53 -
 src/fauxton/package.json                        |    48 -
 src/fauxton/readme.md                           |    69 -
 src/fauxton/settings.json.default               |    40 -
 src/fauxton/settings.json.sample_external       |    10 -
 src/fauxton/tasks/addon/rename.json             |     5 -
 src/fauxton/tasks/addon/root/base.js.underscore |    21 -
 .../tasks/addon/root/resources.js.underscore    |    21 -
 .../tasks/addon/root/route.js.underscore        |    21 -
 src/fauxton/tasks/addon/template.js             |    70 -
 src/fauxton/tasks/couchserver.js                |   102 -
 src/fauxton/tasks/fauxton.js                    |   117 -
 src/fauxton/tasks/helper.js                     |    45 -
 src/fauxton/test/core/routeObjectSpec.js        |    91 -
 src/fauxton/test/mocha/chai.js                  |  4330 ------
 src/fauxton/test/mocha/mocha.css                |   251 -
 src/fauxton/test/mocha/mocha.js                 |  5428 -------
 src/fauxton/test/mocha/sinon-chai.js            |   109 -
 src/fauxton/test/mocha/sinon.js                 |  4290 ------
 src/fauxton/test/mocha/testUtils.js             |    25 -
 src/fauxton/test/runner.html                    |    17 -
 src/fauxton/test/test.config.js                 |    71 -
 src/fauxton/test/test.config.underscore         |    15 -
 src/fauxton/writing_addons.md                   |   163 -
 192 files changed, 81266 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/Gruntfile.js
----------------------------------------------------------------------
diff --git a/src/fauxton/Gruntfile.js b/src/fauxton/Gruntfile.js
deleted file mode 100644
index a0c2232..0000000
--- a/src/fauxton/Gruntfile.js
+++ /dev/null
@@ -1,413 +0,0 @@
-// 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.
-
-
-// This is the main application configuration file.  It is a Grunt
-// configuration file, which you can learn more about here:
-// https://github.com/cowboy/grunt/blob/master/docs/configuring.md
-
-module.exports = function(grunt) {
-  var helper = require('./tasks/helper').init(grunt),
-  _ = grunt.util._,
-  path = require('path');
-
-  var couch_config = function () {
-
-    var default_couch_config = {
-      fauxton: {
-        db: 'http://localhost:5984/fauxton',
-        app: './couchapp.js',
-        options: {
-          okay_if_missing: true
-        }
-      }
-    };
-
-    var settings_couch_config = helper.readSettingsFile().couch_config;
-    return settings_couch_config || default_couch_config;
-  }();
-
-  var cleanableAddons =  function () {
-    var theListToClean = [];
-    helper.processAddons(function(addon){
-      // Only clean addons that are included from a local dir
-      if (addon.path){
-        theListToClean.push("app/addons/" + addon.name);
-      }
-    });
-
-    return theListToClean;
-  }();
-
-  var cleanable = function(){
-    // Whitelist files and directories to be cleaned
-    // You'll always want to clean these two directories
-    // Now find the external addons you have and add them for cleaning up
-    return _.union(["dist/", "app/load_addons.js"], cleanableAddons);
-  }();
-
-  var assets = function(){
-    // Base assets
-    var theAssets = {
-      less:{
-        paths: ["assets/less"],
-        files: {
-          "dist/debug/css/fauxton.css": "assets/less/fauxton.less"
-        }
-      },
-      img: ["assets/img/**"]
-    };
-    helper.processAddons(function(addon){
-      // Less files from addons
-      var root = addon.path || "app/addons/" + addon.name;
-      var lessPath = root + "/assets/less";
-      if(path.existsSync(lessPath)){
-        // .less files exist for this addon
-        theAssets.less.paths.push(lessPath);
-        theAssets.less.files["dist/debug/css/" + addon.name + ".css"] =
-          lessPath + "/" + addon.name + ".less";
-      }
-      // Images
-      root = addon.path || "app/addons/" + addon.name;
-      var imgPath = root + "/assets/img";
-      if(path.existsSync(imgPath)){
-        theAssets.img.push(imgPath + "/**");
-      }
-    });
-    return theAssets;
-  }();
-
-  var templateSettings = function(){
-    var defaultSettings = {
-     "development": {
-        "src": "assets/index.underscore",
-        "dest": "dist/debug/index.html",
-        "variables": {
-          "requirejs": "/assets/js/libs/require.js",
-          "css": "./css/index.css",
-          "base": null
-        }
-      },
-      "release": {
-        "src": "assets/index.underscore",
-        "dest": "dist/debug/index.html",
-        "variables": {
-          "requirejs": "./js/require.js",
-          "css": "./css/index.css",
-          "base": null
-        }
-      }
-    };
-
-    var settings = helper.readSettingsFile();
-    return settings.template || defaultSettings;
-  }();
-
-  grunt.initConfig({
-
-    // The clean task ensures all files are removed from the dist/ directory so
-    // that no files linger from previous builds.
-    clean: {
-      release:  cleanable,
-      watch: cleanableAddons
-    },
-
-    // The lint task will run the build configuration and the application
-    // JavaScript through JSHint and report any errors.  You can change the
-    // options for this task, by reading this:
-    // https://github.com/cowboy/grunt/blob/master/docs/task_lint.md
-    lint: {
-      files: [
-        "build/config.js", "app/**/*.js" 
-      ]
-    },
-
-    less: {
-      compile: {
-        options: {
-          paths: assets.less.paths
-        },
-        files: assets.less.files
-      }
-    },
-
-    // The jshint option for scripturl is set to lax, because the anchor
-    // override inside main.js needs to test for them so as to not accidentally
-    // route.
-    jshint: {
-      all: ['app/**/*.js', 'Gruntfile.js', "test/core/*.js"],
-      options: {
-        scripturl: true,
-        evil: true
-      }
-    },
-
-    // The jst task compiles all application templates into JavaScript
-    // functions with the underscore.js template function from 1.2.4.  You can
-    // change the namespace and the template options, by reading this:
-    // https://github.com/gruntjs/grunt-contrib/blob/master/docs/jst.md
-    //
-    // The concat task depends on this file to exist, so if you decide to
-    // remove this, ensure concat is updated accordingly.
-    jst: {
-      "dist/debug/templates.js": [
-        "app/templates/**/*.html",
-        "app/addons/**/templates/**/*.html"
-      ]
-    },
-
-    template: templateSettings,
-
-    // The concatenate task is used here to merge the almond require/define
-    // shim and the templates into the application code.  It's named
-    // dist/debug/require.js, because we want to only load one script file in
-    // index.html.
-    concat: {
-      requirejs: {
-        src: [ "assets/js/libs/require.js", "dist/debug/templates.js", "dist/debug/require.js"],
-        dest: "dist/debug/js/require.js"
-      },
-
-      index_css: {
-        src: ["dist/debug/css/*.css", 'assets/css/*.css'],
-        dest: 'dist/debug/css/index.css'
-      }
-
-    },
-
-    cssmin: {
-      compress: {
-        files: {
-          "dist/release/css/index.css": [
-            "dist/debug/css/index.css", 'assets/css/*.css',
-            "app/addons/**/assets/css/*.css"
-          ]
-        },
-        options: {
-          report: 'min'
-        }
-      }
-    },
-
-    uglify: {
-      release: {
-        files: {
-          "dist/release/js/require.js": [
-            "dist/debug/js/require.js"
-          ]
-        }
-      }
-    },
-
-    // Runs a proxy server for easier development, no need to keep deploying to couchdb
-    couchserver: {
-      dist: './dist/debug/',
-      port: 8000,
-      proxy: {
-        target: {
-          host: 'localhost',
-          port: 5984,
-          https: false
-        },
-        // This sets the Host header in the proxy so that you can use external
-        // CouchDB instances and not have the Host set to 'localhost'
-        changeOrigin: true
-      }
-    },
-
-    watch: {
-      js: { 
-        files: helper.watchFiles(['.js'], ["./app/**/*.js", '!./app/load_addons.js',"./assets/**/*.js", "./test/**/*.js"]),
-        tasks: ['watchRun'],
-      },
-      style: {
-        files: helper.watchFiles(['.less','.css'],["./app/**/*.css","./app/**/*.less","./assets/**/*.css", "./assets/**/*.less"]),
-        tasks: ['less', 'concat:index_css'],
-      },
-      options: {
-        nospawn: true,
-      }
-    },
-
-    requirejs: {
-      compile: {
-        options: {
-          baseUrl: 'app',
-          // Include the main configuration file.
-          mainConfigFile: "app/config.js",
-
-          // Output file.
-          out: "dist/debug/require.js",
-
-          // Root application module.
-          name: "config",
-
-          // Do not wrap everything in an IIFE.
-          wrap: false,
-          optimize: "none",
-        }
-      }
-    },
-
-    // Copy build artifacts and library code into the distribution
-    // see - http://gruntjs.com/configuring-tasks#building-the-files-object-dynamically
-    copy: {
-      couchdb: {
-        files: [
-          // this gets built in the template task
-          {src: "dist/release/index.html", dest: "../../share/www/fauxton/index.html"},
-          {src: ["**"], dest: "../../share/www/fauxton/js/", cwd:'dist/release/js/',  expand: true},
-          {src: ["**"], dest: "../../share/www/fauxton/img/", cwd:'dist/release/img/', expand: true},
-          {src: ["**"], dest: "../../share/www/fauxton/css/", cwd:"dist/release/css/", expand: true}
-        ]
-      },
-      couchdebug: {
-        files: [
-          // this gets built in the template task
-          {src: "dist/debug/index.html", dest: "../../share/www/fauxton/index.html"},
-          {src: ["**"], dest: "../../share/www/fauxton/js/", cwd:'dist/debug/js/',  expand: true},
-          {src: ["**"], dest: "../../share/www/fauxton/img/", cwd:'dist/debug/img/', expand: true},
-          {src: ["**"], dest: "../../share/www/fauxton/css/", cwd:"dist/debug/css/", expand: true}
-        ]
-      },
-      dist:{
-        files:[
-          {src: "dist/debug/index.html", dest: "dist/release/index.html"},
-          {src: assets.img, dest: "dist/release/img/", flatten: true, expand: true}
-        ]
-      },
-      debug:{
-        files:[
-          {src: assets.img, dest: "dist/debug/img/", flatten: true, expand: true}
-        ]
-      }
-    },
-
-    get_deps: {
-      "default": {
-        src: "settings.json"
-      }
-    },
-
-    gen_load_addons: {
-      "default": {
-        src: "settings.json"
-      }
-    },
-
-    mkcouchdb: couch_config,
-    rmcouchdb: couch_config,
-    couchapp: couch_config,
-
-    mochaSetup: {
-      default: {
-        files: { src: helper.watchFiles(['[Ss]pec.js'], ['./test/core/**/*[Ss]pec.js', './app/**/*[Ss]pec.js'])},
-        template: 'test/test.config.underscore',
-        config: './app/config.js'
-      }
-    },
-
-    mocha_phantomjs: {
-      all: ['test/runner.html']
-    }
-
-  });
-
-  // on watch events configure jshint:all to only run on changed file
-  grunt.event.on('watch', function(action, filepath) {
-    if (!!filepath.match(/.js$/)) {
-      grunt.config(['jshint', 'all'], filepath);
-    }
-
-    console.log(filepath);
-    if (!!filepath.match(/[Ss]pec.js$/)) {
-      grunt.task.run(['mochaSetup','mocha_phantomjs']);
-    }
-  });
-
-  /*
-   * Load Grunt plugins
-   */
-  // Load fauxton specific tasks
-  grunt.loadTasks('tasks');
-  // Load the couchapp task
-  grunt.loadNpmTasks('grunt-couchapp');
-  // Load the copy task
-  grunt.loadNpmTasks('grunt-contrib-watch');
-  // Load the exec task
-  grunt.loadNpmTasks('grunt-exec');
-  // Load Require.js task
-  grunt.loadNpmTasks('grunt-contrib-requirejs');
-  // Load Copy task
-  grunt.loadNpmTasks('grunt-contrib-copy');
-  // Load Clean task
-  grunt.loadNpmTasks('grunt-contrib-clean');
-  // Load jshint task
-  grunt.loadNpmTasks('grunt-contrib-jshint');
-  // Load jst task
-  grunt.loadNpmTasks('grunt-contrib-jst');
-  // Load less task
-  grunt.loadNpmTasks('grunt-contrib-less');
-  // Load concat task
-  grunt.loadNpmTasks('grunt-contrib-concat');
-  // Load UglifyJS task
-  grunt.loadNpmTasks('grunt-contrib-uglify');
-  // Load CSSMin task
-  grunt.loadNpmTasks('grunt-contrib-cssmin');
-  grunt.loadNpmTasks('grunt-mocha-phantomjs');
-
-  /*
-   * Default task
-   */
-  // defult task - install minified app to local CouchDB
-  grunt.registerTask('default', 'couchdb');
-
-  /*
-   * Transformation tasks
-   */
-  // clean out previous build artefactsa and lint
-  grunt.registerTask('lint', ['clean', 'jshint']);
-  grunt.registerTask('test', ['lint', 'mochaSetup', 'mocha_phantomjs']);
-  // Fetch dependencies (from git or local dir), lint them and make load_addons
-  grunt.registerTask('dependencies', ['get_deps', 'jshint', 'gen_load_addons:default']);
-  // build templates, js and css
-  grunt.registerTask('build', ['less', 'concat:index_css', 'jst', 'requirejs', 'concat:requirejs', 'template:release']);
-  // minify code and css, ready for release.
-  grunt.registerTask('minify', ['uglify', 'cssmin:compress']);
-
-  /*
-   * Build the app in either dev, debug, or release mode
-   */
-  // dev server
-  grunt.registerTask('dev', ['debugDev', 'couchserver']);
-  // build a debug release
-  grunt.registerTask('debug', ['lint', 'dependencies', 'concat:requirejs','less', 'concat:index_css', 'template:development', 'copy:debug']);
-  grunt.registerTask('debugDev', ['lint', 'dependencies', 'less', 'concat:index_css', 'template:development', 'copy:debug']);
-
-  grunt.registerTask('watchRun', ['clean:watch', 'dependencies']);
-  // build a release
-  grunt.registerTask('release', ['lint' ,'dependencies', 'build', 'minify', 'copy:dist']);
-
-  /*
-   * Install into CouchDB in either debug, release, or couchapp mode
-   */
-  // make a development install that is server by mochiweb under _utils
-  grunt.registerTask('couchdebug', ['debug', 'copy:couchdebug']);
-  // make a minimized install that is server by mochiweb under _utils
-  grunt.registerTask('couchdb', ['release', 'copy:couchdb']);
-  // make an install that can be deployed as a couchapp
-  grunt.registerTask('couchapp_setup', ['release']);
-  // install fauxton as couchapp
-  grunt.registerTask('couchapp_install', ['rmcouchdb:fauxton', 'mkcouchdb:fauxton', 'couchapp:fauxton']);
-  // setup and install fauxton as couchapp
-  grunt.registerTask('couchapp_deploy', ['couchapp_setup', 'couchapp_install']);
-};

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/TODO.md
----------------------------------------------------------------------
diff --git a/src/fauxton/TODO.md b/src/fauxton/TODO.md
deleted file mode 100644
index b929e05..0000000
--- a/src/fauxton/TODO.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# Fauxton todo
-In no particular order
-
-- [ ] docco docs
-- [ ] user management
-- [ ] view options
-- [ ] view editor
-- [ ] visual view builder
-- [ ] new db as modal
-- [ ] new view button
-- [ ] show design docs only
-- [ ] fix delete doc button UI bug
-- [ ] delete multiple docs via _bulk_docs
-- [x] show change events in database view
-- [ ] pouchdb addon
-- [ ] bespoke bootstrap style
-- [ ] responsive interface
-- [ ] sticky subnav for some UI components on _all_docs
-- [ ] "show me" button in API bar doesn't
-- [ ] edit index button doesn't
-- [ ] replicate UI
-- [x] delete database
-- [x] format dates better (e.g. in logs plugin)
-- [ ] format log entry better
-- [ ] filter logs by method
-- [ ] restore unfiltered data in logs UI

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/assets/less/activetasks.less
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/assets/less/activetasks.less b/src/fauxton/app/addons/activetasks/assets/less/activetasks.less
deleted file mode 100644
index 5cb9d47..0000000
--- a/src/fauxton/app/addons/activetasks/assets/less/activetasks.less
+++ /dev/null
@@ -1,4 +0,0 @@
-.task-tabs li {
-  cursor: pointer;
-  padding: 5px 0;
-}

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/base.js b/src/fauxton/app/addons/activetasks/base.js
deleted file mode 100644
index c7b8fb0..0000000
--- a/src/fauxton/app/addons/activetasks/base.js
+++ /dev/null
@@ -1,26 +0,0 @@
-// 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",
-  "addons/activetasks/routes"
-],
-
-function (app, FauxtonAPI, Activetasks) {
-
-  Activetasks.initialize = function() {
-    FauxtonAPI.addHeaderLink({title: "Active Tasks", href: "#/activetasks"});
-  };
- 
-  return Activetasks;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/resources.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/resources.js b/src/fauxton/app/addons/activetasks/resources.js
deleted file mode 100644
index 6d892dd..0000000
--- a/src/fauxton/app/addons/activetasks/resources.js
+++ /dev/null
@@ -1,108 +0,0 @@
-// 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",
-  "backbone",
-  "modules/fauxton/base",
-  "d3"
-],
-
-function (app, backbone, Fauxton) {
-  var Active = {},
-      apiv = app.versionAPI;
-      app.taskSortBy = 'type';
-
-  Active.Task = Backbone.Model.extend({
-    initialize: function() { 
-      this.set({"id": this.get('pid')});
-    }
-  });
-
-// ALL THE TASKS
-  Active.Tasks = Backbone.Model.extend({
-    alltypes: {
-      "all": "All tasks",
-      "replication": "Replication",
-      "database_compaction":" Database Compaction",
-      "indexer": "Indexer",
-      "view_compaction": "View Compaction"
-    },
-    url: function () {
-      return app.host + '/_active_tasks';
-    },
-    parse: function(resp){
-      var types = this.getUniqueTypes(resp),
-          that = this;
-
-      var typeCollections = _.reduce(types, function (collection, val, key) {
-          collection[key] = new Active.AllTasks(that.sortThis(resp, key));
-          return collection;
-        }, {});
-
-      typeCollections.all = new Active.AllTasks(resp);
-
-      this.set(typeCollections);  //now set them all to the model
-    },
-    getUniqueTypes: function(resp){
-      var types = this.alltypes;
-
-      _.each(resp, function(type){
-        if( typeof(types[type.type]) === "undefined"){
-          types[type.type] = type.type.replace(/_/g,' ');
-        }
-      },this);
-
-      this.alltypes = types;
-      return types;
-    },
-    sortThis: function(resp, type){
-      return _.filter(resp, function(item) { return item.type === type; });
-    },
-    changeView: function (view){
-      this.set({
-        "currentView": view
-      });
-    },
-    getCurrentViewData: function(){
-      var currentView = this.get('currentView');
-      return this.get(currentView);
-    },
-    getDatabaseCompactions: function(){
-      return this.get('databaseCompactions');
-    },
-    getIndexes: function(){
-      return this.get('indexes');
-    },
-    getViewCompactions: function(){
-      return this.get('viewCompactions');
-    }
-  });
-
-//ALL TASKS
-
-//NEW IDEA. Lets make this extremely generic, so if there are new weird tasks, they get sorted and collected.
-
-  Active.AllTasks = Backbone.Collection.extend({
-    model: Active.Task,
-    sortByColumn: function(colName) {
-      app.taskSortBy = colName;
-      this.sort();
-    },
-    comparator: function(item) {
-      return item.get(app.taskSortBy);
-    }
-  });
-
-
-  return Active;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/routes.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/routes.js b/src/fauxton/app/addons/activetasks/routes.js
deleted file mode 100644
index 027beee..0000000
--- a/src/fauxton/app/addons/activetasks/routes.js
+++ /dev/null
@@ -1,52 +0,0 @@
-// 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",
-  "addons/activetasks/resources",
-  "addons/activetasks/views"
-],
-
-function (app, FauxtonAPI, Activetasks, Views) {
-
-  var  ActiveTasksRouteObject = FauxtonAPI.RouteObject.extend({
-    layout: "with_sidebar",
-    routes: {
-      "activetasks/:id": "defaultView",
-      "activetasks": "defaultView"
-    },
-    crumbs: [],
-    apiUrl: function(){
-      return app.host+"/_active_tasks";
-    }, 
-    defaultView: function(id){
-      var newtasks = new Activetasks.Tasks({
-        currentView: "all", 
-        id:'activeTasks'
-      });
-      this.setView("#sidebar-content", new Views.TabMenu({
-        currentView: "all",
-        model: newtasks
-      })); 
-
-      this.setView("#dashboard-content", new Views.DataSection({
-        model: newtasks,
-        currentView: "all"
-      })); 
-    }
-  });
-
-  Activetasks.RouteObjects = [ActiveTasksRouteObject];
-
-  return Activetasks;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/templates/detail.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/templates/detail.html b/src/fauxton/app/addons/activetasks/templates/detail.html
deleted file mode 100644
index 5e53129..0000000
--- a/src/fauxton/app/addons/activetasks/templates/detail.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!--
-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.
--->
-
-<div class="progress progress-striped active">
-  <div class="bar" style="width: <%=model.get("progress")%>%;"><%=model.get("progress")%>%</div>
-</div>
-<p>
-	<%= model.get("type").replace('_',' ')%> on
-	<%= model.get("node")%>
-</p>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/templates/table.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/templates/table.html b/src/fauxton/app/addons/activetasks/templates/table.html
deleted file mode 100644
index ee88e75..0000000
--- a/src/fauxton/app/addons/activetasks/templates/table.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!--
-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.
--->
-
-<!--
-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.
--->
-
-<% if (collection.length === 0){%>
-   <tr> 
-    <td>
-      <p>There are no active tasks for <%=currentView%> right now.</p>
-    </td>
-  </tr>
-<%}else{%>
-
-  <thead>
-    <tr>
-      <th data-type="type">Type</th>
-      <th data-type="node">Object</th>
-      <th data-type="started_on">Started on</th>
-      <th data-type="updated_on">Last updated on</th>
-      <th data-type="pid">PID</th>
-      <th data-type="progress" width="200">Status</th>
-    </tr>
-  </thead>
-
-  <tbody id="tasks_go_here">
-
-  </tbody>
-
-<% } %>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/templates/tabledetail.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/templates/tabledetail.html b/src/fauxton/app/addons/activetasks/templates/tabledetail.html
deleted file mode 100644
index 67c0dc8..0000000
--- a/src/fauxton/app/addons/activetasks/templates/tabledetail.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!--
-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.
--->
-
-<td>
-  <%= model.get("type")%>
-</td>
-<td>
-  <%= objectField %>
-</td>
-<td>
-  <%= formatDate(model.get("started_on")) %>
-</td>
-<td>
-  <%= formatDate(model.get("updated_on")) %>
-</td>
-<td>
-  <%= model.get("pid")%>
-</td>
-<td>
-	<div class="progress progress-striped active">
-	  <div class="bar" style="width: <%=model.get("progress")%>%;"><%=model.get("progress")%>%</div>
-
-	</div>
-	<p><%=progress%> </p>
-</td>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/templates/tabs.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/templates/tabs.html b/src/fauxton/app/addons/activetasks/templates/tabs.html
deleted file mode 100644
index 47c5843..0000000
--- a/src/fauxton/app/addons/activetasks/templates/tabs.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!--
-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.
--->
-
-<h3>Filter by: </h3>
-<ul class="task-tabs nav nav-tabs nav-stacked">
-  <% for (var filter in filters) { %>
-      <li data-type="<%=filter%>"><%=filters[filter]%></li>
-  <% } %>
-</ul>
-
-<h4>Polling interval</h4>
-<input id="pollingRange" type="range"
-       min="1"
-       max="30"
-       step="1"
-       value="5"/>
-<label for="pollingRange"><span>5</span> second(s)</label>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/activetasks/views.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/activetasks/views.js b/src/fauxton/app/addons/activetasks/views.js
deleted file mode 100644
index f38aea2..0000000
--- a/src/fauxton/app/addons/activetasks/views.js
+++ /dev/null
@@ -1,165 +0,0 @@
-// 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",
-  "addons/activetasks/resources"
-],
-
-function (app, FauxtonAPI, activetasks) {
-
-  var Views = {},
-			Events = {},
-			pollingInfo ={
-				rate: "5",
-				intervalId: null
-			};
-
-
-	_.extend(Events, Backbone.Events);
-
-	Views.TabMenu = FauxtonAPI.View.extend({
-		template: "addons/activetasks/templates/tabs",
-		events: {
-			"click .task-tabs li": "requestByType",
-			"change #pollingRange": "changePollInterval"
-		},
-		establish: function(){
-			return [this.model.fetch({reset: true})];
-		},
-		serialize: function(){
-			return {
-				filters: this.model.alltypes
-			};
-		},
-		afterRender: function(){
-			$('.task-tabs').find('li').eq(0).addClass('active');
-		},
-		changePollInterval: function(e){
-			var range = $(e.currentTarget).val();
-			$('label[for="pollingRange"] span').text(range);
-			pollingInfo.rate = range;
-			clearInterval(pollingInfo.intervalId);
-			Events.trigger('update:poll');
-		},
-		requestByType: function(e){
-			var currentTarget = e.currentTarget;
-					datatype = $(currentTarget).attr("data-type");
-
-			$('.task-tabs').find('li').removeClass('active');
-			$(currentTarget).addClass('active');
-			this.model.changeView(datatype);
-		}
-	});
-
-	Views.DataSection = FauxtonAPI.View.extend({
-		initialize: function(){
-			this.listenToOnce(this.model, "change", this.showData); //check why I needed to do this
-		},
-		showData: function(){
-			var that = this,
-					currentData = this.model.getCurrentViewData();
-			//remove the old stuff in a nice clean way
-			if (this.dataView) {
-				this.dataView.remove();
-			}
-
-				//add the new stuff
-			this.dataView = that.insertView( new Views.tableData({ 
-				collection: currentData,
-				currentView: this.model.get('currentView').replace('_',' ')
-			}));
-
-			this.dataView.render();
-		},
-		establish: function(){
-			return [this.model.fetch()];
-		},
-		setPolling: function(){
-			var that = this;
-			pollingInfo.intervalId = setInterval(function() {
-				that.establish();
-			}, pollingInfo.rate*1000);
-		},
-		afterRender: function(){
-			this.listenTo(this.model, "change", this.showData);
-			Events.bind('update:poll', this.setPolling, this);
-			this.setPolling();
-		}
-	});
-
-	Views.tableData = FauxtonAPI.View.extend({
-		tagName: "table",
-		className: "table table-bordered table-striped active-tasks",
-		template: "addons/activetasks/templates/table",
-		events: {
-			"click th": "sortByType"
-		},
-		initialize: function(){
-			currentView = this.options.currentView;
-		},
-		sortByType:  function(e){
-			var currentTarget = e.currentTarget;
-					datatype = $(currentTarget).attr("data-type");
-			this.collection.sortByColumn(datatype);
-			this.render();
-		},
-		serialize: function(){
-			return {
-				currentView: currentView,
-				collection: this.collection
-			};
-		},
-		beforeRender: function(){
-			//iterate over the collection to add each
-			this.collection.forEach(function(item) {
-				this.insertView("#tasks_go_here", new Views.TableDetail({ 
-					model: item
-				}));
-			}, this);
-		}
-	});
-
-	Views.TableDetail = FauxtonAPI.View.extend({
-		tagName: 'tr',
-		template: "addons/activetasks/templates/tabledetail",
-		initialize: function(){
-			this.type = this.model.get('type');
-		},
-		getObject: function(){
-			var objectField = this.model.get('database');
-			if (this.type === "replication"){
-				objectField = this.model.get('source') + " to " + this.model.get('target');
-			}
-			return objectField;
-		},
-		getProgress:  function(){
-			var progress = "";
-			if (this.type === "indexer"){
-				progress = "Processed " +this.model.get('changes_done')+ " of "+this.model.get('total_changes')+ ' changes';
-			}
-			return progress;
-		},
-		serialize: function(){
-			return {
-				model: this.model,
-				objectField: this.getObject(),
-				progress: this.getProgress()
-			};
-		}
-	});
-
-
- 
-  return Views;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/base.js b/src/fauxton/app/addons/auth/base.js
deleted file mode 100644
index acbbcd2..0000000
--- a/src/fauxton/app/addons/auth/base.js
+++ /dev/null
@@ -1,58 +0,0 @@
-// 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",
-       "addons/auth/routes"
-],
-
-function(app, FauxtonAPI, Auth) {
-
-  Auth.session = new Auth.Session();
-  FauxtonAPI.setSession(Auth.session);
-
-  Auth.initialize = function() {
-    Auth.navLink = new Auth.NavLink({model: Auth.session});
-
-    FauxtonAPI.addHeaderLink({
-      title: "Auth", 
-      href: "#_auth",
-      view: Auth.navLink,
-      establish: [FauxtonAPI.session.fetchUser()]
-    });
-
-    var auth = function (session, roles) {
-      var deferred = $.Deferred();
-
-      if (session.isAdminParty()) {
-        deferred.resolve();
-      } else if(session.matchesRoles(roles)) {
-        deferred.resolve();
-      } else {
-        deferred.reject();
-      }
-
-      return [deferred];
-    };
-
-    var authDenied = function () {
-      app.masterLayout.setView('#dashboard', new Auth.NoAccessView());
-      app.masterLayout.renderView('#dashboard');
-    };
-
-    FauxtonAPI.auth.registerAuth(auth);
-    FauxtonAPI.auth.registerAuthDenied(authDenied);
-  };
-
-  return Auth;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/resources.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/resources.js b/src/fauxton/app/addons/auth/resources.js
deleted file mode 100644
index 7118c70..0000000
--- a/src/fauxton/app/addons/auth/resources.js
+++ /dev/null
@@ -1,404 +0,0 @@
-// 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"
-],
-
-function (app, FauxtonAPI) {
-
-  var Auth = new FauxtonAPI.addon();
-
-  var Admin = Backbone.Model.extend({
-
-    url: function () {
-      return app.host + '/_config/admins/' + this.get("name");
-    },
-
-    isNew: function () { return false; },
-
-    sync: function (method, model, options) {
-
-      var params = {
-        url: model.url(),
-        contentType: 'application/json',
-        dataType: 'json',
-        data: JSON.stringify(model.get('value'))
-      };
-
-      if (method === 'delete') {
-        params.type = 'DELETE';
-      } else {
-        params.type = 'PUT';
-      }
-
-      return $.ajax(params);
-    }
-  });
-
-  Auth.Session = FauxtonAPI.Session.extend({
-    url: '/_session',
-
-    initialize: function (options) {
-      if (!options) { options = {}; }
-
-      this.messages = _.extend({},  { 
-          missingCredentials: 'Username or password cannot be blank.',
-          passwordsNotMatch:  'Passwords do not match.'
-        }, options.messages);
-    },
-
-    isAdminParty: function () {
-      var userCtx = this.get('userCtx');
-
-      if (!userCtx.name && userCtx.roles.indexOf("_admin") > -1) {
-        return true;
-      }
-
-      return false;
-    },
-
-    userRoles: function () {
-      var user = this.user();
-
-      if (user && user.roles) { 
-        return user.roles;
-      }
-
-      return [];
-    },
-
-    matchesRoles: function (roles) {
-      if (roles.length === 0) {
-        return true;
-      }
-
-      var numberMatchingRoles = _.intersection(this.userRoles(), roles).length;
-
-      if (numberMatchingRoles > 0) {
-        return true;
-      }
-
-      return false;
-    },
-
-    validateUser: function (username, password, msg) {
-      if (_.isEmpty(username) || _.isEmpty(password)) {
-        var deferred = FauxtonAPI.Deferred();
-
-        deferred.rejectWith(this, [msg]);
-        return deferred;
-      }
-    },
-
-    validatePasswords: function (password, password_confirm, msg) {
-      if (_.isEmpty(password) || _.isEmpty(password_confirm) || (password !== password_confirm)) {
-        var deferred = FauxtonAPI.Deferred();
-
-        deferred.rejectWith(this, [msg]);
-        return deferred;
-      }
-
-    },
-
-    createAdmin: function (username, password, login) {
-      var that = this,
-          error_promise =  this.validateUser(username, password, this.messages.missingCredentials);
-
-      if (error_promise) { return error_promise; }
-
-      var admin = new Admin({
-        name: username,
-        value: password
-      });
-
-      return admin.save().then(function () {
-        if (login) {
-          return that.login(username, password);
-        } else {
-         return that.fetchUser({forceFetch: true});
-        }
-      });
-    },
-
-    login: function (username, password) {
-      var error_promise =  this.validateUser(username, password, this.messages.missingCredentials);
-
-      if (error_promise) { return error_promise; }
-
-      var that = this;
-
-      return $.ajax({
-        type: "POST", 
-        url: "/_session", 
-        dataType: "json",
-        data: {name: username, password: password}
-      }).then(function () {
-         return that.fetchUser({forceFetch: true});
-      });
-    },
-
-    logout: function () {
-      var that = this;
-
-      return $.ajax({
-        type: "DELETE", 
-        url: "/_session", 
-        dataType: "json",
-        username : "_", 
-        password : "_"
-      }).then(function () {
-       return that.fetchUser({forceFetch: true });
-      });
-    },
-
-    changePassword: function (password, password_confirm) {
-      var error_promise =  this.validatePasswords(password, password_confirm, this.messages.passwordsNotMatch);
-
-      if (error_promise) { return error_promise; }
-
-      var  that = this,
-           info = this.get('info'),
-           userCtx = this.get('userCtx');
-
-       var admin = new Admin({
-        name: userCtx.name,
-        value: password
-      });
-
-      return admin.save().then(function () {
-        return that.login(userCtx.name, password);
-      });
-    }
-  });
-
-  Auth.ModalView = FauxtonAPI.View.extend({
-
-    show_modal: function () {
-      this.clear_error_msg();
-      this.$('.modal').modal();
-      // hack to get modal visible 
-      $('.modal-backdrop').css('z-index',1025);
-    },
-
-    hide_modal: function () {
-      this.$('.modal').modal('hide');
-      // force this removal as the navbar
-      //$('.modal-backdrop').remove();
-    },
-
-    set_error_msg: function (msg) {
-      var text;
-      if (typeof(msg) == 'string') {
-        text = msg;
-      } else {
-        text = JSON.parse(msg.responseText).reason;
-      }
-
-      this.$('#modal-error').text(text).removeClass('hide');
-    },
-
-    clear_error_msg: function () {
-      this.$('#modal-error').text(' ').addClass('hide');
-    }
-
-  });
-
-  Auth.CreateAdminModal = Auth.ModalView.extend({
-    template: 'addons/auth/templates/create_admin_modal',
-
-    initialize: function (options) {
-      this.login_after = options.login_after || true;
-    },
-
-    events: {
-      "click #create-admin": "createAdmin"
-    },
-
-    createAdmin: function (event) {
-      event.preventDefault();
-      this.clear_error_msg();
-
-      var that = this,
-      username = this.$('#username').val(),
-      password = this.$('#password').val();
-
-      var promise = this.model.createAdmin(username, password, this.login_after);
-
-      promise.then(function () {
-        that.$('.modal').modal('hide');
-        that.hide_modal();
-      });
-
-      promise.fail(function (rsp) {
-        that.set_error_msg(rsp);
-      });
-    }
-
-  });
-
-  Auth.LoginModal = Auth.ModalView.extend({
-    template: 'addons/auth/templates/login_modal',
-
-    events: {
-      "click #login": "login"
-    },
-
-    login: function () {
-      event.preventDefault();
-      this.clear_error_msg();
-
-      var that = this,
-          username = this.$('#username').val(),
-          password = this.$('#password').val(),
-          promise = this.model.login(username, password);
-
-      promise.then(function () {
-        that.hide_modal();
-      });
-
-      promise.fail(function (rsp) {
-        that.set_error_msg(rsp);
-      });
-    }
-
-  });
-
-  Auth.ChangePasswordModal = Auth.ModalView.extend({
-    template: 'addons/auth/templates/change_password_modal',
-
-    events: {
-      "click #change-password": "changePassword"
-    },
-
-    changePassword: function () {
-      event.preventDefault();
-      this.clear_error_msg();
-
-      var that = this,
-          new_password = this.$('#password').val(),
-          password_confirm = this.$('#password-confirm').val();
-
-      var promise = this.model.changePassword(new_password, password_confirm);
-
-      promise.done(function () {
-        that.hide_modal();
-      });
-
-      promise.fail(function (rsp) {
-        that.set_error_msg(rsp);
-      });
-    }
-  });
-
-  Auth.NavLinkTitle = FauxtonAPI.View.extend({ 
-    template: 'addons/auth/templates/nav_link_title',
-    tagName: 'a',
-    attributes: {
-      id: "user-drop",
-      "class": "dropdown-toggle",
-      role: "button",
-      "data-toggle": "dropdown",
-      href:"#"
-    },
-
-    beforeRender: function () {
-      this.listenTo(this.model, 'change', this.render);
-    },
-
-    serialize: function () {
-      return {
-        admin_party: this.model.isAdminParty(),
-        user: this.model.user()
-      };
-    }
-  });
-
-  Auth.NavDropDown = FauxtonAPI.View.extend({ 
-    template: 'addons/auth/templates/nav_dropdown',
-    tagName: 'ul',
-    attributes: {
-      "class": "dropdown-menu",
-      role:"menu",
-      "aria-labelledby":"user-drop" 
-    },
-
-    beforeRender: function () {
-      this.listenTo(this.model, 'change', this.render);
-    },
-
-    serialize: function () {
-      return {
-        admin_party: this.model.isAdminParty(),
-        user: this.model.user()
-      };
-    }
-  });
-
-  Auth.NavLink = FauxtonAPI.View.extend({
-    template: 'addons/auth/templates/nav_link',
-
-    tagName: "li",
-    className: "dropdown",
-
-    events: {
-      "click #user-create-admin": 'show_admin_modal',
-      "click #user-create-more-admin": 'show_create_more_admin_modal',
-      "click #user-login": 'show_login_modal',
-      "click #user-change-password": 'show_change_password_modal',
-      "click #user-logout": 'logout_user'
-    },
-
-    beforeRender: function () {
-      this.nav_link_name = this.insertView(new Auth.NavLinkTitle({model: this.model}));
-      this.nav_link_name = this.insertView(new Auth.NavDropDown({model: this.model}));
-      this.create_admin_modal = this.setView('#user-create-admin-modal', new Auth.CreateAdminModal({model: this.model}));
-      this.login_modal = this.setView('#login-modal', new Auth.LoginModal({model: this.model}));
-      this.change_password_modal = this.setView('#change-password-modal', new Auth.ChangePasswordModal({model: this.model}));
-    },
-
-    show_admin_modal: function (event) {
-      event.preventDefault();
-      this.create_admin_modal.show_modal();
-    },
-
-    show_create_more_admin_modal: function (event) {
-      event.preventDefault();
-      this.create_admin_modal.login_after = false;
-      this.create_admin_modal.show_modal();
-    },
-
-    show_login_modal: function (event) {
-      event.preventDefault();
-      this.login_modal.show_modal();
-    },
-
-    show_change_password_modal: function (event) {
-      event.preventDefault();
-      this.change_password_modal.show_modal();
-    },
-
-    logout_user: function () {
-      event.preventDefault();
-      this.model.logout();
-    }
-  });
-
-  Auth.NoAccessView = FauxtonAPI.View.extend({
-    template: "addons/auth/templates/noAccess"
-
-  });
-
-
-  return Auth;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/routes.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/routes.js b/src/fauxton/app/addons/auth/routes.js
deleted file mode 100644
index 6ff7502..0000000
--- a/src/fauxton/app/addons/auth/routes.js
+++ /dev/null
@@ -1,22 +0,0 @@
-// 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",
-       "addons/auth/resources"
-],
-
-function(app, FauxtonAPI, Auth) {
-  
-  return Auth;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/change_password_modal.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/change_password_modal.html b/src/fauxton/app/addons/auth/templates/change_password_modal.html
deleted file mode 100644
index 5e3db38..0000000
--- a/src/fauxton/app/addons/auth/templates/change_password_modal.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!--
-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.
--->
-
-<div class="modal hide fade">
-  <div class="modal-header">
-    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
-    <h3>Change Password</h3>
-  </div>
-  <div class="modal-body">
-    <div id="modal-error" class="hide alert alert-error"/>
-    <form>
-      <p class="help-block">
-      Enter your new password.
-      </p>
-      <input id="password" type="password" name="password" placeholder= "New Password:" size="24">
-      <br/>
-      <input id="password-confirm" type="password" name="password_confirm" placeholder= "Verify New Password" size="24">
-    </form>
-  </div>
-  <div class="modal-footer">
-    <a href="#" data-dismiss="modal" class="btn">Cancel</a>
-    <a href="#" id="change-password" class="btn btn-primary">Change</a>
-  </div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/create_admin_modal.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/create_admin_modal.html b/src/fauxton/app/addons/auth/templates/create_admin_modal.html
deleted file mode 100644
index 0d16ca1..0000000
--- a/src/fauxton/app/addons/auth/templates/create_admin_modal.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-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.
--->
-
-<div class="modal hide fade">
-  <div class="modal-header">
-    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
-    <h3>Create Server Admin</h3>
-  </div>
-  <div class="modal-body">
-    <div id="modal-error" class="hide alert alert-error"/>
-    <form>
-      <input id="username" type="text" name="name" placeholder= "Username:" size="24">
-      <br/>
-      <input id="password" type="password" name="password" placeholder= "Password" size="24">
-    </form>
-    <p class="help-block">
-    Before a server admin is configured, all clients have admin privileges.
-    This is fine when HTTP access is restricted 
-    to trusted users. <strong>If end-users will be accessing this CouchDB, you must
-      create an admin account to prevent accidental (or malicious) data loss.</strong>
-    </p>
-    <p class="help-block">Server admins can create and destroy databases, install 
-    and update _design documents, run the test suite, and edit all aspects of CouchDB 
-    configuration.
-    </p>
-    <p class="help-block">Non-admin users have read and write access to all databases, which
-    are controlled by validation functions. CouchDB can be configured to block all
-    access to anonymous users.
-    </p>
-  </div>
-  <div class="modal-footer">
-    <a href="#" data-dismiss="modal" class="btn">Cancel</a>
-    <a href="#" id="create-admin" class="btn btn-primary">Create Admin</a>
-  </div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/login_modal.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/login_modal.html b/src/fauxton/app/addons/auth/templates/login_modal.html
deleted file mode 100644
index e0395da..0000000
--- a/src/fauxton/app/addons/auth/templates/login_modal.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!--
-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.
--->
-
-<div class="modal hide fade">
-  <div class="modal-header">
-    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
-    <h3>Login</h3>
-  </div>
-  <div class="modal-body">
-    <div id="modal-error" class="hide alert alert-error"/>
-    <form>
-      <p class="help-block">
-      Login to CouchDB with your name and password.
-      </p>
-      <input id="username" type="text" name="name" placeholder= "Username:" size="24">
-      <br/>
-      <input id="password" type="password" name="password" placeholder= "Password" size="24">
-    </form>
-  </div>
-  <div class="modal-footer">
-    <a href="#" data-dismiss="modal" class="btn">Cancel</a>
-    <a href="#" id="login" class="btn btn-primary">Login</a>
-  </div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/nav_dropdown.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/nav_dropdown.html b/src/fauxton/app/addons/auth/templates/nav_dropdown.html
deleted file mode 100644
index 5e07ca0..0000000
--- a/src/fauxton/app/addons/auth/templates/nav_dropdown.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!--
-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.
--->
-
-<!-- dropdown menu links -->
-  <% if (admin_party) { %>
-  <li> <a id="user-create-admin" href="#"> Create Admin </a> </li>
-  <% } else if (user) { %>
-  <li> <a id="user-create-more-admin" href="#"> Create Admins </a> </li>
-  <li> <a id="user-change-password" href="#"> Change Password </a> </li>
-  <li> <a id="user-logout" href="#"> Logout </a> </li> 
-  <% } else { %>
-  <li> <a id="user-login" href="#"> Login </a> </li> 
-  <!--<li> <a id="user-sign-up"> Sign up </a> </li>-->
-  <% } %>
-

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/nav_link.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/nav_link.html b/src/fauxton/app/addons/auth/templates/nav_link.html
deleted file mode 100644
index add5b89..0000000
--- a/src/fauxton/app/addons/auth/templates/nav_link.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-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.
--->
-
-<div id="nav-link-title"> </div>
-<div id="user-create-admin-modal"> </div>
-<div id="login-modal"> </div>
-<div id="change-password-modal"> </div>
-<div id="signup-modal"> </div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/nav_link_title.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/nav_link_title.html b/src/fauxton/app/addons/auth/templates/nav_link_title.html
deleted file mode 100644
index 90004f3..0000000
--- a/src/fauxton/app/addons/auth/templates/nav_link_title.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!--
-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.
--->
-
-  <% if (admin_party) { %>
-  Admin Party!
-  <% } else if (user) { %>
-  <%= user.name %>
-  <% } else { %>
-  Login
-  <% } %>
-  <b class="caret"></b>
-
-

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/auth/templates/noAccess.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/auth/templates/noAccess.html b/src/fauxton/app/addons/auth/templates/noAccess.html
deleted file mode 100644
index f1a9506..0000000
--- a/src/fauxton/app/addons/auth/templates/noAccess.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-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.
--->
-
-<div class="row-fluid" >
-  <div class="span6 offset4">
-  <h3> You do not have permission to view this page </h3>
-</div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/config/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/config/base.js b/src/fauxton/app/addons/config/base.js
deleted file mode 100644
index f589b16..0000000
--- a/src/fauxton/app/addons/config/base.js
+++ /dev/null
@@ -1,28 +0,0 @@
-// 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/config/routes"
-],
-
-function(app, FauxtonAPI, Config) {
-  Config.initialize = function() {
-    FauxtonAPI.addHeaderLink({title: "Config", href: "#_config"});
-  };
-
-  return Config;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/config/resources.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/config/resources.js b/src/fauxton/app/addons/config/resources.js
deleted file mode 100644
index db26bb7..0000000
--- a/src/fauxton/app/addons/config/resources.js
+++ /dev/null
@@ -1,175 +0,0 @@
-// 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"
-],
-
-function (app, FauxtonAPI) {
-
-  var Config = FauxtonAPI.addon();
-
-  Config.Model = Backbone.Model.extend({});
-  Config.OptionModel = Backbone.Model.extend({
-
-    url: function () {
-      return app.host + '/_config/' + this.get("section") + '/' + this.get("name");
-    },
-
-    isNew: function () { return false; },
-
-    sync: function (method, model, options) {
-
-      var params = {
-        url: model.url(),
-        contentType: 'application/json',
-        dataType: 'json',
-        data: JSON.stringify(model.get('value'))
-      };
-
-      if (method === 'delete') {
-        params.type = 'DELETE';
-      } else {
-        params.type = 'PUT';
-      }
-
-      return $.ajax(params);
-    }
-  });
-
-  Config.Collection = Backbone.Collection.extend({
-    model: Config.Model,
-
-    url: function () {
-      return app.host + '/_config';
-    },
-
-    parse: function (resp) {
-      return _.map(resp, function (section, section_name) {
-        return {
-          section: section_name,
-          options: _.map(section, function (option, option_name) {
-            return {
-              name: option_name,
-              value: option
-            };
-          })
-        };
-      });
-    }
-  });
-
-  Config.ViewItem = FauxtonAPI.View.extend({
-    tagName: "tr",
-    className: "config-item",
-    template: "addons/config/templates/item",
-
-    events: {
-      "click .edit-button": "editValue",
-      "click #delete-value": "deleteValue",
-      "click #cancel-value": "cancelEdit",
-      "click #save-value": "saveValue"
-    },
-
-    deleteValue: function (event) {
-      var result = confirm("Are you sure you want to delete this configuration value?");
-
-      if (!result) { return; }
-
-      this.model.destroy();
-      this.remove();
-    },
-
-    editValue: function (event) {
-      this.$("#show-value").hide();
-      this.$("#edit-value-form").show();
-    },
-
-    saveValue: function (event) {
-      this.model.save({value: this.$(".value-input").val()});
-      this.render();
-    },
-
-    cancelEdit: function (event) {
-      this.$("#edit-value-form").hide();
-      this.$("#show-value").show();
-    },
-
-    serialize: function () {
-      return {option: this.model.toJSON()};
-    }
-
-  });
-
-  Config.View = FauxtonAPI.View.extend({
-    template: "addons/config/templates/dashboard",
-
-    events: {
-      "click #add-section": "addSection",
-      "submit #add-section-form": "submitForm"
-    },
-
-    submitForm: function (event) {
-      event.preventDefault();
-      var option = new Config.OptionModel({
-        section: this.$('input[name="section"]').val(),
-        name: this.$('input[name="name"]').val(),
-        value: this.$('input[name="value"]').val()
-      });
-
-      option.save();
-
-      var section = this.collection.find(function (section) {
-        return section.get("section") === option.get("section");
-      });
-
-      if (section) {
-        section.get("options").push(option.attributes);
-      } else {
-        this.collection.add({
-          section: option.get("section"),
-          options: [option.attributes]
-        });
-      }
-
-      this.$("#add-section-modal").modal('hide');
-      this.render();
-    },
-
-    addSection: function (event) {
-      event.preventDefault();
-      this.$("#add-section-modal").modal({show:true});
-    },
-
-    beforeRender: function() {
-      this.collection.each(function(config) {
-        _.each(config.get("options"), function (option, index) {
-          this.insertView("table.config tbody", new Config.ViewItem({
-            model: new Config.OptionModel({
-              section: config.get("section"),
-              name: option.name,
-              value: option.value,
-              index: index
-            })
-          }));
-        }, this);
-      }, this);
-    },
-
-    establish: function() {
-      return [this.collection.fetch()];
-    }
-  });
-
-  return Config;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/config/routes.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/config/routes.js b/src/fauxton/app/addons/config/routes.js
deleted file mode 100644
index f521c53..0000000
--- a/src/fauxton/app/addons/config/routes.js
+++ /dev/null
@@ -1,59 +0,0 @@
-// 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/config/resources"
-],
-
-function(app, FauxtonAPI, Config) {
-
-  var ConfigRouteObject = FauxtonAPI.RouteObject.extend({
-    layout: "one_pane",
-
-    initialize: function () {
-      this.configs = new Config.Collection();
-    },
-
-    roles: ["_admin"],
-
-    selectedHeader: "Config",
-
-    crumbs: [
-      {"name": "Config","link": "_config"}
-    ],
-
-    apiUrl: function () {
-      this.configs.url();
-    },
-
-    routes: {
-      "_config": "config"
-    },
-
-    config: function () {
-      this.setView("#dashboard-content", new Config.View({collection: this.configs}));
-    },
-
-    establish: function () {
-      return [this.configs.fetch()];
-    }
-  });
-
-
-  Config.RouteObjects = [ConfigRouteObject];
-  return Config;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/config/templates/dashboard.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/config/templates/dashboard.html b/src/fauxton/app/addons/config/templates/dashboard.html
deleted file mode 100644
index 7cff90a..0000000
--- a/src/fauxton/app/addons/config/templates/dashboard.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!--
-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.
--->
-
-<div class="row">
-  <div class="span2 offset10">
-    <button id="add-section" href="#" class="btn btn-primary button-margin">
-      <i class="icon-plus icon-white"> </i>
-      Add Section
-    </button>
-  </div>
-</div>
-<table class="config table table-striped table-bordered">
-  <thead>
-    <th> Section </th>
-    <th> Option </th>
-    <th> Value </th>
-    <th></th>
-  </thead>
-  <tbody>
-  </tbody>
-</table>
-<div id="add-section-modal" class="modal hide fade">
-  <div class="modal-header">
-    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
-    <h3>Create Config Option</h3>
-  </div>
-  <div class="modal-body">
-    <form id="add-section-form" class="form well">
-      <label>Section</label>
-      <input type="text" name="section" placeholder="Section">
-      <span class="help-block">Enter an existing section name to add to it.</span>
-      <input type="text" name="name" placeholder="Name">
-      <br/>
-      <input type="text" name="value" placeholder="Value">
-      <div class="modal-footer">
-        <button type="button" class="btn" data-dismiss="modal">Cancel</button>
-        <button type="submit" class="btn btn-primary"> Save </button>
-      </div>
-    </form>
-  </div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/config/templates/item.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/config/templates/item.html b/src/fauxton/app/addons/config/templates/item.html
deleted file mode 100644
index 3e6e4ee..0000000
--- a/src/fauxton/app/addons/config/templates/item.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!--
-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.
--->
-
-<% if (option.index === 0) {%>
-<th> <%= option.section %> </th>
-<% } else { %>
-<td></td>
-<% } %>
-<td> <%= option.name %> </td>
-<td>
-  <div id="show-value">
-    <%= option.value %> <button class="edit-button"> Edit </button>
-  </div>
-  <div id="edit-value-form" style="display:none">
-    <input class="value-input" type="text" value="<%= option.value %>" />
-    <button id="save-value" class="btn btn-success btn-small"> Save </button>
-    <button id="cancel-value" class="btn btn-danger btn-small"> Cancel </button>
-  </div>
-</td>
-<td id="delete-value"> <i class="icon-trash"> </i> </td>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/contribute/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/contribute/base.js b/src/fauxton/app/addons/contribute/base.js
deleted file mode 100644
index 8f622fe..0000000
--- a/src/fauxton/app/addons/contribute/base.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// 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([
-  // Libraries.
-  "jquery",
-  "lodash"
-],
-function($, _){
-  $.contribute = function(message, file){
-    /*
-    var JST = window.JST = window.JST || {};
-    var template = JST['app/addons/contribute/templates/modal.html'];
-    console.log(template);
-    var compiled = template({message: message, file: file});
-    */
-    console.log('contribute!contribute!monorail!contribute!');
-    /*
-    console.log(compiled);
-    var elem = $(compiled);
-    elem.modal('show');
-    */
-  };
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/exampleAuth/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/exampleAuth/base.js b/src/fauxton/app/addons/exampleAuth/base.js
deleted file mode 100644
index aa99670..0000000
--- a/src/fauxton/app/addons/exampleAuth/base.js
+++ /dev/null
@@ -1,59 +0,0 @@
-// 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"
-],
-
-function(app, FauxtonAPI) {
-  // This is an example module of using the new auth module.
-
-  var noAccessView = FauxtonAPI.View.extend({
-    template: "addons/exampleAuth/templates/noAccess"
-
-  });
-
-  // To utilise the authentication - all that is required, is one callback
-  // that is registered with the auth api. This function can return an array
-  // of deferred objects.
-  // The roles argument that is passed in is the required roles for the current user
-  // to be allowed to access the current page.
-  // The layout is the main layout for use when you want to render a view onto the page
-  var auth = function (roles) {
-    var deferred = $.Deferred();
-
-    if (roles.indexOf('_admin') > -1) {
-      deferred.reject();
-    } else {
-      deferred.resolve();
-    }
-
-    return [deferred];
-  };
-
-  // If you would like to do something with when access is denied you can register this callback.
-  // It will be called is access has been denied on the previous page.
-  var authFail = function () {
-    app.masterLayout.setView('#dashboard', new noAccessView());
-    app.masterLayout.renderView('#dashboard');
-  };
-
-  // Register the auth call back. This will be called before new route rendered
-  FauxtonAPI.auth.registerAuth(auth);
-  // Register a failed route request callback. This is called if access is denied.
-  FauxtonAPI.auth.registerAuthDenied(authFail);
-
-
-
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/exampleAuth/templates/noAccess.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/exampleAuth/templates/noAccess.html b/src/fauxton/app/addons/exampleAuth/templates/noAccess.html
deleted file mode 100644
index f1a9506..0000000
--- a/src/fauxton/app/addons/exampleAuth/templates/noAccess.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-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.
--->
-
-<div class="row-fluid" >
-  <div class="span6 offset4">
-  <h3> You do not have permission to view this page </h3>
-</div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/a2b7d6a1/src/fauxton/app/addons/logs/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/base.js b/src/fauxton/app/addons/logs/base.js
deleted file mode 100644
index c17e159..0000000
--- a/src/fauxton/app/addons/logs/base.js
+++ /dev/null
@@ -1,28 +0,0 @@
-// 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/logs/routes"
-],
-
-function(app, FauxtonAPI, Log) {
-  Log.initialize = function() {
-    FauxtonAPI.addHeaderLink({title: "Log", href: "#_log"});
-  };
-
-  return Log;
-});


Mime
View raw message