Developer
Documentation
Resources
Get Support
Sign in
Developer
Get Support
Sign in
DOCUMENTATION
Cloud
Data Center
Resources
Sign in
Developer
Sign in
DOCUMENTATION
Cloud
Data Center
Resources
Sign in
Last updated Dec 8, 2017

Adding a chart to the issue navigator

This page is part of the Gadget Developers' JavaScript Cookbook.

How do I add my chart to the issue navigator view?

Place the gadget in the 'JIRA' and 'Charts' categories, include two userprefs and change the gadget configuration field:

  1. Place the gadget in both categories: 'JIRA' and 'Charts':

    1
    2
    <Optional feature="gadget-directory">
        <Param name="categories">
            JIRA
            Charts
        </Param>
    </Optional>
    
  2. Include the following two UserPrefs:

    1
    2
    <UserPref name="isPopup" datatype="hidden" default_value="false"/>
    <UserPref name="projectOrFilterId" datatype="hidden" />
    
  3. Dynamically change the Configuration field for your gadget's Configuration form:

    1
    2
    config: {
        descriptor: function ()
        {
            var gadget = this;
            var filterField ;
            if (/^jql-/.test(gadget.getPref("projectOrFilterId")) || gadget.getPref("isPopup") === "true"){
                // JQL has been passed in and we should place this in a hidden field
                filterField =
                {
                    userpref: "projectOrFilterId",
                    type: "hidden",
                    value: gadgets.util.unescapeString(gadget.getPref("projectOrFilterId"))
                };
            } else{
                // Lets display the filter picker
                filterField = AJS.gadget.fields.filterPicker(gadget, "projectOrFilterId");
            }
            return  {
                action: "/rest/gadget/1.0/chart/validate",
                theme : "top-label",
                fields: [
                    filterField,
                    { other field }
                ]
            };
        }
    }        
    

    The popup sets the 'projectOrFilterId' UserPref to the value jql-<JQL-string>. You do not want to display the filter picker.

  4. Your resource should accept the UserPref projectOrFilterId and be able to deal with values of both formats: filter-<filterId> and jql-<JQL-string>.

Refer to the PieChart Gadget for an example of this functionality.

Gadget Developers' JavaScript Cookbook

Using the Atlassian Gadgets JavaScript Framework

Rate this page: