Problem/Motivation

This seems relevant to everyone who installs Group for the first or if you evaluate if Group fits your use case. Especially for larger sites with a lot of existing content, a large user base and the need of constant development.

It is not clearly defined (or understandable if you are not a drupal developer) how the relationship of normal (not assigned to any group) and group entities works or should work.

nET ... normal (not assigned to any group) entity type
gET ... group entity type

1. Regarding entity types

The language of "assigning a nET to a group" implies that the nET=gET, just available in the group.

But it seems to be copied to the group instead. Because if I add custom fields to nET, they do not show up on the gET.
So the question is: Is this an error, or intended behavior?

The problem with this is: if you have a lot of groups and want to make a modification by adding more fields you would have to do this in each group - while you could just do it once on the nET and propagate the change automatically into all groups.

2. Regarding content

If a content is created normally (outside of a group or before groups was installed) and then assigned to group.
What are the rules?
Should it be accessed only its group?
Can it ever be moved outside of its group? What are the implications of doing that? Losing references? Losing Revisions?

Steps to reproduce

Proposed resolution

Maybe my understanding of the underlying concepts is wrong but it would be great if changes (properties/fields, form and display settings ...) of the nET could principally be inherited to the gET.
Even better configurable settings for the way how properties and fields are propagated to gETs
e.g.

  1. propagate changes (e.g. new custom fields, changes to form fields, ... you name it) made to nETs automatically to all gETs
  2. also do 1. on existing group content based on this nET/gET
  3. do not propagate changes (seems to be state of now)

Remaining tasks

User interface changes

API changes

Data model changes

Thank you for explaining.

Comments

maxilein created an issue.