HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/web/hyperflight/apps/index.asp
<%
Response.Buffer = True
Response.Expires = -1
Response.ExpiresAbsolute = #1/1/1980#
Response.AddHeader "Cache-Control", "no-store, no-cache, must-revalidate, max-age=0"
Response.AddHeader "Pragma", "no-cache"
%>
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>HyperFlight Apps</title>

  <link
    href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css"
    rel="stylesheet"
  >

  <style>
    :root {
      --app-page-bg: #f5f7f9;
      --app-card-border: #dee2e6;
      --app-card-border-hover: #b9c2ca;
      --app-icon-bg: #e9f2ff;
      --app-icon-colour: #0d6efd;
    }

    body {
      background: var(--app-page-bg);
      color: #212529;
    }

    .apps-navbar {
      background: rgba(255, 255, 255, .96);
    }

    .apps-main {
      max-width: 1320px;
    }

    .page-intro {
      max-width: 720px;
    }

    .app-card {
      display: block;
      height: 100%;
      color: inherit;
      text-decoration: none;
      background: #fff;
      border: 1px solid var(--app-card-border);
      border-radius: .85rem;
      box-shadow: 0 .125rem .35rem rgba(33, 37, 41, .04);
      transition:
        transform .14s ease,
        box-shadow .14s ease,
        border-color .14s ease;
    }

    .app-card:hover {
      color: inherit;
      border-color: var(--app-card-border-hover);
      box-shadow: 0 .55rem 1.25rem rgba(33, 37, 41, .09);
      transform: translateY(-3px);
    }

    .app-card:focus-visible {
      color: inherit;
      outline: 3px solid rgba(13, 110, 253, .3);
      outline-offset: 3px;
    }

    .app-card-body {
      padding: 1.25rem;
    }

    .app-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2.75rem;
      height: 2.75rem;
      flex: 0 0 2.75rem;
      color: var(--app-icon-colour);
      background: var(--app-icon-bg);
      border-radius: .75rem;
    }

    .app-icon svg {
      width: 1.35rem;
      height: 1.35rem;
    }

    .app-title {
      margin-bottom: .3rem;
      font-size: 1.1rem;
      font-weight: 650;
    }

    .app-description {
      margin-bottom: 1.25rem;
      color: #5c636a;
      line-height: 1.45;
    }

    .app-badge {
      font-weight: 500;
      color: #495057 !important;
      background: #f1f3f5 !important;
      border: 1px solid #e2e6ea;
    }

    @media (prefers-reduced-motion: reduce) {
      .app-card {
        transition: none;
      }

      .app-card:hover {
        transform: none;
      }
    }
  </style>
</head>

<body>
  <nav class="navbar apps-navbar border-bottom">
    <div class="container-fluid px-3 px-lg-4">
      <span class="navbar-brand mb-0 fw-semibold">HyperFlight Apps</span>
    </div>
  </nav>

  <main class="container apps-main py-4 py-lg-5">
    <header class="page-intro mb-4">
      <h1 class="h3 mb-2">Apps</h1>
      <p class="text-secondary mb-0">
        Internal tools for managing operations, monitoring orders and deliveries, and analysing performance.
      </p>
    </header>

    <div class="row g-3 g-lg-4">

      <!-- Live Orders -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/~tab/" aria-label="Open Live Orders">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M5.5 5.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5Z"/>
                  <path d="M4 1.5A1.5 1.5 0 0 0 2.5 3v10A1.5 1.5 0 0 0 4 14.5h8a1.5 1.5 0 0 0 1.5-1.5V3A1.5 1.5 0 0 0 12 1.5h-1.5a.5.5 0 0 0-.5-.5H6a.5.5 0 0 0-.5.5H4Zm2.5.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1ZM4 2.5h1.5A1.5 1.5 0 0 0 7 4h2a1.5 1.5 0 0 0 1.5-1.5H12a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-.5.5H4a.5.5 0 0 1-.5-.5V3a.5.5 0 0 1 .5-.5Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <div class="d-flex flex-wrap align-items-center gap-2">
                  <h2 class="app-title mb-0">Live Orders</h2>
                  <span class="badge rounded-pill app-badge">~tab</span>
                </div>
                <p class="app-description mt-2">
                  Monitor live orders and their current processing status.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

      <!-- InXpress Invoices -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/inxpress/invoices" aria-label="Open InXpress Invoices">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M4 0h5.5L14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2Zm5 1.5V5h3.5L9 1.5ZM4 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6h-4a1 1 0 0 1-1-1V1H4Z"/>
                  <path d="M5 8.5A.5.5 0 0 1 5.5 8h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm0 2A.5.5 0 0 1 5.5 10h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5H8a.5.5 0 0 1 0 1H5.5a.5.5 0 0 1-.5-.5Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <h2 class="app-title">InXpress Invoices</h2>
                <p class="app-description">
                  Browse courier invoice PDFs and inspect related shipments.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

      <!-- Order & Delivery Status -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/status/" aria-label="Open Order and Delivery Status">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M0 3.5A1.5 1.5 0 0 1 1.5 2h7A1.5 1.5 0 0 1 10 3.5V5h2.5c.4 0 .78.16 1.06.44l1 1c.28.28.44.66.44 1.06V11a1 1 0 0 1-1 1h-.17a2 2 0 1 1-3.66 0H5.83a2 2 0 1 1-3.66 0H1a1 1 0 0 1-1-1V3.5ZM1.5 3a.5.5 0 0 0-.5.5V11h1.17a2 2 0 0 1 3.66 0H9V3.5a.5.5 0 0 0-.5-.5h-7ZM10 6v5h.17a2 2 0 0 1 3.66 0H14V7.5a.5.5 0 0 0-.15-.35l-1-1A.5.5 0 0 0 12.5 6H10ZM4 13a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm8 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"/>
                  <path d="M6.85 4.15a.5.5 0 0 1 0 .7l-2 2a.5.5 0 0 1-.7 0l-1-1a.5.5 0 1 1 .7-.7l.65.64 1.65-1.64a.5.5 0 0 1 .7 0Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <h2 class="app-title">Order &amp; Delivery Status</h2>
                <p class="app-description">
                  View current order status and delivery totals by carrier.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

      <!-- Stock Ledger & Audit -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/stockflow/" aria-label="Open Stock Ledger and Audit">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M8.21.21a.75.75 0 0 0-.42 0l-6.5 2.25A.75.75 0 0 0 .75 3.17v9.66c0 .32.2.6.5.71l6.5 2.25c.16.06.34.06.5 0l6.5-2.25a.75.75 0 0 0 .5-.71V3.17a.75.75 0 0 0-.5-.71L8.21.21ZM8 1.22l5.48 1.9L8 5.02l-5.48-1.9L8 1.22ZM1.75 4.22l5.75 1.99v8.4l-5.75-1.99v-8.4Zm6.75 10.4v-8.4l5.75-1.99v8.4L8.5 14.62Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <h2 class="app-title">Stock Ledger &amp; Audit</h2>
                <p class="app-description">
                  Trace stock movements and investigate discrepancies.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

      <!-- Royal Mail Delivery -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/royalmaildelivery/" aria-label="Open Royal Mail Delivery">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M0 3.5A1.5 1.5 0 0 1 1.5 2h8A1.5 1.5 0 0 1 11 3.5V5h1.5c.4 0 .78.16 1.06.44l1 1c.28.28.44.66.44 1.06V11a1 1 0 0 1-1 1h-.17a2 2 0 1 1-3.66 0H5.83a2 2 0 1 1-3.66 0H1a1 1 0 0 1-1-1V3.5ZM1.5 3a.5.5 0 0 0-.5.5V11h1.17a2 2 0 0 1 3.66 0H10V3.5a.5.5 0 0 0-.5-.5h-8Zm9.5 3v5h.17a2 2 0 0 1 3.66 0H14V7.5a.5.5 0 0 0-.15-.35l-1-1A.5.5 0 0 0 12.5 6H11ZM4 13a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm8 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <h2 class="app-title">Royal Mail Delivery</h2>
                <p class="app-description">
                  Review changes to Royal Mail delivery services.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

      <!-- Search Log Analysis -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/search-log-analysis/" aria-label="Open Search Log Analysis">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85-.017.016ZM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <h2 class="app-title">Search Log Analysis</h2>
                <p class="app-description">
                  Analyse customer searches, results and zero-result terms.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

      <!-- Sales Analytics -->
      <div class="col-12 col-md-6">
        <a class="app-card" href="/apps/sales-analytics/" aria-label="Open Sales Analytics">
          <div class="app-card-body">
            <div class="d-flex align-items-start gap-3">
              <span class="app-icon" aria-hidden="true">
                <svg viewBox="0 0 16 16" fill="currentColor">
                  <path d="M0 0h1v15h15v1H0V0Z"/>
                  <path d="M3 12.5a.5.5 0 0 1-.5-.5V9a.5.5 0 0 1 1 0v3a.5.5 0 0 1-.5.5Zm3 0a.5.5 0 0 1-.5-.5V6a.5.5 0 0 1 1 0v6a.5.5 0 0 1-.5.5Zm3 0a.5.5 0 0 1-.5-.5V7.5a.5.5 0 0 1 1 0V12a.5.5 0 0 1-.5.5Zm3 0a.5.5 0 0 1-.5-.5V3a.5.5 0 0 1 1 0v9a.5.5 0 0 1-.5.5Z"/>
                </svg>
              </span>
              <div class="flex-grow-1">
                <h2 class="app-title">Sales Analytics</h2>
                <p class="app-description">
                  Explore sales and orders by product, category and country.
                </p>
              </div>
            </div>
          </div>
        </a>
      </div>

    </div>
  </main>
</body>
</html>