• Здравейте,

    трябва да въведа този Интеграционен скрипт за резервации в сайта ни, но нещо не се получава.

    Моля за съдействие.

    Интеграционен скрипт:

    <link rel="stylesheet" href="https://static-assets.clock-software.com/wbe_v2/clock-pms-wbe-integration.css">

    <link rel="stylesheet" href="https://static-assets.clock-software.com/wbe_v2/clock-pms-wbe-reminder.css">

    <script defer src="https://static-assets.clock-software.com/wbe_v2/clock-pms-wbe-integration.js"></script>

    <script>

      document.addEventListener("DOMContentLoaded", (event) => {

        window.clockPmsWbeInit({

          wbeBaseUrl: "https://sky-eu1.clock-software.com/spa/pms-wbe/#/hotel/14468",

          defaultMode: "standard",

          roundedCorners: true,

          language: null,

        });

        document.querySelectorAll("[data-clock-pms-wbe-form]").forEach((form) => {

          form.addEventListener("submit", (e) => {

            e.preventDefault();

            const formData = new FormData(e.target);

            window.clockPmsWbeShow({

              arrival: formData.get("arrival"),

              departure: formData.get("departure"),

              // adults: ..., // Optional. Default value if omitted: 2. Expects an integer or null.

              // children: ..., // Optional. Default value if omitted: 0. Expects an integer or null.

              // childrenAges: ..., // Optional. Default value if omitted: []. Expects an array of integers. Example: [5, 8]

              bonusCode: formData.get("bonusCode"),

              companyCode: formData.get("companyCode"),

              blockCode: formData.get("blockCode"),

              roomTypeIds: [],

              rateIds: [],

              submit: true,

            });

          });

        });

      });

    </script>

    Страницата, за която имам нужда от помощ: [влезте за да видите връзката]

Виждате 1 отговор (от 1 общо)
  • Здравейте,

    Първото нещо за което трябва да проверите е дали са създадени всички полета с нужните атрубити, които са част от резервационна форма: пристигане, заминаване, bonusCode, companyCode и blockCode във formData.get(). Уверете се, че полетата на формата имат правилните атрибути име, съответстващи за всеки един от тези ключове.

    Html

    <input type="date" name="arrival" required>
    <input type="date" name="departure" required>
    <input type="text" name="bonusCode">
    <input type="text" name="companyCode">
    <input type="text" name="blockCode">

    Второ прегледайте незадължителните полета (възрастни, деца, възраст на децата). Ако възнамерявате да ги включите, уверете се, че формулярът предоставя правилните полета за тях. Например възраст на децата:

    Html

    <input type="number" name="children" value="0">
    <input type="text" name="childrenAges" value="[5,8]">

    Трето проверете за грешка при обработката:

    Ако някое от задължителните полета на формата липсва или е невалидно, зявката може да не се изпрати. Като вариант ви предлагам да добавите някакво основно валидиране на формата или подсказка за грешки, по този начин ще сте сигурни, че данните са успешно изпратени.

    Например:

    JS

    if (!formData.get("arrival") || !formData.get("departure")) {
    alert("Arrival and departure dates are required.");
    return;
    }

    Четвърто проверка на инициализацията за window.clockPmsWbeInit:

    Уверете се, че window.clockPmsWbeInit е наличен след зареждане на скрипта. Тъй като използвате атрибута defer в скрипта, би трябвало да е наред, но ако има проблем със зареждането или изпълнението на скрипта, може да проверите дали window.clockPmsWbeInit съществува, преди да го извикате:

    JS

    if (typeof window.clockPmsWbeInit === 'function') {
    window.clockPmsWbeInit({ ... });
    } else {
    console.error("Clock PMS WBE integration not loaded.");
    }

    Пето грешки в JavaScript или Debugging:

    Ако виждате проблеми в конзолата на браузъра, отворете browser developer tools (F12 в повечето браузъри), отидете в раздела „Конзола“ и потърсете за съобщения за грешки. Те могат да помогнат за идентифициране на проблеми като, например:
    Липсващи или неправилни данни във формата.
    Недефинирани функции или променливи.
    Мрежови грешки при опит за зареждане на външни ресурси.

    Шесто проблеми с различните източници:

    Ако външните ресурси (clock-pms-wbe-integration.js, clock-pms-wbe-integration.css и т.н.) се хостват в различен домейн, може да се натъкнете на проблеми с CORS (Cross-Origin Resource Sharing). Уверете се, че сървърът, хостващ JavaScript и CSS файловете, е конфигуриран да позволява заявки от вашия домейн.

    Седмо API документация:

    Ако window.clockPmsWbeShow очаква конкретни параметри или има различна структура от данни, проверете в документацията на Clock PMS API, за да сте сигурни, че подавате правилните данни. Незадължителните параметри (възрастни, деца и т.н.) може да имат ограничения или стойности по подразбиране, които трябва да ги имате в предвид.

    Примерна HTML структура с няколко полета във формата:

    <form data-clock-pms-wbe-form>
    <input type="date" name="arrival" required>
    <input type="date" name="departure" required>
    <input type="number" name="adults" value="2">
    <input type="number" name="children" value="0">
    <input type="text" name="childrenAges" value="[]">
    <input type="text" name="bonusCode">
    <input type="text" name="companyCode">
    <input type="text" name="blockCode">
    <button type="submit">Submit</button>
    </form>

    В заключение:

    Уверете се, че:

    1. Полетата на формуляра имат правилните атрибути за име.
    2. Незадължителните полета като възрастни, деца и възраст на децата се обработват правилно.
    3. Добавена ли е проверка за грешки при липсващи или невалидни данни.

    Уведомете ме, ако имате нужда от допълнителни разяснения или помощ! Успех!!! 🙂

Виждате 1 отговор (от 1 общо)
  • За да отговорите на тази тема трябва да сте влезли в профила си.