Help me work around "Last Modified Date" and sys_TouchParentItems?

I have searched the 7.0.3 documentation, as well as the forums, and am still struggling to understand what is happening to my content. Let me first describe my problem:

When I look at content in my system, specifically content items that are going to be published as pages (we call them Topics), Nearly ALL of them have the same last modified date. When I look at certain (simple) resources that are used by these topics, some of the resources have the same last modified date, but most have last modified dates that look correct. After reading this thread it seems that the relationships between the content may be causing this, and frankly, we have a LOT of interconnected content, which seems to make things add up. It seems that the main body of my content is now an interconnected “bramble” and the last updated date will basically reflect the last time that “something” was updated, while the “endpoints” of my content will actually show true updated dates.

This is annoying but has not been critical in the past since we didn’t used to take any action based on that date, but now we are working on a new site with new content, (which happens to link back to the original site) which allows users to receive update emails notifying them of content changes. This now becomes a problem since the date in the database is changing even when the content is not.

So that’s a long way of getting to my question: How do I show a true “last modified” date that reflects the status of the individual content piece without regard to other related content?

One idea I have right now is to just create a new “last modified” field and use pre-processing on the content type to update it on save. Any reason this wouldn’t work? What other solutions are out there?



I should add: The ability to update the “Last Modified” field as part of workflow to public would actually be much better since it would more accurately represent the date and time when the item truly went live.



I would do the separate modifiedDate field if I was experiencing the same behavior from sys_TouchParentItems.

So, the issue here might be, say someone edits the body of item A to include a snippet of another content item (Item B) in the body… would you want that user to be notified if that snippet changes (because, it would affect the body content in Item A). If you were to do another field that is updated only when you transition item A, then the user would not be notified of future changes to their content (I suppose you could create an extension that checks for this so that when Item B gets transitioned, it would notify the person who edited Item A…)…

Just to add more fuel… :wink:

So I exploited a feature of MySQL to solve this… I simply removed the modified date from the publish, and changed my schema to use a default of “CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP” which has a very nice feature: if the publish tries to update that row, but nothing actually changes, it does NOT update the timestamp, making it perfect for my application.

To jitendra: I should have been more clear: Users of the CMS don’t need to be notified of the change, users of the website do… Which is why I’m publishing this stuff to a database… The website custom renders the content based on some basic user preferences, and a cron job notifies them by email if something they are interested in changes.