Source code for collecting_society_web.views.forms.datatables.creation_rightsholder_sequence

# For copyright and license terms, see COPYRIGHT.rst (top level of repository)
# Repository: https://github.com/C3S/collecting_society_web

import logging

import colander
import deform

from portal_web.views.forms.datatables import (
    DatatableSequence,
    DatatableSequenceWidget
)

from . import ArtistIndividual, CreationRightSequence
from ....services import _

log = logging.getLogger(__name__)


# --- Options -----------------------------------------------------------------


# --- Fields ------------------------------------------------------------------

@colander.deferred
def creation_rightsholder_sequence_widget(node, kw):
    request = kw.get('request')
    # return widget
    return DatatableSequenceWidget(
        request=request,
        template='datatables/creation_rightsholder_sequence',
        # source_data=source_data,
        # source_data_total=total
    )


[docs] class ModeField(colander.SchemaNode): oid = "mode" schema_type = colander.String widget = deform.widget.HiddenWidget() validator = colander.OneOf( ['create', 'edit'])
# --- Schemas -----------------------------------------------------------------
[docs] class CreationRightsholderSchema(colander.Schema): mode = ModeField() subject = ArtistIndividual(title=_("Rightsholder")) rights = CreationRightSequence(min_len=1) title = ""
[docs] class CreationRightsholderSequence(DatatableSequence): creation_rightsholder_sequence = CreationRightsholderSchema() widget = creation_rightsholder_sequence_widget actions = ['create', 'edit']