Esri / storymap-series

The Story Map Series lets you present a series of maps via tabs, numbered bullets, or a side accordion.
Apache License 2.0
63 stars 59 forks source link

Embedded apps not working if the user is a member of another organization #46

Open sverkerEsriSE opened 5 years ago

sverkerEsriSE commented 5 years ago

When embedding a web app in a tab of Story Map Series, this is done via the "Web link" content type. The URL is then entered as something like: https://.maps.arcgis.com/apps/MapJournal/index.html?appid=

Which is fine, as long as the app that is being embedded is shared with Everyone or only shared with the organization and only to be used by that same organization.

If the Story Map Series and the embedded app is shared with a Group (and not Everyone), and that group contain users from other organizations, the embedded app will not load, but display the error:

<myagolorg>.maps.arcgis.com refused to connect.

And looking in the Javascript console, we can see why:

Refused to display 'https://<myagolorg>.maps.arcgis.com/apps/MapJournal/index.html?appid=<itemID>' in a frame because it set 'X-frame-Options' to 'deny'

I understand that a URL that is entered is 99% of the time the URL that the creator of the app wants that tab to load, but in this case, the .maps.arcgis.com part should be instead be .maps.arcgis.com

So I have to suggestions for this enhancement request:

  1. Search and replace in the URL string, if it is a .maps.arcgis.com address and the user viewing the map is logged in to AGOL
  2. Add an option to select web app from a dropdown list, similar to how web maps can be selected when configuring a tab in Map Series. Only the itemID would need to be stored and the rest of the URL can be derived from the logged in user accessing the map

Best regards, Sverker Esri Sweden support team