diff --git a/assets/images/calendar-graphic.png b/assets/images/calendar-graphic.png new file mode 100644 index 0000000000..668c32968e Binary files /dev/null and b/assets/images/calendar-graphic.png differ diff --git a/changes/27458-update-calendar-events b/changes/27458-update-calendar-events new file mode 100644 index 0000000000..664ce08844 --- /dev/null +++ b/changes/27458-update-calendar-events @@ -0,0 +1 @@ +* Update Google Calendar event bodies and relevant previews in the Fleet UI diff --git a/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/CalendarEventPreviewModal.tsx b/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/CalendarEventPreviewModal.tsx index 3cdfc1b265..a33b0bc37d 100644 --- a/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/CalendarEventPreviewModal.tsx +++ b/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/CalendarEventPreviewModal.tsx @@ -1,5 +1,7 @@ import React, { useContext } from "react"; +import { TRANSPARENCY_LINK } from "utilities/constants"; + import { AppContext } from "context/app"; import Modal from "components/Modal"; import Button from "components/buttons/Button"; @@ -76,12 +78,37 @@ const CalendarEventPreviewModal = ({ : policy.description}

- What we'll do + Maintenance required
- {showGenericPreview - ? "During this maintenance window, you can expect updates to be applied automatically. Your device may be unavailable during this time." - : policy.resolution} + {showGenericPreview ? ( + + ) : ( + policy.resolution + )}
@@ -103,7 +130,7 @@ const CalendarEventPreviewModal = ({ ) : ( <> Why it matters and{" "} - What we'll do are populated by the + Maintenance required are populated by the policy's Description and{" "} Resolution respectively. diff --git a/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/_styles.scss b/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/_styles.scss index 6dfa54fd34..33382c21eb 100644 --- a/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/_styles.scss +++ b/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventPreviewModal/_styles.scss @@ -61,7 +61,16 @@ align-self: stretch; &__text__user-text { - white-space: pre-wrap; + ul { + padding-left: 20px; + margin-top: $pad-xxsmall; + } + a { + color: $core-fleet-black; + font-weight: normal; + text-decoration: underline; + } + white-space: pre-wrap; } } diff --git a/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventsModal/CalendarEventsModal.tsx b/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventsModal/CalendarEventsModal.tsx index 1b0642611a..55b1cfa948 100644 --- a/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventsModal/CalendarEventsModal.tsx +++ b/frontend/pages/policies/ManagePoliciesPage/components/CalendarEventsModal/CalendarEventsModal.tsx @@ -15,7 +15,7 @@ import Modal from "components/Modal"; import Icon from "components/Icon"; import { IPaginatedListHandle } from "components/PaginatedList"; import CalendarEventPreviewModal from "../CalendarEventPreviewModal"; -import CalendarPreview from "../../../../../../assets/images/calendar-preview-720x436@2x.png"; +import CalendarPreview from "../../../../../../assets/images/calendar-graphic.png"; import PoliciesPaginatedList, { IFormPolicy, } from "../PoliciesPaginatedList/PoliciesPaginatedList"; diff --git a/frontend/utilities/constants.tsx b/frontend/utilities/constants.tsx index b121b5b948..b97e6c6fba 100644 --- a/frontend/utilities/constants.tsx +++ b/frontend/utilities/constants.tsx @@ -62,6 +62,7 @@ export const GITHUB_NEW_ISSUE_LINK = /** website links */ export const FLEET_WEBSITE_URL = "https://fleetdm.com"; +export const TRANSPARENCY_LINK = `${FLEET_WEBSITE_URL}/better`; export const SUPPORT_LINK = `${FLEET_WEBSITE_URL}/support`; export const CONTACT_FLEET_LINK = `${FLEET_WEBSITE_URL}/contact`; export const LEARN_MORE_ABOUT_BASE_LINK = `${FLEET_WEBSITE_URL}/learn-more-about`; diff --git a/server/fleet/calendar.go b/server/fleet/calendar.go index b5edacc676..3b2865e19e 100644 --- a/server/fleet/calendar.go +++ b/server/fleet/calendar.go @@ -13,7 +13,10 @@ const ( CalendarBodyStaticHeader = "reserved this time to make some changes to your work computer" CalendarEventConflictText = "because there was no remaining availability " CalendarDefaultDescription = "needs to make sure your device meets the organization's requirements." - CalendarDefaultResolution = "During this maintenance window, you can expect updates to be applied automatically. Your device may be unavailable during this time." + CalendarDefaultResolution = (`• Click the Fleet icon in your computer's menu and
   select My device +• Navigate to the Policies tab +• Follow instructions to resolve any policies marked "No" +• Click Refetch`) ) type DayEndedError struct { diff --git a/server/service/calendar/calendar.go b/server/service/calendar/calendar.go index dbc7e98876..8d4f64f63a 100644 --- a/server/service/calendar/calendar.go +++ b/server/service/calendar/calendar.go @@ -83,7 +83,7 @@ Please leave your device on and connected to power. Why it matters %s -What we'll do +Maintenance required %s `, orgName, fleet.CalendarBodyStaticHeader, conflictStr, host.HostDisplayName, description, resolution), tag }