def contact(request): if request.method == 'POST': form = forms.ContactForm(request.POST) if form.is_valid(): form.send_mail() return HttpResponseRedirect('/') else: form = forms.ContactForm() return render(request, 'contact.html', {'form': form})
def test_invalid_contact_us_form(self): form = forms.ContactForm({ 'message': "Leia is a helluva cutie, ain't she?", }) self.assertFalse(form.is_valid())
def test_valid_contact_form_sends_email(self): form = forms.ContactForm({ 'name': "Innocent Zenda", 'email': '*****@*****.**', 'message': 'Hi there', }) self.assertTrue(form.is_valid())
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({'name': "Luke Skywalker", 'message': "Hi there"}) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Site message') self.assertGreaterEqual(len(cm.output), 1)
def test_invalid_contact_us_form(self): form = forms.ContactForm( { 'message': "Hi there" } ) self.assertFalse(form.is_valid())
def test_valid_contact_us_form_send_emails(self): form = forms.ContactForm({'name': "pd", 'message': "I love you pakhi"}) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level="INFO") as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, "Site message") self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_customer_service(self): form = forms.ContactForm({'name': 'Me Myself', 'message': 'how a ya'}) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as sm: form.contact_customer_service() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Customer service') self.assertGreaterEqual(len(sm.output), 1)
def test_valid_contact_us_form_sends_email(self): """форма контактов""" form = forms.ContactForm({'name': "Дмитрий П", 'message': "Привет"}) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Сообщение с сайта') self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({ 'name': 'Frank Chuka', 'message': 'Hello team' }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Site Message')
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({ 'name': "Test Testname", "message": "Hi Test Data" }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, "Site message") self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({ "name": "Sumit Singh", "message": "Hi there" }) self.assertTrue(form.is_valid()) with self.assertLogs("main.forms", level="INFO") as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, "Site message") self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_form_sends_email(self): form = forms.ContactForm({ 'name': 'Uttam Deep', 'message': 'Hello There!' }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Site message') self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_send_email(self): form = forms.ContactForm({ 'name': ' Kevin Herney', 'message': 'Hi there' }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Mensaje desde Web') self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({ 'name': 'Like Skywalker', 'message': 'Hi there' }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level="INFO") as cm: form.sentmail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, "Site message") self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({ 'nombre': "Luke Skywalker", 'mensaje': "Hi there", 'email': '*****@*****.**' }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Mensaje del Sitio') self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_form_sends_email(self): name = "Muhammad Teguh" form = forms.ContactForm({ "name": name, "email": "*****@*****.**", "message": "Hi, there" }) self.assertTrue(form.is_valid()) with self.assertLogs("main.forms", level="INFO") as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, f"ctc - message from {name}") self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_from_sends_email(self): form = forms.ContactForm(data={ "name": "Daniel", "message": self.TEST_MESSAGE }) self.assertTrue(form.is_valid()) with self.assertLogs("main.forms", level="INFO") as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, self.TEST_SUBJECT) self.assertGreaterEqual(len(cm.output), 1)
def test_valid_contact_us_form_sends_email(self): form = forms.ContactForm({ 'name': "Luke Skywalker", 'message': "May the FORCE be with you." }) self.assertTrue(form.is_valid()) with self.assertLogs(logging.getLogger('main.forms'), level="INFO") as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEquals(mail.outbox[0].subject, 'Site message') self.assertGreaterEqual(len(cm.output), 1)
def test_contact_us_send_email_form(self): form = forms.ContactForm({ 'name': 'Diego', 'message': 'Hola', 'subject': 'asunto', 'email': '*****@*****.**', 'gender': 'M' }) self.assertTrue(form.is_valid()) with self.assertLogs('main.forms', level='INFO') as cm: form.send_mail() self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Site Message') self.assertGreaterEqual(len(cm.output), 1) def test_invalid_contact_us_form(self): form = forms.ContactForm({'message': "Hi there"}) self.assertFalse(form.is_valid())
def test_invalid_contact_form(self): form = forms.ContactForm({"message": self.TEST_MESSAGE}) self.assertFalse(form.is_valid())
def test_invalid_contact_customer_service(self): form = forms.ContactForm({'name': 'Me Myself and Irene'}) self.assertFalse(form.is_valid())
def test_invalid_contact_form(self): form = forms.ContactForm({ 'name': 'TEst User', }) self.assertFalse(form.is_valid())
class ContactUsView(FormView): template_engine = "contact_form.html" form_class = forms.ContactForm() success_url = '/'
def ChargeBooking(request): #Define Cabin Search Form. Used when redirecting cabin_search_form = forms.CabinSearch(request.POST) if 'cabin_search_form_data' in request.session and not cabin_search_form.is_valid(): cabin_search_form = forms.CabinSearch(request.session['cabin_search_form_data']) #Check if cabin_search_form is valid if not cabin_search_form.is_valid(): request.session = add_alert(request, 'En feil har oppstått. Betalingen er ikke gjennomført. Vennligst prøv igjen.', type='danger', starter='OBS!') return redirect('booking') #Update cabin_search_form_data session request.session['cabin_search_form_data'] = cabin_search_form.cleaned_data #Check that request method is POST if not request.method == 'POST': request.session = add_alert(request, 'En feil har oppstått. Betalingen er ikke gjennomført. Vennligst prøv igjen.', type='danger', starter='OBS!') return redirect('show_cabins') #Retrieve charge form charge_form = forms.ChargeForm(request.POST) if not charge_form.is_valid(): request.session = add_alert(request, 'Klarer ikke fullføre betaling. Vennligst prøv igjen.', type='danger', starter='OBS!') return redirect('booking_overview') #Retrieve charge data from charge form charge_data = charge_form.cleaned_data price = charge_data['total_price'] phone = charge_data['phone'] t_booking_id = charge_data['t_booking_id'] #Find t_booking t_booking = TentativeBooking.objects.filter(id=t_booking_id).first() #TODO: We might not find this booking! if t_booking == None: request.session = add_alert(request, "Klarer ikke finne bestilling. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('show_cabins') if not t_booking.is_active(): #Try to re activate t_booking and redirect to booking overview t_booking_id = t_booking.create_active_copy() if t_booking_id == False: #Redirect with alert (Booking no longer valid) request.session = add_alert(request, "Sesjon ikke oppdatert. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('show_cabins') t_booking = TentativeBooking.objects.filter(id=t_booking_id).first() if not t_booking.is_valid(): request.session = add_alert(request, "Bestilling ikke lengre gyldig. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('show_cabins') #Update session variable request.session['t_booking_id'] = t_booking_id #Serialized booking from charge_form field charge_t_booking_serialized = ast.literal_eval(charge_data['t_booking_JSON']) #Serialized booking from db t_booking_serialized = serializers.TentativeBookingSerializer(t_booking).data #Check that t_booking matches charge-t_booking if not charge_t_booking_serialized == t_booking_serialized: #Fields do not match, redirect to booking overview with updated booking request.session = add_alert(request, "Sesjon ikke oppdatert. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('booking_overview') #Check that booking dates are valid if not t_booking.dates_are_valid(): request.session = add_alert(request, "Bestilling ikke lengre gyldig. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('booking') #Check that price displayed matches t_booking price if not charge_data['total_price'] == t_booking.get_price(): request.session = add_alert(request, "Pris stemmer ikke med sesjon. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('booking_overview') #Load token data token = charge_data['token'] token_data = json.loads(token) #Retrieve contact data contact_data = { 'name': token_data['card']['name'], 'email': token_data['email'], 'phone': phone, 'country': token_data['card']['address_country'], 'late_arrival': charge_data['late_arrival'] } #Declare contact data contact_form = forms.ContactForm(contact_data) #Check that contact data is valid if not contact_form.is_valid(): request.session = add_alert(request, "Kontaktinformasjon ugyldig. Betaling ikke fullført. Vennligst prøv igjen.", type='danger', starter='OBS!') return redirect('booking_overview') #Create contact object contact = Contact.objects.create( name=contact_form.cleaned_data['name'], email=contact_form.cleaned_data['email'], phone=contact_form.cleaned_data['phone'], country=contact_form.cleaned_data['country'], ) #Retrieve key used for making payment stripe.api_key = settings.STRIPE_TEST_SECRET_KEY #if unable to create charge, HTTP error will be raised by stripe. charge = stripe.Charge.create( amount = t_booking.get_price(), currency = 'nok', description = 'Hytte booking', source = token_data['id'], #metadata = {'booking_id': booking_id}, ) #Create booking booking_result = Booking.create_booking_from_tentative(t_booking, contact, charge.id) if booking_result == False: #Fatal error, booking payed for, but not reserved! #TODO: Try giving refund here? return HttpResponse("Fatal error. Booking payed for but not reserved") booking = Booking.objects.get(id=booking_result) #Add payed on booking booking.payed = True #Add late_arrival on booking booking.late_arrival = contact_form.cleaned_data['late_arrival'] booking.save() #Send confirmation mail cabins = booking.cabins.all() titles = [] for cabin in cabins: titles.append(cabin.title) data = { 'from_date': booking.from_date.strftime('%d.%m.%Y'), 'to_date': booking.to_date.strftime('%d.%m.%Y'), 'cabin_titles': titles, 'host': request.get_host() , } checkmark_url = request.build_absolute_uri() msg_plain = render_to_string('email/confirmation.txt', data) msg_html = render_to_string('email/confirmation.html', data) send_mail( 'Strandbu Camping - Bekreftelse', msg_plain, '*****@*****.**', ['*****@*****.**'], html_message=msg_html, ) return redirect('booking_confirmation')
def test_invalid_contact_us_form(self): form = forms.ContactForm({"message": "Hi Boi~"}) self.assertFalse(form.is_valid())
def test_invalid_contact_us_form(self): form = forms.ContactForm({'name': 'John'}) self.assertFalse(form.is_valid())