Univention Bugzilla – Bug 28629
Layoutmöglichkeiten für Extended Attributes überarbeiten
Last modified: 2019-03-13 11:13:38 CET
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.
Ja, das stimmt, hier gibt es Überarbeitungsbedarf, um die Handhabe für extended Attributes zu verbessern.
Ggf. auch Bug 28630 berücksichtigen.
*** Bug 29882 has been marked as a duplicate of this bug. ***
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.
Definitiv sind auch die Punkte aus Bug 29882 zu berücksichtigen.
Am besten kurz zusammenstellen, was gemacht werden kann und soll und mit Alex abstimmen.
*** Bug 32703 has been marked as a duplicate of this bug. ***
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.
Ich habe einen Bug gegen die Dokumentation angelegt damit die geänderten short descriptions in der Doku angepasst werden.
"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).
See also Bug 32785, there seem to be some overlapping points.
A typo has crept in: short_description=_('Layout position of the exteneded attribute'), This should be "extended"
*** Bug 32785 has been marked as a duplicate of this bug. ***
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
Created attachment 5526 [details] Screenshot
If I edit an extended attribute, the title below the tabs reads "Maileinstellungen", this seems to be a copy&paste error, see screenshot.
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".
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".
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
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
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.
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.
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.
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
Unique Name -> Unique name
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)
(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.
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.
(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.
* 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
(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"
- 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)
(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
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".
*** Bug 25048 has been marked as a duplicate of this bug. ***