Example #1
0
    def export_xls(self):
        state_changed_ideas = self.find_state_changed_ideas(reverse=True)

        r = XLSRenderer()
        center_top = r.Style.Centered + r.Style.VerticalAlignTop
        left_top = r.Style.VerticalAlignTop
        heading = r.Style.ColumnHeading + r.Style.VerticalAlignCenter + r.Style.Wrap + r.Background.LightYellow

        with r.sheet(_(u"Ideas on alert")):
            with r.row:
                r << r.cell(_(u"State changes"), style=heading)
                r << r.cell(_(u'Challenge'), style=heading)
                r << r.cell(_(u'Ideas'), style=heading)

            for (from_state, to_state), ideas in state_changed_ideas:
                for idx, (idea, __) in enumerate(ideas):
                    with r.row:
                        if not idx:
                            r << r.cell(u'%s\n⬇\n%s (%d)' %
                                        (_(from_state.label), _(
                                            to_state.label), len(ideas)),
                                        rowspan=len(ideas),
                                        style=center_top)
                        r << r.cell(u'#%d' % idea.challenge.id
                                    if idea.challenge else '',
                                    style=center_top)
                        r << r.cell(u'N°%d - %s' % (idea.id, idea.title),
                                    style=left_top)
        raise excel_response(r.get_content(), filename='idees_en_alerte.xls')
Example #2
0
 def show_most_liked_comments(self):
     renderer = XLSRenderer()
     now = datetime.now()
     filename = now.strftime(
         _(u'eureka_most_liked_comments_week_%U_%Y.xls'))
     MostLikedComments().render(renderer, now, 500)
     raise excel_response(renderer.get_content(), filename)
Example #3
0
    def export_xls(self):
        state_changed_ideas = self.find_state_changed_ideas(reverse=True)

        r = XLSRenderer()
        center_top = r.Style.Centered + r.Style.VerticalAlignTop
        left_top = r.Style.VerticalAlignTop
        heading = r.Style.ColumnHeading + r.Style.VerticalAlignCenter + r.Style.Wrap + r.Background.LightYellow

        with r.sheet(_(u"Ideas on alert")):
            with r.row:
                r << r.cell(_(u"State changes"), style=heading)
                r << r.cell(_(u'Challenge'), style=heading)
                r << r.cell(_(u'Ideas'), style=heading)

            for (from_state, to_state), ideas in state_changed_ideas:
                for idx, (idea, __) in enumerate(ideas):
                    with r.row:
                        if not idx:
                            r << r.cell(u'%s\n⬇\n%s (%d)' %
                                        (_(from_state.label),
                                         _(to_state.label),
                                         len(ideas)),
                                        rowspan=len(ideas),
                                        style=center_top)
                        r << r.cell(
                            u'#%d' % idea.challenge.id if idea.challenge else '',
                            style=center_top)
                        r << r.cell(u'N°%d - %s' % (idea.id, idea.title),
                                    style=left_top)
        raise excel_response(r.get_content(), filename='idees_en_alerte.xls')
Example #4
0
 def export_xls(self, filename_prefix='export'):
     idea_ids = [i.id for i in self.get_query()]
     if idea_ids:
         current_user = get_current_user()
         first_idea = IdeaData.query.filter_by(id=idea_ids[0]).one()
         permission = _permission(current_user, first_idea)
     else:
         permission = None
     content, filename = export(idea_ids, permission, filename_prefix)
     raise excel_response(content, filename)
Example #5
0
 def export_xls(self, filename_prefix='export'):
     idea_ids = [i.id for i in self.get_query()]
     if idea_ids:
         current_user = get_current_user()
         first_idea = IdeaData.query.filter_by(id=idea_ids[0]).one()
         permission = _permission(current_user, first_idea)
     else:
         permission = None
     content, filename = export(idea_ids, permission, filename_prefix)
     raise excel_response(content, filename)
Example #6
0
 def export_xls(self, filename=None, title=_(u'Users')):
     renderer = XLSRenderer()
     self.render_xls(renderer, title)
     timestamp = datetime.now().date().isoformat()
     filename = filename or '%s-%s.xls' % (timestamp, fix_filename(title))
     raise excel_response(renderer.get_content(), filename)
Example #7
0
 def export_xls(self, filename=None, title=_(u'Users')):
     renderer = XLSRenderer()
     self.render_xls(renderer, title)
     timestamp = datetime.now().date().isoformat()
     filename = filename or '%s-%s.xls' % (timestamp, fix_filename(title))
     raise excel_response(renderer.get_content(), filename)
Example #8
0
 def show_most_liked_comments(self):
     renderer = XLSRenderer()
     now = datetime.now()
     filename = now.strftime(_(u'eureka_most_liked_comments_week_%U_%Y.xls'))
     MostLikedComments().render(renderer, now, 500)
     raise excel_response(renderer.get_content(), filename)