aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src/main/js
diff options
context:
space:
mode:
authorStas Vilchik <vilchiks@gmail.com>2015-10-02 10:18:07 +0200
committerStas Vilchik <vilchiks@gmail.com>2015-10-02 10:18:07 +0200
commit64cc6661ccc94f2db15d598e313d0d0b4b9ddba9 (patch)
tree5c33dc174a0d6258640b1af937775cca18e3f3ea /server/sonar-web/src/main/js
parent3aa4e0789f603f3c579a5f0184fa024afd3792fa (diff)
downloadsonarqube-64cc6661ccc94f2db15d598e313d0d0b4b9ddba9.tar.gz
sonarqube-64cc6661ccc94f2db15d598e313d0d0b4b9ddba9.zip
SONAR-6556 clean up bulk deletion and provisioning stuff
Diffstat (limited to 'server/sonar-web/src/main/js')
-rw-r--r--server/sonar-web/src/main/js/apps/nav/settings/settings-nav.jsx7
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/app.js46
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/bulk-delete-view.js30
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/create-view.js29
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/delete-view.js30
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/form-view.js24
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/header-view.js48
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/layout.js15
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/list-footer-view.js34
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/list-item-view.js51
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/list-view.js10
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/project.js39
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/projects.js49
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/search-view.js101
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-bulk-delete.hbs13
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-delete.hbs13
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-form.hbs30
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-header.hbs10
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-layout.hbs6
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-footer.hbs6
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-item.hbs16
-rw-r--r--server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-search.hbs10
22 files changed, 2 insertions, 615 deletions
diff --git a/server/sonar-web/src/main/js/apps/nav/settings/settings-nav.jsx b/server/sonar-web/src/main/js/apps/nav/settings/settings-nav.jsx
index 66923b96cf7..b6f77e505fe 100644
--- a/server/sonar-web/src/main/js/apps/nav/settings/settings-nav.jsx
+++ b/server/sonar-web/src/main/js/apps/nav/settings/settings-nav.jsx
@@ -55,13 +55,10 @@ export default React.createClass({
{window.t('sidebar.projects')}&nbsp;<i className="icon-dropdown"></i>
</a>
<ul className="dropdown-menu">
- {this.renderNewLink('/projects', 'Management')}
- {this.renderNewLink('/background_tasks', 'Background Tasks')}
+ {this.renderLink('/projects', 'Management')}
+ {this.renderLink('/background_tasks', 'Background Tasks')}
<li className="divider"/>
- {this.state.showProvisioning ? this.renderLink('/provisioning', window.t('provisioning.page')) : null}
- {this.renderLink('/bulk_deletion', window.t('bulk_deletion.page'))}
{this.renderLink('/computation', window.t('analysis_reports.page'))}
-
</ul>
</li>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/app.js b/server/sonar-web/src/main/js/apps/provisioning/app.js
deleted file mode 100644
index 427179d6fec..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/app.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import Marionette from 'backbone.marionette';
-import Layout from './layout';
-import Projects from './projects';
-import HeaderView from './header-view';
-import SearchView from './search-view';
-import ListView from './list-view';
-import ListFooterView from './list-footer-view';
-
-var App = new Marionette.Application(),
- init = function (options) {
- // Layout
- this.layout = new Layout({ el: options.el });
- this.layout.render();
-
- // Collection
- this.projects = new Projects();
-
- // Header View
- this.headerView = new HeaderView({ collection: this.projects });
- this.layout.headerRegion.show(this.headerView);
-
- // Search View
- this.searchView = new SearchView({ collection: this.projects });
- this.layout.searchRegion.show(this.searchView);
-
- // List View
- this.listView = new ListView({ collection: this.projects });
- this.layout.listRegion.show(this.listView);
-
- // List Footer View
- this.listFooterView = new ListFooterView({ collection: this.projects });
- this.layout.listFooterRegion.show(this.listFooterView);
-
- // Go!
- this.projects.fetch();
- };
-
-App.on('start', function (options) {
- window.requestMessages().done(function () {
- init.call(App, options);
- });
-});
-
-export default App;
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/bulk-delete-view.js b/server/sonar-web/src/main/js/apps/provisioning/bulk-delete-view.js
deleted file mode 100644
index 6e6abfd127e..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/bulk-delete-view.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import _ from 'underscore';
-import ModalForm from 'components/common/modal-form';
-import './templates';
-
-export default ModalForm.extend({
- template: Templates['provisioning-bulk-delete'],
-
- onFormSubmit: function (e) {
- this._super(e);
- this.sendRequest();
- },
-
- sendRequest: function () {
- var that = this,
- selected = _.pluck(this.collection.where({ selected: true }), 'id');
- return this.collection.bulkDelete(selected, {
- statusCode: {
- // do not show global error
- 400: null
- }
- }).done(function () {
- that.collection.refresh();
- that.destroy();
- }).fail(function (jqXHR) {
- that.showErrors(jqXHR.responseJSON.errors, jqXHR.responseJSON.warnings);
- });
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/create-view.js b/server/sonar-web/src/main/js/apps/provisioning/create-view.js
deleted file mode 100644
index 6c02f5a2281..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/create-view.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import Project from './project';
-import FormView from './form-view';
-
-export default FormView.extend({
-
- sendRequest: function () {
- var that = this,
- project = new Project({
- name: this.$('#create-project-name').val(),
- branch: this.$('#create-project-branch').val(),
- key: this.$('#create-project-key').val()
- });
- this.disableForm();
- return project.save(null, {
- statusCode: {
- // do not show global error
- 400: null
- }
- }).done(function () {
- that.collection.refresh();
- that.destroy();
- }).fail(function (jqXHR) {
- that.enableForm();
- that.showErrors([{ msg: jqXHR.responseJSON.err_msg }]);
- });
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/delete-view.js b/server/sonar-web/src/main/js/apps/provisioning/delete-view.js
deleted file mode 100644
index d4176097d27..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/delete-view.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import ModalForm from 'components/common/modal-form';
-import './templates';
-
-export default ModalForm.extend({
- template: Templates['provisioning-delete'],
-
- onFormSubmit: function (e) {
- this._super(e);
- this.sendRequest();
- },
-
- sendRequest: function () {
- var that = this,
- collection = this.model.collection;
- return this.model.destroy({
- wait: true,
- statusCode: {
- // do not show global error
- 400: null
- }
- }).done(function () {
- collection.refresh();
- that.destroy();
- }).fail(function (jqXHR) {
- that.showErrors(jqXHR.responseJSON.errors, jqXHR.responseJSON.warnings);
- });
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/form-view.js b/server/sonar-web/src/main/js/apps/provisioning/form-view.js
deleted file mode 100644
index 525be213f49..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/form-view.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import ModalForm from 'components/common/modal-form';
-import './templates';
-
-export default ModalForm.extend({
- template: Templates['provisioning-form'],
-
- onRender: function () {
- this._super();
- this.$('[data-toggle="tooltip"]').tooltip({ container: 'body', placement: 'bottom' });
- },
-
- onDestroy: function () {
- this._super();
- this.$('[data-toggle="tooltip"]').tooltip('destroy');
- },
-
- onFormSubmit: function (e) {
- this._super(e);
- this.sendRequest();
- }
-
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/header-view.js b/server/sonar-web/src/main/js/apps/provisioning/header-view.js
deleted file mode 100644
index 8fd88483e9b..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/header-view.js
+++ /dev/null
@@ -1,48 +0,0 @@
-import Marionette from 'backbone.marionette';
-import CreateView from './create-view';
-import BulkDeleteView from './bulk-delete-view';
-import './templates';
-
-export default Marionette.ItemView.extend({
- template: Templates['provisioning-header'],
-
- collectionEvents: {
- 'change:selected': 'toggleDeleteButton',
- 'reset': 'toggleDeleteButton'
- },
-
- events: {
- 'click #provisioning-create': 'onCreateClick',
- 'click #provisioning-bulk-delete': 'onBulkDeleteClick'
- },
-
- onCreateClick: function (e) {
- e.preventDefault();
- this.createProject();
- },
-
- onBulkDeleteClick: function (e) {
- e.preventDefault();
- this.bulkDelete();
- },
-
- createProject: function () {
- new CreateView({
- collection: this.collection
- }).render();
- },
-
- bulkDelete: function () {
- new BulkDeleteView({
- collection: this.collection
- }).render();
- },
-
- toggleDeleteButton: function () {
- var selectedCount = this.collection.where({ selected: true }).length,
- someSelected = selectedCount > 0;
- this.$('#provisioning-bulk-delete').prop('disabled', !someSelected);
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/layout.js b/server/sonar-web/src/main/js/apps/provisioning/layout.js
deleted file mode 100644
index 60bf7f209ca..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/layout.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import Marionette from 'backbone.marionette';
-import './templates';
-
-export default Marionette.LayoutView.extend({
- template: Templates['provisioning-layout'],
-
- regions: {
- headerRegion: '#provisioning-header',
- searchRegion: '#provisioning-search',
- listRegion: '#provisioning-list',
- listFooterRegion: '#provisioning-list-footer'
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/list-footer-view.js b/server/sonar-web/src/main/js/apps/provisioning/list-footer-view.js
deleted file mode 100644
index 87fdbd793c9..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/list-footer-view.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import _ from 'underscore';
-import Marionette from 'backbone.marionette';
-import './templates';
-
-export default Marionette.ItemView.extend({
- template: Templates['provisioning-list-footer'],
-
- collectionEvents: {
- 'all': 'render'
- },
-
- events: {
- 'click #provisioning-fetch-more': 'onMoreClick'
- },
-
- onMoreClick: function (e) {
- e.preventDefault();
- this.fetchMore();
- },
-
- fetchMore: function () {
- this.collection.fetchMore();
- },
-
- serializeData: function () {
- return _.extend(this._super(), {
- total: this.collection.total,
- count: this.collection.length,
- more: this.collection.hasMore()
- });
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/list-item-view.js b/server/sonar-web/src/main/js/apps/provisioning/list-item-view.js
deleted file mode 100644
index 41959c7439d..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/list-item-view.js
+++ /dev/null
@@ -1,51 +0,0 @@
-import Marionette from 'backbone.marionette';
-import DeleteView from './delete-view';
-import './templates';
-
-export default Marionette.ItemView.extend({
- tagName: 'li',
- className: 'panel panel-vertical',
- template: Templates['provisioning-list-item'],
-
- modelEvents: {
- 'change:selected': 'onSelectedChange'
- },
-
- events: {
- 'click .js-toggle': 'onToggleClick',
- 'click .js-project-delete': 'onDeleteClick'
- },
-
- onRender: function () {
- this.$el.attr('data-id', this.model.id);
- this.$('[data-toggle="tooltip"]').tooltip({ container: 'body', placement: 'bottom' });
- },
-
- onDestroy: function () {
- this.$('[data-toggle="tooltip"]').tooltip('destroy');
- },
-
- onToggleClick: function (e) {
- e.preventDefault();
- this.toggle();
- },
-
- onDeleteClick: function (e) {
- e.preventDefault();
- this.deleteProject();
- },
-
- onSelectedChange: function () {
- this.$('.js-toggle').toggleClass('icon-checkbox-checked', this.model.get('selected'));
- },
-
- toggle: function () {
- this.model.toggle();
- },
-
- deleteProject: function () {
- new DeleteView({ model: this.model }).render();
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/list-view.js b/server/sonar-web/src/main/js/apps/provisioning/list-view.js
deleted file mode 100644
index 695bf2ac034..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/list-view.js
+++ /dev/null
@@ -1,10 +0,0 @@
-import Marionette from 'backbone.marionette';
-import ListItemView from './list-item-view';
-import './templates';
-
-export default Marionette.CollectionView.extend({
- tagName: 'ul',
- childView: ListItemView
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/project.js b/server/sonar-web/src/main/js/apps/provisioning/project.js
deleted file mode 100644
index b709f02695b..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/project.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import _ from 'underscore';
-import Backbone from 'backbone';
-
-export default Backbone.Model.extend({
- idAttribute: 'uuid',
-
- defaults: {
- selected: false
- },
-
- urlRoot: function () {
- return baseUrl + '/api/projects';
- },
-
- sync: function (method, model, options) {
- var opts = options || {};
- if (method === 'create') {
- _.defaults(opts, {
- url: this.urlRoot() + '/create',
- type: 'POST',
- data: _.pick(model.toJSON(), 'key', 'name', 'branch')
- });
- }
- if (method === 'delete') {
- _.defaults(opts, {
- url: this.urlRoot() + '/bulk_delete',
- type: 'POST',
- data: { ids: this.id }
- });
- }
- return Backbone.ajax(opts);
- },
-
- toggle: function () {
- this.set({ selected: !this.get('selected') });
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/projects.js b/server/sonar-web/src/main/js/apps/provisioning/projects.js
deleted file mode 100644
index 8e31d6a2a04..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/projects.js
+++ /dev/null
@@ -1,49 +0,0 @@
-import _ from 'underscore';
-import Backbone from 'backbone';
-import Project from './project';
-
-export default Backbone.Collection.extend({
- model: Project,
-
- url: function () {
- return baseUrl + '/api/projects/provisioned';
- },
-
- parse: function (r) {
- this.total = r.total;
- this.p = r.p;
- this.ps = r.ps;
- return r.projects;
- },
-
- fetch: function (options) {
- var d = (options && options.data) || {};
- this.q = d.q;
- return this._super(options);
- },
-
- fetchMore: function () {
- var p = this.p + 1;
- return this.fetch({ add: true, remove: false, data: { p: p, ps: this.ps, q: this.q } });
- },
-
- refresh: function () {
- return this.fetch({ reset: true, data: { q: this.q } });
- },
-
- hasMore: function () {
- return this.total > this.p * this.ps;
- },
-
- bulkDelete: function (ids, options) {
- var opts = _.extend({}, options, {
- type: 'POST',
- url: baseUrl + '/api/projects/bulk_delete',
- data: { ids: ids.join() }
- });
- return Backbone.ajax(opts);
- }
-
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/search-view.js b/server/sonar-web/src/main/js/apps/provisioning/search-view.js
deleted file mode 100644
index 2b926a05dbf..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/search-view.js
+++ /dev/null
@@ -1,101 +0,0 @@
-import _ from 'underscore';
-import Marionette from 'backbone.marionette';
-import './templates';
-
-export default Marionette.ItemView.extend({
- template: Templates['provisioning-search'],
-
- collectionEvents: {
- 'change:selected': 'onSelectedChange',
- 'reset': 'onSelectedChange'
- },
-
- events: {
- 'click .js-toggle-selection': 'onToggleSelectionClick',
- 'submit #provisioning-search-form': 'onFormSubmit',
- 'search #provisioning-search-query': 'debouncedOnKeyUp',
- 'keyup #provisioning-search-query': 'debouncedOnKeyUp'
- },
-
- initialize: function () {
- this._bufferedValue = null;
- this.debouncedOnKeyUp = _.debounce(this.onKeyUp, 400);
- },
-
- onRender: function () {
- this.delegateEvents();
- },
-
- onFormSubmit: function (e) {
- e.preventDefault();
- this.debouncedOnKeyUp();
- },
-
- onKeyUp: function () {
- var q = this.getQuery();
- if (q === this._bufferedValue) {
- return;
- }
- this._bufferedValue = this.getQuery();
- if (this.searchRequest != null) {
- this.searchRequest.abort();
- }
- this.searchRequest = this.search(q);
- },
-
- onSelectedChange: function () {
- var projectsCount = this.collection.length,
- selectedCount = this.collection.where({ selected: true }).length,
- allSelected = projectsCount > 0 && projectsCount === selectedCount,
- someSelected = !allSelected && selectedCount > 0;
- this.$('.js-toggle-selection')
- .toggleClass('icon-checkbox-checked', allSelected || someSelected)
- .toggleClass('icon-checkbox-single', someSelected);
- },
-
- onToggleSelectionClick: function (e) {
- e.preventDefault();
- this.toggleSelection();
- },
-
- toggleSelection: function () {
- var selectedCount = this.collection.where({ selected: true }).length,
- someSelected = selectedCount > 0;
- return someSelected ? this.selectNone() : this.selectAll();
- },
-
- selectNone: function () {
- this.collection.where({ selected: true }).forEach(function (project) {
- project.set({ selected: false });
- });
- },
-
- selectAll: function () {
- this.collection.forEach(function (project) {
- project.set({ selected: true });
- });
- },
-
- getQuery: function () {
- return this.$('#provisioning-search-query').val();
- },
-
- search: function (q) {
- this.selectNone();
- return this.collection.fetch({ reset: true, data: { q: q } });
- },
-
- serializeData: function () {
- var projectsCount = this.collection.length,
- selectedCount = this.collection.where({ selected: true }).length,
- allSelected = projectsCount > 0 && projectsCount === selectedCount,
- someSelected = !allSelected && selectedCount > 0;
- return _.extend(this._super(), {
- selectedCount: selectedCount,
- allSelected: allSelected,
- someSelected: someSelected
- });
- }
-});
-
-
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-bulk-delete.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-bulk-delete.hbs
deleted file mode 100644
index 571faee78cf..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-bulk-delete.hbs
+++ /dev/null
@@ -1,13 +0,0 @@
-<form id="bulk-delete-projects-form">
- <div class="modal-head">
- <h2>Delete Projects</h2>
- </div>
- <div class="modal-body">
- <div class="js-modal-messages"></div>
- Are you sure you want to delete selected projects?
- </div>
- <div class="modal-foot">
- <button id="bulk-delete-projects-submit" class="button-red">Delete</button>
- <a href="#" class="js-modal-close" id="bulk-delete-projects-cancel">Cancel</a>
- </div>
-</form>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-delete.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-delete.hbs
deleted file mode 100644
index c1d2a469848..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-delete.hbs
+++ /dev/null
@@ -1,13 +0,0 @@
-<form id="delete-project-form">
- <div class="modal-head">
- <h2>Delete Project</h2>
- </div>
- <div class="modal-body">
- <div class="js-modal-messages"></div>
- Are you sure you want to delete project "{{name}}"?
- </div>
- <div class="modal-foot">
- <button id="delete-project-submit" class="button-red">Delete</button>
- <a href="#" class="js-modal-close" id="delete-project-cancel">Cancel</a>
- </div>
-</form>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-form.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-form.hbs
deleted file mode 100644
index e931b66efd7..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-form.hbs
+++ /dev/null
@@ -1,30 +0,0 @@
-<form id="create-project-form" autocomplete="off">
- <div class="modal-head">
- <h2>Create Project</h2>
- </div>
- <div class="modal-body">
- <div class="js-modal-messages"></div>
- <div class="modal-field">
- <label for="create-project-name">Name<em class="mandatory">*</em></label>
- {{! keep this fake field to hack browser autofill }}
- <input id="create-project-name-fake" name="name-fake" type="text" class="hidden">
- <input id="create-project-name" name="name" type="text" size="50" maxlength="200" required>
- </div>
- <div class="modal-field">
- <label for="create-project-branch">Branch</label>
- {{! keep this fake field to hack browser autofill }}
- <input id="create-project-branch-fake" name="branch-fake" type="text" class="hidden">
- <input id="create-project-branch" name="branch" type="text" size="50" maxlength="200">
- </div>
- <div class="modal-field">
- <label for="create-project-key">Key<em class="mandatory">*</em></label>
- {{! keep this fake field to hack browser autofill }}
- <input id="create-project-key-fake" name="key-fake" type="text" class="hidden">
- <input id="create-project-key" name="key" type="text" size="50" maxlength="50" required>
- </div>
- </div>
- <div class="modal-foot">
- <button id="create-project-submit">Create</button>
- <a href="#" class="js-modal-close" id="create-project-cancel">Cancel</a>
- </div>
-</form>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-header.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-header.hbs
deleted file mode 100644
index bb4986cd9c0..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-header.hbs
+++ /dev/null
@@ -1,10 +0,0 @@
-<header class="page-header">
- <h1 class="page-title">{{t 'provisioning.page'}}</h1>
- <div class="page-actions">
- <div class="button-group">
- <button id="provisioning-create">Create Project</button>
- <button class="button-red" id="provisioning-bulk-delete" disabled>Delete Projects</button>
- </div>
- </div>
- <p class="page-description">{{t 'provisioning.page.description'}}</p>
-</header>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-layout.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-layout.hbs
deleted file mode 100644
index 0f07a62acc6..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-layout.hbs
+++ /dev/null
@@ -1,6 +0,0 @@
-<div class="page">
- <div id="provisioning-header"></div>
- <div id="provisioning-search"></div>
- <div id="provisioning-list"></div>
- <div id="provisioning-list-footer"></div>
-</div>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-footer.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-footer.hbs
deleted file mode 100644
index 8d00837153f..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-footer.hbs
+++ /dev/null
@@ -1,6 +0,0 @@
-<footer class="spacer-top note text-center">
- {{count}}/{{total}} shown
- {{#if more}}
- <a id="provisioning-fetch-more" class="spacer-left" href="#">show more</a>
- {{/if}}
-</footer>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-item.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-item.hbs
deleted file mode 100644
index 9c852f2f0ff..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-list-item.hbs
+++ /dev/null
@@ -1,16 +0,0 @@
-<div class="pull-right big-spacer-left nowrap">
- <a class="js-project-delete icon-delete" title="Delete" data-toggle="tooltip" href="#"></a>
-</div>
-
-<div class="pull-left big-spacer-right">
- <a class="js-toggle icon-checkbox {{#if selected}}icon-checkbox-checked{{/if}}" href="#"></a>
-</div>
-
-<div class="display-inline-block text-top width-30">
- <a class="js-project-name" href="{{dashboardUrl key}}">{{name}}</a>
- <span class="js-project-key note little-spacer-left">{{key}}</span>
-</div>
-
-<div class="display-inline-block text-top width-30">
- Created at {{dt creationDate}}
-</div>
diff --git a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-search.hbs b/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-search.hbs
deleted file mode 100644
index d22c7c92f6d..00000000000
--- a/server/sonar-web/src/main/js/apps/provisioning/templates/provisioning-search.hbs
+++ /dev/null
@@ -1,10 +0,0 @@
-<div class="panel panel-vertical bordered-bottom spacer-bottom">
- <span class="big-spacer-right text-middle">
- <a class="js-toggle-selection icon-checkbox {{#if allSelected}}icon-checkbox-checked{{/if}} {{#if someSelected}}icon-checkbox-checked icon-checkbox-single{{/if}}" href="#"></a>
- </span>
-
- <form id="provisioning-search-form" class="search-box display-inline-block text-middle">
- <button id="provisioning-search-submit" class="search-box-submit button-clean"><i class="icon-search"></i></button>
- <input id="provisioning-search-query" class="search-box-input" type="search" name="q" placeholder="Search" maxlength="100">
- </form>
-</div>