Beispiel #1
0
def linked_form_field_label_url(model_form, field):
    model_class = model_form._meta.model
    model_field = model_class._meta.fields_by_name[field.name]
    related_model = model_field.related_model

    from fedoralink.views import ModelViewRegistry
    title_view = ModelViewRegistry.get_view(related_model, 'link_title')

    if field.value():
        try:
            return reverse(title_view, kwargs={'pk': id_from_path(field.value())})
        except AttributeError:
            # url not in repository, use default value
            pass

    return reverse(title_view, kwargs={'pk': '0'})[:-1]
def linked_form_field_label_url(model_form, field):
    model_class = model_form._meta.model
    model_field = model_class._meta.fields_by_name[field.name]
    related_model = model_field.related_model

    from fedoralink.views import ModelViewRegistry
    title_view = ModelViewRegistry.get_view(related_model, 'link_title')

    if field.value():
        try:
            return reverse(title_view, kwargs={'pk': id_from_path(field.value())})
        except AttributeError:
            # url not in repository, use default value
            pass

    return reverse(title_view, kwargs={'pk': '0'})[:-1]
def linked_form_field_model(model_form, field):
    model_class = model_form._meta.model
    model_field = model_class._meta.fields_by_name[field.name]
    related_model = model_field.related_model

    # 'related_app'          : related_model._meta.app_label,
    # 'related_class'        : related_model._meta.object_name,

    data_url = [{
        'referencing_app'      : model_class._meta.app_label,
        'referencing_class'    : model_class._meta.object_name,
        'referencing_field'    : field.name,
        'referencing_instance' : model_form.instance.pk,
        'current_value'        : field.value()
    }]

    from fedoralink.views import ModelViewRegistry
    link_view = ModelViewRegistry.get_view(related_model, 'link')

    data_url = base64.b64encode(zlib.compress(json.dumps(data_url).encode('utf-8')))
    signer = TimestampSigner(salt='linked_form_field_model')
    data_url = signer.sign(data_url)

    return reverse(link_view, kwargs={'parametry': ''}) + '?linking=' + data_url
Beispiel #4
0
def linked_form_field_model(model_form, field):
    model_class = model_form._meta.model
    model_field = model_class._meta.fields_by_name[field.name]
    related_model = model_field.related_model

    # 'related_app'          : related_model._meta.app_label,
    # 'related_class'        : related_model._meta.object_name,

    data_url = [{
        'referencing_app'      : model_class._meta.app_label,
        'referencing_class'    : model_class._meta.object_name,
        'referencing_field'    : field.name,
        'referencing_instance' : model_form.instance.pk,
        'current_value'        : field.value()
    }]

    from fedoralink.views import ModelViewRegistry
    link_view = ModelViewRegistry.get_view(related_model, 'link')

    data_url = base64.b64encode(zlib.compress(json.dumps(data_url).encode('utf-8')))
    signer = TimestampSigner(salt='linked_form_field_model')
    data_url = signer.sign(data_url)

    return reverse(link_view, kwargs={'parametry': ''}) + '?linking=' + data_url
def detail_view_url(obj):
    from fedoralink.views import ModelViewRegistry

    return reverse(ModelViewRegistry.get_view(type(obj), 'detail'), kwargs={'pk': id_from_path(obj.pk)})
def get_fedora_object_page_link(linked_object, view_type):
    from fedoralink.views import ModelViewRegistry
    return reverse(ModelViewRegistry.get_view(type(linked_object), view_type),
                   kwargs={'pk': id_from_path(linked_object.pk)})
Beispiel #7
0
def detail_view_url(obj):
    from fedoralink.views import ModelViewRegistry

    return reverse(ModelViewRegistry.get_view(type(obj), 'detail'), kwargs={'pk': id_from_path(obj.pk)})
Beispiel #8
0
def get_fedora_object_page_link(linked_object, view_type):
    from fedoralink.views import ModelViewRegistry
    return reverse(ModelViewRegistry.get_view(type(linked_object), view_type),
                   kwargs={'pk': id_from_path(linked_object.pk)})