Prepare next development cycle
[gpl/argeo-suite.git] / swt / org.argeo.app.ui / src / org / argeo / app / ui / people / UserColumn.java
index c8c4ae1f560c9e4767536fce129196691e20000b..35610f3510b1266e49e1285f1e8f48831323bd86 100644 (file)
@@ -1,24 +1,27 @@
 package org.argeo.app.ui.people;
 
 import org.argeo.api.acr.Content;
+import org.argeo.api.acr.ldap.LdapAcrUtils;
 import org.argeo.api.acr.ldap.LdapAttr;
 import org.argeo.api.acr.ldap.LdapObj;
+import org.argeo.api.cms.directory.CmsUser;
 import org.argeo.api.cms.ux.CmsIcon;
-import org.argeo.app.ui.SuiteIcon;
-import org.argeo.cms.auth.UserAdminUtils;
+import org.argeo.app.ux.SuiteIcon;
+import org.argeo.cms.CurrentUser;
 import org.argeo.cms.ux.widgets.Column;
-import org.osgi.service.useradmin.User;
 
 public class UserColumn implements Column<Content> {
        @Override
        public String getText(Content role) {
                if (role.hasContentClass(LdapObj.inetOrgPerson))
-                       return UserAdminUtils.getUserDisplayName(role.adapt(User.class));
+                       return role.adapt(CmsUser.class).getDisplayName();
                else if (role.hasContentClass(LdapObj.organization))
                        return role.attr(LdapAttr.o);
-               else if (role.hasContentClass(LdapObj.groupOfNames))
-                       return role.attr(LdapAttr.cn);
-               else
+               else if (role.hasContentClass(LdapObj.groupOfNames)) {
+                       // TODO make it more generic at ACR level
+                       Object label = LdapAcrUtils.getLocalized(role, LdapAttr.cn.qName(), CurrentUser.locale());
+                       return label.toString();
+               } else
                        return null;
        }