aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src/main/js/widgets/widget.js
diff options
context:
space:
mode:
authorStas Vilchik <vilchiks@gmail.com>2015-05-18 16:29:19 +0200
committerStas Vilchik <vilchiks@gmail.com>2015-05-19 18:20:09 +0200
commite59e4aa2c06a57566f148f4217d286461231ae58 (patch)
treead0918eb06b2474a6c71997b7ff573bbb93e0170 /server/sonar-web/src/main/js/widgets/widget.js
parent8d82c9cf9ba88c1517604b4063ad0fc2a9a1bb9a (diff)
downloadsonarqube-e59e4aa2c06a57566f148f4217d286461231ae58.tar.gz
sonarqube-e59e4aa2c06a57566f148f4217d286461231ae58.zip
change web structure: separate components
Diffstat (limited to 'server/sonar-web/src/main/js/widgets/widget.js')
-rw-r--r--server/sonar-web/src/main/js/widgets/widget.js120
1 files changed, 0 insertions, 120 deletions
diff --git a/server/sonar-web/src/main/js/widgets/widget.js b/server/sonar-web/src/main/js/widgets/widget.js
deleted file mode 100644
index cd30319f885..00000000000
--- a/server/sonar-web/src/main/js/widgets/widget.js
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * SonarQube, open source software quality management tool.
- * Copyright (C) 2008-2014 SonarSource
- * mailto:contact AT sonarsource DOT com
- *
- * SonarQube is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * SonarQube is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-/*global d3:false, SonarWidgets:false */
-/*jshint eqnull:true */
-
-window.SonarWidgets = window.SonarWidgets == null ? {} : window.SonarWidgets;
-
-(function () {
-
- window.SonarWidgets.Widget = function () {
- // Set default values
- this._type = null;
- this._source = null;
- this._metricsPriority = null;
- this._height = null;
- this._options = {};
-
-
- // Export global variables
- this.type = function (_) {
- return param.call(this, '_type', _);
- };
-
- this.source = function (_) {
- return param.call(this, '_source', _);
- };
-
- this.metricsPriority = function (_) {
- return param.call(this, '_metricsPriority', _);
- };
-
- this.height = function (_) {
- return param.call(this, '_height', _);
- };
-
- this.options = function (_) {
- return param.call(this, '_options', _);
- };
- };
-
-
- window.SonarWidgets.Widget.prototype.render = function(container) {
- var that = this;
-
- this.showSpinner(container);
- d3.json(this.source(), function(error, response) {
- if (response && !error) {
- that.hideSpinner();
- if (typeof response.components === 'undefined' || response.components.length > 0) {
- that.widget = new SonarWidgets[that.type()]();
- that.widget.metricsPriority(that.metricsPriority());
- that.widget.options(that.options());
- that.widget.metrics(response.metrics);
- that.widget.components(response.components);
- if(typeof that.widget.parseSource === 'function') {
- that.widget.parseSource(response);
- }
- if (typeof that.widget.maxResultsReached === 'function') {
- that.widget.maxResultsReached(response.paging != null && response.paging.pages > 1);
- }
- if (that.height()) {
- that.widget.height(that.height());
- }
- that.widget.render(container);
- } else {
- d3.select(container).html(that.options().noData);
- }
- }
- });
- };
-
-
- window.SonarWidgets.Widget.prototype.showSpinner = function(container) {
- this.spinner = d3.select(container).append('i').classed('spinner', true);
- };
-
-
- window.SonarWidgets.Widget.prototype.hideSpinner = function() {
- if (this.spinner) {
- this.spinner.remove();
- }
- };
-
-
- window.SonarWidgets.Widget.prototype.update = function(container) {
- return this.widget && this.widget.update(container);
- };
-
-
-
- // Some helper functions
-
- // Gets or sets parameter
- function param(name, value) {
- if (value == null) {
- return this[name];
- } else {
- this[name] = value;
- return this;
- }
- }
-
-})();