Пример #1
0
    def saved_emails_export(self, REQUEST=None, RESPONSE=None):
        """ Aggregate an xcel file from emails on disk
        (just like saved_emails does to populate the web page)"""
        if not REQUEST:
            RESPONSE.badRequestError("MALFORMED_URL")
        headers = REQUEST.form.get('headers')
        keys = REQUEST.form.get('keys')
        ids = REQUEST.form.get('id')
        if not headers or not keys:
            RESPONSE.badRequestError("MALFORMED_URL")
        headers = headers.split(',')
        keys = keys.split(',')
        if len(headers) != len(keys):
            RESPONSE.badRequestError("MALFORMED_URL")

        RESPONSE.setHeader('Content-Type', 'application/vnd.ms-excel')
        RESPONSE.setHeader('Content-Disposition',
                           ('attachment; filename='
                            'consultation_invitation_emails.xls'))
        cols = zip(headers, keys)
        return export_email_list_xcel(self.getSite(),
                                      cols,
                                      ids,
                                      where_to_read=path_in_site(
                                          self.get_consultation()))
Пример #2
0
 def test_export_email_list_xcel(self, mock_get_bulk_emails):
     # TODO include datetime and cell limit in test
     cols = [
         ('Subject', "subject"),
         ('Recipients', 'recipients'),
         ('onlyInRequest', 'onlyInRequest'),
     ]
     mock_get_bulk_emails.return_value = [{
         'subject': "bla",
         'recipients': ['*****@*****.**', '*****@*****.**'],
         'onlyInEmails': 'X',
     }]
     r = export_email_list_xcel(None, cols)
     expected = open(os.path.join(
         Globals.package_home(globals()), 'data/emailList.xls'),
         'r').read()
     self.assertEqual(r, expected)
Пример #3
0
 def test_export_email_list_xcel(self, mock_get_bulk_emails):
     # TODO include datetime and cell limit in test
     cols = [
         ('Subject', "subject"),
         ('Recipients', 'recipients'),
         ('onlyInRequest', 'onlyInRequest'),
     ]
     mock_get_bulk_emails.return_value = [{
         'subject':
         "bla",
         'recipients': ['*****@*****.**', '*****@*****.**'],
         'onlyInEmails':
         'X',
     }]
     r = export_email_list_xcel(None, cols)
     expected = open(
         os.path.join(Globals.package_home(globals()),
                      'data/emailList.xls'), 'r').read()
     self.assertEqual(r, expected)
Пример #4
0
    def saved_emails_export(self, REQUEST=None, RESPONSE=None):
        """ Aggregate an xcel file from emails on disk
        (just like saved_emails does to populate the web page)"""
        if not REQUEST:
            RESPONSE.badRequestError("MALFORMED_URL")
        headers = REQUEST.form.get('headers')
        keys = REQUEST.form.get('keys')
        ids = REQUEST.form.get('id')
        if not headers or not keys:
            RESPONSE.badRequestError("MALFORMED_URL")
        headers = headers.split(',')
        keys = keys.split(',')
        if len(headers) != len(keys):
            RESPONSE.badRequestError("MALFORMED_URL")

        RESPONSE.setHeader('Content-Type', 'application/vnd.ms-excel')
        RESPONSE.setHeader('Content-Disposition',
                           'attachment; filename=meeting_email_list.xls')
        cols = zip(headers, keys)
        return export_email_list_xcel(
            self.getSite(), cols, ids,
            where_to_read=path_in_site(self.getMeeting()))