mirror of
https://github.com/empayre/fleet.git
synced 2024-11-07 09:18:59 +00:00
ac220ba6e5
* trivial * Simplify build-static-content script and rip out the old markdown compilation for query library * improve error msg * trivial * move helper * bring in the skeleton * Compile handbook as well, and bring more stuff inline * instead of generating sitemap.xml file, could just serve it as a route * Serve sitemap.xml on the fly * add failsafe to prevent search engine accidents * add remaining hand-coded pages to sitemap * rearrange routes and get rid of commented-out ones * Update build-static-content.js * stub out the remaining pieces * Add assertion (Which actually helped catch a real duplicate query: get-mac-os-disk-free-space-percentage) * clean out inadvertently committed stuff in sailsrc * route and serve data for correct query by slug + fix error message re duplicate query slugs + added assertion for duplicate doc page slugs * yaml == dev dependency * remove doc-templater dependency, as promised * stub out handbook page * clarify comments & remove unnecessary skipAssets * Update build-static-content.js * res.badConfig() * add missing exit that I left out back inec95df6a4b
* remove unused file * update comments before commenting out and moving over to basic-documentation.less * move example styling of generated HTML over to docs/handbook * include both links * Fix sitemap.xml URLs in local dev by fixing baseUrl config for local development (since Fleet itself is on 1337). * followup tod55c777590
* Include query pages in sitemap.xml (+make urls generated for docs/handbook in build script slightly more real) -- but also don't serve sitemap * sails.config.builtStaticContent.allPages » sails.config.buildStaticContent.markdownPages (also remove unnecessary trailing slash trimming) * trivial * check config when serving sitemap + smarter error message for contributors * hook up GitHub link to edit the query * remove html ids * Update query-detail.ejs * somre more setup re https://github.com/fleetdm/fleet/issues/368#issuecomment-848566533
311 lines
52 KiB
Plaintext
Vendored
311 lines
52 KiB
Plaintext
Vendored
<%
|
|
// In case we're displaying the 404 or 500 page and relevant code in the "custom" hook was not able to run,
|
|
// we make sure certain view locals exist that are commonly used in this layout.ejs file. This ensures we
|
|
// don't have to do `typeof` checks below.
|
|
var me;
|
|
var isHomepage;
|
|
%><!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Fleet for osquery | Open source device management</title>
|
|
|
|
<% /* Viewport tag for sensible mobile support */ %>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
|
|
|
<% /* Script tags should normally be included further down the page- but any
|
|
scripts that load fonts (e.g. Fontawesome ≥v5) are special exceptions to the
|
|
rule. (Include them up here along with any hard-coded «link» tags for Typekit,
|
|
Google Fonts, etc. - above the «body» to prevent the page flickering when fonts
|
|
load.) */ %>
|
|
<link href="https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;500;600;700;800;900&family=Nunito:wght@300;400;500;600;700;800;900&display=swap&Source+Code+Pro&display=swap" rel="stylesheet">
|
|
|
|
<% /* Certain scripts, normally analytics tools like Google Tag Manager and
|
|
Google Analytics, should only be included in production: */
|
|
if (sails.config.environment === 'production') { %>
|
|
<% /* Google Analytics, Google Tag Manager, etc. */ %>
|
|
<!-- Global site tag (gtag.js) - Google Analytics -->
|
|
<script async src="https://www.googletagmanager.com/gtag/js?id=G-JC3DRNY1GV"></script>
|
|
<script>window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-JC3DRNY1GV');</script>
|
|
<% }
|
|
/* Otherwise, any such scripts are excluded, and we instead inject a
|
|
robots/noindex meta tag to help prevent any unwanted visits from search engines. */
|
|
else { %>
|
|
<meta name="robots" content="noindex">
|
|
<% } %>
|
|
|
|
<% /*
|
|
Stylesheets
|
|
========================
|
|
|
|
Stylesheets can be hard-coded as «link» tags, automatically injected
|
|
by the asset pipeline between "STYLES" and "STYLES END", or both.
|
|
(https://sailsjs.com/docs/concepts/assets/task-automation)
|
|
*/ %>
|
|
|
|
<% /* Auto-injected «link» tags: */ %>
|
|
<!--STYLES-->
|
|
<link rel="stylesheet" href="/dependencies/bootstrap-4/bootstrap-4.css">
|
|
<link rel="stylesheet" href="/dependencies/fontawesome.css">
|
|
<link rel="stylesheet" href="/styles/importer.css">
|
|
<!--STYLES END-->
|
|
</head>
|
|
<body>
|
|
<div purpose="page-wrap">
|
|
<div style="max-width: 1440px" class="<%= isHomepage ? 'homepage-header' : 'header' %> container-fluid d-flex justify-content-between align-items-center pt-3 pb-3 px-4 px-sm-5" purpose="page-header">
|
|
<a href="/">
|
|
<% /* The homepage-header on the homepage has a white fleet logo */ %>
|
|
<% if (isHomepage) { %>
|
|
<img alt="Fleet logo" src="/images/logo-white-162x92@2x.png" style="height: 92px; width: 162px;"/>
|
|
<% } else { %>
|
|
<img alt="Fleet logo" src="/images/logo-blue-162x92@2x.png" style="height: 92px; width: 162px;"/>
|
|
<% } %>
|
|
</a>
|
|
<div class="d-flex d-lg-none">
|
|
<button style="font-size: 16px; text-decoration: none;" class="header-btn btn btn-link d-flex align-items-center" data-toggle="collapse" data-target="#navbarToggleExternalContent">
|
|
<span class="mr-2">Menu</span>
|
|
<% /* The hamburger icon on the homepage is white */ %>
|
|
<% if (isHomepage) { %>
|
|
<img alt="An icon indicating that interacting with this button will open the navigation menu." src="/images/icon-hamburger-16x14@2x.png" style="width: 16px;" />
|
|
<% } else { %>
|
|
<img alt="An icon indicating that interacting with this button will open the navigation menu." src="/images/icon-hamburger-blue-16x14@2x.png" style="width: 16px;" />
|
|
<% } %>
|
|
</button>
|
|
<div class="mobile-menu collapse px-4 px-sm-5" id="navbarToggleExternalContent">
|
|
<div class="d-flex justify-content-between">
|
|
<a href="/">
|
|
<img alt="Fleet logo" src="/images/logo-blue-162x92@2x.png" style="height: 92px; width: 162px;" class="mt-3"/>
|
|
</a>
|
|
<button style="font-size: 16px; text-decoration: none;" class="header-btn btn btn-link d-flex align-items-center" data-toggle="collapse" data-target="#navbarToggleExternalContent">
|
|
<img alt="An 'X' icon indicating that this can be interacted with to close the navigation menu." src="/images/icon-close-16x16@2x.png" style="width: 16px;" />
|
|
</button>
|
|
</div>
|
|
<div class="pt-2">
|
|
<div class="d-flex flex-column mb-4">
|
|
<span style="font-weight: 700;" class="py-2 px-3">Get started</span>
|
|
<a class="mobile-menu-item py-2 px-3" target="_blank" href="/install" data-text="Try Fleet">Try Fleet</a>
|
|
<a class="mobile-menu-item py-2 px-3" target="_blank" href="/documentation" data-text="Documentation">Documentation</a>
|
|
<a class="mobile-menu-item py-2 px-3" target="_blank" href="/contribute" data-text="Contribute">Contribute</a>
|
|
<a class="mobile-menu-item py-2 px-3" target="_blank" href="/hall-of-fame" data-text="Hall of fame">Hall of fame</a>
|
|
</div>
|
|
<a href="/pricing" class="menu-link d-flex align-items-center px-3 py-2 mb-4 text-decoration-none" style=" text-decoration: none; font-weight: 700;">Pricing</a>
|
|
<a href="/blog" class="menu-link d-flex align-items-center px-3 py-2 mb-4 text-decoration-none" style=" text-decoration: none; font-weight: 700;">Blog</a>
|
|
<!-- <a href="/company/contact" class="menu-link d-flex align-items-center px-3 py-2 mb-4 text-decoration-none" style=" text-decoration: none; color: #192147; font-weight: 700;">Contact</a> -->
|
|
<a target="_blank" href="https://github.com/fleetdm/fleet" class="menu-link d-flex align-items-center px-3 py-2" style=" text-decoration: none; font-weight: 700;">
|
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.9633 0.5C5.3578 0.5 0 5.8578 0 12.4633C0 17.7477 3.44954 22.2248 8.14679 23.8394C8.73394 23.9128 8.95413 23.5459 8.95413 23.2523C8.95413 22.9587 8.95413 22.2248 8.95413 21.1972C5.65138 21.9312 4.91743 19.5826 4.91743 19.5826C4.40367 18.1881 3.59633 17.8211 3.59633 17.8211C2.49541 17.0872 3.66972 17.0872 3.66972 17.0872C4.84404 17.1606 5.50459 18.3349 5.50459 18.3349C6.6055 20.1697 8.29358 19.656 8.95413 19.3624C9.02752 18.555 9.3945 18.0413 9.68807 17.7477C7.04587 17.4541 4.25688 16.4266 4.25688 11.8028C4.25688 10.4817 4.69725 9.45413 5.50459 8.57339C5.43119 8.35321 4.99083 7.1055 5.65138 5.49083C5.65138 5.49083 6.6789 5.19725 8.95413 6.73853C9.90826 6.44495 10.9358 6.37156 11.9633 6.37156C12.9908 6.37156 14.0183 6.51835 14.9725 6.73853C17.2477 5.19725 18.2752 5.49083 18.2752 5.49083C18.9358 7.1055 18.4954 8.35321 18.422 8.64679C19.156 9.45413 19.6697 10.555 19.6697 11.8761C19.6697 16.5 16.8807 17.4541 14.2385 17.7477C14.6789 18.1147 15.0459 18.8486 15.0459 19.9495C15.0459 21.5642 15.0459 22.8119 15.0459 23.2523C15.0459 23.5459 15.2661 23.9128 15.8532 23.8394C20.6239 22.2248 24 17.7477 24 12.4633C23.9266 5.8578 18.5688 0.5 11.9633 0.5Z" fill="#192147"/>
|
|
</svg>
|
|
<span class="ml-2">GitHub</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="d-none d-lg-flex">
|
|
<div class="dropdown px-3 py-2 mr-4">
|
|
<button style="font-size: 16px; text-decoration: none;" class="header-btn btn btn-link p-0 m-0 dropdown-label" type="button" id="dropdownMenuButton">
|
|
Get started
|
|
</button>
|
|
<div style="border-radius: 8px;" class="dropdown-menu dropdown-container p-2" aria-labelledby="dropdownMenuButton">
|
|
<a style="border-radius: 4px;" class="dropdown-item py-2 px-3" target="_blank" href="/install" data-text="Try Fleet">Try Fleet</a>
|
|
<a style="border-radius: 4px;" class="dropdown-item py-2 px-3" target="_blank" href="/documentation" data-text="Documentation">Documentation</a>
|
|
<a style="border-radius: 4px;" class="dropdown-item py-2 px-3" target="_blank" href="/contribute" data-text="Contribute">Contribute</a>
|
|
<a style="border-radius: 4px;" class="dropdown-item py-2 px-3" target="_blank" href="/hall-of-fame" data-text="Hall of fame">Hall of fame</a>
|
|
</div>
|
|
</div>
|
|
<a href="/pricing" class="header-link d-flex align-items-center px-3 py-2 mr-4 text-decoration-none" style=" text-decoration: none;line-height: 23px;">Pricing</a>
|
|
<a target="_blank" href="/blog" class="header-link d-flex align-items-center px-3 py-2 mr-4 text-decoration-none" style=" text-decoration: none;line-height: 23px;">Blog</a>
|
|
<!-- <a href="/company/contact" class="header-link d-flex align-items-center px-3 py-2 mr-4 text-decoration-none" style=" text-decoration: none;line-height: 23px;">Contact</a> -->
|
|
<a target="_blank" href="https://github.com/fleetdm/fleet" class="header-link d-flex align-items-center px-3 py-2" style=" text-decoration: none;line-height: 23px;">
|
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.9633 0.5C5.3578 0.5 0 5.8578 0 12.4633C0 17.7477 3.44954 22.2248 8.14679 23.8394C8.73394 23.9128 8.95413 23.5459 8.95413 23.2523C8.95413 22.9587 8.95413 22.2248 8.95413 21.1972C5.65138 21.9312 4.91743 19.5826 4.91743 19.5826C4.40367 18.1881 3.59633 17.8211 3.59633 17.8211C2.49541 17.0872 3.66972 17.0872 3.66972 17.0872C4.84404 17.1606 5.50459 18.3349 5.50459 18.3349C6.6055 20.1697 8.29358 19.656 8.95413 19.3624C9.02752 18.555 9.3945 18.0413 9.68807 17.7477C7.04587 17.4541 4.25688 16.4266 4.25688 11.8028C4.25688 10.4817 4.69725 9.45413 5.50459 8.57339C5.43119 8.35321 4.99083 7.1055 5.65138 5.49083C5.65138 5.49083 6.6789 5.19725 8.95413 6.73853C9.90826 6.44495 10.9358 6.37156 11.9633 6.37156C12.9908 6.37156 14.0183 6.51835 14.9725 6.73853C17.2477 5.19725 18.2752 5.49083 18.2752 5.49083C18.9358 7.1055 18.4954 8.35321 18.422 8.64679C19.156 9.45413 19.6697 10.555 19.6697 11.8761C19.6697 16.5 16.8807 17.4541 14.2385 17.7477C14.6789 18.1147 15.0459 18.8486 15.0459 19.9495C15.0459 21.5642 15.0459 22.8119 15.0459 23.2523C15.0459 23.5459 15.2661 23.9128 15.8532 23.8394C20.6239 22.2248 24 17.7477 24 12.4633C23.9266 5.8578 18.5688 0.5 11.9633 0.5Z" fill="#192147"/>
|
|
</svg>
|
|
<span class="ml-2">GitHub</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<%- body %>
|
|
|
|
<div style="background-color: #201E43; color: #fff;" purpose="page-footer">
|
|
<div style="max-width: 1260px" class="container-fluid px-4 px-sm-5 mx-auto">
|
|
<div class="row mb-4 mb-md-5 flex-row-reverse">
|
|
<div class="col-md text-center text-md-right">
|
|
<a target="_blank" href="https://twitter.com/fleetctl" style="color: #fff; top: 5px;" class="twitter-link position-relative btn btn-sm mb-2 mb-md-0 mr-md-2">
|
|
<span style="padding-left: 42px;" class="d-inline-block position-relative">
|
|
<img alt="Twitter logo" src="/images/logo-twitter-32x26@2x.png" style="height: 26px; width: 32px; left: 0; top: 0;" class="position-absolute"/>
|
|
Follow us on Twitter
|
|
</span>
|
|
</a>
|
|
<br class="d-block d-md-none">
|
|
<a target="_blank" href="https://osquery.slack.com/join/shared_invite/zt-h29zm0gk-s2DBtGUTW4CFel0f0IjTEw#/" style="color: #201E43; top: 5px;" class="slack-link position-relative btn btn-sm">
|
|
<span style="padding-left: 38px;" class="d-inline-block position-relative">
|
|
<img alt="Slack logo" src="/images/logo-slack-28x28@2x.png" style="height: 28px; width: 28px; left: 0; top: 0;" class="position-absolute"/>
|
|
<span class="d-inline d-md-none d-lg-inline">Join the community<span purpose="join-the-community-on-slack-expanded-text"> on Slack</span></span>
|
|
<%/* this just exists for the awkward stage where the buttons are just a liiiiittle too big: */%>
|
|
<span class="d-none d-md-inline d-lg-none">Join the Slack community</span>
|
|
</span>
|
|
</a>
|
|
</div>
|
|
<div class="col-md-2 pt-5 pt-md-0">
|
|
<img alt="Fleet logo" src="/images/logo-120x48@2x.png" style="height: 48px; width: 120px;" class="mx-auto mx-md-0"/>
|
|
</div>
|
|
</div>
|
|
<div class="row flex-row-reverse">
|
|
<div style="font-family: 'Lato', sans-serif; font-size: 13px;" class="col-md text-center text-xl-right pt-0 pb-3 pt-xl-0 mb-1 mb-md-0">
|
|
<a href="https://github.com/fleetdm/fleet/tree/master/docs" style="color: #fff; text-decoration: underline;" class="mr-1">Documentation</a>
|
|
<a target="_blank" href="https://github.com/fleetdm/fleet" style="color: #fff; text-decoration: underline;" class="mr-1">Contribute</a>
|
|
<a target="_blank" href="https://fleetdm.com/apply" style="color: #fff; text-decoration: underline;">Jobs at Fleet</a>
|
|
</div>
|
|
<div class="col-xl-9">
|
|
<div style="font-family: 'Lato', sans-serif; font-size: 13px;" class="row">
|
|
<div class="col-xl-4 text-center text-xl-left">
|
|
© 2021 Fleet Device Management Inc.
|
|
</div>
|
|
<div class="col-xl-8 text-center text-xl-left px-xl-0">
|
|
All trademarks, service marks, and company names are the property of their respective owners.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<% /*
|
|
Client-side JavaScript
|
|
========================
|
|
|
|
Scripts can be hard-coded as «script» tags, automatically injected
|
|
by the asset pipeline between "SCRIPTS" and "SCRIPTS END", or both.
|
|
(https://sailsjs.com/docs/concepts/assets/task-automation)
|
|
*/ %>
|
|
|
|
<% /* Chat (Papercups) */ %>
|
|
<script>window.Papercups = { config: { accountId: '5b59eeac-1578-4fdb-b946-e17c1dca0c51', requireEmailUpfront: true } };</script>
|
|
<script type="text/javascript" async defer src="https://app.papercups.io/widget.js"></script>
|
|
<script type="text/javascript" async defer src="https://app.papercups.io/storytime.js"></script>
|
|
|
|
<%/* Stripe.js */%>
|
|
<script src="https://js.stripe.com/v3/"></script>
|
|
|
|
<% /* Delete the global `self` to help avoid client-side bugs.
|
|
(see https://developer.mozilla.org/en-US/docs/Web/API/Window/self) */ %>
|
|
<script>delete window.self;</script>
|
|
|
|
<%/* bowser.js (for browser detection) -- included inline to avoid issues with minification that could affect the unsupported browser overlay */%>
|
|
<script>!function(e,i,s){if("undefined"!=typeof module&&module.exports)module.exports=s();else if("function"==typeof define&&define.amd)define(i,s);else e[i]=s()}(this,"bowser",function(){var e=true;function i(i){function s(e){var s=i.match(e);return s&&s.length>1&&s[1]||""}function o(e){var s=i.match(e);return s&&s.length>1&&s[2]||""}var r=s(/(ipod|iphone|ipad)/i).toLowerCase(),n=/like android/i.test(i),t=!n&&/android/i.test(i),a=/nexus\s*[0-6]\s*/i.test(i),d=!a&&/nexus\s*[0-9]+/i.test(i),l=/CrOS/.test(i),f=/silk/i.test(i),m=/sailfish/i.test(i),v=/tizen/i.test(i),p=/(web|hpw)os/i.test(i),c=/windows phone/i.test(i),u=/SamsungBrowser/i.test(i),h=!c&&/windows/i.test(i),w=!r&&!f&&/macintosh/i.test(i),b=!t&&!m&&!v&&!p&&/linux/i.test(i),g=o(/edg([ea]|ios)\/(\d+(\.\d+)?)/i),k=s(/version\/(\d+(\.\d+)?)/i),x=/tablet/i.test(i)&&!/tablet pc/i.test(i),y=!x&&/[^-]mobi/i.test(i),S=/xbox/i.test(i),B;if(/opera/i.test(i))B={name:"Opera",opera:e,version:k||s(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)};else if(/opr\/|opios/i.test(i))B={name:"Opera",opera:e,version:s(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i)||k};else if(/SamsungBrowser/i.test(i))B={name:"Samsung Internet for Android",samsungBrowser:e,version:k||s(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i)};else if(/coast/i.test(i))B={name:"Opera Coast",coast:e,version:k||s(/(?:coast)[\s\/](\d+(\.\d+)?)/i)};else if(/yabrowser/i.test(i))B={name:"Yandex Browser",yandexbrowser:e,version:k||s(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)};else if(/ucbrowser/i.test(i))B={name:"UC Browser",ucbrowser:e,version:s(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)};else if(/mxios/i.test(i))B={name:"Maxthon",maxthon:e,version:s(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)};else if(/epiphany/i.test(i))B={name:"Epiphany",epiphany:e,version:s(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)};else if(/puffin/i.test(i))B={name:"Puffin",puffin:e,version:s(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)};else if(/sleipnir/i.test(i))B={name:"Sleipnir",sleipnir:e,version:s(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)};else if(/k-meleon/i.test(i))B={name:"K-Meleon",kMeleon:e,version:s(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)};else if(c){B={name:"Windows Phone",osname:"Windows Phone",windowsphone:e};if(g){B.msedge=e;B.version=g}else{B.msie=e;B.version=s(/iemobile\/(\d+(\.\d+)?)/i)}}else if(/msie|trident/i.test(i))B={name:"Internet Explorer",msie:e,version:s(/(?:msie |rv:)(\d+(\.\d+)?)/i)};else if(l)B={name:"Chrome",osname:"Chrome OS",chromeos:e,chromeBook:e,chrome:e,version:s(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)};else if(/edg([ea]|ios)/i.test(i))B={name:"Microsoft Edge",msedge:e,version:g};else if(/vivaldi/i.test(i))B={name:"Vivaldi",vivaldi:e,version:s(/vivaldi\/(\d+(\.\d+)?)/i)||k};else if(m)B={name:"Sailfish",osname:"Sailfish OS",sailfish:e,version:s(/sailfish\s?browser\/(\d+(\.\d+)?)/i)};else if(/seamonkey\//i.test(i))B={name:"SeaMonkey",seamonkey:e,version:s(/seamonkey\/(\d+(\.\d+)?)/i)};else if(/firefox|iceweasel|fxios/i.test(i)){B={name:"Firefox",firefox:e,version:s(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)};if(/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(i)){B.firefoxos=e;B.osname="Firefox OS"}}else if(f)B={name:"Amazon Silk",silk:e,version:s(/silk\/(\d+(\.\d+)?)/i)};else if(/phantom/i.test(i))B={name:"PhantomJS",phantom:e,version:s(/phantomjs\/(\d+(\.\d+)?)/i)};else if(/slimerjs/i.test(i))B={name:"SlimerJS",slimer:e,version:s(/slimerjs\/(\d+(\.\d+)?)/i)};else if(/blackberry|\bbb\d+/i.test(i)||/rim\stablet/i.test(i))B={name:"BlackBerry",osname:"BlackBerry OS",blackberry:e,version:k||s(/blackberry[\d]+\/(\d+(\.\d+)?)/i)};else if(p){B={name:"WebOS",osname:"WebOS",webos:e,version:k||s(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)};/touchpad\//i.test(i)&&(B.touchpad=e)}else if(/bada/i.test(i))B={name:"Bada",osname:"Bada",bada:e,version:s(/dolfin\/(\d+(\.\d+)?)/i)};else if(v)B={name:"Tizen",osname:"Tizen",tizen:e,version:s(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||k};else if(/qupzilla/i.test(i))B={name:"QupZilla",qupzilla:e,version:s(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i)||k};else if(/chromium/i.test(i))B={name:"Chromium",chromium:e,version:s(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i)||k};else if(/chrome|crios|crmo/i.test(i))B={name:"Chrome",chrome:e,version:s(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)};else if(t)B={name:"Android",version:k};else if(/safari|applewebkit/i.test(i)){B={name:"Safari",safari:e};if(k)B.version=k}else if(r){B={name:"iphone"==r?"iPhone":"ipad"==r?"iPad":"iPod"};if(k)B.version=k}else if(/googlebot/i.test(i))B={name:"Googlebot",googlebot:e,version:s(/googlebot\/(\d+(\.\d+))/i)||k};else B={name:s(/^(.*)\/(.*) /),version:o(/^(.*)\/(.*) /)};if(!B.msedge&&/(apple)?webkit/i.test(i)){if(/(apple)?webkit\/537\.36/i.test(i)){B.name=B.name||"Blink";B.blink=e}else{B.name=B.name||"Webkit";B.webkit=e}if(!B.version&&k)B.version=k}else if(!B.opera&&/gecko\//i.test(i)){B.name=B.name||"Gecko";B.gecko=e;B.version=B.version||s(/gecko\/(\d+(\.\d+)?)/i)}if(!B.windowsphone&&(t||B.silk)){B.android=e;B.osname="Android"}else if(!B.windowsphone&&r){B[r]=e;B.ios=e;B.osname="iOS"}else if(w){B.mac=e;B.osname="macOS"}else if(S){B.xbox=e;B.osname="Xbox"}else if(h){B.windows=e;B.osname="Windows"}else if(b){B.linux=e;B.osname="Linux"}function O(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return undefined}}var T="";if(B.windows)T=O(s(/Windows ((NT|XP)( \d\d?.\d)?)/i));else if(B.windowsphone)T=s(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i);else if(B.mac){T=s(/Mac OS X (\d+([_\.\s]\d+)*)/i);T=T.replace(/[_\s]/g,".")}else if(r){T=s(/os (\d+([_\s]\d+)*) like mac os x/i);T=T.replace(/[_\s]/g,".")}else if(t)T=s(/android[ \/-](\d+(\.\d+)*)/i);else if(B.webos)T=s(/(?:web|hpw)os\/(\d+(\.\d+)*)/i);else if(B.blackberry)T=s(/rim\stablet\sos\s(\d+(\.\d+)*)/i);else if(B.bada)T=s(/bada\/(\d+(\.\d+)*)/i);else if(B.tizen)T=s(/tizen[\/\s](\d+(\.\d+)*)/i);if(T)B.osversion=T;var P=!B.windows&&T.split(".")[0];if(x||d||"ipad"==r||t&&(3==P||P>=4&&!y)||B.silk)B.tablet=e;else if(y||"iphone"==r||"ipod"==r||t||a||B.blackberry||B.webos||B.bada)B.mobile=e;if(B.msedge||B.msie&&B.version>=10||B.yandexbrowser&&B.version>=15||B.vivaldi&&B.version>=1||B.chrome&&B.version>=20||B.samsungBrowser&&B.version>=4||B.firefox&&B.version>=20||B.safari&&B.version>=6||B.opera&&B.version>=10||B.ios&&B.osversion&&B.osversion.split(".")[0]>=6||B.blackberry&&B.version>=10.1||B.chromium&&B.version>=20)B.a=e;else if(B.msie&&B.version<10||B.chrome&&B.version<20||B.firefox&&B.version<20||B.safari&&B.version<6||B.opera&&B.version<10||B.ios&&B.osversion&&B.osversion.split(".")[0]<6||B.chromium&&B.version<20)B.c=e;else B.x=e;return B}var s=i("undefined"!==typeof navigator?navigator.userAgent||"":"");s.test=function(e){for(var i=0;i<e.length;++i){var o=e[i];if("string"===typeof o)if(o in s)return true}return false};function o(e){return e.split(".").length}function r(e,i){var s=[],o;if(Array.prototype.map)return Array.prototype.map.call(e,i);for(o=0;o<e.length;o++)s.push(i(e[o]));return s}function n(e){var i=Math.max(o(e[0]),o(e[1]));var s=r(e,function(e){var s=i-o(e);e+=new Array(s+1).join(".0");return r(e.split("."),function(e){return new Array(20-e.length).join("0")+e}).reverse()});while(--i>=0)if(s[0][i]>s[1][i])return 1;else if(s[0][i]===s[1][i]){if(0===i)return 0}else return-1}function t(e,o,r){var t=s;if("string"===typeof o){r=o;o=void 0}if(void 0===o)o=false;if(r)t=i(r);var a=""+t.version;for(var d in e)if(e.hasOwnProperty(d))if(t[d]){if("string"!==typeof e[d])throw new Error("Browser version in the minVersion map should be a string: "+d+": "+String(e));return n([a,e[d]])<0}return o}function a(e,i,s){return!t(e,i,s)}s.isUnsupportedBrowser=t;s.compareVersions=n;s.check=a;s._detect=i;s.detect=i;return s});</script>
|
|
|
|
<% /* Auto-injected «script» tags: */ %>
|
|
<!--SCRIPTS-->
|
|
<script src="/dependencies/sails.io.js"></script>
|
|
<script src="/dependencies/lodash.js"></script>
|
|
<script src="/dependencies/jquery.min.js"></script>
|
|
<script src="/dependencies/vue.js"></script>
|
|
<script src="/dependencies/vue-router.js"></script>
|
|
<script src="/dependencies/bootstrap-4/bootstrap-4.bundle.js"></script>
|
|
<script src="/dependencies/cloud.js"></script>
|
|
<script src="/dependencies/moment.js"></script>
|
|
<script src="/dependencies/parasails.js"></script>
|
|
<script src="/js/cloud.setup.js"></script>
|
|
<script src="/js/components/ajax-button.component.js"></script>
|
|
<script src="/js/components/ajax-form.component.js"></script>
|
|
<script src="/js/components/cloud-error.component.js"></script>
|
|
<script src="/js/components/js-timestamp.component.js"></script>
|
|
<script src="/js/components/modal.component.js"></script>
|
|
<script src="/js/components/stripe-card-element.component.js"></script>
|
|
<script src="/js/utilities/open-stripe-checkout.js"></script>
|
|
<script src="/js/pages/498.page.js"></script>
|
|
<script src="/js/pages/account/account-overview.page.js"></script>
|
|
<script src="/js/pages/account/edit-password.page.js"></script>
|
|
<script src="/js/pages/account/edit-profile.page.js"></script>
|
|
<script src="/js/pages/contact.page.js"></script>
|
|
<script src="/js/pages/dashboard/welcome.page.js"></script>
|
|
<script src="/js/pages/docs/basic-documentation.page.js"></script>
|
|
<script src="/js/pages/entrance/confirmed-email.page.js"></script>
|
|
<script src="/js/pages/entrance/forgot-password.page.js"></script>
|
|
<script src="/js/pages/entrance/login.page.js"></script>
|
|
<script src="/js/pages/entrance/new-password.page.js"></script>
|
|
<script src="/js/pages/entrance/signup.page.js"></script>
|
|
<script src="/js/pages/faq.page.js"></script>
|
|
<script src="/js/pages/handbook/basic-handbook.page.js"></script>
|
|
<script src="/js/pages/homepage.page.js"></script>
|
|
<script src="/js/pages/legal/privacy.page.js"></script>
|
|
<script src="/js/pages/legal/terms.page.js"></script>
|
|
<script src="/js/pages/pricing.page.js"></script>
|
|
<script src="/js/pages/query-detail.page.js"></script>
|
|
<script src="/js/pages/query-library.page.js"></script>
|
|
<!--SCRIPTS END-->
|
|
|
|
<% /* Display an overlay if the current browser is not supported.
|
|
(Relies on `bowser`, which is loaded inline above.) */ %>
|
|
<script>
|
|
(function(){
|
|
if (typeof bowser !== 'undefined') {
|
|
// --------------------------------------------------------------------
|
|
// Additional compatibility tips:
|
|
//
|
|
// • The browser/OS compatibility below is determined by the needs of Vue.js and Bootstrap.js.
|
|
// • All browsers on Windows XP are probably unsupported (because of compatibility issues with modern SSL certs)
|
|
// • See https://getbootstrap.com/docs/4.0/getting-started/browsers-devices/
|
|
// • See also https://github.com/vuejs/vue/tree/0e5306658ad7b83c553a6a3eeedb15f9066ab063#browser-compatibility
|
|
// • For more info, see:
|
|
// - https://github.com/lancedikson/bowser/blob/1fb99ced0e8834fd9662604bad7e0f0c3eba2786/test/test.js#L110-L123
|
|
// - https://github.com/lancedikson/bowser/tree/1fb99ced0e8834fd9662604bad7e0f0c3eba2786#rendering-engine-flags
|
|
// --------------------------------------------------------------------
|
|
var LATEST_SUPPORTED_VERSION_BY_OS = {
|
|
iOS: '10',//« earliest version to eliminate rare bug where `window.location` doesn't exist momentarily after doing a server-side redirect
|
|
Android: '6'
|
|
};
|
|
var LATEST_SUPPORTED_VERSION_BY_USER_AGENT = {
|
|
msedge: '16',
|
|
msie: '11',
|
|
safari: '10',//« earliest version to eliminate rare bug where `window.location` doesn't exist momentarily after doing a server-side redirect
|
|
firefox: '28',//« earliest version to support both ES5 (for Vue.js) and unprefixed flexbox (for Bootstrap 4)
|
|
chrome: '29',//« earliest version to support both ES5 (for Vue.js) and unprefixed flexbox (for Bootstrap 4)
|
|
opera: '17',//« earliest version to support both ES5 (for Vue.js) and unprefixed flexbox (for Bootstrap 4)
|
|
};
|
|
var LATEST_SUPPORTED_VERSION_BY_BROWSER_NAME = {
|
|
'microsoft edge': LATEST_SUPPORTED_VERSION_BY_USER_AGENT.msedge,
|
|
'internet explorer': LATEST_SUPPORTED_VERSION_BY_USER_AGENT.msie,
|
|
'safari': LATEST_SUPPORTED_VERSION_BY_USER_AGENT.safari,
|
|
'firefox': LATEST_SUPPORTED_VERSION_BY_USER_AGENT.firefox,
|
|
'chrome': LATEST_SUPPORTED_VERSION_BY_USER_AGENT.chrome,
|
|
'opera': LATEST_SUPPORTED_VERSION_BY_USER_AGENT.opera
|
|
};
|
|
var isUnsupportedBrowser = (
|
|
bowser.isUnsupportedBrowser(LATEST_SUPPORTED_VERSION_BY_USER_AGENT, window.navigator.userAgent)
|
|
);
|
|
var isUnsupportedOS = (
|
|
LATEST_SUPPORTED_VERSION_BY_OS[bowser.osname] &&
|
|
bowser.compareVersions([bowser.osversion, LATEST_SUPPORTED_VERSION_BY_OS[bowser.osname]]) < 0
|
|
);
|
|
if (isUnsupportedBrowser || isUnsupportedOS) {
|
|
document.body.innerHTML =
|
|
'<div class="container browser-warning-message text-center">'+
|
|
' <a href="https://sailsjs.com/support">'+
|
|
'<img style="display: block; height: 75px; width: auto; margin: 0 auto 15px;" alt="Logo" src="data:image/png;base64,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"/>'+
|
|
'</a>'+
|
|
' <h5 class="card-title">This '+(isUnsupportedBrowser ? 'browser' : 'operating system')+' is not supported.</h5>'+
|
|
' <p style="max-width: 500px; margin-left: auto; margin-right: auto;">'+
|
|
' This app does not currently support '+(
|
|
isUnsupportedBrowser?
|
|
'<strong>'+bowser.name+'</strong> for versions lower than <strong>v'+ LATEST_SUPPORTED_VERSION_BY_BROWSER_NAME[bowser.name.toLowerCase()]+'</strong>. '+
|
|
'To continue, please upgrade your browser to the newest version, or download the <a href="https://www.google.com/chrome">latest version of Google Chrome</a>.'+
|
|
' </p>'+
|
|
' <a class="btn btn-primary" style="padding: 5px 10px" href="https://www.google.com/chrome">Download Chrome</a>'
|
|
:
|
|
'<strong>'+bowser.osname+'</strong> for versions lower than <strong>v'+ LATEST_SUPPORTED_VERSION_BY_OS[bowser.osname]+'</strong>. '+
|
|
'To continue, please use a different device, or <a href="'+(bowser.osname === 'iOS' ? 'https://support.apple.com/en-us/HT204204' : 'https://support.google.com/android/?hl=en#topic=7313011')+'">upgrade this device\'s software</a> to the latest compatible version.'+
|
|
' </p>'+
|
|
' <a class="btn btn-primary" style="padding: 5px 10px" href="/contact">Need help?</a>'
|
|
)+
|
|
'</div>';
|
|
document.body.style.padding = '75px 0';
|
|
}
|
|
}
|
|
})();
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|