示例#1
0
class FullEditConfigForm(EditConfigForm):
  kernel = forms.URLField(widget=forms.widgets.TextInput(attrs={'id':"kernel"}),
                          label="Kernel/Image")
  initrd = forms.URLField(widget=forms.widgets.TextInput(attrs={'id':"initrd"}),
                          required=False)
  args = forms.CharField(widget=forms.widgets.TextInput(attrs={'id':"args"}),
                         required=False)
示例#2
0
class CreateConfigForm(BaseConfigForm):
  type = forms.ChoiceField(
      widget=forms.widgets.Select(attrs={'id':"imagetype"}),
      choices=(
        ("kernel", "Linux Kernel"),
        ("image", "Raw image file"),
        ("memdisk", "Disk image"),
        ("iso", "CD ISO Image")),
      initial="kernel")
  kernel = forms.URLField(widget=forms.widgets.TextInput(attrs={'id':"kernel"}),
                          label="Kernel/Image")
  initrd = forms.URLField(widget=forms.widgets.TextInput(attrs={'id':"initrd"}),
                          required=False)
  args = forms.CharField(widget=forms.widgets.TextInput(attrs={'id':"args"}),
                         required=False)
示例#3
0
class CommentForm(forms.Form):
    id = forms.CharField(widget=forms.HiddenInput)
    name = forms.CharField(max_length=64)
    url = forms.URLField(max_length=128, required=False)
    comment = forms.CharField(widget=forms.Textarea(attrs={
        'rows': 8, 'cols': 60
        }))
    remember = forms.BooleanField(initial=True, required=False)
示例#4
0
class ApplianceForm(forms.Form):
    url = forms.URLField()
    email = forms.EmailField()

    appliance_type = forms.ChoiceField(choices = [('', 'Unknown'),
                                                  ('EC2', 'Amazon EC2'),
                                                  ('VMX', 'VMware'),
                                                  ('Devel', 'Development')])
示例#5
0
 def formfield(self, **kwargs):
     defaults = {
         'required': not self.blank,
         'verify_exists': self.verify_exists,
         'label': capfirst(self.verbose_name),
         'help_text': self.help_text
     }
     defaults.update(kwargs)
     return forms.URLField(**defaults)
示例#6
0
class IDPForm(forms.Form):
    source_id = forms.CharField(max_length=40)
    name = forms.CharField(max_length=32)

    logo = forms.CharField(widget=forms.FileInput(), required=False)

    domain = forms.RegexField(r'^[a-zA-Z0-9\.\-]*$',
                              max_length=64,
                              required=False)

    logouturl = forms.URLField(max_length=128, required=False)

    website = forms.URLField(max_length=64, required=False)

    format = forms.CharField(
        help_text='Format of identity URL, use % as placeholder for username')

    def clean_format(self):
        format = self.data['format']
        if format.count('%') != 1:
            raise forms.ValidationError(
                'Must have one percent (%) as username placeholder')
        return format
示例#7
0
文件: assets.py 项目: scanlime/cia-vc
class StatsMetadataForm(forms.Form):
    title = forms.CharField(widget=forms.TextInput(attrs={'class': 'text'}), )
    subtitle = forms.CharField(
        required=False,
        widget=forms.TextInput(attrs={'class': 'text'}),
    )
    url = forms.URLField(
        required=False,
        widget=forms.TextInput(attrs={'class': 'text'}),
        # Disabled for now, since it seems to imply required=True.
        # verify_exists = True,
    )
    description = forms.CharField(
        required=False,
        widget=forms.Textarea,
    )
    photo_id = forms.IntegerField(
        required=False,
        widget=ImageWidget,
    )
    icon_id = forms.IntegerField(
        required=False,
        widget=ImageWidget,
    )

    def clean_subtitle(self):
        return self.cleaned_data.get('subtitle') or None

    def clean_url(self):
        return self.cleaned_data.get('url') or None

    def clean_description(self):
        return self.cleaned_data.get('description') or None

    def clean_photo_id(self):
        return self.cleaned_data.get('photo_id') or None

    def clean_icon_id(self):
        return self.cleaned_data.get('icon_id') or None

    def apply(self, cset):
        target = cset.asset.target
        cset.set_field_dict(self.cleaned_data, prefix='target.')

        if target.photo:
            target.photo.reference()
        if target.icon:
            target.icon.reference()
示例#8
0
class NewCommentForm(forms.Form):
    article_url = forms.URLField(required=True, widget=forms.HiddenInput)
    article_title = forms.CharField(required=False, widget=forms.HiddenInput)

    author_name = forms.CharField(required=True, label="Name")
    author_email = forms.EmailField(required=True, label="Email")
    author_url = forms.URLField(required=False, label="URL")
    author_ip = forms.CharField(required=False)

    comment = forms.CharField(required=True,
                              widget=forms.Textarea(attrs={
                                  'cols': 30,
                                  'rows': 3
                              }))

    def save(self):
        data = self.clean_data

        article_url = data.get('article_url')
        article_title = data.get('article_title') or data.get('article_url')

        article = models.Article.get_or_insert(article_url,
                                               url=article_url,
                                               title=article_title)
        if article.title != article_title:
            article.title = article_title
            article.put()

        author_email = data.get('author_email')
        author_name = data.get('author_name')
        author_url = data.get('author_url')
        author_ip = data.get('author_ip')
        author_key = (author_email or '') + author_name

        author = models.Author.get_or_insert(author_key, name=author_name)
        has_changes = False

        if author.url != author_url and author_url:
            author.url = author_url
            has_changes = True

        if author_email and author_email != author.email:
            author.email = author_email
            has_changes = True

        if has_changes:
            author.put()

        comment = models.Comment(parent=article,
                                 comment=data.get('comment'),
                                 author=author,
                                 article=article,
                                 author_ip=author_ip)
        comment.put()

        params = urllib.urlencode({
            'article_url': article_url,
            'comment_id': comment.key().id()
        })
        taskqueue.add(url="/api/notify/?" + params, method="GET")

        self._author = author
        self._article = article
        self._comment = comment

        return comment

    @property
    def output(self):
        return {
            'article': {
                'url': self._article.url,
                'title': self._article.title,
            },
            'author': {
                'email': self._author.email,
                'name': self._author.name,
                'url': self._author.url,
            },
            'comment': self._comment.comment,
        }
示例#9
0
class EditForm(forms.Form):
    name = forms.CharField()
    adminUrl = forms.URLField(required=False)
    memberUrl = forms.URLField(required=False)
    worklist_limit = forms.IntegerField(required=False)
示例#10
0
class WebForm(forms.Form):
    Site = forms.URLField(help_text="URL to this appliance")
    HomePage = forms.URLField(help_text="URL to your company home page")

    ScriptDomain = forms.CharField(required=False)
    CookieDomain = forms.CharField(required=False)