예제 #1
0
def training_materials_assign(request, pk=None):
    if pk:
        tm = get_object_or_404(TrainingMaterial, pk=pk)
    else:
        tm = TrainingMaterial()
    tm_form = AssignForm(instance=tm)
    if request.method == 'POST':
        data = {}
        for key in request.POST:
            val = request.POST[key]
            if isinstance(val, basestring):
                data[key] = val
            else:
                try:
                    data[key] = val[0]
                except (IndexError, TypeError):
                    data[key] = val
        del data
        if pk:
            tm_form = AssignForm(request.POST, instance=tm)
        else:
            tm_form = AssignForm(request.POST)
        if tm_form.is_valid():
            tm = tm_form.save()
            assigned_users = tm_form.cleaned_data['assigned_users']
            notification = 'You have been assigned %s. To begin, reply with START %s.' % (tm.title, tm.tag)
            #self.cleaned_data['text']
            connections = []
            #assigned_users = tm_form.cleaned_data['assigned_users']
            for user in assigned_users:
                connections.append(user.default_connection)
            #connections = self.cleaned_data['assigned_users']
            send(notification, connections)
            #send(tm, assigned_users)
            tm.save()
            messages.add_message(request, messages.INFO, "Saved and sent training material.")
            return HttpResponseRedirect(reverse(training_materials))
    return render(request, 'training_materials/tm_assign1.html', {
        "tm": tm,
        "tm_form": tm_form,
        "range": range(tm.messagenum),#"x"*tm.messagenum,
    })