Example #1
0
    def get(self):
        code = self.request.GET.get('code')

        if code:
            user_info = TheCitySDK.post_for_user_token(code)
            sdk = TheCitySDK(user_info.get('access_token'))
            user_permissions = sdk.get_user_permissions()
            if 'error_code' not in user_permissions:
                if sdk.user_is_in_worship_arts(user_permissions):
                    logging.info('This user can join our site')
                    user_info_dict = sdk.get_basic_user_info()
                    user_info_dict['jwt'] = create_jwt_from_user_data(user_permissions, user_info_dict)
                    User.put_from_city_dict(user_info_dict)
                    self.redirect('/login?success=true&userId={}'.format(user_info_dict['id']))
                else:
                    logging.info('This user needs to be added to a Worship Arts group on The City')
                    # TODO: Redirect to a different landing page explaining the purpose of this site and who to contact.
                    self.redirect('/')
            else:
                self.redirect('/login')
Example #2
0
 def test_someone_in_wa_band_and_vocals_can_get_in(self):
     user_info = {"can_create_in_group_ids": {"topics": [104999]}}
     self.assertTrue(TheCitySDK.user_is_in_worship_arts(user_info))
Example #3
0
 def test_someone_in_wa_design_team_can_get_in(self):
     user_info = {"can_create_in_group_ids": {"topics": [104932]}}
     self.assertTrue(TheCitySDK.user_is_in_worship_arts(user_info))
Example #4
0
 def test_someone_in_wa_handbells_can_get_in(self):
     user_info = {"can_create_in_group_ids": {"topics": [107330]}}
     self.assertTrue(TheCitySDK.user_is_in_worship_arts(user_info))