Skip to content

DP-39502: Build page analytics dashboard in powerbi v2#3333

Open
Eileleji wants to merge 18 commits into
developfrom
DP-39502-build-page-analytics-dashboard-in-powerbi-v2
Open

DP-39502: Build page analytics dashboard in powerbi v2#3333
Eileleji wants to merge 18 commits into
developfrom
DP-39502-build-page-analytics-dashboard-in-powerbi-v2

Conversation

@Eileleji
Copy link
Copy Markdown
Contributor

Description:
Build page analytics dashboard in powerbi v2

Jira: (Skip unless you are MA staff)
DP-39502

To Test:

  • Add steps to test this feature

Peer Review Checklist

@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat April 14, 2026 15:25 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat April 21, 2026 04:49 Destroyed
added url to remove page title pane.
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat April 23, 2026 14:49 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat April 23, 2026 15:10 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat April 27, 2026 15:29 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat April 28, 2026 04:51 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 5, 2026 04:49 Destroyed
…n-powerbi-v2

* develop:
  DP-46580: Feedback manager help text (#3359)
  Added logger for detecting oversized headers and tracking their conte… (#3357)
  DP-46555-Pagination-on-Past-Events-Org-Page-returns-to-first-page-instead-of-advancing (#3355)
  changelog update and remove old changelog files
  DP-46553: Distinguish ClamAV scan-limit overruns from virus detections (#3351)
  Ensure Threads social media icons render for both threads.com and threads.net URLs on organization pages (#3356)
  Removed Percy/Browserstack (#3352)
  DP-45941: Allow Editors to Reference Blocked Users in “Authored By” Field for all report filters (#3316)
  DP-45856: Fix metadata related to robots noindex (#3302)
  changelog update and remove old changelog files
  DP-46568: Drupal security update 11.3.8 (#3348)
  Added fix from mayflower for close button keyboard trap (#3346)
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 8, 2026 02:38 Destroyed
dstorozhuk added 3 commits May 7, 2026 23:07
…ashboard

The Power BI iframe relies on third-party cookies for autoAuth, which modern
browsers block by default. As a result the embedded report fails to render
(or shows only a "Sign in" button that cannot be auto-clicked due to
cross-origin restrictions). Replace the iframe with a launcher button that
opens the report in a popup window where auth flows work normally.
Replaces the popup launcher with an inline short iframe (220px) so the
Power BI sign-in button is visible above the fold. After signing in, an
"Expand"/"Collapse" button toggles the iframe to its full report height,
keeping the dashboard inline with the page.
The cross-origin iframe does not expose its DOM, so we cannot detect when
the Power BI sign-in flow finishes. Instead we count load events on the
iframe element: 4s without a new load implies the auth redirect chain
has stabilised and the dashboard is showing, so we expand the iframe to
full height. A 30s fallback handles cases where the chain never
stabilises (blocked content, etc.). The manual Expand/Collapse button
still works and disables the auto behaviour once the user takes over.
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 8, 2026 04:43 Destroyed
The Expand/Collapse button and "Open in a new tab" link now appear both
above and below the iframe so the controls are reachable from either side.
Adds a "Keep expanded after reload" checkbox that persists the expanded
state to localStorage and restores it on subsequent page loads. Both
control rows stay in sync via shared CSS classes.
Changes the checkbox semantics from "always expand on reload" to "preserve
the user's last choice across reloads". When the checkbox is on, every
Expand/Collapse click is persisted; on page load, that state is restored.
When the checkbox is off, the iframe always starts collapsed at 220px.

Storage keys:
- mass_analytics_remember_state ("1" / "0")
- mass_analytics_iframe_state ("expanded" / "collapsed")
…tton

Splits the controls into two rows: button and "Open in a new tab" link on
the top row, "Remember state after reload" checkbox plus its description
on the row below.
The expand/collapse state is now keyed by node ID so each analytics page
remembers its own size independently. The "Remember state after reload"
checkbox stays a single global preference; the per-node state is only
read or written when that preference is on.

Storage keys:
- mass_analytics_remember_state (global toggle)
- mass_analytics_iframe_state__<nid> (per-node)
The Remember-state checkbox is now also keyed by node ID, so each
analytics page tracks both the preference and the saved state
independently.
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 11, 2026 18:17 Destroyed
A null localStorage value (user never toggled the checkbox) is now
treated as "on", and the rendered HTML reflects this so the checkbox
shows as checked before the JS runs. Users keep the same behaviour by
default; an explicit uncheck still persists as "0" and is honoured.
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 11, 2026 18:30 Destroyed
Drops the localStorage-backed Remember-state checkbox, its description,
and the per-node storage keys. The Expand/Collapse toggle stays; the
iframe always starts at the collapsed 220px height. Cleans up the unused
node_id render variable and theme variable.
…n-powerbi-v2

* develop:
  DP-43779: Add tests for author created friendly URLs (redirects) (#3360)
  DP-46838: Bug - unable to add a new field to a new paragraph (#3365)
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 11, 2026 21:52 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 12, 2026 04:47 Destroyed
@arthurbaghdas arthurbaghdas temporarily deployed to Tugboat May 19, 2026 04:49 Destroyed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants