• 3
    • 2
    • We collect Bitbucket feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      Confluence has had these for quite some time, as more people are using Stash in public (i.e. over the internet) it is becoming more pressing to have a supported means of inserting code into the header and body for things including:
      Analytics
      Real User Monitoring
      Heatmap Tracking etc

      It would be ideal to bring this into line with the Confluence offering which allows a simple, supported mechanism for injecting code into all the pages.

            [BSERV-5200] Custom HTML blocks for head, and end of body

            Have you determined whether this will affect your optimization work?

            We would use this feature to supply a banner to differentiate our production, test, and staging servers, like we do with Confluence (https://confluence.atlassian.com/confkb/how-to-add-a-site-wide-banner-165609599.html).  I see there are a couple of paid plugins that might allow us to do that, but we likely wouldn't go that route.  

            Sandy Motyl added a comment - Have you determined whether this will affect your optimization work? We would use this feature to supply a banner to differentiate our production, test, and staging servers, like we do with Confluence ( https://confluence.atlassian.com/confkb/how-to-add-a-site-wide-banner-165609599.html).   I see there are a couple of paid plugins that might allow us to do that, but we likely wouldn't go that route.  

            Ah, you're right, good point.

            Still hugely more difficult to add and maintain as the applications change though...

            Ian Lee [LLNL] added a comment - Ah, you're right, good point. Still hugely more difficult to add and maintain as the applications change though...

            Just FYI lee1001 - it doesn't require an application restart. Plugins can be installed and uninstalled from the admin pages under "Manage add-ons". You're right that it's still heavier than adding fields to the admin pages.

            Adam Ahmed (Inactive) added a comment - Just FYI lee1001 - it doesn't require an application restart. Plugins can be installed and uninstalled from the admin pages under "Manage add-ons". You're right that it's still heavier than adding fields to the admin pages.

            It would be preferable if this didn't have to be done through a plugin... That is a much heavier modification to make (e.g. requires application restart) than simply modifying the HTML via the admin pages.

            Ian Lee [LLNL] added a comment - It would be preferable if this didn't have to be done through a plugin... That is a much heavier modification to make (e.g. requires application restart) than simply modifying the HTML via the admin pages.

            Sorry for the delayed response, I overlooked commenting on this earlier. It's worth noting there is already a web panel location for the end of body in Stash that you can use in every version released so far - stash.web.pageBottom. For future reference, you can see all the fragment locations for a page by appending three query parameters ?web.panels&web.items&web.sections or some subset of those three if you only care about a certain type of plugin point.

            There is no plugin point in the <head> yet, but it's worth noting that we'd have to consider how it affects any performance optimizations we have or plan to have before we expos a plugin point there. I suspect it'll be fine, but we need to make sure exposing this wouldn't prevent us from, for example, an optimization to flush the contents of <head> before grabbing data to display in the <body> might be affected.

            Cheers,
            Adam

            Adam Ahmed (Inactive) added a comment - Sorry for the delayed response, I overlooked commenting on this earlier. It's worth noting there is already a web panel location for the end of body in Stash that you can use in every version released so far - stash.web.pageBottom . For future reference, you can see all the fragment locations for a page by appending three query parameters ?web.panels&web.items&web.sections or some subset of those three if you only care about a certain type of plugin point. There is no plugin point in the <head> yet, but it's worth noting that we'd have to consider how it affects any performance optimizations we have or plan to have before we expos a plugin point there. I suspect it'll be fine, but we need to make sure exposing this wouldn't prevent us from, for example, an optimization to flush the contents of <head> before grabbing data to display in the <body> might be affected. Cheers, Adam

              Unassigned Unassigned
              7ec88566a9d2 Stuart Ryan
              Votes:
              9 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated: