Ejemplo n.º 1
0
 def dispatch(self, request, *args, **kwargs):
     api = Exact()
     authorization_code, access_token = api.get_session(
         "authorization_code", "access_token")
     if not authorization_code or not access_token:
         return HttpResponseRedirect(reverse("exact:authenticate"))
     self.api = api
     return super(Status, self).dispatch(request, *args, **kwargs)
Ejemplo n.º 2
0
    def get_redirect_url(self, *args, **kwargs):
        api = Exact()
        if self.request.GET.get("code"):
            api.session.authorization_code = self.request.GET.get("code")
            api.session.save()

        if not api.session.authorization_code:
            return api.auth_url

        if not api.session.access_token:
            api.get_token()

        return super(Authenticate, self).get_redirect_url(*args, **kwargs)
Ejemplo n.º 3
0
def create_or_update_webhook(sender, instance, raw, *args, **kwargs):
    if not raw:
        api = Exact()
        if instance.pk or instance.guid:
            logger.debug("updating webhook %s: %s -> %s" %
                         (instance.guid, instance.topic, instance.callback))
            api.update("webhooks/WebhookSubscriptions", instance.guid, {
                "Topic": instance.topic,
                "CallbackURL": instance.callback
            })
        else:
            logger.debug("creating webhook: %s -> %s" %
                         (instance.topic, instance.callback))
            webhook = api.create("webhooks/WebhookSubscriptions", {
                "Topic": instance.topic,
                "CallbackURL": instance.callback
            })
            instance.guid = webhook["ID"]
Ejemplo n.º 4
0
def delete_webhook(sender, instance, *args, **kwargs):
    if instance.guid:
        api = Exact()
        logger.debug("deleting webhook %s: %s -> %s" %
                     (instance.guid, instance.topic, instance.callback))
        api.delete("webhooks/WebhookSubscriptions", instance.guid)