<div class="news-form mt-5">
  <div class="text-center title">
    <h4>線上諮詢</h4>
    <p>與我們合作,馬上展開全新的創作里程碑</p>
  </div>
  <form>
    <div class="mb-4 align-items-center">
      <label for="nameValue">
        聯繫人稱呼 <span class="text-danger">*</span>
      </label>
      <div class="mt-2">
        <input type="text" class="form-control" id="nameValue" placeholder="請留下聯繫人稱呼" required>
      </div>
    </div>

    <div class="row mb-4 align-items-center">
      <label for="phoneValue">
        聯絡電話 <span class="text-danger">*</span>
      </label>
      <div class="mt-2 col-sm-4">
        <select id="countryCode" class="form-select">
          <option selected>選擇國碼</option>
        </select>
      </div>
      <div class="mt-3 mt-sm-2 col-sm-8">
        <input type="tel" class="form-control" id="phoneCode" placeholder="e.g., 988 888 888" required>
      </div>
    </div>

    <div class="mb-4 align-items-center">
      <label for="companyValue">
        公司名稱 (非必填)
      </label>
      <div class="mt-2">
        <input type="text" class="form-control" id="companyValue" placeholder="請留下公司名稱">
      </div>
    </div>

    <div class="mb-4 align-items-center">
      <label for="companyValue">
        LINE ID (非必填)
      </label>
      <div class="mt-2">
        <input type="text" class="form-control" id="lineidValue" placeholder="請留下 LINE ID">
      </div>
    </div>

    <div class="mb-4 align-items-center">
      <label for="emailValue">
        電子信箱 <span class="text-danger">*</span>
      </label>
      <div class="mt-2">
        <input type="email" class="form-control" id="emailValue" placeholder="請留下 E-mail" required>
      </div>

      <div class="invalid-feedback">
        Please choose a username.
      </div>
    </div>

    <div class="mb-4 align-items-center">
      <label for="dateValue">
        預計執行日期 <span class="text-danger">*</span>
      </label>
      <div class="mt-2 d-flex align-items-center">
        <input type="date" id="dateValue" name="dateValue" class="px-2"
          style="border:1px solid #ced4da; border-radius: 3px;" required />
      </div>
    </div>


    <div class="mb-4 align-items-center">
      <label for="captionValue">
        需求說明 <span class="text-danger">*</span>
      </label>
      <div class="mt-2">
        <textarea class="form-control" id="captionValue" rows="3" placeholder="請簡述說明" required></textarea>
      </div>
    </div>


    <div class="mt-2">
      <div class="form-check">
        <input class="form-check-input mt-2" type="checkbox" id="agreeValue">
        <label class="form-check-label w-100" for="agreeValue">
          本人同意集仕多搜集資料
        </label>
      </div>
    </div>

    <div style="height: 15px;">
      <span class="errorText text-danger">尚有欄位未填寫</span>
    </div>

    <div class="d-flex justify-content-center mt-5">

      <button type="submit" class="submit-btn" id="submitBtn">
        <span class="spinner-border spinner-border-sm me-2 loading-btn" role="status" aria-hidden="true"></span>
        提交
      </button>
    </div>
  </form>
</div>

<script src="//code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8="
  crossorigin="anonymous"></script>

<script src="https://cdn.jsdelivr.net/npm/@supabase/supabase-js@2"></script>

<script type="module">
  import { createClient } from 'https://esm.sh/@supabase/supabase-js@2'

  const supabase = createClient('http://172.105.241.163:8000', 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q');

  // 電話國碼
  const countryCodes = [
    '+1',   // 美國
    '+7',   // 俄羅斯
    '+33',  // 法國
    '+39',  // 義大利
    '+44',  // 英國
    '+46',  // 瑞典
    '+47',  // 挪威
    '+49',  // 德國
    '+52',  // 墨西哥
    '+60',  // 馬來西亞
    '+61',  // 澳大利亞
    '+62',  // 印尼
    '+64',  // 紐西蘭
    '+65',  // 新加坡
    '+66',  // 泰國
    '+81',  // 日本
    '+82',  // 南韓
    '+86',  // 中國大陸
    '+91',  // 印度
    '+353', // 愛爾蘭
    '+852', // 香港
    '+853', // 澳門
    '+886', // 台灣
  ];

  console.log(countryCodes);
  const countryCode = document.getElementById('countryCode');
  countryCodes.forEach(code => {
    const option = document.createElement('option');
    option.value = code;
    option.text = code;
    countryCode.appendChild(option);
  });


  $('.errorText').hide();
  $('.loading-btn').hide();
  const scriptURL = 'https://script.google.com/macros/s/AKfycbzuwioqhnP2oL0AdHaYgEBvf0t0yWi2OTxZYlPYSoLuPyHhQFJKMm5mgOCoZEx-cIckbA/exec';


  async function send() {
    console.log('addEventListener');
    let name = document.querySelector('#nameValue').value; // 聯絡人
    let phone; // 聯絡電話
    let company = document.querySelector('#companyValue').value; // 公司名稱
    let email = document.querySelector('#emailValue').value; // 電子信箱
    // let demand; // 需求目的
    let caption = document.querySelector('#captionValue').value; // 需求說明

    let lineid = document.querySelector('#lineidValue').value; // 需求說明


    let date = document.querySelector('#dateValue').value; // 預計活動需求日
    let agree; // 搜集資料
    let time; // 填單時間

    // 取得當下時間
    const now = new Date();
    const options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit' };
    time = now.toLocaleString('zh-TW', options);
    console.log('time', time);

    if (document.querySelector('input[id="agreeValue"]:checked')) {
      agree = "同意";
    } else {
      agree = "不同意";
    }

    // if (document.querySelector('input[name="demandValue"]:checked')) {
    //   demand = document.querySelector('input[name="demandValue"]:checked').value;
    // }

    // if (demand === "其他") {
    //   demand = document.querySelector('#otherText').value;
    // }

    let countryCode = document.querySelector('#countryCode').value; // 國碼
    let phoneCode = document.querySelector('#phoneCode').value; // 電話號碼

    phone = `${countryCode} ${phoneCode}`;

    const insertdata = {
      "name": name,
      "phone": phone,
      "company": company,
      "email": email,
      "lineid": lineid,
      "caption": caption,
      "date": date,
      "agree": agree,
      "time": time
    }

    console.log(insertdata);

    $.ajax({
      url: scriptURL,
      method: "post",
      data: {
        "name": name,
        "phone": phone,
        "company": company,
        "email": email,
        "lineid": lineid,
        "caption": caption,
        "date": date,
        "agree": agree,
        "time": time
      },
      success: function (response) {
        if (response == "成功") {
          $('.loading-btn').hide();
          alert("成功提交!");
        }
      },
    });
  }

  $('button').on('click', function (e) {
    e.preventDefault();

    let countryCode = document.querySelector('#countryCode').value;

    // let demand = ""; // 需求目的
    // if (document.querySelector('input[name="demandValue"]:checked')) {
    //   demand = document.querySelector('input[name="demandValue"]:checked').value;
    // }

    // if (demand === "其他") {
    //   demand = document.querySelector('#otherText').value;
    // }

    // 手動觸發表單提交
    let form = $(this).closest('form');
    form[0].reportValidity(); // 顯示瀏覽器內建錯誤提示

    if (countryCode === "選擇國碼") {
      console.log('表單未通過驗證');
      $('.errorText').show();
      return;
    }

    if (form[0].reportValidity()) {
      $('.loading-btn').show();
      $('.errorText').hide();
      send();
    }
  });
</script>