← Back to team overview

dhis2-devs team mailing list archive

Re: DHIS2 Dashboard Apps

 

Thanks a lot John for those clarification/ideas - agree with most of your
points. We would be glad to be part of the process too.

Martin

On Sat, Apr 28, 2018 at 6:23 PM, John Mukulu <john.f.mukulu@xxxxxxxxx>
wrote:

> These are very interesting topics,
>
> Just weigh in on few of the issues raised.
>
> 1. Way of widgets identifying themselves, this is actually supposed to be
> for all apps, to sort of have unique-app-id that'll unique like android
> apps, so names and version can change but it'll stay the same, this is on
> jira but not implemented yet, would help tracking and triggering of widgets
> and their counterparts apps
>
> 2. Explore and going full screen limitations, at the moment, there's no
> such features, explore simply opens the same widget iframe in separate
> page, with scorecard we had to write widget that's actually a fully fledged
> widget, so on explore we'd check if it's separate page to give you
> impression of full app and impression of just a widget on small page, but
> above features would definitely solve this
>
> 3. Access to global selections, at the moment iframe loaded apps have not
> been provided with means of accessing anything outside, because they're
> essentially brand new page running as subpage, standards could be put such
> that global filters could pass selections to the iframe url of the app and
> trigger reload(or abandon iframe idea all together and persue much better
> one! Think web components and custom elements)
>
> 4. Rendering on native mobile apps(android & iOS), because widget are
> stand-alone pages but still using utilizing same page sessions cookies and
> page header contents, they are presented as a fake new page trying to
> impersonate other page, this pause a security dilemma and often forces
> nginx to allow such except for browser, but never torelated on native
> mobile and hence never working there.
>
> Most of these concepts are already in past jira issues awaiting priority
> to be picked up, but should you have interesting in innovating there, three
> major things to solve
>
> 1. Abandoning iframe in favor of web components (but keeping airframe
> simplicity of integration) - solve global filters accesibility and other in
> memory info, solve security for android, allow distinction of states(full
> or widget)
>
> 2. Add app property in manifest for appid and make app urls use app ids
> with support for accepting more parameters
>
> 3. Add property in widget for corresponding appids for widgets to allow
> explore by reference to apps or prompting install when absent(app id would
> guarantee this)
>
> HISP Tanzania can help further brainstorming and potential solutions, let
> me know if you're embarking on this.
>
> And Sorry for long paragraphs!
>
> John Francis Mukulu
> Software Architect, HISPTZ
> http://hisptanzania.org/
>
>
> On Fri, Apr 27, 2018, 15:53 Martin Van Aken <martin@xxxxxxxxxxxxxxxx>
> wrote:
>
>> Thanks for your answer - any way to specify where the "explore" link
>> should lead:
>>
>>
>> this would allow my app to show a small part as an iFrame, then be called
>> in full screen on click (like the Pivot tables & chart works in the
>> Dashboard right now)
>>
>> Martin
>>
>> On Fri, Apr 27, 2018 at 10:47 AM, Edoardo Sabadelli <edoardo@xxxxxxxxx>
>> wrote:
>>
>>> Not exactly, the content in the iframe is usable from within the box
>>> in the dashboard.
>>> There isn't a way of going full screen at the moment, but it can be
>>> easily added.
>>>
>>> On Thu, Apr 26, 2018 at 5:21 PM, Martin Van Aken
>>> <martin@xxxxxxxxxxxxxxxx> wrote:
>>> > OK, so it will render the "main" page (as refered in the manifest) as
>>> an
>>> > iframe there, with clicking on it leading to the "full page" app,
>>> correct ?
>>> > This being said, looks like something I could test easily.
>>> >
>>> > Martin
>>> >
>>> > On Thu, Apr 26, 2018 at 11:28 AM, Edoardo Sabadelli <edoardo@xxxxxxxxx
>>> >
>>> > wrote:
>>> >>
>>> >> Hi Martin,
>>> >>
>>> >> the dashboard widgets/apps, listed under the Apps section in the
>>> >> dashboard item selector, are rendered in the same way as before.
>>> >> They are loaded in an iframe in a box added to the dashboard grid.
>>> >> This is also to ensure existing apps can still work in the new
>>> Dashboards
>>> >> app.
>>> >>
>>> >> As for distinguishing between a full screen and a "widget" app, there
>>> >> isn't anything in place as far as I know.
>>> >>
>>> >> One way is to use a responsive layout in your app, to ensure the
>>> >> content fits and is usable in both full screen and the small widget
>>> >> box.
>>> >>
>>> >> I didn't work with widget apps, so hopefully someone in the community
>>> >> who has done that can help.
>>> >>
>>> >> Cheers,
>>> >>
>>> >> On Thu, Apr 26, 2018 at 10:35 AM, Martin Van Aken
>>> >> <martin@xxxxxxxxxxxxxxxx> wrote:
>>> >> > Hi!
>>> >> > We've been working with DHIS2 Apps for a while now, and found the
>>> >> > general
>>> >> > experience (as developers) pretty good with the d2 + React combo.
>>> >> > Something
>>> >> > I could not find info about is how the different kind of apps
>>> change,
>>> >> > especially the DASHBOARD_WIDGET one - does that means that an app of
>>> >> > this
>>> >> > kind will be rendered as a box in the main view? If so, how to
>>> specify
>>> >> > the
>>> >> > part that should go there vs for example a full sized page after
>>> once
>>> >> > clicked?
>>> >> >
>>> >> > Any doc or example on this would be great.
>>> >> >
>>> >> > As I'm there - thanks to the team there to provide a nice to use
>>> >> > extension
>>> >> > point in the form of webapps - much appreciated!
>>> >> >
>>> >> > Martin
>>> >> >
>>> >> > --
>>> >> > Martin Van Aken - Freelance Enthusiast Developer
>>> >> >
>>> >> > Mobile : +32 486 899 652
>>> >> >
>>> >> > Follow me on Twitter : @martinvanaken
>>> >> > Call me on Skype : vanakenm
>>> >> > Hang out with me : martin@xxxxxxxxxxxxxxxx
>>> >> > Contact me on LinkedIn : http://www.linkedin.com/in/martinvanaken
>>> >> > Company website : www.joyouscoding.com
>>> >> >
>>> >> > _______________________________________________
>>> >> > Mailing list: https://launchpad.net/~dhis2-devs
>>> >> > Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>>> >> > Unsubscribe : https://launchpad.net/~dhis2-devs
>>> >> > More help   : https://help.launchpad.net/ListHelp
>>> >>
>>> >> --
>>> >> Edoardo Sabadelli
>>> >> DHIS 2
>>> >> University of Oslo
>>> >> edoardo@xxxxxxxxx
>>> >> http://www.dhis2.org
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> > Martin Van Aken - Freelance Enthusiast Developer
>>> >
>>> > Mobile : +32 486 899 652
>>> >
>>> > Follow me on Twitter : @martinvanaken
>>> > Call me on Skype : vanakenm
>>> > Hang out with me : martin@xxxxxxxxxxxxxxxx
>>> > Contact me on LinkedIn : http://www.linkedin.com/in/martinvanaken
>>> > Company website : www.joyouscoding.com
>>>
>>> --
>>> Edoardo Sabadelli
>>> DHIS 2
>>> University of Oslo
>>> edoardo@xxxxxxxxx
>>> http://www.dhis2.org
>>>
>>
>>
>>
>> --
>> *Martin Van Aken - **Freelance Enthusiast Developer*
>>
>> Mobile : +32 486 899 652
>>
>> Follow me on Twitter : @martinvanaken <http://twitter.com/martinvanaken>
>> Call me on Skype : vanakenm
>> Hang out with me : martin@xxxxxxxxxxxxxxxx
>> Contact me on LinkedIn : http://www.linkedin.com/in/martinvanaken
>> Company website : www.joyouscoding.com
>> _______________________________________________
>> Mailing list: https://launchpad.net/~dhis2-devs
>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~dhis2-devs
>> More help   : https://help.launchpad.net/ListHelp
>>
>


-- 
*Martin Van Aken - **Freelance Enthusiast Developer*

Mobile : +32 486 899 652

Follow me on Twitter : @martinvanaken <http://twitter.com/martinvanaken>
Call me on Skype : vanakenm
Hang out with me : martin@xxxxxxxxxxxxxxxx
Contact me on LinkedIn : http://www.linkedin.com/in/martinvanaken
Company website : www.joyouscoding.com

References