コード例 #1
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def edit_staff(request, object_id):
  try:
    object_id = int(object_id)
  except ValueError:
    return HttpResponseRedirect(reverse('workflowmax-staff-list'))
  context_vars = dict()
  context_vars['header'] = capfirst(_('edit staff %d') % object_id)
  staff = Staff.objects.get(id=object_id)
  form = StaffForm(staff.to_dict())
  helper = FormHelper()
  helper.form_class = 'uniform'
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  if request.method == "POST":
    form = StaffForm(request.POST, request.FILES)
    if form.is_valid():
      staff.name = form.cleaned_data['name']
      staff.address = form.cleaned_data['address']
      staff.phone = form.cleaned_data['phone']
      staff.mobile = form.cleaned_data['mobile']
      staff.email = form.cleaned_data['email']
      staff.payrollcode = form.cleaned_data['payrollcode']
      staff.save()
      return HttpResponseRedirect(reverse('workflowmax-staff', args=[staff.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='workflowmax/form.html', extra_context=context_vars)
コード例 #2
0
ファイル: views.py プロジェクト: keegancsmith/scrabble
def create_game(request):
    if request.method == 'POST':
        form = CreateGameForm(request.user, request.POST)
        if form.is_valid():
            game = form.create_game()
            return HttpResponseRedirect(game.get_absolute_url())
    else:
        form = CreateGameForm(request.user)

    # add in a submit button
    helper = FormHelper()
    submit = Submit('create', 'create a new game')
    helper.add_input(submit)

    # XXX need friends model
    friends = User.objects.exclude(pk=request.user.pk)
    friends_json = json.dumps(dict(
        (u.pk, escape(u.username)) for u in friends))

    return {
        'form': form,
        'helper': helper,
        'friends': friends_json,
        'username': request.user.username
    }
コード例 #3
0
ファイル: tests.py プロジェクト: EnTeQuAk/django-uni-form
    def test_change_layout_dynamically_delete_field(self):
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)        
        
        form = TestForm()
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                Fieldset(
                    u'Company Data',
                    'is_company',
                    'email',
                    'password1', 
                    'password2',
                    css_id = "multifield_info",
                ),
                Column(
                    'first_name',
                    'last_name',
                    css_id = "column_name",
                )
            )
        )

        # We remove email field on the go
        # Layout needs to be adapted for the new form fields
        del form.fields['email']
        del form_helper.layout.fields[0].fields[1]

        c = Context({'form': form, 'form_helper': form_helper})
        html = template.render(c)
        self.assertFalse('email' in html)
コード例 #4
0
ファイル: tests.py プロジェクト: digi604/django-uni-form
    def setUp(self):

        self.style = '<style>.formRow{color:red;}</style>'

        layout = Layout(
            # first fieldset shows the company
            Fieldset('', 'is_company'),
            # second fieldset shows the contact info
            Fieldset('Contact details',
                     'email',
                     Row('password1','password2'),
                     'first_name',
                     'last_name', ) )

        form_helper = FormHelper()
        form_helper.add_layout(layout)

        self.c = Context({'formset': TestFormset(),
                          'formset_helper': form_helper})

        template = get_template_from_string("""
{% load uni_form_tags %}
{% uni_form_set formset formset_helper %}
        """)
        self.html = template.render(self.c)
コード例 #5
0
ファイル: forms.py プロジェクト: GISAElkartea/antxetamedia
 def helper(self):
     helper = FormHelper()
     helper.add_input(Submit('submit', _('Search')))
     
     helper.form_action = reverse('search:search')
     helper.form_method = 'get'
     return helper
コード例 #6
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def edit_job(request, object_id):
  context_vars = dict()
  context_vars['header'] = '%s %s' % (capfirst(_('job')), object_id)
  job = Job.objects.get(id=object_id)
  form = EditJobForm(job.to_dict())
  helper = FormHelper()
  helper.form_class = 'uniform'
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  if request.method == "POST":
    form = EditJobForm(request.POST, request.FILES)
    if form.is_valid():
      job.state = form.cleaned_data['state']
      if form.cleaned_data['assigned']:
        job.assigned = []
        for assigned_id in form.cleaned_data['assigned']:
          try:
            job.assigned.append(Staff.objects.get(id=assigned_id))
          except ResponseStatusError:
            pass
      job.save()
      return HttpResponseRedirect(reverse('workflowmax-job', args=[job.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='workflowmax/form.html', extra_context=context_vars)
コード例 #7
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def add_client(request):
  context_vars = dict()
  context_vars['header'] = capfirst(_('add new client'))
  form = ClientForm()
  helper = FormHelper()
  helper.form_class = 'uniform'
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  if request.method == "POST":
    form = ClientForm(request.POST, request.FILES)
    if form.is_valid():
      client = Client()
      client.name = form.cleaned_data['name']
      client.address = form.cleaned_data['address']
      client.postal_address = form.cleaned_data['postal_address']
      client.phone = form.cleaned_data['phone']
      client.fax = form.cleaned_data['fax']
      client.website = form.cleaned_data['website']
      client.referral_source = form.cleaned_data['referral_source']
      client = client.save()
      return HttpResponseRedirect(reverse('workflowmax-client', args=[client.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='workflowmax/form.html', extra_context=context_vars)
コード例 #8
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def edit_client(request, object_id):
  try:
    object_id = int(object_id)
  except ValueError:
    return HttpResponseRedirect(reverse('workflowmax-client-list'))
  context_vars = dict()
  context_vars['header'] = '%s %d' % (capfirst(_('client')), object_id)
  client = Client.objects.get(id=object_id)
  form = ClientForm(client.to_dict())
  helper = FormHelper()
  helper.form_class = 'uniform'
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  if request.method == "POST":
    form = ClientForm(request.POST, request.FILES)
    if form.is_valid():
      client.name = form.cleaned_data['name']
      client.address = form.cleaned_data['address']
      client.postal_address = form.cleaned_data['postal_address']
      client.phone = form.cleaned_data['phone']
      client.fax = form.cleaned_data['fax']
      client.website = form.cleaned_data['website']
      client.referral_source = form.cleaned_data['referral_source']
      client.save()
      return HttpResponseRedirect(reverse('workflowmax-client', args=[client.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='workflowmax/form.html', extra_context=context_vars)
コード例 #9
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def edit_client_contact(request, owner_id, object_id):
  try:
    owner_id = int(owner_id)
  except ValueError:
    return HttpResponseRedirect(reverse('workflowmax-client-list'))
  try:
    object_id = int(object_id)
  except ValueError:
    return HttpResponseRedirect(reverse('workflowmax-client', args=[owner_id]))
  context_vars = dict()
  context_vars['header'] = capfirst(_('edit contact %d') % object_id)
  contact = Contact.objects.get(id=object_id)
  form = ContactForm(contact.to_dict())
  helper = FormHelper()
  helper.form_class = 'uniform'
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  if request.method == "POST":
    form = ContactForm(request.POST, request.FILES)
    if form.is_valid():
      contact.name = form.cleaned_data['name']
      contact.mobile = form.cleaned_data['mobile']
      contact.email = form.cleaned_data['email']
      contact.phone = form.cleaned_data['phone']
      contact.position = form.cleaned_data['position']
      contact.save()
      return HttpResponseRedirect(reverse('workflowmax-client', args=[owner_id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='workflowmax/form.html', extra_context=context_vars)
コード例 #10
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def add_job(request):
  context_vars = dict()
  context_vars['header'] = capfirst(_('add new job'))
  form = AddJobForm()
  helper = FormHelper()
  helper.form_class = 'uniform'
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  if request.method == "POST":
    form = AddJobForm(request.POST, request.FILES)
    if form.is_valid():
      job = Job()
      job.name = form.cleaned_data['name']
      job.description = form.cleaned_data['description']
      job.start_date = strptime(form.cleaned_data['start_date'], '%Y%m%d')
      job.due_date = strptime(form.cleaned_data['due_date'], '%Y%m%d')
      client_id = form.cleaned_data['client']
      client = Client.objects.get(id=client_id)
      job.clients = [client,]
      job = job.save()
      return HttpResponseRedirect(reverse('workflowmax-job', args=[job.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='workflowmax/form.html', extra_context=context_vars)
コード例 #11
0
ファイル: views.py プロジェクト: keegancsmith/scrabble
def create_game(request):
    if request.method == 'POST':
        form = CreateGameForm(request.user, request.POST)
        if form.is_valid():
            game = form.create_game()
            return HttpResponseRedirect(game.get_absolute_url())
    else:
        form = CreateGameForm(request.user)

    # add in a submit button
    helper = FormHelper()
    submit = Submit('create','create a new game')
    helper.add_input(submit)

    # XXX need friends model
    friends = User.objects.exclude(pk=request.user.pk)
    friends_json = json.dumps(dict((u.pk, escape(u.username))
                              for u in friends))

    return {
        'form': form,
        'helper': helper,
        'friends': friends_json,
        'username': request.user.username
    }
コード例 #12
0
ファイル: forms.py プロジェクト: keegancsmith/Umonya-Website
 def helper(self):
     helper = FormHelper()
     submit = Submit('submit', 'Submit your application')
     helper.add_input(submit)
     helper.form_action = self.form_action
     helper.form_method = 'POST'
     return helper
コード例 #13
0
ファイル: views.py プロジェクト: IvanVrecicDev/Django
def view_helper(request):
    # Create the form
    if request.method == "POST":
        form = TestForm(request.POST)
    else:
        form = TestForm()

    # create a formHelper
    helper = FormHelper()

    # Add in a class and id
    helper.form_id = 'this-form-rocks'
    helper.form_class = 'search'

    # add in a submit and reset button
    submit = Submit('search', 'search this site')
    helper.add_input(submit)
    reset = Reset('reset', 'reset button')
    helper.add_input(reset)
    hidden = Hidden('not-seen', 'hidden value stored here')
    helper.add_input(hidden)

    # create the response dictionary
    response_dictionary = {
        'form': form,
        'helper': helper,
        'title': 'view helper test'
    }

    return render_to_response('test_app/generic_form_test.html',
                              response_dictionary,
                              context_instance=RequestContext(request))
コード例 #14
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def add_task(request, object_id):
  context_vars = dict()
  try:
    object_id = int(object_id)
    job = Job.objects.get(id=object_id)
  except ValueError:
    return HttpResponseRedirect(reverse('job-list'))
  except ObjectDoesNotExist:
    return HttpResponseRedirect(reverse('job-list'))

  form = TaskForm()
  helper = FormHelper()
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  
  if request.method == "POST":
    form = TaskForm(request.POST, request.FILES)
    if form.is_valid():
      task = form.save(commit=False)
      task.job = job
      task.save()
      form.save_m2m()
#      if settings.WORKFLOWMAX_APIKEY and settings.WORKFLOWMAX_ACCOUNTKEY:
#        task.wm_sync()
      messages.success(request, capfirst(_('task was added successfully')), fail_silently=True)
      return HttpResponseRedirect(reverse('job-view', args=[job.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='job/uniform.html', extra_context=context_vars)  
コード例 #15
0
ファイル: tests.py プロジェクト: typeish/django-uni-form
    def test_second_layout_multifield_column(self):
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                MultiField(
                    'is_company',
                    'email',
                    'password1', 
                    'password2',
                    css_id = "multifield_info",
                ),
                Column(
                    'first_name',
                    'last_name',
                    css_id = "column_name",
                )
            )
        )

        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)        
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        html = template.render(c)

        self.assertTrue('multiField' in html)
        self.assertTrue('formColumn' in html)
        self.assertTrue('id="multifield_info"' in html)
        self.assertTrue('id="column_name"' in html)
コード例 #16
0
ファイル: tests.py プロジェクト: typeish/django-uni-form
    def test_uni_form_formset(self):
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form testFormSet formset_helper %}
        """)
        
        form_helper = FormHelper()    
        form_helper.form_id = 'this-formset-rocks'
        form_helper.form_class = 'formsets-that-rock'
        form_helper.form_method = 'GET'
        form_helper.form_action = 'simpleAction'
                
        from django.forms.models import formset_factory
        TestFormSet = formset_factory(TestForm, extra = 3)
        testFormSet = TestFormSet()
        
        c = Context({'testFormSet': testFormSet, 'formset_helper': form_helper})
        html = template.render(c)        

        self.assertTrue('<form' in html)
        self.assertEqual(html.count('<form'), 1)
        self.assertTrue('class="uniForm formsets-that-rock"' in html)
        self.assertTrue('method="get"' in html)
        self.assertTrue('id="this-formset-rocks">' in html)
        self.assertTrue('action="%s"' % reverse('simpleAction') in html)
コード例 #17
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_change_layout_dynamically_delete_field(self):
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)

        form = TestForm()
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                Fieldset(
                    u'Company Data',
                    'is_company',
                    'email',
                    'password1',
                    'password2',
                    css_id="multifield_info",
                ), Column(
                    'first_name',
                    'last_name',
                    css_id="column_name",
                )))

        # We remove email field on the go
        # Layout needs to be adapted for the new form fields
        del form.fields['email']
        del form_helper.layout.fields[0].fields[1]

        c = Context({'form': form, 'form_helper': form_helper})
        html = template.render(c)
        self.assertFalse('email' in html)
コード例 #18
0
ファイル: views.py プロジェクト: pombredanne/xscheduling
def edit_note(request, owner_id, object_id):
  context_vars = dict()
  try:
    owner_id = int(owner_id)
    job = Job.objects.get(id=owner_id)
  except ValueError:
    return HttpResponseRedirect(reverse('job-list'))
  except ObjectDoesNotExist:
    return HttpResponseRedirect(reverse('job-list'))
  try:
    object_id = int(object_id)
    note = Note.objects.get(id=object_id)
  except ValueError:
    return HttpResponseRedirect(reverse('job-view', args=[job.id]))
  except ObjectDoesNotExist:
    return HttpResponseRedirect(reverse('job-view', args=[job.id]))

  form = NoteForm(instance=note)
  helper = FormHelper()
  submit = Submit('save',_('save'))
  helper.add_input(submit)
  
  if request.method == "POST":
    form = NoteForm(request.POST, request.FILES, instance=note)
    if form.is_valid():
      form.save()
#      if settings.WORKFLOWMAX_APIKEY and settings.WORKFLOWMAX_ACCOUNTKEY:
#        note.wm_sync()
      messages.success(request, capfirst(_('note was modified successfully')), fail_silently=True)
      return HttpResponseRedirect(reverse('job-view', args=[job.id]))
  
  context_vars['form'] = form
  context_vars['helper'] = helper
  return direct_to_template(request, template='job/uniform.html', extra_context=context_vars)
コード例 #19
0
ファイル: tests.py プロジェクト: Bauke900/dnevnik
    def test_change_layout_dynamically_delete_field(self):
        template = get_template_from_string(
            u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """
        )

        form = TestForm()
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                Fieldset(u"Company Data", "is_company", "email", "password1", "password2", css_id="multifield_info"),
                Column("first_name", "last_name", css_id="column_name"),
            )
        )

        # We remove email field on the go
        # Layout needs to be adapted for the new form fields
        del form.fields["email"]
        del form_helper.layout.fields[0].fields[1]

        c = Context({"form": form, "form_helper": form_helper})
        html = template.render(c)
        self.assertFalse("email" in html)
コード例 #20
0
ファイル: tests.py プロジェクト: Bauke900/dnevnik
    def test_second_layout_multifield_column_buttonholder_submit(self):
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                MultiField(
                    "Some company data", "is_company", "email", "password1", "password2", css_id="multifield_info"
                ),
                Column("first_name", "last_name", css_id="column_name"),
                ButtonHolder(Submit("Save", "Save", css_class="button white")),
            )
        )

        template = get_template_from_string(
            u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """
        )
        c = Context({"form": TestForm(), "form_helper": form_helper})
        html = template.render(c)

        self.assertTrue("multiField" in html)
        self.assertTrue("formColumn" in html)
        self.assertTrue('id="multifield_info"' in html)
        self.assertTrue('id="column_name"' in html)
        self.assertTrue('div class="buttonHolder">' in html)
        self.assertTrue('input type="submit"' in html)
        self.assertTrue('name="save"' in html)
コード例 #21
0
ファイル: tests.py プロジェクト: Bauke900/dnevnik
    def test_uni_form_formset(self):
        template = get_template_from_string(
            u"""
            {% load uni_form_tags %}
            {% uni_form testFormSet formset_helper %}
        """
        )

        form_helper = FormHelper()
        form_helper.form_id = "thisFormsetRocks"
        form_helper.form_class = "formsets-that-rock"
        form_helper.form_method = "POST"
        form_helper.form_action = "simpleAction"

        TestFormSet = formset_factory(TestForm, extra=3)
        testFormSet = TestFormSet()

        c = Context({"testFormSet": testFormSet, "formset_helper": form_helper, "csrf_token": _get_new_csrf_key()})
        html = template.render(c)

        self.assertEqual(html.count("<form"), 1)
        self.assertEqual(html.count("<input type='hidden' name='csrfmiddlewaretoken'"), 1)

        self.assertTrue('class="uniForm formsets-that-rock"' in html)
        self.assertTrue('method="post"' in html)
        self.assertTrue('id="thisFormsetRocks">' in html)
        self.assertTrue('action="%s"' % reverse("simpleAction") in html)
コード例 #22
0
ファイル: tests.py プロジェクト: EnTeQuAk/django-uni-form
    def test_uni_form_formset_with_helper_without_layout(self):
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form testFormSet formset_helper %}
        """)
        
        form_helper = FormHelper()    
        form_helper.form_id = 'thisFormsetRocks'
        form_helper.form_class = 'formsets-that-rock'
        form_helper.form_method = 'POST'
        form_helper.form_action = 'simpleAction'
                
        TestFormSet = formset_factory(TestForm, extra = 3)
        testFormSet = TestFormSet()
        
        c = Context({'testFormSet': testFormSet, 'formset_helper': form_helper, 'csrf_token': _get_new_csrf_key()})
        html = template.render(c)        

        self.assertEqual(html.count('<form'), 1)
        self.assertEqual(html.count("<input type='hidden' name='csrfmiddlewaretoken'"), 1)

        # Check formset management form
        self.assertTrue('form-TOTAL_FORMS' in html)
        self.assertTrue('form-INITIAL_FORMS' in html)
        self.assertTrue('form-MAX_NUM_FORMS' in html)
    
        self.assertTrue('class="uniForm formsets-that-rock"' in html)
        self.assertTrue('method="post"' in html)
        self.assertTrue('id="thisFormsetRocks">' in html)
        self.assertTrue('action="%s"' % reverse('simpleAction') in html)
コード例 #23
0
ファイル: tests.py プロジェクト: digi604/django-uni-form
    def test_uni_form_helper_form_attributes(self):
        

        template = get_template_from_string("""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)        

        # First we build a standard form helper
        form_helper = FormHelper()    
        form_helper.form_id = 'this-form-rocks'
        form_helper.form_class = 'forms-that-rock'
        form_helper.form_method = 'GET'
    
        # now we render it
        c = Context({'form':TestForm(),'form_helper':form_helper})            
        html = template.render(c)        
        # Lets make sure everything loads right
        self.assertTrue("""<form""" in html)                
        self.assertTrue("""class="uniForm forms-that-rock" """ in html)
        self.assertTrue("""method="get" """ in html)
        self.assertTrue("""id="this-form-rocks">""" in html)        
        
        # now lets remove the form tag and render it again. All the True items above
        # should now be false because the form tag is removed.
        form_helper.form_tag = False
        c = Context({'form':TestForm(),'form_helper':form_helper})            
        html = template.render(c)        
        self.assertFalse("""<form""" in html)        
        self.assertFalse("""id="this-form-rocks">""" in html)                
        self.assertFalse("""class="uniForm forms-that-rock" """ in html)
        self.assertFalse("""method="get" """ in html)
        self.assertFalse("""id="this-form-rocks">""" in html)
コード例 #24
0
ファイル: views.py プロジェクト: kennethlove/opencomparison
def profile_edit(request, template_name="profiles/profile_edit.html"):

    helper = FormHelper()
    submit = Submit('edit','Edit')
    helper.add_input(submit)
    reset = Reset('reset','Reset')
    helper.add_input(reset)

    profile = get_object_or_404(Profile, user=request.user)
    form = ProfileForm(request.POST or None, instance=profile)

    if form.is_valid():
        form.save()
        msg = 'Profile edited'
        messages.add_message(request, messages.INFO, msg)
        return HttpResponseRedirect(reverse("profile_detail", kwargs={"username":profile.user.username }))

    return render_to_response(template_name,
        {
            "profile": profile,
            "form": form,
            "helper":helper,
        },
        context_instance=RequestContext(request)
    )
コード例 #25
0
ファイル: views.py プロジェクト: IvanVrecicDev/Django
def csrf_token_test(request):

    # Create the form
    if request.method == "POST":
        form = TestForm(request.POST)
    else:
        form = TestForm()

    helper = FormHelper()
    helper.use_csrf_protection = True

    # add in a submit and reset button
    success = Submit('check-csrf', 'Check CSRF')
    helper.add_input(success)

    # create the response dictionary
    response_dictionary = {
        'form': form,
        'helper': helper,
        'title': 'CSRF token test'
    }

    return render_to_response('test_app/generic_form_test.html',
                              response_dictionary,
                              context_instance=RequestContext(request))
コード例 #26
0
    def setUp(self):

        self.style = '<style>.formRow{color:red;}</style>'

        layout = Layout(
            # first fieldset shows the company
            Fieldset('', 'is_company'),
            # second fieldset shows the contact info
            Fieldset(
                'Contact details',
                'email',
                Row('password1', 'password2'),
                'first_name',
                'last_name',
            ))

        form_helper = FormHelper()
        form_helper.add_layout(layout)

        self.c = Context({
            'formset': TestFormset(),
            'formset_helper': form_helper
        })

        template = get_template_from_string("""
{% load uni_form_tags %}
{% uni_form_set formset formset_helper %}
        """)
        self.html = template.render(self.c)
コード例 #27
0
ファイル: tests.py プロジェクト: Bauke900/dnevnik
 def test_invalid_helper_method(self):
     form_helper = FormHelper()
     try:
         form_helper.form_method = "superPost"
         self.fail("Setting an invalid form_method within the helper should raise an Exception")
     except FormHelpersException:
         pass
コード例 #28
0
ファイル: tests.py プロジェクト: digi604/django-uni-form
    def setUp(self):

        form_helper = FormHelper()
        form_helper.form_id = 'this-formset-rocks'
        form_helper.form_class = 'formsets-that-rock'
        form_helper.form_method = 'GET'

        self.c = Context({'formset': TestFormset(),
                          'formset_helper': form_helper})
コード例 #29
0
ファイル: tests.py プロジェクト: aschobba/profilbook
 def test_invalid_helper_method(self):
     form_helper = FormHelper()
     try:
         form_helper.form_method = "superPost"
         self.fail(
             "Setting an invalid form_method within the helper should raise an Exception"
         )
     except FormHelpersException:
         pass
コード例 #30
0
ファイル: forms.py プロジェクト: tfmorris/recollection
class ViewShareRegistrationForm(RegistrationForm):

    username = forms.RegexField(
        regex=r'^[\w.-]+$',
        max_length=30,
        widget=forms.TextInput(attrs={'class': 'required'}),
        label=_("Username"),
        error_messages={'invalid': _invalid_username_})

    organization = forms.CharField(
        required=True,
        max_length=100,
        label=_("Name"))

    org_type = forms.CharField(
        label=_("Type of Organization"),
        max_length=100,
        required=True)

    org_state = forms.ChoiceField(
        label=_("Organization State"),
        choices=_state_list_,
        required=False)

    reason = forms.CharField(
        label=_(" "),
        required=True,
        widget=forms.Textarea)

    def __init__(self, *args, **kwargs):
        super(ViewShareRegistrationForm, self).__init__(*args, **kwargs)
        org_types = models.OrganizationType.objects.all().order_by("value")

        self.org_type_choices = json.dumps([b.value for b in org_types])
#        self.fields["username"].regex = r"^[\w.-_]+$"

        self.helper = FormHelper()
        self.helper.layout = Layout(
                Fieldset("User Information",
                    "username",
                    "email",
                    "password1",
                    "password2",
                    css_class="inlineLabels"),

                Fieldset("Describe your Organization",
                    "organization",
                    "org_type",
                    "org_state",
                    css_class="inlineLabels"),

                Fieldset("How do you plan to use Viewshare?",
                    "reason",
                    css_class="inlineLabels")
            )
        self.helper.add_input(Submit('add', "Sign Up"))
コード例 #31
0
ファイル: forms.py プロジェクト: mithlesh4257/django-aadhaar
    def set_helper(self):
        print "AadhaarLoginForm.helper In helper"
        #form = AadhaarLoginForm()
        helper = FormHelper()
        reset = Reset('', 'Reset')
        helper.add_input(reset)
        submit = Submit('', 'Authenticate')
        helper.add_input(submit)
        helper.form_action = '/aadhaar/authenticate/' + self.detail
        helper.form_method = 'POST'
        helper.form_class = "blueForms"

        style = """
<style>
fieldset.formRow {
         margin-bottom: 1em;
         border-width: 0 0 1px 0;
         border-color:#CCCCCC;
         border-style:solid;
}
</style>
"""
        common_layout = Layout(
            Fieldset(
                'Required Parameters',
                'aadhaar_id',
                'aadhaar_attributes',
            ))
        pi_layout = Layout(
            Fieldset(
                "Personally Identifiable Information",
                'aadhaar_pi_match',
                'aadhaar_name',
                'aadhaar_dob',
                'aadhaar_age',
                'aadhaar_gender',
                'aadhaar_email',
                'aadhaar_phone',
            ))
        pa_layout = Layout(
            Fieldset("Address", 'aadhaar_pa_match', 'aadhaar_co',
                     'aadhaar_house', 'aadhaar_street', 'aadhaar_landmark',
                     'aadhaar_locality', 'aadhaar_vtc', 'aadhaar_subdist',
                     'aadhaar_district', 'aadhaar_state', 'aadhaar_pincode',
                     'aadhaar_postoffice'))

        if self.detail == "personal":
            layout = Layout(common_layout, pi_layout)
        elif self.detail == "address":
            layout = Layout(common_layout, pa_layout)
        else:
            layout = Layout(common_layout, pi_layout, pa_layout)

        helper.layout = layout

        self.helper = helper
コード例 #32
0
ファイル: views.py プロジェクト: 314l5926/django-uni-form
def view_helper(request):
    # Create the form
    if request.method == "POST":
        form = TestForm(request.POST)
    else:
        form = TestForm()

    # create a formHelper
    helper = FormHelper()

    # Add in a class and id
    helper.form_id = 'this-form-rocks'
    helper.form_class = 'search'

    # add in a submit and reset button
    submit = Submit('search','search this site')
    helper.add_input(submit)
    reset = Reset('reset','reset button')
    helper.add_input(reset)
    hidden = Hidden('not-seen','hidden value stored here')
    helper.add_input(hidden)


    # create the response dictionary
    response_dictionary = {'form':form, 'helper': helper, 'title':'view helper test'}
    
    return render_to_response('test_app/generic_form_test.html', 
        response_dictionary, 
        context_instance=RequestContext(request))   
コード例 #33
0
ファイル: toolcontroller.py プロジェクト: agapow/Amergin
	def render (self, request, dct):
		## Preconditions & preparation:
		results = msgs = None
		cls = self.__class__
		
		## Main:
		# instantiate form in one of several ways ...
		form_cls = cls.ToolForm
		# if the form has been submitted...
		if request.method == 'POST':
			form = form_cls (request.POST, request.FILES)
			# if the form is valid
			if form.is_valid():
				# get the clean data and do the work
				msgs, results = self.process_form (form.cleaned_data)
			else:
				msgs, results = (
					messages.Error ('there was a problem processing the form'),
				)
		else:
			# if you're coming to the form anew, make an unbound form
			form = form_cls()

		helper = FormHelper()
		
		# Add in a class and id
		helper.form_id = 'this-form-rocks'
		helper.form_class = 'tool_form'
		
		# if necessary, do fieldsets
		if cls.fieldsets:
			sets = []
			for field_pair in cls.fieldsets:
				if (isinstance (field_pair, basestring)):
					# if just a naked field name
					field_pair = ['', field_pair]
				sets.append (Fieldset (*field_pair))
			helper.add_layout (Layout(*sets))
					

		# add in submit actions and a reset button
		for button in cls.actions:
			submit = Submit (button[0], button[1])
			helper.add_input (submit)
		reset = Reset ('reset','Reset form')
		helper.add_input (reset)
		
		## Postconditions & return:
		context = self.context()
		context.update ({
			'identifier' : self.identifier,
			'title' : self.title,
			'description': self.description,
			'form': form,
			'results': results,
			'msgs': msgs,
			'helper': helper,
		})
		return render_to_response ('relais.amergin/tool.html', context,
			context_instance=RequestContext(request))
コード例 #34
0
    def setUp(self):

        form_helper = FormHelper()
        form_helper.form_id = 'this-formset-rocks'
        form_helper.form_class = 'formsets-that-rock'
        form_helper.form_method = 'GET'

        self.c = Context({
            'formset': TestFormset(),
            'formset_helper': form_helper
        })
コード例 #35
0
ファイル: tests.py プロジェクト: maraujop/django-uni-form
    def test_csrf_token_GET_form(self):
        form_helper = FormHelper()    
        form_helper.form_method = 'GET'
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)        

        c = Context({'form': TestForm(), 'form_helper': form_helper, 'csrf_token': _get_new_csrf_key()})
        html = template.render(c)
        
        self.assertFalse("<input type='hidden' name='csrfmiddlewaretoken'" in html)                
コード例 #36
0
def advanced_search(request, reset=False):
    marketplace = request.marketplace

    if reset:
        form = AdvancedSearchForm(marketplace=marketplace)
    else:
        form = AdvancedSearchForm(marketplace=marketplace, data=request.GET)


    if request.GET.get("do"):

        result_list = []
        if form.is_valid():
    
            result_list = form.search()
            
            pager = Paginator(result_list, settings.HAYSTACK_SEARCH_RESULTS_PER_PAGE)

            try:
                page = int(request.GET.get("page", "1"))
            except:
                page = 1

            try:
                paginator = pager.page(page)
            except (EmptyPage, InvalidPage):
                raise Http404

            paged = (pager.num_pages > 1)

            return render_to_response(
                "%s/buy/advanced_search_results.html" % marketplace.template_prefix, 
                {"result_list": paginator, "form": form,  
                 "pages": pager.page_range, "paged": paged, "total": pager.count, 
                 "view_mode": form.cleaned_data["view_by"]}, RequestContext(request))

    form_helper = FormHelper()
    layout = Layout(
        Fieldset("", "q"),
        Fieldset("", Row("categories", "subcategories")),
        Fieldset("", "include"),
        Fieldset("", Row("from_price", "to_price")),
        Fieldset("", "sort"),
        Fieldset("", "view_by"),
    )
    form_helper.add_layout(layout)
    submit = Submit("do", _("Search"))
    submit.field_classes = "button_primary"
    form_helper.add_input(submit)

    return render_to_response(
        "%s/buy/advanced_search.html" % marketplace.template_prefix, 
        {"form": form, "helper": form_helper} , RequestContext(request))
コード例 #37
0
ファイル: basetool.py プロジェクト: agapow/Amergin
    def index(cls, request):
        ## Preconditions & preparation:
        results = msgs = None

        ## Main:
        # instantiate form in one of several ways ...
        form_cls = cls.ToolForm
        # if the form has been submitted...
        if request.method == "POST":
            form = form_cls(request.POST, request.FILES)
            # if the form is valid
            if form.is_valid():
                # get the clean data and do the work
                msgs, results = cls.process_form(form.cleaned_data)
            else:
                msgs = [messages.Error("there was problem processing the form")]
        else:
            # if you're coming to the form anew, make an unbound form
            form = form_cls()

        helper = FormHelper()

        # Add in a class and id
        helper.form_id = "this-form-rocks"
        helper.form_class = "tool_form"

        # if necessary, do fieldsets
        if cls.fieldsets:
            sets = []
            for field_pair in cls.fieldsets:
                if isinstance(field_pair, basestring):
                    # if just a naked field name
                    field_pair = ["", field_pair]
                sets.append(Fieldset(*field_pair))
            helper.add_layout(Layout(*sets))

            # add in submit actions and a reset button
        for button in cls.actions:
            submit = Submit(button[0], button[1].title())
            helper.add_input(submit)
        reset = Reset("reset", "Reset form")
        helper.add_input(reset)

        ## Postconditions & return:
        return render_to_response(
            "relais.amergin/base_tool.html",
            {
                "identifier": cls.identifier,
                "title": cls.title,
                "description": cls.description,
                "form": form,
                "results": results,
                "messages": msgs,
                "helper": helper,
            },
        )
コード例 #38
0
ファイル: forms.py プロジェクト: pingali/bhagiratha_alt
 def set_helper(self):
     helper = FormHelper()
     reset = Reset('', 'Reset')
     helper.add_input(reset)
     submit = Submit('', 'Submit')
     helper.add_input(submit)
     helper.form_action = ''
     helper.form_method = 'POST'
     helper.form_class = "blueForms"
     self.helper = helper
コード例 #39
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_double_rendered_field(self):
        form = TestForm()

        form_helper = FormHelper()
        form_helper.add_layout(Layout('is_company', 'is_company'))

        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        settings.UNIFORM_FAIL_SILENTLY = False
        self.assertRaises(Exception, lambda: template.render(c))
        del settings.UNIFORM_FAIL_SILENTLY
コード例 #40
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_uni_form_helper_inputs(self):
        form_helper = FormHelper()
        submit = Submit('my-submit', 'Submit', css_class="button white")
        reset = Reset('my-reset', 'Reset')
        hidden = Hidden('my-hidden', 'Hidden')
        button = Button('my-button', 'Button')
        form_helper.add_input(submit)
        form_helper.add_input(reset)
        form_helper.add_input(hidden)
        form_helper.add_input(button)

        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        html = template.render(c)

        self.assertTrue('class="submit submitButton button white"' in html)
        self.assertTrue('id="submit-id-my-submit"' in html)

        self.assertTrue('class="reset resetButton"' in html)
        self.assertTrue('id="reset-id-my-reset"' in html)

        self.assertTrue('name="my-hidden"' in html)

        self.assertTrue('class="button"' in html)
        self.assertTrue('id="button-id-my-button"' in html)
コード例 #41
0
ファイル: tests.py プロジェクト: adamn/django-uni-form
    def test_uni_form_helper_generic_attributes(self):
        
        form_helper = FormHelper()    
        form_helper.form_id = 'this-form-rocks'
        form_helper.form_class = 'forms-that-rock'
        form_helper.form_method = 'GET'
    
        c = Context({'form':TestForm(),'form_helper':form_helper})            
        template = get_template_from_string("""
{% load uni_form_tags %}
{% uni_form form form_helper %}
        """)
        html = template.render(c)        

        good_response = """<form action="" class="uniForm forms-that-rock" method="POST" id="this-form-rocks" >"""
コード例 #42
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_layout_invalid_unicode_characters(self):
        # Adds a BooleanField that uses non valid unicode characters "ñ"
        form = TestForm()

        form_helper = FormHelper()
        form_helper.add_layout(Layout('españa'))

        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        settings.UNIFORM_FAIL_SILENTLY = False
        self.assertRaises(Exception, lambda: template.render(c))
        del settings.UNIFORM_FAIL_SILENTLY
コード例 #43
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_i18n(self):
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form.helper %}
        """)
        form = TestForm()
        form_helper = FormHelper()
        form_helper.layout = Layout(
            HTML(_("i18n text")),
            Fieldset(
                _("i18n legend"),
                'first_name',
                'last_name',
            ))
        form.helper = form_helper

        html = template.render(Context({'form': form}))
コード例 #44
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_CSRF_token_GET_form(self):
        form_helper = FormHelper()
        form_helper.form_method = 'GET'
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)

        c = Context({
            'form': TestForm(),
            'form_helper': form_helper,
            'csrf_token': _get_new_csrf_key()
        })
        html = template.render(c)

        self.assertFalse(
            "<input type='hidden' name='csrfmiddlewaretoken'" in html)
コード例 #45
0
 def helper(self):
     form = LoginForm()
     helper = FormHelper()
     reset = Reset('', 'Reset')
     helper.add_input(reset)
     submit = Submit('', 'Authenticate')
     helper.add_input(submit)
     helper.form_action = '/account/aadhaar/authenticate'
     helper.form_method = 'POST'
     return helper
コード例 #46
0
ファイル: forms.py プロジェクト: zuii/oauth2app
 def helper(self):
     form = SignupForm()
     helper = FormHelper()
     reset = Reset('', 'Reset')
     helper.add_input(reset)
     submit = Submit('', 'Sign Up')
     helper.add_input(submit)
     helper.form_action = '/account/signup'
     helper.form_method = 'POST'
     return helper
コード例 #47
0
ファイル: forms.py プロジェクト: zuii/oauth2app
 def helper(self):
     form = LoginForm()
     helper = FormHelper()
     reset = Reset('', 'Reset')
     helper.add_input(reset)
     submit = Submit('', 'Log In')
     helper.add_input(submit)
     helper.form_action = '/account/login'
     helper.form_method = 'POST'
     return helper
コード例 #48
0
ファイル: forms.py プロジェクト: zuii/oauth2app
 def helper(self):
     form = CreateClientForm()
     helper = FormHelper()
     reset = Reset('', 'Reset')
     helper.add_input(reset)
     submit = Submit('', 'Create Client')
     helper.add_input(submit)
     helper.form_action = '/account/clients'
     helper.form_method = 'POST'
     return helper
コード例 #49
0
    def helper(self):

        print "ProfileForm.helper In helper"
        form = ProfileForm()
        helper = FormHelper()
        reset = Reset('', 'Reset')
        helper.add_input(reset)
        submit = Submit('', 'Update')
        helper.add_input(submit)
        helper.form_action = '/account/profile/edit'
        helper.form_method = 'POST'
        helper.form_class = "blueForms"

        return helper
コード例 #50
0
ファイル: forms.py プロジェクト: IvanVrecicDev/Django
class LayoutTestForm(forms.Form):

    is_company = forms.CharField(label="company",
                                 required=False,
                                 widget=forms.CheckboxInput())
    email = forms.CharField(label="email",
                            max_length=30,
                            required=True,
                            widget=forms.TextInput())
    password1 = forms.CharField(label="password",
                                max_length=30,
                                required=True,
                                widget=forms.PasswordInput())
    password2 = forms.CharField(label="re-enter password",
                                max_length=30,
                                required=True,
                                widget=forms.PasswordInput())
    first_name = forms.CharField(label="first name",
                                 max_length=30,
                                 required=True,
                                 widget=forms.TextInput())
    last_name = forms.CharField(label="last name",
                                max_length=30,
                                required=True,
                                widget=forms.TextInput())

    # Attach a formHelper to your forms class.
    helper = FormHelper()

    # create some HTML that you want in the page
    style = """
    <style>
        .formRow {
            color: red;
        }
    </style>
    
    """
    # create the layout object
    layout = Layout(
        # first fieldset shows the company
        Fieldset('', 'is_company'),

        # second fieldset shows the contact info
        Fieldset(
            'Contact details',
            HTML(style),
            'email',
            Row('password1', 'password2'),
            'first_name',
            'last_name',
        ))

    helper.add_layout(layout)

    submit = Submit('add', 'Add this contact')
    helper.add_input(submit)
コード例 #51
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_layout_within_layout(self):
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                Layout(
                    MultiField(
                        "Some company data",
                        'is_company',
                        'email',
                        css_id="multifield_info",
                    ), ),
                Column(
                    'first_name',
                    # 'last_name', Missing a field on purpose
                    css_id="column_name",
                    css_class="columns",
                ),
                ButtonHolder(Submit('Save', 'Save',
                                    css_class='button white'), ),
                Div(
                    'password1',
                    'password2',
                    css_id="custom-div",
                    css_class="customdivs",
                )))

        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        html = template.render(c)

        self.assertTrue('multiField' in html)
        self.assertTrue('formColumn' in html)
        self.assertTrue('id="multifield_info"' in html)
        self.assertTrue('id="column_name"' in html)
        self.assertTrue('class="formColumn columns"' in html)
        self.assertTrue('class="buttonHolder">' in html)
        self.assertTrue('input type="submit"' in html)
        self.assertTrue('name="save"' in html)
        self.assertTrue('id="custom-div"' in html)
        self.assertTrue('class="customdivs"' in html)
        self.assertTrue('last_name' in html)
コード例 #52
0
    def test_uni_form_helper_generic_attributes(self):

        form_helper = FormHelper()
        form_helper.form_id = 'this-form-rocks'
        form_helper.form_class = 'forms-that-rock'
        form_helper.form_method = 'GET'

        c = Context({'form': TestForm(), 'form_helper': form_helper})
        template = get_template_from_string("""
{% load uni_form_tags %}
{% uni_form form form_helper %}
        """)
        html = template.render(c)

        good_response = """<form action="" class="uniForm forms-that-rock" method="POST" id="this-form-rocks" >"""

        self.assertTrue(
            '<form action="" class="uniForm forms-that-rock" method="GET" id="this-form-rocks" >'
            in html)
コード例 #53
0
class MUAccountForm(MUAccountBaseForm):

    # this displays how to attach a formHelper to your forms class.
    helper = FormHelper()
    helper.add_input(Submit('submit', _('Save')))
    is_multipart = True

    def __init__(self, *args, **kwargs):
        super(MUAccountForm, self).__init__(*args, **kwargs)
        if 'owner' in self.fields:
            self.fields['owner'].widget = forms.HiddenInput()
コード例 #54
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_layout_fieldset_row_html_with_unicode_fieldnames(self):
        form_helper = FormHelper()
        form_helper.add_layout(
            Layout(
                Fieldset(u'Company Data',
                         u'is_company',
                         css_id="fieldset_company_data",
                         css_class="fieldsets"),
                Fieldset(
                    u'User Data',
                    u'email',
                    Row(u'password1',
                        u'password2',
                        css_id="row_passwords",
                        css_class="rows"),
                    HTML('<a href="#" id="testLink">test link</a>'),
                    HTML(u"""
                        {% if flag %}{{ message }}{% endif %}
                    """),
                    u'first_name',
                    u'last_name',
                )))

        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)
        c = Context({
            'form': TestForm(),
            'form_helper': form_helper,
            'flag': True,
            'message': "Hello!",
        })
        html = template.render(c)

        self.assertTrue('id="fieldset_company_data"' in html)
        self.assertTrue('class="fieldsets' in html)
        self.assertTrue('id="row_passwords"' in html)
        self.assertTrue('class="formRow rows"' in html)
        self.assertTrue('Hello!' in html)
        self.assertTrue('testLink' in html)
コード例 #55
0
def advanced_search(request, reset=False):
    marketplace = request.marketplace

    if reset:
        form = AdvancedSearchForm(marketplace=marketplace)
    else:
        form = AdvancedSearchForm(marketplace=marketplace, data=request.GET)

    if request.GET.get("do"):

        result_list = []
        if form.is_valid():

            result_list = form.search()

            pager = Paginator(result_list,
                              settings.HAYSTACK_SEARCH_RESULTS_PER_PAGE)

            try:
                page = int(request.GET.get("page", "1"))
            except:
                page = 1

            try:
                paginator = pager.page(page)
            except (EmptyPage, InvalidPage):
                raise Http404

            paged = (pager.num_pages > 1)

            return render_to_response(
                "%s/buy/advanced_search_results.html" %
                marketplace.template_prefix, {
                    "result_list": paginator,
                    "form": form,
                    "pages": pager.page_range,
                    "paged": paged,
                    "total": pager.count,
                    "view_mode": form.cleaned_data["view_by"]
                }, RequestContext(request))

    form_helper = FormHelper()
    layout = Layout(
        Fieldset("", "q"),
        Fieldset("", Row("categories", "subcategories")),
        Fieldset("", "include"),
        Fieldset("", Row("from_price", "to_price")),
        Fieldset("", "sort"),
        Fieldset("", "view_by"),
    )
    form_helper.add_layout(layout)
    submit = Submit("do", _("Search"))
    submit.field_classes = "button_primary"
    form_helper.add_input(submit)

    return render_to_response(
        "%s/buy/advanced_search.html" % marketplace.template_prefix, {
            "form": form,
            "helper": form_helper
        }, RequestContext(request))
コード例 #56
0
def profile_edit(request, template_name="profiles/profile_edit.html"):

    helper = FormHelper()
    submit = Submit('edit', 'Edit')
    helper.add_input(submit)
    reset = Reset('reset', 'Reset')
    helper.add_input(reset)

    profile = get_object_or_404(Profile, user=request.user)
    form = ProfileForm(request.POST or None, instance=profile)

    if form.is_valid():
        form.save()
        msg = 'Profile edited'
        messages.add_message(request, messages.INFO, msg)
        return HttpResponseRedirect(
            reverse("profile_detail",
                    kwargs={"username": profile.user.username}))

    return render_to_response(template_name, {
        "profile": profile,
        "form": form,
        "helper": helper,
    },
                              context_instance=RequestContext(request))
コード例 #57
0
    def test_uni_form_helper_form_attributes(self):

        template = get_template_from_string("""
            {% load uni_form_tags %}
            {% uni_form form form_helper %}
        """)

        # First we build a standard form helper
        form_helper = FormHelper()
        form_helper.form_id = 'this-form-rocks'
        form_helper.form_class = 'forms-that-rock'
        form_helper.form_method = 'GET'

        # now we render it
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        html = template.render(c)
        # Lets make sure everything loads right
        self.assertTrue("""<form""" in html)
        self.assertTrue("""class="uniForm forms-that-rock" """ in html)
        self.assertTrue("""method="get" """ in html)
        self.assertTrue("""id="this-form-rocks">""" in html)

        # now lets remove the form tag and render it again. All the True items above
        # should now be false because the form tag is removed.
        form_helper.form_tag = False
        c = Context({'form': TestForm(), 'form_helper': form_helper})
        html = template.render(c)
        self.assertFalse("""<form""" in html)
        self.assertFalse("""id="this-form-rocks">""" in html)
        self.assertFalse("""class="uniForm forms-that-rock" """ in html)
        self.assertFalse("""method="get" """ in html)
        self.assertFalse("""id="this-form-rocks">""" in html)
コード例 #58
0
ファイル: forms.py プロジェクト: peicheng/antxetamedia
    def helper(self):
        helper = FormHelper()
        helper.add_input(Submit('submit', _('Search')))

        helper.form_action = reverse('search:search')
        helper.form_method = 'get'
        return helper
コード例 #59
0
ファイル: tests.py プロジェクト: aschobba/profilbook
    def test_uni_form_formset_with_helper_without_layout(self):
        template = get_template_from_string(u"""
            {% load uni_form_tags %}
            {% uni_form testFormSet formset_helper %}
        """)

        form_helper = FormHelper()
        form_helper.form_id = 'thisFormsetRocks'
        form_helper.form_class = 'formsets-that-rock'
        form_helper.form_method = 'POST'
        form_helper.form_action = 'simpleAction'

        TestFormSet = formset_factory(TestForm, extra=3)
        testFormSet = TestFormSet()

        c = Context({
            'testFormSet': testFormSet,
            'formset_helper': form_helper,
            'csrf_token': _get_new_csrf_key()
        })
        html = template.render(c)

        self.assertEqual(html.count('<form'), 1)
        self.assertEqual(
            html.count("<input type='hidden' name='csrfmiddlewaretoken'"), 1)

        # Check formset management form
        self.assertTrue('form-TOTAL_FORMS' in html)
        self.assertTrue('form-INITIAL_FORMS' in html)
        self.assertTrue('form-MAX_NUM_FORMS' in html)

        self.assertTrue('class="uniForm formsets-that-rock"' in html)
        self.assertTrue('method="post"' in html)
        self.assertTrue('id="thisFormsetRocks">' in html)
        self.assertTrue('action="%s"' % reverse('simpleAction') in html)
コード例 #60
0
ファイル: views.py プロジェクト: IvanVrecicDev/Django
def view_helper_set_action(request):

    # Create the form
    form = TestForm()

    # create a formHelper
    helper = FormHelper()

    # add in a submit and reset button
    submit = Submit('send-away', 'Send to other page')
    helper.add_input(submit)

    helper.form_action = 'view_helper'
    helper.form_method = 'GET'

    # create the response dictionary
    response_dictionary = {
        'form': form,
        'helper': helper,
        'title': 'view helper action'
    }

    return render_to_response('test_app/generic_form_test.html',
                              response_dictionary,
                              context_instance=RequestContext(request))