Ejemplo n.º 1
0
 def test_get_phone_numbers(self):
     data = subscribe.register('*****@*****.**', {
         'foo': 'bar',
         'phone_number': '15555555555'
     })
     subscribe.confirm('*****@*****.**', data['code'])
     subscribe.confirm_phone_number('*****@*****.**', data['code'])
     self.assertEquals(len(subscribe.get_phone_numbers()), 1)
Ejemplo n.º 2
0
 def test_category_match(self):
     subscribe.register('*****@*****.**', {'categories': [u'A']})
     subscriber = subscribe.get('*****@*****.**')
     subscribe.confirm('*****@*****.**', subscriber['code'])
     responses.add(responses.POST,
                   "https://www.google.com/recaptcha/api/siteverify",
                   body='{"success": true}',
                   content_type="application/json")
     self.request.form.update({
         'form.widgets.subject': u'TEST',
         'form.widgets.send_to_categories': [u'A'],
         'form.widgets.body': 'Words words words',
         'form.widgets.body_plain': 'Words words words',
         'form.buttons.send2': 'Send'
     })
     form = SendEmailSubscribersForm(self.portal, self.request)
     form()
     mailhost = self.portal.MailHost
     self.assertEqual(len(mailhost.messages), 1)
     self.assertEquals(len(subscribe.SubscriptionStorage()._data), 1)
Ejemplo n.º 3
0
    def __call__(self):
        registry = queryUtility(IRegistry)
        self.subscriptions_enabled = registry.get(
            'plone.enable_notification_subscriptions', False)
        portal_membership = getToolByName(self.context, 'portal_membership')
        self.isAnon = portal_membership.isAnonymousUser()

        if not self.has_captcha or not self.subscriptions_enabled:
            api.portal.show_message(
                'Subscriptions are not enabled on this site', request=self.request, type='error')
            return self.request.response.redirect(self.context.absolute_url())
        if 'confirmed_code' in self.request.form and 'confirmed_email' in self.request.form:
            try:
                alsoProvides(self.request, IDisableCSRFProtection)
                subscribe.confirm(self.request.form['confirmed_email'],
                                  self.request.form['confirmed_code'])
                api.portal.show_message('Succussfully subscribed to portal', request=self.request)
                self.subscribed = True
            except subscribe.InvalidEmailException:
                api.portal.show_message('Invalid Email', request=self.request, type='error')
            except subscribe.InvalidCodeException:
                api.portal.show_message('Invalid Code', request=self.request, type='error')

        return super(SubscribeForm, self).__call__()
Ejemplo n.º 4
0
 def test_categories(self):
     data = subscribe.register('*****@*****.**', {'categories': [u'A']})
     subscribe.confirm('*****@*****.**', data['code'])
     user = subscribe.get('*****@*****.**')
     self.assertEquals(user['categories'], [u'A'])
     self.assertFalse(user['categories'] == [])
Ejemplo n.º 5
0
 def test_get_email_address(self):
     data = subscribe.register('*****@*****.**', {'foo': 'bar'})
     subscribe.confirm('*****@*****.**', data['code'])
     self.assertEquals(len(subscribe.get_email_addresses()), 1)
Ejemplo n.º 6
0
 def test_add_subscriber(self):
     data = subscribe.register('*****@*****.**', {'foo': 'bar'})
     subscribe.confirm('*****@*****.**', data['code'])
     self.assertEquals(len([i for i in subscribe.all()]), 1)