{"version":3,"file":"static/js/application.support.b7c6c7a7.js","mappings":"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","sources":["../../../node_modules/@bingads-webui-campaign/qualtrics/src/utils.js","components/apex-updater.js","components/walk-me.js","global-init/walk-me.js","../../../../node_modules/.pnpm/@bingads-webui-help+apex@1.0.44/node_modules/@bingads-webui-help/apex/dist/apex.core.v3.js","../../../../node_modules/.pnpm/@bingads-webui-help+apex@1.0.44/node_modules/@bingads-webui-help/apex/dist/apex.embed.v3.js","../../../../node_modules/.pnpm/@bingads-webui-help+apex@1.0.44/node_modules/@bingads-webui-help/apex/dist/index.js","../webpack/bootstrap","../../../../../../../../external/prop-types","../../../../../../../../external/@bingads-webui-react/focus-lock","../../../../../../../../external/react","../../../../../../../../external/@bingads-webui-react/hoc-with-signal","../../../../../../../../external/react-modal","../webpack-src:/ms-support-chat-modal/index.js","../webpack-src:/ms-support-chat-modal/src/ms-support-chat-modal.js","../webpack-src:/ms-support-chat-modal/src/ms-support-chat-form.js","../../../../../../../../external/underscore","../webpack-src:/ms-support-chat-modal/src/ms-support-chat-survey.js","../../../../../../../../external/@bingads-webui-react/support-category-selector","../../../../../../../../external/@bingads-webui-react/support-market-mapping","../webpack-src:/request-call-modal/index.js","../webpack-src:/request-call-modal/src/request-call-modal.js","../webpack-src:/request-call-modal/src/request-call-form.js","../webpack-src:/support-category-selector/index.js","../webpack-src:/support-category-selector/src/index.js","../../../../../../../../external/classnames","../../../../../../../../external/@bingads-webui-react/primitive","../webpack-src:/support-modals/index.js","../webpack-src:/support-modals/src/support-modals.js","../../../../../../../../external/@bingads-webui-help/apex","../webpack-src:/support-modals/src/ms-chat-support.js","../../../../../../../../external/@bingads-webui-react/ms-support-chat-modal","../webpack-src:/support-modals/src/utils.js","../webpack-src:/support-modals/src/request-call-support.js","../../../../../../../../external/@bingads-webui-react/request-call-modal","../webpack-src:/support-modals/src/initialize-apex.js","../webpack-src:/support-modals/src/floating-help.js","../webpack-src:/support-modals/styles/get-floating-help-styles.js","../webpack-src:/support-modals/media/LiveChatLogo.svg","../webpack-src:/support-modals/media/RequestCallLogo.svg","../webpack-src:/support-modals/src/floating-group.js","../webpack-src:/support-modals/styles/get-floating-group-styles.js","../../../../../../../../external/@bingads-webui-react/with-default-styles","../../../../../../../../external/@bingads-webui/build-legacy-i18n","../../../../../../../../external/jquery","../webpack/universalModuleDefinition","../webpack-src:/clarity/index.ts","../webpack-src:/clarity/src/index.ts"],"sourcesContent":["/* eslint-disable no-underscore-dangle */\r\nimport _ from 'underscore';\r\nimport { stringifySync } from '@bingads-webui/safe-json';\r\nimport { setupQualtrics } from './setup';\r\n\r\nlet _PreferenceService;\r\nlet _AppActivity;\r\n\r\nconst logSurvey = (message, options) => {\r\n if (_AppActivity) {\r\n try {\r\n if (options != null && options.surveyId) {\r\n const {\r\n surveyId,\r\n } = options;\r\n _AppActivity.trace(`${surveyId}_${message}`, 'survey-logs');\r\n } else {\r\n _AppActivity.trace(message, 'survey-logs');\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n};\r\n\r\nconst updateQuatricsEvents = (eventName) => {\r\n window.qualtrics = {\r\n ...window.qualtrics,\r\n isLoaded: true,\r\n events: {\r\n // we replace all previous events, because we only want 1 event\r\n // based prompt to show at any given time\r\n [eventName]: true,\r\n },\r\n };\r\n};\r\n\r\nconst retriggerQSI = () => {\r\n if (window.QSI && window.QSI.API) {\r\n // re-run qualtrics to show dynamic popups\r\n const { API } = window.QSI;\r\n API.unload();\r\n API.load();\r\n API.run();\r\n\r\n logSurvey('QualtricsReInitialized');\r\n return true;\r\n }\r\n logSurvey('QualtricsNotReInitialized');\r\n return false;\r\n};\r\n\r\nexport const setQualtricsHasCampaign = () => {\r\n // don't trigger event if qualtrics isn't setup\r\n if (!window.qualtrics) {\r\n logSurvey('QualtricsIsNotInitialized');\r\n return false;\r\n }\r\n\r\n if (window.qualtrics.hasCampaign) {\r\n logSurvey('HasTriggeredHasCampaign');\r\n return true;\r\n }\r\n\r\n if (window.QSI && window.QSI.API) {\r\n window.qualtrics.hasCampaign = true;\r\n logSurvey('FirstTriggeredHasCampaign');\r\n return retriggerQSI();\r\n }\r\n logSurvey('QSICheckFailedTriggeredHasCampaign');\r\n return false;\r\n};\r\n\r\nexport const triggerQualtricsEvent = (eventName) => {\r\n // don't trigger event if qualtrics isn't setup\r\n if (!window.qualtrics) { return false; }\r\n\r\n // Always push the event to qualtrics, so they can track how many times\r\n // it fires.\r\n window._qsie = window._qsie || [];\r\n window._qsie.push(eventName);\r\n\r\n // Only update qualtrics if the event wasn't previously set\r\n if (!window.qualtrics.events[eventName]) {\r\n updateQuatricsEvents(eventName);\r\n\r\n return retriggerQSI();\r\n }\r\n return false;\r\n};\r\n\r\nfunction createDate(date) {\r\n return date ? new Date(date) : new Date();\r\n}\r\n\r\nfunction getMonthAgo(month) {\r\n const now = new Date();\r\n now.setTime(Date.now() - (86400000 * (30 * month)));\r\n return now;\r\n}\r\n\r\nfunction getSurveyPreference() {\r\n if (_PreferenceService == null) {\r\n return {};\r\n }\r\n\r\n const surveyPreference = _PreferenceService.findByNameAtUserLevel('SurveyPreference');\r\n if (surveyPreference == null || surveyPreference.Name == null) {\r\n return ({\r\n Name: 'SurveyPreference',\r\n Data: {\r\n },\r\n Type: 'string',\r\n Version: 1,\r\n });\r\n }\r\n return surveyPreference;\r\n}\r\n\r\nfunction getSurveyDataWithSurveyId(surveyId, surveyPre) {\r\n if (_PreferenceService == null) {\r\n return {};\r\n }\r\n\r\n const surveyPreference = surveyPre || getSurveyPreference();\r\n const surveyData = _.chain(surveyPreference)\r\n .result('Data')\r\n .result(surveyId)\r\n .value();\r\n\r\n if (surveyData == null) {\r\n return {};\r\n }\r\n return surveyData;\r\n}\r\n\r\nexport function setSurveyShowed(surveyId) {\r\n try {\r\n if (_PreferenceService == null) {\r\n logSurvey('Set_NoPreference', { surveyId });\r\n return;\r\n }\r\n\r\n const surveyPreference = getSurveyPreference();\r\n const surveyData = getSurveyDataWithSurveyId(surveyId, surveyPreference);\r\n surveyPreference.Data[surveyId] = {\r\n ...surveyData,\r\n show: {\r\n date: new Date().toISOString(),\r\n },\r\n };\r\n logSurvey(stringifySync({\r\n type: `${surveyId}_SurveyPreference`,\r\n data: surveyPreference.Data[surveyId],\r\n }));\r\n _PreferenceService.setAtUserLevel(surveyPreference);\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n}\r\n\r\nfunction surveyIsNotShowedOrExpired(surveyId, month) {\r\n if (_PreferenceService == null) {\r\n logSurvey('Check_NoPreference', { surveyId });\r\n return false;\r\n }\r\n\r\n const expiredDate = getMonthAgo(month);\r\n const surveyData = getSurveyDataWithSurveyId(surveyId);\r\n const show = _.chain(surveyData)\r\n .result('show')\r\n .value();\r\n\r\n logSurvey(stringifySync({\r\n type: `${surveyId}_ShowDependency2`,\r\n data: {\r\n expiredDate,\r\n show,\r\n },\r\n }));\r\n if (show == null) {\r\n logSurvey('SurveyNotShowed', { surveyId });\r\n return true;\r\n }\r\n const showedDate = createDate(show.date);\r\n if (showedDate <= expiredDate) {\r\n logSurvey('SurveyExpired', { surveyId });\r\n return true;\r\n }\r\n logSurvey('SurveyShowed', { surveyId });\r\n return false;\r\n}\r\n\r\nexport function shouldShowSurvey(surveyId) {\r\n logSurvey('ShouldShowSurveyStart', { surveyId });\r\n try {\r\n const {\r\n CurrentAccountCreatedDate,\r\n hasCampaign,\r\n } = window.qualtrics;\r\n const oneMonthAgo = getMonthAgo(1);\r\n const accountCreatedDate = createDate(CurrentAccountCreatedDate);\r\n\r\n logSurvey(stringifySync({\r\n type: `${surveyId}_ShowDependency1`,\r\n data: {\r\n CurrentAccountCreatedDate,\r\n hasCampaign,\r\n oneMonthAgo,\r\n accountCreatedDate,\r\n },\r\n }));\r\n switch (surveyId) {\r\n case 'ESCWebUISurvey':\r\n if (hasCampaign && accountCreatedDate <= oneMonthAgo) {\r\n return surveyIsNotShowedOrExpired(surveyId, 6);\r\n }\r\n logSurvey('ShouldNotShowWebUISurvey', { surveyId });\r\n return false;\r\n case 'WebUISurvey':\r\n if (accountCreatedDate <= oneMonthAgo) {\r\n return surveyIsNotShowedOrExpired(surveyId, 6);\r\n }\r\n logSurvey('ShouldNotShowWebUISurvey', { surveyId });\r\n return false;\r\n default:\r\n logSurvey('ShouldNotShowSurvey', { surveyId });\r\n return false;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n logSurvey('ShouldShowSurveyEnd', { surveyId });\r\n return false;\r\n}\r\n\r\nexport const updateGlobalQualtricsData = (serverContext) => {\r\n let {\r\n CurrentUser,\r\n CurrentCustomer,\r\n CurrentAccount,\r\n Identity,\r\n Omniture,\r\n CurrentLocale,\r\n } = serverContext;\r\n\r\n CurrentUser = CurrentUser || {};\r\n CurrentCustomer = CurrentCustomer || {};\r\n CurrentAccount = CurrentAccount || {};\r\n Identity = Identity || {};\r\n Omniture = Omniture || {};\r\n CurrentLocale = CurrentLocale || '';\r\n\r\n let { Language } = CurrentUser;\r\n // if CurrentUser doesn't exist yet (e.g. signup), fallback on CurrentLocale\r\n if (!Language && CurrentLocale.toLowerCase().indexOf('en') === 0) {\r\n Language = 'EN';\r\n }\r\n\r\n window.qualtrics = {\r\n aid: CurrentAccount.Id,\r\n cid: CurrentAccount.AdvertiserCustomerID,\r\n uid: CurrentUser.Id,\r\n CustomerName: CurrentCustomer.Name,\r\n AccountMode: CurrentAccount.AccountMode,\r\n UserName: CurrentUser.Name || Identity.UserName,\r\n Email: CurrentUser.Email || Identity.Email,\r\n SessionId: Omniture.SessionId,\r\n events: {},\r\n isLoaded: false,\r\n Language,\r\n IsInternal: CurrentUser.IsInternal,\r\n hasCampaign: false,\r\n CurrentAccountCreatedDate: CurrentAccount.CreatedDate,\r\n shouldShowSurvey,\r\n };\r\n};\r\n\r\nexport function messageHandler(e) {\r\n if ((e.origin === 'https://microsoft.qualtrics.com' || e.origin === 'https://ui.ads.microsoft.com') && e.data) {\r\n const {\r\n surveyId,\r\n event,\r\n message,\r\n } = e.data;\r\n if (event === 'show') {\r\n setSurveyShowed(surveyId);\r\n } else if (event === 'log' && _AppActivity) {\r\n try {\r\n _AppActivity.trace(message, 'survey-logs');\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction setupIframeCommunication() {\r\n window.addEventListener('message', messageHandler);\r\n}\r\n\r\nexport function setupQualtricsWithData(serverContext, options = {}) {\r\n const {\r\n PreferenceService,\r\n enableIframeCommunication,\r\n appActivity,\r\n } = options;\r\n updateGlobalQualtricsData(serverContext);\r\n if (enableIframeCommunication) {\r\n _PreferenceService = PreferenceService;\r\n _AppActivity = appActivity;\r\n setupIframeCommunication();\r\n // log all the information at start-up;\r\n logSurvey(stringifySync(window.qualtrics));\r\n }\r\n setupQualtrics();\r\n}\r\n","import { result } from 'underscore';\r\nimport React from 'react';\r\nimport { withRouter } from '@bingads-webui-campaign-react/router';\r\nimport {\r\n withSiteMap,\r\n processor,\r\n findDeepSiteMap,\r\n siteMapPropType,\r\n} from '@bingads-webui-campaign-react/with-site-map';\r\n\r\nconst ApexUpdaterInternal = ({ siteMap }) => {\r\n let apexViewName = '';\r\n if (window.ApexPlatform) {\r\n const currentPage = findDeepSiteMap(siteMap, node => node.selected);\r\n if (currentPage) {\r\n // take apexViewName for apex, if not exist, take all route sections as apexViewName\r\n apexViewName = currentPage.apexViewName || result(currentPage, 'route', '').replace(/\\//g, '_');\r\n\r\n window.ApexPlatform.Refresh(apexViewName);\r\n } else {\r\n window.ApexPlatform.Refresh();\r\n }\r\n }\r\n return (\r\n \r\n );\r\n};\r\n\r\nApexUpdaterInternal.propTypes = {\r\n siteMap: siteMapPropType.isRequired,\r\n};\r\n\r\nexport const ApexUpdater = withRouter(withSiteMap(React.memo(ApexUpdaterInternal), [processor.processPermissions, processor.processPath]));\r\n","/* eslint-disable no-underscore-dangle */\r\nimport { useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { QueryParam, withScope } from '@bingads-webui-react/scope-service';\r\nimport { withServerContext } from '@bingads-webui-campaign-react/server-context';\r\n\r\n\r\nconst WalkMe = (props) => {\r\n const [isInitialized, setInitialized] = useState(false);\r\n const { serverContext, scope } = props;\r\n\r\n useEffect(() => {\r\n if (isInitialized) {\r\n if (scope.values.walkMeId) {\r\n if (window.WalkMeAPI && ((typeof window.WalkMeAPI.startWalkthruById !== 'function') || !window.WalkMeAPI.startWalkthruById(scope.values.walkMeId))) {\r\n // if regular walkthrough does not exist, do smart walkthrough flow\r\n window.WalkMeAPI.startFlowById(scope.values.walkMeId);\r\n }\r\n scope.remove('walkMeId');\r\n scope.save();\r\n }\r\n } else {\r\n window.walkme_ready = () => {\r\n // exposing user id together with customer id and account id to walkme\r\n const userId = `${serverContext.CurrentUser.Id}_${serverContext.CurrentCustomer.Id}_${serverContext.CurrentAccount.AccountNumber}`;\r\n\r\n window._userId = userId;\r\n let language;\r\n\r\n if (serverContext.CurrentLocale) {\r\n language = serverContext.CurrentLocale.substr(0, 2).toLowerCase();\r\n if (language === 'en') {\r\n language = ''; // default for english\r\n }\r\n\r\n const currentLanguage = window.WalkMeAPI.getCurrentLanguage();\r\n\r\n if (language !== currentLanguage) {\r\n window.WalkMeAPI.changeLanguage(language);\r\n }\r\n }\r\n setInitialized(true);\r\n document.querySelectorAll('.walkme-to-destroy').forEach(walmeToDestory => walmeToDestory.remove());\r\n };\r\n\r\n if (window.WalkMeAPI) {\r\n window.walkme_ready();\r\n delete window.walkme_ready;\r\n }\r\n }\r\n });\r\n\r\n return null;\r\n};\r\n\r\nWalkMe.propTypes = {\r\n serverContext: PropTypes.shape({\r\n CurrentAccount: PropTypes.shape({\r\n Id: PropTypes.number.isRequired,\r\n }),\r\n CurrentCustomer: PropTypes.shape({\r\n Id: PropTypes.number.isRequired,\r\n }),\r\n CurrentUser: PropTypes.shape({\r\n Id: PropTypes.number.isRequired,\r\n }),\r\n CurrentLocale: PropTypes.string,\r\n }).isRequired,\r\n scope: PropTypes.instanceOf(QueryParam).isRequired,\r\n};\r\n\r\nexport const WalkMeWithScopeAndContext = withServerContext(withScope(WalkMe));\r\n","/* eslint-disable no-underscore-dangle */\r\n\r\nexport const initWalkMe = ({\r\n IsProdEnv,\r\n}) => {\r\n const walkme = document.createElement('script');\r\n let subdirectory;\r\n\r\n if (IsProdEnv) {\r\n subdirectory = '';\r\n } else {\r\n subdirectory = 'test/';\r\n }\r\n\r\n walkme.type = 'text/javascript';\r\n walkme.async = true;\r\n walkme.src = `https://cdn.walkme.com/users/e5cf9506ca6f450b92949a36fcc86750/${subdirectory}walkme_e5cf9506ca6f450b92949a36fcc86750_https.js`;\r\n\r\n const node = document.getElementsByTagName('script')[0];\r\n\r\n node.parentNode.insertBefore(walkme, node);\r\n window._walkmeConfig = {\r\n smartLoad: true,\r\n };\r\n};\r\n","/*-----------------------------------------------------------\r\n// Name: Apex.Core controllers\r\n// Description: All Controllers, Proxy Scripts, Handlers\r\n// Default WS Caching: 2hrs\r\n// Author: Amal Susainathan\r\n// Updated Date: 02/09/2021\r\n// Copyright: Microsoft Corporation, 2021\r\n// -------------------------------------------------------*/\r\n\r\n//----------------------Begin - jQuery Extension function to support the backward compatibility -------------------------//\r\n(function (jQuery, window, undefined) {\r\n // See http://bugs.jquery.com/ticket/13335\r\n // \"use strict\";\r\n jQuery.uaMatch = function (ua) {\r\n ua = ua.toLowerCase();\r\n\r\n var match = /(chrome)[ \\/]([\\w.]+)/.exec(ua) || /(webkit)[ \\/]([\\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ \\/]([\\w.]+)/.exec(ua) || /(msie) ([\\w.]+)/.exec(ua) || ua.indexOf(\"compatible\") < 0 && /(mozilla)(?:.*? rv:([\\w.]+)|)/.exec(ua) || [];\r\n\r\n return {\r\n browser: match[1] || \"\",\r\n version: match[2] || \"0\"\r\n };\r\n };\r\n\r\n // Don't clobber any existing jQuery.browser in case it's different\r\n if (!jQuery.browser) {\r\n var matched = jQuery.uaMatch(navigator.userAgent);\r\n var browser = {};\r\n\r\n if (matched.browser) {\r\n browser[matched.browser] = true;\r\n browser.version = matched.version;\r\n }\r\n\r\n // Chrome is Webkit, but Webkit is also Safari.\r\n if (browser.chrome) {\r\n browser.webkit = true;\r\n } else if (browser.webkit) {\r\n browser.safari = true;\r\n }\r\n\r\n jQuery.browser = browser;\r\n }\r\n\r\n})(jQuery, window);\r\n//----------------------End - jQuery Extension function to support the backward compatibility ----------------------------//\r\n\r\n/*-----------------------------------------------------------\r\n// Apex GLOBAL VARIABLES\r\n// -------------------------------------------------------*/\r\nwindow.apex_glb = {\r\n EndPoint: '',\r\n SourceEndPoint: '',\r\n Project: '',\r\n ProjectId: '',\r\n ProjectAlias: '',\r\n Market: '',\r\n SupportMarket: '',\r\n SupportOptions: null,\r\n Language: '',\r\n ApexWinName: \"_apexPlatformHelp\",\r\n LocStrings: null,\r\n ViewConfig: null,\r\n Suggestions: null,\r\n Tours: null,\r\n EmbeddedHelp: false,\r\n Query: null,\r\n Success: null,\r\n Failure: null,\r\n Refresh: false,\r\n Authorize: false,\r\n Initialized: false,\r\n APIController: \"apexv2api\",\r\n CurrentView: \"\",\r\n onRailViewClose: function() {},\r\n onRailViewOpen: function() {},\r\n onPopupOpen: function() {},\r\n onPopupClose: function() {},\r\n};\r\n\r\n/*-----------------------------------------------------------\r\n// Apex Platform Controller\r\n// -------------------------------------------------------*/\r\nwindow.ApexPlatform = (function () {\r\n var myself = this;\r\n\r\n var isApexPlatformEnabled = function (platform) {\r\n try {\r\n var enable = $.trim($(\"input#apexPlatformEntries\").attr(platform));\r\n if ((enable != undefined) && (enable != null)) {\r\n return (enable.toLowerCase() == \"true\");\r\n } else {\r\n return false;\r\n }\r\n } catch (e) {\r\n return false;\r\n }\r\n };\r\n\r\n //this will be called from Ads APPs call back\r\n var adsInit = function () {\r\n var helpContainerId = 'apexHelpContainer';\r\n try {\r\n var embeddedClientElementClass = window.apex_glb.ViewConfig.RailView.embeddedClientElementClass;\r\n if (embeddedClientElementClass != undefined && embeddedClientElementClass != null && embeddedClientElementClass != '') {\r\n helpContainerId = embeddedClientElementClass;\r\n }\r\n } catch (ex) { }\r\n\r\n if (window.console && window.console.log)\r\n window.console.log(\"Popup - Load was performed.\");\r\n $.fn.CreatePopup({\r\n project: window.apex_glb.Project,\r\n language: window.apex_glb.Language,\r\n helpUrl: window.apex_glb.EndPoint,\r\n SupportMarket: window.apex_glb.SupportMarket,\r\n Authorize: window.apex_glb.Authorize\r\n });\r\n\r\n if (window.console && window.console.log)\r\n window.console.log(\"AB - Load was performed.\");\r\n //debugger;\r\n $.fn.CreateAnswerBar({\r\n Product: window.apex_glb.Project,\r\n Project: window.apex_glb.Project,\r\n Language: window.apex_glb.Language,\r\n HelpUrl: window.apex_glb.EndPoint,\r\n Enable: true,\r\n SupportMarket: window.apex_glb.SupportMarket,\r\n SupportOptions: window.apex_glb.SupportOptions,\r\n InitController: true,\r\n HelpContainerId: helpContainerId\r\n });\r\n };\r\n\r\n var apexTrapFocus = function (first, last) {\r\n if (first === null || last === null) {\r\n return\r\n }\r\n \r\n if (first.length == 1 && last.length == 1) {\r\n $(first).off('keydown');\r\n $(first).on('keydown', function (e) {\r\n var keyCode = e.keyCode || e.which;\r\n // Shift + Tab event\r\n if (keyCode == 9 && e.shiftKey) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n $(last).focus();\r\n }\r\n });\r\n\r\n $(last).off('keydown');\r\n $(last).on('keydown', function (e) {\r\n var keyCode = e.keyCode || e.which;\r\n // Tab event\r\n if (keyCode == 9 && !e.shiftKey) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n $(first).focus();\r\n }\r\n });\r\n }\r\n };\r\n\r\n var loadApexPopupFrameworks = function () {\r\n\r\n //create answer bar\r\n var apiUrl = '';\r\n var combineBothFramework = false;\r\n try {\r\n var enableEmbeddedHelp = window.apex_glb.ViewConfig.RailView.enableEmbeddedHelp;\r\n if (enableEmbeddedHelp != undefined && enableEmbeddedHelp != null && enableEmbeddedHelp == 'true') {\r\n if (isApexPlatformEnabled('initPopup')) {\r\n combineBothFramework = true;\r\n }\r\n }\r\n if (combineBothFramework) {\r\n if (apex_glb.SourceEndPoint == '' || apex_glb.SourceEndPoint == apex_glb.EndPoint) {\r\n window.apex_glb.SourceEndPoint = window.apex_glb.EndPoint;\r\n apiUrl = \"/Resources/content/scripts/apex.embed.v3.min.js?v=3.2.1.25\";\r\n }\r\n else {\r\n apiUrl = \"apex.embed.v3.min.js?v=3.2.1.25\";\r\n }\r\n }\r\n } catch (ex) { }\r\n if (apiUrl !== '') {\r\n window.apex_glb.EmbeddedHelp = true;\r\n if (typeof config != \"undefined\" && typeof config.getScriptForAds == \"function\") {\r\n config.getScriptForAds(\"\", window.ApexPlatform.AdsInit);\r\n }\r\n else {\r\n $.getScript(window.apex_glb.SourceEndPoint + apiUrl, function (data, textStatus, jqxhr) {\r\n adsInit();\r\n });\r\n }\r\n }\r\n else {\r\n bindPlatformEvents();\r\n }\r\n return combineBothFramework;\r\n };\r\n\r\n var loadOtherFrameworks = function () {\r\n window.console.log(\"Loading Apex Platform Frameworks\");\r\n\r\n if (loadApexPopupFrameworks()) return;\r\n\r\n if (isApexPlatformEnabled('initPopup') && typeof window.popup_glb == 'undefined') {\r\n //create popup\r\n $.getScript(window.apex_glb.EndPoint + \"/Resources/content/scripts/popupscript.apex.min.js?v=0.2.1.11\", function (data, textStatus, jqxhr) {\r\n if (window.console && window.console.log)\r\n window.console.log(\"Popup - Load was performed.\");\r\n $.fn.CreatePopup({\r\n project: window.apex_glb.Project,\r\n language: window.apex_glb.Language,\r\n helpUrl: window.apex_glb.EndPoint,\r\n SupportMarket: window.apex_glb.SupportMarket,\r\n Authorize: window.apex_glb.Authorize\r\n });\r\n });\r\n };\r\n\r\n if (isApexPlatformEnabled('initAnswerBar') && typeof window.ab_glb == 'undefined') {\r\n //create answer bar\r\n $.getScript(window.apex_glb.EndPoint + \"/Resources/content/scripts/railhelpcontroller.apex.min.js?v=0.2.1.11\", function (data, textStatus, jqxhr) {\r\n if (window.console && window.console.log)\r\n window.console.log(\"AB - Load was performed.\");\r\n //debugger;\r\n $.fn.CreateAnswerBar({\r\n Product: window.apex_glb.Project,\r\n Project: window.apex_glb.Project,\r\n Language: window.apex_glb.Language,\r\n HelpUrl: window.apex_glb.EndPoint,\r\n Enable: true,\r\n SupportMarket: window.apex_glb.SupportMarket,\r\n InitController: true\r\n });\r\n });\r\n //bind Events\r\n bindPlatformEvents();\r\n }\r\n else {\r\n //create answer bar\r\n var apiUrl = '';\r\n var helpContainerId = '';\r\n try {\r\n var enableEmbeddedHelp = window.apex_glb.ViewConfig.RailView.enableEmbeddedHelp;\r\n var embeddedClientElementClass = window.apex_glb.ViewConfig.RailView.embeddedClientElementClass;\r\n\r\n if (enableEmbeddedHelp != undefined && enableEmbeddedHelp != null && enableEmbeddedHelp == 'true') {\r\n apiUrl = \"/Resources/content/scripts/apex.embed.min.js?v=0.2.1.19\";\r\n if (embeddedClientElementClass != undefined && embeddedClientElementClass != null && embeddedClientElementClass != '') {\r\n helpContainerId = embeddedClientElementClass;\r\n }\r\n else {\r\n helpContainerId = 'apexHelpContainer';\r\n }\r\n }\r\n } catch (ex) { }\r\n if (apiUrl !== '') {\r\n window.apex_glb.EmbeddedHelp = true;\r\n $.getScript(window.apex_glb.EndPoint + apiUrl, function (data, textStatus, jqxhr) {\r\n if (window.console && window.console.log)\r\n window.console.log(\"AB - Load was performed.\");\r\n //debugger;\r\n $.fn.CreateAnswerBar({\r\n Product: window.apex_glb.Project,\r\n Project: window.apex_glb.Project,\r\n Language: window.apex_glb.Language,\r\n HelpUrl: window.apex_glb.EndPoint,\r\n Enable: true,\r\n SupportMarket: window.apex_glb.SupportMarket,\r\n SupportOptions: window.apex_glb.SupportOptions,\r\n InitController: true,\r\n HelpContainerId: helpContainerId\r\n });\r\n });\r\n }\r\n else {\r\n bindPlatformEvents();\r\n }\r\n\r\n };\r\n\r\n if (isApexPlatformEnabled('initHelpCoach')) {\r\n //create help coach\r\n\r\n };\r\n };\r\n\r\n var handlePlatformGlobalsSuccessForInit = function (data) {\r\n\r\n //debugger;\r\n var returnval = true;\r\n if (window.apex_glb.Authorize == true) {\r\n data = $.parseJSON(data);\r\n }\r\n if (data) {\r\n window.apex_glb.ProjectId = data.ProjectId;\r\n window.apex_glb.Language = data.Language;\r\n window.apex_glb.ProjectAlias = data.ProjectAlias;\r\n window.apex_glb.LocStrings = data.LocStrings;\r\n window.apex_glb.ViewConfig = data.ViewConfig;\r\n window.apex_glb.Suggestions = data.Suggestions;\r\n window.apex_glb.Tours = data.Tours;\r\n try {\r\n $.each(data.ViewConfig.RailView.ViewItem, function (index, value) {\r\n if (value.Type.toUpperCase() == \"HELP\") {\r\n window.apex_glb.Query = value.Query;\r\n }\r\n });\r\n loadOtherFrameworks();\r\n }\r\n catch (e) { returnval = false; }\r\n }\r\n if (returnval) {\r\n if (typeof window.apex_glb.Success === \"function\") {\r\n status = { \"components\": [{ \"type\": \"ApexPlatform\", \"status\": \"success\", \"description\": \"Apex Platform has been loaded successfully\" }] };\r\n window.apex_glb.Success(status);\r\n }\r\n } else {\r\n if (typeof window.apex_glb.Failure === \"function\") {\r\n status = { \"components\": [{ \"type\": \"ApexPlatform\", \"status\": \"failed\", \"description\": \"Unable to load the data. Please check the configuration\" }] };\r\n window.apex_glb.Failure(status);\r\n }\r\n }\r\n };\r\n\r\n var handlePlatformGlobalsSuccessForRefresh = function (data) {\r\n\r\n //debugger;\r\n if (window.apex_glb.Authorize == true) {\r\n data = $.parseJSON(data);\r\n }\r\n if (data) {\r\n window.apex_glb.ProjectId = data.ProjectId;\r\n window.apex_glb.Language = data.Language;\r\n window.apex_glb.LocStrings = data.LocStrings;\r\n window.apex_glb.ViewConfig = data.ViewConfig;\r\n window.apex_glb.Suggestions = data.Suggestions;\r\n window.apex_glb.Tours = data.Tours;\r\n try {\r\n $.each(data.ViewConfig.RailView.ViewItem, function (index, value) {\r\n if (value.Type.toUpperCase() == \"HELP\") {\r\n window.apex_glb.Query = value.Query;\r\n }\r\n });\r\n } catch (ex) { }\r\n window.console.log(\"AB - global refresh => \" + window.apex_glb.Refresh + ' -- ' + typeof RailHelpController);\r\n if (typeof RailHelpController !== 'undefined') {\r\n if (typeof RailHelpController.Refresh === 'function') {\r\n RailHelpController.Refresh();\r\n }\r\n }\r\n }\r\n };\r\n\r\n var handlePlatformGlobalsFailure = function (jqXHR, textStatus, errorThrown) {\r\n if (typeof window.apex_glb.Failure === \"function\") {\r\n window.apex_glb.Failure(jqXHR, textStatus, errorThrown);\r\n }\r\n };\r\n\r\n //performs GetContent\r\n var getPlatformGlobals = function (init) {\r\n //Hack for param\r\n var viewId = '';\r\n if (window.apex_glb.CurrentView == \"\" || window.apex_glb.CurrentView == null) {\r\n viewId = $('[RailViewID]')[0] == undefined ? getViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n }\r\n else {\r\n viewId = window.apex_glb.CurrentView;\r\n }\r\n $('#apexPlatformEntries').attr('viewName', viewId);\r\n var input = {\r\n 'project': window.apex_glb.Project,\r\n 'language': window.apex_glb.Market,\r\n 'view': viewId\r\n };\r\n\r\n if (window.apex_glb.APIController == null || window.apex_glb.APIController == \"\" || window.apex_glb.APIController == undefined) {\r\n window.apex_glb.APIController = \"apexapi\";\r\n }\r\n //var url = window.apex_glb.EndPoint + \"/api/apexapi/ApexConfig\";\r\n var url = window.apex_glb.Authorize == true ? \"/ApexHelp/HelpConfig\" : window.apex_glb.EndPoint + \"/api/\" + window.apex_glb.APIController + \"/ApexConfig\";\r\n $.ajax({\r\n url: url,\r\n data: input,\r\n //method: \"POST\",\r\n contentType: 'application/json',\r\n crossDomain: true,\r\n // dataType: 'jsonp',\r\n cache: false,\r\n success: init ? handlePlatformGlobalsSuccessForInit : handlePlatformGlobalsSuccessForRefresh,\r\n error: handlePlatformGlobalsFailure,\r\n timeout: 60000\r\n });\r\n };\r\n\r\n var isNumber = function (n) {\r\n return parseFloat(n) == n;\r\n };\r\n\r\n var getViewName = function () {\r\n var viewname = \"Default\";\r\n var lochref = location.href;\r\n var indexHash = lochref.indexOf('#', 0);\r\n var pathname = location.pathname;\r\n if (indexHash >= 0) {\r\n var indexQn = lochref.indexOf('?', indexHash);\r\n pathname = lochref.substring(indexHash, indexQn);\r\n }\r\n\r\n var index = pathname.indexOf('.aspx', 0);\r\n var paths;\r\n var length;\r\n var minLength = 2;\r\n //MVC\r\n if (index < 0) {\r\n paths = pathname.split('/');\r\n length = paths.length;\r\n for (var i = length - 1; i > 0; i--) {\r\n if (isNumber(paths[i])) {\r\n paths.splice(i, 1);\r\n }\r\n }\r\n length = paths.length;\r\n }\r\n else { //ASPX\r\n var aspxname = pathname.substr(0, index);\r\n paths = aspxname.split('/');\r\n length = paths.length;\r\n minLength = 1;\r\n }\r\n\r\n if (length > minLength) {\r\n if ($.trim(paths[length - 2]) != \"\") {\r\n viewname = paths[length - 2];\r\n if ($.trim(paths[length - 1]) != \"\") {\r\n viewname = viewname + '_' + paths[length - 1];\r\n };\r\n } else if ($.trim(paths[length - 1]) != \"\") {\r\n viewname = paths[length - 1];\r\n };\r\n }\r\n else if (length > (minLength - 1)) {\r\n if ($.trim(paths[length - 1]) != \"\") {\r\n viewname = paths[length - 1];\r\n };\r\n }\r\n\r\n return viewname;\r\n };\r\n\r\n var linkHandler = function (elem) {\r\n //debugger;\r\n if (elem.stopPropagation) { elem.stopPropagation(); }\r\n try {\r\n if ($('#apexHelpContainer').length > 0) {\r\n if ($('.apex_platform_chrome').length <= 0) {\r\n window.ApexPlatform.Init();\r\n }\r\n else {\r\n window.ApexPlatform.Refresh();\r\n }\r\n }\r\n }\r\n catch (e) { };\r\n\r\n var query = $(elem.target).attr('Query');\r\n if (query == undefined || query == null) query = window.apex_glb.Query;\r\n var viewId = $('[RailViewID]')[0] == undefined ? getViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n var targetUrl = window.apex_glb.EndPoint + '/#apex/' + window.apex_glb.ProjectAlias + '/' + window.apex_glb.Language + '/' + query + '/-1/' + window.apex_glb.SupportMarket + '/#ext:' + viewId;\r\n //window.open(targetUrl, window.apex_glb.ApexWinName);\r\n var winref = window.open(targetUrl, window.apex_glb.ApexWinName); //Force to open in new window\r\n if (winref != null && typeof winref == 'object') winref.focus(); //no hidden window\r\n };\r\n\r\n var bindPlatformEvents = function () {\r\n $(document).off('click', '.HelpTopic, .HelpTopic span, .HelpTopic div,.apexHelpLink');\r\n //$(document).on('click', '.apexHelpLink', linkHandler);\r\n document.addEventListener('click', function (e) {\r\n for (var target = e.target; target && target != this; target = target.parent) {\r\n try {\r\n if (typeof target.matches == \"function\") {\r\n if (target.matches('.HelpTopic, .HelpTopic span, .HelpTopic div,.apexHelpLink')) {\r\n linkHandler.call(target, e);\r\n }\r\n }\r\n }\r\n catch (e) { };\r\n }\r\n\r\n }, true);\r\n //$(document).off('click', '.HelpTopic');\r\n //$(document).on('click', '.HelpTopic', linkHandler);\r\n\r\n };\r\n\r\n var init = function () {\r\n\r\n //Get Platform Gloabls\r\n window.apex_glb.CurrentView = \"\";\r\n getPlatformGlobals(true);\r\n\r\n //bind Events\r\n //if (window.apex_glb.EmbeddedHelp == false) {\r\n // bindPlatformEvents();\r\n //}\r\n };\r\n\r\n var refresh = function (viewName) {\r\n\r\n if ($('#railhelp_bar').length > 0) {\r\n $('#railhelp_bar').remove();\r\n $('#railhelp_show').remove();\r\n $('#railhtml').html('');\r\n }\r\n if (window.apex_glb.Initialized == true) {\r\n if ((typeof (viewName) == \"undefined\") || (viewName == '') || (viewName == null)) {\r\n viewName = \"\";\r\n }\r\n window.apex_glb.CurrentView = viewName;\r\n window.apex_glb.Refresh = true;\r\n getPlatformGlobals(false);\r\n }\r\n };\r\n var autoSuggestionsList = function (term) {\r\n return $.fn.suggestionBox.showApexSuggestionsTerm(term);\r\n };\r\n\r\n return {\r\n\r\n /*Intialize Controller*/\r\n Init: init,\r\n Refresh: refresh,\r\n AdsInit: adsInit,\r\n ApexTrapFocus: apexTrapFocus,\r\n AutoSuggestions: autoSuggestionsList\r\n };\r\n})();\r\n\r\n/*------------ Apex Platform Plugin ----------------------*/\r\n//\r\n// create closure\r\n//\r\n(function ($) {\r\n //\r\n // plugin definition\r\n //\r\n $.fn.InitApexPlatform = function (options) {\r\n var thisElem = mainpulateRootElement(this);\r\n debug(this);\r\n // build main options before element iteration\r\n var opts = $.extend({}, $.fn.InitApexPlatform.defaults, options);\r\n // iterate and reformat each matched element\r\n return thisElem.each(function () {\r\n var $this = $(this);\r\n // build element specific options\r\n var o = $.meta ? $.extend({}, opts, $this.data()) : opts;\r\n\r\n $.fn.InitApexPlatform.format($this, o);\r\n });\r\n };\r\n\r\n var mainpulateRootElement = function (o) {\r\n var id = o.attr('id');\r\n var thisElem = o;\r\n if (id == undefined || id.toLowerCase() != 'apexPlatformEntries') {\r\n var elem = $(\"#apexPlatformEntries\");\r\n if (elem.length != 0) {\r\n thisElem = elem;\r\n }\r\n else {\r\n var inputmarkup = '';\r\n $(inputmarkup).appendTo($('body')[0]);\r\n thisElem = $(\"#apexPlatformEntries\");\r\n }\r\n }\r\n return thisElem;\r\n };\r\n\r\n //\r\n // private function for debugging\r\n //\r\n function debug($obj) {\r\n if (window.console && window.console.log)\r\n window.console.log('InitApexPlatform selection count: ' + $obj.length);\r\n };\r\n //\r\n // define and expose our format function\r\n //\r\n $.fn.InitApexPlatform.format = function (e, o) {\r\n var endPoint = o.EndPoint.replace('help.bingads', 'help.ads').replace('help.si.bingads', 'help.ads-int');\r\n var lastChar = endPoint.substring(endPoint.length - 1);\r\n if ((lastChar == '/') || (lastChar == '\\\\')) {\r\n endPoint = endPoint.substring(0, endPoint.length - 1);\r\n }\r\n $('#apexPlatformEntries').attr('endPoint', endPoint);\r\n $('#apexPlatformEntries').attr('project', o.Project);\r\n $('#apexPlatformEntries').attr('projectId', o.ProjectId);\r\n $('#apexPlatformEntries').attr('market', o.Market);\r\n $('#apexPlatformEntries').attr('language', o.Language);\r\n $('#apexPlatformEntries').attr('supportMarket', o.SupportMarket);\r\n $('#apexPlatformEntries').attr('initAnswerBar', o.InitAnswerBar);\r\n $('#apexPlatformEntries').attr('initPopup', o.InitPopup);\r\n $('#apexPlatformEntries').attr('authorize', o.Authorize);\r\n $('#apexPlatformEntries').attr('initHelpCoach', o.InitHelpCoach);\r\n $('#apexPlatformEntries').attr('initOnReady', o.InitOnReady);\r\n $('#apexPlatformEntries').attr('helpContainerId', o.HelpContainerId);\r\n $('#apexPlatformEntries').attr('viewName', '');\r\n $('#apexPlatformEntries').attr('sourceEndPoint', o.SourceEndPoint);\r\n\r\n window.apex_glb.Success = o.Success;\r\n window.apex_glb.Failure = o.Failure;\r\n\r\n window.apex_glb.EndPoint = endPoint;\r\n window.apex_glb.SourceEndPoint = o.SourceEndPoint;\r\n window.apex_glb.Project = o.Project;\r\n //window.apex_glb.Project = o.Authorize == true ? o.Project + '_secured' : o.Project; //TODO:Remove after sand box //amal\r\n window.apex_glb.Market = o.Market;\r\n window.apex_glb.Language = o.Language;\r\n window.apex_glb.Refresh = false;\r\n window.apex_glb.Initialized = true;\r\n window.apex_glb.Authorize = o.Authorize;\r\n window.apex_glb.SupportMarket = o.SupportMarket == '' ? o.Market : o.SupportMarket;\r\n window.apex_glb.SupportOptions = o.SupportOptions;\r\n window.apex_glb.Success = o.Success;\r\n window.apex_glb.Failure = o.Failure;\r\n window.apex_glb.onRailViewClose = o.onRailViewClose;\r\n window.apex_glb.onRailViewOpen = o.onRailViewOpen;\r\n window.apex_glb.onPopupOpen = o.onPopupOpen;\r\n window.apex_glb.onPopupClose = o.onPopupClose;\r\n if ((o.InitOnReady == false) || (o.InitOnReady == \"false\")) {\r\n if (window.console && window.console.log) window.console.log('InitApexPlatform - InitOnReady = false');\r\n window.ApexPlatform.Init();\r\n }\r\n window.apex_glb.renderApexHelpSuggestions = o.renderApexHelpSuggestions;\r\n window.apex_glb.renderSearchInputIcon = o.renderSearchInputIcon;\r\n };\r\n\r\n //\r\n // plugin defaults\r\n //\r\n $.fn.InitApexPlatform.defaults = {\r\n EndPoint: \"http://help.ads-int.microsoft.com\",\r\n SourceEndPoint: \"\",\r\n Project: 'none',\r\n ProjectId: -1,\r\n Market: 'en-US',\r\n Language: '',\r\n SupportMarket: '',\r\n SupportOptions: null,\r\n InitAnswerBar: false,\r\n InitPopup: false,\r\n InitHelpCoach: false,\r\n InitOnReady: true,\r\n HelpContainerId: '',\r\n Authorize: false,\r\n Success: null,\r\n Failure: null\r\n };\r\n //\r\n // end of closure\r\n //\r\n})(jQuery);\r\n\r\n/* Auto Suggesions Box Plug-in Begin - Begin*/\r\n(function ($) {\r\n\r\n $.fn.suggestionBox = function (options) {\r\n\r\n var $searchBox = this;\r\n\r\n var settings = $.extend({\r\n // default settings.\r\n topOffset: 0,\r\n leftOffset: 0,\r\n widthAdjustment: 0,\r\n delay: 400, // in ms\r\n heading: 'Suggestions',\r\n results: 8,\r\n menuWidth: 'auto',\r\n showNoSuggestionsMessage: false,\r\n noSuggestionsMessage: 'No Suggestions Found',\r\n filter: false,\r\n filterPattern: \"({INPUT})\",\r\n ajaxError: function (e) {\r\n console.log(e);\r\n },\r\n ajaxSuccess: function (data) {\r\n },\r\n enterKeyAction: function () {\r\n goToSelection();\r\n },\r\n paramName: 'search'\r\n },\r\n options);\r\n\r\n $.fn.suggestionBox.showApexSuggestions = function () {\r\n active = true;\r\n showSuggestions();\r\n };\r\n\r\n $.fn.suggestionBox.showApexSuggestionsTerm = function (term) {\r\n active = true;\r\n return showSuggestions(term);\r\n };\r\n\r\n // Inject the suggestion box into the body of the web page\r\n $('body').append('
');\r\n\r\n // Turn off autocomplete\r\n $searchBox.attr('autocomplete', 'off');\r\n\r\n var $suggestionBox = $('#apex-suggestion-box');\r\n setSuggestionBoxPosition();\r\n\r\n // Constants for key values\r\n var ENTER_KEY = 13;\r\n var UP_ARROW_KEY = 38;\r\n var DOWN_ARROW_KEY = 40;\r\n var ESCAPE_KEY = 27;\r\n\r\n // Default values for selected list item\r\n var selectedLi = -1;\r\n var selectedHref = '#';\r\n\r\n // Is the mouse hovering over the suggestion box?\r\n var mouseHover = false;\r\n // Timer for only making ajax calls when the user stops typing\r\n var timer = null;\r\n // Did we get any suggestions?\r\n var matches = false;\r\n // Is the search box active (does it have focus)\r\n var active = false;\r\n // create a blank object for our request\r\n var request = {};\r\n var jsonData = {};\r\n\r\n // The value of the input when ajax was called\r\n var ajaxCalledVal;\r\n\r\n //$suggestionBox.die('mousemove');\r\n //$suggestionBox.die('mouseout');\r\n //$suggestionBox.die('click');\r\n try {\r\n $suggestionBox.on({\r\n mousemove: function (e) {\r\n if (e.target.nodeName === 'A') {\r\n //unselect(selectedLi);\r\n selectedLi = getSelectionMouseIsOver(e);\r\n //select(selectedLi);\r\n }\r\n mouseHover = true;\r\n },\r\n mouseout: function (e) {\r\n if (e.target.nodeName === 'A') {\r\n //unselect(selectedLi);\r\n resetSelection();\r\n }\r\n mouseHover = false;\r\n },\r\n mouseenter: function(e) {\r\n mouseHover = true;\r\n },\r\n });\r\n } catch (ex) { }\r\n\r\n //$searchBox.die('live');\r\n //$searchBox.die('focus');\r\n //$searchBox.die('keyup');\r\n //$searchBox.die('keydown');\r\n //$searchBox.die('paste');\r\n try {\r\n $searchBox.on({\r\n mouseenter: function() {\r\n mouseHover = true;\r\n },\r\n mouseout: function() {\r\n mouseHover = false;\r\n },\r\n blur: function () {\r\n active = false;\r\n // Only close the menu if we are not clicking a link\r\n if (!mouseHover) {\r\n hideSuggestionBox();\r\n }\r\n },\r\n focus: function () {\r\n active = true;\r\n /*if ($(this).val()) {\r\n showSuggestions(jsonData);\r\n }*/\r\n mouseHover = true;\r\n if (typeof window.apex_glb.renderApexHelpSuggestions === 'function' && settings.filter) {\r\n showSuggestions();\r\n }\r\n },\r\n keyup: function (e) {\r\n\r\n // Ignore the navigation keys. We don't want to fire ajax calls when navigating\r\n if (e.which !== UP_ARROW_KEY && e.which !== DOWN_ARROW_KEY && e.which !== ESCAPE_KEY && e.which !== ENTER_KEY) {\r\n if (settings.url) {\r\n resetSelection();\r\n\r\n if (timer) {\r\n clearTimeout(timer);\r\n }\r\n }\r\n\r\n if (settings.url) {\r\n // set the request to be sent sent as the data parameter\r\n request[settings.paramName] = $searchBox.val();\r\n timer = setTimeout(function () {\r\n getSuggestions(settings.url)\r\n }, settings.delay);\r\n }\r\n if (settings.filter) {\r\n showSuggestions();\r\n }\r\n }\r\n else {\r\n if (e.which == ENTER_KEY) {\r\n hideSuggestionBox();\r\n }\r\n }\r\n },\r\n keydown: function (e) {\r\n if ($suggestionBox.css('display') !== 'none') {\r\n if (e.which == DOWN_ARROW_KEY) {\r\n e.preventDefault();\r\n moveDown();\r\n }\r\n if (e.which == UP_ARROW_KEY) {\r\n e.preventDefault();\r\n moveUp();\r\n }\r\n if (e.which === ENTER_KEY && selectedLi > -1) {\r\n e.preventDefault();\r\n settings.enterKeyAction();\r\n }\r\n if (e.which == ESCAPE_KEY) {\r\n e.preventDefault();\r\n hideSuggestionBox();\r\n }\r\n }\r\n },\r\n paste: function () {\r\n // Simulate keyup after 200ms otherwise the value of the search box will not be available\r\n setTimeout(function () {\r\n $searchBox.keyup();\r\n }, 200);\r\n }\r\n });\r\n } catch (ex) { }\r\n\r\n $(document.body).on('click', () => {\r\n if (!mouseHover) {\r\n $suggestionBox.css('display', 'none');\r\n }\r\n });\r\n\r\n $('#apexContentMain').on('click', () => {\r\n mouseHover = false;\r\n });\r\n\r\n // Reset the position of the suggestion box if the window is re-sized\r\n $(window).resize(function () {\r\n setSuggestionBoxPosition();\r\n });\r\n\r\n // Reset the position of the suggestion box if the window is scrolled\r\n $(window).scroll(function () {\r\n setSuggestionBoxPosition();\r\n });\r\n\r\n /**\r\n * Selects the suggestion at the given position\r\n * @param position\r\n */\r\n //function select(position) {\r\n // selectedHref = $suggestionBox.find(\"li:eq(\" + position + \") a\").attr('href');\r\n // //$suggestionBox.find(\"li:eq(\" + position + \")\").addClass('selected');\r\n //}\r\n\r\n ///**\r\n // * Unselects the suggestion at the given position\r\n // * @param position\r\n // */\r\n //function unselect(position) {\r\n // $suggestionBox.find(\"li:eq(\" + position + \")\").removeClass('selected');\r\n //}\r\n\r\n /**\r\n * Resets any selected suggestions\r\n */\r\n function resetSelection() {\r\n selectedHref = '#';\r\n selectedLi = -1;\r\n // remove all selected on reset\r\n $suggestionBox.find('li').removeClass('selected');\r\n }\r\n\r\n /**\r\n * Moves the selection down to the next suggestion\r\n */\r\n function moveDown() {\r\n var listSize = $suggestionBox.find('li').length;\r\n if (selectedLi === (listSize - 1)) {\r\n //unselect(selectedLi);\r\n resetSelection();\r\n } else {\r\n //unselect(selectedLi);\r\n selectedLi++;\r\n //select(selectedLi);\r\n }\r\n }\r\n\r\n /**\r\n * Moves the selection up to the previous suggestions\r\n */\r\n function moveUp() {\r\n if (selectedLi > 0) {\r\n //unselect(selectedLi);\r\n selectedLi--;\r\n //select(selectedLi);\r\n } else if (selectedLi == -1) {\r\n //unselect(selectedLi);\r\n selectedLi = $suggestionBox.find('li').length - 1;\r\n //select(selectedLi);\r\n } else {\r\n //unselect(0);\r\n resetSelection();\r\n }\r\n }\r\n\r\n /**\r\n * Redirects the user to the selected suggestion location\r\n */\r\n function goToSelection() {\r\n $suggestionBox.css('display', 'none');\r\n window.location = selectedHref;\r\n }\r\n\r\n /**\r\n * Makes an ajax call to the given url\r\n * @param url\r\n */\r\n function getSuggestions(url) {\r\n ajaxCalledVal = $searchBox.val();\r\n $.ajax({\r\n url: url,\r\n data: request,\r\n dataType: 'json',\r\n success: function (data) {\r\n\r\n var selectionHasChanged = true;\r\n var currentLi = selectedLi;\r\n\r\n if (jsonData.results && data.results) {\r\n selectionHasChanged = (JSON.stringify(jsonData.results[selectedLi]) !== JSON.stringify(data.results[selectedLi]))\r\n }\r\n\r\n setJsonData(data);\r\n showSuggestions();\r\n\r\n // Keep selection if no new information has been entered since ajax was called and the selection is the same.\r\n // This prevents the flick back effect when menu has the same data but the ajax hasn't finished.\r\n if (currentLi > -1 && ($searchBox.val() === ajaxCalledVal) && !selectionHasChanged) {\r\n selectedLi = currentLi;\r\n //select(selectedLi);\r\n }\r\n\r\n settings.ajaxSuccess(data);\r\n },\r\n error: function (e) {\r\n settings.ajaxError(e);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Returns the index of the list item the mouse is currently hovering over\r\n * @param e\r\n * @returns {Number}\r\n */\r\n function getSelectionMouseIsOver(e) {\r\n var $parentLi = $(e.target).parent('li');\r\n return $parentLi.parent().children().index($parentLi);\r\n }\r\n\r\n /**\r\n * Sets the position of the suggestion box\r\n */\r\n function setSuggestionBoxPosition() {\r\n var borders = getCssValue($searchBox, 'border-bottom-width') + getCssValue($searchBox, 'border-top-width');\r\n var padding = getCssValue($searchBox, 'padding-bottom') + getCssValue($searchBox, 'padding-top');\r\n\r\n $suggestionBox.css({\r\n 'position': 'absolute',\r\n 'left': ($searchBox.offset().left) + settings.leftOffset,\r\n 'top': ($searchBox.offset().top) + ($searchBox.height() + borders + padding + settings.topOffset)\r\n });\r\n }\r\n\r\n /**\r\n * Gets the css integer value for the given element.\r\n * @param element\r\n * @param name\r\n * @returns {Number}\r\n */\r\n function getCssValue(element, name) {\r\n if (element.css(name) !== undefined) {\r\n return parseInt(element.css(name).replace('px', ''));\r\n }\r\n else {\r\n return 0;\r\n }\r\n }\r\n\r\n /**\r\n * Hides the suggestion box\r\n */\r\n function hideSuggestionBox() {\r\n $suggestionBox.hide();\r\n resetSelection();\r\n $('#searchquery').attr('aria-expanded', 'false');\r\n $(\"#announce-suggestions\").html(\"No suggestions available. Suggestion list hidden.\");\r\n }\r\n\r\n /**\r\n * Displays the apex-suggestion-box\r\n */\r\n function showSuggestionBox() {\r\n $suggestionBox.show();\r\n $('#searchquery').attr('aria-expanded', 'true');\r\n }\r\n\r\n /**\r\n * Sets the width of the suggestion box\r\n */\r\n function setSuggestionBoxWidth() {\r\n var searchBoxWidth = getSearchBoxWidth() + settings.widthAdjustment;\r\n if (settings.menuWidth == 'auto') {\r\n $suggestionBox.css({\r\n 'min-width': searchBoxWidth\r\n });\r\n } else if (settings.menuWidth == 'constrain') {\r\n $suggestionBox.css({\r\n 'width': searchBoxWidth\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Returns the width of the search box\r\n * @returns {number}\r\n */\r\n function getSearchBoxWidth() {\r\n const $searchIcon = $('.apex_search_icon');\r\n return (\r\n $searchBox.width() + $searchIcon.width() +\r\n getCssValue($searchBox, 'border-left-width') +\r\n getCssValue($searchBox, 'border-right-width') +\r\n getCssValue($searchBox, 'padding-left') +\r\n getCssValue($searchBox, 'padding-right')\r\n );\r\n }\r\n\r\n function createSuggestionsList(data) {\r\n if (data.results == null) {\r\n return '';\r\n }\r\n\r\n //var $suggestions = '
' + settings.heading + '
' + '';\r\n\r\n return $suggestions;\r\n }\r\n\r\n /**\r\n * Shows the apex-suggestion-box suggestions if they are available based on the data passed in\r\n */\r\n function showSuggestions(term) {\r\n //mainly dynamic search\r\n if (term != undefined && term != null) {\r\n var data = (settings.filter) ? filterResults(term) : jsonData;\r\n if (data) {\r\n return data.results;\r\n }\r\n else {\r\n return data;\r\n }\r\n }\r\n else {\r\n setSuggestionBoxPosition();\r\n resetSelection();\r\n\r\n matches = false;\r\n\r\n var data = (settings.filter) ? filterResults($searchBox.val()) : jsonData;\r\n if (data) {\r\n if (data.results) {\r\n var $suggestions = createSuggestionsList(data);\r\n }\r\n }\r\n\r\n // Check for focus before showing suggestion box. User could have clicked outside before request finished.\r\n if (active) {\r\n if (typeof window.apex_glb.renderApexHelpSuggestions === 'function') {\r\n const result = window.apex_glb.renderApexHelpSuggestions(data, $suggestionBox.get(0), createSuggestionsList, hideSuggestionBox);\r\n if (result && result.showSuggestions) {\r\n setSuggestionBoxWidth();\r\n showSuggestionBox();\r\n } else {\r\n hideSuggestionBox();\r\n }\r\n } else if (matches) {\r\n $suggestionBox.html($suggestions);\r\n setSuggestionBoxWidth();\r\n showSuggestionBox();\r\n var suggestionAmount = $(\"#apex-suggestion-box-list li\").length + ' suggestions found, use tab to review';\r\n $(\"#announce-suggestions\").html(suggestionAmount);\r\n } else if (settings.showNoSuggestionsMessage && $searchBox.val().length > 0) {\r\n setSuggestionBoxWidth();\r\n showSuggestionBox();\r\n $suggestionBox.html('
' + settings.noSuggestionsMessage + '
');\r\n } else {\r\n hideSuggestionBox();\r\n }\r\n // ESC key close suggestions\r\n //$(document).keyup(function (e) {\r\n // if (e.preventDefault) { e.preventDefault(); }\r\n // if (e.which === 27) {\r\n // $(\".apex_search_area input#searchquery\").focus();\r\n // $(\"#apex-suggestion-box\").css(\"display\", \"none\");\r\n // $(\".apex_search_area input#searchquery\").attr(\"aria-activedescendant\", \"\");\r\n // }\r\n //});\r\n\r\n var firstElem = $(\"#apex-suggestion-box-list li:first a\");\r\n var lastElem = $(\"#apex-suggestion-box-list li:last a\");\r\n window.ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n\r\n //Set aria-activedescendant to suggestion id\r\n $(\"#apex-suggestion-box-list li a\").focus(function (e) {\r\n $('.apex_search_area input#searchquery').attr('aria-activedescendant', $(this).attr('id'));\r\n });\r\n\r\n // Hide Suggestions on blur\r\n $(\"#apex-suggestion-box-list li a\").blur(function (e) {\r\n setTimeout(function () {\r\n if (document.activeElement.className != e.target.className) {\r\n hideSuggestionBox();\r\n $(\".apex_search_area input#searchquery\").attr(\"aria-activedescendant\", \"\");\r\n }\r\n }, 1);\r\n });\r\n\r\n firstElem = $(\"#apex-suggestion-box-list li:first a\");\r\n lastElem = $(\"#apex-suggestion-box-list li:last a\");\r\n window.ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n } else {\r\n hideSuggestionBox();\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Sets the current JSON data ready for display\r\n * @param json\r\n */\r\n function setJsonData(json) {\r\n if (json) {\r\n jsonData = (json instanceof Object) ? json : $.parseJSON(json);\r\n } else {\r\n jsonData = {};\r\n }\r\n }\r\n\r\n /**\r\n * Loads JSON from the given url\r\n * @param url\r\n */\r\n function loadJson(url) {\r\n $.ajax({\r\n url: url,\r\n dataType: 'json',\r\n success: function (data) {\r\n setJsonData(data);\r\n },\r\n error: function (e) {\r\n console.log(e);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Filters the JSON based on the user input\r\n * @param value\r\n * @returns {Object}\r\n */\r\n function filterResults(value) {\r\n var data;\r\n\r\n // escape regex chars\r\n value = value.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\r\n filterPattern = settings.filterPattern.replace(\"{INPUT}\", value);\r\n if (!value) {\r\n return {};\r\n }\r\n if (jsonData) {\r\n if (jsonData.results) {\r\n\r\n var regex = new RegExp(filterPattern, \"i\");\r\n\r\n data = $.grep(jsonData.results, function (name) {\r\n return regex.test(name.suggestion);\r\n });\r\n }\r\n }\r\n\r\n if (settings.sort) {\r\n data.sort(settings.sort);\r\n }\r\n\r\n var json = JSON.stringify({ \"results\": data });\r\n\r\n return $.parseJSON(json);\r\n }\r\n\r\n // returned methods\r\n return {\r\n loadSuggestions: function (url) {\r\n loadJson(url);\r\n return this;\r\n },\r\n addSuggestions: function (json) {\r\n setJsonData(json);\r\n return this;\r\n },\r\n showSuggestions: function () {\r\n showSuggestionBox();\r\n return this;\r\n }\r\n };\r\n\r\n };\r\n}(jQuery));\r\n/* Auto Suggesions Box Plug-in Begin */\r\n\r\n/*----------- Page OnLoad Methods ---------------------*/\r\n$(document).ready(function () {\r\n\r\n var initReady = $('#apexPlatformEntries').attr('initOnReady');\r\n if (initReady == 'true' || initReady == true) {\r\n if (window.console && window.console.log) window.console.log('InitApexPlatform - InitOnReady - True');\r\n window.ApexPlatform.Init();\r\n }\r\n\r\n});\r\n\r\n","/*-----------------------------------------------------------\r\n// Name: Apex - Popup & embed help framework\r\n// Description: All Controllers, Proxy Scripts, Handlers, react\r\n// Default WS Caching: 2hrs\r\n// Author: Amal Susainathan\r\n// Updated Date: 02/09/2021\r\n// Copyright: Microsoft Corporation, 2021\r\n// -------------------------------------------------------*/\r\n\r\n//fix for slidedown overflow issus\r\n!(function (jQuery, origSlideDown) {\r\n jQuery.fn.slideDown = function (speed, easing, callback) {\r\n var self = this;\r\n var args = Array.prototype.slice.call(arguments);\r\n var origCallback;\r\n\r\n for (var i = 0, len = args.length; i < len; i++) {\r\n if (jQuery.isFunction(args[i])) {\r\n origCallback = args[i];\r\n args[i] = function () {\r\n origCallback.call(this);\r\n self.css('overflow', '');\r\n }\r\n }\r\n }\r\n if (!origCallback) {\r\n args.push(function () {\r\n self.css('overflow', '');\r\n });\r\n }\r\n return origSlideDown.apply(this, args);\r\n };\r\n})(jQuery, jQuery.fn.slideDown);\r\n\r\n/*-----------------------------------------------------------\r\n// AB GLOBAL VARIABLES\r\n// -------------------------------------------------------*/\r\nwindow.ab_glb = {\r\n ApexAPIEndPoint: '',\r\n CDNEndPoint: '',\r\n HelpUrl: '',\r\n HelpProduct: '',\r\n HelpProject: '',\r\n HelpMarket: '',\r\n HelpLanguage: '',\r\n HelpSku: '',\r\n HelpWinName: \"_help\",\r\n LocStrings: null,\r\n Version: 'V2',\r\n ShowContact: true,\r\n ShowCommunity: true,\r\n ShowFooter: true,\r\n ShowFlyoutInNewBrowser: true,\r\n UseAPEXhref: false,\r\n HideABOnScreen: false,\r\n BarOrDropDownOrCustom: 0,\r\n KnownIssueKey: '',\r\n BingYahooKey: '',\r\n HomeKey: '',\r\n CurrentQuery: '',\r\n FooterGlink: '#',\r\n ContactSupportGlink: '#',\r\n CommunityGlink: '#',\r\n IsBIDIMarket: false,\r\n SupportMarket: '',\r\n SupportOptions: null,\r\n Success: null,\r\n Failure: null,\r\n ContentRootElement: '#railContent',\r\n HelpOpened: false\r\n};\r\n\r\nwindow.apexHelpSpinOffWindow = false;\r\n\r\nwindow.popup_glb = {\r\n HelpPopupLocalStrings: null,\r\n HelpUrl: '',\r\n HelpProduct: '',\r\n HelpProject: '',\r\n HelpMarket: '',\r\n HelpSku: '',\r\n HelpWinName: \"_help\",\r\n ShowContact: true,\r\n ContactSupportGlink: '#',\r\n ShowCommunity: true,\r\n CommunityGlink: '#',\r\n Success: null,\r\n Failure: null,\r\n Authorize: false\r\n};\r\n\r\n//----END OF GLOBAL VARIABLES -----------------------------\r\n\r\n//--- BEGIN POPUP CONTROLLER ------------------------------//\r\n/*-----------------------------------------------------------\r\n// Name: PopupCacheHandler\r\n// Description: Handles the clientside caching for the popups. \r\n// -------------------------------------------------------*/\r\nPopupCacheHandler = function () {\r\n var topicSet = [];\r\n var topicResult = [];\r\n var index = 0;\r\n\r\n return {\r\n SetResultInCache: function (key, val) {\r\n topicResult[key] = val;\r\n },\r\n GetResultFromCache: function (key) {\r\n return topicResult[key];\r\n },\r\n AddTopicSet: function (val) {\r\n topicSet[index] = val;\r\n index++;\r\n },\r\n GetTopicIds: function () {\r\n var queryContentIds = '';\r\n var topicSetLength = PopupCacheHandler.GetTopicCount();\r\n if (topicSetLength > 0) {\r\n for (var i = 0; i <= topicSetLength - 1; i++) {\r\n if (i == 0) {\r\n queryContentIds = topicSet[i];\r\n } else {\r\n queryContentIds = queryContentIds + ',' + topicSet[i];\r\n }\r\n }\r\n }\r\n\r\n return queryContentIds;\r\n },\r\n\r\n GetTopicCount: function () {\r\n return topicSet.length;\r\n }\r\n };\r\n}();\r\n\r\n/*-----------------------------------------------------------\r\n// Name: PopupController\r\n// Description: Controller for the popups. \r\n// -------------------------------------------------------*/\r\nPopupController = function () {\r\n var initialPosition = \"\";\r\n var initializePopupGlobals = false;\r\n var targetObj = \"\";\r\n var isDraggable = false;\r\n\r\n var bindTopicEvents = function () {\r\n\r\n if ($(\"#_helpcontainer a.HelpTopic\") != undefined && $(\"#_helpcontainer a.HelpTopic\").length > 0) {\r\n\r\n $(\"#_helpcontainer a.HelpTopic\").click(function (e) {\r\n //if (e.preventDefault) { e.preventDefault(); }\r\n //if (e.stopPropagation) { e.stopPropagation(); }\r\n\r\n var helpkey = $(this).attr('query');\r\n var project = window.popup_glb.HelpProject;\r\n\r\n var viewId = $('[RailViewID]')[0] == undefined ? 'none' : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n var project = window.popup_glb.HelpProject == '' ? window.popup_glb.HelpProduct : window.popup_glb.HelpProject;\r\n PopupILog.LogAriaEvent('popup', project, window.popup_glb.HelpMarket, helpkey, '', '', 'page', viewId);\r\n $(\"#_helpcontainer\").hide();\r\n //return false;\r\n });\r\n }\r\n };\r\n\r\n var setForBidi = function (offset) {\r\n if (getDirection(document.body) == \"rtl\") {\r\n var padding = $(\"#_helpcontainer\").height() - 85;\r\n if (offset > 0) { offset = 0; } else { offset -= 20; }\r\n var left = $(\"#_helpcontainer\").position().left - $(\"#_helpcontainer\").width() - 30 - offset;\r\n if (left <= 5) left = 5;\r\n $(\"#_helpcontainer\").css({ \"direction\": \"rtl\", \"unicode-bidi\": \"bidi-override\", \"float\": \"left\", \"left\": left });\r\n $(\".popuphelpwindow .popuphelp-drag-contentarea\").css(\"padding-bottom\", padding);\r\n $(\".popuphelpwindow .conceptual_title, .popuphelpwindow .content_title, .popuphelpwindow .conceptual_section, .popuphelpwindow li, .popuphelpwindow ul, .popuphelpwindow .conceptual_body_none, .popuphelpwindow .popup_footer, .popuphelpwindow .ab-thumbTitle, .popuphelpwindow .apex-thumb-up\").css({ \"float\": \"right\", \"text-align\": \"right\", \"margin-right\": \"15px\" });\r\n };\r\n };\r\n\r\n var handleSingleContentSuccess = function (singledata) {\r\n //debugger;\r\n if (window.popup_glb.Authorize == true) {\r\n singledata = $.parseJSON(singledata);\r\n }\r\n if (singledata == null || singledata.Content == null) { return false; }\r\n var contentHtml = singledata.Content.Content; // singledata.Contents.replace(/window.ab_glb./g, 'window.popup_glb.').replace(/HelpAnswerBar/g, 'PopupControl');\r\n contentHtml = contentHtml.replace(/window.ab_glb./g, 'window.popup_glb.').replace(/HelpAnswerBar/g, 'PopupControl');\r\n\r\n //replace images associating from xslt transfermation\r\n contentHtml = replacePlusMinusSearchImageSource(contentHtml);\r\n\r\n $(\".popuphelp-drag-contentarea\").html(contentHtml);\r\n $.each($('a[href_new]'), function (index, elem) {\r\n var val = $(elem).attr('href_new');\r\n var token = '/';\r\n var viewId = $('[RailViewID]')[0] == undefined ? 'none' : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n if (window.popup_glb.HelpUrl.match(\"/$\") == \"/\") token = '';\r\n $(elem).attr('href', window.popup_glb.HelpUrl + token + val + '/' + window.popup_glb.SupportMarket + '/#ext:' + viewId);\r\n $(elem).attr('target', '_apexPlatformHelp');\r\n });\r\n PopupCacheHandler.SetResultInCache(singledata.ContentID, $(\".popuphelp-drag-contentarea\").html());\r\n bindTopicEvents();\r\n var helpContainer = \"#_helpcontainer\";\r\n var helpWindow = $(helpContainer);\r\n setContainerPosition(helpWindow);\r\n if (pageHasIframe()) {\r\n $('.railhelp_head').removeClass('rh_hover');\r\n }\r\n isDraggable = false;\r\n enableDraggable();\r\n //Add popup title to aria-label\r\n var helpPopupTitle = $(\"#_helpcontainer h1\").length ? $(\"#_helpcontainer h1\").text() + \" \" : \"\";\r\n $(\"#_helpcontainer\").attr({ \"aria-label\": helpPopupTitle + \"popup dialog\", \"role\": \"dialog\" });\r\n var lastElementNoSupport = RailHelpController.FindLastVisibleElement($('#_helpcontainer'));\r\n var firstElem = $(\"#_helpcontainer #_helpPopupCloseLink\");\r\n var lastElem = $(lastElementNoSupport);\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n firstElem.focus();\r\n \r\n if (window.apex_glb && typeof window.apex_glb.onPopupOpen === 'function') {\r\n window.apex_glb.onPopupOpen(document.querySelector('#_helpcontainer'));\r\n }\r\n return false;\r\n };\r\n\r\n var handleVideoContentSuccess = function (singledata) {\r\n if (singledata.success == true) {\r\n if (singledata.Contents == null) { return false; }\r\n var contentHtml = ''; // singledata.Contents.replace(/window.ab_glb./g, 'window.popup_glb.').replace(/HelpAnswerBar/g, 'PopupControl');\r\n if (singledata.Contents.HelpContent == null) {\r\n contentHtml = singledata.Contents;\r\n } else {\r\n if (singledata.Contents.HelpContent.Content != null) {\r\n contentHtml = singledata.Contents.HelpContent.Content;\r\n }\r\n }\r\n\r\n var found = $(contentHtml).find(\".abLaunchVideo\");\r\n if (found != null) {\r\n $(found).helpVideoWindow();\r\n $(found).triggerHandler(\"click\");\r\n $(found).unbind();\r\n }\r\n }\r\n return false;\r\n };\r\n\r\n var handleContentFailure = function (data) {\r\n };\r\n\r\n var enableDraggable = function () {\r\n try {\r\n if (!pageHasIframe()) {\r\n applyDraggable();\r\n }\r\n else {\r\n $(\".popuphelpwindow #drag_handle\").hide();\r\n }\r\n }\r\n catch (err) { }\r\n };\r\n\r\n var pageHasIframe = function () {\r\n return ($('iframe').length > 0);\r\n };\r\n\r\n var applyDraggable = function () {\r\n try {\r\n $(\"#_helpcontainer\").bind('mousemove', function () {\r\n var containerWidth = $(window).width() - $(this).outerWidth();\r\n var containerHeight = $(window).height() - $(this).outerHeight();\r\n try {\r\n $(this).draggable({\r\n greedy: true,\r\n handle: 'div.railhelp_drag',\r\n\r\n containment: // Set containment to current viewport\r\n [$(document).scrollLeft(),\r\n $(document).scrollTop() + 100,\r\n $(document).scrollLeft() + containerWidth,\r\n $(document).scrollTop() + containerHeight],\r\n stop: function (event, ui) {\r\n //HelpControllerEx.InstrumentLink(\"WindowDragged\");\r\n //TODO: Log Aria\r\n }\r\n });\r\n }\r\n catch (e) { }\r\n }).draggable({ scroll: false });\r\n isDraggable = true;\r\n }\r\n catch (ex) { };\r\n };\r\n\r\n var getParentWindow = function () {\r\n var parentWindow = $(window);\r\n return parentWindow;\r\n };\r\n\r\n var setContainerPosition = function (container) {\r\n var widthContainer = 310;\r\n var zIndex = 1000;\r\n if ($('#popupcontainerId') != null) {\r\n widthContainer = $('#popupContainerid').attr('popupwidth');\r\n if (typeof (widthContainer) !== \"undefined\") {\r\n if (widthContainer < 310) {\r\n widthContainer = 310;\r\n }\r\n }\r\n else widthContainer = 310;\r\n zIndex = $('#popupContainerid').attr('zindex');\r\n if ((typeof (zIndex) == \"undefined\") || (zIndex == '')) {\r\n zIndex = 1000;\r\n }\r\n }\r\n var parentWindow = getParentWindow(),\r\n leftoffset = 0,\r\n topoffset = 0,\r\n scrollbarSize = 20,\r\n rightOffset = ($(window).width() - ($(targetObj).offset().left + 18)),\r\n scrollbarLiveArr = getScrollbarLive(window),\r\n scrollRightLive = scrollbarLiveArr[0],\r\n scrollBottomLive = scrollbarLiveArr[1],\r\n movepopupLeft = (rightOffset < widthContainer);// && scrollRightLive;\r\n\r\n if (PopupController.currentPopupTrigger) {\r\n initialPosition = getElementPosition(PopupController.currentPopupTrigger);\r\n }\r\n var windowWidth = $(window).width();\r\n var leftPosition =\r\n (windowWidth - (initialPosition.left - $(window).scrollLeft()) - widthContainer < 0)\r\n ? Math.max($(window).scrollLeft(), windowWidth + $(window).scrollLeft() - widthContainer)\r\n : initialPosition.left + targetObj.width() + 2 - leftoffset + initialPosition.paddingLeft;\r\n\r\n container.width(widthContainer);\r\n\r\n var windowHeight = $(window).height();\r\n var windowHeightOffset = 0;\r\n var helpTopOffset = 0;\r\n var helpHeight = container.height();\r\n var screenInitialTopPosition = initialPosition.top - helpTopOffset - $(window).scrollTop();\r\n var lowestPoint = initialPosition.top - helpTopOffset + helpHeight;\r\n var screenLowestPoint = lowestPoint - $(window).scrollTop();\r\n var topPosition = initialPosition.top - helpTopOffset;\r\n\r\n //Fix for firefox offset by 60\r\n var vernums = $.fn.jquery.split('.');\r\n //var isIE = /trident/.test(navigator.userAgent.toLowerCase());\r\n if (parseInt(vernums[0]) > 0 && parseInt(vernums[1]) > 8) {\r\n $.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());\r\n\r\n }\r\n\r\n //if ($.browser.mozilla && isIE == false)\r\n // topPosition += 56;\r\n\r\n if ($(\".container-fluid\").length > 0) windowHeightOffset = $(\".container-fluid\").height();\r\n\r\n if ((screenLowestPoint > (windowHeight - windowHeightOffset)) || (screenInitialTopPosition < 0)) {\r\n if (screenInitialTopPosition > 0) {\r\n if ($(\".container-fluid\").length > 0) topoffset += ($(\".container-fluid\").height() - 20);\r\n topPosition = screenInitialTopPosition + windowHeight - screenLowestPoint - 10 - topoffset;\r\n }\r\n var currentWindowTop = $(parentWindow).scrollTop();\r\n topPosition = topPosition + currentWindowTop;\r\n if (topPosition < currentWindowTop) topPosition = currentWindowTop;\r\n }\r\n\r\n //if there is a scroll on right or bottom (offset it)\r\n if (movepopupLeft) {\r\n leftPosition = initialPosition.left - widthContainer - 3;\r\n }\r\n\r\n let helpWidth = container.width();\r\n if (helpWidth > windowWidth) {\r\n helpWidth = windowWidth;\r\n }\r\n\r\n if (leftPosition < 0) {\r\n leftPosition = 0;\r\n } else if (leftPosition + helpWidth > windowWidth) {\r\n leftPosition = windowWidth - helpWidth;\r\n }\r\n\r\n if (topPosition + helpHeight > windowHeight) {\r\n topPosition = windowHeight - helpHeight;\r\n }\r\n\r\n container.css({ top: topPosition, left: leftPosition, 'z-index': zIndex, width: helpWidth });\r\n setForBidi(leftPosition - initialPosition.left);\r\n $(\".popuphelp_head .ab_supportDivider\").width(widthContainer - 305);\r\n\r\n container.show();\r\n $('div#_helpcontainer.popuphelpwindow').focus();\r\n };\r\n\r\n var getScrollbarLive = function (w) {\r\n var d = w.document,\r\n c = d.compatMode,\r\n r = c && /CSS/.test(c) ? d.documentElement : d.body;\r\n if (typeof w.innerWidth == 'number') {\r\n return [w.innerWidth > r.clientWidth, w.innerHeight > r.clientHeight];\r\n } else {\r\n return [r.scrollWidth > r.clientWidth, r.scrollHeight > r.clientHeight];\r\n }\r\n };\r\n\r\n var getElementPosition = function (element) {\r\n var result = { left: element.offsetLeft, top: element.offsetTop, paddingLeft: 0 };\r\n var ancestor = element.parentNode;\r\n var matrix = $(element).css('transform').replace(/[^0-9\\-.,]/g, '').split(',');\r\n var translateX = parseInt((matrix[12] || matrix[4]), 10);\r\n var translateY = parseInt((matrix[13] || matrix[5]), 10);\r\n\r\n while (ancestor && ancestor != document && ancestor.tagName.toLowerCase() != 'body' && ancestor.tagName.toLowerCase() != 'html') {\r\n result.left -= ancestor.scrollLeft;\r\n result.top -= ancestor.scrollTop;\r\n if (ancestor == element.offsetParent)\r\n break;\r\n ancestor = ancestor.parentNode;\r\n }\r\n if (element.offsetParent) {\r\n var parentOffset = getElementPosition(element.offsetParent);\r\n result.left += parentOffset.left;\r\n result.top += parentOffset.top;\r\n }\r\n result.paddingLeft = 0;\r\n\r\n try {\r\n result.paddingLeft = parseInt($(element).css(\"padding-left\").replace('px', ''))\r\n }\r\n catch (e) { };\r\n if (translateX != undefined && isFinite(translateX)) {\r\n result.left += translateX;\r\n }\r\n if (translateY != undefined && isFinite(translateY)) {\r\n result.top += translateY;\r\n }\r\n\r\n return result;\r\n };\r\n\r\n var queryObj = function (id, market, product, project, sku, querytype, queries, filter, contenttype, viewids, url, token, method) {\r\n this.ContentId = id;\r\n this.Product = product;\r\n this.Project = project;\r\n this.QueryType = querytype;\r\n this.Queries = queries;\r\n this.Filter = filter;\r\n this.Market = market;\r\n this.Sku = sku;\r\n this.ContentType = contenttype;\r\n this.ViewIDs = viewids;\r\n this.ViewId = viewids;\r\n this.Url = url;\r\n this.Token = token;\r\n this.Method = method;\r\n };\r\n\r\n //Update Plusminus image base url\r\n var replacePlusMinusSearchImageSource = function (html) {\r\n var result = html;\r\n var collapse = '/resources/neutral/images/railbar_collapse_rest.gif';\r\n var expand = '/resources/neutral/images/railbar_expand_rest.gif';\r\n var search = '/resources/neutral/images/search_icon.gif';\r\n result = replaceAll(result, collapse, window.popup_glb.HelpUrl + collapse);\r\n result = replaceAll(result, expand, window.popup_glb.HelpUrl + expand);\r\n result = replaceAll(result, search, window.popup_glb.HelpUrl + search);\r\n return result;\r\n };\r\n\r\n var replaceAll = function (input, replace, withThis) {\r\n return input.replace(new RegExp(replace, 'g'), withThis);\r\n };\r\n\r\n var getDefaultLocValues = function () { //default en-us.\r\n var locStr = '{\"LocStrings\":{\"About\":\"About this page\",\"Help\":\"Help\", \"Community\":\"Community\",\"How\":\"How do I?\",\"Search\":\"Search Help\",\"Videos\":\"Watch a video\",\"New\":\"Whats New\",\"RCQ\":\"Everybody asking(RCQ)\",\"Issues\":\"Known Issues\",\"Chat\":\"Contact support\",\"Support\":\"Support\",\"Loading\":\"Loading\",\"More\":\"More...\",\"Less\":\"Less...\",\"Rating1\":\"Absolutely awful!\",\"Rating2\":\"Really? You can do better…\",\"Rating3\":\"It’s alright.\",\"Rating4\":\"Nicely done.\",\"Rating5\":\"Pure genius!\",\"QueryDefault\":\"Search Help\",\"Yes\":\"Yes\",\"No\":\"No\",\"DidHelpYou\":\"Did this help you?\", \"ShowAB\":\"Show Answer Bar\", \"HideAB\":\"Hide Answer Bar\", \"Content\":\"content\", \"Video\":\"video\", \"Back\":\"Back\",\"Next\":\"Forward\", \"OF\":\"of\", \"CopyUrl\":\"Copy Url\", \"EmailUrl\":\"Email Url\", \"Pinned\":\"Keep on top\", \"UnPinned\":\"Not on top\",\"CommunityText\":\"Community\", \"Header\":\"Bing Ads Help\",\"PrintTopic\":\"Print article\",\"CommunityFooter\":\"Not finding what you are looking for? Check out the {0}Bing Ads Community blog and forums.{1}\"}}';\r\n\r\n var dataNew = null;\r\n if (typeof JSON != 'undefined') {\r\n dataNew = jQuery.parseJSON(locStr);\r\n }\r\n else {\r\n dataNew = eval(\"(\" + locStr + \")\");\r\n }\r\n\r\n window.popup_glb.HelpPopupLocalStrings = dataNew.LocStrings;\r\n };\r\n\r\n var setContactSupportLink = function () {\r\n if ($('a[href$=\"pid=Advertising_Chat\"]:first').length > 0) {\r\n $('a[href$=\"pid=Advertising_Chat\"]:first').attr('href', window.popup_glb.ContactSupportGlink);\r\n }\r\n };\r\n\r\n var getDirection = function (element) {\r\n var result = null;\r\n if (element) {\r\n if (window.getComputedStyle) {\r\n result = window.getComputedStyle(element, null).direction;\r\n } else if (element.currentStyle) {\r\n result = element.currentStyle.direction;\r\n }\r\n }\r\n\r\n return result;\r\n };\r\n\r\n //Close popup window when press ESC key\r\n var clickEscKeyPopupCheck = function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n var el = e.target;\r\n var popup = $('.popuphelpwindow:visible')[0];\r\n if (popup == undefined) return true;\r\n\r\n if (window.apex_glb && typeof window.apex_glb.onPopupClose === 'function') {\r\n window.apex_glb.onPopupClose();\r\n }\r\n\r\n while (true) {\r\n if (el == popup) {\r\n if (e.which == 27) {\r\n if (e.stopPropagation) { e.stopPropagation(); }\r\n $(document).unbind('keyup.popuphelpwindow');\r\n $('#_helpPopupCloseLink').click();\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n } else if (el == document) {\r\n $(\".popuphelpwindow\").hide();\r\n //HelpControllerEx.InstrumentLink(\"Close\", \"1\");\r\n //TODO: Log Aria\r\n return false;\r\n } else {\r\n el = $(el).parent()[0];\r\n }\r\n }\r\n };\r\n\r\n //Close popup window when user clicks outside of popup window\r\n var clickOutsidePopupCheck = function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n $(document).unbind('mousedown.popuphelpwindow');\r\n var el = e.target;\r\n var popup = $('.popuphelpwindow:visible')[0];\r\n if (popup == undefined) return true;\r\n\r\n if (window.apex_glb && typeof window.apex_glb.onPopupClose === 'function') {\r\n window.apex_glb.onPopupClose();\r\n }\r\n\r\n while (true) {\r\n if (el == popup) {\r\n return true;\r\n } else if (el == document) {\r\n $(\".popuphelpwindow\").hide();\r\n //HelpControllerEx.InstrumentLink(\"Close\", \"1\");\r\n //TODO: Log Aria\r\n return false;\r\n } else {\r\n el = $(el).parent()[0];\r\n }\r\n }\r\n };\r\n\r\n var enableTheme = function (theme) {\r\n if (theme != undefined && theme != '') {\r\n var popThemeCssPath = window.popup_glb.HelpUrl + \"/resources/popup/styles/PopupStyles.min-\" + theme + \".css?v=2.00024\";\r\n var headId = $('head')[0];\r\n var link = '';\r\n $(link).appendTo(headId);\r\n }\r\n };\r\n\r\n var enableRTLLanguage = function () {\r\n var rtl = window.popup_glb.HelpMarket.toLowerCase().substring(0, 3);\r\n var idx = $.inArray(rtl, [\"ar-\", \"he-\", \"fa-\"]);\r\n if (idx > -1) {\r\n //var popRTLCssPath = window.popup_glb.HelpUrl + \"/resources/popup/styles/PopupStyles.rtl.min.css?v=2.00020\";\r\n var popRTLCssPath = window.popup_glb.HelpUrl + \"/resources/popup/styles/PopupStyles.rtl.css?v=2.00024\";\r\n var headId = $('head')[0];\r\n var link = '';\r\n $(link).appendTo(headId);\r\n }\r\n };\r\n return {\r\n currentPopupTrigger: null,\r\n setContainerPosition: setContainerPosition,\r\n GetGlobalHelpInformation: function () {\r\n window.popup_glb.HelpUrl = $.trim($(\"#popupInputs\").attr(\"Helpurl\"));\r\n window.popup_glb.HelpProduct = $.trim($(\"#popupInputs\").attr(\"Product\"));\r\n window.popup_glb.HelpProject = $.trim($(\"#popupInputs\").attr(\"Project\"));\r\n window.popup_glb.HelpMarket = $.trim($(\"#popupInputs\").attr(\"Market\"));\r\n window.popup_glb.HelpSku = $.trim($(\"#popupInputs\").attr(\"Sku\"));\r\n if (window.popup_glb.SupportMarket == undefined || $.trim(window.popup_glb.SupportMarket) == \"\") {\r\n window.popup_glb.SupportMarket = window.popup_glb.HelpMarket;\r\n }\r\n var theme = $.trim($(\"#popupInputs\").attr(\"Theme\"));\r\n if (typeof (window.ab_glb) != 'undefined' && window.ab_glb.LocStrings != null) { // this is to piggyback on the call if made by AnswerBar as it essentially is the same call.\r\n window.popup_glb.HelpPopupLocalStrings = window.ab_glb.LocStrings;\r\n window.popup_glb.HelpProject = window.ab_glb.HelpProject;\r\n window.popup_glb.ShowContact = window.ab_glb.ShowContact;\r\n window.popup_glb.ContactSupportGlink = window.ab_glb.ContactSupportGlink;\r\n window.popup_glb.ShowCommunity = window.ab_glb.ShowCommunity;\r\n window.popup_glb.CommunityGlink = window.ab_glb.CommunityGlink;\r\n setContactSupportLink();\r\n }\r\n\r\n //adding the css file. May need to move it out to a separate function.\r\n //var popupCssPath = window.popup_glb.HelpUrl + \"/resources/popup/styles/PopupStyles.min.css?v=2.00023\";\r\n //var link = '';\r\n //var headId = $('head')[0];\r\n //$(link).appendTo(headId);\r\n //enableTheme(theme);\r\n enableRTLLanguage();\r\n },\r\n\r\n PopupJsClick: function (obj) {\r\n if (obj.stopPropagation) {\r\n obj.stopPropagation();\r\n }\r\n else if (window.event) {\r\n window.event.cancelBubble = true;\r\n }\r\n\r\n var settings = window.popup_glb;\r\n jQuery.extend(settings, { target: obj, contentID: obj.getAttribute(\"topic\"), helpType: obj.getAttribute(\"type\") });\r\n PopupController.currentPopupTrigger = obj;\r\n PopupController.HelpLinkClicked(obj, settings);\r\n },\r\n\r\n HelpLinkClicked: function (inst, instanceSettings) {\r\n var loadHelpContent = function (element, url, contentId) {\r\n var contentArea = element.find(\".popuphelp-drag-contentarea\");\r\n contentArea.html(settings.loadingHTML); //.css(\"overflow\", \"hidden\");\r\n var helpresult = null;\r\n var attr = $(inst).attr('content');\r\n if (typeof attr !== \"undefined\" && attr !== undefined) {\r\n helpresult = decodeURIComponent(attr);\r\n }\r\n else {\r\n helpresult = PopupCacheHandler.GetResultFromCache(contentId);\r\n }\r\n if (helpresult != null && helpresult != undefined) {\r\n $(\".popuphelp-drag-contentarea\").html(helpresult);\r\n bindTopicEvents();\r\n }\r\n else {\r\n var proxy = new PopupProxy();\r\n proxy.GetContent(contentId, handleSingleContentSuccess, handleContentFailure, \"\");\r\n }\r\n };\r\n\r\n var defaultSettings = {\r\n resizable: false, // whether the window can be resized TRUE/FALSE\r\n helpUrl: null, // url to get help content\r\n helpCSS: \"popuphelpwindow\", //CSS of dialog window container\r\n closeImageURL: \"\", //URL of close image \r\n closeText: \"\", //title for close image\r\n loadingHTML: \"\", // loading panel\r\n lessText: \"\", // localized less text, default to english\r\n moreText: \"\", // localized more text, default to english\r\n width: null, //window width\r\n height: null, // window height\r\n draggable: true, // should help window be draggable\r\n baseHelpUrl: \"\", //URL for help haldler\r\n market: \"\", //Market such as en-us\r\n project: \"\", //Project name based on user security level\r\n contentID: \"\", //content PID,\r\n helpType: \"helppopuup\" //content PID,\r\n };\r\n\r\n var settings = $.extend({}, defaultSettings, instanceSettings || {});\r\n\r\n if (instanceSettings.helpType == \"helppopup\") {\r\n targetObj = $(settings.target);\r\n var helpContainer = \"#_helpcontainer\";\r\n var helpImage = \"#_helpPopupCloseLink\";\r\n var helpWindow = $(helpContainer);\r\n helpWindow.remove();\r\n //var contact = window.popup_glb.HelpPopupLocalStrings.Chat;\r\n //if (window.popup_glb.HelpMarket.toLowerCase().indexOf(\"en-\") <= -1) {\r\n // contact = window.popup_glb.HelpPopupLocalStrings.Support;\r\n //}\r\n\r\n var closeBtnSvg = `\r\n \r\n \r\n \r\n `;\r\n var domwindowdata = '
';\r\n domwindowdata += '
';\r\n domwindowdata += `
\r\n ${closeBtnSvg}\r\n `;\r\n //domwindowdata += '
' + contact + '
';\r\n //domwindowdata += '
';\r\n domwindowdata += '
';\r\n domwindowdata += '
';\r\n domwindowdata += '
';\r\n domwindowdata += '
'; // popup_wrapper div end\r\n domwindowdata += '';\r\n var $elem = $(domwindowdata);\r\n initialPosition = getElementPosition(inst);\r\n\r\n if ($(helpContainer).length > 0) {\r\n $(helpContainer).remove();\r\n }\r\n $(document.body).append($elem);\r\n\r\n helpWindow = $(helpContainer);\r\n $(helpImage).bind(\"click\", function () {\r\n $(helpContainer).hide();\r\n var elem = $(helpImage).data(\"element\");\r\n $(elem).focus();\r\n $(helpImage).data(\"element\", \"\");\r\n var viewId = $('[RailViewID]')[0] == undefined ? 'none' : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n var project = window.popup_glb.HelpProject == '' ? window.popup_glb.HelpProduct : window.popup_glb.HelpProject;\r\n PopupILog.LogAriaEvent('popup', project, window.popup_glb.HelpMarket, instanceSettings.contentID, '', '', 'close', viewId);\r\n return false;\r\n });\r\n $(helpImage).unbind('keypress');\r\n $(helpImage).bind('keypress', function (event) {\r\n if (event.preventDefault) { event.preventDefault(); }\r\n if (event.which === 13) {\r\n $(event.target).trigger('click');\r\n }\r\n });\r\n enableDraggable();\r\n //////PopupChromeController.EnableChromeSupportingLinksAndButtons();\r\n ////////bind community, contact support \r\n //////$(\".popuphelp_head #ab_contact, .popuphelp_head #ab_community\").click(function(e) {\r\n ////// if (e.preventDefault) {\r\n ////// e.preventDefault();\r\n ////// }\r\n ////// var logctxt = 'pp:' + window.popup_glb.HelpMarket + ':' + $(\"#popupInputs\").attr(\"RatingID\");\r\n ////// return PopupChromeController.ButtonHandler(e.target.id, logctxt);\r\n //////});\r\n //if (helpWindow.draggable && settings.draggable) helpWindow.draggable();\r\n if (settings.width) helpWindow.width(settings.width);\r\n helpWindow.find(\".popuphelp-drag-contentarea\").html(\"\");\r\n helpWindow.css(\"visibility\", \"visible\");\r\n\r\n helpWindow.show();\r\n //$(helpImage).focus();\r\n $(helpImage).data(\"element\", inst);\r\n loadHelpContent(helpWindow, settings.helpUrl, settings.contentID);\r\n setContainerPosition(helpWindow);\r\n //log aria\r\n var viewId = $('[RailViewID]')[0] == undefined ? 'none' : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n var project = window.popup_glb.HelpProject == '' ? window.popup_glb.HelpProduct : window.popup_glb.HelpProject;\r\n PopupILog.LogAriaEvent('popup', project, window.popup_glb.HelpMarket, instanceSettings.contentID, '', '', 'page', viewId);\r\n $(document).bind('mousedown.popuphelpwindow', clickOutsidePopupCheck);\r\n $(document).bind('keyup.popuphelpwindow', clickEscKeyPopupCheck);\r\n }\r\n\r\n }\r\n };\r\n}();\r\n\r\nvar PopupProxy = function () {\r\n};\r\n\r\nPopupProxy.prototype = {\r\n //performs GetContent\r\n //GetContents: function (queryObj, success, fail, before) {\r\n // debugger;\r\n // //Hack for param\r\n // queryObj.Project = queryObj.Product;\r\n // queryObj.Method = \"GetContents\";\r\n // var url = window.popup_glb.HelpUrl + \"/ApexContentHandler.ashx\";\r\n // $.ajax({\r\n // url: url,\r\n // data: queryObj,\r\n // crossDomain: true,\r\n // dataType: 'jsonp',\r\n // cache: false,\r\n // success: success,\r\n // fail: fail,\r\n // timeout: 60000\r\n // });\r\n //},\r\n\r\n //performs GetContent\r\n GetContent: function (query, success, fail, before) {\r\n //debugger;\r\n //performs GetContent\r\n\r\n\r\n var input = {\r\n 'project': apex_glb.Project,\r\n 'language': apex_glb.Market,\r\n 'query': query,\r\n 'asRow': 'popup',\r\n 'method': 'popup'\r\n };\r\n var url = window.popup_glb.HelpUrl + \"/api/\" + window.apex_glb.APIController + \"/\";\r\n if (window.popup_glb.Authorize == true) {\r\n url = \"/ApexHelp/HelpContent\";\r\n }\r\n $.ajax({\r\n url: url,\r\n data: input,\r\n //method: \"POST\",\r\n //indexValue: indexValue,\r\n contentType: 'application/json',\r\n crossDomain: true,\r\n // dataType: 'jsonp',\r\n cache: false,\r\n success: success,\r\n error: fail,\r\n timeout: 60000\r\n });\r\n\r\n },\r\n\r\n //performs getting the localized values.\r\n GetLocalizedCommonValues: function (success, fail, before) {\r\n var viewId = 'default';\r\n var input = {\r\n 'project': window.popup_glb.HelpProject,\r\n 'language': window.popup_glb.HelpMarket,\r\n 'view': viewId\r\n };\r\n\r\n var url = window.popup_glb.Authorize == true ? \"/ApexHelp/HelpConfig\" : window.popup_glb.HelpUrl + \"/api/\" + window.apex_glb.APIController + \"/ApexConfig\";\r\n $.ajax({\r\n url: url,\r\n data: input,\r\n //method: \"POST\",\r\n contentType: 'application/json',\r\n crossDomain: true,\r\n // dataType: 'jsonp',\r\n cache: false,\r\n success: success,\r\n error: fail,\r\n timeout: 60000\r\n });\r\n }\r\n};\r\n\r\n//\r\n// Create Popup PLUG-IN\r\n//\r\n\r\n(function ($) {\r\n $.fn.CreatePopup = function (options) {\r\n var inputmarkup = '';\r\n if ($(\"#popupInputs\").length < 1) {\r\n $(inputmarkup).appendTo($('body')[0]);\r\n }\r\n var opts = $.extend({}, $.fn.CreatePopup.defaults, options);\r\n window.popup_glb.Authorize = opts.Authorize;\r\n $.fn.CreatePopup.storedata($(this), opts);\r\n //if (PopupController.initializePopupGlobals) {\r\n // PopupController.GetGlobalHelpInformation();\r\n //}\r\n //PopupController.initializePopupGlobals = true;\r\n };\r\n\r\n $.fn.CreatePopup.defaults = {\r\n helpUrl: 'https://adcenterhelp.microsoft.com',\r\n sku: 'SelfServe',\r\n project: '',\r\n product: '',\r\n market: 'en-US',\r\n language: '',\r\n enable: 'true',\r\n theme: '',\r\n success: null,\r\n failure: null,\r\n draggable: true,\r\n Authorize: false\r\n };\r\n\r\n $.fn.CreatePopup.storedata = function (e, o) {\r\n //debugger;\r\n if (o.project == undefined || $.trim(o.project) == \"\") {\r\n o.project = \"\";\r\n }\r\n if ((o.product == undefined || $.trim(o.product) == \"\") && $.trim(o.project) != \"\") {\r\n o.product = o.project;\r\n }\r\n if (o.language == undefined || $.trim(o.language) == \"\") {\r\n o.language = o.market;\r\n }\r\n $('#popupInputs').attr('HelpUrl', o.helpUrl);\r\n $('#popupInputs').attr('Sku', o.sku);\r\n $('#popupInputs').attr('Project', o.project);\r\n $('#popupInputs').attr('Product', o.product);\r\n $('#popupInputs').attr('Market', o.language);\r\n $('#popupInputs').attr('Language', o.language);\r\n $('#popupInputs').attr('SupportMarket', o.SupportMarket);\r\n if (o.theme !== '') {\r\n $('#popupInputs').attr('Theme', o.theme);\r\n }\r\n window.popup_glb.Success = o.success;\r\n window.popup_glb.Failure = o.failure;\r\n window.popup_glb.Authorize = o.Authorize;\r\n };\r\n\r\n})(jQuery);\r\n\r\n\r\njQuery(document).ready(function () {\r\n //if (PopupController.initializePopupGlobals) {\r\n // PopupController.GetGlobalHelpInformation();\r\n //} else {\r\n // PopupController.initializePopupGlobals = true;\r\n //}\r\n\r\n $(document).off('click', 'a.popupbutton, a.videobutton');\r\n //$(document).on('click', 'a.popupbutton, a.videobutton', function (e) {\r\n // if (e.preventDefault) { e.preventDefault(); }\r\n // if (e.stopPropagation) { e.stopPropagation(); }\r\n // PopupController.PopupJsClick(e.target);\r\n //});\r\n document.addEventListener('click', function (e) {\r\n for (var target = e.target; target && target != this; target = target.parent) {\r\n if (target.matches('a.popupbutton, a.videobutton')) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n if (e.stopPropagation) { e.stopPropagation(); }\r\n PopupController.PopupJsClick(e.target);\r\n }\r\n }\r\n\r\n }, true);\r\n\r\n window.addEventListener('resize', () => {\r\n const visibleHelpContainer = $('#_helpcontainer:visible');\r\n if (visibleHelpContainer.length > 0) {\r\n PopupController.setContainerPosition(visibleHelpContainer);\r\n }\r\n });\r\n});\r\n\r\n\r\n/***********************************/\r\n/** APEX Interaction Variables **/\r\n/***********************************/\r\n\r\nfunction PopupILog() { }\r\n\r\nPopupILog.LogAriaEvent = function (source, project, language, query, filename, row, logType, view) {\r\n //Log an event using fluent syntax for page view.\r\n //if (window.popup_glb.Authorize == true) return;\r\n query = (query == null || query === \"\") ? 'NONE' : query;\r\n filename = (filename == null || filename === \"\") ? 'NONE' : filename;\r\n row = (row == null || row === \"\") ? 'NONE' : row;\r\n logType = (logType == null || logType === \"\") ? 'NONE' : logType;\r\n view = (view == null || view === \"\") ? 'NONE' : view;\r\n var url = window.popup_glb.HelpUrl + \"/api/logaria\";\r\n var referer = window.location.href;\r\n\r\n var input = {\r\n\r\n 'name': 'popup',\r\n 'source': source,\r\n 'project': project,\r\n 'language': language,\r\n 'filename': filename,\r\n 'row': row,\r\n 'query': query,\r\n 'logtype': logType,\r\n 'view': view,\r\n referer: referer\r\n };\r\n\r\n //self.setNavItem(nav);\r\n $.ajax({\r\n url: url,\r\n type: \"GET\",\r\n data: input,\r\n cache: false\r\n }\r\n );\r\n};\r\n\r\n//--- END POPUP CONTROLLER ------------------------------//\r\n\r\n/*-----------------------------------------------------------\r\n// Name: ApexVideoHandler\r\n// Description: ApexVideoHandler\r\n//\r\n// -------------------------------------------------------*/\r\nApexVideoHandler = function () {\r\n //private variable\r\n var isOpen = false;\r\n var buildVideoOverlayHtml = function () {\r\n var html = [\r\n '
',\r\n '
',\r\n '\t
',\r\n '\t\t
',\r\n '\t\t
',\r\n '\t
',\r\n '
'];\r\n //var root = RailHelpController.GetRootElementId();\r\n if ($('.abOverlayBgCover').length == 0) {\r\n $(html.join('')).insertAfter('body');\r\n\r\n // Unable to tab out of iframe\r\n var firstElem = $(\"#abOverlayClose\");\r\n var lastElem = $(\"#iframeVideo\");\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n }\r\n };\r\n\r\n var showOverlayBox = function () {\r\n\r\n //if box is not set to open then don't do anything \r\n if (isOpen == false) { return; }\r\n\r\n // set the properties of the overlay box, the left and top positions\r\n $('.abOverlayBox').css({\r\n display: 'block',\r\n left: ($(window).width() - $('.abOverlayBox').width()) / 2,\r\n top: (($(window).height() - $('.abOverlayBox').height()) / 2 - 20) + $(this).scrollTop(),\r\n position: 'absolute',\r\n 'z-index': '2002'\r\n });\r\n\r\n\r\n // set the window background for the overlay. i.e the body becomes darker\r\n $('.abOverlayBgCover').css({\r\n display: 'block',\r\n width: $(document).width(),\r\n height: $(document).height(),\r\n 'z-index': '2001'\r\n });\r\n };\r\n\r\n var doOverlayOpen = function (src, elem) {\r\n //set status to open\r\n isOpen = true;\r\n\r\n // REVISIT BUG FIX - Ajax call for title attribute\r\n // cross site scripting error\r\n /*\r\n var endpnt = apex_glb.EndPoint;\r\n var prd = apex_glb.Project;\r\n var mkt = apex_glb.Market;\r\n\r\n var currentURL = endpnt + 'resources/targeted/' + prd + '/' + mkt + '/config_VideoTopics.JSON';\r\n\r\n $.ajax({\r\n url: currentURL,\r\n type: \"get\",\r\n dataType: \"json\", //jsonp\r\n crossDomain: true,\r\n success: function (data) {\r\n //debugger;\r\n console.log(\"success ajax data: \" + data);\r\n for (var i = 0; i < data.length; i++) {\r\n //if (data[i].VideoId == uuid) {\r\n // $('#videoTitle').html(data[i].Title);\r\n // $('#videoDesc').html(data[i].Summary);\r\n // $('#videoFrame iframe').attr(\"title\", data[i].Title + \" Video Player\");\r\n // break;\r\n //}\r\n console.log(\"success ajax data inside: \" + data);\r\n }\r\n\r\n },\r\n error: function (e) {\r\n //debugger;\r\n console.log(\"fail ajax:\" + e );\r\n }\r\n });\r\n */\r\n\r\n var html = '';\r\n\r\n if ($(\"#iframeVideo\").length === 0) {\r\n $(html).appendTo('#abOverlayVideo');\r\n }\r\n\r\n //$(\".abOverlayBox\").css({ width: 600, height: 470 });\r\n $(\".abOverlayBox\").css({ width: 605, height: 470 });\r\n window.top.$(\"#iframeVideo\").css(\"visibility\", \"visible\");\r\n window.top.$(\"#iframeVideo\").attr(\"src\", src); //cannot just remove the iframe here because facebook throws js errors! so as a work around change the url then on load remove the iframe.\r\n showOverlayBox();\r\n $('.abOverlayBgCover').css({ opacity: 0 }).animate({ opacity: 0.6, backgroundColor: '#000' });\r\n // dont follow the link : so return false.\r\n //HelpController.InstrumentLink(\"Topic:\" + q.ContentID); //OV2 \r\n //if ($('#summaryEntityTab').hasClass('ui-tabs')) {\r\n // $('#summaryEntityTab').toggleClass('ui-tabs', 'ui-tabs-overlay');\r\n // $('.advertiser-tab-header').toggleClass('ui-tabs', 'ui-tabs-overlay');\r\n //}\r\n var ua = navigator.userAgent.toLowerCase();\r\n var isChrome = ua.indexOf('chrome') > -1;\r\n var isSafari = ua.indexOf('safari') > -1;\r\n if (isChrome || isSafari) {\r\n $(\"#abOverlayVideo\").css(\"margin-top\", \"10px\");\r\n };\r\n //$('#railhelp_show').css('opacity', '0.4');\r\n //$('#railhelp_show *').attr('disabled', 'true');\r\n\r\n $('span#abOverlayClose').focus();\r\n return false;\r\n };\r\n\r\n var doOverlayClose = function () {\r\n\r\n if ($(\"#railHelpInputs\").attr(\"query\") == '_popup_video_') window.close();\r\n //set status to closed\r\n isOpen = false;\r\n $('.abOverlayBox').css('display', 'none');\r\n // now animate the background to fade out to opacity 0\r\n // and then hide it after the animation is complete.\r\n $('.abOverlayBgCover').animate({ opacity: 0 }, null, null, function () { $(this).hide(); });\r\n\r\n window.top.$(\"#iframeVideo\").css(\"visibility\", \"hidden\");\r\n window.top.$(\"#iframeVideo\").attr(\"src\", \"\"); //cannot just remove the iframe here because facebook throws js errors! so as a work around change the url then on load remove the iframe.\r\n //window.top.location.hash = \"\";\r\n //if ($('#summaryEntityTab').hasClass('ui-tabs-overlay')) {\r\n // $('#summaryEntityTab').toggleClass('ui-tabs-overlay', 'ui-tabs');\r\n // $('.advertiser-tab-header').toggleClass('ui-tabs-overlay', 'ui-tabs');\r\n //}\r\n //$('#railhelp_show').css('opacity', '1');\r\n //$('#railhelp_show *').removeAttr('disabled');\r\n var elem = $('span#abOverlayClose').data(\"element\");\r\n $(elem).focus();\r\n $('span#abOverlayClose').data(\"element\", \"\");\r\n };\r\n var getHeight = function () {\r\n var h = 325;\r\n return h;\r\n };\r\n var getWidth = function () {\r\n var w = 550;\r\n return w;\r\n };\r\n\r\n var showVideo = function (event) {\r\n //read the uuid from ids\r\n $('span#abOverlayClose').data(\"element\", event.target);\r\n var uuid = $(event.target).attr(\"videoId\");\r\n var opid = $(event.target).attr(\"op_videoId\");\r\n var pos = $(event.target).attr(\"pos\");\r\n var height = getHeight();\r\n var width = getWidth();\r\n\r\n\r\n if (uuid === undefined) {\r\n //Go one level up to get videoId from anchor tag \r\n uuid = $(event.target).parent().attr('videoId');\r\n opid = $(event.target).parent().attr(\"op_videoId\");\r\n }\r\n\r\n var nocache = '&random=' + (new Date()).getTime() + Math.floor(Math.random() * 1000000);\r\n if (!window.location.origin) {\r\n window.location.origin = window.location.protocol + \"//\"\r\n + window.location.hostname\r\n + (window.location.port ? ':' + window.location.port : '');\r\n }\r\n\r\n var src = apex_glb.EndPoint + '/resources/neutral/ApexOnePlayerVideoHandler.htm?uuid=' + uuid + '&opid=' + opid + '&prd=' + apex_glb.Project + '&mkt=' + apex_glb.Language + '&w=' + width + '&h=' + height + nocache;\r\n\r\n if (opid == null || opid == \"\" || opid == \"OnePlayerIDValue\") {\r\n src = apex_glb.EndPoint + '/resources/neutral/ApexYoutubeVideoHandler.htm?uuid=' + uuid + '&w=' + width + '&h=' + height + nocache;\r\n }\r\n //var src = apex_glb.EndPoint + '/resources/neutral/ApexYoutubeVideoHandler.htm?uuid=' + uuid + '&w=' + width + '&h=' + height + nocache;\r\n doOverlayOpen(src, event.target);\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, uuid, '', '', 'Video', '');\r\n return false;\r\n };\r\n\r\n return {\r\n DoOverlayOpen: doOverlayOpen,\r\n DoOverlayClose: doOverlayClose,\r\n ShowOverlay: function () {\r\n showOverlayBox();\r\n },\r\n ShowVideo: function (event) {\r\n return showVideo(event);\r\n },\r\n Init: function () {\r\n buildVideoOverlayHtml();\r\n\r\n // if window is resized then reposition the overlay box\r\n $(window).bind('resize', showOverlayBox);\r\n\r\n $('.abLaunchVideo').unbind('click');\r\n $('.abLaunchVideo').bind('click', function (event) {\r\n return showVideo(event);\r\n });\r\n\r\n $('div.apexContentTile span.abLaunchVideo, #abOverlayClose').unbind('keypress');\r\n $('div.apexContentTile span.abLaunchVideo, #abOverlayClose').bind('keypress', function (event) {\r\n if (event.which === 13) {\r\n $(event.target).trigger('click');\r\n }\r\n });\r\n\r\n $(\"a#abOverlayClose, span#abOverlayClose\").keydown(function (e) {\r\n //if (e.preventDefault) { e.preventDefault(); }\r\n var keycode = (e.keyCode ? e.keyCode : (e.which ? e.which : e.charCode));\r\n if ((keycode === 13) || (keycode === 27)) { // keycode for enter key or ESC key\r\n if (e.preventDefault) { e.preventDefault(); }\r\n if (e.stopPropagation) { e.stopPropagation(); }\r\n $(e.target).trigger('click');\r\n }\r\n });\r\n\r\n $('a#abOverlayClose, span#abOverlayClose').unbind('click');\r\n $('a#abOverlayClose, span#abOverlayClose').bind('click', function (event) {\r\n ApexVideoHandler.DoOverlayClose();\r\n });\r\n $('#abOverlayClose').unbind('click');\r\n $('#abOverlayClose').bind('click', function (event) {\r\n ApexVideoHandler.DoOverlayClose();\r\n });\r\n\r\n }\r\n };\r\n\r\n}();\r\n\r\n/*-----------------------------------------------------------\r\n// Name: ApexCookieHandler\r\n// Description: ApexCookieHandler\r\n//\r\n// -------------------------------------------------------*/\r\nApexCookieHandler = function () {\r\n // Private\r\n // var htmlDecode = function (value) {\r\n // return $('
').html(value).text();\r\n // }\r\n\r\n // var htmlEncode = function (value) {\r\n // return $('
').text(value).html();\r\n // }\r\n return {\r\n\r\n // getCokkie\r\n getCookie: function (name) {\r\n if ((name == undefined) || (name == null) || (name == '')) return null;\r\n name = name.toLowerCase();\r\n //try{\r\n // return window.localStorage.getItem(name);\r\n //}\r\n //catch(e){}\r\n var nameEQ = name + \"=\";\r\n var ca = document.cookie.split(';');\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) == ' ') c = c.substring(1, c.length);\r\n if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);\r\n }\r\n return null;\r\n },\r\n\r\n /*\r\n Set cookie with expiration . Path, Domain, Secure are all optional\r\n name = cookie name\r\n value = value of cookie\r\n expires = no. of days\r\n path = path name\r\n domain = domain name\r\n */\r\n setCookie: function (name, value, days) {\r\n var expires;\r\n if ((name == undefined) || (name == null) || (name == '')) return;\r\n name = name.toLowerCase();\r\n if (days) {\r\n var date = new Date();\r\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\r\n expires = \"; expires=\" + date.toGMTString();\r\n }\r\n else expires = \"\";\r\n var dstr = \";domain=.ads.microsoft.com; path=/\";\r\n if (document.domain.indexOf('ads-int') > 0) {\r\n dstr = \";domain=.ads-int.microsoft.com; path=/\";\r\n }\r\n //document.domain = \".bingads.microsoft.com\";\r\n //document.cookie = name + \"=\" + value + expires + \";domain=.bingads.microsoft.com; path=/\";\r\n document.cookie = name + \"=\" + value + expires + dstr;\r\n //window.localStorage.setItem(name, value);\r\n },\r\n\r\n // this deletes the cookie when called\r\n removeCookie: function (name) {\r\n if ((name == undefined) || (name == null) || (name == '')) return;\r\n name = name.toLowerCase();\r\n //try {\r\n // return window.localStorage.removeItem(name);\r\n //}\r\n //catch (e) { }\r\n if (ApexCookieHandler.getCookie(name)) {\r\n ApexCookieHandler.setCookie(name, \"\", -1);\r\n }\r\n }\r\n };\r\n\r\n}();\r\n\r\n/*-----------------------------------------------------------\r\n// Name: ApexEmbedLogger\r\n// Description: ApexEmbedLogger - Logging into Aria \r\n// eg.: ApexEmbedLogger.Instrument('help', project, apex_glb.HelpMarket, query, '', '', 'page', viewId);\r\n// ApexEmbedLogger.Instrument('help', project, apex_glb.HelpMarket, query, 'hlp_ba_sample.xml', '10', 'search', viewId);\r\n// -------------------------------------------------------*/\r\nApexEmbedLogger = function () {\r\n var logAriaEvent = function (source, project, language, query, filename, row, logType, view) {\r\n //Log an event using fluent syntax for page view.\r\n //if (apex_glb.Authorize == true) return;\r\n query = (query == null || query === \"\") ? 'NONE' : query;\r\n filename = (filename == null || filename === \"\") ? 'NONE' : filename;\r\n row = (row == null || row === \"\") ? 'NONE' : row;\r\n logType = (logType == null || logType === \"\") ? 'NONE' : logType;\r\n view = (view == null || view === \"\") ? 'NONE' : view;\r\n var url = apex_glb.EndPoint + \"/api/logaria\";\r\n var referer = window.location.href;\r\n\r\n var input = {\r\n 'name': 'help',\r\n 'source': source,\r\n 'project': project,\r\n 'language': language,\r\n 'filename': filename,\r\n 'row': row,\r\n 'query': query,\r\n 'logtype': logType,\r\n 'view': view,\r\n referer: referer\r\n };\r\n\r\n //self.setNavItem(nav);\r\n $.ajax({\r\n url: url,\r\n type: \"GET\",\r\n data: input,\r\n cache: false\r\n }\r\n );\r\n };\r\n var sendFeedback = function (source, project, language, query, answer, answerText, filename, view) {\r\n //Log an event using fluent syntax for page view.\r\n //if (apex_glb.Authorize == true) return;\r\n query = (query == null || query === \"\") ? 'NONE' : query;\r\n answer = (answer == null || answer === \"\") ? 'NONE' : answer;\r\n answerText = (answerText == null || answerText === \"\") ? 'NONE' : answerText;\r\n filename = (filename == null || filename === \"\") ? 'NONE' : filename;\r\n logType = (logType == null || logType === \"\") ? 'NONE' : logType;\r\n view = (view == null || view === \"\") ? 'NONE' : view;\r\n var url = apex_glb.EndPoint + \"/api/logaria/feedback\";\r\n\r\n var input = {\r\n 'source': source,\r\n 'project': project,\r\n 'language': language,\r\n 'answer': answer,\r\n 'answerText': answerText,\r\n 'filename': filename,\r\n 'query': query,\r\n 'view': view\r\n };\r\n\r\n //self.setNavItem(nav);\r\n $.ajax({\r\n url: url,\r\n type: \"GET\",\r\n data: input,\r\n cache: false\r\n }\r\n );\r\n };\r\n return {\r\n Instrument: logAriaEvent,\r\n Feedback: sendFeedback\r\n };\r\n}();\r\n\r\n\r\n/*-----------------------------------------------------------\r\n// Name: RailHelpController\r\n// Description: RailHelpController \r\n//\r\n// -------------------------------------------------------*/\r\nRailHelpController = function () {\r\n var myself = this;\r\n\r\n var currentQuery = \"\";\r\n var currentRailContent = null;\r\n var originalRailContent = null;\r\n var currentRailIndex = 0;\r\n var activeJSQuery = null;\r\n var prevView = \"\";\r\n var currentView = \"\";\r\n var currentQueries = \"\";\r\n var isNewQuery = false;\r\n var dropDownBusy = false;\r\n var isDebugMode = false;\r\n var isDraggable = false;\r\n var railHtmlRoot = \"#railhtml\";\r\n\r\n var hideVideoTab = false;\r\n var enableCopy = true;\r\n var showRating = true;\r\n var isSearchFocused = false;\r\n var isResizeBusy = false;\r\n var isRefreshed = false;\r\n var isChromePinned = true;\r\n var barIcon = \"\";\r\n var hoverOnDelay = 0;\r\n var instrumentPage = false;\r\n var contentHistory = [];\r\n\r\n var enableRTLLanguage = function () {\r\n var rtl = window.ab_glb.HelpMarket.toLowerCase().substring(0, 3);\r\n var idx = $.inArray(rtl, [\"ar-\", \"he-\", \"fa-\"]);\r\n window.ab_glb.IsBIDIMarket = idx > -1;\r\n };\r\n\r\n\r\n var addContentForBackButton = function (content, related) {\r\n var data = {\r\n 'term': $('input#searchquery').val(),\r\n 'head': $('#apex_content_title').html(),\r\n 'query': apex_glb.CurrentQuery,\r\n 'content': content,\r\n 'related': related,\r\n 'title': $(railHtmlRoot).attr('aria-label')\r\n }\r\n\r\n contentHistory.push(data);\r\n if (contentHistory.length > 1) {\r\n $('#apexHelpContainer .apex_search_area .back_button').removeClass('disabled').addClass('active');\r\n $('#apexHelpContainer .apex_search_area .back_button').attr('tabindex', '0');\r\n $('#apexHelpContainer .apex_search_area .back_button').attr('aria-disabled', 'false');\r\n\r\n if (!$(\"#apexHelpContainer #apex_support_area\").is(\":visible\") && !$(\"#apexHelpContainer #apexSupportOption\").is(\":visible\")) {\r\n $(\"#apex_platform_chrome #apex_dropdown_moreoptions\").unbind('keydown');\r\n $(\"#apex_platform_chrome #apex_back_button\").unbind('keydown');\r\n var lastElementNoSupport = findLastVisibleElement($('#apexHelpContainer'));\r\n var firstElem = $(\"#apex_platform_chrome #apex_back_button\").hasClass(\"disabled\") || !$(\"#apex_platform_chrome #apex_back_button\").is(\":visible\") ? $(\"#apex_platform_chrome #apex_dropdown_moreoptions\") : $(\"#apex_platform_chrome #apex_back_button\");\r\n var lastElem = $(lastElementNoSupport);\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n }\r\n }\r\n };\r\n\r\n var getContentForBackButton = function () {\r\n\r\n if (contentHistory.length >= 2) {\r\n var content = contentHistory.pop();\r\n content = contentHistory.pop();\r\n contentHistory.push(content);\r\n\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).html('');\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).html(content.content);\r\n var apexCls = apex_glb.Project.toLowerCase();\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #cntnt').removeClass(apexCls).addClass(apexCls);\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #related_articles').html(content.related);\r\n $('#apexHelpContainer input#searchquery').val(content.term);\r\n $('#apexHelpContainer input#searchquery').focus();\r\n $(railHtmlRoot).attr('aria-label', content.title);\r\n if (content.head == '') {\r\n $('#apex_content_title').hide();\r\n }\r\n else {\r\n $('#apex_content_title').html(content.head);\r\n $('#apex_content_title').show();\r\n }\r\n if (contentHistory.length <= 1) {\r\n $('#apexHelpContainer .apex_search_area .back_button').removeClass('active').addClass('disabled');\r\n $('#apexHelpContainer .apex_search_area .back_button').attr('tabindex', '-1');\r\n $('#apexHelpContainer .apex_search_area .back_button').attr('aria-disabled', 'true');\r\n }\r\n if ($('#apexHelpContainer .apex_content_area ' + window.ab_glb.ContentRootElement).length > 0) {\r\n setScrollBar($('#apexHelpContainer .apex_content_area ' + window.ab_glb.ContentRootElement)[0].scrollHeight);\r\n }\r\n apex_glb.CurrentQuery = !content.query ? \"\" : content.query;\r\n updateUrlPaths();\r\n\r\n //var sessionQuery = ApexCookieHandler.getCookie($('#railHelpInputs').attr('ApexSessionId'));\r\n //if (sessionQuery != null) {\r\n // var qry = [];\r\n // qry = sessionQuery.split('~');\r\n // query = qry[0];\r\n // $('#apexHelpContainer #railContent #cntnt').scrollTop(qry[1]);\r\n // $.each(qry, function (key, value) { if (key > 1) $('#apexHelpContainer #railContent #' + value).trigger('click') });\r\n //}\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), content.query);\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, content.query, '', '', 'back', viewId);\r\n\r\n if (!$(\"#apexHelpContainer #apex_support_area\").is(\":visible\") && !$(\"#apexHelpContainer #apexSupportOption\").is(\":visible\")) {\r\n $(\"#apex_platform_chrome #apex_dropdown_moreoptions\").unbind('keydown');\r\n $(\"#apex_platform_chrome #apex_back_button\").unbind('keydown');\r\n var lastElementNoSupport = findLastVisibleElement($('#apexHelpContainer'));\r\n var firstElem = $(\"#apex_platform_chrome #apex_back_button\").hasClass(\"disabled\") || !$(\"#apex_platform_chrome #apex_back_button\").is(\":visible\") ? $(\"#apex_platform_chrome #apex_dropdown_moreoptions\") : $(\"#apex_platform_chrome #apex_back_button\");\r\n var lastElem = $(lastElementNoSupport);\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n }\r\n\r\n loadOnDemandContent();\r\n $.fn.ApexDropDown();\r\n }\r\n };\r\n\r\n var toggleHoverClass = function (e, removeClass, addClass) {\r\n e.removeClass(removeClass);\r\n e.addClass(addClass);\r\n };\r\n\r\n\r\n var getSearchTerm = function () {\r\n var value = $(\"#apexHelpContainer #searchquery\").val();\r\n if ((value == apex_glb.LocStrings.Search) || value.length == 0) { return null; }\r\n\r\n var query = getEncodedQuery(value);\r\n return value;\r\n };\r\n\r\n var getEncodedQuery = function (query) {\r\n var userQuery = (query != null && query.length > 0) ? query : \"\";\r\n try { userQuery = encodeURIComponent(userQuery); }\r\n catch (ex) { userQuery = escape(userQuery); }\r\n return userQuery;\r\n };\r\n\r\n var helpSearch_Click = function (project) {\r\n if (isSearchFocused == false)\r\n return;\r\n\r\n var value = getSearchTerm();\r\n if (value == null) return false;\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, value, '', '', 'search', viewId);\r\n return getABContent(value, \"s\");\r\n };\r\n\r\n var helpSearch_Focus = function (oInput) {\r\n isSearchFocused = true;\r\n var val = oInput.val();\r\n if (val == apex_glb.LocStrings.Search) {\r\n oInput.val(''); //remove the default text if it is present\r\n oInput.removeClass(\"watermark\");\r\n }\r\n oInput.select();\r\n };\r\n\r\n var helpSearch_Blur = function (oInput) {\r\n var val = oInput.val();\r\n if (val == null || val.length == 0) oInput.val(apex_glb.LocStrings.Search);\r\n };\r\n\r\n var findLastVisibleElement = function (elem) {\r\n var focusable = document.getElementById(elem.attr('id')).querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])');\r\n var i;\r\n var lastElement = null;\r\n for (i = focusable.length - 1; i >= 0; i--) {\r\n var el = focusable[i];\r\n var found = !!(el.offsetWidth || el.offsetHeight || el.getClientRects().length);\r\n if (found) {\r\n lastElement = el;\r\n if ($(lastElement).attr(\"id\") == undefined) {\r\n $(lastElement).attr(\"id\", \"last-help-element\");\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return lastElement;\r\n }\r\n\r\n // Tab to search suggestions list from search input\r\n var tabToSuggestions = function () {\r\n var searchInput = $(\".apex_search_area input#searchquery\");\r\n var suggestionList = $(\"#apex-suggestion-box\");\r\n\r\n searchInput.keydown(function (e) {\r\n if (searchInput.val() != \"\" && suggestionList.is(':visible')) {\r\n if (e.which === 9) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n $(\".apex_search_area input#searchquery\").blur();\r\n suggestionList.css('display', 'block');\r\n var suggestionAmmount = $(\"#apex-suggestion-box-list li\").length + ' suggestions found, use tab to review';\r\n $(\"#announce-suggestions\").html(suggestionAmmount);\r\n $(\"#apex-suggestion-box-list li:first a\").focus();\r\n };\r\n }\r\n });\r\n }\r\n\r\n var bindChromeSearchClickEvents = function () {\r\n if ($(\".apex_search_area input#searchquery\") != undefined && $(\".apex_search_area input#searchsubmit\").length > 0) {\r\n $(\".apex_search_area input#searchquery\").keydown(function (e) {\r\n var keycode = (e.keyCode ? e.keyCode : (e.which ? e.which : e.charCode));\r\n if (keycode === 13) { // keycode for enter key\r\n if (e.preventDefault) { e.preventDefault(); }\r\n helpSearch_Click(apex_glb.Project);\r\n }\r\n });\r\n $(\".apex_search_area input#searchsubmit\").click(function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n helpSearch_Click(apex_glb.Project);\r\n });\r\n $(\".apex_search_area input#searchquery\").blur(function (e) {\r\n helpSearch_Blur($(this));\r\n });\r\n\r\n $(\".apex_search_area input#searchquery\").focus(function (e) {\r\n helpSearch_Focus($(this));\r\n tabToSuggestions();\r\n });\r\n\r\n $(\".apex_search_area input#searchsubmit\").focus(function (e) {\r\n isSearchFocused = true;\r\n });\r\n\r\n }\r\n };\r\n\r\n var getContentVideo = function (e) {\r\n\r\n ApexVideoHandler.ShowVideo(e);\r\n\r\n };\r\n\r\n var getContentArticle = function (e) {\r\n var topicId = '';\r\n var fileName = '';\r\n var row = '0';\r\n if ($(e.target).hasClass('highlight')) {\r\n topicId = $(e.target).parent().attr('secretkey');\r\n fileName = $(e.target).parent().attr('topic');\r\n row = $(e.target).parent().attr('row');\r\n } else {\r\n topicId = $(e.target).attr('secretkey');\r\n fileName = $(e.target).attr('topic');\r\n row = $(e.target).attr('row');\r\n }\r\n var logType = 'landing';\r\n if ($(e).parentsUntil('.hSearchRow.Search').length == 1) {\r\n logType = 'result';\r\n }\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, topicId, fileName, row, logType, viewId);\r\n return getABContent(topicId);\r\n };\r\n\r\n var getContentTour = function (e) {\r\n //TODO: TO BE IMPLEMENTED\r\n try {\r\n if (typeof WalkMeAPI != 'undefined' && typeof WalkMeAPI.startWalkthruById == 'function') {\r\n walkmeId = parseInt($(e.target).attr('wid'));\r\n WalkMeAPI.startWalkthruById(walkmeId);\r\n }\r\n }\r\n catch (e) { };\r\n };\r\n\r\n var bindContentClickEvents = function () {\r\n\r\n $(\"#apexHelpContainer\").off('click', \".apex_content_area .hSearchRow.Tour .SearchTitle span[role='link']\");\r\n $(\"#apexHelpContainer\").on('click', \".apex_content_area .hSearchRow.Tour .SearchTitle span[role='link']\", \".apex_content_area .hSearchRow.Tour .SearchTitle span[role='link']\", function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n getContentTour(e);\r\n })\r\n $(\"#apexHelpContainer\").off('click', \".apex_content_area .hSearchRow.Video .SearchTitle span[role='link'], .apex_content_area .abLaunchVideo\");\r\n $(\"#apexHelpContainer\").on('click', \".apex_content_area .hSearchRow.Video .SearchTitle span[role='link'], .apex_content_area .abLaunchVideo\", function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n getContentVideo(e);\r\n })\r\n\r\n $(\"#apex-suggestion-box\").off(\"click\", '#apex-suggestion-box-list li span[videoid], #apex-suggestion-box-list li a[videoid]');\r\n $(\"#apex-suggestion-box\").on(\"click\", '#apex-suggestion-box-list li span[videoid], #apex-suggestion-box-list li a[videoid]', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n getContentVideo(e);\r\n });\r\n\r\n $(\"#apexHelpContainer\").off('keypress', \".apex_content_area .hSearchRow.Video .SearchTitle span[role='link'], .apex_content_area .abLaunchVideo, #abOverlayClose\");\r\n $(\"#apexHelpContainer\").on('keypress', \".apex_content_area .hSearchRow.Video .SearchTitle span[role='link'], .apex_content_area .abLaunchVideo, #abOverlayClose\", function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if (event.which === 13) {\r\n $(e.target).trigger('click');\r\n }\r\n });\r\n\r\n\r\n $(\"#apexHelpContainer\").off('click', \".apex_content_area .hSearchRow.Articles .SearchTitle a[role='link']\");\r\n $(\"#apexHelpContainer\").on('click', \".apex_content_area .hSearchRow.Articles .SearchTitle a[role='link']\", function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n getContentArticle(e);\r\n })\r\n $(\"#apex-suggestion-box\").off('click', 'ul#apex-suggestion-box-list li a');\r\n $(\"#apex-suggestion-box\").on('click', 'ul#apex-suggestion-box-list li a', function (e) {\r\n\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if ($(e.target).attr('VideoId') !== undefined) { return false; }\r\n\r\n getContentArticle(e);\r\n })\r\n\r\n $(\"#apexHelpContainer\").off('click', window.ab_glb.ContentRootElement + ' #cntnt a.LINK');\r\n $(\"#apexHelpContainer\").on('click', window.ab_glb.ContentRootElement + ' #cntnt a.LINK', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if ($(e.target).attr('targetId') !== undefined) {\r\n var target = window.ab_glb.ContentRootElement + ' #cntnt ' + $(e.target).attr('targetId');\r\n //$(window.ab_glb.ContentRootElement + ' #cntnt').scrollTop($(window.ab_glb.ContentRootElement + \" #cntnt\").scrollTop() + $(target).position().top);\r\n $('#railContent').scrollTop($('#railContent').scrollTop() + $(target).position().top);\r\n }\r\n })\r\n\r\n $(\"#apexHelpContainer\").off('click', window.ab_glb.ContentRootElement + ' #cntnt #spinOffWindow');\r\n $(\"#apexHelpContainer\").on('click', window.ab_glb.ContentRootElement + ' #cntnt #spinOffWindow', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n spinOffNewWindow(e);\r\n })\r\n };\r\n\r\n jQuery.fn.hasVScroll = function () {\r\n return this.get(0) ? this.get(0).scrollHeight > this.innerHeight() : false;\r\n };\r\n\r\n\r\n var setScrollBar = function (height) {\r\n //var scroll_height = height-50;\r\n //$(\"#railContent\").height(scroll_height);\r\n //$(\"#railContent\").css('height', '\"' + scroll_height + 'px\"');\r\n //var offset = $('#apexHelpContainer #railContent').offset();\r\n // var remaining_height = parseInt($(window).height() - offset.top - 50);\r\n // $('#apexHelpContainer #railContent').height(remaining_height);\r\n //try {\r\n // $('#apexHelpContainer .apex_content_area #railContent').css('overflow-y', 'auto !important');\r\n //$('#railContent').perfectScrollbar('update');\r\n //}\r\n //catch (e) { };\r\n //if ($(\"#apexHelpContainer #railContent\").hasVScroll()) {\r\n //}\r\n $('#apexHelpContainer #railContent').scrollTop(0);\r\n };\r\n\r\n var opener = null;\r\n\r\n var linkHandler = function (e) {\r\n opener = this;\r\n if (window.apex_glb && typeof window.apex_glb.onRailViewOpen === 'function') {\r\n window.apex_glb.onRailViewOpen(opener);\r\n }\r\n\r\n if (e.stopImmediatePropagation) { e.stopImmediatePropagation(); }\r\n if (e.preventDefault) { e.preventDefault(); };\r\n try {\r\n if ($('.apex_platform_chrome').length <= 0) {\r\n ApexPlatform.Init();\r\n }\r\n }\r\n catch (ex) { };\r\n\r\n\r\n //if ($(e.target).attr('href_new') && $(e.target).attr('query')) {\r\n var query = apex_glb.Query.toLowerCase();\r\n if ($(e.target).attr('query')) {\r\n query = $(e.target).attr('query');\r\n }\r\n else if ($(e.target).parent().attr('query')) {\r\n query = $(e.target).parent().attr('query');\r\n }\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, query, '', '', 'page', viewId);\r\n\r\n if (query != apex_glb.CurrentQuery.toLowerCase()) {\r\n getABContent(query, null, 0);\r\n }\r\n else {\r\n showHelp(true);\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), apex_glb.CurrentQuery);\r\n }\r\n if ($('#apexHelpContainer .apex_content_area ' + window.ab_glb.ContentRootElement).length > 0) {\r\n setScrollBar($('#apexHelpContainer .apex_content_area ' + window.ab_glb.ContentRootElement)[0].scrollHeight);\r\n }\r\n };\r\n\r\n var spinOffNewWindow = function (e) {\r\n if (e.stopImmediatePropagation) { e.stopImmediatePropagation(); }\r\n if (e.preventDefault) { e.preventDefault(); };\r\n var url = $(e.target).parent().attr('url');\r\n if (url == undefined || url == null) url = $(e.target).attr('url');\r\n //var win = window.open(url, '_apexHelpWindow');\r\n //if (win) win.focus();\r\n const urlObj = new URL(url);\r\n const curSearch = window.location.search;\r\n urlObj.search = curSearch;\r\n url = urlObj.toString();\r\n\r\n if (window.apexHelpSpinOffWindow) window.apexHelpSpinOffWindow.close();\r\n const child = window.open(url, \"_apexHelpWindow\");\r\n window.apexHelpSpinOffWindow = child;\r\n if (child) {\r\n child.focus();\r\n //Scrope script in child windows\r\n child.frames.eval('setInterval(function () {if (!window.opener.apexHelpSpinOffWindow) window.opener.apexHelpSpinOffWindow = window; }, 500);');\r\n }\r\n };\r\n\r\n var copyTopicHandler = function (e) {\r\n var url = $(e.target).parent().attr('url');\r\n if (url == undefined || url == null) url = $(e.target).attr('url');\r\n url = url.toLowerCase();\r\n if (window.clipboardData) // IE\r\n {\r\n window.clipboardData.setData(\"Text\", url);\r\n $(\".apex_search_area input#searchquery\").focus();\r\n } else if (document.queryCommandSupported && document.queryCommandSupported(\"copy\")) {\r\n var textarea = document.createElement(\"textarea\");\r\n textarea.textContent = url;\r\n textarea.style.position = \"fixed\"; // Prevent scrolling to bottom of page in MS Edge.\r\n document.body.appendChild(textarea);\r\n textarea.select();\r\n try {\r\n return document.execCommand(\"copy\"); // Security exception may be thrown by some browsers.\r\n } catch (ex) {\r\n\r\n return false;\r\n } finally {\r\n document.body.removeChild(textarea);\r\n $(\".apex_search_area input#searchquery\").focus();\r\n }\r\n }\r\n $(\".apex_search_area input#searchquery\").focus();\r\n //if ($.browser.msie) {\r\n // try {\r\n // if (window.clipboardData) // IE\r\n // {\r\n // window.clipboardData.setData(\"Text\", url);\r\n // }\r\n // }\r\n // catch (e)\r\n // { }\r\n //}\r\n //else {\r\n // var body_message = url;\r\n // var mailto_link = 'mailto:?body=' + encodeURIComponent(body_message);\r\n // window.location.replace(mailto_link, 'emailWindow');\r\n //}\r\n //return false;\r\n };\r\n\r\n var fwLinkHandler = function (e) {\r\n var url = $(e.target).attr('href');\r\n if (url === undefined || url == '#') return false;\r\n //var win = window.open(url, '_apexHelpWindow');\r\n //if (win) win.focus();\r\n if (window.apexHelpSpinOffWindow) window.apexHelpSpinOffWindow.close();\r\n const child = window.open(url, \"_apexHelpWindow\");\r\n window.apexHelpSpinOffWindow = child;\r\n if (child) {\r\n child.focus();\r\n //Scrope script in child windows\r\n try {\r\n if (child.frames && child.frames.length > 0) {\r\n child.frames.eval('setInterval(function () {if (!window.opener.apexHelpSpinOffWindow) window.opener.apexHelpSpinOffWindow = window; }, 500);');\r\n }\r\n }\r\n catch (e) { }\r\n }\r\n };\r\n\r\n\r\n var bindPlatformEvents = function () {\r\n $(document).off('click', '.HelpTopic, .HelpTopic span, .HelpTopic div, .apexHelpLink, .help-topic-link');\r\n //$(document).on('click', '.HelpTopic, .HelpTopic span, .apexHelpLink', linkHandler);\r\n //document.querySelector('.HelpTopic, .HelpTopic span, .apexHelpLink').addEventListener('click', function (e) {\r\n // linkHandler.call(e.target, e);\r\n //}, true);\r\n\r\n document.addEventListener('click', function (e) {\r\n for (var target = e.target; target && target != this; target = target.parent) {\r\n try {\r\n if (typeof target.matches == \"function\") {\r\n if (target.matches('.HelpTopic, .HelpTopic span, .HelpTopic div, .apexHelpLink, .help-topic-link')) {\r\n linkHandler.call(target, e);\r\n }\r\n }\r\n }\r\n catch (e) { };\r\n }\r\n\r\n }, true);\r\n\r\n $(window.ab_glb.ContentRootElement).off('click', window.ab_glb.ContentRootElement + \" a[href*='fwlink'], \" + window.ab_glb.ContentRootElement + \" a:not([href*='/#apex/'])\");\r\n $(window.ab_glb.ContentRootElement).on('click', window.ab_glb.ContentRootElement + \" a[href*='fwlink'], \" + window.ab_glb.ContentRootElement + \" a:not([href*='/#apex/'])\", fwLinkHandler);\r\n\r\n //$(\"#railContent a[href='#']\").die('click');\r\n //$(\"#railContent a[href='#']\").live('click', function () { return false; });\r\n };\r\n\r\n //check if exist and is visible\r\n var isVisible = function (element) {\r\n if (element.length > 0 && element.css('visibility') !== 'hidden' && element.css('display') !== 'none') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n var keydownEscHandler = function (e) {\r\n //if (e.preventDefault) { e.preventDefault(); }\r\n //if (e.stopPropagation) { e.stopPropagation(); }\r\n if (e.which === 27) {\r\n if (document.activeElement.id == \"homeImage\" || document.activeElement.id == \"newToBingAds\" || document.activeElement.id == \"videoGallery\" || document.activeElement.id == \"spinOffWindow\" || document.activeElement.id == \"copyTopic\") {\r\n $('.dropdown-content').hide();\r\n $(\"#apexHelpContainer span.dropdown_moreoptions\").attr(\"aria-expanded\", \"false\");\r\n $('#apexHelpContainer span.dropdown_moreoptions').focus();\r\n }\r\n else if ($('#_helpcontainer').is(':visible')) {\r\n if (e.stopPropagation) { e.stopPropagation(); };\r\n $('#_helpPopupCloseLink').click();\r\n }\r\n else if ($('#apex-suggestion-box').css('display') !== 'none') {\r\n $(\"#apex-suggestion-box\").css(\"display\", \"none\");\r\n $(\".apex_search_area input#searchquery\").focus();\r\n $(\".apex_search_area input#searchquery\").attr(\"aria-activedescendant\", \"\");\r\n }\r\n else if ($('#abOverlayBox').is(':visible')) {\r\n $('span#abOverlayClose').click();\r\n }\r\n else if ($('#apexHelpContainer .apex_header div.dropdown-content').is(':visible')) {\r\n $('#apexHelpContainer span.dropdown_moreoptions').click();\r\n $('#apexHelpContainer span.dropdown_moreoptions').focus();\r\n }\r\n else if ($('#apex_platform_chrome').is(':visible')) {\r\n $(\"#apexHelpContainer .apex_header .close_button\").click();\r\n }\r\n\r\n }\r\n\r\n if (e.which === 13) {\r\n if (document.activeElement.id == \"support-callme-text\") {\r\n if (e.stopPropagation) { e.stopPropagation() };\r\n $('#apexSupportOption li.nav-support-options-callme #support-callme-text').trigger('click');\r\n }\r\n }\r\n }\r\n\r\n var dropdownHideHandler = function (e) {\r\n if (dropDownBusy) { dropDownBusy = false; return true; }\r\n //if (e.preventDefault) { e.preventDefault(); };\r\n var elem = $('#apexHelpContainer .apex_header div.dropdown-content');\r\n if (isVisible(elem)) {\r\n elem.hide();\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").attr(\"aria-expanded\", \"false\");\r\n };\r\n };\r\n\r\n var bindChromeClickEvents = function () {\r\n\r\n bindChromeSearchClickEvents();\r\n\r\n $(\"#apexHelpContainer .apex_search_area span.back_button\").unbind('click');\r\n $(\"#apexHelpContainer .apex_search_area span.back_button\").bind('click', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n getContentForBackButton();\r\n });\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").unbind('click');\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").bind('click', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n $('input#searchquery').blur();\r\n $('#apexHelpContainer .apex_header div.dropdown-content').toggle();\r\n dropDownBusy = true;\r\n if ($('#apexHelpContainer .apex_header div.dropdown-content').is(\":visible\") == true) {\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").attr(\"aria-expanded\", \"true\");\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a\").first().focus();\r\n var firstElem = $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a:first\");\r\n var lastElem = $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a:visible:last\");\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n }\r\n else {\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").attr(\"aria-expanded\", \"false\");\r\n }\r\n });\r\n\r\n $('#apexHelpContainer .apex_header span.dropdown_moreoptions').unbind('keypress');\r\n $('#apexHelpContainer .apex_header span.dropdown_moreoptions').bind('keypress', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if (e.which === 13) {\r\n $('#apexHelpContainer .apex_header div.dropdown-content').toggle();\r\n dropDownBusy = true;\r\n var firstElem = $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a:first\");\r\n var lastElem = $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a:visible:last\");\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n if ($('#apexHelpContainer .apex_header div.dropdown-content').is(\":visible\") == true) {\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").attr(\"aria-expanded\", \"true\");\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a\").first().focus();\r\n }\r\n else {\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").attr(\"aria-expanded\", \"false\");\r\n }\r\n }\r\n });\r\n\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").unbind('keyup');\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").bind('keyup', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if (e.stopPropagation) { e.stopPropagation() };\r\n if ($(\"#apexHelpContainer .apex_header span.dropdown_moreoptions .dropdown-content\").is(\":visible\") == true) {\r\n\r\n if (e.which === 27) {\r\n $('#apexHelpContainer .apex_header div.dropdown-content').toggle();\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions\").attr(\"aria-expanded\", \"false\");\r\n $(this).focus();\r\n }\r\n }\r\n });\r\n\r\n $(\"#apexHelpContainer\").unbind('click', dropdownHideHandler);\r\n $(\"#apexHelpContainer\").bind('click', dropdownHideHandler);\r\n\r\n var onClose = function() {\r\n if (opener != null) {\r\n $(opener).focus();\r\n }\r\n\r\n if (window.apex_glb && typeof window.apex_glb.onRailViewClose === 'function') {\r\n window.apex_glb.onRailViewClose(opener);\r\n }\r\n\r\n if ($(\"#apex-suggestion-box\").is(\":visible\") == true) {\r\n $(\"#apex-suggestion-box\").css(\"display\", \"none\");\r\n $(\"#announce-suggestions\").html(\"\");\r\n $(\".apex_search_area input#searchquery\").attr(\"aria-activedescendant\", \"\");\r\n }\r\n }\r\n\r\n var closeHelpView = function() {\r\n window.ab_glb.HelpOpened = false;\r\n $('#apexHelpContainer').attr('style', null);\r\n showHelp(false);\r\n onClose();\r\n ApexCookieHandler.removeCookie($('#railHelpInputs').attr('ApexSessionId'));\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, apex_glb.CurrentQuery, '', '', 'close', viewId);\r\n }\r\n\r\n $(\"#apexHelpContainer .apex_header span.close_button\").unbind('click');\r\n $(\"#apexHelpContainer .apex_header span.close_button\").bind('click', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n closeHelpView();\r\n });\r\n\r\n window.apex_glb.closeHelpView = closeHelpView;\r\n\r\n $(\"#apexHelpContainer .apex_header span.close_button, #apexHelpContainer .apex_search_area span.back_button, #apexHelpContainer .apex_search_area div.dropdown-content a\").unbind('keypress');\r\n $(\"#apexHelpContainer .apex_header span.close_button, #apexHelpContainer .apex_search_area span.back_button, #apexHelpContainer .apex_search_area div.dropdown-content a\").bind('keypress', function (event) {\r\n if (event.preventDefault) { event.preventDefault(); };\r\n if (event.which === 13) {\r\n $(event.target).trigger('click');\r\n }\r\n });\r\n\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a\").off('keypress');\r\n $(\"#apexHelpContainer .apex_header span.dropdown_moreoptions a\").on('keypress', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if (e.which === 13) {\r\n $(e.target).trigger('click');\r\n }\r\n });\r\n\r\n $('#apexHelpContainer #spinOffWindow').off('click');\r\n $('#apexHelpContainer #spinOffWindow').on('click', spinOffNewWindow);\r\n\r\n $('#apexHelpContainer #copyTopic').unbind('click');\r\n $('#apexHelpContainer #copyTopic').bind('click', copyTopicHandler);\r\n\r\n $(\"#apexHelpContainer .apex_support_area span.support_label, #apexHelpContainer .apex_support_area .support img\").unbind('click');\r\n $(\"#apexHelpContainer .apex_support_area span.support_label, #apexHelpContainer .apex_support_area .support img\").bind('click', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n ApexEmbedLogger.Instrument('help', apex_glb.Project, apex_glb.Language, apex_glb.CurrentQuery, '', '', 'support', viewId);\r\n var url = $('#apexHelpContainer #apex_support_area .support').attr('url');\r\n if (url != '') {\r\n window.open(url, '_apexSupport');\r\n }\r\n })\r\n\r\n $(\"#apexHelpContainer .apex_support_area span.support_label, #apexHelpContainer .apex_support_area .support img\").unbind('keypress');\r\n $(\"#apexHelpContainer .apex_support_area span.support_label, #apexHelpContainer .apex_support_area .support img\").bind('keypress', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); };\r\n if (e.which === 13) {\r\n $(e.target).trigger('click');\r\n }\r\n })\r\n\r\n $(document).off('keydown', keydownEscHandler);\r\n //$(document).on('keydown', keydownEscHandler);\r\n document.addEventListener('keydown', function (e) {\r\n keydownEscHandler.call(e.target, e);\r\n }, true);\r\n\r\n\r\n\r\n $(window).resize(function () {\r\n setScrollBar($(this).height());\r\n if (window.ab_glb.HelpOpened == true) {\r\n\r\n var bottomOffset = 10;\r\n var footerHeight = $(\".navbar-footer\").length ? $(\".navbar-footer\").height() : 35;\r\n var contentHeight = $(window).height() - $(\".apex_header_area\").outerHeight() - ($(\"#apexSupportOption\").outerHeight() || 0) - parseInt($(\"#apexHelpContainer\").css(\"top\")) - footerHeight - bottomOffset;\r\n var heightStr = contentHeight + \"px\";\r\n if ($(window).height() < 920 && apex_glb.Project.toLowerCase() != 'ucm_secured') {\r\n $(\"#railContent\").css(\"height\", heightStr);\r\n }\r\n\r\n setApexHelpContainerPosition();\r\n }\r\n\r\n });\r\n bindContentClickEvents();\r\n bindPlatformEvents();\r\n\r\n $('#apex_dropdown_moreoptions').off('focus').on('focus', () => {\r\n const $dropdown = $('#apexHelpContainer .dropdown_moreoptions .dropdown-content');\r\n if ($dropdown.is(':visible')) {\r\n $('#apexHelpContainer .dropdown_moreoptions .dropdown-content').hide();\r\n }\r\n });\r\n };\r\n\r\n var showHelp = function (show) {\r\n\r\n if (show) {\r\n\r\n $('#apexHelpContainer').show();\r\n\r\n var bottomOffset = 10;\r\n var footerHeight = $(\".ba-content-footer\").length ? $(\".ba-content-footer\").height() : 33;\r\n var contentHeight = $(window).height() - $(\".apex_header_area\").outerHeight() - ($(\"#apexSupportOption\").outerHeight() || 0) - parseInt($(\"#apexHelpContainer\").css(\"top\")) - footerHeight - bottomOffset;\r\n\r\n if ($(window).height() < 920 && apex_glb.Project.toLowerCase() != 'ucm_secured') {\r\n $(\"#railContent\").css(\"height\", `${contentHeight}px`);\r\n }\r\n\r\n if (window.ab_glb.HelpOpened == false) {\r\n\r\n window.ab_glb.HelpOpened = true;\r\n }\r\n\r\n setApexHelpContainerPosition();\r\n\r\n $('.apex_search_area input#searchquery').focus();\r\n\r\n var firstElementNoSupport = $(\"#apex_platform_chrome #apex_back_button\").hasClass(\"disabled\") || !$(\"#apex_platform_chrome #apex_back_button\").is(\":visible\") ? $(\"#apex_platform_chrome #apex_dropdown_moreoptions\") : $(\"#apex_platform_chrome #apex_back_button\");\r\n\r\n var lastElementNoSupport = \"\";\r\n if (!$(\"#apexHelpContainer #apex_support_area\").is(\":visible\") && !$(\"#apexHelpContainer #apexSupportOption\").is(\":visible\")) {\r\n lastElementNoSupport = findLastVisibleElement($('#apexHelpContainer'));\r\n }\r\n\r\n var firstElem = !$(\"#apexHelpContainer #apex_support_area\").is(\":visible\") && !$(\"#apexHelpContainer #apexSupportOption\").is(\":visible\") ? $(firstElementNoSupport) : $(\"#apex_platform_chrome #apex_dropdown_moreoptions\");\r\n var lastElem =\r\n !$(\"#apexHelpContainer #apex_support_area\").is(\":visible\") && !$(\"#apexHelpContainer #apexSupportOption\").is(\":visible\") ? $(lastElementNoSupport) :\r\n $('.nav-support-options-menu #support-askcommunity-text').is(\":visible\") ? $('.nav-support-options-menu #support-askcommunity-text') :\r\n $('.nav-support-options-menu #support-callme-text').is(\":visible\") ? $('.nav-support-options-menu #support-callme-text') :\r\n $('.nav-support-options-menu #support-phone-text').is(\":visible\") ? $('.nav-support-options-menu #support-phone-text') :\r\n $('.nav-support-options-menu #support-chat-text').is(\":visible\") ? $('.nav-support-options-menu #support-chat-text') :\r\n $('.nav-support-options-menu #support-phone-text')\r\n ;\r\n\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n }\r\n else {\r\n $('#apexHelpContainer').hide();\r\n }\r\n\r\n };\r\n\r\n var setApexHelpContainerPosition = function () {\r\n var leftOffset = 10;\r\n var leftPosition = Math.max(leftOffset, window.innerWidth - 390)\r\n $('#apexHelpContainer').css(\"left\", leftPosition);\r\n var topPosition = 70;\r\n if ($(window).height() < 250 && apex_glb.Project.toLowerCase() != 'ucm_secured') {\r\n topPosition = 10;\r\n }\r\n $('#apexHelpContainer').css(\"top\", topPosition);\r\n }\r\n\r\n var getApexHtmlForSupportOptions = function () {\r\n var tabIndex = 0;\r\n if (/Edge/.test(navigator.userAgent)) {\r\n tabIndex = 1;\r\n }\r\n var apexHtml = [\r\n '
',\r\n '
',\r\n '
',\r\n ' ',\r\n '\t
',\r\n '\t\t\t\t Home',\r\n '\t\t\t\t New to bing ads?',\r\n '\t\t\t\t Read article in browser',\r\n '\t\t\t\t Copy article URL',\r\n '\t
',\r\n '
',\r\n '
',\r\n '
',\r\n '
',\r\n '
',\r\n ' ',\r\n '
',\r\n '
',\r\n ' ',\r\n '\t ',\r\n '\t
',\r\n '
',\r\n '
',\r\n '
',\r\n '
',\r\n '
Help on this Page
',\r\n '
',\r\n '

Mon - Fri: 6 A.M. - 6 P.M. (Pacific Time)
Sat: 8 A.M. - 6 P.M. (Pacific Time)

',\r\n '

Mon - Fri: 6 A.M. - 6 P.M. (Pacific Time)
Sat: 8 A.M. - 6 P.M. (Pacific Time)
1-800-777-8889

',\r\n '
    ',\r\n '\t
  • ',\r\n '\t\t
    Start a Live Chat!|',\r\n '\t
    Hours
  • ',\r\n '\t
  • ',\r\n '
    Call Support',\r\n '
  • ',\r\n '\t
  • ',\r\n '\t\t
    Request a call back',\r\n '\t
  • ',\r\n '\t
  • ',\r\n '\t\t
    Ask Community',\r\n '\t
  • ',\r\n '
',\r\n '
'\r\n ];\r\n return apexHtml;\r\n }\r\n\r\n var getLiveChatString = function () {\r\n var retval = \"\";\r\n try {\r\n if (window.ab_glb.SupportOptions.ShowLivePerson == true) {\r\n retval = \"Start a Live chat!\";\r\n retval = apex_glb.LocStrings.LiveOn == undefined ? retval : apex_glb.LocStrings.LiveOn;\r\n $(\"#apexSupportOption li.nav-support-options-chat\").removeClass(\"off\").addClass(\"on\");\r\n }\r\n else {\r\n retval = \"Live chat is not available!\"\r\n retval = apex_glb.LocStrings.LiveOff == undefined ? retval : apex_glb.LocStrings.LiveOff;\r\n $(\"#apexSupportOption li.nav-support-options-chat\").removeClass(\"on\").addClass(\"off\");\r\n }\r\n $(\"#apexSupportOption li.nav-support-options-chat #support-chat-text\").html(retval);\r\n $(\"#apexSupportOption li.nav-support-options-chat #support-chat-text\").attr('aria-label', retval);\r\n $('.nav-support-options-phone .supporttip.phone').html(apex_glb.LocStrings.Hours);\r\n }\r\n catch (e) {\r\n $(\"#apexSupportOption li.nav-support-options-chat\").removeClass(\"on\").addClass(\"off\");\r\n $(\"#apexSupportOption li.nav-support-options-chat #support-chat-text\").html(retval);\r\n $(\"#apexSupportOption li.nav-support-options-chat #support-chat-text\").attr('aria-label', retval);\r\n $('.nav-support-options-phone .supporttip.phone').html(\"Hours\");\r\n }\r\n };\r\n\r\n function hideSupportTip(e) {\r\n $('span.supporttiptext').css('visibility', 'hidden');\r\n document.removeEventListener('click', hideSupportTip, true);\r\n }\r\n\r\n var addSupportOptionsValuesAndEvents = function () {\r\n $('div.supporttip, #support-phone-text, span.supporttiptext').unbind(\"click\")\r\n $('div.supporttip, #support-phone-text, span.supporttiptext').bind(\"click\", function (event) {\r\n if (event.stopPropagation) { event.stopPropagation() };\r\n\r\n var cls = 'chat';\r\n if ($(event.target).hasClass(cls) == false) {\r\n cls = 'phone';\r\n }\r\n\r\n if ($('span.supporttiptext.' + cls).css('visibility') == 'hidden') {\r\n $('span.supporttiptext').css('visibility', 'hidden');\r\n $('span.supporttiptext.' + cls).css('visibility', 'visible');\r\n\r\n /** This section could be moved into its own function **/\r\n document.addEventListener('click', hideSupportTip, true);\r\n //$(document.body).on('click', function (e) {\r\n // if (e.stopPropagation) { e.stopPropagation() };\r\n // var $body = $(this);\r\n // $('span.supporttiptext').css('visibility', 'hidden');\r\n // $body.off('click');\r\n //});\r\n\r\n $(\"#apexHelpContainer .apex_content_area #railContent\").off('scroll', hideSupportTip).on('scroll', hideSupportTip);\r\n }\r\n else {\r\n $('span.supporttiptext').css('visibility', 'hidden');\r\n $(document.body).off('click');\r\n }\r\n\r\n });\r\n\r\n $('div.supporttip, #support-phone-text, span.supporttiptext').keydown(function (e) {\r\n var keycode = (e.keyCode ? e.keyCode : (e.which ? e.which : e.charCode));\r\n if (keycode === 13) { // keycode for enter key\r\n if (e.preventDefault) { e.preventDefault(); }\r\n $(e.target).trigger('click');\r\n }\r\n });\r\n\r\n $('#apexSupportOption li.nav-support-options-chat div.chat, #apexSupportOption li.nav-support-options-chat .imageChat span:last').hide();\r\n\r\n //show live person\r\n var element = \"#apexSupportOption li.nav-support-options-chat #support-chat-text\";\r\n if (window.ab_glb.SupportOptions.ShowLivePerson == true) {\r\n $(element).unbind('click').bind('click', function (event) {\r\n if (event.stopPropagation) { event.stopPropagation() };\r\n if ($('.livechat-text-block, .ms-support-chat__text-block').length > 0) {\r\n $('.livechat-text-block, .ms-support-chat__text-block').trigger('click');\r\n }\r\n else {\r\n if (window.console && window.console.log)\r\n window.console.log(\"Start Live person here\");\r\n\r\n }\r\n });\r\n\r\n $(element).unbind('keydown').bind('keydown', function (e) {\r\n var keycode = (e.keyCode ? e.keyCode : (e.which ? e.which : e.charCode));\r\n if (keycode === 13) { // keycode for enter key\r\n if (e.stopPropagation) { e.stopPropagation() };\r\n if ($('.livechat-text-block, .ms-support-chat__text-block').length > 0) {\r\n $('.livechat-text-block, .ms-support-chat__text-block').trigger('click');\r\n }\r\n else {\r\n if (window.console && window.console.log)\r\n window.console.log(\"Start Live person here\");\r\n\r\n }\r\n }\r\n });\r\n }\r\n\r\n //show phone/email\r\n if (window.ab_glb.SupportOptions.Phone != null && window.ab_glb.SupportOptions.Phone !== \"\") {\r\n var line3 = window.ab_glb.SupportOptions.Phone;\r\n if (window.ab_glb.SupportOptions.PhoneInterval != null && window.ab_glb.SupportOptions.PhoneInterval.length == 2) {\r\n var line1 = window.ab_glb.SupportOptions.PhoneInterval[0].Days + ' ' + window.ab_glb.SupportOptions.PhoneInterval[0].Hours + ' ' + window.ab_glb.SupportOptions.PhoneTimeZone;\r\n var line2 = window.ab_glb.SupportOptions.PhoneInterval[1].Days + ' ' + window.ab_glb.SupportOptions.PhoneInterval[1].Hours + ' ' + window.ab_glb.SupportOptions.PhoneTimeZone;\r\n\r\n $('#apexContentMain .supporttiptext.phone').html('

' + line3 + '
' + line1 + '
' + line2 + '

');\r\n }\r\n else if (window.ab_glb.SupportOptions.PhoneInterval != null && window.ab_glb.SupportOptions.PhoneInterval.length == 1) {\r\n var line1 = window.ab_glb.SupportOptions.PhoneInterval[0].Days + ' ' + window.ab_glb.SupportOptions.PhoneInterval[0].Hours + ' ' + window.ab_glb.SupportOptions.PhoneTimeZone;\r\n $('#apexContentMain .supporttiptext.phone').html('

' + line3 + '
' + line1 + '

');\r\n }\r\n $('#apexContentMain .supporttiptext.phone').attr('aria-label', $('#apexContentMain .supporttiptext.phone').html());\r\n try {\r\n var ret1 = \"Call Support\";\r\n ret1 = apex_glb.LocStrings.CallSupport == undefined ? ret1 : apex_glb.LocStrings.CallSupport;\r\n $('#apexSupportOption li.nav-support-options-phone #support-phone-text').html(ret1);\r\n $('#apexSupportOption li.nav-support-options-phone #support-phone-text').attr('aria-label', ret1);\r\n\r\n }\r\n catch (e) { }\r\n }\r\n else if (window.ab_glb.SupportOptions.Email != null && window.ab_glb.SupportOptions.Email !== \"\") {\r\n var line1 = window.ab_glb.SupportOptions.EmailInterval[0].Days + ' ' + window.ab_glb.SupportOptions.EmailInterval[0].Hours + window.ab_glb.SupportOptions.EmailTimeZone;\r\n if ($('#apexSupportOption li.nav-support-options-phone div').hasClass('imageEmail') == false) {\r\n $('#apexSupportOption li.nav-support-options-phone div.imagePhone').removeClass('imagePhone').addClass('imageEmail')\r\n }\r\n $('#apexContentMain .supporttiptext.phone').html('

' + line1 + '

');\r\n //$('#apexSupportOption li.nav-support-options-phone')\r\n $('#apexSupportOption li.nav-support-options-phone #support-phone-text').html(window.ab_glb.SupportOptions.Email);\r\n $('#apexSupportOption li.nav-support-options-phone #support-phone-text').attr('aria-label', window.ab_glb.SupportOptions.Email);\r\n } else {\r\n $('#apexSupportOption li.nav-support-options-phone').hide();\r\n }\r\n\r\n //show askCommunity\r\n if (window.ab_glb.SupportOptions.AskCommunity != null && window.ab_glb.SupportOptions.AskCommunity !== \"\") {\r\n try {\r\n $('#apexSupportOption li.nav-support-options-askcommunity').show();\r\n $('#apexSupportOption li.nav-support-options-askcommunity #support-askcommunity-text').attr('url', window.ab_glb.SupportOptions.AskCommunity)\r\n\r\n var ret1 = \"Ask Community\";\r\n ret1 = window.apex_glb.LocStrings.Forum == undefined ? ret1 : window.apex_glb.LocStrings.Forum;\r\n $('#apexSupportOption li.nav-support-options-askcommunity #support-askcommunity-text').html(ret1);\r\n $('#apexSupportOption li.nav-support-options-askcommunity #support-askcommunity-text').attr('aria-label', ret1);\r\n\r\n }\r\n catch (e) { }\r\n var eleAskCommunity = \"#apexSupportOption li.nav-support-options-askcommunity #support-askcommunity-text\";\r\n\r\n $(eleAskCommunity).unbind('click').bind('click', function (event) {\r\n if (event.stopPropagation) { event.stopPropagation() };\r\n spinOffNewWindow(event);\r\n });\r\n\r\n $(eleAskCommunity).unbind('keydown').bind('keydown', function (e) {\r\n var keycode = (e.keyCode ? e.keyCode : (e.which ? e.which : e.charCode));\r\n if (keycode === 13) { // keycode for enter key\r\n if (event.stopPropagation) { event.stopPropagation() };\r\n spinOffNewWindow(e);\r\n }\r\n });\r\n }\r\n else {\r\n $('#apexSupportOption li.nav-support-options-askcommunity').hide();\r\n }\r\n if ($('#requestCallTrigger').length == 1) {\r\n if (isVisible($('#requestCallTrigger'))) {\r\n //if ($('#requestCallTrigger').is(':visible')) {\r\n $('#apexSupportOption li.nav-support-options-callme').css('display', 'block');\r\n if (isVisible($('#apexSupportOption li.nav-support-options-phone'))) {\r\n if (isVisible($('#apexSupportOption li.nav-support-options-askcommunity'))) {\r\n $('#apexSupportOption li.nav-support-options-askcommunity').css('display', 'block');\r\n $('#apexSupportOption li.nav-support-options-phone, #apexSupportOption li.nav-support-options-chat, #apexSupportOption li.nav-support-options-askcommunity').css('width', '25%');\r\n }\r\n else {\r\n $('#apexSupportOption li.nav-support-options-phone, #apexSupportOption li.nav-support-options-chat').css('width', '33%');\r\n }\r\n }\r\n else {\r\n if (isVisible($('#apexSupportOption li.nav-support-options-askcommunity'))) {\r\n $('#apexSupportOption li.nav-support-options-askcommunity').css('display', 'block');\r\n $('#apexSupportOption li.nav-support-options-chat, #apexSupportOption li.nav-support-options-callme, #apexSupportOption li.nav-support-options-askcommunity').css('width', '33%');\r\n }\r\n else {\r\n $('#apexSupportOption li.nav-support-options-callme').css('width', '50%');\r\n }\r\n }\r\n $('#apexContentMain .supporttiptext.v2').css(\"left\", '-31px');\r\n\r\n var eleCallme = \"#apexSupportOption li.nav-support-options-callme #support-callme-text\";\r\n $(eleCallme).unbind('click').bind('click', function (event) {\r\n if (event.stopPropagation) { event.stopPropagation() };\r\n $('#requestCallTrigger').trigger('click');\r\n });\r\n\r\n $(eleCallme).unbind('keydown').bind('keydown', function (e) {\r\n var keycode = (e.keyCode ? e.keyCode : (e.which ? e.which : e.charCode));\r\n if (keycode === 13) { // keycode for enter key\r\n if (event.stopPropagation) { event.stopPropagation() };\r\n $('#requestCallTrigger').trigger('click');\r\n }\r\n });\r\n try {\r\n var retval = \"Request a call back\";\r\n retval = apex_glb.LocStrings.ScheduleCall == undefined ? retval : apex_glb.LocStrings.ScheduleCall;\r\n $(\"#apexSupportOption li.nav-support-options-callme #support-callme-text\").html(retval);\r\n $(\"#apexSupportOption li.nav-support-options-callme #support-callme-text\").attr('aria-label', retval);\r\n\r\n }\r\n catch (e) { }\r\n }\r\n\r\n }\r\n }\r\n\r\n var getApexHtmlForNoSupportOptions = function () {\r\n var apexHtml = [\r\n '
',\r\n '
',\r\n '
',\r\n ' ',\r\n '\t
',\r\n '\t\t\t\t Home',\r\n '\t\t\t\t New to bing ads?',\r\n '\t\t\t\t Video Gallery',\r\n '\t\t\t\t Read article in browser',\r\n '\t\t\t\t Copy article URL',\r\n '\t
',\r\n '
',\r\n '
',\r\n '
',\r\n '
',\r\n '
',\r\n ' ',\r\n '
',\r\n '
',\r\n ' ',\r\n '\t ',\r\n '\t
',\r\n '
',\r\n '
',\r\n '
',\r\n '
',\r\n '
Help on this Page
',\r\n '
',\r\n '
CONTACT US
',\r\n '
',\r\n '
',\r\n '
'\r\n ];\r\n return apexHtml;\r\n }\r\n\r\n var getApexUCMHtmlForNoSupportOptions = function () {\r\n var apexHtml = [\r\n '
',\r\n '
',\r\n '
',\r\n ' ',\r\n ' ',\r\n '\t
',\r\n '\t\t\t\t Home',\r\n '\t\t\t\t New to bing ads?',\r\n '\t\t\t\t Video Gallery',\r\n '\t\t\t\t Read article in browser',\r\n '\t\t\t\t Copy article URL',\r\n '\t
',\r\n '
',\r\n ' ',\r\n ' ',\r\n '
',\r\n '
',\r\n '
',\r\n '

UCM Help

',\r\n '
',\r\n '
',\r\n '
',\r\n ' ',\r\n '\t ',\r\n '\t ',\r\n ' ',\r\n '
',\r\n '
',\r\n '
Help on this Page
',\r\n '
',\r\n '
CONTACT US
',\r\n '
',\r\n '
',\r\n '
'\r\n ];\r\n return apexHtml;\r\n }\r\n\r\n var buildRailHelpLayout = function () {\r\n var apexHtml = [];\r\n //var apexHtml = [\r\n // '
',\r\n // '
',\r\n // '
',\r\n // '
',\r\n // '',\r\n // '
',\r\n // '
Help on this Page

',\r\n // '
',\r\n // '
CONTACT US
'\r\n //];\r\n\r\n //if (window.ab_glb.SupportOptions == null) {\r\n // apexHtml = getApexHtmlForNoSupportOptions()\r\n //}\r\n //else {\r\n // window.ab_glb.ContentRootElement = '#railContentBody'\r\n // apexHtml = getApexHtmlForSupportOptions();\r\n //}\r\n\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n $('#railHelpInputs').attr('ViewName', viewId);\r\n $(railHtmlRoot).hide();\r\n $(railHtmlRoot).remove('.apex_platform_chrome');\r\n $(railHtmlRoot).attr('role', 'dialog');\r\n $(railHtmlRoot).attr('aria-label', apex_glb.LocStrings.FloatingHelpPanel);\r\n //$(apexHtml.join('')).appendTo(railHtmlRoot);\r\n\r\n // If else UCM - insert HTML into #apexHelpPanel container\r\n if ($(\"#apexHelpPanel\").length == 0) {\r\n if (ab_glb.SupportOptions == null) {\r\n apexHtml = getApexHtmlForNoSupportOptions();\r\n }\r\n else {\r\n ab_glb.ContentRootElement = '#railContentBody'\r\n apexHtml = getApexHtmlForSupportOptions();\r\n }\r\n $(apexHtml.join('')).appendTo(railHtmlRoot);\r\n }\r\n else {\r\n $(railHtmlRoot).show();\r\n apexHtml = getApexUCMHtmlForNoSupportOptions();\r\n var ucmABHtml = '
' + apexHtml.join('') + '
';\r\n $('#apexHelpPanel').html(ucmABHtml);\r\n }\r\n\r\n if (apex_glb.Authorize == true) {\r\n $(railHtmlRoot + ' #spinOffWindow, ' + railHtmlRoot + ' #copyTopic').hide();\r\n }\r\n bindChromeClickEvents();\r\n //debugger;\r\n if ($('#apex-suggestion-box').length == 0 && apex_glb.Suggestions !== null) {\r\n try {\r\n $('#searchquery').suggestionBox({\r\n filter: true,\r\n widthAdjustment: -8,\r\n leftOffset: 0,\r\n topOffset: 1,\r\n }).addSuggestions(apex_glb.Suggestions);\r\n } catch (ex) { };\r\n }\r\n //add RTL specific style\r\n addRTLSpecificStyles();\r\n if (window.ab_glb.SupportOptions !== null) {\r\n if (typeof window.ab_glb.SupportOptions.template === 'string') {\r\n $('#apexSupportOption').html(window.ab_glb.SupportOptions.template);\r\n } else {\r\n addSupportOptionsValuesAndEvents();\r\n }\r\n }\r\n\r\n if (window.apex_glb.renderSearchInputIcon) {\r\n window.apex_glb.renderSearchInputIcon($('.apex_search_icon').get(0));\r\n }\r\n //showHelp(true);\r\n };\r\n\r\n //\r\n // private function for debugging\r\n //\r\n var debug = function ($obj) {\r\n if (window.console && window.console.log)\r\n window.console.log($obj);\r\n };\r\n\r\n var replaceAll = function (input, replace, with_this) {\r\n return input.replace(new RegExp(replace, 'g'), with_this);\r\n };\r\n\r\n var isNumber = function (n) {\r\n return parseFloat(n) == n;\r\n };\r\n\r\n var getViewName = function () {\r\n var viewname = \"Default\";\r\n var lochref = location.href;\r\n var indexHash = lochref.indexOf('#', 0);\r\n var pathname = location.pathname;\r\n if (indexHash >= 0) {\r\n var indexQn = lochref.indexOf('?', indexHash);\r\n pathname = lochref.substring(indexHash, indexQn);\r\n }\r\n\r\n var index = pathname.indexOf('.aspx', 0);\r\n var paths;\r\n var length;\r\n var minLength = 2;\r\n //MVC \r\n if (index < 0) {\r\n paths = pathname.split('/');\r\n length = paths.length;\r\n for (var i = length - 1; i > 0; i--) {\r\n if (isNumber(paths[i])) {\r\n paths.splice(i, 1);\r\n }\r\n }\r\n length = paths.length;\r\n }\r\n else { //ASPX\r\n var aspxname = pathname.substr(0, index);\r\n paths = aspxname.split('/');\r\n length = paths.length;\r\n minLength = 1;\r\n }\r\n\r\n if (length > minLength) {\r\n if ($.trim(paths[length - 2]) != \"\") {\r\n viewname = paths[length - 2];\r\n if ($.trim(paths[length - 1]) != \"\") {\r\n viewname = viewname + '_' + paths[length - 1];\r\n };\r\n } else if ($.trim(paths[length - 1]) != \"\") {\r\n viewname = paths[length - 1];\r\n };\r\n }\r\n else if (length > (minLength - 1)) {\r\n if ($.trim(paths[length - 1]) != \"\") {\r\n viewname = paths[length - 1];\r\n };\r\n }\r\n var viewIdHtml = '
';\r\n if ($('[RailViewID]')[0] == undefined) $('body').append(viewIdHtml);\r\n return viewname;\r\n };\r\n\r\n\r\n var getGlobalHelpInformation = function () {\r\n window.ab_glb.ApexAPIEndPoint = $.trim($(\"#railHelpInputs\").attr(\"helpurl\"));\r\n window.ab_glb.CDNEndPoint = $.trim($(\"#railHelpInputs\").attr(\"cdnEndPoint\"));\r\n window.ab_glb.HelpProduct = $.trim($(\"#railHelpInputs\").attr(\"Product\"));\r\n window.ab_glb.HelpProject = $.trim($(\"#railHelpInputs\").attr(\"Project\"));\r\n window.ab_glb.HelpMarket = $.trim($(\"#railHelpInputs\").attr(\"Market\"));\r\n window.ab_glb.SupportMarket = $.trim($(\"#railHelpInputs\").attr(\"SupportMarket\")); //window.ab_glb.HelpMarket;\r\n window.ab_glb.HelpLanguage = $.trim($(\"#railHelpInputs\").attr(\"Language\"));\r\n\r\n if (window.ab_glb.HelpProject == undefined || $.trim(window.ab_glb.HelpProject) == \"\") {\r\n\r\n window.ab_glb.HelpProject = \"\";\r\n }\r\n if ((window.ab_glb.HelpProduct == undefined || $.trim(window.ab_glb.HelpProduct) == \"\") && $.trim(window.ab_glb.HelpProject) != \"\") {\r\n\r\n window.ab_glb.HelpProduct = window.ab_glb.HelpProject;\r\n }\r\n if (window.ab_glb.HelpLanguage == undefined || $.trim(window.ab_glb.HelpLanguage) == \"\") {\r\n window.ab_glb.HelpLanguage = window.ab_glb.HelpMarket;\r\n }\r\n if (window.ab_glb.SupportMarket == undefined || $.trim(window.ab_glb.SupportMarket) == \"\") {\r\n window.ab_glb.SupportMarket = window.ab_glb.HelpMarket;\r\n }\r\n window.ab_glb.HelpSku = $.trim($(\"#railHelpInputs\").attr(\"Sku\"));\r\n\r\n // initialize with default loc strings\r\n var locStr = '{\"LocStrings\":{\"About\":\"About this page\",\"Help\":\"Help\", \"Community\":\"Community\",\"How\":\"How do I?\",\"Search\":\"How can we help?\",\"Videos\":\"Watch a video\",\"New\":\"Whats New\",\"RCQ\":\"Everybody asking(RCQ)\",\"Issues\":\"Known Issues\",\"BingYahoo\":\"Will my ads display on both Bing and Yahoo?\",\"Chat\":\"Contact support\",\"Support\":\"Support\",\"Loading\":\"Loading\",\"More\":\"More...\",\"Less\":\"Less...\",\"Rating1\":\"Absolutely awful!\",\"Rating2\":\"Really? You can do better…\",\"Rating3\":\"It’s alright.\",\"Rating4\":\"Nicely done.\",\"Rating5\":\"Pure genius!\",\"QueryDefault\":\"Search Help\",\"Yes\":\"Yes\",\"No\":\"No\",\"DidHelpYou\":\"Did this help you?\", \"ShowAB\":\"Show Answer Bar\", \"HideAB\":\"Hide Answer Bar\", \"Content\":\"content\", \"Video\":\"video\", \"Back\":\"Back\",\"Next\":\"Forward\", \"OF\":\"of\", \"CopyUrl\":\"Copy Url\", \"EmailUrl\":\"Email Url\", \"Pinned\":\"Keep on top\", \"UnPinned\":\"Not on top\",\"CommunityText\":\"Community\", \"Header\":\"Bing Ads Help\",\"PrintTopic\":\"Print article\",\"GetStarted\":\"Get Started\",\"CommunityFooter\":\"Not finding what you are looking for? Check out the {0}Bing Ads Community blog and forums.{1}\"}}';\r\n var data = null;\r\n if (typeof JSON != 'undefined') {\r\n data = jQuery.parseJSON(locStr);\r\n }\r\n else {\r\n data = eval(\"(\" + locStr + \")\");\r\n }\r\n window.ab_glb.LocStrings = data.LocStrings;\r\n\r\n enableRTLLanguage();\r\n PopupController.GetGlobalHelpInformation()\r\n };\r\n\r\n var isRailBarEnabled = function () {\r\n\r\n if ($('input#railHelpInputs').is('.railHelpInputs')) {\r\n var enable = $.trim($(\"#railHelpInputs\").attr(\"Enable\"));\r\n if ((enable != undefined) && (enable != null)) {\r\n return (enable.toLowerCase() == \"true\");\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n else {\r\n return false;\r\n }\r\n };\r\n\r\n var setBrowserSpecificClassToRoot = function () {\r\n //add custom CSS overrides for browser compatibility\r\n //if ($.browser.msie) {\r\n // var msieversion = parseInt($.browser.version);\r\n // if (msieversion < 9) {\r\n // $(railHtmlRoot).addClass(\"IE\" + msieversion);\r\n // }\r\n //}\r\n //else if ($.browser.webkit) {\r\n // $(railHtmlRoot).addClass(\"WK\");\r\n //}\r\n //else if ($.browser.mozilla) {\r\n // $(railHtmlRoot).addClass(\"FF\");\r\n //}\r\n $(railHtmlRoot).addClass(\"WK\");\r\n };\r\n\r\n var addRTLSpecificStyles = function () {\r\n if (window.ab_glb.IsBIDIMarket == false) return false;\r\n var railHelpRtlCssPath = window.ab_glb.CDNEndPoint + \"/resources/content/styles/apex.ar.css?v=2.00128\";\r\n var headId = $('head')[0];\r\n var link = '';\r\n $(link).appendTo(headId);\r\n return false;\r\n };\r\n\r\n var linkStylesFromCSSFiles = function () {\r\n var railHelpCssPath = window.ab_glb.CDNEndPoint + \"/resources/content/styles/apex.embed.v3.min.css?v=3.00.0007\";\r\n var headId = $('head')[0];\r\n var link = '';\r\n $(link).appendTo(headId);\r\n\r\n //add class for root element for styles\r\n setStylesForRootElement();\r\n\r\n };\r\n\r\n //add styles for root element\r\n var setStylesForRootElement = function () {\r\n $(railHtmlRoot).addClass('railhtml_main');\r\n if ($('.apex-help-container').length > 0) {\r\n $('#apex_platform_chrome').css('position', 'absolute');\r\n\r\n }\r\n else {\r\n $('#apex_platform_chrome').css('position', 'fixed');\r\n }\r\n\r\n setBrowserSpecificClassToRoot();\r\n };\r\n\r\n //build related articles\r\n var buildRelatedArticlesRows = function (data) {\r\n var html = '';\r\n var rowItems = ['

See also...

    '];\r\n var index = 1;\r\n if (data.Content.RelatedTopics != null && data.Content.RelatedTopics.length > 0) {\r\n $.each(data.Content.RelatedTopics, function (i, val) {\r\n if (val.Url != null) {\r\n var row = '
  • ' + val.Title + '
  • ';\r\n rowItems[index++] = row;\r\n }\r\n });\r\n }\r\n if (data.Content.RelatedVideos != null && data.Content.RelatedVideos.length > 0) {\r\n $.each(data.Content.RelatedVideos, function (i, val) {\r\n var row = '
  • ' + val.Title + '
  • ';\r\n rowItems[index++] = row;\r\n });\r\n }\r\n if (index > 1) {\r\n rowItems[index++] = '
';\r\n html = rowItems.join('');\r\n }\r\n return html.toString();\r\n };\r\n\r\n\r\n //rowType = 0=>Tour, 1=>Video, 2=>Article, 3=>Search Rows\r\n var buildContentRows = function (data, rowType) {\r\n\r\n var label = '';\r\n var cls = '';\r\n var imgCls = '';\r\n var html = '';\r\n var rowItems = [];\r\n switch (rowType) {\r\n case 0:\r\n label = apex_glb.LocStrings.Tours == \"undefined\" ? \"Tours\" : apex_glb.LocStrings.Tours;\r\n cls = \"Tour\";\r\n imgCls = \"imageTour\"; //apex_glb.EndPoint + '/Resources/content/styles/Images/Tour.png';\r\n break;\r\n case 1:\r\n label = apex_glb.LocStrings.Video1 == \"undefined\" ? \"Videos\" : apex_glb.LocStrings.Video1;\r\n cls = \"Video\";\r\n imgCls = \"imageVideo\"; //apex_glb.EndPoint + '/Resources/content/styles/Images/Video.png';\r\n break;\r\n case 2:\r\n label = apex_glb.LocStrings.Articles == \"undefined\" ? \"Articles\" : apex_glb.LocStrings.Articles;\r\n cls = \"Articles\";\r\n imgCls = \"imageArticles\"; //apex_glb.EndPoint + '/Resources/content/styles/Images/article.png';\r\n break;\r\n\r\n }\r\n if (rowType <= 2) {\r\n //$('#apex_content_title').html(apex_glb.LocStrings.HelpOnThisPage);\r\n $('#apex_content_title').html('');\r\n $('#apex_content_title').hide();\r\n var head = '
' + label + '
';\r\n var rowItems = [head];\r\n }\r\n else {\r\n $('#apex_content_title').html(apex_glb.LocStrings.SearchResults);\r\n $('#apex_content_title').show();\r\n cls = \"Search\";\r\n imgCls = \"imageSearch\"; //apex_glb.EndPoint + '/Resources/content/styles/Images/Video.png';\r\n }\r\n //$('.apex_content_area #railContent').css('overflow-x', 'hidden');\r\n //var rowTemplate = [\r\n // '
',\r\n // '{3}',\r\n // '

'\r\n //];\r\n\r\n if (data != null && (data.length > 0 || rowType == 0)) {\r\n var index = 1;\r\n $.each(data, function (i, val) {\r\n var video = '';\r\n var imgVideo = '';\r\n var row = '';\r\n if (cls == 'Tour') {\r\n row = '
' +\r\n '' + val + '

';\r\n //rowItems[i + 1] = row;\r\n }\r\n else {\r\n if (cls == 'Video') {\r\n video = '\" videoId=\"' + val.VideoId + '\" op_videoId=\"' + val.OP_VideoId;\r\n row = '
' +\r\n '' + imgVideo + val.Title + '

';\r\n }\r\n else if (cls == 'Search') {\r\n if (val.VideoId != null || val.VideoId == '') {\r\n cls += ' Video'\r\n video = '\" videoId=\"' + val.VideoId + '\" op_videoId=\"' + val.OP_VideoId;\r\n imgVideo = '';\r\n row = '
' +\r\n '' + imgVideo + val.Title + '

';\r\n }\r\n else {\r\n\r\n cls += ' Articles';\r\n row = '';\r\n }\r\n }\r\n else {\r\n row = '';\r\n }\r\n //row = '
' +\r\n // '' + imgVideo + val.Title + '

';\r\n var clsArr = cls.split(' ');\r\n if (clsArr.length == 2) {\r\n cls = clsArr[0];\r\n }\r\n //rowItems[i + 1] = row;\r\n }\r\n rowItems[index++] = row;\r\n });\r\n if (index > 1) {\r\n html = rowItems.join(''); //.appendTo($('#railContent'));\r\n }\r\n }\r\n return html.toString();\r\n };\r\n\r\n var buildContent = function (data) {\r\n var rowItems = [];\r\n var index = 0;\r\n if (data.Content == null || data.Content == undefined) {\r\n var articles = buildContentRows(data.Topics, 2);\r\n var videos = buildContentRows(data.Videos, 1);\r\n var tours = buildContentRows(apex_glb.Tours, 0);\r\n if (articles != '') rowItems[index++] = articles;\r\n if (videos != '') rowItems[index++] = videos;\r\n if (tours != '') rowItems[index++] = tours;\r\n\r\n //$('#apexHelpContainer .apex_content_area #railContent').css('overflow-x', 'hidden');\r\n }\r\n else {\r\n var content = data.Content.Content;\r\n var path = \"/Resources/Content/styles/images/\";\r\n var new_path = apex_glb.EndPoint + \"/Resources/Content/styles/images/\";\r\n replaceAll(content, path, new_path);\r\n\r\n rowItems[index++] = content;\r\n\r\n //rowItems[index++] = buildRelatedArticlesRows(data.Content.RelatedTopics, 2);\r\n //rowItems[index++] = buildRelatedArticlesRows(data.Content.RelatedVideos, 1);\r\n //$('#apexHelpContainer .apex_content_area #railContent').css('overflow-x', 'auto !important');\r\n }\r\n\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).html('');\r\n html = rowItems.join('');\r\n return html.toString();\r\n };\r\n\r\n var buildNavGroups = function (data) {\r\n\r\n };\r\n\r\n var updateUrlPaths = function () {\r\n $.each($('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' a[href_new]'), function (index, elem) {\r\n if ($(elem).attr('targetId') !== undefined) {\r\n var targetId = $(elem).attr('targetid');\r\n $(elem).attr('href', targetId);\r\n }\r\n else if (!$(elem).parent().hasClass('expando')) {\r\n var val = $(elem).attr('href_new');\r\n var token = '/';\r\n var viewId = $('[RailViewID]')[0] == undefined ? 'none' : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n if (apex_glb.EndPoint.match(\"/$\") == \"/\") token = '';\r\n $(elem).attr('href', apex_glb.EndPoint + token + val + '/' + apex_glb.SupportMarket + '/#ext:' + viewId);\r\n $(elem).attr('target', '_apexPlatformHelp');\r\n //$(elem).unbind('click');\r\n }\r\n else {\r\n var val = $(elem).attr('href');\r\n var token = '/';\r\n\r\n if (apex_glb.EndPoint.match(\"/$\") == \"/\") token = '';\r\n $(elem).attr('href', apex_glb.EndPoint + '/' + val);\r\n };\r\n });\r\n $.each($('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' .expando-head-bg img'), function (index, elem) {\r\n var val = $(elem).attr('src');\r\n var token = '/';\r\n\r\n if (apex_glb.EndPoint.match(\"/$\") == \"/\") token = '';\r\n $(elem).attr('src', apex_glb.EndPoint + val);\r\n });\r\n //try{\r\n // $('#railContent').perfectScrollbar({\r\n // suppressScrollX: true,\r\n // scrollYMarginOffset:30\r\n // });\r\n //}\r\n //catch(e){};\r\n var viewId = $('[RailViewID]')[0] == undefined ? RailHelpController.GetViewName() : $('[RailViewID]')[0].attributes['railviewid'].value;\r\n var spinUrl = apex_glb.EndPoint + '/#apex/' + apex_glb.ProjectAlias + '/' + apex_glb.Language + '/' + apex_glb.CurrentQuery + '/1/' + apex_glb.SupportMarket + '/#ext:' + viewId;\r\n $('#apexHelpContainer #spinOffWindow, #apexHelpContainer #copyTopic').attr('url', spinUrl);\r\n\r\n var fullBrowserElem = $('#apexHelpContainer .fullBrowserOnly');\r\n if (fullBrowserElem.length > 0) {\r\n var hideExternal = $('#apexHelpContainer .hideExternalLink');\r\n if (hideExternal.length == 0) {\r\n var newWindowHtml = '' + apex_glb.LocStrings.OpenNewWindowLarge + '';\r\n $(newWindowHtml).insertBefore(fullBrowserElem[0]);\r\n }\r\n //$(newWindowHtml).insertBefore($(fullBrowserElem).parentsUntil('#apexHelpContainer')[0]);\r\n }\r\n if ($('#cntnt div.spinOffWindowPersist').length > 0) {\r\n //if (apex_glb.Project.toLowerCase() == 'ucm_secured') {\r\n // $('#cntnt div').removeClass('spinOffWindowPersist');\r\n //}\r\n $('#cntnt div.spinOffWindowPersist').attr('title', apex_glb.LocStrings.OpenNewWindow);\r\n $('#cntnt div.spinOffWindowPersist').attr('tabindex', \"0\");\r\n $('#cntnt div.spinOffWindowPersist').attr('aria-label', apex_glb.LocStrings.OpenNewWindow);\r\n $('#cntnt div.spinOffWindowPersist').attr('role', 'link');\r\n\r\n $('#cntnt div.spinOffWindowPersist').unbind('click');\r\n $('#cntnt div.spinOffWindowPersist').bind('click', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n $('.dropdown-content a#spinOffWindow').trigger('click');\r\n });\r\n\r\n $('#cntnt div.spinOffWindowPersist').unbind('keypress');\r\n $('#cntnt div.spinOffWindowPersist').bind('keypress', function (event) {\r\n if (event.which === 13) {\r\n $(event.target).trigger('click');\r\n }\r\n });\r\n }\r\n dragElement(document.getElementById((\"apexHelpContainer\")));\r\n setScrollBar();\r\n };\r\n\r\n var handleUCMDropdownUpdate = function () {\r\n\r\n $('#apexHelpContainer .dropdown_moreoptions a#homeImage').attr('query', 'ext72011');\r\n\r\n //$('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').attr('query', 'ext72019');\r\n if (window.WorkspaceId) {\r\n var workspaceViewMapping = [\"ext72019\", \"ext72085\", \"ext72089\", \"ext72084\"];\r\n var queryId = workspaceViewMapping[window.WorkspaceId - 1];\r\n $('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').attr('query', queryId);\r\n }\r\n else {\r\n $('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').attr('query', 'ext72019');\r\n }\r\n\r\n $('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').html(apex_glb.LocStrings.New); //what's new\r\n $('#apexHelpContainer .dropdown_moreoptions a#videoGallery').removeClass('HelpTopic');\r\n $('#apexHelpContainer .dropdown_moreoptions a#videoGallery').attr('href', 'https://go.microsoft.com/fwlink/?linkid=848221');\r\n var trainingPortal = '';\r\n var howTo = '';\r\n if ($('#apexHelpContainer .dropdown_moreoptions a#howToAccessUCM').length == 0) {\r\n $(howTo).insertAfter('#apexHelpContainer .dropdown_moreoptions a#newToBingAds');\r\n }\r\n $('#apexHelpContainer .dropdown_moreoptions a#howToAccessUCM').html(apex_glb.LocStrings.HowToAccessUCM);\r\n\r\n if ($('#apexHelpContainer .dropdown_moreoptions a#trainingPortal').length == 0) {\r\n $(trainingPortal).insertAfter('#apexHelpContainer .dropdown_moreoptions a#newToBingAds');\r\n }\r\n $('#apexHelpContainer .dropdown_moreoptions a#trainingPortal').html(apex_glb.LocStrings.TrainingPortal);\r\n\r\n //$('#apexHelpContainer .dropdown_moreoptions a#videoGallery').off(\"click\");\r\n //$('#apexHelpContainer .dropdown_moreoptions a#videoGallery').on(\"click\", function (e) {\r\n // if (e.preventDefault) { e.preventDefault(); }\r\n // if (e.stopPropagation) { e.stopPropagation() };\r\n // $('#apexHelpContainer .dropdown_moreoptions .dropdown-content').hide();\r\n // window.open(this.href, \"_apexVideoGallery\");\r\n //});\r\n $('#apexHelpContainer .dropdown_moreoptions a#howToAccessUCM').off(\"click\");\r\n $('#apexHelpContainer .dropdown_moreoptions a#howToAccessUCM').on(\"click\", function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n if (e.stopPropagation) { e.stopPropagation() };\r\n $('#apexHelpContainer .dropdown_moreoptions .dropdown-content').hide();\r\n window.open(this.href, \"_apexhowToAccessUCM\");\r\n });\r\n $('#apexHelpContainer .dropdown_moreoptions a#trainingPortal').off(\"click\");\r\n $('#apexHelpContainer .dropdown_moreoptions a#trainingPortal').on(\"click\", function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n if (e.stopPropagation) { e.stopPropagation() };\r\n $('#apexHelpContainer .dropdown_moreoptions .dropdown-content').hide();\r\n window.open(this.href, \"_apextrainingPortal\");\r\n });\r\n\r\n };\r\n\r\n var handleDMCDropdownUpdate = function () {\r\n\r\n $('#apexHelpContainer .dropdown_moreoptions a#homeImage').attr('query', 'ext30000');\r\n $('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').attr('query', 'ext30002');\r\n $('#apexHelpContainer .dropdown_moreoptions a#videoGallery').attr('query', 'ext30023');\r\n\r\n newToDMC = \"New to Digital Marketing?\"\r\n newToDMC = apex_glb.LocStrings.NewToDMC == undefined ? newToDMC : apex_glb.LocStrings.NewToDMC;\r\n $('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').html(newToDMC);\r\n\r\n };\r\n\r\n var loadOnDemandContent = function() {\r\n try {\r\n\r\n if (apex_glb.Authorize != true) {\r\n if ($('.ApexOndemandContent').length != 0) {\r\n var filename = $('.ApexOndemandContent').attr('ondemand_filename') + '.htm';\r\n var url = window.apex_glb.EndPoint + \"/api/\" + window.apex_glb.APIController + \"/ApexRawContent\";\r\n var onDemandInput = {\r\n 'project': apex_glb.Project,\r\n 'language': apex_glb.Market,\r\n 'filename': filename\r\n };\r\n\r\n $.ajax({\r\n url: url,\r\n type: \"GET\",\r\n data: onDemandInput,\r\n cache: true,\r\n success: function (data) {\r\n $('.ApexOndemandContent').parent().append(data);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n catch (e) { };\r\n }\r\n\r\n var handlePlatformContentSuccess = function (data) {\r\n $('#apexHelpContainer .dropdown_moreoptions .dropdown-content').hide();\r\n if (apex_glb.Authorize == true) {\r\n data = $.parseJSON(data);\r\n }\r\n if (data) {\r\n //amal\r\n apex_glb.LocStrings = window.ab_glb.LocStrings;\r\n if (data.LocStrings != undefined) {\r\n apex_glb.LocStrings = data.LocStrings;\r\n //$(\".apex_search_area input#searchquery, .apex_search_area input#searchsubmit\").attr(\"title\", apex_glb.LocStrings.Search);\r\n //$(\".apex_search_area input#searchquery, .apex_search_area input#searchsubmit\").attr(\"placeholder\", apex_glb.LocStrings.Search);\r\n $(\".apex_search_area input#searchquery\").attr(\"placeholder\", apex_glb.LocStrings.Search);\r\n //$(\".apex_search_area input#searchquery\").val(apex_glb.LocStrings.Search);\r\n //$(\"#apex_header_area .back_button\").html(apex_glb.LocStrings.Back);\r\n $(\"#apex_support_area .support_label\").html(apex_glb.LocStrings.Support);\r\n $('#apexHelpContainer .dropdown_moreoptions').attr(\"title\", apex_glb.LocStrings.Options);\r\n $(\"#apexHelpContainer .apex_header span.close_button\").attr(\"title\", apex_glb.LocStrings.Close);\r\n //$('#newWindowId').html(apex_glb.LocStrings.OpenNewWindow);\r\n $('#apexHelpContainer .dropdown_moreoptions a#homeImage span#homeText').html(apex_glb.LocStrings.Home);\r\n $('#apexHelpContainer .dropdown_moreoptions a#newToBingAds').html(apex_glb.LocStrings.NewToAdvertising);\r\n $('#apexHelpContainer .dropdown_moreoptions a#videoGallery').html(apex_glb.LocStrings.VideoGallery);\r\n $('#apexHelpContainer .dropdown_moreoptions a#spinOffWindow span#browserText').html(apex_glb.LocStrings.OpenNewWindow);\r\n $('#apexHelpContainer .dropdown_moreoptions a#copyTopic span#copyTopicText').html(apex_glb.LocStrings.CopyUrl);\r\n $(\"#apexHelpContainer .apex_search_area span.back_button\").attr('title', apex_glb.LocStrings.Back);\r\n $(\"#apexHelpContainer .apex_search_area span.dropdown_moreoptions\").attr('title', apex_glb.LocStrings.MoreOptions);\r\n $('#apexHelpContainer').addClass(apex_glb.Project.toLowerCase());\r\n\r\n if (apex_glb.Project.toLowerCase() == 'ucm_secured') {\r\n handleUCMDropdownUpdate();\r\n }\r\n else if (apex_glb.Project.toLowerCase() == 'digital_marketing') {\r\n handleDMCDropdownUpdate();\r\n }\r\n else if (apex_glb.Project.toLowerCase() == 'pubcenter_v4') {\r\n $('#apexHelpContainer .dropdown_moreoptions a#homeImage').removeAttr('query');\r\n }\r\n if (data.HeaderNavItems != undefined && data.HeaderNavItems != null && data.HeaderNavItems.length == 1) {\r\n $(\"#apex_support_area .support\").attr('url', data.HeaderNavItems[0].URL);\r\n }\r\n else {\r\n $(\"#apex_support_area\").hide();\r\n }\r\n }\r\n var html = '', htmlRelated = '';\r\n $('#apex_content_title').html('');\r\n if (window.apex_glb.APIController == \"apexapi\") {\r\n if (data.IsSearchResults == true) {\r\n html = buildContentRows(data.Topics, 3);\r\n if (html == '') {\r\n $('#apex_content_title').html('');\r\n html = data.Content != null ? data.Content.Content : data.Content;\r\n }\r\n } else {\r\n $(\".apex_search_area input#searchquery\").val(apex_glb.LocStrings.Search);\r\n //$('.apex_search_area input#searchquery').focus();\r\n html = buildContent(data);\r\n }\r\n } else {\r\n if (data.Topics != null) {\r\n var topics = [];\r\n $.each(data.Topics, function (i, val) {\r\n topics = topics.concat(val);\r\n });\r\n html = buildContentRows(topics, 3);\r\n if (html == '') {\r\n $('#apex_content_title').html('');\r\n html = data.Content != null ? data.Content.Content : data.Content;\r\n }\r\n } else {\r\n $(\".apex_search_area input#searchquery\").val(apex_glb.LocStrings.Search);\r\n //$('.apex_search_area input#searchquery').focus();\r\n html = buildContent(data);\r\n }\r\n }\r\n\r\n // Update dialog title for screen reader\r\n if (data.Content != null && data.Content.Title != null) { \r\n $(railHtmlRoot).attr('aria-label', data.Content.Title);\r\n }\r\n else {\r\n $(railHtmlRoot).attr('aria-label', apex_glb.LocStrings.FloatingHelpPanel);\r\n }\r\n\r\n bindContentClickEvents();\r\n //var rowItems = [];\r\n //var index = 0;\r\n //var articles = buildContentRows(data.Topics, 2);\r\n //var videos = buildContentRows(data.Videos, 1);\r\n //var tours = buildContentRows(data.Tours, 0);\r\n //if (tours != '') rowItems[index++] = tours;\r\n //if (videos != '') rowItems[index++] = videos;\r\n //if (articles != '') rowItems[index++] = articles;\r\n\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).html('');\r\n //html = $(rowItems.join('')).appendTo($('#railContent'));\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).html(html);\r\n var apexCls = apex_glb.Project.toLowerCase();\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #cntnt').removeClass(apexCls).addClass(apexCls);\r\n\r\n //tooltip\r\n $('a.GLOSSARY_LINK').addClass(\"tooltip\").removeClass(\"ONCLICK\");\r\n $('a.GLOSSARY_LINK').removeAttr('onmouseover').removeAttr('href').removeAttr('onmouseout').removeAttr('onclick');\r\n $.each($('a.GLOSSARY_LINK'), function (i, v) {\r\n try {\r\n var title = $(v).attr('title');\r\n var span = '' + title.trim() + '';\r\n $(v).after(span);\r\n }\r\n catch (ex) { }\r\n });\r\n $('a.GLOSSARY_LINK').removeAttr('title');\r\n\r\n //$(\"a.GLOSSARY_LINK\").mouseover(function (e) {\r\n // if (e.preventDefault) { e.preventDefault(); }\r\n // if (e.stopPropagation) { e.stopPropagation(); }\r\n // var top = ($(e.target).position().top + 20) + 'px';\r\n // $(e.target).next().css('top', top );\r\n\r\n //}).mouseout(function (e) {\r\n // // $(e.target).children().hide();\r\n //});;\r\n\r\n if ($('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #related_articles').length == 1) {\r\n htmlRelated = buildRelatedArticlesRows(data);;\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #related_articles').html(htmlRelated);\r\n $(\"#apexHelpContainer \" + window.ab_glb.ContentRootElement + \" #related_articles #see_more_text\").html(apex_glb.LocStrings.SeeMore);\r\n }\r\n if (this.indexValue == 0 || $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).is(':visible')) {\r\n showHelp(true);\r\n var sessionQuery = ApexCookieHandler.getCookie($('#railHelpInputs').attr('ApexSessionId'));\r\n if (sessionQuery != null) {\r\n var qry = [];\r\n qry = sessionQuery.split('~');\r\n query = qry[0];\r\n if (isRefreshed == false) {\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #cntnt').scrollTop(qry[1]);\r\n $.each(qry, function (key, value) { if (key > 1) $('#apexHelpContainer ' + window.ab_glb.ContentRootElement + ' #' + value).trigger('click') });\r\n isRefreshed = true;\r\n }\r\n }\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), apex_glb.CurrentQuery);\r\n }\r\n addContentForBackButton(html, htmlRelated);\r\n loadOnDemandContent();\r\n\r\n // with vanilla JS!\r\n // Ps.initialize(document.getElementById('Demo'));\r\n\r\n $(\".apex_search_area input#searchquery\").focus();\r\n $.fn.ApexDropDown();\r\n updateUrlPaths();\r\n $('#cntnt').scroll(function (e) {\r\n var ids = [];\r\n ids[0] = apex_glb.CurrentQuery;\r\n ids[1] = $('#cntnt').scrollTop();\r\n $.each($('.expando-head-active'), function (key, value) { ids[key + 2] = $(value).attr('id'); });\r\n var idval = ids.join('~');\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), idval);\r\n //if (window.console && window.console.log)\r\n // window.console.log('Scroll Top ' + $('#cntnt').scrollTop() + ' ' + idval);\r\n });\r\n getLiveChatString();\r\n ApexTabHandler.Init();\r\n ApexButtonHandler.Init();\r\n }\r\n };\r\n\r\n var handlePlatformContentFailure = function (data) {\r\n //alert(data);\r\n $('#apexHelpContainer .dropdown_moreoptions .dropdown-content').hide();\r\n };\r\n\r\n var getABContent = function (query, search, indexValue) {\r\n //performs GetContent\r\n\r\n var sessionQuery = ApexCookieHandler.getCookie($('#railHelpInputs').attr('ApexSessionId'));\r\n if (sessionQuery != null && apex_glb.CurrentQuery == undefined) {\r\n var qry = [];\r\n qry = sessionQuery.split('~');\r\n query = qry[0];\r\n indexValue = 0;\r\n }\r\n apex_glb.CurrentQuery = !query ? \"\" : query;\r\n var input = {\r\n 'project': apex_glb.Project,\r\n 'language': apex_glb.Market\r\n };\r\n if (indexValue == null || indexValue == undefined) {\r\n indexValue = -1;\r\n }\r\n if (search != null && search != undefined) {\r\n input.asRow = 's';\r\n input.term = query;\r\n }\r\n else {\r\n input.asRow = '-2'; //for nav topics calculation\r\n input.query = query;\r\n }\r\n var url = window.apex_glb.EndPoint + \"/api/\" + window.apex_glb.APIController + \"/\";\r\n if (apex_glb.Authorize == true) {\r\n url = \"/ApexHelp/HelpContent\";\r\n if (input.query == null) { input.query = query; }\r\n }\r\n $.ajax({\r\n url: url,\r\n data: input,\r\n //method: \"POST\",\r\n indexValue: indexValue,\r\n contentType: 'application/json',\r\n crossDomain: true,\r\n // dataType: 'jsonp',\r\n cache: false,\r\n success: handlePlatformContentSuccess,\r\n error: handlePlatformContentFailure,\r\n timeout: 60000\r\n });\r\n };\r\n\r\n var initializeAnswerBar = function () {\r\n //Build Inital Layout\r\n buildRailHelpLayout();\r\n getABContent(apex_glb.Query);\r\n ApexVideoHandler.Init();\r\n $.fn.ApexDropDown();\r\n\r\n //dragApexElement();\r\n try {\r\n lpMTagConfig.loadTag();\r\n }\r\n catch (e) { };\r\n };\r\n\r\n var getApexCommonsData = function (data) {\r\n if (data !== \"\") {\r\n var globals = data.Globals;\r\n if (globals.LocStrings != undefined) {\r\n for (var gkey in globals.LocStrings) {\r\n window.ab_glb.LocStrings[gkey] = globals.LocStrings[gkey];\r\n }\r\n }\r\n if (globals.Product != undefined) {\r\n window.ab_glb.HelpProduct = globals.Product;\r\n }\r\n if (globals.Project != undefined) {\r\n window.ab_glb.HelpProject = globals.Project;\r\n }\r\n if (globals.Market != undefined) {\r\n window.ab_glb.HelpMarket = globals.Market;\r\n }\r\n if (globals.ServiceLevel != undefined) {\r\n window.ab_glb.HelpSku = globals.ServiceLevel;\r\n }\r\n if (globals.Language != undefined) {\r\n window.ab_glb.HelpLanguage = globals.Language;\r\n } else {\r\n window.ab_glb.HelpLanguage = window.ab_glb.HelpMarket;\r\n }\r\n if (data.Config != undefined && data.Config.RailConfigs != undefined) {\r\n ApexChromeController.GetChromeSupportingLinksAndButtons(data.Config.RailConfigs);\r\n }\r\n }\r\n };\r\n\r\n ////Temporary HACK for campaigns AsyncLoad on switching tabs //amal\r\n //var tabClickBindingForCampaignsAsyncLoad = function () {\r\n // $('#summaryEntityTab .ui-tabs .ui-tabs-nav li').bind(\"click\", function (e) {\r\n // if (e.preventDefault) { e.preventDefault(); }\r\n // $('#railhtml').html('');\r\n // initializeAnswerBar();\r\n // });\r\n //};\r\n\r\n var clearHistory = function (tillIndex) {\r\n $('#apexHelpContainer ' + window.ab_glb.ContentRootElement).html('');\r\n //initializeAnswerBar();\r\n $('#apexHelpContainer .apex_search_area .back_button').removeClass('active').addClass('disabled');\r\n $('#apexHelpContainer .apex_search_area .back_button').attr('aria-disabled', 'true');\r\n\r\n if (!$(\"#apexHelpContainer #apex_support_area\").is(\":visible\") && !$(\"#apexHelpContainer #apexSupportOption\").is(\":visible\")) {\r\n $(\"#apex_platform_chrome #apex_dropdown_moreoptions\").unbind('keydown');\r\n $(\"#apex_platform_chrome #apex_back_button\").unbind('keydown');\r\n var lastElementNoSupport = findLastVisibleElement($('#apexHelpContainer'));\r\n var firstElem = $(\"#apex_platform_chrome #apex_back_button\").hasClass(\"disabled\") || !$(\"#apex_platform_chrome #apex_back_button\").is(\":visible\") ? $(\"#apex_platform_chrome #apex_dropdown_moreoptions\") : $(\"#apex_platform_chrome #apex_back_button\");\r\n var lastElem = $(lastElementNoSupport);\r\n ApexPlatform.ApexTrapFocus(firstElem, lastElem);\r\n }\r\n\r\n while (contentHistory.length > tillIndex) {\r\n contentHistory.pop();// Fastest\r\n }\r\n };\r\n\r\n var answerBarRefreshHandler = function () {\r\n var elem = $('#apexHelpContainer');\r\n if (!isVisible(elem)) {\r\n clearHistory(0);\r\n getABContent(apex_glb.Query);\r\n }\r\n if (apex_glb.Authorize == true) bindPlatformEvents();\r\n };\r\n\r\n return {\r\n //Methods for getting URLs\r\n GetRESTURL: function (path) {\r\n var pathname = location.pathname;\r\n var paths = pathname.split('/');\r\n var root = '/' + paths[1];\r\n return root + path;\r\n },\r\n\r\n //Set Root Element for Answer Bar\r\n SetRootElementId: function (id) {\r\n if ((id != undefined) && (id != null) & (id.length > 0)) {\r\n railHtmlRoot = '#' + id;\r\n }\r\n },\r\n\r\n //Get Root Element for Answer Bar\r\n GetRootElementId: function () {\r\n return railHtmlRoot;\r\n },\r\n\r\n\r\n GetViewName: function () {\r\n return getViewName();\r\n },\r\n\r\n\r\n Refresh: function () {\r\n answerBarRefreshHandler();\r\n },\r\n\r\n FindLastVisibleElement: findLastVisibleElement,\r\n\r\n /*Intialize Controller*/\r\n Init: function () {\r\n\r\n if (isRailBarEnabled()) {\r\n\r\n //Gets the attributes for Rail Help\r\n getGlobalHelpInformation();\r\n\r\n //Inject the Styles into master page\r\n linkStylesFromCSSFiles();\r\n\r\n //Get Global Values\r\n initializeAnswerBar();\r\n }\r\n }\r\n };\r\n}();\r\n\r\n\r\n// Just work around for ROOT's asyn way of loading JS files... \r\n// DO NOT REMOVE THIS FUNCTION\r\nif (typeof docLoadCallbacks == 'undefined') {\r\n initializeRailController();\r\n}\r\n\r\nfunction initializeRailController() {\r\n $ = jQuery;\r\n\r\n /*Expander control*/\r\n (function ($, undefined) {\r\n $.fn.exists = function () {\r\n return this.length !== 0;\r\n };\r\n\r\n $.fn.ExpanderList = function (params) {\r\n\r\n var self = $(this);\r\n self.addClass(\"expando-list\");\r\n\r\n self.children().each(function (index) {\r\n var exp = $(this);\r\n exp.Expander(params);\r\n });\r\n };\r\n\r\n $.fn.Expander = function (params) {\r\n var opts = $.extend({}, $.fn.Expander.defaults, params);\r\n\r\n var exp = $(this);\r\n exp.addClass(\"expando\");\r\n var head = exp.children().first();\r\n var body = head.next();\r\n\r\n // head.html().wrap('');\r\n head.addClass(\"expando-head\");\r\n head.attr(\"aria-expanded\", \"false\");\r\n head.wrapInner('');\r\n\r\n\r\n var expanded = exp.attr(\"expanded\") == \"true\";\r\n\r\n body.addClass(\"expando-body\");\r\n\r\n $('.expando-body').attr('role', 'region');\r\n if (expanded && exp.prevAll(\".expando\").children(\".expando-head-active\").length == 0) {\r\n head.addClass(\"expando-head-active\");\r\n body.addClass(\"expando-body-active\");\r\n head.attr(\"aria-expanded\", \"true\");\r\n }\r\n else {\r\n head.attr(\"aria-expanded\", \"false\");\r\n body.hide();\r\n };\r\n\r\n head.bind(\"mouseenter.expander\", function () {\r\n $(this).addClass(\"expando-hover\");\r\n });\r\n head.bind(\"mouseleave.expander\", function () {\r\n $(this).removeClass(\"expando-hover\");\r\n });\r\n head.bind(\"click\", function (e) {\r\n //event.preventDefault();\r\n if (e.preventDefault) { e.preventDefault(); }\r\n if (e.stopPropagation) { e.stopPropagation(); }\r\n var selfHead = $(this);\r\n var selfBody = $(this).next();\r\n var isSelf = false;\r\n\r\n //amal HelpController.InstrumentLink(\"Exp_[\" + selfHead.text().trim() + \"]\", \"17\");\r\n\r\n if (selfHead.hasClass(\"expando-head-active\")) {\r\n isSelf = true;\r\n }\r\n var rootExpanderList = selfHead.parents(\".expando-list\");\r\n if (!rootExpanderList.exists()) {\r\n rootExpanderList = selfHead.parents(\".expando\");\r\n }\r\n if (!opts.Multiple) {\r\n rootExpanderList.find(\".expando-body-active\").css({ 'display': 'none' });\r\n //rootExpanderList.find(\".expando-body-active\").slideUp(\"slow\", function () {\r\n // // Animation complete.\r\n // rootExpanderList.find(\".expando-body-active\").css({ 'overflow': 'hidden' });\r\n //}); //.slideUp();\r\n\r\n rootExpanderList.find(\".expando-body-active\").removeClass(\"expando-body-active\").addClass(\"expando-body\");\r\n rootExpanderList.find(\".expando-head-active\").removeClass(\"expando-head-active\").attr(\"aria-expanded\", \"false\");\r\n }\r\n else if (isSelf) {\r\n //selfBody.css({ 'display': 'none' });\r\n selfBody.slideUp(\"slow\", \"swing\", function () { selfBody.css({ 'visiblity': 'hidden' }) });\r\n //selfBody.slideUp(\"slow\", function () {\r\n // // Animation complete.\r\n // selfBody.css({ 'overflow': 'hidden' });\r\n //});\r\n selfBody.removeClass(\"expando-body-active\").addClass(\"expando-body\");\r\n selfHead.removeClass(\"expando-head-active\").attr(\"aria-expanded\", \"false\");;\r\n }\r\n if (!isSelf) {\r\n selfHead.addClass(\"expando-head-active\").attr(\"aria-expanded\", \"true\");;\r\n selfBody.addClass(\"expando-body-active\");\r\n selfBody.slideDown(\"slow\", \"swing\");\r\n }\r\n\r\n });\r\n };\r\n\r\n $.fn.ApexDropDown = function () {\r\n $('.apex_dropdown_content').hide();\r\n\r\n if ($('.apex_dropdown_list_master').length != 0) {\r\n $('.apex_dropdown_list_child').hide();\r\n $('.apex_dropdown .apex_dropdown_list_master option[selected]').each(function (index, elem) {\r\n var parent = '#' + $(elem).parent().parent().attr('id');\r\n var defaultDD = $(parent + ' .apex_dropdown_list_master option[selected]').attr('ddid');\r\n\r\n if (defaultDD != null) {\r\n $(parent + ' .apex_dropdown_list_child').hide();\r\n $(parent + ' .apex_dropdown_list_child[ddid=' + defaultDD + ']').show();\r\n\r\n $(parent + ' .apex_dropdown_content div[ddid]').hide();\r\n $(parent + ' .apex_dropdown_content').show();\r\n var child = $(parent + ' .apex_dropdown_list_child[ddid=' + defaultDD + '] option[selected]').attr('ddid');\r\n if (child) {\r\n var select = parent + ' .apex_dropdown_content div[ddid=\"' + $(parent + ' .apex_dropdown_list_child[ddid=' + defaultDD + '] option[selected]').attr('ddid') + '\"]';\r\n $(parent + ' .apex_dropdown_content').hide();\r\n $(select).show();\r\n $($(select).parent()).show();\r\n }\r\n\r\n }\r\n });\r\n\r\n $('.apex_dropdown .apex_dropdown_list_master').bind('change', function (e) {\r\n var parent = '#' + $(e.target).parent().attr('id');\r\n var defaultDD = $(e.target.options[e.target.selectedIndex]).attr('ddid');\r\n $(parent + ' .apex_dropdown_list_child').hide();\r\n $(parent + ' .apex_dropdown_list_child[ddid=' + defaultDD + ']').show();\r\n\r\n $(parent + ' .apex_dropdown_content div[ddid]').hide();\r\n $(parent + ' .apex_dropdown_content').show();\r\n var child = $(parent + ' .apex_dropdown_list_child[ddid=' + defaultDD + '] option:selected').attr('ddid');\r\n if (child) {\r\n var select = parent + ' .apex_dropdown_content div[ddid=\"' + $(parent + ' .apex_dropdown_list_child[ddid=' + defaultDD + '] option:selected').attr('ddid') + '\"]';\r\n $(parent + ' .apex_dropdown_content').hide();\r\n $(select).show();\r\n $($(select).parent()).show();\r\n }\r\n });\r\n\r\n $('.apex_dropdown .apex_dropdown_list_child').bind('change', function (e) {\r\n var parent = '#' + $(e.target).parent().attr('id');\r\n var defaultDD = $(e.target.options[e.target.selectedIndex]).attr('ddid');\r\n $(parent + ' .apex_dropdown_content div[ddid]').hide();\r\n $(parent + ' .apex_dropdown_content').show();\r\n var child = $(parent + ' .apex_dropdown_content div[ddid=\"' + defaultDD + '\"]');\r\n if (child) {\r\n var select = parent + ' .apex_dropdown_content div[ddid=\"' + defaultDD + '\"]';\r\n $(parent + ' .apex_dropdown_content').hide();\r\n $(select).show();\r\n $($(select).parent()).show();\r\n }\r\n });\r\n } else {\r\n $('.apex_dropdown .apex_dropdown_list option[selected]').each(function (index, elem) {\r\n var parent = '#' + $(elem).parent().parent().attr('id');\r\n var defaultDD = $(parent + ' .apex_dropdown_list option[selected]').attr('ddid');\r\n if (defaultDD != null) {\r\n $(parent + ' .apex_dropdown_content div[ddid]').hide();\r\n $(parent + ' .apex_dropdown_content').show();\r\n var select = parent + ' .apex_dropdown_content div[ddid=\"' + defaultDD + '\"]';\r\n $(select).show();\r\n }\r\n });\r\n\r\n $('.apex_dropdown .apex_dropdown_list').bind('change', function (e) {\r\n var parent = '#' + $(e.target).parent().attr('id');\r\n $(parent + ' .apex_dropdown_content div[ddid]').hide();\r\n $(parent + ' .apex_dropdown_content').show();\r\n var select = parent + ' .apex_dropdown_content div[ddid=\"' + $(e.target.options[e.target.selectedIndex]).attr('ddid') + '\"]';\r\n $(select).show();\r\n });\r\n }\r\n };\r\n //\r\n // plugin defaults\r\n //\r\n $.fn.ExpanderList.defaults = {\r\n Multiple: 'false'\r\n };\r\n })(jQuery);\r\n\r\n\r\n /*------------ Answer Bar Plugin ----------------------*/\r\n //\r\n // create closure\r\n //\r\n (function ($) {\r\n //\r\n // plugin definition\r\n //\r\n $.fn.CreateAnswerBar = function (options) {\r\n var thisElem = mainpulateRootElement(this);\r\n debug(\"Apex Embed - Load was performed.\");\r\n // build main options before element iteration\r\n var opts = $.extend({}, $.fn.CreateAnswerBar.defaults, options);\r\n\r\n // iterate and reformat each matched element\r\n return thisElem.each(function () {\r\n var $this = $(this);\r\n // build element specific options\r\n var o = $.meta ? $.extend({}, opts, $this.data()) : opts;\r\n\r\n $.fn.CreateAnswerBar.format($this, o);\r\n });\r\n };\r\n\r\n var mainpulateRootElement = function (o) {\r\n var id = o.attr('id');\r\n var thisElem = o;\r\n if (id == undefined || id.toLowerCase() != 'railhtml') {\r\n var elem = $(\"#railhtml\");\r\n if (elem.length != 0) {\r\n thisElem = elem;\r\n }\r\n else {\r\n var inputmarkup = '
';\r\n $(inputmarkup).appendTo($('body')[0]);\r\n thisElem = $(\"#railhtml\");\r\n }\r\n }\r\n return thisElem;\r\n };\r\n\r\n //\r\n // private function for debugging\r\n //\r\n function debug($msg) {\r\n if (window.console && window.console.log)\r\n window.console.log($msg);\r\n };\r\n //\r\n // define and expose our format function\r\n //\r\n $.fn.CreateAnswerBar.format = function (e, o) {\r\n\r\n if (o.HelpContainerId == null) {\r\n RailHelpController.SetRootElementId(e.attr(\"id\"));\r\n }\r\n else {\r\n RailHelpController.SetRootElementId(o.HelpContainerId);\r\n }\r\n\r\n var inputmarkup = '';\r\n $(inputmarkup).insertBefore(e);\r\n var prefix = o.Project;\r\n if (prefix == '' || prefix == null) prefix = o.Product;\r\n //$(e).hide();\r\n //TODO: Needs to remove this check. This is to support backward comaptibility\r\n if (o.ApexAPIEndPoint == null) {\r\n o.ApexAPIEndPoint = o.HelpUrl;\r\n o.CDNEndPoint = o.HelpUrl;\r\n }\r\n var sessionId = ApexCookieHandler.getCookie(\"JFX_SessionId\");\r\n if (o.Project.toLowerCase() == 'ucm_secured') {\r\n sessionId = null;\r\n } else {\r\n if (sessionId == null) {\r\n sessionId = \"ApexHelpSessionId\";\r\n }\r\n else {\r\n sessionId = 'apexplat_' + sessionId.replace(new RegExp('-', 'g'), '_');\r\n }\r\n sessionId = prefix + \"_\" + sessionId;\r\n }\r\n $('#railHelpInputs').attr('helpurl', o.ApexAPIEndPoint);\r\n $('#railHelpInputs').attr('cdnEndPoint', o.CDNEndPoint);\r\n $('#railHelpInputs').attr('Sku', o.Sku);\r\n $('#railHelpInputs').attr('Project', o.Project);\r\n $('#railHelpInputs').attr('Product', o.Product);\r\n $('#railHelpInputs').attr('Market', o.Market);\r\n $('#railHelpInputs').attr('Language', o.Language);\r\n $('#railHelpInputs').attr('ViewName', '');\r\n $('#railHelpInputs').attr('Enable', o.Enable);\r\n $('#railHelpInputs').attr('InitController', o.InitController);\r\n $('#railHelpInputs').attr('SupportMarket', o.SupportMarket);\r\n $('#railHelpInputs').attr('HelpContainerId', o.HelpContainerId);\r\n $('#railHelpInputs').attr('ApexSessionId', sessionId);\r\n window.ab_glb.Success = o.Success;\r\n window.ab_glb.Failure = o.Failure;\r\n window.ab_glb.SupportOptions = o.SupportOptions;\r\n if ((o.InitController == true) || (o.InitController == \"true\")) {\r\n RailHelpController.Init();\r\n }\r\n };\r\n //\r\n // plugin defaults\r\n //\r\n $.fn.CreateAnswerBar.defaults = {\r\n HelpUrl: 'http://adhelpdev02/',\r\n ApexAPIEndPoint: null,\r\n CDNEndPoint: 'http://static.adcenterhelp.microsoft.com',\r\n Sku: 'SelfServe',\r\n Project: '',\r\n Product: '',\r\n Market: 'en-US',\r\n Enable: 'true',\r\n Language: '',\r\n InitController: 'false',\r\n SupportMarket: '',\r\n SupportOptions: null,\r\n HelpContainerId: null,\r\n Success: null,\r\n Failure: null\r\n };\r\n //\r\n // end of closure\r\n //\r\n })(jQuery);\r\n\r\n /*----------- Page OnLoad Methods ---------------------*/\r\n $(document).ready(function () {\r\n var validAnswerBar = $('#railHelpInputs').attr('InitController');\r\n if ((validAnswerBar != undefined) && (validAnswerBar != null) && (validAnswerBar != \"true\")) {\r\n RailHelpController.Init();\r\n }\r\n if (apex_glb.Project.toLowerCase() != 'ucm_secured') {\r\n ApexCloseWireUpEvents();\r\n }\r\n $('#logoutLink').bind('click', function () {\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), '');\r\n if (window.console && window.console.log)\r\n window.console.log(\"Logout button clicked\");\r\n });\r\n });\r\n\r\n}\r\n\r\n/* drag functionality */\r\nvar APEX_PADDING = 0;\r\n\r\nvar apex_rect;\r\nvar application_viewport = {\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n top: 0\r\n}\r\n\r\n$.fn.setCursorPosition = function (position) {\r\n if (this.length == 0) return this;\r\n return $(this).setSelection(position, position);\r\n}\r\n\r\n$.fn.setSelection = function (selectionStart, selectionEnd) {\r\n if (this.length == 0) return this;\r\n input = this[0];\r\n\r\n if (input.createTextRange) {\r\n var range = input.createTextRange();\r\n range.collapse(true);\r\n range.moveEnd('character', selectionEnd);\r\n range.moveStart('character', selectionStart);\r\n range.select();\r\n } else if (input.setSelectionRange) {\r\n input.focus();\r\n input.setSelectionRange(selectionStart, selectionEnd);\r\n }\r\n\r\n return this;\r\n}\r\n\r\n$.fn.focusEnd = function () {\r\n this.setCursorPosition(this.val().length);\r\n return this;\r\n}\r\n\r\nfunction dragElement(elmnt) {\r\n var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0;\r\n var dragElem = '#apexHelpContainer .apex_header_area';\r\n var apexMouseButtonDown = false;\r\n var autoSuggestVisible = false;\r\n $(dragElem).unbind('mousedown');\r\n $(dragElem).bind('mousedown', function (e) {\r\n if (e.preventDefault) { e.preventDefault(); }\r\n e = e || window.event;\r\n //if (!(target.is('input') && target[0].id == 'searchquery')) {\r\n // get the mouse cursor position at startup:\r\n pos3 = e.clientX;\r\n pos4 = e.clientY;\r\n\r\n autoSuggestVisible = $('#apex-suggestion-box').is(':visible');\r\n // store the current application_viewport and element dimensions when a drag starts\r\n apex_rect = elmnt.getBoundingClientRect();\r\n application_viewport.bottom = window.innerHeight - APEX_PADDING;\r\n application_viewport.left = APEX_PADDING;\r\n application_viewport.right = window.innerWidth - APEX_PADDING;\r\n application_viewport.top = APEX_PADDING;\r\n\r\n $('body').addClass('apex-noselect');\r\n apexMouseButtonDown = true;\r\n\r\n $(document).bind('mousemove', function (e) {\r\n //if (e.preventDefault) { e.preventDefault(); }\r\n if (apexMouseButtonDown) {\r\n elementDrag(e);\r\n }\r\n });\r\n $(document).bind('mouseup', function (e) {\r\n var target = $(e.target);\r\n if (e.preventDefault) { e.preventDefault(); }\r\n if (apexMouseButtonDown) {\r\n apexMouseButtonDown = false;\r\n $('body').removeClass('apex-noselect');\r\n }\r\n $(document).unbind('mouseup');\r\n $(document).unbind('mousemove');\r\n\r\n if (target.is('input') && target[0].id == 'searchquery') {\r\n //var str = target.val();\r\n //target.focus().val('').val(str);\r\n target.focusEnd();\r\n }\r\n if (autoSuggestVisible) {\r\n autoSuggestVisible = false;\r\n $.fn.suggestionBox.showApexSuggestions();\r\n }\r\n\r\n\r\n });\r\n //}\r\n });\r\n\r\n function elementDrag(e) {\r\n\r\n e = e || window.event;\r\n // calculate the new cursor position:\r\n pos1 = pos3 - e.clientX;\r\n pos2 = pos4 - e.clientY;\r\n pos3 = e.clientX;\r\n pos4 = e.clientY;\r\n\r\n // check to make sure the element will be within our application_viewport boundary\r\n var newLeft = elmnt.offsetLeft - pos1;\r\n var newTop = elmnt.offsetTop - pos2;\r\n\r\n if (newLeft < (application_viewport.left - 270)\r\n || newTop < (application_viewport.top - 50)\r\n || (newLeft + apex_rect.width) > (application_viewport.right + 250)\r\n || (newTop + apex_rect.height) > (application_viewport.bottom + 700)\r\n //|| (elmnt.offsetTop - pos2) == 0\r\n //|| (elmnt.offsetLeft - pos1) == 0\r\n ) {\r\n // the element will hit the boundary, do nothing...\r\n\r\n } else {\r\n // set the element's new position:\r\n elmnt.style.top = (elmnt.offsetTop - pos2) + \"px\";\r\n elmnt.style.left = (elmnt.offsetLeft - pos1) + \"px\";\r\n }\r\n }\r\n}\r\n\r\nvar apex_ValidNavigation = false;\r\n\r\nfunction ApexCloseWireUpEvents() {\r\n\r\n window.onbeforeunload = function () {\r\n\r\n if (!apex_ValidNavigation) {\r\n\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), '');\r\n if (window.console && window.console.log)\r\n window.console.log(\"Windows On Before Unload - Apex Good Bye\");\r\n }\r\n }\r\n\r\n window.addEventListener(\"beforeunload\", function (e) {\r\n if (!apex_ValidNavigation) {\r\n\r\n ApexCookieHandler.setCookie($('#railHelpInputs').attr('ApexSessionId'), '');\r\n if (window.console && window.console.log)\r\n window.console.log(\"Windows On Before Unload - Apex Good Bye\");\r\n }\r\n });\r\n\r\n // Attach the event keypress to exclude the F5 refresh\r\n $(document).bind('keypress', function (e) {\r\n if (e.keyCode == 116) {\r\n apex_ValidNavigation = true;\r\n }\r\n });\r\n\r\n // Attach the event click for all links in the page\r\n $(\"a\").bind(\"click\", function () {\r\n apex_ValidNavigation = true;\r\n });\r\n // Attach the event submit for all forms in the page\r\n $(\"form\").bind(\"submit\", function () {\r\n apex_ValidNavigation = true;\r\n });\r\n\r\n // Attach the event click for all inputs in the page\r\n $(\"input[type=submit]\").bind(\"click\", function () {\r\n apex_ValidNavigation = true;\r\n });\r\n\r\n // Attach the event click for all inputs in the page\r\n $(\"button[type=submit]\").bind(\"click\", function () {\r\n apex_ValidNavigation = true;\r\n });\r\n\r\n}\r\n\r\n\r\n/*-----------------------------------------------------------\r\n// Name: ApexTabHandler\r\n// Description: ApexTabHandler\r\n//\r\n// -------------------------------------------------------*/\r\nApexTabHandler = function () {\r\n var init = function () {\r\n if ($('#railContent div.apexTab').length <= 0) return false;\r\n\r\n $('#railContent button.apexTabLink').off('click');\r\n $('#railContent button.apexTabLink').on('click', function (event) {\r\n if (event.preventDefault) event.preventDefault();\r\n if (event.stopPropagation) event.stopPropagation();\r\n\r\n var target = $(event.target).closest('button[class^=\"apexTabLink\"]');\r\n (target).siblings().removeClass('active');\r\n $(target).addClass('active');\r\n var targetElem = $(target).attr(\"tabcontentid\");\r\n $(target).parent().siblings().hide();\r\n $(target).parent().siblings('#' + targetElem).show();\r\n\r\n });\r\n\r\n var hadActive = false;\r\n $('#railContent button.apexTabLink').each(function (index) {\r\n if ($(this).hasClass('active')) {\r\n var targetElem = $(this).attr(\"tabcontentid\");\r\n $('#railContent div.apexTab #' + targetElem).show();\r\n hadActive = true;\r\n }\r\n });\r\n\r\n if (hadActive == false) {\r\n $('#railContent button.apexTabLink')[0].addClass('active');\r\n $('#railContent div.apexTabContent')[0].show();\r\n }\r\n\r\n return false;\r\n };\r\n return {\r\n Init: init\r\n };\r\n\r\n}();\r\n\r\n/*-----------------------------------------------------------\r\n// Name: ApexButtonHandler\r\n// Description: ApexButtonHandler\r\n// \r\n// -------------------------------------------------------*/\r\nApexButtonHandler = function () {\r\n var init = function () {\r\n if ($('#railContent div.ApexButton').length <= 0) return false;\r\n\r\n $('#railContent button.ApexButtonLink').off('click');\r\n $('#railContent button.ApexButtonLink').on('click', function (event) {\r\n if (event.preventDefault) event.preventDefault();\r\n if (event.stopPropagation) event.stopPropagation();\r\n\r\n var target = $(event.target).closest('button[class^=\"ApexButtonLink\"]');\r\n (target).siblings().removeClass('active');\r\n $(target).addClass('active');\r\n var targetElem = $(target).attr(\"buttoncontentid\");\r\n $(target).parent().siblings().hide();\r\n $(target).parent().siblings('#' + targetElem).show();\r\n\r\n });\r\n\r\n var hadActive = false;\r\n $('#railContent button.ApexButtonLink').each(function (index) {\r\n if ($(this).hasClass('active')) {\r\n var targetElem = $(this).attr(\"buttoncontentid\");\r\n $('#railContent div.ApexButton #' + targetElem).show();\r\n hadActive = true;\r\n }\r\n });\r\n\r\n if (hadActive == false) {\r\n $('#railContent button.ApexButtonLink')[0].addClass('active');\r\n $('#railContent div.ApexButtonContent')[0].show();\r\n }\r\n\r\n return false;\r\n };\r\n return {\r\n Init: init\r\n };\r\n\r\n}();","window.$ = window.jQuery = require('jquery');\nrequire('./style.css');\nrequire('./apex.core.v3.js');\nrequire('./apex.embed.v3.js');\nwindow.config={getScriptForAds:function(r, i){i();}}"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 896);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__10__;","module.exports = __WEBPACK_EXTERNAL_MODULE__151__;","module.exports = __WEBPACK_EXTERNAL_MODULE__3__;","module.exports = __WEBPACK_EXTERNAL_MODULE__445__;","module.exports = __WEBPACK_EXTERNAL_MODULE__74__;","export { MsSupportChatModal } from './src/ms-support-chat-modal';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Modal from 'react-modal';\r\nimport { FocusLock } from '@bingads-webui-react/focus-lock';\r\nimport { Scenario, Activity } from '@bingads-webui-react/hoc-with-signal';\r\nimport { MsSupportChatForm } from './ms-support-chat-form';\r\n\r\nconst modalStyle = {\r\n overlay: {\r\n zIndex: 2000,\r\n backgroundColor: 'rgba(51,51,51,0.5)',\r\n },\r\n content: {\r\n top: '50%',\r\n left: '50%',\r\n right: 'auto',\r\n bottom: 'auto',\r\n border: '1px solid #d9d9d9',\r\n borderRadius: '0px',\r\n transform: 'translate(-50%, -50%)',\r\n marginRight: '-50%',\r\n minWidth: '300px',\r\n maxWidth: '700px',\r\n },\r\n};\r\n\r\nexport const MsSupportChatModal = props => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nMsSupportChatModal.defaultProps = {\r\n isOpen: true,\r\n featureName: '',\r\n context: undefined,\r\n virtualAgentInfo: undefined,\r\n authType: undefined,\r\n logger: undefined,\r\n portalClassName: undefined,\r\n permissions: {},\r\n resourcePath: undefined,\r\n market: undefined,\r\n};\r\n\r\nMsSupportChatModal.propTypes = {\r\n isOpen: PropTypes.bool,\r\n onClose: PropTypes.func.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n error: PropTypes.func,\r\n }),\r\n virtualAgentInfo: PropTypes.shape({\r\n market: PropTypes.string,\r\n }),\r\n authType: PropTypes.string,\r\n context: PropTypes.shape({}),\r\n featureName: PropTypes.string,\r\n portalClassName: PropTypes.string,\r\n permissions: PropTypes.shape({}),\r\n resourcePath: PropTypes.string,\r\n market: PropTypes.shape({\r\n region: PropTypes.string,\r\n language: PropTypes.string,\r\n }),\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { withActivityContext } from '@bingads-webui-react/hoc-with-signal';\r\nimport { MsSupportChatSurvey } from './ms-support-chat-survey';\r\n\r\nconst keyWordList = ['payment option', 'prepay', 'postpay', 'monthly invoicing'];\r\nconst botEnabled = (pilotEnabled, issueDescription, language) => pilotEnabled\r\n && _.find(keyWordList, keyWord => issueDescription.toLowerCase().indexOf(keyWord) !== -1)\r\n && language.toLowerCase() === 'en';\r\n\r\nclass MsSupportChatFormInternal extends React.PureComponent {\r\n static propTypes = {\r\n onSuccess: PropTypes.func.isRequired,\r\n onCancel: PropTypes.func.isRequired,\r\n virtualAgentInfo: PropTypes.PropTypes.shape({\r\n market: PropTypes.string,\r\n }),\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n context: PropTypes.shape({\r\n accountNumber: PropTypes.string,\r\n flowId: PropTypes.string,\r\n }),\r\n featureName: PropTypes.string,\r\n permissions: PropTypes.shape({\r\n DFAChatPhase1: PropTypes.bool,\r\n }),\r\n resourcePath: PropTypes.string,\r\n activity: PropTypes.shape({\r\n signal: PropTypes.func,\r\n trace: PropTypes.func,\r\n }),\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n error: PropTypes.func,\r\n }),\r\n market: PropTypes.shape({\r\n region: PropTypes.string,\r\n language: PropTypes.string,\r\n }),\r\n };\r\n\r\n static defaultProps = {\r\n permissions: {},\r\n featureName: '',\r\n context: {\r\n accountNumber: '',\r\n flowId: 'advertiser',\r\n },\r\n virtualAgentInfo: undefined,\r\n activity: { signal: _.noop, trace: _.noop },\r\n logger: { trace: _.noop, error: _.noop },\r\n resourcePath: 'https://ui.ads.microsoft.com/campaign/virtualagent',\r\n market: undefined,\r\n };\r\n\r\n onSubmit = ({\r\n description,\r\n issue,\r\n customSupportLink,\r\n }) => {\r\n const {\r\n virtualAgentInfo,\r\n market,\r\n } = this.props;\r\n let { language, region } = this.props.i18n.getCldr().attributes;\r\n if (market) {\r\n ({ language, region } = market);\r\n }\r\n const isVritualAgent = !!botEnabled(virtualAgentInfo, description, language);\r\n const contextArray = [\r\n { name: 'description', value: description },\r\n { name: 'account number', value: this.props.context.accountNumber },\r\n ];\r\n\r\n this.props.activity.signal(`onSubmit: open a new window, language: ${language}, region: ${region}`);\r\n this.props.logger.trace(`support-chat-modal: onSubmit', 'onSubmit: open a new window, language: ${language}, region: ${region}`);\r\n const modalityType = 'occhat';\r\n\r\n window.open(\r\n customSupportLink || `${this.props.resourcePath}?locale=${language}-${region}&virtual=${isVritualAgent}&modality=${modalityType}&issue=${issue}&context=${encodeURIComponent(JSON.stringify(contextArray))}&description=${encodeURIComponent(description)}&flowid=${this.props.context.flowId || 'advertiser'}`,\r\n '_blank', 'width=360,height=480,resizable=1,scrollbars=1'\r\n );\r\n\r\n this.props.onSuccess();\r\n };\r\n\r\n render() {\r\n const {\r\n i18n,\r\n featureName,\r\n permissions,\r\n onCancel,\r\n activity,\r\n logger,\r\n market,\r\n } = this.props;\r\n\r\n let { language, region } = this.props.i18n.getCldr().attributes;\r\n if (market) {\r\n ({ language, region } = market);\r\n }\r\n\r\n activity.signal(`MsSupportChatFormInternal render, language: ${language}, region: ${region}`);\r\n logger.trace(`support-chat-modal: render', 'MsSupportChatFormInternal render, language: ${language}, region: ${region}`);\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport const MsSupportChatForm = withActivityContext(MsSupportChatFormInternal);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__9__;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { SupportCategorySelector } from '@bingads-webui-react/support-category-selector';\r\nimport { i18nLanguageToDisaplyLanguage } from '@bingads-webui-react/support-market-mapping';\r\n\r\nconst Warning = props => (\r\n
\r\n \r\n {props.message}\r\n
\r\n);\r\n\r\nWarning.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n message: PropTypes.string.isRequired,\r\n};\r\nexport class MsSupportChatSurvey extends React.PureComponent {\r\n static propTypes = {\r\n onSubmit: PropTypes.func.isRequired,\r\n onCancel: PropTypes.func.isRequired,\r\n onSubmitControlRole: PropTypes.string,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n featureName: PropTypes.string,\r\n permissions: PropTypes.shape({}),\r\n activity: PropTypes.shape({\r\n signal: PropTypes.func,\r\n }),\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n market: PropTypes.shape({}),\r\n };\r\n\r\n static defaultProps = {\r\n featureName: '',\r\n permissions: {},\r\n activity: { signal: _.noop },\r\n logger: { trace: _.noop },\r\n market: undefined,\r\n onSubmitControlRole: 'button',\r\n };\r\n\r\n state = {\r\n description: '',\r\n issue: '-1',\r\n isLoading: true,\r\n };\r\n\r\n onSelectChange = (issue, customSupportLink) => {\r\n this.setState({\r\n issue,\r\n isLoading: issue === '-1',\r\n customSupportLink,\r\n });\r\n };\r\n\r\n descriptionInputId = `description-input-${_.uniqueId()}`;\r\n\r\n handleSubmit = () => {\r\n this.props.onSubmit({\r\n description: this.state.description,\r\n issue: this.state.issue,\r\n customSupportLink: this.state.customSupportLink,\r\n });\r\n\r\n const { market, i18n } = this.props;\r\n let { language, region } = i18n.getCldr().attributes;\r\n if (market) {\r\n ({ language, region } = market);\r\n }\r\n this.props.activity.signal(`issue: ${this.state.issue}, description: ${this.state.description}, language: ${language}, region: ${region}`);\r\n this.props.logger.trace('support-chat-modal: handleSubmit', `issue: ${this.state.issue}, description: ${this.state.description}, language: ${language}, region: ${region}`);\r\n };\r\n\r\n handleInputChange = (e) => {\r\n const { target } = e;\r\n const { name, value } = target;\r\n this.setState({\r\n [name]: value,\r\n });\r\n };\r\n\r\n render() {\r\n const { market, i18n, onSubmitControlRole } = this.props;\r\n let { language, region } = i18n.getCldr().attributes;\r\n if (market) {\r\n ({ language, region } = market);\r\n }\r\n this.props.activity.signal(`MsSupportChatSurvey render, language: ${language}, region: ${region}`);\r\n this.props.logger.trace(`support-chat-modal: render', 'MsSupportChatSurvey render, language: ${language}, region: ${region}`);\r\n\r\n return (\r\n
\r\n\r\n
\r\n \r\n
{market ? 'Start a live chat' : i18n.getString('MsSupportChatModal_Title')}
\r\n
\r\n\r\n
\r\n {\r\n region === 'BR' && \r\n }\r\n {\r\n i18nLanguageToDisaplyLanguage[language] === 'EN' && \r\n }\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__901__;","module.exports = __WEBPACK_EXTERNAL_MODULE__902__;","export { RequestCallModal } from './src/request-call-modal';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Modal from 'react-modal';\r\nimport { FocusLock } from '@bingads-webui-react/focus-lock';\r\nimport { Scenario, Activity } from '@bingads-webui-react/hoc-with-signal';\r\nimport { RequestCallForm } from './request-call-form';\r\n\r\nexport class RequestCallModal extends React.Component {\r\n static defaultProps = {\r\n isOpen: true,\r\n featureName: '',\r\n onClose() {},\r\n portalClassName: undefined,\r\n permissions: {},\r\n resourcePath: undefined,\r\n logger: undefined,\r\n context: undefined,\r\n };\r\n static propTypes = {\r\n isOpen: PropTypes.bool,\r\n onClose: PropTypes.func,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n featureName: PropTypes.string,\r\n portalClassName: PropTypes.string,\r\n permissions: PropTypes.shape({}),\r\n resourcePath: PropTypes.string,\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n error: PropTypes.func,\r\n }),\r\n context: PropTypes.shape({}),\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n Modal.setAppElement(document.body);\r\n }\r\n\r\n render() {\r\n const modalStyle = {\r\n overlay: {\r\n zIndex: 2000,\r\n backgroundColor: 'rgba(51,51,51,0.5)',\r\n },\r\n content: {\r\n top: '50%',\r\n left: '50%',\r\n right: 'auto',\r\n bottom: 'auto',\r\n border: '1px solid #d9d9d9',\r\n borderRadius: '0px',\r\n transform: 'translate(-50%, -50%)',\r\n marginRight: '-50%',\r\n minWidth: '300px',\r\n },\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { SupportCategorySelector } from '@bingads-webui-react/support-category-selector';\r\nimport { withActivityContext } from '@bingads-webui-react/hoc-with-signal';\r\n\r\nclass RequestCallFormInternal extends React.Component {\r\n static propTypes = {\r\n onSuccess: PropTypes.func.isRequired,\r\n onCancel: PropTypes.func.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n featureName: PropTypes.string,\r\n permissions: PropTypes.shape({}),\r\n resourcePath: PropTypes.string,\r\n activity: PropTypes.shape({\r\n signal: PropTypes.func,\r\n trace: PropTypes.func,\r\n }),\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n error: PropTypes.func,\r\n }),\r\n context: PropTypes.shape({\r\n accountNumber: PropTypes.string,\r\n flowId: PropTypes.string,\r\n }),\r\n }\r\n\r\n static defaultProps = {\r\n featureName: '',\r\n permissions: {},\r\n activity: { signal: _.noop, trace: _.noop },\r\n logger: { trace: _.noop, error: _.noop },\r\n resourcePath: 'https://ui.ads.microsoft.com/campaign/virtualagent',\r\n context: {\r\n accountNumber: '',\r\n flowId: 'advertiser',\r\n },\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n isLoading: true,\r\n issue: '-1',\r\n };\r\n }\r\n\r\n handleSubmit = () => {\r\n const { language, region } = this.props.i18n.getCldr().attributes;\r\n const contextArray = [\r\n { name: 'account number', value: this.props.context.accountNumber },\r\n ];\r\n window.open(\r\n `${this.props.resourcePath}?locale=${language}-${region}&virtual=false&modality=callback&issue=${this.state.issue}&context=${encodeURIComponent(JSON.stringify(contextArray))}&flowid=${this.props.context.flowId || 'advertiser'}`,\r\n '_blank',\r\n 'width=360,height=480,resizable=1,scrollbars=1'\r\n );\r\n this.props.onSuccess();\r\n this.props.activity.signal('onSubmit: open a new window');\r\n this.props.activity.signal(`issue: ${this.state.issue}`);\r\n this.props.logger.trace('Request-call-modal: handleSubmit', 'onSubmit: open a new window');\r\n this.props.logger.trace('Request-call-modal: handleSubmit', `issue: ${this.state.issue}`);\r\n }\r\n\r\n handleSelectChange = (issue) => {\r\n this.setState({\r\n issue,\r\n isLoading: issue === '-1',\r\n });\r\n }\r\n\r\n render() {\r\n this.props.activity.signal('RequestCallFormInternal render');\r\n this.props.logger.trace('Request-call-modal: render', 'RequestCallFormInternal render');\r\n\r\n return (\r\n
\r\n
\r\n \r\n
{this.props.i18n.getString('RequestCallModal_CallMeBack')}
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport const RequestCallForm = withActivityContext(RequestCallFormInternal);\r\n","export { SupportCategorySelector } from './src/index';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\n\r\nconst countryMarketMapping = {\r\n AU: 'APAC', // Australia\r\n IN: 'APAC', // India\r\n ID: 'APAC', // Indonesia\r\n MY: 'APAC', // Malaysia\r\n NZ: 'APAC', // New Zealand\r\n PH: 'APAC', // Philippines\r\n SG: 'APAC', // Singapore\r\n TH: 'APAC', // Thailand\r\n VN: 'APAC', // Vietnam\r\n DK: 'EMEA', // Denmark\r\n FI: 'EMEA', // Finland\r\n IE: 'EMEA', // Ireland\r\n NO: 'EMEA', // Norway\r\n GB: 'UK', // United Kingdom // GB belongs to EMEA, use UK here for feature convenient\r\n SE: 'EMEA', // Seeden\r\n US: 'NA', // United States\r\n CA: 'NA', // Canada\r\n DE: 'LATAM', // Germany\r\n AT: 'LATAM', // Austria\r\n CH: 'LATAM', // Switerland\r\n ES: 'LATAM', // Spain\r\n MX: 'LATAM', // Mexico\r\n AR: 'LATAM', // Argentina\r\n CL: 'LATAM', // Chile\r\n CO: 'LATAM', // Colombia\r\n PE: 'LATAM', // Peru\r\n VE: 'LATAM', // Venezuela\r\n FR: 'LATAM', // France\r\n IT: 'LATAM', // Italy\r\n NL: 'LATAM', // Netherlands\r\n BR: 'LATAM', // Brazil\r\n};\r\n\r\nconst issueValues = {\r\n RequestCallModal_AdvertiserSupport: 'I need help with Microsoft Advertising or have a general question',\r\n RequestCallModal_AgencySupport: 'I am an agency managing clients on Microsoft Advertising',\r\n RequestCallModal_ComplexSupportScenario: 'I have a question about Microsoft Shopping Campaign or conversion tracking',\r\n RequestCallModal_OptimizationConsult: 'I want coaching on how to optimize my campaign performance',\r\n RequestCallModal_SmartCampaign: 'I need help with Smart campaigns or have a general question',\r\n RequestCallModal_DMCSupport: 'I need help with Digital Marketing Center or have a general question',\r\n RequestCallModal_UPSupport: 'I need help with Multiplatform campaigns or have a general question',\r\n RequestCallModal_SmartPageSupport: 'I need help with Smart Pages or have a general question',\r\n RequestCallModal_ConversionTracking: 'I need help with conversion tracking',\r\n};\r\n\r\nexport const UP_SUPPORT_CHAT_LINK = 'https://vsa.services.microsoft.com/en-us/v1.0/?product=bingads&issue=Ads-Experiment&disability=false&mode=live&partnerId=a1689b11-62c0-4f31-be04-05982f92b619&modality=occhat&flowId=Showcase-Exp&queue=/chat/122';\r\n\r\nconst featureIssuesMapping = {\r\n DMC: [\r\n { reasonKey: 'DMC-Support', reasonName: 'RequestCallModal_DMCSupport' },\r\n ],\r\n SmartCampaign: [\r\n { reasonKey: 'Smart-Campaign', reasonName: 'RequestCallModal_SmartCampaign' },\r\n ],\r\n // since the UP calls/chats will be routed to the DMC Support team,\r\n // for now we should go with the DMC Product Pair\r\n UP: [\r\n { reasonKey: 'DMC-Support', reasonName: 'RequestCallModal_UPSupport' },\r\n ],\r\n SmartPage: [\r\n { reasonKey: 'DMC-Support', reasonName: 'RequestCallModal_SmartPageSupport' },\r\n ],\r\n // special handle for en-US switch to expert user\r\n EnUsSwitchToExpert: [\r\n { reasonKey: 'DMC-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n ],\r\n UPConversionTracking: [\r\n { reasonKey: 'Showcase-Support', reasonName: 'RequestCallModal_ConversionTracking', customSupportLink: UP_SUPPORT_CHAT_LINK },\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n ],\r\n Default: [\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n ],\r\n};\r\n\r\nconst fullSupportList = [\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n { reasonKey: 'Agency-Support', reasonName: 'RequestCallModal_AgencySupport' },\r\n { reasonKey: 'Complex-Support-Scenario', reasonName: 'RequestCallModal_ComplexSupportScenario' },\r\n { reasonKey: 'Optimization-Consult', reasonName: 'RequestCallModal_OptimizationConsult' },\r\n];\r\n\r\nconst defaultSupportList = [\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n { reasonKey: 'Agency-Support', reasonName: 'RequestCallModal_AgencySupport' },\r\n { reasonKey: 'Optimization-Consult', reasonName: 'RequestCallModal_OptimizationConsult' },\r\n];\r\n\r\nconst frCAList = [\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n { reasonKey: 'Agency-Support', reasonName: 'RequestCallModal_AgencySupport' },\r\n];\r\n\r\nconst jaJPList = [\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n];\r\n\r\nconst defaultSupportListForChat = [\r\n { reasonKey: 'Advertiser-Support', reasonName: 'RequestCallModal_AdvertiserSupport' },\r\n { reasonKey: 'Agency-Support', reasonName: 'RequestCallModal_AgencySupport' },\r\n { reasonKey: 'Complex-Support-Scenario', reasonName: 'RequestCallModal_ComplexSupportScenario' },\r\n];\r\n\r\nconst marketIssuesMappingV2 = {\r\n NA: fullSupportList,\r\n // UK: fullSupportList,\r\n Default: defaultSupportList,\r\n};\r\n\r\nconst marketIssuesMappingV2ForChat = {\r\n Default: defaultSupportListForChat,\r\n};\r\n\r\nexport class SupportCategorySelector extends React.PureComponent {\r\n static propTypes = {\r\n onMount: PropTypes.func,\r\n onSelectChange: PropTypes.func,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n getCldr: PropTypes.func,\r\n }).isRequired,\r\n featureName: PropTypes.string,\r\n for: PropTypes.string,\r\n classes: PropTypes.string,\r\n permissions: PropTypes.shape({\r\n }),\r\n market: PropTypes.shape({\r\n region: PropTypes.string,\r\n language: PropTypes.string,\r\n }),\r\n };\r\n\r\n static defaultProps = {\r\n featureName: '',\r\n onMount: _.noop,\r\n onSelectChange: _.noop,\r\n classes: '',\r\n permissions: {},\r\n for: 'call',\r\n market: undefined,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n let { region } = this.props.i18n.getCldr().attributes;\r\n const { bundle } = this.props.i18n.getCldr().attributes;\r\n if (props.market) {\r\n ({ region } = props.market);\r\n }\r\n\r\n let mapping = marketIssuesMappingV2;\r\n if (props.for === 'chat') {\r\n mapping = marketIssuesMappingV2ForChat;\r\n }\r\n this.issueList = props.featureName ?\r\n (featureIssuesMapping[props.featureName] || featureIssuesMapping.Default) :\r\n (mapping[countryMarketMapping[region]] || mapping.Default);\r\n\r\n if (bundle === 'fr-CA' && props.for !== 'chat' && !props.featureName) {\r\n this.issueList = frCAList;\r\n }\r\n\r\n if (bundle === 'ja' && !props.featureName) {\r\n this.issueList = jaJPList;\r\n }\r\n\r\n this.state = {\r\n issueIndex: this.issueList.length > 1 ? '-1' : '0',\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const issue = this.state.issueIndex === '-1' ?\r\n this.state.issueIndex : this.issueList[this.state.issueIndex].reasonKey;\r\n this.props.onMount(issue);\r\n }\r\n\r\n handleSelectChange = (e) => {\r\n const { target } = e;\r\n const { name, value } = target;\r\n this.setState({\r\n [name]: value, // set issueIndex\r\n });\r\n\r\n if (value === '-1') {\r\n this.props.onSelectChange(value);\r\n } else {\r\n const { reasonKey: issue, customSupportLink } = this.issueList[value];\r\n this.props.onSelectChange(issue, customSupportLink);\r\n }\r\n };\r\n\r\n render() {\r\n const reasonInputId = `reason-input-${_.uniqueId()}`;\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__11__;","module.exports = __WEBPACK_EXTERNAL_MODULE__121__;","export { SupportModals } from './src/support-modals';\r\nexport { FloatingHelp } from './src/floating-help';\r\n","import $ from 'jquery';\r\nimport _ from 'underscore';\r\nimport React, { useEffect, useRef, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport '@bingads-webui-help/apex';\r\nimport { withActivityContext } from '@bingads-webui-react/hoc-with-signal';\r\n\r\nimport { RequestChatSupport } from './ms-chat-support';\r\nimport { RequestCallSupport } from './request-call-support';\r\nimport { initApexPlatform } from './initialize-apex';\r\n\r\nfunction useDeepMemo(value) {\r\n const ref = useRef(null);\r\n if (!_.isEqual(value, ref.current)) {\r\n ref.current = value;\r\n }\r\n\r\n return ref.current;\r\n}\r\n\r\nconst SupportModalsInternal = (props) => {\r\n const {\r\n supportOptions,\r\n permissions,\r\n userContext,\r\n helpModel,\r\n i18n,\r\n isCopilotEnabled,\r\n currentLocale,\r\n featureName,\r\n chatPortalClassName,\r\n callPortalClassName,\r\n showRequestCall,\r\n showRequestChat,\r\n apexConfig,\r\n activity,\r\n onRailViewOpen,\r\n onRailViewClose,\r\n onPopupOpen,\r\n onPopupClose,\r\n renderApexHelpSuggestions,\r\n renderSearchInputIcon,\r\n } = props;\r\n\r\n activity.trace('helpmodel: SupportModals render');\r\n activity.trace(`helpModel: ${JSON.stringify(helpModel)}, apexConfig: ${JSON.stringify(apexConfig)}, currentLocale: ${currentLocale}`);\r\n\r\n const onHelpPopupOpenWithA11yFix = useCallback((containerNode) => {\r\n if (onPopupOpen) {\r\n onPopupOpen(containerNode);\r\n }\r\n $(containerNode).find('.HelpTopic').attr('role', 'button');\r\n }, [onPopupOpen]);\r\n\r\n const initializeProps = useDeepMemo({\r\n supportOptions,\r\n userContext,\r\n helpModel,\r\n apexConfig,\r\n currentLocale,\r\n onRailViewOpen,\r\n onRailViewClose,\r\n onPopupOpen: onHelpPopupOpenWithA11yFix,\r\n onPopupClose,\r\n renderApexHelpSuggestions,\r\n renderSearchInputIcon,\r\n });\r\n\r\n useEffect(() => {\r\n activity.trace(`helpmodel: SupportModals initApexPlatform, ${helpModel && helpModel.BaseHelpUrl}`);\r\n // Once element has been loaded into DOM, initialize apex\r\n initApexPlatform(initializeProps, activity.trace);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [initializeProps]);\r\n\r\n const currentAccount = userContext.currentAccount || userContext.CurrentAccount;\r\n\r\n return (\r\n \r\n {showRequestCall &&\r\n \r\n }\r\n {showRequestChat &&\r\n \r\n }\r\n \r\n );\r\n};\r\n\r\nSupportModalsInternal.propTypes = {\r\n supportOptions: PropTypes.shape({}).isRequired,\r\n permissions: PropTypes.shape({}).isRequired,\r\n userContext: PropTypes.shape({\r\n CurrentAccount: PropTypes.shape({\r\n AccountNumber: PropTypes.string,\r\n ShortName: PropTypes.string,\r\n Name: PropTypes.string,\r\n }),\r\n CurrentCustomer: PropTypes.shape({\r\n Id: PropTypes.number,\r\n Name: PropTypes.string,\r\n }),\r\n CurrentUser: PropTypes.shape({\r\n Market: PropTypes.string,\r\n Name: PropTypes.string,\r\n Email: PropTypes.string,\r\n }),\r\n }).isRequired,\r\n onRailViewOpen: PropTypes.func,\r\n onRailViewClose: PropTypes.func,\r\n onPopupOpen: PropTypes.func,\r\n onPopupClose: PropTypes.func,\r\n helpModel: PropTypes.shape({\r\n BaseHelpUrl: PropTypes.string.isRequired,\r\n }).isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n isCopilotEnabled: PropTypes.bool,\r\n currentLocale: PropTypes.string.isRequired,\r\n featureName: PropTypes.string,\r\n chatPortalClassName: PropTypes.string,\r\n callPortalClassName: PropTypes.string,\r\n showRequestCall: PropTypes.bool,\r\n showRequestChat: PropTypes.bool,\r\n apexConfig: PropTypes.shape({\r\n Project: PropTypes.string,\r\n EndPoint: PropTypes.string,\r\n SourceEndPoint: PropTypes.string,\r\n }),\r\n activity: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n renderApexHelpSuggestions: PropTypes.func,\r\n renderSearchInputIcon: PropTypes.func,\r\n};\r\n\r\nSupportModalsInternal.defaultProps = {\r\n featureName: undefined,\r\n chatPortalClassName: undefined,\r\n callPortalClassName: undefined,\r\n showRequestCall: true,\r\n showRequestChat: true,\r\n apexConfig: {},\r\n activity: { trace: _.noop },\r\n onRailViewOpen: () => { },\r\n onRailViewClose: () => { },\r\n onPopupOpen: () => { },\r\n onPopupClose: () => { },\r\n renderApexHelpSuggestions: undefined,\r\n renderSearchInputIcon: undefined,\r\n isCopilotEnabled: false,\r\n};\r\n\r\nexport const SupportModals = withActivityContext(SupportModalsInternal);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1243__;","import $ from 'jquery';\r\nimport React, { useState, useMemo, useEffect, useCallback } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { buildLegacyI18n } from '@bingads-webui/build-legacy-i18n';\r\nimport { MsSupportChatModal } from '@bingads-webui-react/ms-support-chat-modal';\r\nimport { getRegion } from './utils';\r\n\r\nexport const msSupportChatLocalization = {\r\n MsSupportChatModal_Continue: _TL_('Continue'),\r\n MsSupportChatModal_Cancel: _TL_('Cancel'),\r\n MsSupportChatModal_Close: _TL_('Close'),\r\n MsSupportChatModal_Title: _TL_('Start a live chat'),\r\n MsSupportChatModal_Description: _TL_('Description'),\r\n MsSupportChatModal_Description_Placeholder: _TL_('Add more information so we can help you quickly.'),\r\n MsSupportChatModal_VirtualAgent_WelcomeMessage: _TL_(\"Hi! I'm a Microsoft Advertising Virtual Agent. I'd love to help you. Please do not include any sensitive information during our conversation.\"),\r\n MsSupportChatModal_DialogReadyLabel: _TL_('Start a live chat dialog is ready'),\r\n MsSupportChatModal_BR_Alert: _TL_('We are currently experiencing high volume of Portuguese chat requests. In the meantime, you can go back to the help menu and request English support that is available 24/7.'),\r\n MsSupportChatModal_EN_Alert: _TL_('We are experiencing higher than normal chat volume and will assist you as soon as possible. Thank you for your patience.'),\r\n RequestCallModal_ReasonForCall: _TL_('How can we help you?'),\r\n RequestCallModal_AdvertiserSupport: _TL_('I need help with Microsoft Advertising or have a general question'),\r\n RequestCallModal_AgencySupport: _TL_('I am an agency managing clients on Microsoft Advertising'),\r\n RequestCallModal_ComplexSupportScenario: _TL_('I have a question about Microsoft Shopping Campaign or conversion tracking'),\r\n RequestCallModal_OptimizationConsult: _TL_('I want coaching on how to optimize my campaign performance'),\r\n RequestCallModal_SmartCampaign: _TL_('I need help with Smart campaigns or have a general question'),\r\n RequestCallModal_DMCSupport: _TL_('I need help with Digital Marketing Center or have a general question'),\r\n RequestCallModal_UPSupport: _TL_('I need help with Multiplatform campaigns or have a general question'),\r\n RequestCallModal_SmartPageSupport: _TL_('I need help with Smart Pages or have a general question'),\r\n Warning: _TL_('Warning'),\r\n};\r\n\r\nexport const RequestChatSupport = (props) => {\r\n const {\r\n activity,\r\n i18n,\r\n isCopilotEnabled,\r\n currentAccount,\r\n permissions,\r\n supportOptions,\r\n featureName,\r\n portalClassName,\r\n flowId,\r\n } = props;\r\n const [open, setOpen] = useState(false);\r\n const [market, setMarket] = useState(undefined);\r\n const legacyi18n = useMemo(() => buildLegacyI18n(i18n, [msSupportChatLocalization], []), [i18n]);\r\n const accountNumber = currentAccount && currentAccount.AccountNumber;\r\n const [onCancelCallback, setOnCancelCallback] = useState(null);\r\n const { IfShowLiveChat } = supportOptions;\r\n\r\n const onClose = useCallback(() => {\r\n setOpen(false);\r\n if (onCancelCallback) {\r\n onCancelCallback();\r\n }\r\n }, [onCancelCallback]);\r\n\r\n const chatCopilotTrigger = useCallback(() => {\r\n activity.trace(`${getRegion(i18n)} copilot live agent support triggered from ms-chat-support`);\r\n\r\n const detail = {\r\n eventType: 'action',\r\n eventData: {\r\n ActionId: 'liveAgentSupport',\r\n FlowId: 'Copilot-Help-GetStarted-StartLiveChat',\r\n },\r\n };\r\n\r\n document.dispatchEvent(new CustomEvent('copilotToggleEvent', { detail }));\r\n if (_.isFunction(window.apex_glb.closeHelpView)) {\r\n window.apex_glb.closeHelpView();\r\n }\r\n }, [activity, i18n]);\r\n\r\n useEffect(() => {\r\n let cancelled = false;\r\n const handler = (e, data) => {\r\n if (isCopilotEnabled) {\r\n chatCopilotTrigger();\r\n } else {\r\n setOnCancelCallback(data && data.onCancel);\r\n /* istanbul ignore next */\r\n if (!cancelled) {\r\n setOpen(true);\r\n if (!_.isEqual(market, data && data.market)) {\r\n setMarket(data && data.market);\r\n }\r\n }\r\n }\r\n };\r\n\r\n $('.livechat-text-block, .ms-support-chat__text-block, #msSupportChatTrigger').on('click', handler);\r\n return () => {\r\n cancelled = true;\r\n $('.livechat-text-block, .ms-support-chat__text-block, #msSupportChatTrigger').off('click', handler);\r\n };\r\n }, [market, chatCopilotTrigger, isCopilotEnabled]);\r\n\r\n if (!IfShowLiveChat) return (null);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nRequestChatSupport.propTypes = {\r\n supportOptions: PropTypes.shape({}).isRequired,\r\n currentAccount: PropTypes.shape({}),\r\n permissions: PropTypes.shape({}).isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n featureName: PropTypes.string,\r\n portalClassName: PropTypes.string,\r\n flowId: PropTypes.string,\r\n activity: PropTypes.shape({}).isRequired,\r\n isCopilotEnabled: PropTypes.bool,\r\n};\r\n\r\nRequestChatSupport.defaultProps = {\r\n flowId: 'advertiser',\r\n currentAccount: {},\r\n featureName: undefined,\r\n portalClassName: undefined,\r\n isCopilotEnabled: false,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1245__;","import _ from 'underscore';\r\n\r\nexport const getRegion = (i18n) => {\r\n let region = '';\r\n if (!_.isEmpty(i18n) && _.isFunction(i18n.getCldr)) {\r\n const cldr = i18n.getCldr();\r\n region = _.get(cldr, ['attributes', 'region']) || '';\r\n }\r\n return region;\r\n};\r\n","import $ from 'jquery';\r\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { isEmpty } from 'underscore';\r\nimport { buildLegacyI18n } from '@bingads-webui/build-legacy-i18n';\r\nimport { RequestCallModal } from '@bingads-webui-react/request-call-modal';\r\n\r\nexport const requestCallModalLocalization = {\r\n RequestCallModal_Continue: _TL_('Continue'),\r\n RequestCallModal_Cancel: _TL_('Cancel'),\r\n RequestCallModal_Close: _TL_('Close'),\r\n RequestCallModal_CallMeBack: _TL_('Call me back'),\r\n RequestCallModal_ReasonForCall: _TL_('How can we help you?'),\r\n RequestCallModal_AdvertiserSupport: _TL_('I need help with Microsoft Advertising or have a general question'),\r\n RequestCallModal_AgencySupport: _TL_('I am an agency managing clients on Microsoft Advertising'),\r\n RequestCallModal_ComplexSupportScenario: _TL_('I have a question about Microsoft Shopping Campaign or conversion tracking'),\r\n RequestCallModal_OptimizationConsult: _TL_('I want coaching on how to optimize my campaign performance'),\r\n RequestCallModal_SmartCampaign: _TL_('I need help with Smart campaigns or have a general question'),\r\n RequestCallModal_DMCSupport: _TL_('I need help with Digital Marketing Center or have a general question'),\r\n RequestCallModal_UPSupport: _TL_('I need help with Multiplatform campaigns or have a general question'),\r\n RequestCallModal_SmartPageSupport: _TL_('I need help with Smart Pages or have a general question'),\r\n RequestCallModal_DialogReadyLabel: _TL_('Call me back dialog is ready'),\r\n};\r\n\r\nexport const RequestCallSupport = (props) => {\r\n const {\r\n i18n,\r\n permissions,\r\n currentAccount,\r\n supportOptions,\r\n featureName,\r\n portalClassName,\r\n flowId,\r\n } = props;\r\n const accountNumber = currentAccount && currentAccount.AccountNumber;\r\n const [open, setOpen] = useState(false);\r\n const [onCancelCallback, setOnCancelCallback] = useState(null);\r\n const { RequestCallText } = supportOptions;\r\n const legacyi18n = useMemo(\r\n () => buildLegacyI18n(i18n, [requestCallModalLocalization], []),\r\n [i18n]\r\n );\r\n\r\n const onClose = useCallback(() => {\r\n setOpen(false);\r\n if (onCancelCallback) {\r\n onCancelCallback();\r\n }\r\n }, [onCancelCallback]);\r\n\r\n const isSupported = !isEmpty(RequestCallText);\r\n\r\n useEffect(() => {\r\n let cancelled = false;\r\n const handler = (e, data) => {\r\n setOnCancelCallback(data && data.onCancel);\r\n /* istanbul ignore next */\r\n if (!cancelled) {\r\n setOpen(true);\r\n }\r\n };\r\n\r\n $('#requestCallTrigger').on('click', handler);\r\n return () => {\r\n cancelled = true;\r\n $('#requestCallTrigger').off('click', handler);\r\n };\r\n }, []);\r\n\r\n if (!isSupported) return (null);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nRequestCallSupport.propTypes = {\r\n supportOptions: PropTypes.shape({}).isRequired,\r\n permissions: PropTypes.shape({}).isRequired,\r\n currentAccount: PropTypes.shape({}),\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n featureName: PropTypes.string,\r\n portalClassName: PropTypes.string,\r\n flowId: PropTypes.string,\r\n};\r\n\r\nRequestCallSupport.defaultProps = {\r\n currentAccount: {},\r\n flowId: 'advertiser',\r\n featureName: undefined,\r\n portalClassName: undefined,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1248__;","/* istanbul ignore file */\r\n\r\nimport _ from 'underscore';\r\nimport $ from 'jquery';\r\n\r\nconst DEFAULT_LOCALE = 'US';\r\nconst DEFAULT_MARKET = 'en-US';\r\nconst DEFAULT_PROJECT = 'bing_ads';\r\n\r\nfunction isApexDisabled() {\r\n const uri = new URL(window.location.href);\r\n return uri.searchParams && _.isFunction(uri.searchParams.get) && uri.searchParams.get('apexDisabled') === 'true';\r\n}\r\n\r\nexport function initApexPlatform({\r\n currentLocale,\r\n userContext = {},\r\n supportOptions: supportConfigs = {},\r\n helpModel = {},\r\n apexConfig = {},\r\n onRailViewOpen,\r\n onRailViewClose,\r\n onPopupOpen,\r\n onPopupClose,\r\n renderApexHelpSuggestions,\r\n renderSearchInputIcon,\r\n}, log) {\r\n if (_.isFunction($.fn.InitApexPlatform)) {\r\n window.config = {\r\n getScriptForAds: (reserved, init) => { init(); },\r\n };\r\n\r\n const currentAccount = userContext.CurrentAccount || {};\r\n const currentCustomer = userContext.CurrentCustomer || {};\r\n const currentUser = userContext.CurrentUser || {};\r\n\r\n const phoneSupportSchedule = supportConfigs.PhoneSupportSchedule || {};\r\n const emailSupportSchedule = supportConfigs.EmailSupportSchedule || {};\r\n\r\n const market = currentLocale || currentUser.Market || DEFAULT_LOCALE;\r\n const supportMarket = helpModel.SupportMarket || DEFAULT_MARKET;\r\n\r\n // Can be overridden, useful for DMC feature\r\n const Project = apexConfig.Project || DEFAULT_PROJECT;\r\n let EndPoint = apexConfig.EndPoint || helpModel.BaseHelpUrl;\r\n // If apexDisabled flag is true, reset apex endpoint to a fake URL\r\n if (isApexDisabled()) {\r\n EndPoint = 'https://help.notexist.microsoft.com';\r\n }\r\n\r\n const SourceEndPoint = apexConfig.SourceEndPoint ? apexConfig.SourceEndPoint : undefined;\r\n const apexInitOptions = {\r\n SupportOptions: {\r\n AccountNumber: currentAccount.AccountNumber || '',\r\n AccountName: currentAccount.ShortName || currentAccount.Name,\r\n CustomerId: currentCustomer.Id || '',\r\n CustomerName: currentCustomer.Name || '',\r\n UserName: currentUser.Name || '',\r\n UserEmail: currentUser.Email,\r\n ShowLivePerson: supportConfigs.IfShowLiveChat,\r\n LivePersonSection: supportConfigs.LiveChatSection,\r\n PhoneLabel: supportConfigs.PhoneSupportLabel,\r\n Phone: supportConfigs.IfShowPhoneSupport ? supportConfigs.PhoneSupportNumber : null,\r\n PhoneInterval: phoneSupportSchedule.Interval,\r\n PhoneTimeZone: phoneSupportSchedule.TimeZone,\r\n EmailLabel: supportConfigs.EmailSupportEmail,\r\n Email: supportConfigs.EmailSupportEmail,\r\n EmailInterval: emailSupportSchedule.Interval,\r\n EmailTimeZone: emailSupportSchedule.TimeZone,\r\n AskCommunity: supportConfigs.CommunityUrl,\r\n },\r\n Project,\r\n Market: market,\r\n EndPoint,\r\n SourceEndPoint,\r\n Success: null,\r\n SupportMarket: supportMarket,\r\n InitAnswerBar: false,\r\n InitPopup: true,\r\n InitOnReady: false,\r\n onRailViewOpen,\r\n onRailViewClose,\r\n onPopupOpen,\r\n onPopupClose,\r\n renderApexHelpSuggestions,\r\n renderSearchInputIcon,\r\n };\r\n\r\n if (log) {\r\n log(`helpModel: apexInitOptions: ${JSON.stringify(apexInitOptions)}`);\r\n }\r\n\r\n if (window.apex_glb && window.apex_glb.Initialized) {\r\n // If apex is already initialized, we need to update the global variables\r\n // Use _.omit to remove undefined values\r\n _.extend(window.apex_glb, _.omit({\r\n SupportOptions: apexInitOptions.SupportOptions,\r\n Project,\r\n Market: market,\r\n EndPoint,\r\n SourceEndPoint,\r\n SupportMarket: supportMarket,\r\n }, _.isUndefined));\r\n } else {\r\n $.fn.InitApexPlatform(apexInitOptions);\r\n }\r\n }\r\n}\r\n","import _ from 'underscore';\r\nimport React, { useState, Fragment } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport $ from 'jquery';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Glyphicon, Button } from '@bingads-webui-react/primitive';\r\nimport { getFloatingHelpStyles } from '../styles/get-floating-help-styles';\r\nimport { FloatingGroup } from './floating-group';\r\n\r\nconst FloatingHelpUnStyled = ({\r\n classes,\r\n i18n,\r\n supportOptions,\r\n bottomPosition,\r\n uiActivity,\r\n isExpandedDefault,\r\n shouldSupportMobileView,\r\n}) => {\r\n const [expanded, setExpanded] = useState(isExpandedDefault);\r\n const { IfShowLiveChat, RequestCallText } = supportOptions;\r\n\r\n const clickContactUs = () => {\r\n const currectExpandedState = !expanded;\r\n uiActivity.trace(`Floating help: ${currectExpandedState ? 'Expand' : 'Collapse'} contact us button`);\r\n setExpanded(currectExpandedState);\r\n };\r\n\r\n const clickChat = () => {\r\n uiActivity.trace('Floating help: Start a live chat');\r\n $('#msSupportChatTrigger').click();\r\n };\r\n\r\n const clickCall = () => {\r\n uiActivity.trace('Floating help: Request a call from support');\r\n $('#requestCallTrigger').click();\r\n };\r\n\r\n const items = [\r\n IfShowLiveChat && {\r\n id: 'floatingChat',\r\n className: 'floating-chat',\r\n renderItem: () => (\r\n \r\n \r\n \r\n \r\n {i18n.getString(_TL_('Start a live chat'))}\r\n \r\n \r\n
\r\n
\r\n ),\r\n },\r\n !_.isEmpty(RequestCallText) && {\r\n id: 'floatingCall',\r\n className: 'floating-call',\r\n renderItem: () => (\r\n \r\n \r\n \r\n {i18n.getString(_TL_('Request a call from support'))}\r\n \r\n \r\n ),\r\n },\r\n ];\r\n\r\n const floatingHelpClassNames = ['floating-help', classes.floatingHelp, { [classes.mobileView]: shouldSupportMobileView, 'mobile-view': shouldSupportMobileView }];\r\n\r\n return (\r\n (IfShowLiveChat || !_.isEmpty(RequestCallText)) &&\r\n
\r\n \r\n \r\n \r\n {i18n.getString(_TL_('Contact us'))}\r\n \r\n \r\n {\r\n expanded &&\r\n
\r\n \r\n
\r\n }\r\n
\r\n );\r\n};\r\n\r\nFloatingHelpUnStyled.propTypes = {\r\n classes: PropTypes.shape({\r\n floatingHelp: PropTypes.string.isRequired,\r\n }).isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n bottomPosition: PropTypes.string,\r\n uiActivity: PropTypes.shape({}).isRequired,\r\n supportOptions: PropTypes.shape({\r\n IfShowLiveChat: PropTypes.bool,\r\n RequestCallText: PropTypes.string,\r\n }).isRequired,\r\n isExpandedDefault: PropTypes.bool,\r\n shouldSupportMobileView: PropTypes.bool,\r\n};\r\n\r\nFloatingHelpUnStyled.defaultProps = {\r\n bottomPosition: '',\r\n isExpandedDefault: true,\r\n shouldSupportMobileView: false,\r\n};\r\n\r\nexport const FloatingHelp = withDefaultStyles(FloatingHelpUnStyled, getFloatingHelpStyles);\r\n","import LiveChatLogo from '../media/LiveChatLogo.svg';\r\nimport RequestCallLogo from '../media/RequestCallLogo.svg';\r\n\r\nexport const getFloatingHelpStyles = () => ({\r\n floatingHelp: {\r\n position: 'fixed',\r\n right: 32,\r\n zIndex: 2,\r\n boxShadow: '0px 4px 4px rgba(0, 0, 0, 0.25)',\r\n\r\n '& .floating-help-contact-us-button': {\r\n minHeight: 63,\r\n width: 233,\r\n background: '#004578',\r\n textAlign: 'left',\r\n fontWeight: 'normal',\r\n borderRadius: 0,\r\n display: 'flex',\r\n\r\n '&:hover': {\r\n background: '#004578',\r\n },\r\n\r\n '& .iconba': {\r\n paddingRight: 12,\r\n },\r\n },\r\n\r\n '& .floating-contact-us-text': {\r\n wordBreak: 'break-word',\r\n whiteSpace: 'normal',\r\n alignSelf: 'center',\r\n },\r\n\r\n '& .floating-contact-us-icon': {\r\n alignSelf: 'center',\r\n },\r\n\r\n '& .floating-help-group': {\r\n position: 'relative',\r\n background: '#004578',\r\n\r\n '& .floating-chat-button, .floating-call-button': {\r\n minHeight: 63,\r\n width: 233,\r\n textAlign: 'left',\r\n fontWeight: 'normal',\r\n borderRadius: 0,\r\n\r\n '& > span': {\r\n verticalAlign: 'middle',\r\n },\r\n\r\n '& .glyphicon': {\r\n backgroundRepeat: 'no-repeat',\r\n width: 24,\r\n height: 24,\r\n marginRight: 12,\r\n },\r\n\r\n '& .floating-chat-glyph': {\r\n backgroundImage: `url(\"${LiveChatLogo}\")`,\r\n },\r\n\r\n '& .floating-call-glyph': {\r\n backgroundImage: `url(\"${RequestCallLogo}\")`,\r\n },\r\n\r\n '& .floating-chat-text, .floating-call-text': {\r\n display: 'inline-block',\r\n width: 140,\r\n wordBreak: 'break-word',\r\n whiteSpace: 'normal',\r\n textDecoration: 'underline',\r\n },\r\n },\r\n\r\n '& .floating-group': {\r\n background: '#0078d4',\r\n },\r\n\r\n '& hr': {\r\n marginTop: 0,\r\n marginBottom: 0,\r\n width: 190,\r\n borderTop: '1px solid rgba(255, 255, 255, 0.3)',\r\n },\r\n },\r\n },\r\n mobileView: {\r\n '@media only screen and (max-width: 600px)': {\r\n right: 5,\r\n '& .floating-help-contact-us-button': {\r\n width: 170,\r\n },\r\n },\r\n },\r\n});\r\n","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/LiveChatLogo.e714a4d1.svg\";","module.exports = (window.__publicpath__ || __webpack_public_path__) + \"static/media/RequestCallLogo.d969ae2b.svg\";","import _ from 'underscore';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getFloatingGroupStyles } from '../styles/get-floating-group-styles';\r\n\r\nexport const FloatingGroupUnstyled = ({ items, classes, shouldSupportMobileView }) => (\r\n
\r\n {items.map((item, index) => {\r\n const itemId = item.id ? item.id : `FloatingItem-${index}`;\r\n\r\n return (\r\n \r\n {_.isFunction(item.renderItem) && item.renderItem()}\r\n
\r\n );\r\n })}\r\n
\r\n);\r\n\r\nFloatingGroupUnstyled.propTypes = {\r\n items: PropTypes.arrayOf(PropTypes.any),\r\n classes: PropTypes.shape({ floatingGroup: PropTypes.string }).isRequired,\r\n shouldSupportMobileView: PropTypes.bool,\r\n};\r\n\r\nFloatingGroupUnstyled.defaultProps = {\r\n items: [],\r\n shouldSupportMobileView: false,\r\n};\r\n\r\nexport const FloatingGroup = withDefaultStyles(FloatingGroupUnstyled, getFloatingGroupStyles);\r\n","export const getFloatingGroupStyles = () => ({\r\n floatingGroup: {\r\n position: 'absolute',\r\n bottom: 63,\r\n width: 233,\r\n boxShadow: '4px 4px 4px rgba(0, 0, 0, 0.25)',\r\n },\r\n mobileView: {\r\n '@media only screen and (max-width: 600px)': {\r\n right: 0,\r\n },\r\n },\r\n});\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__36__;","module.exports = __WEBPACK_EXTERNAL_MODULE__647__;","module.exports = __WEBPACK_EXTERNAL_MODULE__68__;","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"underscore\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"underscore\"], factory);\n\telse {\n\t\tvar a = typeof exports === 'object' ? factory(require(\"underscore\")) : factory(root[\"underscore\"]);\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__7__) {\nreturn ","export { setupClarity, setClarityTag } from './src/index';\r\n","/* eslint-disable */\r\nimport _ from 'underscore';\r\n\r\ndeclare global {\r\n interface Window {\r\n clarity?: (method: string, ...args: any[]) => void;\r\n }\r\n}\r\n\r\nexport interface ClarityTags {\r\n [key: string]: string | number | boolean | object;\r\n}\r\n\r\nfunction initialize(projectId: string): void {\r\n try {\r\n (function (c: Window & typeof globalThis, l: Document, a: string, r: string, i: string, t?: HTMLScriptElement, y?: Node) {\r\n c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments); };\r\n t = l.createElement(r) as HTMLScriptElement; t.async = true; t.src = `https://www.clarity.ms/tag/${i}`;\r\n y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y);\r\n }(window, document, 'clarity', 'script', projectId));\r\n } catch (all) { }\r\n}\r\n\r\nexport function setClarityTag(tags: ClarityTags): void {\r\n if (window.clarity) {\r\n _.each(_.keys(tags), (key) => {\r\n const tagValue = tags[key];\r\n if (tagValue) {\r\n window.clarity('set', key, _.isString(tagValue) ? tagValue : JSON.stringify(tagValue));\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport function setupClarity(projectId: string, tags: ClarityTags = {}, userId?: string, sessionId?: string, pageId?: string): void {\r\n initialize(projectId);\r\n\r\n setClarityTag(tags);\r\n\r\n if (userId || sessionId || pageId) {\r\n window.clarity('identify', userId, sessionId, pageId);\r\n }\r\n}"],"names":["_PreferenceService","_AppActivity","logSurvey","message","options","surveyId","trace","concat","error","console","log","retriggerQSI","window","QSI","API","unload","load","run","triggerQualtricsEvent","eventName","qualtrics","_qsie","push","events","_objectSpread","isLoaded","_defineProperty","updateQuatricsEvents","createDate","date","Date","getMonthAgo","month","now","setTime","getSurveyPreference","surveyPreference","findByNameAtUserLevel","Name","Data","Type","Version","getSurveyDataWithSurveyId","surveyPre","surveyData","_","result","value","surveyIsNotShowedOrExpired","expiredDate","show","stringifySync","type","data","shouldShowSurvey","_window$qualtrics","CurrentAccountCreatedDate","hasCampaign","oneMonthAgo","accountCreatedDate","e","updateGlobalQualtricsData","serverContext","CurrentUser","CurrentCustomer","CurrentAccount","Identity","Omniture","CurrentLocale","Language","toLowerCase","indexOf","aid","Id","cid","AdvertiserCustomerID","uid","CustomerName","AccountMode","UserName","Email","SessionId","IsInternal","CreatedDate","messageHandler","origin","_e$data","event","toISOString","setAtUserLevel","setSurveyShowed","setupQualtricsWithData","arguments","length","undefined","PreferenceService","enableIframeCommunication","appActivity","addEventListener","ApexUpdaterInternal","_ref","siteMap","apexViewName","ApexPlatform","currentPage","findDeepSiteMap","node","selected","replace","Refresh","_jsx","railviewId","style","display","ApexUpdater","withRouter","withSiteMap","React","processor","processPermissions","processPath","WalkMe","props","_useState","useState","_useState2","_slicedToArray","isInitialized","setInitialized","scope","useEffect","values","walkMeId","WalkMeAPI","startWalkthruById","startFlowById","remove","save","walkme_ready","language","userId","AccountNumber","_userId","substr","getCurrentLanguage","changeLanguage","document","querySelectorAll","forEach","walmeToDestory","propTypes","PropTypes","isRequired","QueryParam","WalkMeWithScopeAndContext","withServerContext","withScope","initWalkMe","subdirectory","IsProdEnv","walkme","createElement","async","src","getElementsByTagName","parentNode","insertBefore","_walkmeConfig","smartLoad","jQuery","uaMatch","ua","match","exec","browser","version","matched","navigator","userAgent","chrome","webkit","safari","apex_glb","EndPoint","SourceEndPoint","Project","ProjectId","ProjectAlias","Market","SupportMarket","SupportOptions","ApexWinName","LocStrings","ViewConfig","Suggestions","Tours","EmbeddedHelp","Query","Success","Failure","Authorize","Initialized","APIController","CurrentView","onRailViewClose","onRailViewOpen","onPopupOpen","onPopupClose","isApexPlatformEnabled","platform","enable","$","trim","attr","adsInit","helpContainerId","embeddedClientElementClass","RailView","ex","fn","CreatePopup","project","helpUrl","CreateAnswerBar","Product","HelpUrl","Enable","InitController","HelpContainerId","loadOtherFrameworks","apiUrl","combineBothFramework","enableEmbeddedHelp","config","getScriptForAds","AdsInit","getScript","textStatus","jqxhr","bindPlatformEvents","loadApexPopupFrameworks","popup_glb","ab_glb","handlePlatformGlobalsSuccessForInit","returnval","parseJSON","each","ViewItem","index","toUpperCase","status","handlePlatformGlobalsSuccessForRefresh","RailHelpController","handlePlatformGlobalsFailure","jqXHR","errorThrown","getPlatformGlobals","init","viewId","getViewName","attributes","input","url","ajax","contentType","crossDomain","cache","success","timeout","viewname","lochref","location","href","indexHash","pathname","indexQn","substring","paths","n","minLength","i","split","parseFloat","splice","linkHandler","elem","stopPropagation","Init","query","target","targetUrl","winref","open","focus","off","this","parent","matches","call","viewName","html","ApexTrapFocus","first","last","on","keyCode","which","shiftKey","preventDefault","AutoSuggestions","term","suggestionBox","showApexSuggestionsTerm","InitApexPlatform","$obj","thisElem","mainpulateRootElement","opts","extend","defaults","$this","o","meta","format","id","appendTo","endPoint","lastChar","InitAnswerBar","InitPopup","InitHelpCoach","InitOnReady","renderApexHelpSuggestions","renderSearchInputIcon","$searchBox","settings","topOffset","leftOffset","widthAdjustment","delay","heading","results","menuWidth","showNoSuggestionsMessage","noSuggestionsMessage","filter","filterPattern","ajaxError","ajaxSuccess","enterKeyAction","$suggestionBox","css","selectedHref","paramName","showApexSuggestions","active","showSuggestions","append","setSuggestionBoxPosition","ajaxCalledVal","selectedLi","mouseHover","timer","request","jsonData","mousemove","nodeName","$parentLi","children","getSelectionMouseIsOver","mouseout","resetSelection","mouseenter","blur","hideSuggestionBox","keyup","clearTimeout","val","setTimeout","dataType","selectionHasChanged","currentLi","JSON","stringify","setJsonData","keydown","listSize","find","moveDown","paste","removeClass","borders","getCssValue","padding","offset","height","element","name","parseInt","hide","showSuggestionBox","setSuggestionBoxWidth","searchBoxWidth","$searchIcon","width","getSearchBoxWidth","createSuggestionsList","$suggestions","key","suggestion","keys","Object","video","vids","filterResults","get","suggestionAmount","firstElem","lastElem","activeElement","className","json","regex","RegExp","grep","test","sort","body","resize","scroll","loadSuggestions","loadJson","addSuggestions","ready","initReady","origSlideDown","slideDown","speed","easing","callback","origCallback","self","args","Array","prototype","slice","len","isFunction","apply","ApexAPIEndPoint","CDNEndPoint","HelpProduct","HelpProject","HelpMarket","HelpLanguage","HelpSku","HelpWinName","ShowContact","ShowCommunity","ShowFooter","ShowFlyoutInNewBrowser","UseAPEXhref","HideABOnScreen","BarOrDropDownOrCustom","KnownIssueKey","BingYahooKey","HomeKey","CurrentQuery","FooterGlink","ContactSupportGlink","CommunityGlink","IsBIDIMarket","ContentRootElement","HelpOpened","apexHelpSpinOffWindow","HelpPopupLocalStrings","PopupCacheHandler","topicSet","topicResult","SetResultInCache","GetResultFromCache","AddTopicSet","GetTopicIds","queryContentIds","topicSetLength","GetTopicCount","PopupController","initialPosition","initializePopupGlobals","targetObj","isDraggable","bindTopicEvents","click","helpkey","PopupILog","LogAriaEvent","setForBidi","getDirection","left","position","handleSingleContentSuccess","singledata","Content","contentHtml","replacePlusMinusSearchImageSource","token","ContentID","helpWindow","setContainerPosition","pageHasIframe","enableDraggable","helpPopupTitle","text","lastElementNoSupport","FindLastVisibleElement","querySelector","handleVideoContentSuccess","Contents","HelpContent","found","helpVideoWindow","triggerHandler","unbind","handleContentFailure","applyDraggable","err","bind","containerWidth","outerWidth","containerHeight","outerHeight","draggable","greedy","handle","containment","scrollLeft","scrollTop","stop","ui","getParentWindow","container","widthContainer","zIndex","parentWindow","topoffset","rightOffset","scrollbarLiveArr","getScrollbarLive","movepopupLeft","currentPopupTrigger","getElementPosition","windowWidth","leftPosition","Math","max","paddingLeft","windowHeight","windowHeightOffset","helpHeight","screenInitialTopPosition","top","screenLowestPoint","topPosition","vernums","jquery","mozilla","currentWindowTop","helpWidth","w","d","c","compatMode","r","documentElement","innerWidth","clientWidth","innerHeight","clientHeight","scrollWidth","scrollHeight","offsetLeft","offsetTop","ancestor","matrix","translateX","translateY","tagName","offsetParent","parentOffset","isFinite","queryObj","market","product","sku","querytype","queries","contenttype","viewids","method","ContentId","QueryType","Queries","Filter","Sku","ContentType","ViewIDs","ViewId","Url","Token","Method","collapse","expand","search","replaceAll","withThis","getDefaultLocValues","locStr","dataNew","eval","setContactSupportLink","getComputedStyle","direction","currentStyle","clickEscKeyPopupCheck","el","popup","clickOutsidePopupCheck","enableTheme","theme","popThemeCssPath","headId","enableRTLLanguage","rtl","inArray","popRTLCssPath","GetGlobalHelpInformation","PopupJsClick","obj","cancelBubble","contentID","getAttribute","helpType","HelpLinkClicked","inst","instanceSettings","resizable","helpCSS","closeImageURL","closeText","loadingHTML","lessText","moreText","baseHelpUrl","helpContainer","helpImage","domwindowdata","$elem","trigger","contentId","helpresult","decodeURIComponent","PopupProxy","GetContent","loadHelpContent","initializeRailController","exists","ExpanderList","params","addClass","Expander","exp","head","next","wrapInner","expanded","prevAll","selfHead","selfBody","isSelf","hasClass","rootExpanderList","parents","Multiple","slideUp","ApexDropDown","defaultDD","select","selectedIndex","$msg","SetRootElementId","prefix","sessionId","ApexCookieHandler","getCookie","validAnswerBar","ApexCloseWireUpEvents","setCookie","fail","before","GetLocalizedCommonValues","storedata","failure","visibleHelpContainer","source","filename","row","logType","view","referer","ApexVideoHandler","isOpen","showOverlayBox","doOverlayOpen","opacity","animate","backgroundColor","isChrome","isSafari","showVideo","uuid","opid","nocache","getTime","floor","random","protocol","hostname","port","ApexEmbedLogger","Instrument","DoOverlayOpen","DoOverlayClose","close","ShowOverlay","ShowVideo","join","insertAfter","buildVideoOverlayHtml","keycode","charCode","nameEQ","ca","cookie","charAt","days","expires","toGMTString","dstr","domain","removeCookie","Feedback","answer","answerText","myself","currentQuery","currentRailContent","originalRailContent","currentRailIndex","activeJSQuery","prevView","currentView","currentQueries","isNewQuery","dropDownBusy","isDebugMode","railHtmlRoot","hideVideoTab","enableCopy","showRating","isSearchFocused","isResizeBusy","isRefreshed","isChromePinned","barIcon","hoverOnDelay","instrumentPage","contentHistory","idx","addContentForBackButton","content","related","is","findLastVisibleElement","getContentForBackButton","pop","apexCls","title","setScrollBar","updateUrlPaths","GetViewName","loadOnDemandContent","toggleHoverClass","getSearchTerm","Search","getEncodedQuery","userQuery","encodeURIComponent","escape","helpSearch_Click","getABContent","helpSearch_Focus","oInput","helpSearch_Blur","focusable","getElementById","lastElement","offsetWidth","offsetHeight","getClientRects","tabToSuggestions","searchInput","suggestionList","suggestionAmmount","bindChromeSearchClickEvents","getContentVideo","getContentArticle","topicId","fileName","parentsUntil","getContentTour","walkmeId","bindContentClickEvents","spinOffNewWindow","hasVScroll","opener","stopImmediatePropagation","showHelp","urlObj","URL","curSearch","toString","child","frames","copyTopicHandler","clipboardData","setData","queryCommandSupported","textarea","textContent","appendChild","execCommand","removeChild","fwLinkHandler","isVisible","keydownEscHandler","dropdownHideHandler","bindChromeClickEvents","toggle","closeHelpView","footerHeight","heightStr","setApexHelpContainerPosition","contentHeight","firstElementNoSupport","getApexHtmlForSupportOptions","tabIndex","getLiveChatString","retval","ShowLivePerson","LiveOn","LiveOff","Hours","hideSupportTip","removeEventListener","addSupportOptionsValuesAndEvents","cls","Phone","line3","PhoneInterval","line1","Days","PhoneTimeZone","line2","ret1","CallSupport","EmailInterval","EmailTimeZone","AskCommunity","Forum","eleAskCommunity","eleCallme","ScheduleCall","getApexHtmlForNoSupportOptions","getApexUCMHtmlForNoSupportOptions","buildRailHelpLayout","apexHtml","FloatingHelpPanel","ucmABHtml","addRTLSpecificStyles","template","debug","with_this","isNumber","viewIdHtml","getGlobalHelpInformation","isRailBarEnabled","setBrowserSpecificClassToRoot","railHelpRtlCssPath","linkStylesFromCSSFiles","railHelpCssPath","setStylesForRootElement","buildRelatedArticlesRows","rowItems","RelatedTopics","Title","RelatedVideos","VideoId","OP_VideoId","buildContentRows","rowType","label","imgCls","Video1","Articles","SearchResults","imgVideo","Filename","SecretKey","Row","Href","clsArr","buildContent","articles","Topics","videos","Videos","tours","new_path","buildNavGroups","targetId","spinUrl","fullBrowserElem","newWindowHtml","OpenNewWindowLarge","OpenNewWindow","dragElement","handleUCMDropdownUpdate","WorkspaceId","queryId","New","HowToAccessUCM","TrainingPortal","handleDMCDropdownUpdate","newToDMC","NewToDMC","onDemandInput","handlePlatformContentSuccess","Support","Options","Close","Home","NewToAdvertising","VideoGallery","CopyUrl","Back","MoreOptions","removeAttr","HeaderNavItems","htmlRelated","IsSearchResults","topics","v","span","after","SeeMore","indexValue","sessionQuery","qry","ids","idval","ApexTabHandler","ApexButtonHandler","handlePlatformContentFailure","asRow","initializeAnswerBar","lpMTagConfig","loadTag","getApexCommonsData","globals","Globals","gkey","ServiceLevel","Config","RailConfigs","ApexChromeController","GetChromeSupportingLinksAndButtons","clearHistory","tillIndex","answerBarRefreshHandler","GetRESTURL","path","GetRootElementId","docLoadCallbacks","APEX_PADDING","apex_rect","application_viewport","bottom","right","elmnt","pos1","pos2","pos3","pos4","dragElem","apexMouseButtonDown","autoSuggestVisible","clientX","clientY","getBoundingClientRect","newLeft","newTop","elementDrag","focusEnd","setCursorPosition","setSelection","selectionStart","selectionEnd","createTextRange","range","moveEnd","moveStart","setSelectionRange","apex_ValidNavigation","onbeforeunload","closest","siblings","targetElem","hadActive","installedModules","moduleId","exports","module","l","modules","m","getter","defineProperty","enumerable","Symbol","toStringTag","t","mode","__esModule","ns","create","object","property","hasOwnProperty","p","s","__WEBPACK_EXTERNAL_MODULE__10__","__WEBPACK_EXTERNAL_MODULE__151__","__WEBPACK_EXTERNAL_MODULE__3__","__WEBPACK_EXTERNAL_MODULE__445__","__WEBPACK_EXTERNAL_MODULE__74__","modalStyle","overlay","border","borderRadius","transform","marginRight","minWidth","maxWidth","MsSupportChatModal","Scenario","Activity","ariaHideApp","portalClassName","aria","labelledby","modal","FocusLock","onExit","onClose","lockRegionAriaLabel","i18n","getString","focusFirstItemOnMount","MsSupportChatForm","onSuccess","onCancel","context","virtualAgentInfo","authType","logger","featureName","permissions","resourcePath","defaultProps","bool","func","shape","getCldr","string","region","keyWordList","MsSupportChatFormInternal","PureComponent","description","issue","customSupportLink","isVritualAgent","pilotEnabled","issueDescription","keyWord","botEnabled","contextArray","accountNumber","activity","signal","flowId","render","MsSupportChatSurvey","onSubmit","onSubmitControlRole","DFAChatPhase1","noop","withActivityContext","__WEBPACK_EXTERNAL_MODULE__9__","Warning","color","role","isLoading","setState","uniqueId","state","onClick","i18nLanguageToDisaplyLanguage","SupportCategorySelector","onMount","onSelectChange","for","htmlFor","descriptionInputId","maxLength","onChange","handleInputChange","rows","placeholder","handleSubmit","disabled","__WEBPACK_EXTERNAL_MODULE__901__","__WEBPACK_EXTERNAL_MODULE__902__","RequestCallModal","Component","constructor","super","Modal","setAppElement","RequestCallForm","RequestCallFormInternal","handleSelectChange","countryMarketMapping","AU","IN","ID","MY","NZ","PH","SG","TH","VN","DK","FI","IE","NO","GB","SE","US","CA","DE","AT","CH","ES","MX","AR","CL","CO","PE","VE","FR","IT","NL","BR","issueValues","RequestCallModal_AdvertiserSupport","RequestCallModal_AgencySupport","RequestCallModal_ComplexSupportScenario","RequestCallModal_OptimizationConsult","RequestCallModal_SmartCampaign","RequestCallModal_DMCSupport","RequestCallModal_UPSupport","RequestCallModal_SmartPageSupport","RequestCallModal_ConversionTracking","UP_SUPPORT_CHAT_LINK","featureIssuesMapping","DMC","reasonKey","reasonName","SmartCampaign","UP","SmartPage","EnUsSwitchToExpert","UPConversionTracking","Default","frCAList","jaJPList","marketIssuesMappingV2","NA","marketIssuesMappingV2ForChat","issueList","bundle","mapping","issueIndex","componentDidMount","reasonInputId","classes","map","__WEBPACK_EXTERNAL_MODULE__11__","__WEBPACK_EXTERNAL_MODULE__121__","SupportModalsInternal","supportOptions","userContext","helpModel","isCopilotEnabled","currentLocale","chatPortalClassName","callPortalClassName","showRequestCall","showRequestChat","apexConfig","onHelpPopupOpenWithA11yFix","useCallback","containerNode","initializeProps","ref","useRef","isEqual","current","useDeepMemo","BaseHelpUrl","initApexPlatform","currentAccount","Fragment","RequestCallSupport","RequestChatSupport","ShortName","number","SupportModals","__WEBPACK_EXTERNAL_MODULE__1243__","msSupportChatLocalization","MsSupportChatModal_Continue","_TL_","MsSupportChatModal_Cancel","MsSupportChatModal_Close","MsSupportChatModal_Title","MsSupportChatModal_Description","MsSupportChatModal_Description_Placeholder","MsSupportChatModal_VirtualAgent_WelcomeMessage","MsSupportChatModal_DialogReadyLabel","MsSupportChatModal_BR_Alert","MsSupportChatModal_EN_Alert","RequestCallModal_ReasonForCall","setOpen","setMarket","legacyi18n","useMemo","buildLegacyI18n","onCancelCallback","setOnCancelCallback","IfShowLiveChat","chatCopilotTrigger","getRegion","dispatchEvent","CustomEvent","detail","eventType","eventData","ActionId","FlowId","cancelled","handler","__WEBPACK_EXTERNAL_MODULE__1245__","isEmpty","cldr","requestCallModalLocalization","RequestCallModal_Continue","RequestCallModal_Cancel","RequestCallModal_Close","RequestCallModal_CallMeBack","RequestCallModal_DialogReadyLabel","RequestCallText","isSupported","__WEBPACK_EXTERNAL_MODULE__1248__","supportConfigs","reserved","currentCustomer","currentUser","phoneSupportSchedule","PhoneSupportSchedule","emailSupportSchedule","EmailSupportSchedule","DEFAULT_LOCALE","supportMarket","DEFAULT_MARKET","DEFAULT_PROJECT","uri","searchParams","isApexDisabled","apexInitOptions","AccountName","CustomerId","UserEmail","LivePersonSection","LiveChatSection","PhoneLabel","PhoneSupportLabel","IfShowPhoneSupport","PhoneSupportNumber","Interval","TimeZone","EmailLabel","EmailSupportEmail","CommunityUrl","omit","isUndefined","FloatingHelpUnStyled","bottomPosition","uiActivity","isExpandedDefault","shouldSupportMobileView","setExpanded","clickChat","clickCall","items","renderItem","Button","btnStyle","floatingHelpClassNames","floatingHelp","mobileView","currectExpandedState","Glyphicon","glyph","FloatingGroup","compact","FloatingHelp","withDefaultStyles","getFloatingHelpStyles","boxShadow","minHeight","background","textAlign","fontWeight","paddingRight","wordBreak","whiteSpace","alignSelf","verticalAlign","backgroundRepeat","backgroundImage","LiveChatLogo","RequestCallLogo","textDecoration","marginTop","marginBottom","borderTop","__publicpath__","FloatingGroupUnstyled","floatingGroup","item","itemId","arrayOf","any","getFloatingGroupStyles","__WEBPACK_EXTERNAL_MODULE__36__","__WEBPACK_EXTERNAL_MODULE__647__","__WEBPACK_EXTERNAL_MODULE__68__","factory","__WEBPACK_EXTERNAL_MODULE__7__","projectId","tags","pageId","a","q","y","all","initialize","setClarityTag","clarity","tagValue","isString"],"sourceRoot":""}