From b0fe7aff26302b7d96e5cfde36c6c39f16eea6ba Mon Sep 17 00:00:00 2001 From: Harvey Kandola Date: Wed, 22 Mar 2017 19:51:51 +0000 Subject: [PATCH] only show active users for selection in space-scoped lists --- core/api/endpoint/user_endpoint.go | 2 +- core/api/request/user.go | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/core/api/endpoint/user_endpoint.go b/core/api/endpoint/user_endpoint.go index 6020c226..a870d0ae 100644 --- a/core/api/endpoint/user_endpoint.go +++ b/core/api/endpoint/user_endpoint.go @@ -279,7 +279,7 @@ func GetFolderUsers(w http.ResponseWriter, r *http.Request) { switch folder.Type { case entity.FolderTypePublic: // return all users for team - users, err = p.GetUsersForOrganization() + users, err = p.GetActiveUsersForOrganization() break case entity.FolderTypePrivate: // just me diff --git a/core/api/request/user.go b/core/api/request/user.go index 54e46280..f34f8fff 100644 --- a/core/api/request/user.go +++ b/core/api/request/user.go @@ -189,7 +189,12 @@ func (p *Persister) GetUsersForOrganization() (users []entity.User, err error) { // GetFolderUsers returns a slice containing all user records for given folder. func (p *Persister) GetFolderUsers(folderID string) (users []entity.User, err error) { err = Db.Select(&users, - "SELECT id, refid, firstname, lastname, email, initials, password, salt, reset, created, revised FROM user WHERE refid IN (SELECT userid from labelrole WHERE orgid=? AND labelid=?) ORDER BY firstname,lastname", p.Context.OrgID, folderID) + `SELECT u.id, u.refid, u.firstname, u.lastname, u.email, u.initials, u.password, u.salt, u.reset, u.created, u.revised + FROM user u, account a + WHERE u.refid IN (SELECT userid from labelrole WHERE orgid=? AND labelid=?) + AND a.orgid=? AND u.refid = a.userid AND a.active=1 + ORDER BY u.firstname, u.lastname`, + p.Context.OrgID, folderID, p.Context.OrgID) if err != nil { log.Error(fmt.Sprintf("Unable to get all users for org %s", p.Context.OrgID), err)