Bug 28629 - Layoutmöglichkeiten für Extended Attributes überarbeiten
Layoutmöglichkeiten für Extended Attributes überarbeiten
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UDM - Extended Attributes
UCS 3.0
Other Linux
: P3 enhancement with 2 votes (vote)
: UCS 3.2
Assigned To: Lukas Walter
Felix Botner
: interim-3
: 25048 29882 32703 32785 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-09-24 12:49 CEST by Tim Petersen
Modified: 2019-03-13 11:13 CET (History)
7 users (show)

See Also:
What kind of report is it?: ---
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?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted after Product Owner Review:
Ticket number:
Bug group (optional): Usability
Max CVSS v3 score:


Attachments
Screenshot (45.30 KB, image/png)
2013-10-21 12:28 CEST, Moritz Muehlenhoff
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tim Petersen univentionstaff 2012-09-24 12:49:30 CEST
Ein Kunde berichtet an Ticket #2012091721001309 von Schwierigkeiten beim Definieren eines Layouts für mehrere Extended Attributes.
Ich bin beim Nachstellen auf mehrere Stellen gestoßen, die man verbessern könnte:
- Bennenung von "Positionsnummer auf der Karteikarte" und "Positionsnummer der Gruppe".
Wenn man mehrere Attribute an einer Karteikarte unterhalb der gleichen Gruppe anlegen möchte, ist nicht wirklich erkennbar, welcher Parameter hier was beeinflusst.
- Mehr als zwei Widgets unterhalb einer Gruppe nebeneinander zu legen war mir hier unmöglich. Eine Sortierung funktioniert scheinbar über "Positionsnummer auf der Karteikarte" - das könnte man intuitiver lösen.

Der Kunde berichtet, dass drei Widgets in einer Gruppe nebeneinander darstellbar waren, indem die Positionen 3, 4 und 4 vergeben werden - das konnte ich nicht nachstellen. Über diesen Workaround wäre dann aber auch keine Definition der Reihenfolge mehr möglich.
Comment 1 Alexander Kläser univentionstaff 2012-09-24 13:38:30 CEST
Ja, das stimmt, hier gibt es Überarbeitungsbedarf, um die Handhabe für extended Attributes zu verbessern.
Comment 2 Alexander Kläser univentionstaff 2012-09-24 13:39:09 CEST
Ggf. auch Bug 28630 berücksichtigen.
Comment 3 Alexander Kläser univentionstaff 2013-04-19 10:28:56 CEST
*** Bug 29882 has been marked as a duplicate of this bug. ***
Comment 4 Moritz Muehlenhoff univentionstaff 2013-05-31 10:46:27 CEST
We will not ship a UCS 3.1-2 release; the next UCS release will be UCS 3.2.

As such, this bug is moved to the new target milestone.
Comment 5 Philipp Hahn univentionstaff 2013-08-15 12:24:26 CEST
Definitiv sind auch die Punkte aus Bug 29882 zu berücksichtigen.
Comment 6 Stefan Gohmann univentionstaff 2013-09-11 17:07:41 CEST
Am besten kurz zusammenstellen, was gemacht werden kann und soll und mit Alex abstimmen.
Comment 7 Philipp Hahn univentionstaff 2013-09-30 08:17:10 CEST
*** Bug 32703 has been marked as a duplicate of this bug. ***
Comment 8 Lukas Walter univentionstaff 2013-10-08 13:12:51 CEST
Zum besseren Verständnis wurden die Beschreibungen der Felder, welche Einfluss auf die Position des extended attributes in der Darstellung haben, geändert.

svn r44880: univention-directory-manager-modules (9.0.48-1)




Drei extended attributes sind mit dem beschriebenen Workaround einfach nebeneinander darstellbar, wenn sie von der Größe her nebeneinander in eine Zeile passen (also abhängig von der Syntax).
Eine grundlegende Umstellung des Sortierungsmechanismus soll hier nicht geschehen.
Comment 9 Lukas Walter univentionstaff 2013-10-08 16:26:55 CEST
Ich habe einen Bug gegen die Dokumentation angelegt damit die geänderten short descriptions in der Doku angepasst werden.
Comment 10 Alexander Kläser univentionstaff 2013-10-09 11:50:22 CEST

"Layout position of the extended attribute's group"
→ shortened to "Group layout position"

"Overwrite existing tab" + "Tab with advanced settings"
→ into title pane "Tab layout"

title pane "Extended settings"
→ rename to "Attribute layout" + should be the first title pane

"Span both columns"
→ in one row with (and to the right of) "Do not show in UMC"

"Layout position of the exteneded attribute"
→ rename to "Attribute layout position" + into the title pane "Attribute layout", first row and before "Overwrite existing widget"

"Position of the extended attribute in the superordinate element..."
→ too complex, better could be:
"Position of the attribute widget on the tab. Elements are organized in rows and two columns. Uneven numbers (1, 3 etc.) refer to first column, even numbers (2, 4, etc.) to the second column. -1 places the element at the very beginning."

"Position of the extended attribute's group (if existent)..."
→ "(if existent)" can be omitted


Please also catch the tracebacks from Bug 32703 and when entering an invalid position (0 or <-1).
Comment 11 Alexander Kläser univentionstaff 2013-10-09 12:13:59 CEST
See also Bug 32785, there seem to be some overlapping points.
Comment 12 Moritz Muehlenhoff univentionstaff 2013-10-11 14:46:11 CEST
A typo has crept in:

short_description=_('Layout position of the exteneded attribute'),

This should be "extended"
Comment 13 Lukas Walter univentionstaff 2013-10-14 14:15:26 CEST
*** Bug 32785 has been marked as a duplicate of this bug. ***
Comment 14 Lukas Walter univentionstaff 2013-10-14 14:21:35 CEST
Patch from Bug #32785 has been integrated with minor changes.
Along with that, the short descriptions of all extendend attribute properties have been improved, and long descriptions have been added.
Additionally, the layout has been completely redone.


svn 45038 : univention-directory-manager-modules 9.0.58-1
Comment 15 Moritz Muehlenhoff univentionstaff 2013-10-21 12:28:41 CEST
Created attachment 5526 [details]
Screenshot
Comment 16 Moritz Muehlenhoff univentionstaff 2013-10-21 12:29:18 CEST
If I edit an extended attribute, the title below the tabs reads "Maileinstellungen", this seems to be a copy&paste error, see screenshot.
Comment 17 Moritz Muehlenhoff univentionstaff 2013-10-21 12:41:52 CEST
The option "Aktivierende Optionen" is misleading; it suggests that these options are activated by this extended attribute. It should rather be labelled "Benötigte Optionen/Objektklassen" / "Required options/objects classes".
Comment 18 Moritz Muehlenhoff univentionstaff 2013-10-21 12:50:16 CEST
When running in German the "Module" tab has the title "UDM-spezifische Einstellungen". 

That is misleading; we only use "Univention Directory Manager" as the name for the command line interface, but all of these setting also apply to the UMC. I propose "Einstellungen der zu erweiternden Module" resp. "Settings of the modules to be extended".
Comment 19 Moritz Muehlenhoff univentionstaff 2013-10-21 12:55:39 CEST
The German title for "LDAP mapping" is inconsistent to the English one:

- Mapping to LDAP object class and attribute
- Abbildung auf LDAP-Objektklassen

I propose a rather generic introduction:
- Konfiguration der zur Speicherung des erweiterten Attributs verwendeten LDAP-Einstellungen
- Configuration of the LDAP settings used to store the extended attribute
Comment 20 Moritz Muehlenhoff univentionstaff 2013-10-21 12:58:39 CEST
This attribute label is misleading:

Objektklasse löschen wenn der Wert leer gesetzt wird

This applies to the removal of the attribute, not to setting it to an empty value.

Proposed:
Objektklasse löschen, wenn das Attribut entfernt wird
Remove object class if the attribute is removed
Comment 21 Moritz Muehlenhoff univentionstaff 2013-10-21 13:07:22 CEST
In 99% of all cases a user should use univentionFreeAttributeX for extended attributes:

The input fields "LDAP object class" and "LDAP attribute" should provide a note wrt univentionFreeAttributeX. Either by providing a link to the manual
( http://docs.univention.de/manual-3.2.html#domain:ldap:extensions ) or by integrating this introduction text into the menu:

English:
Univention Corporate Server provides its own LDAP scheme for customer extensions. The LDAP object class univentionFreeAttributes can be used for extended attributes without restrictions. It offers 20 freely usable attributes (univentionFreeAttribute1 to univentionFreeAttribute20) and can be used in connection with any LDAP object (e.g., a user object). 

German:
UCS bring ein eigenes LDAP-Schema für Kundenerweiterungen mit. Die LDAP-Objektklasse univentionFreeAttributes kann ohne Einschränkungen für erweiterte Attribute verwendet werden. Sie bringt 20 frei zu verwendende Attribute (univentionFreeAttribute1 bis univentionFreeAttribute20) mit und kann in Verbindung mit jedem beliebigen LDAP-Objekt (z.B. einem Benutzerobjekt) verwendet werden.
Comment 22 Moritz Muehlenhoff univentionstaff 2013-10-21 13:18:05 CEST
This is misleading:

DE: Existierende Eigenschaft mit diesem Namen überschreiben
EN: Overwrite existing property with this name

The univention.admin.property is an internal name which is not obvious to the user. All other user properties are referred to as attributes. I propose to revert to the old names, which are more correct: This option only overwrites the input field, but stores the result in the new LDAP attribute of the extended attribute, the attribute formerly managed by the input field is not touched! So I propose to revert to the old text:

Existierendes Eingabefeld überschreiben / Overwrite existing widget

In addition the help text from the manual should be added to the tooltip:

English:
In some cases it is useful to overwrite predefined input fields with extended attributes. If the internal UDM name of an attribute is configured here, its  input field is overwritten by this extended attribute. The UDM attribute name can only be determined by searching within /usr/share/pyshared/univention/admin/handlers directory. It is the name which comes before the colon in the declarations of univention.admin.property objects, e.g., roomNumber for a  user's room number. 

German:
In einigen Fällen ist es sinnvoll, vorgegebene Eingabefelder mit erweiterten 
Attributen zu überschreiben. Wird hier der interne UDM-Name eines Attributs 
konfiguriert, wird dessen Eingabefeld von diesem erweiterten Attribut 
überschrieben. Der UDM-Attributname kann nur durch eine Suche unterhalb des 
Verzeichnisses /usr/share/pyshared/univention/admin/handlers/ ermittelt 
werden. Es handelt sich dabei um den Namen, der in den Deklarationen von
univention.admin.property-Objekten vor dem Doppelpunkt steht,
z.B. roomNumber für die Raumnummer eines Benutzers.
Comment 23 Moritz Muehlenhoff univentionstaff 2013-10-21 14:00:18 CEST
Gruppen-Ordnungsnummer instead of "Gruppen Ordnungsnummer"
"Standardwert, der" instead of "Standard Wert der"

The tooltip for the syntax refers to univention.admin.syntax, which isn't helpful for the user. Better use the text from the manual:

German:
Bei der Eingabe von Werten nimmt die UMC eine Syntaxprüfung vor. Neben Standard-Syntaxdefinitionen für Zeichenketten (string), Zahlen (integer) gibt es drei Möglichkeiten einen binären Zustand auszudrücken: Die Syntax TrueFalse wird auf LDAP-Ebene durch die Zeichenketten true und false abgebildet, die Syntax TrueFalseUpper verwendet dagegen die Werte TRUE und FALSE. Die Syntax boolean dagegen speichert keinen Wert bzw. die Zeichenkette 1.

English:
When values are entered, the UMC performs a syntax check. Apart from standard syntax definitions (string) and (integer), there are three possibilities for expressing a binary condition. The syntax TrueFalse is represented at LDAP level using the strings true and false, the syntax TrueFalseUppercorresponds to the OpenLDAP boolean values TRUE and FALSE and the syntax boolean does not save any value or the string 1.
Comment 24 Moritz Muehlenhoff univentionstaff 2013-10-21 14:05:34 CEST
I propose to use

Wert wird nur intern verwaltet
Value is only managed internally

instead of

Wert nicht durch die UMC oder das Kommandozeilenprogramm änderbar
Value not editable through UMC or the command line programm

"Kommandozeilenprogramm" is ambigious, this could also refer to ldapmodify
Comment 25 Moritz Muehlenhoff univentionstaff 2013-10-21 14:41:22 CEST
Unique Name -> Unique name
Comment 26 Lukas Walter univentionstaff 2013-10-22 14:03:10 CEST
I've adapted everything as suggested.

Due to default of a method to proper display more detailed descriptive texts related to the purpose of an tab, the explanation about univentionFreeAttributes will be shown as popup help when mouse hovering "LDAP object class" or "LDAP attribute", at least for now (I've created Bug #32950, requesting the implementation an additional layout element for that).


svn 45433: univention-directory-manager-modules (9.0.68-1)
Comment 27 Moritz Muehlenhoff univentionstaff 2013-10-23 09:20:04 CEST
(In reply to Lukas Walter from comment #26)
> I've adapted everything as suggested.

I didn't make the full QA for the bug, but the changes from comment 15 to 25 have been integrated.
Comment 28 Sönke Schwardt-Krummrich univentionstaff 2013-10-23 09:45:19 CEST
I would suggest to rename "Von der Suche ausschließen" to something like
"Von der UMC-Suche ausschließen" and move the option from module tab to UMC tab.
Comment 29 Lukas Walter univentionstaff 2013-10-23 18:39:03 CEST
(In reply to Sönke Schwardt-Krummrich from comment #28)
> I would suggest to rename "Von der Suche ausschließen" to something like
> "Von der UMC-Suche ausschließen" and move the option from module tab to UMC
> tab.

Good idea. I've adapted this.
Comment 30 Felix Botner univentionstaff 2013-10-30 11:13:09 CET
* Bug #29882 - i can still reproduce this

* typo in modules/univention/admin/handlers/settings/de.po:
  "vonunivention.admin.property-

* Tab ldap mapping:
  Konfiguration der zur Speicherung des erweiterten Attributs verwendeten LDAP-Einstellungen
  -> too long and complicated

* Tab UMC: 
  everything is in groups, except "Dieses erweiterte Attribut nicht in der UMC anzeigen" and
  "Von der UMC-Suche ausschließen", this looks odd maybe add a group General

* Tab Modul: ???
  Settings of the modules to be extended -> Configuration of the ...
  Einstellungen der zu erweiternden Module ->  Konfiguration der ...

  Needed module -> Modules to be extended (Zu erweiternde Module)

* Tab Data type:
  Syntax-Name (de) Syntax class (en)
  it should be a syntax name (or class) in both, de and en
Comment 31 Felix Botner univentionstaff 2013-10-30 11:17:22 CET
(In reply to Felix Botner from comment #30)
> * Bug #29882 - i can still reproduce this

#!/bin/bash

eval "$(ucr shell)"

univention-directory-manager settings/extended_attribute create \
  --ignore_exists \
  --position "cn=custom attributes,cn=univention,$ldap_base" \
  --set tabAdvanced="0" \
  --set tabName="General" \
  --set translationTabName="\"de_DE\" \"General\"" \
  --set name="view_inventoryNumber" \
  --set CLIName="view_inventoryNumber" \
  --set shortDescription="Reference to Inventory data" \
  --set translationShortDescription="\"de_DE\" \"Ref to Inventory\"" \
  --set longDescription="Reference to new schema inventory data" \
  --set translationLongDescription="\"de_DE\" \"Ref inventory data\"" \
  --set syntax="xxxxxInventoryComputer2Item" \
  --set multivalue="0" \
  --set valueRequired="0" \
  --set doNotSearch="0" \
  --set mayChange="1" \
  --set notEditable="0" \
  --set tabPosition="5" \
  --set overwritePosition="1" \
  --set objectClass="objectClass" \
  --set ldapMapping="xxxxxInventoryNumber_view" \
  --set deleteObjectClass="1" \
  --set module="computers/windows"
Comment 32 Lukas Walter univentionstaff 2013-10-30 14:33:56 CET
- Typo fixed
- moved "disableUDMWeb" and "doNotSearch" into their own Group ("General")
- "Needed modules" -> "Modules to be extended"
- changed LDAP tab description to "LDAP object class and attribute"
- "Syntax class" will be "Syntax-Klasse" in german now

Traceback is fixed as well.

svn 45710: univention-directory-manager-modules (9.0.73-1)
Comment 33 Felix Botner univentionstaff 2013-10-30 15:12:29 CET
(In reply to Lukas Walter from comment #32)
> - Typo fixed
> - moved "disableUDMWeb" and "doNotSearch" into their own Group ("General")
> - "Needed modules" -> "Modules to be extended"
> - changed LDAP tab description to "LDAP object class and attribute"
> - "Syntax class" will be "Syntax-Klasse" in german now
> 
> Traceback is fixed as well.
> 
> svn 45710: univention-directory-manager-modules (9.0.73-1)

OK

OK - Changelog
Comment 34 Stefan Gohmann univentionstaff 2013-11-19 06:42:52 CET
UCS 3.2 has been released:
 http://docs.univention.de/release-notes-3.2-en.html
 http://docs.univention.de/release-notes-3.2-de.html

If this error occurs again, please use "Clone This Bug".
Comment 35 Philipp Hahn univentionstaff 2014-01-24 11:52:27 CET
*** Bug 25048 has been marked as a duplicate of this bug. ***