1 package org
.argeo
.app
.ui
.people
;
3 import org
.argeo
.api
.acr
.Content
;
4 import org
.argeo
.api
.acr
.ldap
.LdapAttr
;
5 import org
.argeo
.api
.acr
.ldap
.LdapObj
;
6 import org
.argeo
.api
.cms
.directory
.CmsGroup
;
7 import org
.argeo
.api
.cms
.directory
.CmsUserManager
;
8 import org
.argeo
.api
.cms
.directory
.HierarchyUnit
;
9 import org
.argeo
.app
.ui
.SuiteMsg
;
10 import org
.argeo
.app
.ui
.SuiteUiUtils
;
11 import org
.argeo
.cms
.CurrentUser
;
12 import org
.argeo
.cms
.swt
.acr
.SwtUiProvider
;
13 import org
.eclipse
.swt
.widgets
.Composite
;
14 import org
.eclipse
.swt
.widgets
.Control
;
15 import org
.eclipse
.swt
.widgets
.Label
;
16 import org
.osgi
.service
.useradmin
.Role
;
18 public class GroupUiProvider
implements SwtUiProvider
{
19 private CmsUserManager cmsUserManager
;
22 public Control
createUiPart(Composite parent
, Content context
) {
23 CmsGroup group
= context
.adapt(CmsGroup
.class);
24 Content hierarchyUnitContent
= context
.getParent().getParent();
25 HierarchyUnit hierarchyUnit
= hierarchyUnitContent
.adapt(HierarchyUnit
.class);
27 // TODO localise at content level
29 if (context
.hasContentClass(LdapObj
.organization
))
30 title
= SuiteMsg
.org
.lead() + " " + context
.attr(LdapAttr
.cn
) + " ("
31 + hierarchyUnit
.getHierarchyUnitLabel(CurrentUser
.locale()) + ")";
33 title
= SuiteMsg
.group
.lead() + " " + context
.attr(LdapAttr
.cn
) + " ("
34 + hierarchyUnit
.getHierarchyUnitLabel(CurrentUser
.locale()) + ")";
35 SuiteUiUtils
.addFormLabel(parent
, title
);
37 for (Role member
: group
.getMembers()) {
38 new Label(parent
, 0).setText(member
.getName());
44 public void setCmsUserManager(CmsUserManager cmsUserManager
) {
45 this.cmsUserManager
= cmsUserManager
;