Exemple #1
0
def fetch_multi_delete_tag(request, selected_mails, tag_id, url):
    dajax = Dajax()
    search_object = search.get_search_from_url(url)
    try:
        tag = Tag.objects.get(id=tag_id)
    except (Tag.DoesNotExist, Tag.MultipleObjectsReturned):
        tag = None
    else:
        for mail_id in selected_mails:
            try:
                mail = Mail.objects.get(id=mail_id)
            except (Mail.DoesNotExist, Mail.MultipleObjectsReturned):
                pass
            else:
                mail.tags.remove(tag)
    result = tags.mail_tags_multibar_html(search_object, selected_mails, True)
    dajax.add_data(
        {
            'tags_html': result,
            'tags_only': True,
            'tags_changed': True,
            'propagate': True
        }, 'update_multibar')
    update_tag_cloud(dajax, search_object)
    return dajax.json()
Exemple #2
0
def fetch_multibar(request, selected_mails, propagate, url):
    dajax = Dajax()
    search_object = search.get_search_from_url(url)
    result = tags.mail_tags_multibar_html(search_object, selected_mails)
    dajax.add_data(
        {"tags_html": result, "tags_only": False, "tags_changed": False, "propagate": propagate}, "update_multibar"
    )
    return dajax.json()
Exemple #3
0
def fetch_multibar(request, selected_mails, propagate, url):
    dajax = Dajax()
    search_object = search.get_search_from_url(url)
    result = tags.mail_tags_multibar_html(search_object, selected_mails)
    dajax.add_data(
        {
            'tags_html': result,
            'tags_only': False,
            'tags_changed': False,
            'propagate': propagate
        }, 'update_multibar')
    return dajax.json()
Exemple #4
0
def fetch_multi_add_tag(request, selected_mails, tag, url):
    dajax = Dajax()
    search_object = search.get_search_from_url(url)
    t = tags.get_or_create_tag(tag)
    for mail_id in selected_mails:
        try:
            m = Mail.objects.get(id=mail_id)
        except:
            pass
        else:
            m.tags.add(t)
    result = tags.mail_tags_multibar_html(search_object, selected_mails, True)
    dajax.add_data({"tags_html": result, "tags_only": True, "tags_changed": True, "propagate": True}, "update_multibar")
    update_tag_cloud(dajax, search_object)
    return dajax.json()
Exemple #5
0
def fetch_multi_delete_tag(request, selected_mails, tag_id, url):
    dajax = Dajax()
    search_object = search.get_search_from_url(url)
    try:
        tag = Tag.objects.get(id=tag_id)
    except (Tag.DoesNotExist, Tag.MultipleObjectsReturned):
        tag = None
    else:
        for mail_id in selected_mails:
            try:
                mail = Mail.objects.get(id=mail_id)
            except (Mail.DoesNotExist, Mail.MultipleObjectsReturned):
                pass
            else:
                mail.tags.remove(tag)
    result = tags.mail_tags_multibar_html(search_object, selected_mails, True)
    dajax.add_data({"tags_html": result, "tags_only": True, "tags_changed": True, "propagate": True}, "update_multibar")
    update_tag_cloud(dajax, search_object)
    return dajax.json()
Exemple #6
0
def fetch_multi_add_tag(request, selected_mails, tag, url):
    dajax = Dajax()
    search_object = search.get_search_from_url(url)
    t = tags.get_or_create_tag(tag)
    for mail_id in selected_mails:
        try:
            m = Mail.objects.get(id=mail_id)
        except:
            pass
        else:
            m.tags.add(t)
    result = tags.mail_tags_multibar_html(search_object, selected_mails, True)
    dajax.add_data(
        {
            'tags_html': result,
            'tags_only': True,
            'tags_changed': True,
            'propagate': True
        }, 'update_multibar')
    update_tag_cloud(dajax, search_object)
    return dajax.json()