static PRBool UnreadThreadNavigationFunction(nsIDOMXULElement *messageElement, navigationInfoPtr info)
UnreadThreadNavigationFunction(nsIDOMNode *messageNode, navigationInfoPtr info)
static PRBool UnreadThreadNavigationFunction(nsIDOMXULElement *messageElement, navigationInfoPtr info){	nsresult rv;	nsAutoString idAttribute; idAttribute.AssignWithConversion("id");	nsAutoString idResult;	rv = messageElement->GetAttribute(idAttribute, idResult);	if(NS_FAILED(rv))		return PR_FALSE;	nsCOMPtr<nsIRDFResource> messageResource;  nsCAutoString idresultC;  idresultC.AssignWithConversion(idResult);	rv = info->rdfService->GetResource(idresultC, getter_AddRefs(messageResource));	if(NS_FAILED(rv))		return PR_FALSE;	nsCOMPtr<nsIMessage> message = do_QueryInterface(messageResource);	if(!message)		return PR_FALSE;	nsCOMPtr<nsIMsgFolder> folder;	rv = message->GetMsgFolder(getter_AddRefs(folder));	if(NS_FAILED(rv))		return PR_FALSE;	nsCOMPtr<nsIMsgThread> thread;	rv = folder->GetThreadForMessage(message, getter_AddRefs(thread));	if(NS_FAILED(rv))		return PR_FALSE;	PRUint32 numUnreadChildren;	rv = thread->GetNumUnreadChildren(&numUnreadChildren);	if(NS_FAILED(rv))		return PR_FALSE;	return(numUnreadChildren != 0);}