示例#1
0
 def test_contact_form_valid(self):
     """
     Testing contact_form is valid
     """
     form = ContactForm(
         data={
             'first_name': 'test_first',
             'last_name': 'test_last',
             'contact_email': '*****@*****.**',
             'contact_phone': 'test_phone',
             'subject': 'test_subject',
             'message': 'test_message',
         })
     self.assertTrue(form.is_valid())
示例#2
0
 def test_contact_form_with_too_long_email_data(self):
     """
     Verify valid data returns correct response.
     """
     form = ContactForm(too_long_email_data)
     self.assertEqual(form.is_valid(), False, msg="Expected is_valid() to be False")
     self.assertEqual(form.is_bound, True, msg="Expected is_bound to be True")
     self.assertEqual(
         form.errors,
         {"email": [u"Ensure this value has at most 50 characters (it has 60)."]},
         msg="Error message does not match expected output.",
     )
     self.assertEqual(form.data, too_long_email_data, msg="")
     self.assertNotEqual(form.data, {}, msg="")
示例#3
0
 def test_contact_form_post_authenticated(self):
     test_user = User.objects.create_user(
         username="******", password="******"
     )
     test_user.save()
     login = self.client.login(username="******", password="******")
     form_data = {
         "username":"******",
         "email":"*****@*****.**",
         "message":"a test message as a string"
     }
     form = ContactForm(form_data)
     response = self.client.post(reverse("contact"), form_data, follow=True)
     self.assertTrue(form.is_valid())
示例#4
0
    def get(self, request, *args, **kwargs):
        logger.debug("Generating contact form")

        # Set initial values.
        initial = {
            'email': get_jwt_email(request=request, verify=False)
        }

        # Generate and render the form.
        form = ContactForm(initial=initial)
        if request.is_ajax():
            return render(request, 'contact/modal.html', {'contact_form': form})
        else:
            return render(request, 'contact/contact.html', {'contact_form': form})
示例#5
0
def change_picture(request, contact=None):
    """ """
    instance = User.objects.get(id=contact)
    if request.method == 'POST':
        form = ContactForm(request.POST, instance=instance)
        if form.is_valid():
            form.save()
            # EDIT CONTACT TRACKER
            # TODO: get this working
            # eureka (changed_data att of forms!)
            # ctype = ContentType.objects.get_for_model(instance)
            # tracker = Tracker.objects.create(
            #     created_time=datetime.now(),
            #     content_type=ctype,
            #     object_id=instance.id,
            #     updated_fields=str(" updated ") + str(form.changed_data),
            #     owner=request.user,
            #     action=action_text
            # )
            # tracker.save()
            # END EDIT CONTACT TRACKER
        return HttpResponseRedirect('/contacts/')
    else:
        contact = User.objects.get(id=contact)
        add_contact_form = ContactForm(instance=instance)
        profile_instance = UserProfile.objects.get(user=instance)
        add_userprofile_form = UserProfileForm(instance=profile_instance)
        boards = Board.objects.filter(archived=False)
        context_dict = {
            'site_title': "Contacts | Spearhead Systems",
            'page_name': "Edit a Contact",
            'add_contact_form': add_contact_form,
            'add_userprofile_form': add_userprofile_form,
            'contact': contact,
            'boards': boards,
        }
        return render(request, 'contacts/editcontact.html', context_dict)
示例#6
0
def contact(request):
    contact = get_object_or_404(ContactPage, pk=1)

    if request.method == 'POST':
        form = ContactForm(request.POST)

        if form.is_valid():
            name = request.POST.get('name', '')
            email = request.POST.get('email', '')
            subject = request.POST.get('subject', '')
            body = request.POST.get('body', '')

            template = get_template('contact/email.html')
            context = {
                'name': name,
                'email': email,
                'subject': subject,
                'body': body
            }
            content = template.render(context)

            email = EmailMessage("Wiadomość z formularza kontaktowego",
                                 content,
                                 "blog" + '', ['*****@*****.**'],
                                 headers={'Reply-To': email})
            email.content_subtype = 'html'
            email.send()

            return redirect('contact:contact_thank_you')
    else:
        form = ContactForm()

    return render(request, 'contact/contact.html', {
        'contact': contact,
        'form': form
    })
示例#7
0
 def test_contact_form_invalid(self):
     """
     Testing contact_form is invalid
     """
     form = ContactForm(
         data={
             'first_name': 'test_first',
             'last_name': 'test_last',
             'contact_email': 'test_email',
             'contact_phone': 'test_phone',
             'subject': 'test_subject',
             'message': 'test_message',
         })
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
示例#8
0
def contact_form(request):

    if request.method == 'POST':
        form = ContactForm(request.POST)

        if form.is_valid():
            subject = form.cleaned_data['subject']
            message = form.cleaned_data['message']
            sender = form.cleaned_data['sender']
            myself = form.cleaned_data['myself']
            recipients = [settings.EMAIL_HOST_USER]

            if myself:
                recipients.append(sender)
            try:
                send_mail(subject, message, sender, recipients)
            except BadHeaderError:
                return HttpResponse('無効なヘッダーが見つかりました。')
            return redirect('contact:complete')

    else:
        form = ContactForm()

    return TemplateResponse(request,'contact/contact_form.html',{'form': form})
def contact_view(request):
    if request.method == 'POST':
        form = ContactForm(request.POST)
        if form.is_valid():
            
            name = form.cleaned_data['name']
            email = form.cleaned_data['email']
            department = form.cleaned_data['department']
            roll_no = form.cleaned_data['roll_no']
            message = form.cleaned_data['message']

            contact.objects.create(name=name,email=email,department=department,roll_no=roll_no,message=message)
            
            return redirect('contact_view')
    return render(request,'contact.html')
示例#10
0
def contact_view(request):
    context = {}
    if request.method == 'GET':
        form = ContactForm()

    else:
        form = ContactForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data['name']
            from_email = form.cleaned_data['from_email']
            phone_number = form.cleaned_data['phone_number']
            subject = form.cleaned_data['subject']
            message = form.cleaned_data['message']
            try:
                full = message
                send_mail(name, full, from_email, ['*****@*****.**'])
                print(subject, from_email, message, phone_number, name)
                context[
                    'success_message'] = 'Your message has been sent.You will receive a reply ASAP'
                form = ContactForm()

            except BadHeaderError:
                return HttpResponse('Invalid Header found')
    return render(request, 'contact/contact.html', {})
示例#11
0
def contact_view(request):
    context = {}
    if request.method == 'GET':
        form = ContactForm()
    else:
        form = ContactForm(request.POST)

        if form.is_valid():
            name = form.cleaned_data['name']
            email = form.cleaned_data['email']
            comment = form.cleaned_data['comment']

            try:
                full = email + " " + comment
                send_mail(name, email, full, ['*****@*****.**'])
                full = email + " " + comment
                context[
                    "success_message"] = 'Successfully sent, You will receive a response ASAP'
                form = ContactForm()

            except BadHeaderError:
                return HttpResponse("Invalid")

    return render(request, 'contact/contact.html', context)
示例#12
0
def contact(request):
    if request.method == 'POST':
        form = ContactForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect(reverse('core:index') + '?ok')
            # var = form['name']
            # import pdb
            # pdb.set_trace()

        else:
            # import pdb
            # pdb.set_trace()
            return redirect(reverse('core:index') + '?notok')
            # return render(request, 'core/index.html', {'form':form})

    return redirect('/')
示例#13
0
def contact(request):
    contactForm = ContactForm
    context = {"contactForm": ContactForm}
    if request.method == "POST":
        contactForm = ContactForm(request.POST)
        if contactForm.is_valid:
            data = request.POST.copy()
            name = data.get('name')
            email = data.get('email')
            message = data.get('email_body') + " " + name + email
            destination = "*****@*****.**"
            subject = "name: " + name + " email: " + email
            send_mail(subject, message, email, [destination])
            messages.add_message(request, messages.INFO, "contact succsess")
        else:
            messages.add_message(request, messages.INFO, "contact fail")
        return render(request, 'contact.html', context=context)
    else:
        return render(request, 'contact.html', context=context)
示例#14
0
def contact(request):
    print("Tipo de metodo: {}", request.method)
    contactform = ContactForm(data=request.POST)
    if contactform.is_valid():
        name = request.POST.get('name', '')
        email = request.POST.get('email', '')
        content = request.POST.get('content', '')

        email = EmailMessage("Cafeteria: La Caffetiera",
                             "De {} <{}>\n\n{}".format(name, email, content),
                             "no_contestar", ["*****@*****.**"],
                             reply_to=[email])
        try:
            email.send()
            return redirect(reverse('contact') + "?ok")
        except:
            return redirect(reverse('contact') + "?fail")

    return render(request, 'contact/contact.html', {'form': contactform})
示例#15
0
def test_contact_form(admin, rf, mailoutbox):
    request = rf.request()
    request.user = admin
    data = {
        'name': admin.full_name,
        'email': admin.email,
        'email_subject': "My subject",
        'body': "First paragraph of message\n\nSecond paragraph of message.",
    }
    form = ContactForm(request=request, data=data)
    assert form.is_valid()
    form.save()
    assert len(mailoutbox) == 1
    message = mailoutbox[0]
    reply_to = u'%s <%s>' % (data['name'], data['email'])
    assert reply_to == message.extra_headers['Reply-To']
    subject = u'[%s] %s' % (settings.POOTLE_TITLE, data['email_subject'])
    assert subject == message.subject
    assert data['body'] in message.body
示例#16
0
def contact(request):
    data = Category.objects.filter(status=1, menu_display=1)
    form = ContactForm(request.POST or None, request.FILES or None)
    if form.is_valid():
        form.save()
        messages.add_message(request, messages.SUCCESS,
                             "सन्देश सफलतापूर्वक सबमिट गरियो")
        return redirect('contact')
    ######adds########
    all_adds = Advertisement.objects.all().order_by('id')
    adds_media = {
        'top_with_logo': all_adds[0],
        'below_menu_long': all_adds[1],
    }
    context = {
        'categories': data,
        'forms': form,
        'adds_media': adds_media,
    }
    return render(request, 'contact.html', context)
示例#17
0
def test_contactform_email_kwargs_request(p, srf, caisse, data):
    form = ContactForm(data)
    assert form.is_valid()
    kwargs = form.get_email_kwargs()
    assert kwargs['subject'] == 'RÉCLAMATION MRS'
    # do not enable before product team is ready
    assert caisse.liquidation_email in kwargs['to']
    assert 'Motif: J\'ai fait une erreur' in kwargs['body']

    # test the form save method
    obj = form.save()
    assert obj.caisse == caisse
    assert obj.email == data['email']
    assert obj.name == data['nom']
    assert obj.message == data['message']
    assert obj.mrsrequest is None

    # check that it attaches the request if it exists
    mrs = MRSRequest.objects.create(display_id=data['mrsrequest_display_id'])
    assert form.save().mrsrequest == mrs
示例#18
0
class Home(TemplateView):
    def get_queryset(self):
        return Skill.objects.all()

    template_name = "portfolio/home.html"
    projects = Project.objects.all()
    skills = Skill.objects.all()
    form = ContactForm()
    context = {'projects': projects, 'skills': skills}
    msg_sent = False

    def get(self, request, *args, **kwargs):
        if 'sent' in request.session:
            self.msg_sent = True
            del request.session['sent']
            request.session.modified = True
        else:
            self.msg_sent = False
        return render(
            request, self.template_name, {
                'projects': self.projects,
                'skills': self.skills,
                'skills': self.skills,
                'form': self.form,
                'msg_sent': self.msg_sent
            })

    def post(self, request, *args, **kwargs):
        contact_form = ContactForm(request.POST or None)
        if contact_form.is_valid():
            contact = contact_form.save()
            context = {
                'projects': self.projects,
                'skills': self.skills,
                'skills': self.skills,
                'form': self.form,
                'msg_sent': self.msg_sent
            }
            request.session['sent'] = 'msg_sent'
            return redirect("home")
        return self.render_to_response(context)
示例#19
0
def register(request):
    if request.method == "POST":
        form = RegisterForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, 'Successfuly registred')
        else:
            context = {
                'site_info': SiteInfo.objects.first(),
                'attandants': Attandant.objects.all(),
                'morning_programs':
                OurProgram.objects.filter(time__lte="12:00"),
                'noon_programs': OurProgram.objects.filter(time__gt="12:00"),
                'faq': FAQ.objects.all(),
                'sponsors': Sponsor.objects.all(),
                'contact_form': ContactForm(),
                'register_form': form,
                'anchor': 'register'
            }
            return render(request, 'home.html', context)
    return redirect(reverse("home:home") + "#register")
示例#20
0
def ilist(request):
    if request.method == 'POST':
        form = iform(request.POST, request.FILES)
        if form.is_valid():
            filter_selected = form.cleaned_data.get('ifilter')
            newpic = MyImages(title=form.cleaned_data.get('title'),
                              ifile=request.FILES['ifile'])
            newpic.save()

            return HttpResponseRedirect(reverse('list'))

    else:
        form = iform()
        contact_form = ContactForm()

    images = MyImages.objects.all()
    return render(request, 'list.html', {
        'images': images,
        'form': form,
        'contact_form': contact_form
    })
示例#21
0
文件: views.py 项目: LucienD/Mobct
def contact_form(request):
    if not request.user.is_anonymous():
        user_first_name = request.user.first_name
        user_last_name = request.user.last_name
        user_email = request.user.email
    else:
        user_first_name = ''
        user_last_name = ''
        user_email = ''

    form = ContactForm(request.POST or None,
                       initial={
                           'first_name': user_first_name,
                           'last_name': user_last_name,
                           'email': user_email
                       })

    context = {
        'form': form,
    }

    if request.method == 'POST':
        if form.is_valid():
            # Envoi mail
            sender = settings.MANAGERS[0][0] + ' <' + settings.MANAGERS[0][
                1] + '>'
            subject = u'[mobycity.net] ' + form.cleaned_data['subject']
            message = u'Vous avez reçu un nouveau message de ' + form.cleaned_data[
                'first_name'] + ' ' + form.cleaned_data[
                    'last_name'] + ' (' + form.cleaned_data[
                        'email'] + ') : \n\n' + form.cleaned_data['message']
            recipients = [x[1] for x in settings.MANAGERS]

            send_mail(subject, message, sender, recipients)

            messages.success(request, u'Votre message a été envoyé.')

            return HttpResponseRedirect('')

    return render(request, 'contact/contact_form.html', context)
示例#22
0
文件: views.py 项目: ZTCooper/django
def contact(request):
    errors = []
    if request.method == 'POST':
        if not request.POST.get('subject', ''):
            errors.append('Enter a subject.')
        if not request.POST.get('message', ''):
            errors.append('Enter a message.')
        if request.POST.get('email') and '@' not in request.POST['email']:
            errors.append('Enter a valid e-mail address.')
        if not errors:
            send_mail(
                request.POST['subject'],
                request.POST['message'],
                request.POST.get('email', '*****@*****.**'),
                ['*****@*****.**'],
            )
            return HttpResponseRedirect('/contact/thanks/')
    else:
        form = ContactForm(initial={'subject': 'I love your site!'}
                           #设置初始值
                           )  #实例化对象
    return render_to_response('contact_form.html', {'form': form})
    '''
示例#23
0
def add(request):
    f = ContactForm(request.POST)
    if f.is_valid():
        try:
            c = Contact()
            c.lastname = f.cleaned_data['lastname']
            c.firstname = f.cleaned_data['firstname']
            c.email = f.cleaned_data['email']
            c.address = f.cleaned_data['address']
            c.phone = f.cleaned_data['phone']
            c.save()
        except Exception as e:
            print(
                f"{'#'*50} {__name__} {inspect.stack()[0][3]}\nException : {e}"
            )
            return render(request, 'contact/errmsg.html',
                          {'message': 'Server Internal Error.'})
        else:
            context = check_saved(c.lastname, c.firstname, c.email)
            return render(request, 'contact/contacts.html', context)
    else:
        err_msg = data_errmsg(f)
        return HttpResponse(err_msg)
示例#24
0
def contact(request):
    contact_form = ContactForm
    if request.method == "POST":
        contact_form = ContactForm(data=request.POST)
        if contact_form.is_valid():
            name = request.POST.get('name', '')
            email = request.POST.get('email', '')
            content = request.POST.get('content', '')
            email = EmailMessage(
                "la Caffetiera: Nuevo mensaje de Contacto",
                "De {} <{}>\n\nEscribió:\n\n{}".format(name, email, content),
                "*****@*****.**",
                ["*****@*****.**"],
                reply_to=[email]
            )

            try:
                email.send()
                return redirect(reverse('contact') + "?ok")
            except:
                return redirect(reverse('contact') + "?fail")

    return render(request, "contact/contact.html", {'form': contact_form})
示例#25
0
def home(request):
	contact_form = ContactForm(request.POST or None)
	search_form = SearchForm()
	combos = Combo.objects.filter(available=True).order_by('name_es').annotate(Count('tours')).prefetch_related('image')[:4] # First 4 combos

	context = {
		'combos': combos,
		'contact_form': contact_form,
		'search_form': search_form,
	}

	# Set language switcher urls
	cur_language = translation.get_language()
	try:
		translation.activate('es')
		context['redirect_url_es'] = reverse('raidchileapp:home')
		translation.activate('en')
		context['redirect_url_en'] = reverse('raidchileapp:home')
		translation.activate('pt-br')
		context['redirect_url_pt_BR'] = reverse('raidchileapp:home')
	finally:
		translation.activate(cur_language)

	return render(request, "raidchileapp/home.html", context)
示例#26
0
def contact(request):
    form = ContactForm(request.POST or None)

    if form.is_valid():
        email_vars = {
            'name': form.cleaned_data['name'],
            'email': form.cleaned_data['email'],
            'subject': form.cleaned_data['subject'],
            'message': form.cleaned_data['message']
        }
        subject = render_to_string('contact/email/contact_subject.txt',
                                   email_vars).rstrip('\n')
        message = render_to_string('contact/email/contact_message.txt',
                                   email_vars)
        send_mail(subject, message, settings.DEFAULT_FROM_EMAIL,
                  [form.cleaned_data['email']])
        return render_to_response('contact/thankyou.html', {},
                                  context_instance=RequestContext(request))
    else:
        return render_to_response('contact/form.html', {'form': form},
                                  context_instance=RequestContext(request))

    return render_to_response('contact/form.html', {'form': form},
                              context_instance=RequestContext(request))
示例#27
0
def contact(request):
    title = 'Contact'
    form = ContactForm(request.POST or None)
    confirm_message = None

    if form.is_valid():
        name = form.cleaned_data['name']
        comment = form.cleaned_data['comment']
        subject = 'Message from my site'
        message = '%s %s' % (comment, name)
        emailFrom = form.cleaned_data['email']
        emailTo = [settings.EMAIL_HOST_USER]
        send_mail(subject, message, emailFrom, emailTo, fail_silently=True)
        title = "Thanks!"
        confirm_message = "Messages were sent!"
        form = None

    context = {
        'title': title,
        'form': form,
        'confirm_message': confirm_message,
    }
    template = 'contact.html'
    return render(request, template, context)
示例#28
0
    def get(self, request):
        projectSet = Project.objects.all().order_by("-dateAdded")
        general = Skill.objects.all().filter(general=True)
        langSpecificSkillsSet = Skill.objects.all().filter(general=False)

        langSpecificSkillsDict = {}
        for k, v in Skill.LANG_SHORT_HAND.items():
            querySet = langSpecificSkillsSet.filter(language=v)
            if not querySet:
                pass
            else:
                langSpecificSkillsDict[k] = querySet

        form = ContactForm()
        formUrl = config('FORM_URL')

        context = {
            "form": form,
            "formUrl": formUrl,
            "prgSet": projectSet,
            "generalSkills": general,
            "langSpecificSkills": langSpecificSkillsDict
        }
        return render(request, self.template_name, context)
示例#29
0
def test_contact_form(admin, rf, mailoutbox):
    request = rf.request()
    request.user = admin
    recipient_email = settings.POOTLE_CONTACT_EMAIL
    specified_subject = "My subject"
    subject = "[%s] %s" % (settings.POOTLE_TITLE, specified_subject)
    data = {
        'name': admin.full_name,
        'email': admin.email,
        'email_subject': specified_subject,
        'body': "First paragraph of message\n\nSecond paragraph of message.",
    }
    form = ContactForm(request=request, data=data)
    assert form.is_valid()
    form.save()
    assert len(mailoutbox) == 1
    message = mailoutbox[0]
    assert message.from_email == settings.DEFAULT_FROM_EMAIL
    reply_to = u'%s <%s>' % (data['name'], data['email'])
    assert reply_to == message.extra_headers['Reply-To']
    assert [recipient_email] == message.recipients()
    assert subject == message.subject
    assert data['body'] in message.body
    assert "Your question or comment:" not in message.body
示例#30
0
def home(request):
	if request.user.is_authenticated():
		success_message = False
		title = 'Welcome'
		my_user = request.user
		img_link = 'http://www.foodnavigator-usa.com/var/plain_site/storage/images/publications/food-beverage-nutrition/foodnavigator-usa.com/markets/us-organic-food-market-to-grow-14-from-2013-18/8668340-1-eng-GB/US-organic-food-market-to-grow-14-from-2013-18.jpg'
		form = ContactForm(request.POST or None)
		# the usage of None here, is to prevent first loading validation message

		if form.is_valid():
			#save data from form data directly 
			form.save()
			success_message = "Success from saved( sent)"
			##change fields  before save
			# new_contact = form.save(commit=False)
			# print new_contact
			# new_contact.name = "Justin Michel"
			# new_contact.save()

			##this will save data from form too, but quite messu
			#print request.POST
			#print form.cleaned_data['email']
			#new_contact = Contact.objects.create(email=email,....)

	else:
		title = 'Welcome'
		my_user = ''
		img_link = ''

	context = {'title':title, 
			'my_user':my_user, 
			'img_link':img_link,
			'form': form, 
			'success_message':success_message
		}
	return  render(request, 'home.html', context)