Example #1
0
 def test_get_form_list(self):
     list_ = get_form_list()
     self.assertEquals(len(list_), len(self.wizard_forms_fields))
     for step in list_:
         f = step()
         self.assertIsInstance(f, forms.Form)
         self.assertGreater(len(f.fields), 0)
Example #2
0
 def test_get_texts_for_forms(self):
     list_ = get_form_list()
     for step in list_:
         f = step()
         for field in f.fields:
             self.assertTrue(f.explanation_template)
             self.assertTrue(f.fields[field].widget.attrs['long_text'])
Example #3
0
 def get_form_list(self):
     form_list = OrderedDict()
     previous_forms = self.get_previous_forms()
     my_list = previous_forms + get_form_list(user=self.request.user)
     counter = 0
     for form_class in my_list:
         form_list[str(counter)] = form_class
         counter += 1
     self.form_list = form_list
     return form_list
 def get_form_list(self):
     form_list = OrderedDict()
     previous_forms = self.get_previous_forms()
     my_list = previous_forms + get_form_list(user=self.request.user)
     counter = 0
     for form_class in my_list:
         form_list[str(counter)] = form_class
         counter += 1
     self.form_list = form_list
     return form_list
Example #5
0
    def test_user_should_accept_terms_and_conditions(self):
        list_ = get_form_list()
        form_class = list_[-1]
        test_response = self.get_example_data_for_post()
        data = test_response[len(test_response) - 1]
        for key in data.keys():
            if 'terms_and_conditions' in key:
                data[key] = False
        form = form_class(data=data)

        self.assertFalse(form.is_valid())
        for key in data.keys():
            if 'terms_and_conditions' in key:
                data[key] = True
        form = form_class(data=data)
        self.assertTrue(form.is_valid())
Example #6
0
    def test_get_form_list_depending_on_user(self):
        def return_none(user=None):
            return None

        def return_boolean_field(user=None):
            if user == self.feli:
                return forms.BooleanField()
            return None

        form_fields = [{
            'template':
            'popular_proposal/wizard/paso5.html',
            'explation_template':
            "popular_proposal/steps/p.html",
            'fields':
            OrderedDict([('test', return_boolean_field),
                         ('testb', return_none)])
        }]
        list_ = get_form_list(form_fields, user=self.feli)
        all_fields = list_[0].base_fields.items()
        self.assertEquals(all_fields[0][0], 'test')
        test_field = all_fields[0][1]
        self.assertIsInstance(test_field, forms.BooleanField)
        self.assertEquals(len(all_fields), 1)
Example #7
0
 def test_get_texts_for_forms(self):
     list_ = get_form_list()
     for step in list_:
         f = step()
         for field in f.fields:
             self.assertTrue(f.explanation_template)
Example #8
0
from popular_proposal.forms import (
    get_form_list, )
from django.views.generic.edit import CreateView, UpdateView
from votita.models import KidsProposal, KidsGathering
from django.forms import inlineformset_factory, ChoiceField
from django.views.generic.base import View
from django.shortcuts import render_to_response, redirect
from django.core.urlresolvers import reverse
from django.views.generic.detail import DetailView
from django.contrib.auth.mixins import LoginRequiredMixin
from django.views.generic.list import ListView
from django.conf import settings
from votainteligente.views import HomeViewBase
from django.db.models import Count

wizard_form_list = get_form_list(wizard_forms_fields=wizard_forms_fields)


class VotitaLoginRequiredMixin(LoginRequiredMixin):
    def get_login_url(self):
        votita_urlconf = 'votita.stand_alone_urls'
        if settings.ROOT_URLCONF == votita_urlconf or (
                hasattr(self.request, 'urlconf')
                and self.request.urlconf == votita_urlconf):
            return reverse('votita_auth:login')
        return reverse('auth_login')


class VotitaWizard(ProposalWizardBase):
    form_list = wizard_form_list
    template_name = 'popular_proposal/wizard/form_step.html'
Example #9
0
        context = super(HomeView, self).get_context_data(**kwargs)
        initial = self.request.GET
        context['form'] = ProposalFilterForm(initial=initial)
        return context

    def get_context_object_name(self, object_list):
        return 'popular_proposals'


class PopularProposalDetailView(EmbeddedViewBase, DetailView):
    model = PopularProposal
    template_name = 'popular_proposal/detail.html'
    context_object_name = 'popular_proposal'


wizard_form_list = get_form_list()


class ProposalWizardBase(SessionWizardView):
    form_list = wizard_form_list
    template_name = 'popular_proposal/wizard/form_step.html'

    def get_template_names(self):
        form = self.get_form(step=self.steps.current)
        template_name = getattr(form, 'template', self.template_name)
        return template_name

    def get_previous_forms(self):
        return []

    def get_form_list(self):
        return 'popular_proposals'


class PopularProposalDetailView(DetailView):
    model = PopularProposal
    template_name = 'popular_proposal/detail.html'
    context_object_name = 'popular_proposal'
    layout = 'base.html'

    def get_context_data(self, *args, **kwargs):
        context = super(PopularProposalDetailView, self).get_context_data(*args, **kwargs)
        context['layout'] = self.layout
        return context


wizard_form_list = get_form_list()


class ProposalWizardBase(SessionWizardView):
    form_list = wizard_form_list
    template_name = 'popular_proposal/wizard/form_step.html'

    def get_template_names(self):
        form = self.get_form(step=self.steps.current)
        template_name = getattr(form, 'template', self.template_name)
        return template_name

    def get_previous_forms(self):
        return []

    def get_form_list(self):
from popular_proposal.forms import (get_form_list,)
from django.views.generic.edit import CreateView, UpdateView
from votita.models import KidsProposal, KidsGathering
from django.forms import inlineformset_factory, ChoiceField
from django.views.generic.base import View
from django.shortcuts import render_to_response, redirect
from django.core.urlresolvers import reverse
from django.views.generic.detail import DetailView
from django.contrib.auth.mixins import LoginRequiredMixin
from django.views.generic.list import ListView
from django.conf import settings
from votai_utils.views import HomeViewBase
from django.db.models import Count


wizard_form_list = get_form_list(wizard_forms_fields=wizard_forms_fields)


class VotitaLoginRequiredMixin(LoginRequiredMixin):

    def get_login_url(self):
        votita_urlconf = 'votita.stand_alone_urls'
        if settings.ROOT_URLCONF == votita_urlconf or (hasattr(self.request, 'urlconf') and self.request.urlconf == votita_urlconf):
            return reverse('votita_auth:login')
        return reverse('auth_login')

class VotitaWizard(ProposalWizardBase):
    form_list = wizard_form_list
    template_name = 'popular_proposal/wizard/form_step.html'