Exemplo n.º 1
0
def add_tag(request, mlist_fqdn, threadid):
    """ Add a tag to a given thread. """
    if not request.user.is_authenticated():
        return HttpResponse('You must be logged in to add a tag',
                            content_type="text/plain", status=403)

    if request.method != 'POST':
        raise SuspiciousOperation

    form = AddTagForm(request.POST)
    if not form.is_valid():
        return HttpResponse("Error adding tag: invalid data",
                            content_type="text/plain", status=500)
    tag = form.data['tag']
    try:
        tag_obj = Tag.objects.get(threadid=threadid,
                                  list_address=mlist_fqdn, tag=tag)
    except Tag.DoesNotExist:
        tag_obj = Tag(list_address=mlist_fqdn, threadid=threadid, tag=tag)
        tag_obj.save()

    # Now refresh the tag list
    tags = Tag.objects.filter(threadid=threadid, list_address=mlist_fqdn)
    FakeMList = namedtuple("MailingList", ["name"])
    t = loader.get_template('threads/tags.html')
    html = t.render(RequestContext(request, {
            "tags": tags,
            "mlist": FakeMList(name=mlist_fqdn)}))

    response = {"tags": [ t.tag for t in tags ], "html": html}
    return HttpResponse(json.dumps(response),
                        mimetype='application/javascript')
Exemplo n.º 2
0
def qpool_edit_tag(request, tag):
    tag_obj = get_object_or_404(Tag, pk=tag)
    if request.method == "POST":
        form = AddTagForm(data = request.POST, instance = tag_obj)
        if form.is_valid():
            form.save()
            return redirect('qpool_manage_tags')
    else:
        form = AddTagForm(instance=tag_obj)
    return render_to_response('cpanel/qpool_edit_tag.html', {'form':form, 'tags': tag_obj}, context_instance=RequestContext(request))
Exemplo n.º 3
0
def qpool_edit_tag(request, tag):
    tag_obj = get_object_or_404(Tag, pk=tag)
    if request.method == "POST":
        form = AddTagForm(data = request.POST, instance = tag_obj)
        if form.is_valid():
            form.save()
            return redirect('qpool_manage_tags')
    else:
        form = AddTagForm(instance=tag_obj)
    return render_to_response('cpanel/qpool_edit_tag.html', {'form':form, 'tags': tag_obj}, context_instance=RequestContext(request))
Exemplo n.º 4
0
def qpool_add_tag(request):
    form = AddTagForm()
    if request.method == "POST":
        tag = AddTagForm(data=request.POST)
        if tag.is_valid():
            tag.save()
            return redirect('qpool_manage_tags')
        else:
            form = tag
    return render_to_response('cpanel/qpool_add_tag.html', {'form': form},
                              context_instance=RequestContext(request))
Exemplo n.º 5
0
def qpool_add_tag(request):
    form = AddTagForm()
    if request.method == "POST":
        tag = AddTagForm(data=request.POST)
        if tag.is_valid():
            tag.save()
            return redirect('qpool_manage_tags')
        else:
            form = tag
    return render_to_response('cpanel/qpool_add_tag.html',
                              {'form': form},
                              context_instance=RequestContext(request))
Exemplo n.º 6
0
def add_tag(request):
    form = AddTagForm(request.POST)
    if form.is_valid():
        tagname = form.cleaned_data.get('tagname')
        # 先判断一下数据库中是否已经存在同名的标签
        resultTag = TagModel.objects.filter(name=tagname).first()
        if not resultTag:
            # 如果没有,说明可以添加
            tagModel = TagModel(name=tagname)
            tagModel.save()
            return myjson.json_result(data={'id': tagModel.id, 'name': tagModel.name})
        else:
            return myjson.json_params_error(message=u'不能设置同名标签!')
    else:
        return form.get_error_response()
Exemplo n.º 7
0
def cms_add_tag(request):
    '''如果tag已经存在,则不允许在添加,否则添加
    '''
    form = AddTagForm(request.POST)
    if form.is_valid():
        tag_name = form.cleaned_data.get('tag_name')
        tag_model = TagModel.objects.filter(name=tag_name).first()
        if tag_model:
            return myjson.json_params_error(u'该标签已存在,请重新设置!')
        else:
            tagModel = TagModel(name=tag_name)
            tagModel.save()
            return myjson.json_result()
    else:
        message = form.errors
        return myjson.json_params_error(message)
Exemplo n.º 8
0
def add_tags(request):
    form = AddTagForm(request.POST)
    if form.is_valid():
        tagname = form.cleaned_data.get('tagname')
        resultTag = TagModel.objects.filter(name=tagname).first()
        if not resultTag:
            tagModel = TagModel(name=tagname)
            tagModel.save()
            return xtjson.json_result(data={
                'id': tagModel.id,
                'name': tagModel.name
            })
        else:
            return xtjson.json_params_error(message=u'名字不能重复')

    else:
        return form.get_error_response()
Exemplo n.º 9
0
def add_tag(request, mlist_fqdn, threadid):
    """ Add a tag to a given thread. """
    if not request.user.is_authenticated():
        return HttpResponse('You must be logged in to add a tag',
                            content_type="text/plain",
                            status=403)

    if request.method != 'POST':
        raise SuspiciousOperation

    form = AddTagForm(request.POST)
    if not form.is_valid():
        return HttpResponse("Error adding tag: invalid data",
                            content_type="text/plain",
                            status=500)
    tag = form.data['tag']
    try:
        tag_obj = Tag.objects.get(threadid=threadid,
                                  list_address=mlist_fqdn,
                                  tag=tag)
    except Tag.DoesNotExist:
        tag_obj = Tag(list_address=mlist_fqdn, threadid=threadid, tag=tag)
        tag_obj.save()

    # Now refresh the tag list
    tags = Tag.objects.filter(threadid=threadid, list_address=mlist_fqdn)
    FakeMList = namedtuple("MailingList", ["name"])
    t = loader.get_template('threads/tags.html')
    html = t.render(
        RequestContext(request, {
            "tags": tags,
            "mlist": FakeMList(name=mlist_fqdn)
        }))

    response = {"tags": [t.tag for t in tags], "html": html}
    return HttpResponse(json.dumps(response),
                        mimetype='application/javascript')