Started integrating authorization services.
This commit is contained in:
@@ -5,5 +5,7 @@ namespace Umbraco.Core.Persistence.Repositories
|
||||
internal interface IUserRepository : IRepositoryQueryable<int, IUser>
|
||||
{
|
||||
IProfile GetProfileById(int id);
|
||||
IProfile GetProfileByUserName(string username);
|
||||
IUser GetUserByUserName(string username);
|
||||
}
|
||||
}
|
||||
@@ -147,6 +147,39 @@ namespace Umbraco.Core.Persistence.Repositories
|
||||
return new Profile(dto.Id, dto.UserName);
|
||||
}
|
||||
|
||||
public IProfile GetProfileByUserName(string username)
|
||||
{
|
||||
var sql = GetBaseQuery(false);
|
||||
sql.Where(GetBaseWhereClause(), new { Username = username });
|
||||
|
||||
var dto = Database.FirstOrDefault<UserDto>(sql);
|
||||
|
||||
if (dto == null)
|
||||
return null;
|
||||
|
||||
return new Profile(dto.Id, dto.UserName);
|
||||
}
|
||||
|
||||
public IUser GetUserByUserName(string username)
|
||||
{
|
||||
var sql = GetBaseQuery(false);
|
||||
sql.Where(GetBaseWhereClause(), new { Username = username });
|
||||
|
||||
var dto = Database.FirstOrDefault<UserDto>(sql);
|
||||
|
||||
if (dto == null)
|
||||
return null;
|
||||
|
||||
return new User(_userTypeRepository.Get(dto.Type))
|
||||
{
|
||||
Id = dto.Id,
|
||||
Email = dto.Email,
|
||||
Language = dto.UserLanguage,
|
||||
Name = dto.UserName
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user