gadgets.sonar-loc-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.loc.title__" directory_title="__MSG_sonar.gadget.loc.title__" description="__MSG_sonar.gadget.loc.description__" author="Marvelution" author_email="[email protected]" author_affiliation="Marvelution" author_location="Beverwijk, The Netherlands" title_url="http://docs.marvelution.com/x/0oAG" height="100" screenshot='#staticResourceUrl("${atlassian.plugin.key}:sonar-loc-gadget", "sonar-loc-screenshot.png")' thumbnail='#staticResourceUrl("${atlassian.plugin.key}:sonar-loc-gadget", "sonar-loc-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"/> <Optional feature="auth-refresh" /> #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}:loc-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.loc.title__"); return { theme : AJS.gadget.sonar.config.getThemeConfig(gadgets), fields: AJS.gadget.sonar.fields.generateServerAndProjectPickerFields(gadget, "sonarServer", "sonarProject") }; }, 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.loc.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.loc.project.title__", measureData.name)); gadget.getView().append( AJS.sonar.views.loc.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.loc.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>