diff --git a/src/app/appmarket/users/list/userslist.component.html b/src/app/appmarket/users/list/userslist.component.html
index 9238f1825295d4118fd65ce5faf3769d522ca113..204fdf4263c45bc452f6542f3340c9d630b78706 100644
--- a/src/app/appmarket/users/list/userslist.component.html
+++ b/src/app/appmarket/users/list/userslist.component.html
@@ -10,8 +10,7 @@
 
 </div>
 
-
-<div class="col-sm-12" *ngIf="domainMode" >
+<div class="col-sm-12" *ngIf="domainMode">
 	<div *roles="['ROLE_DOMAIN_ADMIN']">
 		<nmaas-userslist *ngIf="!isInAddToDomainMode" [users]="allUsers" [allowedModes]="[ComponentMode.VIEW, ComponentMode.DELETE]" [domainMode]="true" (onUserRoleChange)="onUserRoleChange($event)"
 						 (onView)="onUserView($event)" (onModeChange)="onModeChange($event)" (onDelete)="onUserDelete($event)" (onRemoveFromDomain)="onRemoveRole($event)">
diff --git a/src/app/appmarket/users/list/userslist.component.ts b/src/app/appmarket/users/list/userslist.component.ts
index 171878c836337b42dabdced9e3a655951099e5e2..9ed6089bd347f853e555b2589bd45cb418f78bbe 100644
--- a/src/app/appmarket/users/list/userslist.component.ts
+++ b/src/app/appmarket/users/list/userslist.component.ts
@@ -6,7 +6,7 @@ import {UserService} from '../../../service/user.service';
 import {UserDataService} from '../../../service/userdata.service';
 import {Component, OnInit} from '@angular/core';
 import {ComponentMode} from '../../../shared/common/componentmode';
-import {ActivatedRoute, NavigationEnd, Router} from '@angular/router';
+import {ActivatedRoute, Router} from '@angular/router';
 import {Location} from '@angular/common';
 import {Observable, of} from 'rxjs';
 import {map} from 'rxjs/operators';
@@ -27,7 +27,7 @@ export class UsersListComponent implements OnInit {
 
     public isInAddToDomainMode = false;
 
-    public domainMode = false;
+    public domainMode: boolean;
 
     constructor(protected authService: AuthService,
                 protected userService: UserService,
@@ -40,14 +40,8 @@ export class UsersListComponent implements OnInit {
 
 
     ngOnInit() {
+        this.domainMode = false;
         this.userDataService.selectedDomainId.subscribe((domainId) => this.update(domainId));
-        this.router.events.subscribe(event => {
-            if (event instanceof NavigationEnd) {
-                if (event.url.includes('domain')) {
-                    this.domainMode = true;
-                }
-            }
-        })
     }
 
     public update(domainId: number): void {
@@ -65,6 +59,7 @@ export class UsersListComponent implements OnInit {
         } else if (this.authService.hasRole(Role[Role.ROLE_SYSTEM_ADMIN])) {
             users = this.userService.getAll(this.domainId);
         } else if (this.domainId != null && this.authService.hasDomainRole(this.domainId, Role[Role.ROLE_DOMAIN_ADMIN])) {
+            this.domainMode = true;
             users = this.userService.getAll(this.domainId);
         } else {
             users = of<User[]>([]);
@@ -79,6 +74,7 @@ export class UsersListComponent implements OnInit {
 
         users.subscribe((all) => {
             this.allUsers = all;
+            console.log(this.allUsers);
             /* parse date strings to date objects */
             for (const u of this.allUsers) {
                 if (u.firstLoginDate) {
@@ -131,6 +127,5 @@ export class UsersListComponent implements OnInit {
             const foundUser = this.allUsers.find(user => user.id === event.userId);
             this.onRemoveRole({id: event.userId, roles: foundUser.roles})
         }
-
     }
 }
diff --git a/src/app/appmarket/users/users.routes.ts b/src/app/appmarket/users/users.routes.ts
index c947b8a23ae70e0d7f44042515f4fee73b36484d..2b20bd27815dc88a3ab8eda1b0b3df293e380432 100644
--- a/src/app/appmarket/users/users.routes.ts
+++ b/src/app/appmarket/users/users.routes.ts
@@ -1,8 +1,8 @@
-import { Route } from '@angular/router';
-import { UsersListComponent, UserDetailsComponent } from './index';
-import { AuthGuard } from '../../auth/auth.guard';
-import { RoleGuard } from '../../auth/role.guard';
-import { ComponentMode } from '../../shared/common/componentmode';
+import {Route} from '@angular/router';
+import {UserDetailsComponent, UsersListComponent} from './index';
+import {AuthGuard} from '../../auth/auth.guard';
+import {RoleGuard} from '../../auth/role.guard';
+import {ComponentMode} from '../../shared/common/componentmode';
 
 export const UsersRoutes: Route[] = [
     { path: 'admin/users', component: UsersListComponent, canActivate: [AuthGuard, RoleGuard],
diff --git a/src/app/shared/users/list/userslist.component.css b/src/app/shared/users/list/userslist.component.css
index 8758875ce9ef26b47091a885663a3dc14370f51c..0553eee556dcb4bd4a017d4aab30e7d9827e3098 100644
--- a/src/app/shared/users/list/userslist.component.css
+++ b/src/app/shared/users/list/userslist.component.css
@@ -31,3 +31,8 @@ tr.clickable {
     display: flex;
     justify-content: space-between;
 }
+
+li::marker {
+    content: '';
+    font-size: 0em;
+}
diff --git a/src/app/shared/users/list/userslist.component.html b/src/app/shared/users/list/userslist.component.html
index 8a8a92a9fe0c22e10f9800408148156d8c520b89..2b1ab96b4be4aba6cd7f8364de8cc41ea94cfc3e 100644
--- a/src/app/shared/users/list/userslist.component.html
+++ b/src/app/shared/users/list/userslist.component.html
@@ -87,27 +87,38 @@
             <td *ngIf="domainId !== domainService.getGlobalDomainId() && !isModeAllowed(ComponentMode.EDIT)">
                 <div *roles="['ROLE_DOMAIN_ADMIN']">
                     <div *ngIf="!checkUserIfIsCurrentUser(user.username)">
-                        <p-dropdown [options]="getAllowedRoles()" (onChange)="changeUserRole(user,domainId, $event)">
-                            <ng-template pTemplate="selectedItem">
-                            <span *ngFor="let roles of getOnlyDomainRoles(user)">
-                                {{"ENUM.USER_ROLES." + roles.role.toUpperCase() | translate}}
-                            </span>
-                            </ng-template>
-                            <ng-template let-role pTemplate="item">
-                                {{"ENUM.USER_ROLES." + Role[role].toUpperCase() | translate}}
-                            </ng-template>
-                        </p-dropdown>
+<!--                        <p-dropdown [options]="getAllowedRoles()" (onChange)="changeUserRole(user,domainId, $event)" [ngModel]="getOnlyDomainRoles(user)">-->
+<!--                            <ng-template pTemplate="selectedItem">-->
+<!--                            <span >-->
+<!--                                {{"ENUM.USER_ROLES." + getOnlyDomainRoles(user).role | translate}}-->
+<!--                            </span>-->
+<!--                            </ng-template>-->
+<!--                            <ng-template let-role pTemplate="item">-->
+<!--                                {{"ENUM.USER_ROLES." + Role[role].toUpperCase() | translate}}-->
+<!--                            </ng-template>-->
+<!--                        </p-dropdown>-->
+                        <li  [routerLinkActiveOptions]="{exact:true}"
+                            [routerLinkActive]="['active']" class="dropdown dropdown-domains">
+                            <a aria-expanded="false" data-close-others="true"  aria-haspopup="true" class="dropdown-toggle" data-toggle="dropdown"
+                               role="button">
+                                <span style="color: black;">{{"ENUM.USER_ROLES." + getOnlyDomainRoles(user)?.role | translate}}<strong class="caret"></strong></span></a>
+                            <ul class="dropdown-menu">
+                                <li *ngFor="let role of getAllowedRoles()">
+                                    <a (click)="changeUserRole(user,domainId, {value:role})">{{"ENUM.USER_ROLES." + Role[role].toUpperCase() | translate}}</a>
+                                </li>
+                            </ul>
+                        </li>
                     </div>
                 </div>
                 <div *roles="['ROLE_SYSTEM_ADMIN']">
-                 <span *ngFor="let roles of getOnlyDomainRoles(user)">
-                                {{"ENUM.USER_ROLES." + roles.role.toUpperCase() | translate}}
+                 <span >
+                                {{"ENUM.USER_ROLES." + getOnlyDomainRoles(user)?.role | translate}}
                      </span>
                 </div>
                 <div *roles="['ROLE_DOMAIN_ADMIN']">
                     <div *ngIf="checkUserIfIsCurrentUser(user.username)">
-                     <span *ngFor="let roles of getOnlyDomainRoles(user)">
-                                {{"ENUM.USER_ROLES." + roles.role.toUpperCase() | translate}}
+                     <span>
+                                {{"ENUM.USER_ROLES." + getOnlyDomainRoles(user)?.role | translate}}
                      </span>
                     </div>
                 </div>
diff --git a/src/app/shared/users/list/userslist.component.ts b/src/app/shared/users/list/userslist.component.ts
index 9fd5b8eb286ab99b54ce02183e680204d8b9b375..fc4a74ae5bfc9d2f49b4a329d9590aeae4fdd988 100644
--- a/src/app/shared/users/list/userslist.component.ts
+++ b/src/app/shared/users/list/userslist.component.ts
@@ -117,8 +117,8 @@ export class UsersListComponent extends BaseComponent implements OnInit, OnChang
     return user.roles.filter(role => role.domainId !== this.domainService.getGlobalDomainId());
   }
 
-  public getOnlyDomainRoles(user: User): UserRole[] {
-    return user.roles.filter(role => role.domainId === this.domainId);
+  public getOnlyDomainRoles(user: User): UserRole {
+    return user.roles.find(role => role.domainId === this.domainId);
   }
 
   public getGlobalRole(user: User): string {
@@ -218,8 +218,8 @@ export class UsersListComponent extends BaseComponent implements OnInit, OnChang
           } else if (criteria.sortColumn === 'roles') {
             const ad = this.getOnlyDomainRoles(a);
             const bd = this.getOnlyDomainRoles(b);
-            const ar = ad.length > 0 ? ad[0].role.toString() : '';
-            const br = bd.length > 0 ? bd[0].role.toString() : '';
+            const ar = ad !== undefined ? ad[0].role.toString() : '';
+            const br = bd !== undefined  ? bd[0].role.toString() : '';
             p1 = ar;
             p2 = br;
           } else {
@@ -302,7 +302,7 @@ export class UsersListComponent extends BaseComponent implements OnInit, OnChang
       // roles = this.filterRoles(roles, this.domainId);
     } else if (this.domainId != null) {
       // default (domain) role set
-      roles = [Role.ROLE_GUEST, Role.ROLE_USER, Role.ROLE_DOMAIN_ADMIN];
+      roles = [Role.ROLE_USER, Role.ROLE_DOMAIN_ADMIN, Role.ROLE_GUEST];
     } else {
       // no roles
       roles = [];