def get_permission(parser, token):
    """
    Performs a permission check with the given signature, user and objects
    and assigns the result to a context variable.

    Syntax::

        {% get_permission PERMISSION_LABEL.CHECK_NAME for USER and *OBJS [as VARNAME] %}

        {% get_permission "poll_permission.change_poll"
            for request.user and poll as "is_allowed" %}
        {% get_permission "poll_permission.change_poll"
            for request.user and poll,second_poll as "is_allowed" %}

        {% if is_allowed %}
            I've got ze power to change ze pollllllzzz. Muahahaa.
        {% else %}
            Meh. No power for meeeee.
        {% endif %}

    """
    return PermissionForObjectNode.handle_token(parser, token,
                                                approved=True,
                                                name='"permission"')
Performs a permission check with the given signature, user and objects
    and assigns the result to a context variable.

    Syntax::

        {% get_permission PERMISSION_LABEL.CHECK_NAME for USER and *OBJS [as VARNAME] %}

        {% get_permission "poll_permission.change_poll"
            for request.user and poll as "is_allowed" %}
        {% get_permission "poll_permission.change_poll"
            for request.user and poll,second_poll as "is_allowed" %}

        {% if is_allowed %}
            I've got ze power to change ze pollllllzzz. Muahahaa.
        {% else %}
            Meh. No power for meeeee.
        {% endif %}