@@ -45,6 +45,12 @@ class BaseGitProject(GitProject):
4545 @property
4646 def full_repo_name (self ) -> str :
4747 return f"{ self .namespace } /{ self .repo } "
48+
49+ def can_close_issue (self , username : str ) -> bool :
50+ return username in self .who_can_close_issue ()
51+
52+ def can_merge_pr (self , username : str ) -> bool :
53+ return username in self .who_can_merge_pr ()
4854
4955
5056class BasePullRequest (PullRequest ):
@@ -80,7 +86,11 @@ def search(
8086 def get_statuses (self ) -> list [CommitFlag ]:
8187 commit = self .get_all_commits ()[- 1 ]
8288 return self .target_project .get_commit_statuses (commit )
83-
89+
90+ def can_close (self , username ):
91+ return self .status == "open" and username in self .who_can_close ()
92+ def can_merge (self , username ) -> bool :
93+ return self .status == "open" and username in self .who_can_merge ()
8494
8595class BaseGitUser (GitUser ):
8696 pass
@@ -97,7 +107,7 @@ def get_comments(
97107 return filter_comments (all_comments , filter_regex , reverse , author )
98108
99109 def can_close (self , username : str ) -> bool :
100- return username == self .author or username in self .project . who_can_close_issue ()
110+ return username == self .author or username in self .who_can_close ()
101111
102112
103113class BaseCommitFlag (CommitFlag ):
0 commit comments