Legend: I'm working on a Sitecore project where we have a multi-language site with a single content tree where most items have versions in each supported language. I want to develop a clean way of querying items which will exclude items that don't have a version in the current context language.
Ideas: I was thinking of making all templates inherit from a template with a shared checkbox list field to represent the languages supported for a given page.
Note: Just to be clear, this is different from language fallback. We want to hide items which have not been translated into the context language.
Question: Is there a clean way to do this using Sitecore pipelines which would mean XSLTs and any API code which queries the content tree doesn't have to reference this shared template field every time?