We have moved to GitHub Issues
You are viewing the read-only archive of Umbraco's issue tracker. To create new issues, please head over to GitHub Issues.
Make sure to read the blog posts announcing the move for more information.
Created by Joao Pinto 22 Feb 2013, 09:02:58 Updated by Morten Christensen 25 Feb 2013, 15:36:32
Relates to: U4-1714
using System.Web; using umbraco.interfaces; using Umbraco.Core.Models; using Umbraco.Core.Services;
public class MultiLanguageModule : IApplicationStartupHandler{ public MultiLanguageModule() { ContentTypeService.SavedContentType += Test; }
private void Test(IContentTypeService sender, Umbraco.Core.Events.SaveEventArgs e)
{
HttpContext.Current.Response.Write("TEST"); //will print TESTTESTTEST, while it should be printed only once.
}
}
I was having a look at this previously and can detail why it's happening - there are 3 calls to the content type save event.
All 3 call the depreciated DocumentType.Save() which then calls the new API which files the events.
It looks to me that currently due to the way the UI for editing document types is constructed across two user controls (with part shared between the media type and content type - ContentTypeControlNew.ascx - and part for the content type only fields - EditNodeTypeNew.ascx) there does currently need to be 2 calls to the save event to make sure both sets of properties are saved. However I think the first call in EditNodeTypeNew.ascx.cs is unnecessary and could be removed.
Thanks for the heads up Andy! I'm currently working on ContentTypeControlNew.ascx.cs and give it a good cleanup, so it better utilize the new API and not so much legacy. Its needed for a few tasks I'm working on, but not sure how much we can do about the save events, as it'll be a breaking change if we just remove them. But will give some thought as to how we can improve this.
No problem. Just to clarify though I think the events are fine - they fire where they should on save. Issue though is save is called 3 times so they fire 3 times. If you can reduce that to once then the issue would be solved. Maybe combining into a single user control would allow that, though at the expense of not reusing the control for editing media types.
I have now reduced the number of times a DocumentType is saved from 3 to 1 by cleaning up the code and adding a callback to the ContentTypeControlNew control, so the allowed templates are saved as part of the "normal" DocumentType save (click) event.
Priority: Normal
Type: Bug
State: Fixed
Assignee: Morten Christensen
Difficulty: Normal
Category: Extensibility
Backwards Compatible: True
Fix Submitted:
Affected versions: 6.0.0
Due in version: 6.0.1
Sprint:
Story Points:
Cycle: