Naprawa buga ze zwracaniem wartości z funkcji async
This commit is contained in:
47
README.md
47
README.md
@@ -1,10 +1,10 @@
|
||||
# OSCOP #
|
||||
Pliki związane z OSCOP. Żeby działał trzeba stworzyć kopie jednego komponenta z place-order(testowane na komponencie układ) i resztę usunąć. Następnie wkleić kod w odpowiednie miejsca w skopiowanym komponencie:
|
||||
index.xslt w XML/XSLT\
|
||||
wydzielonyScript.js w Wydzielony Javascript\
|
||||
script.js w Javascript\
|
||||
style.css w Less/CSS\
|
||||
Dodatkowo Trzeba będzie zrobić przekierowanie (można nawet dodatkiem) po kliknięciu na "Przejdź dalej" do strony "place-order.php"
|
||||
\index.xslt w XML/XSLT
|
||||
\wydzielonyScript.js w Wydzielony Javascript
|
||||
\script.js w Javascript
|
||||
\style.css w Less/CSS
|
||||
\Dodatkowo Trzeba będzie zrobić przekierowanie (można nawet dodatkiem) po kliknięciu na "Przejdź dalej" do strony "place-order.php"
|
||||
|
||||
## Ikony markera na mapie ##
|
||||
Aby dodać zdjęcie ikony: moderacja -> cms -> Zarządzanie plikami dla CMS. Żeby dodać nową ikonę trzeba dodać nowy obiekt w mapMarkerUrls. Można do tam wybrać link url do ikony, rozmiar, klasę. Dodatkowe opcje znajdują się w dokumentacji Leaflet w opcjach markera: https://leafletjs.com/reference.html#marker
|
||||
@@ -17,33 +17,34 @@ Aby je zmienić trzeba wejść w panel -> moderacja -> działanie sklepu -> Pane
|
||||
Następnie wejść w edycje wybranego sposobu logowania i wrzucić nową ikonę w miejsce "Grafika mała na stronie". UWAGA! Plików svg nie da się wprowadzić.
|
||||
|
||||
## Brakujące Tłumaczenia (literały) ##
|
||||
Trzeba je później podmienić w kodzie w Wydzielonym Java script na np.:\
|
||||
<iai:variable vid="Pokaż Listę"/>
|
||||
Trzeba je później podmienić w kodzie w Wydzielonym Java script na np.:
|
||||
\<iai:variable vid="Pokaż Listę"/>
|
||||
|
||||
### Wydzielony Javascript ###
|
||||
Pokaż Listę\
|
||||
Pokaż Mapę\
|
||||
Błąd podczas zmiany kraju. Przeładuj stronę jeszcze raz.\
|
||||
Błąd podczas logowania, proszę spróbować ponownie\
|
||||
banków\
|
||||
kart płatniczych\
|
||||
Lista\
|
||||
Wybierz z\
|
||||
Pokaż Listę
|
||||
\Pokaż Mapę
|
||||
\Błąd podczas zmiany kraju. Przeładuj stronę jeszcze raz.
|
||||
\Błąd podczas logowania, proszę spróbować ponownie
|
||||
\banków
|
||||
\kart płatniczych
|
||||
\Lista
|
||||
\Wybierz z
|
||||
|
||||
## Zalety ##
|
||||
Zablokowana edycja danych osobowych w trakcie zamówienia(klient dalej może wysłać zamówienie na inny adres).\
|
||||
Zmiana sposobów dostaw zależnie od państwa(Czasami się buguje, może to być zależne od plików cookies)\
|
||||
Sprawdzenie czy wpisano dobry bon towarowy przed złożeniem zamówienia\
|
||||
lepiej zabezpieczony numer telefonu?(na standardzie to +2+++++++++1 przejdzie)\
|
||||
autouzupełnianie metod płatności i dostawy w edycji\
|
||||
autouzupełnianie metod płatności i dostawy na podstawie poprzednio wykonanego zakupu\
|
||||
Zablokowana edycja danych osobowych w trakcie zamówienia(klient dalej może wysłać zamówienie na inny adres).
|
||||
\Zmiana sposobów dostaw zależnie od państwa(Czasami się buguje, może to być zależne od plików cookies)
|
||||
\Sprawdzenie czy wpisano dobry bon towarowy przed złożeniem zamówienia
|
||||
\lepiej zabezpieczony numer telefonu?(na standardzie to +2+++++++++1 przejdzie)
|
||||
\autouzupełnianie metod płatności i dostawy w edycji
|
||||
\autouzupełnianie metod płatności i dostawy na podstawie poprzednio wykonanego zakupu
|
||||
|
||||
## Minusy ##
|
||||
nie ma faktury na inne dane(żeby nie używać tego samego zapytania co OSCOP Idosella, na wszelki wypadek żeby nie pobierało opłat)
|
||||
|
||||
## Dodatkowe pomysły do zrealizowania ##
|
||||
sprawdzanie logina w trakcie pisania(może być słabe dla ochrony danych klienta)\
|
||||
Limit znaków | Wydłużanie się okienka od uwag do sklepu|kuriera
|
||||
sprawdzanie logina w trakcie pisania(może być słabe dla ochrony danych klienta)
|
||||
\Limit znaków | Wydłużanie się okienka od uwag do sklepu|kuriera
|
||||
|
||||
## Uwagi ##
|
||||
W przypadku edycji zamówienia z zapłatą za pobraniem nie można pobrać danych takiego zamówienia przed dokonaniem zapłaty. Idosell sprawdza ten problem w komunikacie na zooart6.
|
||||
\ Dziwna rzecz którą zauważyłem. Jak składasz zamówienie wraz z zakładaniem konta, ale okazuje się że brakuje któregoś produktu w koszyku, to konto dalej się zakłada(ponieważ w takiej sytuacji najpierw zakłada się konto, a później składa się zamówienie)
|
||||
11
index.xslt
11
index.xslt
@@ -86,7 +86,10 @@
|
||||
<iaixsl:attribute name="href"><iaixsl:value-of select="@login_url"/></iaixsl:attribute>
|
||||
<img>
|
||||
<iaixsl:attribute name="src">
|
||||
<iaixsl:value-of select="@gfx"></iaixsl:value-of>
|
||||
<iaixsl:choose>
|
||||
<iaixsl:when test="@gfx"><iaixsl:value-of select="@gfx"></iaixsl:value-of></iaixsl:when>
|
||||
<iaixsl:otherwise><iaixsl:value-of select="@gfx_big"></iaixsl:value-of></iaixsl:otherwise>
|
||||
</iaixsl:choose>
|
||||
</iaixsl:attribute>
|
||||
<iaixsl:attribute name="alt">
|
||||
<iaixsl:value-of select="@name"></iaixsl:value-of>
|
||||
@@ -880,12 +883,14 @@
|
||||
<input type="checkbox" id="rebate_option" name="rebate_option" class="--arrow-input"></input>
|
||||
<label for="rebate_option" class="--arrow-label"><iai:variable vid="Posiadasz kod rabatowy?"/></label>
|
||||
</div>
|
||||
<div class="rebate__code has-feedback">
|
||||
<div class="rebate__code-container">
|
||||
<div class="rebate__code">
|
||||
<div class="rebate__code-container has-feedback">
|
||||
<div>
|
||||
<input type="text" id="rebate_code" name="rebate_code" class="form-control">
|
||||
<iaixsl:attribute name="placeholder"><iai:variable vid="Wpisz kod rabatowy"/></iaixsl:attribute>
|
||||
</input>
|
||||
<span class="form-control-feedback"></span>
|
||||
</div>
|
||||
<button class="rebate__code-realize bm-oscop__btn"><iai:variable vid="Zrealizuj"/></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -841,9 +841,11 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
|
||||
// Przygotowanie Płatności
|
||||
e.prepaids_method.forEach(function (method) {
|
||||
const checkedPayment = paymentValue === method.id;
|
||||
|
||||
const markup = `
|
||||
<label class="osc_item" for="payitem_${method.id}">
|
||||
<input id="payitem_${method.id}" value="${method.id}" type="radio" name="payform_id" ${paymentValue === method.id ? "checked" : ""} data-group="${method.group}">
|
||||
<input id="payitem_${method.id}" value="${method.id}" type="radio" name="payform_id" ${checkedPayment ? "checked" : ""} data-group="${method.group}">
|
||||
<div class="photo">
|
||||
<img src="${method.icon}" alt="${method.name}">
|
||||
</div>
|
||||
@@ -917,7 +919,7 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
// Wstawienie pickuppoint jeśli edycja i istnieje
|
||||
if(data?.pickupData !== undefined && data?.pickupData !== null){
|
||||
const selectedShipping = document.querySelector(`#cop_seection2 input#${deliveryId}`);
|
||||
const pointExists = checkPrevPickupPoint(
|
||||
checkPrevPickupPoint(
|
||||
selectedShipping.parentElement.querySelector(".fselectedPoint"),
|
||||
data.pickupData.id,
|
||||
data.pickupData.name,
|
||||
@@ -925,11 +927,10 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
data.pickupData.address.city,
|
||||
data.pickupData.address.postcode,
|
||||
data.deliveryMethodId
|
||||
);
|
||||
|
||||
).then(pointExists=>{
|
||||
// Odznaczenie punktu jeśli punkt odbioru nie istnieje(Wcześniej był zaznaczony przy edycji)
|
||||
if(!pointExists) selectedShipping.checked = false;
|
||||
|
||||
});
|
||||
}// Sprawdzenie czy użytkownik ma zapisane poprzednio użyte metody w przeglądarce(tylko przy pierwszym załadowaniu strony)
|
||||
else if(localStorage.getItem("prevPaymentMethod") && localStorage.getItem("prevDeliveryMethod") && firstLoad){
|
||||
const prevPaymentMethod = JSON.parse(localStorage.getItem("prevPaymentMethod"));
|
||||
@@ -949,7 +950,7 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
if(prevDeliveryInput){
|
||||
// sprawdzenie czy dostawa miała punkt odbioru
|
||||
if(prevDeliveryMethod.fselectedPoint){
|
||||
const pointExists = checkPrevPickupPoint(
|
||||
checkPrevPickupPoint(
|
||||
prevDeliveryInput.parentElement.querySelector(".fselectedPoint"),
|
||||
prevDeliveryMethod.fselectedPoint.deliveryPointId,
|
||||
prevDeliveryMethod.fselectedPoint.name,
|
||||
@@ -957,13 +958,21 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
prevDeliveryMethod.fselectedPoint.city,
|
||||
prevDeliveryMethod.fselectedPoint.zipcode,
|
||||
prevDeliveryMethod.fselectedPoint.courierId
|
||||
);
|
||||
).then(pointExists=>{
|
||||
if(pointExists) prevDeliveryInput.checked = true;
|
||||
});
|
||||
}else{
|
||||
prevDeliveryInput.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Zaznaczenie karty/banku w przypadku edycji
|
||||
const checkedPayment = document.querySelector(`#osc_prepaids_method input[name="payform_id"]:checked`)
|
||||
if(checkedPayment && (checkedPayment.dataset.group === "card" || checkedPayment.dataset.group === "transfer")){
|
||||
cloneElement(checkedPayment);
|
||||
}
|
||||
// Przeładowanie mapy
|
||||
loadMap();
|
||||
// Przeliczenie kosztu dostawy
|
||||
@@ -1042,6 +1051,7 @@ const SEARCH_PICKUP_POINTS_QUERY = (searchPickupPointsInput) => JSON.stringify({
|
||||
}`,
|
||||
})
|
||||
async function checkPrevPickupPoint(selectedPoint, deliveryPointId, name, street, city, zipcode, courierId){
|
||||
if(!name || !city || !zipcode) return false;
|
||||
// Pobranie punktów z tym samym id co poprzedni
|
||||
app_shop.fn.ajaxLoadSite(1)
|
||||
const resultData = await fetchData({
|
||||
@@ -1484,7 +1494,7 @@ async function updateCode(){
|
||||
// Pokazanie błędu
|
||||
const { message } = rebateStatus?.data?.activateRebateCode?.error;
|
||||
addError(rebateCode);
|
||||
rebateCode.insertAdjacentHTML("afterend",`<span class="help-block validate_message text-danger">${message}.</span>`);
|
||||
addErrorMessage(rebateCode, message);
|
||||
// Schowaj kod (show=false, error=true)
|
||||
toggleActiveCode(false, true);
|
||||
}
|
||||
@@ -1561,7 +1571,7 @@ rebateCode.addEventListener("keydown", e=>{
|
||||
// ZŁOŻENIE ZAMÓWIENIA
|
||||
|
||||
// Zwaliduj wszystkie dostępne inputy zawierające dane klienta i dane adresowe
|
||||
function validateAllInputs(){
|
||||
async function validateAllInputs(){
|
||||
// Zmienna trzymająca informację czy wystąpił jakiś błąd
|
||||
let allGood = true;
|
||||
|
||||
@@ -1572,12 +1582,12 @@ function validateAllInputs(){
|
||||
}
|
||||
if(!document.querySelector(".--logged")){
|
||||
// Sprawdzenie emaila i telefonu
|
||||
allGood = validateRequest(document.getElementById("client_email"), true) && allGood;
|
||||
allGood = await validateRequest(document.getElementById("client_email"), true) && allGood;
|
||||
allGood = validatePhone(document.getElementById("client_phone")) && allGood;
|
||||
// Sprawdzenie nazwy firmy i nipu
|
||||
if(document.getElementById("client_type1").checked){
|
||||
allGood = validateNotEmpty(document.getElementById("client_firm")) && allGood;
|
||||
allGood = validateRequest(document.getElementById("client_nip"), true) && allGood;
|
||||
allGood = await validateRequest(document.getElementById("client_nip"), true) && allGood;
|
||||
}
|
||||
// Sprawdzenie reszty pól
|
||||
allGood = validateFormInputs("client") && allGood;
|
||||
@@ -1589,13 +1599,13 @@ function validateAllInputs(){
|
||||
}
|
||||
return allGood
|
||||
}
|
||||
function validateFormInputs(query){
|
||||
async function validateFormInputs(query){
|
||||
let isFormGood = true;
|
||||
|
||||
isFormGood = validateNotEmpty(document.getElementById(`${query}_firstname`)) && isFormGood;
|
||||
isFormGood = validateNotEmpty(document.getElementById(`${query}_lastname`)) && isFormGood;
|
||||
isFormGood = validateStreet(document.getElementById(`${query}_street`)) && isFormGood;
|
||||
isFormGood = validateRequest(document.getElementById(`${query}_zipcode`),true) && isFormGood;
|
||||
isFormGood = await validateRequest(document.getElementById(`${query}_zipcode`),true) && isFormGood;
|
||||
isFormGood = validateNotEmpty(document.getElementById(`${query}_city`)) && isFormGood;
|
||||
|
||||
return isFormGood;
|
||||
@@ -1887,6 +1897,7 @@ async function addClient(succes, error){
|
||||
const saveToSms = document.getElementById("client_sms");
|
||||
let saveToSmsData = false;
|
||||
if(saveToSms && saveToSms.checked) saveToSmsData = true;
|
||||
|
||||
const registerClientData = await fetchData({
|
||||
data: REGISTER_CLIENT(`RegisterClientInput: {
|
||||
clientData: {
|
||||
|
||||
48
style.css
48
style.css
@@ -305,7 +305,7 @@
|
||||
line-height: 43px;
|
||||
}
|
||||
.has-error .form-control-feedback, .has-success .form-control-feedback {
|
||||
line-height: 38px;
|
||||
line-height: 34px;
|
||||
}
|
||||
select{
|
||||
cursor: pointer;
|
||||
@@ -837,39 +837,38 @@
|
||||
fill: @less_iaicolorscheme_background_active_color!important;
|
||||
}
|
||||
}
|
||||
.rebate, .rebate .rebate__code .rebate__code-container:has(.help-block.validate_message.text-danger){
|
||||
.rebate{
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
.rebate{
|
||||
padding-bottom: 0.9rem;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 8px;
|
||||
.rebate__options, .rebate__code .rebate__code-container{
|
||||
.rebate__options, .rebate__code{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.rebate__code{
|
||||
display: none;
|
||||
.rebate__code-container{
|
||||
gap: 2rem;
|
||||
display: grid;
|
||||
grid-template-columns: 5fr 3fr;
|
||||
padding: 2rem 1rem 0 1rem;
|
||||
> div{
|
||||
position: relative;
|
||||
margin-right: 2rem;
|
||||
}
|
||||
.help-block.validate_message.text-danger{
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
transform: translateY(150%);
|
||||
grid-column: 1 / span2;
|
||||
margin-top: 1rem;
|
||||
}
|
||||
}
|
||||
.form-control-feedback{
|
||||
line-height: 75px!important;
|
||||
right: 47%!important;
|
||||
}
|
||||
#rebate_code{
|
||||
margin: 0!important;
|
||||
display: inline-block;
|
||||
}
|
||||
.rebate__code-realize{
|
||||
padding: 1rem 14%;
|
||||
padding: 1rem;
|
||||
}
|
||||
}
|
||||
.rebate__active .rebate__active-options{
|
||||
@@ -926,9 +925,6 @@
|
||||
.zipcode_wrapper{
|
||||
padding-right: 0!important;
|
||||
}
|
||||
#cop_seection3 .rebate .rebate__code .form-control-feedback{
|
||||
right: 34vw!important;
|
||||
}
|
||||
}
|
||||
@media(max-width: 757px){
|
||||
.form-control-feedback{
|
||||
@@ -1114,22 +1110,22 @@
|
||||
font-size: 2rem!important;
|
||||
}
|
||||
.rebate .rebate__code-container{
|
||||
flex-direction: column;
|
||||
gap: 1.2rem!important;
|
||||
align-items: flex-start!important;
|
||||
gap: 1.2rem;
|
||||
grid-template-columns: 1fr!important;
|
||||
> div{
|
||||
margin-right: 0!important;
|
||||
grid-column: 1 / span1;
|
||||
}
|
||||
.help-block.validate_message.text-danger{
|
||||
position: static!important;
|
||||
transform: translateY(0%)!important;
|
||||
grid-column: 1 / span1!important;
|
||||
grid-row: 2 / span1;
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 0!important;
|
||||
}
|
||||
.form-control-feedback{
|
||||
line-height: 83px!important;
|
||||
right: 0%!important;
|
||||
.rebate__code-realize{
|
||||
grid-column: 1 / span1;
|
||||
}
|
||||
}
|
||||
.rebate__code-container:has(.help-block.validate_message.text-danger){
|
||||
margin-bottom: 0!important;
|
||||
}
|
||||
.rebate__code-realize{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@@ -838,9 +838,11 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
|
||||
// Przygotowanie Płatności
|
||||
e.prepaids_method.forEach(function (method) {
|
||||
const checkedPayment = paymentValue === method.id;
|
||||
|
||||
const markup = `
|
||||
<label class="osc_item" for="payitem_${method.id}">
|
||||
<input id="payitem_${method.id}" value="${method.id}" type="radio" name="payform_id" ${paymentValue === method.id ? "checked" : ""} data-group="${method.group}">
|
||||
<input id="payitem_${method.id}" value="${method.id}" type="radio" name="payform_id" ${checkedPayment ? "checked" : ""} data-group="${method.group}">
|
||||
<div class="photo">
|
||||
<img src="${method.icon}" alt="${method.name}">
|
||||
</div>
|
||||
@@ -914,7 +916,7 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
// Wstawienie pickuppoint jeśli edycja i istnieje
|
||||
if(data?.pickupData !== undefined && data?.pickupData !== null){
|
||||
const selectedShipping = document.querySelector(`#cop_seection2 input#${deliveryId}`);
|
||||
const pointExists = checkPrevPickupPoint(
|
||||
checkPrevPickupPoint(
|
||||
selectedShipping.parentElement.querySelector(".fselectedPoint"),
|
||||
data.pickupData.id,
|
||||
data.pickupData.name,
|
||||
@@ -922,11 +924,10 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
data.pickupData.address.city,
|
||||
data.pickupData.address.postcode,
|
||||
data.deliveryMethodId
|
||||
);
|
||||
|
||||
).then(pointExists=>{
|
||||
// Odznaczenie punktu jeśli punkt odbioru nie istnieje(Wcześniej był zaznaczony przy edycji)
|
||||
if(!pointExists) selectedShipping.checked = false;
|
||||
|
||||
});
|
||||
}// Sprawdzenie czy użytkownik ma zapisane poprzednio użyte metody w przeglądarce(tylko przy pierwszym załadowaniu strony)
|
||||
else if(localStorage.getItem("prevPaymentMethod") && localStorage.getItem("prevDeliveryMethod") && firstLoad){
|
||||
const prevPaymentMethod = JSON.parse(localStorage.getItem("prevPaymentMethod"));
|
||||
@@ -946,7 +947,7 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
if(prevDeliveryInput){
|
||||
// sprawdzenie czy dostawa miała punkt odbioru
|
||||
if(prevDeliveryMethod.fselectedPoint){
|
||||
const pointExists = checkPrevPickupPoint(
|
||||
checkPrevPickupPoint(
|
||||
prevDeliveryInput.parentElement.querySelector(".fselectedPoint"),
|
||||
prevDeliveryMethod.fselectedPoint.deliveryPointId,
|
||||
prevDeliveryMethod.fselectedPoint.name,
|
||||
@@ -954,13 +955,21 @@ function getNewPaymentsAndDeliveries(data = null, firstLoad = false) {
|
||||
prevDeliveryMethod.fselectedPoint.city,
|
||||
prevDeliveryMethod.fselectedPoint.zipcode,
|
||||
prevDeliveryMethod.fselectedPoint.courierId
|
||||
);
|
||||
).then(pointExists=>{
|
||||
if(pointExists) prevDeliveryInput.checked = true;
|
||||
});
|
||||
}else{
|
||||
prevDeliveryInput.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Zaznaczenie karty/banku w przypadku edycji
|
||||
const checkedPayment = document.querySelector(`#osc_prepaids_method input[name="payform_id"]:checked`)
|
||||
if(checkedPayment && (checkedPayment.dataset.group === "card" || checkedPayment.dataset.group === "transfer")){
|
||||
cloneElement(checkedPayment);
|
||||
}
|
||||
// Przeładowanie mapy
|
||||
loadMap();
|
||||
// Przeliczenie kosztu dostawy
|
||||
@@ -1039,6 +1048,7 @@ const SEARCH_PICKUP_POINTS_QUERY = (searchPickupPointsInput) => JSON.stringify({
|
||||
}`,
|
||||
})
|
||||
async function checkPrevPickupPoint(selectedPoint, deliveryPointId, name, street, city, zipcode, courierId){
|
||||
if(!name || !city || !zipcode) return false;
|
||||
// Pobranie punktów z tym samym id co poprzedni
|
||||
app_shop.fn.ajaxLoadSite(1)
|
||||
const resultData = await fetchData({
|
||||
@@ -1481,7 +1491,7 @@ async function updateCode(){
|
||||
// Pokazanie błędu
|
||||
const { message } = rebateStatus?.data?.activateRebateCode?.error;
|
||||
addError(rebateCode);
|
||||
rebateCode.insertAdjacentHTML("afterend",`<span class="help-block validate_message text-danger">${message}.</span>`);
|
||||
addErrorMessage(rebateCode, message);
|
||||
// Schowaj kod (show=false, error=true)
|
||||
toggleActiveCode(false, true);
|
||||
}
|
||||
@@ -1558,7 +1568,7 @@ rebateCode.addEventListener("keydown", e=>{
|
||||
// ZŁOŻENIE ZAMÓWIENIA
|
||||
|
||||
// Zwaliduj wszystkie dostępne inputy zawierające dane klienta i dane adresowe
|
||||
function validateAllInputs(){
|
||||
async function validateAllInputs(){
|
||||
// Zmienna trzymająca informację czy wystąpił jakiś błąd
|
||||
let allGood = true;
|
||||
|
||||
@@ -1569,12 +1579,12 @@ function validateAllInputs(){
|
||||
}
|
||||
if(!document.querySelector(".--logged")){
|
||||
// Sprawdzenie emaila i telefonu
|
||||
allGood = validateRequest(document.getElementById("client_email"), true) && allGood;
|
||||
allGood = await validateRequest(document.getElementById("client_email"), true) && allGood;
|
||||
allGood = validatePhone(document.getElementById("client_phone")) && allGood;
|
||||
// Sprawdzenie nazwy firmy i nipu
|
||||
if(document.getElementById("client_type1").checked){
|
||||
allGood = validateNotEmpty(document.getElementById("client_firm")) && allGood;
|
||||
allGood = validateRequest(document.getElementById("client_nip"), true) && allGood;
|
||||
allGood = await validateRequest(document.getElementById("client_nip"), true) && allGood;
|
||||
}
|
||||
// Sprawdzenie reszty pól
|
||||
allGood = validateFormInputs("client") && allGood;
|
||||
@@ -1586,13 +1596,13 @@ function validateAllInputs(){
|
||||
}
|
||||
return allGood
|
||||
}
|
||||
function validateFormInputs(query){
|
||||
async function validateFormInputs(query){
|
||||
let isFormGood = true;
|
||||
|
||||
isFormGood = validateNotEmpty(document.getElementById(`${query}_firstname`)) && isFormGood;
|
||||
isFormGood = validateNotEmpty(document.getElementById(`${query}_lastname`)) && isFormGood;
|
||||
isFormGood = validateStreet(document.getElementById(`${query}_street`)) && isFormGood;
|
||||
isFormGood = validateRequest(document.getElementById(`${query}_zipcode`),true) && isFormGood;
|
||||
isFormGood = await validateRequest(document.getElementById(`${query}_zipcode`),true) && isFormGood;
|
||||
isFormGood = validateNotEmpty(document.getElementById(`${query}_city`)) && isFormGood;
|
||||
|
||||
return isFormGood;
|
||||
|
||||
Reference in New Issue
Block a user