I am trying to do some validation on saving a page. Part of this involves checking the page template. When I try to read it, however, I get the default value for the page template. This is even after changing it.
In this example item.PageTemplate.Title shows "Default Page Template" even though I have selected "Specific Page Template".
namespace Tridion.EventSystem.Extensions.OnSaveValidation
{
[TcmExtension("Check Items On Save")]
public class CheckItemsOnSave : TcmExtension
{
public CheckItemsOnSave()
{
EventSystem.Subscribe<Page, SaveEventArgs>(HandlerForSavePage, EventPhases.Initiated);
}
public void HandlerForSavePage(Page item, SaveEventArgs args, EventPhases phase)
{
if (item.PageTemplate.Title != "Specific Page Template")
{
throw new Exception("Incorrect Page Template: " + item.PageTemplate.Title);
}
}
}
}