Beispiel #1
0
def external_link(request):
    link_text = request.GET.get('link_text', '')
    link_url = request.GET.get('link_url', '')

    if request.method == 'POST':
        form = ExternalLinkChooserForm(request.POST)

        if form.is_valid():
            return render_modal_workflow(
                request,
                None, 'wagtailadmin/chooser/external_link_chosen.js',
                {
                    'url': form.cleaned_data['url'],
                    'link_text': form.cleaned_data['link_text'].strip() or form.cleaned_data['url']
                }
            )
    else:
        form = ExternalLinkChooserForm(initial={'url': link_url, 'link_text': link_text})

    return render_modal_workflow(
        request,
        'wagtailadmin/chooser/external_link.html', 'wagtailadmin/chooser/external_link.js',
        shared_context(request, {
            'form': form,
        })
    )
Beispiel #2
0
def external_link(request):
    link_text = request.GET.get('link_text', '')
    link_url = request.GET.get('link_url', '')

    if request.method == 'POST':
        form = ExternalLinkChooserForm(request.POST)

        if form.is_valid():
            return render_modal_workflow(
                request, None, 'wagtailadmin/chooser/external_link_chosen.js',
                {
                    'url':
                    form.cleaned_data['url'],
                    'link_text':
                    form.cleaned_data['link_text'].strip()
                    or form.cleaned_data['url']
                })
    else:
        form = ExternalLinkChooserForm(initial={
            'url': link_url,
            'link_text': link_text
        })

    return render_modal_workflow(request,
                                 'wagtailadmin/chooser/external_link.html',
                                 'wagtailadmin/chooser/external_link.js',
                                 shared_context(request, {
                                     'form': form,
                                 }))
Beispiel #3
0
def external_link(request):
    initial_data = {
        'url': request.GET.get('link_url', ''),
        'link_text': request.GET.get('link_text', ''),
    }

    if request.method == 'POST':
        form = ExternalLinkChooserForm(request.POST, initial=initial_data)

        if form.is_valid():
            result = {
                'url':
                form.cleaned_data['url'],
                'title':
                form.cleaned_data['link_text'].strip()
                or form.cleaned_data['url'],
                # If the user has explicitly entered / edited something in the link_text field,
                # always use that text. If not, we should favour keeping the existing link/selection
                # text, where applicable.
                # (Normally this will match the link_text passed in the URL here anyhow,
                # but that won't account for non-text content such as images.)
                'prefer_this_title_as_link_text': ('link_text'
                                                   in form.changed_data),
            }

            return render_modal_workflow(
                request, None, 'wagtailadmin/chooser/external_link_chosen.js',
                {
                    'result_json': json.dumps(result),
                })
    else:
        form = ExternalLinkChooserForm(initial=initial_data)

    return render_modal_workflow(request,
                                 'wagtailadmin/chooser/external_link.html',
                                 'wagtailadmin/chooser/external_link.js',
                                 shared_context(request, {
                                     'form': form,
                                 }))
Beispiel #4
0
def external_link(request):
    initial_data = {
        'url': request.GET.get('link_url', ''),
        'link_text': request.GET.get('link_text', ''),
    }

    if request.method == 'POST':
        form = ExternalLinkChooserForm(request.POST, initial=initial_data)

        if form.is_valid():
            result = {
                'url': form.cleaned_data['url'],
                'title': form.cleaned_data['link_text'].strip() or form.cleaned_data['url'],
                # If the user has explicitly entered / edited something in the link_text field,
                # always use that text. If not, we should favour keeping the existing link/selection
                # text, where applicable.
                # (Normally this will match the link_text passed in the URL here anyhow,
                # but that won't account for non-text content such as images.)
                'prefer_this_title_as_link_text': ('link_text' in form.changed_data),
            }

            return render_modal_workflow(
                request,
                None, 'wagtailadmin/chooser/external_link_chosen.js',
                {
                    'result_json': json.dumps(result),
                }
            )
    else:
        form = ExternalLinkChooserForm(initial=initial_data)

    return render_modal_workflow(
        request,
        'wagtailadmin/chooser/external_link.html', 'wagtailadmin/chooser/external_link.js',
        shared_context(request, {
            'form': form,
        })
    )