{"id":249,"date":"2026-02-08T01:00:20","date_gmt":"2026-02-08T01:00:20","guid":{"rendered":"https:\/\/greenwifi.click\/?page_id=249"},"modified":"2026-02-08T01:15:33","modified_gmt":"2026-02-08T01:15:33","slug":"order","status":"publish","type":"page","link":"https:\/\/greenwifi.click\/index.php\/order\/","title":{"rendered":"Request your Network"},"content":{"rendered":"\n<!-- GreenWiFi Order Form (no plugin) -->\n<style>\n  .gw-container { max-width: 720px; margin: 0 auto; padding: 24px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }\n  .gw-card { border: 1px solid #e5e7eb; border-radius: 14px; padding: 18px; }\n  .gw-title { font-size: 34px; font-weight: 700; margin: 6px 0 10px; }\n  .gw-sub { color: #6b7280; margin: 0 0 18px; }\n  .gw-row { display: grid; gap: 14px; }\n  .gw-field label { display: block; font-weight: 600; margin-bottom: 6px; }\n  .gw-field input, .gw-field select { width: 100%; padding: 12px 12px; border: 1px solid #d1d5db; border-radius: 10px; font-size: 16px; }\n  .gw-help { font-size: 13px; color: #6b7280; margin-top: 6px; }\n  .gw-actions { display: flex; gap: 12px; margin-top: 16px; flex-wrap: wrap; }\n  .gw-btn { padding: 12px 14px; border-radius: 10px; border: 1px solid #111827; background: #111827; color: white; font-weight: 700; cursor: pointer; }\n  .gw-btn.secondary { background: white; color: #111827; }\n  .gw-note { margin-top: 16px; font-size: 12px; color: #6b7280; line-height: 1.4; }\n  .gw-error { color: #b91c1c; font-size: 13px; display: none; }\n<\/style>\n\n<div class=\"gw-container\">\n  <div class=\"gw-card\">\n    <div class=\"gw-title\">Event Internet \u2014 Ordering<\/div>\n    <p class=\"gw-sub\">Select your venue, then enter the network details. You\u2019ll be redirected to payment.<\/p>\n\n    <div id=\"gwError\" class=\"gw-error\">Please fill the required fields.<\/div>\n\n    <div class=\"gw-row\">\n      <div class=\"gw-field\">\n        <label for=\"eventSite\">Event Space <span style=\"color:#dc2626\">*<\/span><\/label>\n        <select id=\"eventSite\" required=\"\">\n          <option value=\"\">Select an event space\u2026<\/option>\n          <option>Iron &amp; Brick Hall<\/option>\n          <option>Foundry Loft 47<\/option>\n          <option>Harborline Warehouse<\/option>\n          <option>Riverview Assembly<\/option>\n          <option>The Keystone Loft<\/option>\n          <option>Pier 18 Event Space<\/option>\n        <\/select>\n        <\/div>\n\n      <div class=\"gw-field\">\n        <label for=\"ssid\">SSID (WiFi Name) <span style=\"color:#dc2626\">*<\/span><\/label>\n        <input id=\"ssid\" type=\"text\" maxlength=\"32\" placeholder=\"e.g., Wedding_Guest_WiFi\" required=\"\">\n        <div class=\"gw-help\">Avoid special characters if you want fewer support calls.<\/div>\n      <\/div>\n\n      <div class=\"gw-field\">\n        <label for=\"wifiPass\">Password <span style=\"color:#dc2626\">*<\/span><\/label>\n        <input id=\"wifiPass\" type=\"text\" minlength=\"8\" maxlength=\"63\" placeholder=\"8\u201363 characters\" required=\"\">\n        <div class=\"gw-help\">WPA2\/WPA3 best practice: 12+ characters.<\/div>\n      <\/div>\n\n      <div class=\"gw-field\">\n        <label for=\"contactEmail\">Email <span style=\"color:#dc2626\">*<\/span><\/label>\n        <input id=\"contactEmail\" type=\"email\" placeholder=\"for receipt + confirmation\" required=\"\">\n      <\/div>\n    <\/div>\n\n    <div class=\"gw-actions\">\n      <button class=\"gw-btn\" id=\"payBtn\" type=\"button\">Proceed to Payment<\/button>\n      <button class=\"gw-btn secondary\" id=\"copyBtn\" type=\"button\">Copy Order Details<\/button>\n    <\/div>\n\n    <div class=\"gw-note\">\n      Service availability, pricing, and scope may vary by venue and event requirements. Submitting a request does not constitute a service agreement.\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n  \/\/ 1) Auto-select venue from query param (?event-site=...)\n  (function prefillVenue() {\n    const params = new URLSearchParams(window.location.search);\n    const venue = params.get(\"event-site\");\n    if (!venue) return;\n\n    const sel = document.getElementById(\"eventSite\");\n    const decoded = venue.replace(\/\\+\/g, \" \"); \/\/ just in case\n    for (const opt of sel.options) {\n      if (opt.value === decoded || opt.text === decoded) {\n        sel.value = opt.value || opt.text;\n        break;\n      }\n    }\n  })();\n\n  function getOrderData() {\n    return {\n      eventSite: document.getElementById(\"eventSite\").value.trim(),\n      ssid: document.getElementById(\"ssid\").value.trim(),\n      wifiPass: document.getElementById(\"wifiPass\").value.trim(),\n      email: document.getElementById(\"contactEmail\").value.trim()\n    };\n  }\n\n  function validate(d) {\n    return d.eventSite && d.ssid && d.wifiPass && d.email;\n  }\n\n  \/\/ 2) Redirect to payment (replace CHECKOUT_URL with your real Stripe\/Square\/PayPal link)\n  document.getElementById(\"payBtn\").addEventListener(\"click\", () => {\n    const d = getOrderData();\n    const err = document.getElementById(\"gwError\");\n\n    if (!validate(d)) {\n      err.style.display = \"block\";\n      return;\n    }\n    err.style.display = \"none\";\n\n    \/\/ Put non-sensitive data in the query string for the payment page (SSID is usually fine; password is sensitive)\n    \/\/ Safer: do NOT include wifiPass in the URL. Keep it local or send server-side.\n    const CHECKOUT_URL = \"https:\/\/example.com\/checkout\"; \/\/ <-- replace\n\n    const qs = new URLSearchParams({\n      eventSite: d.eventSite,\n      ssid: d.ssid,\n      email: d.email\n    });\n\n    window.location.href = CHECKOUT_URL + \"?\" + qs.toString();\n  });\n\n  \/\/ 3) Copy order details (for your ops team \/ internal ticket)\n  document.getElementById(\"copyBtn\").addEventListener(\"click\", async () => {\n    const d = getOrderData();\n    const text =\n`GreenWiFi Order\nEvent Space: ${d.eventSite || \"(not set)\"}\nSSID: ${d.ssid || \"(not set)\"}\nPassword: ${d.wifiPass || \"(not set)\"}\nEmail: ${d.email || \"(not set)\"}`;\n\n    try {\n      await navigator.clipboard.writeText(text);\n      alert(\"Copied.\");\n    } catch {\n      alert(\"Copy failed (browser blocked clipboard).\");\n    }\n  });\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Event Internet \u2014 Ordering Select your venue, then enter the network details. You\u2019ll be redirected to payment. Please fill the required fields. Event Space * Select an event space\u2026Iron &amp; Brick HallFoundry Loft 47Harborline WarehouseRiverview AssemblyThe Keystone LoftPier 18 Event Space SSID (WiFi Name) * Avoid special characters if you want fewer support calls. Password [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_mi_skip_tracking":false},"_links":{"self":[{"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/pages\/249"}],"collection":[{"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/comments?post=249"}],"version-history":[{"count":2,"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/pages\/249\/revisions"}],"predecessor-version":[{"id":255,"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/pages\/249\/revisions\/255"}],"wp:attachment":[{"href":"https:\/\/greenwifi.click\/index.php\/wp-json\/wp\/v2\/media?parent=249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}