I needed to support the customer in a way that he finds untranslated content. So i have asked if it's possible in this thread.
There is no way to list it without using code or the database. So in this case i needed this query to determine all content-ID's which i can use for a link to the CMS.
select c.pkID from tblContentType ct
inner join tblContent c ON c.fkContentTypeID = ct.pkID
where ct.Name = 'LinkBlock'
order by c.pkID
You can append it to the URL to get a link to the CMS content, for example(649 is the pkID)
But it would be a great help for the customer if he could get a list of all pages/content of a specific block on himself. A good place would be: Admin/Content-Types/Blockname
You could provide a button "Show content that use the block", if you click it it opens a popup which lists all content as hyperlink.Even better would be to be able to filter for translated/untranslated content of this block.
Maybe this could this be of help? CMS Audit
I think I think IContentRepository.GetReferencesToContent can help (not sure about block, though, but it should)
I have used this sql query now to get the required informations, missing untranslated content and their language:
DECLARE @nameOfBlock VARCHAR(MAX) = 'LinkBlock'
DECLARE @nameOfBlockProperty VARCHAR(MAX) = 'Reference'
SELECT LanguageID, c.pkID
FROM tblLanguageBranch lb
INNER JOIN tblContentLanguage cl ON lb.pkID = cl.fkLanguageBranchID
INNER JOIN tblContent c ON cl.fkContentID = c.pkID
INNER JOIN tblContentType ct ON c.fkContentTypeID = ct.pkID
WHERE ct.Name = @nameOfBlock
AND NOT EXISTS(
FROM tblContentProperty cp
INNER JOIN tblPropertyDefinition pd ON cp.fkPropertyDefinitionID = pd.pkID
WHERE pd.Name = @nameOfBlockProperty
AND pd.fkContentTypeID = ct.pkID
AND cp.fkLanguageBranchID = lb.pkID
AND cp.fkContentID = c.pkID
ORDER BY pkID, LanguageID
Would be great if the CMS would support it anyway, so that the customer, who is responsible for the content, can do it himself.
So, you would want editors to be able to select:
And then list all instances of the content type where the property is null or empty.
You could easily create an admin tool for that. However, I have also been in need of the same thing, and have created a tool that (among other things) does this.