So several needs we need to satisfy (the below is just my vision):

- EM: when we install the extension it should be listed as installed
- App Index: if the extension is an app, it should be also found there
- App Bar: if the extension is an app and is intended for daily usage (or
if it was created locally by the user), could be listed automatically there
- Create step: if the app provides a template provider, it should be listed
in the create step
-- Templates: Admins will be able to configure the Templates from
Administrations
- Macros Index: if the extension is a macro or if the app provides macros,
they should be listed in the Macros Index (currently the XWiki.WikiMacros,
but in the future located in the Macros.WebHome). Admins will be able to
manage macros from here.
-- Editor macros: if the extension is a macro it should be listed in
CKEditor in the macros section (in the appropriate category)
- Page Administration: if the extension has some configuration intended for
normal users it could integrate it's configuration inside the Page
Administration
- Administration: if the extension needs global configuration options it
should provide a configurable class (and a category) and have it listed in
the Administration
- other?

So as general rules:
- Extensions: are managed/listed by EM, configured in Administration
- Applications: managed by App Index (we would need livetable + actions),
configured in Administration or Page Administration
- Macros: managed by Macros Index, configured where?
- Templates: managed by Templates Index ? :)
- Skins?
- CT?
- etc?

So the main problem is that we are missing pieces and also we don't have a
clear definition of what an application means and of what it's supposed to
provide (since most of the entities are optional). Since some entities are
optional is hard to make rules, so it's case by case. Also we have
inconsistencies in namings, displays and approaches for different types of
extensions.

Not sure what is the conclusion with the above listing, since I don't quite
have one. I was trying to gather some patterns.

The entry point for the Homepage in the EM is nice as idea. I don't think
is complete, since some apps will need to list also the configuration entry
point.

The only problem is that only Administrators will take advantage of it. We
need solutions also for end-users with listings in Indexes.

Also how do we know if the entry point is intended for Admins or Users (in
order to reuse it in AppIndex)?

But the questions still remains:
- what do we put in EM? (all)
- what do we list in *Index?
- what goes in AppBar?
- who provides configurations? and how do we group those configurations by
category? and how do we let the user know some also provide page
configurations?

Thanks,
Caty


On Mon, Oct 17, 2016 at 11:20 AM, Guillaume Delhumeau <
guillaume.delhum...@xwiki.com> wrote:

> I like this idea.
>
> Note: it could be implemented as an XObject having an "extensionId" field,
> so that we don't touch pom.xml. It's more the XWiki-way IMO.
>
> 2016-10-17 8:40 GMT+02:00 Alexandru Cotiuga <alexandru.coti...@xwiki.com>:
>
> > Hi,
> >
> > I am in favour of this proposal since I expressed few months ago the need
> > of a link in the EM UI to easily access the extension's homepage.
> >
> > Thanks,
> > Alex
> >
> > On Sun, Oct 16, 2016 at 3:12 AM, Eduard Moraru <enygma2...@gmail.com>
> > wrote:
> >
> > > On Sat, Oct 15, 2016 at 6:37 PM, Vincent Massol <vinc...@massol.net>
> > > wrote:
> > >
> > > >
> > > > > On 15 Oct 2016, at 13:30, Eduard Moraru <enygma2...@gmail.com>
> > wrote:
> > > > >
> > > > > Hi,
> > > > >
> > > > > On Fri, Oct 14, 2016 at 8:18 PM, Vincent Massol <
> vinc...@massol.net>
> > > > wrote:
> > > > >
> > > > >>
> > > > >>> On 14 Oct 2016, at 19:03, Thomas Mortagne <
> > thomas.morta...@xwiki.com
> > > >
> > > > >> wrote:
> > > > >>>
> > > > >>> This does not make any sense at general Extension level.
> > > > >>>
> > > > >>> Could be custom metadata that apply to XAR extensions. Since that
> > > only
> > > > >>> make sense for XAR extensions I would prefer to have this be
> > > > >>> implemented as a xobject as usual.
> > > > >>
> > > > >> Yes, it could be implemented as a UIXP/XObject of the Extension
> UI.
> > > > >>
> > > > >>> For me this is already the job of the uix we use for application
> > > panel
> > > > >>> so I don't really see the point of adding something else.
> > > > >>
> > > > >> It’s not enough at all. That was my main point and explanation.
> > > > Apparently
> > > > >> I failed to explain the problem correctly.
> > > > >>
> > > > >> I’ll give more details:
> > > > >> * You install a XAR extension that provides a ConfigurableClass
> (but
> > > you
> > > > >> don’t know that as a user)
> > > > >>
> > > > >
> > > > > I would say that an application would need both and Entry Point
> (i.e.
> > > > > homepage)
> > > >
> > > > I’d say this is optional. It would a pain to always mandate this. For
> > > > example the LDAP Application only provides an Admin UI (it only helps
> > to
> > > > configure LDAP).
> > > >
> > > > So for me the entry point is another concept: it’s a link to a place
> > > where
> > > > the user should go to use the app. It can be pointing either to the
> > app’s
> > > > home page if there’s one, or the app’s Admin UI page.
> > > >
> > > > The goal of this thread is not to talk about home pages or Admin
> > sections
> > > > of extensions. It’s about discoverability and making it easy for
> users
> > to
> > > > start using any extension that is installed through the EM UI.
> > > >
> > >
> > > AFAIU, we both agree on this :)
> > >
> > > What I wanted to point out was that an application/extension could also
> > > provide its "settings", just like you have for Firefox addons, for
> > example.
> > > You should go to a list of installed extensions/apps (TBD) and see
> both a
> > > way to access that extension/app, but also the way to configure it.
> IMO,
> > we
> > > should not reuse the entry point for configuration stuff (when there is
> > no
> > > UI, like the LDAP example). However, other apps/extensions could have
> > both.
> > >
> > > IMO, it would be make more sense to talk about extensions here (i.e. at
> > an
> > > EM level), and not particularly about applications (i.e. along the
> lines
> > of
> > > Vincent's original suggestion). AFAIR, we now have extension
> categories.
> > > Why bother with app panel UIXs or Application Descriptors, when EM
> > already
> > > provides all we need? We have the list of pages from EM and a way to
> > > identify extensions that are of type "application". We now add the
> entry
> > > point and the settings and we`re all good to go. It is up to the
> > extension
> > > to juggle the category, entry point and/or settings, if any of this
> > applies
> > > to it.
> > >
> > > Also, this would fit both EM's UI for an extension's details view, but
> > also
> > > the Application Index's listing of installed applications (which would
> > just
> > > be a listing only extensions of category "application", and maybe AWM
> > apps
> > > which are not extensions yet).
> > >
> > > No need to complicate things.
> > >
> > > -Eduard
> > >
> > >
> > > >
> > > > Thanks
> > > > -Vincent
> > > >
> > > > > but also an optional Configuration section (i.e. administration
> > > > > section defined by either a ConfigurableClass entry or even
> something
> > > > > custom).
> > > > >
> > > > > Thanks,
> > > > > Eduard
> > > > >
> > > > >
> > > > >> * After you’ve installed that extension, as a user, you don’t know
> > > what
> > > > to
> > > > >> do. You need to go read the doc for the app to understand where
> you
> > > > need to
> > > > >> go to start using it.
> > > > >>
> > > > >> So I’m really convinced we need something better than what we have
> > > now.
> > > > >>
> > > > >> Now after we move the Applications UIXP to the
> > > > xwiki-platform-applications
> > > > >> module, we could add an “entrypoint’ property in the UIXP but that
> > > would
> > > > >> mean that the Extension Manager UI module would depend on
> > > > >> xwiki-platform-applications. We would need to decide if it’s ok. I
> > > > think it
> > > > >> is since it can be considered as an application descriptor and I
> > don’t
> > > > see
> > > > >> a problem of having the EM UI module know about application
> > > descriptors.
> > > > >>
> > > > >> WDYT?
> > > > >>
> > > > >> Thanks
> > > > >> Vincent
> > > > >>
> > > > >>> On Fri, Oct 14, 2016 at 4:10 PM, Vincent Massol <
> > vinc...@massol.net>
> > > > >> wrote:
> > > > >>>> Hi devs,
> > > > >>>>
> > > > >>>> Problem
> > > > >>>> =======
> > > > >>>>
> > > > >>>> We have 2 issues right now when installing an extension in
> XWiki:
> > > > >>>>
> > > > >>>> 1) It’s not clear where is the entry point of that extension.
> > > > >>>> - Example1: an app that is only for admins and only has a
> > > > >> ConfigurableClass
> > > > >>>> - Example2: an app that provides a macro and doesn’t have a UI
> > > > >>>>
> > > > >>>> 2) Even when an extension registers itself in the Applications
> > > Panel,
> > > > >> the user still need to refresh the page or navigate away to see
> it.
> > > > >>>>
> > > > >>>> Proposal
> > > > >>>> ========
> > > > >>>>
> > > > >>>> * Introduce the concept of Entry point (a.k.a home page) in
> > > Extension
> > > > >> metadata
> > > > >>>> * Have the EM UI display the extension’s entry point (when
> there’s
> > > > one)
> > > > >> after having installed the extension so that the user can click on
> > it
> > > > and
> > > > >> be taken to the home page of the extension.
> > > > >>>>
> > > > >>>> This would make extensions more discoverable IMO.
> > > > >>>>
> > > > >>>> Implementation Details
> > > > >>>> ==================
> > > > >>>>
> > > > >>>> * Some maven extension metadata properties in pom.xml
> > > > >>>>
> > > > >>>> * A format to represent an entry point. It shouldn’t be a full
> URL
> > > > >> since that needs to be computed at runtime. Basically it should
> > > contain:
> > > > >>>> ** The document reference
> > > > >>>> ** The action to use (view, admin, etc) - optional, should
> default
> > > to
> > > > >> “view"
> > > > >>>> ** The query string to use - optional, should default to an
> empty
> > > > query
> > > > >> string
> > > > >>>>
> > > > >>>> This corresponds to the notion of ResourceReference
> > > > >> (EntityResourceReference to be precise). However we don’t have any
> > > > textual
> > > > >> representation of it ATM.
> > > > >>>>
> > > > >>>> WDYT? Good idea? Bad idea?
> > > > >>>>
> > > > >>>> Thanks
> > > > >>>> -Vincent
> > > >
> > > > _______________________________________________
> > > > devs mailing list
> > > > devs@xwiki.org
> > > > http://lists.xwiki.org/mailman/listinfo/devs
> > > >
> > > _______________________________________________
> > > devs mailing list
> > > devs@xwiki.org
> > > http://lists.xwiki.org/mailman/listinfo/devs
> > >
> > _______________________________________________
> > devs mailing list
> > devs@xwiki.org
> > http://lists.xwiki.org/mailman/listinfo/devs
> >
>
>
>
> --
> Guillaume Delhumeau (guillaume.delhum...@xwiki.com)
> Research & Development Engineer at XWiki SAS
> Committer on the XWiki.org project
> _______________________________________________
> devs mailing list
> devs@xwiki.org
> http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
devs@xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to