Exemplo n.º 1
0
    class _LoginForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True
        username = v.UnicodeString(
            strip=True,
            min=1,
            not_empty=True,
            messages={
                'empty': _('Please enter a login'),
                'tooShort': _('Enter a value %(min)i characters long or more')
            })

        password = v.UnicodeString(strip=False,
                                   min=3,
                                   not_empty=True,
                                   messages={
                                       'empty':
                                       _('Please enter a password'),
                                       'tooShort':
                                       _('Enter %(min)i characters or more')
                                   })

        remember = v.StringBoolean(if_missing=False)

        chained_validators = [v.ValidAuth()]
Exemplo n.º 2
0
    class _RepoForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = False
        repo_name = All(v.UnicodeString(strip=True, min=1, not_empty=True),
                        v.SlugifyName())
        repo_group = All(v.CanWriteGroup(old_data),
                         v.OneOf(repo_group_ids, hideList=True),
                         v.Int(min=-1, not_empty=True))
        repo_type = v.OneOf(supported_backends,
                            required=False,
                            if_missing=old_data.get('repo_type'))
        repo_description = v.UnicodeString(strip=True, min=1, not_empty=False)
        repo_private = v.StringBoolean(if_missing=False)
        repo_landing_rev = v.OneOf(landing_revs, hideList=True)
        repo_copy_permissions = v.StringBoolean(if_missing=False)
        clone_uri = All(v.UnicodeString(strip=True, min=1, not_empty=False))

        repo_enable_statistics = v.StringBoolean(if_missing=False)
        repo_enable_downloads = v.StringBoolean(if_missing=False)
        repo_enable_locking = v.StringBoolean(if_missing=False)

        if edit:
            owner = All(v.UnicodeString(not_empty=True), v.ValidRepoUser())
            # Not a real field - just for reference for validation:
            # clone_uri_hidden = v.UnicodeString(if_missing='')

        chained_validators = [
            v.ValidCloneUri(),
            v.ValidRepoName(edit, old_data)
        ]
Exemplo n.º 3
0
    class _RepoGroupForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = False

        group_name = All(
            v.UnicodeString(strip=True, min=1, not_empty=True),
            v.SlugifyName(),
            v.ValidRegex(
                msg=_('Name must not contain only digits'))(r'(?!^\d+$)^.+$'))
        group_description = v.UnicodeString(strip=True, min=1, not_empty=False)
        group_copy_permissions = v.StringBoolean(if_missing=False)

        if edit:
            #FIXME: do a special check that we cannot move a group to one of
            #its children
            pass

        parent_group_id = All(
            v.CanCreateGroup(can_create_in_root),
            v.OneOf(repo_group_ids,
                    hideList=False,
                    testValueList=True,
                    if_missing=None,
                    not_empty=True), v.Int(min=-1, not_empty=True))
        enable_locking = v.StringBoolean(if_missing=False)
        chained_validators = [v.ValidRepoGroup(edit, old_data)]
Exemplo n.º 4
0
    class _UserForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True
        username = All(v.UnicodeString(strip=True, min=1, not_empty=True),
                       v.ValidUsername(edit, old_data))
        if edit:
            new_password = All(
                v.ValidPassword(),
                v.UnicodeString(strip=False, min=6, not_empty=False))
            password_confirmation = All(
                v.ValidPassword(),
                v.UnicodeString(strip=False, min=6, not_empty=False),
            )
            admin = v.StringBoolean(if_missing=False)
            chained_validators = [
                v.ValidPasswordsMatch('new_password', 'password_confirmation')
            ]
        else:
            password = All(v.ValidPassword(),
                           v.UnicodeString(strip=False, min=6, not_empty=True))
            password_confirmation = All(
                v.ValidPassword(),
                v.UnicodeString(strip=False, min=6, not_empty=False))
            chained_validators = [
                v.ValidPasswordsMatch('password', 'password_confirmation')
            ]

        active = v.StringBoolean(if_missing=False)
        firstname = v.UnicodeString(strip=True, min=1, not_empty=False)
        lastname = v.UnicodeString(strip=True, min=1, not_empty=False)
        email = All(v.Email(not_empty=True), v.UniqSystemEmail(old_data))
        extern_name = v.UnicodeString(strip=True, if_missing=None)
        extern_type = v.UnicodeString(strip=True, if_missing=None)
Exemplo n.º 5
0
    class _RepoFieldForm(formencode.Schema):
        filter_extra_fields = True
        allow_extra_fields = True

        new_field_key = All(v.FieldKey(),
                            v.UnicodeString(strip=True, min=3, not_empty=True))
        new_field_value = v.UnicodeString(not_empty=False, if_missing='')
        new_field_type = v.OneOf(['str', 'unicode', 'list', 'tuple'],
                                 if_missing='str')
        new_field_label = v.UnicodeString(not_empty=False)
        new_field_desc = v.UnicodeString(not_empty=False)
Exemplo n.º 6
0
 class _ApplicationSettingsForm(formencode.Schema):
     allow_extra_fields = True
     filter_extra_fields = False
     title = v.UnicodeString(strip=True, not_empty=False)
     realm = v.UnicodeString(strip=True, min=1, not_empty=True)
     ga_code = v.UnicodeString(strip=True, min=1, not_empty=False)
     captcha_public_key = v.UnicodeString(strip=True,
                                          min=1,
                                          not_empty=False)
     captcha_private_key = v.UnicodeString(strip=True,
                                           min=1,
                                           not_empty=False)
Exemplo n.º 7
0
    class _PasswordChangeForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True

        current_password = v.ValidOldPassword(username)(not_empty=True)
        new_password = All(v.ValidPassword(),
                           v.UnicodeString(strip=False, min=6))
        new_password_confirmation = All(v.ValidPassword(),
                                        v.UnicodeString(strip=False, min=6))

        chained_validators = [
            v.ValidPasswordsMatch('new_password', 'new_password_confirmation')
        ]
Exemplo n.º 8
0
    class _PullRequestPostForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True

        pullrequest_title = v.UnicodeString(strip=True, required=True)
        pullrequest_desc = v.UnicodeString(strip=True, required=False)
        org_review_members = v.Set()
        review_members = v.Set()
        updaterev = v.UnicodeString(strip=True,
                                    required=False,
                                    if_missing=None)
        owner = All(v.UnicodeString(strip=True, required=True),
                    v.ValidRepoUser())
Exemplo n.º 9
0
    class _PasswordResetConfirmationForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True

        email = v.UnicodeString(strip=True, not_empty=True)
        timestamp = v.Number(strip=True, not_empty=True)
        token = v.UnicodeString(strip=True, not_empty=True)
        password = All(v.ValidPassword(), v.UnicodeString(strip=False, min=6))
        password_confirm = All(v.ValidPassword(),
                               v.UnicodeString(strip=False, min=6))

        chained_validators = [
            v.ValidPasswordsMatch('password', 'password_confirm')
        ]
Exemplo n.º 10
0
    class _ApplicationVisualisationForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = False
        show_public_icon = v.StringBoolean(if_missing=False)
        show_private_icon = v.StringBoolean(if_missing=False)
        stylify_metatags = v.StringBoolean(if_missing=False)

        repository_fields = v.StringBoolean(if_missing=False)
        lightweight_journal = v.StringBoolean(if_missing=False)
        dashboard_items = v.Int(min=5, not_empty=True)
        admin_grid_items = v.Int(min=5, not_empty=True)
        show_version = v.StringBoolean(if_missing=False)
        use_gravatar = v.StringBoolean(if_missing=False)
        gravatar_url = v.UnicodeString(min=3)
        clone_uri_tmpl = v.UnicodeString(min=3)
Exemplo n.º 11
0
 class _RepoForkForm(formencode.Schema):
     allow_extra_fields = True
     filter_extra_fields = False
     repo_name = All(v.UnicodeString(strip=True, min=1, not_empty=True),
                     v.SlugifyName())
     repo_group = All(v.CanWriteGroup(),
                      v.OneOf(repo_group_ids, hideList=True),
                      v.Int(min=-1, not_empty=True))
     repo_type = All(v.ValidForkType(old_data), v.OneOf(supported_backends))
     description = v.UnicodeString(strip=True, min=1, not_empty=True)
     private = v.StringBoolean(if_missing=False)
     copy_permissions = v.StringBoolean(if_missing=False)
     update_after_clone = v.StringBoolean(if_missing=False)
     fork_parent_id = v.UnicodeString()
     chained_validators = [v.ValidForkName(edit, old_data)]
     landing_rev = v.OneOf(landing_revs, hideList=True)
Exemplo n.º 12
0
    class _UserGroupForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True

        users_group_name = All(
            v.UnicodeString(strip=True, min=1, not_empty=True),
            v.ValidUserGroup(edit, old_data))
        user_group_description = v.UnicodeString(strip=True,
                                                 min=1,
                                                 not_empty=False)

        users_group_active = v.StringBoolean(if_missing=False)

        if edit:
            users_group_members = v.OneOf(available_members,
                                          hideList=False,
                                          testValueList=True,
                                          if_missing=None,
                                          not_empty=False)
Exemplo n.º 13
0
    class _ApplicationUiSettingsForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = False
        paths_root_path = All(
            v.ValidPath(), v.UnicodeString(strip=True, min=1, not_empty=True))
        hooks_changegroup_update = v.StringBoolean(if_missing=False)
        hooks_changegroup_repo_size = v.StringBoolean(if_missing=False)

        extensions_largefiles = v.StringBoolean(if_missing=False)
        extensions_hgsubversion = v.StringBoolean(if_missing=False)
        extensions_hggit = v.StringBoolean(if_missing=False)
Exemplo n.º 14
0
 class _LdapSettingsForm(formencode.Schema):
     allow_extra_fields = True
     filter_extra_fields = True
     #pre_validators = [LdapLibValidator]
     ldap_active = v.StringBoolean(if_missing=False)
     ldap_host = v.UnicodeString(strip=True, )
     ldap_port = v.Number(strip=True, )
     ldap_tls_kind = v.OneOf(tls_kind_choices)
     ldap_tls_reqcert = v.OneOf(tls_reqcert_choices)
     ldap_dn_user = v.UnicodeString(strip=True, )
     ldap_dn_pass = v.UnicodeString(strip=True, )
     ldap_base_dn = v.UnicodeString(strip=True, )
     ldap_filter = v.UnicodeString(strip=True, )
     ldap_search_scope = v.OneOf(search_scope_choices)
     ldap_attr_login = v.AttrLoginValidator()(not_empty=True)
     ldap_attr_firstname = v.UnicodeString(strip=True, )
     ldap_attr_lastname = v.UnicodeString(strip=True, )
     ldap_attr_email = v.UnicodeString(strip=True, )
Exemplo n.º 15
0
    class _PullRequestForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True

        org_repo = v.UnicodeString(strip=True, required=True)
        org_ref = v.UnicodeString(strip=True, required=True)
        other_repo = v.UnicodeString(strip=True, required=True)
        other_ref = v.UnicodeString(strip=True, required=True)

        pullrequest_title = v.UnicodeString(strip=True, required=True)
        pullrequest_desc = v.UnicodeString(strip=True, required=False)
Exemplo n.º 16
0
    class _GistForm(formencode.Schema):
        allow_extra_fields = True
        filter_extra_fields = True

        filename = All(v.BasePath()(),
                       v.UnicodeString(strip=True, required=False))
        description = v.UnicodeString(required=False, if_missing=u'')
        lifetime = v.OneOf(lifetime_options)
        mimetype = v.UnicodeString(required=False, if_missing=None)
        content = v.UnicodeString(required=True, not_empty=True)
        public = v.UnicodeString(required=False, if_missing=u'')
        private = v.UnicodeString(required=False, if_missing=u'')