diff --git a/src/main/scala/gitbucket/core/controller/AccountController.scala b/src/main/scala/gitbucket/core/controller/AccountController.scala index 46fa0d31d..88d2877d7 100644 --- a/src/main/scala/gitbucket/core/controller/AccountController.scala +++ b/src/main/scala/gitbucket/core/controller/AccountController.scala @@ -125,7 +125,7 @@ trait AccountControllerBase extends AccountManagementControllerBase { case "members" if(account.groupAccount) => { val members = getGroupMembers(account.userName) gitbucket.core.account.html.members(account, members.map(_.userName), - context.loginAccount.exists(x => members.exists { member => member.userName == x.userName && member.isManager })) + context.loginAccount.exists(x => members.exists { member => member.userName == x.userName && member.manager })) } // Repositories @@ -134,7 +134,7 @@ trait AccountControllerBase extends AccountManagementControllerBase { gitbucket.core.account.html.repositories(account, if(account.groupAccount) Nil else getGroupsByUserName(userName), getVisibleRepositories(context.loginAccount, Some(userName)), - context.loginAccount.exists(x => members.exists { member => member.userName == x.userName && member.isManager })) + context.loginAccount.exists(x => members.exists { member => member.userName == x.userName && member.manager })) } } } getOrElse NotFound @@ -431,7 +431,7 @@ trait AccountControllerBase extends AccountManagementControllerBase { case _: List[String] => val managerPermissions = groups.map { group => val members = getGroupMembers(group) - context.loginAccount.exists(x => members.exists { member => member.userName == x.userName && member.isManager }) + context.loginAccount.exists(x => members.exists { member => member.userName == x.userName && member.manager }) } helper.html.forkrepository( repository, diff --git a/src/main/scala/gitbucket/core/model/GroupMembers.scala b/src/main/scala/gitbucket/core/model/GroupMembers.scala index d8cdc9b31..7db611d10 100644 --- a/src/main/scala/gitbucket/core/model/GroupMembers.scala +++ b/src/main/scala/gitbucket/core/model/GroupMembers.scala @@ -8,13 +8,13 @@ trait GroupMemberComponent { self: Profile => class GroupMembers(tag: Tag) extends Table[GroupMember](tag, "GROUP_MEMBER") { val groupName = column[String]("GROUP_NAME", O PrimaryKey) val userName = column[String]("USER_NAME", O PrimaryKey) - val isManager = column[Boolean]("MANAGER") - def * = (groupName, userName, isManager) <> (GroupMember.tupled, GroupMember.unapply) + val manager = column[Boolean]("MANAGER") + def * = (groupName, userName, manager) <> (GroupMember.tupled, GroupMember.unapply) } } case class GroupMember( groupName: String, userName: String, - isManager: Boolean + manager: Boolean ) diff --git a/src/main/scala/gitbucket/core/service/AccountService.scala b/src/main/scala/gitbucket/core/service/AccountService.scala index bff7fd4de..17aa96aba 100644 --- a/src/main/scala/gitbucket/core/service/AccountService.scala +++ b/src/main/scala/gitbucket/core/service/AccountService.scala @@ -80,13 +80,23 @@ trait AccountService { } def getAccountByUserName(userName: String, includeRemoved: Boolean = false): Option[Account] = { - db.run( - if(includeRemoved) { - quote { (userName: String) => query[Account].filter { t => t.userName == userName } } - } else { - quote { (userName: String) => query[Account].filter { t => t.userName == userName && t.removed == false }} + val r = db.run( + quote { (userName: String, includeRemoved: Boolean) => + query[Account].filter { t => + if(includeRemoved){ + t.userName == userName + } else { + t.userName == userName && t.removed == false + } + } } - )(userName).headOption + )(userName, includeRemoved).headOption + + println("************") + println(r) + println("************") + + r } diff --git a/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala b/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala index 165910bb7..b568abf41 100644 --- a/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala +++ b/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala @@ -76,7 +76,7 @@ object ProtectedBranchService { includeAdministrators: Boolean) extends AccountService with CommitStatusService { def isAdministrator(pusher: String)(implicit session: Session): Boolean = - pusher == owner || getGroupMembers(owner).filter(gm => gm.userName == pusher && gm.isManager).nonEmpty + pusher == owner || getGroupMembers(owner).filter(gm => gm.userName == pusher && gm.manager).nonEmpty /** * Can't be force pushed diff --git a/src/main/scala/gitbucket/core/service/RepositoryService.scala b/src/main/scala/gitbucket/core/service/RepositoryService.scala index d15f9ffbd..d1b226156 100644 --- a/src/main/scala/gitbucket/core/service/RepositoryService.scala +++ b/src/main/scala/gitbucket/core/service/RepositoryService.scala @@ -298,7 +298,7 @@ trait RepositoryService { self: AccountService => private def getRepositoryManagers(userName: String)(implicit s: Session): Seq[String] = if(getAccountByUserName(userName).exists(_.groupAccount)){ - getGroupMembers(userName).collect { case x if(x.isManager) => x.userName } + getGroupMembers(userName).collect { case x if(x.manager) => x.userName } } else { Seq(userName) } diff --git a/src/main/scala/gitbucket/core/util/Authenticator.scala b/src/main/scala/gitbucket/core/util/Authenticator.scala index ae66c365b..d79dc226a 100644 --- a/src/main/scala/gitbucket/core/util/Authenticator.scala +++ b/src/main/scala/gitbucket/core/util/Authenticator.scala @@ -41,7 +41,7 @@ trait OwnerAuthenticator { self: ControllerBase with RepositoryService with Acco case Some(x) if(x.administrator) => action(repository) case Some(x) if(repository.owner == x.userName) => action(repository) case Some(x) if(getGroupMembers(repository.owner).exists { member => - member.userName == x.userName && member.isManager == true + member.userName == x.userName && member.manager == true }) => action(repository) case _ => Unauthorized() } @@ -171,7 +171,7 @@ trait GroupManagerAuthenticator { self: ControllerBase with AccountService => defining(request.paths){ paths => context.loginAccount match { case Some(x) if(getGroupMembers(paths(0)).exists { member => - member.userName == x.userName && member.isManager + member.userName == x.userName && member.manager }) => action case _ => Unauthorized() } diff --git a/src/main/twirl/gitbucket/core/account/group.scala.html b/src/main/twirl/gitbucket/core/account/group.scala.html index 60b3d724f..5e6d594d1 100644 --- a/src/main/twirl/gitbucket/core/account/group.scala.html +++ b/src/main/twirl/gitbucket/core/account/group.scala.html @@ -32,7 +32,7 @@ @helper.html.account("memberName", 200) - +
@@ -103,7 +103,7 @@ $(function(){ }); @members.map { member => - addMemberHTML('@member.userName', @member.isManager); + addMemberHTML('@member.userName', @member.manager); } function addMemberHTML(userName, isManager){ diff --git a/src/main/twirl/gitbucket/core/admin/users/group.scala.html b/src/main/twirl/gitbucket/core/admin/users/group.scala.html index 7e282c1b3..0ef00046f 100644 --- a/src/main/twirl/gitbucket/core/admin/users/group.scala.html +++ b/src/main/twirl/gitbucket/core/admin/users/group.scala.html @@ -38,7 +38,7 @@ @helper.html.account("memberName", 200) - +
@@ -98,7 +98,7 @@ $(function(){ }); @members.map { member => - addMemberHTML('@member.userName', @member.isManager); + addMemberHTML('@member.userName', @member.manager); } function addMemberHTML(userName, isManager){