Commit graph

76 commits

Author SHA1 Message Date
Eric
2af2c41572
Website: Update round robin in salesforce helpers & move lead creation to save-questionnaire-progress. (#19209)
Closes: #18932

Changes:
- Updated `update-or-create-contact-and-account.js` to not round robin
new account records created.
- Updated create-lead to reassign accounts owned by the integrations
admin user when a new lead is created.
- Updated logged warnings in signup, deliver-contact-form-message and
deliver-talk-to-us-form-submission.
- Updated signup.js to not create salesforce leads (only account and
contact records)
- Updated save-questionnaire-progress to create Salesforce leads when we
know the user has a use case for Fleet.
2024-05-27 16:43:40 -05:00
Eric
5261faaa11
Website: Update round robin in Salesforce helper (#19131)
Changes:
- Updated the update-or-create-contact-and-account helper to round-robin
existing accounts owned by an inactive Salesforce user
2024-05-17 18:14:22 -05:00
Eric
31f8c7e548
Website: Create new Salesforce helper, update contact form actions and signup action. (#19082)
Changes:
- Added a new helper:
`salesforce/update-or-create-contact-and-account-and-create-lead`, a
wrapper for the `update-or-create-contact-and-account` and `create-lead`
helpers that is intended to be run in the background.
- Updated the `signup`, `deliver-contact-form-message`, and
`deliver-talk-to-us-form-submission` actions to use the new helper
2024-05-16 15:38:09 -05:00
Eric
cde4a61bd3
Website: requested changes from website review (#18923)
Changes:
- Moved the logic for redirecting users to the license dispenser after
they login/sign up into the page scripts for the login and register
pages.
- Updated error messages in the create lead helper
2024-05-10 16:33:45 -05:00
Eric
2990d09cb4
Website: update salesforce helper (#18789)
Changes:

- Updated the `update-or-create-contact-and-account` helper to actually
check the OwnerID of the returned account record (if one was found).
2024-05-06 20:51:03 -05:00
Eric
9e988cb216
Website: Fix round robin in update-or-create-contact-and-account.js. (#18788)
Changes:
- Fixed a conditional that was determining if existing account records
should be round-robined or not.
2024-05-06 19:51:21 -05:00
Eric
607ddbe8b1
Website: Update update-or-create-contact-and-account helper to round robin existing account records. (#18778)
Changes:
- Updated the `update-or-create-contact-and-account` helper to round
robin existing Account records assigned to the "Integrations admin"
user.
2024-05-06 15:17:49 -05:00
Eric
1cd0c6566c
Website: Create protocol and subdomain regex custom config & normalize LinkedIn urls (#18756)
Changes:
- Updated the regex used to match HTTP protocol and common subdomains in
the `get-enriched` helper to include more subdomains and changed it to a
custom config variable
(`sails.config.custom.RX_PROTOCOL_AND_COMMON_SUBDOMAINS`)
- Updated the update-or-create-contact-and-account helper to remove HTTP
protocol and subdomains from provided linkedIn URLs.
2024-05-03 18:51:31 -05:00
Eric
3a15802944
Website: Update organization matching in get-enriched helper. (#18749)
Closes: https://github.com/fleetdm/confidential/issues/6381

Changes:
- Updated the get-enriched helper to improve enrichment results for
users whose provided organization is not the top experience listed on
their LinkedIn profile.
2024-05-03 16:09:05 -05:00
Eric
63f8850877
Website: replace zapier request in signup.js with createLead() (#18688)
Closes: https://github.com/fleetdm/confidential/issues/6355

Changes:
- Replaced the reqeust to zapier in `signup.js` with
`sails.helpers.salesforce.createLead()`.
- Updated signup.js to only call the salesforce helpers when the website
is running in a production environment.
- Updated the `createLead` to handle errors when retrieving or creating
salesforce records, and to set a provided `numberOfHosts` and
`primaryBuyingSituation` on created lead records.
2024-05-01 16:25:12 -05:00
Eric
8be31c263c
Website: update domain parsing and logged warnings in get-enriched helper. (#18644)
Changes:
- Changed the warnings in the get-enriched helper to use
`sails.log.info`.
- Updated the email domain parsing to handle protocol-less URLs returned
from Coresignal
2024-04-30 13:47:23 -05:00
Eric
a9f79eacd4
Website: Update zapier webhook request in signup action. (#18648)
Closes: #18643

Changes:
- Updated the response from the `updateOrCreateAccountAndContact` helper
when running the website in a development environment.
- Updated the Zapier webhook request in the signup action to send the
contact and account IDs returned from the
`updateOrCreateAccountAndContact` helper.
2024-04-30 13:38:38 -05:00
Mike McNeil
c01d0ff82a
Website: If org name + email specified but no matches, try again (#18629) 2024-04-30 01:40:06 -05:00
Mike McNeil
8252320c3b
Fix 500 errors by ensuring organization exists (#18628) 2024-04-30 01:12:53 -05:00
Mike McNeil
cdbe6055d1
Website: Improve enrichment (#18627) 2024-04-30 01:03:59 -05:00
Eric
31c67130d4
Website: Update searchBy criteria in get-enriched helper (#18626)
Changes:
- Removed the organization name search in the get-enriched helper to
improve organization enrichment.
2024-04-29 23:37:09 -05:00
Mike McNeil
b09d34fa4b
Website: Quick and dirty fix for signups (#18622)
Eric, please test fully before merging, this is just the quick and dirty
cut.
2024-04-29 19:01:47 -05:00
Eric
bde910a827
Website: Update get-enriched to return undefined. (#18614)
Changes:
- Updated the `iq/get-enriched` helper to return enrichment data as
undefined.
2024-04-29 16:29:23 -05:00
Eric
a6c09cb5f4
Website: Update update-or-create-contact-and-account helper (#18565)
Changes:
- Updated the `salesforce/update-or-create-contact-and-account` helper
to not to try to use `enrichementData.employer.emailDomain` if an
`organization` was provided.
2024-04-26 09:13:46 -05:00
Eric
75511b3d26
Website: update values passed into helper & don't run the Salesforce helper in development environment. (#18560)
Changes:
- Updated the default value that is being sent as a
primaryBuyingSituation
- Updated the updateOrCreateContactAndAccount Salesforce helper to do
nothing in development.
2024-04-26 03:33:26 -05:00
Mike McNeil
e4f1339d6e
Website: sails.helpers.iq.getEnriched() and use code instead of nocode (#18538)
Co-authored-by: Eric <eashaw@sailsjs.com>
2024-04-26 01:50:31 -05:00
Eric
c2f333aebb
Schema: Update schema overrides to only use one YAML block scalar (#18351)
Closes: #18240

Changes:
- Updated the schema override files to use only one YAML block scalar
(`>-`)
- Updated the template yaml included in the link to create a new
override file in get-extended-osquery-schema helper to use the `>-`
block scalar
- regenerated osquery_fleet_schema.json
2024-04-16 18:35:23 -05:00
Eric
766d08e767
Schema: remove requires_user_context related code, regenerate schema json. (#18091)
Changes:
- Updated the `build-static-content` script to remove support for the
`requires_user_context` column attribute
- Updated `get-extended-osquery-schema` to not set a
`requires_user_context` value in the merged schema json.
- Regenerated `schema/osquery_fleet_schema.json`
2024-04-05 15:39:02 -05:00
Eric
2ae85ac2c4
Website: update get-extended-osquery-schema helper to ensure all column types are lowercase. (#17931)
Closes: #17883

Changes:
- Updated the `get-extended-osquery-schema` helper to set the `type`
values of columns of tables with Fleet overrides to be lowercase.
- Regenerated `osquery_fleet_schema.json`
2024-04-01 12:05:42 -05:00
Eric
286d6f86eb
Update examples in osquery_fleet_schema.json (#17932)
Related to: https://github.com/fleetdm/fleet/issues/17861

Changes: 
- Updated `get-extended-osquery-schema` helper to remove `examples`
values from the merged schema JSON if they are an empty array.
- regenerated `osqeury_fleet_schema.json`
2024-03-29 19:41:13 -05:00
Eric
a450bf2c58
Website: update get-extended-osquery-schema helper (#17190)
Closes: https://github.com/fleetdm/fleet/issues/17188

Changes:
- Updated `get-extended-osquery-schema.js` to only include the last
example from the osquery schema if a table has an override file that
does not contain an `examples` value.
- Regenerated osquery_fleet_schema.json with the correct `examples`
values
2024-03-01 12:48:06 -06:00
Luke Heath
3f1ade51a0
Add myself to product groups handbook maintainers (#17239) 2024-02-29 11:02:17 -06:00
Rachael Shaw
ae669e1749
2023-10-17 Update osquery schema version & regenerate merged schema (#14436)
When running a live query recently, I noticed some columns in the
results that we didn't have documented, and realized we weren't using
the latest osquery schema version when regenerating the merged schema.

According to the docs, [we support the latest version of
osquery](https://fleetdm.com/docs/using-fleet/enroll-hosts#supported-osquery-versions),
so figure we ought to update the schema version to the latest.

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2023-10-26 18:04:23 -05:00
Eric
9891861e58
Website: Improve support for indented content in Markdown lists, update MDM macOS setup docs page. (#14124)
Closes: #12836 

Changes:
- Updated the `build-static-content` script to not add HTML comments to
Markdown codeblocks, and to not replace HTML comments in generated HTML
pages
- Updated the custom codeblock renderer in the `to-html` helper to add
syntax highlighting classes to Markdown codeblocks.
- Updated the indentation of content in lists on the MDM macOS setup
docs page.

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-09-29 13:13:03 -07:00
Eric
45e1b56bb1
Website: sort merged osquery schema (#13959)
Closes: #13722

Changes:
- Updated the `get-extended-osquery-schema` helper to sort the merged
schema by table name.
- Regenerated `/schema/osquery_fleet_schema.JSON`
2023-09-15 18:40:57 -05:00
Eric
85fdeb4234
2023-09-16: Website: Update sitemap, set lastModifedAt timestamps for osquery schema pages. (#13725)
Closes: #13728

Changes:
- Added /support to the array of hand-coded HTML pages in
`download-sitemap.js`:
- Updated `get-extended-osquery-schema`:
- Added a new (optional) input: `includeLastModifiedAtValue` if this
input is provided, the helper will:
      - Set a `lastModifiedAt` value on all tables.
- Send a request to the GitHub API to get a lastModifiedAt timestamp for
tables that have no fleet overrides.
- Use `git` to get a lastModifiedAt timestamp of when the tables YAML
file was changed.
- Updated the `build-static-content` script to include a lastModifiedAt
timestamp for table pages, and updated the `lastModifiedAt` value that
is set for pages built from `/handbook/company/open-positions.yml`

---------

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-09-15 18:39:39 -05:00
Eric
46802ee56a
Website: Add admin page to manage the Fleet Sandbox waitlist (#13111)
Closes: #12954

Changes:
- Added an admin page that displays a table containing all of the users
that are currently on the Fleet Sandbox waitlist where admins can
approve waitlisted users.
- Added a new email template that tells users that their Fleet Sandbox
instance is ready.
- Added a new action:
`admin/provision-sandbox-instance-and-deliver-email.js`, an action that
provisions a Fleet sandbox instance for a single user and sends them an
email telling them that their Fleet Sandbox Instance is ready.
- Added a script that provisions a Fleet Sandbox instance for the user
who has been on the waitlist the longest and sends them an email telling
them that their Sandbox instance is ready.
2023-08-04 18:32:00 -05:00
Eric
ab504d766a
Website: Update admin license generator (#13101)
Closes: https://github.com/fleetdm/confidential/issues/3230

Changes:
- Added a new (optional) input to the admin license key generator:
`partnerName`.
- Renamed `admin/generate-license-key.js` to
`admin/build-license-key.js`, updated routes and regenerated
`cloud.setup.js`
- Updated the create license key helper to add a `partner` field to the
generated license key if `partnerName` is provided.
2023-08-04 14:48:29 -05:00
Sampfluger88
0d93b9687b
Request review automatically for non-codeowners (#12786)
https://github.com/fleetdm/confidential/issues/3146

To test this works:
- sam should be able to change ceo handbook and be autoapproved
- mike submitting a PR to the ceo handbook should request review from
Sam but auto-approve for mike
- Jarod's use case of creating an article should now work, even if his
PR contains images

.

---------

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-07-15 19:56:30 -05:00
Eric
3b6b6e6f3f
Website: update fleetRepoUrl for tables that don't have Fleet overrides (#12458)
Closes: #12434
Changes:
- Updated the `fleetRepoUrl` value for tables that don't have Fleet
overrides. The additional `/tables` in the file path is causing the
template link to create a new file in a `schema/tables//tables/` folder.
2023-06-22 15:58:01 -05:00
Eric
01106d05a6
Update platform value for ChromeOS tables, Update Fleet website to use new value, and regenerate schema JSON (#12091)
Changes:
- Updated the `platform` value for osquery tables and columns that
support chromeos to be `chrome` (Previously `chromeos`)
- Updated `get-exteneded-osquery-schema.js` to use the new `platform`
value
- Updated the Fleet website to use the `chrome` `platform`.
- Regenerated `schema/osquery_fleet_schema.json` with ChromeOS tables.
2023-06-02 17:44:06 -05:00
Eric
d18db8f9ee
Website: Add support for ChromeOS to query library and osquery schema pages. (#12013)
Closes https://github.com/fleetdm/fleet/issues/11837

Changes:
- Changed the OS icons used on tables/ and queries/ pages.
- updated `get-extended-osquery-schema` to change the `platform` value
of osquery table columns to be the normalized platform name (`chromeos`
» `ChromeOS`)
- updated `build-static-content` to support three `platforms` values
when adding platform compatibility notes to generated Markdown tables
(e.g., "**Only available on macOS, Linux, and Windows.**" )
- Added dropdown options and icons for ChromeOS on osquery schema table
pages, query details pages, and the query library.
2023-05-31 11:48:00 -05:00
Luke Heath
78d4b04f04
Add fleet-release approval for new gitops action repo (#11818) 2023-05-30 11:27:39 -05:00
Eric
989a265e75
Website: Change bootstrap class added to tables on pages built from Markdown (#12024)
Closes: #11989
Changes:
- Changed the Bootstrap 4 class that is added to every table in content
built from Markdown so our tables are responsive at all widths
(`table-responsive-xl` » `table-responsive`)
2023-05-29 20:25:24 -05:00
Eric
f970f6fb8d
Website: Remove extra dashes from markdown links (#10657)
Closes: #10458

Changes:
- Updated the generated id's for headings in Markdown content to remove
extra dashes in words that have multiple letter casings (e.g., `#my-sql`
» `#mysql`, `#git-hub-security` » `#github-security`)
- Updated links to Markdown headings that have changed.
.  ..

---------

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-03-22 19:34:59 -05:00
Eric
767fc39387
Update osquery schema version & regenerate merged schema (#10471)
Changes:
- Changed the version of osquery schema we merge with Fleet's overrides
from `5.7.0` to `5.8.1`
- Rand the `generate-merged-schema` script to regenerate
`osquery_fleet_schema.json` .


## EDIT
Mike: Hi Eric, if my changes look good to you, and if it's passing CI,
would you merge?

.

---------

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-03-17 19:32:34 -05:00
Mike McNeil
73b8f96f71
Make it so chrome_extensions shows up in a search for "browser plugins", same for firefox/ie/safari (#9540)
.
2023-01-27 17:44:05 -06:00
Eric
07f8ec14e6
Update YAML schema table validation (#9302)
Changes:
- Added three errors to
`website/api/helpers/get-extended-osquery-schema.js` that are thrown if
a YAML schema table has:
   - A `platforms` value that is not an array
   - A `description` value that is not a string
   - A `columns` value that is not an array
- Updated the `platforms` of YAML schema tables in `schema/tables/` that
had string `platforms` values
- Regenerated `/schema/osquery_fleet_schema.json`
 
.
2023-01-13 10:16:36 -06:00
Eric
c28056e36c
Update osquery schema version and regenerate merged schema JSON (#9292)
Changes:
- Updated the version of the osquery schema we merge with Fleet's
overrides (`5.6.0` » `5.7.0`)
- Ran the `generate-merged-schema` script to regenerate
`schema/osquery_fleet_schema.json`
 . .
2023-01-12 10:06:15 -06:00
Eric
112dffbd1e
Website: Update license key generator action and helper inputs (#9265)
Changes:
- Updated the `expiresAt` input description in
`api/controllers/admin/generate-license-key.js` and
`api/helpers/create-license-key.js`
- Updated timestamps sent to `generate-license-key` and
`create-license-key` to be in seconds.

 . .

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-01-11 11:11:43 -06:00
Roberto Dip
5919931a4c
fix conflicts in docs about unified_logs vs macadmins_unified_logs (#9214)
As raised by a community member in
[Slack](https://osquery.slack.com/archives/C01DXJL16D8/p1672751794862639),
this updates our documentation to account for both `unified_log` and
`macadmins_unified_log`.

Per my testing, it should also help with the #9158 bug in Fleet's UI.

I have updated the columns of `macadmins_unified_log` according to
what's in the [source
code](50f94d0d70/tables/unifiedlog/unified_log.go (L47-L69)),
and modified the example to work.

Since I was there I have also updated the osquery version we use to pull
the JSON to `5.6.0` and fixed a small bug related to the examples we
pull from there.

. . . . . . .

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-01-10 17:45:53 -06:00
Eric
896918bc79
Website: Fleet Premium subscription renewals (#9200)
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.
2023-01-06 18:36:29 -06:00
Eric
379f61a39f
Update Github URL for tables that have Fleet overrides (#9213)
Changes:
- Updated the fleetRepoUrl value for osquery schema tables that have
Fleet overrides to use the correct URL.
2023-01-06 17:14:04 -06:00
Eric
2d0f33f369
Website: Add script for creating HTML email partials from Markdown articles (#7574)
* add to-html-email

* email-preview

* add build-html-email script, update .gitignore

* email preview and email-templates pages, update routes, importer and policies

* add newsletter email layout, build-html-email script, to-html-email updates

* Update .gitignore

* add newsletter emails section to growth handbook

* update scripts

* update fonts in emails

* Update README.md

* Update build-html-email.js

* update comments, add page scripts to layouts

* revert change to build-static-content

* update script

* update email layout and helper

* update handbook entry

* update template data and helper

* update email layout

* update fake data and unsubscribe link

* move added handbook section to the marketing handbook

* rename script

* update colors in unused email template

* update capitalization in helper

* view-email-preview » view-email-template-preview

* Hide emails generated from markdown if they don't exist

* update preview page

* update markdown email directory, create sample article email

* lint fixes, add target="_blank" to links in emails

* update page layouts & styles

* update sample newsletter email, code font, newsletter layout

* Update README.md

* Update view-email-template-preview.js

Co-authored-by: Tim Kern <tim@fleetdm.com>
Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2022-12-05 16:30:24 -06:00
Eric
48f86b21b1
Website: Add admin tool for generating Fleet Premium licenses. (#8478)
* create admin/generate-license page

* create generate-license-key action, update routes, policies, importer, regenerate cloud-sdk

* update layouts

* use moment

* Update view-generate-license.js

* Fixing lint errors

* Update generate-license-key.js

* Update redirects in is-super-admin policy

* redirect super admins to the license generator

* Update login form

* requested changes from mike-j-thomas

* Update generate-license.page.js

* Update is-super-admin.js

* Update view-login.js

* Update generate-license-key.js

* Update generate-license-key.js

* use naming convention for js timestamps

* validTo » expiresAt

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2022-12-05 14:53:16 -06:00