示例#1
0
def edit_flashcard_deck(request):
    if request.method == 'POST':
        return handle_blueprint_post(request, FlashcardDeck)

    resource_or_template = None
    if hasattr(request, 'ductus') and getattr(request.ductus, 'resource', None):
        resource_or_template = request.ductus.resource
    elif request.GET.get('template') in flashcard_templates:
        resource_or_template = flashcard_templates[request.GET['template']]()
        # add any provided tag(s) to the template object
        for tag in request.GET.getlist('tag'):
            try:
                tag_value_attribute_validator(tag)
            except ValidationError:
                pass  # the given tag is invalid, so ignore it
            else:
                tag_elt = resource_or_template.tags.new_item()
                tag_elt.value = tag
                resource_or_template.tags.array.append(tag_elt)

    return render_to_response('flashcards/edit_flashcard_deck.html', {
        'writable_directories': get_writable_directories_for_user(request.user),
        'resource_or_template': resource_or_template,
        'available_audio_formats': available_audio_formats,
    }, RequestContext(request))
示例#2
0
文件: views.py 项目: antiface/ductus
def view_copy_resource(request):
    """Copies/forks the resource to a new location on the wiki
    """
    from ductus.wiki import get_writable_directories_for_user
    return render_to_response('wiki/copy.html', {
        'writable_directories': get_writable_directories_for_user(request.user),
    }, RequestContext(request))
示例#3
0
def edit_flashcard_deck(request):
    if request.method == 'POST':
        return handle_blueprint_post(request, FlashcardDeck)

    resource_or_template = None
    if hasattr(request, 'ductus') and getattr(request.ductus, 'resource',
                                              None):
        resource_or_template = request.ductus.resource
    elif request.GET.get('template') in flashcard_templates:
        resource_or_template = flashcard_templates[request.GET['template']]()
        # add any provided tag(s) to the template object
        for tag in request.GET.getlist('tag'):
            try:
                tag_value_attribute_validator(tag)
            except ValidationError:
                pass  # the given tag is invalid, so ignore it
            else:
                tag_elt = resource_or_template.tags.new_item()
                tag_elt.value = tag
                resource_or_template.tags.array.append(tag_elt)

    return render_to_response(
        'flashcards/edit_flashcard_deck.html', {
            'writable_directories': get_writable_directories_for_user(
                request.user),
            'resource_or_template': resource_or_template,
            'available_audio_formats': available_audio_formats,
        }, RequestContext(request))
示例#4
0
文件: views.py 项目: jennspics/ductus
def edit_textwiki(request):

    resource_database = get_resource_database()

    if request.method == 'POST':
        handle_blueprint_post(request, Wikitext)

    resource = None
    if hasattr(request, 'ductus') and getattr(request.ductus, 'resource',
                                              None):
        resource = request.ductus.resource
        # handle old creole content: make it look like ductus-html5 so we can edit it
        # content is not saved to creole anymore, only to ductus-html5
        if resource.blob.markup_language == 'creole-1.0':
            resource.blob.markup_language = 'ductus-html5'
            resource.text = creole(resource.text,
                                   resource.blob.natural_language)

    return render_to_response('textwiki/edit_wiki.html', {
        'resource_json':
        resource,
        'writable_directories':
        get_writable_directories_for_user(request.user),
    },
                              context_instance=RequestContext(request))
示例#5
0
文件: views.py 项目: antiface/ductus
def edit_textwiki(request):

    resource_database = get_resource_database()

    if request.method == 'POST':
        handle_blueprint_post(request, Wikitext)

    resource = None
    if hasattr(request, 'ductus') and getattr(request.ductus, 'resource', None):
        resource = request.ductus.resource
        # handle old creole content: make it look like ductus-html5 so we can edit it
        # content is not saved to creole anymore, only to ductus-html5
        if resource.blob.markup_language == 'creole-1.0':
            resource.blob.markup_language = 'ductus-html5'
            resource.text = creole(resource.text, resource.blob.natural_language)

    return render_to_response('textwiki/edit_wiki.html', {
        'resource_json': resource,
        'writable_directories': get_writable_directories_for_user(request.user),
    }, context_instance=RequestContext(request))