Beispiel #1
0
def index(request, tplname="sievefilters/index.html"):
    from modoboa.extensions.webmail.lib import get_imapconnector

    try:
        sc = SieveClient(user=request.user.username,
                         password=request.session["password"])
    except ConnectionError as e:
        return _render_error(request, user_context={"error": e})

    try:
        active_script, scripts = sc.listscripts()
    except Error as e:
        return _render_error(request, user_context={"error": e})

    if active_script is None:
        active_script = ""
        default_script = "%s/" % scripts[0] if len(scripts) else ""
    else:
        default_script = "%s/" % active_script
    return render(request, tplname, {
        "selection": "user",
        "active_script": active_script,
        "default_script": default_script,
        "scripts": sorted(scripts),
        "hdelimiter": get_imapconnector(request).hdelimiter
    })
Beispiel #2
0
    def userfolders(self, request):
        from modoboa.extensions.webmail.lib import get_imapconnector

        mbc = get_imapconnector(request)
        ret = mbc.getmboxes(request.user, unseen_messages=False)

        folders = self.__build_folders_list(ret, request.user, mbc)
        return folders
Beispiel #3
0
        active_script, scripts = sc.listscripts()
    except Error, e:
        return _render_error(request, user_context={"error": e})

    if active_script is None:
        active_script = ""
        default_script = "%s/" % scripts[0] if len(scripts) else ""
    else:
        default_script = "%s/" % active_script
    return render(
        request, tplname, {
            "selection": "user",
            "active_script": active_script,
            "default_script": default_script,
            "scripts": sorted(scripts),
            "hdelimiter": get_imapconnector(request).hdelimiter
        })


@login_required
@needs_mailbox()
def get_templates(request, ftype):
    if ftype == "condition":
        return render_to_json_response(
            FilterForm([], [], request).cond_templates)
    return render_to_json_response(
        FilterForm([], [], request).action_templates)


@login_required
@needs_mailbox()