Closes: #10496
Changes:
- Fixed alignment issues with the <scrollable-tweets> component's page
indicator (Edge v16 & Safari 10)
- Added a hard-coded height to embedded youtube videos in Markdown
content to fix it rendering with a height of 0 (Edge v17 & Firefox v54)
- Fixed table example syntax highlighting (Edge v17, Chrome v55, Firefox
v54, Opera v42, & Safari v10)
- Added a set width to the edit page button on tables pages (Safari v10,
Firefox v54)
- Fixed a bug with the sidebar height on tables pages (Edge v17)
- Fixed styling on the pricing calculator inputs (Safari v10 & Firefox
v54)
- Fixed a layout issue with the pricing calculator call-to-action
buttons (Safari v10)
- Hid browser-specific form input buttons (Firefox v54)
- Fixed the sidebar CTA image on documentation pages (Opera v42)
- Fixed a CSS issue with the user story banner on `/platform` (Safari
v10, Firefox v54, Chrome v55, Opera v42)
- Updated the documentation page script to only copy links to the user's
clipboard if the user's browser supports it.
- Updated minimum browser versions for Edge, Chrome, and Opera for async
functions support. (Edge v16 » Edge v17, Chrome v51 » Chrome v55, Opera
v38 » Opera v42)
Closes#10497
Changes:
- Fixed images overflowing onto text on `/compliance` and
`/osquery-management`
- Added a set width to the edit page button on `/tables/` pages
- Fixed the sticky header not scrolling with the page
- Fixed flexbox positioning issues on the homepage, in the scrollable
tweets component, and in the mobile navigation menu
Closes: #9735
Changes:
- Updated the `send-data-to-vanta` script to:
- Sync Windows hosts with Vanta.
- Report the MDM status of macOS hosts.
- Updated the notes on the `/connect-vanta` page to link to the screen
lock policy for Windows.
Related to: https://github.com/fleetdm/fleet/issues/10210
Changes:
- Added `/experimental/okta-webflow`
- This page has a login form that accepts any input. When the login form
is submitted, the page shows the user a EULA.
- Updated policies, importer.less and routes
- Updated `layouts/layout-sandbox` to hide the website's header and
footer, and disable the Papercups chat widget when a variable named
`optimizeForAppleWebview` is set to `true`.
---------
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
# Checklist for submitter
If some of the following don't apply, delete the relevant line.
- [ ] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [ ] Documented any permissions changes
- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [ ] Added/updated tests
- [ ] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
Page works on /compliance but images don't load on /compliance/
# Checklist for submitter
If some of the following don't apply, delete the relevant line.
- [ ] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [ ] Documented any permissions changes
- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [ ] Added/updated tests
- [ ] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
Changes:
- Fixed the background blur on the masthead on Safari.
- Increased `scroll-margin-top` on Markdown headings to make sure
headings that are navigated to with anchor links are not hidden behind
the website's masthead
- Updated the indentation of script tags in layouts and updated code
comments.
- Added Hotjar and Heap analytics `<script>` tags from the main layout
to `layout-customer` `layout-sandbox` and `layout-landing`
- Added a link to `/compliance` landing page to the `layout-sandbox`
masthead navigation.
Adding Google Tag Manager code snippet.
Google Tag Manager changes will be reviewed by @eashaw before publishing
to the website.
Please feel free to push these changes once we've planned to properly
incorporate GTM(Google Tag Manager) and set up a consensus for events,
analytics, and review.
We can keep the old analytics custom events (Global site tag (gtag.js)
snippet) as they're important with SalesForce lead sources. We will need
to edit these going forward, but incorporating GTM should make that
process much easier. Once we've transitioned fully to GTM, we can remove
the gtag.js snippet as it could live inside Google Tag Manager.
# Checklist for submitter
If some of the following don't apply, delete the relevant line.
- [ ] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [ ] Documented any permissions changes
- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [ ] Added/updated tests
- [ ] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
---------
Co-authored-by: Eric <eashaw@sailsjs.com>
Changes:
- Updated `signup.js` to:
- Add a new exit: `requestToSandboxTimedOut`
- Increased the timeout on the request to the Fleet Sandbox provisioner
from 5000ms to 10000ms
- Changed the error thrown when a request times out to a logged warning.
- return the `requestToSandboxTimedOut` exit when a request to the Fleet
Sandbox provisioner times out.
- Added an error message to the Sandbox registration page for when
requests time out
- changed /device-management to a teaser layout as per this [Slack
thread](https://fleetdm.slack.com/archives/C01ALP02RB5/p1676053098600709).
- updated pre-header styling on /device-management and /compliance
- updated badge in the navigation to say "Limited beta".
---------
Co-authored-by: Eric <eashaw@sailsjs.com>
- created a new page on fleetdm.com called /compliance
- updated the main nav to include this page under 'Platform'
---------
Co-authored-by: Eric <eashaw@sailsjs.com>
Closes: https://github.com/fleetdm/fleet/issues/9785
Changes:
- Updated the documentation page script to set a `currentDocsSection`
variable
- Added Fleet Premium calls to action that link to the `/upgrade` page
to the left sidebar on documentation pages.
cc: @jarodreyes
Closes: https://github.com/fleetdm/fleet/issues/9762
Changes:
- `routes.js`: Changed the `currentPage` local variable to
`currentSection` and updated the value based each on the dropdown
navigation menus in the website header. This variable is used to make a
section "active" in the header.
- `view-basic-article` & `view-articles`: Updated these view actions to
set a `currentSection` variable based on the Markdown article category.
- `Layout.less`: Updated styles to match wireframes
- `layout.ejs`: Updated the styles and layout of the website header to
match wireframes.
- `layout-landing.ejs`, `layout-sandbox.ejs` & `layout-customer.ejs`:
Updated to match wireframes and stylesheet changes.
- `basic-documentation.less`: adjusted the position of the sticky right
sidebar.
---------
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
# Checklist for submitter
If some of the following don't apply, delete the relevant line.
- [ ] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [ ] Documented any permissions changes
- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [ ] Added/updated tests
- [ ] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
---------
Co-authored-by: Eric <eashaw@sailsjs.com>
Changes:
- Updated the Fleet Ultimate card to show two decimal places on the
price per host, and to change color when the price per host changes
because of the pricing calculator.
- Fixed a bug where the pricing calculator would display as $NaN/month
when each field of the pricing calculator is set to 0 hosts.
Closes https://github.com/fleetdm/confidential/issues/1818
Changes:
- Updated the layout and content of the `/pricing` page
- `pricing-features-table.yml`: Added an "Ultimate" tier with three
features.
- `build-static-content.js` - Updated the build script to add support
for the "Ultimate" tier in `pricing-features-table.yml`
---------
Co-authored-by: Mike Thomas <mthomas@fleetdm.com>
Changes:
- Added a new page: `/upgrade-to-fleet-premium`
- Added a new action `deliver-premium-upgrade-form.js`
- Updated policies, routes, importer.less, and regenerated
cloud.setup.js
.
---------
Co-authored-by: Mike Thomas <mthomas@fleetdm.com>
Closes: https://github.com/fleetdm/fleet/issues/6493
Changes:
- Added a new action, `get-one-rss-feed.js`. This action generates and
returns RSS feeds for article categories on fleetdm.com.
- This action has one required input: `categoryName`.
- Lives at `/rss/[Article Category Name]` e.g.,
`fleetdm.com/rss/releases`
- If `articles` is provided as the category, it returns an RSS feed of
all articles published on our blog.
- Updated `view-basic-article.js` to set an `articleCategorySlug`
variable, that is used to link to the RSS feed for an article category
from an article page.
- Added a "subscribe" button to articles and article category pages that
links to an RSS feed for that category.
This pull request relies on the `mdm-gen-cert` command from
https://github.com/fleetdm/fleet/pull/8884.
Closes: https://github.com/fleetdm/fleet/issues/8223
Changes:
- Updated the deploy Fleet website workflow to:
- Add Go as a dependency
- Build the mdm-gen-cert binary in `/website/.tools/`
- add the `/.tools/` folder to the Heroku app
- Added `deliver-apple-csr.js` - an API that:
- can be called by making a `POST` request to
`/api/v1/deliver-apple-csr`
- accepts `csr` as an input
- runs the `mdm-gen-cert` command with the `csr` set as an environment
variable
- returns an `invalidEmailDomain` response if the user's email domain is
in the array of banned email domains.
- saves the users organization and email address to the website's
database
- Sends an email to the requesting user's email address with the signed
CSR attached as a text file named `apple-apns-request.txt`
- Posts a message to a channel in the Fleet Slack.
- Added a new model: `CertificateSigningRequests` that contains two
required attributes: `emailAddress` and `organization`
- Added a new email template `email-signed-csr-for-apns`
- Updated routes, policies, eslintrc, and rebuilt cloud-sdk
Before this can be merged, we will need to:
- [x] Add new config variables in Heroku
- [x] `sails.config.custom.mdmVendorCertPem`
- [x] `sails.config.custom.mdmVendorKeyPem`
- [x] `sails.config.custom.mdmVendorKeyPassphrase`
- [x] `sails.config.custom.slackWebhookUrlForMDMSignups`
- [x] Add the `CertificateSigningRequests` model to the website's
database
Changes:
- Added a "Try again" button to the form on the `connect-vanta` page,
allowing users to update the form and resubmit without refreshing the
page.
Changes:
- Added a "Number of devices" input to the MDM beta signup form on the
`/device-management` page.
- Updated `website/api/controllers/deliver-mdm-beta-signup.js` to accept
a `numberOfHosts` input, and to include that value in the request to the
Zapier webhook.
Changes:
- Added a "MDM required" tag to the queries in the standard query
library that use the `managed_policies` table.
- Updated the build script to add a `requiresMdm` value to queries added
to `builtStaticContent.queries`, and to set it to true if a query has
the "MDM required" tags
- Updated the `/queries` page to add a "Requires MDM" badge to queries
that have `requiresMdm: true`
. . .
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
Related to: https://github.com/fleetdm/fleet/issues/9266
Changes:
- Updated the width of the modal form on the `/device-management` page.
- Updated the form inputs on the `/device-management` page to clear
errors when a user changes the input.
- Updated button styles to match wireframes.
- Updated the page indicator in the scrollable-tweets component.
Co-authored-by: Mike Thomas <mthomas@fleetdm.com>
Changes:
- Updated the Fleet sandbox registration page to make a first name, last
name, and organization required.
- Removed the "REQUIRED" label from the email address input on the Fleet
Sandbox registration page and removed styles for it from the page's
stylesheet.
- Updated the `organization` input of `signup.js` to be required.
- Changed the POST request to Zapier in `signup.js` to always use the
information provided.
Changes:
- Added a new page: `/device-management`
- Added a new action: `deliver-mdm-beta-signup.js` - This action sends a
post request to a Zapier webhook when a user submits a form on the
`/device-managment` page.
- Added a new component: `<scrollable-tweets>`
- Updated routes, importer, policies, cloud-sdk, and
`download-sitemap.js`
- Updated the route for our success story articles to live at
`fleetdm.com/success-stories/*` (Previously at
`fleetdm.com/device-management/*`) and updated `config/routes.js` to
have redirects for each article in that category
- Updated the "Use cases" navigation item to "Platform" and changed the
platform link to "How it works"
Co-authored-by: Mike Thomas <mthomas@fleetdm.com>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
In the footer, instead of https://fleetdm.com/transparency, include a
link to ["Why open
source?"](https://fleetdm.com/handbook/company/why-this-way#why-open-source)
(in "Why this way?", in the handbook)
Why? "Transparency" is a page designed especially for end users, and
linked to already from within Fleet Desktop. Let's use this footer link
to help communicate some of the same ideas, but with additional context
for IT and security folks within customer and contributor organizations.
cc: @alexmitchellii
Changes:
- Added optional inputs to the Fleet Sandbox signup page:
- First name
- Last name
- Organization
- Updated signup.js to send the optional inputs to the Zapier webhook
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
https://github.com/fleetdm/fleet/issues/9172
Changes:
- Added
`website/api/controllers/webhooks/recieve-stripe-subscription-events.js`
a webhook for receiving Stripe events.
- If the stripe event received is from a user's subscription
automatically renewing, A new license key is generated, the subscription
record is updated, and a renewal confirmation email is sent.
- If the stripe event received is from a user's subscription's upcoming
renewal, a renewal notification email is sent.
- If any other event type is received from Stripe, the webhook returns a
200 response.
- Added new email templates:
- `email-subscription-renewal-confirmation`
- `email-upcoming-subscription-renewal`
- Updated `website/api/controllers/admin/view-email-template-preview.js`
to have fake data for the added email templates.
- Updated `website/api/controllers/customers/view-dashboard.js` to set
two boolean variables: `subscriptionExpiresSoon` and
`subscriptionHasBeenRecentlyRenewed`
- Updated the customer dashboard to display notifications on the top of
the page if a user's subscription will renew in the next 30 days, or if
the user's subscription has been renewed in the past 30 days.
- `website/views/layouts/layout-email.ejs` - Updated the font, padding,
and text color to match wireframes.
* Proposed depuffery revisions
@mikermcneil I proposed some revisions to simplify the content, add consistency, and improve readability. I like the extra detail. I just want to make sure it flows and feels focused.
The "living, breathing API" line trips me up a bit, but I don't know if that's just a personal reaction.
* Update homepage.ejs
* Update homepage.ejs
Thanks for the feedback, @mikermcneil! I've addressed your notes. Is it okay to merge these changes?
* Update homepage.ejs
* surprise »» "shock"
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>