Avukat başvuru formu

Avukatın sizi araması için istek. Bu hukuki danışmanlık ya da dava dosyası değildir.

Önizleme

Bu form bir geri arama isteğidir. Hukuki danışmanlık ya da dava dosyası değildir.

Konu

Siz

Özet

Onay

Form kodu

HTML
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Legal inquiry form</title>
<style>
  body { font-family: "Segoe UI", sans-serif; color: #12263a; margin: 0; background: #fff; }
  main { max-width: 640px; margin: 0 auto; padding: 32px 20px 64px; }
  h1 { font-size: 28px; font-weight: 650; letter-spacing: -0.02em; line-height: 1.2; }
  h2 { font-size: 18px; margin: 18px 0 0; }
  p { line-height: 1.5; }
  form { display: grid; gap: 14px; position: relative; }
  .field { display: grid; gap: 6px; }
  label span, .check span { font-size: 14px; }
  input, select, textarea { font: inherit; color: inherit; padding: 10px 12px; border: 1px solid #b4bdce; border-radius: 8px; width: 100%; box-sizing: border-box; background: #fff; }
  textarea { min-height: 96px; }
  .check { display: flex; gap: 8px; align-items: flex-start; }
  .check input { width: auto; margin-top: 4px; }
  button { background: #3c4ad8; color: #fff; border: 0; border-radius: 8px; padding: 12px 18px; font: inherit; cursor: pointer; }
  .note { background: #fff6eb; padding: 12px 14px; border-radius: 8px; }
  form [data-show-if] { display: none; }
form:has(select[name="matter_type"] option[value="other"]:checked) [data-show-if="matter_type"][data-show-equals="other"] { display: grid; }
</style>
</head>
<body>
<main>
<h1 data-i18n="title">Legal inquiry form</h1>
<p data-i18n="lede">Ask a lawyer to call you back. This is not legal advice and it is not a case file.</p>

<p class="note" data-i18n="note">This form asks for a callback. It is not legal advice and it is not a case file.</p>
<form id="fg-form" action="https://formgong.com/submit" method="POST">
<input type="hidden" name="access_key" value="fk_your_access_key">
<div aria-hidden="true" style="position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden"><label>Leave this field empty<input name="botcheck" tabindex="-1" autocomplete="off"></label></div>
<section><h2 data-i18n="section.matter">Matter</h2>
<div class="field"><label for="fg-matter_type"><span data-i18n="matter_type">What is it about?</span></label><select id="fg-matter_type" name="matter_type" required><option value="">—</option><option value="contract" data-i18n="matter_type.contract">A contract</option><option value="dispute" data-i18n="matter_type.dispute">A dispute</option><option value="company" data-i18n="matter_type.company">A company</option><option value="family" data-i18n="matter_type.family">Family</option><option value="other" data-i18n="matter_type.other">Other</option></select></div>
<div class="field" data-show-if="matter_type" data-show-equals="other"><label for="fg-matter_other"><span data-i18n="matter_other">Short topic</span></label><input id="fg-matter_other" name="matter_other" type="text" maxlength="120"></div>
<div class="field"><label for="fg-deadline"><span data-i18n="deadline">Is there a deadline?</span></label><input id="fg-deadline" name="deadline" type="date"></div></section>
<section><h2 data-i18n="section.person">You</h2>
<div class="field"><label for="fg-name"><span data-i18n="name">Name</span></label><input id="fg-name" name="name" type="text" required maxlength="80" autocomplete="name"></div>
<div class="field"><label for="fg-email"><span data-i18n="email">Email</span></label><input id="fg-email" name="email" type="email" required maxlength="120" autocomplete="email"></div>
<div class="field"><label for="fg-phone"><span data-i18n="phone">Phone</span></label><input id="fg-phone" name="phone" type="tel" required maxlength="40" autocomplete="tel"></div>
<div class="field"><label for="fg-company"><span data-i18n="company">Company, if any</span></label><input id="fg-company" name="company" type="text" maxlength="120" autocomplete="organization"></div></section>
<section><h2 data-i18n="section.summary">Summary</h2>
<div class="field"><label for="fg-summary"><span data-i18n="summary">What do you need a call about? Do not paste a whole case file.</span></label><textarea id="fg-summary" name="summary" required maxlength="800"></textarea></div></section>
<section><h2 data-i18n="section.consent">Consent</h2>
<div class="field"><label class="check"><input id="fg-consent_contact" name="consent_contact" type="checkbox" value="yes" required><span data-i18n="consent_contact">I agree to be contacted about this request.</span></label></div>
<div class="field"><label class="check"><input id="fg-consent_privacy" name="consent_privacy" type="checkbox" value="yes" required><span data-i18n="consent_privacy">I agree that these answers are stored so the request can be handled.</span></label></div></section>
<!-- Turnstile hook: enable Turnstile on this form in Formgong, then set your site key.
<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
<div class="cf-turnstile" data-sitekey="YOUR_TURNSTILE_SITE_KEY"></div>
-->
<button type="submit" data-i18n="submit">Send</button>
<p data-status role="status"></p>
</form>
</main>
<script type="application/json" id="fg-labels">{"uk":{"title":"Форма звернення до юриста","lede":"Прохання про дзвінок юриста. Це не консультація і не матеріали справи.","submit":"Надіслати","thanks":"Надіслано. Дякуємо.","file_too_big":"Файл більший за 24 КБ. Додайте посилання.","note":"Ця форма — прохання про дзвінок. Це не юридична консультація і не матеріали справи.","section.matter":"Питання","matter_type":"Про що йдеться?","matter_type.contract":"Договір","matter_type.dispute":"Спір","matter_type.company":"Компанія","matter_type.family":"Сім'я","matter_type.other":"Інше","matter_other":"Коротка тема","deadline":"Чи є строк?","section.person":"Ви","name":"Ім'я","email":"Електронна пошта","phone":"Телефон","company":"Компанія, якщо є","section.summary":"Стисло","summary":"Про що потрібен дзвінок? Не вставляйте всю справу.","section.consent":"Згода","consent_contact":"Погоджуюсь, щоб зі мною зв'язалися щодо цієї заявки.","consent_privacy":"Погоджуюсь, що ці відповіді зберігаються, щоб заявку можна було обробити."},"en":{"title":"Legal inquiry form","lede":"Ask a lawyer to call you back. This is not legal advice and it is not a case file.","submit":"Send","thanks":"Sent. Thank you.","file_too_big":"That file is over 24 KB. Paste a link instead.","note":"This form asks for a callback. It is not legal advice and it is not a case file.","section.matter":"Matter","matter_type":"What is it about?","matter_type.contract":"A contract","matter_type.dispute":"A dispute","matter_type.company":"A company","matter_type.family":"Family","matter_type.other":"Other","matter_other":"Short topic","deadline":"Is there a deadline?","section.person":"You","name":"Name","email":"Email","phone":"Phone","company":"Company, if any","section.summary":"Summary","summary":"What do you need a call about? Do not paste a whole case file.","section.consent":"Consent","consent_contact":"I agree to be contacted about this request.","consent_privacy":"I agree that these answers are stored so the request can be handled."},"pl":{"title":"Formularz zapytania do prawnika","lede":"Prośba o telefon od prawnika. To nie jest porada prawna ani akta sprawy.","submit":"Wyślij","thanks":"Wysłano. Dziękujemy.","file_too_big":"Plik ma ponad 24 KB. Wklej link.","note":"Ten formularz to prośba o kontakt. To nie jest porada prawna ani akta sprawy.","section.matter":"Sprawa","matter_type":"Czego dotyczy?","matter_type.contract":"Umowa","matter_type.dispute":"Spór","matter_type.company":"Spółka","matter_type.family":"Rodzina","matter_type.other":"Inne","matter_other":"Krótki temat","deadline":"Czy jest termin?","section.person":"Ty","name":"Imię","email":"E-mail","phone":"Telefon","company":"Firma, jeśli jest","section.summary":"Skrót","summary":"W jakiej sprawie mamy zadzwonić? Nie wklejaj całych akt.","section.consent":"Zgoda","consent_contact":"Zgadzam się na kontakt w sprawie tego zgłoszenia.","consent_privacy":"Zgadzam się, aby te odpowiedzi zostały zapisane w celu obsługi zgłoszenia."},"tr":{"title":"Avukat başvuru formu","lede":"Avukatın sizi araması için istek. Bu hukuki danışmanlık ya da dava dosyası değildir.","submit":"Gönder","thanks":"Gönderildi. Teşekkürler.","file_too_big":"Dosya 24 KB'den büyük. Bağlantı ekleyin.","note":"Bu form bir geri arama isteğidir. Hukuki danışmanlık ya da dava dosyası değildir.","section.matter":"Konu","matter_type":"Ne hakkında?","matter_type.contract":"Sözleşme","matter_type.dispute":"Uyuşmazlık","matter_type.company":"Şirket","matter_type.family":"Aile","matter_type.other":"Diğer","matter_other":"Kısa konu","deadline":"Bir son tarih var mı?","section.person":"Siz","name":"Ad","email":"E-posta","phone":"Telefon","company":"Varsa şirket","section.summary":"Özet","summary":"Hangi konuda arayalım? Dava dosyasının tamamını yapıştırmayın.","section.consent":"Onay","consent_contact":"Bu talep hakkında benimle iletişime geçilmesini kabul ediyorum.","consent_privacy":"Bu yanıtların talebin işlenmesi için saklanmasını kabul ediyorum."}}</script>
<script>
(function () {
  var MAX = 24576;
  var form = document.getElementById("fg-form");
  var packNode = document.getElementById("fg-labels");
  if (!form || !packNode) return;
  var pack = JSON.parse(packNode.textContent);
  function code() {
    var q = new URLSearchParams(location.search).get("lang") || "";
    var raw = (q || document.documentElement.lang || (navigator.language || "en")).slice(0, 2).toLowerCase();
    return pack[raw] ? raw : "en";
  }
  function apply() {
    var dict = pack[code()];
    document.querySelectorAll("[data-i18n]").forEach(function (node) {
      var key = node.getAttribute("data-i18n");
      if (key && typeof dict[key] === "string") node.textContent = dict[key];
    });
  }
  apply();
  var status = form.querySelector("[data-status]");
  form.addEventListener("submit", function (event) {
    event.preventDefault();
    var dict = pack[code()];
    var body = {};
    var files = [];
    new FormData(form).forEach(function (value, key) {
      if (typeof File !== "undefined" && value instanceof File) {
        if (value.size) files.push([key, value]);
        return;
      }
      body[key] = String(value);
    });
    if (files.some(function (pair) { return pair[1].size > MAX; })) {
      if (status) status.textContent = dict.file_too_big;
      return;
    }
    Promise.all(files.map(function (pair) {
      return readFile(pair[1]).then(function (data) {
        body[pair[0] + "_filename"] = pair[1].name;
        body[pair[0] + "_data"] = data;
      });
    })).then(function () {
      return fetch(form.action, {
        method: "POST",
        headers: { "Content-Type": "application/json", Accept: "application/json" },
        body: JSON.stringify(body)
      });
    }).then(function (response) { return response.json(); }).then(function (result) {
      if (status) status.textContent = result && result.success ? dict.thanks : ((result && result.message) || "error");
    }).catch(function () {
      if (status) status.textContent = "error";
    });
  });
  function readFile(file) {
    return new Promise(function (resolve, reject) {
      var reader = new FileReader();
      reader.onload = function () {
        var raw = String(reader.result || "");
        var comma = raw.indexOf(",");
        resolve(comma === -1 ? raw : raw.slice(comma + 1));
      };
      reader.onerror = function () { reject(reader.error); };
      reader.readAsDataURL(file);
    });
  }
})();
</script>
</body>
</html>