gadgets.sonar-coverage-gadget.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sonar-gadgets Show documentation
Show all versions of sonar-gadgets Show documentation
Sonar Gadgets for Atlassian products like JIRA and Bamboo
<?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.coverage.title__" directory_title="__MSG_sonar.gadget.coverage.title__" description="__MSG_sonar.gadget.coverage.description__" author="Marvelution" author_email="[email protected]" author_affiliation="Marvelution" author_location="Beverwijk, The Netherlands" title_url="http://www.marvelution.com/" height="100" screenshot='#staticResourceUrl("${atlassian.plugin.key}:sonar-coverage-gadget", "sonar-coverage-screenshot.png")' thumbnail='#staticResourceUrl("${atlassian.plugin.key}:sonar-coverage-gadget", "sonar-coverage-thumb.png")'> <Optional feature="gadget-directory"> <Param name="categories"> JIRA Sonar External Content Other </Param> </Optional> <Require feature="minimessage"/> <Require feature="setprefs"/> <Require feature="views"/> <Require feature="dynamic-height"/> <Require feature="settitle"/> <Require feature="oauthpopup"/> <Optional feature="atlassian.util"/> #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="refresh" datatype="hidden" default_value="false" /> <UserPref name="isConfigured" datatype="hidden" default_value="false" /> <UserPref name="titleRequired" datatype="hidden" default_value="true" /> <Content type="html"> <![CDATA[ #requireResource("${atlassian.plugin.key}:gadget-common") #requireResource("${atlassian.plugin.key}:coverage-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__", useOauth: "/rest/gadget/1.0/currentUser", config: { descriptor: function (args) { var gadget = this; AJS.sonar.gadget.utils.setGadgetTitle(gadget, "__MSG_sonar.gadget.coverage.title__"); return { theme : AJS.gadget.sonar.config.getThemeConfig(gadgets), fields: AJS.gadget.sonar.fields.generateServerAndProjectPickerFields(gadget, "sonarServer", "sonarProject", null) }; }, args: [] }, view: { enableReload: true, onResizeReload: 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[0]) { AJS.sonar.gadget.utils.setGadgetTitle(gadget, "__MSG_sonar.gadget.coverage.title__"); gadget.getView().append( AJS.sonar.utils.generateErrorMessageBox([ AJS.format("__MSG_sonar.error.project.not.on.server__", gadget.getPref("sonarProject"), sonarServer.host) ]) ); } else { var measureData = args.measureData[0]; AJS.sonar.gadget.utils.setGadgetTitle(gadget, AJS.format("__MSG_sonar.gadget.coverage.project.title__", measureData.name)); gadget.getView().append( AJS.sonar.views.coverage.generateView(gadget.getBaseUrl(), sonarServer, measureData, args.metricsDetails) ); } }, 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"), AJS.sonar.views.coverage.METRICS)); } }, { 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>