示例#1
0
class AddWebhookForm(forms.Form):
    error_css_class = "has-error"

    url_down = forms.URLField(max_length=1000,
                              required=False,
                              validators=[WebhookValidator()])

    url_up = forms.URLField(max_length=1000,
                            required=False,
                            validators=[WebhookValidator()])

    post_data = forms.CharField(max_length=1000, required=False)

    def __init__(self, *args, **kwargs):
        super(AddWebhookForm, self).__init__(*args, **kwargs)

        self.headers = {}
        if "header_key[]" in self.data and "header_value[]" in self.data:
            keys = self.data.getlist("header_key[]")
            values = self.data.getlist("header_value[]")
            for key, value in zip(keys, values):
                if key:
                    self.headers[key] = value

    def get_value(self):
        val = dict(self.cleaned_data)
        val["headers"] = self.headers
        return json.dumps(val, sort_keys=True)
示例#2
0
class AddWebhookForm(forms.Form):
    error_css_class = "has-error"

    method_down = forms.ChoiceField(initial="GET",
                                    choices=zip(METHODS, METHODS))
    body_down = forms.CharField(max_length=1000, required=False)
    headers_down = HeadersField(required=False)
    url_down = URLField(max_length=1000,
                        required=False,
                        validators=[WebhookValidator()])

    method_up = forms.ChoiceField(initial="GET", choices=zip(METHODS, METHODS))
    body_up = forms.CharField(max_length=1000, required=False)
    headers_up = HeadersField(required=False)
    url_up = forms.URLField(max_length=1000,
                            required=False,
                            validators=[WebhookValidator()])

    def clean(self):
        super().clean()

        url_down = self.cleaned_data.get("url_down")
        url_up = self.cleaned_data.get("url_up")

        if not url_down and not url_up:
            self.add_error("url_down", "Enter a valid URL.")

    def get_value(self):
        return json.dumps(dict(self.cleaned_data), sort_keys=True)
示例#3
0
class AddWebhookForm(forms.Form):
    error_css_class = "has-error"

    url_down = forms.URLField(max_length=1000,
                              required=False,
                              validators=[WebhookValidator()])

    url_up = forms.URLField(max_length=1000,
                            required=False,
                            validators=[WebhookValidator()])

    post_data = forms.CharField(max_length=1000, required=False)

    def __init__(self, *args, **kwargs):
        self.headers = {}
        if all(k in kwargs for k in ("header_keys", "header_values")):
            header_keys = kwargs.pop("header_keys")
            header_values = kwargs.pop("header_values")

            for i, (key, val) in enumerate(zip(header_keys, header_values)):
                if key:
                    self.headers[key] = val

        super(AddWebhookForm, self).__init__(*args, **kwargs)

    def get_value(self):
        val = dict(self.cleaned_data)
        val["headers"] = self.headers
        return json.dumps(val, sort_keys=True)
示例#4
0
class AddWebhookForm(forms.Form):
    error_css_class = "has-error"

    value_down = forms.URLField(max_length=1000, required=False,
                                validators=[WebhookValidator()])

    value_up = forms.URLField(max_length=1000, required=False,
                              validators=[WebhookValidator()])

    def get_value(self):
        return "{value_down}\n{value_up}".format(**self.cleaned_data)
示例#5
0
class AddWebhookForm(forms.Form):
    error_css_class = "has-error"

    value_down = forms.URLField(max_length=1000, required=False,
                                validators=[WebhookValidator()])

    value_up = forms.URLField(max_length=1000, required=False,
                              validators=[WebhookValidator()])

    post_data = forms.CharField(max_length=1000, required=False)

    def get_value(self):
        d = self.cleaned_data
        return "\n".join((d["value_down"], d["value_up"], d["post_data"]))
示例#6
0
class AddGotifyForm(forms.Form):
    error_css_class = "has-error"
    token = forms.CharField(max_length=50)
    url = forms.URLField(max_length=1000, validators=[WebhookValidator()])

    def get_value(self):
        return json.dumps(dict(self.cleaned_data), sort_keys=True)
示例#7
0
class AddZulipForm(forms.Form):
    error_css_class = "has-error"
    bot_email = forms.EmailField(max_length=100)
    api_key = forms.CharField(max_length=50)
    site = forms.URLField(max_length=100, validators=[WebhookValidator()])
    mtype = forms.ChoiceField(choices=ZULIP_TARGETS)
    to = forms.CharField(max_length=100)

    def get_value(self):
        return json.dumps(dict(self.cleaned_data), sort_keys=True)
示例#8
0
class AddUrlForm(forms.Form):
    error_css_class = "has-error"
    value = forms.URLField(max_length=1000, validators=[WebhookValidator()])