def action_complete(request, action_slug):
    """invoked when a user marks an action as completed"""
    action = get_object_or_404(Action, slug=action_slug)
    if request.method == "GET":
        return redirect("action_detail", action_slug=action.slug)
    uap, record = action.complete_for_user(request.user)
    if record:
        record_created.send(sender=None, request=request, record=record)
    messages.success(request, "Nice work! We've updated your profile, so all your friends can see your progress (<a href='#' class='undo_trigger'>Undo</a>)")
    messages.add_message(request, GA_TRACK_PAGEVIEW, '/actions/complete')
    messages.add_message(request, GA_TRACK_PAGEVIEW, '/actions/complete/%s' % action_slug)
    return redirect("action_detail", action_slug=action.slug)
def action_complete(request, action_slug):
    """invoked when a user marks an action as completed"""
    action = get_object_or_404(Action, slug=action_slug)
    if request.method == "GET":
        return redirect("action_detail", action_slug=action.slug)
    uap, record = action.complete_for_user(request.user)
    if record:
        record_created.send(sender=None, request=request, record=record)
    messages.success(
        request,
        "Nice work! We've updated your profile, so all your friends can see your progress (<a href='#' class='undo_trigger'>Undo</a>)"
    )
    messages.add_message(request, GA_TRACK_PAGEVIEW, '/actions/complete')
    messages.add_message(request, GA_TRACK_PAGEVIEW,
                         '/actions/complete/%s' % action_slug)
    return redirect("action_detail", action_slug=action.slug)
示例#3
0
def action_commit(request, action_slug):
    action = get_object_or_404(Action, slug=action_slug)
    if request.method == "GET":
        return redirect("action_detail", action_slug=action.slug)
    action_commit_form = ActionCommitForm(user=request.user, action=action, data=request.POST)
    # TODO: There is weirdness here if you have already completed the action and try to commit again.
    # This can happen when you are logged out, commit to an action you've already completes, are asked to log in, and are directed back to the action detail page.
    if action_commit_form.is_valid():
        uap, record = action_commit_form.save()
        if record:
            record_created.send(sender=None, request=request, record=record)
        messages.success(request, _("Thanks for making a commitment."))
        messages.add_message(request, GA_TRACK_PAGEVIEW, "/actions/commit")
        messages.add_message(request, GA_TRACK_PAGEVIEW, "/actions/commit/%s" % action_slug)
        return redirect("action_detail", action_slug=action.slug)
    default_vars = _default_action_vars(action, request.user)
    default_vars.update(locals())
    return render_to_response("actions/action_detail.html", default_vars, RequestContext(request))
def action_commit(request, action_slug):
    action = get_object_or_404(Action, slug=action_slug)
    if request.method == "GET":
        return redirect("action_detail", action_slug=action.slug)
    action_commit_form = ActionCommitForm(user=request.user,
                                          action=action,
                                          data=request.POST)
    # TODO: There is weirdness here if you have already completed the action and try to commit again.
    # This can happen when you are logged out, commit to an action you've already completes, are asked to log in, and are directed back to the action detail page.
    if action_commit_form.is_valid():
        uap, record = action_commit_form.save()
        if record:
            record_created.send(sender=None, request=request, record=record)
        messages.success(request, "Thanks for making a commitment.")
        messages.add_message(request, GA_TRACK_PAGEVIEW, '/actions/commit')
        messages.add_message(request, GA_TRACK_PAGEVIEW,
                             '/actions/commit/%s' % action_slug)
        return redirect("action_detail", action_slug=action.slug)
    default_vars = _default_action_vars(action, request.user)
    default_vars.update(locals())
    return render_to_response("actions/action_detail.html", default_vars,
                              RequestContext(request))
示例#5
0
def action_complete(request, action_slug):
    """invoked when a user marks an action as completed"""
    action = get_object_or_404(Action, slug=action_slug)
    if request.method == "GET":
        return redirect("action_detail", action_slug=action.slug)
    if action.is_group_project:
        action_commit_form = GroupActionCommitForm(user=request.user, 
                                                   action=action,
                                                   mark_completed=True,
                                                   data=request.POST)
        if action_commit_form.is_valid():
            uap, record = action_commit_form.save()
        else:
            return redirect("action_detail", action_slug=action.slug)
    else:
        uap, record = action.complete_for_user(request.user)

    if record:
        record_created.send(sender=None, request=request, record=record)
    messages.success(request, _("Nice work! We've updated your profile, "
                                "so all your friends can see your progress "))
    messages.add_message(request, GA_TRACK_PAGEVIEW, '/actions/complete')
    messages.add_message(request, GA_TRACK_PAGEVIEW, '/actions/complete/%s' % action_slug)
    return redirect("action_detail", action_slug=action.slug)