Skip to content

Commit

Permalink
Merge pull request #329 from openedx/aansari/INF-1375
Browse files Browse the repository at this point in the history
feat: added info banner for ORA notifications
  • Loading branch information
awais-ansari authored Apr 30, 2024
2 parents 9cfab58 + 31ed941 commit 1d924b4
Show file tree
Hide file tree
Showing 9 changed files with 92 additions and 0 deletions.
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,4 @@ ENTERPRISE_MARKETING_UTM_CAMPAIGN=''
ENTERPRISE_MARKETING_FOOTER_UTM_MEDIUM=''
APP_ID=''
MFE_CONFIG_API_URL=''
ACCOUNT_SETTINGS_URL=''
1 change: 1 addition & 0 deletions .env.development
Original file line number Diff line number Diff line change
Expand Up @@ -38,3 +38,4 @@ ENTERPRISE_MARKETING_UTM_CAMPAIGN='example.com Referral'
ENTERPRISE_MARKETING_FOOTER_UTM_MEDIUM='Footer'
APP_ID=''
MFE_CONFIG_API_URL=''
ACCOUNT_SETTINGS_URL=http://localhost:1997
1 change: 1 addition & 0 deletions .env.test
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,4 @@ ENTERPRISE_MARKETING_URL='http://example.com'
ENTERPRISE_MARKETING_UTM_SOURCE='example.com'
ENTERPRISE_MARKETING_UTM_CAMPAIGN='example.com Referral'
ENTERPRISE_MARKETING_FOOTER_UTM_MEDIUM='Footer'
ACCOUNT_SETTINGS_URL=http://localhost:1997
2 changes: 2 additions & 0 deletions src/App.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import { selectors } from 'data/redux';

import DemoWarning from 'containers/DemoWarning';
import CTA from 'containers/CTA';
import NotificationsBanner from 'containers/NotificationsBanner';
import ListView from 'containers/ListView';

import './App.scss';
Expand All @@ -27,6 +28,7 @@ export const App = ({ courseMetadata, isEnabled }) => (
/>
{!isEnabled && <DemoWarning />}
<CTA />
<NotificationsBanner />
<main data-testid="main">
<ListView />
</main>
Expand Down
2 changes: 2 additions & 0 deletions src/__snapshots__/App.test.jsx.snap
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ exports[`App router component snapshot: disabled (show demo warning) 1`] = `
/>
<DemoWarning />
<CTA />
<NotificationsBanner />
<main
data-testid="main"
>
Expand All @@ -36,6 +37,7 @@ exports[`App router component snapshot: enabled 1`] = `
data-testid="header"
/>
<CTA />
<NotificationsBanner />
<main
data-testid="main"
>
Expand Down
11 changes: 11 additions & 0 deletions src/containers/NotificationsBanner/NotificationsBanner.test.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import React from 'react';
import { shallow } from '@edx/react-unit-test-utils';

import { NotificationsBanner } from '.';

describe('NotificationsBanner component', () => {
test('snapshots', () => {
const el = shallow(<NotificationsBanner hide />);
expect(el.snapshot).toMatchSnapshot();
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`NotificationsBanner component snapshots 1`] = `
<PageBanner
variant="accentB"
>
<span>
<FormattedMessage
defaultMessage="You can now enable notifications for ORA assignments that require staff grading, from the "
description="user info message that user can enable notifications for ORA assignments"
id="ora-grading.NotificationsBanner.Message"
/>
<Hyperlink
destination="http://localhost:1997/notifications"
isInline={true}
rel="noopener noreferrer"
showLaunchIcon={false}
target="_blank"
variant="muted"
>
<FormattedMessage
defaultMessage="preferences center."
description="placeholder for the preferences center link"
id="ora-grading.NotificationsBanner.linkMessage"
/>
</Hyperlink>
</span>
</PageBanner>
`;
27 changes: 27 additions & 0 deletions src/containers/NotificationsBanner/index.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import React from 'react';

import { getConfig } from '@edx/frontend-platform';
import { FormattedMessage } from '@edx/frontend-platform/i18n';
import { PageBanner, Hyperlink } from '@openedx/paragon';

import messages from './messages';

export const NotificationsBanner = () => (
<PageBanner variant="accentB">
<span>
<FormattedMessage {...messages.infoMessage} />
<Hyperlink
isInline
variant="muted"
destination={`${getConfig().ACCOUNT_SETTINGS_URL}/notifications`}
target="_blank"
rel="noopener noreferrer"
showLaunchIcon={false}
>
<FormattedMessage {...messages.notificationsBannerLinkMessage} />
</Hyperlink>
</span>
</PageBanner>
);

export default NotificationsBanner;
18 changes: 18 additions & 0 deletions src/containers/NotificationsBanner/messages.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/* eslint-disable quotes */
import { defineMessages } from '@edx/frontend-platform/i18n';
import { StrictDict } from 'utils';

const messages = defineMessages({
infoMessage: {
id: 'ora-grading.NotificationsBanner.Message',
defaultMessage: 'You can now enable notifications for ORA assignments that require staff grading, from the ',
description: 'user info message that user can enable notifications for ORA assignments',
},
notificationsBannerLinkMessage: {
id: 'ora-grading.NotificationsBanner.linkMessage',
defaultMessage: 'preferences center.',
description: 'placeholder for the preferences center link',
},
});

export default StrictDict(messages);

0 comments on commit 1d924b4

Please sign in to comment.