public void UpdateAllReleaseEventNames(string old, string newName) { ParamIs.NotNullOrWhiteSpace(() => old); ParamIs.NotNullOrWhiteSpace(() => newName); old = old.Trim(); newName = newName.Trim(); if (old.Equals(newName)) { return; } VerifyManageDatabase(); HandleTransaction(session => { AuditLog("replacing release event name '" + old + "' with '" + newName + "'", session); var albums = session.Query <Album>().Where(a => a.OriginalRelease.EventName == old).ToArray(); foreach (var a in albums) { a.OriginalRelease.EventName = newName; session.Update(a); } }); }
private void UpdateAllReleaseEventNames(IRepositoryContext <ReleaseEvent> ctx, string old, string newName) { ParamIs.NotNullOrWhiteSpace(() => old); ParamIs.NotNullOrWhiteSpace(() => newName); old = old.Trim(); newName = newName.Trim(); if (old.Equals(newName)) { return; } ctx.AuditLogger.AuditLog(string.Format("replacing release event name '{0}' with '{1}'", old, newName)); var albums = ctx.OfType <Album>() .Query() .Where(a => a.OriginalRelease.EventName == old) .ToArray(); foreach (var a in albums) { NHibernateUtil.Initialize(a.CoverPictureData); a.OriginalRelease.EventName = newName; ctx.Update(a); } }
public async Task <TagBaseContract> Create(string name) { ParamIs.NotNullOrWhiteSpace(() => name); PermissionContext.VerifyManageDatabase(); return(await _repository.HandleTransactionAsync(async ctx => { var duplicateName = await ctx.Query <TagName>() .Select(t => t.Value) .Where(t => t == name) .VdbFirstOrDefaultAsync(); if (duplicateName != null) { throw new DuplicateTagNameException(duplicateName); } var factory = new TagFactoryRepository(ctx, ctx.CreateAgentLoginData(PermissionContext)); var tag = await factory.CreateTagAsync(name); await ctx.AuditLogger.AuditLogAsync($"created tag {_entryLinkFactory.CreateEntryLink(tag)}"); return new TagBaseContract(tag, PermissionContext.LanguagePreference); })); }
public PartialViewResult AddNewAlbum(int artistId, string newAlbumName) { ParamIs.NotNullOrWhiteSpace(() => newAlbumName); var link = new AlbumForArtistEditContract(newAlbumName); return(PartialView("ArtistForAlbumRow", link)); }
public WebLink(string description, string url, WebLinkCategory category) { ParamIs.NotNull(() => description); ParamIs.NotNullOrWhiteSpace(() => url); Description = description; Url = url; Category = category; }
public PartialViewResult AddNewAlbum(int artistId, string newAlbumName) { ParamIs.NotNullOrWhiteSpace(() => newAlbumName); var link = new AlbumForArtistEditContract(newAlbumName); //var link = MvcApplication.Services.Albums.CreateForArtist(artistId, newAlbumName); return(PartialView("ArtistForAlbumRow", link)); }
public virtual ArtistWebLink CreateWebLink(string description, string url, WebLinkCategory category) { ParamIs.NotNull(() => description); ParamIs.NotNullOrWhiteSpace(() => url); var link = new ArtistWebLink(this, description, url, category); WebLinks.Add(link); return(link); }
/// <summary> /// Creates a new tag. /// </summary> /// <param name="name">Tag English name. Cannot be null or empty. Must be unique.</param> /// <returns>The created tag. Cannot be null.</returns> /// <exception cref="DuplicateTagNameException">If a tag with the specified name already exists.</exception> public TagBaseContract Create(string name) { ParamIs.NotNullOrWhiteSpace(() => name); PermissionContext.VerifyManageDatabase(); return(repository.HandleTransaction(ctx => { var duplicateName = ctx.Query <TagName>() .Select(t => t.Value) .FirstOrDefault(t => t == name); if (duplicateName != null) { throw new DuplicateTagNameException(duplicateName); } var factory = new TagFactoryRepository(ctx, ctx.CreateAgentLoginData(PermissionContext)); var tag = factory.CreateTag(name); ctx.AuditLogger.AuditLog(string.Format("created tag {0}", entryLinkFactory.CreateEntryLink(tag))); return new TagBaseContract(tag, PermissionContext.LanguagePreference); })); }
public SongInAlbumEditContract(string songName) { ParamIs.NotNullOrWhiteSpace(() => songName); SongName = songName; }