Bug 43442 - Allow to customize portal with about page (impressum)
Allow to customize portal with about page (impressum)
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Portal
UCS 4.2
Other Linux
: P5 normal (vote)
: UCS 4.3-2-errata
Assigned To: Dirk Wiesenthal
Ole Schwiegert
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2017-01-30 11:41 CET by Michel Smidt
Modified: 2018-09-26 13:24 CEST (History)
5 users (show)

See Also:
What kind of report is it?: Feature Request
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?: Yes
School Customer affected?: Yes
ISV affected?:
Waiting Support:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
Screenshot with one link (439.38 KB, image/png)
2018-09-07 12:17 CEST, Dirk Wiesenthal
Details
portal links multiline (453.78 KB, image/png)
2018-09-17 09:36 CEST, Ole Schwiegert
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michel Smidt univentionstaff 2017-01-30 11:41:28 CET
Allow to customize portal with about page (impressum) 
Requested by two UCS@school customers.
Comment 1 Florian Best univentionstaff 2017-06-28 14:52:47 CEST
There is a Customer ID set so I set the flag "Enterprise Customer affected".
Comment 2 Ingo Steuwer univentionstaff 2018-01-11 14:53:07 CET
I assume an "about" page would be part of the menu. Maybe we can have a configurable way to add entries in the menu, so it alse can be used for other purposes? For example a customized "help" or "documentation" page
Comment 3 Florian Best univentionstaff 2018-01-11 15:28:48 CET
(In reply to Ingo Steuwer from comment #2)
> I assume an "about" page would be part of the menu. Maybe we can have a
> configurable way to add entries in the menu, so it alse can be used for
> other purposes? For example a customized "help" or "documentation" page

Since UCS 4.2 we support Javascript hooks and we implemtented an easy API to add such new menu entries:

ucr set umc/web/hooks/impressum=about
Create /var/www/univention/js/umc/hooks/about.js with content like:

define(["umc/menu", "umc/i18n!"], function(menu, _) {
    menu.addSubMenu({
        priority: 50,
        label: _('About'),
        id: 'umcMenuAbout'
    });

    menu.addEntry({
        parentMenuId: 'umcMenuAbout',
        label: _('Impress'),
        priority: 120,
        onClick: function() { alert('TODO: display some impress site'); }
    });
});


Maybe this shouldn't be a product feature but solved by professional services?
Comment 4 Ingo Steuwer univentionstaff 2018-01-11 15:48:31 CET
(In reply to Florian Best from comment #3)
> Maybe this shouldn't be a product feature but solved by professional
> services?

An API is something that can be used in a customer specific implementation. The use case here is to simply add an entry, which in case of an "impressum" might even be a common need for public pages. I don't expect that people would accept the needed effort for an implementation project for that.
Comment 5 Michel Smidt univentionstaff 2018-01-11 16:22:16 CET
Further customer asked today for a possibility to add an "Impressum" and a "Datenschutzerklärung".
Comment 6 Michel Smidt univentionstaff 2018-07-02 12:34:11 CEST
(In reply to Michel Smidt from comment #5)
> Further customer asked today for a possibility to add an "Impressum" and a
> "Datenschutzerklärung".

I think a smooth way would be just configurable links in the portal:portal object. Similiar to the posssibility in the nextcloud configuration.
Comment 7 Dirk Wiesenthal univentionstaff 2018-09-07 12:16:29 CEST
Fixed in
  univention-directory-manager-modules 13.0.22-1A~4.3.0.201809041557
  univention-ldap 14.0.2-18A~4.3.0.201809041559
  univention-portal 2.0.2-1A~4.3.0.201809041601

Static pages can be added on the settings/portal object directly by specifying a quadruple "location", "link", "locale", "name".

"location" is currently only "Footer", which results in a link being placed in the ... footer of the portal. In a next step, this could be extended to "Footer" or "Menu". I figured it was better to add the widget now nonetheless, because it would be a lot harder to extend an existing syntax in UDM / LDAP.

Only those links will be shown that match the current locale. As a reuslt, some links will need to be copied. On the other hand, this allows much finer grained control over what users will ultimately see on the portal.
Comment 8 Dirk Wiesenthal univentionstaff 2018-09-07 12:17:15 CEST
Created attachment 9667 [details]
Screenshot with one link
Comment 9 Ole Schwiegert univentionstaff 2018-09-17 09:36:06 CEST
Created attachment 9673 [details]
portal links multiline

Changelog&Advisories: OK
Package installed: OK
Create/Delete links with UMC: OK
Create/Delete links with python: OK
Create/Delete links with UDM: OK
Links are shown on Portal: OK
Locale is respected: OK
Many links show correct: REOP (*)

(*) I attached a screenshot showing my 'problem'. If there are a enough links to break line and start a second one, you can see that the links are displayed in a somewhat chaotic fashion, since they are not ordered in a grid or similar.
I would propose to arrange the links in some type of grid to avoid this look and especially the line break inside of the link itself.
Comment 10 Dirk Wiesenthal univentionstaff 2018-09-19 11:56:00 CEST
CSS fixes in
  univention-portal 2.0.2-6A~4.3.0.201809191154
Comment 11 Ole Schwiegert univentionstaff 2018-09-20 09:04:14 CEST
All former tests passed again: OK
better layout of links if many are present: OK