Fixes: U4-3123 Umbraco 7 - unable to use email address as user name

This commit is contained in:
Shannon
2013-10-23 09:20:15 +11:00
parent 36a472b79a
commit dc3c517697
2 changed files with 12 additions and 6 deletions

View File

@@ -287,9 +287,11 @@ namespace Umbraco.Core.Services
/// <returns></returns>
public IMember GetByEmail(string email)
{
using (var repository = _repositoryFactory.CreateMemberRepository(_uowProvider.GetUnitOfWork()))
var uow = _uowProvider.GetUnitOfWork();
using (var repository = _repositoryFactory.CreateMemberRepository(uow))
{
var query = Query<IMember>.Builder.Where(x => x.Email == email);
var escapedEmail = uow.Database.EscapeAtSymbols(email);
var query = Query<IMember>.Builder.Where(x => x.Email == escapedEmail);
var member = repository.GetByQuery(query).FirstOrDefault();
return member;
@@ -303,9 +305,11 @@ namespace Umbraco.Core.Services
/// <returns></returns>
public IMember GetByUsername(string userName)
{
using (var repository = _repositoryFactory.CreateMemberRepository(_uowProvider.GetUnitOfWork()))
var uow = _uowProvider.GetUnitOfWork();
using (var repository = _repositoryFactory.CreateMemberRepository(uow))
{
var query = Query<IMember>.Builder.Where(x => x.Username == userName);
var escapedUser = uow.Database.EscapeAtSymbols(userName);
var query = Query<IMember>.Builder.Where(x => x.Username == escapedUser);
var member = repository.GetByQuery(query).FirstOrDefault();
return member;

View File

@@ -57,9 +57,11 @@ namespace Umbraco.Core.Services
public IUser GetUserByUserName(string username)
{
using (var repository = _repositoryFactory.CreateUserRepository(_uowProvider.GetUnitOfWork()))
var uow = _uowProvider.GetUnitOfWork();
using (var repository = _repositoryFactory.CreateUserRepository(uow))
{
var query = Query<IUser>.Builder.Where(x => x.Username == username);
var escapedUser = uow.Database.EscapeAtSymbols(username);
var query = Query<IUser>.Builder.Where(x => x.Username == escapedUser);
return repository.GetByQuery(query).FirstOrDefault();
}
}