James Moger
2012-10-19 6d23cab9f5387ca2b57f60b26936ff8af0acc8fa
src/com/gitblit/models/UserModel.java
@@ -217,7 +217,7 @@
      return permission;
   }
   
   private boolean canAccess(RepositoryModel repository, AccessRestrictionType ifRestriction, AccessPermission requirePermission) {
   protected boolean canAccess(RepositoryModel repository, AccessRestrictionType ifRestriction, AccessPermission requirePermission) {
      if (repository.accessRestriction.atLeast(ifRestriction)) {
         AccessPermission permission = getRepositoryPermission(repository);
         return permission.atLeast(requirePermission);
@@ -405,4 +405,37 @@
   public int compareTo(UserModel o) {
      return username.compareTo(o.username);
   }
   /**
    * Returns true if the name/email pair match this user account.
    *
    * @param name
    * @param email
    * @return true, if the name and email address match this account
    */
   public boolean is(String name, String email) {
      // at a minimum a usename or display name must be supplied
      if (StringUtils.isEmpty(name)) {
         return false;
      }
      boolean nameVerified = name.equalsIgnoreCase(username) || name.equalsIgnoreCase(getDisplayName());
      boolean emailVerified = false;
      if (StringUtils.isEmpty(emailAddress)) {
         // user account has not specified an email address
         // rely on username/displayname verification
         emailVerified = true;
      } else {
         // user account has specified an email address
         // require email address verification
         if (!StringUtils.isEmpty(email)) {
            emailVerified = email.equalsIgnoreCase(emailAddress);
         }
      }
      return nameVerified && emailVerified;
   }
   public boolean hasBranchPermission(String repositoryName, String branch) {
      // Default UserModel doesn't implement branch-level security. Other Realms (i.e. Gerrit) may override this method.
      return hasRepositoryPermission(repositoryName);
   }
}