I have a jira gadget that I wrote that I would like to be used from confluence. I have Jira and Confluence running locally on my machine. I have my gadget installed to my jira instance and I have both instances linked with full trust as application links. I have installed my gadget in confluence in the External Gadgets section in the Admin. I then created a simple page and added my gadget via select macro. When I click on my gadget, I'm having issues with the display of my configuration screen. It seems like its missing my i18n resource because I am seeing this for a label gadget.common.project.label. Also the iframe isnt expanding to contain all of my configs.
Here is what my gadget looks like in confluence
Here is the head section of my gadgets gadget.xml:
<?xml version="1.0" encoding="UTF-8" ?> <Module> <ModulePrefs title="__MSG_gadget.title__" directory_title="__MSG_gadget.title__" description="__MSG_gadget.description__" author="__MSG_gadget.author__" thumbnail='#staticResourceUrl("TechnicalDebtTracker:TechnicalDebtTracker-resources", "thumbnail.png")'> <Optional feature="gadget-directory"> <Param name="categories"> . JIRA </Param> </Optional> <Optional feature="atlassian.util"/> <Optional feature="auth-refresh"/> <Require feature="setprefs" /> <Require feature="dynamic-height"/> <Require feature="settitle"/> <Require feature="views"/> <Require feature="oauthpopup"/> #oauth #supportedLocales("gadget.common,gadget.user.activity") <Locale messages="__ATLASSIAN_BASE_URL__/download/resources/TechnicalDebtTracker/i18n/ALL_ALL.xml"/> </ModulePrefs> <UserPref name="isConfigured" datatype="hidden" default_value="false" /> <UserPref name="project" datatype="hidden" required="true" /> <UserPref name="methodology_type" datatype="hidden" required="true" default_value="scrum" /> <UserPref name="warning_threshold" datatype="hidden" required="true" default_value="10" /> <UserPref name="critical_threshold" datatype="hidden" required="true" default_value="20" /> <UserPref name="paid_down_period" datatype="hidden" required="true" default_value="90" /> <UserPref name="normal_color" datatype="hidden" required="true" default_value="#61F553" /> <UserPref name="warning_color" datatype="hidden" required="true" default_value="#FFFA66" /> <UserPref name="critical_color" datatype="hidden" required="true" default_value="#FF7A66" /> <UserPref name="refresh" datatype="hidden" default_value="false" /> <Content type="html"> <![CDATA[ #requireResource("com.atlassian.gadgets.publisher:ajs-gadgets") #requireResource("com.atlassian.jira.gadgets:g-filter-results") #requireResource("TechnicalDebtTracker:TechnicalDebtTracker-resources") #includeResources()
And here is how I am setting my config screen:
(function () { var gadget = AJS.Gadget({ baseUrl: "__ATLASSIAN_BASE_URL__", useOauth: "/rest/gadget/1.0/currentUser", config: { descriptor: function(args) { var gadget = this; var projectPicker = AJS.gadget.fields.projectPicker(gadget, "project", args.projectOptions); return { fields: [ projectPicker, { id: "methodology_type-id", userpref: "methodology_type", label: "__MSG_gadget.config.SetMethodology__", description: "", type: "select", selected: gadget.getPref("methodology_type"), options: [ { label:"Scrum", value:"scrum" }, { label:"Kanban", value:"kanban" } ] }, { id: "warning_threshold-id", userpref: "warning_threshold", label: "__MSG_gadget.config.SetWarning__", description: "__MSG_gadget.config.InStoryPoints__", type: "text", value: gadget.getPref("warning_threshold") }, { id: "critical_threshold-id", userpref: "critical_threshold", label: "__MSG_gadget.config.SetCritical__", description: "__MSG_gadget.config.InStoryPoints__", type: "text", value: gadget.getPref("critical_threshold") }, { id: "paid_down_period-id", userpref: "paid_down_period", label: "__MSG_gadget.config.SetPaidDownPeriod__", description: "__MSG_gadget.config.InDays__", type: "text", value: gadget.getPref("paid_down_period") }, { id: "normal_color-id", userpref: "normal_color", label: "__MSG_gadget.config.SetNormalColor__", description: "__MSG_gadget.config.HexCode__", type: "text", value: gadget.getPref("normal_color") }, { id: "warning_color-id", userpref: "warning_color", label: "__MSG_gadget.config.SetWarningColor__", description: "__MSG_gadget.config.HexCode__", type: "text", value: gadget.getPref("warning_color") }, { id: "critical_color-id", userpref: "critical_color", label: "__MSG_gadget.config.SetCriticalColor__", description: "__MSG_gadget.config.HexCode__", type: "text", value: gadget.getPref("critical_color") }, AJS.gadget.fields.nowConfigured() ] }; }, args: function() { return [ { key: "projectOptions", ajaxOptions: "/rest/gadget/1.0/filtersAndProjects?showFilters=false" }, ]; }() },
Community moderators have prevented the ability to post new answers.
Hi can you please the complete implemenation of this if its working fine . i am also using a select field to populate project lists but its not getting populated. i wanted to refer your code
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.