Feature Wiki
Tabs
Add New Object Action for Item Groups
Page Overview
[Hide]- 1 Initial Problem
- 2 Conceptual Summary
- 3 User Interface Modifications
- 4 Additional Information
- 4.1 Involved Authorities
- 4.2 Technical Aspects
- 4.3 Privacy
- 4.4 Security
- 4.5 Contact
- 4.6 Funding
- 5 Discussion
- 6 Implementation
- 6.1 Description and Screenshots
- 6.2 Test Cases
- 6.3 Privacy
- 6.4 Approval
1 Initial Problem
At the moment, you always have to navigate into the object block via ‘Assign Materials’ to create a new object.
From there ‘And New Object’ can be selected.
This process must be repeated for the next object. As the object block is not part of the Breadcrumb, you have to navigate back to the parent object and then again into the object block via ‘Assign Materials’.
These are simply unnecessary clicks.
2 Conceptual Summary
To speed up the creation process, the ‘Add New Object’ action should be available on the item block itself. The modal introduced with ILIAS 10 with a Drilldown menu is called up.
Objects that are then created are automatically assigned to this item block as materials – this corresponds to the same behaviour as creating objects from the ‘Assign Materials’ screen.
3 User Interface Modifications
3.1 List of Affected Views
- Container objects with item groups.
3.2 User Interface Details
- An additional Action in Dropdowns of item groups
- The 'Add New Object' modal introduced with ILIAS 10 with a Drilldown menu is called up.
3.3 New User Interface Concepts
None.
3.4 Accessibility Implications
Nothing specific or new.
4 Additional Information
4.1 Involved Authorities
- Authority to Sign off on Conceptual Changes: Samoila, Oliver [oliver.samoila]
- Authority to Sign off Code Changes: Joußen, Thomas [tjoussen]
4.2 Technical Aspects
{ Necessary technical information have to be provided here, e.g. dependencies on other ILIAS components, necessary modifications in general services/architecture, potential security or performance issues. }
4.3 Privacy
Nothing specific or new.
4.4 Security
Nothing specific or new.
4.5 Contact
Person to be contacted in case of questions about the feature or for funding offers: Samoila, Oliver [oliver.samoila].
4.6 Funding
Funding status and funding parties are listed in the block 'Status of Feature' in the right column of this page.
If you are interested to give funding for this feature, please get into contact with the person mentioned above as 'Contact'.
5 Discussion
Kunkel, Matthias [mkunkel], 15 JUL 2025: Introducing an additional dropdown entry "Add New Object" makes it obvious that the labelling of this component and what is inside is a bit clumsy. In English we call this component "Item Group". This means the content of this object are items. But to be more precisely, these 'items' are objects. You can only assign repository objects (core or plugins) to an item group, nothing else. So do we still want to go on with this ambiguity and use 'item' for something which is usually known as 'object'? In German we do not have this problem as the component is called "Objekteblock".
My suggestion would be to streamline the wording and call this component an 'object group' with the option 'Add New Object' and 'Organise Objects' (instead of assigning them). All usages of items would be removed and substituted by 'object'.
P.S.: I would leave the final decision on the exact wording to Chris Potter.
Samoila, Oliver [oliver.samoila], 15 JUL 2025: Thank you for this suggestion, Matthias.
I think it's very good and plausible. So I can only support it very much. I also like ‘Organise Objects’ more than ‘Assign Items|Objects|Materials’
Kergomard, Stephan [skergomard], 17 JUL 2025: I'm sorry to be the one to complicate things again, but I don't like this one bit. The wording is actually a symptom of a far bigger problem: There is nothing like "Adding an Object to an Item/Object-Group", the object is added to the container around the group and then assigned to the group. This creates a gazillion different problems. I would be in favor of removing the "Add New Object"-button from the "Materials"-tab, but as maintainer of ILIASObject that provides the functionality to add an object I'm against this changen except for renaming the Item-Groupt to Object-Group as it farther muddies the waters.
On a sidenote: Sessions work the same way and should be treated the same way. So if we change anything here, we must also change it for Sessions.
Samoila, Oliver [oliver.samoila], 17 JUL 2025:
Hey Stephan, thanks for the feedback.
I understand some things. Some things I see. Some things I don't. I come to different conclusions.
It is correct, there is no action ‘Adding an Object to an Item/Object-Group’. We don't have to label an action like this either. The context of the object block makes it easier for us to act with a short label. After all, we don't write ‘Add User to an Assignment of Exercise’ or ‘Change Entry of Table’ in the data collection. So the context helps us.
Yes, we are taking two steps here. An object is created and assigned to the object block. I don't think that's the problem. That is the solution. The solution to an unnecessarily complicated manual process. This complexity has also been an argument in favour of having object blocks directly in a page layout and not always having to carry out this process manually.
Unfortunately, I don't understand your ‘far bigger problem’ from your previous comments. What is it?
I also don't understand why you would be in favour of removing the ‘Add New Object’ button from the ‘Materials’ tab. That makes it even worse in terms of usability. Help me to understand it - and please also from a user perspective.
The call of the session topic I also do not quite understand. So a) because I don't understand 'what work the same way' is here. And b) because, in my view, it makes no sense to only work on problems with something if you are solving all problems with it. The request here addresses a very specific problem and not all arbitrary problems. I also don't know whether the situation where the combination of sessions and item groups works differently than with other objects is localised in the sessions or the item group. I think working on these problems is a very good next topic.
It would be a pity if we didn't take the small steps (even in big topics) just because we couldn't solve the big problem at once. Wouldn't it?
Kergomard, Stephan [skergomard], Samoila, Oliver [oliver.samoila] 18 JUL 2025:
Oliver and Stephan have talked today about this. To clarify the different points:
- Sessions and Item Groups are in regard to assigning materials functionally the same (the have assigned objects, but are no containers). We should keep the nomenclature and the functionality between the two as identical as possible.
- We would suggest to go with Oliver's proposal with a few rather smallish changes:
- We do not add the "Add New Object" in the dropdown, but we do move it from the tab "Materials" to this place. There wouldn't be an "Add New Object" button in the tab "Materials" anymore. This will also clarify the process for the user, as it clarifies the question of belonging: If you now create an object from within an "Item-Group" / "Session", after the creation you are in the object, from where you do not have a clear and understandable path back, to where you started.
- To make it very clear to the user, that she is adding an object to the place where she actually is right now and then assigning it to the "Item Group"/"Session", we propose the button "Add Object and Assign" ("Objekt anlegen und zuweisen") and to also drop the "New" in the button at the top of the page to keep things consistent, so that it would be "Add Object" ("Objekt anlegen").
- All these changes should be applied to both: "Item Groups" and "Sessions".
Technical sidenote Kergomard, Stephan [skergomard]: This shoud probably be added as code to `ILIASObject` and at a certain point should become an optional `ObjectProperty`. So an `ILIASObject` could have a property `MaterialAssignments` (naming is completely provisional) that provides the action and the functions to assign the materials. I believe that a full implementation of this will complicate things right now, as the mechanism for optional properties would need to be fully conceptionalized before it can be used. If this is the way to go, a PR would be welcome.
JourFixe, ILIAS [jourfixe], 21 JUL 2025: We had a longer discussion about the effects of this feature request. To get a clear view of what will change with feature request it would be highly appreciated if Stephan and Oliver could review this request and present in the summary the planned implementation.
Samoila, Oliver [oliver.samoila], 23 JUL 2025: We (M. Kunkel, S. Kergomard, O. Samoila) have discussed this again and would like to use the following language adaptations as a solution:
- Object name:
Current: "Item Group" | "Objekteblock"
Future: "Object Group" | "Objekteblock" - Toolbar Action:
Current: "Add New Object" | "Neues Objekt hinzufügen"
Future: "Create Object | "Objekt erstellen" - Action dropdown of Object Group:
Current: – | –
Future: "Create and Assign Object" | "Objekt erstellen und zuweisen" - Within the management of the Object Group, we then naturally use “Object” as a term (“Organise Objects” or “Manage Objects”) and “Assign” or “Assign” in relation to actions or column identifiers.
Klees, Richard [rklees], 04 AUG 2025: I like this solution for the wording. Definitely worth the iteration. Thanks!
JourFixe, ILIAS [jourfixe], 04 AUG 2025: We highly appreciate this suggestion and accept the feature request for trunk. Please remove all language entries that are no longer needed due to the streamlining of labels.
6 Implementation
Feature has been implemented by {Please add related profile link of this person}
6.1 Description and Screenshots
{ Description of the final implementation and screenshots if possible. }
6.2 Test Cases
Test cases completed at {date} by {user}
- {Test case number linked to Testrail} : {test case title}
6.3 Privacy
Information in privacy.md of component: updated at {date} by {user} | no change required
6.4 Approval
Approved at {date} by {user}.
Last edited: 4. Aug 2025, 14:22, Kunkel, Matthias [mkunkel]