* Changed contact type in ContactForm

This commit is contained in:
Phil Zhitnikov 2023-11-11 11:08:18 +04:00
parent 7e821b7350
commit 18039f6ea8
3 changed files with 14 additions and 18 deletions

View File

@ -15,7 +15,7 @@ CONTACT_REQUEST_TEMPLATE = """
Обращение через форму обратной связи с сайта alex-sharoff.ru: Обращение через форму обратной связи с сайта alex-sharoff.ru:
Имя: {name} Имя: {name}
Почта: {email} Контакты: {contacts}
------- -------
{message} {message}
""" """

View File

@ -6,8 +6,8 @@ from flask_cors import CORS, cross_origin
from flask_executor import Executor from flask_executor import Executor
from flask_wtf import FlaskForm, RecaptchaField from flask_wtf import FlaskForm, RecaptchaField
import telegram_send import telegram_send
from wtforms import StringField, EmailField from wtforms import StringField
from wtforms.validators import DataRequired, Email from wtforms.validators import DataRequired
import config as cfg import config as cfg
@ -43,7 +43,7 @@ def send_telegram(message, silent=False):
class ContactForm(FlaskForm): class ContactForm(FlaskForm):
name = StringField('Username', validators=[DataRequired()]) name = StringField('Username', validators=[DataRequired()])
email = EmailField('Email', validators=[DataRequired(), Email()]) contacts = StringField('Contacts', validators=[DataRequired()])
message = StringField('Message') message = StringField('Message')
recaptcha = RecaptchaField() recaptcha = RecaptchaField()
@ -55,10 +55,10 @@ def contact():
if form.validate_on_submit(): if form.validate_on_submit():
text = cfg.CONTACT_REQUEST_TEMPLATE.format( text = cfg.CONTACT_REQUEST_TEMPLATE.format(
name=form.name.data, name=form.name.data,
email=form.email.data, contacts=form.contacts.data,
message=form.message.data message=form.message.data
) )
logger.info(f'{form.name.data} - {form.email.data}: [{form.message.data}]') logger.info(f'{form.name.data} - {form.contacts.data}: [{form.message.data}]')
executor.submit(send_telegram, text) executor.submit(send_telegram, text)
return '', 200 return '', 200

View File

@ -15,7 +15,7 @@ export default {
"focus:border-primary-dark focus:ring-0", "focus:border-primary-dark focus:ring-0",
name: "", name: "",
email: "", contacts: "",
message: "", message: "",
captchaSolved: false captchaSolved: false
@ -24,8 +24,8 @@ export default {
computed: { computed: {
formReady() { formReady() {
let isNotEmpty = this.name !== '' && this.email !== '' let isNotEmpty = this.name !== '' && this.contacts !== ''
let isValid = this.$refs.name.checkValidity() && this.$refs.email.checkValidity() let isValid = this.$refs.name.checkValidity() && this.$refs.contacts.checkValidity()
return this.captchaSolved && isNotEmpty && isValid return this.captchaSolved && isNotEmpty && isValid
} }
}, },
@ -48,8 +48,6 @@ export default {
// To prevent `:invalid` CSS class to be applied on page load // To prevent `:invalid` CSS class to be applied on page load
this.$refs.form.classList.add("submitted") this.$refs.form.classList.add("submitted")
console.log(this.endpoint)
if (!this.formReady) { if (!this.formReady) {
return return
} }
@ -57,7 +55,7 @@ export default {
try { try {
let formData = new FormData() let formData = new FormData()
formData.append('name', this.name) formData.append('name', this.name)
formData.append('email', this.email) formData.append('contacts', this.contacts)
formData.append('message', this.message) formData.append('message', this.message)
formData.append('g-recaptcha-response', await this.$recaptcha.getResponse()) formData.append('g-recaptcha-response', await this.$recaptcha.getResponse())
@ -137,16 +135,14 @@ export default {
/> />
</div> </div>
<div> <div>
<label :class="labelStyle" for="email">Электронная почта*</label> <label :class="labelStyle" for="contacts">Контактный телефон/WhatsApp/Telegram/электронная почта*</label>
<input <input
ref="email" ref="contacts"
v-model="email" v-model="contacts"
:class="inputStyle" :class="inputStyle"
type="email"
pattern="^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,})+$"
placeholder="" placeholder=""
aria-label="Email" aria-label="Contacts"
required required
/> />
</div> </div>