Exemplo n.º 1
0
IndexGroupMailingLists::IndexGroupMailingLists(index_gid_t index_id)
	: UnionIndexGroup(index_id)
{
	// Check all indexes that might be mailing lists
	INT32 it = -1;
	Index* index = m_indexer->GetRange(IndexTypes::FIRST_CONTACT, IndexTypes::LAST_CONTACT, it);

	while (index)
	{
		IndexSearch *search = index->GetSearch();
		if (search && search->GetSearchText().FindFirstOf('@') == KNotFound &&
			search->GetSearchText().FindFirstOf('.') != KNotFound)
		{
			AddIndex(index->GetId());
		}
		index = m_indexer->GetRange(IndexTypes::FIRST_CONTACT, IndexTypes::LAST_CONTACT, it);
	}
}
Exemplo n.º 2
0
OP_STATUS IndexGroupMailingLists::IndexAdded(Indexer *indexer, UINT32 index_id)
{
	if (IndexTypes::FIRST_CONTACT <= index_id && index_id < IndexTypes::LAST_CONTACT)
	{
		Index* index = indexer->GetIndexById(index_id);
		if (index)
		{
			IndexSearch *search = index->GetSearch();
			if (search &&
				search->GetSearchText().FindFirstOf('@') == KNotFound &&
				search->GetSearchText().FindFirstOf('.') != KNotFound)
			{
				return AddIndex(index_id);
			}
		}
	}
	
	return OpStatus::OK;
}