All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
gadgets.sonar-treemap-gadget.xml Maven / Gradle / Ivy
<?xml version="1.0" encoding="UTF-8" ?>
<!--
~ Licensed to Marvelution under one or more contributor license
~ agreements. See the NOTICE file distributed with this work
~ for additional information regarding copyright ownership.
~ Marvelution licenses this file to you 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.
-->
<Module>
<ModulePrefs title="__MSG_sonar.gadget.treemap.title__" directory_title="__MSG_sonar.gadget.treemap.title__"
description="__MSG_sonar.gadget.treemap.description__"
author="Marvelution" author_email="[email protected] " author_affiliation="Marvelution"
author_treemapation="Beverwijk, The Netherlands" title_url="http://www.marvelution.com/" height="100"
screenshot='#staticResourceUrl("${atlassian.plugin.key}:sonar-treemap-gadget", "sonar-treemap-screenshot.png")'
thumbnail='#staticResourceUrl("${atlassian.plugin.key}:sonar-treemap-gadget", "sonar-treemap-thumb.png")'>
<Optional feature="gadget-directory">
<Param name="categories">
JIRA
Sonar
External Content
Other
</Param>
</Optional>
<Require feature="setprefs"/>
<Require feature="settitle"/>
<Require feature="dynamic-height"/>
<Require feature="views" />
<Optional feature="atlassian.util" />
<Require feature="oauthpopup"/>
#oauth
#supportedLocales("gadget.common,sonar.views,sonar.gadget,sonar.error")
</ModulePrefs>
<UserPref name="sonarServer" datatype="hidden" default_value="" />
<UserPref name="sonarProject" datatype="hidden" default_value="" />
<UserPref name="sizeMetric" datatype="hidden" default_value="ncloc" />
<UserPref name="colorMetric" datatype="hidden" default_value="violations_density" />
<UserPref name="isConfigured" datatype="hidden" default_value="false" />
<UserPref name="refresh" datatype="hidden" default_value="false"/>
<UserPref name="isPopup" datatype="hidden" default_value="false"/>
<UserPref name="titleRequired" datatype="hidden" default_value="true" />
<Content type="html" view="profile,canvas,home">
<![CDATA[
#requireResource("${atlassian.plugin.key}:gadget-common")
#requireResource("${atlassian.plugin.key}:treemap-gadget-js")
#includeResources()
<script type="text/javascript">
var WAIT_IMAGE_SRC = "__ATLASSIAN_BASE_URL__" + "/download/resources/${atlassian.plugin.key}/images/wait.gif";
(function () {
AJS.Gadget({
baseUrl: "__ATLASSIAN_BASE_URL__",
config: {
descriptor: function (args) {
var gadget = this;
AJS.sonar.gadget.utils.setGadgetTitle(gadget, "__MSG_sonar.gadget.treemap.title__");
return {
action : "",
theme : AJS.gadget.sonar.config.getThemeConfig(gadgets),
fields: AJS.gadget.sonar.fields.generateServerAndProjectPickerFields(gadget, "sonarServer", "sonarProject", {label: "__MSG_sonar.gadget.all.projects__", value: ""})
};
},
args: []
},
view: {
enableReload: true,
onResizeReload: true,
onResizeAdjustHeight: true,
template: function (args) {
var gadget = this;
gadget.getView().empty();
AJS.sonar.text.getMsgCallBack = gadget.getMsg;
var sonarServer = AJS.sonar.accessor.parseSonarServer(gadget.getBaseUrl(), gadget.getPref("sonarServer"));
if (args.measureData.length == 1) {
AJS.sonar.gadget.utils.setGadgetTitle(gadget, AJS.format("__MSG_sonar.gadget.violations.project.title__", args.measureData[0].name));
} else {
AJS.sonar.gadget.utils.setGadgetTitle(gadget, AJS.format("__MSG_sonar.gadget.violations.project.title__", "__MSG_sonar.gadget.all.projects__"));
}
var dimensions = {
width: (gadget.getView().parent().width() - 20),
height: (gadget.getView().parent().width() - 20)
};
var onChangeCallback = function(sizeMetric, colorMetric) {
gadget.savePref("sizeMetric", sizeMetric.key);
gadget.savePref("colorMetric", colorMetric.key);
};
gadget.getView().append(
AJS.sonar.views.treemap.generateViewDetailed(gadget.getBaseUrl(), sonarServer, gadget.getPref("sonarProject"),
args.metricsDetails, gadget.getPref("sizeMetric"), gadget.getPref("colorMetric"),
dimensions, onChangeCallback)
);
gadget.getView().height((dimensions.height + 50));
},
args: [{
key: "measureData",
ajaxOptions: function () {
var gadget = this;
var sonarServer = AJS.sonar.accessor.parseSonarServer(gadget.getBaseUrl(), gadget.getPref("sonarServer"));
return AJS.sonar.accessor.getAjaxOptions(sonarServer, AJS.sonar.accessor.generateApiUrl(gadget.getPref("sonarProject"), ""));
}
}, {
key: "metricsDetails",
ajaxOptions: function () {
var gadget = this;
var sonarServer = AJS.sonar.accessor.parseSonarServer(gadget.getBaseUrl(), gadget.getPref("sonarServer"));
return AJS.sonar.accessor.getAjaxOptions(sonarServer, AJS.sonar.accessor.generateServerMetricsApiUrl());
}
}]
}
});
})();
</script>
]]>
</Content>
</Module>