[GeoNetwork-devel] CFV / GN JS client API & configuration

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

  3. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

···

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@…537…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Thanks for the feedback Jose,

···

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

If the custom view use the same configuration (ie. gnGlobalSettings), yes it could. But if you forked too much the default app, then you probably added some new hardcoded settings which will not be handled. I tried to not refactor old configuration objects to not break compatibility with custom views - but it may require some work if you created a custom app I think.

  1. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I agree a dedicated panel for this would be relevant. BTW, the admin/preview panel is not a must have in the project funding this work (as it focus on integration of GN app in CMS) but it highlights all UI settings. Having those settings in the admin will also force developers to add some docs about all UI settings which is good.

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

You could add suggestions everywhere almost - projection, linktypes, fields, formatters … but that could be improved later.

In the long run, this config could be also saved as user preferences so user can save his custom UI.

Before voting I want to check a bit the code for any additional comment.

All reviews welcomed !

Thanks.

Francois

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi Francois

···

On Mon, Jan 23, 2017 at 5:02 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Thanks for the feedback Jose,

Anything that is relevant to take in account for custom views (specific markup, etc.), if can be added to the docs would be great.

Agree about user UI settings. Something we can check for the short term would be to use cookies to store some UI options like selected language, items per page, sorting. In any case out of scope for this proposal.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

If the custom view use the same configuration (ie. gnGlobalSettings), yes it could. But if you forked too much the default app, then you probably added some new hardcoded settings which will not be handled. I tried to not refactor old configuration objects to not break compatibility with custom views - but it may require some work if you created a custom app I think.

  1. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I agree a dedicated panel for this would be relevant. BTW, the admin/preview panel is not a must have in the project funding this work (as it focus on integration of GN app in CMS) but it highlights all UI settings. Having those settings in the admin will also force developers to add some docs about all UI settings which is good.

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

You could add suggestions everywhere almost - projection, linktypes, fields, formatters … but that could be improved later.

In the long run, this config could be also saved as user preferences so user can save his custom UI.

Before voting I want to check a bit the code for any additional comment.

All reviews welcomed !

Thanks.

Francois

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi Jose,

···

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com…>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi Francois

Looks great!

Regards,
Jose García

···

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

I haven’t had time to check the code, but your ideas look good.

···

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@…537…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi,

Have you tried it in a real website ?
I’m a bit worried about css conflicts, as many rules from geonetwork are on basic elements (from gn or bootstrap) like body, tab etc…
Have you checked if modal and popup (privileges) show up well ?

···

On Tue, Jan 24, 2017 at 9:18 AM, María Arias de Reyna <delawen@anonymised.com> wrote:

I haven’t had time to check the code, but your ideas look good.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@…537…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

Hi Florent,

···

2017-01-24 10:27 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Hi,

Have you tried it in a real website ?

There is a simple testing page for the API mode
https://github.com/geonetwork/core-geonetwork/pull/1848/files#diff-585b429f530e80ee65350209177efd43
and we made basic tests using Iframe mode for the time being.

I’m a bit worried about css conflicts, as many rules from geonetwork are on basic elements (from gn or bootstrap) like body, tab etc…
Have you checked if modal and popup (privileges) show up well ?

Most of the time, you’ll have CSS conflicts depending on the container app unless you use Iframe mode. But that is to the responsibility of the user using the API in the third party app. If you have ideas on limiting CSS conflicts, feedback are welcomed.

We’re now starting more testing using Jahia CMS and custom apps.

Cheers.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@…537…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 9:18 AM, María Arias de Reyna <delawen@…31…> wrote:

I haven’t had time to check the code, but your ideas look good.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.
For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.
Modal and popup are a mess too.
We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.
We have to manually build the api.css as well …

But it’s generally not enough as the website css pollute basic selector div ul li …

···

On Tue, Jan 24, 2017 at 11:10 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Florent,

2017-01-24 10:27 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Hi,

Have you tried it in a real website ?

There is a simple testing page for the API mode
https://github.com/geonetwork/core-geonetwork/pull/1848/files#diff-585b429f530e80ee65350209177efd43
and we made basic tests using Iframe mode for the time being.

I’m a bit worried about css conflicts, as many rules from geonetwork are on basic elements (from gn or bootstrap) like body, tab etc…
Have you checked if modal and popup (privileges) show up well ?

Most of the time, you’ll have CSS conflicts depending on the container app unless you use Iframe mode. But that is to the responsibility of the user using the API in the third party app. If you have ideas on limiting CSS conflicts, feedback are welcomed.

We’re now starting more testing using Jahia CMS and custom apps.

Cheers.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 9:18 AM, María Arias de Reyna <delawen@anonymised.com> wrote:

I haven’t had time to check the code, but your ideas look good.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

2017-01-24 11:52 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

I recall the main goal

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Currently, we have a mix of settings in the JS and in the DB. This proposal combines all options in the same place and allows admin user to customize the user interface options without the need to change the JS and rebuild the JS cache.

We also have quite often the need to use the catalog to promote a set of records. In Metawal case, the geoportal needs to provides entry pages to easily search only maps or only datasets, services and apps, or only INSPIRE records, … The same client app is used but an extra filter is provided to limit the context of the searches to a subsection of the catalog. Some apps need to interact with a map viewer, some don’t. This proposal allows to set the config of the app :

  • in the admin (see the video)
  • in the URL, by sending the config in URL (could be used to init an iframe with a specific config)
  • in a JS API snippet which will embed the configuration.

In this last case, you may have CSS/JS conflict, but this is only one usage of this JS client configuration mode.

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.

I’m aware of this :slight_smile:

For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.

In the metawal case, the container CMS is also using Bootstrap so it may be less conflicting.

Modal and popup are a mess too.

It is also somehow a mess in a standard GN due to the scope to transfer I would say.

We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.

This is required due to too much conflict, but in such case moving to a configurable iframe mode would be a better option maybe (but there is issue with sizing and scrollbars).

We have to manually build the api.css as well …

Should be possible to build that using maven.

But it’s generally not enough as the website css pollute basic selector div ul li …

So this proposal is not only about adding a JS client API mode but rather clean up client app config and improve embeddability of GeoNetwork in third party apps.

···

2017-01-24 11:52 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com…189…>:

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.
For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.
Modal and popup are a mess too.
We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.
We have to manually build the api.css as well …

But it’s generally not enough as the website css pollute basic selector div ul li …

On Tue, Jan 24, 2017 at 11:10 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Florent,

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

2017-01-24 10:27 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com.189…>:

Hi,

Have you tried it in a real website ?

There is a simple testing page for the API mode
https://github.com/geonetwork/core-geonetwork/pull/1848/files#diff-585b429f530e80ee65350209177efd43
and we made basic tests using Iframe mode for the time being.

I’m a bit worried about css conflicts, as many rules from geonetwork are on basic elements (from gn or bootstrap) like body, tab etc…
Have you checked if modal and popup (privileges) show up well ?

Most of the time, you’ll have CSS conflicts depending on the container app unless you use Iframe mode. But that is to the responsibility of the user using the API in the third party app. If you have ideas on limiting CSS conflicts, feedback are welcomed.

We’re now starting more testing using Jahia CMS and custom apps.

Cheers.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 9:18 AM, María Arias de Reyna <delawen@anonymised.com> wrote:

I haven’t had time to check the code, but your ideas look good.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com.31…> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com.> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Ok

So my global feedback is +1
Thanks for this proposal

···

On Tue, Jan 24, 2017 at 1:08 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

2017-01-24 11:52 GMT+01:00 Florent Gravin <florent.gravin@camptocamp.com>:

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

I recall the main goal

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Currently, we have a mix of settings in the JS and in the DB. This proposal combines all options in the same place and allows admin user to customize the user interface options without the need to change the JS and rebuild the JS cache.

We also have quite often the need to use the catalog to promote a set of records. In Metawal case, the geoportal needs to provides entry pages to easily search only maps or only datasets, services and apps, or only INSPIRE records, … The same client app is used but an extra filter is provided to limit the context of the searches to a subsection of the catalog. Some apps need to interact with a map viewer, some don’t. This proposal allows to set the config of the app :

  • in the admin (see the video)
  • in the URL, by sending the config in URL (could be used to init an iframe with a specific config)
  • in a JS API snippet which will embed the configuration.

In this last case, you may have CSS/JS conflict, but this is only one usage of this JS client configuration mode.

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.

I’m aware of this :slight_smile:

For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.

In the metawal case, the container CMS is also using Bootstrap so it may be less conflicting.

Modal and popup are a mess too.

It is also somehow a mess in a standard GN due to the scope to transfer I would say.

We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.

This is required due to too much conflict, but in such case moving to a configurable iframe mode would be a better option maybe (but there is issue with sizing and scrollbars).

We have to manually build the api.css as well …

Should be possible to build that using maven.

But it’s generally not enough as the website css pollute basic selector div ul li …

So this proposal is not only about adding a JS client API mode but rather clean up client app config and improve embeddability of GeoNetwork in third party apps.

2017-01-24 11:52 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.
For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.
Modal and popup are a mess too.
We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.
We have to manually build the api.css as well …

But it’s generally not enough as the website css pollute basic selector div ul li …

On Tue, Jan 24, 2017 at 11:10 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Florent,

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

2017-01-24 10:27 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Hi,

Have you tried it in a real website ?

There is a simple testing page for the API mode
https://github.com/geonetwork/core-geonetwork/pull/1848/files#diff-585b429f530e80ee65350209177efd43
and we made basic tests using Iframe mode for the time being.

I’m a bit worried about css conflicts, as many rules from geonetwork are on basic elements (from gn or bootstrap) like body, tab etc…
Have you checked if modal and popup (privileges) show up well ?

Most of the time, you’ll have CSS conflicts depending on the container app unless you use Iframe mode. But that is to the responsibility of the user using the API in the third party app. If you have ideas on limiting CSS conflicts, feedback are welcomed.

We’re now starting more testing using Jahia CMS and custom apps.

Cheers.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 9:18 AM, María Arias de Reyna <delawen@anonymised.com> wrote:

I haven’t had time to check the code, but your ideas look good.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

Hi

+1. Thanks for the proposal and the update to move these UI settings to it’s own form.

A general comment would be to document the structure of the settings using json format. In this case at least there’s a UI to configure in a visual way the related fields, what is better than for other settings like the editor configuration where is provided a textarea to edit the information.

Regards,
Jose García

···

On Wed, Feb 1, 2017 at 12:08 PM, Florent Gravin <florent.gravin@anonymised.com89…> wrote:

Ok

So my global feedback is +1
Thanks for this proposal


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@…537…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 1:08 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

2017-01-24 11:52 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com45…amp.com>:

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

I recall the main goal

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Currently, we have a mix of settings in the JS and in the DB. This proposal combines all options in the same place and allows admin user to customize the user interface options without the need to change the JS and rebuild the JS cache.

We also have quite often the need to use the catalog to promote a set of records. In Metawal case, the geoportal needs to provides entry pages to easily search only maps or only datasets, services and apps, or only INSPIRE records, … The same client app is used but an extra filter is provided to limit the context of the searches to a subsection of the catalog. Some apps need to interact with a map viewer, some don’t. This proposal allows to set the config of the app :

  • in the admin (see the video)
  • in the URL, by sending the config in URL (could be used to init an iframe with a specific config)
  • in a JS API snippet which will embed the configuration.

In this last case, you may have CSS/JS conflict, but this is only one usage of this JS client configuration mode.

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.

I’m aware of this :slight_smile:

For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.

In the metawal case, the container CMS is also using Bootstrap so it may be less conflicting.

Modal and popup are a mess too.

It is also somehow a mess in a standard GN due to the scope to transfer I would say.

We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.

This is required due to too much conflict, but in such case moving to a configurable iframe mode would be a better option maybe (but there is issue with sizing and scrollbars).

We have to manually build the api.css as well …

Should be possible to build that using maven.

But it’s generally not enough as the website css pollute basic selector div ul li …

So this proposal is not only about adding a JS client API mode but rather clean up client app config and improve embeddability of GeoNetwork in third party apps.

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

2017-01-24 11:52 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Most of the time/, you’ll have CSS conflicts depending on the container app unless you use Iframe mode

What the benefit of API if you use iframe ? You can already use an iframe …

We have done tons of things to make it work for sextant, and i really don’t recommand them cause it is just a mess.
For example, if you embed GN in a site that have big margins … bootstrap grid system is based on window width, so you expect you have one column but you’ll have 3 very small.
Modal and popup are a mess too.
We used a special css class for the GN container, and we have a specific less file that include all GN less files into the root class, to limit side effect on initial website styles.
We have to manually build the api.css as well …

But it’s generally not enough as the website css pollute basic selector div ul li …

On Tue, Jan 24, 2017 at 11:10 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Florent,

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

2017-01-24 10:27 GMT+01:00 Florent Gravin <florent.gravin@anonymised.com>:

Hi,

Have you tried it in a real website ?

There is a simple testing page for the API mode
https://github.com/geonetwork/core-geonetwork/pull/1848/files#diff-585b429f530e80ee65350209177efd43
and we made basic tests using Iframe mode for the time being.

I’m a bit worried about css conflicts, as many rules from geonetwork are on basic elements (from gn or bootstrap) like body, tab etc…
Have you checked if modal and popup (privileges) show up well ?

Most of the time, you’ll have CSS conflicts depending on the container app unless you use Iframe mode. But that is to the responsibility of the user using the API in the third party app. If you have ideas on limiting CSS conflicts, feedback are welcomed.

We’re now starting more testing using Jahia CMS and custom apps.

Cheers.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 9:18 AM, María Arias de Reyna <delawen@anonymised.com> wrote:

I haven’t had time to check the code, but your ideas look good.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

camptocamp
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

Florent Gravin
0479444492

El 24 ene. 2017 8:56 a. m., “Jose Garcia” <jose.garcia@anonymised.com> escribió:

Hi Francois

Looks great!

Regards,
Jose García


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

On Tue, Jan 24, 2017 at 8:49 AM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Hi Jose,

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

2017-01-23 16:46 GMT+01:00 Jose Garcia <jose.garcia@anonymised.com>:

Hi Francois

I like the idea and indeed my colleague Michel is working in a PR to redesign the UI and we have discuss to allow users to setup the background image and some other stuff (probably not for first version) , with your proposal some of this stuff is covered, so it’s great.

I have some questions/comments:

  1. Would this work also with custom views? If yes, would be required any specific code in the custom views? In that case would be great to have it documented.

  2. This is a personal opinion, but adding new stuff to the settings form is becoming really a mess. I would vote to move this UI settings to a custom form or to do a full redesign of the form to use tabs or similar stuff. Also not required for first version, but to consider.

I moved the UI settings to a dedicated tab
https://github.com/geonetwork/core-geonetwork/pull/1848

Cheers.

Francois

  1. Some settings, like facet field names require manual writing, not mandatory for first version, but would be great in the future to extend to selectable lists to avoid user entry errors.

Before voting I want to check a bit the code for any additional comment.

Regards,
Jose García

On Mon, Jan 23, 2017 at 3:09 PM, Francois Prunayre <fx.prunayre@anonymised.com> wrote:

Dear PSC, here is a proposal to add a JS client API to GeoNetwork.

https://github.com/geonetwork/core-geonetwork/wiki/JS-client-API-Proposal

https://github.com/geonetwork/core-geonetwork/pull/1848

The JS API mode allows to build a catalog application from a JSON configuration file and the load of the GeoNetwork JS library. The main goals are:

  • clarify UI configuration (by grouping and documenting all UI options)
  • be able to embed GeoNetwork in third party website like CMS.
  • add admin interface to customize UI options (and preview results)

Regarding the target release, I would suggest to make a 3.2.1 release first and add this proposal to the next one. What do you think ?

Looking forwards to your vote.

Francois


Check out the vibrant tech community on one of the world’s most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


GeoNetwork-devel mailing list
GeoNetwork-devel@anonymised.comorge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.