Ejemplo n.º 1
0
    def get(self, request, conversation):
        poll_id = 'poll-%s' % (conversation.key,)
        pm, poll_data = get_poll_config(poll_id)
        questions_data = poll_data.get('questions', [])
        completed_response_data = poll_data.get(
            'survey_completed_responses', [])

        poll_form = forms.SurveyPollForm(initial=poll_data)
        questions_formset = forms.make_form_set(initial=questions_data)
        completed_response_formset = forms.make_completed_response_form_set(
            initial=completed_response_data)

        return self.render_to_response({
            'conversation': conversation,
            'poll_form': poll_form,
            'questions_formset': questions_formset,
            'completed_response_formset': completed_response_formset,
        })
Ejemplo n.º 2
0
    def post(self, request, conversation):
        poll_id = 'poll-%s' % (conversation.key, )
        pm, poll_data = get_poll_config(poll_id)

        post_data = request.POST.copy()
        post_data.update({
            'poll_id': poll_id,
        })

        questions_formset = forms.make_form_set(data=post_data)
        poll_form = forms.SurveyPollForm(data=post_data)
        completed_response_formset = forms.make_completed_response_form_set(
            data=post_data)
        if (questions_formset.is_valid() and poll_form.is_valid()
                and completed_response_formset.is_valid()):
            data = poll_form.cleaned_data.copy()
            data.update({
                'questions':
                _clear_empties(questions_formset.cleaned_data),
                'survey_completed_responses':
                _clear_empties(completed_response_formset.cleaned_data)
            })
            pm.set(poll_id, data)
            messages.info(request, 'Conversation updated.')
            if request.POST.get('_save_contents'):
                return self.redirect_to('edit',
                                        conversation_key=conversation.key)
            else:
                return self.redirect_to('show',
                                        conversation_key=conversation.key)

        return self.render_to_response({
            'conversation':
            conversation,
            'poll_form':
            poll_form,
            'questions_formset':
            questions_formset,
            'completed_response_formset':
            completed_response_formset,
        })
Ejemplo n.º 3
0
    def get(self, request, conversation):
        poll_id = 'poll-%s' % (conversation.key, )
        pm, poll_data = get_poll_config(poll_id)
        questions_data = poll_data.get('questions', [])
        completed_response_data = poll_data.get('survey_completed_responses',
                                                [])

        poll_form = forms.SurveyPollForm(initial=poll_data)
        questions_formset = forms.make_form_set(initial=questions_data)
        completed_response_formset = forms.make_completed_response_form_set(
            initial=completed_response_data)

        return self.render_to_response({
            'conversation':
            conversation,
            'poll_form':
            poll_form,
            'questions_formset':
            questions_formset,
            'completed_response_formset':
            completed_response_formset,
        })
Ejemplo n.º 4
0
    def post(self, request, conversation):
        poll_id = 'poll-%s' % (conversation.key,)
        pm, poll_data = get_poll_config(poll_id)

        post_data = request.POST.copy()
        post_data.update({
            'poll_id': poll_id,
        })

        questions_formset = forms.make_form_set(data=post_data)
        poll_form = forms.SurveyPollForm(data=post_data)
        completed_response_formset = forms.make_completed_response_form_set(
            data=post_data)
        if (questions_formset.is_valid() and poll_form.is_valid() and
                completed_response_formset.is_valid()):
            data = poll_form.cleaned_data.copy()
            data.update({
                'questions': _clear_empties(questions_formset.cleaned_data),
                'survey_completed_responses': _clear_empties(
                    completed_response_formset.cleaned_data)
                })
            pm.set(poll_id, data)
            messages.info(request, 'Conversation updated.')
            if request.POST.get('_save_contents'):
                return self.redirect_to(
                    'edit', conversation_key=conversation.key)
            else:
                return self.redirect_to(
                    'show', conversation_key=conversation.key)

        return self.render_to_response({
            'conversation': conversation,
            'poll_form': poll_form,
            'questions_formset': questions_formset,
            'completed_response_formset': completed_response_formset,
        })