示例#1
0
    def setUp(self):
        super().setUp()
        self.connect_url = reverse("tickets.types.rocketchat.connect")
        self.app_id = f"{uuid.uuid4()}"
        self.secret = random_string(SECRET_LENGTH)
        self.secret2 = random_string(SECRET_LENGTH)

        self.domain = self.new_url("rocketchat-domain.com", scheme="")
        self.insecure_url = self.new_url(self.domain, path=f"/{self.app_id}", unique=False)
        self.secure_url = self.new_url(self.domain, path=f"/{self.app_id}", scheme="https", unique=False)
示例#2
0
    def setUp(self):
        super().setUp()
        self.claim_url = reverse("channels.types.rocketchat.claim")
        self.app_id = f"{uuid.uuid4()}"
        self.bot_username = "******"
        self.admin_auth_token = "abc123"
        self.admin_user_id = "123"
        self.secret = random_string(SECRET_LENGTH)
        self.secret2 = random_string(SECRET_LENGTH)

        self.domain = self.new_url("rocketchat-domain.com", scheme="")
        self.insecure_url = self.new_url(self.domain, path=f"/{self.app_id}", unique=False)
        self.secure_url = self.new_url(self.domain, path=f"/{self.app_id}", scheme="https", unique=False)
示例#3
0
    def handle_code_granted(self, request, *args, **kwargs):
        from .type import ZendeskType

        code = request.GET["code"]
        subdomain = request.GET["state"]
        client = Client(subdomain)
        try:
            access_token = client.get_oauth_token(
                settings.ZENDESK_CLIENT_ID, settings.ZENDESK_CLIENT_SECRET,
                code, self.get_absolute_url())
        except ClientError:
            messages.error(request, _("Unable to request OAuth token."))
            return super(ConnectView, self).get(request, *args, **kwargs)

        config = {
            ZendeskType.CONFIG_SUBDOMAIN: subdomain,
            ZendeskType.CONFIG_OAUTH_TOKEN: access_token,
            ZendeskType.CONFIG_SECRET: random_string(32),
        }

        self.object = Ticketer.create(
            org=self.org,
            user=self.request.user,
            ticketer_type=ZendeskType.slug,
            name=f"Zendesk ({subdomain})",
            config=config,
        )

        return HttpResponseRedirect(self.get_success_url())
示例#4
0
    def get_secret(self):
        if self._secret:
            return self._secret

        self._secret = self.request.session.get(self.SESSION_KEY)
        if not self._secret or self.request.method.lower() != "post":
            self.request.session[self.SESSION_KEY] = self._secret = random_string(SECRET_LENGTH)
        return self._secret
示例#5
0
 def post(self, *args, **kwargs):
     # return a generated coupon
     return HttpResponse(json.dumps(dict(coupon=random_string(6))))
示例#6
0
 def post(self, *args, **kwargs):
     # return a generated coupon
     return HttpResponse(json.dumps(dict(coupon=random_string(6))))
示例#7
0
    def get(self, request, *args, **kwargs):
        if not self.is_verify_step():
            request.session["verification_code"] = random_string(6)

        return super().get(request, *args, **kwargs)