Manually fixed merge with MediaService.
This commit is contained in:
@@ -813,7 +813,7 @@ namespace Umbraco.Core.Services
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
DeletedRevisions.RaiseEvent(new DeleteRevisionsEventArgs(id, false, dateToRetain: versionDate), this);
|
||||
DeletedVersions.RaiseEvent(new DeleteRevisionsEventArgs(id, false, dateToRetain: versionDate), this);
|
||||
|
||||
Audit.Add(AuditTypes.Delete, "Delete Content by version date performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
@@ -843,7 +843,7 @@ namespace Umbraco.Core.Services
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
DeletedRevisions.RaiseEvent(new DeleteRevisionsEventArgs(id, false, specificVersion:versionId), this);
|
||||
DeletedVersions.RaiseEvent(new DeleteRevisionsEventArgs(id, false, specificVersion:versionId), this);
|
||||
|
||||
Audit.Add(AuditTypes.Delete, "Delete Content by version performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
@@ -1234,7 +1234,7 @@ namespace Umbraco.Core.Services
|
||||
/// <summary>
|
||||
/// Occurs after Delete
|
||||
/// </summary>
|
||||
public static event TypedEventHandler<IContentService, DeleteRevisionsEventArgs> DeletedRevisions;
|
||||
public static event TypedEventHandler<IContentService, DeleteRevisionsEventArgs> DeletedVersions;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs before Save
|
||||
|
||||
@@ -94,11 +94,7 @@ namespace Umbraco.Core.Services
|
||||
|
||||
/// <summary>
|
||||
/// Saves a collection of <see cref="IContent"/> objects.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// If the collection of content contains new objects that references eachother by Id or ParentId,
|
||||
/// then use the overload Save method with a collection of Lazy <see cref="IContent"/>.
|
||||
/// </remarks>
|
||||
/// </summary>
|
||||
/// <param name="contents">Collection of <see cref="IContent"/> to save</param>
|
||||
/// <param name="userId">Optional Id of the User saving the Content</param>
|
||||
void Save(IEnumerable<IContent> contents, int userId = -1);
|
||||
|
||||
@@ -69,19 +69,15 @@ namespace Umbraco.Core.Services
|
||||
}
|
||||
|
||||
var media = new Models.Media(parentId, mediaType);
|
||||
var e = new NewEventArgs {Alias = mediaTypeAlias, ParentId = parentId};
|
||||
|
||||
if (Creating != null)
|
||||
Creating(media, e);
|
||||
if (!e.Cancel)
|
||||
{
|
||||
SetUser(media, userId);
|
||||
if (Creating.IsRaisedEventCancelled(new NewEventArgs<IMedia>(media, mediaTypeAlias, parentId), this))
|
||||
return media;
|
||||
|
||||
if (Created != null)
|
||||
Created(media, e);
|
||||
SetUser(media, userId);
|
||||
|
||||
Audit.Add(AuditTypes.New, "", media.CreatorId, media.Id);
|
||||
}
|
||||
Created.RaiseEvent(new NewEventArgs<IMedia>(media, false, mediaTypeAlias, parentId), this);
|
||||
|
||||
Audit.Add(AuditTypes.New, "", media.CreatorId, media.Id);
|
||||
|
||||
return media;
|
||||
}
|
||||
@@ -288,25 +284,18 @@ namespace Umbraco.Core.Services
|
||||
if (Trashing.IsRaisedEventCancelled(new MoveEventArgs<IMedia>(media, -21), this))
|
||||
return;
|
||||
|
||||
var e = new MoveEventArgs {ParentId = -20};
|
||||
if (Trashing != null)
|
||||
Trashing(media, e);
|
||||
if (!e.Cancel)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
((Core.Models.Media) media).ChangeTrashedState(true);
|
||||
repository.AddOrUpdate(media);
|
||||
uow.Commit();
|
||||
}
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
((Core.Models.Media)media).ChangeTrashedState(true);
|
||||
repository.AddOrUpdate(media);
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
if (Trashed != null)
|
||||
Trashed(media, e);
|
||||
Trashed.RaiseEvent(new MoveEventArgs<IMedia>(media, false, -21), this);
|
||||
|
||||
Audit.Add(AuditTypes.Move, "Move Media to Recycle Bin performed by user", userId == -1 ? 0 : userId,
|
||||
media.Id);
|
||||
}
|
||||
Audit.Add(AuditTypes.Move, "Move Media to Recycle Bin performed by user", userId == -1 ? 0 : userId,
|
||||
media.Id);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -314,6 +303,9 @@ namespace Umbraco.Core.Services
|
||||
/// </summary>
|
||||
public void EmptyRecycleBin()
|
||||
{
|
||||
//TODO: Should have an event for this.
|
||||
//TODO: Why don't we have a base class to share between MediaService/ContentService as some of this is exacty the same?
|
||||
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
@@ -338,7 +330,7 @@ namespace Umbraco.Core.Services
|
||||
/// <param name="userId">Optional id of the user deleting the media</param>
|
||||
public void DeleteMediaOfType(int mediaTypeId, int userId = -1)
|
||||
{
|
||||
//TODO: Do we need another event DeletingMediaOfType ?
|
||||
//TODO: Do we need another event DeletingMediaOfType, If we just change delete args to be ienumerable this would fix this ?
|
||||
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
var repository = _repositoryFactory.CreateMediaRepository(uow);
|
||||
@@ -348,28 +340,26 @@ namespace Umbraco.Core.Services
|
||||
var query = Query<IMedia>.Builder.Where(x => x.ContentTypeId == mediaTypeId);
|
||||
var contents = repository.GetByQuery(query);
|
||||
|
||||
var e = new DeleteEventArgs {Id = mediaTypeId};
|
||||
if (Deleting != null)
|
||||
Deleting(contents, e);
|
||||
//var e = new DeleteEventArgs { Id = mediaTypeId };
|
||||
//if (Deleting != null)
|
||||
// Deleting(contents, e);
|
||||
//var e = new DeleteEventArgs {Id = mediaTypeId};
|
||||
//if (Deleting != null)
|
||||
// Deleting(contents, e);
|
||||
// //var e = new DeleteEventArgs { Id = mediaTypeId };
|
||||
// //if (Deleting != null)
|
||||
// // Deleting(contents, e);
|
||||
|
||||
if (!e.Cancel)
|
||||
{
|
||||
foreach (var content in contents)
|
||||
{
|
||||
((Core.Models.Media) content).ChangeTrashedState(true);
|
||||
repository.AddOrUpdate(content);
|
||||
}
|
||||
foreach (var content in contents)
|
||||
{
|
||||
((Core.Models.Media)content).ChangeTrashedState(true);
|
||||
repository.AddOrUpdate(content);
|
||||
}
|
||||
|
||||
uow.Commit();
|
||||
uow.Dispose();
|
||||
uow.Commit();
|
||||
uow.Dispose();
|
||||
|
||||
if (Deleted != null)
|
||||
Deleted(contents, e);
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media items by Type performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
//if (Deleted != null)
|
||||
// Deleted(contents, e);
|
||||
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media items by Type performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -386,23 +376,16 @@ namespace Umbraco.Core.Services
|
||||
if (Deleting.IsRaisedEventCancelled(new DeleteEventArgs<IMedia>(media), this))
|
||||
return;
|
||||
|
||||
var e = new DeleteEventArgs {Id = media.Id};
|
||||
if (Deleting != null)
|
||||
Deleting(media, e);
|
||||
if (!e.Cancel)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
repository.Delete(media);
|
||||
uow.Commit();
|
||||
}
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
repository.Delete(media);
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
if (Deleted != null)
|
||||
Deleted(media, e);
|
||||
Deleted.RaiseEvent(new DeleteEventArgs<IMedia>(media, false), this);
|
||||
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media performed by user", userId == -1 ? 0 : userId, media.Id);
|
||||
}
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media performed by user", userId == -1 ? 0 : userId, media.Id);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -413,24 +396,19 @@ namespace Umbraco.Core.Services
|
||||
/// <param name="userId">Optional Id of the User deleting versions of a Content object</param>
|
||||
public void DeleteVersions(int id, DateTime versionDate, int userId = -1)
|
||||
{
|
||||
var e = new DeleteEventArgs { Id = id };
|
||||
if (Deleting != null)
|
||||
Deleting(versionDate, e);
|
||||
if (DeletingVersions.IsRaisedEventCancelled(new DeleteRevisionsEventArgs(id, dateToRetain: versionDate), this))
|
||||
return;
|
||||
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
repository.DeleteVersions(id, versionDate);
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
if (!e.Cancel)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
repository.DeleteVersions(id, versionDate);
|
||||
uow.Commit();
|
||||
}
|
||||
DeletedVersions.RaiseEvent(new DeleteRevisionsEventArgs(id, false, dateToRetain: versionDate), this);
|
||||
|
||||
if (Deleted != null)
|
||||
Deleted(versionDate, e);
|
||||
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media by version date performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media by version date performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -448,24 +426,19 @@ namespace Umbraco.Core.Services
|
||||
DeleteVersions(id, content.UpdateDate, userId);
|
||||
}
|
||||
|
||||
var e = new DeleteEventArgs { Id = id };
|
||||
if (Deleting != null)
|
||||
Deleting(versionId, e);
|
||||
if (DeletingVersions.IsRaisedEventCancelled(new DeleteRevisionsEventArgs(id, specificVersion:versionId), this))
|
||||
return;
|
||||
|
||||
if (!e.Cancel)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
repository.DeleteVersion(versionId);
|
||||
uow.Commit();
|
||||
}
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
repository.DeleteVersion(versionId);
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
if (Deleted != null)
|
||||
Deleted(versionId, e);
|
||||
DeletedVersions.RaiseEvent(new DeleteRevisionsEventArgs(id, false, specificVersion: versionId), this);
|
||||
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media by version performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
Audit.Add(AuditTypes.Delete, "Delete Media by version performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -475,23 +448,20 @@ namespace Umbraco.Core.Services
|
||||
/// <param name="userId">Id of the User saving the Content</param>
|
||||
public void Save(IMedia media, int userId = -1)
|
||||
{
|
||||
var e = new SaveEventArgs();
|
||||
if (Saving != null)
|
||||
Saving(media, e);
|
||||
|
||||
if (!e.Cancel)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
SetUser(media, userId);
|
||||
repository.AddOrUpdate(media);
|
||||
uow.Commit();
|
||||
}
|
||||
if (Saving.IsRaisedEventCancelled(new SaveEventArgs<IMedia>(media), this))
|
||||
return;
|
||||
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
SetUser(media, userId);
|
||||
repository.AddOrUpdate(media);
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
Saved.RaiseEvent(new SaveEventArgs<IMedia>(media, false), this);
|
||||
|
||||
if (Saved != null)
|
||||
Saved(media, e);
|
||||
}
|
||||
Audit.Add(AuditTypes.Save, "Save Media performed by user", media.CreatorId, media.Id);
|
||||
}
|
||||
|
||||
@@ -502,30 +472,25 @@ namespace Umbraco.Core.Services
|
||||
/// <param name="userId">Id of the User saving the Content</param>
|
||||
public void Save(IEnumerable<IMedia> medias, int userId = -1)
|
||||
{
|
||||
var e = new SaveEventArgs();
|
||||
if (Saving != null)
|
||||
Saving(medias, e);
|
||||
if (SavingCollection.IsRaisedEventCancelled(new SaveEventArgs<IEnumerable<IMedia>>(medias), this))
|
||||
return;
|
||||
|
||||
if (!e.Cancel)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
foreach (var media in medias)
|
||||
{
|
||||
SetUser(media, userId);
|
||||
repository.AddOrUpdate(media);
|
||||
}
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
using (var repository = _repositoryFactory.CreateMediaRepository(uow))
|
||||
{
|
||||
foreach (var media in medias)
|
||||
{
|
||||
SetUser(media, userId);
|
||||
repository.AddOrUpdate(media);
|
||||
}
|
||||
|
||||
//commit the whole lot in one go
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
if (Saved != null)
|
||||
Saved(medias, e);
|
||||
uow.Commit();
|
||||
}
|
||||
|
||||
Audit.Add(AuditTypes.Save, "Save Media items performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
SavedCollection.RaiseEvent(new SaveEventArgs<IEnumerable<IMedia>>(medias, false), this);
|
||||
|
||||
Audit.Add(AuditTypes.Save, "Save Media items performed by user", userId == -1 ? 0 : userId, -1);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -569,6 +534,17 @@ namespace Umbraco.Core.Services
|
||||
}
|
||||
|
||||
#region Event Handlers
|
||||
|
||||
/// <summary>
|
||||
/// Occurs before Delete
|
||||
/// </summary>
|
||||
public static event TypedEventHandler<IMediaService, DeleteRevisionsEventArgs> DeletingVersions;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs after Delete
|
||||
/// </summary>
|
||||
public static event TypedEventHandler<IMediaService, DeleteRevisionsEventArgs> DeletedVersions;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs before Delete
|
||||
/// </summary>
|
||||
@@ -611,6 +587,7 @@ namespace Umbraco.Core.Services
|
||||
/// Please note that the Media object has been created, but not saved
|
||||
/// so it does not have an identity yet (meaning no Id has been set).
|
||||
/// </remarks>
|
||||
public static event TypedEventHandler<IMediaService, NewEventArgs<IMedia>> Created;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs before Content is moved to Recycle Bin
|
||||
|
||||
Reference in New Issue
Block a user