Determine if it is a new page on page publish event
When you listen to page publish event sometimes you want to need know if it is a new page or it is a update of old page. One way to do it is listen to CreatedPage event. If one page goes through both CreatedPage and PublishedPage events it is a new page. And you can use PageEventArgs.Items as information carrier. Here is the code
In your initializer:
1: DataFactory.Instance.PublishedPage += new PageEventHandler(Instance_PublishedPage);
2: DataFactory.Instance.CreatedPage += new PageEventHandler(Instance_CreatedPage);
And in CreatedPage listener:
1: void Instance_CreatedPage(object sender, PageEventArgs e)
2: { 3: e.Items.Add("_isNew", true); 4: }
And in PublishedPage listener:
1: void Instance_PublishedPage(object sender, PageEventArgs e)
2: { 3: if (e.Items.Contains("_isNew")) 4: // new page
5: else
6: // update a existing page
7: }
09 January 2008