Moving events out of the repository scope.
Adding Get Language by Iso Code method
This commit is contained in:
@@ -81,9 +81,16 @@ namespace Umbraco.Core.Services
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets a <see cref="ILanguage"/> by its culture code
|
/// Gets a <see cref="ILanguage"/> by its culture code
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="culture">Culture Code</param>
|
/// <param name="cultureName">Culture Code - also refered to as the Friendly name</param>
|
||||||
/// <returns><see cref="ILanguage"/></returns>
|
/// <returns><see cref="ILanguage"/></returns>
|
||||||
ILanguage GetLanguageByCultureCode(string culture);
|
ILanguage GetLanguageByCultureCode(string cultureName);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets a <see cref="Language"/> by its iso code
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="isoCode">Iso Code of the language (ie. en-US)</param>
|
||||||
|
/// <returns><see cref="Language"/></returns>
|
||||||
|
ILanguage GetLanguageByIsoCode(string isoCode);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets all available languages
|
/// Gets all available languages
|
||||||
|
|||||||
@@ -146,10 +146,10 @@ namespace Umbraco.Core.Services
|
|||||||
{
|
{
|
||||||
repository.AddOrUpdate(dictionaryItem);
|
repository.AddOrUpdate(dictionaryItem);
|
||||||
uow.Commit();
|
uow.Commit();
|
||||||
|
|
||||||
SavedDictionaryItem.RaiseEvent(new SaveEventArgs<IDictionaryItem>(dictionaryItem, false), this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SavedDictionaryItem.RaiseEvent(new SaveEventArgs<IDictionaryItem>(dictionaryItem, false), this);
|
||||||
|
|
||||||
Audit.Add(AuditTypes.Save, "Save DictionaryItem performed by user", userId, dictionaryItem.Id);
|
Audit.Add(AuditTypes.Save, "Save DictionaryItem performed by user", userId, dictionaryItem.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,10 +170,10 @@ namespace Umbraco.Core.Services
|
|||||||
//NOTE: The recursive delete is done in the repository
|
//NOTE: The recursive delete is done in the repository
|
||||||
repository.Delete(dictionaryItem);
|
repository.Delete(dictionaryItem);
|
||||||
uow.Commit();
|
uow.Commit();
|
||||||
|
|
||||||
DeletedDictionaryItem.RaiseEvent(new DeleteEventArgs<IDictionaryItem>(dictionaryItem, false), this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DeletedDictionaryItem.RaiseEvent(new DeleteEventArgs<IDictionaryItem>(dictionaryItem, false), this);
|
||||||
|
|
||||||
Audit.Add(AuditTypes.Delete, "Delete DictionaryItem performed by user", userId, dictionaryItem.Id);
|
Audit.Add(AuditTypes.Delete, "Delete DictionaryItem performed by user", userId, dictionaryItem.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -193,13 +193,29 @@ namespace Umbraco.Core.Services
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets a <see cref="Language"/> by its culture code
|
/// Gets a <see cref="Language"/> by its culture code
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="culture">Culture Code</param>
|
/// <param name="cultureName">Culture Name - also refered to as the Friendly name</param>
|
||||||
/// <returns><see cref="Language"/></returns>
|
/// <returns><see cref="Language"/></returns>
|
||||||
public ILanguage GetLanguageByCultureCode(string culture)
|
public ILanguage GetLanguageByCultureCode(string cultureName)
|
||||||
{
|
{
|
||||||
using (var repository = _repositoryFactory.CreateLanguageRepository(_uowProvider.GetUnitOfWork()))
|
using (var repository = _repositoryFactory.CreateLanguageRepository(_uowProvider.GetUnitOfWork()))
|
||||||
{
|
{
|
||||||
var query = Query<ILanguage>.Builder.Where(x => x.CultureName == culture);
|
var query = Query<ILanguage>.Builder.Where(x => x.CultureName == cultureName);
|
||||||
|
var items = repository.GetByQuery(query);
|
||||||
|
|
||||||
|
return items.FirstOrDefault();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets a <see cref="Language"/> by its iso code
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="isoCode">Iso Code of the language (ie. en-US)</param>
|
||||||
|
/// <returns><see cref="Language"/></returns>
|
||||||
|
public ILanguage GetLanguageByIsoCode(string isoCode)
|
||||||
|
{
|
||||||
|
using (var repository = _repositoryFactory.CreateLanguageRepository(_uowProvider.GetUnitOfWork()))
|
||||||
|
{
|
||||||
|
var query = Query<ILanguage>.Builder.Where(x => x.IsoCode == isoCode);
|
||||||
var items = repository.GetByQuery(query);
|
var items = repository.GetByQuery(query);
|
||||||
|
|
||||||
return items.FirstOrDefault();
|
return items.FirstOrDefault();
|
||||||
@@ -234,10 +250,10 @@ namespace Umbraco.Core.Services
|
|||||||
{
|
{
|
||||||
repository.AddOrUpdate(language);
|
repository.AddOrUpdate(language);
|
||||||
uow.Commit();
|
uow.Commit();
|
||||||
|
|
||||||
SavedLanguage.RaiseEvent(new SaveEventArgs<ILanguage>(language, false), this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SavedLanguage.RaiseEvent(new SaveEventArgs<ILanguage>(language, false), this);
|
||||||
|
|
||||||
Audit.Add(AuditTypes.Save, "Save Language performed by user", userId, language.Id);
|
Audit.Add(AuditTypes.Save, "Save Language performed by user", userId, language.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -257,10 +273,10 @@ namespace Umbraco.Core.Services
|
|||||||
//NOTE: There isn't any constraints in the db, so possible references aren't deleted
|
//NOTE: There isn't any constraints in the db, so possible references aren't deleted
|
||||||
repository.Delete(language);
|
repository.Delete(language);
|
||||||
uow.Commit();
|
uow.Commit();
|
||||||
|
|
||||||
DeletedLanguage.RaiseEvent(new DeleteEventArgs<ILanguage>(language, false), this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DeletedLanguage.RaiseEvent(new DeleteEventArgs<ILanguage>(language, false), this);
|
||||||
|
|
||||||
Audit.Add(AuditTypes.Delete, "Delete Language performed by user", userId, language.Id);
|
Audit.Add(AuditTypes.Delete, "Delete Language performed by user", userId, language.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user