summaryrefslogtreecommitdiffstats
path: root/src/app/MainScreenHeader.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/MainScreenHeader.jsx')
-rw-r--r--src/app/MainScreenHeader.jsx39
1 files changed, 30 insertions, 9 deletions
diff --git a/src/app/MainScreenHeader.jsx b/src/app/MainScreenHeader.jsx
index 1a39bc4..7808d19 100644
--- a/src/app/MainScreenHeader.jsx
+++ b/src/app/MainScreenHeader.jsx
@@ -26,7 +26,7 @@ import {clearFilters} from 'filter-bar-utils';
import Button from 'react-bootstrap/lib/Button.js';
import Modal from 'react-bootstrap/lib/Modal.js';
import GlobalAutoCompleteSearchBar from 'app/globalAutoCompleteSearchBar/GlobalAutoCompleteSearchBar.jsx';
-import {postAnalyticsData} from 'app/analytics/AnalyticsActions.js';
+import {postAnalyticsData, getStoreAnalyticsPayload} from 'app/analytics/AnalyticsActions.js';
import GlobalInlineMessageBar from 'app/globalInlineMessageBar/GlobalInlineMessageBar.jsx';
import {getClearGlobalMessageEvent} from 'app/globalInlineMessageBar/GlobalInlineMessageBarActions.js';
import {externalUrlRequest, externalMessageRequest, getSubscriptionPayload} from 'app/contextHandler/ContextHandlerActions.js';
@@ -41,7 +41,8 @@ import {
} from 'react-router-dom';
import {
- AAI_TITLE,
+ AAI_TOP_LEFT_HEADER,
+ AAI_HTML_TITLE,
MENU_ITEM_TIER_SUPPORT,
MENU_ITEM_VNF_SEARCH
} from './MainScreenWrapperConstants.js';
@@ -55,7 +56,8 @@ import {
import {clearSuggestionsTextField} from 'app/globalAutoCompleteSearchBar/GlobalAutoCompleteSearchBarActions.js';
import {changeUrlAddress} from 'utils/Routes.js';
import extensibleViews from 'resources/views/extensibleViews.json';
-
+import {getPersonalizationDetails} from 'app/personlaization/PersonalizationActions.js';
+import {isEmpty} from 'lodash';
const mapStateToProps = ({mainWrapper, configurableViews}) => {
let {
@@ -64,7 +66,9 @@ const mapStateToProps = ({mainWrapper, configurableViews}) => {
externalRequestFound = {},
secondaryTitle = '',
subscriptionPayload = {},
- subscriptionEnabled = false
+ subscriptionEnabled = false,
+ aaiTopLeftPersonalizedHeader = AAI_TOP_LEFT_HEADER,
+ aaiPersonalizedHtmlDocumentTitle = AAI_HTML_TITLE
} = mainWrapper;
let {
@@ -78,7 +82,9 @@ const mapStateToProps = ({mainWrapper, configurableViews}) => {
secondaryTitle,
subscriptionPayload,
subscriptionEnabled,
- configurableViewsConfig
+ configurableViewsConfig,
+ aaiTopLeftPersonalizedHeader,
+ aaiPersonalizedHtmlDocumentTitle
};
};
@@ -90,7 +96,7 @@ const mapActionsToProps = (dispatch) => {
dispatch(showMainMenu(false));
},
dispatchAnalyticsData: () => dispatch(
- postAnalyticsData(document.documentElement.outerHTML.replace('\s+', ''))),
+ postAnalyticsData(getStoreAnalyticsPayload())),
onRouteChange: () => {
dispatch(getClearGlobalMessageEvent());
dispatch(clearSuggestionsTextField());
@@ -109,6 +115,9 @@ const mapActionsToProps = (dispatch) => {
},
onFetchCustomViews: () => {
dispatch(getConfigurableViewConfigs());
+ },
+ onGetPersonalizationValues: () => {
+ dispatch(getPersonalizationDetails());
}
};
};
@@ -119,7 +128,9 @@ class MainScreenHeader extends Component {
toggleButtonActive: PropTypes.bool,
externalRequestFound: PropTypes.object,
secondaryTitle: PropTypes.string,
- subscriptionPayload: PropTypes.object
+ subscriptionPayload: PropTypes.object,
+ aaiTopLeftPersonalizedHeader: PropTypes.string,
+ aaiPersonalizedHtmlDocumentTitle: PropTypes.string
};
navigationLinkAndCurrentPathMatch(location, to) {
@@ -151,6 +162,7 @@ class MainScreenHeader extends Component {
}
componentWillMount() {
+ this.props.onGetPersonalizationValues();
this.props.onGetSubscriptionPayload();
if(this.props.match.params.externalUrl !== undefined &&
this.isValidExternalURL(this.props.match.params.externalUrl)) {
@@ -159,6 +171,14 @@ class MainScreenHeader extends Component {
}
componentWillReceiveProps(nextProps) {
+ if(!isEmpty(nextProps.aaiPersonalizedHtmlDocumentTitle)) {
+ if(!sessionStorage.getItem('PAGE_TITLE') || sessionStorage.getItem('PAGE_TITLE') !== nextProps.aaiPersonalizedHtmlDocumentTitle) {
+ sessionStorage.setItem('PAGE_TITLE', nextProps.aaiPersonalizedHtmlDocumentTitle);
+ }
+ document.title = nextProps.aaiPersonalizedHtmlDocumentTitle;
+ } else {
+ document.title = AAI_HTML_TITLE;
+ }
if (this.props.location &&
this.props.location.pathname !==
nextProps.location.pathname) {
@@ -246,7 +266,8 @@ class MainScreenHeader extends Component {
onHideMenu,
toggleButtonActive,
secondaryTitle,
- configurableViewsConfig
+ configurableViewsConfig,
+ aaiTopLeftPersonalizedHeader
} = this.props;
let menuOptions = [];
@@ -335,7 +356,7 @@ class MainScreenHeader extends Component {
{menuOptions}
</Modal.Body>
</Modal>
- <span className='application-title'>{AAI_TITLE}</span>
+ <span className='application-title'>{aaiTopLeftPersonalizedHeader}</span>
<GlobalAutoCompleteSearchBar history={this.props.history}/>
</div>
<GlobalInlineMessageBar />