Esempio n. 1
0
    def favicon(self):
        # Get server
        context = self.context.__parent__.__parent__
        if not IServer.providedBy(context):
            return ''

        icon = context.get('icon.png', None)
        if not icon:
            return ''

        return absoluteURL(icon, self.request)
Esempio n. 2
0
    def items(self):
        items = []

        if ISite.providedBy(self.context):
            return self._site_items
        elif IPage.providedBy(self.context):
            return self._page_items
        elif IServer.providedBy(self.context):
            return self._server_items
        elif INews.providedBy(self.context):
            return self._news_items
        return []
Esempio n. 3
0
    def __call__(self, **kwargs):
        sursa = self.context['sursa']
        for server in sursa.values():
            if not IServer.providedBy(server):
                continue
            for news in server.values():
                if not INews.providedBy(news):
                    continue
                if 'updater' in news:
                    del news['updater']

                logger.info('Update updater for %s' % (
                    absoluteURL(news, self.request)))
                updater = NewsUpdater()
                news['updater'] = updater
Esempio n. 4
0
    def __call__(self, **kwargs):
        """ Evolve
        """
        start = datetime.now()
        logger.info('Indexing objects: %s', start.strftime('%Y-%m-%d %H:%M:%S'))

        for server in self.context.values():
            if not IServer.providedBy(server):
                continue
            reindex = queryMultiAdapter((server, self.request), name=u'reindex.html')
            reindex()

            logger.info('Commit transaction')
            transaction.commit()

        end = datetime.now()

        delta = end - start
        logger.info('Done: %s', end.strftime('%Y-%m-%d %H:%M:%S'))
        logger.info('Done in %s seconds', delta.seconds)
        return 'Done in %s seconds' % delta.seconds