class ArgumentSchema(Schema): title = string_property(title=_('title'), validator=Length(min=5, max=TITLE_MAXLENGTH)) abstract = string_property(title=_('abstract'), validator=Length(min=5, max=ABSTRACT_MAXLENGTH)) details = string_property(title=_('details'), validator=Length(min=10, max=4096), missing='')
class DepartmentSchema(Schema): name = string_property(title=_('name'), validator=Length(min=3, max=255)) description = string_property(title=_('description'), validator=Length(min=10, max=2000), missing='') exporter_settings = json_property(title=_('exporter_settings'), missing={}) voting_module_settings = json_property(title=_('voting_module_settings'), missing={})
class PropositionTypeSchema(Schema): name = string_property(title=_('name'), validator=Length(max=64)) abbreviation = string_property(title=_('abbreviation'), validator=Length(max=3)) description = string_property(title=_('description'), validator=Length(min=10, max=4000), missing='') policy_id = int_property(title=_('policy'))
class PropositionNoteSchema(Schema): proposition_id = string_property(title=_('proposition_id'), missing=None) user_id = int_property(title=_('user_id'), missing=None) notes = string_property(title=_('notes'), validator=Length(min=0, max=2048), missing=None) vote = enum_property(VoteByUser, title=_('vote'), missing=VoteByUser.UNSURE)
class VotingPhaseTypeSchema(Schema): name = string_property(title=_('name'), validator=Length(min=3, max=255)) abbreviation = string_property(title=_('abbreviation'), validator=Length(max=6)) secret_voting_possible = bool_property(title=_('secret_voting_possible')) voting_type = enum_property(VotingType, title=_('voting_type')) description = string_property(title=_('description'), validator=Length(min=10, max=2000), missing='')
class PropositionEditSchema(PropositionSchema): voting_identifier = string_property(title=_('voting_identifier'), validator=Length(max=10), missing=None) submitter_invitation_key = string_property( title=_('submitter_invitation_key'), missing=None) external_discussion_url = string_property( title=_('external_discussion_url'), validator=colander.url, missing='') status = enum_property(PropositionStatus, title=_('status')) visibility = enum_property(PropositionVisibility, title=_('visibility')) external_fields = json_property(title=_('external_fields'), missing={})
class PropositionSchema(Schema): title = string_property(title=_('title'), validator=Length(min=5, max=255)) content = string_property(title=_('content'), validator=Length(min=10, max=100_000)) motivation = string_property(title=_('motivation'), missing='', validator=Length(max=100_000)) tags = set_property(title=_('tags'), missing=tuple()) abstract = string_property(title=_('abstract'), missing='', validator=Length(max=500)) relation_type = enum_property(PropositionRelationType, missing=None) related_proposition_id = string_property(missing=None)
class PolicySchema(Schema): name = string_property(title=_('name'), validator=Length(max=64)) description = string_property(title=_('description'), validator=Length(max=4000), missing='') majority = enum_property(Majority, title=_('majority')) proposition_expiration = int_property(title=_('proposition_expiration')) qualification_minimum = int_property(title=_('qualification_minimum')) qualification_quorum = decimal_property(title=_('qualification_quorum')) range_max = int_property(title=_('range_max')) range_small_max = int_property(title=_('range_small_max')) range_small_options = int_property(title=_('range_small_options')) secret_minimum = int_property(title=_('secret_minimum')) secret_quorum = decimal_property(title=_('secret_quorum')) submitter_minimum = int_property(title=_('submitter_minimum')) voting_duration = int_property(title=_('voting_duration')) voting_system = enum_property(VotingSystem, title=_('voting_system'))
class VotingPhaseSchema(Schema): name = string_property(title=_('name'), validator=Length(min=2, max=23), missing='') title = string_property(title=_('title'), validator=Length(min=5, max=140), missing='') target = date_property(title=_('target'), missing=None) status = enum_property(VotingStatus, title=_('voting_status')) department_id = int_property(title=_('department')) phase_type_id = int_property(title=_('voting_phase_type')) secret = bool_property(title=_('secret_voting_possible')) description = string_property(title=_('description'), validator=Length(min=10, max=65536), missing='')
class PropositionNewSchema(PropositionSchema): area_id = int_property(title=_('subject_area')) proposition_type_id = int_property(title=_('proposition_type')) editing_remarks = string_property( title=_('editing_remarks'), description=_('editing_remarks_description'), missing='', validator=Length(max=2000))
class BallotSchema(Schema): name = string_property(title=_('name'), validator=Length(min=2, max=23), missing='') election = int_property(title=_('election_positions'), missing=0) result = json_property(title=_('voting_result'), missing={}) area_id = int_property(title=_('subject_area'), missing=None) voting_id = int_property(title=('voting_phase'), missing=None) proposition_type_id = int_property(title=('proposition_type'), missing=None)
class PropositionNewSchema(Schema): area_id = int_property(title=_('subject_area')) title = string_property(title=_('title'), validator=Length(min=5, max=512)) external_discussion_url = string_property( title=_('external_discussion_url'), validator=colander.url) abstract = string_property(title=_('abstract'), validator=Length(min=5, max=2048)) content = string_property(title=_('content'), validator=Length(min=10, max=65536)) motivation = string_property(title=_('motivation'), missing='') tags = set_property(title=_('tags'), missing=tuple()) relation_type = string_property(validator=OneOf(['replaces', 'modifies']), missing=None) related_proposition_id = int_property(missing=None)
class PropositionNewDraftSchema(Schema): title = string_property(title=_('title'), validator=Length(min=5, max=255)) content = string_property(title=_('content'), validator=Length(min=10, max=100_000)) motivation = string_property(title=_('motivation'), missing='', validator=Length(max=100_000)) tags = set_property(title=_('tags'), missing=tuple()) abstract = string_property(title=_('abstract'), validator=Length(max=500), missing='') editing_remarks = string_property( title=_('editing_remarks'), description=_('editing_remarks_description'), missing='', validator=Length(max=2000)) document_id = int_property() section = string_property()
class PageSchema(Schema): name = string_property(title=_('name'), validator=Length(min=3, max=255)) lang = string_property(title=_('lang'), validator=Length(min=2, max=16)) title = string_property(title=_('title'), validator=Length(max=255), missing='') text = string_property(title=_('text'), missing='') permissions = string_property(title=_('permissions'), missing='{}')
class ArgumentForPropositionSchema(ArgumentSchema): proposition_id = string_property() relation_type = enum_property(ArgumentType)
class PropositionEditSchema(PropositionNewSchema): voting_identifier = string_property(title=_('voting_identifier'), validator=Length(max=10), missing=None) status = enum_property(PropositionStatus, title=_('status'))
class DepartmentSchema(Schema): name = string_property(title=_('name'), validator=Length(min=3, max=255)) description = string_property(title=_('description'), validator=Length(min=10, max=2000), missing='')
class UserSchema(Schema): name = string_property(title=_('name'), validator=Length(max=128)) email = string_property(title=_('email'), missing=None) active = bool_property(title=_('active')) groups = set_property(title=_('groups'), missing=tuple())