Пример #1
0
    def testGetAvailableGlossaryMetaTypes(self):
        self.loginAsPortalOwner()
        tool = self.glossary_tool
        available_metatypes = tool.getAvailableGlossaryMetaTypes()
        glossary_metatypes = tool.glossary_metatypes

        # test available metatypes, base glossary selected by default
        self.assertEquals(available_metatypes,
                          ('PloneGlossary', 'ExampleGlossary'))
        self.assertEquals(glossary_metatypes, ('PloneGlossary',))

        # test : only selected metatypes are returned by getGlossaryUIDs
        glossary = self.glossary
        glossaryuid = glossary.UID()
        exampleglossary = self.addExampleGlossary(self.portal,
                                         'Example',
                                         (u'Sport', u'Tennis', u'Open source'))
        exampleuid = exampleglossary.UID()

        # test :
        glossary_uids = list(self.glossary_tool.getGlossaryUIDs())
        glossary_uids.sort()
        self.assertEquals(glossary_uids, [glossaryuid])

        # test : add a glossary type
        tool.glossary_metatypes = ('PloneGlossary', 'ExampleGlossary')
        glossary_uids = list(self.glossary_tool.getGlossaryUIDs())
        glossary_uids.sort()
        uids = [glossaryuid, exampleuid]
        uids.sort()
        self.assertEquals(glossary_uids, uids)
        LOG.info("testGetAvailableGlossaryMetaTypes passed")
        self.logout()
Пример #2
0
def glossaryAdded(glossary, event):
    """A glossary has been added"""

    container = event.newParent
    # FIXME: Fix this when AT don't need manage_afterAdd any more
    super(glossary.__class__, glossary).manage_afterAdd(glossary, container)
    glossary._initCatalog()
    LOG.info("Event: A %s has been added.", glossary.meta_type)
    return
Пример #3
0
    def available(self):
        """Do we show the portlet?"""

        pgtool = getToolByName(self.context, PLONEGLOSSARY_TOOL)
        _available = pgtool.showPortlet(self.context)
        if _available:
            _available = bool(self.definitions())
        LOG.debug("Portlet available: %s", _available)
        return _available
Пример #4
0
    def available(self):
        """Do we show the portlet?"""

        pgtool = getToolByName(self.context, PLONEGLOSSARY_TOOL)
        _available = pgtool.showPortlet(self.context)
        if _available:
            _available = bool(self.definitions())
        LOG.debug("Portlet available: %s", _available)
        return _available
Пример #5
0
def exportGlossaryTool(context):
    """Export glossary tool settings as an XML file.
    """
    site = context.getSite()
    tool = getToolByName(site, PLONEGLOSSARY_TOOL, None)
    if tool is None:
        LOG.info('Nothing to export.')
        return

    exportObjects(tool, '', context)
Пример #6
0
def exportGlossaryTool(context):
    """Export glossary tool settings as an XML file.
    """
    site = context.getSite()
    tool = getToolByName(site, PLONEGLOSSARY_TOOL, None)
    if tool is None:
        LOG.info('Nothing to export.')
        return

    exportObjects(tool, '', context)
Пример #7
0
def glossaryMoved(glossary, event):
    """A glossary has been moved or renamed"""

    glossary.rebuildCatalog()
    LOG.info("Event: A %s has been moved.", glossary.meta_type)
    return
Пример #8
0
        record = parseIndexRequest(request, self.id, self.query_options)
        if record.keys is None:
            return None
        query_str = ' '.join(record.keys)
        if not query_str:
            return None

        parseQuery = QueryParser(self.getLexicon()).parseQuery
        tree = parseQuery(query_str)

        if self.getId() in INDEX_SEARCH_GLOSSARY:

            gtool = getToolByName(self, PLONEGLOSSARY_TOOL)
            glossary_uids = gtool.getGeneralGlossaryUIDs()
            all_term_items = gtool._getGlossaryTermItems(glossary_uids)

            #get atoms from query and build related term query
            text = ' '.join(flatten(tree.terms()))
            excluded = dict.fromkeys(__getNOTWords(tree), True)

            tree = replaceWordsQuery(tree, parseQuery, gtool, all_term_items,
                                     excluded)

        results = tree.executeQuery(self.index)
        return  results, (self.id,)


if PATCH_ZCTextIndex:
    ZCTextIndex._apply_index = zctidx_ApplyIndexWithSynonymous
    LOG.info('Applied patch: ZCTextIndex._apply_index method')
Пример #9
0
    def available(self):
        """Do we show the portlet?"""

        _available = bool(self.definitions())
        LOG.debug("Portlet available: %s", _available)
        return _available