angular.module("sharedElements",["ngCookies","ngDialog","ngSanitize","blueimp.fileupload","froala","minicolors","ngRoute","angular-loading-bar","jsonFormatter"]).config(["$httpProvider","$interpolateProvider","constants","$provide","JSONFormatterConfigProvider","$sanitizeProvider",function(n,t,i,r,u,f){typeof translationService!="undefined"&&f.addValidElements([translationService.variableTagName]).addValidAttrs([translationService.variableAttrName]);t.startSymbol("[[exec[[");t.endSymbol("]]exec]]");n.defaults.xsrfHeaderName=i.headers.CSRF;n.defaults.xsrfCookieName=i.cookies.TEST;r.decorator("$templateRequest",["$delegate","$injector","$q","$templateCache",function(n,t,i,r){var u=n;return n=function(f){var o,e,s,h;for(o in u)n[o]=u[o];return e=i.defer(),s=r.get(f),typeof s!="undefined"?e.resolve(s):(h=t.get("securityService"),h.httpGet(f,null,{sendAppVersionHashHeader:!1}).then(function(n){r.put(f,n);e.resolve(n)})),e.promise}}]);var e=["$q",function(n){function r(){t>=i&&(t=0,i=0,$("body").attr("request-loading","false"))}var i=0,t=0;return{request:function(n){return $("body").attr("request-loading","true"),i++,n},response:function(n){return t++,r(),n},responseError:function(i){return t++,r(),n.reject(i)}}}];n.interceptors.push(e);u.hoverPreviewEnabled=!0;u.hoverPreviewArrayCount=5;u.hoverPreviewFieldCount=5}]).provider("$exceptionHandler",{$get:["exceptionLoggingService",function(n){return n}]});angular.module("sharedElements").run(["$templateCache",function(n){"use strict";n.put("js/shared/common/directives/analytics/analyticsSidebar/analyticsSidebar.html",'<div data-c-bar-chart-sidebar data-ng-if="listerState.layout === 5" data-settings="settings" data-lister-state="listerState" data-on-action="handleAction(action, data)"><\/div>\r\n<div data-c-timeline-sidebar data-ng-if="listerState.layout === 6" data-settings="settings" data-lister-state="listerState" data-on-action="handleAction(action, data)"><\/div>');n.put("js/shared/common/directives/analytics/barChartSidebar/barChartSidebar.html",'<div class="menu-body">\r\n    <div data-ng-class="{\'n-layout-scroll n-layout-fill-large-only\': isLargeView() === true }">\r\n        <div data-ng-class="{\'n-layout-padding-uniform\': isLargeView() === true }">\r\n            <div class="menu">\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-pending-action="isProcessing">\r\n                    <div class="chart-settings">\r\n                        <div data-ng-if="viewField !== null" data-c-form-field data-field="viewField" data-form="form"><\/div>\r\n                        <div data-ng-if="barDataField !== null" data-c-form-field data-field="barDataField" data-form="form"><\/div>\r\n                        <div data-ng-if="isStackingAvailable() === true && stackDataField !== null" data-c-form-field data-field="stackDataField" data-form="form"><\/div>\r\n                        <div data-ng-if="isStackingAvailable() === false && stackDataNotAvailableField !== null" data-c-form-field data-field="stackDataNotAvailableField" data-form="form"><\/div>\r\n                        <div data-ng-if="orderByField !== null" data-c-form-field data-field="orderByField" data-form="form"><\/div>\r\n                        <div class="form-group">\r\n                            <div class="col-sm-3 control-label"><label><span>Series<\/span><\/label><\/div>\r\n                            <div class="col-sm-9 control-value">\r\n                                <div data-ng-repeat="aggregateColumn in aggregateColumns" class="series">\r\n                                    <div class="serie" id="[[exec[[aggregateColumn.id]]exec]]">\r\n                                        <a href="javascript:;" data-ng-click="removeColumn(aggregateColumn)" data-ng-if="aggregateColumns.length > 1" class="serie-remove">\r\n                                            <i icon="remove-small"><\/i>\r\n                                        <\/a>\r\n                                        <span class="serie-label" data-ng-bind="aggregateColumn.label"><\/span>\r\n                                        <div class="serie-axis" data-c-input-field-picklist data-field="aggregateColumn.axis" data-form="form"><\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <div data-ng-if="data.availableAggregateColumns.length > 0">\r\n                                    <div data-c-add-object-button class="btn-group dropdown" data-items="data.availableAggregateColumns" data-preserve-opened="false" data-title="Add Series" data-on-click="addColumn(item)"><\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/directives/analytics/timelineSidebar/timelineSidebar.html",'<div class="menu-body">\r\n    <div data-ng-class="{\'n-layout-scroll n-layout-fill-large-only\': isLargeView() === true }">\r\n        <div data-ng-class="{\'n-layout-padding-uniform\': isLargeView() === true }">\r\n            <div class="menu">\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-pending-action="isProcessing">\r\n                    <div class="chart-settings">\r\n                        <div data-ng-if="viewField !== null" data-c-form-field data-field="viewField" data-form="form"><\/div>\r\n\r\n                        <div class="form-group" data-ng-if="timeFrameField !== null">\r\n                            <div class="col-sm-3 control-label"><label data-ng-bind="timeFrameField.label.value"><\/label><\/div>\r\n                            <div class="col-sm-9 control-value">\r\n                                <div data-c-input-field-picklist data-field="timeFrameField" data-form="form"><\/div>\r\n\r\n                                <div data-ng-if="timeFrameField.value == DATE_RANGE.CUSTOM">\r\n                                    <div class="grid grid-buffer">\r\n                                        <div class="grid-body grid-body-full">\r\n                                            <div class="grid-row">\r\n                                                <div class="grid-cell">\r\n                                                    <div data-ng-if="timeFrameStartField !== null" data-c-form-field data-field="timeFrameStartField" data-form="form"><\/div>\r\n                                                <\/div>\r\n                                                <div class="grid-cell">\r\n                                                    <div data-ng-if="timeFrameEndField !== null" data-c-form-field data-field="timeFrameEndField" data-form="form"><\/div>\r\n                                                <\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <div data-ng-if="timeUnitField !== null" data-c-form-field data-field="timeUnitField" data-form="form"><\/div>\r\n\r\n                        <div data-ng-if="orderByField !== null" data-c-form-field data-field="orderByField" data-form="form"><\/div>\r\n\r\n                        <div class="form-group">\r\n                            <div class="col-sm-3 control-label"><label><span>Series<\/span><\/label><\/div>\r\n                            <div class="col-sm-9 control-value">\r\n                                <div data-ng-repeat="aggregateColumn in aggregateColumns" class="series">\r\n                                    <div class="serie" id="[[exec[[aggregateColumn.id]]exec]]">\r\n                                        <a href="javascript:;" data-ng-click="removeColumn(aggregateColumn)" data-ng-if="aggregateColumns.length > 1" class="serie-remove">\r\n                                            <i icon="remove-small"><\/i>\r\n                                        <\/a>\r\n                                        <span class="serie-label" data-ng-bind="aggregateColumn.label"><\/span>\r\n                                        <div class="serie-axis" data-c-input-field-picklist data-field="aggregateColumn.axis" data-form="form"><\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <div data-ng-if="data.availableAggregateColumns.length > 0">\r\n                                    <div data-c-add-object-button class="btn-group dropdown" data-items="data.availableAggregateColumns" data-preserve-opened="false" data-title="Add Series" data-on-click="addColumn(item)"><\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/directives/circleSeparatedItems/circleSeparatedItems.html",'<div class="circle-separated-items">\r\n    <span data-ng-repeat="item in items">\r\n        <span ng-if="item.type == types.LABEL" data-c-label data-label="item.data"><\/span>\r\n        <span ng-if="item.type == types.TEXT" data-ng-bind="item.data" class="c-i"><\/span>\r\n    <\/span>\r\n<\/div>\r\n');n.put("js/shared/common/directives/documentSelector/documentSelectorView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n\r\n            <h4 class="modal-title">Choose from Library<\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n                <div class="modal-description">\r\n                    <p data-ng-bind="description"><\/p>\r\n                <\/div>\r\n\r\n                <div class="n-actions">\r\n                    <div class="n-actions-flex large-only">\r\n                        <div data-ng-if="searchTermFilter !== null" class="n-actions-flex-grow" data-c-search-box data-value="searchTermFilter.filterValue.value" data-on-search="refresh()" data-max-width="true"><\/div>\r\n                        <c-pager data-lister="documents" data-on-action="handleAction(action, data)" data-lister-status="listerStatus"><\/c-pager>\r\n                    <\/div>\r\n\r\n                    <div class="n-mobile-actions small-only">\r\n                        <c-pager-mobile data-lister="documents" data-on-action="handleAction(action, data)" data-lister-status="listerStatus"><\/c-pager-mobile>\r\n                        <c-filter-button data-lister="documents" data-filters="filters" data-lister-settings="listerSettings" data-applied-filters="appliedFilters" data-on-search="refresh()"><\/c-filter-button>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class="table-responsive table-mobile-no-borders library-theme-icon">\r\n                    <div data-c-lister data-lister="documents" data-settings="listerSettings" data-lister-status="listerStatus" data-on-action="handleAction(action, data)"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/field/nestedTable/nestedTable.html",'<div class="table-responsive" data-ng-show="lister.totalRowCount > 0">\r\n    <div data-c-lister data-lister="lister" data-settings="settings" data-lister-status="listerStatus" data-on-refresh="refresh()"><\/div>\r\n<\/div>\r\n\r\n\r\n');n.put("js/shared/common/directives/filter/countryAndStateFilter/countryAndStateFilter.html",'<div class="select">\r\n    <div c-smart-picklist class="form-control" data-name="[[exec[[filter.name]]exec]]" data-value="countryValue" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-set-translate="filter.translate" data-list-items="filter.listItems" data-form="form" data-on-change="change()" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n<\/div>\r\n\r\n<div class="grid grid-buffer" data-ng-if="showStateFilter()">\r\n    <div class="grid-body grid-body-full">\r\n        <div class="grid-row">\r\n            <div class="grid-cell">\r\n                <div class="select">\r\n                    <div c-smart-picklist class="form-control" data-name="[[exec[[filter.name]]exec]]_Value_StateValue" data-set-translate="stateFilter.translate" data-value="stateFilter.value" data-default-value="[[exec[[stateFilter.defaultValue]]exec]]" data-list-items="stateFilter.listItems" data-form="form" data-on-change="change()" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/filter/courseQuizQuestionAnswerFilter/courseQuizQuestionAnswerFilter.html",'<div class="select">\r\n    <div c-smart-picklist class="form-control" data-name="[[exec[[filter.name]]exec]]" data-value="courseValue" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change()" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n<\/div>\r\n\r\n<div class="grid grid-buffer" data-ng-if="showQuizFilter()">\r\n    <div class="grid-body grid-body-full">\r\n        <div class="grid-row">\r\n            <div class="grid-cell">\r\n                <div class="select">\r\n                    <div c-smart-picklist class="form-control" data-name="[[exec[[filter.name]]exec]]_Value_QuizValue" data-value="quizFilter.value" data-default-value="[[exec[[quizFilter.defaultValue]]exec]]" data-list-items="quizFilter.listItems" data-form="form" data-on-change="change()" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]" data-set-translate="true"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class="grid grid-buffer" data-ng-if="showQuestionFilter()">\r\n    <div class="grid-body grid-body-full">\r\n        <div class="grid-row">\r\n            <div class="grid-cell">\r\n                <div class="select">\r\n                    <div c-smart-picklist class="form-control" data-name="[[exec[[filter.name]]exec]]_Value_QuestionValue" data-value="questionFilter.value" data-default-value="[[exec[[questionFilter.defaultValue]]exec]]" data-list-items="questionFilter.listItems" data-form="form" data-on-change="change()" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]" data-set-translate="true"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class="grid grid-buffer" data-ng-if="showAnswerFilter()">\r\n    <div class="grid-body grid-body-full">\r\n        <div class="grid-row">\r\n            <div class="grid-cell">\r\n                <div class="select">\r\n                    <div c-smart-picklist class="form-control" data-name="[[exec[[filter.name]]exec]]_Value_AnswerValue" data-value="answerFilter.value" data-default-value="[[exec[[answerFilter.defaultValue]]exec]]" data-list-items="answerFilter.listItems" data-form="form" data-on-change="change()" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]" data-set-translate="true"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/filter/filter/filter.html",'<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.TEXT">\r\n    <!-- TEXT -->\r\n    <input name="[[exec[[filter.name]]exec]]" class="form-control autoselect" data-ng-disabled="isDisabled === true" type="text" ng-change="change(filter)" ng-model="filter.filterValue.value" />\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.DROPDOWN">\r\n    <!-- DROPDOWN -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]" data-is-disabled="[[exec[[isDisabled]]exec]]" data-ng-disabled="isDisabled === true"><\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.DROPDOWN_ADVANCED">\r\n    <!-- DROPDOWN ADVANCED -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist-filter class="form-control" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-list-items="filter.listItems" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]" data-is-disabled="isDisabled" data-ng-disabled="isDisabled === true"><\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.COUNTRY_AND_STATE">\r\n    <!-- COUNTRY_AND_STATE DROPDOWNS -->\r\n    <div data-c-country-and-state-filter data-filter="filter" data-form="form" data-on-change="change(filter)" data-show-label="[[exec[[showLabel]]exec]]"><\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.COURSE_QUIZ_QUESTION_ANSWER">\r\n    <!-- COURSE_QUIZ_QUESTION_ANSWER -->\r\n    <div data-c-course-quiz-question-answer-filter data-filter="filter" data-form="form" data-on-change="change(filter)" data-show-label="[[exec[[showLabel]]exec]]"><\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.MULTISELECT">\r\n    <!-- MULTISELECT -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist-filter class="form-control" data-is-disabled="isDisabled" data-ng-disabled="isDisabled === true" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-list-items="filter.listItems" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div>\r\n        <div class="checkbox">\r\n            <label>\r\n                <span class="switch"><input type="checkbox" data-ng-change="change(filter)" data-ng-model="filter.filterValue.value" data-ng-disabled="isDisabled === true" data-ng-true-value="\'[[exec[[DROPDOWN_SPECIAL_VALUES.MULTISELECT_AND]]exec]]\'" data-ng-false-value="\'[[exec[[DROPDOWN_SPECIAL_VALUES.MULTISELECT_OR]]exec]]\'"><i><\/i><\/span>\r\n                <span>Match all selected <\/span>\r\n                <span data-c-inline-help data-message="multiSelectOperatorInlineHelp"><\/span>\r\n            <\/label>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.INTEGER">\r\n    <!-- INTEGER -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-name="[[exec[[filter.name]]exec]]" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value != DROPDOWN_SPECIAL_VALUES.ANY">\r\n        <div class="grid grid-buffer">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row">\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN_OR_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN_OR_EQUAL_TO">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-int-modifier="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-int-between-from="[[exec[[filter.fullLabel]]exec]]" c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-ng-disabled="isDisabled === true" data-t-int-between-to="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.FILESIZE">\r\n    <!-- FILESIZE -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-name="[[exec[[filter.name]]exec]]" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value != DROPDOWN_SPECIAL_VALUES.ANY">\r\n        <div class="grid grid-buffer">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row">\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN_OR_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN_OR_EQUAL_TO">\r\n                        <div class="input-group">\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-int-modifier="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                            <span class="input-group-addon">MB<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <div class="input-group">\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-int-between-from="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                            <span class="input-group-addon">MB<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <div class="input-group">\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-ng-disabled="isDisabled === true" data-t-int-between-to="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" />\r\n                            <span class="input-group-addon">MB<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.DOUBLE">\r\n    <!-- DOUBLE -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-name="[[exec[[filter.name]]exec]]" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value != DROPDOWN_SPECIAL_VALUES.ANY">\r\n        <div class="grid grid-buffer">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row">\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN_OR_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN_OR_EQUAL_TO">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-double-modifier="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-double-between-from="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-ng-disabled="isDisabled === true" data-t-double-between-to="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.PERCENT">\r\n    <!-- PERCENT -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-name="[[exec[[filter.name]]exec]]" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value != DROPDOWN_SPECIAL_VALUES.ANY">\r\n        <div class="grid grid-buffer">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row">\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN_OR_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN_OR_EQUAL_TO">\r\n                        <div class="input-group">\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-double-modifier="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                            <span class="input-group-addon">%<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <div class="input-group">\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-double-between-from="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                            <span class="input-group-addon">%<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                    <div class="grid-cell" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                        <div class="input-group">\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-ng-disabled="isDisabled === true" data-t-double-between-to="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" />\r\n                            <span class="input-group-addon">%<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.CURRENCY">\r\n    <!-- CURRENCY -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-name="[[exec[[filter.name]]exec]]" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value != DROPDOWN_SPECIAL_VALUES.ANY">\r\n        <div class="grid grid-buffer">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_GREATER_THAN_OR_EQUAL_TO || filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_LESS_THAN_OR_EQUAL_TO">\r\n                    <div class="grid-cell">\r\n                        <div class="input-group">\r\n                            <span data-ng-if="!currencySymbolAfterNumber" class="input-group-addon">[[exec[[currencySymbol]]exec]]<\/span>\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-double-modifier="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                            <span data-ng-if="currencySymbolAfterNumber" class="input-group-addon">[[exec[[currencySymbol]]exec]]<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class="grid-row" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                    <div class="grid-cell grid-cell-buffer-bottom">\r\n                        <div class="input-group">\r\n                            <span data-ng-if="!currencySymbolAfterNumber" class="input-group-addon">[[exec[[currencySymbol]]exec]]<\/span>\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-t-double-between-from="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" />\r\n                            <span data-ng-if="currencySymbolAfterNumber" class="input-group-addon">[[exec[[currencySymbol]]exec]]<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n                <div class="grid-row" data-ng-if="filter.filterValue.value == NUMBER_MODIFIER_TYPES.IS_BETWEEN">\r\n                    <div class="grid-cell">\r\n                        <div class="input-group">\r\n                            <span data-ng-if="!currencySymbolAfterNumber" class="input-group-addon">[[exec[[currencySymbol]]exec]]<\/span>\r\n                            <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-ng-disabled="isDisabled === true" data-t-double-between-to="[[exec[[filter.fullLabel]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" />\r\n                            <span data-ng-if="currencySymbolAfterNumber" class="input-group-addon">[[exec[[currencySymbol]]exec]]<\/span>\r\n                        <\/div>\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.CHECKBOX">\r\n    <!-- CHECKBOX -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-value="filter.filterValue.value" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.BOOLEAN">\r\n    <!-- BOOLEAN -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.DATE">\r\n    <!-- DATE -->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value == DATE_RANGE.CUSTOM">\r\n        <div class="grid grid-buffer" data-t-filter-date-custom="[[exec[[filter.fullLabel]]exec]]">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row">\r\n                    <div class="grid-cell">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-ng-disabled="isDisabled === true" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="date" data-t-date-from="[[exec[[filter.fullLabel]]exec]]" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" date-pattern="[[exec[[datePattern]]exec]]" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                    <div class="grid-cell">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-ng-disabled="isDisabled === true" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="date" data-t-date-to="[[exec[[filter.fullLabel]]exec]]" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" date-pattern="[[exec[[datePattern]]exec]]" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.DATETIME">\r\n    <!-- DATETIME-->\r\n    <div class="select">\r\n        <div data-c-smart-picklist class="form-control" data-ng-disabled="isDisabled === true" data-set-translate="filter.translate" data-translate-group-name="filter.translateGroupName" data-name="[[exec[[filter.name]]exec]]" data-value="filter.filterValue.value" data-default-value="[[exec[[filter.defaultFilterValue.value]]exec]]" data-list-items="filter.listItems" data-form="form" data-on-change="change(filter)" data-ng-attr-data-label="[[exec[[inlineLabel()]]exec]]"><\/div>\r\n    <\/div>\r\n    <div data-ng-if="filter.filterValue.value == DATE_RANGE.CUSTOM">\r\n        <div class="grid grid-buffer" data-t-filter-date-time-custom="[[exec[[filter.name]]exec]]">\r\n            <div class="grid-body grid-body-full">\r\n                <div class="grid-row">\r\n                    <div class="grid-cell grid-cell-buffer-bottom">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue1" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="datetime" data-t-date-time-from="[[exec[[filter.fullLabel]]exec]]" class="form-control" ng-change="change(filter)" ng-model="filter.customValue1" date-pattern="[[exec[[datePattern]]exec]]" time-pattern="[[exec[[timePattern]]exec]]" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue1"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n                <div class="grid-row">\r\n                    <div class="grid-cell">\r\n                        <input type="text" name="[[exec[[filter.name]]exec]]_Value_CustomValue2" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="datetime" data-t-date-time-to="[[exec[[filter.fullLabel]]exec]]" class="form-control" ng-change="change(filter)" ng-model="filter.customValue2" date-pattern="[[exec[[datePattern]]exec]]" time-pattern="[[exec[[timePattern]]exec]]" />\r\n                        <label data-c-validation-message form="form" field-name="[[exec[[filter.name]]exec]]_Value_CustomValue2"><\/label>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-t-filter-label="[[exec[[filter.fullLabel]]exec]]" data-ng-if="filter.type === FILTER_TYPES.LOCATION_FILTER">\r\n    <!-- LOCATION_FILTER -->\r\n    <div data-c-location-filter data-filter="filter" data-form="form" data-on-change="change(filter)" data-show-label="[[exec[[showLabel]]exec]]" data-auto-fill-function="autoFillSearch(name,value)"><\/div>\r\n<\/div>\r\n\r\n<div data-ng-if="validate === true" data-c-custom-validator data-form="form" data-validation-function="validateFilter()" data-revalidate-on-change="revalidateOnChange"><\/div>');n.put("js/shared/common/directives/filter/filterButton/filterDialogView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="title"><\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            \r\n            <div class="n-layout-filter-tabs-wrapper" data-ng-if="tabs.length > 1">\r\n                <div data-c-tabs data-tabs="tabs" data-on-action="handleAction(action, data)"><\/div>\r\n            <\/div>\r\n\r\n            <div class="menu">\r\n                <div data-ng-show="activeTab === tabType.FILTERS">\r\n                    <form data-c-form name="filtersForm" data-ng-submit="apply()">\r\n                        <div data-ng-if="areFiltersAvailableScope() === true">\r\n                            <div class="option" data-ng-repeat="filter in getVisibleFilters()">\r\n                                <a href="javascript:;" class="option-remove" data-ng-if="filter.isMain === false" data-ng-click="removeFilter(filter)"><i icon="remove-small"><\/i><\/a>\r\n                                <label class="colon">[[exec[[filter.fullLabel]]exec]]<\/label>\r\n                                <div data-c-filter data-filter="filter" data-form="filtersForm" data-on-action="handleAction(action, data)"><\/div>\r\n                            <\/div>\r\n\r\n                            <div data-ng-if="anyAvailableFilters() === true">\r\n                                <div data-ng-if="anyVisibleFilters() === true" class="divider"><\/div>\r\n                                <div class="option">\r\n                                    <div data-c-add-object-button class="btn-group dropdown" data-items="availableFilters" data-on-click="addFilter(item)"><\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/form>\r\n                <\/div>\r\n                <div data-ng-show="activeTab === tabType.SORTING_AND_PAGING">\r\n                    <form data-c-form name="sortAndLayoutForm" data-ng-submit="apply()">\r\n                        <div data-ng-if="isSortingAndPagingAvailableScope() === true">\r\n                            <div data-ng-if="sortAndLayout.sortBy !== null" class="option">\r\n                                <label class="colon">[[exec[[sortAndLayout.sortBy.label]]exec]]<\/label>\r\n                                <div data-c-filter data-filter="sortAndLayout.sortBy" data-form="sortAndLayoutForm"><\/div>\r\n                            <\/div>\r\n                            <div data-ng-if="sortAndLayout.sortReverse !== null" class="option">\r\n                                <label class="colon">[[exec[[sortAndLayout.sortReverse.label]]exec]]<\/label>\r\n                                <div data-c-filter data-filter="sortAndLayout.sortReverse" data-form="sortAndLayoutForm"><\/div>\r\n                            <\/div>\r\n                            <div data-ng-if="sortAndLayout.pageSize !== null" class="option">\r\n                                <label class="colon">[[exec[[sortAndLayout.pageSize.label]]exec]]<\/label>\r\n                                <div data-c-filter data-filter="sortAndLayout.pageSize" data-form="sortAndLayoutForm"><\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/form>\r\n                <\/div>\r\n                <div data-ng-show="activeTab === tabType.COLUMNS">\r\n                    <div data-ng-if="areColumnsAvailableScope() === true">\r\n                        <div data-c-sorter data-items="selectedColumns" data-mode="3" data-on-remove="removeColumn(item)"><\/div>\r\n                        <br />\r\n                        <div data-c-add-object-button class="btn-group dropdown" data-items="availableColumns" data-title="Add Column" data-on-click="addColumn(item)"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n                <div data-ng-show="activeTab === tabType.CHART">\r\n                    <div data-ng-if="isChartAvailableScope() === true">\r\n                        <div data-c-analytics-sidebar data-settings="listerSettings" data-lister-state="listerState" data-on-action="handleAction(action, data)"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer text-right">\r\n            <div data-ng-show="activeTab === tabType.FILTERS" data-ng-click="reset()" class="btn btn-default">Reset<\/div>\r\n            <button type="button" class="btn btn-primary" data-ng-click="apply()">Apply<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/filter/filtersSidebar/filtersSidebar.html",'<div class="menu-body">\r\n    <div class="n-layout-scroll n-layout-fill-large-only">\r\n        <div class="n-layout-padding-uniform">\r\n            <div class="menu">\r\n                <div class="menu-header">\r\n                    <a data-ng-if="hideButtonVisible" href="javascript:;" class="menu-header-close" data-ng-click="closeFilters()">\r\n                        <i class="material_keyboard_double_arrow_left"><\/i>\r\n                    <\/a>\r\n                    <div class="menu-header-label">\r\n                        <i class="icon-size-16 material_filter_list"><\/i>\r\n                        <span>Filters<\/span>\r\n                    <\/div>\r\n                <\/div>\r\n                <form data-c-form name="form" data-ng-submit="search()">\r\n                    <div class="option" data-ng-repeat="filter in getVisibleFilters()">\r\n                        <a href="javascript:;" class="option-remove" data-ng-if="filter.isMain === false" data-ng-click="removeFilter(filter)" data-t-filter-remove="[[exec[[filter.fullLabel]]exec]]"><i icon="remove-small"><\/i><\/a>\r\n                        <label class="colon">[[exec[[filter.fullLabel]]exec]]<\/label>\r\n                        <div data-c-filter data-filter="filter" data-form="form" data-on-action="handleAction(action, data)"><\/div>\r\n                    <\/div>\r\n\r\n                    <div data-ng-if="anyAvailableFilters() === true">\r\n                        <div data-ng-if="anyVisibleFilters() === true" class="divider"><\/div>\r\n                        <div class="option">\r\n                            <div data-c-add-object-button class="btn-group dropdown" data-items="availableFilters" data-on-click="addFilter(item)"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<div class="menu-footer">\r\n    <div class="n-layout-padding-uniform">\r\n        <div class="actions">\r\n            <button type="button" class="btn btn-default" data-ng-click="search()" data-t-button="Apply Filters">Apply Filters<\/button>\r\n            <div data-ng-click="reset()" class="btn btn-text btn-padding-left-xs" data-t-button="Reset Filters">Reset<\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/directives/filter/searchBox/searchBox.html",'<form class="form-inline" data-c-form name="form" novalidate data-ng-submit="submitForm(form)" data-pending-action="isProcessing">\r\n    <div class="form-group">\r\n        <div class="input-group input-group-search">\r\n            <span class="input-group-addon input-group-search-left"><i class="material_search"><\/i><\/span>\r\n            <input type="text" data-ng-model="value" class="form-control input-group-search-right" placeholder="Search...">\r\n            <a href="javascript:;" data-ng-if="showAdvanced" class="input-group-addon input-group-search-right" data-hide="#menu-mobile" data-no-hide="#menu">Advanced<\/a>\r\n        <\/div>  \r\n    <\/div>\r\n<\/form>');n.put("js/shared/common/directives/filter/sectionFilter/sectionFilter.html",'<div class="option">\r\n    <div div data-c-filter data-filter="filter" data-form="form" data-on-change="change()" data-show-label="true"><\/div>\r\n<\/div>\r\n\r\n');n.put("js/shared/common/directives/geocodingMap/geocodingMap.html",'<div>\r\n    <div data-ng-show="showLatLongAndMap() === true" class="dropdown-megamenu-map" height="200"><\/div>\r\n\r\n    <div class="dropdown-megamenu-content">\r\n        <dl data-ng-show="showLatLongAndMap() === true" class="dl-rows">\r\n            <dt class="colon">Latitude<\/dt>\r\n            <dd data-ng-bind="field.latitudeField.value"><\/dd>\r\n            <dt class="colon">Longitude<\/dt>\r\n            <dd data-ng-bind="field.longitudeField.value"><\/dd>\r\n        <\/dl>\r\n\r\n        <div data-ng-show="showLatLongAndMap() === false">\r\n            No GPS location was found for this address. Please verify the accuracy of the address information.\r\n        <\/div>\r\n        <div data-ng-if="warningMessages !== null" data-c-alert-viewer data-alerts="warningMessages" style="margin-top: 5px;"><\/div>\r\n\r\n        <button data-ng-if="showRefreshButton() === true" data-c-submit-button data-is-primary="false" data-pending-action="loader.pendingAction" data-loader-text="Refreshing" data-on-submit="refresh()" class="map-item-additional-padding">Refresh<\/button>\r\n    <\/div>\r\n<\/div>\r\n\r\n');n.put("js/shared/common/directives/header/configureSkinView.html",'<div class="modal-dialog modal-md">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <button type="button" class="close" data-ng-click="closeThisDialog()" aria-label="Close"><i icon="remove" aria-hidden="true"><\/i><\/button>\r\n            <h4 class="modal-title">New UI Preview: Configure Colors & Logos<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <p>For the best experience, please review the colors and logo settings by launching the Branding &amp; Design for the new UI with the button below. Two things to note:<\/p>\r\n            \r\n            <ul>\r\n                <li>The old UI will not be affected by any changes you make to the new UI skin<\/li>\r\n                <li>If you need to make changes later, the Branding &amp; Design can be accessed at Settings > Portal Customization > Branding &amp; Design<\/li>\r\n            <\/ul>\r\n        <\/div>\r\n        \r\n        <div class="modal-footer text-right">\r\n            <button type="button" class="btn btn-text btn-padding-right" data-ng-click="closeThisDialog()">Cancel<\/button>\r\n            <button type="button" class="btn btn-primary" data-ng-click="openSkinManagerDialog()">Launch Branding &amp; Design<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/history/history.html",'<div class="history" data-ng-if="isVisible() === true" data-unit-t-main>\r\n\r\n    <div class="event" data-ng-class="{\'secret\': hEntry.isPrivate}" data-ng-repeat="hEntry in history.entries" data-unit-t-history-entry data-t-history-item="[[exec[[getNameWithEntryNumber(hEntry)]]exec]]">\r\n        <div class="event-wrapper">\r\n            <div class="event-avatar">\r\n                <div class="avatar" data-c-thumbnail-image data-image="hEntry.createdByProfilePicture"><\/div>\r\n            <\/div>\r\n            <div class="event-content">\r\n                <div class="event-header">\r\n                    <div class="event-header-text">\r\n                        <div class="event-description">\r\n                            <span data-ng-bind="getCreatedByText(hEntry)" data-t-history-item-created-by data-unit-t-created-by><\/span>\r\n                        <\/div>\r\n\r\n                        <div class="event-time circle-separated-items large-only">\r\n                            <div data-ng-bind-html="hEntry.createdDateDurationFormat" data-unit-t-created-date><\/div>\r\n                            <div class="c-nt" data-ng-bind="hEntry.createdDateStringFormat" data-unit-t-created-date><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class="event-actions">\r\n                        <c-actions-button class="btn-group" data-is-inline-block="true" data-is-small="true" data-is-more="true" data-actions="hEntry.actions" data-on-action="handleAction(action, hEntry)" t-name="[[exec[[getNameWithEntryNumber(hEntry)]]exec]]"><\/c-actions-button>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class="event-body">\r\n                    <div class="event-details">\r\n                        <div class="event-comment">\r\n                            <div class="comment">\r\n                                <div class="format-wrap c-nt" data-ng-if="hEntry.comment !== null && hEntry.fieldChanges === null && hEntry.privateFieldChanges === null" data-ng-bind="hEntry.comment" data-t-history-item-comment data-unit-t-comment><\/div>\r\n                                <div data-ng-if="hEntry.fieldChanges !== null">\r\n                                    <div data-ng-repeat="change in hEntry.fieldChanges track by $index" data-ng-bind="change" data-t-history-item-field-changes class="format-wrap"><\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <div class="event-asset" data-ng-if="hEntry.files !== null">\r\n                            <span class="asset">\r\n                                <span class="asset-preview"><i class="[[exec[[getFileIcon(hEntry)]]exec]]"><\/i><\/span>\r\n\r\n                                <a data-ng-if="getFileLink(hEntry) !== null" data-ng-href="[[exec[[getFileLink(hEntry)]]exec]]" target="_blank" rel="noreferrer" data-ng-bind="getFileName(hEntry)"><\/a>\r\n                                <span data-ng-if="getFileLink(hEntry) === null" data-ng-bind="getFileName(hEntry)"><\/span>\r\n                                <i data-ng-if="fileCanBeDeleted(hEntry) === true" icon="remove-small" c-tooltip="Delete File" data-ng-click="handleAction(\'delete-file\', hEntry)"><\/i>\r\n                            <\/span>\r\n                        <\/div>\r\n\r\n                        <div class="event-alerts" data-ng-if="hEntry.partnerActionRequired !== null || hEntry.vendorActionRequired !== null">\r\n\r\n                            <div class="alert alert-warning c-i" data-ng-class="{\'action-required\' : hEntry.partnerActionRequired.isCompleted === false}" data-ng-if="hEntry.partnerActionRequired !== null && hEntry.partnerActionRequired.isCompleted === false">\r\n                                <i class="icon-size-18 material_warning"><\/i>\r\n                                <div>\r\n                                    <span>[[exec[[getPartnerActionText(hEntry) ]]exec]]<\/span>\r\n                                    <button data-ng-if="canCompletePartnerAction(hEntry) === true" data-c-submit-button data-is-primary="false" data-pending-action="loader.pendingAction" data-loader-text="Completing" data-on-submit="handleAction(hEntry.partnerActionRequired.completeActionName, hEntry)">Complete<\/button>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <p class="action-completed" data-ng-if="hEntry.partnerActionRequired.isCompleted === true">[[exec[[getPartnerActionText(hEntry) ]]exec]]<\/p>\r\n\r\n                            <div class="alert alert-warning c-i" data-ng-class="{\'action-required\' : hEntry.vendorActionRequired.isCompleted === false}" data-ng-if="hEntry.vendorActionRequired !== null && hEntry.vendorActionRequired.isCompleted === false">\r\n                                <i class="icon-size-18 material_warning"><\/i>\r\n                                <div>\r\n                                    <span>[[exec[[getVendorActionText(hEntry) ]]exec]]<\/span>\r\n                                    <button data-ng-if="canCompleteVendorAction(hEntry) === true" data-c-submit-button data-is-primary="false" data-pending-action="loader.pendingAction" data-loader-text="Completing" data-on-submit="handleAction(hEntry.vendorActionRequired.completeActionName, hEntry)">Complete<\/button>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <p class="action-completed" data-ng-if="hEntry.vendorActionRequired.isCompleted === true">[[exec[[getVendorActionText(hEntry) ]]exec]]<\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div data-ng-if="hEntry.privateFieldChanges !== null" class="event-details secret" data-unit-t-main-private-field-changes>\r\n                        <div class="event-comment">\r\n                            <div class="comment">\r\n                                <div data-ng-repeat="privateChange in hEntry.privateFieldChanges track by $index" data-ng-bind="privateChange" class="format-wrap" data-t-history-item-private-field-changes><\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class="event-meta-mobile small-only">\r\n                        <div data-ng-bind-html="hEntry.createdDateDurationFormat" data-unit-t-created-date><\/div>\r\n                        <div class="c-nt" data-ng-bind="hEntry.createdDateStringFormat" data-unit-t-created-date><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<div data-ng-if="isVisible() === false">\r\n    <div class="no-data alert alert-info">\r\n        <p data-ng-bind="noDataMessage"><\/p>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldAddress/inputFieldAddress.html",'<div data-ng-if="field.useMasterAddressField !== null">\r\n\r\n    <div data-c-form-field data-field="field.useMasterAddressField" data-form="form"><\/div>\r\n\r\n    <div data-ng-show="field.useMasterAddressField.value === \'true\' && field.masterAddress !== null && field.masterAddress !== \'\'" class="form-group">\r\n        <div class="col-sm-3 control-label"><label><span>Address<\/span><\/label><\/div>\r\n        <div class="col-sm-9 control-value form-control-static">\r\n            <span data-ng-bind="field.masterAddress" class="format-wrap"><\/span>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-ng-if="field.useMasterAddressField !== null && field.useMasterAddressField.value === \'false\' || field.useMasterAddressField === null">\r\n    <div data-ng-if="field.description !== null" class="form-group">\r\n        <div class="col-sm-3 control-label"><label><\/label><\/div>\r\n        <div class="col-sm-9 control-value form-control-static">\r\n            <div class="help-block" data-ng-bind="field.description.value"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n    <div data-c-form-field data-field="field.countryField" data-form="form" data-revalidate-on-change="getValidateOnChangeValues()" data-validation-function="validateAddressFieldsForCountry(name, value)"><\/div>\r\n    <div data-c-form-field data-field="field.streetAddressField" data-ng-if="field.streetAddressField !== null" data-form="form"><\/div>\r\n    <div data-c-form-field data-field="field.cityField" data-ng-if="field.cityField !== null" data-form="form" data-revalidate-on-change="field.streetAddressField.value" data-validate-empty-value="true" data-validation-function="validateCityAndStreet(name, value)"><\/div>\r\n    <div data-c-form-field data-field="field.stateProvinceField" data-ng-if="showStateField()" data-form="form"><\/div>\r\n    <div data-c-form-field data-field="field.zipField" data-ng-if="field.zipField !== null" data-form="form"><\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldFilters/inputFieldFilters.html",'<div data-ng-repeat="filter in getVisibleFilters()">\r\n    <div class="form-section-content">\r\n        <div class="form-grid">\r\n            <div class="form-grid-content">\r\n                <div class="form-grid-row form-grid-rule">\r\n                    <label class="form-grid-response col-sm-3 control-label">[[exec[[filter.fullLabel]]exec]]<\/label>\r\n                    <div class="form-grid-response col-sm-9" data-c-filter data-filter="filter" data-form="form" data-is-disabled="filter.isDisabled" data-on-load-items="handleLoadItems(name)" data-on-change="onChange()" data-validate="validate" data-validation-function="validateFilter(filter)" data-revalidate-on-change="getFilterValue(filter)"><\/div>\r\n                    <div class="form-grid-response form-grid-response-short">\r\n                        <a data-ng-click="removeFilter(filter)" class="btn btn-text btn-slim" href="javascript:;"><i icon="remove-small"><\/i><\/a>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<div data-ng-if="anyAvailableFilters() === true">\r\n    <div data-ng-if="anyVisibleFilters() === true" class="divider"><\/div>\r\n    <div>\r\n        <div data-c-add-object-button class="btn-group dropdown" data-items="availableFilters" data-on-click="addFilter(item)"><\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/directives/inputField/inputFieldFolderDocumentSelector/folderDocumentSelectorView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n\r\n            <h4 class="modal-title">Choose from Library<\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n\r\n                <div class="n-actions" data-ng-if="breadCrumbs !== null">\r\n                    <div class="n-actions-left n-actions-flex large-only">\r\n                        <div class="breadcrumb-above-search" data-c-bread-crumbs data-crumbs="breadCrumbs" data-use-crumbs-only="true" data-on-action="handleBreadCrumbsAction(action, data)"><\/div>\r\n                    <\/div>\r\n\r\n                    <div class="n-mobile-actions small-only">\r\n                        <div data-c-bread-crumbs data-crumbs="breadCrumbs" data-use-crumbs-only="true" data-on-action="handleBreadCrumbsAction(action, data)"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class="n-actions">\r\n                    <div class="n-actions-flex large-only">\r\n                        <div data-ng-if="searchTermFilter !== null" class="n-actions-flex-grow" data-c-search-box data-value="searchTermFilter.filterValue.value" data-on-search="refresh()" data-max-width="true"><\/div>\r\n                        <c-pager data-lister="documents" data-on-refresh="refresh()" data-lister-status="listerStatus"><\/c-pager>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class="table-responsive table-mobile-no-borders library-theme-icon">\r\n                    <div data-c-lister data-lister="documents" data-settings="listerSettings" data-lister-status="listerStatus" data-on-refresh="refresh()" data-on-action="handleAction(action, data)"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldFolderDocumentSelector/inputFieldFolderDocumentSelector.html",'<div class="btn-grid btn-grid-left">\r\n    <div data-ng-if="currentStatus === status.NOT_SELECTED">\r\n        <a class="btn btn-default" href="javascript:;" data-ng-click="openSelectorDialog()" data-t-button="Choose from Library">Choose from Library<\/a>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class="file-upload-info library-theme-icon" data-ng-if="currentStatus === status.FOLDER_OR_DOCUMENT_SELECTED">\r\n    <div class="file-name-content">\r\n        <div class="file-name">\r\n            <div class="file-label c-nt" data-ng-bind="field.folderOrDocumentName"><\/div>\r\n        <\/div>\r\n        <a data-ng-if="field.isLibraryAdmin === true" class="file-remove-icon" href="javascript:;" data-ng-click="removeSelectedItem()"><i icon="remove-small"><\/i><\/a>\r\n        <a data-ng-if="field.isLibraryAdmin === true" class="file-remove-label" href="javascript:;" data-auto-focus="true" data-ng-click="removeSelectedItem()">Replace<\/a>\r\n    <\/div>\r\n\r\n    <div data-ng-if="permissionsMessage" class="alert alert-warning" style="margin-top: 10px">\r\n        <i class="icon-size-18 material_warning"><\/i>\r\n        <p data-ng-bind="permissionsMessage"><\/p>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div data-c-custom-validator data-form="form" data-model="currentStatus" data-validation-function="validateSelectedValue()"><\/div>\r\n    ');n.put("js/shared/common/directives/inputField/inputFieldImageChooser/imageChooserView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Choose Image<\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            \r\n            <div class="modal-body">\r\n\r\n                <div>\r\n                    <div class="n-actions">\r\n                        <div class="n-actions-left large-only">\r\n                            <c-new-button data-actions="actions.new" data-on-action="handleAction(action)"><\/c-new-button>\r\n                        <\/div>\r\n\r\n                        <div class="n-mobile-actions small-only">\r\n                            <c-mobile-new-button data-actions="actions.new" data-on-action="handleAction(action)"><\/c-mobile-new-button>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class="table-responsive table-mobile-no-borders">\r\n                        <div data-c-lister data-lister="backgroundImages" data-settings="backgroundImagesListerSettings" data-lister-status="backgroundImagesListerStatus" data-on-action="handleAction(action, data)"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n            <\/div>\r\n\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldImageChooser/uploadImageView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Upload Image<\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n\r\n            <div class="modal-body">\r\n\r\n                <form data-c-form name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n\r\n                    <!-- Details Section -->\r\n                    <div class="form-section" data-ng-if="detailsSection !== null">\r\n                        <div class="form-section-content">\r\n                            <div data-c-input-field data-field="detailsSection.imageFile" data-form="form">\r\n                                <field>\r\n                                    <div data-c-input-field-file-upload data-field="detailsSection.imageFile" data-form="form" data-on-action="onUploadStatusChange(action, data)" data-validation-function="validateImage(name, value)"><\/div>\r\n                                <\/field>\r\n                            <\/div>\r\n                            <div data-c-form-field data-field="detailsSection.imageTitle" data-form="form"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                <\/form>\r\n\r\n            <\/div>\r\n\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save(form)" data-show-loader="form.showLoader">Save<\/button>\r\n            <\/div>\r\n\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldLinkDestination/inputFieldLinkDestination.html",'<div data-ng-if="isVisible()">\r\n    <div data-c-form-field data-field="field.destination" data-form="form"><\/div>\r\n\r\n    <div data-c-input-field-no-label data-ng-if="showFileSelectorField() === true" data-field="field.fileSelector" data-form="form">\r\n        <field>\r\n            <div data-c-input-field-file-upload data-field="field.fileSelector" data-on-action="handleFileUploadAction(action, data)" data-form="form"><\/div>\r\n        <\/field>\r\n    <\/div>\r\n\r\n    <div data-ng-if="showCustomLinkField() === true" data-c-form-field data-field="field.customLink" data-form="form"><\/div>\r\n\r\n    <div data-c-input-field data-ng-if="showLibraryField() === true" data-field="field.librarySelector" data-form="form">\r\n        <field>\r\n            <div data-c-input-field-radio-button-list data-field="field.librarySelector" data-form="form"><\/div>\r\n        <\/field>\r\n    <\/div>\r\n\r\n    <div data-c-input-field-no-label data-ng-if="showFolderAndDocumentField() === true" data-field="field.folderOrDocumentSelector" data-form="form">\r\n        <field>\r\n            <div data-c-input-field-folder-document-selector data-field="field.folderOrDocumentSelector" data-form="form"><\/div>\r\n        <\/field>\r\n    <\/div>\r\n\r\n    <div data-ng-if="showTargetBlankField() === true" data-c-form-field data-field="field.targetBlank" data-form="form"><\/div>\r\n\r\n    <div data-c-form-field data-field="field.permissions" data-form="form"><\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldNestedTable/nestedTableRowEditorView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="title"><\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="fields">\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n                    <div data-ng-repeat="field in field.fields">\r\n                        <div data-ng-if="field.type < 1000">\r\n                            <!-- STANDARD FIELD TYPES -->\r\n                            <div data-c-form-field data-field="field" data-form="form"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer text-right">\r\n            <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-t-instance="nestedTableEditor" data-on-submit="save(form)">Done<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldPasswordSetup/inputFieldPasswordSetup.html",'<div class="form-group">\r\n    <div class="col-sm-3 control-label"><label class="required"><span>New Password<\/span><\/label><\/div>\r\n    <div class="col-sm-9 control-value">\r\n        <input name="password" class="form-control autoselect" type="password" autocomplete="off" data-ng-model="password" data-c-validator data-validators="[required]"\r\n               data-async-validation-function="validatePassword(value)" />\r\n        <p data-ng-if="settings.showApiWarning" class="help-block">Make sure to use this new password when accessing the Channeltivity Data API.<\/p>\r\n        <label data-c-validation-message data-form="form" data-field-name="password"><\/label>\r\n    <\/div>\r\n<\/div>\r\n<div class="form-group">\r\n    <div class="col-sm-3 control-label"><label class="required"><span>Confirm<\/span><\/label><\/div>\r\n    <div class="col-sm-9 control-value">\r\n        <input name="passwordConfirmation" class="form-control autoselect" type="password" autocomplete="off" data-ng-model="passwordConfirmation" data-c-validator\r\n               data-validators="[required]" data-async-validation-function="confirmPassword(value)" data-depends-on="form.password.$valid" />\r\n        <label data-c-validation-message data-form="form" data-field-name="passwordConfirmation"><\/label>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldPdfTemplateSelector/inputFieldPdfTemplateSelector.html",'<div class="form-group" data-ng-if="field !== null">\r\n    <div class="col-sm-3 control-label"><label class="required"><span data-ng-bind-html="getLabel()"><\/span><\/label><\/div>\r\n    <div class="col-sm-9">\r\n        <div data-ng-if="currentStatus === status.NOT_SELECTED">\r\n            <a class="btn btn-default btn-file" href="javascript:;" data-ng-bind="buttonLabel" data-ng-click="chooseTemplate()"><\/a>\r\n        <\/div>\r\n        \r\n        <div data-ng-if="currentStatus === status.SELECTED" class="file-upload-preview-new">\r\n            <div class="preview generated-thumbnail">\r\n                <img data-ng-if="field.previewImageId !== null" data-c-image-placeholder data-mode="max" alt="pdf-template-thumbnail"  data-ng-src="[[exec[[getThumbnailUrl()]]exec]]" />\r\n                <c-actions-button class="upload-preview-control" data-actions="field.actions" data-on-action="contextMenuAction(action, data)" data-is-more="true" data-is-inline-block="true"><\/c-actions-button>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div data-ng-if="field !== null && field.description !== null" class="help-block" data-ng-bind-html="getDescription()"><\/div>\r\n\r\n        <div data-c-custom-validator data-form="form" data-validation-function="validate()" data-revalidate-on-change="field.value"><\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldPermissions/inputFieldPermissions.html",'<div data-ng-if="isVisible()">\r\n    <div data-c-input-field data-field="field.permissions" data-form="form">\r\n        <field>\r\n            <div data-ng-if="field.description !== null" class="help-block c-i" data-ng-bind-html="field.description"><\/div>\r\n            <div data-c-input-field-radio-button-list data-field="field.permissions" data-form="form"><\/div>\r\n        <\/field>\r\n    <\/div>\r\n\r\n    <div data-ng-if="showGroupsField() === true" data-c-form-field data-field="field.groups" data-form="form"><\/div>\r\n\r\n    <div data-ng-if="showRulesField() === true" data-c-input-field data-field="field.rules" data-form="form">\r\n        <field>\r\n            <div class="help-block c-i">Give access to all Users matching these rules:<\/div>\r\n\r\n            <div data-c-rule-selector data-field="field.rules" data-form="form" data-on-action="handleAction(action, data)"><\/div>\r\n        <\/field>\r\n    <\/div>\r\n    \r\n    <div class="form-group" data-ng-if="usersWithAccess !== null">\r\n        <div class="col-sm-3"><\/div>\r\n        <div class="col-sm-9 control-value">\r\n            <label class="matching-users-help" data-c-inline-help data-message="usersWithAccessInlineHelp"><\/label>\r\n            <div class="form-matching-users" data-ng-bind="usersWithAccess"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/directives/inputField/inputFieldResourcePicklist/inputFieldResourcePicklist.html",'<div data-c-form-field data-field="field" data-on-action="loadNewResource(action, data)" data-form="form"><\/div>');n.put("js/shared/common/directives/inputField/inputFieldResourcePicklist/resourceEditorView.html",'<c-dialog-layout is-large="false">\r\n    <attr-header>\r\n        <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n        <h4 class="modal-title">New Permissions Resource<\/h4>\r\n    <\/attr-header>\r\n    <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading === true }">\r\n        <attr-view>\r\n            <attr-body>\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="saveResource(form)" data-pending-action="pendingAction">\r\n                    <div data-ng-if="resourceSection !== null" data-c-form-field data-field="resourceSection.resourceField" data-form="form" data-validation-function="validateResourceName(name, value)"><\/div>\r\n                    <div data-ng-if="resourceSection !== null" data-c-form-field data-field="resourceSection.descriptionField" data-form="form"><\/div>\r\n                <\/form>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="saveResource(form)">Save<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n    <\/attr-content>\r\n<\/c-dialog-layout>');n.put("js/shared/common/directives/inputField/inputFieldUserEmail/inputFieldUserEmail.html",'<div class="form-group">\r\n    <div class="col-sm-3 control-label"><label data-ng-class="{\'required\': field.isRequired}"><span data-ng-bind-html="getLabel()"><\/span><\/label><\/div>\r\n\r\n    <div class="col-sm-9 control-value">\r\n        <input name="[[exec[[field.inputName]]exec]]" class="form-control autoselect" maxlength="[[exec[[field.length]]exec]]" type="text" data-auto-focus="true" data-ng-model="field.value" data-c-validator data-validators="[[exec[[field.isRequired ? \'[required,maxLength,formatEmailAddress]\' : \'[maxLength,formatEmailAddress]\']]exec]]" data-max-length="[[exec[[field.length]]exec]]" data-async-validation-function="validate(value)" data-debounce="550" data-t-form-field="[[exec[[field.label.value]]exec]]" />\r\n        <p data-ng-if="field.description !== null" class="help-block" data-ng-bind-html="getDescription()"><\/p>\r\n\r\n        <label data-c-validation-message data-form="form" data-field-name="[[exec[[field.inputName]]exec]]"><\/label>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldUserOrganizationPicklist/associateDomainEditorView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Email Domain<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <p class="c-i" data-ng-bind-html="description"><\/p>\r\n            <div class="fields">\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n                    <div data-c-form-field data-field="action" data-form="form"><\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer text-right">\r\n            <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save(form)" data-unit-t-name="email-domain">Save<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldUserOrganizationPicklist/inputFieldUserOrganizationPicklist.html",'<div class="form-group" ng-if="isVisible()">\r\n    <div class="col-sm-3 control-label"><label class="required"><span data-ng-bind-html="getLabel()"><\/span><\/label><\/div>\r\n    <div class="col-sm-9 control-value" data-ng-show="field.matchedOrganizationName === null && !noOrgsMessageIsVisible()">\r\n        <div class="select">\r\n            <div c-smart-picklist class="form-control"\r\n                 data-name="[[exec[[field.name]]exec]]"\r\n                 data-value="field.value"\r\n                 data-list-items="field.listItems"\r\n                 data-form="form"\r\n                 data-is-required="true"\r\n                 data-default-value="[[exec[[field.defaultValue]]exec]]"\r\n                 data-t-form-field="[[exec[[field.label.value]]exec]]"><\/div>\r\n        <\/div>\r\n        <a data-ng-if="field.hideNewOrgLinks === false" href="javascript:;" data-ng-click="loadNewOrganization()" class="help-block" data-ng-bind="newEntityLabel"><\/a>\r\n        <a data-ng-if="field.hideNewOrgLinks === false && additionalNewEntityLabel" href="javascript:;" data-ng-click="loadNewAdditionalOrganization()" class="help-block" data-ng-bind="additionalNewEntityLabel"><\/a>\r\n        <a data-ng-if="field.hideNewOrgLinks === false && additionalNextNewEntityLabel" href="javascript:;" data-ng-click="loadNewAdditionalNextOrganization()" class="help-block" data-ng-bind="additionalNextNewEntityLabel"><\/a>\r\n        <div data-c-validation-message data-form="form" data-field-name="[[exec[[field.name]]exec]]"><\/div>\r\n    <\/div>\r\n\r\n    <div data-ng-show="field.matchedOrganizationName !== null" class="col-sm-9 control-value form-control-static" data-ng-class="{\'has-error\': field.description !== null }">\r\n        <span data-ng-bind="field.matchedOrganizationName"><\/span>\r\n        <p data-ng-if="field.description !== null" data-ng-bind-html="getDescription()" class="help-block"><\/p>\r\n    <\/div>\r\n\r\n    <div data-ng-show="noOrgsMessageIsVisible()" class="col-sm-9 control-value form-control-static">\r\n        <span data-ng-bind="noEntityLabel"><\/span><br />\r\n        <a data-ng-if="field.hideNewOrgLinks === false" href="javascript:;" data-ng-click="loadNewOrganization()" class="help-block" data-ng-bind="newEntityLabel"><\/a>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldVideoSelector/externalVideoView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Add YouTube/Vimeo Video<\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n                <div class="fields">\r\n                    <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="add(form)" data-pending-action="pendingAction">\r\n                        <div data-c-form-field data-field="url" data-form="form" data-revalidate-on-change="isPrivate.value" data-validation-function="validate(name, value)"><\/div>\r\n                        <div data-c-form-field data-field="isPrivate" data-form="form"><\/div>\r\n                    <\/form>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="add(form)" data-show-loader="form.showLoader">Add<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/inputField/inputFieldVideoSelector/inputFieldVideoSelector.html",'<div class="form-group" data-ng-if="field !== null">\r\n    <div class="col-sm-3 control-label"><label class="required"><span data-ng-bind-html="getLabel()"><\/span><\/label><\/div>\r\n    <div class="col-sm-9">\r\n\r\n        <div class="btn-grid btn-grid-left">\r\n            <div data-ng-if="(currentStatus === status.NOT_SELECTED || currentStatus === status.UPLOADING || currentStatus === status.FILE_SELECTED) && field.file !== null">\r\n                <div data-c-file-upload data-field-name="fieldName" data-file-id="field.file.value" data-file-name="field.file.fileName" data-file-type="field.file.fileType" data-is-required="field.file.isRequired" data-on-action="handleAction(action, data)" data-form="form"><\/div>\r\n            <\/div>\r\n            <div data-ng-if="currentStatus === status.NOT_SELECTED">\r\n                <button type="button" data-auto-focus="true" class="btn btn-default" data-t-button="YouTube/Vimeo" data-ng-click="showExternalVideoDialog()">YouTube/Vimeo<\/button>\r\n            <\/div>\r\n            <div data-ng-if="field.allowDocument === true && currentStatus === status.NOT_SELECTED">\r\n                <div class="btn-group" data-c-tooltip="[[exec[[getDisabledTooltip()]]exec]]">\r\n                    <button data-ng-disabled="field.hasLibraryAdminAccess === false"\r\n                            data-c-document-selector type="button"\r\n                            class="btn btn-default"\r\n                            data-t-button="Choose from Library"\r\n                            data-load-dialog="loadDocumentSelectorDialog()"\r\n                            data-refresh-lister="refreshDocumentSelector(filters, listerState)"\r\n                            data-on-action="handleAction(action, data)">\r\n                        Choose from Library\r\n                    <\/button>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class="file-upload-info" data-ng-if="currentStatus === status.URL_SELECTED">\r\n            <div class="file-name-content">\r\n                <div class="file-name">\r\n                    <div class="file-label" data-ng-bind="field.url.value"><\/div>\r\n                <\/div>\r\n                <a class="file-remove-icon" href="javascript:;" data-ng-click="removeSelectedItem()"><i icon="remove-small"><\/i><\/a>\r\n                <a class="file-remove-label" href="javascript:;" data-auto-focus="true" data-ng-click="removeSelectedItem()">Replace<\/a>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class="file-upload-info" data-ng-if="currentStatus === status.DOCUMENT_SELECTED">\r\n            <div class="file-name-content">\r\n                <div class="file-name">\r\n                    <div class="file-label" data-ng-bind="field.document.fileName"><\/div>\r\n                <\/div>\r\n                <a class="file-remove-icon" href="javascript:;" data-ng-click="removeSelectedItem()"><i icon="remove-small"><\/i><\/a>\r\n                <a class="file-remove-label" href="javascript:;" data-auto-focus="true" data-ng-click="removeSelectedItem()">Replace<\/a>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div data-ng-if="hasDescription() === true" class="help-block" data-ng-bind-html="getDescription()"><\/div>\r\n\r\n        <label data-c-validation-message data-form="form" data-field-name="[[exec[[fieldName]]exec]]"><\/label>\r\n\r\n        <div data-ng-if="currentStatus === status.FILE_SELECTED" data-c-input-field-checkbox-group data-field="field.allowNonAdminDownload" data-form="form"><\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/moduleSelector/moduleSelector.html",'<form data-c-form name="form" novalidate class="form-horizontal loading-large" data-ng-class="{\'loading-large\': isLoading }">\r\n\r\n    <div class="form-section">\r\n\r\n        <div class="form-section-title">\r\n            <h3>Modules<\/h3>\r\n        <\/div>\r\n\r\n        <div class="form-section-content" data-ng-if="modulesSection !== null">\r\n\r\n            <div data-c-form-field data-field="modulesSection.businessPlans" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.coBrandedCollateral" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.dealRegistration" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.emailMarketing" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.forum" data-form="form"><\/div>\r\n\r\n            <div class="form-group form-group-nested toggle-nested">\r\n                <div class="col-sm-3 control-label"><\/div>\r\n                <div class="col-sm-9 control-value">\r\n                    <div class="table-responsive-actions n-actions" data-ng-class="{\'no-rows\': forumLister.isVisible() === false}">\r\n                        <div class="n-actions-left">\r\n                            <c-actions-button data-ng-if="forumActions != null" data-actions="forumActions" data-on-action="handleAction(action)" data-is-small="true" data-is-inline-block="true"><\/c-actions-button>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class="table-responsive">\r\n                        <div data-c-lister data-lister="forumLister.data" data-settings="pagesSettings" data-lister-status="forumLister.status" data-on-action="handleAction(action, data)">\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div data-c-form-field data-field="modulesSection.leadDistribution" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.library" data-form="form"><\/div>\r\n\r\n            <div class="form-group form-group-nested toggle-nested">\r\n                <div class="col-sm-3 control-label"><\/div>\r\n                <div class="col-sm-9 control-value">\r\n                    <div class="table-responsive-actions n-actions" data-ng-class="{\'no-rows\': libraryLister.isVisible() === false}">\r\n                        <div class="n-actions-left">\r\n                            <c-actions-button data-ng-if="libraryActions != null" data-actions="libraryActions" data-on-action="handleAction(action)" data-is-small="true" data-is-inline-block="true"><\/c-actions-button>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class="table-responsive">\r\n                        <div data-c-lister data-lister="libraryLister.data" data-settings="pagesSettings" data-lister-status="libraryLister.status" data-on-action="handleAction(action, data)">\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div data-c-form-field data-field="modulesSection.mdf" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.news" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.referrals" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="modulesSection.trainingCertification" data-form="form"><\/div>\r\n\r\n        <\/div>\r\n    <\/div>\r\n<\/form>');n.put("js/shared/common/directives/newButton/newButton.html",'<a class="btn btn-primary" ng-if="isSingleActionVisible() && isLink(actions[0])" data-unit-t-single-action data-t-button="[[exec[[actions[0].label]]exec]]" data-ng-bind="singleActionLabel()" data-ng-href="[[exec[[actions[0].link]]exec]]" data-ng-attr-target="[[exec[[actions[0].targetBlank ? \'_blank\' : undefined]]exec]]" rel="noreferrer"><\/a>\r\n<button class="btn btn-primary" ng-if="isSingleActionVisible() && isLink(actions[0]) === false" data-unit-t-single-action data-t-button="[[exec[[actions[0].label]]exec]]" data-ng-bind="singleActionLabel()" data-ng-click="handleAction(actions[0])"><\/button>\r\n\r\n<div ng-if="isMultipleActionsVisible()" data-c-dropdown class="btn-group dropdown" data-unit-t-multiple-actions>\r\n    <button class="btn btn-primary" data-c-dropdown-action data-t-button="New"><span>New<\/span> <span class="caret"><\/span><\/button>\r\n    <ul class="dropdown-menu" data-c-dropdown-menu>\r\n        <li class="item" data-ng-repeat="action in actions" data-ng-class="{\'disabled\': action.disabledTooltip !== null}">\r\n            <a data-ng-if="isLink(action)" data-unit-t-multiple-actions-link data-t-action="[[exec[[action.label]]exec]]" data-ng-bind="action.label" data-ng-href="[[exec[[action.disabledTooltip === null ? action.link : null]]exec]]" data-ng-attr-target="[[exec[[action.targetBlank ? \'_blank\' : undefined]]exec]]" rel="noreferrer" data-c-tooltip="[[exec[[action.disabledTooltip]]exec]]"><\/a>\r\n            <a data-ng-if="isLink(action) === false" data-unit-t-multiple-actions-link data-t-action="[[exec[[action.label]]exec]]" data-ng-bind="action.label" data-ng-click="handleAction(action)" data-c-tooltip="[[exec[[action.disabledTooltip]]exec]]"><\/a>\r\n        <\/li>\r\n    <\/ul>\r\n<\/div>');n.put("js/shared/common/directives/pageColumn/pageColumn.html",'<div class="dash-tools">\r\n    <div data-c-tooltip="Add Column" class="dash-tool dash-tool-w" data-ng-if="canAddColumn() === true">\r\n        <a data-c-column-submit-button data-on-submit="addColumnLeft()" data-pending-action="pendingAction" data-is-enabled="isAddColumnEnabled">\r\n            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M13,9H9v4H7V9H3V7H7V3H9V7h4Z" /><\/svg>\r\n        <\/a>\r\n    <\/div>\r\n    <div data-c-tooltip="Add Column" class="dash-tool dash-tool-e" data-ng-if="canAddColumn() === true">\r\n        <a data-c-column-submit-button data-on-submit="addColumnRight()" data-pending-action="pendingAction" data-is-enabled="isAddColumnEnabled">\r\n            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M13,9H9v4H7V9H3V7H7V3H9V7h4Z" /><\/svg>\r\n        <\/a>\r\n    <\/div>\r\n    <div data-c-tooltip="Delete Column" class="dash-tool dash-tool-ne" data-ng-if="canRemoveColumn() === true">\r\n        <a class="dash-tool-btn-danger" data-c-column-submit-button data-on-submit="removeColumn()" data-pending-action="pendingAction" data-is-enabled="isRemoveColumnEnabled">\r\n            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M12.243,5.172,9.414,8l2.829,2.828-1.415,1.415L8,9.414,5.172,12.243,3.757,10.828,6.586,8,3.757,5.172,5.172,3.757,8,6.586l2.828-2.829Z" /><\/svg>\r\n        <\/a>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class="dash-widget-group" data-ng-class="{\'dash-widget-group-fill\': column.leafCount === 1}">\r\n    <div class="dash-widgets">\r\n\r\n        <div data-c-page-column-widget data-widget="section" data-pending-action="pendingAction" data-is-preview-mode="isPreviewMode" on-action="handleAction(action, section, data)" data-ng-repeat="section in column.sections | filter: filterSectionsFunction"><\/div>\r\n\r\n        <div data-ng-if="isPreviewMode === false" class="dash-split-column-tool" data-ng-class="{\'dash-split-column-tool-enabled\' : canSplitColumn() === true}">\r\n            <div class="dash-widgets-empty">\r\n                <span>drop Widgets here...<\/span>\r\n            <\/div>\r\n            <div class="dash-tool" data-ng-if="canSplitColumn() === true">\r\n                <a href="javascript:;" data-ng-click="splitColumn()" class="dash-tool-btn">split column<\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class="dash-row" data-ng-if="column.subColumns !== null" data-columns="[[exec[[column.subColumns.length]]exec]]">\r\n    <div data-c-page-column data-column="subColumn" data-is-preview-mode="isPreviewMode" data-cols="[[exec[[subColumn.widthInClc]]exec]]" data-pending-action="pendingAction" data-on-action="handleAction(action, section, data)" class="dash-col" data-ng-repeat="subColumn in column.subColumns | filter: filterColumnsFunction | orderBy:$index:isPreviewMode === true"><\/div>\r\n<\/div>');n.put("js/shared/common/directives/ruleSelector/computedRuleView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">New Computed Rule<\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n                    <div class="form-section">\r\n                        <div class="form-section-title">\r\n                            <h3>Details<\/h3>\r\n                        <\/div>\r\n\r\n                        <div class="form-section-content">\r\n                            <div data-c-form-field data-field="fieldAndAggregateField" data-form="form"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class="form-section">\r\n                        <div class="form-section-title">\r\n                            <h3>Filters<\/h3>\r\n                            <p class="help-block">Use Filters to further narrow down results as needed.<\/p>\r\n                        <\/div>\r\n\r\n                        <div class="form-section-content">\r\n                            <div data-c-rule-selector data-field="ruleSelectorField" data-form="form" data-on-action="handleAction(action, data)"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n\r\n            <\/div>\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-show-loader="form.showLoader" data-pending-action="pendingAction" data-on-submit="save(form)">Save<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/ruleSelector/ruleSelector.html",'<div data-ng-if="isVisible() === true">\r\n\r\n    <div data-ng-repeat="rule in field.selectedRules">\r\n        <div class="form-section-content">\r\n            <div class="form-grid form-grid-collapse">\r\n                <div class="form-grid-content">\r\n                    <div class="form-grid-row form-grid-rule ng-scope">\r\n                        <label class="form-grid-response col-sm-3 control-label">\r\n                            <span data-ng-bind="rule.fullLabel"><\/span>\r\n                        <\/label>\r\n                        <div class="form-grid-response " data-ng-class="{\'col-sm-3\' : fieldType.CHECKBOX !== rule.type && fieldType.CHECKBOX_GROUP !== rule.type, \'col-sm-9\': fieldType.CHECKBOX === rule.type || fieldType.CHECKBOX_GROUP === rule.type}">\r\n                            <div data-c-input-field-picklist data-field="rule.operator" data-form="form" data-is-disabled="rule.isEnabled === false"><\/div>\r\n\r\n                            <div data-c-custom-validator data-form="form" data-validation-function="validateRule(rule)" data-revalidate-on-change="field.selectedRules.length"><\/div>\r\n                        <\/div>\r\n\r\n                        <!-- if there is one input field -->\r\n                        <div class="form-grid-response col-sm-6" data-ng-if="fieldType.CHECKBOX !== rule.type && fieldType.CHECKBOX_GROUP !== rule.type && rule.operator.value != compareOperator.BETWEEN && rule.operator.value != compareOperator.NOT_BETWEEN">\r\n\r\n\r\n                            <!-- SELECTOR -->\r\n                            <div data-ng-if="fieldType.PICKLIST === rule.type || fieldType.PICKLIST_WITH_STRING_ID === rule.type || fieldType.MULTISELECT === rule.type" data-c-input-field-selector data-field="rule.field" data-form="form"><\/div>\r\n\r\n\r\n                            <!-- DOUBLE, PERCENT, CURRENCY -->\r\n                            <div data-ng-if="fieldType.DOUBLE === rule.type || fieldType.PERCENT === rule.type || fieldType.CURRENCY === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-t-double-modifier="[[exec[[rule.label]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" data-ng-model="rule.field.value.value" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n\r\n                            <!-- INTEGER -->\r\n                            <div data-ng-if="fieldType.INT === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-t-int-modifier="[[exec[[rule.label]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" data-ng-model="rule.field.value.value" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- DATE -->\r\n                            <div data-ng-if="fieldType.DATE === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="date" data-t-date-from="[[exec[[rule.label]]exec]]" class="form-control" data-ng-model="rule.field.value.value" date-pattern="[[exec[[datePattern]]exec]]" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- DATETIME-->\r\n                            <div data-ng-if="fieldType.DATETIME === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="datetime" data-t-date-from="[[exec[[rule.label]]exec]]" class="form-control" data-ng-model="rule.field.value.value" date-pattern="[[exec[[datePattern]]exec]]" time-pattern="[[exec[[timePattern]]exec]]" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n                        <\/div>\r\n\r\n                        <!-- if there are two input fields -->\r\n                        <div class="form-grid-response col-sm-3" data-ng-if="fieldType.CHECKBOX !== rule.type && fieldType.CHECKBOX_GROUP !== rule.type && (rule.operator.value == compareOperator.BETWEEN || rule.operator.value == compareOperator.NOT_BETWEEN)">\r\n\r\n                            <!-- DOUBLE, PERCENT, CURRENCY -->\r\n                            <div data-ng-if="fieldType.DOUBLE === rule.type || fieldType.PERCENT === rule.type || fieldType.CURRENCY === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-t-double-modifier="[[exec[[rule.label]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" data-ng-model="rule.field.value.value" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- INTEGER -->\r\n                            <div data-ng-if="fieldType.INT === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-t-int-modifier="[[exec[[rule.label]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" data-ng-model="rule.field.value.value" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- DATE -->\r\n                            <div data-ng-if="fieldType.DATE === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="date" data-t-date-from="[[exec[[rule.label]]exec]]" class="form-control" data-ng-model="rule.field.value.value" date-pattern="[[exec[[datePattern]]exec]]" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- DATETIME-->\r\n                            <div data-ng-if="fieldType.DATETIME === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue1" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="datetime" data-t-date-from="[[exec[[rule.label]]exec]]" class="form-control" data-ng-model="rule.field.value.value" date-pattern="[[exec[[datePattern]]exec]]" time-pattern="[[exec[[timePattern]]exec]]" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue1"><\/label>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <div class="form-grid-response col-sm-3" data-ng-if="fieldType.CHECKBOX !== rule.type && fieldType.CHECKBOX_GROUP !== rule.type && (rule.operator.value == compareOperator.BETWEEN || rule.operator.value == compareOperator.NOT_BETWEEN)">\r\n\r\n                            <!-- DOUBLE, PERCENT, CURRENCY -->\r\n                            <div data-ng-if="fieldType.DOUBLE === rule.type || fieldType.PERCENT === rule.type || fieldType.CURRENCY === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue2" data-t-double-modifier="[[exec[[rule.label]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="double" class="form-control" data-ng-model="rule.field.value.otherValue" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue2"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- INTEGER -->\r\n                            <div data-ng-if="fieldType.INT === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue2" data-t-int-modifier="[[exec[[rule.label]]exec]]" data-c-validator data-validators="[required, dataType]" data-data-type="integer" class="form-control" data-ng-model="rule.field.value.otherValue" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue2"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- DATE -->\r\n                            <div data-ng-if="fieldType.DATE === rule.type">\r\n                                <input type="text" name="[[exec[[rule.field.name]]exec]]_Value_CustomValue2" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="date" data-t-date-from="[[exec[[rule.label]]exec]]" class="form-control" data-ng-model="rule.field.value.otherValue" date-pattern="[[exec[[datePattern]]exec]]" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue2"><\/label>\r\n                            <\/div>\r\n\r\n                            <!-- DATETIME-->\r\n                            <div data-ng-if="fieldType.DATETIME === rule.type">\r\n                                <input type="text" name="[[exec[[rule.name]]exec]]_Value_CustomValue2" data-c-datetimepicker data-c-validator data-validators="[required, dataType]" data-data-type="datetime" data-t-date-from="[[exec[[rule.label]]exec]]" class="form-control" data-ng-model="rule.field.value.otherValue" date-pattern="[[exec[[datePattern]]exec]]" time-pattern="[[exec[[timePattern]]exec]]" data-ng-disabled="rule.isEnabled === false" />\r\n                                <label data-c-validation-message form="form" field-name="[[exec[[rule.name]]exec]]_Value_CustomValue2"><\/label>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <div class="form-grid-response form-grid-response-short">\r\n                            <a data-ng-click="remove(rule)" class="btn btn-text btn-slim" href="javascript:;"><i icon="remove-small"><\/i><\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class="form-grid-row form-grid-rule ng-scope" data-ng-if="hasComputedRuleAnyFilters(rule) === true">\r\n                        <label class="form-grid-response col-sm-3 control-label"><\/label>\r\n                        <div class="form-grid-response col-sm-9">\r\n                            <div data-ng-repeat="filter in getComputedRuleFilters(rule)">\r\n                                <div data-ng-bind-html="filter"><\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div>\r\n        <div data-c-add-object-button data-ng-if="data.availableRules != null && data.availableRules.length > 0" data-preserve-opened="false" data-title="Add Rule" class="btn-group dropdown" data-items="data.availableRules" data-on-click="addRule(item)"><\/div>\r\n        <!--<a href="javascript:;" class="ng-scope">Show [n] Matching Smart Group[s] and [n] suggestion[s]<\/a>-->\r\n\r\n\r\n        <div data-c-custom-validator data-form="form" data-validation-function="validateRules()" data-revalidate-on-change="field.selectedRules.length"><\/div>\r\n\r\n    <\/div>\r\n\r\n    <!--<div class="form-suggestion">\r\n        <div class="form-suggestion-header">\r\n            <b>Suggested Permissions based on your selection<\/b>\r\n            <a class="btn btn-text btn-slim" href="javascript:;"><i icon="remove-small"><\/i><\/a>\r\n        <\/div>\r\n\r\n        <div class="suggestion">\r\n            <p>Matching Smart Group(s)<\/p>-->\r\n            <!-- more than one smart group -->\r\n            <!--<p class="help-block">There are [N] Smart Groups that match your rules above. Select below to use Groups instead of Smart Permissions<\/p>-->\r\n            <!-- only one matching smart group -->\r\n            <!--<p class="help-block">There is one Smart Group that matches your rules above. Select below to use Groups instead of Smart Permissions<\/p>-->\r\n            <!--<div class="card-input-container">\r\n                <label class="card-input ng-scope" for="">\r\n                    <input type="radio" id="" name="" data-ng-value="" data-ng-disabled="" class="ng-pristine ng-untouched ng-valid ng-not-empty" value=""><span class="card-input-content"><span class="card-input-label format-wrap">LATAM Gold Partners<\/span><\/span>\r\n                <\/label><label class="card-input ng-scope" for=""><input type="radio" id="" name="" data-ng-value="" data-ng-disabled="" class="ng-pristine ng-untouched ng-valid ng-not-empty" value=""><span class="card-input-content"><span class="card-input-label format-wrap">Gold Partners<\/span><\/span><\/label><label class="card-input ng-scope" for=""><input type="radio" id="" name="" data-ng-value="" data-ng-disabled="" class="ng-pristine ng-untouched ng-valid ng-not-empty" value=""><span class="card-input-content"><span class="card-input-label format-wrap">Sales Team<\/span><\/span><\/label>\r\n            <\/div>\r\n            <div class="form-suggestion-pagination">\r\n                <a href="javascript:;">Show more<\/a>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class="suggestion">\r\n            <p>Similar Smart Permission to Consider<\/p>-->\r\n             <!--only one similar permission--> \r\n            <!--<p class="help-block">There is one existing set of Smart Permissions that includes all your rules above. Select below to automatically apply them.<\/p>-->\r\n             <!--more than one similar permission--> \r\n            <!--<p class="help-block">There are [N] Smart Permissions that include all your rules above. Select below to automatically apply them.<\/p>-->\r\n            <!--<div class="card-input-container">\r\n                <label class="card-input ng-scope" for="">\r\n                    <input type="radio" id="" name="" data-ng-value="" data-ng-disabled="" class="ng-pristine ng-untouched ng-valid ng-not-empty" value="1">\r\n                    <span class="card-input-content">\r\n                        <span class="card-input-group">\r\n                            <span class="card-input-field format-wrap"><span class="card-input-label">Region<\/span>LATAM<\/span><span class="card-input-field format-wrap"><span class="card-input-label">Partner Type<\/span>Gold Reseller<\/span><span class="card-input-field format-wrap"><span class="card-input-label">Partner Commitment Level<\/span>Medium<\/span><span class="card-input-field format-wrap"><span class="card-input-label">Industry Served<\/span>Financial<\/span>\r\n                        <\/span>\r\n                        <span class="similar-count">Used by [n] items<\/span>\r\n                    <\/span>\r\n                <\/label>\r\n                <label class="card-input ng-scope" for="">\r\n                    <input type="radio" id="" name="" data-ng-value="" data-ng-disabled="" class="ng-pristine ng-untouched ng-valid ng-not-empty" value="1">\r\n                    <span class="card-input-content">\r\n                        <span class="card-input-group">\r\n                            <span class="card-input-field format-wrap"><span class="card-input-label">Region<\/span>SEA<\/span><span class="card-input-field format-wrap"><span class="card-input-label">Partner Type<\/span>Gold Reseller<\/span><span class="card-input-field format-wrap"><span class="card-input-label">Company Size<\/span>Over 50,000<\/span>\r\n                        <\/span>\r\n                        <span class="similar-count">Used by [n] items<\/span>\r\n                    <\/span>\r\n                <\/label>\r\n            <\/div>\r\n            <div class="form-suggestion-pagination">\r\n                <a href="javascript:;">Show more<\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>-->\r\n<\/div>');n.put("js/shared/common/directives/section/systemMessagesSection/adminSystemMessageView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="message.title"><\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <p data-ng-bind-html="message.description"><\/p>\r\n        <\/div>\r\n\r\n        <div class="modal-footer text-right">\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="dismiss()" data-loader-text="Dismissing">Dismiss<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/settingsNavigation/settingsNavigation.html",'<div class="list-group">\r\n    <!--Navigation goes here-->\r\n<\/div>');n.put("js/shared/common/directives/systemMessageLister/adminSystemMessageView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content c-nt">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title " data-ng-bind="message.title"><\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <p data-ng-bind-html="message.description"><\/p>\r\n        <\/div>\r\n\r\n        <div class="modal-footer text-right">\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="dismiss()" data-loader-text="Dismissing">Dismiss<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/widget/heroWidgetButtonEditForm/heroWidgetButtonEditForm.html",'<form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n    <div class="form-section" data-ng-if="detailsSection !== null">\r\n        <div class="form-section-title">\r\n            <h3>Details<\/h3>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-c-form-field data-field="detailsSection.label" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="detailsSection.linkDestination" data-form="form"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div class="form-section" data-ng-if="detailsSection !== null">\r\n        <div class="form-section-title">\r\n            <h3>Permissions & Visibility<\/h3>\r\n            <p class="help-block">Specify which Users have access to this Button<\/p>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-c-input-field-permissions data-field="detailsSection.permissions" data-fields="permissionFields" data-on-action="handleAction(action,data)" data-form="form"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/form>');n.put("js/shared/common/directives/widget/heroWidgetEditForm/heroWidgetEditForm.html",'<form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n    <div class="form-section" data-ng-if="detailsSection !== null">\r\n        <div data-ng-if="isVisible([usageType.CUSTOM_PAGE])" class="form-section-title">\r\n            <h3>Details<\/h3>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-c-form-field data-field="detailsSection.heroTitle" data-form="form" data-validation-function="validateEmptyFieldsTitle(name,value)" data-revalidate-on-change="revalidateTitle()" data-validate-empty-value="true"><\/div>\r\n            <div data-c-form-field data-field="detailsSection.description" data-form="form" data-validation-function="validateEmptyFieldsDescription(name,value)" data-revalidate-on-change="revalidateDescription()" data-validate-empty-value="true"><\/div>\r\n            <div data-c-form-field data-field="detailsSection.fontSize" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="detailsSection.textColor" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="detailsSection.textShadowEnabled" data-form="form"><\/div>\r\n            <div data-ng-if="showTextShadowSettings() === true" data-c-form-field data-field="detailsSection.textShadowColor" data-form="form"><\/div>\r\n\r\n            <div data-c-input-field data-field="detailsSection.image" data-form="form">\r\n                <field>\r\n                    <div data-c-input-field-image-chooser data-field="detailsSection.image" data-form="form"><\/div>\r\n                    <div class="has-error" data-ng-if="showMissingBackgroudImageMessage() === true">\r\n                        <span class="help-block" data-ng-bind="getValidationMessage_LibraryUsage()"><\/span>\r\n                    <\/div>\r\n                <\/field>\r\n            <\/div>\r\n\r\n            <div data-ng-if="showOverlay() === true" data-c-form-field data-field="detailsSection.overlayEnabled" data-form="form"><\/div>\r\n            <div data-ng-if="showOverlaySettings() === true" data-c-form-field data-field="detailsSection.overlayColor" data-form="form"><\/div>\r\n            <div data-ng-if="showOverlaySettings() === true" data-c-form-field data-field="detailsSection.overlayTransparency" data-form="form"><\/div>\r\n\r\n            <div data-ng-if="showHeightSettings() === true" data-c-form-field data-field="detailsSection.height" data-form="form"><\/div>\r\n\r\n            <div data-ng-if="showButtonsSettings() === true" class="form-group">\r\n                <div class="col-sm-3 control-label">\r\n                    <label><span>Buttons<\/span><\/label>\r\n                <\/div>\r\n                <div class="col-sm-9 control-value">\r\n                    <div class="help-block">Add Buttons to drive Users to specific areas within your portal. You can have a maximum of [[exec[[maxButtonCount]]exec]] Buttons.<\/div>\r\n                    <div class="table-responsive-actions n-actions" data-ng-class="{\'no-rows\': listerIsVisible() === false}">\r\n                        <div class="n-actions-left">\r\n                            <c-button data-action="listerData.actions.newButtonAction" data-on-action="handleAction(action)" data-disabled-tooltip="[[exec[[getAddIconActionTooltip()]]exec]]" data-is-disabled="getAddIconActionTooltip() !== null"><\/c-button>\r\n                            <c-button data-ng-if="showReorderButton() === true" data-action="listerData.actions.reorderAction" data-on-action="handleAction(action)"><\/c-button>\r\n                        <\/div>\r\n                    <\/div>\r\n                    \r\n                    <div class="layout-scroll rounded-wrapper-thin" data-ng-if="listerIsVisible() === true">\r\n                        <div class="table-responsive">\r\n                            <div data-c-lister data-lister="listerData.lister" data-settings="listerData.settings" data-lister-status="listerData.status" data-on-action="handleAction(action, data)"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class="has-error" data-ng-if="showMissingButtonsMessage() === true">\r\n                        <span class="help-block">You must have either enter content in the "[[exec[[detailsSection.heroTitle.label.value]]exec]]" or "[[exec[[detailsSection.description.label.value]]exec]]" field, or add at least one Button to save.<\/span>\r\n                    <\/div>\r\n\r\n                    <div data-c-custom-validator data-form="form" data-validation-function="validateButtons()"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div class="form-section" data-ng-if="detailsSection !== null && detailsSection.permissions !== null">\r\n        <div class="form-section-title">\r\n            <h3>Permissions & Visibility<\/h3>\r\n            <p class="help-block">Specify which Users have access to this Widget<\/p>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-c-input-field-permissions data-field="detailsSection.permissions" data-on-action="handleAction(action,data)" data-form="form"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/form>\r\n\r\n<div data-ng-if=\'isVisible([usageType.CUSTOM_PAGE]) === true\' class="form-section">\r\n    <div class="form-section-title">\r\n        <h3>Preview<\/h3>\r\n    <\/div>\r\n    <div class="form-section-content">\r\n        <div class="edit-widget-preview">\r\n            <div data-c-hero-widget data-section="preview"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/directives/widget/iconsWidgetEditForm/iconsWidgetEditForm.html",'<form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n    <div data-ng-if="detailsSection !== null" class="form-section">\r\n        <div data-ng-if="isVisible([usageType.CUSTOM_PAGE])" class="form-section-title">\r\n            <h3>Details<\/h3>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-ng-if="detailsSection.widgetTitle !== null" data-c-form-field data-field="detailsSection.widgetTitle" data-form="form"><\/div>\r\n            <div data-ng-if="detailsSection.showTitle !== null" data-c-form-field data-field="detailsSection.showTitle" data-form="form"><\/div>\r\n            <div data-ng-if="showDescription() === true" data-c-form-field data-field="detailsSection.description" data-form="form"><\/div>\r\n            <div class="form-group">\r\n                <div class="col-sm-3 control-label" data-ng-if="listerData.label !== null">\r\n                    <label class="required"><span data-ng-bind="listerData.label"><\/span><\/label>\r\n                <\/div>\r\n                <div class="col-sm-9 control-value">\r\n                    <div class="help-block" data-ng-if="listerData.description !== null" data-ng-bind="listerData.description"><\/div>\r\n\r\n                    <div class="table-responsive-actions n-actions" data-ng-class="{\'no-rows\': listerData.isVisible() === false}">\r\n                        <div class="n-actions-left">\r\n                            <c-button data-action="listerData.actions.addIconAction" data-on-action="handleAction(action)" data-disabled-tooltip="[[exec[[getAddIconActionTooltip()]]exec]]" data-is-disabled="getAddIconActionTooltip() !== null" class="btn-group"><\/c-button>\r\n                            <c-button data-ng-if="showReorderButton() === true" data-action="listerData.actions.reorderAction" data-on-action="handleAction(action)"><\/c-button>\r\n                        <\/div>\r\n                    <\/div>\r\n                    \r\n                    <div class="layout-scroll rounded-wrapper-thin" data-ng-if="listerData.isVisible() === true">\r\n                        <div class="table-responsive">\r\n                            <div data-c-lister data-lister="listerData.lister" data-settings="listerData.settings" data-lister-status="listerData.status" data-on-action="handleAction(action, data)"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div data-c-custom-validator data-form="form" data-validation-function="validateIcons()"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div data-ng-if="detailsSection !== null && detailsSection.permissions !== null" class="form-section">\r\n        <div class="form-section-title">\r\n            <h3>Permissions & Visibility<\/h3>\r\n            <p class="help-block">Specify which Users have access to this Widget<\/p>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-c-input-field-permissions data-field="detailsSection.permissions" data-on-action="handleAction(action,data)" data-form="form"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/form>\r\n\r\n<div data-ng-if="isVisible([usageType.CUSTOM_PAGE]) === true" class="form-section">\r\n    <div class="form-section-title">\r\n        <h3>Preview<\/h3>\r\n    <\/div>\r\n    <div class="form-section-content">\r\n        <div class="edit-widget-preview">\r\n            <div data-c-icons-widget data-section="preview" class="icons-preview c-nt"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/directives/widget/iconsWidgetIconEditForm/iconsWidgetIconEditForm.html",'<form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n    <div data-ng-if="iconSection !== null" class="form-section-slim">\r\n        <div data-ng-if="isVisible([usageType.CUSTOM_PAGE])" class="form-section-title">\r\n            <h3>Details<\/h3>\r\n        <\/div>\r\n\r\n        <div data-ng-if="iconSection !== null" class="form-section-content" >\r\n            <div data-c-form-field data-field="iconSection.iconTitle" data-form="form"><\/div>\r\n            <div data-ng-if="iconSection.description !== null" data-c-form-field data-field="iconSection.description" data-form="form"><\/div>\r\n            <div data-c-form-field data-field="iconSection.image" data-form="form"><\/div>\r\n            <div data-ng-if="iconSection.linkDestination !== null" data-c-input-field-link-destination data-field="iconSection.linkDestination" data-form="form"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div data-ng-if="iconSection !== null && iconSection.permissions !== null" class="form-section">\r\n        <div class="form-section-title">\r\n            <h3>Permissions & Visibility<\/h3>\r\n            <p class="help-block">Specify which Users have access to this Icon<\/p>\r\n        <\/div>\r\n\r\n        <div class="form-section-content">\r\n            <div data-c-input-field-permissions data-field="iconSection.permissions" data-fields="permissionFields" data-on-action="handleAction(action,data)" data-form="form"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/form>');n.put("js/shared/common/views/addHistoryEntry/addHistoryEntryView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">New History Entry<\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n                <form data-c-form name="form" novalidate data-ng-submit="addHistoryEntry(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                    <div data-ng-if="historyEntrySection !== null">\r\n                        <div data-c-form-field data-field="historyEntrySection.comment" data-form="form"><\/div>\r\n                        <div data-c-form-field data-field="historyEntrySection.file" data-form="form"><\/div>\r\n                        <div data-c-form-field data-field="historyEntrySection.hideFromPartner" data-form="form"><\/div>\r\n                        <div data-c-form-field data-field="historyEntrySection.partnerActionRequired" data-form="form"><\/div>\r\n                        <div data-c-form-field data-field="historyEntrySection.vendorActionRequired" data-form="form"><\/div>\r\n                        <div data-c-input-field-no-label>\r\n                            <div data-c-required-multi-field-validator data-form="form" data-fields="[historyEntrySection.comment, historyEntrySection.file]"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="addHistory(form)">Save<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/advancedExportDialog/advancedExportDialog.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Export<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <div class="modal-description">\r\n                <p>Use the advanced export functionality to report on nested table custom field data. Your currently selected columns will be added to each row of nested table data.<\/p>\r\n            <\/div>\r\n\r\n            <form data-c-form name="form" novalidate data-ng-submit="skipSubmit()" data-pending-action="pendingAction" class="form-horizontal">\r\n                <div data-c-form-field data-field="fields.nestedTables" data-form="form"><\/div>\r\n            <\/form>\r\n        <\/div>\r\n\r\n        <div class="modal-footer text-right">\r\n            <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n            <a class="btn btn-default" href="javascript:;" target="_blank" rel="noreferrer" data-ng-href="[[exec[[getExportToExcelLink()]]exec]]">Export to Excel<\/a>\r\n            <a class="btn btn-default" href="javascript:;" target="_blank" rel="noreferrer" data-ng-href="[[exec[[getPrintLink()]]exec]]">Print View<\/a>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/applicationError/applicationErrorView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Something went wrong<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-danger">\r\n                <i class="icon-size-18 material_error"><\/i>\r\n                <p>Sorry. We couldn\'t process your request. Our engineering team has been notified.<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-text btn-padding-right" data-ng-click="goToPreviousPage()">Previous Page<\/button>\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Reload Page<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/applicationOutOfDate/applicationOutOfDateView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Page Expired<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-warning">\r\n                <i class="icon-size-18 material_warning"><\/i>\r\n                <p>We\'ve updated the system and your page has expired. Please refresh the page to continue.<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Refresh Page<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/contactSupport/contactSupportView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Contact [[exec[[portalName]]exec]] Support<\/h4>\r\n        <\/div>\r\n        \r\n        <div data-ng-class="{\'loading-large\': isLoading}">\r\n            <div class="modal-body">\r\n                <div class="modal-description">\r\n                    <p data-ng-bind-html="contactSupportDescription"><\/p>\r\n                <\/div>\r\n\r\n                <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="submitQuestionComment(form)" data-pending-action="pendingAction">\r\n                    <div class="form-section">\r\n                        <div class="form-section-content" data-ng-if="questionDescription !== null">\r\n                            <div data-c-form-field data-field="fromField" data-form="form"><\/div>\r\n                            <div data-c-form-field data-field="questionDescription.question" data-form="form"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="submitQuestionComment(form)" data-loader-text="Sending">Send<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/cookiesNotEnabled/cookiesNotEnabledView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Cookies Not Enabled<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-danger">\r\n                <i class="icon-size-18 material_error"><\/i>\r\n                <p>You must have cookies enabled.<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Reload Page<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/email/emailDetailsView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <button type="button" class="close" data-ng-click="closeThisDialog()" aria-label="Close"><i icon="remove" aria-hidden="true"><\/i><\/button>\r\n            <h4 class="modal-title" data-ng-bind="title"><\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n\r\n                <div data-ng-if="isLoading === false" class="form-section">\r\n                    <div class="form-section-content">\r\n                        \r\n                        <div class="email-form">\r\n                            <div data-ng-if="sender !== null" data-c-form-field data-field="sender"><\/div>\r\n\r\n                            <div data-ng-if="replyTo !== null" data-c-form-field data-field="replyTo"><\/div>\r\n\r\n                            <div data-ng-if="recipient !== null" data-c-form-field data-field="recipient"><\/div>\r\n\r\n                            <div data-ng-if="subject !== null" data-c-form-field data-field="subject"><\/div>\r\n                        <\/div>\r\n\r\n                        <div data-ng-if="body !== null" class="form-group">\r\n                            <iframe data-c-custom-iframe data-content="body" data-auto-height="true" scrolling="no" frameborder="0" height="500" style="width: 100%; outline: 1px solid lightGrey !important; margin-top: 8px"><\/iframe>\r\n                        <\/div>\r\n                        <div class="email-form">\r\n                            <div data-ng-if="attachments !== null" data-c-form-field data-field="attachments"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/emailDigest/updateEmailDigestView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n\r\n            <h4 class="modal-title">Update Digest Email Notification Settings<\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body" >\r\n                \r\n                <div class="modal-description">\r\n                    <p>Instead of sending email notifications immediately when an event occurs, Digest Email Notifications consolidate one or more notifications into a single message.<\/p>\r\n                <\/div>\r\n\r\n                <form data-c-form class="form-horizontal" autocomplete="off" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n                    <div class="form-section">\r\n                        <div class="form-section-content" data-ng-if="section !== null">\r\n                            <div data-c-form-field data-field="section.notificationsFormat" data-form="form"><\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n\r\n                <button data-c-submit-button data-show-loader="form.showLoader" data-pending-action="pendingAction" data-on-submit="save(form)">Save<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/emailReminder/updateEmailRemindersView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Email Reminders<\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div data-ng-if="noRemindersEnabled === false">\r\n                <div class="modal-body">\r\n                    <div class="modal-description">\r\n                        <p>Configure personal Email Reminders to alert you of important actions.<\/p>\r\n                    <\/div>\r\n\r\n                    <form data-c-form class="form-horizontal" name="emailRemindersForm" novalidate data-ng-submit="save(emailRemindersForm)" data-pending-action="pendingAction">\r\n\r\n                        <div data-ng-if="remindersLoaded">\r\n\r\n                            <div data-c-form-field data-field="setting.isEnabled" data-form="emailRemindersForm"><\/div>\r\n\r\n                            <div data-ng-if="showReminders(setting.isEnabled)">\r\n                                <div class="form-section" data-ng-repeat="subscription in emailReminderSubscriptions">\r\n                                    <div class="form-section-title">\r\n                                        <h3 data-ng-bind="subscription.reminderTitle"><\/h3>\r\n                                        <p class="help-block" data-ng-bind="subscription.reminderDescription"><\/p>\r\n                                    <\/div>\r\n\r\n                                    <div class="form-section-content">\r\n\r\n                                        <div data-c-form-field data-field="subscription.frequency" data-form="emailRemindersForm"><\/div>\r\n\r\n                                        <div data-c-input-field-no-label data-ng-if="subscription.frequencyDays !== null && showDays(subscription.frequency)">\r\n                                            <div data-c-input-field-int data-field="subscription.frequencyDays" data-form="emailRemindersForm"><\/div>\r\n                                        <\/div>\r\n\r\n                                        <div data-ng-if="subscription.periodDays !== null && showDays(subscription.frequency)">\r\n                                            <div data-c-form-field data-field="subscription.periodDays" data-form="emailRemindersForm" data-validation-function="validateFrequencyInterval(name, value, subscription.id)" data-revalidate-on-change="subscription.frequency.value"><\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                        <\/div>\r\n\r\n                    <\/form>\r\n                <\/div>\r\n                <div class="modal-footer text-right">\r\n                    <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                    <button data-c-submit-button data-show-loader="form.showLoader" data-pending-action="pendingAction" data-on-submit="save(emailRemindersForm)">Save<\/button>\r\n                <\/div>\r\n            <\/div>\r\n            <div data-ng-if="noRemindersEnabled === true">\r\n                <div class="modal-body">\r\n                    <div class="alert alert-warning">\r\n                        <i class="icon-size-18 material_warning"><\/i>\r\n                        <p data-ng-bind-html="message"><\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/emailSettings/emailSettingsEditForm.html",'<form data-c-form class="form-horizontal" autocomplete="off" name="form" novalidate data-ng-submit="update(form)" data-pending-action="pendingAction">\r\n    <div class="form-section">\r\n        <div class="form-section-content" data-ng-if="section !== null">\r\n\r\n            <div data-c-form-field data-field="section.receiveEmails" data-form="form"><\/div>\r\n\r\n            <div data-ng-if="showEmailSubscriptionsField() === true" data-c-form-field data-field="section.emailSubscriptions" data-form="form"><\/div>\r\n\r\n            <div data-ng-if="showEmailNotificationSection() === true" class="form-section">\r\n                <div class="form-section-title">\r\n                    <h3>Email Notifications<\/h3>\r\n                <\/div>\r\n\r\n                <div class="form-section-content">\r\n                    <div data-c-form-field data-field="section.notificationsFormat" data-form="form"><\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div data-ng-if="showEmailRemindersSection() === true" class="form-section">\r\n                <div class="form-section-title">\r\n                    <h3>Email Reminders<\/h3>\r\n                <\/div>\r\n\r\n                <div class="form-section-content" data-ng-repeat="subscription in section.emailReminderSubscriptions">\r\n\r\n                    <div data-c-form-field data-field="subscription.reminderTitle" data-form="form"><\/div>\r\n                    <div data-c-form-field data-field="subscription.frequency" data-form="form"><\/div>\r\n\r\n                    <div data-c-input-field-no-label data-ng-if="subscription.frequencyDays !== null && showDays(subscription.frequency)">\r\n                        <div data-c-input-field-int data-field="subscription.frequencyDays" data-form="form"><\/div>\r\n                    <\/div>\r\n\r\n                    <div data-ng-if="subscription.periodDays !== null && showDays(subscription.frequency)">\r\n                        <div data-c-form-field data-field="subscription.periodDays" data-form="form" data-validation-function="validateFrequencyInterval(name, value, subscription.id)" data-revalidate-on-change="subscription.frequency.value"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/form>');n.put("js/shared/common/views/expiredData/expiredDataView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Page Data Expired<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-warning">\r\n                <i class="icon-size-18 material_warning"><\/i>\r\n                <p data-ng-bind="text"><\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Refresh Page<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/filtersMobileDialog/filtersMobileDialog.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Options / Filters<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <div data-c-filters-mobile data-filters="filters" data-additional-filters="additionalFilters" data-on-search="search()"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n');n.put("js/shared/common/views/integration/linkConfirmationView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="section.modalTitle"><\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n\r\n                <div data-ng-if="section.deletedRecordText !== null">\r\n                    <div class="alert alert-warning ng-scope">\r\n                        <i class="icon-size-18 material_warning"><\/i>\r\n                        <p data-ng-bind-html="section.deletedRecordText"><\/p>\r\n                    <\/div>\r\n                    <br />\r\n                <\/div>\r\n\r\n                <div data-ng-bind-html="section.modalText"><\/div>\r\n\r\n                <form data-c-form name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                    <div data-ng-if="section !== null">\r\n                        <div class="form-group">\r\n                            <div class="col-sm-9 control-value">\r\n                                <div class="checkbox">\r\n                                    <label class="required">\r\n                                        <span class="switch"><input name="[[exec[[section.confirm.name]]exec]]" data-ng-model="section.confirm.value" ng-true-value="\'true\'" ng-false-value="\'false\'" data-c-validator data-ng-attr-data-validators="[checked]" type="checkbox"><i><\/i><\/span>\r\n                                        <span data-ng-bind="section.confirm.label.value"><\/span>\r\n                                    <\/label>\r\n                                <\/div>\r\n                                <label data-c-validation-message data-form="form" data-field-name="[[exec[[section.confirm.name]]exec]]"><\/label>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save(form)" data-loader-text="Linking">Link<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/integration/linkView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="title"><\/h4>\r\n        <\/div>\r\n\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="modal-body">\r\n                <div data-ng-if="section !== null" class="modal-description" data-ng-bind-html="urlSection.modalDescription"><\/div>\r\n                \r\n                <form data-c-form name="form" novalidate data-ng-submit="next(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                    <div data-ng-if="urlSection !== null">\r\n                        <div data-c-form-field data-field="urlSection.integrationId" data-form="form" data-validation-function="validate(name, value)"><\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="next(form)" data-loader-text="Verifying">Next<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/integration/unlinkView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="title"><\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoading }">\r\n\r\n            <div class="modal-body">\r\n                <div data-ng-if="section !== null" class="modal-description c-i" data-ng-bind-html="section.modalDescription"><\/div>\r\n\r\n                <form data-c-form name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                    <div data-ng-if="section !== null">\r\n                        <div data-c-form-field data-field="section.clearSystemFields" data-form="form"><\/div>\r\n                        <div data-c-form-field data-field="section.confirm" data-form="form"><\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save(form)">Save<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/invalidRequest/invalidRequestView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Invalid Request<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-danger">\r\n                <i class="icon-size-18 material_error"><\/i>\r\n                <p>We weren\'t able to verify the origin of the request.<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-text" data-ng-click="goToPreviousPage()">Previous Page<\/button>\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Reload Page<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/listerView/listerViewSaveAs.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Save View as..<\/h4>\r\n        <\/div>\r\n        \r\n        <div data-ng-class="{\'loading-large\': isLoadingDialog}">\r\n            <div class="modal-body">\r\n                <div class="modal-description" data-t-message>\r\n                    <p data-t-message-description>Save your current column and filter configuration as a View.<\/p>\r\n                <\/div>\r\n\r\n                <div class="fields">\r\n                    <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n\r\n                        <!-- Details Section -->\r\n                        <div class="form-section" data-ng-if="listerViewSection !== null">\r\n                            <div class="form-section-content">\r\n                                <div data-c-input-field-no-label data-inline="false">\r\n                                    <div data-c-input-field-radio-button-list data-field="listerViewSection.selector" data-form="form"><\/div>\r\n                                <\/div>\r\n                                <div data-c-input-field-no-label data-inline="false" data-ng-if="listerViewSection.selector.value == viewState.NEW">\r\n                                    <div data-c-input-field-text data-field="listerViewSection.viewName" data-validation-function="validate(name, value)" data-form="form"><\/div>\r\n                                <\/div>\r\n                                <div data-c-input-field-no-label data-inline="false" data-ng-if="listerViewSection.selector.value == viewState.EXISTING">\r\n                                    <div data-c-input-field-picklist data-field="listerViewSection.existing" data-form="form"><\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/form>\r\n                <\/div>\r\n            <\/div>\r\n            <div class="modal-footer text-right">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="cancel()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button class="btn btn-primary" data-pending-action="pendingAction" data-on-submit="save(form)" data-t-button="Save" data-show-loader="form.showLoader">Save<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/listerView/manageColumns.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Manage Columns<\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoadingDialog}">\r\n            <div class="modal-body">\r\n                <div data-ng-if="isListLayout === true">\r\n                    <div class="modal-description">\r\n                        <p>Add, remove and reorder the columns in your current View.<\/p>\r\n                    <\/div>\r\n                    <div data-c-sorter data-items="selectedColumns" data-mode="mode" data-on-remove="removeColumn(item)"><\/div>\r\n                    <br />\r\n                    <div data-c-add-object-button data-ng-if="availableColumns != null && availableColumns.length > 0" class="btn-group dropdown" data-items="availableColumns" data-title="Add Column" data-on-click="addColumn(item)"><\/div>\r\n                <\/div>\r\n                    <div data-ng-if="isListLayout === false" class="alert alert-warning">\r\n                        <i class="icon-size-18 material_warning"><\/i>\r\n                        <p>You\'re in the [[exec[[layoutName]]exec]]. Columns can only be customized in the [[exec[[tableLayoutName]]exec]]. <a href="" data-ng-click="changeLayout(1);">Switch to [[exec[[tableLayoutName]]exec]]<\/a>.<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n                <div class="modal-footer text-right">\r\n                    <c-dialog-cancel-button data-ng-if="isListLayout === true" data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                    <button data-ng-if="isListLayout === true" data-c-submit-button data-pending-action="pendingAction" data-on-submit="save()">Apply<\/button>\r\n                <\/div>\r\n            <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/listerView/manageViews.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Manage Views<\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoadingDialog}">\r\n            <div class="modal-body">\r\n                <div class="modal-description" data-ng-if="anyViews() === true || anyViews() === false && anyViewsOriginal() === true">\r\n                    <p data-ng-if="anyViews() === true">Reorder and delete your saved Views<\/p>\r\n                    <p data-ng-if="anyViews() === false && anyViewsOriginal() === true">All saved Views will be deleted<\/p>\r\n                <\/div>\r\n\r\n                <div class="alert alert-info" data-ng-if="anyViewsOriginal() === false">\r\n                    <i class="icon-size-18 material_info"><\/i>\r\n                    <p>There are no saved Views.<\/p>\r\n                <\/div>\r\n            \r\n                <div data-c-sorter data-items="views" data-mode="mode" data-ng-if="anyViews() === true" data-translate="false"><\/div>\r\n            <\/div>\r\n            <div class="modal-footer text-right" data-ng-if="anyViewsOriginal() === true">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save()">Save<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/loggedInAsDifferentUser/loggedInAsDifferentUser.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Logged In As a Different User<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-warning">\r\n                <i class="icon-size-18 material_warning"><\/i>\r\n                <p>You\'re logged in as a different User. Please reload the page to continue.<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Reload Page<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/login/loginView.html",'\r\n<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-logo">\r\n            <img class="[[exec[[getLoginLogoAdditionalClass()]]exec]]" data-ng-src="[[exec[[getLoginLogoUrl()]]exec]]" alt="Portal Logo"/>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <div class="alert alert-danger" data-ng-show="errorMessage !== null">\r\n                <i class="icon-size-18 material_error"><\/i>\r\n                <div>\r\n                    <p data-ng-bind-html="errorMessage"><\/p>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <h5 data-ng-bind="title"><\/h5>\r\n\r\n            <div data-ng-show="ngDialogData.sessionError.identityProviders !== null">\r\n                <p class="help-block help-block-margin-bottom" data-ng-bind="loginModeMessage"><\/p>\r\n\r\n                <div class="alert-block">\r\n                    <div data-ng-repeat="identityProvider in ngDialogData.sessionError.identityProviders" class="alert alert-link">\r\n                        <a href="[[exec[[identityProvider.connectorUrl]]exec]]" target="_blank" rel="noreferrer">\r\n                            <div class="alert-link-box">\r\n                                <b data-ng-bind="identityProvider.name"><\/b>\r\n                                <p data-ng-if="identityProvider.description !== null" data-ng-bind="identityProvider.description" class="format-wrap"><\/p>\r\n                            <\/div>\r\n                        <\/a>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <p data-ng-if="ngDialogData.sessionError.identityProviders !== null && ngDialogData.sessionError.isWebLoginEnabled === true" class="help-block help-block-center">OR<\/p>\r\n\r\n            <div data-ng-show="loginErrorMessage !== null">\r\n                <div class="alert alert-danger">\r\n                    <i class="icon-size-18 material_error"><\/i>\r\n                    <div>\r\n                        <p data-ng-bind-html="loginErrorMessage"><\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <br data-ng-show="loginErrorMessage !== null || ngDialogData.sessionError.identityProviders === null" />\r\n\r\n            <div data-ng-show="ngDialogData.sessionError.isWebLoginEnabled === true">\r\n\r\n                <form data-c-form class="form-horizontal" autocomplete="off" name="form" novalidate data-ng-submit="login(form)" data-pending-action="isProcessing">\r\n                    <div class="form-group">\r\n                        <div class="col-sm-3 control-label">\r\n                            <label><span>Email<\/span><\/label>\r\n                        <\/div>\r\n                        <div class="col-sm-9 control-value">\r\n                            <input name="email" type="text" autocomplete="off" data-auto-focus="true" class="form-control" data-ng-model="email" data-c-validator data-validators="[required,formatEmailAddress]" />\r\n                            <label data-c-validation-message data-form="form" data-field-name="email"><\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class="form-group">\r\n                        <div class="col-sm-3 control-label">\r\n                            <label><span>Password<\/span><\/label>\r\n                        <\/div>\r\n                        <div class="col-sm-9 control-value">\r\n                            <input name="password" type="password" autocomplete="off" class="form-control" data-ng-model="password" data-c-validator data-validators="[required]" />\r\n                            <label data-c-validation-message data-form="form" data-field-name="password"><\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class="form-group">\r\n                        <div class="col-sm-3 control-label"><\/div>\r\n                        <div class="col-sm-9 control-value">\r\n                            <div class="checkbox">\r\n                                <label><span class="switch"><input type="checkbox" data-ng-model="rememberLogin" /><i><\/i><\/span> <span>Remember my email address on this device<\/span><\/label>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class="modal-footer text-right" data-ng-show="ngDialogData.sessionError.isWebLoginEnabled === true">\r\n            <button type="button" class="btn btn-link" data-ng-click="forgotPassword()">Forgot Password<\/button>\r\n            <button data-c-submit-button data-pending-action="isProcessing" data-on-submit="login(form)" data-show-loader="form.showLoader" data-loader-text="Logging In">Log In<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/messages/messagesView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <button type="button" class="close" data-ng-click="closeThisDialog()" aria-label="Close"><i icon="remove" aria-hidden="true"><\/i><\/button>\r\n            <h4 class="modal-title">System Messages<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <div data-c-system-message-lister data-messages="messages" data-auto-refresh="true"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/noManualGroupsSelected/noManualGroupsSelectedWarningView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeDialog()"><\/c-dialog-close-button>\r\n\r\n            <h4 class="modal-title">Save without adding Groups?<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <div class="alert alert-warning">\r\n                <i class="icon-size-18 material_warning"><\/i>\r\n                <p>The User\'s email field is often used to identify the User during the Single Sign-On (SSO) logon process, which you have enabled. If you change this User\'s email address, you may need to change it in other systems connected via Single Sign-On (SSO).<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer text-right">\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-is-primary="false" data-loader-text="Saving" data-on-submit="continue()">Proceed without adding Groups<\/button>\r\n            <button type="button" class="btn btn-primary" data-ng-click="return()">Return and add Groups<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/noPermissionsDialog/confirmNoPermissionsView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-t-no-permissions-set-title>No Permissions Set<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <p data-t-no-permissions-set-description>You haven\'t selected any Groups. This will make the [[exec[[subjectLabel]]exec]] inaccessible to your Users. Are you sure you want to save?<\/p>\r\n        <\/div>\r\n        <div class="modal-footer text-right">\r\n            <button class="btn btn-text" data-pending-action="pendingAction"` data-ng-click="cancel()" data-t-button="Cancel">Cancel<\/button>\r\n            <button class="btn btn-primary" data-pending-action="pendingAction" data-ng-click="confirm()" data-t-button="Save">Save without setting permissions<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/pageGuide/pageGuideView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <button type="button" class="close" data-ng-click="closeThisDialog()" aria-label="Close"><i icon="remove" aria-hidden="true"><\/i><\/button>\r\n            <h4 class="modal-title">Page Guide<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body">\r\n            <p data-ng-bind-html="pageGuide"><\/p>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/passwordLookup/passwordLookupView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        \r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Password Reset<\/h4>\r\n        <\/div>\r\n\r\n        <div class="loading-large" data-ng-class="{\'loading-large\': isLoading }">\r\n\r\n            <!-- Find User and Verify Secret Question -->\r\n            <div data-ng-show="step === steps.FIND_USER || step === steps.VERIFY_SECRET_ANSWER">\r\n                <div class="modal-body">\r\n                    <div class="alert alert-danger" data-ng-show="message !== null">\r\n                        <i class="icon-size-18 material_error"><\/i>\r\n                        <div>\r\n                            <p class="c-i" data-ng-bind-html="message"><\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <br />\r\n\r\n                    <form name="form" data-c-form autocomplete="off" novalidate data-ng-submit="submitForm(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n\r\n                        <!-- Find User -->\r\n                        <div class="form-group" data-ng-if="step === steps.FIND_USER">\r\n                            <div class="col-sm-3 control-label"><label><span>Email<\/span><\/label><\/div>\r\n                            <div class="col-sm-9 control-value">\r\n                                <input name="email" data-ng-model="email.value" type="text" autocomplete="off" data-auto-focus="true" data-c-validator data-validators="[required,formatEmailAddress]" class="form-control" />\r\n                                <label data-c-validation-message data-form="form" data-field-name="email"><\/label>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <!-- Verify Secret Question -->\r\n                        <div data-ng-if="step === steps.VERIFY_SECRET_ANSWER">\r\n                            <div class="form-group">\r\n                                <div class="col-sm-3 control-label"><\/div>\r\n                                <div class="col-sm-9 control-value form-control-static">\r\n                                    <span data-ng-bind="secretQuestion"><\/span>\r\n                                <\/div>\r\n                            <\/div>\r\n                            <div class="form-group">\r\n                                <div class="col-sm-3 control-label"><label><span>Secret Answer<\/span><\/label><\/div>\r\n                                <div class="col-sm-9 control-value">\r\n                                    <input name="secretAnswer" data-ng-model="secretAnswer.value" type="text" data-auto-focus="true" autocomplete="off" data-c-validator data-validators="[required]" class="form-control" />\r\n                                    <label data-c-validation-message data-form="form" data-field-name="secretAnswer"><\/label>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                    <\/form>\r\n                <\/div>\r\n                <div class="modal-footer text-right">\r\n                    <div>\r\n                        <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                        <button data-c-submit-button data-show-loader="form.showLoader" data-pending-action="pendingAction" data-on-submit="submitForm(form)" data-loader-text="Processing">Continue<\/button>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n            \r\n            <!-- Done -->\r\n            <div class="modal-body" data-ng-show="step === steps.CONFIRMATION">\r\n                <p class="c-i" data-ng-bind-html="message"><\/p>\r\n            <\/div>\r\n\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/pdfTemplateEditor/pdfTemplateEditorView.html",'<div class="modal-dialog small-only">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="dialogTitle"><\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <c-not-available-on-mobile-message><\/c-not-available-on-mobile-message>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n\r\n<div class="modal-dialog modal-fill large-only">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="dialogTitle"><\/h4>\r\n            <p data-ng-if="dialogDescription !== null" class="modal-description" data-ng-bind="dialogDescription"><\/p>\r\n        <\/div>\r\n\r\n        <div class="modal-body modal-body-buffer" data-ng-class="{\'loading-large\': isLoading }">\r\n            <div class="doc doc-fill doc-editing">\r\n                <div class="doc-content">\r\n                    <div class="doc-viewer skin-bg-color" data-ng-click="blur()">\r\n                        <div class="doc-scroll">\r\n                            <div class="doc-pages">\r\n                                <div class="doc-page" data-ng-style="{\'font-size\': zoom.selectedOption.value + \'px\', \'width\': activePage.width + \'em\', \'height\': activePage.height + \'em\'}">\r\n                                    <div class="doc-page-content" style="font-size:1px" data-ng-style="{\'width\': activePage.width + \'em\', \'height\': activePage.height + \'em\',\'transform\':\'scale(\' + zoom.selectedOption.value + \')\'}">\r\n\r\n                                        <!-- Image -->\r\n                                        <div class="doc-page-scan"><\/div>\r\n\r\n                                        <!-- Content Areas-->\r\n                                        <div class="doc-page-elements"><\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                        <div class="doc-menu" id="froala-toolbar"><\/div>\r\n\r\n                        <div class="doc-nav">\r\n                            <div class="doc-nav-section">\r\n                                <div class="select">\r\n                                    <select class="form-control input-btn" data-ng-change="zoomChanged()" ng-options="option.name for option in zoom.options track by option.value" ng-model="zoom.selectedOption"><\/select>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <!-- Thumbnails -->\r\n                    <div class="doc-preview" data-ng-if="showPageNavigation() === true"><\/div>\r\n\r\n                    <div class="doc-tools doc-tools-visible" data-ng-show="showContentAreaSidebar() === true">\r\n                        <div class="doc-tools-content">\r\n                            <form data-c-form name="form" novalidate data-pending-action="pendingAction">\r\n                                <div id="content-area-container" class="doc-tool-group" data-ng-show="isNewContentToolbarVisible() === true">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Content Areas<\/h3><\/div>\r\n                                        <div class="doc-tool-title-body">\r\n                                            <c-new-button data-actions="newButtonActions" data-on-action="onNewAction(action)"><\/c-new-button>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <div class="doc-tool-group" data-ng-if="isTextToolbarVisible() === true">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Text Styles<\/h3><\/div>\r\n                                        <div class="doc-tool-title-actions"><a href="javascript:;" class="doc-tool-danger" data-ng-click="removeContentArea()" data-c-tooltip="Remove Content Area"><i icon="trash"><\/i><\/a><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="textFields.fontFamily.label.value"><\/label>\r\n                                                <div data-c-input-field-picklist data-field="textFields.fontFamily" data-form="form"><\/div>\r\n                                                <!--<div data-c-input-field-picklist data-field="textFields.fontFamily" data-form="form" data-validation-function="validateFont(name, value)"><\/div>-->\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="textFields.fontSize.label.value"><\/label>\r\n                                                <div data-c-input-field-int data-field="textFields.fontSize" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option" data-ng-if="textFields !== null && textFields.textColor !== null">\r\n                                                <label data-ng-bind="textFields.textColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="textFields.textColor" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="textFields.horizontalAlignment.label.value"><\/label>\r\n                                                <div data-c-input-field-picklist data-field="textFields.horizontalAlignment" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="textFields.verticalAlignment.label.value"><\/label>\r\n                                                <div data-c-input-field-picklist data-field="textFields.verticalAlignment" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="textFields.lineHeight.label.value"><\/label>\r\n                                                <div data-c-input-field-double data-field="textFields.lineHeight" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option" data-ng-if="textFields.allowPartnerToEdit !== null">\r\n                                                <label data-ng-bind="textFields.allowPartnerToEdit.label.value"><\/label>\r\n                                                <div data-c-input-field-checkbox data-field="textFields.allowPartnerToEdit" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n\r\n                                <div class="doc-tool-group" data-ng-if="isLogoToolbarVisible() === true">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Logo Styles<\/h3><\/div>\r\n                                        <div class="doc-tool-title-actions"><a href="javascript:;" class="doc-tool-danger" data-ng-click="removeContentArea()"><i icon="trash"><\/i><\/a><\/div>\r\n                                    <\/div>\r\n\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="logoFields.horizontalAlignment.label.value"><\/label>\r\n                                                <div data-c-input-field-picklist data-field="logoFields.horizontalAlignment" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="logoFields.verticalAlignment.label.value"><\/label>\r\n                                                <div data-c-input-field-picklist data-field="logoFields.verticalAlignment" data-form="form"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n\r\n                                <div class="doc-tool-group" data-ng-show="isImageToolbarVisible() === true" data-ng-class="{\'loading-large\': imageToolbarIsLoading === true }">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header">\r\n                                            <h3>Select Image<\/h3>\r\n                                        <\/div>\r\n                                        <div class="doc-tool-title-actions">\r\n                                            <a href="javascript:;" class="doc-tool-danger" data-ng-click="removeContentArea()"><i icon="trash"><\/i><\/a>\r\n                                        <\/div>\r\n                                        <div class="doc-tool-title-body">\r\n                                            <a href="javascript:;" class="btn btn-default btn-block" data-ng-click="openUploadImageDialog()">Upload Image<\/a>\r\n                                        <\/div>\r\n                                    <\/div>\r\n\r\n                                    <div class="table-responsive table-mobile-no-borders">\r\n                                        <div data-c-lister data-lister="imagesLister" data-settings="imagesListerSettings" data-lister-status="imagesListerStatus" data-on-action="handleImageAction(action, data)"><\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/form>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class="modal-footer text-right" data-ng-show="isLoading === false">\r\n            <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n            <c-actions-button data-actions="secondaryActions" data-on-action="onSecondaryAction(action)" data-is-inline-block="true"><\/c-actions-button>\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-loader-text="Saving" data-on-submit="saveContentAreas()">Save<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/progressBarDialog/progressBarDialogView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-body">\r\n            <div class="connector">\r\n                <i data-ng-if="pendingAction === false" data-ng-class="getIconClassName()" class="icon-size-60"><\/i>\r\n                <h2 class="c-i" data-ng-bind-html="title"><\/h2>\r\n                <p data-ng-if="message !== null" class="c-i" data-ng-bind-html="message" data-ng-class="getAdditionalMessageClassName()" ><\/p>\r\n                <div data-ng-if="pendingAction === true" class="loading-large"><\/div>\r\n                <div data-ng-if="pendingAction === true && progress !== null" class="c-i" data-ng-bind-html="progress" style="color: #00c0d9; z-index:10000; top:-80px"><\/div>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div data-ng-if="pendingAction === false" class="modal-footer text-right">\r\n            <button type="button" class="btn btn-primary" data-ng-click="closeThisDialog()">Done<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/reorder/reorderItemsView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title" data-ng-bind="title"><\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div data-c-sorter data-items="items" data-translate="translate"><\/div>\r\n        <\/div>\r\n        <div class="modal-footer text-right">\r\n            <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save()">Save<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>');n.put("js/shared/common/views/safeFileUpload/secureFileUploadListerView.html",'<div class="modal-dialog modal-lg">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Secure File Upload<\/h4>\r\n        <\/div>\r\n        <div data-ng-class="{\'loading-large\': isLoading}">\r\n            <div class="modal-body">\r\n                <div class="modal-description" >\r\n                    <p>\r\n                        Send secure files to the Channeltivity Support team.\r\n                    <\/p>\r\n                <\/div>\r\n                <div>\r\n                    <div class="n-actions">\r\n                        <div class="n-actions-left large-only">\r\n                            <c-new-button data-ng-if="actions.new" data-actions="actions.new" data-on-action="handleAction(action)"><\/c-new-button>\r\n                        <\/div>\r\n                        <div class="n-actions-right large-only">\r\n                            <c-pager data-lister="files" data-on-refresh="refresh()" data-lister-status="listerStatus"><\/c-pager>\r\n                        <\/div>\r\n\r\n                        <div class="n-mobile-actions small-only">\r\n                            <c-mobile-new-button data-ng-if="actions.new" data-actions="actions.new" data-on-action="handleAction(action)"><\/c-mobile-new-button>\r\n                            <c-pager-mobile data-lister="files" data-on-refresh="refresh()" data-lister-status="listerStatus"><\/c-pager-mobile>\r\n                            <c-filter-button data-lister="files" data-lister-settings="listerSettings" data-on-search="refresh()"><\/c-filter-button>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class="table-responsive table-mobile-no-borders">\r\n                        <div data-c-lister data-lister="files" data-settings="listerSettings" data-lister-status="listerStatus" data-on-refresh="refresh()" data-on-action="handleAction(action, data)"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>');n.put("js/shared/common/views/safeFileUpload/secureFileUploadView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n\r\n            <h4 class="modal-title" data-ng-show="dialogViewState === dialogViewStateEnum.UPLOAD">New Secure File<\/h4>\r\n            <h4 class="modal-title" data-ng-show="dialogViewState === dialogViewStateEnum.UPLOADED || dialogViewState === dialogViewStateEnum.MORE">Secure File Link<\/h4>\r\n        <\/div>\r\n        \r\n        <div data-ng-class="{\'loading-large\': isLoadingDialog}">\r\n            <div class="modal-body">\r\n                <div class="modal-description" data-ng-show="dialogViewState === dialogViewStateEnum.UPLOAD">\r\n                    <p>Select a file to securely upload.<\/p>\r\n                <\/div>\r\n                <div class="modal-description" data-ng-show="dialogViewState === dialogViewStateEnum.UPLOADED || dialogViewState === dialogViewStateEnum.MORE">\r\n                    <p>This link allows Admin Users and Channeltivity Support to download the file you just uploaded. Include the link in your support ticket to securely transmit your file to Channeltivity.<\/p>\r\n                <\/div>\r\n\r\n                <div class="fields" data-ng-show="dialogViewState === dialogViewStateEnum.UPLOAD">\r\n                    <form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction">\r\n\r\n                        <!-- Details Section -->\r\n                        <div class="form-section" data-ng-if="secureFileUploadSection !== null">\r\n                            <div class="form-section-content">\r\n                                <div data-c-form-field data-field="secureFileUploadSection.file" data-form="form"><\/div>\r\n                                <div data-c-form-field data-field="secureFileUploadSection.comment" data-form="form"><\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/form>\r\n                <\/div>\r\n\r\n                <div data-ng-if="dialogViewState === dialogViewStateEnum.UPLOADED || dialogViewState === dialogViewStateEnum.MORE">\r\n                    <input type="text" readonly="readonly" name="link" value="[[exec[[link]]exec]]" class="form-control"  data-ng-click="selectAll($event)" />\r\n                <\/div>\r\n            <\/div>\r\n            <div class="modal-footer text-right" data-ng-if="dialogViewState === dialogViewStateEnum.UPLOAD">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n                <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="save(form)" data-show-loader="form.showLoader">Save<\/button>\r\n            <\/div>\r\n            <div class="modal-footer text-right" data-ng-if="dialogViewState === dialogViewStateEnum.UPLOADED || dialogViewState === dialogViewStateEnum.MORE">\r\n                <button class="btn btn-default" data-ng-click="copyToClipboard()">Copy to Clipboard<\/button>\r\n                <a class="btn btn-primary" data-ng-if="dialogViewState === dialogViewStateEnum.MORE" href="[[exec[[link]]exec]]" target="_blank" rel="noreferrer">Download<\/a>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <\/div>\r\n<\/div>');n.put("js/shared/common/views/skinManagerDialog/skinManagerDialogView.html",'<div class="modal-dialog small-only">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Branding &amp; Design<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <c-not-available-on-mobile-message><\/c-not-available-on-mobile-message>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class="modal-dialog modal-fill large-only">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n            <h4 class="modal-title">Branding &amp; Design<\/h4>\r\n        <\/div>\r\n\r\n        <div class="modal-body modal-body-buffer" data-ng-class="{\'loading-large\': isLoading }">\r\n\r\n            <div class="doc doc-fill doc-editing large-only">\r\n                <div class="doc-content">\r\n                    <div class="doc-viewer skin-bg-color">\r\n                    <\/div>\r\n\r\n                    <!-- Thumbnails -->\r\n                    <div class="doc-preview">\r\n                    <\/div>\r\n\r\n                    <div class="doc-tools doc-tools-visible">\r\n                        <div class="doc-tools-content">\r\n\r\n                            <form data-c-form name="commonForm" novalidate data-pending-action="pendingAction" data-disable-auto-focus="true">\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Global Styles<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="commonSettings.section !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="commonSettings.section.linkColor.label.value"><\/label>\r\n                                                <!--<div data-c-input-field-color-picker data-field="commonSettings.section.linkColor" data-form="commonForm" data-validation-function="invalidLinkColorValidator(name, value)" data-revalidate-on-change="linkColorRevalidateOnChangeValue"><\/div>-->\r\n                                                <div data-c-input-field-color-picker data-field="commonSettings.section.linkColor" data-form="commonForm" data-validation-function="invalidLinkColorValidator(name, value)"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="commonSettings.section.buttonColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="commonSettings.section.buttonColor" data-form="commonForm" data-validation-function="invalidButtonColorValidator(name, value)"><\/div>\r\n                                            <\/div>\r\n\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="commonSettings.section.font.label.value"><\/label>\r\n                                                <div data-c-input-field-picklist data-field="commonSettings.section.font" data-form="commonForm"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/form>\r\n\r\n                            <form data-c-form name="portalPageForm" novalidate data-pending-action="pendingAction" data-disable-auto-focus="true">\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === portalPage">\r\n\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Navigation Styles<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="portalPage.navSection !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="portalPage.navSection.backgroundColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="portalPage.navSection.backgroundColor" data-on-action="handleNavColorAction(action)" data-form="portalPageForm"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="portalPage.navSection.textColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="portalPage.navSection.textColor" data-on-action="handleNavColorAction(action)" data-form="portalPageForm" data-revalidate-on-change="navTextColorRevalidateOnChangeValue" data-validation-function="invalidNavTextColorValidator(name, value)"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="portalPage.navSection.activeTextColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="portalPage.navSection.activeTextColor" data-on-action="handleNavColorAction(action)" data-form="portalPageForm" data-revalidate-on-change="navActiveTextColorRevalidateOnChangeValue" data-validation-function="invalidNavActiveTextColorValidator(name, value)"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === portalPage">\r\n\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Header Styles<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="portalPage.headerSection !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="portalPage.headerSection.headerBackgroundColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="portalPage.headerSection.headerBackgroundColor" data-form="portalPageForm"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="portalPage.headerSection.headerTextColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="portalPage.headerSection.headerTextColor" data-form="portalPageForm" data-revalidate-on-change="portalPage.headerSection.headerBackgroundColor.value" data-validation-function="invalidHeaderTextColorValidator(name, value)"><\/div>\r\n                                            <\/div>\r\n                                            <!--<div class="option">\r\n                                                <label data-ng-bind="portalPage.headerSection.headerBackgroundImage.label.value"><\/label>\r\n                                                <div data-c-input-field-file-upload data-field="portalPage.headerSection.headerBackgroundImage" data-form="portalPageForm" data-validation-function="validateImageSize(name, value)"><\/div>\r\n                                                <div class="help-block" data-ng-bind-html="portalPage.headerSection.headerBackgroundImage.description.value"><\/div>\r\n                                            <\/div>-->\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="portalPage.headerSection.headerMode.label.value"><\/label>\r\n                                                <div data-c-input-field-radio-button-list data-field="portalPage.headerSection.headerMode" data-form="portalPageForm"><\/div>\r\n                                            <\/div>\r\n                                            <div data-ng-if="showHeaderLogo()">\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerLogo.label.value"><\/label>\r\n                                                    <div data-c-input-field-file-upload data-field="portalPage.headerSection.headerLogo" data-form="portalPageForm" data-validation-function="validateImageSize(name, value)"><\/div>\r\n                                                    <div class="help-block" data-ng-bind-html="portalPage.headerSection.headerLogo.description.value"><\/div>\r\n                                                <\/div>\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerLogoPaddingTop.label.value"><\/label>\r\n                                                    <div data-c-input-field-int data-field="portalPage.headerSection.headerLogoPaddingTop" data-form="portalPageForm"><\/div>\r\n                                                <\/div>\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerLogoPaddingBottom.label.value"><\/label>\r\n                                                    <div data-c-input-field-int data-field="portalPage.headerSection.headerLogoPaddingBottom" data-form="portalPageForm"><\/div>\r\n                                                <\/div>\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerLogoPaddingLeft.label.value"><\/label>\r\n                                                    <div data-c-input-field-int data-field="portalPage.headerSection.headerLogoPaddingLeft" data-form="portalPageForm"><\/div>\r\n                                                <\/div>\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerLogoPaddingRight.label.value"><\/label>\r\n                                                    <div data-c-input-field-int data-field="portalPage.headerSection.headerLogoPaddingRight" data-form="portalPageForm"><\/div>\r\n                                                <\/div>\r\n                                            <\/div>\r\n                                            <div data-ng-if="showHeaderText()">\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerText.label.value"><\/label>\r\n                                                    <div data-c-input-field-text data-field="portalPage.headerSection.headerText" data-form="portalPageForm"><\/div>\r\n                                                <\/div>\r\n                                                <div class="option">\r\n                                                    <label data-ng-bind="portalPage.headerSection.headerTextSize.label.value"><\/label>\r\n                                                    <div data-c-input-field-int data-field="portalPage.headerSection.headerTextSize" data-form="portalPageForm"><\/div>\r\n                                                <\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/form>\r\n\r\n                            <form data-c-form name="loginPageForm" novalidate data-pending-action="pendingAction">\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === loginPage">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Login Page Styles<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="loginPage.section !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="loginPage.section.logo.label.value"><\/label>\r\n                                                <div data-c-input-field-file-upload data-field="loginPage.section.logo" data-form="loginPageForm" data-validation-function="validateImageSize(name, value)"><\/div>\r\n                                                <div class="help-block" data-ng-bind-html="loginPage.section.logo.description.value"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="loginPage.section.backgroundImageChooser.label.value"><\/label>\r\n                                                <div data-c-input-field-image-chooser data-field="loginPage.section.backgroundImageChooser" data-form="loginPageForm"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === loginPage">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Copyright Styles<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="loginPage.section !== null && loginPage.section.copyrightFooterHasText === true">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="loginPage.section.copyrightTextColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="loginPage.section.copyrightTextColor" data-form="loginPageForm"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <div data-c-input-field-checkbox-group data-field="loginPage.section.copyrightTextShadowEnabled" data-form="loginPageForm"><\/div>\r\n                                            <\/div>\r\n\r\n                                            <div class="option" data-ng-if="copyrightTextShadowIsEnabled()">\r\n                                                <label data-ng-bind="loginPage.section.copyrightTextShadowColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="loginPage.section.copyrightTextShadowColor" data-form="loginPageForm"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                        <div class="form-grid-content" data-ng-if="loginPage.section !== null && loginPage.section.copyrightFooterHasText === false">\r\n                                            <div class="option">\r\n                                                <p>Use the <a target="_blank" href="/SettingsAndLogs/Settings/SecurityAndPrivacy/PrivacyAndCopyright">Privacy & Copyright Notice settings page<\/a> to set the Privacy & Copyright information text.<\/p>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/form>\r\n\r\n                            <form data-c-form name="emailTemplateForm" novalidate data-pending-action="pendingAction">\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === emailTemplatePage">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Email Template Styles<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="emailTemplatePage.section !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="emailTemplatePage.section.logo.label.value"><\/label>\r\n                                                <div data-c-input-field-file-upload data-field="emailTemplatePage.section.logo" data-form="emailTemplateForm" data-validation-function="validateImageSize(name, value)"><\/div>\r\n                                                <div class="help-block" data-ng-bind-html="emailTemplatePage.section.logo.description.value"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/form>\r\n\r\n                            <form data-c-form name="emailMarketingTemplateForm" novalidate data-pending-action="pendingAction" data-disable-auto-focus="true">\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === emailMarketingTemplatePage">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Email Marketing Style<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="emailMarketingTemplatePage.section !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="emailMarketingTemplatePage.section.headingBackgroundColor.label.value"><\/label>\r\n                                                <div data-c-input-field-color-picker data-field="emailMarketingTemplatePage.section.headingBackgroundColor" data-form="emailMarketingTemplateForm" data-validation-function="invalidEmailMarketingHeadingBackgorundColorValidator(name, value)"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                                <div class="doc-tool-group" data-ng-show="activePage !== null && activePage === emailMarketingTemplatePage">\r\n                                    <div class="doc-tool-title">\r\n                                        <div class="doc-tool-title-header"><h3>Email Marketing Settings<\/h3><\/div>\r\n                                    <\/div>\r\n                                    <div class="form-grid">\r\n                                        <div class="form-grid-content" data-ng-if="emailMarketingTemplatePage.section !== null">\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="emailMarketingTemplatePage.section.headerLogo.label.value"><\/label>\r\n                                                <div data-c-input-field-file-upload data-field="emailMarketingTemplatePage.section.headerLogo" data-form="emailMarketingTemplateForm" data-validation-function="validateImageSize(name, value)"><\/div>\r\n                                                <div class="help-block" data-ng-bind-html="emailMarketingTemplatePage.section.headerLogo.description.value"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="emailMarketingTemplatePage.section.footerLogo.label.value"><\/label>\r\n                                                <div data-c-input-field-file-upload data-field="emailMarketingTemplatePage.section.footerLogo" data-form="emailMarketingTemplateForm" data-validation-function="validateImageSize(name, value)"><\/div>\r\n                                                <div class="help-block" data-ng-bind-html="emailMarketingTemplatePage.section.footerLogo.description.value"><\/div>\r\n                                            <\/div>\r\n                                            <div class="option">\r\n                                                <label data-ng-bind="emailMarketingTemplatePage.section.footerText.label.value"><\/label>\r\n                                                <div data-c-input-field-wysiwyg data-field="emailMarketingTemplatePage.section.footerText" data-form="emailMarketingTemplateForm" data-validation-function="invalidEmailMarketingTamplateFooterTextAddressPlaceholders(name, value)"><\/div>\r\n                                            <\/div>\r\n                                        <\/div>\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/form>\r\n\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class="modal-footer text-right large-only" data-ng-show="isLoading === false">\r\n            <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>\r\n            <button data-c-submit-button data-pending-action="pendingAction" data-loader-text="Saving" data-on-submit="save()">Save<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/skinManagerDialog/validationDialogView.html",'<c-dialog-layout is-large="false">\r\n    <attr-header>\r\n        <c-dialog-close-button data-pending-action="pendingAction" data-on-click="cancel()"><\/c-dialog-close-button>\r\n        <h4 class="modal-title" data-ng-bind="title()"><\/h4>\r\n    <\/attr-header>\r\n    <attr-content>\r\n        <attr-description data-ng-if="validationError === false">\r\n            <span>We\'ve noticed one or more issues that you may want to fix.<\/span>\r\n        <\/attr-description>\r\n        <attr-view>\r\n            <attr-body>\r\n                <div data-ng-if="validationError === true">\r\n                    <div>Please correct the errors before continuing.<\/div>\r\n                <\/div>\r\n\r\n                <div data-ng-if="validationError === false">\r\n                    <div data-ng-if="warnings.colorCombinations.length > 0" data-ng-repeat="colorCombination in warnings.colorCombinations" class="skin-manager-warning">\r\n                        <div data-ng-bind-html="colorCombination.label" class="skin-manager-warning-label"><\/div>\r\n\r\n                        <div>\r\n                            <div data-ng-repeat="colorPair in colorCombination.colorPairs" class="skin-manager-warning-alert" style="background-color: [[exec[[colorPair.background]]exec]] !important;">\r\n                                <div data-ng-if="colorPair.type === warnings.colorPairType.LINK">\r\n                                    <a href="javascript:;" style="color: [[exec[[colorPair.text]]exec]] !important;">Linked text<\/a>\r\n                                <\/div>\r\n                                <div data-ng-if="colorPair.type === warnings.colorPairType.TEXT_AND_LINK">\r\n                                    <span>Regular text. <a href="javascript:;" style="color: [[exec[[colorPair.text]]exec]] !important;">Linked text<\/a>. Regular text.<\/span>\r\n                                <\/div>\r\n                                <div data-ng-if="colorPair.type === warnings.colorPairType.TEXT">\r\n                                    <span style="color: [[exec[[colorPair.text]]exec]] !important;">Sample text. Sample text. Sample text.<\/span>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div data-ng-if="warnings.images.length > 0" data-ng-repeat="image in warnings.images" class="skin-manager-warning">\r\n                        <b data-ng-bind-html="image.label" class="skin-manager-warning-label"><\/b>\r\n                        <span data-ng-bind="image.message"><\/span>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer data-ng-show="showButtons() === true">\r\n                <c-dialog-cancel-button data-pending-action="pendingAction" data-on-click="cancel()" data-label="Make changes"><\/c-dialog-cancel-button>\r\n                <button class="btn btn-default" data-ng-click="dismissWarnings()" data-ng-bind="buttonText"><\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n    <\/attr-content>\r\n<\/c-dialog-layout>\r\n');n.put("js/shared/common/views/unauthorizedError/unauthorizedErrorView.html",'<div class="modal-dialog">\r\n    <div class="modal-content">\r\n        <div class="modal-header">\r\n            <h4 class="modal-title">Session Expired<\/h4>\r\n        <\/div>\r\n        <div class="modal-body">\r\n            <div class="alert alert-danger">\r\n                <i class="icon-size-18 material_error"><\/i>\r\n                <p>Your session has timed out. Use the button to log in again.<\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <div class="modal-footer">\r\n            <button type="button" class="btn btn-primary" data-ng-click="reload()">Log In<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n');n.put("js/shared/common/views/userReview/partnerUserReviewView.html",'<c-dialog-layout>\r\n    <attr-header data-ng-if="displayedOnUserClick === true">\r\n        <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>\r\n        <h4 class="modal-title">&nbsp;<\/h4>\r\n    <\/attr-header>\r\n\r\n    <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading === true }">\r\n\r\n        <attr-view data-ng-if="currentState === state.FIRST_SCREEN">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2 ng-bind="title"><\/h2>\r\n\r\n                    <p ng-bind="question"><\/p>\r\n\r\n                    <c-rater data-rating="rating" data-is-enabled="true" data-on-change="ratingChanged(rating)"><\/c-rater>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer data-ng-if="displayedOnUserClick === false">\r\n                <button data-ng-click="neverShowAgain()" class="btn btn-text btn-padding-right">Don\'t ask me again<\/button>\r\n                <button data-ng-click="remindMeLater()" class="btn btn-default">Remind me later<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n        <attr-view data-ng-if="currentState === state.RATED">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2 ng-bind="title"><\/h2>\r\n\r\n                    <p ng-bind="question"><\/p>\r\n\r\n                    <c-rater data-rating="rating" data-is-enabled="true" data-on-change="ratingChanged(rating)"><\/c-rater>\r\n\r\n                    <form data-c-form name="form" novalidate data-ng-submit="createReviewWithFeedback(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                        <div data-c-input-field-textarea data-field="feedbackField" data-form="form"><\/div>\r\n                    <\/form>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-if="displayedOnUserClick === false" data-ng-click="remindMeLater()" class="btn btn-text btn-padding-right">Remind me later<\/button>\r\n                <button data-ng-click="createReview()" class="btn btn-primary">Submit<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n        <attr-view data-ng-if="currentState === state.REVIEW_SUBMITTED">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <i class="material_check_circle icon-success icon-size-60"><\/i>\r\n\r\n                    <h2 ng-bind="thankYouTitle"><\/h2>\r\n\r\n                    <p ng-bind="thankYouDescription"><\/p>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-click="closeThisDialog()" class="btn btn-primary">Done<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n    <\/attr-content>\r\n<\/c-dialog-layout>');n.put("js/shared/common/views/userReview/userReviewView.html",'<c-dialog-layout>\r\n    <attr-content class="loading-large c-nt" data-ng-class="{\'loading-large\': isLoading === true }">\r\n        \r\n        <attr-view data-ng-if="currentState === state.FIRST_SCREEN">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2>How do you like Channeltivity?<\/h2>\r\n\r\n                    <p>We\'re always looking for feedback from our customers and would love your input. Please take a moment to rate Channeltivity.<\/p>\r\n\r\n                    <c-rater data-rating="rating" data-is-enabled="true" data-on-change="ratingChanged(rating)"><\/c-rater>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-click="neverShowAgain()" class="btn btn-text btn-padding-right">Don\'t ask me again<\/button>\r\n                <button data-ng-click="remindMeLater()" class="btn btn-default">Remind me later<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n        <attr-view data-ng-if="currentState === state.RATED_FEWER_STARS">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2>How do you like Channeltivity?<\/h2>\r\n\r\n                    <c-rater data-rating="rating" data-is-enabled="true" data-on-change="ratingChanged(rating)"><\/c-rater>\r\n\r\n                    <p>What would have to change for us to get a 5-star review?<\/p>\r\n\r\n                    <form data-c-form name="form" novalidate data-ng-submit="createReviewWithFeedback(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                        <div data-c-input-field-textarea data-field="feedbackField" data-form="form"><\/div>\r\n                    <\/form>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-click="remindMeLater()" class="btn btn-text btn-padding-right">Remind me later<\/button>\r\n                <button data-ng-click="createReviewWithFeedback(form)" class="btn btn-primary">Submit<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n        <attr-view data-ng-if="currentState === state.RATED_ALL_STARS">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2>How do you like Channeltivity?<\/h2>\r\n\r\n                    <c-rater data-rating="rating" data-is-enabled="true" data-on-change="ratingChanged(rating)"><\/c-rater>\r\n                    <div>\r\n                        <h4>Thank you! Will you write us a review? <\/h4>\r\n                        <p>Leave us a review on G2 and we will compensate you for your time with a <b>$50 VISA gift card<\/b>.<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-click="createReviewAndWillNotWriteG2Review()" class="btn btn-text btn-padding-right">No thank you<\/button>\r\n                <button data-ng-click="createReviewAndWillWriteG2Review()" class="btn btn-primary">Yes, I\'ll write a review<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n        <attr-view data-ng-if="currentState === state.SUBMIT_REVIEW">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2>Review Channeltivity on G2<\/h2>\r\n\r\n                    <c-rater data-rating="rating" data-is-enabled="false"><\/c-rater>\r\n\r\n                    <p>Thank you for agreeing to review Channeltivity on G2.<\/p>\r\n                    \r\n                    <p class="review-steps"><b>Step 1: Write your review<\/b><br /><span>Go to <a href="https://www.g2.com/products/channeltivity/take_survey" target="_blank">Channeltivity’s review page on G2<\/a> and log in/create an account to get started.<\/span>\r\n                    <\/p>\r\n                    \r\n                    <p class="review-steps"><b>Step 2: Get your $50 VISA gift card<\/b><br /><span>Once your review has been published, paste the review URL into this textbox:<\/span>\r\n                    <\/p>\r\n                    <div class="review-input-group">\r\n                        <form data-c-form name="form" novalidate data-ng-submit="sendReview(form)" data-pending-action="pendingAction" class="form-horizontal">\r\n                            <div data-c-input-field-url data-field="g2ReviewUrlField" data-form="form"><\/div>\r\n                        <\/form>\r\n                        <button data-c-submit-button data-pending-action="pendingAction" data-on-submit="updateReviewWithG2Review(form)" data-show-loader="form.showLoader" data-loader-text="Submitting">Submit<\/button>\r\n                    <\/div>\r\n\r\n                    <p class="help-block">You can pull up this message at any time from the alerts menu (bell icon).<\/p>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-click="updateReviewAndWillNotWriteG2Review()" class="btn btn-text btn-padding-right">I changed my mind<\/button>\r\n                <button data-ng-click="closeThisDialog()" class="btn btn-default">Remind me later<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n        <attr-view data-ng-if="currentState === state.REVIEW_SUBMITTED">\r\n            <attr-body>\r\n                <div class="review-content">\r\n                    <h2>Thank you for your review!<\/h2>\r\n\r\n                    <p>We appreciate you taking the time to give us feedback.<\/p>\r\n                    <p data-ng-bind="rewardMessage"><\/p>\r\n                <\/div>\r\n            <\/attr-body>\r\n            <attr-footer>\r\n                <button data-ng-click="closeThisDialog()" class="btn btn-primary">Done<\/button>\r\n            <\/attr-footer>\r\n        <\/attr-view>\r\n\r\n    <\/attr-content>\r\n<\/c-dialog-layout>')}]);angular.module("sharedElements").constant("constants",{cookies:{AUTH:"ctvt_s_http",TEST:"ctvt_s_js"},headers:{CSRF:"Ctvt-CSRF",LANGUAGE_DICTIONARY:"Ctvt-LanguageDictionary",LANGUAGE_REFRESH:"Ctvt-Language-Refresh",LANGUAGE_COLLECT_STATS:"Ctvt-Language-Collect-Stats"},errorType:{INVALID_SESSION:1,ERROR:2,CUSTOM_ERROR:3},errorAction:{ALERT:1,TRIGGER:2,REDIRECT:3,ALERT_AND_REDIRECT:4},applicationErrorType:{INVALID_DATA:1,EXPIRED_DATA:2,NOT_FOUND:3,ACCESS_DENIED:4,OPERATION_FAILED:5,APPLICATION_OUT_OF_DATE:6,POTENTIALLY_DANGEROUS_REQUEST:7,TRANSLATIONS_EXPIRED:8},sessionCheckFailReason:{SESSION_TIMEOUT:2,ACCESS_DENIED:3,MAINTENANCE_MODE:4,LOGOUT:5,COOKIES_NOT_ENABLED:6,USER_NOT_FOUND:7,INACTIVE_USER:8,EXPIRED_USER:9,INVALID_SESSION:10,INVALID_IMPERSONATING_SESSION:11},listerColumnType:{STRING:0,DATE:1,DATETIME:2,BOOLEAN:3,CURRENCY:4,FILE_SIZE:5,PERCENT:6,DOUBLE:7,INT:8,HTML_TEXT:9,ENTITY_URL:10,MEDIA_LENGTH:11,DATETIME_WITH_MILLISECONDS:12,PILL:13,MULTI_VALUE:14},listerStatus:{LOADING:1,RENDERING:2,DONE:3,RENDERING_MORE:4,LOADING_MORE:5},listerCellFormatType:{NO_WRAP:1,WRAP_ON_LINE_BREAK:2,AUTO_WRAP_SMALL_WIDTH:3,AUTO_WRAP_MEDIUM_WIDTH:4,AUTO_WRAP_LARGE_WIDTH:5},loginFailReason:{USER_NOT_FOUND:1,NOT_ACTIVATED_INVITATION_EXPIRED:2,NOT_ACTIVATED:3,USER_LOCKED_OUT:4,WRONG_PASSWORD:5,LOCKOUT:6,INACTIVE_USER:7,EXPIRED_USER:8,MAINTENANCE_MODE:9,API_DISABLED:10,API_ACCESS_DENIED:11,INTERNAL_USERS_ONLY:12},fileType:{NONE:0,DOC_LIB:1,WIDGETS:2,USER_PROFILE_PICTURE:3,ORGANIZATION_LOGO:4,WIDGETS_WYSIWYG:8,PORTAL_LOGO:9,AGREEMENT:12,MDF_HISTORY_ATTACHMENT:5,DEAL_HISTORY_ATTACHMENT:6,LEAD_HISTORY_ATTACHMENT:7,PARTNER_HISTORY_ATTACHMENT:10,BUSINESS_PLAN_HISTORY_ATTACHMENT:11,SSO_CERTIFICATE:13,USER_HISTORY_ATTACHMENT:14,WIDGETS_WYSIWYG_IMAGE:15,AGREEMENT_LETTERHEAD:16,CSV:17,CERTIFICATE_PFX:18,CERTIFICATE_CER:19,METADATA_XML:20,COURSE_THUMBNAIL:21,VIDEO:22,CERTIFICATION_THUMBNAIL:23,TRAINING_FILE:24,TRAINING_VIDEO:25,LIBRARY_THUMBNAIL:26,COBRANDED_SOURCE_FILE:28,COBRANDED_IMAGE_ASSET_SOURCE_FILE:33,LOGIN_BACKGROUND_IMAGE:40,LOGIN_PAGE_LOGO:41,EMAIL_TEMPLATE_LOGO:42,HEADER_LOGO:43,FONT_TTF:46,FONT_WOFF:47,FONT_WOFF2:48,HERO_WIDGET_IMAGE:49,ICONS_WIDGET_IMAGE:51,VIDEO_WIDGET_VIDEO:53,SECURE_FILE_UPLOAD:54,DEAL_STAGE_FILE:55,DEAL_STAGE_FILE_THUMBNAIL:56,REFERRAL_HISTORY_ATTACHMENT:57,HEADER_BACKGROUND_IMAGE:58,FORUM_POST_WYSIWYG_IMAGE:59,QUIZ_QUESTION_WYSIWYG_IMAGE:60,SCORM_COURSE_FILE:61,FOLDER_FILE_THUMBNAIL:62,EMAIL_MARKETING_HEADER_LOGO:63,EMAIL_MARKETING_FOOTER_LOGO:64,NEWS_ITEM_FILE:65,NEWS_ITEM_THUMBNAIL:66,MAILINGS_BANNER_IMAGE:68,IMAGE_WIDGET_IMAGE:69,TRAINING_CERTIFICATE_TEMPLATE:74,TRAINING_PDF_CERTIFICATE_CONTENT_AREA_IMAGE:78,API_WORKBENCH_FILE:85,LIBRARY_UPLOAD_ZIP_FILE:90},iconType:{LINK:1,VIDEO:2,FOLDER:4,FILE:5,CHECKED:6,PDF:10,DOC:11,XLS:12,PPT:13,STATUS_DANGER:20,STATUS_SUCCESS:21,STATUS_INFO:22,STATUS_WARNING:23,STATUS_DEFAULT:24},chartType:{BAR:1,STACKED_BAR:2,SPLINE:3},filterTypes:{TEXT:1,DROPDOWN:2,MULTISELECT:3,DATE:4,INTEGER:5,DOUBLE:6,DATETIME:8,SPECIAL_REFERENCE:9,BOOLEAN:10,COUNTRY_AND_STATE:11,LOCATION_FILTER:12,DROPDOWN_ADVANCED:13,COURSE_QUIZ_QUESTION_ANSWER:14,CURRENCY:15,PERCENT:16,FILESIZE:17},numberModifierTypes:{IS_EQUAL_TO:1,IS_GREATER_THAN:2,IS_LESS_THAN:3,IS_GREATER_THAN_OR_EQUAL_TO:4,IS_LESS_THAN_OR_EQUAL_TO:5,IS_BETWEEN:6,CHECKED:7,UNCHECKED:8},dropdownSpecialValues:{ANY:-3,PLEASE_SELECT:-10,PLEASE_SELECT_0:0,MULTISELECT_OR:-33,YES:-47,NO:-48,MULTISELECT_AND:-49,DISABLED_VALUE:-100,HAS_SELECTED_VALUES:-102},dropdownItemTypes:{NORMAL:1,ADDITIONAL_TEXT:2,CREATE:3},dateRange:{ANY:0,CUSTOM:1},sectionType:{FIELDS:1,LISTER:2,CHART:3,CARD_SECTION:4,SYSTEM_MESSAGES:5,FILTERED_LISTER:6,FILTERED_CHART:7,ARTICLES:8,FILTERED_FIELDS:9,WELCOME_MESSAGES:11,LINKS:12,HTML_CODE:13,COURSES:14,CERTIFICATIONS:15,TEMPLATE_PREVIEW:16,IMAGE:17,RICH_TEXT:18,HERO:19,ICONS:20,VIDEO:21,PLAY_BOOKS:22,HISTORY:23,NEWS:24,IMAGE_WIDGET:25,LIBRARY_WIDGET:26,DATA_WIDGET:27},fieldType:{TEXT:1,BOOLEAN:2,INT:3,DOUBLE:4,DATE:5,DATETIME:6,RADIO_BUTTON_LIST:7,REFERENCE:8,CURRENCY:9,TEXTAREA:10,PERCENT:11,PICKLIST:12,URL:15,CHECKBOX:16,CHECKBOX_GROUP:17,TITLE:18,FILE_UPLOAD:19,SECTION:20,NESTED_TABLE:21,ADDRESS:22,HTML_TEXT:23,MULTISELECT:24,MULTISELECT_WITH_STRING_ID:33,PICKLIST_WITH_STRING_ID:25,EMAIL:26,WYSIWYG:27,READ_ONLY:28,READ_ONLY_HTML:34,EMAIL_RECIPIENTS:29,COLOR_PICKER:30,INTEGRATION_STATUS:31,PASSWORD:32,ADDRESS_WITH_GEOCODING:34,JSON:35,THUMBNAIL:36,IMAGE_CHOOSER:37,INPUTAUTOFILL:38,COUNT:40,RATING:50,DATETIME_WITH_MILLISECONDS:51,HTML_SECTION:52,SELECTOR:53,DEAL_CLOSE_REASON:1e3,DEAL_MDF_REQUEST_ID:1002,DEAL_COLLABORATOR_ORG:1003,USER_EMAIL:1020,USER_ORGANIZATION:1021,ORGANIZATION_DOMAIN:1030,QUIZ_ANSWER:1040,VIDEO:1050,FILE:1051,LINK:1052,FOLDER_OR_DOCUMENT_SELECTOR:1060,LINK_DESTINATION:1061,PERMISSIONS:1062,TRANSLATION:1063,PARTNER_MANAGER_MULTISELECT:1110,FILTER:1114,API_WORKBENCH_CRUD:1116},fieldLayout:{STANDARD:1,GRID:2,BULK:3},messageType:{PROCESSING:1,SUCCESS:2,FAILURE:3},emailReminderFrequency:{DEFAULT:"0",DISABLED:"1",DAILY:"2",DAILY_WORK_WEEK:"3",WEEKLY_MONDAY:"4",WEEKLY_TUESDAY:"5",WEEKLY_WEDNESDAY:"6",WEEKLY_THURSDAY:"7",WEEKLY_FRIDAY:"8",WEEKLY_SATURDAY:"9",WEEKLY_SUNDAY:"10",XDAYS_BEFORE:"11",XDAYS_AFTER:"12"},emailReminderKind:{REPORT:0,PAST_EVENT:1,UPCOMING_EVENT:2,PERIOD_REPORT:3,REPORT_NOT_UPDATED_IN_XDAYS:4},widgetType:{ARTICLES:1,WELCOME_MESSAGES:2,PARTNER_MANAGERS:4,LIBRARY_FOLDERS:6,WARNING_MESSAGE:12,NEWEST_DOCUMENTS:28,MOST_VIEWED_DOCUMENTS:32,HTML_CODE:36,COURSES:41,CERTIFICATIONS:42,RICH_TEXT:43,HERO:44,ICONS:45,VIDEO:46,DATA:47,NEWS:48,IMAGE:50,LIBRARY:51},widgetContentType:{NO_LINK:1,ARTICLE:2,LINK:3,FILE:4,DOC_LIB_FOLDER:5,DOC_LIB_FILE:6},pageType:{STANDARD:1,CUSTOM:2,IFRAME:3,LINK:4,LIBRARY:5,FORUM:6,SEPARATOR:7},userAuthorizationStatus:{NOT_SPECIFIED:0,AUTHORIZED:1,NOT_AUTHORIZED:2},documentType:{FILE:1,LINK:2,VIDEO:3,ARTICLE:4},videoType:{YOUTUBE:1,VIMEO:2,BIT_MOVIN:3},requestStatusType:{OPEN:1,CLOSED_DENIED:2,REIMBURSED:3,CLOSED_APPROVED:4},xOrgType:{ACTIVE_PARTNER:1,INACTIVE_PARTNER:2,PROSPECTIVE_PARTNER:3,CUSTOMER_PROSPECT_ACCOUNT:4,SPECIAL_INTERNAL:5,ACTIVE_DISTRIBUTOR:6,INACTIVE_DISTRIBUTOR:7},validationCompareOperator:{EQUAL:1,NOT_EQUAL:7,GREATER_THAN:2,GREATER_THAN_EQUAL:4,LESS_THAN:3,LESS_THAN_EQUAL:5,BETWEEN:6,NOT_BETWEEN:8,ANY_OF:9,ALL_OF:10,NOT_ANY_OF:11,BEFORE:12,AFTER:13,TRUE:14,FALSE:15},wysiwygType:{ARTICLE:1,EMAIL:3,ADDITIONAL_DESCRIPTION:4,AGREEMENT:5,LESSON_CONTENT_BLOCK:6,WELCOME_MESSAGE:7,RICH_TEXT:8,USER_CONSENT_TEXT:9,PRIVACY_POLICY_TEXT:10,FORUM:11,QUIZ_QUESTION:12,NEWS_ITEM_EXCERPT:13,NEWS_ITEM_CONTENT:14,EMAIL_MARKETING_MAILINGS_TEXT:15,TRANSLATIONS_DYNAMIC:17,DOCUMENT_ARTICLE:18,SYSTEM_ADMIN_MESSAGE:100},matchingProcessType:{MATCHED:1,MATCHED_INVALID_ORG_TYPE:2,MATCHED_PARTNER_CONTACT:3,UNKNOWN_DOMAIN:4,IGNORED_DOMAIN:5,IGNORED_DOMAIN_ASSOCIATED:6,DUPLICATE_EMAIL:7,DUPLICATE_USER:8,DEFAULT:9,MATCHED_MULTIPLE_PARTNER_CONTACTS:10,MATCHED_PARTNER_CONTACT_ASSOCIATED:11,ERROR:12},smtpProviderType:{SENDGRID:1,CUSTOM_SMTP:2},emailNotificationFormat:{SEND_DIGEST:1,SEND_INDIVIDUAL:2},regexType:{EMAIL_DOMAIN:"emailDomain",EMAIL_ADDRESS:"emailAddress",EMAIL_ADDRESS_WITH_SEMICOLON:"emailAddressWithSemicolon",EMAIL_ADDRESS_WITH_SEMICOLON_COMMA_NEW_LINE:"emailAddressWithSemicolonCommaNewLine",URL:"url",DOUBLE:"double",INTEGER:"integer",HEX_COLOR:"hexColor"},disabledActionsTooltip:"Select one or more items below",walkthroughType:{INTRO:1},userRequestType:{MATCHED_ORGANIZATION_DOMAIN_ACTIVE_PARTNER_SPECIAL_INTERNAL:1,MATCHED_CONTACT_ACTIVE_PARTNER:2,ASSOCIATED_CONTACT:3,ASSOCIATED_ORGANIZATION:4,UNRECOGNIZED:5,MATCHED_IGNORED_DOMAIN:6,MATCHED_MULTIPLE_CONCTACTS:7,DUPLICATE_REQUEST:8,DUPLICATE_USER:9,MATCHED_CONTACT_INVALID_PARTNER:10,MATCHED_ORGANIZATION_DOMAIN_INVALID_PARTNER:11},uploadStatus:{NOT_STARTED:1,IN_PROGRESS:2,DONE:3,INVALID_FILE_TYPE:4},courseItemStatus:{NOT_STARTED:1,COMPLETED:2,FAILED:3,EXPIRED:4,IN_PROGRESS:5},lessonContentType:{RICH_TEXT:1,FILE:2,VIDEO:3,LINK:4,EMBED:5},courseStatus:{NOT_STARTED:1,IN_PROGRESS:2,COMPLETED:3,EXPIRED:4,VOIDED:5},certificationStatus:{NOT_STARTED:1,IN_PROGRESS:2,COMPLETED:3,EXPIRED:4,VOIDED:5},mdfRequestStatus:{OPEN:1,APPROVED:2,REIMBURSED:3,DENIED:4,EXPIRED:5},mdfRequestAllocationExpirationMode:{DISABLED:1,EXPIRE_FUND_ALLOCATIONS:2,EXPIRE_FUND_ALLOCATIONS_AND_DENY_REQUEST:3},referralStatusType:{IN_PROGRESS_PENDING:1,IN_PROGRESS_ACCEPTED:2,CLOSED_NO_COMMISSION_DUE:3,CLOSED_COMMISSION_DUE:4,CLOSED_COMMISSION_PAID:5},listerLayout:{TABLE:1,TILES_L:2,TILES_S:3,MAP:4,BAR_CHART:5,TIMELINE:6,CONTENT:7,WIDE:8,COMPACT:9},aggregateFunctions:{NONE:0,COUNT:1,SUM:2,AVG:3,MIN:4,MAX:5},sortFunctions:{NONE:0,ASC:1,DESC:2},yAxis:{TOP:1,BOTTOM:2},thumbnailType:{DEFAULT:1,GENERATED:2,CUSTOM:3},contentAreaType:{LOGO:1,TEXT:2,IMAGE:3},horizontalAlignment:{LEFT:1,CENTER:2,RIGHT:3},verticalAlignment:{TOP:1,MIDDLE:2,BOTTOM:3},uiHeaderMode:{LOGO_ONLY:1,TEXT_ONLY:2,LOGO_AND_TEXT:3},pageHeaderMode:{NONE:1,SHOW_TITLE_DESCRIPTION_AND_BREADCRUMBS:2,SHOW_TITLE_AND_DESCRIPTION:3},pageFontFamily:{ROBOTO:1,LEXEND:2,CUSTOM:3},materialIconType:{NONE:0,ACCESS_TIME:1,ACCESSIBILITY:2,ACCOUNT_BALANCE:3,ACCOUNT_BOX:4,ACCOUNT_CIRCLE:5,ADD:6,ADD_BOX:7,ADD_CIRCLE:8,ADD_CIRCLE_OUTLINE:9,ANNOUNCEMENT:10,APPS:11,ARCHIVE:12,ASSESSMENT:13,ASSIGNMENT:14,ASSIGNMENT_IND:15,ASSIGNMENT_TURNED_IN:16,ATTACH_MONEY:17,BACKUP:18,BUILD:19,BUSINESS:20,BUSINESS_CENTER:21,CALL:22,CARD_TRAVEL:23,CHAT:24,CHAT_BUBBLE:25,CHAT_BUBBLE_OUTLINE:26,CHECK:27,CHECK_BOX:28,CHECK_CIRCLE:29,CLEAR_ALL:30,CLOUD:31,CLOUD_CIRCLE:32,CLOUD_DONE:33,CLOUD_DOWNLOAD:34,COLLECTIONS:35,COMMENT:36,COMPUTER:37,CONFIRMATION_NUMBER:38,CREATE:39,CREATE_NEW_FOLDER:40,CREDIT_CARD:41,CROP_ORIGINAL:42,DASHBOARD:43,DATE_RANGE:44,DEHAZE:45,DESCRIPTION:46,DESKTOP_MAC:47,DESKTOP_WINDOWS:48,DETAILS:49,DEVELOPER_BOARD:50,DEVICE_HUB:51,DEVICES:52,DNS:53,DOMAIN:54,DVR:55,ENHANCED_ENCRYPTION:56,EQUALIZER:57,EVENT:58,EVENT_AVAILABLE:59,EXIT_TO_APP:60,EXPLORE:61,FACE:62,FILTER_DRAMA:63,FIND_IN_PAGE:64,FIND_REPLACE:65,FINGERPRINT:66,FLAG:67,FOLDER:68,FOLDER_OPEN:69,FOLDER_SHARED:70,FOLDER_SPECIAL:71,FORMAT_ALIGN_LEFT:72,FORMAT_LIST_BULLETED:73,FORMAT_LIST_NUMBERED:74,FORUM:75,FUNCTIONS:76,GPS_FIXED:77,GPS_NOT_FIXED:78,GRADE:79,GROUP:80,HELP:81,HELP_OUTLINE:82,HIGHLIGHT:83,HISTORY:84,HOME:85,HTTPS:86,IMAGE:87,IMPORT_CONTACTS:88,IMPORTANT_DEVICES:89,INFO:90,INFO_OUTLINE:91,INSERT_CHART:92,INSERT_COMMENT:93,INSERT_DRIVE_FILE:94,INSERT_EMOTICON:95,INSERT_INVITATION:96,INSERT_LINK:97,INSERT_PHOTO:98,KITCHEN:99,LABEL:100,LABEL_OUTLINE:101,LANDSCAPE:102,LANGUAGE:103,LAPTOP:104,LAUNCH:105,LAYERS:106,LIBRARY_BOOKS:107,LIGHTBULB_OUTLINE:108,LINK:109,LIST:110,LIVE_HELP:111,LOCAL_ACTIVITY:112,LOCAL_AIRPORT:113,LOCAL_ATM:114,LOCAL_CONVENIENCE_STORE:115,LOCAL_LIBRARY:116,LOCAL_MALL:117,LOCAL_MOVIES:118,LOCAL_OFFER:119,LOCAL_PLAY:120,LOCATION_CITY:121,LOCATION_ON:122,LOCATION_SEARCHING:123,LOCK:124,LOCK_OUTLINE:125,LOYALTY:126,MAP:127,MEMORY:128,MESSAGE:129,MONETIZATION_ON:130,MOVIE:131,MY_LOCATION:132,NEW_RELEASES:133,NEXT_WEEK:134,ONDEMAND_VIDEO:135,OPEN_IN_NEW:136,PANORAMA:137,PAYMENT:138,PEOPLE:139,PEOPLE_OUTLINE:140,PIE_CHART:141,PIE_CHART_OUTLINE:142,PLAY_CIRCLE:143,PLAY_CIRCLE_OUTLINE:144,POLL:145,PUBLIC:146,QUESTION_ANSWER:147,RECEIPT:148,RECENT_ACTORS:149,REDEEM:150,REORDER:151,ROOM_SERVICE:152,ROUTER:153,RSS_FEED:154,SCHOOL:155,SEARCH:156,SECURITY:157,SETTINGS_SYSTEM_DAYDREAM:158,SHOW_CHART:159,SLIDESHOW:160,SMS:161,STARS:162,STORAGE:163,STYLE:164,SUBJECT:165,SUPERVISOR_ACCOUNT:166,TIMELINE:167,TODAY:168,TRENDING_UP:169,TURNED_IN:170,TURNED_IN_NOT:171,VERIFIED_USER:172,VIEW_COLUMN:173,VIEW_COMFY:174,VIEW_COMPACT:175,VIEW_MODULE:176,VIEW_QUILT:177,VIEW_WEEK:178,VPN_LOCK:179,WEB_CLOUDY:180,WEB:181,WEB_ASSET:182,WHATSHOT:183,WIDGETS:184,WORK:185,SETTINGS:186,EDIT:187,FILE_DOWNLOAD:188,KEYBOARD:189,GRID_ON:190,CODE:191,ERROR_OUTLINE:192,EMAIL:193,CAMPAIGN:194,SWAP_HORIZONTAL_CIRCLE:195,SORT:196,FOLDER_ZIP:197,WYSIWYG:198,SYNC:199,CONTENT_COPY:200,VISIBILITY:201,VISIBILITY_OFF:202,ASTERISK:203,RAW_ON:204,PERSON:205,TROPHY:206,APARTMENT:207,PERSON_ADD:208,LOGOUT:209,ERROR:210,AUTOMATION:211,LIGHTBULB:212,MENU:213,EXPAND_MORE:214,EXPAND_LESS:215,CLOSE:216},predefineDestination:{customLink:"custom"},salesforceIntegrationStatus:{DISABLED:0,MANUAL:1,AUTOMATIC:2},hubSpotIntegrationStatus:{DISABLED:0,MANUAL:1,AUTOMATIC:2},sorterMode:{SORT:1,DELETE:2,SORT_AND_DELETE:3},integrationFieldStatus:{OK:1,REQUIRED_NOT_MAPPED:2,UNANSSIGNED:3,INVALID_PICKLIST_MAPPINGS:4,REQUIRED_MAPPED:5},crmInterationType:{SALESFORCE:1,HUBSPOT:2,CHANNELTIVITY:3,DYNAMICS:4},crmIconPlaceholder:{SALESFORCE:"#salesforce-icon#",HUBSPOT:"#hubspot-icon#",CHANNELTIVITY:"#channeltivity-icon#",DYNAMICS:"#dynamics-icon#"},masterType:{TIMESTAMP:1,LOCAL_AS_MASTER:2,REMOTE_AS_MASTER:3},disabledReasonType:{READ_ONLY:1,SYSTEM_FIELD:2,EXPORT_ONLY:3,BUILT_IN:4},partnerSyncSetupConfirmationMessage:{LOGIN_CREDENTIALS:1,MATCH_EXISTING_PARTNERS:2,PARTNER_FIELD_MAPPINGS:3},signalRMessageType:{TEST_1:0,TEST_2:1,HEADER:2,COMPLETE_LEARNING_MODULE:3,PROGRESS_BAR:4},clientCallbackConnectionStatus:{NOT_CONNECTED:0,CONNECTED:1,RECONNECTING:2,DISCONNECTED:3},distributorDealType:{DIRECT:"1",UNKNOWN_PARTNER:"2",KNOWN_PARTNER:"3"},distributorPartnerAssignmentMode:{ANY:"1",ASSIGNED_ONLY:"2"},associateDomainFieldType:{ASSOCIATE_DOMAIN:"1",ADD_TO_IGNORE_LIST:"2"},portalSkinManagerPage:{PORTAL:"1",LOGIN:"2",EMAIL_TEMPLATE:"3",EMAIL_MARKETING_TEMPLATE:"4"},deleteDialogMode:{DELETE_WITHOUT_CONFIRMATION:1,DELETE_WITH_CONFIRMATION:2,DELETE_FORBIDDEN:3},alertType:{INFO:1,WARNING:2,ERROR:3},cardEntityType:{USER:1,ORGANIZATION:2},widgetUsage:{CUSTOM_PAGE:1,LIBRARY:2},libraryFiltersMode:{DISABLED:1,ENABLED:2,ENABLED_ABOVE_FOLDER_TREE:3,ENABLED_BELOW_FOLDER_TREE:4},librarySortOrder:{ALPHABETICAL:1,POPULAR:2,RECENTLY_CHANGED:3,RATING:4},librarySortOrderName:{ALPHABETICAL:"Alphabetical",POPULAR:"Popular",RECENTLY_CHANGED:"RecentlyChanged",RATING:"Rating"},libraryMode:{FOLDERS:1,FLAT:2},fontSize:{SMALL:1,MEDIUM:2,LARGE:3,EXTRA_LARGE:4},userReviewStatus:{SHOW:0,NEVER_SHOW:1,G2_REVIEW_PENDING:2,G2_REVIEW_SUBMITTED:3},pagePublishStatus:{DRAFT:0,PUBLISHED:1},heroWidgetHeight:{SHORT:1,MEDIUM:2,TALL:3},labelTypes:{BASE:1,SUCCESS:2,FAIL:3,PENDING:4,ACTIVE:5,INACTIVE:6,TAG:7,LINK:8,COUNTER:9},circleSeparatedItemTypes:{TEXT:1,LABEL:2},taskOperationTypes:{BACKUP_DBS:1,BACKUP_FILES:2,SYNC_LEADS_CRM:3,SEND_REMINDERS:4,LOG_INSTANCE_STATISTICS:5,RECALCULATE_MDF_ALLOCATIONS:6,RESEND_EMAILS:7,RESTORE_INSTANCE_FROM_TEMPLATE_AND_PRESERVE_ADMIN_USERS:8,BACKUP_MGMT:11,UPDATE_INSTANCE:12,DEPLOY_INSTANCE:13,UPDATE_COORDINATES:14,SYNC_PARTNERS_CRM:15,UPDATE_EMAIL_STATUS:16,SYNC_DEALS_CRM:17,EXPIRE_DEALS:18,RESTORE_INSTANCE_FROM_TEMPLATE:19,EXPIRE_SESSIONS:20,DELETE_OLD_DATA_FROM_DATABASE:21,DELETE_OLD_DATA_FROM_DATABASE_MANAGEMENT:22,UPDATE_ADMIN_MESSAGES:23,CONFIRM_INSTANCE_ELASTIC_POOL:24,MIGRATION:25,AUTO_ASSIGN_LEADS:26,SEND_EMAIL_DIGEST:27,VIDEO_PROCESSING:28,SET_CURRENT_ON_COURSE_AND_CERTIFICATION_COMPLETIONS:29,SEND_CHAMPIONS_REPORT:30,SET_DB_LONG_TERM_RETENTION:31,DATES_SHIFT:32,REBUILD_INDEXES_AND_UPDATE_STATISTICS:33,UPDATE_TEMPLATE_INSTANCES:34,CONFIRM_INSTANCE_TEMPLATES_ELASTIC_POOL:35,SET_DB_SHORT_TERM_RETENTION:37,UPDATE_CRM_INTEGRATION_FIELD_LABELS:38,DELETE_INSTANCE:41,CREATE_SANDBOX:43,REFRESH_SANDBOX:44,UPDATE_CRM_INTEGRATION_FIELDS_AND_LAYOUTS:45,SYNC_REFERRALS_CRM:46,HANDLE_EXPIRED_CERTIFICATIONS:48,HANDLE_EXPIRED_COURSES:49,SEND_EMAIL_MARKETING_EMAILS:50,LOG_INSTANCE_INDEXES:51,TRANSLATE_UNTRANSLATED_TEXT_SEGMENTS:52,SEND_NEW_ADMINS_REPORT:53,PROCESS_TRANSLATION_STATS_AND_ARCHIVE_TEXT_SEGMENTS:54,GENERATE_TRAINING_PDF_CERTIFICATES:55,PROCESS_SCORM_FILES:56,SYNC_ENTITY:57,RECALCULATE_RULES:58,SYNC_INSTANCE_FEATURES:59},pdfTemplateType:{COBRANDED_ASSET:1,AGREEMENT_LETTERHEAD:2,TRAINING_CERTIFICATION:3},pdfCertificationSharingType:{FILE:1,LINKED_IN_TIMELINE:2,LINKED_IN_PROFILE:3},fieldRequirementVisibilityValues:{HIDDEN:1,EDITABLE:2,REQUIRED:3,REQUIRED_FOR_USERS:4,REQUIRED_FOR_CONTACTS:5,READ_ONLY:6},courseItemType:{LESSON:1,QUIZ:2,LEARNING_MODULE:3},agreementTemplateAssignmentMode:{MANUAL:1,SMART:2}});angular.module("sharedElements").factory("httpInterceptor",function(n){return{request:function(n){return n.headers.customHeader="Channeltivity",n},requestError:function(t){return n.reject(t)},response:function(n){return n},responseError:function(t){return n.reject(t)}}});angular.module("sharedElements").factory("pageSharedDataFactory",["$q","constants",function(n,t){return{setTitle:null,search:null,wysiwygValidationUrl:null,showSuccessMessage:null,showProcessingMessage:null,hideMessage:null,nextStep:null,session:n.defer(),loginDialog:null,serviceUnavailable:n.defer(),serviceUnavailableDialog:null,appOutOfDate:n.defer(),appOutOfDateDialog:null,setAccessDenied:null,setEntityNotFound:null,setSidebarNavigationAsOpened:null,isSidebarNavigationOpened:null,refreshHeader:null,header:null,pageGuide:null,startWalkthrough:null,openInternalUserReviewDialog:null,openPartnerUserReviewDialog:null,setPageFocus:null,createClientCallback:null,removeClientCallback:null,updateClientCallbacks:null,restartClientCallbackConnection:null,openFreshDeskWidget:null,clientCallbackConnectionStatus:t.clientCallbackConnectionStatus.NOT_CONNECTED,getSystemMessages:function(){return this.header===null?null:this.header.messages},setSystemMessages:function(n){if(this.header===null)throw new Error("header is undefined");this.header.messages=n},showConfirmDialogBeforeUnloadPage:null,showConfirmDialogBeforeUnloadPage_locationValidation:null}}]);angular.module("sharedElements").factory("requestInterceptor",function(){return{request:function(n){return n}}});angular.module("sharedElements").factory("responseInterceptor",["$q","$location",function(n,t){return{response:function(){return promise.then(function(n){return n},function(i){return n.reject(i)})}}}]);angular.module("sharedElements").provider("loadingBarHelper",["cfpLoadingBarProvider",function(n){n.includeSpinner=!1;n.includeBar=!1;this.init=function(){n.includeSpinner=!1;n.includeBar=!0;n.latencyThreshold=25;n.parentSelector=".loading-bar-container"};this.$get=function(){return null}}]);angular.module("sharedElements").provider("routeHelper",["$injector",function(n){function r(i){return t===null&&(t=n.get("appDetailsValueProvider").$get()),t.cdnUrl+i+"?"+t.fingerprint}var t=null,i={INT:1};this.paramType=i;this.getRoute=function(n){if(typeof n.templateUrl=="undefined")throw new Error("templateUrl must be defined");if(n.templateUrl===null)throw new Error("templateUrl cannot be null");if(typeof n.controller=="undefined")throw new Error("controller must be defined");if(n.controller===null)throw new Error("controller cannot be null");return n.templateUrl=r(n.templateUrl),(typeof n.controllerAs=="undefined"||n.controllerAs===null)&&(n.controllerAs=n.controller.toLowerCase()),(typeof n.reloadOnSearch=="undefined"||n.reloadOnSearch===null)&&(n.reloadOnSearch=!1),(typeof n.caseInsensitiveMatch=="undefined"||n.caseInsensitiveMatch===null)&&(n.caseInsensitiveMatch=!0),(typeof n.resolve=="undefined"||n.resolve===null)&&typeof n.resolveParams!="undefined"&&n.resolveParams!==null&&(n.resolve={},angular.forEach(n.resolveParams,function(t){switch(t.type){case i.INT:n.resolve[t.name]=["$q","$route",function(n,i){var r=n.defer(),u=i.current.params[t.name],f,e;return typeof u=="undefined"?r.resolve():(f="^(0|[-]?[1-9][0-9]*)$",e=new RegExp(f),e.test(u)===!0?r.resolve():r.reject()),r.promise}]}})),n};this.$get=function(){return null}}]);angular.module("sharedElements").service("actionService",["constants","helpService","$compile","listerService",function(n,t,i,r){function u(n,t){if(n===null)return null;var i=_.find(n,function(n){return n.name===t});return typeof i=="undefined"?null:i}function f(n){var t=$(document.createElement("a"));return n.link===null?t.attr("data-ng-click",'handleAction("'+n.name+'")'):(t.attr("href",n.link),n.targetBlank===!0&&(t.attr("target","_blank"),t.attr("rel","noreferrer"))),t}function o(n){var t=$(document.createElement("li")),i;return t.addClass("item"),i=f(n),i.text(n.label),t.append(i),t}function e(i,r,u,f){if(i.clientVisibilityLevel===null)return!0;switch(i.clientVisibilityLevel){case"lister-has-selectable-data":return r.layout===n.listerLayout.MAP||r.layout===n.listerLayout.CONTENT?!1:t.showControlsRelatedWithListerData(r,u);case"lister-has-data":return t.showControlsRelatedWithListerData(r,u)||t.showControlsRelatedWithMapData(r,u)||t.showControlsRelatedWithBarChartData(r,u)||t.showControlsRelatedWithTimelineData(r,u);case"lister-has-more-than-one-record":return t.showControlsRelatedWithListerData(r,u)&&r.rows.length>1||t.showControlsRelatedWithMapData(r,u)&&r.map.totalRowCount>1;case"common-items-more-then-one-record":return f!==null&&f.length>1;default:throw new Error("Not implemented action visibility level: "+i.clientVisibilityLevel);}}this.bindActions=function(n){if(typeof n=="undefined")throw new Error('"actions" is undefined');return Object.prototype.toString.call(n)==="[object Object]"?[n]:n};this.validateActions=function(n){if(typeof n=="undefined")throw new Error('"actions" is undefined');if(Object.prototype.toString.call(n)!=="[object Array]")throw new Error('"actions" is not Array');if(n.length===0)throw new Error('"actions" is empty Array');};this.getAction=function(n,t){return u(n,t)};this.updateRefineResultsActionLink=function(n,t){var r=u(n,"refine-results"),f,i;r!==null&&(f=r.link.split("#")[0],i=t.split("#"),t=i.length===1?i[0]:i[1],r.link=f+"#"+t)};this.bindRefineResultsActionLink=function(n,t){var i=u(n,"refine-results");if(i!==null){var f=i.link.split("#")[0],r=t.filterAndListerState.split("#"),e=r.length===1?r[0]:r[1];i.link=f+"#"+e}};this.addExportActions=function(n,t){(typeof n=="undefined"||n===null)&&(n=[]);var i="export-actions-group";return n.push({label:"Print",name:"export-print",clientVisibilityLevel:"lister-has-data",groupName:i,link:null,targetBlank:null}),n.push({label:"Export",name:"export-to-excel",clientVisibilityLevel:"lister-has-data",groupName:i,link:null,targetBlank:null}),t!==null&&n.push({label:"Advanced Export",name:"export-advanced",clientVisibilityLevel:"lister-has-data",groupName:i,link:null,targetBlank:null}),n};this.addBulkSelectAction=function(n){(typeof n=="undefined"||n===null)&&(n=[]);return n.push({label:"Select",name:"select",clientVisibilityLevel:"lister-has-selectable-data",groupName:"bulk-operation-action-group",link:null,targetBlank:null}),n};this.getActionElement=function(n){return f(n)};this.getActionItemElement=function(n){return o(n)};this.isActionVisible=function(n,t,i,r){return e(n,t,i,r)};this.anyVisibleAction=function(n,t,i,r){if(typeof n=="undefined"||n===null)return!1;for(var u=0;u<n.length;u++)if(e(n[u],t,i,r)===!0)return!0;return!1};this.print=function(n){if(typeof n=="undefined")throw Error("Lister is undefined");if(n===null)throw Error("Lister is null");window.open(r.getPrintLink(n,!1,null),"_blank","noreferrer")};this.exportToExcel=function(n){if(typeof n=="undefined")throw Error("Lister is undefined");if(n===null)throw Error("Lister is null");window.open(r.getExportToExcelLink(n,!1,null),"_blank","noreferrer")};this.advancedExport=function(n,t){if(typeof n=="undefined")throw Error("Lister is undefined");if(n===null)throw Error("Lister is null");if(typeof t=="undefined")throw Error("NestedTables is undefined");if(t===null)throw Error("NestedTables is null");r.openAdvancedExportDialog(n,t)}}]);angular.module("sharedElements").service("addressService",["securityService",function(n){this.getStates=function(t,i,r){return n.httpGet("data/Common/Address/GetStates",{countryCode:t,invalidStateValue:r,restrictCountriesAndStatesByRegion:i})};this.getStatesForFilter=function(t){return n.httpGet("data/Common/Address/GetStatesForFilter",{countryCode:t})};this.getMasterAddress=function(t){return n.httpGet("data/Common/Address/GetMasterAddress",{organizationId:t})};this.searchLocation=function(t){return n.httpPost("data/Common/Address/SearchLocation",{location:t})}}]);angular.module("sharedElements").service("compileService",function(){this.copyHtmlElement=function(n,t){var r,i,u,f;if(n.length!==1)throw new Error("Copy Attributes failed, source element is undefined");for(r=$(document.createElement(t)),i=0;i<n[0].attributes.length;i++)u=n[0].attributes[i].name,f=n[0].attributes[i].value,r.attr(u,f);return r}});angular.module("sharedElements").service("componentService",["constants","$timeout","pageSharedDataFactory","$q","$controller","$rootScope","$compile","$location",function(n,t,i,r,u,f,e){function s(){return $("#"+o)}var o="component-panel",h="component-item";this.isComponentPanelAvailable=function(){return s().length>0};this.getSidebar=function(){var n=$("#"+o),t;return typeof n.data("sidebar")=="undefined"&&(t=function(){function f(n,t,u){n===!0&&(i.showConfirmDialogBeforeUnloadPage(o),r());c(t,u)}function o(){var t=!1;return _.each(n,function(n){t===!1&&n.scope.anyChanges===!0&&(t=!0)}),t}function t(){var t=_.last(n);t.scope.onClose();t.scope.$destroy();t.element.remove();n=_.reject(n,t)}function r(){while(n.length!=0)t()}function c(r,f){var h=l(r,f),o;s().append(h);o=["$scope"];typeof r.dependencies!="undefined"&&r.dependencies!==null&&(o=o.concat(r.dependencies));o.push(function(n){function s(){var t=r.onAction.apply(null,["load",null,n].concat(f));return t.then(function(){n.isLoading=!1}),t}function h(u){i.showProcessingMessage(r.submitButton.processingMessage+"...");var e=r.onAction.apply(null,["save",u,n].concat(f));return e.then(function(){t();n.isProcessing=!1;i.showSuccessMessage(r.submitButton.successMessage+"!")}),e}function c(t,i){return r.onAction.apply(null,[t,i,n].concat(f))}var f=[],e,u,o;if(arguments.length>1)for(e=1;e<arguments.length;e++)f.push(arguments[e]);n.isLoading=!0;n.form=null;n.isProcessing=null;n.preview=null;n.anyChanges=!1;u=null;typeof r.preview!="undefined"&&(n.preview=r.preview());o=!1;typeof r.doAutoLoad!="undefined"&&r.doAutoLoad===!0&&(o=!0);n.onCancel=function(){if(typeof r.onCancel!="undefined"){var i=_.isEmpty(u)?null:u;r.onCancel.apply(null,[n.preview,i].concat(f))}else u!==null&&$.extend(n.preview,u);t()};n.onClose=function(){typeof r.onClose!="undefined"&&r.onClose.apply(null,[n].concat(f))};n.handleAction=function(n,t){switch(n){case"load":return s();case"save":return h(t);default:return c(n,t)}};n.$watch(function(){return n.preview},function(n){u===null&&(u=$.extend(!0,{},n))});o===!0&&s()});u(o,{$scope:f,$element:h});e(h)(f);n.push({element:h,scope:f})}function l(n,t){var r="",u,i;return typeof n.description!="undefined"&&(r='<p class="help-block">'+n.description+"<\/p>"),u=typeof n.isPlain!="undefined"&&n.isPlain===!0,i=$('<div class="menu-wrapper '+h+'">   <div class="menu-body">       <div class="n-layout-scroll n-layout-fill-large-only">           <div class="n-layout-padding-uniform">               <div class="menu">                   <div class="menu-header">                      <a href="javascript:;" data-ng-click="onCancel()" class="menu-header-close">                          <i icon="remove"><\/i>                      <\/a>                      <h3 class="menu-header-label">'+n.title+"                      <\/h3>                   <\/div>"+r+'<div class="loading-large" data-ng-class="{\'loading-large\': isLoading }">'+n.template+"<\/div>               <\/div>           <\/div>       <\/div>   <\/div>"),u==!1&&i.append($('<div class="menu-footer">       <div class="n-layout-padding-uniform">          <div class="actions actions-right">               <button data-c-submit-button data-pending-action="isProcessing" data-loader-text="'+n.submitButton.processingMessage+'" data-form="form">'+n.submitButton.label+'<\/button>               <button type="button" class="btn btn-text" data-ng-click="onCancel()">Cancel<\/button>           <\/div>       <\/div>   <\/div>')),i.data("scope",t),i}var n=[];return{open:f,close:t,closeAll:r}},n.data("sidebar",t())),n.data("sidebar")};this.editComponent=function(n,t){t=typeof t=="undefined"?!1:t;var i=this.getSidebar(),r=f.$new();i.open(t,n,r)};this.getChangesHelper=function(){function o(n,r,u,e){t(function(n,t,i,r,u){t!==null&&_.each(t,function(n){a(n)});i!==null&&_.each(i,function(n){v(n.name,n.rows)});r!==null&&_.each(r,function(n){y(n)});u!==null&&_.each(u,function(n){f(n.name,n.value)});n.resolve()},0,!0,i,n,r,u,e)}function s(t,r){i.promise.then(function(){n[t].value=r;e()})}function h(t){i.promise.then(function(){n[t.name].value=t.value;e()})}function c(t,r){i.promise.then(function(){value=_.map(r,function(n){return n.id});n[t].value=value;e()})}function l(){return n}function a(n){function r(n){return!n||typeof n!="object"?!1:n.name&&n.type&&typeof n.label!="undefined"?!0:!1}var t,i;for(t in n)r(n[t])&&(i=n[t],f(i.name,i.value))}function v(n,t){value=_.map(t,function(n){return n.id});f(n,value)}function f(t,i){n[t]={defaultValue:i,value:i}}function y(n){f(n.name,n.value)}function e(){u=!1;_.each(n,function(n){u===!1&&_.isEqual(n.defaultValue,n.value)===!1&&(u=!0)})}var i=r.defer(),n={},u=!1;return{init:o,update:s,updateField:h,updateLister:c,getItems:l,anyChanges:function(){return u}}};this.getChangesHelper1=function(){var n=function(){function e(n){t(function(n,t){n();t.resolve()},0,!0,n,i)}function o(t,r){i.promise.then(function(){n[t].value=r;f()})}function s(t){i.promise.then(function(){n[t.name].value=t.value;f()})}function h(t,r){i.promise.then(function(){value=_.map(r,function(n){return n.id});n[t].value=value;f()})}function c(){return n}function f(){u=!1;_.each(n,function(n){u===!1&&_.isEqual(n.defaultValue,n.value)===!1&&(u=!0)})}var i=r.defer(),n={},u=!1;return this.addSection=function(n){function r(n){return!n||typeof n!="object"?!1:n.name&&n.type&&typeof n.label!="undefined"?!0:!1}var t,i;for(t in n)r(n[t])&&(i=n[t],this.add(i.name,i.value))},this.addLister=function(n,t){value=_.map(t,function(n){return n.id});this.add(n,value)},this.add=function(t,i){n[t]={defaultValue:i,value:i}},this.addField=function(n){this.add(n.name,n.value)},{init:e,update:o,updateField:s,updateLister:h,getItems:c,anyChanges:function(){return u}}};return n()};this.getPreviewHelper=function(){var i=function(){function o(n,r){return t(function(){n===null&&(n={});i=n;r();u.resolve(i)}),u.promise}function s(n,t){u.promise.then(function(){e(f[n.name],n,t)})}function h(n,t){u.promise.then(function(){var r=f[n];i[n]=r(t)})}function e(t,r,u){switch(r.type){case n.fieldType.TEXT:case n.fieldType.TEXTAREA:case n.fieldType.EMAIL_DOMAIN:case n.fieldType.EMAIL:case n.fieldType.URL:case n.fieldType.MULTISELECT:case n.fieldType.MULTISELECT_WITH_STRING_ID:case n.fieldType.RADIO_BUTTON_LIST:case n.fieldType.PICKLIST:case n.fieldType.PICKLIST_WITH_STRING_ID:case n.fieldType.THUMBNAIL:case n.fieldType.WYSIWYG:case n.fieldType.EMAIL_RECIPIENTS:case n.fieldType.LINK_DESTINATION:case n.fieldType.PERMISSIONS:case n.fieldType.CURRENCY:case n.fieldType.PERCENT:case n.fieldType.DOUBLE:case n.fieldType.FILE_UPLOAD:case n.fieldType.IMAGE_CHOOSER:i[t]=u===null||u===""?i[t+"_default"]:u;break;case n.fieldType.INT:var f=parseInt(u);i[t]=isNaN(f)?i[t+"_default"]:f;break;case n.fieldType.DATE:case n.fieldType.DATETIME:break;case n.fieldType.CHECKBOX:case n.fieldType.CHECKBOX_GROUP:i[t]=u==="true";break;case n.fieldType.COLOR_PICKER:i[t]=u===null?null:u.substring(1);break;case n.fieldType.FOLDER_OR_DOCUMENT_SELECTOR:case n.fieldType.PASSWORD:case n.fieldType.ADDRESS:case n.fieldType.NESTED_TABLE:case n.fieldType.TITLE:case n.fieldType.SECTION:case n.fieldType.READ_ONLY:case n.fieldType.READ_ONLY_HTML:throw new Error('Unsupported field type: "'+r.type+'"');default:throw new Error('Unexpected field type: "'+r.type+'"');}}var u=r.defer(),f={},i=null;return this.setField=function(n,t,r){f[t.name]=n;typeof r!="undefined"&&(i[n+"_default"]=r);e(n,t,t.value)},this.setLister=function(n,t,r){f[n]=r;i[n]=r(t)},{init:o,updateField:s,updateLister:h}};return i()};this.setPrivatePreviewObject=function(n,t){n._previewObject=t};this.getPrivatePreviewObject=function(n){return typeof n._previewObject=="undefined"?null:n._previewObject}}]);angular.module("sharedElements").service("exceptionService",["$log","$window","traceService","$injector",function(n,t,i){this.logError=function(r,u,f,e){f!==!1&&n.error.apply(n,arguments);var o=r.toString(),s=i.print({e:r});$.ajax({type:"POST",url:"data/Common/Error/Log",contentType:"application/json",data:angular.toJson({url:t.location.href,message:o,stackTrace:s,cause:u||"",rawData:e||""})}).then(function(t){if(typeof t!="undefined"&&t!==null)try{appInsights.trackException(r,null,t.properties)}catch(i){try{$.ajax({type:"POST",url:"data/Common/Error/SendEmailNotification",contentType:"application/json",data:angular.toJson(t.errorObj)})}catch(r){n.warn("Error server-side logging failed");n.log(r)}}})}}]).factory("traceService",function(){return{print:printStackTrace}}).factory("exceptionLoggingService",["$log","$window","traceService","$injector","exceptionService",function(n,t,i,r,u){function f(t,i){try{u.logError(t,i)}catch(f){n.warn("Error server-side logging failed");n.log(f)}finally{var e=r.get("ngDialog");e.open({template:"js/shared/common/views/applicationError/applicationErrorView.html",className:"ngdialog-theme-default",closeByEscape:!1,controller:["$scope","$window","$location","$timeout",function(n,t,i,r){function u(n){if(t.history.length<=2)i.path(n);else{var u=i.path();t.history.back();r(function(){i.path()===u&&i.path(n)},100)}}n.reload=function(){t.location.reload();n.closeThisDialog()};n.goToPreviousPage=function(){u("Home");n.closeThisDialog()}}]})}}return f}]);angular.module("sharedElements").service("fileUploadService",["securityService",function(n){this.deleteFile=function(t){return n.httpGet("data/Common/FileUpload/DeleteFile",{fileId:t})}}]);angular.module("sharedElements").service("filterService",["helpService","$location","constants","addressService","securityService","$timeout",function(n,t,i,r,u,f){function c(n){if(_.isEqual(n.filterValue,n.defaultFilterValue)===!0)return!0;switch(n.type){case i.filterTypes.MULTISELECT:return n.filterValue.otherValues.length===1&&n.defaultFilterValue.otherValues.length===1&&_.isEqual(n.filterValue.otherValues,n.defaultFilterValue.otherValues)===!0}return!1}function o(n){switch(n.type){case i.filterTypes.DROPDOWN_ADVANCED:case i.filterTypes.MULTISELECT:n.listItems=_.map(n.listItems,function(t){var r=_.find(n.filterValue.otherValues,function(n){return n===t.value}),i;return t.isSelected=typeof r!="undefined"&&r!==null,i=_.find(n.defaultFilterValue.otherValues,function(n){return n===t.value}),t.isDefault=typeof i!="undefined"&&i!==null,t});break;case i.filterTypes.DATE:case i.filterTypes.DATETIME:case i.filterTypes.DOUBLE:case i.filterTypes.INTEGER:case i.filterTypes.PERCENT:case i.filterTypes.CURRENCY:case i.filterTypes.FILESIZE:if(n.filterValue.otherValues===null)break;n.filterValue.otherValues.length===1?n.customValue1=n.filterValue.otherValues[0]:n.filterValue.otherValues.length===2&&(n.customValue1=n.filterValue.otherValues[0],n.customValue2=n.filterValue.otherValues[1]);break;case i.filterTypes.COUNTRY_AND_STATE:if(n.filterValue.otherValues===null)break;n.filterValue.otherValues.length===2&&(n.customValue1=n.filterValue.otherValues[0],n.customValue2=n.filterValue.otherValues[1]);break;case i.filterTypes.LOCATION_FILTER:if(n.filterValue.otherValues===null){n.customValue1="50";n.customValue2="km";break}n.filterValue.otherValues.length===2&&(n.customValue1=n.filterValue.otherValues[0],n.customValue2=n.filterValue.otherValues[1])}}function l(){return[10,25,50,100,200]}function s(n){return _.filter(n,function(n){return n.isVisible===!1&&n.type!==i.filterTypes.SPECIAL_REFERENCE&&n.isServerOnly===!1})}function e(n){return _.filter(n,function(n){return n.isVisible===!0&&n.type!==i.filterTypes.SPECIAL_REFERENCE&&n.isServerOnly===!1})}function a(n){var t=e(n);return t.length===0?0:_.max(t,function(n){return n.rank}).rank+1}function h(n,t){u.httpGet("data/Common/Filter/SetIsOpenedPageFilters",{pageComponent:n,isOpened:t})}this.LOAD_FILTER_LIST_ITEMS_ACTION_NAME="load-filter-list-items";this.getFilterAndListerState=function(){return t.hash()};this.setFilterAndListerState=function(i,r){t.hash()!==i&&n.setHashParameterWithoutReload(i,r)};this.processErrorMessage=function(n){n===null};this.getFilterState=function(n){return getFilterState(n,null)};this.getFilterState=function(n,t){var r=[];return($.each(n,function(n,t){var u={name:t.name,filterValue:{otherValues:[]}};switch(t.type){case i.filterTypes.TEXT:u.filterValue.value=t.filterValue.value;break;case i.filterTypes.DROPDOWN:case i.filterTypes.DROPDOWN_ADVANCED:u.filterValue.value=t.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],t.filterValue.otherValues);break;case i.filterTypes.BOOLEAN:u.filterValue.value=t.filterValue.value;break;case i.filterTypes.MULTISELECT:u.filterValue.value=t.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],t.filterValue.otherValues);break;case i.filterTypes.DATE:case i.filterTypes.DATETIME:u.filterValue.value=t.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],t.filterValue.otherValues);break;case i.filterTypes.INTEGER:case i.filterTypes.DOUBLE:case i.filterTypes.CURRENCY:case i.filterTypes.PERCENT:case i.filterTypes.FILESIZE:u.filterValue.value=t.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],t.filterValue.otherValues);break;case i.filterTypes.SPECIAL_REFERENCE:u.filterValue.value=t.filterValue.value;break;case i.filterTypes.COUNTRY_AND_STATE:u.filterValue.value=t.filterValue.value;break;case i.filterTypes.COURSE_QUIZ_QUESTION_ANSWER:u.filterValue.otherValues=$.extend(!0,[],t.filterValue.otherValues);break;case i.filterTypes.LOCATION_FILTER:u.filterValue.value=t.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],t.filterValue.otherValues)}r.push(u)}),t===null)?r:($.each(_.sortBy(t,function(n){return n.rank}),function(n,t){if(t.isVisible!==!1){var i=_.find(r,function(n){return n.name===t.name});typeof i=="undefined"&&r.push({name:t.name,filterValue:{value:t.defaultFilterValue.value,otherValues:$.extend(!0,[],t.defaultFilterValue.otherValues)}})}}),r)};this.getFilterState_library=function(n){var t=[];return $.each(n,function(n,r){var u={name:r.name,filterValue:{otherValues:[]}};switch(r.type){case i.filterTypes.TEXT:u.filterValue.value=r.filterValue.value;break;case i.filterTypes.DROPDOWN_ADVANCED:u.filterValue.value=r.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],r.filterValue.otherValues);u.filterValue.otherValues.length===0&&(u.filterValue.otherValues=$.extend(!0,[],r.defaultFilterValue.otherValues));break;case i.filterTypes.MULTISELECT:u.filterValue.value=r.filterValue.value;u.filterValue.otherValues=$.extend(!0,[],r.filterValue.otherValues);u.filterValue.otherValues.length===0&&(u.filterValue.otherValues=$.extend(!0,[],r.defaultFilterValue.otherValues))}t.push(u)}),t};this.resetFilters=function(n){$.each(n,function(n,t){t.filterValue.value=t.defaultFilterValue.value;t.type===i.filterTypes.LOCATION_FILTER?t.filterValue.otherValues[0]=t.defaultFilterValue.otherValues[0]:t.filterValue.otherValues=$.extend(!0,[],t.defaultFilterValue.otherValues);t.customValue1=null;t.customValue2=null;o(t)})};this.getAppliedFilters=function(n){var t=_.filter(n,function(n){return n.isVisible===!0&&c(n)===!1&&n.isServerOnly===!1});return t=$.extend(!0,[],t),_.sortBy(t,function(n){return n.rank})};this.hasFilterDefaultValue=function(n){return c(n)};this.initFilter=function(n){o(n)};this.getSortByFilter=function(n,t){for(var u,e,r=[],f=0;f<t.length;f++)u=t[f],r.push({groupName:u.entityTypeName,iconLink:null,incompatibleValues:null,isEnabled:!0,isHtml:!1,materialIconValue:null,text:u.label,value:u.name,translate:!0,type:i.dropdownItemTypes.NORMAL});return e=_.find(r,function(t){return t.value===n}),typeof e=="undefined"&&(n=r[0].value),{name:"SortBy",rank:-2,type:i.filterTypes.DROPDOWN,label:"Sort by",isVisible:!0,isMain:!0,formattedValue:null,filterValue:{value:n,otherValues:[]},defaultValue:{value:null,otherValues:[]},listItems:r,translate:!0}};this.getSortReverseFilter=function(n){return{name:"SortReverse",rank:-1,type:i.filterTypes.DROPDOWN,label:"Sort Order",isVisible:!0,isMain:!0,formattedValue:null,translate:!0,filterValue:{value:n,otherValues:[]},defaultValue:{value:null,otherValues:[]},listItems:[{groupName:null,iconLink:null,incompatibleValues:null,isEnabled:!0,isHtml:!1,materialIconValue:null,text:"Ascending",value:!1,translate:!0,type:i.dropdownItemTypes.NORMAL},{groupName:null,iconLink:null,incompatibleValues:null,isEnabled:!0,isHtml:!1,materialIconValue:null,text:"Descending",value:!0,translate:!0,type:i.dropdownItemTypes.NORMAL}]}};this.getAvailableLayoutsFilter=function(t,r){for(var f,e=[],u=0;u<r.length;u++)f=r[u],e.push({groupName:null,iconLink:null,incompatibleValues:null,isEnabled:!0,isHtml:!1,materialIconValue:null,text:n.getListerLayoutLabel(f),value:f,translate:!0,type:i.dropdownItemTypes.NORMAL});return{name:"Layout",rank:-2,type:i.filterTypes.DROPDOWN,label:"Layout",isVisible:!0,isMain:!0,formattedValue:null,filterValue:{value:t,otherValues:[]},defaultValue:{value:null,otherValues:[]},listItems:e,translate:!0}};this.getPageSizeOptions=function(){return l()};this.getPageSizeFilter=function(n){for(var u,e,t=[],f=l(),r=0;r<f.length;r++)u=f[r],t.push({groupName:null,iconLink:null,incompatibleValues:null,isEnabled:!0,isHtml:!1,materialIconValue:null,text:u+"",value:u,type:i.dropdownItemTypes.NORMAL});return e=_.find(t,function(t){return t.value===n}),typeof e=="undefined"&&(n=t[0].value),{name:"PageSize",rank:-3,type:i.filterTypes.DROPDOWN,label:"Page Size",isVisible:!0,isMain:!0,formattedValue:null,filterValue:{value:n,otherValues:[]},defaultValue:{value:null,otherValues:[]},listItems:t}};this.generateFilterableInterface=function(t){t!==null&&$.each(t,function(t,i){n.generateFilterableInterface(i,function(){return this.name},function(){return this.label},function(){return!1},function(){return!0},function(){return this.entityTypeName})})};this.getMainFilters=function(n){return _.filter(n,function(n){return n.isMain===!0})};this.getVisibleFilters=function(n){var t=e(n);return _.sortBy(t,function(n){return n.rank})};this.getNonMainVisibleFilters=function(n){var t=e(n);return _.filter(t,function(n){return n.isMain===!1})};this.getAvailableFilters=function(n){var t=s(n);return _.sortBy(t,function(n){return[n.entityTypeName,n.label]})};this.anyAvailableFilters=function(n){return s(n).length>0};this.getAvailableFilterNames=function(n){return $.map(s(n),function(n,t){return{name:t.name}})};this.anyVisibleFilters=function(n){return e(n).length>0};this.addFilter=function(n,t){t.rank=a(n);t.filterValue.value=t.defaultFilterValue.value;t.filterValue.otherValues=$.extend(!0,[],t.defaultFilterValue.otherValues);t.customValue1=null;t.customValue2=null;t.isVisible=!0;o(t)};this.removeFilter=function(n){n.isVisible=!1;n.rank=0;n.filterValue.value=n.defaultFilterValue.value;n.filterValue.otherValues=$.extend(!0,[],n.defaultFilterValue.otherValues);n.customValue1=null;n.customValue2=null};this.searchLocation=function(n){return r.searchLocation(n)};this.initFilterSettings=function(){return{isOpened:!0,pageComponent:null,searchFilter:null,setForm:function(n){this.form=n},applyFilters:function(){this.form.submitForm()},toggleFilters:function(){this.isOpened=!this.isOpened;f(function(){$(window).trigger("resize")});h(this.pageComponent,this.isOpened)},closeFilters:function(){this.isOpened=!1;f(function(){$(window).trigger("resize")});h(this.pageComponent,this.isOpened)},openFilters:function(){this.isOpened=!0;f(function(){$(window).trigger("resize")});h(this.pageComponent,this.isOpened)}}};this.updateFilterSettings=function(n,t,r){t!=null&&(typeof t.isOpened!="undefined"&&(n.isOpened=t.isOpened),typeof t.pageComponent!="undefined"&&(n.pageComponent=t.pageComponent));var u=_.find(r,function(n){return n.isMain===!0&&n.type===i.filterTypes.TEXT});return typeof u!="undefined"&&(n.searchFilter=u),n}}]);angular.module("sharedElements").service("headerService",["securityService",function(n){this.loadHeader=function(t){return n.httpGet("data/Common/Header/GetHeader",{hash:t})};this.switchMode=function(){return n.httpGet("data/Common/Header/SwitchMode")};this.setListerQueryCompareMode=function(){return n.httpGet("data/Common/Header/SetListerQueryCompareMode")};this.setListerQueryDirectMode=function(){return n.httpGet("data/Common/Header/SetListerQueryDirectMode")};this.setListerQueryProcedureMode=function(){return n.httpGet("data/Common/Header/SetListerQueryProcedureMode")}}]);angular.module("sharedElements").service("helpService",["$route","$location","$window","$filter","appDetailsValue","constants","$timeout","ngDialog","$templateCache","pageSharedDataFactory","$q","translationHelperService","componentService","$sce",function(n,t,i,r,u,f,e,o,s,h,c,l,a,v){function it(n,t){var e=u.localization.shortDatePattern,o=u.localization.shortDatePattern+" "+u.localization.shortTimePattern,s=u.localization.longDatePattern,h=u.localization.longDatePattern+" "+u.localization.longTimePattern,i;if(moment(n,o,!0).isValid())i=o;else if(moment(n,e,!0).isValid())i=e;else if(moment(n,h,!0).isValid())i=h;else if(moment(n,s,!0).isValid())i=s;else throw new Error("Unknown datetime format: "+n);n=moment(n,i,!0);var f=n.format(t),r=n.month();return i.indexOf("MMMM")>=0?f.replace(["January","February","March","April","May","June","July","August","September","October","November","December"][r],u.localization.monthNames[r]):i.indexOf("MMM")>=0?f.replace(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][r],u.localization.abbreviatedMonthNames[r]):f}function rt(n,t){typeof n=="string"&&(n=n.replace(u.localization.numberDecimalSeparator,"."));n=parseFloat(n);var i=r("number")(n,t);return i=i.replace(/,/g,"g"),i=i.replace(/\./g,"d"),i=i.replace(/g/g,u.localization.numberGroupSeparator),i.replace(/d/g,u.localization.numberDecimalSeparator)}function ii(n){return typeof n=="string"&&(n=n.replace(u.localization.numberDecimalSeparator,".")),parseFloat(n)}function w(n){return $(document.createElement("div")).text(n).html()}function ri(){var n=function(n){var t=new RegExp(n);return t.test(window.navigator.userAgent)},t=!1,i=!1,r=!1,u=!1,f=!1,e=!1,o=!1,s=!1;switch(!0){case n(/edg/i):t=!0;break;case n(/trident/i):i=!0;break;case n(/firefox|fxios/i):r=!0;break;case n(/opr\//i):u=!0;break;case n(/ucbrowser/i):f=!0;break;case n(/samsungbrowser/i):e=!0;break;case n(/chrome|chromium|crios/i):o=!0;break;case n(/safari/i):s=!0}return{isEdge:t,isIe:i,isFirefox:r,isOpera:u,isUc:f,isSamsung:e,isChrome:o,isSafari:s}}function ki(){return $(window).width()>960}function nt(){return $(window).width()<=768}function tt(n,t){return t===null||n===null?!1:(n=n.toLowerCase(),t=t.toLowerCase(),n.charAt(0)!=="/"&&(n="/"+n),n.charAt(n.length-1)!=="/"&&(n=n+"/"),t.charAt(0)!=="/"&&(t="/"+t),t.charAt(t.length-1)!=="/"&&(t=t+"/"),n.slice(0,t.length)===t)}function d(n,t){return n=n.toLowerCase(),t=t.toLowerCase(),n.indexOf("?")!==-1&&(n=n.slice(0,n.indexOf("?"))),n.indexOf("#")!==-1&&(n=n.slice(0,n.indexOf("#"))),n.charAt(0)==="/"&&(n=n.slice(1,n.length)),n.charAt(n.length-1)==="/"&&(n=n.slice(0,n.length-1)),t.charAt(0)==="/"&&(t=t.slice(1,t.length)),t.charAt(t.length-1)==="/"&&(t=t.slice(0,t.length-1)),n===t}function ct(n,t){if(typeof n=="undefined")throw new Error('"section" is undefined');if(typeof n.lister=="undefined")throw new Error('"section.lister" is undefined');if(typeof n.listerStatus=="undefined")throw new Error('"section.listerStatus" is undefined');if(typeof t=="undefined")throw new Error('"lister" is undefined');n.lister=t;n.listerStatus=f.listerStatus.RENDERING}function ui(n){n.fields=_.map(n.fields,function(n){return{name:n.name,value:n.value}})}function y(n,t){if(typeof n.template!="undefined"&&n.template!==null&&n.plain!==!0){var i=s.get(n.template);typeof i=="undefined"&&(n.template=u.cdnUrl+n.template+"?"+u.fingerprint)}return typeof n.showClose=="undefined"&&(n.showClose=!1),typeof n.overrideNoTranslate=="undefined"&&(n.overrideNoTranslate=!1),n.closeByDocument=!1,typeof n.closeByEscape=="undefined"&&(n.closeByEscape=!1),n.className=lt,typeof t!="undefined"&&(n.className=n.className+" "+t),n.overrideNoTranslate===!1&&u.noTranslateForApp===!0&&(n.className=n.className+" "+l.getTranslateClass()),o.open(n)}function di(n){return(typeof n=="undefined"||n===null)&&(n={}),typeof n.description=="undefined"&&(n.description=null),typeof n.alerts=="undefined"&&(n.alerts=null),n}function gi(){var n=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var i=(n+Math.random()*16)%16|0;return n=Math.floor(n/16),(t=="x"?i:i&3|8).toString(16)})}function ut(n,t){y({closeByEscape:!1,template:"js/shared/common/views/expiredData/expiredDataView.html",controller:["$scope",function(i){(typeof t=="undefined"||t===null||t==="")&&(t="The page no longer has the most current data. Please refresh the page and try again.");i.text=t;i.reload=function(){n();i.closeThisDialog()}}]})}function fi(n){function r(n){return!n||typeof n!="object"?!1:n.name&&n.type&&typeof n.label!="undefined"?!0:!1}var t={name:n.name,fields:[]};for(var i in n)r(n[i])&&t.fields.push(n[i]);return t}function ei(n,t){return{value:n,isHtml:t}}function nr(n){return ei(n,!1)}function at(n){return ei(n,!0)}function ft(n,t){if(n===null)return null;var i=_.find(n,function(n){return n.name===t});return typeof i=="undefined"?null:i}function oi(n,t){if(n!==null&&n.name===k){var r=n.link.split("#")[0],i=t.split("#");t=i.length===1?i[0]:i[1];n.link=r+"#"+t}}function si(n,t){n!==null&&n.name===k&&(n.link=t)}function hi(n,t){var r,i,u;if(n!==null&&t!==null&&n.name===k){if(typeof t.refineResults!="undefined"&&t.refineResults!==null){n.link=t.refineResults;return}if(r=n.link.split("#")[0],t.filterAndListerState===null)return r;i=t.filterAndListerState.split("#");u=i.length===1?i[0]:i[1];n.link=r+"#"+u}}function et(t){angular.forEach(n.current.$$route.keys,function(i){t.link=t.link.replace(":"+i.name,n.current.params[i.name]);t.iframeLink!==null&&(t.iframeLink=t.iframeLink.replace(":"+i.name,n.current.params[i.name]))})}function ci(n){if(b!==null)return null;if(et(n),d(t.path(),n.link))return b=n,n;if(n.sections===null)return null;for(var i=0;i<n.sections.length;i++){if(b!==null)return null;if(et(n.sections[i]),d(t.path(),n.sections[i].link)){b=n.sections[i];break}else if(tt(t.path(),n.sections[i].link))return _.find(n.sections[i].sections,function(n){return(et(n),d(t.path(),n.link))?(b=n,!0):tt(t.path(),n.link)?ci(n):null}),null}return null}function vt(n){return typeof n.iconLink=="undefined"&&(n.iconLink=null),typeof n.materialIconValue=="undefined"&&(n.materialIconValue=null),typeof n.incompatibleValues=="undefined"&&(n.incompatibleValues=null),typeof n.groupName=="undefined"&&(n.groupName=null),typeof n.isEnabled=="undefined"&&(n.isEnabled=!0),typeof n.isHtml=="undefined"&&(n.isHtml=!1),typeof n.description=="undefined"&&(n.description=null),typeof n.label=="undefined"&&(n.label=null),typeof n.type=="undefined"&&(n.type=f.dropdownItemTypes.NORMAL),n}function li(){try{return window.self!==window.top}catch(n){return!0}}function ai(n){if(typeof n!="undefined"){var t=$(n.target).closest(".dropdown-menu-items");if(t.length===1)return;n.preventDefault();n.stopPropagation()}}function p(n){var t,i,r,u,f;if(typeof n!="undefined"){if(t=$(n.target).closest(".dropdown-menu-overlay, .dropdown-menu-close"),nt()===!0&&t.length>0&&(i=t.closest(".dropdown-menu"),i.length===1&&$(i[0]).hasClass("inner-dropdown-menu")===!0)){$(i[0]).css("display","none");return}if(t.length===0){if(r=$(n.target).closest("[data-close-on-inside-click|='false']"),typeof r!="undefined"&&r!==null&&r.length>0)return;if(u=$(n.target).closest("li"),u.length===1&&$(u[0]).hasClass("disabled"))return;if(f=$(n.target).closest(".dropdown-menu"),f.length===1&&(closeOnInsideClickValue=$(f[0]).attr("data-close-on-inside-click"),typeof closeOnInsideClickValue!="undefined"&&closeOnInsideClickValue==="false"))return}}$(".dropdown-menu:not(."+wt+")").css("display","none");$(".auto-complete-menu").css("display","none");$("body").css("overflow","");$("body").unbind("touchmove",ai);e(function(){$(".smart-picklist").trigger("dropdownclosed")})}function bt(){$(window).unbind("click",p);$(window).bind("click",p);nt()===!1&&li()===!1&&($(window).unbind("resize",p),$(window).bind("resize",p),$(window).unbind("scroll",p),$(window).bind("scroll",p),$(ot).unbind("scroll",p),$(ot).bind("scroll",p))}function vi(n,t,i,r,u,f,o){t.find(".dropdown-menu-items").css("max-height","");e(function(){var p=5,g=20,at=10,ht=120,ot=!1,st=!1,nt=null,rt,ut,lt,ct;if(t.css({paddingTop:""}),t.css({paddingBottom:""}),r===!1){var w,tt=$(window).height(),it=$(window).scrollTop(),a=n.offset().top,b=n.outerHeight(),h=t.outerHeight();b=b-parseInt(u);b=b+parseInt(o);tt>=a-it+h+b+g?(w=a+b,ot=!0):a-it-h-p>=0?(w=a-h-p,st=!0):(rt=(a-it-h-p)*-1,ut=(tt-(a-it+b+h+g))*-1,rt<ut&&h-rt>ht?(w=0,nt=h-rt,st=!0):h-ut>ht?(w=a+b,nt=h-ut,ot=!0):(w=0,tt<=h+p+g&&(nt=tt-at-p-g),st=!0,ot=!0));var k=null,d=null,l=$(window).width(),s=$(window).scrollLeft(),e=n.offset().left,v=n.outerWidth(),c=t.outerWidth(),ft=null,et=null;i?l>e-s+c?k=e:0<e-s-c?d=l-e-s-v:(ft=(e-s-c)*-1,et=(l-(e-s+c))*-1,ft<et?d=l-e-s-v:k=e):0<e-s+v-c?d=l-e-s-v:l>e-s+c?k=e-c+v:(ft=(e-s-c)*-1,et=(l-(e-s+c))*-1,ft<et?d=l-e-s-v:k=e)}else{var w,tt=$(window).height(),it=$(window).scrollTop(),a=n.offset().top,b=n.outerHeight(),h=t.outerHeight(),y=10;tt>=a-it+h+g?(w=a,ot=!0):a-it-h-p>=0?(w=a-h-p,st=!0):(rt=(a-it-h-p)*-1,ut=(tt-(a-it+b+h+g))*-1,rt<ut&&h-rt>ht?(w=0,nt=h-rt,st=!0):h-ut>ht?(w=a+b,nt=h-ut,ot=!0):(w=0,tt<=h+p+g&&(nt=tt-at-p-g),st=!0,ot=!0));var k=null,d=null,l=$(window).width(),s=$(window).scrollLeft(),e=n.offset().left,v=n.outerWidth(),c=t.outerWidth(),ft=null,et=null;i?l>e-s+v+c+y?k=e+v+y:0<e-s-c-y?d=l-e-s+y:(ft=(e-s-c)*-1,et=(l-(e-s+v+c))*-1,ft<et?d=l-e-s-y:k=e+v+y):0<e-s-c-y?d=l-e-s+y:l>e-s+v+c+y?k=e+v+y:(ft=(e-s-c)*-1,et=(l-(e-s+v+c))*-1,ft<et?d=l-e-s-y:k=e+v+y)}st===!0&&t.css({paddingTop:p});ot===!0&&t.css({paddingBottom:g-2});nt!==null&&(lt=0,ct=t.find(".search-panel"),ct.length===1&&ct.css("display")!=="none"&&(lt=ct.outerHeight(!0)),t.find(".dropdown-menu-items").css("max-height",nt-lt));t.css({top:w,left:k===null?"auto":k,right:d===null?"auto":d,display:"block"});t.removeClass("out-of-viewport");f!==null&&f.resolve()},50)}function yi(n,t,i,r,u,f){e(function(){vi(n,t,i,r,u,f)},0)}function kt(){$(".popover").remove()}function g(n){return typeof n=="undefined"&&(n={}),typeof n.mobile=="undefined"&&(n.mobile=null),n}function st(){return[{value:.25,name:"25%"},{value:.5,name:"50%"},{value:1,name:"100%"},{value:1.5,name:"150%"},{value:2,name:"200%"},{value:3,name:"300%"},{value:4,name:"400%"}]}function ht(n){var t=colorConvert.hex.lab.raw(n);return{L:t[0],A:t[1],B:t[2]}}function dt(n,t){return DeltaE.getDeltaE00(n,t)}function tr(n,t){n.startsWith("#")||(n="#"+n);n.length===4&&(n="#"+[...n.slice(1)].map(n=>n+n).join(""));const i=parseInt(n.substr(1,2),16),r=parseInt(n.substr(3,2),16),u=parseInt(n.substr(5,2),16);return`rgba(${i}, ${r}, ${u}, ${t})`}function ir(n){var t=ht(n),i=ht("#ffffff"),r=ht("#000000"),u=dt(t,i),f=dt(t,r);return u<f?"0,0,0":"255,255,255"}function pi(n){var t=!1,r,i,u;if(n.items===null)return!1;if(r=_.find(n.items,function(n){return n.isVisible===!0}),typeof r!="undefined")return!0;for(i=0;i<n.items.length;i++)if(u=n.items[0],t=pi(u),t)break;return t}function ni(n){return typeof n.isHtml=="undefined"&&(n.isHtml=!1),typeof n.count=="undefined"&&(n.count=null),typeof n.name=="undefined"&&(n.name=null),typeof n.link=="undefined"&&(n.link=null),typeof n.targetBlank=="undefined"&&(n.targetBlank=null),n}function wi(n,t){n.setHeight=!0;switch(n.type){case f.sectionType.HISTORY:n.history.entries=t.history.entries;t.historySectionActions!==null&&(n.historySectionActions=t.historySectionActions);break;case f.sectionType.FIELDS:n.filters=t.filters;n.fields=t.fields;break;case f.sectionType.LISTER:ct(n,t.lister);break;default:n=t}e(function(n){n.setHeight=!1},0,!0,n)}function ti(n,t){for(var r,u,i=0;i<n.length;i++){for(r=0;r<t.length;r++)for(u=0;u<n[i].sections.length;u++)n[i].sections[u].id===t[r].id&&wi(n[i].sections[u],t[r]);n[i].subColumns!=null&&ti(n[i].subColumns,t)}}function bi(n,t,i){var r,u;n.widthInClc=n.width;n.minWidthInClc=null;n.widthInTlc=null;n.minWidthBasedOnChildrenInTlc=null;n.ratio=null;n.leafCount=null;n.leafWithSectionCount=0;n.parentColumn=i;n.widthInPx=null;n.siblings=t;n.rank=null;r=n.sections.length;n.subColumns!==null?(angular.forEach(n.subColumns,function(t){bi(t,n.subColumns,n)}),u=_.reduce(n.subColumns,function(n,t){return n+t.leafWithSectionCount},0),n.leafWithSectionCount=r+u):n.leafWithSectionCount=r}var lt,k,b,yt,pt,wt,ot,gt;this.SUCCESS_MESSAGE_KEY="ctvt_message";this.formatShortDate=function(n){return it(n,u.localization.shortDatePattern)};this.formatLongDate=function(n){return it(n,u.localization.longDatePattern)};this.formatShortTime=function(n){return it(n,u.localization.shortTimePattern)};this.formatLongTime=function(n){return it(n,u.localization.longTimePattern)};this.formatNumber=function(n){return rt(n,2)};this.formatInteger=function(n){return rt(n,0)};this.formatCurrency=function(n){var t=rt(n,2);return u.localization.currencySymbolAfterNumber==="True"?t+" "+u.localization.currencySymbol:n<0?u.localization.currencySymbol+" "+t:u.localization.currencySymbol+t};this.formatPercent=function(n){return rt(n,2)+"%"};this.formatFileSize=function(n){var t;return t=n<1024?n+" Bytes":n<10240?(n/1024).toFixed(2)+" KB":n<102400?(n/1024).toFixed(1)+" KB":n<1048576?(n/1024).toFixed(0)+" KB":n<10485760?(n/1048576).toFixed(2)+" MB":n<104857600?(n/1048576).toFixed(1)+" MB":n<1073741824?(n/1048576).toFixed(0)+" MB":(n/1073741824).toFixed(2)+" GB",t.replace(".",u.localization.numberDecimalSeparator)};this.parseNumber=function(n){return ii(n)};this.htmlEncode=function(n){return w(n)};this.setAutocompleteAttribute=function(n){ri().isChrome===!0?n.attr("autocomplete","off"):n.attr("autocomplete","new-password")};this.getDomainFromEmail=function(n){var t=n.indexOf("@");return n.substring(t+1).trim()};this.isLaptopOrBiggerDevice=function(){return ki()};this.isMobileDevice=function(){return nt()};this.linkStartsWith=function(n,t){return tt(n,t)};this.linkEquals=function(n,t){return d(n,t)};this.confirmPath=function(i){var r=n.current.$$route.originalPath;(angular.forEach(i,function(n){var t=":"+n.name;n.isOptional===!0&&(t+="?");r=r.replace(t,n.value)}),r!==n.current.$$route.originalPath)&&t.path(r).replace()};this.goToPreviousPage=function(n){if(i.history.length<=2)t.path(n);else{var r=t.path();i.history.back();e(function(){t.path()===r&&t.path(n)},100)}};this.redirect=function(n){var t,r;n.indexOf("https://")===0?i.location.href=n:n.indexOf("http://")===0?i.location.href=n:n.indexOf("/")===0?i.location.href=n:(t=ri(),u.isTestMode===!0?i.location.href="/"+n:t.isEdge||t.isIe?(r=document.getElementsByTagName("base")[0].getAttribute("href"),i.location.href=r+n):i.location.href=n)};this.getAlertObject=function(n,t,i){return{message:{value:n,isHtml:t},type:i}};this.setPathParameterWithoutReload=function(i){var r=c.defer();return angular.forEach(n.routes,function(n){n.reloadOnUrl=!1}),t.path(i),e(function(){angular.forEach(n.routes,function(n){n.reloadOnUrl=!0});r.resolve()}),r.promise};this.setHashParameterWithoutReload=function(i,r){angular.forEach(n.routes,function(n){n.reloadOnUrl=!1;n.reloadOnSearch=!1});var u=t.hash(i);r===!0&&u.replace();e(function(){angular.forEach(n.routes,function(n){n.reloadOnUrl=!0;n.reloadOnSearch=!0})})};this.setQueryParameterWithoutReload=function(i,r){angular.forEach(n.routes,function(n){n.reloadOnSearch=!1});t.search(i,r)};this.getTargetPath=function(){var n,i;if(typeof t.search().target=="undefined"||(n=t.search().target,n.length===0))return null;if(n[0]==="/"){if(i=n.substring(1).trim()[0],i==="/"||i==="\\")throw new Error('Dangerous Target Path: "'+n+'"');}else throw new Error('Dangerous Target Path: "'+n+'"');return n};this.showControlsRelatedWithListerData=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');if(n===null)return!1;if(typeof n.layout=="undefined")throw new Error('"lister.layout" is undefined');if(n.layout!==f.listerLayout.TABLE&&n.layout!==f.listerLayout.TILES_L&&n.layout!==f.listerLayout.TILES_S&&n.layout!==f.listerLayout.CONTENT&&n.layout!==f.listerLayout.WIDE&&n.layout!==f.listerLayout.COMPACT)return!1;if(typeof n.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof t=="undefined")throw new Error('"listerStatus" is undefined');return n.totalRowCount>0&&t===f.listerStatus.DONE};this.showControlsRelatedWithMapData=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');if(n===null)return!1;if(typeof n.layout=="undefined")throw new Error('"lister.layout" is undefined');if(n.layout!==f.listerLayout.MAP)return!1;if(typeof n.map=="undefined")throw new Error('"lister.map" is undefined');if(n.map===null)return!1;if(typeof t=="undefined")throw new Error('"listerStatus" is undefined');return n.map.withCoordinatesCount>0&&t===f.listerStatus.DONE};this.showControlsRelatedWithBarChartData=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');if(n===null)return!1;if(typeof n.layout=="undefined")throw new Error('"lister.layout" is undefined');if(n.layout!==f.listerLayout.BAR_CHART)return!1;if(typeof n.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof n.chart=="undefined")throw new Error('"lister.chart" is undefined');if(typeof t=="undefined")throw new Error('"listerStatus" is undefined');return n.chart!==null?n.chart.xAxis.categories===null?!1:n.chart.xAxis.categories.length===0?!1:t===f.listerStatus.DONE:n.totalRowCount===0?!1:t===f.listerStatus.DONE};this.showControlsRelatedWithTimelineData=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');if(n===null)return!1;if(typeof n.layout=="undefined")throw new Error('"lister.layout" is undefined');if(n.layout!==f.listerLayout.TIMELINE)return!1;if(typeof n.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof n.chart=="undefined")throw new Error('"lister.chart" is undefined');if(typeof t=="undefined")throw new Error('"listerStatus" is undefined');return n.chart!==null?t===f.listerStatus.DONE:n.totalRowCount==0?!1:t===f.listerStatus.DONE};this.anySelectedRows=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');if(n===null)return!1;if(typeof n.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof t=="undefined")throw new Error('"listerStatus" is undefined');return n.totalRowCount>0&&t===f.listerStatus.DONE&&this.selectedRowCount(n.rows)>0};this.getIconClass=function(n){switch(n){case f.iconType.FILE:return"filetype";case f.iconType.LINK:return"filetype filetype-link";case f.iconType.VIDEO:return"filetype filetype-vid";case f.iconType.FOLDER:return"filetype filetype-dir";case f.iconType.CHECKED:return"switch checked";case f.iconType.PDF:return"filetype filetype-pdf";case f.iconType.DOC:return"filetype filetype-doc";case f.iconType.XLS:return"filetype filetype-xls";case f.iconType.PPT:return"filetype filetype-ppt";case f.iconType.STATUS_DANGER:return"condition condition-danger";case f.iconType.STATUS_SUCCESS:return"condition condition-success";case f.iconType.STATUS_INFO:return"condition condition-info";case f.iconType.STATUS_WARNING:return"condition condition-warning";case f.iconType.STATUS_DEFAULT:return"condition condition-default";default:throw"Not Implemented for icon type: "+n;}};this.getSelectedRows=function(n){return _.filter(n,function(n){return n.checked})};this.selectAllRows=function(n){for(var t=0;t<n.length;t++)n[t].checked=!0};this.deselectAllRows=function(n){for(var t=0;t<n.length;t++)n[t].checked=!1};this.selectedRowCount=function(n){return this.getSelectedRows(n).length};this.getBulkOperationDetailsOfSelectedRows=function(n){return getBulkOperationDetailsOfSelectedRows(n,null,null,null)};this.getBulkOperationDetailsOfSelectedRows=function(n,t,i,r,u){var s,e,h,l,v;typeof u=="undefined"&&(u=!1);var o=2,c=[],f=[],a=this.getSelectedRows(n);for(s=0;s<a.length;s++)(e=a[s],h=e.title===""?"[empty]":e.title,u!==!0||f.indexOf(h)===-1)&&(l=e.id,typeof t!="undefined"&&t!==null&&(l=t(e.id)),c.push({id:l,label:h,hasError:!1}),f.push(h));return v=f.length>o&&f.length-o>1?f.slice(0,o).join("\n")+"\n"+(f.length-o)+" more":f.join("\n"),{label:c.length===1?i:r,titles:v,entities:c}};this.getBulkOperationDetailsForSingleRow=function(n,t){var i=[],r=[],u=n.title===""?"[empty]":n.title;return i.push({id:n.id,label:u,hasError:!1}),r.push(u),{label:t,titles:r.join("\n"),entities:i}};this.getEntityIdsOfSelectedRows=function(n){var t=[],i=this.getSelectedRows(n);return $.each(i,function(n,i){t.push(i.id)}),t};this.getEntityTitlesOfSelectedRows=function(n,t){t||(t=!1);var r=2,i=[];return $.each(this.getSelectedRows(n),function(n,r){t?i.indexOf(r.title)===-1&&i.push(r.title):r.title===""?i.push("[empty]"):i.push(r.title)}),i.length>r&&i.length-r>1?i.slice(0,r).join("\n")+("\n"+(i.length-r)+" more"):i.join("\n")};this.getListerState=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');var i={sortBy:null,sortReverse:null,pageSize:null,currentPage:null,layout:null,columns:null};return n!==null&&(typeof n.currentPage!="undefined"&&n.currentPage!=null&&(i.currentPage=n.currentPage),typeof n.sortBy!="undefined"&&n.sortBy!=null&&(i.sortBy=n.sortBy),typeof n.sortReverse!="undefined"&&n.sortReverse!=null&&(i.sortReverse=n.sortReverse),typeof n.pageSize!="undefined"&&n.pageSize!=null&&(i.pageSize=n.pageSize),typeof n.layout!="undefined"&&n.layout!=null&&(i.layout=n.layout),typeof n.columns!="undefined"&&n.columns!=null&&(i.columns=$.map(n.columns,function(n){return n.name}))),$.extend(i,t)};this.setListerCurrentPage=function(n,t){if(typeof n=="undefined")throw new Error('"lister" is undefined');if(typeof t=="undefined")throw new Error('"page" is undefined');if(n===null)throw new Error('"lister" is null');if(typeof n.currentPage=="undefined")throw new Error('"lister.currentPage" is undefined');if(n.currentPage===null)throw new Error('"lister.currentPage" is null');n.currentPage=t};this.getRowById=function(n,t){var i=_.find(n,function(n){return n.id===t});return typeof i=="undefined"?null:i};this.getListerLayoutLabel=function(n){switch(n){case f.listerLayout.TABLE:return"Table Layout";case f.listerLayout.TILES_L:return"Large Tiles Layout";case f.listerLayout.TILES_S:return"Small Tiles Layout";case f.listerLayout.MAP:return"Map Layout";case f.listerLayout.BAR_CHART:return"Bar Chart Layout";case f.listerLayout.TIMELINE:return"Timeline Chart Layout";case f.listerLayout.CONTENT:return"Content Layout";case f.listerLayout.WIDE:return"Wide Layout";case f.listerLayout.COMPACT:return"Compact Layout";default:throw Error("Unknown layout: "+n);}};this.bindLister=function(n,t){ct(n,t)};this.bindSections=function(n,t){angular.forEach(t,function(t){var i=_.find(n,function(n){return n.id===t.id});if(typeof i!="undefined"&&i!==null&&i.type===t.type)switch(i.type){case f.sectionType.FIELDS:case f.sectionType.FILTERED_FIELDS:i.fields=t.fields;break;case f.sectionType.LISTER:case f.sectionType.FILTERED_LISTER:ct(i,t.lister)}})};this.getProcessedSection=function(n){return n===null?null:(ui(n),n)};this.getProcessedSections=function(n){return n===null?null:(angular.forEach(n,function(n){ui(n)}),n)};this.getProcessedSectionsForBulk=function(n){return n===null?null:(angular.forEach(n,function(n){n.fields=_.chain(n.fields).filter(function(n){return n.editEnabled}).map(function(n){return{name:n.name,value:n.value}}).value()}),n)};this.getProcessedFields=function(n){return n===null?null:$.map(n,function(n){return n===null?null:{name:n.name,value:n.value}})};this.valueIsEmptyOrNull=function(n){return n===""||n===null};this.searchTerm="term";this.getSearchTerm=function(){var n=t.search()[this.searchTerm];return typeof n=="undefined"?"":n};lt="ngdialog-theme-default";this.getDialogClassName=function(){return lt};this.getTopOpenedDialogId=function(){var n=o.getOpenDialogs();return n.length===0?null:n[n.length-1]};this.openDialog=function(n,t){return y(n,t)};this.openPdfTemplateEditorDialog=function(n){y({template:"js/shared/common/views/pdfTemplateEditor/pdfTemplateEditorView.html",controller:"PdfTemplateEditorCtrl",data:n})};this.openImageGalleryDialog=function(n,t,i){return y({template:'<div class="modal-dialog modal-image-preview">   <div class="modal-content loading-large" data-ng-class="{\'loading-large\': isLoading === true }">           <div class="modal-header">               <c-dialog-close-button data-pending-action="isProcessing" data-on-click="close()"><\/c-dialog-close-button>               <h4 class="modal-title" data-ng-bind="current.title"><\/h4>           <\/div>           <div class="modal-body" data-ng-if="current !== null">               <div class="modal-image-preview-container"><\/div>               <i data-ng-if="showNextAndPrevious === true" class="preview-pagination-controls preview-pagination-controls-left material_keyboard_arrow_left" data-ng-click="previous()"><\/i>               <i data-ng-if="showNextAndPrevious === true" class="preview-pagination-controls preview-pagination-controls-right material_keyboard_arrow_right" data-ng-click="next()"><\/i>           <\/div>           <div class="modal-footer" data-ng-if="current !== null">               <p class="modal-description" data-ng-bind="current.description"><\/p>               <div class="modal-image-preview-actions">                   <c-actions-button data-actions="current.primaryActions" data-is-primary="true" data-on-action="handleAction(action)"><\/c-actions-button>                    <c-actions-button data-actions="current.secondaryActions"  data-on-action="handleAction(action)"><\/c-actions-button>                <\/div>           <\/div>   <\/div><\/div>',plain:!0,controller:["$scope","$element","$compile","$timeout",function(r,u,f,e){function p(){$(document).bind("keydown",y);i().then(function(n){l(n)})}function c(){r.current=s[o];h=r.current.id;e(function(){var t=$(u.find(".modal-image-preview-container")[0]),n;t.html("");n=$('<img data-c-image-placeholder data-mode="dynamic" data-ng-src="'+r.current.imageUrl+'" data-height="'+r.current.imageHeight+'" data-width="'+r.current.imageWidth+'" alt="pdf-template-image" />');t.append(n);f(n)(r)})}function l(n){if(s=n,h!==null){var t=_.findIndex(s,function(n){return n.id===h});t!==-1&&(o=t)}c();r.showNextAndPrevious=s.length>1;e(function(){r.isLoading=!1})}function a(){o+1>s.length-1?o=0:o+=1;c()}function v(){o===0?o=s.length-1:o-=1;c()}function y(n){switch(n.which){case 37:n.preventDefault();n.stopPropagation();e(function(){v()});break;case 39:n.preventDefault();n.stopPropagation();e(function(){a()})}}var o=0,s=null,h=n;r.isLoading=!0;r.description=null;r.isProcessing=!1;r.current=null;r.showNextAndPrevious=!1;r.$on("$destroy",function(){$(document).unbind("keydown",y)});r.next=function(){a()};r.previous=function(){v()};r.close=function(){r.closeThisDialog()};r.handleAction=function(n){t(n,{id:r.current.id}).then(function(n){typeof n!="undefined"&&n!==null&&(r.isLoading=!0,l(n,null))})};p()}]})};this.getElementScope=function(n,t){var i=angular.element(n).scope();return i[t]};this.openBulkEditDialog_LEGACY=function(n){n.plain=!0;n.template='<div class="modal-dialog" data-ng-class="{\'modal-lg\': bulkOperationError === null }">   <div class="modal-content">      <div class="modal-header">         <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>         <h4 class="modal-title" data-ng-bind="title"><\/h4>       <\/div>       <div data-ng-class="{\'loading-large\': isLoading }">           <div data-ng-show="bulkOperationError === null">               <div class="modal-body">                   '+n.template+'               <\/div>               <div class="modal-footer text-right">                   <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>                   <button data-c-submit-button data-pending-action="isProcessing" data-loader-text="Save" data-form="form">Save<\/button>               <\/div>           <\/div>           <div data-c-bulk-operation-error data-ng-if="bulkOperationError !== null" data-pending-action="isProcessing" data-error="bulkOperationError" data-on-action="handleAction(action)"><\/div>       <\/div>   <\/div><\/div>';y(n)};this.openBulkEditErrorDialog=function(n){var t=["$scope"];typeof n.dependencies!="undefined"&&n.dependencies!==null&&(t=t.concat(n.dependencies));t.push(function(t){function u(){var r=n.onAction.apply(null,["continue",n.bulkOperationResult].concat(i));r.then(function(n){t.isProcessing=!1;n.success?(t.closeThisDialog(),h.showSuccessMessage()):h.hideMessage()},function(){})}function f(){n.onAction.apply(null,["change-selection",n.bulkOperationResult].concat(i))}function e(t,r){return n.onAction.apply(null,[t,r].concat(i))}var i=[],r;if(arguments.length>1)for(r=1;r<arguments.length;r++)i.push(arguments[r]);t.title=n.title;t.description=typeof n.description=="undefined"?null:n.description;t.form=null;t.isLoading=!0;t.isProcessing=!1;t.bulkOperationResult=n.bulkOperationResult;t.handleAction=function(n,i){switch(n){case"change-selection":t.closeThisDialog();f();break;case"continue":t.isProcessing=!0;u();break;default:return e(n,i)}}});y({template:'<div class="modal-dialog">   <div class="modal-content">      <div class="modal-header">         <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>         <h4 class="modal-title" data-ng-bind="title"><\/h4>       <\/div>       <div>           <div data-c-bulk-operation-result data-ng-if="bulkOperationResult !== null" data-pending-action="isProcessing" data-result="bulkOperationResult" data-on-action="handleAction(action)">               '+n.confirmationDataTemplate+"           <\/div>       <\/div>   <\/div><\/div>",plain:!0,controller:t})};this.openConfirmationDialog=function(n,t,i,r,u,f){var o=!1;y({preCloseCallback:function(){o===!1&&typeof f!="undefined"&&f!==null&&e(function(){f()});typeof closeCallback!="undefined"&&closeCallback!==null&&e(function(){closeCallback()})},template:'<c-dialog-layout>   <attr-header>       <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title">'+w(n)+'<\/h4>   <\/attr-header>   <attr-content>       <attr-tabs>           <div data-c-tabs data-tabs="tabs" data-on-action="tabAction(action, data)"><\/div>       <\/attr-tabs>       <attr-view data-ng-if="canConfirm()" data-ng-class="{\'loading-large\': isTabLoading === true }">           <attr-body class="c-i">               '+t+'           <\/attr-body>           <attr-footer>               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-on-submit="confirm(form)" data-loader-text="Deleting">'+w(i)+'<\/button>           <\/attr-footer>       <\/attr-view>       <attr-view data-ng-if="canConfirm() === false" data-ng-class="{\'loading-large\': isTabLoading === true }">           <attr-body class="c-i">               '+t+"           <\/attr-body>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>",plain:!0,controller:["$scope",function(f){f.description=null;f.alerts=null;f.title=n;f.message=t;f.buttonLabel=i;f.isProcessing=!1;f.canConfirm=function(){return r===!0};f.confirm=function(){u();o=!0;f.closeThisDialog()}}]})};this.openNoSelectedGroupsConfirmationDialog=function(n,t,i,r){var f=!1,u,o;if(n===null){i();return}if(n.isRequired===!0){i();return}if(n.value!==null&&n.value.length>0){i();return}if(n.listItems!==null&&n.listItems.length===0){i();return}u="User";t===!0&&(u="Users");o="All Users need Group permissions to access Channeltivity. You have not selected any Manual Groups, but the selected "+u+" may be covered by automatic Smart Group assignments. Are you sure?";y({preCloseCallback:function(){f===!1&&typeof r!="undefined"&&r!==null&&e(function(){r()})},template:'<c-dialog-layout>   <attr-header>       <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title">Save without adding Groups?<\/h4>   <\/attr-header>   <attr-content>       <attr-view>           <attr-body>               '+o+'           <\/attr-body>           <attr-footer>               <button data-c-submit-button data-is-primary="false" data-pending-action="isProcessing" data-on-submit="confirm(form)" data-loader-text="Deleting">Proceed without adding Groups<\/button>               <button type="button" class="btn btn-primary" data-ng-click="closeThisDialog()">Return and add Groups<\/button>           <\/attr-footer>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:["$scope",function(n){n.isProcessing=!1;n.confirm=function(){i();f=!0;n.closeThisDialog()}}]})};this.openInformationMessageDialog=function(n,t,i){var r=["$scope"];r.push(function(i){i.alerts=null;i.pendingAction=!1;i.title=n;typeof t=="string"&&(t=at(t));i.infoMessage=t.isHtml===!0?t.value:w(t.value)});y({template:'<c-dialog-layout>   <attr-header>       <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title" data-ng-bind="title"><\/h4>   <\/attr-header>   <attr-content>       <attr-view>           <attr-body>               <div class="c-i" data-ng-bind-html="infoMessage"><\/div>           <\/attr-body>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:r,preCloseCallback:function(){typeof i!="undefined"&&i!==null&&e(function(){i()})}})};this.openWarningMessageDialog=function(n,t,i){var r=this;r.openAlertDialog(n,t,i,f.alertType.WARNING)};this.openAlertDialog=function(n,t,i,r){var f=this,u=["$scope"];u.push(function(i){i.alerts=null;i.pendingAction=!1;i.title=n;typeof t=="string"&&(t=at(t));i.alerts=[f.getAlertObject(t.value,t.isHtml===!0,r)]});y({template:'<c-dialog-layout>   <attr-header>       <c-dialog-close-button data-pending-action="pendingAction" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title" data-ng-bind="title"><\/h4>   <\/attr-header>   <attr-content>       <attr-alerts data-ng-if="alerts !== null">           <div data-c-alert-viewer data-alerts="alerts"><\/div>       <\/attr-alerts>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:u,preCloseCallback:function(){typeof i!="undefined"&&i!==null&&e(function(){i()})}})};this.openEditDialog=function(n){function i(){return typeof n.isLarge=="undefined"||n.isLarge===!0?'is-large="true"':""}typeof n.submitButton=="undefined"&&(n.submitButton={label:"Save",processingMessage:"Saving",successMessage:"Saved"});var t=["$scope"];typeof n.dependencies!="undefined"&&n.dependencies!==null&&(t=t.concat(n.dependencies));t.push(function(t){function f(){var r=n.onAction.apply(null,["load",null,t].concat(i));return r.then(function(n){n!==null&&(typeof n.description=="string"&&(t.description=n.description),typeof n.alerts!="undefined"&&(t.alerts=n.alerts));t.isLoading=!1}),r}function e(r){h.showProcessingMessage(n.submitButton.processingMessage+"...");var u=n.onAction.apply(null,["save",r,t].concat(i));return u.then(function(){t.closeThisDialog();t.isProcessing=!1;h.showSuccessMessage(n.submitButton.successMessage+"!")}),u}function o(r,u){return n.onAction.apply(null,[r,u,t].concat(i))}var i=[],r,u;if(arguments.length>1)for(r=1;r<arguments.length;r++)i.push(arguments[r]);t.id=n.id;t.title=null;t.description=null;t.alerts=null;t.form=null;t.isLoading=!0;t.isProcessing=!1;u=!1;typeof n.doAutoLoad!="undefined"&&n.doAutoLoad===!0&&(u=!0);t.handleAction=function(n,t){switch(n){case"load":return f();case"save":return e(t);default:return o(n,t)}};u===!0&&f()});y({template:"<c-dialog-layout "+i()+'>   <attr-header>       <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title">'+w(n.title)+'<\/h4>   <\/attr-header>   <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading === true }">       <attr-description data-ng-if="description !== null">           <div class="c-i" data-ng-bind-html="description"><\/div>       <\/attr-description>       <attr-alerts data-ng-if="alerts !== null">           <div data-c-alert-viewer data-alerts="alerts"><\/div>       <\/attr-alerts>       <attr-view>           <attr-body>               '+n.template+'           <\/attr-body>           <attr-footer>               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-loader-text="'+n.submitButton.processingMessage+'" data-form="form">'+n.submitButton.label+"<\/button>           <\/attr-footer>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>",plain:!0,controller:t})};this.editComponent=function(n,t){if(a.isComponentPanelAvailable()===!0)return a.editComponent(n,t);this.openEditDialog(n)};this.openAddWidgetDialog=function(n){var i=this,t=["$scope"];typeof n.dependencies!="undefined"&&n.dependencies!==null&&(t=t.concat(n.dependencies));t.push(function(t){function e(n,t){angular.forEach(n,function(n){n.isActive=!1});t.isActive=!0}function o(){var i=n.onAction.apply(null,["load-new",null].concat(r));return i.then(function(n){t.description=n.description;t.isLoading=!1}),i}function s(i){h.showProcessingMessage();var u=n.onAction.apply(null,["save-new",i].concat(r));return u.then(function(){t.closeThisDialog();t.isProcessing=!1;h.showSuccessMessage()}),u}function c(t,i){return n.onAction.apply(null,[t,i].concat(r))}var r=[],f,u;if(arguments.length>1)for(f=1;f<arguments.length;f++)r.push(arguments[f]);u=!1;typeof n.allowDuplicating=="undefined"&&(n.allowDuplicating=!0);t.allowDuplicating=n.allowDuplicating;t.id=n.id;t.title=null;t.description=null;t.formNew=null;t.formExisting=null;t.isLoading=!0;t.isTabLoading=!1;t.isProcessing=!1;t.existingSection=null;t.tabs=[ni({id:"add_widget_create_new",label:"Create New",isActive:!0,name:"create-new"}),ni({id:"add_widget_choose_existing",label:"Choose Existing",isActive:!1,name:"choose-existing"})];t.showNewTab=function(){return u===!1||t.allowDuplicating===!1};t.showExistingTab=function(){return u===!0};t.tabAction=function(i,f){switch(i){case"create-new":e(t.tabs,f.tab);t.isLoading=!1;u=!1;break;case"choose-existing":if(e(t.tabs,f.tab),u=!0,t.existingSection===null){t.isTabLoading=!0;var o=n.onAction.apply(null,["load-existing",null].concat(r));o.then(function(n){t.existingSection=n;t.isTabLoading=!1})}break;default:throw"Unknown tab action "+i;}};t.handleAction=function(n,t){switch(n){case"load":return o();case"save":return s(t);default:return c(n,t)}};t.saveExisting=function(u){u.submit(function(){h.showProcessingMessage();var u=i.prepareSectionsForAjax([],t.existingSection),f={sections:u},e=n.onAction.apply(null,["save-existing",f].concat(r));e.then(function(){t.closeThisDialog();t.isProcessing=!1;h.showSuccessMessage()})})}});y({template:'<c-dialog-layout is-large="true">   <attr-header>       <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title">'+w(n.title)+'<\/h4>   <\/attr-header>   <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading === true }">       <attr-tabs data-ng-if="allowDuplicating === true">           <div data-c-tabs data-tabs="tabs" data-on-action="tabAction(action, data)"><\/div>       <\/attr-tabs>       <attr-view data-ng-if="showNewTab()" data-ng-class="{\'loading-large\': isTabLoading === true }">           <attr-body>               '+n.template+'           <\/attr-body>           <attr-footer>               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-form="formNew">Save<\/button>           <\/attr-footer>       <\/attr-view>       <attr-view data-ng-if="showExistingTab()" data-ng-class="{\'loading-large\': isTabLoading === true }">           <attr-body>               <form data-c-form class="form-horizontal" name="formExisting" novalidate data-ng-submit="saveExisting(formExisting)" data-pending-action="pendingAction">                   <div class="form-section-title">                       <h3><\/h3>                   <\/div>                   <div class="form-section">                       <div data-ng-if="existingSection !== null" class="form-section-content">                           <div data data-c-form-field data-field="existingSection.widget" data-form="formExisting"><\/div>                       <\/div>                       <div data-ng-if="existingSection === null" class="alert alert-info">                           <i class="icon-size-18 material_info"><\/i>                           <p>No existing widgets.<\/p>                       <\/div>                   <\/div>               <\/form>           <\/attr-body>           <attr-footer data-ng-if="existingSection !== null">               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-form="formExisting">Save<\/button>           <\/attr-footer>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:t})};this.openDeleteDialog=function(n){var i=this,t=["$scope"];typeof n.dependencies!="undefined"&&n.dependencies!==null&&(t=t.concat(n.dependencies));typeof n.template=="undefined"&&(n.template='<form data-c-form name="form" novalidate data-ng-submit="delete(form)" data-pending-action="pendingAction" class="form-horizontal">   <div class="c-i message-content" data-ng-bind-html="message"><\/div>   <div style="margin-top: 10px;">       <div data-c-input-field-checkbox-group data-field="confirmationField" data-form="form"><\/div>   <\/div><\/form>');t.push(function(t){function o(){var r=n.onAction.apply(null,["load",null,t].concat(u));return r.then(function(n){typeof n.description!="undefined"&&(t.description=n.description);typeof n.alerts!="undefined"&&(t.alerts=n.alerts);typeof n.message!="undefined"&&(t.message=n.message);typeof n.mode!="undefined"&&(t.mode=n.mode,t.mode===f.deleteDialogMode.DELETE_FORBIDDEN&&(t.title="Unable to "+t.title));t.isLoading=!1},i.handleError({operationFailed:function(n){t.canDelete=!1;typeof n.data.alerts!="undefined"&&(t.alerts=n.data.alerts);t.isLoading=!1}})),r}function e(){h.showProcessingMessage("Deleting...");t.isProcessing=!0;var r=n.onAction.apply(null,["delete",null,t].concat(u));return r.then(function(){t.closeThisDialog();t.isProcessing=!1;h.showSuccessMessage("Deleted!")},i.handleError({operationFailed:function(n){t.canDelete=!1;t.isProcessing=!1;typeof n.data.alerts!="undefined"&&(t.alerts=n.data.alerts)}})),r}var u=[],r;if(arguments.length>1)for(r=1;r<arguments.length;r++)u.push(arguments[r]);t.title=w(n.title);t.form=null;t.description=null;t.alerts=null;t.isLoading=!0;t.isProcessing=!1;t.mode=f.deleteDialogMode.DELETE_WITHOUT_CONFIRMATION;t.confirmationField=i.getField({label:"I wish to proceed",name:"confirm",type:f.fieldType.CHECKBOX_GROUP,value:"false",isRequired:!0});t.deleteWithoutConfirmation=function(){return t.mode===f.deleteDialogMode.DELETE_WITHOUT_CONFIRMATION};t.deleteWithConfirmation=function(){return t.mode===f.deleteDialogMode.DELETE_WITH_CONFIRMATION};t.deleteForbidden=function(){return t.mode===f.deleteDialogMode.DELETE_FORBIDDEN};t.message=null;t.delete=function(n){n!==null?n.submit(function(){e()}):e()};o()});y({template:'<c-dialog-layout>   <attr-header>       <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title" data-ng-bind-html="title"><\/h4>   <\/attr-header>   <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading === true }">       <attr-description data-ng-if="description !== null">           <div data-ng-bind-html="description"><\/div>       <\/attr-description>       <attr-alerts data-ng-if="alerts !== null">           <div data-c-alert-viewer data-alerts="alerts"><\/div>       <\/attr-alerts>       <attr-view data-ng-if="deleteWithoutConfirmation()">           <attr-body>               <div class="c-i message-content" data-ng-bind-html="message"><\/div>           <\/attr-body>           <attr-footer>               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-on-submit="delete(form)" data-loader-text="Deleting">Delete<\/button>           <\/attr-footer>       <\/attr-view>       <attr-view data-ng-if="deleteWithConfirmation()">           <attr-body>               '+n.template+'           <\/attr-body>           <attr-footer>               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-on-submit="delete(form)" data-loader-text="Deleting">Delete<\/button>           <\/attr-footer>       <\/attr-view>       <attr-view data-ng-if="deleteForbidden()">           <attr-body>               <div class="c-i message-content" data-ng-bind-html="message"><\/div>           <\/attr-body>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:t})};this.openBulkEditDialog=function(n){var i=null,r=this,t=["$scope"];typeof n.dependencies!="undefined"&&n.dependencies!==null&&(t=t.concat(n.dependencies));t.push(function(t){function s(){var i=n.onAction.apply(null,["load",null].concat(u));return i.then(function(){t.description=typeof n.description=="undefined"?null:n.description;t.isLoading=!1},r.handleError({operationFailed:function(){t.isError=!0;t.isLoading=!1}})),i}function o(i){i.entities=n.selectedEntityDetails.entities;var r=n.onAction.apply(null,["save",i].concat(u));return r.then(function(i){t.isProcessing=!1;i.success?(t.closeThisDialog(),h.showSuccessMessage()):(t.bulkOperationResult=i,t.description=null,n.selectedEntityDetails.entities=i.entities,h.hideMessage())},function(){}),r}function c(t,i){return n.onAction.apply(null,[t,i].concat(u))}var u=[],e;if(arguments.length>1)for(e=1;e<arguments.length;e++)u.push(arguments[e]);t.form=null;t.description=null;t.alerts=null;t.isLoading=!0;t.isProcessing=!1;t.isError=!1;t.bulkOperationResult=null;t.selectedEntitiesField=r.getField({label:n.selectedEntityDetails.label,type:f.fieldType.READ_ONLY,value:n.selectedEntityDetails.titles});t.handleAction=function(n,r){switch(n){case"load":return s();case"save":return i=$.extend(!0,{},r),o(r);case"change-selection":t.closeThisDialog();break;case"continue":return t.isProcessing=!0,o(i);default:return c(n,r)}}});y({template:'<c-dialog-layout>   <attr-header>       <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>       <h4 class="modal-title">'+n.title+'<\/h4>   <\/attr-header>   <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading === true }">       <attr-description data-ng-if="description !== null">           <div data-ng-bind-html="description"><\/div>       <\/attr-description>       <attr-alerts data-ng-if="alerts !== null">           <div data-c-alert-viewer data-alerts="alerts"><\/div>       <\/attr-alerts>       <attr-view data-ng-if="bulkOperationResult === null">           <attr-body>               <form name="form1" novalidate class="form-horizontal">                   <div data-ng-if="selectedEntitiesField !== null" data-c-form-field data-field="selectedEntitiesField" data-form="form"><\/div>               <\/form>               '+n.bodyTemplate+'           <\/attr-body>           <attr-footer data-ng-if="isError === false">               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-loader-text="Save" data-form="form">Save<\/button>           <\/attr-footer>       <\/attr-view>       <attr-view data-ng-if="bulkOperationResult != null">           <attr-body>               <div data-c-bulk-operation-result-body data-result="bulkOperationResult">                   '+n.confirmationDataTemplate+'               <\/div>           <\/attr-body>           <attr-footer>               <div data-c-bulk-operation-result-footer data-pending-action="isProcessing" data-result="bulkOperationResult" data-on-action="handleAction(action)"><\/div>           <\/attr-footer>       <\/attr-view>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:t})};this.openBulkDeleteDialog=function(n){var i=this,r,t;typeof n.title=="undefined"&&(r=n.selectedEntityDetails.entities.length,n.title=r>1?"Delete "+r+" "+n.selectedEntityDetails.label:"Delete "+n.selectedEntityDetails.label);t=["$scope"];typeof n.dependencies!="undefined"&&n.dependencies!==null&&(t=t.concat(n.dependencies));t.push(function(t){function o(){var u=n.onAction.apply(null,["load",null,t].concat(r));return u.then(function(n){typeof n.description!="undefined"&&n.description!==null&&(t.description=n.description);typeof n.alerts!="undefined"&&n.alerts!==null&&(t.alerts=n.alerts);t.isLoading=!1},i.handleError({operationFailed:function(){}})),u}function e(){h.showProcessingMessage("Deleting...");t.isProcessing=!0;var f={entities:n.selectedEntityDetails.entities},u=n.onAction.apply(null,["save",f,t].concat(r));return u.then(function(i){t.isProcessing=!1;i.success?(t.closeThisDialog(),h.showSuccessMessage("Deleted!")):(t.bulkOperationResult=i,n.selectedEntityDetails.entities=i.entities,h.hideMessage())},i.handleError({operationFailed:function(){}})),u}function s(i,u){return n.onAction.apply(null,[i,u,t].concat(r))}var r=[],u;if(arguments.length>1)for(u=1;u<arguments.length;u++)r.push(arguments[u]);t.form=null;t.description=null;t.alerts=null;t.isLoading=!0;t.isProcessing=!1;t.bulkOperationResult=null;typeof n.description!="undefined"&&(t.description=n.description);t.selectedEntitiesField=i.getField({label:n.selectedEntityDetails.label,type:f.fieldType.READ_ONLY,value:n.selectedEntityDetails.titles});t.confirmationField=i.getField({label:"I wish to proceed",name:"confirm",type:f.fieldType.CHECKBOX_GROUP,value:"false",isRequired:!0});t.delete=function(n){n.submit(function(){e()})};t.handleAction=function(n,i){switch(n){case"change-selection":t.closeThisDialog();break;case"continue":return t.isProcessing=!0,e();default:return s(n,i)}};o()});y({template:'<c-dialog-layout>   <attr-header>      <c-dialog-close-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-close-button>      <h4 class="modal-title">'+w(n.title)+'<\/h4>   <\/attr-header>   <attr-content class="loading-large" data-ng-class="{\'loading-large\': isLoading }">       <attr-description data-ng-if="bulkOperationResult === null && description !== null">           <div data-ng-bind-html="description"><\/div>       <\/attr-description>       <attr-alerts data-ng-if="alerts !== null">           <div data-c-alert-viewer data-alerts="alerts"><\/div>       <\/attr-alerts>       <attr-view data-ng-if="bulkOperationResult === null">           <attr-body>               <form data-c-form name="form" novalidate data-ng-submit="delete(form)" data-pending-action="pendingAction" class="form-horizontal">                   <div data-c-form-field data-field="selectedEntitiesField"><\/div>                   <div data-c-form-field data-field="confirmationField" data-form="form"><\/div>               <\/form>           <\/attr-body>           <attr-footer>               <c-dialog-cancel-button data-pending-action="isProcessing" data-on-click="closeThisDialog()"><\/c-dialog-cancel-button>               <button data-c-submit-button data-pending-action="isProcessing" data-loader-text="Deleting" data-form="form">Delete<\/button>           <\/attr-footer>       <\/attr-view>       <attr-view data-ng-if="bulkOperationResult != null">           <attr-body>               <div data-c-bulk-operation-result-body data-result="bulkOperationResult">                   '+n.confirmationDataTemplate+'               <\/div>           <\/attr-body>           <attr-footer>               <div data-c-bulk-operation-result-footer data-pending-action="isProcessing" data-result="bulkOperationResult" data-on-action="handleAction(action)"><\/div>           <\/attr-footer>   <\/attr-content><\/c-dialog-layout>',plain:!0,controller:t})};this.resolveLoadDialog=function(n){var t=c.defer();return e(function(){t.resolve(di(n))},100),t.promise};this.openProcessingDialog=function(n,t,i){var r={stop:null,close:null,setTitle:null,setMessage:null},u=!0;return typeof i=="undefined"&&(i=0),y({preCloseCallback:function(){return u===!1},template:"js/shared/common/views/progressBarDialog/progressBarDialogView.html",controller:["$scope",function(f){f.title=n;f.message=t;f.progress=null;f.pendingAction=u;var o=c.defer(),s=c.defer(),h=c.defer();e(function(){o.resolve()},i);f.$on("$destroy",function(){});f.closeDialog=function(){f.closeThisDialog()};r.stop=function(){c.all([s.promise,o.promise]).then(function(){f.pendingAction=!1;u=!1;f.isLoading=!1});s.resolve()};r.close=function(){c.all([h.promise,o.promise]).then(function(){u=!1;f.closeThisDialog()});h.resolve()};r.setTitle=function(n){f.title=n};r.setMessage=function(n){f.message=n}}]}),r};this.openProcessingDialogCustomPage=function(n,t){var i=this.openProcessingDialog("One moment...","We're still saving your previous change",2e3);t.$watch(function(){return n()},function(n,t){n!==t&&n===!1&&i.close()},!0)};this.getProgressBar=function(n){function i(n,i,r,u,o){var l=c.defer(),s=!1;return typeof o=="undefined"&&(o=!0),y({preCloseCallback:function(){typeof u!="undefined"&&u!==null&&e(function(){u(s)})},template:"js/shared/common/views/progressBarDialog/progressBarDialogView.html",controller:["$scope","helpService",function(u,e){function v(){h.createClientCallback(f.signalRMessageType.PROGRESS_BAR,t,function(n){u.$apply(function(){if(n.title!==null&&(u.title=n.title.isHtml?n.title.value:e.toTrustedHtml(w(n.title.value))),n.message!==null&&(u.message=n.message.isHtml?n.message.value:e.toTrustedHtml(w(n.message.value))),n.progress===0?(u.progress=null,a=n.progress):n.progress>a&&(u.progress=n.progress+" %",a=n.progress),n.isCompleted===!0){s=!0;var i=r(),t=c.defer();o===!0?setTimeout(function(){t.resolve()},1500):(n.message===null&&(u.message=null),t.resolve());c.all([i,t.promise]).then(function(){u.pendingAction=!1;o===!0&&u.closeThisDialog()})}})},function(n){var t=e.defer();t.promise.then(function(){},e.handleError({operationFailed:function(n){u.$apply(function(){h.hideMessage();u.pendingAction=!1;typeof n.data=="string"?u.message=n.data:(u.title=n.data.title,u.message=n.data.message)})}}));t.reject(n)}).then(function(){l.resolve()})}u.title=n;u.message=i;u.progress=null;u.pendingAction=!0;var a=0;u.$on("$destroy",function(){h.removeClientCallback(f.signalRMessageType.PROGRESS_BAR,t)});u.getIconClassName=function(){return s===!0?"material_check_circle icon-success":"material_error icon-danger"};u.getAdditionalMessageClassName=function(){return u.pendingAction===!1&&s===!1?"has-error":""};v()}]}),l.promise}var r=this,t=n+"-"+gi();return{clientCallbackKey:t,openProgressBarDialog:i}};this.openExpiredDataDialog=function(n,t){ut(n,t)};this.openEmailDetailsDialog=function(n,t,i){var r=this;this.openDialog({closeByEscape:!0,template:"js/shared/common/views/email/emailDetailsView.html",controller:["$scope",function(u){function e(){t.apply(this,i).then(function(n){var e,i,t;if(typeof n.sender!="undefined"&&n.sender!==null&&(u.sender=r.getField({label:"Sender",type:f.fieldType.READ_ONLY,value:n.sender})),typeof n.subject!="undefined"&&n.subject!==null&&(u.subject=r.getField({label:"Subject",type:f.fieldType.READ_ONLY,value:n.subject})),typeof n.recipient!="undefined"&&n.recipient!==null&&(u.recipient=r.getField({label:"Recipient(s)",type:f.fieldType.READ_ONLY,value:n.recipient})),typeof n.replyTo!="undefined"&&n.replyTo!==null&&(u.replyTo=r.getField({label:"Reply To",type:f.fieldType.READ_ONLY,value:n.replyTo})),typeof n.body!="undefined"&&n.body!==null&&(u.body=n.body),typeof n.attachments!="undefined"&&n.attachments!==null){for(e="",i=0;i<n.attachments.length;i++)t=n.attachments[i],e+=t.fileIcon!==null?'<div><span><span class="'+r.getIconClass(t.fileIcon)+'"><\/span>'+t.fileName+"<\/span><\/div>":"<div><span><span><\/span>"+t.fileName+"<\/span><\/div>";u.attachments=r.getField({label:"Attachment(s)",type:f.fieldType.READ_ONLY_HTML,value:e})}u.isLoading=!1})}u.isLoading=!0;u.title=n;u.sender=null;u.subject=null;u.recipient=null;u.replyTo=null;u.body=null;u.attachments=null;e()}]})};this.openMobileFiltersDialog=function(n,t,i){y({template:"js/shared/common/views/filtersMobileDialog/filtersMobileDialog.html",controller:["$scope",function(r){r.form=null;r.pendingAction=!1;r.filters=n;r.additionalFilters=t;r.search=function(){i(r.additionalFilters);r.closeThisDialog()}}]})};this.openNoPermissionsDialog=function(n,t,i){var r=!1;this.openDialog({preCloseCallback:function(){r!==!0&&typeof i!="undefined"&&i!==null&&e(function(){i()})},template:"js/shared/common/views/noPermissionsDialog/confirmNoPermissionsView.html",controller:["$scope",function(i){i.subjectLabel=n;i.pendingAction=!1;i.confirm=function(){t();r=!0;i.closeThisDialog()};i.cancel=function(){r=!1;i.closeThisDialog()}}]})};this.copyHtmlElementAttributes=function(n,t){var i,r,u;if(n.length!==1)throw new Error("Copy Attributes failed, source element is undefined");if(t.length!==1)throw new Error("Copy Attributes failed, target element is undefined");for(i=0;i<n[0].attributes.length;i++)r=n[0].attributes[i].name,u=n[0].attributes[i].value,t.attr(r,u)};this.prepareSectionForAjax=function(n){return fi(n)};this.prepareSectionsForAjax=function(n,t){var i=n||[],r;return $.isArray(i)?!t||typeof t!="object"?i:(r=fi(t),i.push(r),i):i};this.getPlainString=function(n){return nr(n)};this.getHtmlString=function(n){return at(n)};this.truncateText=function(n,t,i){var u,f,r;if(!n||typeof n!="string")throw"'text' has to be specified.";return u=isNaN(parseInt(i))?100:parseInt(i),f=t?!0:!1,r=n.substr(0,u),r.length<n.length&&f&&(r+="..."),r};k="refine-results";this.bindActions=function(n){if(typeof n=="undefined")throw new Error('"actions" is undefined');return Object.prototype.toString.call(n)==="[object Object]"?[n]:n};this.validateActions=function(n){if(typeof n=="undefined")throw new Error('"actions" is undefined');if(Object.prototype.toString.call(n)!=="[object Array]")throw new Error('"actions" is not Array');if(n.length===0)throw new Error('"actions" is empty Array');};this.getAction=function(n,t){return ft(n,t)};this.updateRefineResultsActionLink=function(n,t){oi(n,t)};this.updateRefineResultsActionLinkForMobile=function(n,t){var i=ft(n,k);oi(i,t)};this.updateRefineResultsActionLink_NEW=function(n,t){si(n,t)};this.updateRefineResultsActionLinkForMobile_NEW=function(n,t){var i=ft(n,k);si(i,t)};this.bindRefineResultsActionLink=function(n,t){hi(n,t)};this.bindRefineResultsActionLinkForMobile=function(n,t){var i=ft(n,k);hi(i,t)};b=null;this.replaceLinkHolders=function(n){et(n)};this.getCurrentSection=function(n){var r,i;return(b=null,r=_.find(n,function(n){return tt(t.path(),n.link)}),typeof r=="undefined"||r===null)?null:d(t.path(),r.link)?r:(i=_.find(r.sections,function(n){return d(t.path(),n.link)}),typeof i=="undefined"||i===null?(i=_.find(r.sections,function(n){return tt(t.path(),n.link)}),typeof i=="undefined"||i===null)?null:(angular.forEach(i.sections,function(n){ci(n)}),typeof b=="undefined"||b===null)?null:b:i)};yt="0";this.pleaseSelectListItemValue=yt;this.getPleaseSelectListItem=function(){return vt({value:yt,text:"Please Select"})};this.getUiStringValue=function(n){if(n===null)return"";if(n.isHtml===!0)return n.value;var t=$(document.createElement("div"));return t.text(n.value),t.html()};this.getField=function(n){return typeof n.label=="string"&&(n.label={value:n.label,isHtml:!1}),typeof n.description=="undefined"?n.description=null:typeof n.description=="string"&&(n.description={value:n.description,isHtml:!1}),typeof n.descriptionLinkLabel=="undefined"&&(n.descriptionLinkLabel=null),typeof n.inlineHelp=="undefined"&&(n.inlineHelp=null),typeof n.isRequired=="undefined"&&(n.isRequired=!1),typeof n.validator=="undefined"&&(n.validator=null),typeof n.validatorName=="undefined"&&(n.validatorName=null),typeof n.placeholders=="undefined"&&(n.placeholders=null),typeof n.isEnabled=="undefined"&&(n.isEnabled=!0),typeof n.prefix=="undefined"&&(n.prefix=null),typeof n.suffix=="undefined"&&(n.suffix=null),typeof n.layout=="undefined"&&(n.layout=f.fieldLayout.STANDARD),typeof n.listItems!="undefined"&&n.listItems!==null&&angular.forEach(n.listItems,function(t,i){n.listItems[i]=vt(t)}),typeof n.translate=="undefined"&&(n.translate=!1),typeof n.checkboxIsToggle=="undefined"&&(n.checkboxIsToggle=!1),n};this.getUniqueName=function(n,t){for(var r=1,i=n;typeof t[i]!="undefined";)i=n+"_"+r,r++;return i};this.getListItem=function(n){return vt(n)};this.inIframe=function(){return li()};pt="masonry-item";this.masonryItemDefinitionClassName=pt;this.initializeMasonry=function(n,t){function r(n){var i=n.element.parent().width(),t=Math.floor(i/n.minWidth);return t===0?1:t}function f(n){for(var r,u=n[0],i=null,t=0;t<n.length;t++)r=n[t].height(),(i==null||i>r)&&(i=r,u=n[t]);return u}function u(n){var t="masonry-column";n.columns=[];e(function(){for(var s,e,o,u,h,i=0;i<n.items.length;i++)u=$(n.items[i]),u.detach().appendTo(n.element),u.css("display","none");for(n.element.find("."+t).remove(),s=r(n),i=0;i<s;i++)e=$(document.createElement("div")),e.addClass(t),e.css("width","100%"),o=$(document.createElement("div")),e.append(o),n.element.append(e),n.columns.push(o);for(i=0;i<n.items.length;i++)u=$(n.items[i]),h=f(n.columns),u.detach().appendTo(h),u.css("display","flex")})}function i(n){var t=n.data.options;t.redrawTimeout!==null&&clearTimeout(t.redrawTimeout);t.redrawTimeout=setTimeout(function(){var n=r(t);n!=t.columns.length&&u(t)},0)}function o(){$(window).unbind("resize",i);$(t.element).off("resized-window",i)}typeof t=="undefined"&&(t={});t.element=n;t.redrawTimeout=null;typeof t.minWidth=="undefined"&&(t.minWidth=575);t.element.addClass("masonry");t.element.css("display","flex");t.items=t.element.find("."+pt);u(t);$(window).bind("resize",{options:t},i);$(t.element).on("resized-window",{options:t},i);return{destroy:o}};wt="walkthrough-highlighted-menu";this.walkthroughHighlightedMenuClassName=wt;this.closeDropdownMenus=function(n){p(n)};ot="div.n-layout-general-content .n-layout-padding, div.ngdialog, div.ngdialog-content, .n-layout-scroll";this.scrollableElementsSelector=ot;this.bindHiddingDropdownMenus=function(){bt()};this.getAssociateDomainField=function(n){var t=this;return t.getField({label:"Action",name:"action",type:f.fieldType.RADIO_BUTTON_LIST,value:null,translate:!0,listItems:[{value:f.associateDomainFieldType.ASSOCIATE_DOMAIN,text:"Associate domain with "+l.wrapTextInVar(n,l.variableName.ORGANIZATION_NAME,!1)},{value:f.associateDomainFieldType.ADD_TO_IGNORE_LIST,text:"Add domain to the ignore list"}],isRequired:!0})};this.recalculateDropdownMenuPosition=function(n,t,i,r,u,f){yi(n,t,i,r,u,f)};this.initializeDropdown=function(n){if(typeof n.actionElement=="undefined")throw Error("Toggle Dropdown: action element is undefined");if(typeof n.menuElement=="undefined")throw Error("Toggle Dropdown: menu element is undefined");typeof n.beforeCallback=="undefined"&&(n.beforeCallback=null);typeof n.afterCallback=="undefined"&&(n.afterCallback=null);typeof n.preventOpen=="undefined"&&(n.preventOpen=!1);typeof n.preventClose=="undefined"&&(n.preventClose=!1);typeof n.openFromLeftToRightSideAsDefault=="undefined"&&(n.openFromLeftToRightSideAsDefault=!0);typeof n.isSubMenu=="undefined"&&(n.isSubMenu=!1);typeof n.offset=="undefined"&&(n.offset=0);typeof n.offsetTop=="undefined"&&(n.offsetTop=0);$(n.actionElement).off("click");$(n.actionElement).click(function(t){var r,i;if(t.preventDefault(),t.stopPropagation(),n.preventOpen!==!0){if(n.menuElement.css("display")==="block"){if(n.preventClose===!0)return;p(t);return}r=c.defer();n.beforeCallback!==null?n.beforeCallback(r):r.resolve();i=c.defer();r.promise.then(function(){p(t);nt()===!1?vi(n.actionElement,n.menuElement,n.openFromLeftToRightSideAsDefault,n.isSubMenu,n.offset,i,n.offsetTop):($("body").bind("touchmove",ai),$("body").css("overflow","hidden"),$(n.menuElement).css({minWidth:"",top:"",left:"",display:"block"}),i.resolve());i.promise.then(function(){n.afterCallback!==null&&e(function(){n.afterCallback(i)},50)})})}});bt()};this.initializeAutoComplete=function(n,t,i,r,u){var f={valueObj:n,autoCompleteName:t,form:i,element:r,onAutoCompleteCallback:u,initObj:function(){function o(){t.css("display","none");i.remove();i=null}function r(){return t===null?!1:i===null?!1:!0}function s(){if(r()===!1)return null;var n=i.find(".active");return n.length===0?null:n}function v(){f!==null&&e.cancel(f);f=e(function(){var t=y();w(t);t!==""&&n.onAutoCompleteCallback(b(),t).then(function(n){n!=null&&k(n)})},l)}function h(){return n.element.is("input:text")===!0?n.element:n.element.find("input")}function y(){return h().val()}function w(t){n.valueObj.value=t}function b(){return n.autoCompleteName}function k(r){var c,f,s,l;if(i!==null&&i.remove(),c=h().parent().width()+"px",nt()===!0?t.css("width",c):t.css("minWidth",c),i=$(document.createElement("ul")),i.addClass("auto-complete-menu-items"),r.length===0)i.append('<li class="item-no-matched">No results<\/li>');else for(f=0;f<r.length;f++)f>=a||(s=$(document.createElement("li")),s.addClass("item"),f===0&&s.addClass("active"),s.click({field:n.valueObj,value:r[f].value},function(n){n.data.field.value=n.data.value;o()}),l=$(document.createElement("span")),l.text(r[f].text),s.append(l),i.append(s));u.append(i);e(function(){p();yi(n.element,t,!0,!1,0,null)},0)}function d(t){var i=null,u,e,f,h;switch(t.which){case 27:if(r()===!1)return;t.preventDefault();t.stopPropagation();o();break;case 9:case 13:if(r()===!1)return;if(t.preventDefault(),t.stopPropagation(),i=s(),i===null)return;i.click();n.element.focus();break;case 38:if(r()===!1)return;if(t.preventDefault(),t.stopPropagation(),i=s(),i===null)return;if(u=i.prevAll(".item"),u.length===0)return;e=u.first();i.removeClass("active");e.addClass("active");break;case 40:if(r()===!1)return;if(t.preventDefault(),t.stopPropagation(),i=s(),i===null)return;if(f=i.nextAll(".item"),f.length===0)return;h=f.first();i.removeClass("active");h.addClass("active");break;default:r()===!0&&o();v()}}function c(){t!==null&&t.remove();$(n.element).off("destroy",c)}function g(){t=$(document.createElement("div"));t.addClass("auto-complete-menu");u=$(document.createElement("div"));u.addClass("auto-complete-menu-content");t.append(u);t.appendTo($("body"));h().keydown(d);$(n.element).on("destroy",c);bt()}var n=this,f=null,l=650,a=5,t=null,i=null,u=null;g()}};f.initObj()};this.bindRemovingTooltips=function(){$(window).unbind("click",kt);$(window).bind("click",kt)};this.closeAllOpenedElements=function(){this.closeDropdownMenus();kt();o.closeAll()};this.getRegexPattern=function(n){if(n===null||typeof n=="undefined")throw new Error('"patternType" is not defined.');var t=u.validationSettings.regularExpressions[n];if(typeof t=="undefined")throw new Error('Unknown regex "patternType": '+n);return t};this.defer=function(){var n=[],t=[];return{promise:{then:function(i,r){n.push(i);typeof r!="undefined"&&t.push(r)},thenWithoutErrorCallback:function(t){n.push(t)}},resolve:function(t){n.forEach(function(n){n(t)})},reject:function(n){var r=!1;if(t.forEach(function(t){switch(n.type){case f.applicationErrorType.INVALID_DATA:typeof t.invalidData!="undefined"&&(t.invalidData(n),r=!0);break;case f.applicationErrorType.EXPIRED_DATA:typeof t.expiredData!="undefined"&&(t.expiredData(n),r=!0);break;case f.applicationErrorType.NOT_FOUND:typeof t.notFound!="undefined"&&(t.notFound(n),r=!0);break;case f.applicationErrorType.ACCESS_DENIED:typeof t.accessDenied!="undefined"&&(t.accessDenied(n),r=!0);break;case f.applicationErrorType.OPERATION_FAILED:typeof t.operationFailed!="undefined"&&(t.operationFailed(n),r=!0)}}),r===!1)switch(n.type){case f.applicationErrorType.INVALID_DATA:case f.applicationErrorType.OPERATION_FAILED:throw new Error("Unhandled AJAX error: "+n.type);case f.applicationErrorType.TRANSLATIONS_EXPIRED:o.closeAll(!0);h.hideMessage();ut(function(){i.location.reload()},n.message);break;case f.applicationErrorType.EXPIRED_DATA:o.closeAll(!0);h.hideMessage();ut(function(){i.location.reload()});break;case f.applicationErrorType.NOT_FOUND:o.closeAll();h.hideMessage();h.setEntityNotFound(n.message);break;case f.applicationErrorType.ACCESS_DENIED:o.closeAll();h.hideMessage();h.setAccessDenied(n.message);break;case f.applicationErrorType.APPLICATION_OUT_OF_DATE:(h.appOutOfDate.promise.$$state.status===1||h.appOutOfDate.promise.$$state.status===2)&&(h.appOutOfDate=c.defer(),h.appOutOfDateDialog=y({template:"js/shared/common/views/applicationOutOfDate/applicationOutOfDateView.html",controller:["$scope",function(n){n.reload=function(){i.location.reload();h.appOutOfDate.resolve();n.closeThisDialog()}}]}))}}}};this.handleError=function(n){return n};this.bindActions=function(n,t){var i=[];return $(n).find("[data-action]").each(function(n){var r={name:$(this).attr("data-action"),element:$(this)},u=$(this).attr("data-action-data");r.data=u!==undefined?$.parseJSON(atob(u)):null;$(r.element).attr("data-ng-click","handleAction("+t+"["+n+"].name, "+t+"["+n+"].data)");$(r.element).removeAttr("data-action");$(r.element).removeAttr("data-action-data");i.push(r)}),i};this.getCommonPageActions=function(n){return g(n)};this.getDetailsPageActions=function(n){return n=g(n),typeof n.primaryAction=="undefined"&&(n.primaryAction=null),typeof n.secondaryActions=="undefined"&&(n.secondaryActions=null),typeof n.convertAction=="undefined"&&(n.convertAction=null),n};this.getHistorySectionActions=function(n){return n=g(n),typeof n.new=="undefined"&&(n.new=null),n};this.getListerPageActions=function(n){return n=g(n),typeof n.new=="undefined"&&(n.new=null),typeof n.bulk=="undefined"&&(n.bulk=null),typeof n.views=="undefined"&&(n.views=null),typeof n.viewsMobile=="undefined"&&(n.viewsMobile=null),n};this.getModalListerActions=function(n){return n=g(n),typeof n.new=="undefined"&&(n.new=null),typeof n.bulk=="undefined"&&(n.bulk=null),n};this.getListerSectionActions=function(n){return n=g(n),typeof n.primary=="undefined"&&(n.primary=null),typeof n.secondaryActions=="undefined"&&(n.secondaryActions=null),typeof n.bulk=="undefined"&&(n.bulk=null),n};this.getZoomOptions=function(){return st()};this.getOneHundredPercentZoomOption=function(){var n=st();return _.find(n,function(n){return n.value===1})};this.getInitialZoomOption=function(n,t,i,r){for(var e,u=st(),f=u.length-1;f>=0;f--)if(e=t/(r*u[f].value),i*u[f].value<=n&&e>=.6)return u[f];return u[0]};this.measureContentAreaForZooming=function(n,t,i,r){for(var u=st(),f=u.length-1;f>=0;f--)if(i*u[f].value<=n&&r*u[f].value<=t)return u[f];return u[0]};this.convertPointsToPixels=function(n,t){return n/72*t};this.getTextHorizontalAlignmentValue=function(n){var t=parseInt(n);switch(t){case f.horizontalAlignment.LEFT:return"left";case f.horizontalAlignment.CENTER:return"center";case f.horizontalAlignment.RIGHT:return"right";default:throw new Error("Unknown horizontalAlignment: "+t);}};this.getTextVerticalAlignmentValue=function(n){var t=parseInt(n);switch(t){case f.verticalAlignment.TOP:return"top";case f.verticalAlignment.MIDDLE:return"middle";case f.verticalAlignment.BOTTOM:return"bottom";default:throw new Error("Unknown verticalAlignment: "+t);}};this.getImageAlignmentValue=function(n,t){var r=parseInt(n),u=parseInt(t),i=null;switch(r){case f.horizontalAlignment.LEFT:i="left";break;case f.horizontalAlignment.CENTER:i="center";break;case f.horizontalAlignment.RIGHT:i="right";break;default:throw new Error("Unknown horizontalAlignment: "+r);}switch(u){case f.verticalAlignment.TOP:i+=" top";break;case f.verticalAlignment.MIDDLE:i+=" center";break;case f.verticalAlignment.BOTTOM:i+=" bottom";break;default:throw new Error("Unknown verticalAlignment: "+u);}return i};this.getLeading=function(n,t){var i=n*ii(t);return Math.round(i)};this.getFormattingOptions=function(n,t){return _.find(n,function(n){return n.fontName===t})};this.getLabColor=function(n){return n.startsWith("#")||(n="#"+n),ht(n)};this.getDeltaOfColors=function(n,t){return dt(n,t)};this.updateSkinPortalPage=function(n){n.common.linkColor&&(u.skinColors.link=n.common.linkColor,u.skinColors.linkBackgroundColor=tr(n.common.linkColor,.15));n.common.buttonColor&&(u.skinColors.button=n.common.buttonColor);u.portalFont=n.common.font;n.portalPage.headerTextColor&&(u.skinColors.headerTextColor=n.portalPage.headerTextColor);n.portalPage.headerBackgroundColor&&(u.skinColors.menu=n.portalPage.headerBackgroundColor);u.headerSettings.headerBackgroundImageId=n.portalPage.headerBackgroundImageId;u.headerSettings.headerText=n.portalPage.headerText.replace("#Portal-Name#",u.portalName);u.headerSettings.headerTextSize=n.portalPage.headerTextSize;u.headerSettings.headerLogoId=n.portalPage.logoId;u.headerSettings.headerLogoPaddingTop=n.portalPage.logoPaddingTop;u.headerSettings.headerLogoPaddingBottom=n.portalPage.logoPaddingBottom;u.headerSettings.headerLogoPaddingLeft=n.portalPage.logoPaddingLeft;u.headerSettings.headerLogoPaddingRight=n.portalPage.logoPaddingRight;n.portalPage.headerMode&&(u.headerSettings.headerMode=n.portalPage.headerMode);u.skinColors.navBackgroundColor=n.portalPage.navBackgroundColor;u.skinColors.navBackgroundOverlayColor=ir(n.portalPage.navBackgroundColor);u.skinColors.navTextColor=n.portalPage.navTextColor;u.skinColors.navActiveTextColor=n.portalPage.navActiveTextColor;h.refreshHeader()};this.updateSkinLoginPage=function(n){n.common.linkColor&&(u.skinColors.link=n.common.linkColor);n.common.buttonColor&&(u.skinColors.button=n.common.buttonColor);u.portalFont=n.common.font;u.loginLogoId=n.loginPage.logoId;u.loginBackgroundImageId=n.loginPage.backgroundImageId;u.skinColors.loginCopyrightTextColor=n.loginPage.copyrightTextColor;u.skinColors.loginCopyrightTextShadowEnabled=n.loginPage.copyrightTextShadowEnabled;u.skinColors.loginCopyrightTextShadowColor=n.loginPage.copyrightTextShadowColor};this.getMaterialIconClass=function(n){var t=parseInt(n);switch(t){case f.materialIconType.NONE:return"";case f.materialIconType.ACCESS_TIME:return"material_access_time";case f.materialIconType.ACCESSIBILITY:return"material_accessibility";case f.materialIconType.ACCOUNT_BALANCE:return"material_account_balance";case f.materialIconType.ACCOUNT_BOX:return"material_account_box";case f.materialIconType.ACCOUNT_CIRCLE:return"material_account_circle";case f.materialIconType.ADD:return"material_add";case f.materialIconType.ADD_BOX:return"material_add_box";case f.materialIconType.ADD_CIRCLE:return"material_add_circle";case f.materialIconType.ADD_CIRCLE_OUTLINE:return"material_add_circle_outline";case f.materialIconType.ANNOUNCEMENT:return"material_announcement";case f.materialIconType.APPS:return"material_apps";case f.materialIconType.ARCHIVE:return"material_archive";case f.materialIconType.ASSESSMENT:return"material_assessment";case f.materialIconType.ASSIGNMENT:return"material_assignment";case f.materialIconType.ASSIGNMENT_IND:return"material_assignment_ind";case f.materialIconType.ASSIGNMENT_TURNED_IN:return"material_assignment_turned_in";case f.materialIconType.ATTACH_MONEY:return"material_attach_money";case f.materialIconType.BACKUP:return"material_backup";case f.materialIconType.BUILD:return"material_build";case f.materialIconType.BUSINESS:return"material_business";case f.materialIconType.BUSINESS_CENTER:return"material_business_center";case f.materialIconType.CALL:return"material_call";case f.materialIconType.CARD_TRAVEL:return"material_card_travel";case f.materialIconType.CHAT:return"material_chat";case f.materialIconType.CHAT_BUBBLE:return"material_chat_bubble";case f.materialIconType.CHAT_BUBBLE_OUTLINE:return"material_chat_bubble_outline";case f.materialIconType.CHECK:return"material_check";case f.materialIconType.CHECK_BOX:return"material_check_box";case f.materialIconType.CHECK_CIRCLE:return"material_check_circle";case f.materialIconType.CLEAR_ALL:return"material_clear_all";case f.materialIconType.CLOUD:return"material_cloud";case f.materialIconType.CLOUD_CIRCLE:return"material_cloud_circle";case f.materialIconType.CLOUD_DONE:return"material_cloud_done";case f.materialIconType.CLOUD_DOWNLOAD:return"material_cloud_download";case f.materialIconType.COLLECTIONS:return"material_collections";case f.materialIconType.COMMENT:return"material_comment";case f.materialIconType.COMPUTER:return"material_computer";case f.materialIconType.CONFIRMATION_NUMBER:return"material_confirmation_number";case f.materialIconType.CREATE:return"material_create";case f.materialIconType.CREATE_NEW_FOLDER:return"material_create_new_folder";case f.materialIconType.CREDIT_CARD:return"material_credit_card";case f.materialIconType.CROP_ORIGINAL:return"material_crop_original";case f.materialIconType.DASHBOARD:return"material_dashboard";case f.materialIconType.DATE_RANGE:return"material_date_range";case f.materialIconType.DEHAZE:return"material_dehaze";case f.materialIconType.DESCRIPTION:return"material_description";case f.materialIconType.DESKTOP_MAC:return"material_desktop_mac";case f.materialIconType.DESKTOP_WINDOWS:return"material_desktop_windows";case f.materialIconType.DETAILS:return"material_details";case f.materialIconType.DEVELOPER_BOARD:return"material_developer_board";case f.materialIconType.DEVICE_HUB:return"material_device_hub";case f.materialIconType.DEVICES:return"material_devices";case f.materialIconType.DNS:return"material_dns";case f.materialIconType.DOMAIN:return"material_domain";case f.materialIconType.DVR:return"material_dvr";case f.materialIconType.ENHANCED_ENCRYPTION:return"material_enhanced_encryption";case f.materialIconType.EQUALIZER:return"material_equalizer";case f.materialIconType.EVENT:return"material_event";case f.materialIconType.EVENT_AVAILABLE:return"material_event_available";case f.materialIconType.EXIT_TO_APP:return"material_exit_to_app";case f.materialIconType.EXPLORE:return"material_explore";case f.materialIconType.FACE:return"material_face";case f.materialIconType.FILTER_DRAMA:return"material_filter_drama";case f.materialIconType.FIND_IN_PAGE:return"material_find_in_page";case f.materialIconType.FIND_REPLACE:return"material_find_replace";case f.materialIconType.FINGERPRINT:return"material_fingerprint";case f.materialIconType.FLAG:return"material_flag";case f.materialIconType.FOLDER:return"material_folder";case f.materialIconType.FOLDER_OPEN:return"material_folder_open";case f.materialIconType.FOLDER_SHARED:return"material_folder_shared";case f.materialIconType.FOLDER_SPECIAL:return"material_folder_special";case f.materialIconType.FORMAT_ALIGN_LEFT:return"material_format_align_left";case f.materialIconType.FORMAT_LIST_BULLETED:return"material_format_list_bulleted";case f.materialIconType.FORMAT_LIST_NUMBERED:return"material_format_list_numbered";case f.materialIconType.FORUM:return"material_forum";case f.materialIconType.FUNCTIONS:return"material_functions";case f.materialIconType.GPS_FIXED:return"material_gps_fixed";case f.materialIconType.GPS_NOT_FIXED:return"material_gps_not_fixed";case f.materialIconType.GRADE:return"material_grade";case f.materialIconType.GROUP:return"material_group";case f.materialIconType.HELP:return"material_help";case f.materialIconType.HELP_OUTLINE:return"material_help_outline";case f.materialIconType.HIGHLIGHT:return"material_highlight";case f.materialIconType.HISTORY:return"material_history";case f.materialIconType.HOME:return"material_home";case f.materialIconType.HTTPS:return"material_https";case f.materialIconType.IMAGE:return"material_image";case f.materialIconType.IMPORT_CONTACTS:return"material_import_contacts";case f.materialIconType.IMPORTANT_DEVICES:return"material_important_devices";case f.materialIconType.INFO:return"material_info";case f.materialIconType.INFO_OUTLINE:return"material_info_outline";case f.materialIconType.INSERT_CHART:return"material_insert_chart";case f.materialIconType.INSERT_COMMENT:return"material_insert_comment";case f.materialIconType.INSERT_DRIVE_FILE:return"material_insert_drive_file";case f.materialIconType.INSERT_EMOTICON:return"material_insert_emoticon";case f.materialIconType.INSERT_INVITATION:return"material_insert_invitation";case f.materialIconType.INSERT_LINK:return"material_insert_link";case f.materialIconType.INSERT_PHOTO:return"material_insert_photo";case f.materialIconType.KITCHEN:return"material_kitchen";case f.materialIconType.LABEL:return"material_label";case f.materialIconType.LABEL_OUTLINE:return"material_label_outline";case f.materialIconType.LANDSCAPE:return"material_landscape";case f.materialIconType.LANGUAGE:return"material_language";case f.materialIconType.LAPTOP:return"material_laptop";case f.materialIconType.LAUNCH:return"material_launch";case f.materialIconType.LAYERS:return"material_layers";case f.materialIconType.LIBRARY_BOOKS:return"material_library_books";case f.materialIconType.LIGHTBULB_OUTLINE:return"material_lightbulb_outline";case f.materialIconType.LINK:return"material_link";case f.materialIconType.LIST:return"material_list";case f.materialIconType.LIVE_HELP:return"material_live_help";case f.materialIconType.LOCAL_ACTIVITY:return"material_local_activity";case f.materialIconType.LOCAL_AIRPORT:return"material_local_airport";case f.materialIconType.LOCAL_ATM:return"material_local_atm";case f.materialIconType.LOCAL_CONVENIENCE_STORE:return"material_local_convenience_store";case f.materialIconType.LOCAL_LIBRARY:return"material_local_library";case f.materialIconType.LOCAL_MALL:return"material_local_mall";case f.materialIconType.LOCAL_MOVIES:return"material_local_movies";case f.materialIconType.LOCAL_OFFER:return"material_local_offer";case f.materialIconType.LOCAL_PLAY:return"material_local_play";case f.materialIconType.LOCATION_CITY:return"material_location_city";case f.materialIconType.LOCATION_ON:return"material_location_on";case f.materialIconType.LOCATION_SEARCHING:return"material_location_searching";case f.materialIconType.LOCK:return"material_lock";case f.materialIconType.LOCK_OUTLINE:return"material_lock_outline";case f.materialIconType.LOYALTY:return"material_loyalty";case f.materialIconType.MAP:return"material_map";case f.materialIconType.MEMORY:return"material_memory";case f.materialIconType.MESSAGE:return"material_message";case f.materialIconType.MONETIZATION_ON:return"material_monetization_on";case f.materialIconType.MOVIE:return"material_movie";case f.materialIconType.MY_LOCATION:return"material_my_location";case f.materialIconType.NEW_RELEASES:return"material_new_releases";case f.materialIconType.NEXT_WEEK:return"material_next_week";case f.materialIconType.ONDEMAND_VIDEO:return"material_ondemand_video";case f.materialIconType.OPEN_IN_NEW:return"material_open_in_new";case f.materialIconType.PANORAMA:return"material_panorama";case f.materialIconType.PAYMENT:return"material_payment";case f.materialIconType.PEOPLE:return"material_people";case f.materialIconType.PEOPLE_OUTLINE:return"material_people_outline";case f.materialIconType.PIE_CHART:return"material_pie_chart";case f.materialIconType.PIE_CHART_OUTLINE:return"material_pie_chart_outline";case f.materialIconType.PLAY_CIRCLE:return"material_play_circle";case f.materialIconType.PLAY_CIRCLE_OUTLINE:return"material_play_circle_outline";case f.materialIconType.POLL:return"material_poll";case f.materialIconType.PUBLIC:return"material_public";case f.materialIconType.QUESTION_ANSWER:return"material_question_answer";case f.materialIconType.RECEIPT:return"material_receipt";case f.materialIconType.RECENT_ACTORS:return"material_recent_actors";case f.materialIconType.REDEEM:return"material_redeem";case f.materialIconType.REORDER:return"material_reorder";case f.materialIconType.ROOM_SERVICE:return"material_room_service";case f.materialIconType.ROUTER:return"material_router";case f.materialIconType.RSS_FEED:return"material_rss_feed";case f.materialIconType.SCHOOL:return"material_school";case f.materialIconType.SEARCH:return"material_search";case f.materialIconType.SECURITY:return"material_security";case f.materialIconType.SETTINGS_SYSTEM_DAYDREAM:return"material_settings_system_daydream";case f.materialIconType.SHOW_CHART:return"material_show_chart";case f.materialIconType.SLIDESHOW:return"material_slideshow";case f.materialIconType.SMS:return"material_sms";case f.materialIconType.STARS:return"material_stars";case f.materialIconType.STORAGE:return"material_storage";case f.materialIconType.STYLE:return"material_style";case f.materialIconType.SUBJECT:return"material_subject";case f.materialIconType.SUPERVISOR_ACCOUNT:return"material_supervisor_account";case f.materialIconType.TIMELINE:return"material_timeline";case f.materialIconType.TODAY:return"material_today";case f.materialIconType.TRENDING_UP:return"material_trending_up";case f.materialIconType.TURNED_IN:return"material_turned_in";case f.materialIconType.TURNED_IN_NOT:return"material_turned_in_not";case f.materialIconType.VERIFIED_USER:return"material_verified_user ";case f.materialIconType.VIEW_COLUMN:return"material_view_column";case f.materialIconType.VIEW_COMFY:return"material_view_comfy";case f.materialIconType.VIEW_COMPACT:return"material_view_compact";case f.materialIconType.VIEW_MODULE:return"material_view_module";case f.materialIconType.VIEW_QUILT:return"material_view_quilt";case f.materialIconType.VIEW_WEEK:return"material_view_week";case f.materialIconType.VPN_LOCK:return"material_vpn_lock";case f.materialIconType.WEB_CLOUDY:return"material_wb_cloudy";case f.materialIconType.WEB:return"material_web";case f.materialIconType.WEB_ASSET:return"material_web_asset";case f.materialIconType.WHATSHOT:return"material_whatshot";case f.materialIconType.WIDGETS:return"material_widgets";case f.materialIconType.WORK:return"material_work";case f.materialIconType.SETTINGS:return"material_settings";case f.materialIconType.EDIT:return"material_edit";case f.materialIconType.FILE_DOWNLOAD:return"material_file_download";case f.materialIconType.KEYBOARD:return"material_keyboard";case f.materialIconType.GRID_ON:return"material_grid_on";case f.materialIconType.CODE:return"material_code";case f.materialIconType.ERROR_OUTLINE:return"material_error_outline";case f.materialIconType.EMAIL:return"material_email";case f.materialIconType.CAMPAIGN:return"material_campaign";case f.materialIconType.SWAP_HORIZONTAL_CIRCLE:return"material_swap_horizontal_circle";case f.materialIconType.SORT:return"material_sort";case f.materialIconType.FOLDER_ZIP:return"material_folder_zip";case f.materialIconType.WYSIWYG:return"material_wysiwyg";case f.materialIconType.SYNC:return"material_sync";case f.materialIconType.CONTENT_COPY:return"material_content_copy";case f.materialIconType.VISIBILITY:return"material_visibility";case f.materialIconType.VISIBILITY_OFF:return"material_visibility_off";case f.materialIconType.ASTERISK:return"material_asterisk";case f.materialIconType.RAW_ON:return"material_raw_on";case f.materialIconType.PERSON:return"material_person";case f.materialIconType.TROPHY:return"material_trophy";case f.materialIconType.APARTMENT:return"material_apartment";case f.materialIconType.PERSON_ADD:return"material_person_add";case f.materialIconType.LOGOUT:return"material_logout";case f.materialIconType.ERROR:return"material_error";case f.materialIconType.AUTOMATION:return"material_automation";case f.materialIconType.LIGHTBULB:return"material_lightbulb";case f.materialIconType.MENU:return"material_menu";case f.materialIconType.EXPAND_MORE:return"material_expand_more";case f.materialIconType.EXPAND_LESS:return"material_expand_less";case f.materialIconType.CLOSE:return"material_close";default:throw"Not Implemented for material icon type: "+t;}};this.anySubItemVisible=function(n){return pi(n)};this.isPreview=function(){return n.current.$$route.isPreview===!0};gt="data-t-";this.setTestAttribute=function(n,t,i){u.isTestMode===!0&&((typeof i=="undefined"||i===null)&&(i=""),i=l.replaceVariablesInText(i),n.attr(gt+t,i))};this.getTestAttributes=function(n){if(u.isTestMode!==!0)return null;var t=[];return $.each($(n)[0].attributes,function(){this.specified&&this.name.indexOf(gt)===0&&t.push(this)}),t};this.generateSortItem=function(n,t,i,r,u){return typeof r==null&&(r=""),typeof u==null&&(u=""),{getId:function(){return n},getTitle:function(){return t},getIsFixed:function(){return i},getCssClass:function(){return r},getPlaceholderCssClass:function(){return u},id:n,title:t}};this.generateFilterableInterface=function(n,t,i,r,u,f){n.getId=t;n.getTitle=i;n.getIsFixed=r;n.getTranslate=u;n.getGroupName=typeof f=="undefined"?function(){return null}:f;n.isEnabled=!0};this.getTab=ni;this.replaceCrmIconPlaceholder=function(n){return n=n.replace(f.crmIconPlaceholder.CHANNELTIVITY,'<img class="crm-icon crm-channeltivity" src="/assets/img/channels/channeltivity.svg">'),n=n.replace(f.crmIconPlaceholder.SALESFORCE,'<img class="crm-icon crm-salesforce" src="/assets/img/channels/salesforce.svg">'),n=n.replace(f.crmIconPlaceholder.HUBSPOT,'<img class="crm-icon crm-hubspot" src="/assets/img/channels/hubspot.svg">'),n.replace(f.crmIconPlaceholder.DYNAMICS,'<img class="crm-icon crm-hubspot" src="/assets/img/channels/dynamics365.svg">')};this.getCrmIconPlaceholder=function(n){switch(n){case f.crmInterationType.SALESFORCE:return f.crmIconPlaceholder.SALESFORCE;case f.crmInterationType.HUBSPOT:return f.crmIconPlaceholder.HUBSPOT;case f.crmInterationType.CHANNELTIVITY:return f.crmIconPlaceholder.CHANNELTIVITY;case f.crmInterationType.DYNAMICS:return f.crmIconPlaceholder.DYNAMICS;default:throw"Not Implemented for crmIntegrationType: "+n;}};this.updateSection=function(n,t){wi(n,t)};this.updateSections=function(n,t){ti(n,t)};this.updateSectionsForPageWithoutColumns=function(n,t){var i={sections:n},r=[i];ti(r,t)};this.bindColumns=function(n){return angular.forEach(n,function(t){bi(t,n,null)}),n};this.generateClientCallbackUniqueKey=function(n){return n+"_"+(new Date).getTime()};this.toTrustedHtml=function(n){return v.trustAsHtml(n)};this.filterDropDownValues=function(n,t){var i=[];n.forEach(function(n){var f=n.listItem,r=n.group,u=$(f)[0].textContent,s,e,h,o;if((typeof u=="undefined"||u===null)&&r===null){$($(f)[0]).hide();return}if(typeof u!="undefined"&&u!==null&&u.toLowerCase().indexOf(t.toLowerCase())===0){$($(f)[0]).show();r!==null&&i.push(r);return}if(r!==null&&$(r)[0].textContent.toLowerCase().indexOf(t.toLowerCase())===0){$($(f)[0]).show();i.push(r);return}if(typeof u!="undefined"&&u!==null)for(s=u.toLowerCase().split(" "),e=0;e<s.length;e++)if(s[e].indexOf(t.toLowerCase())===0){$($(f)[0]).show();r!==null&&i.push(r);return}if(r!==null)for(h=$(r)[0].textContent.toLowerCase().split(" "),o=0;o<h.length;o++)if(h[o].indexOf(t.toLowerCase())===0){$($(f)[0]).show();i.some(n=>{$(r)[0].textContent===$(n)[0].textContent})===!1&&i.push(r);return}});i.forEach(function(n){var t,i;$($(n)[0]).show();t=$($(n)[0]).prev(".item-divider");typeof t!="undefined"&&t!==null&&(i=t.prevAll("li.item:visible"),typeof i!="undefined"&&i!==null&&i.length>0&&t.show())})};this.copyToClipboard=function(n){var t=document.createElement("textarea"),i;t.value=n;document.body.appendChild(t);t.select();t.setSelectionRange(0,99999);i=!1;try{i=document.execCommand("copy")}catch(r){}document.body.removeChild(t);i?h.showSuccessMessage("Copied to clipboard!"):h.showErrorMessage("Unable to copy to clipboard!")};this.scrollToHashElement=function(){var n=t.hash();n!==null&&n!==""&&e(function(){var t=document.getElementById(n);t!==null&&t.scrollIntoView()},100)};this.getPortalFontFamilyName=function(){switch(u.portalFont){case f.pageFontFamily.ROBOTO:return"'Roboto', sans-serif";case f.pageFontFamily.LEXEND:return"'Lexend', sans-serif";case f.pageFontFamily.CUSTOM:return"'"+u.customFontFamilyName+"', sans-serif";default:throw new Error("Unsupported portalFont: "+u.portalFont);}};this.initializeSearachableListItem=function(n){function t(n,t){t=t.toLowerCase().replace(/[.*+?^${}()|[\]\\]/g,"\\$&");var i=t.split(/\s+/),r=i.map(n=>new RegExp("(^|[\\s/])"+n,"i"));return r.every(t=>t.test(n))}typeof n.getTranslatedText=="undefined"&&(n.getTranslatedText=function(){return typeof this.translation!="undefined"?this.translation:this.text});typeof n.getTranslatedGroupName=="undefined"&&(n.getTranslatedGroupName=function(){return typeof this.groupTranslation!="undefined"?this.groupTranslation:this.groupName});n.search=function(i){var r,u;return n.getTranslatedText()===null?!0:(r=n.getTranslatedText().toLowerCase(),n.getTranslatedGroupName()!==null&&(u=n.getTranslatedGroupName().toLowerCase(),r=u+" "+r),t(r,i))?!0:!1}};this.setThumbnailClass=function(n,t){t.addClass("thumbnail-style-"+n.class)};this.getThumbnailLink=function(n,t){return"File/"+n+(t?"/"+t:"")};this.setLanguage=function(n,t,i){n===!0?y({template:'<div class="modal-dialog">    <div class="modal-content">       <div class="modal-header">           <h4 class="modal-title">&nbsp;<\/h4>       <\/div>       <div class="modal-body">            <div class="connector">                <h2 data-ng-bind-html="title"><\/h2>                <p data-ng-bind-html="message"><\/p>                <div class="loading-large"><\/div>            <\/div>        <\/div>    <\/div><\/div>',plain:!0,controller:["$scope",function(n){n.title="Switching Language";n.message="Please wait a moment while translations are loaded.";t().then(function(t){typeof i!="undefined"&&i();translationService.changeLanguage(t);n.closeThisDialog()})}]}):t().then(function(n){typeof i!="undefined"&&i();translationService.changeLanguage(n)})}}]);angular.module("sharedElements").service("listerService",["constants","helpService","securityService","$routeParams","$q",function(n,t,i,r,u){function e(n,t,i){var r=n.exportLink.replace("#Export-Type#","Excel");return t===!0?r+"&t="+i:r}function o(n,t,i){var r=n.exportLink.replace("#Export-Type#","Print");return t===!0?r+"&t="+i:r}var f=r.libraryId;this.getExportToExcelLink=function(n,t,i){return e(n,t,i)};this.getPrintLink=function(n,t,i){return o(n,t,i)};this.openAdvancedExportDialog=function(i,r){t.openDialog({template:"js/shared/common/views/advancedExportDialog/advancedExportDialog.html",controller:["$scope",function(u){u.pendingAction=!1;u.form=null;u.fields={nestedTables:t.getField({label:"Nested Table",name:"nestedTable",type:n.fieldType.PICKLIST,value:r[0].value,listItems:r,translate:!0})};u.getExportToExcelLink=function(){return e(i,!0,u.fields.nestedTables.value)};u.getPrintLink=function(){return o(i,!0,u.fields.nestedTables.value)};u.skipSubmit=function(){}}]})};this.openListerViewSaveAsDialog=function(n){var r=u.defer();return t.openDialog({template:"js/shared/common/views/listerView/listerViewSaveAs.html",controller:["$scope",function(u){function e(n){return i.httpGet("data/Common/ListerView/LoadListerViewDialog",{pageComponent:n,libraryId:f})}function o(n,t,r){return i.httpGet("data/Common/ListerView/IsNameValid",{pageComponent:n,libraryId:t,name:r})}function s(){u.listerViewSection=null;u.isLoadingDialog=!0;e(n.pageComponent).then(function(t){if(u.isLoadingDialog=!1,u.listerViewSection=t,n.lastViewId!==null)for(var i=0;i<u.listerViewSection.existing.listItems.length;i++)if(u.listerViewSection.existing.listItems[i].value===n.lastViewId+""){u.listerViewSection.selector.value=u.viewState.EXISTING+"";u.listerViewSection.existing.value=u.listerViewSection.existing.listItems[i].value;break}})}u.viewState={NEW:1,EXISTING:2};u.pendingAction=!1;u.isLoadingDialog=!1;u.form=null;u.listerViewSection=null;u.save=function(i){i.submit(function(){var f=[{name:u.listerViewSection.name,fields:[u.listerViewSection.selector,u.listerViewSection.viewName,u.listerViewSection.existing]}];n.onAction({action:"save-view",data:{sections:t.getProcessedSections(f)}}).then(function(n){u.pendingAction=!1;u.closeThisDialog();r.resolve(n)},function(){i.validate().then(function(){u.pendingAction=!1})})})};u.cancel=function(){u.pendingAction=!1;u.closeThisDialog();r.reject()};u.validate=function(t,i){switch(t){case"view-name-exists":return o(n.pageComponent,f,i);default:throw"Unknown validator "+t;}};s()}]}),r.promise};this.openListerViewManagementDialog=function(r){var e=u.defer();return t.openDialog({template:"js/shared/common/views/listerView/manageViews.html",controller:["$scope",function(u){function o(n){return i.httpPost("data/Common/ListerView/LoadExistingViews",{pageComponent:n,libraryId:f})}function s(n,t,r,u){return i.httpPost("data/Common/ListerView/RemoveAndSortUserViews",{pageComponent:n,libraryId:t,views:r,viewsSort:u})}function h(){u.isLoadingDialog=!0;o(r).then(function(n){$.each(n,function(n,i){t.generateFilterableInterface(i,function(){return this.id},function(){return this.title},function(){return!1},function(){return!0})});u.views=n;u.viewsOriginal=$.extend(!0,[],n);u.isLoadingDialog=!1})}u.mode=n.sorterMode.SORT_AND_DELETE;u.title="Manage Views";u.pendingAction=!1;u.isLoadingDialog=!1;u.views=null;u.viewsOriginal=null;u.save=function(){var i,n,o,t,h;for(u.pendingAction=!0,i=[],n=0;n<u.viewsOriginal.length;n++){for(o=!1,t=0;t<u.views.length;t++)if(u.viewsOriginal[n].id===u.views[t].id){o=!0;break}o===!1&&i.push(u.viewsOriginal[n].id)}h=$.map(u.views,function(n){return n.id});s(r,f,i,h).then(function(n){u.closeThisDialog();e.resolve(n.actions)})};u.cancel=function(){u.pendingAction=!1;u.closeThisDialog();e.reject()};u.anyViews=function(){return u.views!==null&&u.views.length>0};u.anyViewsOriginal=function(){return u.viewsOriginal!==null&&u.viewsOriginal.length>0};h()}]}),e.promise};this.getListerSettings=function(){return{columns:null,enabledSorting:null,enabledPaging:null,enabledExport:null,enabledFixedHeader:null,bulkOperationsVisible:null,enabledBulkOperations:null,nestedTables:null}};this.initListerState=function(){var t={layout:null,visibleFilters:!0,state:{}};return t.state[n.listerLayout.TABLE]={layout:n.listerLayout.TABLE},t.state[n.listerLayout.MAP]={layout:n.listerLayout.MAP},t.state[n.listerLayout.BAR_CHART]={layout:n.listerLayout.BAR_CHART},t.state[n.listerLayout.TIMELINE]={layout:n.listerLayout.TIMELINE},t.state[n.listerLayout.CONTENT]={layout:n.listerLayout.CONTENT},t};this.updateListerState=function(t,i){switch(i.layout){case n.listerLayout.TABLE:case n.listerLayout.TILES_S:case n.listerLayout.TILES_L:t.state[n.listerLayout.TABLE]=i.listerState;break;case n.listerLayout.BAR_CHART:t.state[n.listerLayout.BAR_CHART]=i.listerState;break;case n.listerLayout.TIMELINE:t.state[n.listerLayout.TIMELINE]=i.listerState;break;case n.listerLayout.CONTENT:t.state[n.listerLayout.CONTENT]=i.listerState}t.layout=i.layout};this.getListerState=function(t,i){var r=null;if(typeof i!="undefined"&&typeof i.layout!="undefined"&&Object.keys(i).length===1){switch(i.layout){case n.listerLayout.TABLE:case n.listerLayout.TILES_S:case n.listerLayout.TILES_L:r=t.state[n.listerLayout.TABLE];break;case n.listerLayout.MAP:case n.listerLayout.BAR_CHART:case n.listerLayout.TIMELINE:case n.listerLayout.CONTENT:case n.listerLayout.WIDE:case n.listerLayout.COMPACT:r=t.state[i.layout]}r.layout=i.layout}else switch(t.layout){case n.listerLayout.TABLE:case n.listerLayout.TILES_S:case n.listerLayout.TILES_L:r=$.extend({},t.state[n.listerLayout.TABLE]);r=$.extend(r,i);break;case n.listerLayout.MAP:case n.listerLayout.BAR_CHART:case n.listerLayout.TIMELINE:case n.listerLayout.CONTENT:case n.listerLayout.WIDE:case n.listerLayout.COMPACT:r=$.extend({},t.state[t.layout]);r=$.extend(r,i)}return r};this.openManageColumnsDialog=function(i,r,u){t.openDialog({template:"js/shared/common/views/listerView/manageColumns.html",controller:["$scope",function(f){function h(){f.isLoadingDialog=!0;f.initData()}function e(n){return t.generateSortItem(n.name,n.fullLabel,n.isFixed)}function o(n){var i=$.extend({},n);return t.generateFilterableInterface(i,function(){return this.name},function(){return this.label},function(){return this.isFixed},function(){return!0},function(){return this.entityTypeName}),i}function s(n){return _.sortBy(n,function(n){return[n.entityTypeName,n.label]})}f.mode=n.sorterMode.SORT_AND_DELETE;f.pendingAction=!1;f.isLoadingDialog=!1;f.selectedColumns=null;f.availableColumns=null;f.isListLayout=i.layout===n.listerLayout.TABLE;f.layoutName=t.getListerLayoutLabel(i.layout);f.tableLayoutName=t.getListerLayoutLabel(n.listerLayout.TABLE);f.initData=function(){var n,t;f.isLoadingDialog=!1;n=[];$.each(i.columns,function(t,i){var u=_.find(r.columns,function(n){return i.name===n.name});n.push(e(u))});f.selectedColumns=n;t=[];$.each(r.columns,function(n,r){typeof _.find(i.columns,function(n){return n.name===r.name})=="undefined"&&t.push(o(r))});f.availableColumns=s(t)};f.save=function(){var t=$.map(f.selectedColumns,function(n){return n.getId()});u({action:"refresh-lister",data:{listerState:{columns:t,layout:n.listerLayout.TABLE}}});f.closeThisDialog()};f.addColumn=function(n){var t=_.find(r.columns,function(t){return t.name===n.getId()});f.selectedColumns.push(e(t));f.availableColumns=f.availableColumns.filter(function(t){return t.getId()!==n.getId()})};f.removeColumn=function(n){var t=_.find(r.columns,function(t){return t.name===n.getId()});f.availableColumns.push(o(t));f.availableColumns=s(f.availableColumns)};f.cancel=function(){f.pendingAction=!1;f.closeThisDialog()};f.changeLayout=function(t){t===n.listerLayout.TABLE&&(f.isListLayout=!0)};h()}]})}}]);angular.module("sharedElements").service("reviewService",["securityService","helpService",function(n,t){this.loadReviewPage=function(){return n.httpGet("data/Common/Review/LoadReviewPage",null)};this.neverShowAgain=function(){return n.httpGet("data/Common/Review/NeverShowAgain",null)};this.createReviewWithFeedback=function(i,r){var u=t.getProcessedFields(r);return n.httpPost("data/Common/Review/CreateReviewWithFeedback",{score:i,fields:u})};this.createReviewAndWillNotWriteG2Review=function(){return n.httpGet("data/Common/Review/CreateReviewAndWillNotWriteG2Review",null)};this.createReviewAndWillWriteG2Review=function(){return n.httpGet("data/Common/Review/CreateReviewAndWillWriteG2Review",null)};this.updateReviewAndWillNotWriteG2Review=function(){return n.httpGet("data/Common/Review/UpdateReviewAndWillNotWriteG2Review",null)};this.sendReview=function(i){var r=t.getProcessedFields(i);return n.httpPost("data/Common/Review/SendReview",{fields:r})};this.loadPartnerUserReviewPage=function(){return n.httpGet("data/Common/Review/LoadPartnerUserReviewPage",null)};this.remindMeLater=function(){return n.httpGet("data/Common/Review/RemindMeLater")};this.createPartnerUserReview=function(i,r){var u=t.getProcessedFields(r);return n.httpPost("data/Common/Review/CreatePartnerUserReview",{score:i,fields:u})}}]);angular.module("sharedElements").service("sectionService",["constants","testService",function(n,t){this.getTitleElement=function(n){if(n.title===null)return null;var t=$(document.createElement("attr-title"));return n.isHtmlTitle===!0?t.append('<span class="format-wrap" data-ng-bind-html="section.title"><\/span>'):t.append('<span class="format-wrap" data-ng-bind="section.title"><\/span>'),t};this.getDescriptionElement=function(n){if(n.title===null||n.description===null)return null;var t=$(document.createElement("attr-description"));return n.isHtmlDescription===!0?t.attr("data-ng-bind-html","section.description"):t.attr("data-ng-bind","section.description"),t};this.getSettingsToolActionElement=function(n,i){if(typeof n=="undefined"||n===null||n.actions===null||n.actions.settings===null)return null;var r=$(document.createElement("c-section-settings-button"));return t.setAttribute(r,"instance",n.title),t.setAttribute(r,"name",n.title),t.setAttribute(r,"type","settings-button"),r.attr("data-actions","section.actions.settings"),typeof i!="undefined"&&r.attr("data-on-action",i),r};this.getManageToolActionElement=function(n,i){if(typeof n=="undefined"||n===null||n.actions===null||n.actions.manage===null)return null;var r=$(document.createElement("c-section-manage-button"));return r.attr("data-action","section.actions.manage"),t.setAttribute(r,"instance",n.title),t.setAttribute(r,"type","manage-button"),typeof i!="undefined"&&r.attr("data-on-action",i),r};this.getEditToolActionElement=function(n,i){if(typeof n=="undefined"||n===null||n.actions===null||n.actions.edit===null)return null;var r=$(document.createElement("c-section-manage-button"));return r.attr("data-action","section.actions.edit"),t.setAttribute(r,"instance",n.title),t.setAttribute(r,"type","manage-button"),typeof i!="undefined"&&r.attr("data-on-action",i),r};this.getRefineResultsActionElement=function(n,t){if(typeof n=="undefined"||n===null||n.actions===null||n.actions.refineResults===null)return null;var i=$(document.createElement("c-link-button"));return i.attr("data-action","section.actions.refineResults"),i.attr("data-t-name",n.title),typeof t!="undefined"&&i.attr("data-on-action",t),i};this.getFiltersElement=function(n,t,i){var u,r;return typeof n.filters=="undefined"||n.filters===null?null:(u=$(document.createElement("div")),u.addClass("panel-filters large-only"),r=$(document.createElement("form")),r.attr("data-c-form",""),r.attr("name",i),r.attr("data-ng-submit",t),angular.forEach(n.filters,function(n,u){var f=$(document.createElement("div"));f.attr("data-c-section-filter","");f.attr("data-filter","section.filters["+u+"]");f.attr("data-form",i);f.attr("data-on-change",t);r.append(f)}),u.append(r),u)}}]);angular.module("sharedElements").service("securityService",["$http","pageSharedDataFactory","$q","constants","$window","$timeout","helpService","appDetailsValue","ngDialog","exceptionService",function(n,t,i,r,u,f,e,o,s,h){function p(n,f,o){var c,s,l,v,a;if(n.status===0||n.status===-1){if(typeof n.config.singleton!="undefined"&&n.xhrStatus==="abort")return;(t.serviceUnavailable.promise.$$state.status===1||t.serviceUnavailable.promise.$$state.status===2)&&(t.serviceUnavailable=i.defer(),t.serviceUnavailableDialog=e.openDialog({template:'<div class="modal-dialog">   <div class="modal-content">      <div class="modal-header">         <h4 class="modal-title">Internet Connection Offline<\/h4>      <\/div>      <div class="modal-body">         <div class="alert alert-danger">            <i class="icon-size-18 material_error"><\/i>            <p>Internet connection lost.<\/p>         <\/div>      <\/div>      <div class="modal-footer">         <button type="button" class="btn btn-primary" data-ng-click="retry()">Retry<\/button>      <\/div>   <\/div><\/div>',plain:!0,controller:["$scope",function(n){n.retry=function(){t.serviceUnavailable.resolve();t.serviceUnavailableDialog.close()}}]}));f.callee.apply(this,f)}else switch(n.status){case 400:c=n.data;switch(c.type){case r.applicationErrorType.INVALID_DATA:case r.applicationErrorType.EXPIRED_DATA:case r.applicationErrorType.NOT_FOUND:case r.applicationErrorType.ACCESS_DENIED:case r.applicationErrorType.APPLICATION_OUT_OF_DATE:case r.applicationErrorType.OPERATION_FAILED:o.reject(c);break;case r.applicationErrorType.TRANSLATIONS_EXPIRED:typeof translationService!="undefined"&&translationService.changeLanguage(null);o.reject(c);break;case r.applicationErrorType.POTENTIALLY_DANGEROUS_REQUEST:e.redirect("/PotentiallyDangerousRequest");break;default:throw new Error("Unsupported applicationErrorType: "+c.type);}break;case 401:e.openDialog({template:"js/shared/common/views/unauthorizedError/unauthorizedErrorView.html",controller:["$scope",function(n){n.reload=function(){u.location.reload();n.closeThisDialog()}}]});break;case 403:if(s=n.data,typeof s=="string")if(l=n.headers("cf-ray"),v=l.substring(0,l.indexOf("-")),a=s.toLowerCase(),l!=null&&a.indexOf(v)!==-1){if(a.indexOf("cf_chl")!==-1){w(f);break}e.redirect("/PotentiallyDangerousRequest?cf-ray="+l);break}else throw new Error('SessionError in string format received: "'+s+'"');if(s.cookiesNotEnabled===!0)t.loginDialog!==null&&t.loginDialog.close(),t.serviceUnavailableDialog!==null&&t.serviceUnavailableDialog.close(),e.openDialog({template:"js/shared/common/views/cookiesNotEnabled/cookiesNotEnabledView.html",controller:"CookiesNotEnabledDialogCtrl"});else if(s.invalidRequest===!0)t.loginDialog!==null&&t.loginDialog.close(),t.serviceUnavailableDialog!==null&&t.serviceUnavailableDialog.close(),e.openDialog({template:"js/shared/common/views/invalidRequest/invalidRequestView.html",controller:"InvalidRequestDialogCtrl"});else if(s.doFullPageReload===!0)u.location.reload();else if(s.redirectPath!==null)e.redirect(s.redirectPath);else if(s.code===r.sessionCheckFailReason.ACCESS_DENIED)throw new Error("Unsupported sessionError.code: ACCESS_DENIED");else(t.session.promise.$$state.status===1||t.session.promise.$$state.status===2)&&(t.session=i.defer(),t.session.promise.then(function(){t.updateClientCallbacks!==null&&t.updateClientCallbacks()}),t.loginDialog=e.openDialog({template:"js/shared/common/views/login/loginView.html",controller:"LoginDialogCtrl",data:{sessionError:s},overrideNoTranslate:!0})),f.callee.apply(this,f);break;case 404:o.reject({type:r.applicationErrorType.APPLICATION_OUT_OF_DATE});break;case 500:e.openDialog({template:"js/shared/common/views/applicationError/applicationErrorView.html",controller:["$scope",function(n){n.reload=function(){u.location.reload();n.closeThisDialog()};n.goToPreviousPage=function(){e.goToPreviousPage("Home");n.closeThisDialog()}}]});break;case 502:case 503:case 504:case 524:(t.serviceUnavailable.promise.$$state.status===1||t.serviceUnavailable.promise.$$state.status===2)&&(t.serviceUnavailable=i.defer(),t.serviceUnavailableDialog=e.openDialog({template:'<div class="modal-dialog">   <div class="modal-content">      <div class="modal-header">         <h4 class="modal-title">Connection Issue<\/h4>      <\/div>      <div class="modal-body">         <div class="alert alert-danger">             <i class="icon-size-18 material_error"><\/i>             <p>We\'re having trouble loading the page. This can be due to an issue with our server or your Internet connection. Please try again.<\/p>         <\/div>      <\/div>      <div class="modal-footer">         <button type="button" class="btn btn-primary" data-ng-click="retry()">Retry<\/button>      <\/div>   <\/div><\/div>',plain:!0,controller:["$scope",function(n){n.retry=function(){t.serviceUnavailable.resolve();t.serviceUnavailableDialog.close()}}]}),n.status===524&&h.logError(new Error("Cloudflare Gateway Timeout - 524")),f.callee.apply(this,f));break;default:throw new Error("Unsupported status code: "+n.status);}}function l(n,t,i,u){var f,e;switch(n){case c.GET:case c.POST:break;default:throw Error("Unsupported HTTP Method: "+n);}if(f={url:t,method:n},typeof u!="undefined"&&u!==null){if(typeof u.url!="undefined")throw new Error("Unsupported options attribute: url");if(typeof u.method!="undefined")throw new Error("Unsupported options attribute: method");if(typeof u.params!="undefined")throw new Error("Unsupported options attribute: params");if(typeof u.data!="undefined")throw new Error("Unsupported options attribute: data");f=$.extend(!0,f,u)}if(typeof f.ignoreLoadingBar=="undefined"&&(f.ignoreLoadingBar=!0),typeof f.withCredentials=="undefined"&&(f.withCredentials=!1),typeof i!="undefined"&&i!==null)switch(n){case c.GET:f.params=i;break;case c.POST:f.data=i}return e=!0,typeof f.sendAppVersionHashHeader!="undefined"&&(e=f.sendAppVersionHashHeader),e===!0&&(f.headers={"Ctvt-AppVersionHash":o.appVersionHash===null?"":o.appVersionHash},typeof translationService!="undefined"&&((typeof f.headers=="undefined"||f.headers===null)&&(f.headers={}),f.headers[r.headers.LANGUAGE_DICTIONARY]=translationService.isPublic===!0?"public":"private",o.noTranslateForApp===!0&&(f.headers["Ctvt-No-Translate-App"]="true"))),f}function w(n){(t.serviceUnavailable.promise.$$state.status===1||t.serviceUnavailable.promise.$$state.status===2)&&(t.serviceUnavailable=i.defer(),t.serviceUnavailableDialog=e.openDialog({template:'<div class="modal-dialog">   <div class="modal-content">      <div>         <div class="loading-large" data-ng-class="{\'loading-large\': isLoading }" style="margin: 0 auto; width: 100%; min-height:600px">           <iframe style="border:none; width: 100%;min-height:600px" src="/Cloudflare/ManagedChallenge"><\/iframe>         <\/div>      <\/div>   <\/div><\/div>',plain:!0,controller:["$scope","$element","$window",function(n,i,r){function u(i){i.data.isPassedCloudflareManagedChallenge!==undefined&&i.data.isPassedCloudflareManagedChallenge==="True"&&n.$apply(function(){t.serviceUnavailable.resolve();t.serviceUnavailableDialog.close()})}n.isLoading=!0;$(i).find("iframe").on("load",function(){n.$apply(function(){n.isLoading=!1})});r.addEventListener?r.addEventListener("message",u,!1):r.attachEvent("onmessage",u,!1)}]}),n.callee.apply(this,n))}function b(t){var u=i.defer(),r;t.timeout=u.promise;t.canceler=u;r=_.find(n.pendingRequests,function(n){return typeof n.singleton!="undefined"&&n.singleton===t.singleton});typeof r!="undefined"&&r.canceler.resolve()}function v(i,u,e){typeof e.singleton!="undefined"&&b(e);n(e).then(function(n){f(function(){var u,f;i.resolve(n.data);typeof e.ignoreLoadingBar!="undefined"&&e.ignoreLoadingBar===!1&&t.setPageFocus!==null&&t.setPageFocus();typeof translationService!="undefined"&&(u=n.headers(r.headers.LANGUAGE_REFRESH),u==="true"&&translationService.refreshLanguage().then(function(n){translationService.changeLanguage(n)}),f=n.headers(r.headers.LANGUAGE_COLLECT_STATS),f==="true"&&translationService.collectStats())},y)},function(n){p(n,u,i)})}function a(n,i,r){var u=n||e.defer(),f=arguments;return f[0]=u,t.serviceUnavailable.promise.then(function(){i?v(u,f,r):t.session.promise.then(function(){v(u,f,r)})}),u.promise}function k(n,t,i){return a(null,!1,l(c.GET,n,t,i))}var y=1,c={GET:"GET",POST:"POST"};this.httpGet=function(n,t,i){return k(n,t,i)};this.httpGetWithoutSession=function(n,t,i){return a(null,!0,l(c.GET,n,t,i))};this.httpPost=function(n,t,i){return a(null,!1,l(c.POST,n,t,i))};this.httpPostWithoutSession=function(n,t,i){return a(null,!0,l(c.POST,n,t,i))};this.loadLoginPage=function(n,t){return a(null,!0,l(c.GET,"data/Common/Security/LoadLoginPage",{noSso:n,skinPreview:t}))};this.createClientCallbacks=function(n,t){return a(null,!1,l(c.POST,"data/Common/Security/CreateClientCallbacks",{connectionId:n,callbacks:t}))};this.updateClientCallbacks=function(n){return a(null,!1,l(c.GET,"data/Common/Security/UpdateClientCallbacks",{connectionId:n}))};this.isLoggedIn=function(){return a(null,!0,l(c.GET,"data/Common/Security/IsLoggedIn"))};this.login=function(n,t,i){return a(null,!0,l(c.POST,"data/Common/Security/Login",{email:n,password:t,rememberLogin:i}))};this.openPasswordLookupDialog=function(n){return n=typeof n!="undefined"?n:null,e.openDialog({template:"js/shared/common/views/passwordLookup/passwordLookupView.html",controller:"PasswordLookupCtrl",closeByEscape:!0,data:{email:n}})};this.lookupPassword=function(n,t,i){return a(null,!0,l(c.POST,"data/Common/Security/LookupPassword",{step:n,email:t,secretAnswer:i}))}}]);angular.module("sharedElements").service("skinManagerDialogService",["helpService","$q","constants","appDetailsValue","pageSharedDataFactory","testService","$window",function(n,t,i,r,u,f){this.openDialog=function(r){var s=t.defer(),h=!1,o=$.extend(!0,{},r),e={action:"update-skin",common:{linkColor:null,buttonColor:null,font:null},portalPage:{headerTextColor:null,headerBackgroundColor:null,headerBackgroundImageId:null,headerText:null,headerTextSize:null,logoId:null,logoPaddingTop:null,logoPaddingBottom:null,logoPaddingLeft:null,logoPaddingRight:null,headerMode:null,backgroundColor:null},loginPage:{logoId:null,backgroundImageId:null},emailTemplate:{logoId:null},emailMarketingTemplate:{headingBackgroundColor:null,headerLogoId:null,footerLogoId:null,footerText:null}};return n.openDialog({template:"js/shared/common/views/skinManagerDialog/skinManagerDialogView.html",preCloseCallback:function(){h?s.resolve():s.reject()},controller:["$scope","$compile","$element",function(r,s,c){function tt(){var i=[],u=$(document.createElement("div")),o;u.attr("style","padding: 50.5px; height: 100%; ");$(c).find(".doc-viewer").append(u);var h=50,n=.1,e=$(document.createElement("div"));e.addClass("doc-thumbnails");$(c).find(".doc-preview").append(e);o=[r.portalPage,r.loginPage,r.emailTemplatePage];r.emailMarketingEnabled===!0&&o.push(r.emailMarketingTemplatePage);angular.forEach(o,function(o){var l=$(document.createElement("iframe")),p=t.defer(),c,a,v;i.push(p.promise);l[0].onload=function(){p.resolve();o.iframeWindows.push(this.contentWindow)};l.attr("src",o.url);l.attr("frameborder","0");l.attr("data-ng-show",'pageIsActive("'+o.id+'")');o.id!=="1"?(l.attr("style","width: 100%; height: 100%; outline: 1px solid lightGrey !important;"),l.addClass("layout-scroll")):l.attr("style","width: 100%; height: 100%; outline: 1px solid lightGrey !important; pointer-events: none; overflow: hidden !important");s(l)(r);u.append(l);c=$(document.createElement("div"));c.addClass("doc-thumbnail");c.attr("data-ng-click",'setActivePage("'+o.id+'")');c.attr("data-ng-class",'{"doc-thumbnail-active": pageIsActive("'+o.id+'") }');f.setAttribute(c,"skin-manager-nav-item",o.title);s(c)(r);e.append(c);var w=c.width(),y=$(document.createElement("div")),b=t.defer();i.push(b);y.attr("style","width: "+w+"px; height: "+h+"px; overflow: hidden; margin-top: 10px; border-radius: 4px; pointer-events: none !important; outline: 1px solid rgba(0, 0, 0, 0.05) !important;");a=$(document.createElement("iframe"));a[0].onload=function(){b.resolve();o.iframeWindows.push(this.contentWindow)};a.attr("src",o.url);a.attr("frameborder","0");a.attr("scrolling","no");a.attr("style","width: "+w/n+"px; height: "+h/n+"px; -webkit-transform: scale("+n+") translate(0px, 0px); -moz-transform: scale("+n+") translate(0px, 0px); transform: scale("+n+") translate(0px, 0px);transform-origin: 0px 0px 0px;");v=$(document.createElement("div"));v.addClass("doc-thumbnail-label");v.text(o.title);v.attr("title",o.title);y.append(a);c.append(y);c.append(v)});t.all(i).then(function(){r.isLoading=!1})}function it(){o.loadSkinData().then(function(n){r.emailMarketingEnabled=typeof n.emailMarketingTemplateFieldsSection!="undefined"&&n.emailMarketingTemplateFieldsSection!==null;typeof o.activePage!="undefined"&&o.activePage!==null?b(o.activePage):b(i.portalSkinManagerPage.PORTAL);r.commonSettings.form=r.commonForm;r.commonSettings.section=n.commonFieldsSection;n.customBackgroundColor!==null?(r.commonSettings.link.backgroundColors.push(n.customBackgroundColor),e.portalPage.backgroundColor=n.customBackgroundColor):e.portalPage.backgroundColor=p;r.portalPage.form=r.portalPageForm;r.portalPage.navSection=n.navigationFieldsSection;r.portalPage.headerSection=n.headerFieldsSection;r.portalPage.logoImage.originalId=n.headerFieldsSection.headerLogo.value;r.portalPage.headerBackgroundImage.originalId=n.headerFieldsSection.headerBackgroundImage.value;r.loginPage.form=r.loginPageForm;r.loginPage.section=n.loginFieldsSection;r.loginPage.logoImage.originalId=n.loginFieldsSection.logo.value;r.emailTemplatePage.form=r.emailTemplateForm;r.emailTemplatePage.section=n.emailTemplateFieldsSection;r.emailTemplatePage.logoImage.originalId=n.emailTemplateFieldsSection.logo.value;r.emailMarketingEnabled===!0&&(r.emailMarketingTemplatePage.form=r.emailMarketingTemplateForm,r.emailMarketingTemplatePage.section=n.emailMarketingTemplateFieldsSection,r.emailMarketingTemplatePage.headerLogoImage.originalId=n.emailMarketingTemplateFieldsSection.headerLogo.value,r.emailMarketingTemplatePage.footerLogoImage.originalId=n.emailMarketingTemplateFieldsSection.footerLogo.value,r.emailMarketingTemplatePage.requiredAddressPlaceholders=n.emailMarketingTemplateFieldsSection.requiredAddressPlaceholders,r.emailMarketingTemplatePage.requiredInlineAddressPlaceholder=n.emailMarketingTemplateFieldsSection.requiredInlineAddressPlaceholder,r.emailMarketingTemplatePage.requiredMultiLineAddressPlaceholder=n.emailMarketingTemplateFieldsSection.requiredMultiLineAddressPlaceholder);e.common.linkColor=r.commonSettings.section.linkColor.value.replace(/#/g,"");e.common.buttonColor=r.commonSettings.section.buttonColor.value.replace(/#/g,"");e.common.font=parseInt(r.commonSettings.section.font.value);e.portalPage.headerTextColor=r.portalPage.headerSection.headerTextColor.value.replace(/#/g,"");e.portalPage.headerBackgroundImageId=r.portalPage.headerSection.headerBackgroundImage.value===null?null:parseInt(r.portalPage.headerSection.headerBackgroundImage.value);e.portalPage.headerBackgroundColor=r.portalPage.headerSection.headerBackgroundColor.value.replace(/#/g,"");e.portalPage.headerText=r.portalPage.headerSection.headerText.value;e.portalPage.headerTextSize=parseInt(r.portalPage.headerSection.headerTextSize.value);e.portalPage.logoId=r.portalPage.headerSection.headerLogo.value===null?null:parseInt(r.portalPage.headerSection.headerLogo.value);e.portalPage.logoPaddingTop=parseInt(r.portalPage.headerSection.headerLogoPaddingTop.value);e.portalPage.logoPaddingBottom=parseInt(r.portalPage.headerSection.headerLogoPaddingBottom.value);e.portalPage.logoPaddingLeft=parseInt(r.portalPage.headerSection.headerLogoPaddingLeft.value);e.portalPage.logoPaddingRight=parseInt(r.portalPage.headerSection.headerLogoPaddingRight.value);e.loginPage.logoId=parseInt(r.loginPage.section.logo.value);e.loginPage.backgroundImageId=r.loginPage.section.backgroundImageChooser.value===null?null:parseInt(r.loginPage.section.backgroundImageChooser.value);e.emailTemplate.logoId=parseInt(r.emailTemplatePage.section.logo.value);r.emailMarketingEnabled===!0&&(e.emailMarketingTemplate.headingBackgroundColor=r.emailMarketingTemplatePage.section.headingBackgroundColor.value.replace(/#/g,""),e.emailMarketingTemplate.headerLogoId=parseInt(r.emailMarketingTemplatePage.section.headerLogo.value),e.emailMarketingTemplate.footerLogoId=parseInt(r.emailMarketingTemplatePage.section.footerLogo.value),e.emailMarketingTemplate.footerText=r.emailMarketingTemplatePage.section.footerText.value);tt()})}function v(t,i,r){var u=n.getLabColor(t),f=n.getLabColor(i),e=n.getDeltaOfColors(u,f);return e>=r}function k(n){var t={colorCombinations:[],colorPairType:{LINK:1,TEXT_AND_LINK:2,TEXT:3},images:[],pagesWithWarning:[]},u,a,f,o,s,h,c,l;if(r.commonSettings.link.warningDismissed===!1&&(u=r.commonSettings.section.linkColor.value,a=r.commonSettings.link.regularTextColor,v(u,a,r.commonSettings.link.readabilityTextWarningThreshold)===!1&&t.colorCombinations.push({label:"<b>Global Styles > Link Color<\/b> might be difficult to distinguish from regular text:",colorPairs:[{text:u,background:p,type:t.colorPairType.TEXT_AND_LINK}]}),f=[],_.each(r.commonSettings.link.backgroundColors,function(n){v(u,n,r.commonSettings.link.readabilityBackgroundWarningThreshold)===!1&&f.push({text:u,background:n,type:t.colorPairType.LINK})}),f.length!==0&&t.colorCombinations.push({label:"<b>Global Styles > Link Color<\/b> might result in text that is difficult to read:",colorPairs:f})),r.commonSettings.button.warningDismissed===!1&&(o=r.commonSettings.button.textColor,s=r.commonSettings.section.buttonColor.value,v(o,s,r.commonSettings.button.readabilityWarningThreshold)===!1&&t.colorCombinations.push({label:"<b>Global Styles > Button Color<\/b> might result in text that is difficult to read:",colorPairs:[{text:o,background:s,type:t.colorPairType.TEXT}]})),(n===!0||r.activePage===r.portalPage)&&(r.portalPage.headerColors.warningDismissed===!1&&(h=r.portalPage.headerSection.headerTextColor.value,c=r.portalPage.headerSection.headerBackgroundColor.value,v(h,c,r.portalPage.headerColors.readabilityWarningThreshold)===!1&&(t.colorCombinations.push({label:"<b>Portal Page Styles > Header Colors<\/b> might result in text that is difficult to read:",colorPairs:[{text:h,background:c,type:t.colorPairType.TEXT}]}),t.pagesWithWarning.push(r.portalPage.id))),r.portalPage.headerBackgroundImage.warningDismissed===!1&&r.portalPage.headerBackgroundImage.validationMessage!==null&&(t.images.push({label:"<b>Portal Page Styles > Header Background Image<\/b>",message:r.portalPage.headerBackgroundImage.validationMessage}),t.pagesWithWarning.length===0&&t.pagesWithWarning.push(r.portalPage.id)),l=parseInt(r.portalPage.headerSection.headerMode.value),r.portalPage.logoImage.warningDismissed===!1&&r.portalPage.logoImage.validationMessage!==null&&(l===i.uiHeaderMode.LOGO_ONLY||l===i.uiHeaderMode.LOGO_AND_TEXT)&&(t.images.push({label:"<b>Portal Page Styles > Header Logo<\/b>",message:r.portalPage.logoImage.validationMessage}),t.pagesWithWarning.length===0&&t.pagesWithWarning.push(r.portalPage.id))),r.loginPage.logoImage.warningDismissed===!1&&r.loginPage.logoImage.validationMessage!==null&&(n===!0||r.activePage===r.loginPage)&&(t.images.push({label:"<b>Login Page Styles > Login Logo<\/b>",message:r.loginPage.logoImage.validationMessage}),t.pagesWithWarning.push(r.loginPage.id)),r.emailTemplatePage.logoImage.warningDismissed===!1&&r.emailTemplatePage.logoImage.validationMessage!==null&&(n===!0||r.activePage===r.emailTemplatePage)&&(t.images.push({label:"<b>Email Template Styles > Email Template Logo<\/b>",message:r.emailTemplatePage.logoImage.validationMessage}),t.pagesWithWarning.push(r.emailTemplatePage.id)),n===!0&&r.emailMarketingEnabled===!0||r.activePage===r.emailMarketingTemplatePage){if(r.emailMarketingTemplatePage.headingColors.warningDismissed===!1&&r.emailMarketingTemplatePage.headingColors.validationMessage!==null){var w=p,e=r.emailMarketingTemplatePage.section.headingBackgroundColor.value,y=r.commonSettings.link.regularTextColor;v(y,e,r.emailMarketingTemplatePage.headingColors.readabilityWarningTextThreshold)===!1?(t.colorCombinations.push({label:"<b>Email Marketing > Heading Colors<\/b> might result in text that is difficult to read:",colorPairs:[{text:y,background:e,type:t.colorPairType.TEXT}]}),t.pagesWithWarning.push(r.emailMarketingTemplatePage.id)):v(w,e,r.emailMarketingTemplatePage.headingColors.readabilityWarningBackgroundThreshold)===!1&&(t.colorCombinations.push({label:"<b>Email Marketing > Heading Colors<\/b> might result in Heading area that is not visible on Email background:",colorPairs:[{text:r.commonSettings.link.regularTextColor,background:e,type:t.colorPairType.TEXT}]}),t.pagesWithWarning.push(r.emailMarketingTemplatePage.id))}r.emailMarketingTemplatePage.headerLogoImage.warningDismissed===!1&&r.emailMarketingTemplatePage.headerLogoImage.validationMessage!==null&&(t.images.push({label:"<b>Email Marketing Settings > Email Marketing Header Logo<\/b>",message:r.emailMarketingTemplatePage.headerLogoImage.validationMessage}),t.pagesWithWarning.push(r.emailMarketingTemplatePage.id));r.emailMarketingTemplatePage.footerLogoImage.warningDismissed===!1&&r.emailMarketingTemplatePage.footerLogoImage.validationMessage!==null&&(t.images.push({label:"<b>Email Marketing Settings > Email Marketing Footer Logo<\/b>",message:r.emailMarketingTemplatePage.footerLogoImage.validationMessage}),t.pagesWithWarning.push(r.emailMarketingTemplatePage.id))}return t.colorCombinations.length===0&&t.images.length===0?null:t}function b(n){switch(n){case i.portalSkinManagerPage.PORTAL:r.activePage=r.portalPage;break;case i.portalSkinManagerPage.LOGIN:r.activePage=r.loginPage;break;case i.portalSkinManagerPage.EMAIL_TEMPLATE:r.activePage=r.emailTemplatePage;break;case i.portalSkinManagerPage.EMAIL_MARKETING_TEMPLATE:if(r.emailMarketingEnabled)r.activePage=r.emailMarketingTemplatePage;else throw Error("Email Marketing Template page can't be displayed because Email Marketing Module is not enabled.");break;default:throw Error('Page with title "'+n+'" does not exists.');}}function w(t,i,u,f,e){var o=!1;n.openDialog({template:"js/shared/common/views/skinManagerDialog/validationDialogView.html",preCloseCallback:function(){o!==!0&&typeof e=="function"&&e()},controller:["$scope",function(n){n.pendingAction=!1;n.validationError=t;n.buttonText=u===!0?"Ignore and Save":"Ignore";n.warnings=i;n.title=function(){return n.validationError===!0?"Validation Error":"Please confirm your selections"};n.showButtons=function(){return n.validationError===!1};n.dismissWarnings=function(){o=!0;r.commonSettings.link.warningDismissed=!0;r.commonSettings.button.warningDismissed=!0;r.activePage===r.portalPage&&(r.portalPage.headerColors.warningDismissed=!0,r.portalPage.headerBackgroundImage.warningDismissed=!0,r.portalPage.logoImage.warningDismissed=!0);r.activePage===r.loginPage&&(r.loginPage.logoImage.warningDismissed=!0);r.activePage===r.emailMarketingTemplatePage&&(r.emailMarketingTemplatePage.headingColors.warningDismissed=!0,r.emailMarketingTemplatePage.headerLogoImage.warningDismissed=!0,r.emailMarketingTemplatePage.footerLogoImage.warningDismissed=!0);n.closeThisDialog();typeof f=="function"&&f()};n.cancel=function(){n.closeThisDialog();typeof e=="function"&&e();u===!0&&t===!1&&i.pagesWithWarning.length!==0&&i.pagesWithWarning.indexOf(r.activePage.id)===-1&&b(i.pagesWithWarning[0])}}]})}function rt(n,i){if(y!==!0){var f=!1,e=t.defer(),o=t.defer();r.commonSettings.form.$pending?(y=!0,r.$watch(function(){return r.commonSettings.form.$pending},function(){typeof r.commonSettings.form.$pending=="undefined"&&e.resolve()}),u.showProcessingMessage("Validating...",!1),f=!0):e.resolve();n.$pending?(y=!0,r.$watch(function(){return n.$pending},function(){typeof n.$pending=="undefined"&&o.resolve()}),f===!1&&(u.showProcessingMessage("Validating...",!1),f=!0)):o.resolve();t.all([e.promise,o.promise]).then(function(){if(y=!1,f===!0&&u.hideMessage(),r.commonSettings.form.$valid===!0&&n.$valid===!0){var t=k();t!==null?w(!1,t,!1,i):i()}else w(!0,null,!1,i)})}}function d(){return r.loginPage.section!==null&&r.loginPage.section.copyrightTextShadowEnabled!==null&&r.loginPage.section.copyrightTextShadowEnabled.value==="true"}function g(n,t,i,u){var f=typeof u.value!="undefined";if(f===!1)return n.resolve({success:!1,message:null}),n.promise;var e=f===!1||v(t,u.value,r.portalPage.navColors.invalidColorThreshold),s=e===!0,o=null;return e===!1&&(o=i.label.value+" is too similar to "+u.label.value),s?(n.resolve({success:!0}),l(r.portalPage.iframeWindows)):(r.portalPage.form[i.inputName].$dirty===!1&&r.portalPage.form[i.inputName].$setDirty(),n.resolve({success:!1,message:o})),n.promise}function l(n){_.each(n,function(n){n!==null&&n.postMessage(e,window.location.origin)})}function a(n){return typeof n=="undefined"?!1:typeof n.$valid=="undefined"?!1:n.$valid}function ut(n){r.navTextColorRevalidateOnChangeValue=[n].join(";")}function nt(n,t){r.navActiveTextColorRevalidateOnChangeValue=[n,t].join(";")}function ft(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerText===null||a(r.portalPage.form[r.portalPage.headerSection.headerText.inputName])===!1?!1:!0}function et(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerTextSize===null||a(r.portalPage.form[r.portalPage.headerSection.headerTextSize.inputName])===!1?!1:!0}function ot(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerMode===null||a(r.portalPage.form[r.portalPage.headerSection.headerMode.inputName])===!1?!1:!0}r.activePage=null;r.emailMarketingEnabled=!1;r.commonForm=null;r.portalPageForm=null;r.loginPageForm=null;r.emailTemplateForm=null;r.emailMarketingTemplateForm=null;r.pendingAction=!1;r.isLoading=!0;r.navTextColorRevalidateOnChangeValue="";r.navActiveTextColorRevalidateOnChangeValue="";var y=!1,p="#ffffff";r.commonSettings={form:null,section:null,button:{warningDismissed:!1,textColor:p,invalidColorThreshold:15,readabilityWarningThreshold:30},link:{warningDismissed:!1,backgroundColors:["#f5ffeb","#e6f4ff","#fffddc","#fef2f2",p],regularTextColor:"#333333",invalidColorThreshold:20,readabilityTextWarningThreshold:20,readabilityBackgroundWarningThreshold:40}};r.portalPage={id:i.portalSkinManagerPage.PORTAL,title:"Portal Page",url:"Profile/User/Preview",form:null,headerSection:null,navSection:null,iframeWindows:[],headerColors:{warningDismissed:!1,invalidColorThreshold:18,readabilityWarningThreshold:30},navColors:{warningDismissed:!1,invalidColorThreshold:20,activeColorThreshold:2,readabilityWarningThreshold:30},logoImage:{originalId:null,validationMessage:null,warningDismissed:!1},headerBackgroundImage:{originalId:null,validationMessage:null,warningDismissed:!1}};r.loginPage={id:i.portalSkinManagerPage.LOGIN,title:"Login Page",url:"Login/Preview",form:null,section:null,iframeWindows:[],logoImage:{originalId:null,validationMessage:null,warningDismissed:!1},backgroundImage:{originalId:null,validationMessage:null,warningDismissed:!1}};r.emailTemplatePage={id:i.portalSkinManagerPage.EMAIL_TEMPLATE,title:"Email Template",url:"EmailTemplatePreview",form:null,section:null,iframeWindows:[],logoImage:{originalId:null,validationMessage:null,warningDismissed:!1}};r.emailMarketingTemplatePage={id:i.portalSkinManagerPage.EMAIL_MARKETING_TEMPLATE,title:"Email Marketing Template",url:"EmailMarketingTemplatePreview",form:null,section:null,iframeWindows:[],headerLogoImage:{originalId:null,validationMessage:null,warningDismissed:!1},footerLogoImage:{originalId:null,validationMessage:null,warningDismissed:!1},headingColors:{warningDismissed:!1,invalidBackgroundThreshold:3,readabilityWarningBackgroundThreshold:5,invalidTextThreshold:30,readabilityWarningTextThreshold:50},requiredAddressPlaceholders:null,requiredInlineAddressPlaceholder:null,requiredMultiLineAddressPlaceholder:null};r.pageIsActive=function(n){return r.activePage.id===n};r.setActivePage=function(n){rt(r.activePage.form,function(){b(n)})};r.showHeaderText=function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerMode!==null&&parseInt(r.portalPage.headerSection.headerMode.value)!==i.uiHeaderMode.LOGO_ONLY};r.showHeaderLogo=function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerMode!==null&&parseInt(r.portalPage.headerSection.headerMode.value)!==i.uiHeaderMode.TEXT_ONLY};r.copyrightTextShadowIsEnabled=function(){return d()};r.save=function(){function n(){y=!1;w(!0,null,!0)}function t(){var n={name:r.portalPage.headerSection.name,fields:[r.portalPage.headerSection.headerBackgroundColor,r.portalPage.headerSection.headerBackgroundImage,r.portalPage.headerSection.headerTextColor,r.portalPage.headerSection.headerMode]},t=parseInt(r.portalPage.headerSection.headerMode.value),f,e;(t===i.uiHeaderMode.TEXT_ONLY||t===i.uiHeaderMode.LOGO_AND_TEXT)&&(n.fields.push(r.portalPage.headerSection.headerText),n.fields.push(r.portalPage.headerSection.headerTextSize));(t===i.uiHeaderMode.LOGO_ONLY||t===i.uiHeaderMode.LOGO_AND_TEXT)&&(n.fields.push(r.portalPage.headerSection.headerLogo),n.fields.push(r.portalPage.headerSection.headerLogoPaddingTop),n.fields.push(r.portalPage.headerSection.headerLogoPaddingBottom),n.fields.push(r.portalPage.headerSection.headerLogoPaddingLeft),n.fields.push(r.portalPage.headerSection.headerLogoPaddingRight));f={name:r.loginPage.section.name,fields:[r.loginPage.section.logo,r.loginPage.section.backgroundImageChooser,r.loginPage.section.copyrightTextColor,r.loginPage.section.copyrightTextShadowEnabled]};d()===!0&&f.fields.push(r.loginPage.section.copyrightTextShadowColor);e=[{name:r.commonSettings.section.name,fields:[r.commonSettings.section.linkColor,r.commonSettings.section.buttonColor,r.commonSettings.section.font]},{name:r.emailTemplatePage.section.name,fields:[r.emailTemplatePage.section.logo]},{name:r.portalPage.navSection.name,fields:[r.portalPage.navSection.backgroundColor,r.portalPage.navSection.textColor,r.portalPage.navSection.activeTextColor]},f,n];r.emailMarketingEnabled===!0&&e.push({name:r.emailMarketingTemplatePage.section.name,fields:[r.emailMarketingTemplatePage.section.headingBackgroundColor,r.emailMarketingTemplatePage.section.headerLogo,r.emailMarketingTemplatePage.section.footerLogo,r.emailMarketingTemplatePage.section.footerText]});u.showProcessingMessage();o.saveSkin(e).then(function(){h=!0;u.showSuccessMessage();r.closeThisDialog();o.isSettingsPage&&location.reload()})}y!==!0&&(y=!0,u.showProcessingMessage("Validating..."),r.commonSettings.form.submit(function(){r.portalPage.form.submit(function(){r.loginPage.form.submit(function(){r.emailTemplatePage.form.submit(function(){if(r.emailMarketingEnabled===!0)r.emailMarketingTemplatePage.form.submit(function(){y=!1;var n=k(!0);n===null?t():w(!1,n,!0,t,function(){r.pendingAction=!1;u.hideMessage()})},n);else{y=!1;var i=k(!0);i===null?t():w(!1,i,!0,t,function(){r.pendingAction=!1;u.hideMessage()})}},n)},n)},n)},n))};r.validateImageSize=function(n,i){var u=t.defer();switch(n){case"header-logo-image-size":if(i===r.portalPage.logoImage.originalId)r.portalPage.logoImage.warningDismissed===!1?o.validateImageSize(i).then(function(n){n.success===!1&&(r.portalPage.logoImage.validationMessage=n.message);u.resolve({success:!0})}):u.resolve({success:!0});else return r.portalPage.logoImage.validationMessage=null,o.validateImageSize(i);break;case"header-background-image-size":if(i===r.portalPage.headerBackgroundImage.originalId)r.portalPage.headerBackgroundImage.warningDismissed===!1?o.validateImageSize(i).then(function(n){n.success===!1&&(r.portalPage.headerBackgroundImage.validationMessage=n.message);u.resolve({success:!0})}):u.resolve({success:!0});else return r.portalPage.headerBackgroundImage.validationMessage=null,o.validateImageSize(i);break;case"login-logo-image-size":if(i===r.loginPage.logoImage.originalId)r.loginPage.logoImage.warningDismissed===!1?o.validateImageSize(i).then(function(n){n.success===!1&&(r.loginPage.logoImage.validationMessage=n.message);u.resolve({success:!0})}):u.resolve({success:!0});else return r.loginPage.logoImage.validationMessage=null,o.validateImageSize(i);break;case"email-template-logo-size":if(i===r.emailTemplatePage.logoImage.originalId)r.emailTemplatePage.logoImage.warningDismissed===!1?o.validateImageSize(i).then(function(n){n.success===!1&&(r.emailTemplatePage.logoImage.validationMessage=n.message);u.resolve({success:!0})}):u.resolve({success:!0});else return r.emailTemplatePage.logoImage.validationMessage=null,o.validateImageSize(i);break;case"email-marketing-header-logo-size":if(i===r.emailMarketingTemplatePage.headerLogoImage.originalId)r.emailMarketingTemplatePage.headerLogoImage.warningDismissed===!1?o.validateImageSize(i).then(function(n){n.success===!1&&(r.emailMarketingTemplatePage.headerLogoImage.validationMessage=n.message);u.resolve({success:!0})}):u.resolve({success:!0});else return r.emailMarketingTemplatePage.headerLogoImage.validationMessage=null,o.validateImageSize(i);break;case"email-marketing-footer-logo-size":if(i===r.emailMarketingTemplatePage.footerLogoImage.originalId)r.emailMarketingTemplatePage.footerLogoImage.warningDismissed===!1?o.validateImageSize(i).then(function(n){n.success===!1&&(r.emailMarketingTemplatePage.footerLogoImage.validationMessage=n.message);u.resolve({success:!0})}):u.resolve({success:!0});else return r.emailMarketingTemplatePage.footerLogoImage.validationMessage=null,o.validateImageSize(i);break;default:throw"Unknown validator "+n;}return u.promise};r.invalidLinkColorValidator=function(n,i){var u,s;if(n!=="invalid-link-color")throw Error("Unknown validator name: "+n);var f=t.defer(),e=null,o=r.commonSettings.link.backgroundColors;for(u=0;u<o.length;u++)if(s=o[u],v(i,s,r.commonSettings.link.invalidColorThreshold)===!1){e="Too similar to system background colors";break}return e!==null?f.resolve({success:!1,message:e}):f.resolve({success:!0}),f.promise};r.invalidButtonColorValidator=function(n,i){if(n!=="invalid-button-color")throw Error("Unknown validator name: "+n);var u=t.defer(),f=r.commonSettings.button.textColor;return v(i,f,r.commonSettings.button.invalidColorThreshold)===!1?u.resolve({success:!1,message:"Too similar to background & button text color (white)"}):e.portalPage.backgroundColor!==p&&v(i,e.portalPage.backgroundColor,r.commonSettings.button.invalidColorThreshold)===!1?u.resolve({success:!1,message:"Too similar to page background color"}):u.resolve({success:!0}),u.promise};r.invalidHeaderTextColorValidator=function(n,i){if(n!=="invalid-header-text-color")throw Error("Unknown validator name: "+n);var u=t.defer(),e=i,f=r.portalPage.headerSection.headerBackgroundColor.value;return typeof f=="undefined"?(u.resolve({success:!1,message:null}),u.promise):(v(e,f,r.portalPage.headerColors.invalidColorThreshold)===!1?(r.portalPage.form[r.portalPage.headerSection.headerTextColor.inputName].$dirty===!1&&r.portalPage.form[r.portalPage.headerSection.headerTextColor.inputName].$setDirty(),u.resolve({success:!1,message:"Header Text Color is too similar to Header Background Color"})):(u.resolve({success:!0}),l(r.portalPage.iframeWindows)),u.promise)};r.handleNavColorAction=function(n){_.each(r.portalPage.iframeWindows,function(t){t!==null&&(n==="color-picker-opened"?t.postMessage({action:"skin-manager-preview-nav-show"},window.location.origin):n==="color-picker-closed"&&t.postMessage({action:"skin-manager-preview-nav-hide"},window.location.origin))})};r.invalidNavTextColorValidator=function(n,i){if(n!=="invalid-nav-text-color")throw Error("Unknown validator name: "+n);var u=t.defer();return g(u,i,r.portalPage.navSection.textColor,r.portalPage.navSection.backgroundColor)};r.invalidNavActiveTextColorValidator=function(n,i){if(n!=="invalid-nav-active-text-color")throw Error("Unknown validator name: "+n);var u=t.defer(),f=i,e=r.portalPage.navSection.textColor.value;return typeof e=="undefined"?(u.resolve({success:!1,message:null}),u.promise):v(f,e,r.portalPage.navColors.activeColorThreshold)===!1?(r.portalPage.form[r.portalPage.navSection.activeTextColor.inputName].$dirty===!1&&r.portalPage.form[r.portalPage.navSection.activeTextColor.inputName].$setDirty(),u.resolve({success:!1,message:"Active Text Color is too similar to Text Color"}),u.promise):g(u,f,r.portalPage.navSection.activeTextColor,r.portalPage.navSection.backgroundColor)};r.invalidEmailMarketingHeadingBackgorundColorValidator=function(n,i){if(n!=="invalid-heading-background-color")throw Error("Unknown validator name: "+n);var u=t.defer(),e=p,f=i,o=r.commonSettings.link.regularTextColor;return typeof f=="undefined"?(u.resolve({success:!1,message:null}),u.promise):(v(f,e,r.emailMarketingTemplatePage.headingColors.invalidBackgroundThreshold)===!1?(r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.headingBackgroundColor.inputName].$dirty===!1&&r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.headingBackgroundColor.inputName].$setDirty(),u.resolve({success:!1,message:"Heading background color is too similar to email background color"})):v(f,o,r.emailMarketingTemplatePage.headingColors.invalidTextThreshold)===!1?(r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.headingBackgroundColor.inputName].$dirty===!1&&r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.headingBackgroundColor.inputName].$setDirty(),u.resolve({success:!1,message:"Heading background color is too similar to heading text color"})):(u.resolve({success:!0}),l(r.emailMarketingTemplatePage.iframeWindows)),u.promise)};r.invalidEmailMarketingTamplateFooterTextAddressPlaceholders=function(n,i){var f,u,e;if(n!=="footer-text-address-placeholders")throw new Error('"'+n+'" unknown validator name.');if(f=t.defer(),u=!1,i!==null&&typeof i!="undefined"&&typeof i=="string"&&(u=i.indexOf(r.emailMarketingTemplatePage.requiredInlineAddressPlaceholder)!==-1,u===!1&&(u=i.indexOf(r.emailMarketingTemplatePage.requiredMultiLineAddressPlaceholder)!==-1),u===!1)){for(e=!0,index=0;index<r.emailMarketingTemplatePage.requiredAddressPlaceholders.length;index++)if(i.indexOf(r.emailMarketingTemplatePage.requiredAddressPlaceholders[index])===-1){e=!1;break}u=e}return u===!0?f.resolve({success:!0}):f.resolve({success:!1,message:"Footer Text must contain placeholders for Address: Full Address (Inline) or Full Address (Multiline) or partial address created from Street, City, ZIP/Postal Code and Country"}),f.promise};r.$watch(function(){return r.commonSettings.section===null||r.commonSettings.section.linkColor===null||a(r.commonSettings.form[r.commonSettings.section.linkColor.inputName])===!1?null:r.commonSettings.section.linkColor.value},function(n,t){n!==null&&n!==t&&(r.commonSettings.link.warningDismissed=!1,e.common.linkColor=n.replace(/#/g,""),l(r.portalPage.iframeWindows),l(r.loginPage.iframeWindows),l(r.emailTemplatePage.iframeWindows),r.emailMarketingEnabled===!0&&l(r.emailMarketingTemplatePage.iframeWindows))},!1);r.$watch(function(){return r.commonSettings.section===null||r.commonSettings.section.buttonColor===null||a(r.commonSettings.form[r.commonSettings.section.buttonColor.inputName])===!1?null:r.commonSettings.section.buttonColor.value},function(n,t){n!==null&&n!==t&&(r.commonSettings.button.warningDismissed=!1,e.common.buttonColor=n.replace(/#/g,""),l(r.portalPage.iframeWindows),l(r.loginPage.iframeWindows),l(r.emailTemplatePage.iframeWindows),r.emailMarketingEnabled===!0&&l(r.emailMarketingTemplatePage.iframeWindows))},!1);r.$watch(function(){return r.commonSettings.section===null||r.commonSettings.section.font===null||a(r.commonSettings.form[r.commonSettings.section.font.inputName])===!1?null:r.commonSettings.section.font.value},function(n,t){n!==null&&n!==t&&(e.common.font=parseInt(n),l(r.portalPage.iframeWindows),l(r.loginPage.iframeWindows))},!1);r.$watch(function(){return r.portalPage.navSection===null||r.portalPage.navSection.backgroundColor===null||a(r.portalPage.form[r.portalPage.navSection.backgroundColor.inputName])===!1?null:r.portalPage.navSection.backgroundColor.value},function(n,t){if(n!==null&&n!==t){e.portalPage.navBackgroundColor=n.replace(/#/g,"");var i="";(r.portalPage.navSection===null||r.portalPage.navSection.textColor===null)&&(i=r.portalPage.navSection.textColor.value);ut(n);nt(i,n);l(r.portalPage.iframeWindows)}},!1);r.$watch(function(){return r.portalPage.navSection===null||r.portalPage.navSection.textColor===null||a(r.portalPage.form[r.portalPage.navSection.textColor.inputName])===!1?null:r.portalPage.navSection.textColor.value},function(n,t){if(n!==null&&n!==t){e.portalPage.navTextColor=n.replace(/#/g,"");var i="";(r.portalPage.navSection===null||r.portalPage.navSection.backgroundColor===null)&&(i=r.portalPage.navSection.backgroundColor.value);nt(n,i);l(r.portalPage.iframeWindows)}},!1);r.$watch(function(){return r.portalPage.navSection===null||r.portalPage.navSection.activeTextColor===null||a(r.portalPage.form[r.portalPage.navSection.activeTextColor.inputName])===!1?null:r.portalPage.navSection.activeTextColor.value},function(n,t){n!==null&&n!==t&&(e.portalPage.navActiveTextColor=n.replace(/#/g,""),l(r.portalPage.iframeWindows))},!1);r.$watch(function(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerTextColor===null||a(r.portalPage.form[r.portalPage.headerSection.headerTextColor.inputName])===!1?null:r.portalPage.headerSection.headerTextColor.value},function(n,t){n!==null&&n!==t&&(r.portalPage.headerColors.warningDismissed=!1,e.portalPage.headerTextColor=n.replace(/#/g,""),l(r.portalPage.iframeWindows))},!1);r.$watch(function(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerBackgroundColor===null||a(r.portalPage.form[r.portalPage.headerSection.headerBackgroundColor.inputName])===!1?null:r.portalPage.headerSection.headerBackgroundColor.value},function(n,t){n!==null&&n!==t&&(r.portalPage.headerColors.warningDismissed=!1,e.portalPage.headerBackgroundColor=n.replace(/#/g,""))},!1);r.$watch(function(){return ft()===!1?null:r.portalPage.headerSection.headerText.value},function(n,t){if(n!==t){e.portalPage.headerText=n===null?"":n;var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.TEXT_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.LOGO_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return et()===!1?null:r.portalPage.headerSection.headerTextSize.value},function(n,t){if(n!==t){e.portalPage.headerTextSize=parseInt(n);var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.TEXT_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.LOGO_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerText!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerText.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerText.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerTextSize!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerTextSize.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerTextSize.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){if(r.portalPage.headerSection===null||r.portalPage.headerSection.headerBackgroundImage===null)return-1;var n=r.portalPage.form[r.portalPage.headerSection.headerBackgroundImage.inputName];return typeof n=="undefined"?-1:typeof n.$valid=="undefined"?-1:n.$valid?r.portalPage.headerSection.headerBackgroundImage.value:null},function(n,t){n!==t&&n!==-1&&(e.portalPage.headerBackgroundImageId=n===null?null:parseInt(n),l(r.portalPage.iframeWindows))},!1);r.$watch(function(){if(r.portalPage.headerSection===null||r.portalPage.headerSection.headerLogo===null)return-1;var n=r.portalPage.form[r.portalPage.headerSection.headerLogo.inputName];return typeof n=="undefined"?-1:typeof n.$valid=="undefined"?-1:n.$valid?r.portalPage.headerSection.headerLogo.value:null},function(n,t){if(n!==t&&n!==-1){e.portalPage.logoId=n===null?null:parseInt(n);var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.LOGO_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.TEXT_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerLogoPaddingTop===null||a(r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingTop.inputName])===!1?null:r.portalPage.headerSection.headerLogoPaddingTop.value},function(n,t){if(n!==null&&n!==t){e.portalPage.logoPaddingTop=parseInt(n);var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.LOGO_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.TEXT_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerLogoPaddingBottom===null||a(r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingBottom.inputName])===!1?null:r.portalPage.headerSection.headerLogoPaddingBottom.value},function(n,t){if(n!==null&&n!==t){e.portalPage.logoPaddingBottom=parseInt(n);var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.LOGO_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.TEXT_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerLogoPaddingLeft===null||a(r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingLeft.inputName])===!1?null:r.portalPage.headerSection.headerLogoPaddingLeft.value},function(n,t){if(n!==null&&n!==t){e.portalPage.logoPaddingLeft=parseInt(n);var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.LOGO_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.TEXT_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.portalPage.headerSection===null||r.portalPage.headerSection.headerLogoPaddingRight===null||a(r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingRight.inputName])===!1?null:r.portalPage.headerSection.headerLogoPaddingRight.value},function(n,t){if(n!==null&&n!==t){e.portalPage.logoPaddingRight=parseInt(n);var u=parseInt(r.portalPage.headerSection.headerMode.value);switch(u){case i.uiHeaderMode.LOGO_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:l(r.portalPage.iframeWindows);break;case i.uiHeaderMode.TEXT_ONLY:break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerLogo!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerLogo.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerLogo.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerLogoPaddingTop!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingTop.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingTop.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerLogoPaddingBottom!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingBottom.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingBottom.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerLogoPaddingLeft!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingLeft.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingLeft.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){return r.portalPage.headerSection!==null&&r.portalPage.headerSection.headerLogoPaddingRight!==null&&typeof r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingRight.inputName]!="undefined"?r.portalPage.form[r.portalPage.headerSection.headerLogoPaddingRight.inputName]:null},function(n,t){n!==null&&n!==t&&n.$setDirty()},!1);r.$watch(function(){return ot()===!1?null:r.portalPage.headerSection.headerMode.value},function(n,t){if(n!==null&&n!==t){var u=parseInt(n);switch(u){case i.uiHeaderMode.TEXT_ONLY:case i.uiHeaderMode.LOGO_ONLY:case i.uiHeaderMode.LOGO_AND_TEXT:e.portalPage.headerMode=u;l(r.portalPage.iframeWindows);break;default:throw Error("Not supported header mode: "+u);}}},!1);r.$watch(function(){return r.loginPage.section===null||r.loginPage.section.logo===null||a(r.loginPage.form[r.loginPage.section.logo.inputName])===!1?null:r.loginPage.section.logo.value},function(n,t){n!==t&&(e.loginPage.logoId=n===null?null:parseInt(n),l(r.loginPage.iframeWindows))},!1);r.$watch(function(){return r.loginPage.section===null||r.loginPage.section.backgroundImageChooser===null||a(r.loginPage.form[r.loginPage.section.backgroundImageChooser.inputName])===!1?null:parseInt(r.loginPage.section.backgroundImageChooser.value)},function(n,t){n!==null&&n!==t&&(e.loginPage.backgroundImageId=n?n:null,l(r.loginPage.iframeWindows))},!1);r.$watch(function(){return r.loginPage.section===null||r.loginPage.section.copyrightTextColor===null||a(r.loginPage.form[r.loginPage.section.copyrightTextColor.inputName])===!1?null:r.loginPage.section.copyrightTextColor.value},function(n,t){n!==null&&n!==t&&(e.loginPage.copyrightTextColor=n.replace(/#/g,""),l(r.loginPage.iframeWindows))},!1);r.$watch(function(){return d()===!1?null:r.loginPage.section===null||r.loginPage.section.copyrightTextShadowColor===null||a(r.loginPage.form[r.loginPage.section.copyrightTextShadowColor.inputName])===!1?null:r.loginPage.section.copyrightTextShadowColor.value},function(n,t){n!==null&&n!==t&&(e.loginPage.copyrightTextShadowColor=n.replace(/#/g,""),l(r.loginPage.iframeWindows))},!1);r.$watch(function(){return r.loginPage.section===null||r.loginPage.section.copyrightTextShadowEnabled===null?null:r.loginPage.section.copyrightTextShadowEnabled.value},function(n,t){n!==null&&n!==t&&(e.loginPage.copyrightTextShadowEnabled=n==="true",l(r.loginPage.iframeWindows))},!1);r.$watch(function(){return r.emailTemplatePage.section===null||r.emailTemplatePage.section.logo===null||a(r.emailTemplatePage.form[r.emailTemplatePage.section.logo.inputName])===!1?null:r.emailTemplatePage.section.logo.value},function(n,t){n!==t&&(e.emailTemplate.logoId=n===null?null:parseInt(n),l(r.emailTemplatePage.iframeWindows))},!1);r.$watch(function(){return r.emailMarketingTemplatePage.section===null||r.emailMarketingTemplatePage.section.headerLogo===null||a(r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.headerLogo.inputName])===!1?null:r.emailMarketingTemplatePage.section.headerLogo.value},function(n,t){n!==t&&(e.emailMarketingTemplate.headerLogoId=n===null?null:parseInt(n),l(r.emailMarketingTemplatePage.iframeWindows))},!1);r.$watch(function(){return r.emailMarketingTemplatePage.section===null||r.emailMarketingTemplatePage.section.footerLogo===null||a(r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.footerLogo.inputName])===!1?null:r.emailMarketingTemplatePage.section.footerLogo.value},function(n,t){n!==t&&(e.emailMarketingTemplate.footerLogoId=n===null?null:parseInt(n),l(r.emailMarketingTemplatePage.iframeWindows))},!1);r.$watch(function(){return r.emailMarketingTemplatePage.section===null||r.emailMarketingTemplatePage.section.headingBackgroundColor===null||a(r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.headingBackgroundColor.inputName])===!1?null:r.emailMarketingTemplatePage.section.headingBackgroundColor.value},function(n,t){n!==null&&n!==t&&(r.emailMarketingTemplatePage.headingColors.warningDismissed=!1,e.emailMarketingTemplate.headingBackgroundColor=n.replace(/#/g,""),l(r.emailMarketingTemplatePage.iframeWindows))},!1);r.$watch(function(){return r.emailMarketingTemplatePage.section===null||r.emailMarketingTemplatePage.section.footerText===null||a(r.emailMarketingTemplatePage.form[r.emailMarketingTemplatePage.section.footerText.inputName])===!1?null:r.emailMarketingTemplatePage.section.footerText.value},function(n,t){n!==null&&n!==t&&(e.emailMarketingTemplate.footerText=n,l(r.emailMarketingTemplatePage.iframeWindows))},!1);it()}]}),s.promise}}]);angular.module("sharedElements").service("systemMessageService",["securityService",function(n){this.dismiss=function(t){return n.httpPost("data/Common/SystemMessage/Dismiss",{id:t})}}]);angular.module("sharedElements").service("testService",["appDetailsValue","helpService","translationHelperService",function(n,t,i){function e(t,r,f){n.isTestMode===!0&&((typeof f=="undefined"||f===null)&&(f=""),f=i.replaceVariablesInText(f),t.attr(u+r,f))}function s(){var i,n;r();$(window).unbind("scroll",r);$(window).bind("scroll",r);$(t.scrollableElementsSelector).unbind("scroll",r);$(t.scrollableElementsSelector).bind("scroll",r);i=[];$("*").filter(":visible").each(function(n,t){$.each($(t)[0].attributes,function(n,r){r.name.indexOf(u)===0&&i.push(t)})});n=[];$.each(i,function(t,i){var u=$(i).offset().top,f=$(i).offset().left,r=u+"-"+f;typeof n[r]=="undefined"&&(n[r]={top:u,left:f,elements:[]});n[r].elements.push(i)});$.each(Object.values(n),function(n,t){var i=$(document.createElement("div")),r;i.addClass(f);i.css({position:"absolute",top:t.top,left:t.left,width:"10px",height:"10px",borderRadius:"50%",backgroundColor:"red",zIndex:99999,border:"1px black solid"});r="";$.each(t.elements,function(n,t){var i="";$.each(t.attributes,function(n,t){t.name.indexOf(u)===0&&(i+=t.value===""?t.name+"\n":t.name+" = "+t.value+"\n")});r=r+i+"\n"});i.attr("title",r);i.on("click",function(){alert($(this).attr("title"))});$("body").append(i)})}function r(){$("."+f).remove()}function o(n){n.keyCode===72&&s()}var u="data-t-",f;this.getTestAttributePrefix=function(){return u};this.isTestModeEnabled=function(){return n.isTestMode===!0};this.setAttribute=function(n,t,i){e(n,t,i)};this.setFormFieldAttribute=function(t,r){if(n.isTestMode===!0){var u=null;u=r.label!==null&&r.label.value!==null&&r.label.value!==""?r.label.value:r.name;u=i.replaceVariablesInText(u);e(t,"form-field",u)}};this.getAttributeString=function(t,r){return n.isTestMode!==!0?"":((typeof r=="undefined"||r===null)&&(r=""),r=i.replaceVariablesInText(r)," "+u+t+'="'+r+'"')};f="test-help-element";this.initHelpTestElements=function(t){n.isTestMode===!0&&($(document).unbind("keydown",o),$(document).bind("keydown",o),t.$on("$routeChangeStart",function(){r()}))};this.initTest=function(){function t(n,t){var i=$('input[data-t-name-field="'+n+'"], input[data-t-label-field="'+n+'"], textarea[data-t-name-field="'+n+'"], textarea[data-t-label-field="'+n+'"]');i.val(t);i.change();i.blur()}function r(n,t){var r=$('div[data-t-label-field="'+n+'"], div[data-t-name-field="'+n+'"]'),i;return r.click(),i=$q.defer(),setTimeout(function(){var u=$('div[data-t-label-field-items="'+n+'"], div[data-t-name-field-items="'+n+'"]'),r=u.find('li[data-t-label-item="'+t+'"], li[data-t-name-item="'+t+'"]');r.click();r.change();i.resolve()},300),i.promise}function l(n,t){var r=$('div[data-t-label-field="'+n+'"], div[data-t-name-field="'+n+'"]'),i=r.find('input[data-t-label-item="'+t+'"], input[data-t-name-item="'+t+'"]');i.prop("checked",!0);i.click();i.blur()}function h(n,t){var i=$('div[data-t-label-field="'+n+'"], div[data-t-name-field="'+n+'"]'),r=i.find('input[data-t-label-item="'+t+'"], input[data-t-name-item="'+t+'"]');r.click()}function e(n){var t=$('input[data-t-label-field="'+n+'"], input[data-t-name-field="'+n+'"]');t.click()}function u(n){var t=$('button[data-t-label-submit="'+n+'"], button[data-t-name-submit="'+n+'"]');t[0].click()}function o(n){var t=$('a[data-t-action="'+n+'"]');t.click()}function a(n,t,i){typeof i=="undefined"&&(i=0);var r=$('td[data-t-label-cell="'+n+'"] a:contains("'+t+'")');r[i].click()}function c(n,t){typeof t=="undefined"&&(t=0);var i=$('label[data-t-label-bulk-checkbox="'+n+'"]');i[t].click()}function v(){t("Group Name","Group X");e("System Administration");e("Partner Module Administration");u("Save")}function y(){o("New Internal Group")}function p(){a("Name","Case Studies")}function w(){c("Case Study - Cyclone Consulting");c("Case Study - Hillstone Power");setTimeout(function(){o("Download")},1e3)}function b(){o("New Internal User")}function k(){r("Partner","Mash Technology").then(function(){setTimeout(function(){r("FiscalYear","2019").then(function(){setTimeout(function(){e("Active")},1e3)})},1e3)})}function d(){r("Partner","21").then(function(){setTimeout(function(){t("Title","Ondrej");t("Description","Ondrej");t("RequestedAmount","1000");t("AllocatedDate","05/15/2019")},1e3)})}function g(){t("Email","ondrod23@wic4.com");r("Organization","WidgetCloud").then(function(){setTimeout(function(){l("Action","Associate domain with WidgetCloud");u("Save");setTimeout(function(){t("First Name","Ondrej");t("Last Name","Dancik");t("Job Title","Dev");t("Phone","XXX-XXX-XXXX");r("I want to receive email communications","Yes");h("Group Membership","Administrators");h("Group Membership","Group X");u("Invite")},1e3)},1e3)})}function nt(){t("Email","efeinstein@widgetcloud.com");t("Password","123456");u("main")}var s,i,f;n.isTestMode===!0&&((s="run-test",$("#"+s).length>0)||(i=$(document.createElement("button")),i.attr("type","button"),i.attr("id",s),i.text("Run Test!"),f=$(".n-layout-header-main"),f.length===0&&(f=$(".intercept-content")),f.prepend(i),i.click(function(){switch(window.location.pathname){case"/Admin/Groups":y();break;case"/Admin/Users":b();break;case"/Admin/Users/New":g();break;case"/MDF/Requests/New":d();break;case"/BizPlanning/Plans/New":k();break;case"/Admin/Groups/NewInternal":v();break;case"/Library/1/Folders":p();break;case"/Library/1/Folders/4":w();break;case"/":case"/Login":nt()}})))}}]);angular.module("sharedElements").service("trainingAndCertificationsService",["securityService",function(n){this.getQuizzes=function(t){return n.httpGet("data/Common/TrainingAndCertifications/GetQuizzis",{courseId:t})};this.getQuizzesForFilter=function(t){return n.httpGet("data/Common/TrainingAndCertifications/GetQuizzesForFilter",{courseId:t})};this.getQuestionsForFilter=function(t){return n.httpGet("data/Common/TrainingAndCertifications/GetQuestionsForFilter",{quizId:t})};this.getAnswersForFilter=function(t){return n.httpGet("data/Common/TrainingAndCertifications/GetAnswersForFilter",{questionId:t})}}]);angular.module("sharedElements").service("translationAjaxService",["$location","$routeParams","exceptionService","helpService","securityService",function(n,t,i,r,u){function s(){return typeof translationService!="undefined"}function f(){var n=t.hash;return typeof n=="undefined"&&(n=null),n}function e(){var t=n.path();return t.indexOf("/Me/ResetPassword/")!==-1||t.indexOf("/Me/Activate/")!==-1}function o(n,t){return e()===!0?u.httpGet("data/Common/Translation/SetLanguagePrivateWizard",{languageId:n,hash:f()}):u.httpGet("data/Common/Translation/SetLanguage",{languageId:n,isPublic:t})}this.setLanguage=function(n,t){return o(n,t)};this.init=function(n){s()!==!1&&(translationService.translateBatch=function(n,t,i){return u.httpPost("data/Common/Translation/TranslateBatch",{targetLanguage:t,textSegments:n,isPublic:i})},translationService.refreshLanguage=function(n){return typeof n=="undefined"&&(n=translationService.getCurrentLanguageId()),o(n,translationService.isPublic)},translationService.logError=function(n){return i.logError(n)},translationService.openWarningDialog=function(n,t,i){return r.openWarningMessageDialog(n,t,i)},n===!0&&(translationService.saveStatCollection=e()===!0?function(n,t){return u.httpPost("data/Common/Translation/SaveStatCollectionPrivateWizard",{id:n,hash:f(),stats:t})}:function(n,t){return u.httpPost("data/Common/Translation/SaveStatCollection",{id:n,stats:t})}))}}]);angular.module("sharedElements").service("translationHelperService",["appDetailsValue",function(n){function t(){return typeof translationService!="undefined"}function r(n,i){t()!==!1&&(typeof i=="undefined"&&(i=n.closest("."+translationService.className.doNotTranslate).length===0),i===!1&&n.addClass(translationService.className.doNotTranslate))}function i(i,r,f,e){if(t()===!1||n.noTranslateForApp===!0&&e===!1)return i;var s="#wrapTextInVar_replace#",o=$(document.createElement(translationService.variableTagName));return o.text(s),typeof r!="undefined"&&r!==null&&o.attr(translationService.variableAttrName,r),f===!0&&u(o),o[0].outerHTML.replace(s,i)}function u(n){t()!==!1&&n.addClass(translationService.className.isolate)}this.isEnabled=function(){return t()};this.doNotTranslateClassName=function(){return t()===!1?"":translationService.className.doNotTranslate};this.setTranslateAttributeBasedOnParent=function(n,i){if(t()!==!1){var u=$(i).closest("."+translationService.className.doNotTranslate).length===0;r(n,u)}};this.setTranslateAttribute=function(n,t){r(n,t)};this.getTranslateClass=function(n){return t()===!1||n===!0?"":translationService.className.doNotTranslate};this.wrapTextInVarHeader=function(n,t,r){return i(n,t,r,!0)};this.wrapTextInVar=function(n,t,r){return i(n,t,r,!1)};this.setIsolateAttribute=function(n){u(n)};this.removeTranslateAttribute=function(n){t()!==!1&&(n.removeClass(translationService.className.doNotTranslate),typeof n[0]!="undefined"&&(n[0].ct_noTranslate=!1))};this.setTranslatedCallback=function(n,i,r){t()!==!1&&(n[0][translationService.onTranslateCallbackName]=i,n[0][translationService.onTranslateCallbackDataName]=r)};this.replaceVariablesInText=function(n){if(t()===!1)return n;if((n+"").indexOf(translationService.variableTagName)!==-1){var i=$(document.createElement("div"));i.html(n);i.find(translationService.variableTagName).each(function(){$(this).replaceWith($(this).text())});n=i.html()}return n};this.variableName={USER_NAME:"user-name",USER_EMAIL:"user-email",VALUE:"value",VALUE_1:"value-1",VALUE_2:"value-2",VISIBLE_RECORDS:"visible-records",TOTAL_RECORDS:"total-records",DATE:"date",ENTITY_NAME:"entity-name",ORGANIZATION_NAME:"organization-name",EMAIL_DOMAIN:"email-domain",PORTAL_NAME:"portal-name",ORIGINAL_FIELD_VALUE:"original-field-value",UPDATED_FIELD_VALUE:"updated-field-value",TYPE:"type",COMPLETED_COURSE_ITEMS:"completed-course-items",TOTAL_COURSE_ITEMS:"total-course-items",CHANGES:"changes",COUNT:"count",FIELD_NAME:"field-name",FIELD_VALUE:"field-value"};this.constant={CHANNELTIVITY:i("Channeltivity","channeltivity",!1)}}]);angular.module("sharedElements").service("validationMessageService",["appDetailsValue","helpService","constants","translationHelperService",function(n,t,i,r){this.required="Required";this.invalidDropdownValue="Invalid selection";this.invalidMultiselectValue="Remove invalid selection(s)";this.formatDomain="Valid email domain expected";this.formatEmailAddress="Valid email address expected";this.formatEmailAddressesWithSemicolons="Valid email addresses expected, separated by semicolons";this.formatEmailAddressesWithSemicolonsCommaNewLine="Valid email addresses expected, separated by semicolons, commas or new lines";this.formatNumeric="Number expected";this.formatInteger="Whole number expected (no decimal mark or separators)";this.formatUrl="Valid URL expected";this.formatHexColor="Valid hexadecimal color expected";this.maxCharLength=function(n){return"Too long. No more than "+n+" characters allowed"};this.formatDate=function(){var t=moment().year(),i=n.localization.shortDatePattern;return"Date expected. Valid format: "+moment([t,11,31,23,59,59,0]).format(i)};this.formatDatetime=function(){var t=moment().year(),i=n.localization.shortDatePattern+" "+n.localization.shortTimePattern;return"Date and time expected. Valid format: "+moment([t,11,31,23,59,59,0]).format(i)};this.formatCurrency=function(){var t=n.localization.numberDecimalDigits,i="";return i=t===0?"no decimal digits":t===1?"no more than one decimal digit":"no more than "+t+" decimal digits","Amount with "+i+" expected (no currency symbols or separators)"};this.formatDouble=function(){var t=n.localization.numberDecimalDigits,i="";return i=t===0?"no decimal digits":t===1?"no more than one decimal digit":"no more than "+t+" decimal digits","Decimal number with "+i+" expected (no separators)"};this.range=function(n,i,r){switch(n){case"integer":return"Number between "+t.formatInteger(i)+" and "+t.formatInteger(r)+" expected";case"double":case"percent":return"Decimal number between "+t.formatNumber(i)+" and "+t.formatNumber(r)+" expected";case"currency":return"Amount between "+t.formatNumber(i)+" and "+t.formatNumber(r)+" expected";case"date":return"Date between "+i+" and "+r+" expected";case"datetime":return"Date and time between "+i+" and "+r+" expected";default:throw"Validation Message Service - Not implemented data type: "+n;}};this.numberCompare=function(n,r){switch(n){case i.validationCompareOperator.EQUAL:return"Number equal to "+t.formatInteger(r)+" expected";case i.validationCompareOperator.NOT_EQUAL:return"Number not equal to "+t.formatInteger(r)+" expected";case i.validationCompareOperator.GREATER_THAN:return"Number greater than "+t.formatInteger(r)+" expected";case i.validationCompareOperator.GREATER_THAN_EQUAL:return"Number greater than or equal to "+t.formatInteger(r)+" expected";case i.validationCompareOperator.LESS_THAN:return"Number less than "+t.formatInteger(r)+" expected";case i.validationCompareOperator.LESS_THAN_EQUAL:return"Number less than or equal to "+t.formatInteger(r)+" expected";default:throw"Validation Message Service - Not implemented compare operator: "+n;}};this.decimalNumberCompare=function(n,r){switch(n){case i.validationCompareOperator.EQUAL:return"Decimal number equal to "+t.formatNumber(r)+" expected";case i.validationCompareOperator.NOT_EQUAL:return"Decimal number not equal to "+t.formatNumber(r)+" expected";case i.validationCompareOperator.GREATER_THAN:return"Decimal number greater than "+t.formatNumber(r)+" expected";case i.validationCompareOperator.GREATER_THAN_EQUAL:return"Decimal number greater than or equal to "+t.formatNumber(r)+" expected";case i.validationCompareOperator.LESS_THAN:return"Decimal number less than "+t.formatNumber(r)+" expected";case i.validationCompareOperator.LESS_THAN_EQUAL:return"Decimal number less than or equal to "+t.formatNumber(r)+" expected";default:throw"Validation Message Service - Not implemented compare operator: "+n;}};this.currencyCompare=function(n,r){switch(n){case i.validationCompareOperator.EQUAL:return"Amount equal to "+t.formatNumber(r)+" expected";case i.validationCompareOperator.NOT_EQUAL:return"Amount not equal to "+t.formatNumber(r)+" expected";case i.validationCompareOperator.GREATER_THAN:return"Amount greater than "+t.formatNumber(r)+" expected";case i.validationCompareOperator.GREATER_THAN_EQUAL:return"Amount greater than or equal to "+t.formatNumber(r)+" expected";case i.validationCompareOperator.LESS_THAN:return"Amount less than "+t.formatNumber(r)+" expected";case i.validationCompareOperator.LESS_THAN_EQUAL:return"Amount less than or equal to "+t.formatNumber(r)+" expected";default:throw"Validation MessageService - Not implemented compare operator: "+n;}};this.dateCompare=function(n,t){t=r.wrapTextInVar(t);switch(n){case i.validationCompareOperator.EQUAL:return"Date equal to "+t+" expected";case i.validationCompareOperator.NOT_EQUAL:return"Date not equal to "+t+" expected";case i.validationCompareOperator.GREATER_THAN:return"Date greater than "+t+" expected";case i.validationCompareOperator.GREATER_THAN_EQUAL:return"Date greater than or equal to "+t+" expected";case i.validationCompareOperator.LESS_THAN:return"Date less than "+t+" expected";case i.validationCompareOperator.LESS_THAN_EQUAL:return"Date less than or equal to "+t+" expected";default:throw"Validation MessageService - Not implemented compare operator: "+n;}};this.datetimeCompare=function(n,t){switch(n){case i.validationCompareOperator.EQUAL:return"Date and time equal to "+t+" expected";case i.validationCompareOperator.NOT_EQUAL:return"Date and time not equal to "+t+" expected";case i.validationCompareOperator.GREATER_THAN:return"Date and time greater than "+t+" expected";case i.validationCompareOperator.GREATER_THAN_EQUAL:return"Date and time greater than or equal to "+t+" expected";case i.validationCompareOperator.LESS_THAN:return"Date and time less than "+t+" expected";case i.validationCompareOperator.LESS_THAN_EQUAL:return"Date and time less than or equal to "+t+" expected";default:throw"Validation MessageService - Not implemented compare operator: "+n;}};this.stringCompare=function(n,t){switch(n){case i.validationCompareOperator.EQUAL:return"Text equal to "+t+" expected";case i.validationCompareOperator.NOT_EQUAL:return"Text not equal to "+t+" expected";default:throw"Validation MessageService - Not implemented compare operator: "+n;}}}]);angular.module("sharedElements").service("validationService",["appDetailsValue","validationMessageService","$q","helpService","constants",function(n,t,i,r,u){function s(n,t){return"validationService.js -> "+n+": "+t}function f(t){var r=n.localization.shortDatePattern,i=moment(t,r,!0);return i.hour(0),i.minute(0),i.second(0),i.millisecond(0),i}function e(t){var r=n.localization.shortDatePattern+" "+n.localization.shortTimePattern,i=moment(t,r,!0);return i.second(0),i.millisecond(0),i}function o(n){return n==undefined||n===""}function l(t){var i="[^-"+n.localization.numberDecimalSeparator+"0123456789]",r=new RegExp(i);return r.test(t)===!1}function a(n){switch(n){case u.validationCompareOperator.EQUAL:return"equal";case u.validationCompareOperator.NOT_EQUAL:return"notEqual";case u.validationCompareOperator.GREATER_THAN:return"greaterThan";case u.validationCompareOperator.GREATER_THAN_EQUAL:return"greaterThanEqual";case u.validationCompareOperator.LESS_THAN:return"lessThan";case u.validationCompareOperator.LESS_THAN_EQUAL:return"lessThanEqual";default:throw s("getCompareOperatorName","unexpected validation compare operator: "+n);}}function h(n){return typeof n.success=="undefined"&&(n.success=!1),typeof n.message=="undefined"&&(n.message=null),n}var c=this;this.isUndefinedOrNullOrEmpty=function(n){return o(n)};this.getCompareOperatorName=function(n){return a(n)};this.setValidators=function(n,t,i){if(i.isRequired===!0&&t.splice(0,0,"required"),i.validator!==null){if(n.attr("data-validator","field.validator"),i.validator.compare===null&&i.validator.regularExpression===null)throw s("setValidationAttributes","unexpected validator");i.validator.regularExpression!==null&&t.push("regularExpression");i.validator.compare!==null&&(i.validator.compare.operator===u.validationCompareOperator.BETWEEN?t.push("range"):t.push("compare"))}n.attr("data-validators","["+t.join()+"]")};this.RequiredValidator=function(){this.validate=function(n,t){return!o(t)};this.getMessage=function(){return t.required}};this.FormatDomainValidator=function(){var n=r.getRegexPattern(u.regexType.EMAIL_DOMAIN);this.validate=function(t,i){if(o(i))return!0;var r=new RegExp(n);return r.test(i)};this.getMessage=function(){return t.formatDomain}};this.FormatEmailAddressValidator=function(){var n=r.getRegexPattern(u.regexType.EMAIL_ADDRESS);this.validate=function(t,i){if(o(i))return!0;var r=new RegExp(n);return r.test(i)};this.getMessage=function(){return t.formatEmailAddress}};this.FormatEmailAddressWithSemicolonValidator=function(){var n=r.getRegexPattern(u.regexType.EMAIL_ADDRESS_WITH_SEMICOLON);this.validate=function(t,i){if(o(i))return!0;var r=new RegExp(n);return r.test(i)};this.getMessage=function(){return t.formatEmailAddressesWithSemicolons}};this.FormatEmailAddressWithSemicolonCommaNewLineValidator=function(){var n=r.getRegexPattern(u.regexType.EMAIL_ADDRESS_WITH_SEMICOLON_COMMA_NEW_LINE);this.validate=function(t,i){if(o(i))return!0;var r=new RegExp(n);return r.test(i)};this.getMessage=function(){return t.formatEmailAddressesWithSemicolonsCommaNewLine}};this.UrlValidator=function(){var n=r.getRegexPattern(u.regexType.URL);this.validate=function(t,i){if(o(i))return!0;var r=new RegExp(n,"i");return r.test(i)};this.getMessage=function(){return t.formatUrl}};this.MaxLengthValidator=function(n){var i="maxLengthValidator()",r;if(n==undefined)throw s(i,'undefined "max-length" attribute');if(r=new RegExp("^[0-9]+$"),r.test(n)===!1)throw s(i,'"max-length" attribute has incorrect value: "'+n+'"');this.validate=function(t,i){return o(i)?!0:i.length<=n};this.getMessage=function(){return t.maxCharLength(n)}};this.PicklistRequiredValidator=function(n){var i="picklistRequiredValidator()",r;if(n==undefined)throw s(i,'undefined "default-value" attribute');if(r=new c.DataTypeValidator("integer"),r.validate(null,n)===!1)throw s(i,'"default-value" attribute has incorret value: "'+n+'"');this.validate=function(t,i){return o(i)?!0:parseInt(i)!==parseInt(n)};this.getMessage=function(){return t.required}};this.MultiSelectPicklistRequiredValidator=function(){this.validate=function(n,t){return t!==null};this.getMessage=function(){return t.required}};this.InvalidValuesValidator=function(n){var r=[],u,i;if(n!=undefined&&n!==""){if(u=new RegExp("^\\[(.+)\\]$","g"),i=u.exec(n),i===null)throw s("invalidValuesValidator()",'"invalid-values" attribute has incorret value: "'+n+'"');n=i[1];r=n.split(",")}this.validate=function(n,t){return o(t)?!0:!_.contains(r,t)};this.getMessage=function(){return t.invalidDropdownValue}};this.MultiSelectInvalidValuesValidator=function(n){var r=[],u,i;if(n!=undefined&&n!==""){if(u=new RegExp("^\\[(.+)\\]$","g"),i=u.exec(n),i===null)throw s("multiSelectInvalidValuesValidator()",'"invalid-values" attribute has incorrect value: "'+n+'"');n=i[1];r=n.split(",")}this.validate=function(n,t){var u,i,f;return o(t)?!0:(u=new RegExp("^\\[(.+)\\]$","g"),i=u.exec(t),i===null)?!0:(f=i[1].split(","),r.filter(n=>f.includes(n)).length===0)};this.getMessage=function(){return t.invalidMultiselectValue}};this.CheckedValidator=function(){this.validate=function(n,t){return t};this.getMessage=function(){return t.required}};this.DataTypeValidator=function(i){var c=n.validationSettings.minIntValue,a=n.validationSettings.maxIntValue,s=n.validationSettings.minDoubleValue,h=n.validationSettings.maxDoubleValue,f=!1,e=!1;this.validate=function(t,v){var y,p,w,b;if(o(v))return!0;switch(i){case"text":case"textArea":case"wysiwyg":return typeof v=="string";case"integer":if(f=!1,e=!1,l(v)===!0&&(e=!0,y=r.getRegexPattern(u.regexType.INTEGER),p=new RegExp(y),p.test(v))){if(parseInt(c)<=parseInt(v)&&parseInt(v)<=parseInt(a))return!0;f=!0}return!1;case"date":return w=n.localization.shortDatePattern,moment(v,w,!0).isValid();case"datetime":return b=n.localization.shortDatePattern+" "+n.localization.shortTimePattern,moment(v,b,!0).isValid();case"currency":case"double":case"percent":if(f=!1,e=!1,l(v)===!0&&(e=!0,y=r.getRegexPattern(u.regexType.DOUBLE),p=new RegExp(y),p.test(v))){if(r.parseNumber(s)<=r.parseNumber(v)&&r.parseNumber(v)<=r.parseNumber(h))return!0;f=!0}return!1;case"colorPicker":return typeof v!="string"?!1:(y=r.getRegexPattern(u.regexType.HEX_COLOR),p=new RegExp(y),p.test(v))?!0:!1;default:throw"Not implemented data type: "+i;}};this.getMessage=function(){switch(i){case"integer":return e===!1?t.formatNumeric:f?t.range(i,c,a):t.formatInteger;case"double":case"percent":return e===!1?t.formatNumeric:f?t.range(i,s,h):t.formatDouble();case"date":return t.formatDate();case"datetime":return t.formatDatetime();case"currency":return e===!1?t.formatNumeric:f?t.range(i,s,h):t.formatCurrency();case"colorPicker":return t.formatHexColor;default:throw"Not implemented validation message for data type: "+i;}}};this.CompareValidator=function(n,i,h){var l=new c.DataTypeValidator(n),a=!1;if(l.validate(null,h)===!1)throw s("CompareValidator","invalid valueToCompare: "+h);this.validate=function(t,s){if(o(s))return!0;if(a=l.validate(null,s),a===!1)return!1;var c,v;switch(i){case u.validationCompareOperator.EQUAL:switch(n){case"text":case"textArea":case"wysiwyg":case"colorPicker":return s===h;case"integer":return parseInt(s)===parseInt(h);case"double":case"currency":case"percent":return r.parseNumber(s)===r.parseNumber(h);case"date":return c=f(s),v=f(h),c.isSame(v);case"datetime":return c=e(s),v=e(h),c.isSame(v);default:throw"Not implemented data type: "+n;}case u.validationCompareOperator.NOT_EQUAL:switch(n){case"text":case"textArea":case"wysiwyg":case"colorPicker":return s!==h;case"integer":return parseInt(s)!==parseInt(h);case"double":case"currency":case"percent":return r.parseNumber(s)!==r.parseNumber(h);case"date":return c=f(s),v=f(h),c.isSame(v)===!1;case"datetime":return c=e(s),v=e(h),c.isSame(v)===!1;default:throw"Not implemented data type: "+n;}case u.validationCompareOperator.GREATER_THAN:switch(n){case"integer":return parseInt(s)>parseInt(h);case"double":case"currency":case"percent":return r.parseNumber(s)>r.parseNumber(h);case"date":return c=f(s),v=f(h),c.isAfter(v);case"datetime":return c=e(s),v=e(h),c.isAfter(v);default:throw"Not implemented data type: "+n;}case u.validationCompareOperator.GREATER_THAN_EQUAL:switch(n){case"integer":return parseInt(s)>=parseInt(h);case"double":case"currency":case"percent":return r.parseNumber(s)>=r.parseNumber(h);case"date":return c=f(s),v=f(h),c.isAfter(v)||c.isSame(v);case"datetime":return c=e(s),v=e(h),c.isAfter(v)||c.isSame(v);default:throw"Not implemented data type: "+n;}case u.validationCompareOperator.LESS_THAN:switch(n){case"integer":return parseInt(s)<parseInt(h);case"double":case"currency":case"percent":return r.parseNumber(s)<r.parseNumber(h);case"date":return c=f(s),v=f(h),c.isBefore(v);case"datetime":return c=e(s),v=e(h),c.isBefore(v);default:throw"Not implemented data type: "+n;}case u.validationCompareOperator.LESS_THAN_EQUAL:switch(n){case"integer":return parseInt(s)<=parseInt(h);case"double":case"currency":case"percent":return r.parseNumber(s)<=r.parseNumber(h);case"date":return c=f(s),v=f(h),c.isBefore(v)||c.isSame(v);case"datetime":return c=e(s),v=e(h),c.isBefore(v)||c.isSame(v);default:throw"Not implemented data type: "+n;}default:throw"Not implemented compare operator: "+i;}};this.getMessage=function(){if(a===!1)return l.getMessage();switch(n){case"integer":return t.numberCompare(i,h);case"double":case"percent":return t.decimalNumberCompare(i,h);case"currency":return t.currencyCompare(i,h);case"date":return t.dateCompare(i,h);case"datetime":return t.datetimeCompare(i,h);case"text":return t.stringCompare(i,h);default:throw"Validation Message Service - Not implemented data type: "+n;}}};this.RangeValidator=function(n,i,u){var h=new c.DataTypeValidator(n),l=!1;if(h.validate(null,i)===!1)throw s("RangeValidator","invalid minimum value: "+i);if(h.validate(null,u)===!1)throw s("RangeValidator","invalid maximum value: "+u);this.validate=function(t,s){if(o(s))return!0;if(l=h.validate(null,s),l===!1)return!1;var c,a,v;switch(n){case"integer":return parseInt(i)<=parseInt(s)&&parseInt(s)<=parseInt(u);case"double":case"currency":case"percent":return r.parseNumber(i)<=r.parseNumber(s)&&r.parseNumber(s)<=r.parseNumber(u);case"date":return c=f(s),a=f(i),v=f(u),(a.isBefore(c)||a.isSame(c))&&(c.isBefore(v)||c.isSame(v));case"datetime":return c=e(s),a=e(i),v=e(u),(a.isBefore(c)||a.isSame(c))&&(c.isBefore(v)||c.isSame(v));default:throw"Not implemented data type: "+n;}};this.getMessage=function(){return l===!1?h.getMessage():t.range(n,i,u)}};this.RegularExpressionValidator=function(n,t,i){if(typeof n=="undefined"||n===null)throw'RegularExpressionValidator: "pattern" is undefined or null';if(typeof t=="undefined"||t===null)throw'RegularExpressionValidator: "message" is undefined or null';this.validate=function(t,r){if(o(r))return!0;var u;return u=i===!0?new RegExp(n,"i"):new RegExp(n),u.test(r)};this.getMessage=function(){return t}};this.datePrecedingValidator=function(t,r,u){var e=moment(r,n.localization.shortDatePattern,!0),o=moment(t,n.localization.shortDatePattern,!0),f=i.defer();return o.isBefore(e)?f.resolve(h({success:!1,message:u})):f.resolve(h({success:!0})),f.promise};this.dateFollowingValidator=function(t,r,u){var e=moment(r,n.localization.shortDatePattern,!0),o=moment(t,n.localization.shortDatePattern,!0),f=i.defer();return o.isAfter(e)?f.resolve(h({success:!1,message:u})):f.resolve(h({success:!0})),f.promise};this.getCustomAsyncValidatorResult=function(n){return h(n)};this.CustomAsyncValidator=function(n){this.validate=function(t,r,u,f){var o=t||r,e=i.defer();return n({value:o}).then(function(n){n.success===!1?(u(n.message),f.value=o,e.reject()):e.resolve()}),e.promise}}}]);angular.module("sharedElements").service("wysiwygService",["$timeout",function(n){var r=0,i="placeholderIcon",t;FroalaEditor.DefineIconTemplate("textClean","[NAME]");FroalaEditor.DefineIcon(i,{NAME:"Placeholder",template:"textClean"});t="froalaEditor";this.setEditor=function(n,i){n.data(t,i)};this.getEditor=function(n){return n.data(t)};this.addPlaceholders=function(t,u){var f,e,l,h,o,a,c,s,v,y;if(u!==null){for(f="Placeholder"+r++,e=$(document.createElement("ul")),e.addClass("editor-dropdown"),e.addClass("fr-dropdown-list"),l=null,h=0;h<u.length;h++)o=u[h],o.groupName!==l&&(h>0&&(a=$(document.createElement("li")),a.addClass("editor-dropdown-divider"),e.append(a)),c=$(document.createElement("li")),c.text(o.groupName),c.addClass("editor-dropdown-group"),e.append(c)),l=o.groupName,s=$(document.createElement("a")),s.addClass("fr-command"),s.attr("data-cmd",f),s.attr("data-param1",o.value),s.text(o.text),v=$(document.createElement("li")),v.append(s),e.append(v);y=$(document.createElement("div"));y.append(e);FroalaEditor.RegisterCommand(f,{title:"Placeholder",text:"Placeholder",type:"dropdown",icon:i,focus:!0,undo:!0,refreshAfterCallback:!0,html:function(){return y.html()},callback:function(n,t){this.html.insert(t)},refreshOnShow:function(t,i){$(i).hide();n(function(){var n=$(t).offset().left,r=$(t).parent().offset().left,u=$(i).width(),f=$(t).parents(".fr-toolbar").offset().left,e=$(t).parents(".fr-toolbar").outerWidth();$(i).css("width",u);f+e<n+u?($(i).css("left","auto"),$(i).css("right",n-r)):($(i).css("left",n-r),$(i).css("right","auto"));$(i).show()},0)}});t.toolbarButtons.push("|");t.toolbarButtons.push(f);t.toolbarButtonsMD.push("|");t.toolbarButtonsMD.push(f);t.toolbarButtonsSM.push("|");t.toolbarButtonsSM.push(f);t.toolbarButtonsXS.push("|");t.toolbarButtonsXS.push(f)}}}]);angular.module("sharedElements").provider("appDetailsValue",function(){var n=null;this.$get=function(){return n}});angular.module("sharedElements").directive("cActionsButton",["$compile","helpService","actionService","testService",function(n,t,i,r){return{restrict:"E",scope:{actions:"=",isDisabled:"=?",onAction:"&",disabledTooltip:"@",isSmall:"@",isPrimary:"@",isMore:"@",isInlineBlock:"@",isHidden:"@",tName:"@"},link:function(u,f,e){function a(){o!==null&&o.$destroy();o=u.$new();e.$removeClass("btn-group");f.html("");f.css("display","none")}function v(){return(a(),u.actions===null)?!1:(t.validateActions(u.actions),!0)}function h(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}if(u.isDisabled&&u.disabledTooltip==="")throw new Error('"disabledTooltip" is required when actionsButton is disabled.');}function c(){return u.isMore!=="true"&&u.actions.length===1&&s===""}function y(){var t=u.actions[0],n;return h(t),n=i.getActionElement(t),n.addClass("btn"),u.isPrimary==="true"?n.addClass("btn-primary"):n.addClass("btn-default"),u.isSmall==="true"&&n.addClass("btn-sm"),typeof t.disabledTooltip!="undefined"&&t.disabledTooltip!==null&&(u.isDisabled=!0,u.disabledTooltip=t.disabledTooltip),u.isDisabled===!0&&n.addClass("disabled"),n.text(t.label),r.setAttribute(n,"instance",u.tName?u.tName:"main"),r.setAttribute(n,"button",t.label),n.attr("data-c-tooltip","[[exec[[getTooltipText()]]exec]]"),n}function p(){var l,c,n,w,t,f,p,v,o,y,a;for(u.isDisabled===!0&&e.$addClass("disabled"),l=$(document.createElement("c-tool-tip")),l.attr("data-c-tooltip","[[exec[[getTooltipText()]]exec]]"),l.addClass("btn-group"),c=$(document.createElement("c-dropdown")),c.attr("data-is-disabled","isDisabled"),c.addClass("btn-group"),n=$(document.createElement("button")),n.attr("data-c-dropdown-action",""),n.addClass("btn"),u.isPrimary==="true"?n.addClass("btn-primary"):n.addClass("btn-default"),u.isSmall==="true"&&n.addClass("btn-sm"),u.isMore==="true"?(n.addClass("btn-icon"),n.html('<i class="material_more_horiz"><\/i>')):(w=s===""?"<span>Actions<\/span>":s,n.html(w+' <span class="caret"><\/span>')),r.setAttribute(n,"instance",u.tName?u.tName:"main"),r.setAttribute(n,"button","Actions"),c.append(n),t=$(document.createElement("ul")),t.addClass("dropdown-menu"),t.attr("data-c-dropdown-menu",""),f=null,p=!0,v=0;v<u.actions.length;v++)o=u.actions[v],h(o),y=$(document.createElement("li")),y.addClass("item"),a=i.getActionElement(o),a.text(o.label),r.setAttribute(a,"instance",u.tName?u.tName:"main"),r.setAttribute(a,"action",o.label),y.append(a),f!==o.groupName&&(f=o.groupName,p===!0?p=!1:t.append('<li class="item-divider"><\/li>'),typeof f!="undefined"&&f!==null&&f.indexOf("group_")===-1&&t.append(' <li class="item-header">'+f+"<\/li>")),t.append(y);return c.append(t),l.append(c),l}function l(){if(typeof u.actions=="undefined")throw new Error('"actions" is undefined');v()&&(e.$addClass("btn-group"),u.isInlineBlock==="true"?f.css("display","inline-block"):f.css("display","block"),u.isHidden==="true"&&f.css("display","none"),f.append(c()===!0?y():p()),n(f.contents())(o))}var s=f.html(),o=null;(u.isDisabled===null||typeof u.isDisabled=="undefined")&&(u.isDisabled=!1);u.getTooltipText=function(){return u.isDisabled?u.disabledTooltip:null};u.getLinkHref=function(n){return u.isDisabled?"javascript:;":n};u.$watch(function(){return u.actions},function(n,t){n!==t&&typeof n!="undefined"&&l()},!0);u.$watch(function(){return u.isDisabled},function(){if(u.actions===null)return!1;c()===!0?u.isDisabled===!0?$(f).find(".btn").addClass("disabled"):$(f).find(".btn").removeClass("disabled"):u.isDisabled===!0?e.$addClass("disabled"):e.$removeClass("disabled")},!1);u.handleAction=function(n){if(!u.isDisabled)u.onAction({action:n})};l()}}}]);angular.module("sharedElements").directive("cActionsLink",["$compile","helpService","actionService","testService",function(n,t,i,r){return{restrict:"E",scope:{actions:"=",onAction:"&",isDropdown:"@",tName:"@"},link:function(u,f){function h(){e!==null&&e.$destroy();e=u.$new();f.html("")}function c(){return(h(),u.actions===null)?!1:(t.validateActions(u.actions),!0)}function o(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}if(n.name!==null){if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function l(){var t=u.actions[0],n;return o(t),n=i.getActionElement(t),n.addClass("btn btn-link"),n.text(t.label),n}function a(){var n=$(document.createElement("div")),s,t,h,f,c,e;for(n.addClass("dropdown"),n.attr("data-c-dropdown",""),n.attr("data-t-actions",""),s=$('<a href="javascript:;" class="btn btn-link" data-c-dropdown-action><span>Actions<\/span> <span class="caret"><\/span><\/a>'),n.append(s),r.setAttribute(s,"instance",u.tName?u.tName:"main"),r.setAttribute(s,"button","Actions"),t=$(document.createElement("ul")),t.addClass("dropdown-menu"),t.attr("data-c-dropdown-menu",""),h=0;h<u.actions.length;h++)f=u.actions[h],o(f),c=$(document.createElement("li")),c.addClass("item"),e=i.getActionElement(f),e.text(f.label),r.setAttribute(e,"instance",u.tName?u.tName:"main"),r.setAttribute(e,"action",f.label),c.append(e),t.append(c);return n.append(t),n}function s(){if(typeof u.actions=="undefined")throw new Error('"actions" is undefined');c()&&(f.append(u.isDropdown==="true"||u.actions.length>1?a():l()),n(f.contents())(e))}var e=null;u.$watch(function(){return u.actions},function(n,t){n!==t&&s()},!0);u.handleAction=function(n){u.onAction({action:n})};s()}}}]);angular.module("sharedElements").directive("cActionsSelector",["$compile","helpService","actionService","testService",function(n,t,i,r){return{restrict:"E",scope:{actions:"=",materialIconType:"@?",onAction:"&",tName:"@"},link:function(u,f){function s(){e!==null&&e.$destroy();e=u.$new();f.html("")}function h(){return(s(),u.actions===null)?!1:(t.validateActions(u.actions),!0)}function c(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}if(n.name!==null){if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function l(){var n=$(document.createElement("div")),a,s,f,h,e,l,o;for(n.addClass("dropdown"),n.attr("data-c-dropdown",""),n.attr("data-t-actions",""),a="",typeof u.materialIconType!="undefined"&&(a='<i class="'+t.getMaterialIconClass(u.materialIconType)+'"><\/i>'),s=$('<span class="btn btn-selector btn-icon" data-c-dropdown-action>'+a+' <span data-ng-bind="getLabel()"><\/span> <span class="caret"><\/span><\/span>'),n.append(s),r.setAttribute(s,"instance",u.tName?u.tName:"main"),r.setAttribute(s,"button","Actions"),f=$(document.createElement("ul")),f.addClass("dropdown-menu"),f.attr("data-c-dropdown-menu",""),h=0;h<u.actions.length;h++)e=u.actions[h],c(e),l=$(document.createElement("li")),l.addClass("item"),o=i.getActionElement(e),o.text(e.label),r.setAttribute(o,"instance",u.tName?u.tName:"main"),r.setAttribute(o,"action",e.label),l.append(o),f.append(l);return n.append(f),n}function o(){if(typeof u.actions=="undefined")throw new Error('"actions" is undefined');h()&&(f.append(l()),n(f.contents())(e))}var e=null;u.getLabel=function(){return _.find(u.actions,function(n){return n.isSelected===!0}).label};u.$watch(function(){return u.actions},function(n,t){n!==t&&o()},!1);u.handleAction=function(n){$.each(u.actions,function(t,i){i.isSelected=n===i.name});u.onAction({action:n})};o()}}}]);angular.module("sharedElements").directive("cAddObjectButton",["$compile","helpService","testService","$timeout","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{items:"=",title:"@",onClick:"&",setTranslate:"=?",translateGroupName:"=?",preserveOpened:"@"},link:function(f,e,o){function st(n){var t=n.data.item;f.onClick({item:t});f.items=_.reject(f.items,function(n){return n===t});w===!0&&(b(ft(a.searchValue,f.items)),ht())}function ht(){t.isMobileDevice()===!1&&(t.recalculateDropdownMenuPosition(d,h,!0,!1,0,null),s.focus())}function g(){var t=$(window).height(),i=s.offset().top,r=y.offset().top,u=t-(i-r)-100,n=u+"px";s.css("max-height",n);h.data("max",n)}function nt(){h.css("minWidth",$(e).width()+"px")}function ct(){a!==null&&a.$destroy();a=f.$new();e.html("");h!==null&&h.remove();e.css("display","none")}function lt(){var e=null,h,n,r,i,o;for(c.currentIndex!==0&&(e=c.items[c.currentIndex-1].getGroupName()),h=c.currentIndex+k>c.items.length?c.items.length:c.currentIndex+k,c.currentIndex;c.currentIndex<h;c.currentIndex++){if(c.cancel===!0)return;n=c.items[c.currentIndex];n.getGroupName()!==null&&n.getGroupName()!==""&&(e!==n.getGroupName()&&(c.currentIndex!==0&&s.append('<li class="item-divider"><\/li>'),r=$(document.createElement("li")),r.addClass("item-header"),r.text(n.getGroupName()),u.setTranslateAttribute(r,f.translateGroupName),u.setTranslatedCallback(r,function(n,t){var i=_.filter(f.items,function(n){return n.getGroupName()===t.getGroupName()});i.forEach(t=>{t.groupTranslation=n})},n),s.append(r)),e=n.getGroupName());i=$(document.createElement("li"));i.addClass("item");u.setTranslateAttribute(i,n.getTranslate());t.setTestAttribute(i,"action",e!==null?e+" "+n.getTitle():n.getTitle());n.isEnabled===!0?i.click({item:n},st):i.addClass("disabled");typeof c.activeItem!="undefined"&&c.activeItem!==null&&c.activeItem===n.getId()&&(i.addClass("active"),i.bind("touchmove",function(n){n.preventDefault();n.stopPropagation()}));o=$(document.createElement("span"));o.text(n.getTitle());u.setTranslatedCallback(o,function(n,t){t.translation=n},n);i.append(o);s.append(i)}}function tt(){if(c.cancel!==!0){if(c.currentIndex>=c.items.length){if(s.focusin(),c.items.length===0){var n=$(document.createElement("li"));n.addClass("item-no-matched");n.html("<span>No items matched<\/span>");n.click(function(n){n.preventDefault();n.stopPropagation()});s.append(n)}return}lt();r(function(){tt()},et)}}function b(n){c.cancel=!0;v!==null&&(f.items.length>ot?v.css("display","block"):v.css("display","none"));s!==null&&(s.remove(),s=$(document.createElement("ul")),s.addClass("dropdown-menu-items"),s.attr("tabindex","0"),s.keydown(it),t.isMobileDevice()===!0?s.css("max-height",h.data("max")):s.css("max-height",h.data("max-height-desktop")),y.append(s));var i=null;n.length>0&&(i=n[0].getId());c={currentIndex:0,items:n,cancel:!1,activeItem:i};tt()}function it(n){var i,o,h,u,c,l,f;if(n.which===27){t.closeDropdownMenus();e.focus();return}if(i=s.find(".active"),i.length!==0){var r=s.offset().top,a=s.scrollTop(),v=s.height();switch(n.which){case 38:if(n.preventDefault(),n.stopPropagation(),o=i.prevAll(".item:not(.disabled)"),o.length===0)return;h=o.first();i.removeClass("active");h.addClass("active");u=h.offset().top;r<u&&r+v>u||s.scrollTop(u-r+a);break;case 40:if(n.preventDefault(),n.stopPropagation(),c=i.nextAll(".item:not(.disabled)"),c.length===0)return;l=c.first();i.removeClass("active");l.addClass("active");f=l.offset().top;r<f&&r+v>f||s.scrollTop(f-r+a);break;case 9:n.preventDefault();n.stopPropagation();i.click();e.focus();break;case 13:n.preventDefault();n.stopPropagation();i.click();e.focus()}}}function at(){if(t.isMobileDevice()!==!1){var i=e.closest(t.scrollableElementsSelector),n=$(window).scrollTop();p=i.length>0?e.offset().top-n:n}}function rt(){t.isMobileDevice()!==!1&&r(function(){if(!(p<=0)){var n=e.closest(t.scrollableElementsSelector);n.length>0?$(n[0]).scrollTop(p):$(window).scrollTop(p);p=0}},0)}function vt(){g()}function yt(n){a.searchValue="";b(f.items);t.isMobileDevice()===!1?nt():h.data("max-height-desktop","");n.resolve()}function pt(){t.isMobileDevice()===!1?(h.data("max-height-desktop",s.css("max-height")),nt(),v.css("display")!=="none"?l.focus():s.focus()):(h.focus(),g())}function wt(){var r,o,u;if(ct(),f.items!==null&&!(f.items.length<=0)){e.css("display","");ut();(typeof f.title=="undefined"||f.title===null)&&(f.title="Add Filter");r=$(document.createElement("button"));r.addClass("btn btn-default");r.html("<span>"+f.title+'<\/span> <span class="caret"><\/span>');e.append(r);h=$(document.createElement("div"));h.addClass("dropdown-menu");h.data("max","100%");h.data("max-height-desktop","");w===!0&&h.attr("data-close-on-inside-click","false");o=$(document.createElement("div"));o.addClass("dropdown-menu-overlay");u=$(document.createElement("div"));u.addClass("dropdown-menu-close");u.append('<i icon="remove"><\/i>');y=$(document.createElement("div"));y.addClass("dropdown-menu-content");v=$(document.createElement("div"));v.addClass("search-panel");l!==null&&(l.remove(),l.off("focusin"),l.off("keydown"));l=$(document.createElement("input"));l.addClass("form-control");l.attr("data-close-on-inside-click","false");l.attr("type","text");l.attr("data-ng-model","searchValue");l.keydown(it);l.focusin(at);i.setAttribute(l,"add-object-search-field",f.title);$(e).on("dropdownclosed",rt);v.append(l);s=$(document.createElement("ul"));s.addClass("dropdown-menu-items");y.append(v);y.append(s);h.append(o);h.append(u);h.append(y);h.appendTo($("body"));n(h)(a);n(e.contents())(a);t.initializeDropdown({actionElement:d,menuElement:h,beforeCallback:yt,afterCallback:pt})}}function bt(){o.$set("tabindex","0");var n=f.title;n==null&&(n="Add Filter");t.setTestAttribute(e,"button",n);wt()}function kt(){return f.items!==null&&f.items.length>0}function ut(){kt()===!0&&f.items.forEach(n=>{typeof n.getTranslatedTitle=="undefined"&&(n.getTranslatedTitle=function(){return typeof this.translation!="undefined"?this.translation:this.getTitle()}),typeof n.getTranslatedGroupName=="undefined"&&(n.getTranslatedGroupName=function(){return typeof this.groupTranslation!="undefined"?this.groupTranslation:this.getGroupName()})})}function ft(n,t){return n===null||n===""?t:_.filter(t,function(t){var u,i,f,r;if(t.getTranslatedTitle().toLowerCase().indexOf(n.toLowerCase())===0||t.getTranslatedGroupName()!==null&&t.getTranslatedGroupName().toLowerCase().indexOf(n.toLowerCase())===0)return!0;for(u=t.getTranslatedTitle().toLowerCase().split(" "),i=0;i<u.length;i++)if(u[i].indexOf(n.toLowerCase())===0)return!0;if(t.getTranslatedGroupName()!==null)for(f=t.getTranslatedGroupName().toLowerCase().split(" "),r=0;r<f.length;r++)if(f[r].indexOf(n.toLowerCase())===0)return!0;return!1})}var et=20,k=50,ot=10,a=null,d=$(e),h=null,y=null,s=null,v=null,l=null,p=0,c={currentIndex:0,items:null,cancel:!1,activeItem:null},w;f.searchValue="";w=!0;f.preserveOpened==="false"&&(w=!1);f.$watch(function(){return f.items},function(n,t){n!==t&&ut()});f.$watch(function(){return a.searchValue},function(n,t){if(n!==t){var i=f.items;i!==null&&b(ft(n,i))}});f.$on("$destroy",function(){h!==null&&h.remove();$(e).off("dropdownclosed",rt);$(window).unbind("resize",vt)});bt()}}}]);angular.module("sharedElements").directive("cAlertViewer",["$compile","helpService","constants","pageSharedDataFactory","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{alerts:"=",onAction:"&"},link:function(r,f){function s(){if(r.alerts===null)return!1;if(Object.prototype.toString.call(r.alerts)!=="[object Array]")throw new Error('"alerts" is not Array');return r.alerts.length===0?!1:!0}function o(){(e!==null&&e.$destroy(),e=r.$new(),e.actions=[],f.html(""),s()!==!1)&&angular.forEach(r.alerts,function(r,o){var l=!1,h=$(document.createElement("div")),s,c,a;r.message.isHtml===!0?(h.html(r.message.value),u.setIsolateAttribute(h)):h.text(r.message.value);r.message.value.indexOf("c-fresh-desk-widget-connector")!==-1&&(l=!0);e.actions[o]=t.bindActions(h,"actions["+o+"]");l=l||e.actions[o].length>0;s=$('<div class="alert"><\/div>');c=$('<i class="icon-size-18"><\/i>');switch(r.type){case i.alertType.INFO:s.addClass("alert-info");c.addClass("material_info");break;case i.alertType.WARNING:s.addClass("alert-warning");c.addClass("material_warning");break;case i.alertType.ERROR:s.addClass("alert-danger");c.addClass("material_error")}t.setTestAttribute(s,"message");a=$('<span class="format-wrap message-content"><\/span>');t.setTestAttribute(a,"message-description");a.append(h);s.append(c);s.append(a);l===!0&&n(s)(e);$(f).append(s)})}var e=null;if(typeof r.alerts=="undefined")throw new Error('"alerts" is undefined');r.$watch(function(){return r.alerts},function(n,t){n!==t&&o()});r.handleAction=function(n){if(typeof n=="undefined")throw"action is undefined";r.onAction({action:n})};o()}}}]);angular.module("sharedElements").directive("cApiDocsMobileNavigation",["$location","appDetailsValue","helpService","pageSharedDataFactory","$compile","$route",function(n,t,i,r,u){return{restrict:"A",scope:{},link:function(f,e,o){function l(n){i.isMobileDevice()===!1&&(n=0);$("body").css("padding-top",n+"px")}function h(){var n=$(e).outerHeight();l(n)}function s(t){var u;if(t==null)return!1;var f=n.path(),r=t.items,e=r!=undefined&&r.length>0;if(i.linkEquals(f,t.link))return!0;if(e===!0)for(u=0;u<r.length;u++)if(i.linkEquals(f,r[u].link))return!0;return!1}function a(){$(e).find(".n-layout-nav-items").empty();c=!0}function v(){var p,v,n,i,o,c,l,y,h,r;for(a(),p=$(e).find(".n-layout-nav-items"),v=$(document.createElement("div")),n=0;n<t.navigation.items.length;n++){if(i=t.navigation.items[n],i.isExpanded=!1,i.label!=null&&(o=$(document.createElement("div")),o.addClass("n-layout-nav-item parent-item"),i.items!==null?(o.append('<i class="pointer icon-small" data-ng-click="toggleNavGroup('+n+")\" data-ng-class=\"{'material_expand_more': isNavGroupExpanded("+n+") === true, 'material_keyboard_arrow_right': isNavGroupExpanded("+n+') === false}"><\/i>'),o.attr("data-ng-class","{'active api-nav-background': isActiveNavItem("+n+") === true }")):o.attr("data-ng-class","{'active api-nav-background': isActiveNavItem("+n+") === true }"),r=$(document.createElement("a")),r.addClass("n-layout-nav-item-link"),r.text(i.label),i.items!==null&&r.attr("data-ng-click","openNavGroupWhenClickingOnParentLink("+n+")"),r.attr("href",i.link),o.append(r),v.append(u(o)(f))),i.items!==null){for(c=$(document.createElement("div")),c.addClass("n-layout-nav-group"),c.attr("data-ng-show","isNavGroupExpanded("+n+")"),l=0;l<i.items.length;l++)y=i.items[l],h=$(document.createElement("a")),h.addClass("n-layout-nav-item sub-item"),h.attr("href",y.link),s(y)&&(i.isExpanded=!0),h.attr("data-ng-class","{'active api-nav-background' : isActiveSubNavItem("+n+", "+l+") === true }"),r=$(document.createElement("span")),r.addClass("n-layout-nav-item-link"),r.text(y.label),h.append(r),c.append(h);v.append(u(c)(f))}p.append(v)}}function y(){o.$addClass("n-layout-nav tour-intro-1 n-layout-api-nav");$(e).append(u('<div class="n-layout-nav-wrapper">   <div class="n-layout-nav-mobile-header-wrapper">       <a class="n-layout-nav-logo" href="/">           <img src="assets/img/branding/channeltivity-logo-horizontal.svg" />        <\/a>       <div class="n-layout-nav-menu" data-ng-click="toggleNavigation()">           <span class="n-layout-nav-icon"><i data-ng-class="{material_close: isNavigationOpened() === true, material_menu: isNavigationOpened() === false}"><\/i><\/span>       <\/div>   <\/div>   <div class="n-layout-nav-items">   <\/div><\/div>')(f));h();v(!0)}var c=!0;f.toggleNavGroup=function(n){var i=t.navigation.items[n];i.isExpanded=!i.isExpanded};f.openNavGroupWhenClickingOnParentLink=function(n){var i=t.navigation.items[n];i.isExpanded=!0};f.isNavGroupExpanded=function(n){var i=t.navigation.items[n];return i.isExpanded};f.isActiveNavItem=function(n){typeof checkLinkExactMatch=="undefined"&&(checkLinkExactMatch=!0);var i=t.navigation.items[n];return s(i)};f.isActiveSubNavItem=function(n,i){var r=t.navigation.items[n];return s(r.items[i])};f.isNavigationOpened=function(){return r.isSidebarNavigationOpened()};f.toggleNavigation=function(){r.setSidebarNavigationAsOpened(!r.isSidebarNavigationOpened())};f.$watch(function(){return r.isSidebarNavigationOpened()},function(n,t){n!==t&&(n===!0?($("html").addClass("menu-opened"),$("body").addClass("menu-opened")):($("html").removeClass("menu-opened"),$("body").removeClass("menu-opened")))});f.$watch(function(){return $(e).outerHeight()},function(n,t){n!==t&&h(n)});y()}}}]);angular.module("sharedElements").directive("cApiDocsNavigation",["$location","appDetailsValue","helpService","$compile","$route",function(n,t,i,r){return{restrict:"A",scope:{},link:function(u,f,e){function o(t){var u;if(t==null)return!1;var f=n.path(),r=t.items,e=r!=undefined&&r.length>0;if(i.linkEquals(f,t.link))return!0;if(e===!0)for(u=0;u<r.length;u++)if(i.linkEquals(f,r[u].link))return!0;return!1}function s(){$(f).find(".n-layout-nav-items").empty()}function h(){var p,v,n,i,h,l,a,y,c,e;for(s(),p=$(f).find(".n-layout-nav-items"),v=$(document.createElement("div")),n=0;n<t.navigation.items.length;n++){if(i=t.navigation.items[n],i.isExpanded=!1,i.label!=null&&(h=$(document.createElement("div")),h.addClass("n-layout-nav-item parent-item"),i.items!==null?(h.append('<i class="pointer icon-small" data-ng-click="toggleNavGroup('+n+")\" data-ng-class=\"{'material_expand_more': isNavGroupExpanded("+n+") === true, 'material_keyboard_arrow_right': isNavGroupExpanded("+n+') === false}"><\/i>'),h.attr("data-ng-class","{'active api-nav-background': isActiveNavItem("+n+") === true }")):h.attr("data-ng-class","{'active api-nav-background': isActiveNavItem("+n+") === true }"),e=$(document.createElement("a")),e.addClass("n-layout-nav-item-link"),e.text(i.label),i.items!==null&&e.attr("data-ng-click","openNavGroupWhenClickingOnParentLink("+n+")"),e.attr("href",i.link),h.append(e),v.append(r(h)(u))),i.items!==null){for(l=$(document.createElement("div")),l.addClass("n-layout-nav-group"),l.attr("data-ng-show","isNavGroupExpanded("+n+")"),a=0;a<i.items.length;a++)y=i.items[a],c=$(document.createElement("a")),c.addClass("n-layout-nav-item sub-item"),c.attr("href",y.link),o(y)&&(i.isExpanded=!0),c.attr("data-ng-class","{'active api-nav-background' : isActiveSubNavItem("+n+", "+a+") === true }"),e=$(document.createElement("span")),e.addClass("n-layout-nav-item-link"),e.text(y.label),c.append(e),l.append(c);v.append(r(l)(u))}p.append(v)}}function c(){e.$addClass("n-layout-nav tour-intro-1 n-layout-api-nav");$(f).append(r('<div class="n-layout-nav-wrapper">   <a class="n-layout-nav-logo" href="/">       <img src="assets/img/branding/channeltivity-logo-horizontal.svg" />    <\/a>   <div class="n-layout-nav-items">   <\/div><\/div>')(u));h(!0)}u.toggleNavGroup=function(n){var i=t.navigation.items[n];i.isExpanded=!i.isExpanded};u.openNavGroupWhenClickingOnParentLink=function(n){var i=t.navigation.items[n];i.isExpanded=!0};u.isNavGroupExpanded=function(n){var i=t.navigation.items[n];return i.isExpanded};u.isActiveNavItem=function(n){typeof checkLinkExactMatch=="undefined"&&(checkLinkExactMatch=!0);var i=t.navigation.items[n];return o(i)};u.isActiveSubNavItem=function(n,i){var r=t.navigation.items[n];return o(r.items[i])};c()}}}]);angular.module("sharedElements").directive("cArticleLister",["$compile","translationHelperService","testService",function(n,t,i){return{restrict:"A",scope:{articles:"=",onAction:"&"},link:function(r,u){function e(n){$(u).append(n)}function h(){f!==null&&f.$destroy();f=r.$new();u.html("")}function c(){var n=$(document.createElement("div")),t;n.addClass("no-data alert alert-info");t=$(document.createElement("p"));t.text("No data.");n.append(t);e(n)}function l(){if(h(),r.articles===null)return c(),!1;if(Object.prototype.toString.call(r.articles)!=="[object Array]")throw new Error('"articles" is not Array');return!0}function a(t,i){var u=$(document.createElement("div")),e,r,o;return u.addClass("post-title"),e=$(document.createElement("h2")),t.link===null?e.text(t.title):(r=$(document.createElement("a")),r.attr("href",t.link),t.targetBlank&&(r.attr("target","_blank"),r.attr("rel","noreferrer")),r.text(t.title),e.append(r)),u.append(e),t.actions!==null&&(e.addClass("has-actions"),o='<div class="post-title-actions"><c-mobile-context-menu-button data-actions="articles['+i+'].actions" data-on-action="handleAction(action, articles['+i+'])"><\/c-mobile-context-menu-button><\/div>',u.append(n(o)(f))),u.append(p(t,i)),u}function v(n){var r,i;return n.description===null||n.description===""?null:(r=$(document.createElement("div")),r.addClass("post-content"),i=$(document.createElement("div")),i.addClass("wysiwyg fr-view"),i.html(n.description),t.setIsolateAttribute(i),r.append(i),i)}function o(n){if(n.date===null)return null;var i=$(document.createElement("div"));return i.addClass("post-time"),i.text(n.date),t.setTranslateAttribute(i,!1),i}function y(n){if(n.restriction===null)return null;var t=$(document.createElement("div"));return t.addClass("post-restriction"),t.text(n.restriction),t}function p(t,r){var c=o(t),e=null,h,s,u;return(t.actions!==null&&(h='<c-actions-link class="post-actions" data-is-dropdown="true" data-actions="articles['+r+'].actions" data-custom-class="btn btn-text" data-on-action="handleAction(action, articles['+r+'])"><\/c-actions-link>',e=n(h)(f)),s=y(t),c===null&&e===null&&s===null)?null:(u=$(document.createElement("div")),u.addClass("post-attribution large-only"),i.setAttribute(u,"instance",t.title),e&&u.append(e),s!==null&&u.append(s),u)}function w(n){if(typeof n.id=="undefined")throw new Error('"article.id" is undefined');if(typeof n.id!="number")throw new Error('"article.id" is not Number');if(typeof n.link=="undefined")throw new Error('"article.link" is undefined');if(n.link!==null&&typeof n.link!="string")throw new Error('"article.link" is not String');if(typeof n.description=="undefined")throw new Error('"article.description" is undefined');if(typeof n.description!="string")throw new Error('"article.description" is not String');if(typeof n.title=="undefined")throw new Error('"article.title" is undefined');if(typeof n.title!="string")throw new Error('"article.title" is not String');if(typeof n.restriction=="undefined")throw new Error('"article.restriction" is undefined');if(n.restriction!==null&&typeof n.restriction!="string")throw new Error('"article.restriction" is not String');if(typeof n.date=="undefined")throw new Error('"article.date" is undefined');if(n.date!==null&&typeof n.date!="string")throw new Error('"article.date" is not String');if(typeof n.targetBlank=="undefined")throw new Error('"article.targetBlank" is undefined');if(typeof n.targetBlank!="boolean")throw new Error('"article.targetBlank" is not Boolean');}function s(){var n,t;l()!==!1&&(n=$(document.createElement("div")),n.addClass("feed n-layout-padding"),t=$(document.createElement("div")),t.addClass("posts post-container"),angular.forEach(r.articles,function(n,i){var r,u;w(n);r=$(document.createElement("div"));r.addClass("post");u=$(document.createElement("div"));u.addClass("post-header");u.append(a(n,i));u.append(o(n));r.append(u);r.append(v(n));t.append(r)}),n.append(t),e(n))}var f=null;r.$watch(function(){return r.articles},function(n,t){n!==t&&s()});r.handleAction=function(n,t){r.onAction({action:n,data:t})};s()}}}]);angular.module("sharedElements").directive("cAutoFill",["$q","$compile","helpService","$timeout","securityService",function(n,t,i,r){return{restrict:"A",require:"ngModel",link:function(n,t,i,u){function h(){var i,n,t;if(e.cancel!==!0){for(e.currentIndex;e.currentIndex<e.items.length;e.currentIndex++){if(e.cancel===!0)return;i=e.items[e.currentIndex];n=$(document.createElement("li"));n.addClass("item");t=$(document.createElement("span"));t.text(i.text);n.append(t);o.append(n)}r(function(){h()},c)}}var c=20,s=null,f=null,o=null,e={currentIndex:0,items:null,cancel:!1,activeItem:null};n.$watch(function(){return u.$viewValue},function(n,t){n!==null&&n===t});n.$on("$destroy",function(){f.remove()})}}}]);angular.module("sharedElements").directive("cBackButton",["helpService",function(n){return{restrict:"A",scope:{defaultPath:"="},link:function(t,i,r){if(typeof t.defaultPath=="undefined")throw new Error('"defaultPath" is undefined');r.$addClass("btn btn-text btn-padding-right");i.text("Cancel");i.click(function(){t.$apply(function(){n.goToPreviousPage(t.defaultPath)})})}}}]);angular.module("sharedElements").directive("cBindHtmlContent",["$compile",function(n){return{restrict:"A",scope:{content:"="},link:function(t,i){function f(){r!==null&&r.$destroy();r=t.$new();i.html("")}function u(){(f(),t.content!==null&&t.content!=="")&&(i.html(t.content),n(i.contents())(r))}var r=null;t.$watch(function(){return t.content},function(n,t){n!==t&&u()});u()}}}]);angular.module("sharedElements").directive("cBreadCrumbs",["appDetailsValue","helpService","$location","$compile","constants","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",scope:{crumbs:"=?",onAction:"&?",useCrumbsOnly:"@?"},link:function(e,o){function y(){s=[];c!==null&&c.$destroy();c=e.$new();o.html("")}function v(n,i){var e=$(document.createElement("li")),h="",s,v,l,y,p,a,w;return typeof n.icon!="undefined"&&n.icon!==null&&(h='<i class="'+t.getMaterialIconClass(n.icon)+' breadcrumb-icon icon-size-12 icon-spacer-small"><\/i>'),f.setTranslateAttribute(e,n.translate===!0),n.items!==null&&n.items.length>1&&n.isVisible===!0&&t.anySubItemVisible(n)===!0?(s=$('<div class="dropdown" data-c-dropdown><\/div>'),v=$('<a data-c-dropdown-action href="javascript:;"><\/a>'),v.html(h+"<span>"+t.htmlEncode(n.label)+'<\/span><span class="caret breadcrumb-caret"><\/span>'),s.append(v),l=$('<ul class="dropdown-menu" data-c-dropdown-menu><\/ul>'),n.pageType===u.pageType.CUSTOM&&(y=$('<li class="item"><a href="'+n.link+'">'+t.htmlEncode(n.label)+"<\/a><\/li>"),l.append(y),l.append('<li class="item-divider"><\/li>')),angular.forEach(n.items,function(n){if(n.isVisible!==!1){var i;i=n.isDivider===!0?$('<li class="item-divider"><\/li>'):$('<li class="item"><a href="'+n.link+'">'+t.htmlEncode(n.label)+"<\/a><\/li>");l.append(i)}}),s.append(l),o.append(s),r(s)(c),e.append(s)):n.link===null||i||n.isVisible!==!0?n.actionName===null||i||n.isVisible!==!0?(w=$("<span>"+h+"<span>"+t.htmlEncode(n.label)+"<\/span><\/span>"),e.append(w)):(p="handleAction('"+n.actionName+"',"+n.associatedId+")",a=$('<a href="javascript:;" data-ng-click="'+p+'">'+h+"<span>"+t.htmlEncode(n.label)+"<\/span><\/a>"),e.append(a),r(e)(c)):(a=$('<a href="'+n.link+'">'+h+"<span>"+t.htmlEncode(n.label)+"<\/span><\/a>"),e.append(a)),e}function a(n){if(typeof n.label=="undefined")throw new Error('"crumb.label" is undefined');if(typeof n.label!="string")throw new Error('"crumb.label" is not String');if(typeof n.link=="undefined")throw new Error('"crumb.link" is undefined');if(n.link!==null&&typeof n.link!="string")throw new Error('"crumb.link" is not String');if(n.isVisible!==null&&typeof n.isVisible!="boolean")throw new Error('"crumb.isVisible" is not boolean');if(typeof n.items=="undefined")throw new Error('"crumb.items" is undefined');if(n.items!==null&&Object.prototype.toString.call(n.items)!=="[object Array]")throw new Error('"crumb.items" is not Array');}function p(){var i=$.extend(!0,[],n.navigation.items),r;return(n.navigation.logs!==null&&i.push(n.navigation.logs),n.navigation.profile!==null&&i.push(n.navigation.profile),n.navigation.search!==null&&i.push(n.navigation.search),r=_.find(i,function(n){return t.linkStartsWith(h,n.link)&&n.excludeFromBreadcrumbs===!1}),typeof r=="undefined"&&(angular.forEach(i,function(n){if(n.items!==null){var i=_.find(n.items,function(n){return t.linkStartsWith(h,n.link)});if(typeof i!="undefined"){r=n;return}}}),typeof r=="undefined"))?null:r}function w(n){var r=_.filter(n.items,function(n){return n.isDivider===!1&&n.excludeFromBreadcrumbs===!1}),i=_.find(r,function(n){return t.linkEquals(h,n.link)});return typeof i!="undefined"?i:(i=_.find(r,function(i){return i.isDivider===!1&&i.link!==n.link&&t.linkStartsWith(h,i.link)}),typeof i!="undefined")?i:(i=_.find(r,function(n){return n.isDivider===!1&&t.linkStartsWith(h,n.link)}),typeof i!="undefined")?i:null}function l(){var i,n,t,r;if(y(),i=typeof e.useCrumbsOnly!="undefined"||e.useCrumbsOnly==="true",i===!1){if(n=p(),n===null)return;a(n);n.isVisible===!0&&s.push(n);t=w(n);t!==null&&(a(t),t.isVisible===!0&&s.push(t))}typeof e.crumbs!="undefined"&&e.crumbs!==null&&(s=s.concat(e.crumbs));$(o).append('<div class="n-layout-breadcrumbs-wrapper">   <div class="n-layout-scroll hide-scrollbar n-layout-fill">       <ol class="breadcrumb"><\/ol>   <\/div><\/div>');r=$(o).find("ol");i===!0||n.isVisible===!0?angular.forEach(s,function(n,t){a(n);n.isVisible&&r.append(v(n,t===s.length-1))}):r.append(v(n,!0))}var c=null,h=i.path(),s=[];if(typeof e.crumbs!="undefined"&&e.crumbs!==null&&Object.prototype.toString.call(e.crumbs)!=="[object Array]")throw new Error('"crumbs" is not Array');if(typeof e.crumbs!="undefined"&&e.crumbs!==null&&Object.prototype.toString.call(e.crumbs)!=="[object Array]")throw new Error('"crumbs" is not Array');if(typeof e.crumbs!="undefined"&&e.crumbs!==null&&Object.prototype.toString.call(e.crumbs)!=="[object Array]")throw new Error('"crumbs" is not Array');l();e.$watch(function(){return e.crumbs},function(n,t){n!==t&&l()});e.$watch(function(){return n.navigation},function(n,t){n!==t&&l()});e.$watch(function(){return i.path()},function(n,t){n!==t&&(h=n,l())});e.handleAction=function(n,t){e.onAction({action:n,data:t})}}}}]);angular.module("sharedElements").directive("cBulkOperationError",["$compile","helpService",function(n,t){return{restrict:"A",scope:{error:"=",pendingAction:"=",onAction:"&"},link:function(i,r){function s(){u!==null&&u.$destroy();e=!1;i.pendingAction=!1;i.toggleDetailsLabel="View Details";u=i.$new();r.html("")}function h(){return(s(),i.error===null)?!1:!0}function c(){var e=$(document.createElement("div")),r,i;e.addClass("modal-body");r=$(document.createElement("div"));r.addClass("alert alert-warning");r.append('<i class="icon-size-18 material_warning"><\/i>');i=$(document.createElement("div"));i.append("<b>Bulk Action Warning:<\/b> "+u.result.bulkOperationError.description);i.append('&nbsp;<a href="javascript:;" data-ng-click="toggleDetails()" data-ng-bind="toggleDetailsLabel"><\/a>');n(i)(u);f=$(document.createElement("div"));f.hide();f.append("<hr>");var o=_.filter(u.error.entities,function(n){return n.hasError===!0}),s=_.sortBy(o,function(n){return n.reasonIndex}),h=_.groupBy(s,function(n){return n.reasonIndex}),c=!1;return angular.forEach(h,function(i,r){var s=u.error.reasons[r],o,h,e,l,a;for(s.description!==null?f.append('<div class="text-bulk-operation-reason"><strong>'+t.htmlEncode(s.title)+"<\/strong><br /> "+t.htmlEncode(s.description)+"<\/div>"):f.append('<div class="text-bulk-operation-reason"><strong>'+t.htmlEncode(s.title)+"<\/strong><\/div>"),o=$(document.createElement("ul")),o.addClass("list-inline"),h=0;h<i.length;h++)e=i[h],l="",e.inlineHelp!==null&&(c=!0,a=u.error.entities.indexOf(e),l='<span data-c-inline-help data-message="error.entities['+a+'].inlineHelp"><\/span>'),o.append(e.link===null?"<li>"+e.label+l+"<\/li>":'<li><a href="'+e.link+'" target="_blank" rel="noreferrer">'+e.label+"<\/a>"+l+"<\/li>");n(o)(u);f.append(o)}),i.append(f),r.append(i),e.append(r),e}function l(){var t=$(document.createElement("div")),i,r;return t.addClass("modal-footer text-right"),i=_.filter(u.error.entities,function(n){return n.hasError===!1}).length>0,r=i===!0?" btn-padding-right":"",t.append('<button type="button" class="btn btn-text'+r+'" data-ng-click="handleAction(\'change-selection\')">Change Selection<\/button>'),i===!0&&t.append('<button data-c-submit-button data-pending-action="pendingAction" data-on-submit="handleAction(\'continue\')">Continue<\/button>'),n(t)(u)}function o(){h()!==!1&&(r.append(c()),r.append(l()))}if(typeof i.error=="undefined")throw new Error('"error" is undefined');var u=null,f=null,e=!1;i.pendingAction=!1;i.toggleDetailsLabel="View Details";i.$watch(function(){return i.error},function(n,t){n!==t&&o()},!0);i.toggleDetails=function(){e=!e;e?(f.slideDown(),i.toggleDetailsLabel="Hide Details"):(f.slideUp(),i.toggleDetailsLabel="View Details")};i.handleAction=function(n){i.onAction({action:n})};o()}}}]);angular.module("sharedElements").directive("cBulkOperationFooter",["$compile",function(n){return{restrict:"A",transclude:!0,scope:{isActive:"=",actions:"=",isDisabled:"=",onAction:"&"},link:function(t,i,r,u,f){function o(){e!==null&&e.$destroy();e=t.$new();r.$addClass("n-mobile-bulk-operations");i.html("")}function s(){return o(),!0}function h(){var t,r;s()!==!1&&(t=$(document.createElement("div")),t.attr("data-ng-show","isActive === true"),t.addClass("n-mobile-actions"),t.append('<c-mobile-bulk-operation-actions-button data-actions="actions" data-is-disabled="isDisabled" data-on-action="handleAction(action)"><\/c-mobile-bulk-operation-actions-button><button class="btn btn-default" data-ng-click="cancelBulkOperations()">Cancel<\/button>'),n(t)(e),i.append(t),r=$(document.createElement("div")),r.attr("data-ng-show","isActive === false"),r.addClass("n-mobile-actions"),n(r)(e),i.append(r),f(function(n){r.append(n)}))}var e=null;t.cancelBulkOperations=function(){t.isActive=!1};t.handleAction=function(n){t.onAction({action:n})};h()}}}]);angular.module("sharedElements").directive("cBulkOperationResult",["$compile","helpService","translationHelperService",function(n,t,i){return{restrict:"A",transclude:!0,scope:{result:"=",pendingAction:"=",onAction:"&"},link:function(r,u,f,e,o){function a(){s!==null&&s.$destroy();c=!1;r.pendingAction=!1;r.toggleDetailsLabel="View Details";s=r.$new();u.html("")}function v(){return(a(),r.result===null)?!1:r.result.bulkOperationError===null&&r.result.confirmationData===null?!1:!0}function y(){var r,u;if(s.result.bulkOperationError===null)return null;r=$(document.createElement("div"));r.addClass("alert alert-warning");r.attr("data-ng-show","showErrorView === true");r.append('<i class="icon-size-18 material_warning"><\/i>');u=$(document.createElement("div"));u.append("<b>Bulk Action Warning:<\/b> "+s.result.bulkOperationError.description);u.append('&nbsp;<a href="javascript:;" data-ng-click="toggleDetails()" data-ng-bind="toggleDetailsLabel"><\/a>');n(u)(s);h=$(document.createElement("div"));h.hide();h.append("<hr>");var f=_.filter(s.result.entities,function(n){return n.hasError===!0}),e=_.sortBy(f,function(n){return n.reasonIndex}),o=_.groupBy(e,function(n){return n.reasonIndex});return angular.forEach(o,function(r,u){var o=s.result.reasons[u],e,c,f,l,a;for(o.description!==null?h.append('<div class="text-bulk-operation-reason"><b>'+t.htmlEncode(o.title)+"<\/b><br /> "+t.htmlEncode(o.description)+"<\/div>"):h.append('<div class="text-bulk-operation-reason"><b>'+t.htmlEncode(o.title)+"<\/b><\/div>"),e=$(document.createElement("ul")),e.addClass("list-inline"),i.setTranslateAttribute(e,!1),c=0;c<r.length;c++)f=r[c],l="",f.inlineHelp!==null&&(a=s.result.entities.indexOf(f),l='<span data-c-inline-help data-message="result.entities['+a+'].inlineHelp"><\/span>'),e.append(f.link===null?"<li>"+f.label+l+"<\/li>":'<li><a href="'+f.link+'" target="_blank" rel="noreferrer">'+f.label+"<\/a>"+l+"<\/li>");n(e)(s);h.append(e)}),u.append(h),r.append(u),r}function p(){if(s.result.confirmationData===null)return null;var t=$(document.createElement("div"));return t.attr("data-ng-show","showErrorView === false"),n(t)(s),o(function(n){t.append(n)}),t}function w(){var t=$(document.createElement("div")),i,r;return t.addClass("modal-footer text-right"),i=s.result.bulkOperationError===null||_.filter(s.result.entities,function(n){return n.hasError===!1}).length>0,r=i===!0?" btn-padding-right":"",t.append('<button type="button" class="btn btn-text'+r+'" data-ng-click="handleAction(\'change-selection\')">Change Selection<\/button>'),i===!0&&(t.append('<button data-ng-if="result.confirmationData !== null && showErrorView === true" data-c-submit-button data-pending-action="pendingAction" data-on-submit="toggleErrorView()">Continue<\/button>'),t.append('<button data-ng-if="result.confirmationData === null || showErrorView === false" data-c-submit-button data-pending-action="pendingAction" data-on-submit="handleAction(\'continue\')">Continue<\/button>')),n(t)(s)}function l(){var n,t,i;v()!==!1&&(r.showErrorView=s.result.bulkOperationError!==null,n=$(document.createElement("div")),n.addClass("modal-body"),t=y(),t!==null&&n.append(t),i=p(),i!==null&&n.append(i),u.append(n),u.append(w()))}if(typeof r.result.bulkOperationError=="undefined")throw new Error('"error" is undefined');typeof r.result.confirmationData=="undefined"&&(r.result.confirmationData=null);var s=null,h=null,c=!1;r.pendingAction=!1;r.toggleDetailsLabel="View Details";r.showErrorView=!1;r.$watch(function(){return r.result},function(n,t){n!==t&&l()},!0);r.toggleDetails=function(){c=!c;c?(h.slideDown(),r.toggleDetailsLabel="Hide Details"):(h.slideUp(),r.toggleDetailsLabel="View Details")};r.toggleErrorView=function(){r.showErrorView=!r.showErrorView};r.handleAction=function(n){r.onAction({action:n})};l()}}}]);angular.module("sharedElements").directive("cBulkOperationResultBody",["$compile","helpService","testService",function(n,t,i){return{restrict:"A",transclude:!0,scope:{result:"="},link:function(r,u,f,e,o){function a(){s!==null&&s.$destroy();c=!1;r.toggleDetailsLabel="View Details";s=r.$new();u.html("")}function v(){return(a(),r.result===null)?!1:r.result.bulkOperationError===null&&r.result.confirmationData===null?!1:!0}function y(){var i,r;if(s.result.bulkOperationError===null)return null;i=$(document.createElement("div"));i.addClass("alert alert-warning");i.attr("data-ng-show","result.showErrorView === true");i.append('<i class="icon-size-18 material_warning"><\/i>');r=$(document.createElement("div"));r.append("<b>Bulk Action Warning:<\/b> "+s.result.bulkOperationError.description);r.append('&nbsp;<a href="javascript:;" data-ng-click="toggleDetails()" data-ng-bind="toggleDetailsLabel"><\/a>');n(r)(s);h=$(document.createElement("div"));h.hide();h.append("<hr>");var u=_.filter(s.result.entities,function(n){return n.hasError===!0}),f=_.sortBy(u,function(n){return n.reasonIndex}),e=_.groupBy(f,function(n){return n.reasonIndex});return angular.forEach(e,function(i,r){var e=s.result.reasons[r],f,o,u,c,l;for(e.description!==null?h.append('<div class="text-bulk-operation-reason"><b>'+t.htmlEncode(e.title)+"<\/b><br /> "+t.htmlEncode(e.description)+"<\/div>"):h.append('<div class="text-bulk-operation-reason"><b>'+t.htmlEncode(e.title)+"<\/b><\/div>"),f=$(document.createElement("ul")),f.addClass("list-inline"),o=0;o<i.length;o++)u=i[o],c="",u.inlineHelp!==null&&(l=s.result.entities.indexOf(u),c='<span data-c-inline-help data-message="result.entities['+l+'].inlineHelp"><\/span>'),f.append(u.link===null?"<li>"+u.label+c+"<\/li>":'<li><a href="'+u.link+'" target="_blank" rel="noreferrer">'+u.label+"<\/a>"+c+"<\/li>");n(f)(s);h.append(f)}),r.append(h),i.append(r),i}function p(){if(s.result.confirmationData===null)return null;var t=$(document.createElement("div"));return t.attr("data-ng-show","result.showErrorView === false"),i.setAttribute(t,"confirmation-body"),n(t)(s),o(function(n){t.append(n)}),t}function l(){var n,t;v()!==!1&&(r.showErrorView=s.result.bulkOperationError!==null,n=y(),n!==null&&u.append(n),t=p(),t!==null&&u.append(t))}if(typeof r.result.bulkOperationError=="undefined")throw new Error('"error" is undefined');typeof r.result.confirmationData=="undefined"&&(r.result.confirmationData=null);var s=null,h=null,c=!1;r.toggleDetailsLabel="View Details";r.$watch(function(){return r.result},function(n,t){n!==t&&l()},!0);r.toggleDetails=function(){c=!c;c?(h.slideDown(),r.toggleDetailsLabel="Hide Details"):(h.slideUp(),r.toggleDetailsLabel="View Details")};l()}}}]);angular.module("sharedElements").directive("cBulkOperationResultFooter",["$compile",function(n){return{restrict:"A",transclude:!0,scope:{result:"=",pendingAction:"=",onAction:"&"},link:function(t,i){function f(){r!==null&&r.$destroy();t.pendingAction=!1;r=t.$new();i.html("")}function e(){return(f(),t.result===null)?!1:t.result.bulkOperationError===null&&t.result.confirmationData===null?!1:!0}function u(){if(e()!==!1){var t=r.result.bulkOperationError===null||_.filter(r.result.entities,function(n){return n.hasError===!1}).length>0,u=t===!0?" btn-padding-right":"";i.append('<button type="button" class="btn btn-text'+u+'" data-ng-click="handleAction(\'change-selection\')">Change Selection<\/button>');t===!0&&(i.append('<button data-ng-if="result.confirmationData !== null && result.showErrorView === true" data-c-submit-button data-pending-action="pendingAction" data-on-submit="toggleErrorView()">Continue<\/button>'),i.append('<button data-ng-if="result.confirmationData === null || result.showErrorView === false" data-c-submit-button data-pending-action="pendingAction" data-on-submit="handleAction(\'continue\')">Continue<\/button>'));n(i.contents())(r)}}if(typeof t.result.bulkOperationError=="undefined")throw new Error('"error" is undefined');typeof t.result.confirmationData=="undefined"&&(t.result.confirmationData=null);var r=null;t.pendingAction=!1;t.$watch(function(){return t.result},function(n,t){n!==t&&u()},!0);t.toggleErrorView=function(){t.result.showErrorView=!t.result.showErrorView};t.handleAction=function(n){t.onAction({action:n})};u()}}}]);angular.module("sharedElements").directive("cButton",["$compile","actionService","helpService",function(n,t,i){return{restrict:"E",scope:{action:"=",onAction:"&?",isDisabled:"=?",disabledTooltip:"@"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("");u.css("display","none")}function s(){if(o(),typeof r.action=="undefined")throw new Error('"action" is undefined');return r.action!==null}function e(){if(s()!==!1){u.css("display","block");var e=t.getActionElement(r.action);e.addClass("btn");r.action.isPrimary===!0?e.addClass("btn-primary"):e.addClass("btn-default");r.isDisabled===!0&&e.addClass("disabled");i.setTestAttribute(e,"button",r.action.label);e.text(r.action.label);e.attr("data-c-tooltip","[[exec[[getTooltipText()]]exec]]");$(u).append(e);n(u.contents())(f)}}var f=null;r.getTooltipText=function(){return r.disabledTooltip};r.$watch(function(){return r.isDisabled},function(){r.isDisabled===!0?$(u).find(".btn").addClass("disabled"):$(u).find(".btn").removeClass("disabled")},!1);r.$watch(function(){return r.action},function(n,t){typeof n!="undefined"&&n!==t&&e()},!0);r.handleAction=function(n){if(r.isDisabled!==!0)r.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cCard",["$compile","translationHelperService","constants",function(n,t,i){return{restrict:"A",scope:{card:"="},link:function(r,u,f){function o(t){$(u).append(n(t)(r))}function s(){if(u.html(""),r.card===null)return!1;if(Object.prototype.toString.call(r.card)!=="[object Object]")throw new Error('"card" is not Object');return!0}function h(){var i=$(document.createElement("div")),t;return i.addClass("card-avatar"),t=$(document.createElement("div")),t.attr("data-c-thumbnail-image",""),t.attr("data-image","card.image"),t.addClass("avatar avatar-large"),i.append(n(t)(r)),i}function c(){var u=$(document.createElement("div")),t,i;return u.addClass("card-avatar"),t=$(document.createElement("div")),t.addClass("preview"),i=$(document.createElement("div")),i.attr("data-c-thumbnail-image",""),i.attr("data-image","card.image"),t.append(n(i)(r)),u.append(t),u}function e(){var n,v,e,y,p,w,k,d,g,l,a,b;if(s()){n=r.card;$(u).attr("data-unit-t-card","");f.$addClass("card");switch(n.type){case i.cardEntityType.USER:$(u).append(h());f.$addClass("user-card");break;case i.cardEntityType.ORGANIZATION:$(u).append(c());f.$addClass("org-card");break;default:throw new Error("Unknown card.type: "+n.type);}if(v=$(document.createElement("div")),v.addClass("card-fields-content"),e=$(document.createElement("div")),e.addClass("field"),y=$(document.createElement("span")),y.addClass("name format-wrap"),n.link!==null&&n.link!==""?(p=$(document.createElement("a")),p.attr("href",n.link),p.text(n.name),t.setTranslateAttribute(p,!1),y.append(p)):y.text(n.name),e.append(y),n.titleLabel!==null&&n.titleLabel!==""&&(w=$(document.createElement("span")),w.addClass("text-smallcaps"),w.text(n.titleLabel),e.append("&nbsp;"),e.append(w)),k=1,n.fieldlist1=null,n.fieldlist2=null,d=n.mainFields!==null?n.mainFields.length:0,n.fields!==null)for(n.fieldlist1=[],n.fieldlist2=[],g=Math.ceil((n.fields.length+d+k)/2),l=0;l<n.fields.length;l++)l<g-d-k?n.fieldlist1.push(n.fields[l]):n.fieldlist2.push(n.fields[l]);a=$(document.createElement("div"));a.addClass("card-fields");e!==null&&a.append(e);n.mainFields!==null&&a.append($('<div class="field main-field" data-c-field data-field="field" data-ng-repeat="field in card.mainFields"><\/div>'));n.fieldlist1!==null&&a.append($('<div class="field standard-field" data-c-field data-field="field" data-ng-repeat="field in card.fieldlist1"><\/div>'));v.append(a);n.fieldlist2!==null&&(b=$(document.createElement("div")),b.addClass("card-fields"),b.append($('<div class="field standard-field" data-c-field data-field="field" data-ng-repeat="field in card.fieldlist2"><\/div>')),v.append(b));o(v)}}if(typeof r.card=="undefined")throw new Error('"card" is undefined');e();r.$watch(function(){return r.card===null?null:r.card},function(n,t){n!==t&&e()})}}}]);angular.module("sharedElements").directive("cCardSidebarSection",["$compile","testService",function(n,t){return{restrict:"A",scope:{section:"="},link:function(i,r){function u(t){$(r).append(n(t)(i))}function e(){if(r.html(""),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');return!0}function f(){var n,r;e()&&(i.section.title!==null&&(n=$(document.createElement("h6")),n.text(i.section.title),t.setAttribute(n,"sidebar-section",i.section.title),u(n)),r='<div data-c-card data-card="card" data-ng-repeat="card in section.cards"><\/div>',u(r))}if(typeof i.section=="undefined")throw new Error('"section" is undefined');f();i.$watch(function(){return i.section===null?null:i.section.cards===null?null:i.section.cards},function(n,t){n!==t&&f()})}}}]);angular.module("sharedElements").directive("cChart",["appDetailsValue","$timeout","constants","$compile","helpService","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",scope:{chart:"=",status:"="},link:function(e,o,s){function l(){v!==null&&clearTimeout(v);v=setTimeout(function(){h.redraw()},0)}function c(n){return u.htmlEncode(u.truncateText(n,!0,50))}function p(){return["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#f3ec2e","#b15928","#cf42dc","#513824","#6acf87","#245131","#518df1","#043587","#d042dc","#7c0587","#9B9700","#8FB0FF","#C8A1A1","#A4E804","#00CCFF","#CC0744","#99ADC0","#F4D749","#000035","#B05B6F","#7A001D"]}function w(n){var t={lineWidth:2,marker:{enabled:!0,symbol:"circle",radius:2.5},fillOpacity:1/3,states:{hover:{lineWidth:3}},negativeColor:"#d32",borderWidth:0};if(n)for(x in n)t[x]=n[x];return t}function a(){h!==null&&e.anyData()!==!1&&t(function(){u.isMobileDevice()===!0?y():h.reflow()},0)}function b(){if(e.chart!==null){if(Object.prototype.toString.call(e.chart)!=="[object Object]")throw new Error('"chart" is not Object');if(typeof e.chart.chartType=="undefined")throw new Error('"chart.chartType" is undefined');if(typeof e.chart.chartType!="number")throw new Error('"chart.chartType" is not Number');if(typeof e.chart.xAxis=="undefined")throw new Error('"chart.xAxis" is undefined');if(Object.prototype.toString.call(e.chart.xAxis)!=="[object Object]")throw new Error('"chart.xAxis" is not Object');if(typeof e.chart.xAxis.categories=="undefined")throw new Error('"chart.xAxis.categories" is undefined');if(e.chart.xAxis.categories!==null){if(Object.prototype.toString.call(e.chart.xAxis.categories)!=="[object Array]")throw new Error('"chart.xAxis.categories" is not Array');if(e.chart.xAxis.categories.length!==0){if(typeof e.chart.yAxes=="undefined")throw new Error('"chart.yAxes" is undefined');if(Object.prototype.toString.call(e.chart.yAxes)!=="[object Array]")throw new Error('"chart.yAxes" is not Array');}}}}function y(){var v,g;if(b(),e.chart===null||e.chart.xAxis.categories===null||e.chart.xAxis.categories.length===0){e.status=i.listerStatus.DONE;return}var r=$(o).find(".chart")[0],t=$(o).find(".chart-legend")[0],n={colors:p(),tints:["rgba(68,170,213,.2)"],credits:{enabled:!1},tooltip:{backgroundColor:"white",valueDecimals:0,className:"chart-tooltip"},title:{text:null},subtitle:{text:null},chart:{className:"chart",renderTo:r,style:{fontFamily:"sans-serif",fontSize:"13px",zIndex:1},backgroundColor:"transparent",borderWidth:0,spacingBottom:0,spacingTop:0,spacingLeft:0,spacingRight:0,animation:!1,plotBorderWidth:0,plotShadow:!1,selectionMarkerFill:"rgba(69,114,167,0.25)",shadow:!1,events:{redraw:function(){$(r).find(".highcharts-axis-labels title").each(function(n,t){var r=$('<input type="text" value="'+$(t).html()+'"/>'),i=document.createElement("textarea");i.innerHTML=$(r).val();$(t).text(i.value)});var n=this;$(t).html("");$(n.series).each(function(n,r){if(e.chart.chartType===i.chartType.STACKED_BAR&&typeof r.options.id=="undefined")return!0;$('<span class="legend-item"><svg width="10" height="10"><rect rx="20" ry="20" width="10" height="10" style="fill:'+r.color+'" /><\/svg><span class="legend-label">'+r.userOptions.displayName+"<\/span><\/span>").click(function(){}).appendTo(t)})},load:function(){var u=this,n;$(t).html("");$(u.series).each(function(n,r){if(e.chart.chartType===i.chartType.STACKED_BAR&&r.options.id===undefined)return!0;$('<span class="legend-item"><svg width="10" height="10"><rect rx="20" ry="20" width="10" height="10" style="fill:'+r.color+'" /><\/svg><span class="legend-label">'+r.userOptions.displayName+"<\/span><\/span>").click(function(){}).appendTo(t)});$(r).find(".highcharts-axis-labels title").each(function(n,t){var r=$('<input type="text" value="'+$(t).html()+'"/>'),i=document.createElement("textarea");i.innerHTML=$(r).val();$(t).text(i.value)});typeof translationService!="undefined"&&(n=$(document.createElement("div")),n.hide(),$(o).append(n),e.chart.xAxis.categories.forEach((t,i)=>{var r=$(document.createElement("div"));r.text(t);n.append(r);setTimeout(function(){h.xAxis[0].categories[i]=c(r.text());l()},0);f.setTranslatedCallback(r,function(n,t){h.xAxis[0].categories[t.categoryIndex]=c(r.text());l()},{categoryIndex:i})}),e.chart.yAxes.forEach((t,i)=>{t.series.forEach((t,r)=>{var e=$(document.createElement("div")),u;e.text(t.toolTipName);n.append(e);setTimeout(function(){h.yAxis[i].series[r].userOptions.displayName=c(e.text());l()},0);f.setTranslatedCallback(e,function(n,t){h.yAxis[t.axisIndex].series[t.seriesIndex].userOptions.displayName=c(e.text());l()},{axisIndex:i,seriesIndex:r});u=$(document.createElement("div"));u.text(t.name);n.append(u);setTimeout(function(){h.yAxis[i].series[r].name=c(u.text());l()},0);f.setTranslatedCallback(u,function(n,t){h.yAxis[t.axisIndex].series[t.seriesIndex].name=c(u.text());l()},{axisIndex:i,seriesIndex:r})})}));setTimeout(function(){e.$apply(function(){e.status=i.listerStatus.DONE})},300)}}},legend:{layout:"horizontal",align:"left",margin:0,verticalAlign:"bottom",borderWidth:0,symbolWidth:10,symbolHeight:10,symbolRadius:5,maxHeight:13,enabled:!1},xAxis:{lineColor:"rgba(0,0,0,.1)",gridLineColor:"rgba(0,0,0,.075)",minorGridLineColor:"rgba(0,0,0,.075)",tickLength:7,tickColor:"rgba(0,0,0,.1)",minorTickColor:"rgba(0,0,0,.1)",minorGridLineDashStyle:"dot",title:{enabled:!1},categories:$.map(e.chart.xAxis.categories,function(n){return c(n).replace("&amp;","&")}),labels:{style:{fontSize:"0.85em"}}},yAxis:[],series:[]},u=5;switch(e.chart.chartType){case i.chartType.BAR:case i.chartType.STACKED_BAR:var y=4,k=16,d=25,s=20,nt=e.chart.yAxes.length>1?s+d:s+u,a=0;e.chart.chartType===i.chartType.BAR?angular.forEach(e.chart.yAxes,function(n){a+=_.size(n.series)}):e.chart.chartType===i.chartType.STACKED_BAR&&angular.forEach(e.chart.yAxes,function(n){var t=_.groupBy(n.series,function(n){return n.stack});a+=_.size(t)});n.chart.height=e.chart.xAxis.categories.length*a*(k+2*y)+nt;n.chart.type="bar";n.chart.marginTop=e.chart.yAxes.length>1?d:u;n.chart.marginBottom=s;n.plotOptions={bar:w({groupPadding:0,pointPadding:y,borderWidth:0,pointWidth:k,stacking:e.chart.chartType===i.chartType.STACKED_BAR?"normal":null})};break;case i.chartType.SPLINE:n.chart.height=150;n.chart.type="spline";n.chart.marginTop=u;n.plotOptions={spline:w()};break;default:throw new Error("Not implemented chartType: "+e.chart.chartType);}angular.forEach(e.chart.yAxes,function(t,r){var u={id:r,labels:{padding:0,format:"{value:,.0f}",autoRotation:[-45],distance:5,style:{fontSize:"0.85em"}},lineColor:"rgba(0,0,0,.1)",gridLineColor:"rgba(0,0,0,.075)",minorGridLineColor:"rgba(0,0,0,.075)",tickLength:7,tickColor:"rgba(0,0,0,.1)",minorTickColor:"rgba(0,0,0,.1)",minorGridLineDashStyle:"dot",title:{text:null},maxPadding:0,minPadding:0,allowDecimals:!1,floor:0,opposite:r>0&&r<2,reversedStacks:!1};t.valuePrefix!==null&&(u.labels.format=t.valuePrefix+u.labels.format);t.valueSuffix!==null&&(u.labels.format=u.labels.format+t.valueSuffix);angular.forEach(t.series,function(t){var f=r,u;f===2&&(f=1);u={name:c(t.name),displayName:c(t.toolTipName),yAxis:f,data:t.data,tooltip:{}};t.valuePrefix!==null&&(u.tooltip.valuePrefix=t.valuePrefix);t.valueSuffix!==null&&(u.tooltip.valueSuffix=t.valueSuffix);t.toolTipDecimals!=null&&(u.tooltip.valueDecimals=t.toolTipDecimals);switch(e.chart.chartType){case i.chartType.STACKED_BAR:u.stack=t.stack;u.type="bar";t.id!==null&&(u.id=t.id);t.linkedTo!==null&&(u.linkedTo=t.linkedTo);break;case i.chartType.BAR:u.type="bar";break;case i.chartType.SPLINE:u.type="spline";break;default:throw new Error("Not implemented chartType: "+e.chart.chartType);}n.series.push(u)});n.yAxis.push(u)});e.chart.chartType===i.chartType.STACKED_BAR&&(v=p(),g=_.filter(n.series,function(n){return n.linkedTo===undefined}),angular.forEach(g,function(t,i){t.color=v[i];var r=_.filter(n.series,function(n){return t.id===n.linkedTo});angular.forEach(r,function(n){n.color=v[i]})}));h=new Highcharts.Chart(n)}function k(n){$(o).append(n)}function d(){var n=$('   <div data-ng-if="anyData() === false" class="layout-no-data">       <div class="no-data alert alert-info">          <i class="icon-size-18 material_info"><\/i>           <p>No data.<\/p>       <\/div>   <\/div>');return noItemsParagraphElement=n.find("p"),u.setTestAttribute(noItemsParagraphElement,"no-data","No data."),n}function g(){var n=$(document.createElement("div")),i,t;return n.addClass("chart-container"),f.setTranslateAttribute(n,!1),n.attr("data-unit-t-chart",""),n.attr("data-ng-show","anyData() === true"),i=$(document.createElement("div")),i.addClass("chart"),t=$(document.createElement("div")),t.addClass("chart-legend"),t.attr("style","padding-left: 8px;"),n.append(i),n.append($(document.createElement("br"))),n.append(t),n}function nt(){s.$addClass("chart-viewer");var n=$(document.createElement("div"));n.attr("data-ng-class",'{"loading-large": isLoading() === true}');n.append(d());n.append(g());k(r(n)(e));t(function(){y()});$(o).on("toggle-navigation",a);$(o).on("resized-column",a);$(o).on("resized-window",a)}if(n===null)throw new Error('"appDetailsValue" is null');if(typeof n.localization=="undefined")throw new Error('"appDetailsValue.localization" is undefined');if(typeof n.localization.numberDecimalSeparator=="undefined")throw new Error('"appDetailsValue.localization.numberDecimalSeparator" is undefined');if(typeof n.localization.numberGroupSeparator=="undefined")throw new Error('"appDetailsValue.localization.numberGroupSeparator" is undefined');if(typeof e.chart=="undefined")throw new Error('"chart" is undefined');if(typeof e.status=="undefined")throw new Error('"status" is undefined');var h=null,v=null;Highcharts.setOptions({lang:{decimalPoint:n.localization.numberDecimalSeparator,thousandsSep:n.localization.numberGroupSeparator}});e.anyData=function(){return e.chart===null?!1:e.chart.xAxis.categories===null?!1:e.chart.xAxis.categories.length===0?!1:!0};e.isLoading=function(){return e.status!==i.listerStatus.DONE};e.$watch(function(){return e.status},function(n){n===i.listerStatus.RENDERING&&t(function(){y()})});e.$on("$destroy",function(){$(o).off("toggle-navigation",a);$(o).off("resized-column",a);$(o).off("resized-window",a)});nt()}}}]);angular.module("sharedElements").directive("cCircleSeparatedItems",function(){return{restrict:"A",scope:{items:"="},templateUrl:"js/shared/common/directives/circleSeparatedItems/circleSeparatedItems.html",controller:["$scope","constants",function(n,t){n.types=t.circleSeparatedItemTypes}]}});angular.module("sharedElements").directive("cColorPicker",["helpService","$timeout","constants","translationHelperService",function(n,t,i,r){return{restrict:"A",require:"ngModel",link:function(u,f,e,o){function c(){if(h!==null){var t=f.val(),r=n.getRegexPattern(i.regexType.HEX_COLOR),u=new RegExp(r);u.test(t)&&h.minicolors("value",{color:t,opacity:1})}}function v(n){a===!1&&(c(),a=!0);typeof u.handleAction!="undefined"&&u.handleAction("color-picker-opened");n.resolve()}function y(){typeof u.handleAction!="undefined"&&u.handleAction("color-picker-closed");c()}function p(){s=$(document.createElement("div"));s.addClass("dropdown-menu");s.attr("data-close-on-inside-click","false");var i=$(document.createElement("div"));i.addClass("dropdown-menu-content colorpicker");r.setTranslateAttributeBasedOnParent(i,f);h=$(document.createElement("div"));i.append(h);s.append(i);s.appendTo($("body"));n.initializeDropdown({actionElement:f,menuElement:s,preventClose:!0,beforeCallback:v});f.focusin(function(t){t.preventDefault();t.stopPropagation();n.isMobileDevice()===!0&&f.blur();f.click()});typeof o.$modelValue!="undefined"&&o.$modelValue!==null&&f.val(o.$modelValue);h.minicolors({control:"hue",theme:e.theme,position:"bottom",inline:!0,defaultValue:"",change:function(n){var i=tinycolor(f.val()),r=tinycolor(n);i.toHex(!1)!==r.toHex(!1)&&t(function(){f.val(n);o.$setViewValue(n)})}});c();l=!0}function w(){l===!1&&p()}var l=!1,a=!1,s=null,h=null;f.on("blur",y);u.$on("$destroy",function(){s!==null&&s.remove();f.off("blur",c)});w()}}}]);angular.module("sharedElements").directive("cCrmStatusButton",["$compile","helpService","constants","translationHelperService",function(n,t,i){return{restrict:"E",scope:{crmStatus:"=",onAction:"&"},link:function(r,u,f){function s(){e!==null&&e.$destroy();e=r.$new();u.html("");u.css("display","none")}function h(){if(s(),r.crmStatus===null)return!1;if(r.crmStatus.isDisabled===!1){if(r.crmStatus.actions===null)return!1;t.validateActions(r.crmStatus.actions)}return!0}function c(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function l(){var v=$(document.createElement("div")),e,u,y,s,h,p,w,o,l,f,a,n;v.addClass("btn-group");e=$(document.createElement("c-dropdown"));e.addClass("btn-group");u=$(document.createElement("button"));u.addClass("btn btn-default");u.attr("data-c-dropdown-action","");y='<span class="c-i '+t.getIconClass(r.crmStatus.syncStatus)+' condition-salesforce-status" data-c-tooltip="'+r.crmStatus.status+'"><\/span>';switch(r.crmStatus.crmIntegrationType){case i.crmInterationType.SALESFORCE:s="Salesforce";h="btn-salesforce-logo";break;case i.crmInterationType.HUBSPOT:s="HubSpot";h="btn-hubspot-logo";break;case i.crmInterationType.DYNAMICS:s="Dynamics 365";h="btn-dynamics365-logo"}if(p='<span class="btn-integration-logo '+h+' c-nt" data-c-tooltip="'+s+'">&nbsp;<\/span>',r.crmStatus.isDisabled===!0)w='<span data-c-tooltip="'+r.crmStatus.disabledTooltip+'"><span>'+r.crmStatus.text+"<\/span><\/span>",u.html(y+p+" "+w),e.append(u);else{for(u.html(y+p+' <span class="c-i">'+r.crmStatus.text+'<\/span> <span class="caret"><\/span>'),e.append(u),o=$(document.createElement("ul")),o.addClass("dropdown-menu"),o.attr("data-c-dropdown-menu",""),l=0;l<r.crmStatus.actions.length;l++)f=r.crmStatus.actions[l],c(f),a=$(document.createElement("li")),a.addClass("item"),n=$(document.createElement("a")),f.link===null?n.attr("data-ng-click",'handleAction("'+f.name+'")'):(n.attr("href",f.link),f.targetBlank===!0&&(n.attr("target","_blank"),n.attr("rel","noreferrer"))),n.attr("data-unit-t-multiple-actions-link",""),n.text(f.label),a.append(n),o.append(a);e.append(o)}return v.append(e),v}function o(){if(r.crmStatus!==null&&typeof r.crmStatus.actions=="undefined")throw new Error('"salesforceStatus.actions" is undefined');h()&&(f.$addClass("btn-group"),u.css("display","block"),u.append(l()),r.crmStatus.isDisabled===!0&&f.$addClass("disabled"),n(u.contents())(e))}var e=null;r.$watch(function(){return r.crmStatus},function(n,t){n!==t&&o()},!0);r.handleAction=function(n){r.onAction({action:n})};o()}}}]);angular.module("sharedElements").directive("cDataViewer",["$compile","constants",function(n){return{restrict:"A",scope:{lister:"=",settings:"=",listerStatus:"=",onAction:"&"},link:function(t,i,r){function e(){u!==null&&u.$destroy();u=t.$new();u.$watch(function(){return u.listerStatus},function(n,i){n!==i&&(t.listerStatus=u.listerStatus)});r.$removeClass("lister-viewer-wrapper");r.$removeClass("map-viewer-wrapper");$(i).html("")}function o(n){$(i).append(n)}var u=null,f;t.refresh=function(){t.onAction({action:"refresh-lister",data:{}})};t.handleAction=function(n,i){if(n===undefined)throw"Action is unspecified";return t.onAction({action:n,data:i})};f={LISTER:1,MAP:2,CHART:3};t.$watch(function(){return t.lister===null?null:t.lister.rows?f.LISTER:t.lister.map?f.MAP:t.lister.chart?f.CHART:(t.lister.content,null)},function(i){var s,h,c;switch(i){case null:break;case f.LISTER:e();r.$addClass("lister-viewer-wrapper");r.$addClass("library-theme-icon");s=$('<div data-c-lister data-lister="lister" data-settings="settings" data-lister-status="listerStatus" data-on-action="handleAction(action, data)"><\/div>');o(n(s)(u));break;case f.MAP:e();r.$addClass("map-viewer-wrapper");h=$('<div data-c-map data-on-action="handleAction(action, data)" data-lister-status="listerStatus" data-map="lister.map"><\/div>');o(n(h)(u));break;case f.CHART:e();r.$addClass("lister-viewer-wrapper");c=$('<div data-c-chart data-status="listerStatus" data-chart="lister.chart"><\/div>');o(n(c)(u));break;default:throw Error("Unknown Lister layout: "+t.lister.layout);}},!1);t.$watch(function(){return t.listerStatus},function(n,i){n!==i&&u!==null&&(u.listerStatus=t.listerStatus)},!1)}}}]);angular.module("sharedElements").directive("cDatetimepicker",["helpService","$timeout","translationHelperService",function(n,t,i){return{restrict:"A",require:"ngModel",link:function(t,r,u,f){function a(n){t.$apply(function(){r.val(n);f.$setViewValue(n);f.$commitViewValue()})}function c(n){var t={year:["M","MM"],month:["D","DD"],day:["YY","YYYY"]},r=null,u=null,f=null,i;return(angular.forEach(t.year,function(t){n.indexOf(t)!==-1&&(r=t)}),angular.forEach(t.month,function(t){n.indexOf(t)!==-1&&(u=t)}),angular.forEach(t.day,function(t){n.indexOf(t)!==-1&&(f=t)}),i=[],r===null||u===null||f===null)?i:(angular.forEach(t.year,function(e){angular.forEach(t.month,function(o){angular.forEach(t.day,function(t){i.push(n.replace(r,e).replace(u,o).replace(f,t))})})}),i)}function v(n){var r=s+" "+h,t=moment(n,r,!0),i;return t.isValid()?t.format(o):(i=c(r),t=moment(n,i,!0),t.isValid())?t.format(o):(i=c(s),t=moment(n,i,!0),t.isValid())?t.format(o):"invalid"}function y(n){var t=moment(n,s,!0),i;return t.isValid()?t.format(o):(i=c(s),t=moment(n,i,!0),t.isValid())?t.format(o):"invalid"}function p(){var u=null,l,s,c,t;n.setAutocompleteAttribute(r);e=$(document.createElement("div"));e.addClass("dropdown-menu");e.attr("data-close-on-inside-click","false");i.setTranslateAttribute(e,!1);l=$(document.createElement("div"));l.addClass("dropdown-menu-overlay");s=$(document.createElement("div"));s.addClass("dropdown-menu-close");s.append('<i icon="remove"><\/i>');c=$(document.createElement("div"));c.addClass("dropdown-menu-content");t=$(document.createElement("div"));t.css("overflow","hidden");t.css("width","240px !important");t.css("maxHeight","320px");t.css("padding","10px");c.append(t);e.append(l);e.append(s);e.append(c);e.appendTo($("body"));n.initializeDropdown({actionElement:r,menuElement:e,preventClose:!0});r.focusin(function(t){t.preventDefault();t.stopPropagation();n.isMobileDevice()===!0&&r.blur();r.click()});r.focusout(function(t){t.preventDefault();t.stopPropagation();var i=$(this).val();i=i===""?null:h!==null?v(i.trim()):y(i.trim());u.data("DateTimePicker").date(i);n.closeDropdownMenus()});typeof f.$modelValue!="undefined"&&f.$modelValue!==null&&r.val(f.$modelValue);u=t.datetimepicker({inline:!0,format:o,useCurrent:!1,useStrict:!0});typeof f.$modelValue!="undefined"&&f.$modelValue!==null&&u.data("DateTimePicker").defaultDate(moment(f.$modelValue,o,!0));r.on("keyup",function(){u.data("DateTimePicker").date(null)});u.on("dp.change",function(t){t.date!==!1&&(a(t.date.format(o)),h===null&&n.closeDropdownMenus())})}var l=!1,s=u.datePattern,h=null,o=s,e;typeof u.timePattern!="undefined"&&(h=u.timePattern,o+=" "+h);e=null;f.$render=function(){l===!1&&p()};t.$on("$destroy",function(){e.remove()})}}}]);angular.module("sharedElements").directive("cDialogCancelButton",["$compile",function(n){return{restrict:"E",scope:{pendingAction:"=",label:"@",onClick:"&"},link:function(t,i){if(typeof t.pendingAction=="undefined")throw new Error("pendingAction is not defined");if(typeof t.onClick!="function")throw new Error("onClick is not a function");(typeof t.label=="undefined"||t.label==="")&&(t.label="Cancel");i.append('<button type="button" class="btn btn-text btn-padding-right" data-ng-show="pendingAction === false" data-ng-click="onClick()">[[exec[[label]]exec]]<\/button>');n(i.contents())(t)}}}]);angular.module("sharedElements").directive("cDialogCloseButton",["$compile","$timeout","helpService",function(n,t,i){return{restrict:"E",scope:{pendingAction:"=",onClick:"&"},link:function(r,u){function f(n){n.keyCode===27&&r.pendingAction===!1&&t(function(){var n=$(u).closest("."+i.getDialogClassName()),t;if(n.length===0)throw new Error("DialogCloseButton: It is not used in dialog!");t=$(n[0]).attr("id");t===i.getTopOpenedDialogId()&&r.onClick()})}if(typeof r.pendingAction=="undefined")throw new Error("pendingAction is not defined");if(typeof r.onClick!="function")throw new Error("onClick is not a funciton");u.append('<button type="button" class="close" data-ng-click="onClick()" data-ng-show="pendingAction === false" aria-label="Close"><i class="material_close icon-size-24" aria-hidden="true"><\/i><\/button>');n(u.contents())(r);angular.element("body").on("keydown",f);r.$on("$destroy",function(){angular.element("body").off("keydown",f)})}}}]);angular.module("sharedElements").directive("cDialogLayout",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t,i){var l=t.children("attr-header").clone(),r=t.children("attr-content").clone(),u,f,o,s,h,c;if(t.html(""),u=$(document.createElement("div")),u.addClass("modal-dialog modal-dialog-new"),u.attr("tabindex",0),typeof i.isLarge!="undefined"&&i.isLarge==="true"&&u.addClass("modal-lg"),f=$(document.createElement("div")),f.addClass("modal-content"),l.length>0&&(o=n.copyHtmlElement(l,"div"),o.addClass("modal-header"),o.html(l.html()),f.append(o)),r.length>0){var a=r.children("attr-description"),v=r.children("attr-alerts"),y=r.children("attr-tabs"),p=r.children("attr-view"),e=n.copyHtmlElement(r,"div");a.length>0&&(s=n.copyHtmlElement(a,"div"),s.addClass("modal-description"),s.html(a.html()),e.append(s));v.length>0&&(h=n.copyHtmlElement(v,"div"),h.addClass("modal-alerts"),h.html(v.html()),e.append(h));y.length>0&&(c=n.copyHtmlElement(y,"div"),c.addClass("modal-tabs"),c.html(y.html()),e.append(c));angular.forEach(p,function(t){var f=$(t).children("attr-body"),o=$(t).children("attr-footer"),i=n.copyHtmlElement($(t),"div"),r,u;i.addClass("modal-view");f.length>0&&(r=n.copyHtmlElement(f,"div"),r.addClass("modal-body"),r.html(f.html()),i.append(r));o.length>0&&(u=n.copyHtmlElement(o,"div"),u.addClass("modal-footer"),u.html(o.html()),i.append(u));e.append(i)});f.append(e)}u.append(f);t.append(u)}}}]);angular.module("sharedElements").directive("cDocumentSelector",["helpService",function(n){return{restrict:"A",scope:{loadDialog:"&",refreshLister:"&",onAction:"&"},link:function(t,i){function r(){n.openDialog({template:"js/shared/common/directives/documentSelector/documentSelectorView.html",controller:["$scope","filterService","constants","listerService",function(i,r,u,f){function e(n){i.documents=n;i.listerStatus=u.listerStatus.RENDERING}function o(){i.isLoading=!0;t.loadDialog().then(function(n){i.description=n.description;i.searchTermFilter=n.documents.filters[0];i.filters=n.documents.filters;i.listerSettings=n.documents.listerSettings;e(n.documents.lister);i.isLoading=!1})}i.isLoading=!0;i.pendingAction=!1;i.description=null;i.documents=null;i.listerStatus=u.listerStatus.LOADING;i.listerSettings=f.getListerSettings();i.searchTermFilter=null;i.appliedFilters=null;i.filters=null;i.refresh=function(){i.listerStatus=u.listerStatus.LOADING;i.appliedFilters=r.getAppliedFilters(i.filters);t.refreshLister({filters:r.getFilterState(i.filters),listerState:n.getListerState(i.documents)}).then(function(n){e(n)})};i.handleAction=function(r,u){if(r===undefined)throw"Action is unspecified";switch(r){case"select":case"select-document":case"select-folder":case"navigate-to-folder":var f=n.getRowById(i.documents.rows,u.rowId);t.onAction({action:r,data:{id:u.rowId.toString(),friendlyValue:f.title,description:f.additionalData}});i.closeThisDialog();break;case"refresh-lister":i.refresh();break;default:throw"Unknown action "+r;}};o()}]})}function u(){i.attr("data-auto-focus","true");i.click(function(){r()})}u()}}}]);angular.module("sharedElements").directive("cDropdown",["helpService","translationHelperService",function(n,t){return{restrict:"EA",scope:{isDisabled:"=?",offset:"@?",isInnerMenu:"@?",onBeforeCallback:"&?",onAfterCallback:"&?"},link:function(i,r){function c(){var a,l,c,v;u=$(document.createElement("div"));u.addClass("dropdown-menu");i.isInnerMenu==="true"&&u.addClass("inner-dropdown-menu");a=$(document.createElement("div"));a.addClass("dropdown-menu-overlay");l=$(document.createElement("div"));l.addClass("dropdown-menu-close");l.append('<i icon="remove"><\/i>');c=$(document.createElement("div"));c.addClass("dropdown-menu-content");t.setTranslateAttributeBasedOnParent(c,r);f.addClass("dropdown-menu-items");f.removeClass("dropdown-menu");f.removeAttr("data-c-dropdown-menu");f.css("display","");v=f.attr("data-close-on-inside-click");typeof v!="undefined"&&(u.attr("data-close-on-inside-click",v),f.removeAttr("data-close-on-inside-click"));c.append(f);u.append(a);u.append(l);u.append(c);u.appendTo($("body"));e.attr("data-c-dropdown-action")==="rightToLeft"&&(s=!1);e.attr("data-is-sub-menu")==="true"&&(h=!0);o={actionElement:e,menuElement:u,openFromLeftToRightSideAsDefault:s,isSubMenu:h,preventOpen:i.isDisabled,offset:i.offset,beforeCallback:i.onBeforeCallback===null?null:function(n){return i.onBeforeCallback({defer:n})},afterCallback:i.onAfterCallback===null?null:function(n){return i.onAfterCallback({defer:n})}};n.initializeDropdown(o)}var e=$(r).find("[data-c-dropdown-action]:first").addBack("[data-c-dropdown-action]:first"),f=$(r).find("[data-c-dropdown-menu]:first"),u=null,s=!0,h=!1,o=null;typeof i.isDisabled=="undefined"&&(i.isDisabled=!1);typeof i.offset=="undefined"&&(i.offset=0);typeof i.onBeforeCallback=="undefined"&&(i.onBeforeCallback=null);typeof i.onAfterCallback=="undefined"&&(i.onAfterCallback=null);i.$on("$destroy",function(){u.remove();e.remove()});i.$watch(function(){return i.isDisabled},function(n,t){n!==t&&o!==null&&(o.preventOpen=n)},!1);c()}}}]);angular.module("sharedElements").directive("cDynamics365StatusButton",["$compile","helpService",function(n,t){return{restrict:"E",scope:{hubspotStatus:"=",onAction:"&"},link:function(i,r,u){function o(){f!==null&&f.$destroy();f=i.$new();r.html("");r.css("display","none")}function s(){return(o(),i.hubspotStatus===null)?!1:i.hubspotStatus.actions===null?!1:(t.validateActions(i.hubspotStatus.actions),!0)}function h(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function c(){var c=$(document.createElement("div")),u,f,l,a,e,o,r,s,n;for(c.addClass("btn-group"),u=$(document.createElement("c-dropdown")),u.addClass("btn-group"),f=$(document.createElement("button")),f.addClass("btn btn-default"),f.attr("data-c-dropdown-action",""),l='<span class="'+t.getIconClass(i.dynamicsStatus.syncStatus)+'" data-c-tooltip="'+i.hubspotStatus.status+'"><\/span>',a='<span class="btn-dynamics365-logo" data-c-tooltip="Dynamics 365">&nbsp;<\/span>',f.html(l+a+" "+i.hubspotStatus.text+' <span class="caret"><\/span>'),u.append(f),e=$(document.createElement("ul")),e.addClass("dropdown-menu"),e.attr("data-c-dropdown-menu",""),o=0;o<i.hubspotStatus.actions.length;o++)r=i.hubspotStatus.actions[o],h(r),s=$(document.createElement("li")),s.addClass("item"),n=$(document.createElement("a")),r.link===null?n.attr("data-ng-click",'handleAction("'+r.name+'")'):(n.attr("href",r.link),r.targetBlank===!0&&(n.attr("target","_blank"),n.attr("rel","noreferrer"))),n.attr("data-unit-t-multiple-actions-link",""),n.text(r.label),s.append(n),e.append(s);return u.append(e),c.append(u),c}function e(){if(i.hubspotStatus!==null&&typeof i.hubspotStatus.actions=="undefined")throw new Error('"hubspotStatus.actions" is undefined');s()&&(u.$addClass("btn-group"),r.css("display","block"),r.append(c()),n(r.contents())(f))}var f=null;i.$watch(function(){return i.hubspotStatus},function(n,t){n!==t&&e()},!0);i.handleAction=function(n){i.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cExporter",["$compile","listerService","helpService","appDetailsValue","actionService","testService",function(n,t,i,r,u,f){return{restrict:"E",scope:{lister:"=",listerStatus:"=",nestedTables:"=",actions:"=?",onAction:"&?"},link:function(e,o,s){function l(){h!==null&&h.$destroy();h=e.$new();s.$removeClass("btn-group");o.html("");o.css("display","none")}function a(){if(l(),e.lister===null)return!1;if(Object.prototype.toString.call(e.lister)!=="[object Object]")throw new Error('"lister" is not Object');if(typeof e.lister.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof e.lister.totalRowCount!="number")throw new Error('"lister.totalRowCount" is not Number');if(typeof e.listerStatus!="number")throw new Error('"lister.listerStatus" is not Number');if(typeof e.nestedTables=="undefined")throw new Error('"nestedTables" is undefined');if(e.nestedTables!==null){if(Object.prototype.toString.call(e.nestedTables)!=="[object Array]")throw new Error('"nestedTables" is not Array');if(e.nestedTables.length===0)throw new Error('"nestedTables" is empty Array');}return i.showControlsRelatedWithListerData(e.lister,e.listerStatus)||i.showControlsRelatedWithMapData(e.lister,e.listerStatus)||i.showControlsRelatedWithBarChartData(e.lister,e.listerStatus)||i.showControlsRelatedWithTimelineData(e.lister,e.listerStatus)}function v(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function c(){var y,c,p,w,b,d,i,k,l;if(a()!==!1){if(s.$addClass("btn-group"),o.css("display","inline-block"),y=$(document.createElement("c-dropdown")),y.addClass("btn-group"),f.setAttribute(o,"dropdown-action","Download"),y.append('<button class="btn btn-default btn-icon" data-c-dropdown-action><i class="material_download"><\/i><\/button>'),c=$(document.createElement("ul")),c.addClass("dropdown-menu"),c.attr("data-c-dropdown-menu",""),p=$(document.createElement("li")),p.addClass("item"),f.setAttribute(p,"exporter-item","excel"),p.append('<a href="'+t.getExportToExcelLink(e.lister,!1,null)+'" target="_blank" rel="noreferrer" >Export to Excel<\/a>'),c.append(p),w=$(document.createElement("li")),w.addClass("item"),f.setAttribute(w,"exporter-item","print"),w.append('<a href="'+t.getPrintLink(e.lister,!1,null)+'" '+(r.isTestMode?"":' target="_blank" rel="noreferrer"')+">Print View<\/a>"),c.append(w),e.nestedTables!==null&&(b=$(document.createElement("li")),b.addClass("item"),f.setAttribute(b,"exporter-item","advanced"),b.append('<a href="javascript:;" data-ng-click="showAdvancedDialog()">Advanced<\/a>'),c.append(b)),typeof e.actions!="undefined"&&typeof e.onAction!="undefined")for(d=0;d<e.actions.length;d++)(i=e.actions[d],v(i),u.isActionVisible(i,e.lister,e.listerStatus,null)!==!1)&&(k=$(document.createElement("li")),k.addClass("item"),f.setAttribute(k,"exporter-item",i.label),l=$(document.createElement("a")),i.link===null?l.attr("data-ng-click",'handleAction("'+i.name+'")'):(l.attr("href",i.link),i.targetBlank===!0&&(l.attr("target","_blank"),l.attr("rel","noreferrer"))),l.text(i.label),k.append(l),c.append(k));y.append(c);o.html(n(y)(h))}}function y(){c()}if(typeof e.lister=="undefined")throw new Error('"lister" is undefined');if(typeof e.listerStatus=="undefined")throw new Error('"listerStatus" is undefined');var h=null;e.showAdvancedDialog=function(){t.openAdvancedExportDialog(e.lister,e.nestedTables)};e.$watch(function(){return e.listerStatus},function(n,t){n!==t&&c()});e.handleAction=function(n){e.onAction({action:n})};y()}}}]);angular.module("sharedElements").directive("cFileUpload",["$compile","constants","$cookies","$q","validationService","helpService","$timeout","translationHelperService",function(n,t,i,r,u,f,e,o){return{restrict:"A",scope:{fieldName:"=",fileId:"=",fileName:"=",fileType:"=",isRequired:"=",profileImage:"=?",form:"=",revalidateOnChange:"=",asyncValidationFunction:"&?",onAction:"&?",validateEmptyValue:"="},link:function(s,h,c){function a(){s.fileName=null;s.fileId=null;s.profileImage=null;v=null;y=null;p=null;w=null;s.uploadStatus=s.upload.NOT_STARTED;s.form.validate(!0,!0);s.form[s.fieldName].$setDirty()}function k(n,t){var r=n.length-t.length,i=n.lastIndexOf(t);return i!==-1&&i===r}function d(n,i){var r,u;switch(i){case t.fileType.PORTAL_LOGO:case t.fileType.ORGANIZATION_LOGO:case t.fileType.USER_PROFILE_PICTURE:case t.fileType.COURSE_THUMBNAIL:case t.fileType.CERTIFICATION_THUMBNAIL:case t.fileType.LIBRARY_THUMBNAIL:case t.fileType.COBRANDED_IMAGE_ASSET_SOURCE_FILE:case t.fileType.LOGIN_BACKGROUND_IMAGE:case t.fileType.LOGIN_PAGE_LOGO:case t.fileType.EMAIL_TEMPLATE_LOGO:case t.fileType.HEADER_LOGO:case t.fileType.HEADER_BACKGROUND_IMAGE:case t.fileType.HERO_WIDGET_IMAGE:case t.fileType.ICONS_WIDGET_IMAGE:case t.fileType.IMAGE_WIDGET_IMAGE:case t.fileType.DEAL_STAGE_FILE_THUMBNAIL:case t.fileType.FOLDER_FILE_THUMBNAIL:case t.fileType.NEWS_ITEM_THUMBNAIL:case t.fileType.TRAINING_PDF_CERTIFICATE_CONTENT_AREA_IMAGE:r=["gif","png","jpg","jpeg","jfif"];break;case t.fileType.COBRANDED_SOURCE_FILE:case t.fileType.AGREEMENT:case t.fileType.AGREEMENT_LETTERHEAD:case t.fileType.TRAINING_CERTIFICATE_TEMPLATE:r=["pdf"];break;case t.fileType.CSV:r=["csv"];break;case t.fileType.CERTIFICATE_PFX:r=["pfx"];break;case t.fileType.CERTIFICATE_CER:r=["cer","pem"];break;case t.fileType.METADATA_XML:r=["xml"];break;case t.fileType.VIDEO:case t.fileType.TRAINING_VIDEO:case t.fileType.VIDEO_WIDGET_VIDEO:r=["mp4","avi","mov","wmv","mkv"];break;case t.fileType.FONT_TTF:r=["ttf"];break;case t.fileType.FONT_WOFF:r=["woff"];break;case t.fileType.FONT_WOFF2:r=["woff2"];break;case t.fileType.SCORM_COURSE_FILE:r=["zip"];break;case t.fileType.LIBRARY_UPLOAD_ZIP_FILE:r=["zip"];break;case t.fileType.NONE:case t.fileType.WIDGETS_WYSIWYG:case t.fileType.DOC_LIB:case t.fileType.WIDGETS:case t.fileType.MDF_HISTORY_ATTACHMENT:case t.fileType.DEAL_HISTORY_ATTACHMENT:case t.fileType.LEAD_HISTORY_ATTACHMENT:case t.fileType.REFERRAL_HISTORY_ATTACHMENT:case t.fileType.PARTNER_HISTORY_ATTACHMENT:case t.fileType.USER_HISTORY_ATTACHMENT:case t.fileType.BUSINESS_PLAN_HISTORY_ATTACHMENT:case t.fileType.TRAINING_FILE:case t.fileType.SECURE_FILE_UPLOAD:case t.fileType.DEAL_STAGE_FILE:case t.fileType.EMAIL_MARKETING_HEADER_LOGO:case t.fileType.EMAIL_MARKETING_FOOTER_LOGO:case t.fileType.NEWS_ITEM_FILE:case t.fileType.MAILINGS_BANNER_IMAGE:case t.fileType.API_WORKBENCH_FILE:return!0;default:throw"Not implemented FileType: "+i;}for(u=0;u<r.length;u++)if(k(n.toLowerCase(),"."+r[u]))return!0;return!1}function g(){var r=$(document.createElement("div")),u,n,e,i,t;return r.attr("data-ng-show","uploadStatus === upload.NOT_STARTED || uploadStatus === upload.INVALID_FILE_TYPE"),u=$(document.createElement("span")),u.text("Upload File"),n=$(document.createElement("label")),n.addClass("btn btn-default btn-file"),n.attr("tabindex","0"),n.attr("data-auto-focus","true"),n.append(u),f.setTestAttribute(n,"button","Upload File"),e=f.getUniqueName("files",s.form),i=$(document.createElement("input")),i.attr("type","file"),i.attr("name",e),t=$(document.createElement("input")),t.attr("type","hidden"),t.attr("name",s.fieldName),t.attr("data-c-validator",""),t.attr("data-async-validation-function","validateFileUpload()"),t.attr("data-ng-model","validationValue"),typeof s.revalidateOnChange!="undefined"&&t.attr("data-revalidate-on-change","revalidateOnChange"),s.isRequired===!0?t.attr("data-validate-empty-value",!0):typeof s.validateEmptyValue!="undefined"&&t.attr("data-validate-empty-value",s.validateEmptyValue),n.append(i),n.append(t),r.append(n),n.keydown(function(n){n.which===13&&i.click()}),r}function nt(){var f=$(document.createElement("div")),n,t,r,i,u,e;return f.addClass("file-upload-info"),f.attr("data-ng-show","uploadStatus === upload.IN_PROGRESS || uploadStatus === upload.DONE"),n=$(document.createElement("div")),n.addClass("file-name-content"),t=$(document.createElement("div")),t.addClass("file-name"),o.setTranslateAttribute(t,!1),r=$(document.createElement("div")),r.addClass("file-label"),r.addClass("name"),r.attr("data-ng-bind","fileName"),t.append(r),i=$(document.createElement("div")),i.addClass("file-progress-bar fade"),i.attr("data-ng-if","uploadStatus === upload.IN_PROGRESS"),i.attr("data-ng-class","{in: active()}"),u=$(document.createElement("div")),u.addClass("progress progress-striped active"),u.attr("data-file-upload-progress","progress()"),e=$(document.createElement("div")),e.addClass("progress-bar progress-bar-success"),e.attr("data-ng-style","{width: num + '%'}"),u.append(e),i.append(u),t.append(i),n.append(t),n.append('<a class="file-remove-icon" href="javascript:;" data-ng-click="deleteFile()" data-ng-show="uploadStatus === upload.DONE"><i icon="remove-small"><\/i><\/a>'),n.append('<a class="file-remove-label" href="javascript:;" data-ng-click="deleteFile()" data-auto-focus="true" data-ng-show="uploadStatus === upload.DONE">[[exec[[isRequired ? "Replace" : "Remove/Replace"]]exec]]<\/a>'),n.append('<a class="file-remove-icon" href="javascript:;" data-ng-click="cancelUpload()" data-ng-show="uploadStatus === upload.IN_PROGRESS"><i icon="remove-small"><\/i><\/a>'),f.append(n),f}function tt(){var n=$(document.createElement("div"));return n.addClass("file-upload-preview"),n.attr("data-ng-if","uploadStatus === upload.DONE"),n.html('<div class="preview profile-picture" data-ng-if="isProfilePicture() === true"><div data-c-thumbnail-image data-image="profileImage"><\/div><\/div> <div class="preview organization-logo" data-ng-if="isOrganizationLogo() === true || isCourseThumbnail() === true || isCertificationThumbnail() === true"><div data-c-thumbnail-image data-image="profileImage"><\/div><\/div > <div class="preview portal-logo" data-ng-if="isPortalLogo() === true" > <img alt="portal-logo" data-ng-src="File/[[exec[[fileId]]exec]]" /><\/div>'),n}function it(){var t=$(document.createElement("div"));t.addClass("file-upload-wrapper");t.attr("data-file-upload","options");t.append(g());t.append(nt());t.append(tt());h.append(t);n(h.contents())(s)}function rt(){c.$addClass("file-upload");it()}var l,b=!$.support.xhrFileUpload&&!$.support.xhrFormDataFileUpload,v,y,p,w;typeof s.profileImage=="undefined"&&(s.profileImage=null);s.upload=t.uploadStatus;s.validationValue=null;s.uploadStatus=s.fileId===null?s.upload.NOT_STARTED:s.upload.DONE;s.options={url:"data/Common/FileUpload/Upload",maxChunkSize:8e6,autoUpload:!0,pasteZone:null,singleFileUpload:!0,dataType:"json",forceIframeTransport:!1,beforeSend:function(n){n.setRequestHeader(t.headers.CSRF,i.get(t.cookies.TEST));typeof translationService!="undefined"&&n.setRequestHeader(t.headers.LANGUAGE_DICTIONARY,translationService.isPublic===!0?"public":"private")},add:function(n,t){l=t;var i=t.files[0].name;d(i,s.fileType)?(s.fileName=i,l.formData={fileType:s.fileType,isIframeUpload:s.options.forceIframeTransport||b},s.uploadStatus=s.upload.IN_PROGRESS,l.submit()):(s.$apply(function(){s.uploadStatus=s.upload.INVALID_FILE_TYPE;s.form[s.fieldName].$setDirty()}),l.abort())}};s.$watch(function(){return s.fileId},function(n,t){n!==t&&n===null&&a()},!1);s.$watch(function(){return s.uploadStatus},function(n,t){if(n!==t){s.validationValue=n===s.upload.NOT_STARTED?null:n;s.onAction({action:"status-changed",data:{status:n,defaultThumbnailLink:v,generatedThumbnailFileId:y,imageWidth:p,imageHeight:w,fileName:s.fileName}})}},!1);s.cancelUpload=function(){e(function(){l.abort();a()})};s.deleteFile=function(){a()};s.$on("fileuploadchunkdone",function(n,t){t.formData.docFileId=t.result.id});s.$on("fileuploaddone",function(n,t){t.result.success===!0?(s.fileId=t.result.id.toString(),s.profileImage=t.result.profileImage,s.uploadStatus=s.upload.DONE,v=t.result.defaultThumbnailLink,y=t.result.generatedThumbnailFileId,p=t.result.imageWidth,w=t.result.imageHeight,s.form[s.fieldName].$setDirty()):a()});s.isProfilePicture=function(){return s.fileType===t.fileType.USER_PROFILE_PICTURE};s.isOrganizationLogo=function(){return s.fileType===t.fileType.ORGANIZATION_LOGO};s.isCourseThumbnail=function(){return s.fileType===t.fileType.COURSE_THUMBNAIL};s.isCertificationThumbnail=function(){return s.fileType===t.fileType.CERTIFICATION_THUMBNAIL};s.isPortalLogo=function(){return s.fileType===t.fileType.PORTAL_LOGO};s.validateFileUpload=function(){var n=r.defer();return s.uploadStatus===s.upload.IN_PROGRESS?n.resolve(u.getCustomAsyncValidatorResult({success:!1,message:"Please wait for the upload to complete"})):s.uploadStatus===s.upload.INVALID_FILE_TYPE?n.resolve(u.getCustomAsyncValidatorResult({success:!1,message:"Please upload a file with the correct extension"})):s.isRequired&&s.fileId===null?n.resolve(u.getCustomAsyncValidatorResult({success:!1,message:"Required"})):s.asyncValidationFunction!==null&&typeof s.asyncValidationFunction!="undefined"?s.asyncValidationFunction({value:s.fileId}).then(function(t){n.resolve(t)}):n.resolve(u.getCustomAsyncValidatorResult({success:!0})),n.promise};rt()}}}]);angular.module("sharedElements").directive("cFreshDeskWidgetConnector",["pageSharedDataFactory",function(n){return{restrict:"A",scope:{},link:function(t,i,r){function u(){$(i).click(function(){var i={subject:null,description:null},t;typeof r.cFreshDeskWidgetConnector!="undefined"&&r.cFreshDeskWidgetConnector!==null&&(t=$.parseJSON(atob(r.cFreshDeskWidgetConnector)),typeof t.subject!="undefined"&&t.subject!==null&&(i.subject=t.subject),typeof t.description!="undefined"&&t.description!==null&&(i.description=t.description));n.openFreshDeskWidget(i.subject,i.description)})}u()}}}]);angular.module("sharedElements").directive("cGeocodingMap",function(){return{restrict:"A",templateUrl:"js/shared/common/directives/geocodingMap/geocodingMap.html",scope:{field:"=",onAction:"&"},controller:["$scope","$element","appDetailsValue","pageSharedDataFactory","helpService","constants",function(n,t,i,r,u,f){function c(){if(u.isMobileDevice()===!1?$(t[0]).css("width","300px"):$(t[0]).css("width",""),o!==null&&e.removeLayer(o),e.invalidateSize(),n.showLatLongAndMap()===!0){var i=L.divIcon({className:"",iconSize:[30,30],iconAnchor:[15,30],html:'<div class="marker-icon-box"><div class="marker-icon-content"><\/div><\/div>'});e.setView([parseFloat(n.field.latitude),parseFloat(n.field.longitude)],10,{reset:!0});o=new L.Marker([parseFloat(n.field.latitude),parseFloat(n.field.longitude)],{icon:i});e.addLayer(o)}n.field.doRedraw=!1}function l(){e=L.map($(t[0]).find(".dropdown-megamenu-map")[0]);s=L.tileLayer(i.mapTileUrl);s.on("load",function(){e.invalidateSize()});s.addTo(e)}var e=null,o=null,s=null,h=!1;if(n.warningMessages=null,n.loader={pendingAction:!1},typeof n.field.latitudeField=="undefined")throw new Error("field.latitudeField is undefined");if(typeof n.field.longitudeField=="undefined")throw new Error("field.longitudeField is undefined");n.showLatLongAndMap=function(){return n.field.latitude===null?!1:n.field.longitude===null?!1:!0};n.refresh=function(){r.showProcessingMessage("Refreshing...");n.loader.pendingAction=!0;n.onAction({action:n.field.actionName,data:{addressId:n.field.addressId}}).then(function(t){n.field.latitude=t.latitude;n.field.longitude=t.longitude;n.field.latitudeField=t.latitudeField;n.field.longitudeField=t.longitudeField;n.warningMessages=null;h=!1;c();n.loader.pendingAction=!1;r.showSuccessMessage("Refreshed!")},function(t){n.warningMessages=[u.getAlertObject(t.data.message,!1,f.alertType.WARNING)];h=t.data.canRetry;c();n.loader.pendingAction=!1;r.showErrorMessage("Unable to geocode!")})};n.showRefreshButton=function(){return n.warningMessages===null&&n.field.latitude===null&&n.field.longitude===null||n.warningMessages!==null&&h===!0};n.$watch(function(){return n.field.doRedraw},function(n){n===!0&&c()});l()}]}});angular.module("sharedElements").directive("cHeader",["$compile","$window","appDetailsValue","headerService","pageSharedDataFactory","$interval","helpService","constants","testService","translationAjaxService","$location","translationHelperService","reviewService",function(n,t,i,r,u,f,e,o,s,h,c,l,a){return{restrict:"A",scope:{noAccess:"="},link:function(v,y,p){function at(){var t,n;e.isMobileDevice()!==!1&&$("body").hasClass("menu-opened")!==!0&&(t=$(this).scrollTop(),t>tt?(n=$(".n-layout-header").outerHeight(),t>n&&$(".n-layout-header").css("-ms-transform","translate(0px, -"+n+"px)").css("-webkit-transform","translate(0px, -"+n+"px)").css("transform","translate(0px, -"+n+"px)")):$(".n-layout-header").css("-ms-transform","translate(0px, 0px)").css("-webkit-transform","translate(0px, 0px)").css("transform","translate(0px, 0px)"),tt=t)}function vt(n){e.isMobileDevice()===!1&&(n=0);$("body").css("padding-top",n+"px");$(".n-layout-header-menu").css("padding-bottom",n+"px")}function rt(){var n=$(y).outerHeight();vt(n)}function yt(){rt()}function pt(){var t=$(document.createElement("div")),i;t.addClass("n-layout-header-banner");t.attr("data-ng-if","header !== null && header.showMigrationBar === true");i=$(document.createElement("div"));i.addClass("n-layout-padding n-layout-padding-xsmall");i.html('Previewing new UI:&nbsp;&nbsp;<a href="Redirect/StartMigration">Migrate now<\/a>&nbsp;&nbsp;<a href="Redirect/SwitchToOldUi">Back to old UI<\/a>');t.append(i);$(y).append(n(t)(v))}function wt(){var i=$(document.createElement("div")),t;i.addClass("n-layout-header-banner small-only");i.attr("data-ng-if","header !== null && header.isImpersonating === true");t=$(document.createElement("div"));t.addClass("n-layout-padding n-layout-padding-xsmall");t.attr("data-ng-bind-html","impersonatingMessage()");l.setIsolateAttribute(t);i.append(t);$(y).append(n(i)(v))}function ut(){v.headerBackgroundImageId!==null?w.css("background-image",'url("File/'+v.headerBackgroundImageId+'")'):w.css("background-image","none")}function b(n){return s.getAttributeString("header-action",n)}function ft(n){n.addClass(it);var t=$(document.createElement("span"));t.text(v.getCurrentLanguage().name);n.append(t)}function et(){var n=$.extend(!0,[],v.profileNavigationItem.items);return v.getCurrentLanguage()!==null&&n.splice(1,0,{isVisible:!0,isLanguage:!0,isDivider:!1,icon:o.materialIconType.PUBLIC}),st(n)}function ot(){return st(v.logsNavigationItem.items)}function st(n){var t=$(document.createElement("div"));return angular.forEach(n,function(n){var i,r,u,f;if(n.isVisible!==!1){if(n.isDivider===!0){t.append('<li class="item-divider"><\/li>');return}i=$(document.createElement("li"));i.addClass("item-icon");r=$(document.createElement("a"));r.addClass("item-icon-link-container");r.append('<i class="'+e.getMaterialIconClass(n.icon)+'"><\/i>');u=$(document.createElement("span"));u.addClass("item-icon-label");n.isLanguage===!0?(i.attr("data-ng-if","getCurrentLanguage() !== null"),i.attr("data-c-dropdown",""),i.attr("data-c-dropdown-action",""),i.attr("data-is-sub-menu","true"),i.attr("data-close-on-inside-click","false"),ft(u),f=$(document.createElement("ul")),f.attr("data-c-dropdown-menu",""),f.addClass("dropdown-menu"),translationService.enabledLanguages.forEach(function(n){var u=$('<a href="javascript:;"><\/a>'),t,i,r;u.text(n.name);t=$(document.createElement("span"));t.addClass("text-uppercase");l.setTranslateAttribute(t,!1);t.text(n.code);i=$('<span class="grid-columns" data-ng-click="setLanguage(\''+n.id+"')\"><\/span>");i.append(u);i.append(t);r=$(document.createElement("li"));r.addClass("item");r.append(i);f.append(r)}),r.append(u),r.append('<span class="item-icon-arrow"><i class="material_keyboard_arrow_right"><\/i><\/span>'),r.attr("href","javascript:;"),i.append(f)):(u.text(n.label),r.append(u),r.attr("href",n.link));i.append(r);t.append(i)}}),t.html()}function ht(){v.profilePicture=i.currentUserProfilePicture}function bt(){w=$(document.createElement("div"));w.addClass("n-layout-header-main theme-menu-background-color theme-text-color");w.append('<div class="n-layout-header-main-item n-layout-guide n-layout-guide-horizontal small-only">   <div class="n-layout-guide-item" data-ng-click="toogleNavigation()">       <span class="n-layout-guide-link">           <span class="n-layout-guide-icon"><i data-ng-class="{material_close: isNavigationOpened() === true, material_menu: isNavigationOpened() === false}"><\/i><\/span>       <\/span>   <\/div><\/div><div class="n-layout-header-main-item" data-ng-if="useHeaderLogo()">   <a href="/" class="layout-brand">       <img class="layout-logo" data-ng-src="[[exec[[getHeaderLogoUrl()]]exec]]" data-ng-style="getHeaderLogoStyle()"/>   <\/a><\/div><div class="n-layout-header-main-item large-only" data-ng-if="useHeaderText()">   <h1 class="layout-brandname" data-ng-bind="headerText" data-ng-style="getHeaderTextStyle()"><\/h1><\/div><div class="n-layout-header-main-item portal-name-item small-only" data-ng-if="useHeaderTextOnly()">   <h1 class="layout-brandname" data-ng-bind="headerText" data-ng-style="getHeaderTextStyle()"><\/h1><\/div><div class="n-layout-header-spacer large-only"><\/div><div class="n-layout-header-main-item n-layout-guide n-layout-guide-horizontal large-only">   <div class="n-layout-guide-item">       <form data-ng-submit="search()" class="pointer">           <label class="n-layout-guide-link n-layout-form">               <div class="input-group input-group-search">                   <span class="input-group-addon input-group-search-left">                       <i class="material_search"><\/i>                   <\/span>                    <input '+b("searchInput")+' class="form-control input-inherit input-search-header n-layout-form-input" type="text" name="search" data-ng-model="searchTerm.value" placeholder="Search...">               <\/div>                <span class="n-layout-guide-icon n-layout-form-icon"><i class="material_search"'+b("search")+'><\/i><\/span>           <\/label>       <\/form>   <\/div>   <div data-c-dropdown data-offset="10" class="n-layout-guide-item dropdown tour-intro-4">       <span data-c-dropdown-action class="n-layout-guide-link">           <span class="n-layout-guide-icon"><i aria-hidden="true" class="material_help_outline"'+b("help")+'><\/i><\/span>       <\/span>       <ul data-c-dropdown-menu class="dropdown-menu">           <li class="item-icon"><a class="item-icon-link-container" href="javascript:;" data-ng-click="showContactSupportDialog()"><i class="material_chat"><\/i><span class="item-icon-label">Contact '+l.wrapTextInVarHeader("[[exec[[portalName]]exec]]",l.variableName.PORTAL_NAME)+' Support<\/span><\/a><\/li>           <li class="item-icon large-only"><a class="item-icon-link-container" href="javascript:;" data-ng-click="showIntroWalkthrough()"><i class="material_slideshow"><\/i><span class="item-icon-label">Launch UI Walkthrough<\/span><\/a><\/li>           <li data-ng-if="showSubmitPartnerReviews" class="item-icon large-only"><a class="item-icon-link-container" href="javascript:;" data-ng-click="showPartnerReviewDialog()"><i class="material_stars"><\/i><span class="item-icon-label">Submit Feedback<\/span><\/a><\/li>           <li data-ng-if="isEnabledContactChanneltivitySupport" class="item-divider"><\/li>           <li data-ng-if="isEnabledContactChanneltivitySupport" class="item-header">Channeltivity Support<\/li>           <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="https://help.channeltivity.com/support/solutions/articles/3000073947-channeltivity-welcome-kit" target="_blank" rel="noreferrer"><i class="material_emoji_people"><\/i><span class="item-icon-label">Admin Welcome Kit<\/span><\/a><\/li>           <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="Connector/FreshDesk" target="_blank" rel="noreferrer"><i class="material_local_library"><\/i><span class="item-icon-label">Support Portal & Knowledge Base<\/span><\/a><\/li>           <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="javascript:;" data-ng-click="loadFreshDeskWidget()"><img class="item-icon-img" src="assets/img/branding/channeltivity-logo-icon.svg" alt="channeltivity logo"><span class="item-icon-label">Contact Channeltivity Support<\/span><\/a><\/li>           <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="JavaScript:;" data-ng-click="showSFUDialog()"><i class="material_file_upload"><\/i><span class="item-icon-label">Secure File Upload<\/span><\/a><\/li>       <\/ul>   <\/div>   <div data-c-dropdown data-offset="10" class="n-layout-guide-item dropdown tour-intro-3">       <span data-c-dropdown-action class="n-layout-guide-link">           <span class="n-layout-guide-icon">               <span data-ng-show="getMessagesCount() > 0" class="label label-numeric system-messages-badge theme-badge" data-ng-bind="getMessagesCount()"><\/span>               <i class="material_notifications_none icon-outline"'+b("notifications")+'><\/i>           <\/span>       <\/span>       <div class="dropdown-menu dropdown-megamenu" data-c-dropdown-menu>           <div data-ng-if="isHeaderLoaded() === false" class="loading-large"><\/div>           <div data-ng-if="isHeaderLoaded() === true">               <div data-c-system-message-lister data-messages="limitedMessages" data-auto-refresh="false"><\/div>               <div style="padding: 5px; text-align:center;" data-ng-if="showMoreMessages()">               <a href="javascript:;" data-ng-click="showMessagesDialog()">View All Messages<\/a>               <\/div>           <\/div>       <\/div>   <\/div>   <div data-ng-if="showSingleSettingsItem() === true" class="n-layout-guide-item tour-intro-2">       <a data-ng-href="[[exec[[logsNavigationItem.link]]exec]]" class="n-layout-guide-link">           <span class="n-layout-guide-icon"><i aria-hidden="true" class="material_settings"'+b("settings")+'><\/i><\/span>       <\/a>   <\/div>   <div data-ng-if="showMultipleSettingsItem() === true" data-c-dropdown data-offset="10" class="n-layout-guide-item dropdown tour-intro-2">       <span data-c-dropdown-action data-t-button="Settings"  class="n-layout-guide-link">           <span class="n-layout-guide-icon"><i aria-hidden="true" class="material_settings"'+b("settings")+'><\/i><\/span>       <\/span>       <ul class="dropdown-menu" data-c-dropdown-menu>'+ot()+'       <\/ul>   <\/div>   <div data-c-dropdown data-offset="10" class="n-layout-guide-item dropdown tour-intro-5">       <span data-c-dropdown-action class="n-layout-guide-link n-layout-guide-link-icon-large">           <span class="n-layout-guide-avatar">               <div class="avatar avatar-large" data-c-thumbnail-image data-image="profilePicture"><\/div>               <i data-ng-if="header.isImpersonating === true" class="material_domino_mask icon-size-12 impersonation-icon theme-badge"><\/i>           <\/span>       <\/span>       <ul class="dropdown-menu dropdown-profile-menu" data-c-dropdown-menu>           <li data-ng-if="isHeaderLoaded() === false" class="loading-large"><\/li>           <div data-ng-if="isHeaderLoaded() === true">               <li class="item-complex">                   <div class="card light">                       <div class="card-avatar"><div class="avatar avatar-large" data-c-thumbnail-image data-image="profilePicture"><\/div><\/div>                       <div class="card-content">                           <div class="card-columns">                               <ul>                                   <li class="name"><span data-ng-bind="getUserNameOrEmail(header.userName, header.userEmail)" data-ng-attr-data-t-profile-menu-user-name="[[exec[[getUserNameOrEmail(header.userName, header.userEmail)]]exec]]" class="c-nt"><\/span><\/li>                                   <li class="position" data-ng-bind="header.userTitle"><\/li>                                   <li class="position" data-ng-if="getUserNameOrEmail(header.userName, header.userEmail) !== header.userEmail" data-ng-bind="header.userEmail"><\/li>                               <\/ul>                          <\/div>                       <\/div>                   <\/div>               <\/li >                <li class="item-divider"><\/li>'+et()+'               <li class="item-divider"><\/li>               <li class="item-icon" data-ng-if="header.isImpersonating === false" data-ng-attr-data-t-profile-menu-item="[[exec[[getProfileMenuItem(\'Log Out\')]]exec]]"><a class="item-icon-link-container highlighted" href="Logout"><i class="material_logout"><\/i><span class="item-icon-label">Log Out<\/span><\/a><\/li>               <li class="item-icon" data-ng-if="header.isImpersonating === true" data-ng-attr-data-t-profile-menu-item="[[exec[[getProfileMenuItem(\'Stop Impersonating\')]]exec]]"><a class="item-icon-link-container highlighted" href="ReturnToImpersonator"><i class="material_logout"><\/i><span class="item-icon-label">Stop Impersonating<\/span><\/a><\/li>               <li class="item-divider" data-ng-if="header.privacyPolicy !== null"><\/li>               <li class="item-copyright" data-ng-if="header.privacyPolicy !== null"><div data-ng-bind-html="header.privacyPolicy" class="format-wrap c-i"><\/div><\/li>           <\/div>       <\/ul>   <\/div><\/div><div class="n-layout-header-main-item n-layout-guide n-layout-guide-horizontal small-only">   <div data-c-dropdown class="n-layout-guide-item dropdown">       <span data-c-dropdown-action class="n-layout-guide-link">           <span class="n-layout-guide-icon"><i class="material_more_horiz"><\/i><\/span>       <\/span>       <ul class="dropdown-menu" data-c-dropdown-menu>           <li data-ng-if="isHeaderLoaded() === false" class="loading-large"><\/li>           <div data-ng-if="isHeaderLoaded() === true">               <li class="item-complex">                   <div class="card light">                       <div class="card-avatar"><div class="avatar avatar-large" data-c-thumbnail-image data-image="profilePicture"><\/div><\/div>                       <div class="card-content">                           <div class="card-columns">                               <ul>                                   <li class="name"><span data-ng-bind="getUserNameOrEmail(header.userName, header.userEmail)" data-ng-attr-data-t-profile-menu-user-name="[[exec[[getUserNameOrEmail(header.userName, header.userEmail)]]exec]]"  class="c-nt"><\/span><\/li>                                   <li class="position" data-ng-bind="header.userTitle"><\/li>                                   <li class="position" data-ng-if="getUserNameOrEmail(header.userName, header.userEmail) !== header.userEmail" data-ng-bind="header.userEmail"><\/li>                               <\/ul>                           <\/div>                       <\/div>                   <\/div>               <\/li>               <li class="item-divider"><\/li>'+et()+'               <li class="item-divider"><\/li>               <li data-ng-if="showSingleSettingsItem() === true" class="item-icon">                   <a data-ng-href="[[exec[[logsNavigationItem.link]]exec]]" class="item-icon-link-container">                       <i class="material_settings"><\/i>                       <span class="item-icon-label">Settings<\/span>                   <\/a>               <\/li>               <li data-c-dropdown class="item-icon" data-ng-if="showMultipleSettingsItem() === true">                   <a data-c-dropdown-action data-close-on-inside-click="false" class="item-icon-link-container" href="javascript:;">                       <i class="material_settings"><\/i>                       <span class="item-icon-label">Settings & Logs<\/span>                       <span class="item-icon-arrow"><i class="material_keyboard_arrow_right"><\/i><\/span>                   <\/a>                   <ul class="dropdown-menu" data-c-dropdown-menu>'+ot()+'                   <\/ul>               <\/li>               <li class="item-icon">                   <a class="item-icon-link-container" href="javascript:;" data-ng-click="showMessagesDialog()">                       <i class="material_notifications_none icon-outline"><\/i>                       <span class="item-icon-label" data-ng-bind="getMessagesLabel()">System Messages<\/span>                   <\/a>               <\/li>               <li data-c-dropdown class="item-icon">                   <a data-c-dropdown-action data-close-on-inside-click="false" class="item-icon-link-container" href="javascript:;">                       <i class="material_help_outline"><\/i>                       <span class="item-icon-label">Help<\/span>                       <span class="item-icon-arrow"><i class="material_keyboard_arrow_right"><\/i><\/span>                   <\/a>                   <ul data-c-dropdown-menu class="dropdown-menu">                       <li class="item-icon"><a class="item-icon-link-container" href="javascript:;" data-ng-click="showContactSupportDialog()"><i class="material_chat"><\/i><span class="item-icon-label">Contact '+l.wrapTextInVarHeader("[[exec[[portalName]]exec]]",l.variableName.PORTAL_NAME)+' Support<\/span><\/a><\/li>                       <li data-ng-if="showSubmitPartnerReviews" class="item-icon"><a class="item-icon-link-container" href="javascript:;" data-ng-click="showPartnerReviewDialog()"><i class="material_stars"><\/i><span class="item-icon-label">Submit Feedback<\/span><\/a><\/li>                       <li data-ng-if="isEnabledContactChanneltivitySupport" class="item-divider"><\/li>                       <li data-ng-if="isEnabledContactChanneltivitySupport" class="item-header">Channeltivity Support<\/li>                       <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="Connector/FreshDesk" target="_blank" rel="noreferrer"><i class="material_local_library"><\/i><span class="item-icon-label">Support Portal & Knowledge Base<\/span><\/a><\/li>                       <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="javascript:;" data-ng-click="loadFreshDeskWidget()"><i class="material_chat"><\/i><span class="item-icon-label">Contact Channeltivity Support<\/span><\/a><\/li>                       <li class="item-icon" data-ng-if="isEnabledContactChanneltivitySupport"><a class="item-icon-link-container" href="JavaScript:;" data-ng-click="showSFUDialog()"><i class="material_file_upload"><\/i><span class="item-icon-label">Secure File Upload<\/span><\/a><\/li>                   <\/ul>               <\/li>               <li class="item-divider"><\/li>               <li class="item">                   <form data-ng-submit="search()">                       <div class="search-panel">                           <input class="form-control" placeholder="Search..." data-close-on-inside-click="false" type="text" data-ng-model="searchTerm.value">                       <\/div>                   <\/form>               <\/li>               <li class="item-divider"><\/li>               <li class="item-icon" data-ng-if="header.isImpersonating === false" data-ng-attr-data-t-profile-menu-item="[[exec[[getProfileMenuItem(\'Log Out\')]]exec]]"><a class="item-icon-link-container highlighted" href="Logout"><i class="material_logout"><\/i><span class="item-icon-label">Log Out<\/span><\/a><\/li>               <li class="item-icon" data-ng-if="header.isImpersonating === true" data-ng-attr-data-t-profile-menu-item="[[exec[[getProfileMenuItem(\'Stop Impersonating\')]]exec]]"><a class="item-icon-link-container highlighted" href="ReturnToImpersonator"><i class="material_logout"><\/i><span class="item-icon-label">Stop Impersonating<\/span><\/a><\/li>               <li class="item-copyright" data-ng-if="header.privacyPolicy !== null"><div data-ng-bind-html="header.privacyPolicy" class="format-wrap c-i"><\/div><\/li>           <\/div>       <\/ul>   <\/div><\/div>');n(w)(v);$(y).append(w);ut()}function g(){r.loadHeader(i.currentUserHash).then(function(n){if(n===null){f.cancel(nt);e.openDialog({template:"js/shared/common/views/loggedInAsDifferentUser/loggedInAsDifferentUser.html",controller:["$scope",function(n){n.reload=function(){t.location.reload();n.closeThisDialog()}}]});return}v.header=n;u.header=v.header;i.currentUserProfilePicture=v.header.userProfilePicture;i.isImpersonating=v.header.isImpersonating;u.setSystemMessages(v.header.messages)})}function kt(){var o,h;p.$addClass("n-layout-header-wrapper");k=t.document.hasFocus();$(y).append('<div class="loading-bar-container"><\/div>');ht();pt();wt();bt();g();nt=f(function(){k!==!1&&g()},lt);angular.element(t).on("scroll",at);angular.element(t).on("resize",yt);if(s.initHelpTestElements(v),s.initTest(),i.isTestMode===!0){var l="navigation-time-test",a=$(".n-layout-header-main");if($("#lister-query-mode").length===0){var c=$(document.createElement("div")),n=$(document.createElement("button")),u=$(document.createElement("button")),e=$(document.createElement("button"));n.attr("type","button");n.text("SQL");n.click(function(){n.hide();u.show();e.show();r.setListerQueryDirectMode()});u.attr("type","button");u.text("SP");u.click(function(){n.show();u.hide();e.show();r.setListerQueryProcedureMode()});e.attr("type","button");e.text("Comp");e.click(function(){n.show();u.show();e.hide();r.setListerQueryCompareMode()});c.append(n);c.append(u);c.append(e);a.prepend(c)}$("#"+l).length===0&&(o=$(document.createElement("div")),o.attr("id",l),o.append("Main In: <input type='text' id='main-nav-time-enter' value='300' size='3' style='color:#000'>"),o.append("Main Out: <input type='text' id='main-nav-time-leave' value='300' size='3' style='color:#000'>"),o.append("Sub In: <input type='text' id='sub-nav-time-enter' value='200' size='3' style='color:#000'>"),h=$(document.createElement("button")),h.attr("type","button"),h.text("Update Delay"),h.click(function(){i.navigation.logs.targetBlank=!i.navigation.logs.targetBlank}),o.append(h),a.prepend(o))}}function ct(n,t){e.setLanguage(n,function(){return v.handleAction("set-language",t)})}var k=!1,lt=3e5,nt=null,d=10,tt=0,w=null,it="language-label-item";v.searchTerm={value:null};v.limitedMessages=null;v.portalName=i.portalName;v.isEnabledContactChanneltivitySupport=i.help.isEnabledContactChanneltivitySupport;v.showSubmitPartnerReviews=i.help.showSubmitPartnerReviews;v.logsNavigationItem=i.navigation.logs;v.profileNavigationItem=i.navigation.profile;v.header=null;v.headerMode=i.headerSettings.headerMode;v.headerLogoId=i.headerSettings.headerLogoId;v.headerText=i.headerSettings.headerText;v.headerBackgroundImageId=i.headerSettings.headerBackgroundImageId;v.profilePicture=null;v.impersonatingMessage=function(){return v.header===null?"":"You are impersonating "+l.wrapTextInVarHeader(v.getUserNameOrEmail(e.htmlEncode(v.header.userName),v.header.userEmail),l.variableName.USER_NAME)+'. <a href="ReturnToImpersonator" data-t-link="StopImpersonating">Stop impersonating<\/a>'};u.openInternalUserReviewDialog=function(){e.openDialog({template:"js/shared/common/views/userReview/userReviewView.html",controller:["$scope",function(n){function t(){a.loadReviewPage().then(function(t){n.feedbackField=t.fields.feedback;n.g2ReviewUrlField=t.fields.g2ReviewUrl;t.g2PendingReview===!0?(n.currentState=n.state.SUBMIT_REVIEW,n.rating=5):n.currentState=n.state.FIRST_SCREEN;n.isLoading=!1})}n.isLoading=!0;n.form=null;n.pendingAction=!1;n.rating=0;n.feedbackField=null;n.g2ReviewUrlField=null;n.currentState=null;n.state={FIRST_SCREEN:0,RATED_FEWER_STARS:1,RATED_ALL_STARS:2,SUBMIT_REVIEW:3,REVIEW_SUBMITTED:4};n.neverShowAgain=function(){n.closeThisDialog();a.neverShowAgain()};n.remindMeLater=function(){n.closeThisDialog();a.remindMeLater()};n.createReviewWithFeedback=function(t){n.closeThisDialog();t.submit(function(){n.pendingAction=!0;var t=[n.feedbackField];a.createReviewWithFeedback(n.rating,t).then(function(){n.pendingAction=!1})})};n.createReviewAndWillNotWriteG2Review=function(){n.closeThisDialog();a.createReviewAndWillNotWriteG2Review()};n.createReviewAndWillWriteG2Review=function(){n.isLoading=!0;a.createReviewAndWillWriteG2Review().then(function(){n.currentState=n.state.SUBMIT_REVIEW;n.isLoading=!1;u.refreshHeader()})};n.updateReviewAndWillNotWriteG2Review=function(){n.closeThisDialog();a.updateReviewAndWillNotWriteG2Review().then(function(){u.refreshHeader()})};n.updateReviewWithG2Review=function(t){n.rewardMessage=null;t.submit(function(){n.pendingAction=!0;var t=[n.g2ReviewUrlField];a.sendReview(t).then(function(){n.pendingAction=!1;n.currentState=n.state.REVIEW_SUBMITTED;n.rewardMessage="Your $50 digital VISA gift card will be sent to "+v.header.userEmail+" within the next 10 days.";u.refreshHeader()})})};n.ratingChanged=function(t){n.rating!==t&&(n.rating=t,n.currentState=n.rating===5?n.state.RATED_ALL_STARS:n.state.RATED_FEWER_STARS)};t()}]})};u.openPartnerUserReviewDialog=function(n){e.openDialog({template:"js/shared/common/views/userReview/partnerUserReviewView.html",controller:["$scope",function(t){function i(){a.loadPartnerUserReviewPage().then(function(n){t.feedbackField=n.fields.feedback;t.title=n.title;t.question=n.question;t.thankYouTitle=n.thankYouTitle;t.thankYouDescription=n.thankYouDescription;t.isLoading=!1})}t.isLoading=!0;t.form=null;t.pendingAction=!1;t.rating=0;t.feedbackField=null;t.title=null;t.question=null;t.thankYouTitle=null;t.thankYouDescription=null;t.displayedOnUserClick=n;t.state={FIRST_SCREEN:0,RATED:1,REVIEW_SUBMITTED:2};t.currentState=t.state.FIRST_SCREEN;t.neverShowAgain=function(){t.closeThisDialog();a.neverShowAgain()};t.remindMeLater=function(){t.closeThisDialog();a.remindMeLater()};t.createReview=function(){var n=[t.feedbackField];t.currentState=t.state.REVIEW_SUBMITTED;a.createPartnerUserReview(t.rating,n).then(function(){t.pendingAction=!1})};t.ratingChanged=function(n){n>0&&(t.currentState=t.state.RATED);t.rating=n};i()}]})};u.refreshHeader=g;t.onfocus=function(){k=!0};t.onblur=function(){k=!1};v.getHeaderLogoStyle=function(){var n=0,t=0;return e.isMobileDevice()===!1&&(n=i.headerSettings.headerLogoPaddingLeft,t=i.headerSettings.headerLogoPaddingRight),{"padding-top":i.headerSettings.headerLogoPaddingTop+"px","padding-bottom":i.headerSettings.headerLogoPaddingBottom+"px","padding-left":n+"px","padding-right":t+"px"}};v.getHeaderTextStyle=function(){var n=0,t=0;return v.useHeaderTextOnly()===!0&&(n=24,t=24),{"font-size":i.headerSettings.headerTextSize+"px","padding-left":n+"px","padding-right":t+"px"}};v.showSingleSettingsItem=function(){return v.logsNavigationItem.isVisible===!0&&e.anySubItemVisible(v.logsNavigationItem)===!1};v.showMultipleSettingsItem=function(){return v.logsNavigationItem.isVisible===!0&&e.anySubItemVisible(v.logsNavigationItem)===!0};v.isHeaderLoaded=function(){return u.header!==null};v.isNavigationOpened=function(){return u.isSidebarNavigationOpened()};v.toogleNavigation=function(){u.setSidebarNavigationAsOpened(!u.isSidebarNavigationOpened())};v.getHeaderLogoUrl=function(){return v.headerLogoId===null?"assets/img/avatars/logo-1500x900.svg":"File/"+v.headerLogoId};v.showContactSupportDialog=function(){e.openDialog({template:"js/shared/common/views/contactSupport/contactSupportView.html",controller:"ContactSupportDialogCtrl"})};v.showIntroWalkthrough=function(){u.startWalkthrough(o.walkthroughType.INTRO)};v.showPartnerReviewDialog=function(){u.openPartnerUserReviewDialog(!0)};v.showPageGuide=function(){return u.pageGuide!==null&&u.pageGuide!==""};v.useHeaderLogo=function(){return v.headerMode===o.uiHeaderMode.LOGO_ONLY||v.headerMode===o.uiHeaderMode.LOGO_AND_TEXT};v.useHeaderText=function(){return v.headerText!==null&&(v.headerMode===o.uiHeaderMode.TEXT_ONLY||v.headerMode===o.uiHeaderMode.LOGO_AND_TEXT)};v.useHeaderTextOnly=function(){return v.headerText!==null&&v.headerMode===o.uiHeaderMode.TEXT_ONLY};v.showPageGuideDialog=function(){e.openDialog({closeByEscape:!0,template:"js/shared/common/views/pageGuide/pageGuideView.html",controller:["$scope",function(n){n.pageGuide=u.pageGuide}]})};v.showSFUDialog=function(){e.openDialog({template:"js/shared/common/views/safeFileUpload/secureFileUploadListerView.html",controller:"SecureFileUploadDialogCtrl"})};v.search=function(){u.search!==null&&u.search(v.searchTerm.value);var n=v.searchTerm.value;c.url("Search");n!==null&&n!==""&&c.search(e.searchTerm,n)};v.getMessagesCount=function(){var n=u.getSystemMessages();return n===null?0:n.length};v.showMoreMessages=function(){var n=u.getSystemMessages();return n===null?!1:n.length>d};v.getMessagesLabel=function(){var n=v.getMessagesCount();return n>0?"System Messages ("+n+")":"System Messages"};v.showMessagesDialog=function(){e.openDialog({closeByEscape:!0,template:"js/shared/common/views/messages/messagesView.html",controller:["$scope",function(n){n.messages=u.getSystemMessages()}]})};v.getProfileMenuItem=function(n){return s.isTestModeEnabled()===!1?undefined:n};v.getUserNameOrEmail=function(n,t){return n!==""?n:t};u.openFreshDeskWidget=function(n,t){var i={name:v.header.userName,email:v.header.userEmail};typeof n!="undefined"&&(i.subject=n);typeof t!="undefined"&&(i.description=t);FreshworksWidget("identify","ticketForm",i);typeof n=="undefined"?FreshworksWidget("open"):FreshworksWidget("open","ticketForm")};v.loadFreshDeskWidget=function(){u.openFreshDeskWidget()};v.switchMode=function(){u.showProcessingMessage("Changing UI ...");r.switchMode().then(function(){t.location.reload()})};v.$watch(function(){return u.getSystemMessages()},function(n,t){n!==t&&(v.limitedMessages=n===null?null:n.length>d?n.slice(0,d):n)});v.$watch(function(){return e.getSearchTerm()},function(){v.searchTerm.value=e.getSearchTerm()});v.$watch(function(){return i.portalName},function(n,t){n!==t&&(v.portalName=i.portalName)});v.$watch(function(){return i.headerSettings},function(n,t){n!==t&&(v.headerMode=i.headerSettings.headerMode,v.headerLogoId=i.headerSettings.headerLogoId,v.headerText=i.headerSettings.headerText,v.headerBackgroundImageId=i.headerSettings.headerBackgroundImageId,ut())},!0);v.$watch(function(){return i.navigation},function(n,t){n!==t&&(v.logsNavigationItem=i.navigation.logs,v.profileNavigationItem=i.navigation.profile)},!0);v.$watch(function(){return $(y).outerHeight()},function(n,t){n!==t&&rt(n)});v.getCurrentLanguage=function(){if(typeof translationService=="undefined")return null;var n=translationService.getCurrentLanguageId();return _.find(translationService.enabledLanguages,function(t){return t.id===n})};v.setLanguage=function(n){var t=v.getCurrentLanguage();t!==null&&t.id!=n&&ct(!0,n)};v.$watch(function(){return typeof translationService=="undefined"?null:translationService.status},function(n,t){if(n!==t&&n!==null&&translationService.status===translationService.statusType.UNAPPLIED_CHANGES){var i=v.getCurrentLanguage();ct(!1,i.id)}});v.$watch(function(){return typeof translationService=="undefined"?null:translationService.getCurrentLanguageId()},function(n,t){if(n!==t&&n!==null){var i=$(document).find("."+it);i.length>0&&(i.empty(),ft(i))}});v.$watch(function(){return i.currentUserProfilePicture},function(n,t){n!==t&&ht()},!0);v.printWatcherCount=function(){(function(){var r=angular.element(document.getElementsByTagName("body")),t=[],i=function(n){angular.forEach(["$scope","$isolateScope"],function(i){n.data()&&n.data().hasOwnProperty(i)&&angular.forEach(n.data()[i].$$watchers,function(n){t.push(n)})});angular.forEach(n.children(),function(n){i(angular.element(n))})},n;i(r);n=[];angular.forEach(t,function(t){n.indexOf(t)<0&&n.push(t)})})()};v.handleAction=function(n,t){switch(n){case"set-language":return h.setLanguage(t,!1);default:throw"Unknown action: "+n;}};kt()}}}]);angular.module("sharedElements").directive("cHistory",function(){return{restrict:"A",scope:{history:"=",onAction:"&",noDataMessage:"@"},templateUrl:"js/shared/common/directives/history/history.html",controller:["$scope","helpService","translationHelperService",function(n,t,i){if(typeof n.history=="undefined")throw new Error('"history" is undefined');typeof n.noDataMessage=="undefined"&&(n.noDataMessage="No history entries to show.");n.loader={pendingAction:!1};n.isVisible=function(){if(n.history===null)return!1;if(typeof n.history=="undefined")throw new Error('"history" is undefined');if(Object.prototype.toString.call(n.history)!=="[object Object]")throw new Error('"history" is not Object');if(n.history.entries===null)return!1;if(typeof n.history.entries=="undefined")throw new Error('History "entries" is undefined');if(Object.prototype.toString.call(n.history.entries)!=="[object Array]")throw new Error('History "entries" is not Array');if(n.history.entries.length===0)throw new Error('History "entries" is empty Array');return!0};n.getFileLink=function(n){return n.files[0].deletedDate!==null?null:"File/"+n.files[0].id+"/"};n.fileCanBeDeleted=function(n){return n.files[0].canBeDeleted};n.getFileName=function(n){return n.files[0].deletedDate!==null?i.wrapTextInVar(n.files[0].name,"history-file")+" (Deleted on "+i.wrapTextInVar(n.files[0].deletedDate,"deleted-date")+" by "+i.wrapTextInVar(n.files[0].deletedBy,i.variableName.USER_NAME)+")":i.wrapTextInVar(n.files[0].name,"history-file")};n.getCreatedByText=function(n){var t="";return n.comment!==null&&(t=" commented"),i.wrapTextInVar(n.createdBy,i.variableName.USER_NAME)+t};n.canCompletePartnerAction=function(n){return n.partnerActionRequired.isCompleted===!1&&n.partnerActionRequired.canBeCompleted===!0};n.getPartnerActionText=function(n){return n.partnerActionRequired.isCompleted===!0?"Partner action required (Completed on "+i.wrapTextInVar(n.partnerActionRequired.completedDate,i.variableName.DATE)+" by "+i.wrapTextInVar(n.partnerActionRequired.completedBy,i.variableName.USER_NAME)+")":"Partner action required"};n.canCompleteVendorAction=function(n){return n.vendorActionRequired.isCompleted===!1&&n.vendorActionRequired.canBeCompleted===!0};n.getVendorActionText=function(n){return n.vendorActionRequired.isCompleted===!0?"Vendor action required (Completed on "+i.wrapTextInVar(n.vendorActionRequired.completedDate,i.variableName.DATE)+" by "+i.wrapTextInVar(n.vendorActionRequired.completedBy,i.variableName.USER_NAME)+")":"Vendor action required"};n.getNameWithEntryNumber=function(t){return t.createdBy+" "+n.history.entries.indexOf(t)};n.getFileIcon=function(n){return n.files===null||n.files[0].icon===null?"":t.getMaterialIconClass(n.files[0].icon)};n.handleAction=function(t,i){switch(t){case"complete-partner-action-required":case"complete-vendor-action-required":n.loader.pendingAction=!0;n.onAction({action:t,data:{historyId:i.id}}).then(function(){n.loader.pendingAction=!1});break;default:n.onAction({action:t,data:{historyId:i.id}})}}}]}});angular.module("sharedElements").directive("cHubspotStatusButton",["$compile","helpService",function(n,t){return{restrict:"E",scope:{hubspotStatus:"=",onAction:"&"},link:function(i,r,u){function o(){f!==null&&f.$destroy();f=i.$new();r.html("");r.css("display","none")}function s(){return(o(),i.hubspotStatus===null)?!1:i.hubspotStatus.actions===null?!1:(t.validateActions(i.hubspotStatus.actions),!0)}function h(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function c(){var c=$(document.createElement("div")),u,f,l,a,e,o,r,s,n;for(c.addClass("btn-group"),u=$(document.createElement("c-dropdown")),u.addClass("btn-group"),f=$(document.createElement("button")),f.addClass("btn btn-default"),f.attr("data-c-dropdown-action",""),l='<span class="'+t.getIconClass(i.hubspotStatus.syncStatus)+' condition-salesforce-status" data-c-tooltip="'+i.hubspotStatus.status+'"><\/span>',a='<span class="btn-hubspot-logo" data-c-tooltip="HubSpot">&nbsp;<\/span>',f.html(l+a+" "+i.hubspotStatus.text+' <span class="caret"><\/span>'),u.append(f),e=$(document.createElement("ul")),e.addClass("dropdown-menu"),e.attr("data-c-dropdown-menu",""),o=0;o<i.hubspotStatus.actions.length;o++)r=i.hubspotStatus.actions[o],h(r),s=$(document.createElement("li")),s.addClass("item"),n=$(document.createElement("a")),r.link===null?n.attr("data-ng-click",'handleAction("'+r.name+'")'):(n.attr("href",r.link),r.targetBlank===!0&&(n.attr("target","_blank"),n.attr("rel","noreferrer"))),n.attr("data-unit-t-multiple-actions-link",""),n.text(r.label),s.append(n),e.append(s);return u.append(e),c.append(u),c}function e(){if(i.hubspotStatus!==null&&typeof i.hubspotStatus.actions=="undefined")throw new Error('"hubspotStatus.actions" is undefined');s()&&(u.$addClass("btn-group"),r.css("display","block"),r.append(c()),n(r.contents())(f))}var f=null;i.$watch(function(){return i.hubspotStatus},function(n,t){n!==t&&e()},!0);i.handleAction=function(n){i.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cCustomIframe",["$timeout",function(){return{restrict:"A",scope:{content:"=",autoHeight:"@"},link:function(n,t){function i(){t[0].contentWindow.document.open();t[0].contentWindow.document.write(n.content);t[0].contentWindow.document.close()}function r(){var n=$(t[0]).contents().find("a");_.each(n,function(n){var t=$(n).attr("href")||"";t.indexOf("mailto:")!==0&&t!=="#"&&($(n).attr("target","_blank"),$(n).attr("rel","noreferrer"))})}function u(){var n,i;if(t[0].contentWindow!=undefined&&t[0].contentWindow.document!=undefined&&t[0].contentWindow.document.body!=undefined&&(n=$(t[0].contentWindow.document.body),n!=undefined)&&n[0].parentElement!=undefined){i=n[0].parentElement;$(i).find("img").one("load",{},function(){var r=$(i)[0].scrollHeight,u=$(n)[0].scrollHeight,f=u>r?u:r;t.css("height",f+"px")})}}function f(){i();r();n.autoHeight==="true"&&(t.attr("scrolling","no"),u())}n.$watch(function(){return n.content},function(n,t){n!==t&&n!==null&&i()});f()}}}]);angular.module("sharedElements").directive("cCustomPageIframe",["$window","appDetailsValue","testService",function(n,t,i){return{restrict:"A",scope:{isLoading:"="},link:function(r,u,f){function e(n){n.data.height!==undefined&&($(u).removeClass("default-height"),$(u).height(n.data.height));n.data.scroll!==undefined&&n.data.scroll.length===2&&$(u).closest(".n-layout-scroll").scrollTop(n.data.scroll[1])}t.isTestMode===!0&&f.$set(i.getTestAttributePrefix()+"custom-page-iframe","");n.addEventListener?n.addEventListener("message",e,!1):n.attachEvent("onmessage",e,!1);$(document).ready(function(){n.setTimeout(function(){r.$apply(function(){r.isLoading=!1})})})}}}]);angular.module("sharedElements").directive("cLearningModuleIframe",["$window","appDetailsValue","testService","$timeout","$location",function(n,t,i,r,u){return{restrict:"A",scope:{isLoading:"=",useScormLoadEvent:"="},link:function(f,e,o){function h(n){if(n.data.height!==undefined&&($(e).removeClass("default-height"),$(e).height(n.data.height)),n.data.scroll!==undefined&&n.data.scroll.length===2&&$(e).closest(".n-layout-scroll").scrollTop(n.data.scroll[1]),typeof n.data=="string"&&f.useScormLoadEvent===!0){var t=JSON.parse(n.data);t.rusticiEngine!==undefined&&t.topic!==undefined&&t.rusticiEngine===!0&&t.topic==="ContentLoaded"&&f.$apply(function(){f.isLoading=!1})}}var s=!0;t.isTestMode===!0&&o.$set(i.getTestAttributePrefix()+"learning-module-iframe","");n.addEventListener?n.addEventListener("message",h,!1):n.attachEvent("onmessage",h,!1);$(document).ready(function(){n.setTimeout(function(){f.useScormLoadEvent===!1&&f.$apply(function(){f.isLoading=!1})})});f.$on("$locationChangeStart",function(n){if(s){e.remove();var t=u.path();r(function(){u.path(t)},3e3);s=!1;n.preventDefault()}})}}}]);angular.module("sharedElements").directive("cSettingsPageIframe",["$window","pageSharedDataFactory","$interval",function(n,t,i){return{restrict:"A",scope:{isLoading:"="},link:function(r,u){function o(){var n;if(u[0].contentWindow!=undefined&&u[0].contentWindow.document!=undefined&&u[0].contentWindow.document.body!=undefined&&(n=$(u[0].contentWindow.document.body),n!=undefined)&&n[0].parentElement!=undefined){var t=n[0].parentElement,i=$(t)[0].scrollHeight,r=$(t)[0].scrollWidth,e=$(n)[0].scrollHeight,o=$(n)[0].scrollWidth,s=e>i?e:i,c=o>r?o:r;(s!==f||c!==h)&&(f=s,u.css("height",f+"px"),u.css("width",c+"px"))}}function s(f){var s;try{s=JSON.parse(f.data)}catch(h){return}if(s.action!=undefined)switch(s.action){case"show-message":n.setTimeout(function(){r.$apply(function(){t.showSuccessMessage(s.message)})},1);break;case"iframe-loaded":if(u[0].contentWindow==undefined)return;u[0].contentWindow.onbeforeunload=function(){i.cancel(e)};r.$apply(function(){r.isLoading=!1});o();e=i(function(){o()},500)}}var f=null,h=null,e=null;n.addEventListener?n.addEventListener("message",s,!1):n.attachEvent("onmessage",s,!1)}}}]);angular.module("sharedElements").directive("cImagePlaceholder",["$timeout",function(n){return{restrict:"AE",scope:{width:"@",height:"@",mode:"@"},link:function(t,i,r){function f(){var f,e,n,r;if(t.mode==="dynamic")n=$(i).parent().width(),f=$(i).parent().height(),parseInt(t.width)/parseInt(t.height)>n/f?(r=n/parseInt(t.width)*parseInt(t.height),u.css("width","100%"),u.css("height",r+"px"),$(i).css("width","100%"),$(i).css("height",r+"px")):(e=f/parseInt(t.height)*parseInt(t.width),u.css("height","100%"),u.css("width",e+"px"),$(i).css("height","100%"),$(i).css("width",e+"px")),$(i).parent().width()<200||$(i).parent().height()<200?$(i).parent().width()>$(i).parent().height()?u.css("background-size","auto 50%"):u.css("background-size","50% auto"):u.css({"background-size":"200px"});else if(t.mode==="dynamic-vertical")n=$(i).parent().width(),r=n/parseInt(t.width)*parseInt(t.height),u.css("height",r+"px"),$(i).css("height","auto");else throw new Error("Unsupported image placeholder mode: "+t.mode);}function e(){$(i).parent().width()<200||$(i).parent().height()<200?$(i).parent().width()>$(i).parent().height()?u.css("background-size","auto 50%"):u.css("background-size","50% auto"):u.css("background-size","100px")}function o(){$(i).hide();switch(t.mode){case"dynamic-vertical":n(function(){f();t.$watch(function(){return $(i).parent().width()},function(){f()},!1);$(window).bind("resize",f)});break;case"dynamic":n(function(){f();t.$watch(function(){return $(i).parent().width()},function(){f()},!1);$(window).bind("resize",f)});break;case"static":u.css("height",t.height+"px");u.css("width",t.width+"px");$(i).css("height",t.height+"px");break;case"max":u.css("height","100%");u.css("width","100%");break;case"max-resizable":u.css("height","100%");u.css("width","100%");break;default:throw new Error("Unknown image placeholder mode: "+t.mode);}u.css("background-image","url(assets/img/avatars/image-no-text-400x400.svg)").css("background-repeat","no-repeat").css("background-position-x","center").css("background-position-y","center").css("background-color","rgb(212, 215, 217)").css("background-size","50%").css("border-radius","inherit");$(i).parent().append(u);n(function(){t.mode==="max-resizable"?($(i).parent().width()<200||$(i).parent().height()<200?$(i).parent().width()>$(i).parent().height()?u.css("background-size","auto 50%"):u.css("background-size","50% auto"):u.css("background-size","100px"),$(i).closest(".ui-resizable").bind("resize",e)):$(i).parent().width()<25?u.css("background-size","18px"):$(i).parent().width()<50?u.css("background-size","25px"):$(i).parent().width()<150&&u.css("background-size","75px")});$(i).one("load",function(){u.remove();$(i).show()}).each(function(){this.complete&&n(function(){$(this).trigger("load")})})}var u=$(document.createElement("div"));u.addClass("img-placeholder");t.$on("$destroy",function(){$(window).unbind("resize",f);t.mode==="max1"&&$(i).closest(".ui-resizable").unbind("resize",e)});t.$watch(function(){return r.src},function(n,t){n!==t&&($(i).unbind("load"),o())},!0);o()}}}]);angular.module("sharedElements").directive("cInlineHelp",["$compile","translationHelperService",function(n,t){return{restrict:"A",scope:{message:"="},link:function(i,r,u){var f,o,e;if(typeof i.message=="undefined")throw new Error('"message" is undefined');u.$addClass("dropdown inline-help");f=$('<span data-c-dropdown>   <span class="helper" data-c-dropdown-action><i class="icon-size-16 material_info icon-outline"><\/i><\/span><\/span>');o=$('<div class="dropdown-menu dropdown-megamenu" data-c-dropdown-menu><\/div>');f.append(o);n(f)(i);e=$('<div class="dropdown-megamenu-content"><\/div>');e.html(i.message);t.setIsolateAttribute(e);o.append(e);r.append(f)}}}]);angular.module("sharedElements").directive("cFormField",["$compile","constants","testService","helpService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",fields:"=",form:"=",dependsOn:"=",revalidateOnChange:"=",validationFunction:"&?",autoFillFunction:"&?",onAction:"&?",validateEmptyValue:"=",isBulk:"@"},link:function(f,e){function l(){s!==null&&s.$destroy();s=f.$new();e.html("")}function o(n){return f.isBulk==="true"?'<div data-c-input-field data-field="field" data-form="form" data-is-bulk="true"><field>'+n+"<\/field><\/div>":'<div data-c-input-field data-field="field" data-form="form"><field>'+n+"<\/field><\/div>"}function h(){return r.getUiStringValue(f.field.label)}function c(){var r,v,c,y,a,p,w;if(l(),f.field!==null){if(typeof f.field.type=="undefined")throw new Error('"field.type" is undefined');if(typeof f.field.type!="number")throw new Error('"field.type" is not Number');r="";switch(f.field.type){case t.fieldType.TEXT:r=o('<div data-c-input-field-text data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validate-empty-value="validateEmptyValue" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.TEXTAREA:r=o('<div data-c-input-field-textarea data-field="field" data-form="form" data-depends-on="dependsOn" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.EMAIL_DOMAIN:r=o('<div data-c-input-field-email-domain data-field="field" data-form="form"><\/div>');break;case t.fieldType.EMAIL:r=o('<div data-c-input-field-email data-field="field" data-form="form" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.MULTISELECT:case t.fieldType.MULTISELECT_WITH_STRING_ID:r=o('<div data-c-input-field-multi-select data-field="field" data-form="form"><\/div>');break;case t.fieldType.RADIO_BUTTON_LIST:r=o('<div data-c-input-field-radio-button-list data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.PICKLIST:case t.fieldType.PICKLIST_WITH_STRING_ID:case t.fieldType.DEAL_COLLABORATOR_ORG:r=o('<div data-c-input-field-picklist data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)" data-on-action="handleAction(action, data)"><\/div>');break;case t.fieldType.CURRENCY:r=o('<div data-c-input-field-currency data-field="field" data-form="form"><\/div>');break;case t.fieldType.PERCENT:r=o('<div data-c-input-field-percent data-field="field" data-form="form"><\/div>');break;case t.fieldType.DOUBLE:r=o('<div data-c-input-field-double data-field="field" data-form="form"><\/div>');break;case t.fieldType.INT:r=o('<div data-c-input-field-int data-field="field" data-form="form" data-depends-on="dependsOn" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.DATE:r=o('<div data-c-input-field-date data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.DATETIME:r=o('<div data-c-input-field-date-time data-field="field" data-form="form"><\/div>');break;case t.fieldType.URL:r=o('<div data-c-input-field-url data-field="field" data-form="form"><\/div>');break;case t.fieldType.CHECKBOX:r=o('<div data-c-input-field-checkbox data-field="field" data-form="form"><\/div>');break;case t.fieldType.CHECKBOX_GROUP:r=o('<div data-c-input-field-checkbox-group data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.NESTED_TABLE:r=o('<div data-c-input-field-nested-table data-field="field" data-form="form"><\/div>');break;case t.fieldType.ADDRESS:r='<div data-c-input-field-address data-field="field" data-fields="fields" data-form="form"><\/div>';break;case t.fieldType.FILE_UPLOAD:r=o('<div data-c-input-field-file-upload data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)" data-validate-empty-value="validateEmptyValue"><\/div>');break;case t.fieldType.THUMBNAIL:r=o('<div data-c-input-field-thumbnail data-field="field" data-form="form"><\/div>');break;case t.fieldType.WYSIWYG:r=o('<div data-c-input-field-wysiwyg data-field="field" data-form="form" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.EMAIL_RECIPIENTS:r=o('<div data-c-input-field-email-recipients data-field="field" data-form="form" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.LINK_DESTINATION:r='<div data-c-input-field-link-destination data-field="field" data-form="form" data-validation-function="validate(name, value)"><\/div>';break;case t.fieldType.PERMISSIONS:r='<div data-c-input-field-permissions data-field="field" data-form="form" data-validation-function="validate(name, value)"><\/div>';break;case t.fieldType.TRANSLATION:r='<div data-c-input-field-translation data-field="field" data-form="form" data-on-action="handleAction(action, data)"><\/div>';break;case t.fieldType.TITLE:r='<div class="form-group"><div class="col-sm-3 control-label"><label><span>'+h()+"<\/span><\/label><\/div><\/div>";break;case t.fieldType.SECTION:r='<div class="form-group"><div class="col-sm-9 col-sm-offset-3 control-label-heading"><h5>'+h()+"<\/h5><\/div><\/div>";break;case t.fieldType.READ_ONLY:if(typeof f.field.value=="undefined")throw new Error('"field.value" is undefined');v=$("<div><\/div>");c=$('<div data-ng-bind="field.value"><\/div>');i.setFormFieldAttribute(c,f.field);u.setTranslateAttribute(c,f.field.translate);v.append(c);r=o(v.html());break;case t.fieldType.READ_ONLY_HTML:if(typeof f.field.value=="undefined")throw new Error('"field.value" is undefined');if(typeof f.field.value!="string")throw new Error('"field.value" is not string');y=$("<div><\/div>");a=$('<div data-ng-bind-html="toTrustedHtml(field.value)"><\/div>');i.setFormFieldAttribute(a,f.field);u.setTranslateAttribute(a,f.field.translate);y.append(a);r=o(y.html());break;case t.fieldType.COLOR_PICKER:r=o('<div data-c-input-field-color-picker data-field="field" data-form="form" data-revalidate-on-change="revalidateOnChange" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.PASSWORD:r=o('<div data-c-input-field-password data-field="field" data-form="form" data-depends-on="dependsOn" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.IMAGE_CHOOSER:r=o('<div data-c-input-field-image-chooser data-field="field" data-form="form" data-validation-function="validate(name, value)" data-data-functions="null"><\/div>');break;case t.fieldType.FOLDER_OR_DOCUMENT_SELECTOR:r=o('<div data-c-input-field-folder-document-selector data-field="field" data-form="form" data-validation-function="validate(name, value)" data-data-functions="null"><\/div>');break;case t.fieldType.SELECTOR:r=o('<div data-c-input-field-selector data-field="field" data-form="form" data-validation-function="validate(name, value)"><\/div>');break;case t.fieldType.FILTER:r=o('<div data-c-input-field-filters data-field="field" data-form="form"><\/div>');break;default:throw new Error('Unexpected field type: "'+f.field.type+'"');}p=$(r);w=p.appendTo(e);n(w)(s)}}function a(){c()}var s=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');f.toTrustedHtml=function(n){return r.toTrustedHtml(n)};f.$watch(function(){return f.field},function(n,t){n!==t&&c()});f.handleAction=function(n,t){f.onAction({action:n,data:t})};f.validate=function(n,t){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined. Is required for validator: '+n);return f.validationFunction({name:n,value:t})};f.autoFillSearch=function(n,t){return typeof f.autoFillFunction!="undefined"&&f.autoFillFunction!==null?f.autoFillFunction({name:n,value:t}):null};a()}}}]);angular.module("sharedElements").directive("cInputField",["$compile","constants","testService","translationHelperService",function(n,t,i,r){return{restrict:"A",transclude:!0,scope:{field:"=",form:"=",isBulk:"@"},link:function(u,f,e,o,s){function l(){h!==null&&h.$destroy();h=u.$new();f.html("")}function a(){if(l(),u.field===null)return!1;if(u.field.type!==t.fieldType.READ_ONLY&&u.field.type!==t.fieldType.READ_ONLY_HTML){if(typeof u.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.form=="undefined")throw new Error('"form" is undefined');}if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.description=="undefined")throw new Error('"field.description" is undefined');if(typeof u.field.inlineHelp=="undefined")throw new Error('"field.inlineHelp" is undefined');if(u.field.inlineHelp!==null&&typeof u.field.inlineHelp!="string")throw new Error('"field.inlineHelp" is not string');return!0}function v(){var f=$(document.createElement("div")),i,r;return f.addClass("col-sm-3 control-label"),u.field.label!==null&&(i=$(document.createElement("label")),u.field.type===t.fieldType.CHECKBOX_GROUP&&i.addClass("small-only"),r=$(document.createElement("span")),u.field.label.isHtml===!0?r.html(u.field.label.value):r.text(u.field.label.value),i.append(r),u.field.isRequired&&(u.isBulk==="true"?(i.attr("data-ng-class","{'required': field.editEnabled }"),n(i)(h)):i.addClass("required")),f.append(i)),f}function y(){var n=$(document.createElement("div"));return n.addClass("col-sm-9 control-value"),n}function p(){var f=$(document.createElement("div")),i,r;return f.addClass("form-grid-label"),u.field.label!==null&&(i=$(document.createElement("label")),u.field.type===t.fieldType.CHECKBOX_GROUP&&i.addClass("small-only"),r=$(document.createElement("span")),u.field.label.isHtml===!0?r.html(u.field.label.value):r.text(u.field.label.value),i.append(r),u.field.isRequired&&(u.isBulk==="true"?(i.attr("data-ng-class","{'required': field.editEnabled }"),n(i)(h)):i.addClass("required")),f.append(i)),f}function w(){var n=$(document.createElement("div"));return n.addClass("form-grid-response"),n}function c(){var g,o,nt,b,tt,rt,d,l,ut,c,it,k,ft;if(a()!==!1){g=null;o=null;switch(u.field.layout){case t.fieldLayout.STANDARD:case t.fieldLayout.BULK:e.$addClass("form-group");g=v();o=y();u.field.type===t.fieldType.READ_ONLY?o.addClass("form-control-static format-wrap"):u.field.type===t.fieldType.READ_ONLY_HTML&&o.addClass("form-control-static");break;case t.fieldLayout.GRID:e.$addClass("form-grid-row");g=p();o=w();u.field.type===t.fieldType.READ_ONLY&&o.addClass("format-wrap");break;default:throw new Error("Unknown layout: "+u.field.layout);}$(f).append(g);$(f).append(o);u.isBulk==="true"&&u.field.type!==t.fieldType.READ_ONLY&&u.field.type!==t.fieldType.READ_ONLY_HTML&&(nt=$('<i class="material_create"><\/i>'),b=$(document.createElement("div")),b.append(nt),tt=$(document.createElement("div")),tt.css("flex","1 1 auto"),rt=$('<i class="material_undo"><\/i>'),d=$(document.createElement("div")),d.css("flex","0 1 auto"),d.css("padding-right","10px"),d.append(rt),l=$(document.createElement("div")),l.css("display","flex"),l.css("flex-direction","row"),l.append(d),l.append(tt),l.hide(),o.append(b),o.append(l),u.field.cannotEditMessage!==null?(nt.css("color","#ccc"),ut=$('<span class="btn btn-slim btn-static" style="padding-left: 10px"><\/span>'),ut.text(u.field.cannotEditMessage),b.append(ut)):(nt.click(function(){b.hide();l.show();u.$apply(function(){u.field.editEnabled=!0})}),rt.click(function(){l.hide();b.show();u.$apply(function(){u.field.value=u.field.defaultValue;u.field.editEnabled=!1})})),o=tt);c=$(document.createElement("div"));c.addClass("help-block");(u.field.type===t.fieldType.MULTISELECT||u.field.type===t.fieldType.FILTER)&&c.addClass("help-block-margin-bottom");(u.field.description!==null&&u.field.description.value!==null&&u.field.description.value!==""||u.field.descriptionLinkLabel!==null&&u.field.descriptionLinkLabel!=="")&&(it=!1,u.field.description!==null&&u.field.description.value!==""&&(u.field.description.isHtml===!0?(c.html(u.field.description.value),it=!0):c.text(u.field.description.value)),u.field.label!==null&&u.field.label.value!==null?i.setAttribute(c,"field-description",u.field.label.value):i.setAttribute(c,"field-description",u.field.name),u.field.descriptionLinkLabel!==null&&u.field.descriptionLinkLabel!==""&&(it=!0,c.append("&nbsp;"),u.field.descriptionLinkUrl!==null&&u.field.descriptionLinkUrl!==""?(k=$(document.createElement("a")),k.attr("href",u.field.descriptionLinkUrl),k.attr("target","blank")):k=$(document.createElement("span")),k.text(u.field.descriptionLinkLabel),c.append(k)),it&&r.setIsolateAttribute(c),o.append(c));s(function(n){var i,f,e,r;r=n.filter("field");u.isBulk==="true"&&u.field.type!==t.fieldType.READ_ONLY&&u.field.type!==t.fieldType.READ_ONLY_HTML&&r.attr("data-ng-if","field.editEnabled === true");u.field.type===t.fieldType.MULTISELECT||u.field.type===t.fieldType.NESTED_TABLE||u.field.type===t.fieldType.FILTER?(u.field.layout==t.fieldLayout.BULK&&u.field.listItems!==null&&u.field.listItems.length>1&&r.children().addClass("text-columns"),o.append(r)):o.prepend(r);o.append(n.filter("action"))});u.field.inlineHelp!==null&&u.field.inlineHelp!==""&&(ft=$('<label data-c-inline-help data-message="field.inlineHelp"><\/label>'),n(ft)(h),o.prepend(ft))}}function b(){c()}u.field.editEnabled=!1;var h=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');u.$watch(function(){return u.field.description},function(n,t){n!==t&&c()},!0);b()}}}]);angular.module("sharedElements").directive("cInputFieldFullWidth",["$compile",function(n){return{restrict:"A",transclude:!0,scope:{inline:"@"},link:function(t,i,r,u,f){function e(){var u,e;r.$addClass("form-group");u=$(document.createElement("div"));u.addClass("col-sm-12 control-value");e=$(document.createElement("div"));typeof t.inline!="undefined"&&t.inline==="true"&&e.addClass("form-inline");u.append(e);$(i).append(u);n(i.contents())(t);f(function(n){e.prepend(n)})}e()}}}]);angular.module("sharedElements").directive("cInputFieldNoLabel",["$compile",function(n){return{restrict:"A",transclude:!0,scope:{inline:"@"},link:function(t,i,r,u,f){function e(){var o,u,e;r.$addClass("form-group");o=$(document.createElement("div"));o.addClass("col-sm-3 control-label");u=$(document.createElement("div"));u.addClass("col-sm-9 control-value");e=$(document.createElement("div"));typeof t.inline!="undefined"&&t.inline==="true"&&e.addClass("form-inline");u.append(e);$(i).append(o);$(i).append(u);n(i.contents())(t);f(function(n){e.prepend(n)})}e()}}}]);angular.module("sharedElements").directive("cInputFieldAddress",function(){return{restrict:"A",scope:{field:"=",fields:"=",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldAddress/inputFieldAddress.html",controller:["$scope","addressService","helpService","constants","$q",function(n,t,i,r,u){function c(){return _.find(n.fields,function(t){return t.name===n.field.organizationFieldName})}function e(){var t=[];t.push(n.field.countryField);n.field.useMasterAddressField!==null&&t.push(n.field.useMasterAddressField);n.field.stateProvinceField!==null&&t.push(n.field.stateProvinceField);n.field.cityField!==null&&t.push(n.field.cityField);n.field.zipField!==null&&t.push(n.field.zipField);n.field.streetAddressField!==null&&t.push(n.field.streetAddressField);n.field.value=i.getProcessedFields(t)}function h(t,i){var r=$.extend(!0,{},n.field.stateProvinceField);r.listItems=t.listItems;r.value=t.selectedValue!==null&&s===!1?t.selectedValue:r.defaultValue;r.isRequired=i;n.field.stateProvinceField=r}function l(){if(n.field.type!==r.fieldType.ADDRESS)throw new Error('"field.type" should be "ADDRESS"');if(n.field.stateProvinceField!==null){var t=n.field.countryField.value;f=_.find(n.field.stateProvinceField.listItems,function(n){return n.text.indexOf(n.value)===0});typeof f=="undefined"&&(f=null);t!==n.field.stateProvinceField.defaultValue&&(o[t]={listItems:n.field.stateProvinceField.listItems,selectedValue:f===null?null:n.field.stateProvinceField.value})}e()}var o=[],f=null,s=!1;n.showStateField=function(){return n.field.stateProvinceField===null||n.field.stateProvinceField.listItems===null?!1:f===null||s?n.field.countryField.value!==n.field.countryField.defaultValue:!0};n.getValidateOnChangeValues=function(){var t=[];return t.push(n.field.countryField.value),n.field.stateProvinceField!==null&&t.push(n.field.stateProvinceField.value),n.field.cityField!==null&&t.push(n.field.cityField.value),n.field.zipField!==null&&t.push(n.field.zipField.value),n.field.streetAddressField!==null&&t.push(n.field.streetAddressField.value),"["+t.join(",")+"]"};n.validateAddressFieldsForCountry=function(t){if(t!=="country")throw new Error('"'+t+'" unknown validator name.');var f=u.defer(),r={success:!0,message:null};return n.field.countryField.value===n.field.countryField.defaultValue&&(n.field.cityField!==null&&i.valueIsEmptyOrNull(n.field.cityField.value)===!1||n.field.zipField!==null&&i.valueIsEmptyOrNull(n.field.zipField.value)===!1||n.field.streetAddressField!==null&&i.valueIsEmptyOrNull(n.field.streetAddressField.value)===!1||n.field.stateProvinceField!==null&&n.field.stateProvinceField.value!==n.field.stateProvinceField.defaultValue)&&(r.message="You must select a valid country if any of the other address fields have data.",r.success=!1),f.resolve(r),f.promise};n.validateCityAndStreet=function(t,r){if(t!=="city")throw new Error('"'+t+'" unknown validator name.');var e=u.defer(),f={success:!0,message:null};return n.field.streetAddressField!==null&&i.valueIsEmptyOrNull(n.field.streetAddressField.value)===!1&&i.valueIsEmptyOrNull(r)&&(f.message="You must enter a city if the street address field has data.",f.success=!1),e.resolve(f),e.promise};n.$watch(function(){return n.field.countryField.value},function(i,r){var u,l,s,a,c;i!==r&&(u=n.field.countryField.value,n.field.stateProvinceField!==null&&(u===n.field.countryField.defaultValue?(n.field.stateProvinceField.listItems=null,n.field.stateProvinceField.value=n.field.stateProvinceField.defaultValue):(l=_.find(n.field.countryField.countriesWithVisibleStates,function(n){return n===u})!==undefined,l===!0?(s=_.find(n.field.countryField.countriesWithRequiredStates,function(n){return n===u})!==undefined,typeof o[u]=="undefined"?t.getStates(u,n.field.restrictCountriesAndStatesByRegion,f!==null?f.value:"").then(function(t){o[u]={listItems:t.listItems,selectedValue:t.value};s===!1&&t.makeStateRequiredForRestrictedValues===!0&&(s=!0,n.field.countryField.countriesWithRequiredStates===null&&(n.field.countryField.countriesWithRequiredStates=[]),n.field.countryField.countriesWithRequiredStates.push(u));h(o[u],s);e()}):h(o[u],s)):(a=_.filter(n.field.countryField.listItems,function(n){return n.isEnabled===!1}),c=!1,_.each(a,function(n){u===n.value&&(c=!0)}),c===!0?h(o[u],!0):(n.field.stateProvinceField.listItems=null,n.field.stateProvinceField.value=n.field.stateProvinceField.defaultValue)))),e())},!1);n.field.useMasterAddressField!==null&&(n.$watch(function(){return n.field.useMasterAddressField.value},function(){e()},!1),n.$watch(function(){var n=c();return n==undefined||n.value==undefined?null:n.value},function(i){if(i!=undefined){var r=c();r.value!==r.defaultValue?t.getMasterAddress(i).then(function(t){n.field.masterAddress=t;e()}):n.field.masterAddress=null}},!1));n.field.stateProvinceField!==null&&n.$watch(function(){return n.field.stateProvinceField.value},function(t,i){t===i||t===n.field.stateProvinceField.defaultValue&&n.field.stateProvinceField.listItems==null||(f===null?s=!0:i===n.field.stateProvinceField.defaultValue&&f!==null&&t===f.value||(s=!0));e()},!1);n.field.cityField!==null&&n.$watch(function(){return n.field.cityField.value},function(){e()},!1);n.field.zipField!==null&&n.$watch(function(){return n.field.zipField.value},function(){e()},!1);n.field.streetAddressField!==null&&n.$watch(function(){return n.field.streetAddressField.value},function(){e()},!1);l()}]}});angular.module("sharedElements").directive("cInputFieldCheckbox",["$compile","helpService","constants","testService",function(n,t,i,r){return{restrict:"A",scope:{field:"=",form:"="},link:function(u,f){function s(){e!==null&&e.$destroy();e=u.$new();f.html("")}function h(){if(s(),u.field===null)return!1;if(u.field.type!==i.fieldType.CHECKBOX)throw new Error('"field.type" should be "CHECKBOX"');if(typeof u.field.value=="undefined")throw new Error('"field.value" is undefined');if(typeof u.field.checkboxIsToggle=="undefined")throw new Error('"field.checkboxIsToggle" is undefined');if(typeof u.field.checkboxIsToggle!="boolean")throw new Error('"field.checkboxIsToggle" is not boolean');if(typeof u.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof u.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');return!0}function o(){var s,l,o,c,i;h()!==!1&&(s=$(document.createElement("div")),s.addClass("checkbox"),l=$(document.createElement("label")),o=$(document.createElement("span")),o.addClass("switch"),c=t.getUniqueName(u.field.name,u.form),u.field.inputName=c,i=$(document.createElement("input")),i.attr("type","checkbox"),i.attr("name",c),i.attr("data-auto-focus","true"),i.attr("data-ng-model","field.value"),i.attr("data-ng-true-value","'true'"),i.attr("data-ng-false-value","'false'"),i.attr("data-ng-disabled","field.isEnabled === false"),u.field.checkboxIsToggle&&i.addClass("toggle-switch"),r.setFormFieldAttribute(i,u.field),u.field.isRequired&&(i.attr("data-c-validator",""),i.attr("data-ng-attr-data-validators","[checked]")),o.append(i),o.append($(document.createElement("i"))),l.append(o),s.append(l),$(f).append(s),u.field.isRequired&&$(f).append('<label data-c-validation-message data-form="form" data-field-name="'+c+'"><\/label>'),n(f.contents())(e))}function c(){o()}var e=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');if(typeof u.form=="undefined")throw new Error('"form" is undefined');u.$watch(function(){return u.field},function(n,t){n!==t&&o()});c()}}}]);angular.module("sharedElements").directive("cInputFieldCheckboxGroup",["$compile","helpService","constants","testService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",revalidateOnChange:"=",validationFunction:"&?"},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.field===null)return!1;if(f.field.type!==i.fieldType.CHECKBOX_GROUP)throw new Error('"field.type" should be "CHECKBOX_GROUP"');if(typeof f.field.value=="undefined")throw new Error('"field.value" is undefined');if(typeof f.field.checkboxIsToggle=="undefined")throw new Error('"field.checkboxIsToggle" is undefined');if(typeof f.field.checkboxIsToggle!="boolean")throw new Error('"field.checkboxIsToggle" is not boolean');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof f.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');return!0}function s(){var a,h,l,v,i,s,y;c()!==!1&&(a=$(document.createElement("div")),a.addClass("checkbox"),h=$(document.createElement("label")),f.field.isRequired&&h.addClass("required"),l=$(document.createElement("span")),l.addClass("switch"),v=t.getUniqueName(f.field.name,f.form),f.field.inputName=v,i=$(document.createElement("input")),i.attr("type","checkbox"),i.attr("name",v),i.attr("data-auto-focus","true"),i.attr("data-ng-model","field.value"),i.attr("ng-true-value","'true'"),i.attr("ng-false-value","'false'"),i.attr("data-ng-disabled","field.isEnabled === false"),f.field.checkboxIsToggle&&i.addClass("toggle-switch"),r.setFormFieldAttribute(i,f.field),(f.field.isRequired||f.field.validatorName!==null||typeof f.revalidateOnChange!="undefined")&&(i.attr("data-c-validator",""),i.attr("data-validate-empty-value",!0)),f.field.isRequired&&i.attr("data-ng-attr-data-validators","[checked]"),f.field.validatorName!==null&&i.attr("data-async-validation-function","validate(value)"),typeof f.revalidateOnChange!="undefined"&&i.attr("data-revalidate-on-change","revalidateOnChange"),l.append(i),l.append($(document.createElement("i"))),h.append(l),s=$(document.createElement("span")),s.addClass("checkbox-group-label"),f.field.label.isHtml===!0?(s.html(f.field.label.value),u.setIsolateAttribute(s)):s.text(f.field.label.value),h.append(s),a.append(h),$(e).append(a),n(i)(o),(f.field.isRequired||f.field.validatorName!==null||typeof f.revalidateOnChange!="undefined")&&(y=$('<label data-c-validation-message data-form="form" data-field-name="'+v+'"><\/label>'),$(e).append(y),n(y)(o)))}function l(){s()}var o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&s()});f.validate=function(n){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return f.validationFunction({name:f.field.validatorName,value:n})};l()}}}]);angular.module("sharedElements").directive("cInputFieldColorPicker",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",revalidateOnChange:"=",validationFunction:"&?",onAction:"&?"},link:function(f,e){function l(){o=null;s!==null&&s.$destroy();s=f.$new();e.html("")}function a(){if(l(),f.field===null)return!1;if(f.field.type!==r.fieldType.COLOR_PICKER)throw new Error('"field.type" should be "COLOR_PICKER"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof f.field.length!="number")throw new Error('"field.length" is not number');if(typeof f.field.autoComplete=="undefined")throw new Error('"field.autoComplete" is undefined');if(typeof f.field.autoComplete!="boolean")throw new Error('"field.autoComplete" is not Boolean');return!0}function h(){var r,l,h;a()!==!1&&(r=$('<div class="input-group input-group-color-picker"><\/div>'),e.append(r),l=$('<span class="input-group-addon" data-ng-style="colorPrefixBackground()">&nbsp;<\/span>'),r.append(l),l.click(function(){o!==null&&o.focus()}),h=t.getUniqueName(f.field.name,f.form),f.field.inputName=h,o=$(document.createElement("input")),o.attr("name",h),o.addClass("form-control autoselect minicolors-input"),o.attr("maxlength",f.field.length),o.attr("type","text"),f.field.debounce!==null&&o.attr("data-debounce",f.field.debounce),o.attr("data-auto-focus","true"),o.attr("data-ng-model","field.value"),t.setAutocompleteAttribute(o),o.attr("data-c-validator",""),o.attr("data-data-type","colorPicker"),o.attr("data-max-length",f.field.length),i.setValidators(o,["dataType","maxLength"],f.field),u.setFormFieldAttribute(o,f.field),typeof f.revalidateOnChange!="undefined"&&o.attr("data-revalidate-on-change","revalidateOnChange"),f.field.validatorName!==null&&o.attr("data-async-validation-function","validate(value)"),o.attr("data-c-color-picker",""),o.attr("data-theme",c),r.append(o),$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+h+'"><\/label>'),n(e.contents())(s))}function v(){h()}var s=null,o=null,c="bootstrap";if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.colorPrefixBackground=function(){var n=o.val(),i=t.getRegexPattern(r.regexType.HEX_COLOR),u=new RegExp(i);return n===null||typeof n=="undefined"||u.test(n)===!1?{opacity:1,"background-position":"-91px 0px","background-image":'url("/lib/angular-minicolors/jquery.minicolors.png")'}:{opacity:1,"background-color":n}};f.validate=function(n){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return f.validationFunction({name:f.field.validatorName,value:n})};f.$watch(function(){return f.field},function(n,t){n!==t&&h()});f.handleAction=function(n){if(typeof f.onAction!="undefined")return f.onAction({action:n})};v()}}}]);angular.module("sharedElements").directive("cInputFieldCurrency",["$compile","appDetailsValue","helpService","validationService","constants","testService",function(n,t,i,r,u,f){return{restrict:"A",scope:{field:"=",form:"=",size:"@"},link:function(e,o){function c(){s!==null&&s.$destroy();s=e.$new();o.html("")}function l(){if(c(),e.field===null)return!1;if(e.field.type!==u.fieldType.CURRENCY)throw new Error('"field.type" should be "CURRENCY"');if(typeof e.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof e.field.name!="string")throw new Error('"field.name" is not string');if(typeof e.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof e.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');return!0}function h(){var h,c,a,u;if(l()!==!1){if(h=$(document.createElement("div")),h.addClass("input-group"),c=$(document.createElement("span")),c.addClass("input-group-addon"),c.text(t.localization.currencySymbol),a=i.getUniqueName(e.field.name,e.form),e.field.inputName=a,u=$(document.createElement("input")),u.addClass("form-control"),u.attr("type","text"),u.attr("name",a),u.attr("data-auto-focus","true"),u.attr("ng-model","field.value"),f.setFormFieldAttribute(u,e.field),u.attr("data-c-validator",""),u.attr("data-data-type","currency"),r.setValidators(u,["dataType"],e.field),typeof e.size!="undefined"&&e.size!==""){if(isNaN(e.size))throw new Error('"scope.size" is not number');u.attr("size",e.size)}t.localization.currencySymbolAfterNumber==="True"?(h.append(u),h.append(c)):(h.append(c),h.append(u));$(o).append(h);$(o).append('<label data-c-validation-message data-form="form" data-field-name="'+a+'"><\/label>');n(o.contents())(s)}}function a(){h()}var s=null;if(typeof e.field=="undefined")throw new Error('"field" is undefined');if(typeof e.form=="undefined")throw new Error('"form" is undefined');if(typeof t=="undefined"||typeof t.localization=="undefined")throw new Error("Localization is undefined");e.$watch(function(){return e.field},function(n,t){n!==t&&h()});a()}}}]);angular.module("sharedElements").directive("cInputFieldDate",["$compile","appDetailsValue","helpService","validationService","constants","testService",function(n,t,i,r,u,f){return{restrict:"A",scope:{field:"=",form:"=",revalidateOnChange:"=",validationFunction:"&?"},link:function(e,o){function l(){s!==null&&s.$destroy();s=e.$new();o.html("")}function a(){if(l(),e.field===null)return!1;if(e.field.type!==u.fieldType.DATE)throw new Error('"field.type" should be "DATE"');if(typeof e.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof e.field.name!="string")throw new Error('"field.name" is not string');if(typeof e.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof e.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');return!0}function h(){var u,t;a()!==!1&&(u=i.getUniqueName(e.field.name,e.form),e.field.inputName=u,t=$(document.createElement("input")),t.attr("name",u),t.addClass("form-control"),t.attr("type","text"),t.attr("data-ng-model","field.value"),t.attr("data-c-datetimepicker",""),t.attr("date-pattern",c),t.attr("data-c-validator",""),t.attr("data-data-type","date"),f.setFormFieldAttribute(t,e.field),r.setValidators(t,["dataType"],e.field),typeof e.revalidateOnChange!="undefined"&&t.attr("data-revalidate-on-change","revalidateOnChange"),e.field.validatorName!==null&&t.attr("data-async-validation-function","validate(value)"),$(o).append(t),$(o).append('<label data-c-validation-message data-form="form" data-field-name="'+u+'"><\/label>'),n(o.contents())(s))}function v(){h()}var s=null,c=t.localization.shortDatePattern;if(typeof e.field=="undefined")throw new Error('"field" is undefined');if(typeof e.form=="undefined")throw new Error('"form" is undefined');if(typeof t=="undefined"||typeof t.localization=="undefined")throw new Error("Localization is undefined");e.$watch(function(){return e.field},function(n,t){n!==t&&h()});e.validate=function(n){if(typeof e.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return e.validationFunction({name:e.field.validatorName,value:n})};v()}}}]);angular.module("sharedElements").directive("cInputFieldDateTime",["$compile","appDetailsValue","helpService","validationService","constants","testService",function(n,t,i,r,u,f){return{restrict:"A",scope:{field:"=",form:"="},link:function(e,o){function a(){s!==null&&s.$destroy();s=e.$new();o.html("")}function v(){if(a(),e.field===null)return!1;if(e.field.type!==u.fieldType.DATETIME)throw new Error('"field.type" should be "DATETIME"');if(typeof e.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof e.field.name!="string")throw new Error('"field.name" is not string');if(typeof e.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof e.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');return!0}function h(){var h,t,u,a,y;if(v()!==!1){if(h=i.getUniqueName(e.field.name,e.form),e.field.inputName=h,t=$(document.createElement("input")),t.attr("name",h),t.addClass("form-control"),t.attr("type","text"),t.attr("data-ng-model","field.value"),t.attr("data-c-datetimepicker",""),t.attr("date-pattern",c),t.attr("time-pattern",l),t.attr("data-c-validator",""),t.attr("data-data-type","datetime"),f.setFormFieldAttribute(t,e.field),r.setValidators(t,["dataType"],e.field),e.field.suffix!==null)throw new Error('"Suffix" for DateTime input field is not supported.');u=$(document.createElement("div"));u.addClass("input-group");e.field.prefix!==null&&(a=$(document.createElement("span")),a.addClass("input-group-addon"),a.attr("data-ng-bind","field.prefix"),u.append(a));u.append(t);y=$(document.createElement("span"));y.addClass("input-group-addon");y.text("GMT");u.append(y);$(o).append(u);$(o).append('<label data-c-validation-message data-form="form" data-field-name="'+h+'"><\/label>');n(o.contents())(s)}}function y(){h()}var s=null,c=t.localization.shortDatePattern,l=t.localization.shortTimePattern;if(typeof e.field=="undefined")throw new Error('"field" is undefined');if(typeof e.form=="undefined")throw new Error('"form" is undefined');if(typeof t=="undefined"||typeof t.localization=="undefined")throw new Error("Localization is undefined");e.$watch(function(){return e.field},function(n,t){n!==t&&h()});y()}}}]);angular.module("sharedElements").directive("cInputFieldDouble",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",size:"@"},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.field===null)return!1;if(f.field.type!==r.fieldType.DOUBLE)throw new Error('"field.type" should be "DOUBLE"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');return!0}function s(){var s,r;if(c()!==!1){if(s=t.getUniqueName(f.field.name,f.form),f.field.inputName=s,r=$(document.createElement("input")),r.attr("name",s),r.addClass("form-control"),r.attr("type","text"),r.attr("data-auto-focus","true"),r.attr("data-ng-model","field.value"),r.attr("data-c-validator",""),r.attr("data-data-type","double"),u.setFormFieldAttribute(r,f.field),i.setValidators(r,["dataType"],f.field),typeof f.size!="undefined"&&f.size!==""){if(isNaN(f.size))throw new Error('"scope.size" is not number');r.attr("size",f.size)}$(e).append(r);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+s+'"><\/label>');n(e.contents())(o)}}function l(){s()}var o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&s()});l()}}}]);angular.module("sharedElements").directive("cInputFieldEmail",["$compile","helpService","constants","testService",function(n,t,i,r){return{restrict:"A",scope:{field:"=",form:"=",validationFunction:"&?"},link:function(u,f){function h(){o!==null&&o.$destroy();o=u.$new();f.html("")}function c(){if(h(),u.field===null)return!1;if(u.field.type!==i.fieldType.EMAIL)throw new Error('"field.type" should be "EMAIL"');if(typeof u.field.label=="undefined")throw new Error('"field.label" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof u.field.length!="number")throw new Error('"field.length" is not number');return!0}function s(){if(c()!==!1){var i=t.getUniqueName(u.field.name,u.form);u.field.inputName=i;e=$(document.createElement("input"));e.attr("name",i);e.addClass("form-control autoselect");e.attr("maxlength",u.field.length);e.attr("type","text");e.attr("data-auto-focus","true");e.attr("data-ng-model","field.value");e.attr("data-c-validator","");r.setFormFieldAttribute(e,u.field);u.field.autoComplete===!1&&t.setAutocompleteAttribute(e);e.attr("data-validators",u.field.isRequired?"[required,maxLength,formatEmailAddress]":"[maxLength,formatEmailAddress]");e.attr("data-max-length",u.field.length);u.field.validatorName!==null&&e.attr("data-async-validation-function","validate(value)");$(f).append(e);$(f).append('<label data-c-validation-message data-form="form" data-field-name="'+i+'"><\/label>');u.inputElement=e;$(f).append('<div data-c-placeholder data-field="field" data-input-element="inputElement"><\/div>');n(f.contents())(o)}}function l(){s()}var o=null,e=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');if(typeof u.form=="undefined")throw new Error('"form" is undefined');u.$watch(function(){return u.field},function(n,t){n!==t&&s()});u.validate=function(n){if(typeof u.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return u.validationFunction({name:u.field.validatorName,value:n})};l()}}}]);angular.module("sharedElements").directive("cInputFieldEmailRecipients",["$compile","helpService","constants","testService",function(n,t,i,r){return{restrict:"A",scope:{field:"=",form:"=",validationFunction:"&?"},link:function(u,f){function h(){o!==null&&o.$destroy();o=u.$new();f.html("")}function c(){if(h(),u.field===null)return!1;if(u.field.type!==i.fieldType.EMAIL_RECIPIENTS)throw new Error('"field.type" should be "EMAIL_RECIPIENTS"');if(typeof u.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof u.field.length!="number")throw new Error('"field.length" is not number');if(typeof u.field.autoComplete=="undefined")throw new Error('"field.autoComplete" is undefined');if(typeof u.field.autoComplete!="boolean")throw new Error('"field.autoComplete" is not Boolean');return!0}function s(){if(c()!==!1){var i=t.getUniqueName(u.field.name,u.form);u.field.inputName=i;e=$(document.createElement("input"));e.attr("name",i);e.addClass("form-control autoselect");e.attr("maxlength",u.field.length);e.attr("type","text");e.attr("data-auto-focus","true");e.attr("data-ng-model","field.value");u.field.autoComplete===!1&&t.setAutocompleteAttribute(e);e.attr("data-c-validator","");e.attr("data-validators",u.field.isRequired?"[required,maxLength,formatEmailAddressWithSemicolon]":"[maxLength,formatEmailAddressWithSemicolon]");e.attr("data-max-length",u.field.length);r.setFormFieldAttribute(e,u.field);u.field.validatorName!==null&&e.attr("data-async-validation-function","validate(value)");$(f).append(e);$(f).append('<label data-c-validation-message data-form="form" data-field-name="'+i+'"><\/label>');u.inputElement=e;$(f).append('<div data-c-placeholder data-field="field" data-input-element="inputElement"><\/div>');n(f.contents())(o)}}function l(){s()}var o=null,e=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');if(typeof u.form=="undefined")throw new Error('"form" is undefined');u.$watch(function(){return u.field},function(n,t){n!==t&&s()});u.validate=function(n){if(typeof u.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return u.validationFunction({name:u.field.validatorName,value:n})};l()}}}]);angular.module("sharedElements").directive("cInputFieldFileUpload",["$compile","constants","helpService",function(n,t,i){return{restrict:"A",scope:{field:"=",form:"=",revalidateOnChange:"=",validationFunction:"&?",onAction:"&?",validateEmptyValue:"="},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){if(o(),r.field===null)return!1;if(r.field.type!==t.fieldType.FILE_UPLOAD)throw new Error('"field.type" should be "FILE_UPLOAD"');if(typeof r.field.fileName=="undefined")throw new Error('"field.fileName" is undefined');if(r.field.fileName!==null&&typeof r.field.fileName!="string")throw new Error('"field.fileName" is not string');if(typeof r.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof r.field.name!="string")throw new Error('"field.name" is not string');if(typeof r.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof r.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof r.field.fileType=="undefined")throw new Error('"field.fileType" is undefined');if(typeof r.field.fileType!="number")throw new Error('"field.fileType" is not number');return!0}function e(){if(s()!==!1){r.field.inputName=i.getUniqueName("uploadStatus",r.form);var t=$(document.createElement("div"));t.attr("data-c-file-upload","");t.attr("data-field-name","field.inputName");t.attr("data-form","form");t.attr("data-file-id","field.value");t.attr("data-file-name","field.fileName");t.attr("data-file-type","field.fileType");t.attr("data-profile-image","field.profileImage");t.attr("data-is-required","field.isRequired");r.field.validatorName!==null&&t.attr("data-async-validation-function","validate(value)");typeof r.revalidateOnChange!="undefined"&&t.attr("data-revalidate-on-change","revalidateOnChange");typeof r.validateEmptyValue!="undefined"&&t.attr("data-validate-empty-value",r.validateEmptyValue);t.attr("data-on-action","handleAction(action, data)");$(u).append(t);$(u).append('<label data-c-validation-message data-form="form" data-field-name="'+r.field.inputName+'"><\/label>');n(u.contents())(f)}}function h(){e()}var f=null;if(typeof r.field=="undefined")throw new Error('"field" is undefined');if(typeof r.form=="undefined")throw new Error('"form" is undefined');r.$watch(function(){return r.field},function(n,t){n!==t&&e()});r.validate=function(n){if(typeof r.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return r.validationFunction({name:r.field.validatorName,value:n})};r.handleAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"status-changed":if(typeof r.onAction!="undefined")r.onAction({action:"status-changed",data:{status:t.status,defaultThumbnailLink:t.defaultThumbnailLink,generatedThumbnailFileId:t.generatedThumbnailFileId,imageWidth:t.imageWidth,imageHeight:t.imageHeight,fileName:t.fileName}});break;default:throw"Unknown action: "+n;}};h()}}}]);angular.module("sharedElements").directive("cInputFieldFilters",function(){return{restrict:"A",scope:{field:"=",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldFilters/inputFieldFilters.html",controller:["$scope","$q","validationService","filterService","constants","validationMessageService",function(n,t,i,r,u,f){function h(){if(n.field.type!==u.fieldType.FILTER)throw new Error('"field.type" should be "FILTER"');n.field!==null&&(_.each(n.field.filters,function(n){var t=_.filter(n.listItems,function(n){return n.isEnabled===!1});s[n.name]=t.map(function(n){return n.value})}),e())}function c(){var t=null,i=r.getAppliedFilters(n.field.filters);return i.length>0&&(t=r.getFilterState(i,n.field.filters)),t}function e(){n.field.value=c()}function o(){var t=r.getAvailableFilters(n.field.filters);return _.filter(t,function(n){return n.isDisabled===!1})}n.availableFilters=null;n.validate=!0;var s=[];n.onChange=function(){e()};n.getFilterValue=function(n){return JSON.stringify(n.filterValue)};n.validateFilter=function(n){var r=t.defer(),e;if(n.isDisabled===!0)r.resolve(i.getCustomAsyncValidatorResult({success:!1,message:"Invalid Filter. Filter is unavailable."}));else if(e=!1,n.filterValue.otherValues!==null&&_.each(n.filterValue.otherValues,function(t){var i=_.find(s[n.name],function(n){return n===t});typeof i!="undefined"&&(e=!0)}),e===!0)r.resolve(i.getCustomAsyncValidatorResult({success:!1,message:f.invalidMultiselectValue}));else switch(n.type){case u.filterTypes.TEXT:n.filterValue.value===n.defaultFilterValue.value?r.resolve(i.getCustomAsyncValidatorResult({success:!1,message:f.required})):r.resolve(i.getCustomAsyncValidatorResult({success:!0}));break;case u.filterTypes.DROPDOWN:case u.filterTypes.DROPDOWN_ADVANCED:case u.filterTypes.MULTISELECT:_.isEqual(n.filterValue.otherValues,n.defaultFilterValue.otherValues)===!0?r.resolve(i.getCustomAsyncValidatorResult({success:!1,message:f.required})):r.resolve(i.getCustomAsyncValidatorResult({success:!0}));break;default:throw"Not supported filterType: "+n.type;}return r.promise};n.anyAvailableFilters=function(){return o().length>0};n.anyVisibleFilters=function(){return r.anyVisibleFilters(n.field.filters)};n.getVisibleFilters=function(){return r.getVisibleFilters(n.field.filters)};n.addFilter=function(t){r.addFilter(n.field.filters,t)};n.removeFilter=function(n){r.removeFilter(n);e()};n.$watch(function(){return n.field.filters},function(){r.generateFilterableInterface(n.field.filters);n.availableFilters=o()});n.$watch(function(){return r.getAvailableFilterNames(n.field.filters)},function(){n.availableFilters=o()},!0);h()}]}});angular.module("sharedElements").service("folderDocumentSelectorService",["securityService",function(n){this.load=function(t){return n.httpGet("data/Common/FolderDocumentSelector/Load",{libraryId:t})};this.list=function(t,i,r,u){return n.httpPost("data/Common/FolderDocumentSelector/List",{libraryId:t,folderId:i,filters:r,listerState:u})}}]);angular.module("sharedElements").directive("cInputFieldFolderDocumentSelector",function(){return{restrict:"A",scope:{field:"=",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldFolderDocumentSelector/inputFieldFolderDocumentSelector.html",controller:["$scope","helpService","folderDocumentSelectorService","$q","validationService","filterService",function(n,t,i,r,u,f){function o(){n.field!==null&&(n.field.isLibraryAdmin===!1&&(n.permissionsMessage="You are unable to change the selected Folder or Document because you do not have Library Admin permissions."),n.currentStatus=n.field.value!==null?n.status.FOLDER_OR_DOCUMENT_SELECTED:n.status.NOT_SELECTED)}n.status={NOT_SELECTED:1,FOLDER_OR_DOCUMENT_SELECTED:2};var e=0;n.currentStatus=n.status.NOT_SELECTED;n.permissionsMessage=null;n.validateSelectedValue=function(){var t=r.defer(),i;return n.field.isRequired===!1?t.resolve(u.getCustomAsyncValidatorResult({success:!0,message:""})):(i=n.currentStatus===n.status.FOLDER_OR_DOCUMENT_SELECTED,t.resolve(u.getCustomAsyncValidatorResult({success:i,message:i?"":"Required"}))),t.promise};n.openSelectorDialog=function(){t.openDialog({template:"js/shared/common/directives/inputField/inputFieldFolderDocumentSelector/folderDocumentSelectorView.html",controller:["$scope","constants","listerService",function(r,u,o){function s(n){r.documents=n;r.listerStatus=u.listerStatus.RENDERING}function h(){r.isLoading=!0;i.load(n.field.libraryId).then(function(n){r.breadCrumbs=n.breadcrumbs;r.searchTermFilter=n.documents.filters[0];r.filters=n.documents.filters;r.listerSettings=n.documents.listerSettings;s(n.documents.lister);r.isLoading=!1})}r.isLoading=!0;r.pendingAction=!1;r.breadCrumbs=null;r.description=null;r.documents=null;r.listerStatus=u.listerStatus.LOADING;r.listerSettings=o.getListerSettings();r.searchTermFilter=null;r.appliedFilters=null;r.filters=null;r.folderId=null;r.refresh=function(){r.listerStatus=u.listerStatus.LOADING;r.appliedFilters=f.getAppliedFilters(r.filters);i.list(n.field.libraryId,r.folderId,f.getFilterState(r.filters),t.getListerState(r.documents)).then(function(n){r.breadCrumbs=n.breadcrumbs;s(n.documents.lister)})};r.handleAction=function(i,u){var f;if(i===undefined)throw"Action is unspecified";switch(i){case"refresh-lister":r.refresh();break;case"select-document":f=t.getRowById(r.documents.rows,u.rowId);n.field.value=n.field.destinationPrefixValue.document+f.id;n.field.folderOrDocumentName=f.title;n.field.documentType=f.additionalData.type;n.currentStatus=n.status.FOLDER_OR_DOCUMENT_SELECTED;r.closeThisDialog();break;case"select-folder":f=t.getRowById(r.documents.rows,u.rowId);n.field.value=n.field.destinationPrefixValue.folder+f.id;n.field.folderOrDocumentName=f.title;n.field.documentType=e;n.currentStatus=n.status.FOLDER_OR_DOCUMENT_SELECTED;r.closeThisDialog();break;case"navigate-to-folder":r.folderId=u.rowId;r.refresh();break;default:throw"Unknown action "+i;}};r.handleBreadCrumbsAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"navigate-to-folder":r.folderId=t;r.refresh();break;case"navigate-to-library":r.folderId=null;r.refresh();break;default:throw"Unknown action "+n;}};h()}]})};n.getLabel=function(){return t.getUiStringValue(n.field.label)+":"};n.removeSelectedItem=function(){n.field.folderOrDocumentName=null;n.field.value=null;n.field.documentType=e;n.currentStatus=n.status.NOT_SELECTED};o()}]}});angular.module("sharedElements").service("imageChooserService",["securityService","helpService",function(n,t){this.loadDialogData=function(t){return n.httpGet("data/Common/ImageChooser/LoadDialogData",{fileType:t})};this.loadNewImageDescription=function(t){return n.httpGet("data/Common/ImageChooser/LoadNewImageDescription",{fileType:t})};this.createNewImage=function(i,r){return n.httpPost("data/Common/ImageChooser/CreateNewImage",{fileType:i,sections:t.getProcessedSections(r)})};this.validateImage=function(t,i){return n.httpGet("data/Common/ImageChooser/ValidateImage",{fileType:t,imageFileId:i})}}]);angular.module("sharedElements").directive("cInputFieldImageChooser",["imageChooserService","$compile","constants","helpService","pageSharedDataFactory","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",scope:{field:"=",form:"=",onAction:"&?"},link:function(e,o){function c(){s!==null&&s.$destroy();s=e.$new();o.html("")}function l(){if(c(),e.field===null)return!1;if(e.field.type!==i.fieldType.IMAGE_CHOOSER)throw new Error('"field.type" should be "IMAGE_CHOOSER"');if(typeof e.field.fileName=="undefined")throw new Error('"field.fileName" is undefined');if(e.field.fileName!==null&&typeof e.field.fileName!="string")throw new Error('"field.fileName" is not string');if(typeof e.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof e.field.name!="string")throw new Error('"field.name" is not string');if(typeof e.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof e.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof e.field.fileType=="undefined")throw new Error('"field.fileType" is undefined');if(typeof e.field.fileType!="number")throw new Error('"field.fileType" is not number');return!0}function a(){var n=$('<div data-ng-show="showChooseImageButton() === true"><\/div>'),u=$('<button class="btn btn-default btn-file" type="button" tabindex="0" data-auto-focus="true" data-ng-click="openImageChooserDialog()">Choose Image<\/button>'),t,i;return n.append(u),r.setTestAttribute(u,"choose-image-button","Choose Image"),t=r.getUniqueName(e.field.name,e.form),e.field.inputName=t,i=$('<input type="hidden" name="'+t+'" data-c-validator data-ng-model="field.value"><\/input>'),e.field.isRequired===!0&&i.attr("data-validators","[required]"),n.append(i),n}function v(){var r=$('<div class="file-upload-info" data-ng-show="showChooseImageButton() === false"><\/div>'),n=$('<div class="file-name-content"><\/div>'),t,i,u;return r.append(n),t=$('<div class="file-name"><\/div>'),n.append(t),i=$('<div class="file-label name" data-ng-bind="field.fileName"><\/div>'),f.setTranslateAttribute(i,!1),t.append(i),n.append('<a class="file-remove-icon" href="javascript:;" data-ng-click="removeImage()" data-auto-focus="true"><i icon="remove-small"><\/i><\/a>'),u=e.field.isRequired===!0?"Replace":"Remove/Replace",n.append('<a class="file-remove-label" href="javascript:;" data-ng-click="removeImage()" data-auto-focus="true">'+u+"<\/a>"),r}function h(){var n,i;l()!==!1&&(n=a(),$(o).append(n),i=v(),$(o).append(i),$(o).append('<label data-c-validation-message data-form="form" data-field-name="'+e.field.inputName+'"><\/label>'),t(o.contents())(s))}function y(){h()}var s=null;if(typeof e.field=="undefined")throw new Error('"field" is undefined');if(typeof e.form=="undefined")throw new Error('"form" is undefined');if(typeof e.field.fileType!="number")throw new Error('"field.fileType" is not a number');e.$watch(function(){return e.field},function(n,t){n!==t&&h()});e.showChooseImageButton=function(){return e.field.value===null||typeof e.field.value=="undefined"};e.removeImage=function(){e.field.value=null;e.field.fileName=""};e.openImageChooserDialog=function(){r.openDialog({template:"js/shared/common/directives/inputField/inputFieldImageChooser/imageChooserView.html",controller:["$scope","listerService",function(t,f){function o(n){t.backgroundImages=n;t.backgroundImagesListerStatus=i.listerStatus.RENDERING}function s(){n.loadDialogData(e.field.fileType).then(function(n){t.actions=n.actions;t.backgroundImagesListerSettings=n.listerSettings;o(n.lister);t.isLoading=!1})}function h(n){var i=r.getRowById(t.backgroundImages.rows,n.rowId);if(e.field.value=i.id.toString(),e.field.fileName=i.title,t.closeThisDialog(),typeof e.onAction!="undefined")e.onAction({action:"image-selected",data:{fileId:i.id}})}function c(){r.openDialog({template:"js/shared/common/directives/inputField/inputFieldImageChooser/uploadImageView.html",controller:["$scope",function(f){function s(){n.loadNewImageDescription(e.field.fileType).then(function(n){f.detailsSection=n;f.isLoading=!1})}f.isLoading=!0;f.pendingAction=!1;f.detailsSection=null;f.validateImage=function(t,i){if(f.detailsSection.imageFile.validatorName!==t)throw new Error("Unknown validator name : "+t);return n.validateImage(e.field.fileType,i)};f.onUploadStatusChange=function(n,t){if(typeof n=="undefined")throw"Action is undefined";switch(n){case"status-changed":switch(t.status){case i.uploadStatus.IN_PROGRESS:(f.detailsSection.imageTitle.value===null||typeof f.detailsSection.imageTitle.value=="undefined")&&(f.detailsSection.imageTitle.value=t.fileName)}break;default:throw"Unknown action: "+n;}};f.save=function(s){s.submit(function(){u.showProcessingMessage();f.pendingAction=!0;var s=r.prepareSectionsForAjax([],f.detailsSection);n.createNewImage(e.field.fileType,s).then(function(n){f.pendingAction=!1;f.closeThisDialog();u.showSuccessMessage();t.backgroundImagesListerStatus=i.listerStatus.LOADING;o(n)})})};s()}]})}t.isLoading=!0;t.pendingAction=!1;t.backgroundImages=null;t.backgroundImagesListerStatus=i.listerStatus.LOADING;t.backgroundImagesListerSettings=f.getListerSettings();t.actions=r.getModalListerActions();t.handleAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"new-image":c();break;case"lister-item-selected":h(t);break;default:throw"Unknown action: "+n;}};s()}]})};y()}}}]);angular.module("sharedElements").directive("cInputFieldInt",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{dependsOn:"=",revalidateOnChange:"=",field:"=",form:"=",size:"@",validationFunction:"&?"},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.field===null)return!1;if(f.field.type!==r.fieldType.INT)throw new Error('"field.type" should be "INT"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof f.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');return!0}function s(){var h,r,s,a,v;if(c()!==!1){if(h=t.getUniqueName(f.field.name,f.form),f.field.inputName=h,r=$(document.createElement("input")),r.attr("name",h),r.addClass("form-control"),r.attr("type","text"),r.attr("data-auto-focus","true"),r.attr("data-ng-model","field.value"),r.attr("data-ng-disabled","field.isEnabled === false"),r.attr("data-c-validator",""),r.attr("data-data-type","integer"),typeof f.dependsOn!="undefined"&&r.attr("data-depends-on","dependsOn"),typeof f.revalidateOnChange!="undefined"&&r.attr("data-revalidate-on-change","revalidateOnChange"),i.setValidators(r,["dataType"],f.field),typeof f.size!="undefined"&&f.size!==""){if(isNaN(f.size))throw new Error('"scope.size" is not number');r.attr("size",f.size)}f.field.validatorName!==null&&r.attr("data-async-validation-function","validate(value)");f.field.debounce!==null&&r.attr("data-debounce",f.field.debounce);f.field.step!==null&&(r.keydown(l),r.attr("autocomplete","off"));u.setFormFieldAttribute(r,f.field);f.field.prefix!==null||f.field.suffix!==null?(s=$(document.createElement("div")),s.addClass("input-group"),f.field.prefix!==null&&(a=$(document.createElement("span")),a.addClass("input-group-addon"),a.attr("data-ng-bind","field.prefix"),s.append(a)),s.append(r),f.field.suffix!==null&&(v=$(document.createElement("span")),v.addClass("input-group-addon"),v.attr("data-ng-bind","field.suffix"),s.append(v)),$(e).append(s)):$(e).append(r);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+h+'"><\/label>');n(e.contents())(o)}}function l(n){var t=Number.parseInt(f.field.value,10);switch(n.which){case 38:n.preventDefault();n.stopPropagation();Number.isNaN(t)===!1&&f.$apply(function(){var n=t+f.field.step;f.field.max&&f.field.max<n&&(n=f.field.max);f.field.value=n.toString()});break;case 40:n.preventDefault();n.stopPropagation();Number.isNaN(t)===!1&&f.$apply(function(){var n=t-f.field.step;f.field.max&&f.field.min>n&&(n=f.field.min);f.field.value=n.toString()})}}function a(){s()}var o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&s()});f.validate=function(n){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return f.validationFunction({name:f.field.validatorName,value:n})};a()}}}]);angular.module("sharedElements").directive("cInputFieldLinkDestination",function(){return{restrict:"A",scope:{field:"=",fields:"=",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldLinkDestination/inputFieldLinkDestination.html",controller:["$scope","constants","helpService",function(n,t,i){function o(){if(n.field.type!==t.fieldType.LINK_DESTINATION)throw new Error('"field.type" should be "LINK_DESTINATION"');r=n.field.targetBlank.value;u();n.field.destination.value.indexOf(n.field.destinationPrefixes.library)!==-1&&(n.field.folderOrDocumentSelector.libraryId=parseInt(n.field.destination.value.substring(n.field.destinationPrefixes.library.length)))}function u(){var t=[];t.push(n.field.destination);t.push(n.field.targetBlank);n.field.fileSelector!==null&&t.push(n.field.fileSelector);n.field.customLink!==null&&t.push(n.field.customLink);n.field.librarySelector!==null&&t.push(n.field.librarySelector);n.field.folderOrDocumentSelector!==null&&t.push(n.field.folderOrDocumentSelector);n.field.permissions!==null&&t.push(n.field.permissions);n.field.value=i.getProcessedFields(t)}function e(t){return n.field===null?!1:n.field.destination===null?!1:n.field.destination.value===n.field.destination.defaultValue?!1:n.field.destination.value.indexOf(t)===-1?!1:!0}var f=2,r="false";n.showTargetBlankField=function(){return n.field===null?!1:n.field.targetBlank===null?!1:n.field.destination===null?!1:n.field.destination.value===n.field.destination.defaultValue?!1:"undefined"!=typeof _.find(n.field.targetBlankDestinationPrefixes,function(n){return e(n)})};n.showLibraryField=function(){return e(n.field.destinationPrefixes.library)};n.showFolderAndDocumentField=function(){return n.showLibraryField()&&parseInt(n.field.librarySelector.value)===f};n.showFileSelectorField=function(){return e(n.field.destinationPrefixes.file)};n.showCustomLinkField=function(){return e(n.field.destinationPrefixes.customLink)};n.isVisible=function(){return n.field!==null};n.handleFileUploadAction=function(n){if(n===undefined)throw"Action is unspecified";switch(n){case"status-changed":break;default:throw"Unknown action: "+n;}};n.$watch(function(){return n.field===null?null:n.field.destination===null?null:n.field.destination.value},function(i,e){i!==e&&i!==null&&(i.indexOf(n.field.destinationPrefixes.library)!==-1?(n.field.folderOrDocumentSelector.libraryId=parseInt(i.substring(n.field.destinationPrefixes.library.length)),parseInt(n.field.librarySelector.value)===f?n.field.folderOrDocumentSelector.documentType===t.documentType.FILE?(r=n.field.targetBlank.value,n.field.targetBlank.value="true",n.field.targetBlank.isEnabled=!1):n.field.targetBlank.isEnabled=!0:n.field.targetBlank.isEnabled=!0):(n.field.targetBlank.value=r,n.field.targetBlank.isEnabled=!0),u())},!1);n.$watch(function(){return n.field.targetBlank.value},function(i,e){i!==null&&i!==e&&(parseInt(n.field.librarySelector.value)===f?n.field.folderOrDocumentSelector.documentType===t.documentType.FILE:r=n.field.targetBlank.value);u()},!1);n.field.fileSelector!==null&&n.$watch(function(){return n.field.fileSelector.value},function(){u()},!1);n.field.folderOrDocumentSelector!==null&&n.$watch(function(){return n.field.folderOrDocumentSelector.value},function(i,f){i===null&&(n.field.targetBlank.value=r,n.field.targetBlank.isEnabled=!0);i!==null&&i!==f&&(n.field.folderOrDocumentSelector.documentType===t.documentType.FILE?(n.field.targetBlank.isEnabled=!1,n.field.targetBlank.value="true"):(n.field.targetBlank.value=r,n.field.targetBlank.isEnabled=!0));u()},!1);n.field.librarySelector!==null&&n.$watch(function(){return n.field.librarySelector.value},function(i,e){i!==null&&i!==e&&(parseInt(i)===f?n.field.folderOrDocumentSelector.documentType===t.documentType.FILE?(n.field.targetBlank.value="true",n.field.targetBlank.isEnabled=!1):(n.field.targetBlank.value=r,n.field.targetBlank.isEnabled=!0):(n.field.targetBlank.value=r,n.field.targetBlank.isEnabled=!0));u()},!1);n.field.customLink!==null&&n.$watch(function(){return n.field.customLink.value},function(){u()},!1);n.field.permissions!==null&&n.$watch(function(){return n.field.permissions.value},function(){u()},!1);o()}]}});angular.module("sharedElements").directive("cInputFieldMultiSelect",["$compile","helpService","constants","testService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"="},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.field===null)return!1;if(f.field.type!==i.fieldType.MULTISELECT&&f.field.type!==i.fieldType.MULTISELECT_WITH_STRING_ID)throw new Error('"field.type" should be "MULTISELECT" or "MULTISELECT_WITH_STRING_ID"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof f.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');if(typeof f.field.listItems=="undefined")throw new Error('"field.listItems" is undefined');if(Object.prototype.toString.call(f.field.listItems)!=="[object Array]")throw new Error('"field.listItems" is not array');return!0}function s(){var p,s,w,h,a,y,b,i,k;c()!==!1&&(f.field.listItems=_.map(f.field.listItems,function(n){var t=_.find(f.field.value,function(t){return t===n.value});return n.isSelected=typeof t!="undefined"&&t!==null,n}),p=t.getUniqueName(f.field.name,f.form),f.field.inputName=p,l()&&(s=$(document.createElement("div")),s.addClass("checkbox"),s.addClass("checkbox-controls"),w=$(document.createElement("span")),w.addClass("checkbox-controls-label colon"),w.text("Check"),s.append(w),h=$(document.createElement("a")),h.attr("href","javascript:;"),h.attr("data-ng-click","checkAll()"),h.text("all"),s.append(h),a=$(document.createElement("a")),a.attr("href","javascript:;"),a.attr("data-ng-click","checkNone()"),a.text("none"),s.append(a),n(h)(o),n(a)(o),$(e).append(s)),r.setFormFieldAttribute($(e),f.field),angular.forEach(f.field.listItems,function(i,r){var v=$(document.createElement("div")),h,l,s,c,y,a,p;v.addClass("checkbox");h=$(document.createElement("label"));l=$(document.createElement("span"));l.addClass("switch");s=$(document.createElement("input"));s.attr("type","checkbox");t.setTestAttribute(s,"form-field-item",i.text,i.value);s.attr("data-ng-model","field.listItems["+r+"].isSelected");s.attr("data-ng-change","itemChanged()");s.attr("data-ng-disabled","isDisabled(field.listItems["+r+"])");l.append(s);n(s)(o);l.append($(document.createElement("i")));h.append(l);c=$(document.createElement("span"));c.addClass("format-wrap");i.isHtml===!0?c.html(i.text):c.text(i.text);u.setTranslateAttribute(c,f.field.translate===!0||i.translate===!0);h.append(c);i.label!==null&&(y=$('<span data-c-label data-label="field.listItems['+r+'].label"><\/span>'),h.append(y),n(y)(o));typeof i.description!="undefined"&&i.description!==null&&(a=$('<span class="checkbox-description"><\/span>'),i.description.isHtml?a.html(i.description.value):a.text(i.description.value),h.append(a));typeof i.inlineHelp!="undefined"&&i.inlineHelp!==null&&i.inlineHelp!==""&&(p=$('<label data-c-inline-help data-message="field.listItems['+r+'].inlineHelp"><\/label>'),n(p)(o),h.append(p));v.append(h);$(e).append(v)}),y=[],f.field.isRequired===!0&&y.push("multiSelectRequired"),b=v(),b!==null&&y.push("multiSelectInvalidValues"),y.length>0&&(i=$(document.createElement("input")),i.attr("type","hidden"),i.attr("name",p),i.attr("data-c-validator",""),i.attr("data-validators","["+y.join(",")+"]"),i.attr("data-ng-model","getValidatorValue()"),i.attr("data-ng-model-options","{ getterSetter: true }"),b!==null&&i.attr("data-invalid-values",b),$(e).append(i),n(i)(o),k=$('<label data-c-validation-message data-form="form" data-field-name="'+p+'"><\/label>'),$(e).append(k),n(k)(o)))}function l(){var n,t;if(f.field.listItems===null||f.field.listItems.length<=2)return!1;for(n=0;n<f.field.listItems.length;n++)if(t=f.field.listItems[n],t.incompatibleValues!==null)return!1;return!0}function a(){s()}function v(){var n=[],t=_.filter(f.field.listItems,function(n){return n.isInvalid===!0});return(_.each(t,function(t){n.push(t.value)}),n.length===0)?null:"["+n.join()+"]"}var o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.getValidatorValue=function(){return f.field.value===null||f.field.value.length===0?null:"["+f.field.value.join()+"]"};f.itemChanged=function(){var n=_.filter(f.field.listItems,function(n){return n.isSelected===!0});f.field.value=_.map(n,function(n){return n.value})};f.isDisabled=function(n){if(n.isEnabled===!1||f.field.isEnabled===!1)return!0;if(n.incompatibleValues===null||n.incompatibleValues.length===0)return!1;var t=f.field.value,i=_.find(n.incompatibleValues,function(n){return typeof _.find(t,function(t){return n===t})!="undefined"});return typeof i!="undefined"};f.checkAll=function(){var n,t;if(f.field.isEnabled!==!1){for(n=0;n<f.field.listItems.length;n++)t=f.field.listItems[n],t.isEnabled&&(t.isSelected=!0);f.itemChanged()}};f.checkNone=function(){var n,t;if(f.field.isEnabled!==!1){for(n=0;n<f.field.listItems.length;n++)t=f.field.listItems[n],t.isEnabled&&(t.isSelected=!1);f.itemChanged()}};f.$watch(function(){return f.field},function(n,t){n!==t&&s()});a()}}}]);angular.module("sharedElements").directive("cInputFieldNestedTable",["$compile","constants","helpService","validationService","$q","testService",function(n,t,i,r,u,f){return{restrict:"A",scope:{field:"=",form:"="},link:function(e,o){function d(){c!==null&&c.$destroy();c=e.$new();o.html("")}function g(){if(d(),e.field===null)return!1;if(e.field.type!==t.fieldType.NESTED_TABLE)throw new Error('"field.type" should be "NESTED_TABLE"');if(typeof e.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof e.field.name!="string")throw new Error('"field.name" is not string');if(typeof e.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof e.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');return!0}function a(){var r,u,s,l,t,i,h;g()!==!1&&(r=$(document.createElement("div")),r.addClass("table-responsive"),r.attr("data-ng-if","field.lister.rows.length !== 0"),u=$(document.createElement("div")),u.addClass("table-responsive-actions n-actions"),u.attr("data-ng-class",'{"no-rows": field.lister.rows.length === 0}'),s=$(document.createElement("div")),s.addClass("n-actions-left"),l="New Entry",t=$(document.createElement("a")),t.attr("href","javascript:;"),t.addClass("btn btn-default"),t.attr("data-ng-click","loadNewRow()"),t.text(l),f.setAttribute(t,"action",l),f.setAttribute(t,"instance",e.field.label.value),s.append(t),u.append(s),$(o).append(u),i=$(document.createElement("div")),i.attr("data-c-lister",""),i.attr("data-lister","field.lister"),i.attr("data-settings","settings"),i.attr("data-lister-status","listerStatus"),i.attr("data-on-action","handleAction(action, data)"),i.attr("data-ng-show","field.lister.rows.length > 0"),r.append(i),$(o).append(r),h=$(document.createElement("div")),h.addClass("table-responsive-validation"),h.append('<span data-c-custom-validator data-form="form" data-validation-function="validateRows()"><\/span>'),$(o).append(h),n(o.contents())(c))}function nt(){angular.forEach(e.field.lister.rows,function(n){var i=n.isInvalid;angular.forEach(n.cells,function(n){var r=_.find(e.field.fields,function(t){return n.name===t.name});if(typeof r=="undefined"||r===null)throw new Error('Field "'+n.name+'" not found');if(r.isRequired===!0)switch(r.type){case t.fieldType.TEXT:case t.fieldType.TEXTAREA:case t.fieldType.URL:(n.rawValue===null||n.rawValue==="")&&(i=!0);break;case t.fieldType.INT:case t.fieldType.DOUBLE:case t.fieldType.CURRENCY:case t.fieldType.PERCENT:case t.fieldType.DATE:case t.fieldType.DATETIME:n.rawValue===null&&(i=!0);break;case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:n.rawValue!=="true"&&(i=!0);break;case t.fieldType.PICKLIST:parseInt(n.rawValue)===t.dropdownSpecialValues.PLEASE_SELECT_0&&(i=!0)}});n.isInvalid=i})}function v(){var n,t;e.field.value={deletedRowIds:p,newRows:[],updatedRows:[]};n=_.filter(e.field.lister.rows,function(n){return n.id<0});e.field.value.newRows=$.map(n,function(n){return{id:null,fields:$.map(n.cells,function(n){return{name:n.name,value:n.rawValue}})}});t=_.filter(e.field.lister.rows,function(n){return n.id>0});e.field.value.updatedRows=$.map(t,function(n){return{id:n.id,fields:$.map(n.cells,function(n){return{name:n.name,value:n.rawValue}})}});nt()}function w(n){n.contextMenuActions=[{label:"Edit",name:"edit",link:null,targetBlank:!1,clientVisibilityLevel:null},{label:"Delete",name:"delete",link:null,targetBlank:!1,clientVisibilityLevel:null}]}function tt(){var u=i.getListerState(e.field.lister),r=_.sortBy(e.field.lister.rows,function(n){return n.id}),n;if(u.sortBy!=="ID"){if(n=_.find(e.field.fields,function(n){return n.name===u.sortBy}),typeof n=="undefined"||n===null)throw new Error("Sort by field not found: "+u.sortBy);r=_.sortBy(r,function(i){var r=_.find(i.cells,function(t){return t.name===n.name}),u;if(typeof r=="undefined"||r===null)throw new Error('Cell "'+n.name+'" not found in row with ID '+i.id);switch(n.type){case t.fieldType.TEXT:case t.fieldType.TEXTAREA:case t.fieldType.URL:return r.rawValue===null||r.rawValue.trim()===""?"":r.rawValue;case t.fieldType.INT:case t.fieldType.DOUBLE:case t.fieldType.CURRENCY:case t.fieldType.PERCENT:case t.fieldType.DATE:case t.fieldType.DATETIME:return r.rawValue===null?null:parseFloat(r.rawValue.replace(",","."));case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:return r.rawValue==="true";case t.fieldType.PICKLIST:if(r.rawValue===null||parseInt(r.rawValue)===t.dropdownSpecialValues.PLEASE_SELECT_0)return"";if(u=_.find(n.listItems,function(n){return n.value===r.rawValue}),(typeof u=="undefined"||u===null)&&(u=_.find(n.deletedListItems,function(n){return n.value===r.rawValue}),typeof u=="undefined"||u===null))throw new Error('Field "'+n.name+'" list item "'+r.rawValue+'" not found');return u.text;case t.fieldType.FILE_UPLOAD:default:throw new Error('Field "'+n.name+'" type "'+n.type+'" is not supported');}})}u.sortReverse&&(r=r.reverse());e.field.lister.rows=r}function l(){tt();e.listerStatus=t.listerStatus.RENDERING;a()}function it(n){var f=9,e=1.5,o=500/f*e,s=360/f*e,h=200/f*e,i,u,r;if(n.length<h)return n.indexOf("\n")>-1||n.indexOf("\r")>-1?t.listerCellFormatType.WRAP_ON_LINE_BREAK:t.listerCellFormatType.NO_WRAP;if(i=0,n.indexOf("\n")>-1||n.indexOf("\r")>-1)for(u=n.split(/\r|\n/),r=0;r<u.length;r++)i<u[r].length&&(i=u[r].length);else i=n.length;return i>o?t.listerCellFormatType.AUTO_WRAP_LARGE_WIDTH:i>s?t.listerCellFormatType.AUTO_WRAP_MEDIUM_WIDTH:t.listerCellFormatType.AUTO_WRAP_SMALL_WIDTH}function b(n,r){var u={icon:null,materialIcon:t.materialIconType.NONE,link:null,name:n.name,targetBlank:!1,value:null,formatType:t.listerCellFormatType.NO_WRAP,linkAction:null},f;switch(n.type){case t.fieldType.TEXT:case t.fieldType.TEXTAREA:u.rawValue=r;u.value=r;break;case t.fieldType.INT:u.rawValue=r;r!=null&&(u.value=i.formatInteger(r));break;case t.fieldType.DOUBLE:u.rawValue=r;r!=null&&(u.value=i.formatNumber(r));break;case t.fieldType.CURRENCY:u.rawValue=r;r!=null&&(u.value=i.formatCurrency(r));break;case t.fieldType.PERCENT:u.rawValue=r;r!=null&&(u.value=i.formatPercent(r));break;case t.fieldType.DATE:u.rawValue=r;r!=null&&(u.value=r===""?"":i.formatLongDate(r));break;case t.fieldType.DATETIME:u.rawValue=r;r!=null&&(u.value=r===""?"":i.formatLongTime(r));break;case t.fieldType.URL:u.rawValue=r;u.value=r;u.link=r;break;case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:u.rawValue=r;r==="true"&&(u.icon=t.iconType.CHECKED);break;case t.fieldType.PICKLIST:if(u.rawValue=r,parseInt(r)===t.dropdownSpecialValues.PLEASE_SELECT_0)u.value=null;else{if(f=_.find(n.cleanListItems,function(n){return n.value===r}),(typeof f=="undefined"||f===null)&&(f=_.find(n.deletedListItems,function(n){return n.value===r}),typeof f=="undefined"||f===null))throw new Error('Field "'+n.name+'" list item "'+u.rawValue+'" not found');u.value=f.text}}return(n.type===t.fieldType.TEXT||n.type===t.fieldType.TEXTAREA||n.type===t.fieldType.URL)&&u.value!==null&&u.value.length!==0&&(u.formatType=it(u.value)),u}function k(n){i.openDialog({template:"js/shared/common/directives/inputField/inputFieldNestedTable/nestedTableRowEditorView.html",controller:["$scope",function(t){t.pendingAction=!1;t.field=n;t.title=h?"New Entry":"Edit Entry";t.save=function(i){i.submit(function(){var i={id:s,cells:[],isInvalid:!1};w(i);angular.forEach(n.fields,function(n){var t=b(n,n.value);i.cells.push(t)});h===!1&&(e.field.lister.rows=_.reject(e.field.lister.rows,function(n){return n.id===s}));e.field.lister.rows.push(i);v();l();t.pendingAction=!1;t.closeThisDialog()})}}]})}function rt(){angular.forEach(e.field.fields,function(n){switch(n.type){case t.fieldType.PICKLIST:n.cleanListItems=$.extend(!0,[],n.listItems)}});angular.forEach(e.field.lister.rows,function(n,t){w(n);angular.forEach(n.cells,function(n,i){var r=_.find(e.field.fields,function(t){return n.name===t.name}),u;if(typeof r=="undefined"||r===null)throw new Error('Field "'+n.name+'" not found');u=typeof n.rawValue!="undefined"?n.rawValue:n.value;e.field.lister.rows[t].cells[i]=b(r,u)})});e.field.lister.contextMenuColumnName=e.field.lister.columns[0].name;l();v();a()}e.isProcessing=!1;e.listerStatus=t.listerStatus.LOADING;e.settings={enabledFixedHeader:!1,enabledSorting:!0,enabledBulkOperations:!1};var s,y=-1,h=!1,p=[],c=null;if(typeof e.field=="undefined")throw new Error('"field" is undefined');if(typeof e.form=="undefined")throw new Error('"form" is undefined');e.loadNewRow=function(){h=!0;s=y;y--;var n=$.extend(!0,{},e.field);angular.forEach(n.fields,function(n){switch(n.type){case t.fieldType.TEXT:case t.fieldType.TEXTAREA:case t.fieldType.INT:case t.fieldType.DOUBLE:case t.fieldType.CURRENCY:case t.fieldType.PERCENT:case t.fieldType.DATE:case t.fieldType.DATETIME:case t.fieldType.URL:case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:n.value=null;break;case t.fieldType.PICKLIST:n.value=t.dropdownSpecialValues.PLEASE_SELECT_0.toString()}});k(n)};e.handleAction=function(n,i){if(n===undefined)throw"Action is unspecified";switch(n){case"edit":h=!1;s=i.rowId;var r=$.extend(!0,{},e.field),u=_.find(r.lister.rows,function(n){return n.id===s});if(typeof u=="undefined"||u===null)throw new Error("Row not found: "+s);angular.forEach(r.fields,function(n){var r,i,f;n.value=_.find(u.cells,function(t){return t.name===n.name}).rawValue;switch(n.type){case t.fieldType.PICKLIST:r=_.find(n.cleanListItems,function(t){return t.value===n.value});i=$.extend(!0,[],n.cleanListItems);(typeof r=="undefined"||r===null)&&(f=_.find(n.formattedDeletedListItems,function(t){return t.value===n.value}),i.push($.extend(!0,{},f)),i=_.sortBy(i,function(n){return n.value===t.dropdownSpecialValues.PLEASE_SELECT_0.toString()?"":n.text}));n.listItems=i}});k(r);break;case"delete":s=i.rowId;e.field.lister.rows=_.reject(e.field.lister.rows,function(n){return n.id===s});s>0&&p.push(s);v();l();break;case"refresh-lister":l();break;default:throw"Unknown action: "+n;}};e.validateRows=function(){var n=u.defer(),t=_.find(e.field.lister.rows,function(n){return n.isInvalid===!0});return n.resolve(r.getCustomAsyncValidatorResult({success:t===undefined,message:t===undefined?"":"One or more rows above contain invalid data. Please delete or edit the marked rows to continue."})),n.promise};e.$watch(function(){return e.field},function(n,t){n!==t&&a()});rt()}}}]);angular.module("sharedElements").directive("cInputFieldOrganizationDomain",["$compile","helpService","constants","testService",function(n,t,i,r){return{restrict:"A",scope:{field:"=",form:"=",validationFunction:"&"},link:function(u,f,e){function h(){o!==null&&o.$destroy();o=u.$new();f.html("")}function c(){if(h(),u.field===null)return!1;if(u.field.type!==i.fieldType.ORGANIZATION_DOMAIN)throw new Error('"field.type" should be "ORGANIZATION_DOMAIN"');if(typeof u.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof u.field.length!="number")throw new Error('"field.length" is not number');return!0}function s(){var h,l,a,s,v,i;c()!==!1&&(e.$addClass("form-group"),h=$(document.createElement("div")),h.addClass("col-sm-3 control-label"),l=$(document.createElement("label")),a=$(document.createElement("span")),u.field.label.isHtml===!0?a.html(u.field.label.value):a.text(u.field.label.value),l.append(a),u.field.isRequired&&l.addClass("required"),h.append(l),s=$(document.createElement("div")),s.addClass("col-sm-9 control-value"),v=t.getUniqueName(u.field.name,u.form),u.field.inputName=v,i=$(document.createElement("input")),i.attr("name",v),i.addClass("form-control autoselect"),i.attr("maxlength",u.field.length),i.attr("type","text"),i.attr("data-ng-model","field.value"),r.setFormFieldAttribute(i,u.field),i.attr("data-c-validator",""),i.attr("data-validators",u.field.isRequired?"[required,formatDomain,maxLength]":"[formatDomain,maxLength]"),i.attr("data-max-length",u.field.length),i.attr("data-async-validation-function","validate(value)"),s.append(i),s.append('<label data-c-validation-message data-form="form" data-field-name="'+v+'"><\/label>'),$(f).append(h),$(f).append(s),n(f.contents())(o))}function l(){s()}var o=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');if(typeof u.form=="undefined")throw new Error('"form" is undefined');if(typeof u.validationFunction=="undefined")throw new Error('"validationFunction" is undefined');u.validate=function(n){return u.validationFunction({domain:n})};u.$watch(function(){return u.field},function(n,t){n!==t&&s()});l()}}}]);angular.module("sharedElements").directive("cInputFieldPassword",["$compile","helpService","validationService","constants",function(n,t,i,r){return{restrict:"A",scope:{dependsOn:"=",field:"=",form:"=",validationFunction:"&?",size:"@"},link:function(u,f){function c(){o!==null&&o.$destroy();o=u.$new();f.html("")}function l(){if(c(),u.field===null)return!1;if(u.field.type!==r.fieldType.PASSWORD)throw new Error('"field.type" should be "PASSWORD"');if(typeof u.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof u.field.length!="number")throw new Error('"field.length" is not number');return!0}function h(){if(l()!==!1){if(s=t.getUniqueName(u.field.name,u.form),u.field.inputName=s,e=$(document.createElement("input")),e.attr("name",s),e.addClass("form-control autoselect"),e.attr("maxlength",u.field.length),e.attr("type","password"),e.attr("data-auto-focus","true"),e.attr("data-ng-model","field.value"),e.attr("data-ng-disabled","field.isEnabled === false"),typeof u.dependsOn!="undefined"&&e.attr("data-depends-on","dependsOn"),e.attr("data-c-validator",""),e.attr("data-data-type","text"),e.attr("data-max-length",u.field.length),i.setValidators(e,["dataType","maxLength"],u.field),typeof u.size!="undefined"&&u.size!==""){if(isNaN(u.size))throw new Error('"scope.size" is not number');e.attr("size",u.size)}u.field.validatorName!==null&&e.attr("data-async-validation-function","validate(value)");$(f).append(e);$(f).append('<label data-c-validation-message data-form="form" data-field-name="'+s+'"><\/label>');n(f.contents())(o)}}function a(){h()}var o=null,e=null,s=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');if(typeof u.form=="undefined")throw new Error('"form" is undefined');u.$watch(function(){return u.field},function(n,t){n!==t&&h()});u.validate=function(n){if(typeof u.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return u.validationFunction({name:u.field.validatorName,value:n})};a()}}}]);angular.module("sharedElements").directive("cInputFieldPasswordSetup",function(){return{restrict:"A",scope:{settings:"=",password:"=",passwordConfirmation:"=",historyCheckFunction:"&",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldPasswordSetup/inputFieldPasswordSetup.html",controller:["$scope","$q","$timeout",function(n,t,i){n.validatePassword=function(i){var f,r,u;return n.settings.passwordValidationRegularExpression!==null&&(f=new RegExp(n.settings.passwordValidationRegularExpression),f.test(i)===!1)?(r=t.defer(),r.resolve({success:!1,message:n.settings.passwordValidationErrorMessage}),r.promise):n.settings.enforcePasswordHistory?n.historyCheckFunction({password:i}):(u=t.defer(),u.resolve({success:!0}),u.promise)};n.confirmPassword=function(i){var r=t.defer();return n.password===i?r.resolve({success:!0}):r.resolve({success:!1,message:"The passwords don't match"}),r.promise};n.$watch(function(){return n.password},function(t,r){t!==r&&i(function(){n.form.passwordConfirmation.$validate()})})}]}});angular.module("sharedElements").directive("cInputFieldPdfTemplateSelector",function(){return{restrict:"A",scope:{field:"=",form:"=",onAction:"&?"},templateUrl:"js/shared/common/directives/inputField/inputFieldPdfTemplateSelector/inputFieldPdfTemplateSelector.html",controller:["$scope","helpService","$q","validationMessageService","validationService",function(n,t,i,r,u){function f(){if(n.field!==null){var t=n.field.value;n.currentStatus=t!==null&&t!==""?n.status.SELECTED:n.status.NOT_SELECTED;n.buttonLabel=n.field.chooseButtonLabel}}n.buttonLabel="";n.isProcessing=!1;n.status={NOT_SELECTED:1,SELECTED:2};n.currentStatus=n.status.NOT_SELECTED;n.validate=function(){var f=i.defer(),t={message:null,success:!1};return n.field.value!==null&&n.field.value!==""?t.success=!0:t.message=r.required,f.resolve(u.getCustomAsyncValidatorResult(t)),f.promise};n.contextMenuAction=function(t){if(t===undefined)throw"Action is unspecified";switch(t){case"edit-template":n.onAction({action:"edit-template",data:{id:n.field.value}});break;case"replace-template":n.onAction({action:"replace-template",data:null});break;default:throw"Unknown action: "+t;}};n.chooseTemplate=function(){n.onAction({action:"choose-template",data:null})};n.getLabel=function(){return t.getUiStringValue(n.field.label)};n.getDescription=function(){return n.field===null?"":t.getUiStringValue(n.field.description)};n.getThumbnailUrl=function(){return"File/"+n.field.previewImageId};f();n.$watch(function(){return n.field===null?null:n.field.value===null?null:n.field.value},function(t,i){t!==i&&(n.currentStatus=t===null||t===""?n.status.NOT_SELECTED:n.status.SELECTED)})}]}});angular.module("sharedElements").directive("cInputFieldPercent",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",size:"@"},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.field===null)return!1;if(f.field.type!==r.fieldType.PERCENT)throw new Error('"field.type" should be "PERCENT"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');return!0}function s(){var s,h,l,r;if(c()!==!1){if(s=$(document.createElement("div")),s.addClass("input-group"),h=$(document.createElement("span")),h.addClass("input-group-addon"),h.text("%"),l=t.getUniqueName(f.field.name,f.form),f.field.inputName=l,r=$(document.createElement("input")),r.addClass("form-control"),r.attr("type","text"),r.attr("name",l),r.attr("ng-model","field.value"),r.attr("data-c-validator",""),r.attr("data-data-type","double"),u.setFormFieldAttribute(r,f.field),i.setValidators(r,["dataType"],f.field),typeof f.size!="undefined"&&f.size!==""){if(isNaN(f.size))throw new Error('"scope.size" is not number');r.attr("size",f.size)}s.append(r);s.append(h);$(e).append(s);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+l+'"><\/label>');n(e.contents())(o)}}function l(){s()}var o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&s()});l()}}}]);angular.module("sharedElements").directive("cInputFieldPermissions",function(){return{restrict:"A",scope:{field:"=",fields:"=",onAction:"&?",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldPermissions/inputFieldPermissions.html",controller:["$scope","constants","helpService","securityService","$q",function(n,t,i,r,u){function c(){if(n.field.type!==t.fieldType.PERMISSIONS)throw new Error('"field.type" should be "PERMISSIONS"');s();o()}function s(){var t=[];t.push(n.field.permissions);switch(e()){case f.GROUPS:n.field.groups!==null&&t.push(n.field.groups);break;case f.RULES:n.field.rules!==null&&t.push(n.field.rules)}n.field.value=i.getProcessedFields(t)}function h(t,i,u){var f=n.field.usage,e=null;return typeof t=="undefined"&&(t=null),typeof i!="undefined"&&i!==null&&(f=i.usage,e=i.entityName),r.httpPost("data/Common/Permissions/Get",{entity:n.field.entityName,entityPermissions:n.field,linkDestination:t,parentEntity:e,parentEntityPermissions:i,usage:f,usageParameters:u})}function e(){return parseInt(n.field.permissions.value)}function o(){var t=u.defer();e()===f.RULES?t.resolve(n.field.rules.value!==null):t.resolve(!0);t.promise.then(function(t){if(t===!0){var i=typeof n.onAction!="undefined"?n.onAction({action:"get-matching-users",data:{getPermissions:h}}):h();i.then(function(t){n.usersWithAccess=t.shortMessage;n.field.description=t.longMessage})}})}var f={EVERYONE:1,GROUPS:2,RULES:3,NO_ONE:4};n.usersWithAccess=null;n.usersWithAccessInlineHelp="Excludes Users with admin access to the current module.";n.isVisible=function(){return n.field===null?!1:!0};n.handleAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"rule-selector-add-rule":return r.httpGet("data/Common/Permissions/AddRule",{fieldName:t});default:throw"Unknown action "+n;}};n.showGroupsField=function(){return n.field.permissions===null?!1:n.field.groups===null?!1:e()===f.GROUPS};n.showRulesField=function(){return n.field.permissions===null?!1:n.field.rules===null?!1:e()===f.RULES};n.$watchCollection(function(){var t=[n.field.permissions.value,n.field.groups.value];return n.field.rules!==null&&t.push(n.field.rules.value),t},function(n,t){n!==null&&n!==t&&_.isEqual(n,t)!==!0&&(s(),o())},!1);n.fields!==null&&n.$watchCollection(function(){return _.map(n.fields,function(n){return n.value})},function(n,t){n!==t&&o()},!1);c()}]}});angular.module("sharedElements").directive("cInputFieldPicklist",["$compile","helpService","constants","testService",function(n,t,i,r){return{restrict:"A",scope:{field:"=",form:"=",onChange:"&?",isDisabled:"=?",revalidateOnChange:"=",validationFunction:"&?",onAction:"&?",showValidationMessage:"=?",dependsOn:"="},link:function(u,f){function s(){e!==null&&e.$destroy();e=u.$new();f.html("")}function h(){if(s(),u.field===null)return!1;if(u.field.type!==i.fieldType.PICKLIST&&u.field.type!==i.fieldType.PICKLIST_WITH_STRING_ID&&u.field.type!==i.fieldType.DEAL_CLOSE_REASON&&u.field.type!==i.fieldType.DEAL_COLLABORATOR_ORG)throw new Error('"field.type" should be "PICKLIST" or "PICKLIST_WITH_STRING_ID" or "DEAL_CLOSE_REASON" OR "DEAL_COLLABORATOR_ORG"');if(typeof u.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof u.field.name!="string")throw new Error('"field.name" is not string');if(typeof u.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof u.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof u.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof u.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');if(typeof u.field.picklistIsCreationAllowed=="undefined"&&(u.field.picklistIsCreationAllowed=!1),typeof u.field.picklistIsCreationAllowed!="boolean")throw new Error('"field.picklistIsCreationAllowed" is not boolean');if(u.field.picklistIsCreationAllowed&&u.onAction===undefined)throw new Error('"field.picklistIsCreationAllowed" is true and onAction is undefined');if(u.field.value==null&&u.field.defaultValue==null)throw new Error('"field.value" and "field.defaultValue" are empty');return!0}function o(){var o,s,i;h()!==!1&&(o=$(document.createElement("div")),o.addClass("select"),s=t.getUniqueName(u.field.name,u.form),u.field.inputName=s,i=$(document.createElement("div")),i.addClass("form-control smart-picklist"),i.text("Loading..."),i.attr("data-c-smart-picklist",""),i.attr("data-value","field.value"),i.attr("data-list-items","field.listItems"),i.attr("data-name","[[exec[[field.inputName]]exec]]"),i.attr("data-form","form"),i.attr("data-is-required","[[exec[[field.isRequired]]exec]]"),i.attr("data-is-disabled","[[exec[[isDisabled === true || field.isEnabled === false]]exec]]"),i.attr("data-invalid-values","getInvalidValues()"),i.attr("data-auto-focus","true"),i.attr("data-set-translate","field.translate"),i.attr("data-translate-group-name","field.translateGroupName"),i.attr("data-ng-disabled","isDisabled === true || field.isEnabled === false"),u.field.picklistPlaceholder&&i.attr("data-placeholder","field.picklistPlaceholder"),u.field.picklistIsCreationAllowed&&(i.attr("data-create-new-function","createFunction(value)"),i.attr("data-create-new-text","field.picklistCreateNewText")),r.setFormFieldAttribute(i,u.field),typeof u.field.validatorName!="undefined"&&u.field.validatorName!==null&&i.attr("data-validator-name","[[exec[[field.validatorName]]exec]]"),typeof u.revalidateOnChange!="undefined"&&i.attr("data-revalidate-on-change","revalidateOnChange"),typeof u.onChange!="undefined"&&i.attr("data-on-change","onChange()"),u.field.defaultValue!=null&&i.attr("data-default-value","[[exec[[field.defaultValue]]exec]]"),i.attr("data-on-validation","handleValidation(value)"),i.attr("data-depends-on","dependsOn"),o.append(i),$(f).append(o),$(f).append('<label data-ng-if="showValidationMessage === true" data-c-validation-message data-form="form" data-field-name="[[exec[[field.inputName]]exec]]"><\/label>'),n(f.contents())(e))}function c(){o()}var e=null;if(typeof u.field=="undefined")throw new Error('"field" is undefined');if(typeof u.form=="undefined")throw new Error('"form" is undefined');typeof u.showValidationMessage=="undefined"&&(u.showValidationMessage=!0);u.createFunction=function(n){u.onAction({action:"create-new",data:n})};u.getInvalidValues=function(){var n=[],t=_.filter(u.field.listItems,function(n){return n.isEnabled===!1||n.isInvalid===!0});return(_.each(t,function(t){n.push(t.value)}),n.length===0)?undefined:"["+n.join()+"]"};u.$watch(function(){return u.field},function(n,t){n!==t&&o()});u.$watch(function(){return u.field.picklistIsCreationAllowed},function(n,t){n!==t&&o()});u.handleValidation=function(n){if(typeof u.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return u.validationFunction({name:u.field.validatorName,value:n})};c()}}}]);angular.module("sharedElements").directive("cInputFieldRadioButtonList",["$compile","helpService","constants","testService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",validationFunction:"&?",revalidateOnChange:"="},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.field===null)return!1;if(f.field.type!==i.fieldType.RADIO_BUTTON_LIST)throw new Error('"field.type" should be "RADIO_BUTTON_LIST"');if(typeof f.field.value=="undefined")throw new Error('"field.value" is undefined');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof f.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');if(typeof f.field.listItems=="undefined")throw new Error('"field.listItems" is undefined');if(Object.prototype.toString.call(f.field.listItems)!=="[object Array]")throw new Error('"field.listItems" is not Array');return!0}function s(){var w,b,a,y,p,s,v,k,d,h,g;if(c()!==!1){var nt=t.getUniqueName(f.field.name,f.form),i=null,l=null;if(r.setFormFieldAttribute($(e),f.field),f.field.listItems.length===1)i=f.field.listItems[0],w=$(document.createElement("span")),i.isHtml===!0?w.text(i.text):w.html(i.text),l=$(document.createElement("div")),l.addClass("radio"),l.append(w),i.description!==null&&(b=$('<span class="radio-extra"><\/span>'),i.description.isHtml?b.html(i.description.value):b.text(i.description.value),l.append(b)),$(e).append(l);else for(a=0;a<f.field.listItems.length;a++)l=$(document.createElement("div")),l.addClass("radio"),y=$(document.createElement("label")),p=$(document.createElement("span")),p.addClass("switch"),i=f.field.listItems[a],s=$(document.createElement("input")),s.attr("type","radio"),s.attr("name",nt),t.setTestAttribute(s,"form-field-item",f.field.listItems[a].text),s.attr("data-auto-focus","true"),s.attr("data-ng-model","field.value"),s.attr("data-ng-value","field.listItems["+a+"].value"),s.attr("data-ng-disabled","field.isEnabled === false || field.listItems["+a+"].isEnabled === false"),p.append(s),p.append($(document.createElement("i"))),y.append(p),v=$(document.createElement("span")),v.addClass("format-wrap"),i.isHtml===!0?(v.html(i.text),(f.field.translate||i.translate)&&u.setIsolateAttribute(v)):v.text(i.text),u.setTranslateAttribute(v,f.field.translate||i.translate),y.append(v),i.description!==null&&(k=$('<span class="radio-extra"><\/span>'),i.description.isHtml?k.html(i.description.value):k.text(i.description.value),y.append(k)),l.append(y),$(e).append(l),n(s)(o);d=t.getUniqueName(f.field.name,f.form);f.field.inputName=d;h=$(document.createElement("input"));h.attr("type","hidden");h.attr("name",d);h.attr("data-ng-model","field.value");h.attr("data-c-validator","");h.attr("data-ng-attr-data-validators","[required]");typeof f.revalidateOnChange!="undefined"&&h.attr("data-revalidate-on-change","revalidateOnChange");f.field.validatorName!==null&&h.attr("data-async-validation-function","validate(value)");$(e).append(h);n(h)(o);g=$('<label data-c-validation-message data-form="form" data-field-name="'+d+'"><\/label>');$(e).append(g);n(g)(o)}}function l(){s()}var o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&s()});f.validate=function(n){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return f.validationFunction({name:f.field.validatorName,value:n})};l()}}}]);angular.module("sharedElements").directive("cInputFieldResourcePicklist",function(){return{restrict:"A",scope:{field:"=",form:"="},templateUrl:"js/shared/common/directives/inputField/inputFieldResourcePicklist/inputFieldResourcePicklist.html",controller:["$scope","inputFieldResourceService","helpService",function(n,t,i){n.resourceField=null;n.descriptionField=null;var r=null;n.loadNewResource=function(u,f){var e=f;i.openDialog({template:"js/shared/common/directives/inputField/inputFieldResourcePicklist/resourceEditorView.html",controller:["$scope",function(u){function f(){r===null?(u.isLoading=!0,t.loadSection().then(function(n){r=n;u.resourceSection=$.extend(!0,{},r);u.resourceSection.resourceField.value=e;u.isLoading=!1})):(u.resourceSection=$.extend(!0,{},r),u.resourceSection.resourceField.value=e)}u.resourceSection=null;u.isLoading=!1;u.pendingAction=!1;u.validateResourceName=function(n,i){if(n!=="permission-name-is-unique")throw new Error('"'+n+'" unknown validator name.');return t.isResourceNameAvailable(i)};u.saveResource=function(r){r.submit(function(){u.pendingAction=!0;var f=i.prepareSectionsForAjax([],u.resourceSection);t.createResource(f).then(function(t){n.field.listItems=t.listItems;n.field.value=t.entityId;u.pendingAction=!1;u.closeThisDialog()},i.handleError({invalidData:function(){r.validate().then(function(){u.pendingAction=!1})}}))})};f()}]})}}]}});angular.module("sharedElements").service("inputFieldResourceService",["securityService","helpService",function(n,t){this.loadSection=function(){return n.httpGet("data/Settings/Resource/LoadSection")};this.createResource=function(i){return n.httpPost("data/Settings/Resource/CreateResource",{sections:t.getProcessedSections(i)})};this.isResourceNameAvailable=function(t){return n.httpGet("data/Settings/Resource/IsResourceNameAvailable",{resourceName:t})}}]);angular.module("sharedElements").directive("cInputFieldSelector",["$compile","helpService","$timeout","testService","translationHelperService","validationService","validationMessageService","$q",function(n,t,i,r,u,f,e,o){return{restrict:"A",scope:{field:"=",form:"=",validationFunction:"&?"},link:function(s,h,c){function pt(){t.isMobileDevice()===!1&&(t.recalculateDropdownMenuPosition(nt,a,!0,!1,0,null),l.focus())}function wt(n){var u=_.find(s.field.listItems,function(n){return n.isDefault===!0&&n.isSelected===!0}),r,t;typeof u!="undefined"&&(u.isSelected=!1);r=_.filter(s.field.listItems,function(t){return t.value===n.data.item.value});r.length===0?(t=n.data.item,t.text=t.name,t.isSelected=!0,t.groupName=null,t.translate=!1,s.field.listItems.push(t),p.searchValue=""):$.each(r,function(n,t){t.isSelected=!0});i(function(){rt(ht(p.searchValue,s.field.listItems));pt();ut();y.focus()})}function et(){var t=$(window).height(),i=l.offset().top,r=w.offset().top,u=t-(i-r)-100,n=u+"px";l.css("max-height",n);a.data("max",n)}function ot(){a.css("minWidth",$(h).width()+"px")}function st(n){it.push(n)}function bt(){return it.length>0}function ht(n,i){var i,r,o;if(n===null||n==="")return i;if(i=_.filter(i,function(t){return t.search(n)}),s.field.isCreationAllowed===!0){for(var e=1,f="new_"+e,h=typeof _.find(s.field.listItems,function(n){return n.isNew===!0&&n.value==f})!="undefined";h;)e++,f="new_"+e,h=typeof _.find(s.field.listItems,function(n){return n.isNew===!0&&n.value==f})!="undefined";r=t.getListItem({value:f,text:"Create new tag: "+u.wrapTextInVar('<span class="new-value skin-color-link skin-color-link-background">'+n+"<\/span>",u.variableName.VALUE,!1),name:n,isDefault:!1,isSelected:!1,isEnabled:!0,translate:!0,isNew:!0,isHtml:!0,groupName:""});t.initializeSearachableListItem(r);o=_.find(i,function(t){return t.getTranslatedText().toLowerCase()===n.toLowerCase()});typeof o!="undefined"?o.isSelected===!0&&(r.text="Tag already selected",r.isEnabled=!1,i.push(r)):i.push(r)}return i}function kt(){tt!==null&&i.cancel(tt);tt=i(function(){it=[]},yt)}function dt(){p!==null&&p.$destroy();p=s.$new();h.html("");a!==null&&a.remove()}function gt(){var h=v.currentIndex+ft>v.items.length?v.items.length:v.currentIndex+ft,o=null,n,r,i,f,e;for(v.currentIndex!==0&&(o=v.items[v.currentIndex-1].groupName),v.currentIndex;v.currentIndex<h;v.currentIndex++){if(v.cancel===!0)return;n=v.items[v.currentIndex];n.groupName!==null&&(o!==n.groupName&&(v.currentIndex!==0&&l.append('<li class="item-divider"><\/li>'),n.groupName!==""&&(r=$(document.createElement("li")),r.addClass("item-header"),r.text(n.groupName),u.setTranslateAttribute(r,s.translateGroupName),l.append(r))),o=n.groupName);i=$(document.createElement("li"));n.materialIconValue!==null?i.addClass("item-icon"):i.addClass("item");u.setTranslateAttribute(i,s.setTranslate===!0||n.translate===!0);n.isEnabled===!0?i.click({item:n},wt):i.addClass("disabled");v.activeItem!==undefined&&v.activeItem!==null&&v.activeItem===n.value&&(i.addClass("active"),i.bind("touchmove",function(n){n.preventDefault();n.stopPropagation()}));n.materialIconValue!==null&&(f=$(document.createElement("i")),f.addClass(t.getMaterialIconClass(n.materialIconValue)),f.addClass("icon-size-20"),i.append(f));e=$(document.createElement("span"));n.isHtml===!0?e.html(n.text):e.text(n.text);i.append(e);t.setTestAttribute(i,"smart-picklist-item",n.text);l.append(i)}}function ct(){var n,r,t;if(v.cancel!==!0){if(v.currentIndex>=v.items.length){l.focusin();v.items.length===0&&(r=p.searchValue===""?"No items":"No items matched",t=$(document.createElement("li")),t.addClass("item disabled"),t.html("<span>"+r+"<\/span>"),t.click(function(n){n.preventDefault();n.stopPropagation()}),l.append(t));d===!0&&(n=l.find(".active"),n.length>0&&l.scrollTop(n.offset().top-l.offset().top+l.scrollTop()));d=!1;return}d===!0&&(n=l.find(".active"),n.length>0&&(l.scrollTop(n.offset().top-l.offset().top+l.scrollTop()),d=!1));gt();i(function(){ct()},vt)}}function rt(n){v.cancel=!0;n=_.filter(n,function(n){return n.isSelected===!1&&n.isDefault===!1});n===null&&a!==null&&a.remove();b!==null&&b.css("display","block");l!==null&&(l.remove(),l=$(document.createElement("ul")),l.addClass("dropdown-menu-items"),l.attr("tabindex","0"),l.keydown(lt),t.isMobileDevice()===!0?l.css("max-height",a.data("max")):l.css("max-height",a.data("max-height-desktop")),w.append(l));var i=_.find(n,function(n){return n.isSelected===!1&&n.isDefault===!1&&n.isEnabled===!0});typeof i!="undefined"&&i!==null&&(i=i.value);v={currentIndex:0,items:n,cancel:!1,activeItem:i};ct()}function ni(n){t.initializeSearachableListItem(n);var i=null;s.field.value!==null&&(i=s.field.value.length>0&&typeof s.field.value[0]=="object"?_.find(s.field.value,function(t){return t.value==n.value}):_.find(s.field.value,function(t){return t==n.value}));n.isSelected=typeof i!="undefined"&&i!==null;n.isDefault=n.value==s.field.defaultValue;(s.field.value===null||s.field.value.length===0)&&n.isDefault===!0&&(n.isSelected=!0)}function lt(n){var i,e,o,u,s,c,f;if(n.which===27){t.closeDropdownMenus();h.focus();return}if(i=l.find(".active"),i.length!==0){var r=l.offset().top,a=l.scrollTop(),v=l.height();switch(n.which){case 38:if(n.preventDefault(),n.stopPropagation(),e=i.prevAll(".item:not(.disabled)"),e.length===0)return;o=e.first();i.removeClass("active");o.addClass("active");u=o.offset().top;r<u&&r+v>u||l.scrollTop(u-r+a);break;case 40:if(n.preventDefault(),n.stopPropagation(),s=i.nextAll(".item:not(.disabled)"),s.length===0)return;c=s.first();i.removeClass("active");c.addClass("active");f=c.offset().top;r<f&&r+v>f||l.scrollTop(f-r+a);break;case 9:n.preventDefault();n.stopPropagation();i.click();h.focus();break;case 13:n.preventDefault();n.stopPropagation();i.click();h.focus()}}}function ti(){if(t.isMobileDevice()!==!1){var i=h.closest(t.scrollableElementsSelector),n=$(window).scrollTop();k=i.length>0?h.offset().top-n:n}}function at(){t.isMobileDevice()!==!1&&i(function(){if(!(k<=0)){var n=h.closest(t.scrollableElementsSelector);n.length>0?$(n[0]).scrollTop(k):$(window).scrollTop(k);k=0}},0)}function ii(n){kt();var i=s.field.listItems;switch(n.which){case 9:break;case 27:t.closeDropdownMenus();h.focus();break;case 37:case 38:n.preventDefault();n.stopPropagation();break;case 39:case 40:n.preventDefault();n.stopPropagation();break;case 13:n.preventDefault();n.stopPropagation();h.click();break;case 32:n.preventDefault();n.stopPropagation();bt()===!0?st(n.which):h.click();break;default:st(n.which)}}function ri(){et()}function ui(n){p.searchValue="";d=!0;s.field.listItems!==null&&(rt(s.field.listItems),t.isMobileDevice()===!1?ot():a.data("max-height-desktop",""));n.resolve()}function fi(){a!==null&&(t.isMobileDevice()===!1?(a.data("max-height-desktop",l.css("max-height")),ot(),b.css("display")!=="none"?y.focus():l.focus()):(a.focus(),et()))}function ei(){var o,c,e,d,ft,v,f,k,tt,rt,it;if(dt(),s.field!==null&&s.field.listItems!==null){s.field.listItems.forEach(n=>{ni(n)});ut();o=$('<div class="form-control smart-picklist smart-picklist-filter"><\/div>');o.attr("data-ng-disabled","field.isEnabled === false");c=$(document.createElement("div"));c.addClass("smart-picklist-filter-wrapper");e=$(document.createElement("div"));e.addClass("value-wrapper");h.append(o);nt=o;d=t.getUniqueName(s.field.name,s.form);s.field.inputName=d;s.label!==null&&typeof s.label!="undefined"&&s.label!==""&&(ft=$('<span class="inline-label">[[exec[[label]]exec]]: <\/span>'),e.append(ft));v=$(document.createElement("span"));v.addClass("selected-value");v.attr("data-ng-if","isDefaultSpecialItemSelected() === true");v.attr("data-ng-bind","getDefaultSpecialItemText()");e.append(v);f=$(document.createElement("span"));f.addClass("selected-item");f.attr("data-ng-if","isDefaultSpecialItemSelected() === false");f.attr("data-ng-repeat","item in getSelectedItems()");f.attr("data-ng-click","removeSelectedItem(item);$event.stopPropagation();");k=$(document.createElement("span"));k.addClass("selected-item-label");k.attr("data-ng-class","{'"+u.doNotTranslateClassName()+"' : isDoNotTranslateItem(item)}");k.html("[[exec[[item.text]]exec]]");f.append(k);tt=$(document.createElement("span"));tt.addClass("selected-item-remove");tt.html('<i icon="remove-small"><\/i>');f.append(tt);indicatorWrapper=$(document.createElement("div"));indicatorWrapper.addClass("picklist-indicators");caretElement=$('<span class="caret"><\/span');indicatorWrapper.append(caretElement);e.append(f);e.keydown(ii);c.append(e);c.append(indicatorWrapper);o.append(c);(s.field.isRequired===!0||typeof s.field.validatorName!="undefined"&&s.field.validatorName!==null)&&($(o).append('<input type="hidden" name="'+d+'" data-ng-model="field.value" data-c-validator data-async-validation-function="validate(value)" />'),$(h).append('<label data-c-validation-message data-form="form" data-field-name="'+d+'"><\/label>'));a=$(document.createElement("div"));a.addClass("dropdown-menu");a.data("max","100%");a.data("max-height-desktop","");a.attr("data-close-on-inside-click","false");r.setAttribute(a,"instance",s.name);i(function(){var n=t.getTestAttributes($(h));n!==null&&$.each(n,function(){a.attr(this.name+"-items",this.value)})});rt=$(document.createElement("div"));rt.addClass("dropdown-menu-overlay");it=$(document.createElement("div"));it.addClass("dropdown-menu-close");it.append('<i icon="remove"><\/i>');w=$(document.createElement("div"));w.addClass("dropdown-menu-content");u.setTranslateAttributeBasedOnParent(w,h);b=$(document.createElement("div"));b.addClass("search-panel");y!==null&&(y.remove(),y.off("focusin"),y.off("keydown"));y=$(document.createElement("input"));y.addClass("form-control");y.attr("data-close-on-inside-click","false");y.attr("type","text");y.attr("maxlength","25");y.attr("data-ng-model","searchValue");s.field.isCreationAllowed===!0&&y.attr("placeholder","Start typing to find or create Tag");y.keydown(lt);y.focusin(ti);s.label!==null&&typeof s.label!="undefined"&&s.label!==""?r.setAttribute(y,"smart-picklist-search-field",s.label):r.setAttribute(y,"smart-picklist-search-field",s.name);$(h).on("dropdownclosed",at);b.append(y);l=$(document.createElement("ul"));l.addClass("dropdown-menu-items");w.append(b);w.append(l);a.append(rt);a.append(it);a.append(w);a.appendTo($("body"));n(a)(p);n(h.contents())(p);g={actionElement:nt,menuElement:a,beforeCallback:ui,afterCallback:fi,preventOpen:s.field.isEnabled===!1||s.field.listItems===null};t.initializeDropdown(g)}}function oi(){c.$addClass("select");c.$set("tabindex","0");r.setFormFieldAttribute(h,s.field);ei()}function ut(){var t=_.filter(s.field.listItems,function(n){return n.isSelected===!0&&n.isDefault===!1}),n=[];$.each(t,function(t,i){if(_.some(n,function(n){return n.value===i.value})!==!0){var r=typeof i.isNew!="undefined"&&i.isNew===!0,u={value:r===!0?i.text:i.value,isNew:r};n.push(u)}});s.field.value=n}var vt=20,ft=50,yt=650,p=null,nt=null,g=null,a=null,w=null,l=null,b=null,y=null,v={currentIndex:0,items:null,cancel:!1,activeItem:null},k=0,d=!0,tt=null,it=[];s.searchValue="";s.$watch(function(){return p.searchValue},function(n,t){if(n!==t){var i=s.field.listItems;i!==null&&rt(ht(n,i))}});s.$watch(function(){return s.field.listItems},function(n,t){n!==t&&g!==null&&(g.preventOpen=s.field.listItems===null)});s.$on("$destroy",function(){a!==null&&a.remove();$(h).off("dropdownclosed",at);$(window).unbind("resize",ri)});s.removeSelectedItem=function(n){if(t.closeDropdownMenus(),n.isNew===!0)s.field.listItems=_.reject(s.field.listItems,function(t){return t.value===n.value});else{var i=_.filter(s.field.listItems,function(t){return t.isSelected===!0&&t.value===n.value});$.each(i,function(n,t){t.isSelected=!1})}_.filter(s.field.listItems,function(n){return n.isSelected===!0}).length===0&&$.each(s.field.listItems,function(n,t){t.isSelected=t.isDefault});ut()};s.isDefaultSpecialItemSelected=function(){var n=_.find(s.field.listItems,function(n){return n.isDefault===!0});return typeof n!="undefined"&&n.isSelected===!0};s.getDefaultSpecialItemText=function(){var n=_.find(s.field.listItems,function(n){return n.isDefault===!0});return typeof n!="undefined"&&n.text};s.isDoNotTranslateItem=function(n){return!(s.field.translate===!0||n.translate===!0)};s.validate=function(n){var t=o.defer(),i,r;if(s.field.isRequired===!0&&s.isDefaultSpecialItemSelected()===!0)return t.resolve(f.getCustomAsyncValidatorResult({success:!1,message:e.required})),t.promise;if(typeof s.field.validatorName!="undefined"&&s.field.validatorName!==null)switch(s.field.validatorName){case"selector-invalid-value":if(i=_.map(n,function(n){return n.value}),r=_.filter(s.field.listItems,function(n){return n.isEnabled===!1&&i.includes(n.value)===!0}),r.length>0)return t.resolve(f.getCustomAsyncValidatorResult({success:!1,message:e.invalidMultiselectValue})),t.promise;break;default:return s.validationFunction({name:s.field.validatorName,value:n})}return t.resolve(f.getCustomAsyncValidatorResult({success:!0})),t.promise};s.getSelectedItems=function(){var t=_.filter(s.field.listItems,function(n){return n.isSelected===!0&&n.isDefault===!1}),n=[];return $.each(t,function(t,i){_.some(n,function(n){return n.value===i.value})!==!0&&n.push(i)}),n};oi()}}}]);angular.module("sharedElements").directive("cInputFieldText",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",revalidateOnChange:"=",validationFunction:"&?",size:"@",validateEmptyValue:"="},link:function(f,e){function l(){s!==null&&s.$destroy();s=f.$new();e.html("")}function a(){if(l(),f.field===null)return!1;if(f.field.type!==r.fieldType.TEXT)throw new Error('"field.type" should be "TEXT"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof f.field.length!="number")throw new Error('"field.length" is not number');if(typeof f.field.autoComplete=="undefined")throw new Error('"field.autoComplete" is undefined');if(typeof f.field.autoComplete!="boolean")throw new Error('"field.autoComplete" is not Boolean');return!0}function c(){var r,c,l;if(a()!==!1){if(h=t.getUniqueName(f.field.name,f.form),f.field.inputName=h,o=$(document.createElement("input")),o.attr("name",h),o.addClass("form-control autoselect"),o.attr("maxlength",f.field.length),o.attr("type","text"),o.attr("data-ng-model","field.value"),o.attr("data-auto-focus","true"),o.attr("data-ng-disabled","field.isEnabled === false"),f.field.debounce!==null&&o.attr("data-debounce",f.field.debounce),u.setFormFieldAttribute(o,f.field),f.field.autoComplete===!1&&t.setAutocompleteAttribute(o),o.attr("data-c-validator",""),o.attr("data-data-type","text"),o.attr("data-max-length",f.field.length),typeof f.revalidateOnChange!="undefined"&&o.attr("data-revalidate-on-change","revalidateOnChange"),i.setValidators(o,["dataType","maxLength"],f.field),typeof f.size!="undefined"&&f.size!==""){if(isNaN(f.size))throw new Error('"scope.size" is not number');o.attr("size",f.size)}typeof f.validateEmptyValue!="undefined"&&o.attr("data-validate-empty-value",f.validateEmptyValue);f.field.validatorName!==null&&o.attr("data-async-validation-function","validate(value)");f.field.attributePlaceholder!==null&&o.attr("placeholder",f.field.attributePlaceholder);f.field.prefix!==null||f.field.suffix!==null?(r=$(document.createElement("div")),r.addClass("input-group"),f.field.prefix!==null&&(c=$(document.createElement("span")),c.addClass("input-group-addon"),c.text(f.field.prefix),r.append(c)),r.append(o),f.field.suffix!==null&&(l=$(document.createElement("span")),l.addClass("input-group-addon"),l.text(f.field.suffix),r.append(l)),$(e).append(r)):$(e).append(o);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+h+'"><\/label>');f.inputElement=o;$(e).append('<div data-c-placeholder data-field="field" data-input-element="inputElement"><\/div>');n(e.contents())(s)}}function v(){c()}var s=null,o=null,h=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&c()});f.validate=function(n){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return f.validationFunction({name:f.field.validatorName,value:n})};v()}}}]);angular.module("sharedElements").directive("cInputFieldTextarea",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",dependsOn:"=",validationFunction:"&?"},link:function(f,e){function c(){s!==null&&s.$destroy();s=f.$new();e.html("")}function l(){if(c(),f.field===null)return!1;if(f.field.type!==r.fieldType.TEXTAREA)throw new Error('"field.type" should be "TEXTAREA"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof f.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');return!0}function h(){var r,h,c;if(l()!==!1){if(textareaWrapper=$(document.createElement("div")),textareaWrapper.addClass("layout-scroll rounded-wrapper-input"),r=t.getUniqueName(f.field.name,f.form),f.field.inputName=r,o=$(document.createElement("textarea")),o.attr("name",r),o.addClass("form-control"),o.attr("type","text"),o.attr("data-ng-model","field.value"),o.attr("maxlength",f.field.length),o.attr("data-ng-disabled","field.isEnabled === false"),o.attr("data-c-validator",""),o.attr("data-data-type","textArea"),o.attr("data-auto-focus","true"),u.setFormFieldAttribute(o,f.field),typeof f.dependsOn!="undefined"&&o.attr("data-depends-on","dependsOn"),f.field.attributePlaceholder!==null&&o.attr("placeholder",f.field.attributePlaceholder),h=["dataType"],typeof f.field.length!="undefined"&&f.field.length!==null){if(typeof f.field.length!="number")throw new Error('"field.length" is not number');o.attr("data-max-length",f.field.length);h.push("maxLength")}c=4;typeof f.field.rows!="undefined"&&f.field.rows!==null&&(c=f.field.rows);o.attr("rows",c);i.setValidators(o,h,f.field);f.field.validatorName!==null&&o.attr("data-async-validation-function","validate(value)");textareaWrapper.append(o);$(e).append(textareaWrapper);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+r+'"><\/label>');f.inputElement=o;$(e).append('<div data-c-placeholder data-field="field" data-input-element="inputElement"><\/div>');n(e.contents())(s)}}function a(){h()}var s=null,o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&h()});f.validate=function(n){if(typeof f.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return f.validationFunction({name:f.field.validatorName,value:n})};a()}}}]);angular.module("sharedElements").directive("cInputFieldThumbnail",["$compile","helpService","constants",function(n,t,i){return{restrict:"A",scope:{field:"=",form:"="},link:function(r,u){function a(){f!==null&&f.$destroy();f=r.$new();u.html("")}function v(){if(a(),r.field===null)return!1;if(r.field.type!==i.fieldType.THUMBNAIL)throw new Error('"field.type" should be "THUMBNAIL"');if(typeof r.field.value=="undefined")throw new Error('"field.value" is undefined');if(typeof r.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof r.field.name!="string")throw new Error('"field.name" is not string');if(typeof r.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof r.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');return!0}function y(){var v,ht,ct,lt,d,g,nt,yt,h,it,y,rt,ut,p,c,o,ft,et,w,a,b,s,ot,k,st,l,vt;r.field.thumbnail.listItems===null&&(v=[],ht=$.extend({},r.field.defaultThumbnailListItem),ht.iconLink=r.field.defaultThumbnailLink,v.push(ht),r.field.generatedThumbnailFileId!==null&&(ct=$.extend({},r.field.generatedThumbnailListItem),ct.iconLink="File/"+r.field.generatedThumbnailFileId,v.push(ct)),r.field.customThumbnailFileId!==null&&(lt=$.extend({},r.field.customThumbnailListItem),lt.iconLink="File/"+r.field.customThumbnailFileId,v.push(lt)),r.field.thumbnail.listItems=v);switch(parseInt(r.field.thumbnail.value)){case i.thumbnailType.GENERATED:r.field.generatedThumbnailFileId===null&&(r.field.thumbnail.value=i.thumbnailType.DEFAULT.toString());break;case i.thumbnailType.CUSTOM:r.field.customThumbnailFileId===null&&(r.field.thumbnail.value=i.thumbnailType.DEFAULT.toString())}for(e.html(""),d=$(document.createElement("div")),d.addClass("thumbnail-field"),g=$(document.createElement("div")),g.addClass("thumbnail-field-row"),nt=$(document.createElement("div")),nt.addClass("thumbnail-field-cell"),yt=r.field.thumbnail.listItems.length!==1,h=0;h<r.field.thumbnail.listItems.length;h++){var u=r.field.thumbnail.listItems[h],tt=t.getUniqueName(r.field.name+"_"+h,r.form),at=$(document.createElement("div"));at.addClass("thumbnail-field-item");it=$(document.createElement("div"));it.addClass("thumbnail-field-item-content");y=$(document.createElement("div"));y.addClass("thumbnail-field-item-body");rt=$(document.createElement("div"));rt.addClass("thumbnail-field-item-body-thumbnail-row");ut=$(document.createElement("div"));ut.addClass("thumbnail-field-item-body-thumbnail-cell");p=$(document.createElement("div"));p.addClass("thumbnail-field-item-body-thumbnail-content");u.thumbnailImage?(c=$(document.createElement("label")),c.attr("for",tt),o=$(document.createElement("div")),o.attr("data-c-thumbnail-image",""),u.useLongText&&o.attr("data-use-long-text","true"),o.attr("data-image","field.thumbnail.listItems["+h+"].thumbnailImage"),o.addClass("thumbnail-field-item-preview"),c.append(o),$(p).append(c)):u.iconLink!==null&&(c=$(document.createElement("label")),c.attr("for",tt),o=$(document.createElement("img")),o.attr("src",u.iconLink),o.addClass("thumbnail-field-item-preview"),c.append(o),$(p).append(c));$(ut).append(p);$(rt).append(ut);$(y).append(n(rt)(f));ft=$(document.createElement("div"));ft.addClass("thumbnail-field-item-body-action-row");et=$(document.createElement("div"));et.addClass("thumbnail-field-item-body-action-cell");w=$(document.createElement("div"));w.addClass("thumbnail-field-item-body-action-content");yt?(a=$(document.createElement("label")),a.addClass("thumbnail-field-item-body-action-label"),b=$(document.createElement("span")),b.addClass("switch"),s=$(document.createElement("input")),s.attr("type","radio"),s.attr("id",tt),s.attr("name",tt),s.attr("data-ng-model","field.thumbnail.value"),s.attr("data-ng-value","field.thumbnail.listItems["+h+"].value"),s.attr("data-ng-disabled","field.thumbnail.isEnabled === false || field.thumbnail.listItems["+h+"].isEnabled === false"),b.append(s),b.append($(document.createElement("i"))),a.append(b),ot=$(document.createElement("span")),ot.addClass("format-wrap"),u.isHtml===!0?a.append(ot.html(u.text)):a.append(ot.text(u.text)),$(w).append(a),n(s)(f)):(k=$(document.createElement("span")),k.addClass("format-wrap"),u.isHtml===!0?k.html(u.text):k.text(u.text),$(w).append(k));$(et).append(w);$(ft).append(et);$(y).append(ft);$(it).append(y);$(at).append(it);$(nt).append(at)}$(g).append(nt);$(d).append(g);$(e).append(d);st=t.getUniqueName(r.field.thumbnail.name,r.form);r.field.thumbnail.inputName=st;l=$(document.createElement("input"));l.attr("type","hidden");l.attr("name",st);l.attr("data-ng-model","field.thumbnail.value");l.attr("data-c-validator","");l.attr("data-ng-attr-data-validators","[required]");e.append(l);n(l)(f);vt=$('<label data-c-validation-message data-form="form" data-field-name="'+st+'"><\/label>');e.append(vt);n(vt)(f)}function p(){var y,g,nt,tt,u,o,l,a,k,v,it,h,w,d,c,rt;r.field.thumbnail.listItems===null&&(y=[],g=$.extend({},r.field.defaultThumbnailListItem),g.iconLink=r.field.defaultThumbnailLink,y.push(g),r.field.generatedThumbnailFileId!==null&&(nt=$.extend({},r.field.generatedThumbnailListItem),nt.iconLink="File/"+r.field.generatedThumbnailFileId,y.push(nt)),r.field.customThumbnailFileId!==null&&(tt=$.extend({},r.field.customThumbnailListItem),tt.iconLink="File/"+r.field.customThumbnailFileId,y.push(tt)),r.field.thumbnail.listItems=y);switch(parseInt(r.field.thumbnail.value)){case i.thumbnailType.GENERATED:r.field.generatedThumbnailFileId===null&&(r.field.thumbnail.value=i.thumbnailType.DEFAULT.toString());break;case i.thumbnailType.CUSTOM:r.field.customThumbnailFileId===null&&(r.field.thumbnail.value=i.thumbnailType.DEFAULT.toString())}for(e.html(""),u=0;u<r.field.thumbnail.listItems.length;u++){var s=r.field.thumbnail.listItems[u],b=t.getUniqueName(r.field.name+"_"+u,r.form),p=$(document.createElement("label"));p.addClass("card-input");p.attr("for",b);o=$(document.createElement("input"));o.attr("type","radio");o.attr("id",b);o.attr("name",b);o.attr("data-ng-model","field.thumbnail.value");o.attr("data-ng-value","field.thumbnail.listItems["+u+"].value");o.attr("data-ng-disabled","field.thumbnail.isEnabled === false || field.thumbnail.listItems["+u+"].isEnabled === false");p.append(o);l=$(document.createElement("span"));l.addClass("card-input-content thumbnail-radio");a=$(document.createElement("span"));a.addClass("card-input-thumbnail-wrapper");a.attr("data-ng-class","getThumbnailLayoutTypeClass()");s.thumbnailImage?(k=$(document.createElement("label")),k.attr("for",b),v=$(document.createElement("div")),v.attr("data-c-thumbnail-image",""),s.useLongText&&v.attr("data-use-long-text","true"),v.attr("data-image","field.thumbnail.listItems["+u+"].thumbnailImage"),v.addClass("thumbnail-field-item-preview"),k.append(v),$(a).append(k)):s.iconLink!==null&&(it=$(document.createElement("img")),it.attr("src",s.iconLink),$(a).append(it));l.append(a);h=$(document.createElement("span"));h.addClass("card-input-skeleton-wrapper");h.append('<span class="card-input-skeleton"><\/span>');h.append('<span class="card-input-skeleton" style="width: 70%;"><\/span>');h.append('<span class="card-input-skeleton" style="width: 70%;"><\/span>');h.append('<span class="card-input-skeleton" style="width: 50%;"><\/span>');l.append(h);w=$(document.createElement("span"));w.addClass("card-input-label format-wrap");s.isHtml===!0?w.html(s.text):w.text(s.text);l.append(w);p.append(l);e.append(n(p)(f))}d=t.getUniqueName(r.field.thumbnail.name,r.form);r.field.thumbnail.inputName=d;c=$(document.createElement("input"));c.attr("type","hidden");c.attr("name",d);c.attr("data-ng-model","field.thumbnail.value");c.attr("data-c-validator","");c.attr("data-ng-attr-data-validators","[required]");e.append(n(c)(f));rt=$('<label data-c-validation-message data-form="form" data-field-name="'+d+'"><\/label>');e.append(n(rt)(f))}function w(){var i=$("<div><b>Thumbnail Display<\/b><\/div>"),t;$(u).append(i);t=$('<div data-c-input-field-radio-button-list data-field="field.layoutType" data-form="form" class="input-group-horizontal"><\/div>');$(u).append(t);n(t)(f)}function c(){var i=$('<div data-c-input-field-file-upload data-field="field.file" data-form="form" data-validation-function="validate(name, value)" data-on-action="handleAction(action, data)"><\/div>'),t;$(u).append(i);r.field!==null&&r.field.file!==null&&r.field.file.description!==null&&r.field.file.description.value!==""&&(t=$("<div>"),t.addClass("help-block"),r.field.file.description.isHtml===!0?t.html(r.field.file.description.value):t.text(r.field.file.description.value),$(u).append(t));n(i)(f)}function h(){v()!==!1&&(e=$(document.createElement("div")),e.addClass("card-input-container thumbnail-radio"),$(u).append(e),r.field.layoutType!=null?(p(),c(),w()):(y(),c()),s())}function b(){h()}function s(){var n=[r.field.thumbnail.value,r.field.generatedThumbnailFileId,r.field.customThumbnailFileId];r.field.layoutType!=null&&n.push(r.field.layoutType.value);r.field.value=n}function l(n){switch(n){case o.FILL:return"fill";case o.FIT:return"fit";default:throw new Error("unexpected thumbnailDisplayLayoutType: "+layoutType);}}var f=null,e=null,o;if(typeof r.field=="undefined")throw new Error('"field" is undefined');if(typeof r.form=="undefined")throw new Error('"form" is undefined');o={DEFAULT:0,FIT:1,FILL:2};r.$watch(function(){return r.field},function(n,t){n!==t&&h()});r.$watch(function(){return r.field.thumbnail.listItems},function(n,t){n!==t&&h()});r.$watch(function(){return r.field.generatedThumbnailFileId},function(n,t){n!==t&&s()});r.$watch(function(){return r.field.customThumbnailFileId},function(n,t){n!==t&&s()});r.$watch(function(){return r.field.layoutType==null?null:r.field.layoutType.value},function(n,t){n!==t&&s()});r.$watch(function(){return r.field.thumbnail.value},function(n,t){n!==t&&s()});r.getThumbnailLayoutTypeClass=function(){var n=r.field.layoutType==null?r.field.selectedLayoutType:parseInt(r.field.layoutType.value);switch(n){case o.DEFAULT:return l(r.field.defaultLayoutType);case o.FILL:case o.FIT:return l(n);default:throw new Error("unexpected thumbnailDisplayLayoutType: "+n);}};r.handleAction=function(n,t){var u,f,e,o;if(n===undefined)throw"Action is unspecified";switch(n){case"status-changed":switch(t.status){case i.uploadStatus.DONE:u=[];f=$.extend({},r.field.defaultThumbnailListItem);r.field.defaultThumbnailLink&&(f.iconLink=r.field.defaultThumbnailLink);u.push(f);r.field.generatedThumbnailFileId!==null&&(e=$.extend({},r.field.generatedThumbnailListItem),e.iconLink="File/"+r.field.generatedThumbnailFileId,u.push(e));r.field.customThumbnailFileId=r.field.file.value;o=$.extend({},r.field.customThumbnailListItem);o.iconLink="File/"+r.field.customThumbnailFileId;u.push(o);r.field.thumbnail.listItems=u;r.field.thumbnail.value=i.thumbnailType.CUSTOM.toString();r.field.file.value=null}break;default:throw"Unknown action: "+n;}};b()}}}]);angular.module("sharedElements").directive("cInputFieldTranslation",["$compile","helpService","constants",function(n,t,i){return{restrict:"A",scope:{field:"=",fields:"=",onAction:"&",form:"=",validationFunction:"&?",pendingAction:"="},link:function(t,r,u){function o(){if(typeof t.pendingAction=="undefined")throw new Error('"pendingAction" is undefined');if(t.field.type!==i.fieldType.TRANSLATION)throw new Error('"field.type" should be "TRANSLATION"');if(typeof t.onAction=="undefined"||t.onAction===null)throw new Error('"onAction" must be defined');c();e()}function e(){var n;[].push(t.field.translation);t.field.value=t.field.translation.value;switch(t.field.translation.type){case i.fieldType.TEXTAREA:t.field.value=t.field.translation.value;break;case i.fieldType.WYSIWYG:n=$(document.createElement("div"));n.append(t.field.translation.value);t.field.value=$(n[0]).html()}}function s(){f!==null&&f.$destroy();f=t.$new();r.html("")}function h(){return(s(),t.field===null)?!1:!0}function c(){var l,c,s,e,a,v,y,o,p;if(h()!==!1){u.$addClass("translation-wysiwyg");l=$(document.createElement("field"));switch(t.field.translation.type){case i.fieldType.TEXTAREA:c=$(document.createElement("div"));c.attr("data-c-input-field-textarea","");c.attr("data-field","field.translation");c.attr("data-form","form");l.append(c);break;case i.fieldType.WYSIWYG:s=$(document.createElement("div"));s.attr("data-c-input-field-wysiwyg","");s.attr("data-field","field.translation");s.attr("data-validation-function","validate(name, value)");s.attr("data-form","form");l.append(s)}e=$(document.createElement("button"));e.attr("data-c-submit-button","");e.attr("data-is-primary","false");e.attr("data-pending-action","pendingAction");e.addClass("btn");e.addClass("btn-sm");e.attr("data-on-submit","translate()");e.attr("data-loader-text","Regenerating");e.text("Regenerate Machine Translation");a=$(document.createElement("span"));a.addClass("btn-group");a.append(e);v=$(document.createElement("span"));v.addClass("help-block");v.append(a);y=$(document.createElement("action"));y.append(v);o=$(document.createElement("div"));o.attr("data-c-input-field","");o.attr("data-field","field.translation");o.attr("data-form","form");o.append(l);o.append(y);p=$(document.createElement("div"));p.append(o);$(r).append(p);n(r.contents())(f)}}var f=null;t.translate=function(){var n=t.onAction({action:"get-translation",data:{pluralForm:t.field.pluralForm}});n.then(function(n){t.field.translation.value=n})};t.$watch(function(){return t.field.translation.value},function(n,t){n!==t&&e()},!1);t.validate=function(n,i){if(typeof t.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return t.validationFunction({name:n,value:i})};o()}}}]);angular.module("sharedElements").directive("cInputFieldUrl",["$compile","helpService","validationService","constants","testService",function(n,t,i,r,u){return{restrict:"A",scope:{field:"=",form:"=",size:"@"},link:function(f,e){function c(){s!==null&&s.$destroy();s=f.$new();e.html("")}function l(){if(c(),f.field===null)return!1;if(f.field.type!==r.fieldType.URL)throw new Error('"field.type" should be "URL"');if(typeof f.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof f.field.name!="string")throw new Error('"field.name" is not string');if(typeof f.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof f.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof f.field.length=="undefined")throw new Error('"field.length" is undefined');if(typeof f.field.length!="number")throw new Error('"field.length" is not number');if(typeof f.field.isEnabled=="undefined")throw new Error('"field.isEnabled" is undefined');if(typeof f.field.isEnabled!="boolean")throw new Error('"field.isEnabled" is not Boolean');return!0}function h(){if(l()!==!1){var r=t.getUniqueName(f.field.name,f.form);if(f.field.inputName=r,o=$(document.createElement("input")),o.attr("name",r),o.addClass("form-control"),o.attr("maxlength",f.field.length),o.attr("type","text"),o.attr("data-auto-focus","true"),o.attr("data-ng-model","field.value"),o.attr("data-ng-disabled","field.isEnabled === false"),o.attr("data-max-length",f.field.length),u.setFormFieldAttribute(o,f.field),f.field.autoComplete===!1&&t.setAutocompleteAttribute(o),o.attr("data-c-validator",""),typeof f.size!="undefined"&&f.size!==""){if(isNaN(f.size))throw new Error('"scope.size" is not number');o.attr("size",f.size)}i.setValidators(o,["url","maxLength"],f.field);$(e).append(o);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+r+'"><\/label>');f.inputElement=o;$(e).append('<div data-c-placeholder data-field="field" data-input-element="inputElement"><\/div>');n(e.contents())(s)}}function a(){h()}var s=null,o=null;if(typeof f.field=="undefined")throw new Error('"field" is undefined');if(typeof f.form=="undefined")throw new Error('"form" is undefined');f.$watch(function(){return f.field},function(n,t){n!==t&&h()});a()}}}]);angular.module("sharedElements").directive("cInputFieldUserEmail",function(){return{restrict:"A",scope:{field:"=",fields:"=",form:"=",validationFunction:"&"},templateUrl:"js/shared/common/directives/inputField/inputFieldUserEmail/inputFieldUserEmail.html",controller:["$scope","constants","helpService",function(n,t,i){if(n.field.type!==t.fieldType.USER_EMAIL)throw new Error('"field.type" should be "USER_EMAIL"');n.field.inputName=i.getUniqueName(n.field.name,n.form);n.validate=function(t){return n.validationFunction({email:t})};n.getLabel=function(){return i.getUiStringValue(n.field.label)};n.getDescription=function(){return i.getUiStringValue(n.field.description)}}]}});angular.module("sharedElements").directive("cInputFieldUserOrganizationPicklist",function(){return{restrict:"A",scope:{field:"=",emailField:"=",form:"=",associateDomainFunction:"&",loadOrganizationFunction:"&",createOrganizationFunction:"&",newEntityLabel:"@",noEntityLabel:"@",additionalNewEntityLabel:"@",loadAdditionalOrganizationFunction:"&",createAdditionalOrganizationFunction:"&",additionalNextNewEntityLabel:"@",loadAdditionalNextOrganizationFunction:"&",createAdditionalNextOrganizationFunction:"&"},templateUrl:"js/shared/common/directives/inputField/inputFieldUserOrganizationPicklist/inputFieldUserOrganizationPicklist.html",controller:["$scope","helpService","$timeout","pageSharedDataFactory","constants","validationService","securityService","translationHelperService",function(n,t,i,r,u,f,e,o){function s(){var i=n.emailField.value;return f.isUndefinedOrNullOrEmpty(i)?"":t.getDomainFromEmail(i)}function h(){var r=!1;t.openDialog({template:"js/shared/common/directives/inputField/inputFieldUserOrganizationPicklist/associateDomainEditorView.html",controller:["$scope","constants","pageSharedDataFactory",function(i,u,f){var e=_.find(n.field.listItems,function(t){return t.value==n.field.value}),h=s(),c=e.text;i.description="Email Domain <b>"+o.wrapTextInVar(h,o.variableName.EMAIL_DOMAIN,!1)+"<\/b> is not associated with the Organization <b>"+o.wrapTextInVar(c,o.variableName.ORGANIZATION_NAME,!1)+"<\/b>.";i.action=t.getAssociateDomainField(c);i.form=null;i.isLoading=!0;i.pendingAction=!1;i.save=function(t){t.submit(function(){f.showProcessingMessage();var t=i.action.value===u.associateDomainFieldType.ASSOCIATE_DOMAIN?e.value:null;n.associateDomainFunction({domain:h,entityId:t}).then(function(){if(t!==null){var u=_.find(n.field.listItems,function(n){return n.value===t});n.field.matchedOrganizationName=u.text}f.showSuccessMessage();r=!0;i.pendingAction=!1;i.closeThisDialog()})})}}],preCloseCallback:function(){return r===!1&&i(function(){n.field.value=n.field.defaultValue;n.field.matchedOrganizationName=null}),!0}})}n.getLabel=function(){return t.getUiStringValue(n.field.label)};n.getDescription=function(){return t.getUiStringValue(n.field.description)};n.isVisible=function(){if(typeof n.emailField=="undefined")return!1;if(n.field.type!==u.fieldType.USER_ORGANIZATION)throw new Error('"field.type" should be "USER_ORGANIZATION"');return!0};n.noOrgsMessageIsVisible=function(){return n.field.listItems.length===1?!0:!1};n.$watch(function(){return n.field===null?null:n.field.value===null?null:n.field.value},function(t,i){if(t!==i&&n.field.value!==n.field.defaultValue&&n.field.matchedOrganizationName===null){var r=s();if(r==="")return;e.httpGet("data/Common/Validation/IsOrganizationDomainAvailable",{domain:r}).then(function(n){n.success===!0&&h()})}});n.loadNewOrganization=function(){t.openEditDialog({title:n.newEntityLabel,template:'<div data-c-organization-new-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing"><\/div>',dependencies:["$q"],onAction:function(t,i,u,f){function e(){var t=f.defer();return n.loadOrganizationFunction({domain:s()}).then(function(n){t.resolve(n)}),t.promise}function o(t){var i=n.createOrganizationFunction({domain:s(),fields:t});return i.then(function(t){r.showSuccessMessage();n.field.listItems=t.field.listItems;n.field.value=t.field.value;t.matchResult.success===!0&&t.matchResult.organizationId!==null&&t.matchResult.organizationName!==null&&(n.field.value=t.matchResult.organizationId.toString(),n.field.matchedOrganizationName=t.matchResult.organizationName,n.field.description=null)},function(){}),i}switch(t){case"load":return e();case"save":return o(i.fields);default:throw"Unknown action: "+t;}}})};n.loadNewAdditionalOrganization=function(){t.openEditDialog({title:n.additionalNewEntityLabel,template:'<div data-c-organization-new-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing"><\/div>',dependencies:["$q"],onAction:function(t,i,u,f){function e(){var t=f.defer();return n.loadAdditionalOrganizationFunction({domain:s()}).then(function(n){t.resolve(n)}),t.promise}function o(t){var i=n.createAdditionalOrganizationFunction({domain:s(),fields:t});return i.then(function(t){r.showSuccessMessage();n.field.listItems=t.field.listItems;n.field.value=t.field.value;t.matchResult.success===!0&&t.matchResult.organizationId!==null&&t.matchResult.organizationName!==null&&(n.field.value=t.matchResult.organizationId.toString(),n.field.matchedOrganizationName=t.matchResult.organizationName,n.field.description=null)},function(){}),i}switch(t){case"load":return e();case"save":return o(i.fields);default:throw"Unknown action: "+t;}}})};n.loadNewAdditionalNextOrganization=function(){t.openEditDialog({title:n.additionalNextNewEntityLabel,template:'<div data-c-organization-new-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing"><\/div>',dependencies:["$q"],onAction:function(t,i,u,f){function e(){var t=f.defer();return n.loadAdditionalNextOrganizationFunction({domain:s()}).then(function(n){t.resolve(n)}),t.promise}function o(t){var i=n.createAdditionalNextOrganizationFunction({domain:s(),fields:t});return i.then(function(t){r.showSuccessMessage();n.field.listItems=t.field.listItems;n.field.value=t.field.value;t.matchResult.success===!0&&t.matchResult.organizationId!==null&&t.matchResult.organizationName!==null&&(n.field.value=t.matchResult.organizationId.toString(),n.field.matchedOrganizationName=t.matchResult.organizationName,n.field.description=null)},function(){}),i}switch(t){case"load":return e();case"save":return o(i.fields);default:throw"Unknown action: "+t;}}})}}]}});angular.module("sharedElements").directive("cInputFieldVideoSelector",function(){return{restrict:"A",scope:{field:"=",form:"=",onAction:"&?"},templateUrl:"js/shared/common/directives/inputField/inputFieldVideoSelector/inputFieldVideoSelector.html",controller:["$scope","constants","helpService","$timeout","videoSelectorService",function(n,t,i,r,u){function e(t){if(typeof n.onAction=="function")n.onAction(t)}function f(){var t=[];switch(n.currentStatus){case n.status.FILE_SELECTED:t=[n.field.file,n.field.allowNonAdminDownload];break;case n.status.URL_SELECTED:t=[n.field.url,n.field.isPrivate];break;case n.status.DOCUMENT_SELECTED:t=[n.field.document]}n.field.value=i.getProcessedFields(t)}function o(){n.field!==null&&(n.currentStatus=n.field.file.value!==null?n.status.FILE_SELECTED:n.field.allowDocument===!0&&n.field.document.value!==null?n.status.DOCUMENT_SELECTED:n.field.url.value!==null?n.status.URL_SELECTED:n.status.NOT_SELECTED,n.$watch(function(){return n.field.allowNonAdminDownload===null?null:n.field.allowNonAdminDownload.value},function(n,t){n!==t&&f()}),f())}n.fieldName=i.getUniqueName("uploadStatusField",n.form);n.status={NOT_SELECTED:1,UPLOADING:2,FILE_SELECTED:3,URL_SELECTED:4,DOCUMENT_SELECTED:5};n.currentStatus=n.status.NOT_SELECTED;n.getLabel=function(){return i.getUiStringValue(n.field.label)};n.getDescription=function(){return n.field===null||n.field.file===null?"":i.getUiStringValue(n.field.file.description)};n.hasDescription=function(){return n.field!==null&&n.field.file!==null&&n.field.file.description!==null};n.handleAction=function(i,u){if(i===undefined)throw"Action is unspecified";switch(i){case"select":n.field.document.value=u.id;n.field.document.fileName=u.friendlyValue;n.currentStatus=n.status.DOCUMENT_SELECTED;e({action:"library-video-added",data:{title:u.friendlyValue,description:u.description}});f();break;case"status-changed":switch(u.status){case t.uploadStatus.NOT_STARTED:case t.uploadStatus.INVALID_FILE_TYPE:n.currentStatus=n.status.NOT_SELECTED;break;case t.uploadStatus.IN_PROGRESS:n.currentStatus=n.status.UPLOADING;break;case t.uploadStatus.DONE:n.currentStatus=n.status.FILE_SELECTED;r(function(){f()})}break;default:throw"Unknown action: "+i;}};n.removeSelectedItem=function(){n.field.file.value=null;n.field.url.value=null;n.field.isPrivate.value=null;n.field.allowDocument===!0&&(n.field.document.value=null);f();n.currentStatus=n.status.NOT_SELECTED;e({action:"video-removed"})};n.showExternalVideoDialog=function(){i.openDialog({template:"js/shared/common/directives/inputField/inputFieldVideoSelector/externalVideoView.html",controller:["$scope","validationService","$q",function(t,i,r){function s(){t.isLoading=!1}function h(){var n=r.defer();return n.resolve(i.getCustomAsyncValidatorResult({success:!0,titleValue:null,descriptionValue:null,keywordsValue:null,generatedThumbnailFileId:null})),n.promise}t.form=null;t.isLoading=!0;t.pendingAction=!1;t.url=n.field.url;t.isPrivate=n.field.isPrivate;var o=null;t.add=function(i){i.submit(function(){t.pendingAction=!1;n.currentStatus=n.status.URL_SELECTED;f();e({action:"external-video-added",data:{title:o.titleValue,description:o.descriptionValue,keywords:o.keywordsValue,generatedThumbnailFileId:o.generatedThumbnailFileId}});t.closeThisDialog()})};t.validate=function(n,i){switch(n){case"videoUrl":var f=t.isPrivate.value,r;return r=f==="true"||f===!0?h():u.isValidVideoUrl(i),r.then(function(n){o=n}),r;default:throw"Unknown validator "+n;}};s()}]})};n.loadDocumentSelectorDialog=function(){return u.load()};n.refreshDocumentSelector=function(n,t){return u.list(n,t)};n.getDisabledTooltip=function(){return n.field.hasLibraryAdminAccess===!1?"You will need Library Administration permissions to select a video from the Library.":""};o()}]}});angular.module("sharedElements").service("videoSelectorService",["securityService",function(n){this.isValidVideoUrl=function(t){return n.httpGet("data/Common/VideoSelector/ValidateVideoUrl",{url:t})};this.load=function(){return n.httpGet("data/Common/VideoSelector/Load")};this.list=function(t,i){return n.httpPost("data/Common/VideoSelector/List",{filters:t,listerState:i})}}]);angular.module("sharedElements").directive("cInputFieldWysiwyg",["$compile","appDetailsValue","$cookies","constants","helpService","validationService","validationMessageService","$q","testService","securityService","wysiwygService","$timeout","translationHelperService","pageSharedDataFactory",function(n,t,i,r,u,f,e,o,s,h,c,l,a,v){return{restrict:"A",scope:{field:"=",form:"=",validationFunction:"&?"},link:function(y,p){function tt(n,t,i){w[t](n).then(function(r){t++;r.success===!0&&t<w.length?tt(n,t,i):i.resolve(r)})}function b(){return function(n){return h.httpPost(v.wysiwygValidationUrl,{wysiwygType:y.field.wysiwygType,content:n})}}function nt(n){return function(){var t=o.defer();return l(function(){var i=c.getEditor(k).charCounter.count();i<=n?t.resolve(f.getCustomAsyncValidatorResult({success:!0})):t.resolve(f.getCustomAsyncValidatorResult({success:!1,message:e.maxCharLength(n)}))}),t.promise}}function rt(){d!==null&&d.$destroy();d=y.$new();p.html("")}function ut(){if(rt(),y.field===null)return!1;if(y.field.type!==r.fieldType.WYSIWYG)throw new Error('"field.type" should be "WYSIWYG"');if(typeof y.field.name=="undefined")throw new Error('"field.name" is undefined');if(typeof y.field.name!="string")throw new Error('"field.name" is not string');if(typeof y.field.isRequired=="undefined")throw new Error('"field.isRequired" is undefined');if(typeof y.field.isRequired!="boolean")throw new Error('"field.isRequired" is not Boolean');if(typeof y.field.wysiwygType=="undefined")throw new Error('"field.wysiwygType" is undefined');if(typeof y.field.wysiwygType!="number")throw new Error('"field.wysiwygType" is not number');return!0}function ft(n){switch(n){case r.wysiwygType.AGREEMENT:case r.wysiwygType.ARTICLE:case r.wysiwygType.WELCOME_MESSAGE:case r.wysiwygType.RICH_TEXT:case r.wysiwygType.EMAIL:case r.wysiwygType.ADDITIONAL_DESCRIPTION:case r.wysiwygType.USER_CONSENT_TEXT:case r.wysiwygType.PRIVACY_POLICY_TEXT:case r.wysiwygType.LESSON_CONTENT_BLOCK:case r.wysiwygType.FORUM:case r.wysiwygType.QUIZ_QUESTION:case r.wysiwygType.EMAIL_MARKETING_MAILINGS_TEXT:case r.wysiwygType.NEWS_ITEM_EXCERPT:case r.wysiwygType.NEWS_ITEM_CONTENT:case r.wysiwygType.TRANSLATIONS_DYNAMIC:case r.wysiwygType.DOCUMENT_ARTICLE:case r.wysiwygType.SYSTEM_ADMIN_MESSAGE:break;default:throw new Error("unexpected wysiwygType: "+n);}return null}function et(n,i,u){var f={attribution:!1,key:t.wysiwygApiKey,requestHeaders:g,toolbarSticky:!1,heightMin:200,imagePaste:!1,charCounterCount:!1,pastePlain:!0,quickInsertEnabled:!1,events:{initialized:function(){c.setEditor(k,y.froalaOptions.froalaEditor)},"table.inserted":function(n){$(n).css({width:"100%","border-collapse":"collapse",border:"1px solid #ddd"});$(n).find("td, th").css({border:"1px solid #ddd"})},"html.get":function(n){return n.replace(/id="isPasted"/g,"")},"image.resizeEnd":function(n){n.css("height","");n.css("maxWidth","100%");n.attr("width",n.width())},"image.loaded":function(n){n.css("height","");n.css("maxWidth","100%");n.attr("width",n.width())}}},e;switch(n){case r.wysiwygType.DOCUMENT_ARTICLE:w.push(b());f.charCounterCount=!0;f.toolbarButtons=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsMD=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsSM=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsXS=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageUploadParam="file";f.imageManagerLoadURL="data/Pages/Page/GetWysiwygImages";f.imageManagerDeleteURL="";f.imageUploadURL="data/Pages/Page/AddWysiwygImage";f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"];f.fileUploadParam="file";f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.videoInsertButtons=["videoBack","|","videoByURL","videoEmbed"];f.pastePlain=!1;f.toolbarSticky=!0;f.toolbarStickyOffset=0;f.scrollableContainer=".ngdialog-content, .n-layout-edit.n-layout-scroll";c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.ARTICLE:case r.wysiwygType.WELCOME_MESSAGE:case r.wysiwygType.RICH_TEXT:w.push(b());f.charCounterCount=!0;f.toolbarButtons=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsMD=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsSM=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsXS=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageUploadParam="file";f.imageManagerLoadURL="data/Pages/Page/GetWysiwygImages";f.imageManagerDeleteURL="";f.imageUploadURL="data/Pages/Page/AddWysiwygImage";f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"];f.fileUploadParam="file";f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.videoInsertButtons=["videoBack","|","videoByURL","videoEmbed"];f.pastePlain=!1;c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.TRANSLATIONS_DYNAMIC:f.charCounterCount=!0;f.enter=y.field.useBrEnterMode===!0?FroalaEditor.ENTER_BR:FroalaEditor.ENTER_P;e=[];(_.contains(i,"h1")===!0||_.contains(i,"h2")===!0)&&(e.push("paragraphFormat"),f.paragraphFormat={N:"Normal"},_.contains(i,"h1")===!0&&(f.paragraphFormat.H1="Heading 1"),_.contains(i,"h2")===!0&&(f.paragraphFormat.H2="Heading 2"));(_.contains(i,"b")===!0||_.contains(i,"strong")===!0)&&e.push("bold");_.contains(i,"u")===!0&&e.push("underline");_.contains(i,"i")===!0&&e.push("italic");_.contains(i,"strike")===!0&&e.push("strikeThrough");_.contains(i,"sub")===!0&&e.push("subscript");_.contains(i,"superscript")===!0&&e.push("superscript");_.contains(i,"ol")===!0&&e.push("formatOL");_.contains(i,"ul")===!0&&e.push("formatUL");_.contains(i,"a")===!0&&(e.push("insertLink"),f.linkInsertButtons=[],f.linkEditButtons=["linkOpen","linkEdit","linkRemove"],f.linkNoReferrer=!0,f.linkStyles={},f.linkList=[]);_.contains(i,"img")===!0&&(e.push("insertImage"),f.imageDefaultWidth=0,f.imageUploadParam="file",f.imageManagerLoadURL="data/Pages/Page/GetWysiwygImages",f.imageManagerDeleteURL="",f.imageUploadURL="data/Pages/Page/AddWysiwygImage",f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"]);_.contains(i,"iframe")===!0&&(e.push("insertVideo"),f.videoInsertButtons=["videoBack","|","videoByURL","videoEmbed"]);e.push("|");e.push("undo");e.push("redo");f.toolbarButtons=e;f.toolbarButtonsMD=e;f.toolbarButtonsSM=e;f.toolbarButtonsXS=e;f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.fileUploadParam="file";f.fileUploadURL="";break;case r.wysiwygType.EMAIL:w.push(b());f.toolbarButtons=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsMD=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsSM=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsXS=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={};f.imageManagerLoadURL="";f.imageManagerDeleteURL="";f.imageUploadURL="";f.imageAllowedTypes=[];f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.ADDITIONAL_DESCRIPTION:w.push(b());f.toolbarButtons=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsMD=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsSM=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsXS=["bold","italic","strikeThrough","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={};f.imageManagerLoadURL="";f.imageManagerDeleteURL="";f.imageUploadURL="";f.imageAllowedTypes=[];f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.AGREEMENT:w.push(b());f.tableResizer=!1;f.tableEditButtons=["tableRemove","|","tableRows","tableColumns"];f.toolbarButtons=["bold","italic","strikeThrough","paragraphFormat","|","formatOL","formatUL","|","align","outdent","indent","|","insertHR","insertTable","|","insertLink","|","undo","redo"];f.toolbarButtonsMD=["bold","italic","strikeThrough","paragraphFormat","|","formatOL","formatUL","|","align","outdent","indent","|","insertHR","insertTable","|","insertLink","|","undo","redo"];f.toolbarButtonsSM=["bold","italic","strikeThrough","paragraphFormat","|","formatOL","formatUL","|","align","outdent","indent","|","insertHR","insertTable","|","insertLink","|","undo","redo"];f.toolbarButtonsXS=["bold","italic","strikeThrough","paragraphFormat","|","formatOL","formatUL","|","align","outdent","indent","|","insertHR","insertTable","|","insertLink","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageManagerLoadURL="";f.imageManagerDeleteURL="";f.imageUploadURL="";f.imageAllowedTypes=[];f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.toolbarSticky=!0;f.toolbarStickyOffset=0;f.scrollableContainer=".n-layout-edit.n-layout-scroll";c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.USER_CONSENT_TEXT:w.push(b());f.toolbarButtons=["bold","italic","underline","insertLink"];f.toolbarButtonsMD=["bold","italic","underline","insertLink"];f.toolbarButtonsSM=["bold","italic","underline","insertLink"];f.toolbarButtonsXS=["bold","italic","underline","insertLink"];f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.enter=FroalaEditor.ENTER_BR;break;case r.wysiwygType.PRIVACY_POLICY_TEXT:w.push(nt(500));w.push(b());f.charCounterCount=!0;f.toolbarButtons=["bold","italic","underline","insertLink"];f.toolbarButtonsMD=["bold","italic","underline","insertLink"];f.toolbarButtonsSM=["bold","italic","underline","insertLink"];f.toolbarButtonsXS=["bold","italic","underline","insertLink"];f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.enter=FroalaEditor.ENTER_BR;c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.NEWS_ITEM_EXCERPT:w.push(nt(400));w.push(b());f.charCounterCount=!0;f.toolbarButtons=["bold","italic","strikeThrough","superscript","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsMD=["bold","italic","strikeThrough","superscript","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsSM=["bold","italic","strikeThrough","superscript","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.toolbarButtonsXS=["bold","italic","strikeThrough","superscript","|","formatOL","formatUL","|","insertLink","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.NEWS_ITEM_CONTENT:w.push(b());f.toolbarButtons=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsMD=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsSM=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.toolbarButtonsXS=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","insertHR","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageUploadParam="file";f.imageManagerLoadURL="data/News/NewsItemNew/GetContentImages";f.imageManagerDeleteURL="";f.imageUploadURL="data/News/NewsItemNew/AddWysiwygImage";f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"];f.fileUploadParam="file";f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.videoInsertButtons=["videoBack","|","videoByURL","videoEmbed"];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.EMAIL_MARKETING_MAILINGS_TEXT:w.push(nt(2e3));w.push(b());f.charCounterCount=!0;f.toolbarButtons=["bold","italic","underline","insertLink"];f.toolbarButtonsMD=["bold","italic","underline","insertLink"];f.toolbarButtonsSM=["bold","italic","underline","insertLink"];f.toolbarButtonsXS=["bold","italic","underline","insertLink"];f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.enter=FroalaEditor.ENTER_BR;c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.LESSON_CONTENT_BLOCK:w.push(b());f.toolbarButtons=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsMD=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsSM=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsXS=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageUploadParam="file";f.imageManagerLoadURL="data/Training/LessonDetails/GetLessonContentBlockWysiwygImages";f.imageManagerDeleteURL="";f.imageUploadURL="data/Training/LessonDetails/AddLessonContentBlockWysiwygImage";f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"];f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.FORUM:w.push(b());f.toolbarButtons=["formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsMD=["formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsSM=["formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsXS=["formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageDefaultAlign="left";f.imageDefaultDisplay="block";f.imageUploadParam="file";f.imageInsertButtons=["imageBack","|","imageUpload","imageByURL"];f.imageManagerDeleteURL="";f.imageUploadURL="data/Forum/ThreadDetails/AddWysiwygPostImage";f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"];f.imageEditButtons=["imageReplace","imageRemove","imageLink"];f.fileUploadParam="file";f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.QUIZ_QUESTION:w.push(b());f.toolbarButtons=["bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsMD=["bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsSM=["bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.toolbarButtonsXS=["bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","|","undo","redo"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageDefaultAlign="left";f.imageDefaultDisplay="block";f.imageUploadParam="file";f.imageInsertButtons=["imageBack","|","imageUpload","imageByURL"];f.imageManagerDeleteURL="";f.imageUploadURL="data/Training/QuizDetails/AddWysiwygQuizQuestionImage";f.imageAllowedTypes=["bmp","gif","jpeg","jpg","png","jfif"];f.imageEditButtons=["imageReplace","imageRemove","imageLink"];f.fileUploadParam="file";f.fileUploadURL="";f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];c.addPlaceholders(f,y.field.placeholders);break;case r.wysiwygType.SYSTEM_ADMIN_MESSAGE:w.push(b());f.charCounterCount=!0;f.toolbarButtons=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","|","undo","redo","|","html"];f.toolbarButtonsMD=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","|","undo","redo","|","html"];f.toolbarButtonsSM=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","|","undo","redo","|","html"];f.toolbarButtonsXS=["paragraphFormat","bold","italic","strikeThrough","subscript","superscript","|","formatOL","formatUL","|","insertLink","insertImage","insertVideo","|","undo","redo","|","html"];f.htmlAllowedTags=i;f.htmlAllowedAttrs=u;f.pasteDeniedAttrs=["class","id","style"];f.pasteDeniedTags=["span"];f.paragraphFormat={N:"Normal",H1:"Heading 1",H2:"Heading 2"};f.imageDefaultWidth=0;f.imageUpload=!1;f.linkInsertButtons=[];f.linkEditButtons=["linkOpen","linkEdit","linkRemove"];f.linkNoReferrer=!0;f.linkStyles={};f.linkList=[];f.videoInsertButtons=["videoBack","|","videoByURL","videoEmbed"];f.pastePlain=!1;c.addPlaceholders(f,y.field.placeholders);break;default:throw new Error("unexpected wysiwygType: "+n);}return y.field.validatorName!==null&&w.push(function(n){return y.validationFunction({name:y.field.validatorName,value:n})}),f}function it(){var i,r,t,e;if(ut()!==!1){if(i=u.getUniqueName(y.field.name,y.form),y.field.inputName=i,k=$(document.createElement("div")),k.addClass("editor"),a.setTranslateAttribute(k,!1),r=ft(y.field.wysiwygType),r!==null&&k.addClass(r),k.attr("froala","froalaOptions"),k.attr("data-ng-model","field.value"),k.attr("data-auto-focus","true"),s.setFormFieldAttribute(k,y.field),y.froalaOptions=et(y.field.wysiwygType,y.field.wysiwygAllowedTags,y.field.wysiwygAllowedAttributes),t=$(document.createElement("input")),t.attr("name",i),t.attr("type","hidden"),t.attr("data-ng-model","field.value"),t.attr("data-c-validator",""),t.attr("data-data-type","wysiwyg"),e=["dataType"],typeof y.field.length!="undefined"&&y.field.length!==null){if(typeof y.field.length!="number")throw new Error('"field.length" is not number');t.attr("data-max-length",y.field.length);e.push("maxLength")}f.setValidators(t,e,y.field);w.length>0&&t.attr("data-async-validation-function","validate(value)");$(p).append(k);$(p).append(t);$(p).append('<label data-c-validation-message data-form="form" data-field-name="'+i+'"><\/label>');n(p.contents())(d)}}function ot(){it()}var w,g,d,k;if(typeof y.field=="undefined")throw new Error('"field" is undefined');if(typeof y.form=="undefined")throw new Error('"form" is undefined');w=[];g={};g[r.headers.CSRF]=i.get(r.cookies.TEST);typeof translationService!="undefined"&&(g[r.headers.LANGUAGE_DICTIONARY]=translationService.isPublic===!0?"public":"private");d=null;y.froalaOptions=null;y.$watch(function(){return y.field},function(n,t){n!==t&&it()});y.validate=function(n){var t=o.defer();return tt(n,0,t),t.promise};ot()}}}]);angular.module("sharedElements").directive("cLabel",["constants",function(n){return{restrict:"A",scope:{label:"=",additionClass:"@"},link:function(t,i,r){function f(){if(i.html(""),r.$set("class",""),r.$set("style","display:none"),t.label===null)return!1;if(Object.prototype.toString.call(t.label)!=="[object Object]")throw new Error('"label" is not Object');if(typeof t.label.text=="undefined")throw new Error('"label.text" is undefined');if(typeof t.label.text!="string")throw new Error('"label.text" is not String');if(t.label.text==="")throw new Error('"label.text" is empty');if(typeof t.label.type=="undefined")throw new Error('"label.type" is undefined');if(typeof t.label.type!="number")throw new Error('"label.type" is not Number');return r.$set("style",undefined),!0}function e(){r.$addClass("label");typeof t.additionClass!="undefined"&&r.$addClass(t.additionClass);switch(t.label.type){case n.labelTypes.BASE:r.$addClass("label-base");break;case n.labelTypes.SUCCESS:r.$addClass("label-success");break;case n.labelTypes.FAIL:r.$addClass("label-fail");break;case n.labelTypes.PENDING:r.$addClass("label-pending");break;case n.labelTypes.ACTIVE:r.$addClass("label-active");break;case n.labelTypes.INACTIVE:r.$addClass("label-inactive");break;case n.labelTypes.TAG:r.$addClass("label-tag");break;case n.labelTypes.LINK:r.$addClass("label-link");break;case n.labelTypes.COUNTER:r.$addClass("label-counter");break;default:throw new Error("Not supported label type: "+t.label.type);}}function u(){if(f())if(e(),t.label.url===null)i.text(t.label.text);else{var n=$(document.createElement("a"));n.attr("href",t.label.url);n.text(t.label.text);i.html(n)}}if(typeof t.label=="undefined")throw new Error('"label" is undefined');t.$watch(function(){return t.label},function(n,t){n!==t&&u()});u()}}}]);angular.module("sharedElements").directive("cLabels",function(){return{restrict:"A",scope:{labels:"=",limit:"=?"},template:'<span data-c-label data-label="label" data-ng-repeat="label in labelsToShow"><\/span><span data-c-label data-label="showMoreLabel" class="showMore" ng-click="showAll($event)"><\/span>',controller:["$scope","$element","constants",function(n,t,i){function r(){if(n.labels===null){n.labelsToShow=null;return}n.limit+1<n.labels.length?(n.showMoreLabel={text:"+"+(n.labels.length-n.limit),type:i.labelTypes.TAG,url:"javascript:;"},n.labelsToShow=n.labels.slice(0,n.limit)):n.labelsToShow=n.labels}function u(){($(t).addClass("labels"),n.limit===undefined&&(n.limit=4),n.labels!==null)&&r()}n.showMoreLabel=null;n.labelsToShow=null;n.showAll=function(t){t.preventDefault();n.showMoreLabel=null;n.labelsToShow=n.labels};n.$watch(function(){return n.labels},function(n,t){n!==t&&r()});u()}]}});angular.module("sharedElements").directive("cLanguageSelector",["helpService","translationHelperService","$compile","testService",function(n,t,i,r){return{restrict:"A",scope:{onAction:"&",additionalClass:"@?",isHeader:"=?"},link:function(u,f){function o(){if(typeof translationService=="undefined")return null;var n=translationService.getCurrentLanguageId(),t=_.find(translationService.enabledLanguages,function(t){return t.id===n});return u.languageCode=typeof t!="undefined"?t.code.toUpperCase():null,r.setAttribute($(f),"language-selector",n),r.setAttribute($(f),"selected-language-code",u.languageCode),n}function v(){if(typeof translationService=="undefined"){$(f).html("");$(f).css("display","none");return}u.$watch(function(){return translationService.enabledLanguages},function(n,t){n!==t&&n!==null&&l()},!0);u.$watch(function(){return translationService.status},function(n,t){n!==t&&n!==null&&translationService.status===translationService.statusType.UNAPPLIED_CHANGES&&a(!1,o())});u.$watch(function(){return o()},function(n,t){n!==t&&n!==null&&l()});y()}function h(n){var f=o();translationService.enabledLanguages.forEach(function(f){var c=$('<a href="javascript:;"><\/a>'),e,o,h;c.text(f.name);r.setAttribute(c,"language-name",f.name);e=$(document.createElement("span"));e.addClass("text-uppercase");t.setTranslateAttribute(e,!1);e.text(f.code);r.setAttribute(e,"language-code",f.code);o=$('<span class="grid-columns" data-ng-click="setLanguage(\''+f.id+"')\"><\/span>");o.append(c);o.append(e);h=$(document.createElement("li"));h.addClass("item");n===!0?h.append(i(o)(u)):h.append(o);s.append(h)})}function c(n){var r,f;e.append($('<i class="icon-size-18 icon-spacer-small material_public"><\/i>'));r=$(document.createElement("span"));r.addClass("text-uppercase");r.attr("data-ng-bind","languageCode");t.setTranslateAttribute(r,!1);f=$(document.createElement("span"));f.addClass("caret");f.addClass("breadcrumb-caret");n===!0?e.append(i(r)(u)):e.append(r);e.append(f)}function l(){s.empty();e.empty();h(!0);c(!0)}function y(){s=$('<ul class="dropdown-menu" data-c-dropdown-menu><\/ul>');e=$('<a data-c-dropdown-action data-close-on-inside-click="false"><\/a>');typeof u.additionalClass!="undefined"&&e.addClass(u.additionalClass);c(!1);h(!1);var n=$('<div data-c-dropdown class="dropdown"><\/div>');n.append(e);n.append(s);n.addClass("pointer");n.addClass("item-right-align");$(f).append(i(n)(u))}function a(t,i){n.setLanguage(t,function(){return u.onAction({action:"set-language",data:i})},function(){o()})}if(typeof u.onAction=="undefined")throw new Error('"onAction" is undefined');u.languageCode=null;var e=null,s=null;typeof u.isHeader=="undefined"&&(u.isHeader=!1);u.setLanguage=function(n){n!==o()&&a(!0,n)};v()}}}]);angular.module("sharedElements").directive("cLayoutSwitcher",["$compile","constants","helpService","testService",function(n,t,i,r){return{restrict:"E",scope:{lister:"=",listerStatus:"=",settings:"=",onAction:"&",showAlways:"@?",dropdown:"=?"},link:function(u,f,e){function y(){if((p(),u.lister===null)||u.lister.availableLayouts!==null&&u.lister.availableLayouts.length<=1)return!1;if(Object.prototype.toString.call(u.lister)!=="[object Object]")throw new Error('"lister" is not Object');if(typeof u.lister.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof u.lister.totalRowCount!="number")throw new Error('"lister.totalRowCount" is not Number');if(typeof u.listerStatus!="number")throw new Error('"listerStatus" is not Number');return typeof u.showAlways!="undefined"&&u.showAlways==="true"?!0:u.listerStatus===t.listerStatus.DONE}function c(){var o,p,c;y()&&(e.$addClass("btn-group"),f.css("display","inline-block"),o=$(document.createElement("c-dropdown")),o.addClass("btn-group"),p=_.values(t.listerLayout),u.dropdown?(o.append('<button class="btn btn-default" data-c-dropdown-action '+r.getAttributeString("button","layout-switcher")+">"+s(u.lister.layout)+'<span>Layout<\/span><span class="caret"><\/span><\/button>'),c=$(document.createElement("ul")),c.addClass("dropdown-menu-items"),c.attr("data-c-dropdown-menu",""),p.forEach(function(n){var t,u;l(n)&&(t=$(document.createElement("li")),t.addClass("item item-linked-icon"),u=i.getListerLayoutLabel(n),a(n)===!0?t.append('<a href="javascript:;" data-ng-click="'+v(n)+'"'+r.getAttributeString("action",u)+">"+s(n)+"<span>"+u+"<\/span><\/a>"):(t.addClass("disabled"),t.append("<span>"+s(n)+"<span>"+u+"<\/span><\/span>")),c.append(t))}),o.append(c)):(e.$addClass("btn-toggle-group"),p.forEach(function(n){l(n)&&(a(n)===!0?o.append('<button class="btn btn-default btn-icon" data-ng-click="'+v(n)+'" '+r.getAttributeString("button","layout-switcher")+">"+s(n)+"<\/button>"):o.append('<button class="btn btn-default btn-icon btn-toggle-group active" '+r.getAttributeString("button","layout-switcher")+">"+s(n)+"<\/button>"))})),f.html(n(o)(h)))}function p(){h!==null&&h.$destroy();h=u.$new();e.$removeClass("btn-group");$(f).html("");f.css("display","none")}function l(n){if(Array.isArray(u.lister.availableLayouts)===!1)throw Error("lister.availableLayouts have to be an array.");return u.lister.availableLayouts.indexOf(n)!==-1}function a(n){if(w(n)===!0)return!1;switch(n){case t.listerLayout.BAR_CHART:return k();case t.listerLayout.TIMELINE:return b()}return!0}function o(n){switch(n){case t.listerLayout.TABLE:case t.listerLayout.TILES_L:case t.listerLayout.TILES_S:case t.listerLayout.MAP:case t.listerLayout.BAR_CHART:case t.listerLayout.TIMELINE:case t.listerLayout.CONTENT:case t.listerLayout.WIDE:case t.listerLayout.COMPACT:break;default:throw Error("Unknown lister layout: "+n);}u.onAction({action:"refresh-lister",data:{listerState:{layout:n}}})}function w(n){return u.lister===null?!1:u.lister.layout===n}function s(n){switch(n){case t.listerLayout.TABLE:return'<i class="material_view_list"><\/i>';case t.listerLayout.TILES_L:return'<i class="material_grid_view"><\/i>';case t.listerLayout.TILES_S:return'<i class="material_calendar_view_month"><\/i>';case t.listerLayout.MAP:return'<i class="material_place"><\/i>';case t.listerLayout.BAR_CHART:return'<i class="material_equalizer"><\/i>';case t.listerLayout.TIMELINE:return'<i class="material_trending_up"><\/i>';case t.listerLayout.CONTENT:return'<i class="material_import_contacts"><\/i>';case t.listerLayout.WIDE:return'<i class="material_view_stream"><\/i>';case t.listerLayout.COMPACT:return'<i class="material_table_rows"><\/i>';default:throw Error("Unknown lister layout: "+n);}}function v(n){switch(n){case t.listerLayout.TABLE:return"setListLayout()";case t.listerLayout.TILES_L:return"setLargeThumbnailLayout()";case t.listerLayout.TILES_S:return"setSmallThumbnailLayout()";case t.listerLayout.MAP:return"setMapLayout()";case t.listerLayout.BAR_CHART:return"setBarChartLayout()";case t.listerLayout.TIMELINE:return"setTimelineLayout()";case t.listerLayout.CONTENT:return"setContentLayout()";case t.listerLayout.WIDE:return"setWideLayout()";case t.listerLayout.COMPACT:return"setCompactLayout()";default:throw Error("Unknown lister layout: "+n);}}function b(){if(typeof u.settings=="undefined")return!1;var n=_.filter(u.settings.columns,function(n){return n.isDate===!0});return n.length>0?!0:!1}function k(){if(typeof u.settings=="undefined")return!1;var n=_.filter(u.settings.columns,function(n){return n.isGroupBy===!0});return n.length>0}function d(){c()}var h=null;u.dropdown===undefined&&(u.dropdown=!1);u.setListLayout=function(){o(t.listerLayout.TABLE)};u.setLargeThumbnailLayout=function(){o(t.listerLayout.TILES_L)};u.setSmallThumbnailLayout=function(){o(t.listerLayout.TILES_S)};u.setMapLayout=function(){o(t.listerLayout.MAP)};u.setBarChartLayout=function(){o(t.listerLayout.BAR_CHART)};u.setTimelineLayout=function(){o(t.listerLayout.TIMELINE)};u.setContentLayout=function(){o(t.listerLayout.CONTENT)};u.setWideLayout=function(){o(t.listerLayout.WIDE)};u.setCompactLayout=function(){o(t.listerLayout.COMPACT)};u.$watch(function(){return u.lister},function(n,t){n!==t&&c()},!1);u.$watch(function(){return u.listerStatus},function(n,t){n!==t&&c()});d()}}}]);angular.module("sharedElements").directive("cLinkButton",["$compile","actionService","testService",function(n,t,i){return{restrict:"E",scope:{action:"=",onAction:"&",tName:"@"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){return(o(),r.action===null)?!1:!0}function h(){if(typeof r.action.label=="undefined")throw new Error('"action.label" is undefined');if(typeof r.action.label!="string")throw new Error('"action.label" is not String');if(r.action.label==="")throw new Error('"action.label" is empty');if(typeof r.action.link=="undefined")throw new Error('"action.link" is undefined');if(typeof r.action.name=="undefined")throw new Error('"action.name" is undefined');if(typeof r.action.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(r.action.link===null&&r.action.name===null)throw new Error('"action.link" or "action.name" must have value');if(r.action.link!==null){if(typeof r.action.link!="string")throw new Error('"action.link" is not String');if(r.action.link==="")throw new Error('"action.link" is empty');if(typeof r.action.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}if(r.action.name!==null){if(typeof r.action.name!="string")throw new Error('"action.name" is not String');if(r.action.name==="")throw new Error('"action.name" is empty');}}function e(){if(typeof r.action=="undefined")throw new Error('"action" is undefined');if(s()){h();var e=t.getActionElement(r.action);e.addClass("btn btn-link");e.text(r.action.label);i.setAttribute(e,"button",r.action.label);i.setAttribute(e,"instance",r.tName?r.tName:"main");u.append(e);n(u.contents())(f)}}var f=null;r.$watch(function(){return r.action},function(n,t){n!==t&&e()},!0);r.handleAction=function(n){r.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cLinkedIn",["$compile","helpService","translationHelperService","testService",function(n,t,i,r){return{restrict:"A",scope:{actions:"=",isSmall:"@"},link:function(u,f,e){function h(){return u.actions.length===1}function c(){o!==null&&o.$destroy();o=u.$new();e.$removeClass("btn-group");f.html("");f.css("display","none")}function l(){return(c(),u.actions===null)?!1:(t.validateActions(u.actions),!0)}function a(){var n=$(document.createElement("a"));return i.setTranslateAttribute(n,!1),n.attr("data-ng-click","openWindow(actions[0])"),n.addClass("btn btn-linkedin-share"),u.isSmall==="true"&&n.addClass("btn-sm"),n.append('<xdoor-icon aria-hidden="true">                   <svg viewBox="0 0 24 24" width="24px" height="24px" x="0" y="0" preserveAspectRatio="xMinYMin meet">                       <g style="fill: currentColor">                           <rect x="-0.003" style="fill:none;" width="24" height="24"><\/rect>                           <path style="" d="M20,2h-16c-1.1,0-2,0.9-2,2v16c0,1.1,0.9,2,2,2h16c1.1,0,2-0.9,2-2V4C22,2.9,21.1,2,20,2zM8,19h-3v-9h3V19zM6.5,8.8C5.5,8.8,4.7,8,4.7,7s0.8-1.8,1.8-1.8S8.3,6,8.3,7S7.5,8.8,6.5,8.8zM19,19h-3v-4c0-1.4-0.6-2-1.5-2c-1.1,0-1.5,0.8-1.5,2.2V19h-3v-9h2.9v1.1c0.5-0.7,1.4-1.3,2.6-1.3c2.3,0,3.5,1.1,3.5,3.7V19z"><\/path>                       <\/g>                   <\/svg>               <\/xdoor-icon>Share'),n}function v(){var h=$(document.createElement("div")),f,n,e,o,c,s,t;for(i.setTranslateAttribute(h,!1),f=$(document.createElement("c-dropdown")),f.addClass("btn-group"),n=$(document.createElement("a")),n.attr("data-c-dropdown-action",""),n.addClass("btn btn-linkedin-share"),u.isSmall==="true"&&n.addClass("btn-sm"),n.append('<xdoor-icon aria-hidden="true">                   <svg viewBox="0 0 24 24" width="24px" height="24px" x="0" y="0" preserveAspectRatio="xMinYMin meet">                       <g style="fill: currentColor">                           <rect x="-0.003" style="fill:none;" width="24" height="24"><\/rect>                           <path style="" d="M20,2h-16c-1.1,0-2,0.9-2,2v16c0,1.1,0.9,2,2,2h16c1.1,0,2-0.9,2-2V4C22,2.9,21.1,2,20,2zM8,19h-3v-9h3V19zM6.5,8.8C5.5,8.8,4.7,8,4.7,7s0.8-1.8,1.8-1.8S8.3,6,8.3,7S7.5,8.8,6.5,8.8zM19,19h-3v-4c0-1.4-0.6-2-1.5-2c-1.1,0-1.5,0.8-1.5,2.2V19h-3v-9h2.9v1.1c0.5-0.7,1.4-1.3,2.6-1.3c2.3,0,3.5,1.1,3.5,3.7V19z"><\/path>                       <\/g>                   <\/svg>               <\/xdoor-icon>Share'),n.append('<span class="caret"><\/span>'),e=$(document.createElement("ul")),e.addClass("dropdown-menu"),e.attr("data-c-dropdown-menu",""),o=0;o<u.actions.length;o++)c=u.actions[o],s=$(document.createElement("li")),s.addClass("item"),t=$(document.createElement("a")),t.attr("data-ng-click","openWindow(actions["+o+"])"),t.text(c.label),r.setAttribute(t,"instance",u.tName?u.tName:"main"),r.setAttribute(t,"action",c.label),s.append(t),e.append(s);return f.append(n),f.append(e),h.append(f),h}function s(){if(typeof u.actions=="undefined")throw new Error('"actions" is undefined');l()&&(f.css("display","flex"),f.append(h()===!0?a():v()),n(f.contents())(o))}var o=null;u.$watch(function(){return u.actions},function(n,t){n!==t&&typeof n!="undefined"&&s()},!0);u.openWindow=function(n){return window.open(n.link,"popup","width=800,height=500"),!1};s()}}}]);angular.module("sharedElements").directive("cLinkLister",["$compile","helpService","translationHelperService",function(n,t,i){return{restrict:"A",scope:{links:"=",onAction:"&"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){if(r.links===null)return!1;if(Object.prototype.toString.call(r.links)!=="[object Array]")throw new Error('"links" is not an Array');return!0}function h(n){$(u).append(n)}function c(n){if(typeof n.link=="undefined")throw new Error('"link.link" is undefined');if(n.link!==null){if(typeof n.link!="string")throw new Error('"link.link" is not String');if(n.link==="")throw new Error('"link.link" cannot be empty');}if(typeof n.actionName=="undefined")throw new Error('"link.actionName" is undefined');if(n.actionName!==null){if(typeof n.actionName!="string")throw new Error('"link.actionName" is not String');if(n.actionName==="")throw new Error('"link.actionName" cannot be empty');if(typeof r.onAction=="undefined")throw new Error('"onAction" cannot be undefined');}if(n.link===null&&n.actionName===null)throw new Error('One of "link.link" or "link.actionName" have to be defined');if(typeof n.label=="undefined")throw new Error('"link.label" is undefined');if(typeof n.label!="string")throw new Error('"link.label" is not String');if(n.label==="")throw new Error('"link.label" cannot be empty');if(typeof n.targetBlank=="undefined")throw new Error('"link.targetBlank" is undefined');if(typeof n.targetBlank!="boolean")throw new Error('"link.targetBlank" is not Boolean');if(typeof n.additionalLink=="undefined")throw new Error('"link.additionalLink" is undefined');if(n.additionalLink!==null){if(typeof n.additionalLink!="string")throw new Error('"link.additionalLink" is not String');if(n.additionalLink==="")throw new Error('"link.additionalLink" cannot be empty');}}function e(){if(o(),s()!==!1){u.addClass("listing");var e=$(document.createElement("ul"));angular.forEach(r.links,function(n){var u;c(n);var o=$(document.createElement("li")),f=$(document.createElement("span")),r=$(document.createElement("a"));n.link!==null&&(r.attr("href",n.link),n.targetBlank&&(r.attr("target","_blank"),r.attr("rel","noreferrer")));n.actionName!==null&&(r.attr("href","javascript:;"),r.attr("data-ng-click",'handleAction("'+n.actionName+'", { label: "'+n.label.replace(/\"/g,'\\"')+'"})'));r.text(n.label);t.setTestAttribute(r,"link-label",n.label);f.append(r);n.additionalLink!==null&&(u=$(document.createElement("a")),u.attr("target","_blank"),u.attr("rel","noreferrer"),u.attr("href",n.additionalLink),u.text("Excel"),i.setTranslateAttribute(u,!1),f.append($(document.createTextNode(" ("))),f.append(u),f.append($(document.createTextNode(")"))));o.append(f);e.append(o)});h(e);n(e)(f)}}var f=null;r.handleAction=function(n,t){r.onAction({action:n,data:t})};r.$watch(function(){return r.links},function(n,t){n!==t&&e()});e()}}}]);angular.module("sharedElements").directive("cLibraryLister",["$compile","constants","helpService","$timeout","translationHelperService","testService",function(n,t,i,r,u,f){return{restrict:"A",scope:{lister:"=",settings:"=",listerStatus:"=",onRefresh:"&?",onAction:"&?"},link:function(e,o,s){function p(){c!==null&&c.$destroy();l=0;a=1;c=e.$new();s.$addClass("n-full-width-height");$(o).attr("tabindex","0");$(o).html("");s.$removeClass("library-grid-large");s.$removeClass("library-grid-wide");s.$removeClass("library-grid-compact");v=$(document.createElement("div"));v.attr("data-ng-class",'{"loading-large": isLoading() === true}');v.attr("data-ng-if","isLoading() === true");v.addClass("loading-large n-full-width-height");$(o).append(n(v)(c))}function st(){s.$addClass("library-grid");switch(e.lister.layout){case t.listerLayout.TILES_L:s.$addClass("library-grid-large");break;case t.listerLayout.WIDE:s.$addClass("library-grid-wide");break;case t.listerLayout.COMPACT:s.$addClass("library-grid-compact")}o.css("display","flex")}function ht(){d()}function ct(){h!==null&&(h.remove(),h=null);d()}function lt(){if(e.settings.enabledPaging!==!1&&l!==e.lister.totalRowCount){h=$('<div class="library-grid-pagination"><\/div>');h.append($("<span>Showing "+u.wrapTextInVar(l,u.variableName.VISIBLE_RECORDS)+" of "+u.wrapTextInVar(e.lister.totalRowCount,u.variableName.TOTAL_RECORDS)+"<\/span>"));var n=$('<a href="javascript:;">Load more<\/a>');n.click(at);h.append(n);$(o).append(h)}}function d(){if(e.lister.rows.length===0){var n=$(`
                                <div class="layout-no-data">
                                    <svg class="layout-no-data-img" width="106" height="101" viewBox="0 0 106 101" fill="none" xmlns="http://www.w3.org/2000/svg">
                                    <path d="M25.4512 100.54C18.6091 100.54 12.7319 98.0839 7.81959 93.1716C2.90731 88.2593 0.451172 82.3821 0.451172 75.54C0.451172 68.6979 2.90731 62.8207 7.81959 57.9085C12.7319 52.9962 18.6091 50.54 25.4512 50.54C32.2933 50.54 38.1705 52.9962 43.0828 57.9085C47.995 62.8207 50.4512 68.6979 50.4512 75.54C50.4512 82.3821 47.995 88.2593 43.0828 93.1716C38.1705 98.0839 32.2933 100.54 25.4512 100.54ZM99.9249 95.2769L65.3196 60.6716C64.0915 61.6365 62.7099 62.5795 61.1749 63.5006C59.6398 64.4216 58.1705 65.1892 56.767 65.8032C56.3284 64.5751 55.8459 63.3251 55.3196 62.0532C54.7933 60.7813 54.1792 59.619 53.4775 58.5664C58.2143 56.7242 62.2275 53.676 65.517 49.4216C68.8064 45.1672 70.4512 40.1014 70.4512 34.2242C70.4512 27.119 67.9512 21.0444 62.9512 16.0006C57.9512 10.9567 51.8985 8.43478 44.7933 8.43478C37.6003 8.43478 31.4819 10.9567 26.438 16.0006C21.3942 21.0444 18.8722 27.119 18.8722 34.2242C18.8722 35.7155 19.0257 37.2725 19.3328 38.8953C19.6398 40.5181 20.0126 41.8997 20.4512 43.04C19.3108 43.2155 18.0389 43.5006 16.6354 43.8953C15.2319 44.29 13.9599 44.7506 12.8196 45.2769C12.2056 43.6979 11.745 41.9435 11.438 40.0137C11.131 38.0839 10.9775 36.1541 10.9775 34.2242C10.9775 24.8383 14.267 16.8778 20.8459 10.3427C27.4249 3.80758 35.4073 0.540039 44.7933 0.540039C54.0915 0.540039 62.0082 3.82951 68.5433 10.4085C75.0784 16.9874 78.3459 24.926 78.3459 34.2242C78.3459 37.9962 77.688 41.7242 76.3722 45.4085C75.0564 49.0927 73.2582 52.2944 70.9775 55.0137L105.714 89.4874L99.9249 95.2769ZM16.3722 87.9085L25.4512 78.8295L34.3985 87.7769L37.4249 84.7506L28.3459 75.6716L37.688 66.3295L34.6617 63.3032L25.4512 72.5137L16.2406 63.3032L13.2143 66.3295L22.4249 75.54L13.2143 84.7506L16.3722 87.9085Z" />
                                    </svg>
                                    <div class="layout-no-data-text">
                                        <span>No results found</span>
                                    </div>
                                </div>`);$(o).append(n)}else{for(l;l<e.lister.rows.length;l++)kt(e.lister.rows[l]);lt()}r(function(){e.listerStatus=t.listerStatus.DONE})}function at(){a++;e.onAction({action:"show-more",data:{listerStatus:e.listerStatus,listerState:{currentPage:a}}})}function g(n){if(e.settings.enabledBulkOperations===!1||n.availableForBulkOperations===!1)return null;var t=_.indexOf(e.lister.rows,n);return $('<div class="library-item-controls left-side"><label class="switch" data-t-bulk-checkbox=""><input type="checkbox" data-ng-model="lister.rows['+t+'].checked" data-unit-t-lister-row-bulk-checkbox/><i><\/i> <\/label> <\/div>')}function vt(n){var r,u,s,o,i,h,t;if(e.settings.enabledContextMenuActions===!1||n.contextMenuActions===null)return null;for(r=$('<div c-dropdown class="btn-group"><\/div>'),u=$('<button class="btn btn-default btn-sm btn-icon" data-c-dropdown-action><i class="material_more_horiz"><\/i><\/button>'),r.append(u),f.setAttribute(u,"button","Actions"),f.setAttribute(u,"instance",n.tile.title),s=$('<ul class="dropdown-menu" data-c-dropdown-menu><\/ul>'),r.append(s),o=0;o<n.contextMenuActions.length;o++)i=n.contextMenuActions[o],h=$('<li class="item"><\/li>'),s.append(h),t=$("<a>"+i.label+"<\/a>"),f.setAttribute(t,"instance",n.tile.title),f.setAttribute(t,"action",i.label),h.append(t),i.link===null?t.attr("data-ng-click","handleAction('"+i.name+"',"+n.id+")"):(t.attr("href",i.link),i.targetBlank===!0&&(t.attr("target","_blank"),t.attr("rel","noreferrer")));return r}function yt(n){if(n.linkedInSharingActions===null)return null;var t=_.indexOf(e.lister.rows,n);return $('<div class="btn-group"><div data-c-linked-in data-actions="lister.rows['+t+'].linkedInSharingActions" data-is-small="true"><\/div><\/div>')}function nt(n){var t=$('<div class="library-item-controls right-side"><\/div>');return t.append(yt(n)),t.append(vt(n)),t}function tt(){return $('<div class="library-item-overlay large-only"><\/div>')}function it(n,i){var r=$('<div class="library-item-title"><\/div>'),f=$('<span class="library-item-name format-wrap"><\/span>');f.text(n.tile.title);u.setTranslateAttribute(f,!1);r.append(f);switch(e.lister.layout){case t.listerLayout.TILES_S:case t.listerLayout.TILES_L:i===!0&&r.append(b(n));break;case t.listerLayout.WIDE:case t.listerLayout.COMPACT:r.append(w(n))}return r}function b(t){if(t.tile.rating===null)return null;var r=_.indexOf(e.lister.rows,t),i=$('<div data-c-rating data-rating="lister.rows['+r+'].tile.rating" data-on-action="handleAction(\''+t.tile.rating.actionName+"',"+t.id+')"><\/div>');return n(i)(c),i}function w(n){return $('<div class="library-item-filetype"><i class="'+i.getMaterialIconClass(n.tile.icon)+'"><\/i><\/div>')}function y(n){if(i.valueIsEmptyOrNull(n.tile.sizeOrLength)===!0)return null;var t=$('<span class="library-item-filesize"><\/span>');return t.text(n.tile.sizeOrLength),t}function rt(n){if(n.tile.views===null)return null;var t=$('<span class="library-item-views"><\/span>');return t.text(n.tile.views),t}function ut(n){if(n.tile.tags===null)return null;var t=_.indexOf(e.lister.rows,n);return $('<div class="library-item-tags" data-c-thumbnail-tags data-tags="lister.rows['+t+'].tile.tags"><\/div>')}function ft(n){var i=$('<p class="library-item-date"><\/p>'),r=$("<span><\/span>"),t;return r.text("Last updated "+u.wrapTextInVar(n.tile.lastUpdatedDate,u.variableName.DATE)+" by"),i.append(r),t=$('<span class="library-item-user"><\/span>'),t.text(n.tile.lastUpdatedByUserName),u.setTranslateAttribute(t,!1),i.append(t),i}function et(n,r){var u=$('<div class="library-item-details"><\/div>'),o,s,f;switch(e.lister.layout){case t.listerLayout.TILES_S:u.append(y(n));u.append(w(n));break;case t.listerLayout.TILES_L:r===!0?(u.append(ut(n)),o=$('<div class="library-item-details-fileinfo"><\/div>'),o.append(y(n)),o.append(w(n))):(u.append(y(n)),u.append(w(n)));u.append(o);break;case t.listerLayout.WIDE:if(f=$('<div class="library-item-details-header circle-separated-items"><\/div>'),r===!0&&f.append(b(n)),f.append(y(n)),r===!0&&f.append(rt(n)),u.append(f),i.valueIsEmptyOrNull(n.tile.description)===!1&&(s=$('<p class="library-item-description"><\/p>'),s.text(n.tile.description),u.append(s)),r===!0){var h=$('<div class="library-item-details-footer"><\/div>'),c=$('<div class="library-item-quicklink-date"><\/div>'),l=_.indexOf(e.lister.rows,n);c.append($('<div data-c-thumbnail-image data-image="lister.rows['+l+'].tile.lastUpdatedByUserProfilePicture" class="avatar avatar-medium"><\/div>'));c.append(ft(n));h.append(c);h.append(ut(n));u.append(h)}break;case t.listerLayout.COMPACT:f=$('<div class="library-item-details-header circle-separated-items"><\/div>');r===!0&&f.append(b(n));f.append(y(n));r===!0&&(f.append(rt(n)),f.append(ft(n)));u.append(f)}return u}function ot(i,r,u,f){var o,s,h;i.tile.actionName!==null?(o=$(document.createElement("div")),o.addClass("library-item-content pointer"),o.attr("data-ng-click","handleAction('"+i.tile.actionName+"',"+i.id+")")):(o=$(document.createElement("a")),o.addClass("library-item-content pointer"),o.attr("href",i.tile.link),i.tile.targetBlank===!0&&(o.attr("target","_blank"),o.attr("rel","noreferrer")));switch(e.lister.layout){case t.listerLayout.TILES_S:case t.listerLayout.TILES_L:case t.listerLayout.WIDE:s="";switch(i.tile.thumbnailDisplayLayoutType){case k.FIT:s="fit";break;case k.FILL:s="fill"}o.append('<div class="library-item-graphic '+s+'">'+(i.tile.documentType===null&&i.tile.thumbnail===null?'<img data-c-image-placeholder data-mode="max" class="library-item-preview" src="assets/img/icons/file-grid-dir.svg" />':'<div data-c-thumbnail-image data-image="lister.rows['+r+'].tile.thumbnail" data-use-long-text="true" class="library-item-preview"><\/div>')+"<\/div>")}return h=$('<div class="library-item-text"><\/div>'),h.append(u),h.append(f),o.append(h),n(o)(c)}function pt(t){if(t.tile.label===null)return null;var r=_.indexOf(e.lister.rows,t),i=$('<div class="library-item-status"><span data-c-label data-label="lister.rows['+r+'].tile.label" data-unit-t-label-archived><\/span><\/div>');return $(o).append(n(i)(c)),i}function wt(n,t,i){var r=it(n,!0),u=et(n,!0);i.append(ot(n,t,r,u));i.append(pt(n));i.append(g(n));i.append(nt(n));i.append(tt(n))}function bt(n,t,i){var r=it(n,!1),u=et(n,!1);i.append(ot(n,t,r,u));i.append(g(n));i.append(nt(n));i.append(tt(n))}function kt(t){var r=_.indexOf(e.lister.rows,t),i=$('<div class="library-item" data-ng-class="{\'active\': showBulkControls(lister.rows['+r+']) === true}"><\/div>');f.setAttribute(i,"library-item",t.tile.title);t.tile.documentType===null?bt(t,r,i):wt(t,r,i);$(o).append(n(i)(c))}var c=null,l=0,a=1,k={FIT:1,FILL:2},v=null,h=null;e.$on("$destroy",function(){p()});e.isLoading=function(){return e.listerStatus===t.listerStatus.LOADING||e.listerStatus===t.listerStatus.RENDERING};e.showBulkControls=function(n){return e.settings.enabledBulkOperations===!1?!1:n.availableForBulkOperations===!1?!1:e.settings.bulkOperationsVisible===!0?!0:i.isMobileDevice()===!1?_.filter(e.lister.rows,function(n){return n.checked===!0}).length>0:!1};e.showMore=function(){a++;e.onAction({action:"show-more",data:{listerStatus:e.listerStatus,listerState:{currentPage:a}}})};e.handleAction=function(n,t){e.onAction({action:n,data:t})};e.$watch(function(){return e.listerStatus},function(n){switch(n){case t.listerStatus.LOADING:p();break;case t.listerStatus.LOADING_MORE:h!==null&&h.addClass("loading-large");break;case t.listerStatus.RENDERING_MORE:ct();break;case t.listerStatus.RENDERING:p();st();ht()}},!1);p()}}}]);angular.module("sharedElements").directive("cLister",["$compile","$window","constants","helpService","$timeout","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",scope:{lister:"=",settings:"=",listerStatus:"=",onRefresh:"&?",onAction:"&?"},link:function(e,o,s){function tt(){h!==null&&h.$destroy();c=0;e.mainCheckbox.isChecked=!1;h=e.$new();s.$addClass("n-full-width-height lister-viewer");s.$removeClass("layout-table");$(o).attr("tabindex","0");$(o).html("");angular.element(t).off("resize",d);angular.element(t).off("resize",g);l=$(document.createElement("div"));l.attr("data-ng-class",'{"loading-large": isLoading() === true}');l.addClass("loading-large n-full-width-height");$(o).append(n(l)(h))}function v(n){return[i.listerColumnType.INT,i.listerColumnType.DOUBLE,i.listerColumnType.PERCENT,i.listerColumnType.CURRENCY,i.listerColumnType.MEDIA_LENGTH,i.listerColumnType.FILE_SIZE].includes(n.type)}function g(){switch(e.lister.layout){case i.listerLayout.BAR_CHART:case i.listerLayout.TIMELINE:case i.listerLayout.TABLE:case i.listerLayout.CONTENT:if(y==null)return;if(r.isMobileDevice()===!0&&y===a.MOBILE||r.isMobileDevice()===!1&&y===a.LARGE)return;u(function(){e.listerStatus=i.listerStatus.RENDERING});break;case i.listerLayout.TILES_L:case i.listerLayout.TILES_S:if(b==null)return;if(r.isMobileDevice()===!0&&b===a.MOBILE||r.isMobileDevice()===!1&&b===a.LARGE)return;u(function(){e.listerStatus=i.listerStatus.RENDERING});break;case i.listerLayout.MAP:throw Error("Unsupported Lister layout: "+e.lister.layout);default:throw Error("Unknown Lister layout: "+e.lister.layout);}}function w(n){if(typeof n.actions=="undefined")throw new Error('"column.actions" is undefined');if(n.actions===null)return!1;if(Object.prototype.toString.call(n.actions)!=="[object Array]")throw new Error('"column.actions" is not Array');return n.actions.length>0}function it(n){var t="";return e.settings.enabledSorting===!0&&(t+="sortable "),e.settings.enabledSorting===!0&&n.name===e.lister.sortBy&&(t+="sortable-on "),e.lister.sortReverse===!1&&(t+="sortable-asc "),w(n)&&(t+="has-actions "),t.trim()}function rt(n){e.settings.enabledSorting!==!1&&e.$apply(function(){var t=n.data.columnName,u,r;if(t===e.lister.sortBy)e.lister.sortReverse=!e.lister.sortReverse;else{u=_.find(e.lister.columns,function(n){return n.name===t});r=!0;switch(u.type){case i.listerColumnType.STRING:case i.listerColumnType.HTML_TEXT:case i.listerColumnType.ENTITY_URL:case i.listerColumnType.PILL:r=!1}e.lister.sortReverse=r}if(e.lister.sortBy=t,e.lister.currentPage=1,typeof e.onAction!="undefined"&&e.onAction!==null)e.onAction({action:"refresh-lister",data:{listerState:{sortBy:e.lister.sortBy,sortReverse:e.lister.sortReverse,currentPage:e.lister.currentPage}}});else e.onRefresh()})}function k(n){n.stopPropagation();e.onAction({action:n.data.actionName,data:null})}function d(){var t,i,n,r;if(e.settings.enabledFixedHeader!==!1&&(t=$(o).find("thead tr"),t.length>1))for(i=0,n=0;n<t.length;n++)r=$(t[n]),n!==0&&r.find("th").each(function(){$(this).css("top",i+"px")}),i+=r[0].getBoundingClientRect().height}function ut(){e.settings.enabledFixedHeader!==!1&&r.isMobileDevice()}function ct(t,u){var o=0,s=null,a=null,tt=null,ut=null,ct=_.filter(e.lister.columns,function(n){return n.groupName!==null}).length>0,ni=_.filter(e.lister.columns,function(n){return n.description!==null}).length>0,c=[],d,lt,ti,ii,at,ft,y,et,vt,g,wt,ot,ri,bt,st,l,b,kt,pt,dt,nt,gt,yt,ht;if(ct===!0){for(o=0;o<e.lister.columns.length;o++){if(s=e.lister.columns[o],d=null,s.groupName===null)d=$.extend(!0,{count:1,isFirst:o===0,isLast:o===e.lister.columns.length-1,isAlternate:!1},s),c.push(d);else if(_.filter(c,function(n){return n.groupName===s.groupName}).length>0){if(lt=c[c.length-1],lt.groupName!==s.groupName)throw new Error("Lister - Columns: duplicate group name "+s.groupName);lt.count++;o===e.lister.columns.length-1&&(lt.isLast=!0);d=lt}else d=$.extend(!0,{count:1,isFirst:o===0,isLast:o===e.lister.columns.length-1,isAlternate:!1},s),c.push(d);s.groupedColumn=d}for(o=0;o<c.length;o++)c[o].isAlternate=e.settings.enabledBulkOperations===!0&&e.lister.layout===i.listerLayout.TABLE?o%2==0:o%2!=0,c[o].groupName!==null&&c[o].count===1&&(ti=_.find(columns,function(n){if(c[o].name===n.name)return n}),ii=_.find(e.lister.columnGroups,function(n){if(c[o].groupName===n.name)return n}),ti.actions=ii.actions,c[o].groupName=null);if(_.filter(c,function(n){return n.groupName!==null}).length===0)ct=!1;else{for(at=$(document.createElement("colgroup")),ft=$(document.createElement("tr")),ft.addClass("table-header-grouped-row"),ni===!0&&ft.addClass("has-description-row"),e.settings.enabledBulkOperations===!0&&e.lister.layout===i.listerLayout.TABLE&&(at.append("<col>"),tt=$(document.createElement("tr")),tt.append('<th rowspan="2" class="table-switch"><label class="switch"><input type="checkbox" data-ng-model="mainCheckbox.isChecked"><i><\/i><\/label><\/th>'),ft.append(n(tt.html())(h))),o=0;o<c.length;o++)a=c[o],y=$(document.createElement("th")),a.isAlternate===!0&&y.addClass("alternate-column"),et=$(document.createElement("div")),et.addClass("cell-content"),vt=$(document.createElement("span")),vt.addClass("cell-content-header-label"),et.append(vt),a.count===1?(y.click({columnName:a.name},rt),ut=it(a),ut!==""&&y.addClass(ut),at.append("<col>"),y.attr("rowspan","2"),vt.text(a.label)):(at.append('<col span="'+a.count+'">'),y.attr("colspan",a.count),y.addClass("is-grouped-column"),g=_.find(e.lister.columnGroups,function(n){return n.name===a.groupName}),vt.text(g.label),w(g)===!0&&(wt=$(document.createElement("span")),ot=$(document.createElement("a")),ot.addClass("cell-action"),ot.attr("href","javascript:;"),ot.click({actionName:g.actions[0].name},k),ot.text(g.actions[0].label),wt.append(ot),et.append(wt)),g.inlineHelp!==null&&(ri=_.indexOf(e.lister.columnGroups,g),bt=$(document.createElement("div")),bt.append('<span data-c-inline-help="" data-message="lister.columnGroups['+ri+'].inlineHelp"><\/span>'),et.append(n(bt.html())(h)))),y.append(et),ft.append(y);t.append(at);u.append(ft)}}for(st=$(document.createElement("tr")),st.addClass("table-header-main-row"),ni===!0&&st.addClass("has-description-row"),e.settings.enabledBulkOperations===!0&&e.lister.layout===i.listerLayout.TABLE&&ct===!1&&(tt=$(document.createElement("tr")),tt.append('<th class="table-switch"><label class="switch"><input type="checkbox" data-ng-model="mainCheckbox.isChecked"><i><\/i><\/label><\/th>'),st.append(n(tt.html())(h))),o=0;o<e.lister.columns.length;o++)(s=e.lister.columns[o],ct!==!0||s.groupName!==null)&&(l=$(document.createElement("th")),r.setTestAttribute(l,"table-heading",s.fullLabel),l.click({columnName:s.name},rt),ut=it(s),ut!==""&&l.addClass(ut),ct===!0&&(s.groupedColumn.isAlternate===!0&&l.addClass("alternate-column"),s.groupedColumn.isFirst===!1&&l.addClass("not-first"),s.groupedColumn.isLast===!1&&l.addClass("not-last")),b=$(document.createElement("div")),b.addClass("cell-content"),s.name===e.lister.sortBy&&(kt=$(document.createElement("span")),kt.addClass("caret"),b.append(kt)),v(s)&&b.addClass(p),pt=$(document.createElement("span")),pt.addClass("cell-content-header-label"),pt.text(s.fullLabel),b.append(pt),w(s)===!0&&(dt=$(document.createElement("span")),nt=$(document.createElement("a")),nt.addClass("cell-action"),nt.attr("href","javascript:;"),nt.click({actionName:s.actions[0].name},k),nt.text(s.actions[0].label),r.setTestAttribute(nt,"action",s.fullLabel),dt.append(nt),b.append(dt)),s.inlineHelp!==null&&(gt=$(document.createElement("div")),gt.append('<span data-c-inline-help="" data-message="lister.columns['+o+'].inlineHelp"><\/span>'),b.append(n(gt.html())(h))),l.append(b),s.description!==null&&(yt=$(document.createElement("div")),yt.addClass("cell-content"),r.setTestAttribute(yt,"table-heading-description",s.fullLabel),ht=$(document.createElement("span")),ht.addClass("cell-description"),v(s)&&ht.addClass(p),ht.text(s.description),f.setTranslateAttribute(ht,s.translate),yt.append(ht),l.append(yt)),st.append(l));u.append(st)}function lt(t){var pt=c+nt>e.lister.rows.length?e.lister.rows.length:c+nt,a,w,ct,lt,rt,et,b,at,vt,d,o,yt,l,tt,ot,y,st,g,ht,it,k;for(c;c<pt;c++)for(a=e.lister.rows[c],w=$(document.createElement("tr")),t.append(w),r.setTestAttribute(w,"table-row",a.title),e.settings.enabledBulkOperations===!0&&e.lister.layout===i.listerLayout.TABLE&&(a.availableForBulkOperations===!0?(ct=$('<label class="switch"><input type="checkbox" ng-model="lister.rows['+c+'].checked"><i><\/i><\/label>'),r.setTestAttribute(ct,"table-row-checkbox"),lt=$('<td class="table-switch"><\/td>'),lt.append(ct),w.append(lt),n(w)(h)):w.append("<td>&nbsp;<\/td>")),rt=0;rt<e.lister.columns.length;rt++){var s=e.lister.columns[rt],u=_.find(a.cells,function(n){return n.name===s.name}),ut=null;if(a.contextMenuActions!==null){if(r.validateActions(a.contextMenuActions),typeof e.lister.contextMenuColumnName=="undefined")throw new Error('"lister.contextMenuColumnName" is undefined');e.lister.contextMenuColumnName===s.name&&(ut=$('<c-actions-button data-actions="lister.rows['+c+'].contextMenuActions" data-on-action="contextMenuAction(action, lister.rows['+c+'].id)" data-is-small="true"><\/c-actions-button>'),r.setTestAttribute(ut,"name",a.title))}if(et=null,typeof a.linkedInSharingActions!="undefined"&&a.linkedInSharingActions!==null&&(et='<div data-c-linked-in data-actions="lister.rows['+c+'].linkedInSharingActions" data-is-small="true"><\/div>'),u.icon!==null&&u.materialIcon!==i.materialIconType.NONE)throw new Error('"both cell.icon and cell.materialIcon cannot have values!');if(b=null,at=!1,u.icon!==null?(d=r.getIconClass(u.icon),u.value!==null&&u.link!==null?(vt="",u.targetBlank&&(vt='target="_blank" rel="noreferrer"'),b='<a href="'+u.link+'"'+vt+'><span class="'+d+'" style="cursor:pointer;"><\/span><\/a>'):b='<span class="'+d+'"><\/span>'):u.materialIcon!==i.materialIconType.NONE&&(d=r.getMaterialIconClass(u.materialIcon),d!==""&&(at=!0,b='<i class="icon-size-18 icon-spacer '+d+'" data-unit-t-lister-row-icon><\/i>')),o=null,u.value!==null){typeof u.link!="undefined"&&u.link!==null?(o=$(document.createElement("a")),o.attr("href",u.link),u.targetBlank&&o.attr("target","_blank"),o.attr("rel","noreferrer")):typeof u.linkAction!="undefined"&&u.linkAction!==null?(o=$(document.createElement("a")),o.attr("href","javascript:;"),o.attr("data-ng-click",'linkAction("'+u.linkAction+'", lister.rows['+c+"].id)"),n(o)(h)):o=$(document.createElement("span"));u.isHtmlValue===!0?(yt=$(document.createElement("div")),yt.html(u.value),o.html(yt.html()),ft(s)&&f.setIsolateAttribute(o)):o.text(u.value);switch(u.formatType){case i.listerCellFormatType.NO_WRAP:o.addClass("white-space-no-wrap");break;case i.listerCellFormatType.WRAP_ON_LINE_BREAK:case i.listerCellFormatType.AUTO_WRAP_SMALL_WIDTH:case i.listerCellFormatType.AUTO_WRAP_MEDIUM_WIDTH:case i.listerCellFormatType.AUTO_WRAP_LARGE_WIDTH:o.addClass("format-wrap");break;default:throw new Error("Unexpected CellWrapType: "+u.formatType);}f.setTranslateAttribute(o,s.translate)}l=$(document.createElement("td"));switch(u.formatType){case i.listerCellFormatType.NO_WRAP:case i.listerCellFormatType.WRAP_ON_LINE_BREAK:break;case i.listerCellFormatType.AUTO_WRAP_SMALL_WIDTH:l.addClass("min-sm");break;case i.listerCellFormatType.AUTO_WRAP_MEDIUM_WIDTH:l.addClass("min-md");break;case i.listerCellFormatType.AUTO_WRAP_LARGE_WIDTH:l.addClass("min-lg");break;default:throw new Error("Unexpected CellWrapType: "+u.formatType);}e.settings.enabledSorting===!0&&e.lister.sortBy===s.name&&l.addClass("sortable-on");tt=$(document.createElement("div"));tt.addClass("cell-content");ot=$(document.createElement("div"));ot.addClass("cell-content-wrapper");y=$(document.createElement("div"));y.addClass("cell-content-row");b!==null&&(st=$(document.createElement("div")),st.addClass("cell-content-cell cell-content-icon"),st.append(b),y.append(st));g=$(document.createElement("div"));g.addClass("cell-content-cell");v(s)&&g.addClass(p);b!==null&&at===!0&&g.addClass("cell-content-label");g.append(o!==null?o:"&nbsp;");y.append(g);ot.append(y);tt.append(ot);v(s)||l.append(tt);r.setTestAttribute(l,"table-cell",s.fullLabel);w.append(l);e.lister.contextMenuColumnName===s.name&&(a.isInvalid===!0&&(ht=$(document.createElement("div")),ht.addClass("cell-content-cell cell-content-validation-message"),ht.append('<span class="cell-validation-message">Error. Edit to fix.<\/span>'),y.append(ht)),et!==null&&(l.removeClass("min-sm"),l.addClass("min-md"),it=$(document.createElement("div")),it.addClass("cell-content-cell cell-content-share-button "),it.append(et),y.append(it),n(it)(h)),ut!==null&&(k=$(document.createElement("div")),k.addClass("cell-content-cell cell-content-action"),k.append(ut),v(s)?(k.addClass(p),y.prepend(k)):y.append(k),n(k)(h)));v(s)&&l.append(tt)}}function ft(n){return n.type!==i.listerColumnType.PILL}function et(){var n=$(o).find("tbody");if(c>=e.lister.rows.length){u(function(){e.listerStatus=i.listerStatus.DONE;d();ut();u(function(){d()})});return}lt(n);u(function(){et()},ht)}function at(){var i,r,u;if(s.$addClass("layout-table"),y=a.LARGE,i=$('<table class="table large-only"><\/table>'),i.attr("data-ng-class",'{"loading-large": isLoading() === true}'),i.addClass("loading-large"),$(l).append(n(i)(h)),r=$(document.createElement("thead")),e.settings.enabledFixedHeader===!0&&r.addClass("sticky-header"),ct(i,r),i.append(r),u=$(document.createElement("tbody")),i.append(u),et(),e.settings.enabledFixedHeader===!0)angular.element(t).on("resize",d)}function ot(t,u){var o=$(document.createElement("div")),v,b,y,s,l,e,a,p;if(t.groupName!==null&&o.addClass("cell-group-padding"),v=t.fullLabel,b=u.value,w(t)===!0?(o.append('<b class="cell-label colon">'+r.htmlEncode(v)+"<\/b>"),y=$(document.createElement("span")),s=$(document.createElement("a")),s.addClass("cell-action"),s.attr("href","javascript:;"),s.click({actionName:t.actions[0].name},k),s.text(t.actions[0].label),y.append(s),o.append(y)):o.append('<b class="cell-label colon">'+r.htmlEncode(v)+"<\/b>"),l=null,e=null,u.icon!==null&&u.materialIcon!==i.materialIconType.NONE)throw new Error('"both cell.icon and cell.materialIcon cannot have values!');return(u.icon!==null||u.materialIcon!==i.materialIconType.NONE)&&(a=null,u.icon!==null?(a=r.getIconClass(u.icon),u.value!==null&&u.link!==null?(p="",u.targetBlank&&(p='target="_blank" rel="noreferrer"'),l='<a href="'+u.link+'"'+p+'><span class="cell-icon '+a+'" style="cursor:pointer;"><\/span><\/a>'):l='<span class="cell-icon '+a+'"><\/span>'):(a=r.getMaterialIconClass(u.materialIcon),l='<span class="cell-icon '+a+' icon-spacer-small icon-size-16"><\/span>'),o.append(l)),r.valueIsEmptyOrNull(b)===!1&&(u.link!==null?(e=$(document.createElement("a")),e.attr("href",u.link),u.targetBlank&&e.attr("target","_blank"),e.attr("rel","noreferrer")):u.linkAction!==null?(e=$(document.createElement("a")),e.attr("href","javascript:;"),e.attr("data-ng-click",'linkAction("'+u.linkAction+'", lister.rows['+c+"].id)"),n(e)(h)):e=$(document.createElement("span")),u.isHtmlValue===!0?(e.html(u.value),ft(t)&&f.setIsolateAttribute(e)):e.text(u.value),f.setTranslateAttribute(e,t.translate),o.append(e)),l===null&&e===null&&o.append('<span class="cell-empty"><\/span>'),o}function st(n,t,i){var o,r,f,s,u;return n.length===0?null:t.groupName===null?null:i!==null&&t.groupName===i.groupName?null:(o=_.find(n,function(n){return n.groupName===t.groupName}),o.count<=1)?null:(o.isRendered=!0,r=_.find(e.lister.columnGroups,function(n){return n.name===t.groupName}),f=$(document.createElement("div")),f.append("<b>"+r.label+"<\/b>"),w(r)===!0&&(s=$(document.createElement("span")),u=$(document.createElement("a")),u.attr("href","javascript:;"),u.click({actionName:r.actions[0].name},k),u.text(r.actions[0].label),s.append(u),f.append(s)),f)}function vt(){var c,ut,b,g,nt,et,f,p,v,tt,k,it,d;s.$addClass("layout-table");y=a.MOBILE;var ft=4,rt=e.lister.columns.length>ft?ft:e.lister.columns.length,ct=e.lister.columns.length>rt,w=$(document.createElement("div"));w.addClass("table-mobile small-only");w.attr("data-ng-class",'{"loading-large": isLoading() === true}');w.addClass("loading-large");$(l).append(n(w)(h));var t=null,o=[],lt=_.filter(e.lister.columns,function(n){return n.groupName!==null}).length>0;if(lt===!0)for(t=0;t<e.lister.columns.length;t++)if(c=e.lister.columns[t],c.groupName===null)o.push($.extend(!0,{count:1},c));else if(_.filter(o,function(n){return n.groupName===c.groupName}).length>0){if(ut=o[o.length-1],ut.groupName!==c.groupName)throw new Error("Lister - Columns: duplicate group name "+c.groupName);ut.count++}else o.push($.extend(!0,{count:1},c));for(t=0;t<e.lister.rows.length;t++){for(b=e.lister.rows[t],g=$(document.createElement("div")),g.addClass("table-mobile-row"),nt=$(document.createElement("div")),nt.addClass("table-mobile-cell"),et=$(document.createElement("div")),et.addClass("table-mobile-cell"),f=$(document.createElement("div")),f.addClass("cell-content"),p=[],v=0;v<rt;v++){var ht=e.lister.columns[v],at=v===0?null:e.lister.columns[v-1],vt=b.cells[v];f.append(st(o,ht,at));f.append(ot(ht,vt))}if(b.contextMenuActions!==null&&(r.validateActions(b.contextMenuActions),tt=$(document.createElement("div")),tt.addClass("cell-more-action"),tt.append('<c-mobile-context-menu-button data-actions="lister.rows['+t+'].contextMenuActions" data-on-action="contextMenuAction(action, lister.rows['+t+'].id)"><\/c-mobile-context-menu-button>'),p.push(tt)),ct&&(k=$(document.createElement("div")),k.addClass("cell-expander"),k.click({element:f,rowIndex:t,lastCellIndex:rt,groupedColumns:o},function(n){for(var t=n.data.lastCellIndex;t<e.lister.columns.length;t++){var i=e.lister.columns[t],r=t===0?null:e.lister.columns[t-1],u=e.lister.rows[n.data.rowIndex].cells[t];n.data.element.append(st(n.data.groupedColumns,i,r));n.data.element.append(ot(i,u))}$(this).hide()}),k.append('<i class="material_expand_more icon-size-16"><\/i>'),p.push(k)),p.length>0)for(f.addClass("has-action"),it=0;it<p.length;it++)f.append(p[it]);e.settings.enabledBulkOperations===!0&&e.lister.layout===i.listerLayout.TABLE&&(f.attr("data-ng-class",'{"has-bulk-action": settings.bulkOperationsVisible === true}'),b.availableForBulkOperations===!0&&(d=$(document.createElement("div")),d.addClass("cell-bulk-action"),d.attr("data-ng-show","settings.bulkOperationsVisible === true"),d.append('<label class="switch"><input type="checkbox" ng-model="lister.rows['+t+'].checked"><i><\/i><\/label>'),f.append(d)));n(f)(h);nt.append(f);g.append(nt);w.append(g)}u(function(){e.listerStatus=i.listerStatus.DONE})}function yt(t,u){var o=t.tile,s,v,y,l,a,p,c,w,b;return o.actionName!==null?s=$("<div data-ng-click=\"cellAction('"+o.actionName+"', "+t.id+')" class="album-item-body"><\/div>'):o.link!==null?(v="",o.targetBlank&&(v='target="_blank" rel="noreferrer"'),s=$('<a href="'+o.link+'" class="album-item-body" '+v+"><\/a>")):s=$('<div class="album-item-body disabled"><\/div>'),y=$('<div class="album-item-graphic"><\/div>'),s.append(y),l="",l=$('<div class="album-item-preview" data-c-thumbnail-image data-image="lister.rows['+u+'].tile.thumbnail">'),e.lister.layout!==i.listerLayout.TILES_S&&l.attr("data-use-long-text","true"),y.append(l),a=$('<div class="album-item-text"><\/div>'),s.append(a),p=$('<div class="album-item-title"><\/div>'),a.append(p),c=$('<span class="album-item-name"><\/span>'),c.text(t.title),r.setTestAttribute(c,"album-item-neme",t.title),f.setTranslateAttribute(c,!1),p.append(c),w=$('<div class="album-item-details"><\/div>'),a.append(w),o.description!==null&&(b=$('<span class="album-item-size">'+o.description+"<\/span>"),w.append(b)),o.highlightThumbnail===!0&&s.addClass("album-item-selected"),n(s)(h)}function pt(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}if(e.isDisabled&&e.disabledTooltip==="")throw new Error('"disabledTooltip" is required when actionsButton is disabled.');}function wt(n,t){var f=$('<div c-dropdown class="btn-group"><\/div>'),s=$('<button class="btn btn-default btn-sm btn-icon" data-c-dropdown-action><i class="material_more_horiz"><\/i><\/button>'),e,u,i,o,r;for(f.append(s),e=$('<ul class="dropdown-menu" data-c-dropdown-menu><\/ul>'),f.append(e),u=0;u<n.contextMenuActions.length;u++)i=n.contextMenuActions[u],pt(i),o=$('<li class="item"><\/li>'),e.append(o),r=$("<a data-unit-t-multiple-actions-link>"+i.label+"<\/a>"),o.append(r),i.link===null?r.attr("data-ng-click","contextMenuAction(lister.rows["+t+"].contextMenuActions["+u+"].name, lister.rows["+t+"].id)"):(r.attr("href",i.link),i.targetBlank===!0&&(r.attr("target","_blank"),r.attr("rel","noreferrer")));return f}function bt(t,i){var u,f,o,e;return t.contextMenuActions===null&&t.linkedInSharingActions===null?null:(u=$('<div class="album-item-controls right-side"><\/div>'),t.linkedInSharingActions!==null&&(f=$('<div class="album-item-share-button btn-group"><\/div>'),u.append(f),o='<div data-c-linked-in data-is-small="true" data-actions="lister.rows['+i+'].linkedInSharingActions"><\/div>',f.append(o),n(f)(h),u.append(f)),t.contextMenuActions!==null&&(r.validateActions(t.contextMenuActions),e=wt(t,i),n(e)(h),u.append(e)),u)}function kt(t,i){var f,u;return(e.settings.enabledBulkOperations===!1||t.availableForBulkOperations===!1)&&(r.isMobileDevice()===!0||t.contextMenuActions===null)?null:(f=$('<div class="album-item-controls left-side"><\/div>'),e.settings.enabledBulkOperations===!0&&t.availableForBulkOperations===!0&&(u=$('<label class="switch"><input type="checkbox" ng-model="lister.rows['+i+'].checked" data-unit-t-lister-row-bulk-checkbox><i><\/i><\/label>'),r.isMobileDevice()===!0&&u.attr("data-ng-show","settings.bulkOperationsVisible === true"),n(u)(h),f.append(u)),f)}function dt(t,i){var e=$('<div class="album-item"><\/div>'),u=$('<div class="album-item-content" data-show-next-to-the-pointer="true" data-ng-class="{\'active\': lister.rows['+i+'].checked}"><\/div>'),c,o,s;return f.setTranslateAttribute(e,!1),r.isMobileDevice()===!1&&u.attr("data-c-tooltip","[[exec[[getThumbnailTooltip(lister.rows["+i+"])]]exec]]"),n(u)(h),e.append(u),c=yt(t,i),u.append(c),o=kt(t,i),s=bt(t,i),o!==null&&u.append(o),s!==null&&u.append(s),e}function gt(){var f,s,o,t,c,v;for(b=r.isMobileDevice()===!0?a.MOBILE:a.LARGE,f=$('<div class="album"><\/div>'),n(f)(h),$(l).append(f),s=$('<div class="album-content"><\/div>'),f.append(s),o=$('<div class="album-grid album-grid-flow"><\/div>'),s.append(o),e.lister.layout===i.listerLayout.TILES_L&&o.addClass("album-grid-large"),t=0;t<e.lister.rows.length;t++)c=e.lister.rows[t],v=dt(c,t),o.append(v);u(function(){e.listerStatus=i.listerStatus.DONE;ut()})}var h=null,nt=10,ht=5,c=0,a={LARGE:1,MOBILE:2},y=null,b=null,l,p;e.mainCheckbox={isChecked:!1};l=null;p="cell-align-right";e.$on("$destroy",function(){tt()});e.thumbnailsListerAction=function(n,t){e.onAction({action:n,data:t})};e.cellAction=function(n,t){var i=_.find(e.lister.rows,function(n){return n.id===t});e.onAction({action:n,data:{rowId:i.id,additionalData:i.additionalData}})};e.contextMenuAction=function(n,t){var i=_.find(e.lister.rows,function(n){return n.id===t});e.onAction({action:n,data:{rowId:i.id,additionalData:i.additionalData}})};e.linkAction=function(n,t){var i=_.find(e.lister.rows,function(n){return n.id===t});e.onAction({action:n,data:{rowId:i.id,additionalData:i.additionalData}})};e.getThumbnailTooltip=function(n){var t=$("<div>").text(n.title).html();return n.tile.description!==null&&(t+=" <br/> "+n.tile.description),t};e.isLoading=function(){return e.listerStatus!==i.listerStatus.DONE};e.$watch(function(){return e.listerStatus},function(n){var h,o,f,s;switch(n){case i.listerStatus.LOADING:l!==null&&l.html("");break;case i.listerStatus.RENDERING:if(tt(),e.lister.rows.length===0){h=$('<i class="icon-size-18 material_info"><\/i>');o=$("<p>No results.<\/p>");r.setTestAttribute(o,"no-data","No Items");f=$('<div class="no-data alert alert-info"><\/div>');f.append(h);f.append(o);s=$('<div class="layout-no-data"><\/div>');s.append(f);$(l).append(s);u(function(){e.listerStatus=i.listerStatus.DONE});return}switch(e.lister.layout){case i.listerLayout.BAR_CHART:case i.listerLayout.TIMELINE:case i.listerLayout.TABLE:case i.listerLayout.CONTENT:r.isMobileDevice()===!0?vt():at();angular.element(t).on("resize",g);break;case i.listerLayout.TILES_S:case i.listerLayout.TILES_L:case i.listerLayout.WIDE:case i.listerLayout.COMPACT:gt();angular.element(t).on("resize",g);break;case i.listerLayout.MAP:throw Error("Unsupported Lister layout: "+e.lister.layout);default:throw Error("Unknown Lister layout: "+e.lister.layout);}}},!1);e.$watch(function(){return e.mainCheckbox.isChecked},function(n,t){if(n!==t)for(var i=0;i<e.lister.rows.length;i++)e.lister.rows[i].availableForBulkOperations===!0&&(e.lister.rows[i].checked=e.mainCheckbox.isChecked)},!1)}}}]);angular.module("sharedElements").directive("cThumbnailTags",["$compile","$timeout","translationHelperService",function(n,t,i){return{restrict:"A",scope:{tags:"=",onAction:"&"},link:function(r,u){function y(){o!==null&&o.$destroy();o=r.$new();u.html("");$(window).unbind("language-changed",l);u.css("display","none")}function p(){return(y(),typeof r.tags=="undefined")?!1:r.tags!==null&&r.tags.length>0?!0:!1}function c(n){var t=0;return $.each(n,function(n,i){t+=i.outerWidth(!0);n>0&&(t+=2)}),t}function l(){v()}function w(){var u,e,t,n;for(f=[],u=$(document.createElement("div")),e=h,t=0;t<r.tags.length;t++)n=$(document.createElement("span")),n.addClass("badge library-tags"),n.text(r.tags[t]),i.setTranslateAttribute(n,!1),e===!0&&(i.setTranslateAttribute(n,!0),$(n).data("isTranslated",!1),i.setTranslatedCallback(n,function(n,t){var i=!0;(f.forEach(n=>{i=i&&$(n).data("isTranslated")===!0}),i!==!0)&&($(t).data("isTranslated",!0),i=!0,f.forEach(n=>{i=i&&$(n).data("isTranslated")===!0}),i===!0&&a())},n)),u.append(n),f.push(n);return u.children()}function s(n){return Math.round((n+Number.EPSILON)*100)/100}function a(){var y,i,h,l;if($(u).is(":hidden")!==!0&&f.length!==0)for(var a=s(c(f)),p=s($(u).width()),v=0,t=null,r=[];f.length>0&&a+v>p;)y=f.pop(),r.push(y),t!==null&&t.remove(),t=$(document.createElement("span")),t.attr("data-c-dropdown",""),i=$("<span data-c-dropdown-action><\/span>"),i.addClass("badge library-tags"),i.text("+"+r.length),t.append(i),h=$('<div class="dropdown-menu dropdown-megamenu" data-c-dropdown-menu><\/div>'),l=$('<div class="dropdown-megamenu-content wrapping-rows"><\/div>'),$.each(r.slice().reverse(),function(n,t){l.append(t)}),h.append(l),t.append(h),n(t)(o),e.append(t),v=s(t.outerWidth(!0)),a=s(c(f))}function b(){e=$(document.createElement("div"));e.addClass("library-item-tags-wrapper");e.append(w());u.append(e);h===!0?$(window).bind("language-changed",l):t(function(){a()},0)}function v(){p()!==!1&&(u.css({display:"flex","align-self":"flex-end"}),r.tags=_.sortBy(r.tags,function(n){return n}),b())}var h=i.isEnabled();h=!1;var o=null,f=[],e=null;v()}}}]);angular.module("sharedElements").directive("cMap",["appDetailsValue","translationHelperService","$timeout","$compile","helpService","constants",function(n,t,i,r,u,f){return{restrict:"A",scope:{map:"=",listerStatus:"=",onAction:"&"},link:function(e,o,s){function g(){var t=0,i=h.getBounds(),n=i.getSouthWest().lng;if(n<-180)while(n<-180)t=t+1,n=n+360;else if(n>180)while(n>180)t=t-1,n=n-360;return t}function it(n,i){var s,h,u,c,f,o;for(e.entities=n,s=e.entities.length>1,h=$('<ul class="leaflet-orgs"><\/ul>'),u=0;u<e.entities.length;u++){c=$(document.createElement("li"));c.addClass("leaflet-org");f=$(document.createElement("div"));f.addClass("leaflet-org-header"+(s?" pointer":""));f.on("click",function(){var n=$(this).find("[icon]"),r=n.attr("icon"),t=n.closest(".leaflet-org"),u=t.find(".leaflet-org-body");u.slideToggle(100,function(){i._adjustPan()});t.toggleClass("leaflet-org-collapsed");n.attr("icon",r==="hide"?"show":"hide")});s&&f.append($('<div class="leaflet-org-toggle"><a href="javascript:;" data-toggle-org=""><i icon="show"><\/i><\/a><\/div>'));o=$(document.createElement("div"));o.addClass("leaflet-org-title");o.append('<h6><a data-ng-href="[[exec[[entities['+u+'].link]]exec]]" data-ng-bind="entities['+u+'].title"><\/a><\/h6>');t.setTranslateAttribute(o,!1);f.append(o);f.append($('   <div class="leaflet-org-body" '+(s?'style="display: none;"':"")+'>       <div class="labels">           <span data-c-label data-label="label" data-ng-repeat="label in entities['+u+'].labels"><\/span>       <\/div>       <div class="fields">           <div data-c-field data-field="field" data-ng-repeat="field in entities['+u+'].fields"><\/div>       <\/div>   <\/div>'));c.append(f);h.append(c)}return r(h)(e),h[0]}function d(n,t,i,r){var f=new L.marker([n,t],{icon:i,ids:r});f.on("click",function(){var n=(new L.popup).setContent('<div class="loading-large"><\/div>');f.unbindPopup();u.isMobileDevice()===!0?f.bindPopup(n,{minWidth:250,maxWidth:250,offset:new L.Point(0,-16),autoPanPadding:new L.Point(20,20)}):f.bindPopup(n,{minWidth:350,maxWidth:350,offset:new L.Point(0,-16),autoPanPadding:new L.Point(50,250)});p=!0;f.openPopup();e.onAction({action:"load-marker",data:{ids:f.options.ids}}).then(function(n){var t=f.getPopup(),i;t._isOpen!==!1&&(i=it(n,t),t.setContent(i),t.update())})});y.addLayer(f)}function nt(){var n,i,t;if(e.map!==null){if(y===null&&(y=new L.layerGroup,y.addTo(h)),y.clearLayers(),entityDictionary=[],e.map.autoCenterCoordinates!==null){n=4/h.getZoom();n===Infinity&&(n=.001);var r=e.map.autoCenterCoordinates.minLatitude-n,u=e.map.autoCenterCoordinates.maxLatitude+n,o=e.map.autoCenterCoordinates.minLongitude-n,s=e.map.autoCenterCoordinates.maxLongitude+n;h.fitBounds(new L.LatLngBounds(new L.LatLng(r,o),new L.LatLng(u,s)))}i=g();t=h.getBounds();e.map.markers!==null&&$.each(e.map.markers,function(n,r){var s=_.size(r.ids),h,f,e,o,u;if(s!==0){for(h='<div class="marker-icon-box"><div class="marker-icon-content">'+s+"<\/div><\/div>",f="marker-active-partner",s>1&&(f=f+" marker-group-partner"),e=L.divIcon({className:f,iconSize:[30,30],iconAnchor:[15,30],html:h}),o=r.longitude+i*-360,d(r.latitude,o,e,r.ids),u=o+360;u<t.getNorthEast().lng;)d(r.latitude,u,e,r.ids),u=u+360;for(u=o-360;u>t.getSouthWest().lng;)d(r.latitude,u,e,r.ids),u=u-360}});e.listerStatus=f.listerStatus.DONE;k=!1;e.map.autoCenterCoordinates!==null&&tt()}}function tt(){k=!0;var r=g(),i=h.getBounds(),o=h.getZoom(),n=i.getNorthEast().lng,t=i.getSouthWest().lng,u=i.getNorthEast().lat,f=i.getSouthWest().lat;n-t>=360?(f=-90,t=-180,u=90,n=180):(n=n+r*360,n>180&&(n=n-360),t=t+r*360);e.onAction({action:"refresh-lister",data:{listerState:{mapParameters:{zoomLevel:o,minLatitude:f,maxLatitude:u,minLongitude:t,maxLongitude:n}}}})}function rt(){h===null&&i(function(){var t=$(v).find(".map-viewer-content")[0];h=L.map(t,{zoomAnimation:!1,keyboard:!1,closePopupOnClick:!1});h.on("load",function(){nt();b=!0});L.tileLayer(n.mapTileUrl).addTo(h);h.fitBounds(new L.LatLngBounds(new L.LatLng(-90,-180),new L.LatLng(90,180)));h.on("moveend",function(){e.listerStatus===f.listerStatus.DONE&&p===!1&&tt()});h.on("dragstart",function(){h.closePopup();p=!1});h.on("zoomstart",function(){h.closePopup();p=!1});h.on("popupopen",function(){p=!0})})}function ut(){l=$('<div class="loading-large map-loader-content"><\/div>');$(o).append(l)}function ft(){c=$('<div class="map-warning-content" style="display:none;">   <div class="layout-no-data">       <div class="no-data alert alert-info">          <i class="icon-size-18 material_info"><\/i>           <p><\/p>       <\/div>   <\/div><\/div>');w=c.find("p");u.setTestAttribute(w,"no-data","No Items");$(o).append(c)}function et(){var i=$('<p>Some results are not displayed on the map because addresses weren\'t recognized. <a href="javascript:;" data-ng-click="switchToTableView()">Switch to '+t.wrapTextInVar(u.getListerLayoutLabel(f.listerLayout.TABLE),"view",!0)+"<\/a> to see all results.<\/p>"),s,n;t.setIsolateAttribute(i);s=$('<i class="icon-size-18 material_info"><\/i>');n=$('<div class="alert alert-info"><\/div>');n.append(s);n.append(i);a=$('<div class="map-warning-content seamless" style="display:none;"><\/div>');a.append(n);r(a)(e);$(o).append(a)}function ot(){v=$('<div class="map-content" style="display:none;"><div class="map-viewer-content"><\/div><\/div>');$(o).append(v)}function st(){s.$addClass("map-viewer");ut();ft();et();ot()}var h=null,y=null,b=!1,k=!1,p=!1,l=null,c=null,a=null,w=null,v=null;e.entities=null;e.switchToTableView=function(){e.onAction({action:"refresh-lister",data:{listerState:{layout:f.listerLayout.TABLE}}})};e.$watch(function(){return e.listerStatus},function(n){switch(n){case f.listerStatus.LOADING:if(k===!0)break;if(c.hide(),c.removeClass("is-visible"),a.hide(),v.hide(),l.show(),l.addClass("is-visible"),b===!1)break;h.fitBounds(new L.LatLngBounds(new L.LatLng(-90,-180),new L.LatLng(90,180)));break;case f.listerStatus.RENDERING:if(e.map!==null&&e.map.withCoordinatesCount===0){l.hide();l.removeClass("is-visible");v.hide();a.hide();var t=e.map.withoutCoordinatesCount>0?'None of the results are displayed on the map because addresses weren\'t recognized. <a href="javascript:;" data-ng-click="switchToTableView()">Switch to '+u.getListerLayoutLabel(f.listerLayout.TABLE)+"<\/a> to see all results.":"No results.";w.html(t);r(w)(e);c.show();c.addClass("is-visible");e.listerStatus=f.listerStatus.DONE}else l.hide(),l.removeClass("is-visible"),c.hide(),c.removeClass("is-visible"),v.show(),e.map.withoutCoordinatesCount>0?a.show():a.hide(),b===!0?nt():rt()}});e.$on("$destroy",function(){h!==null&&h.remove()});st()}}}]);angular.module("sharedElements").directive("cMessage",["$timeout","$compile","constants","pageSharedDataFactory","helpService","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",link:function(e,o,s){function p(t){typeof t=="undefined"&&(t=!0);t===!0&&sessionStorage.removeItem(u.SUCCESS_MESSAGE_KEY);c===null&&s.$set("style","display:none");k!==null&&n.cancel(k);v!==null&&v.$destroy();v=e.$new();h!==null&&(h.remove(),h=null)}function g(){h===null&&s.$set("style","display:none");d!==null&&n.cancel(d);y!==null&&y.$destroy();y=e.$new();c!==null&&(c.remove(),c=null)}function w(r){var y,l,u,c,b,o,w;p(!1);l=$('<i class="icon-size-18"><\/i>');switch(r.type){case i.messageType.SUCCESS:y="alert alert-success alert-dismissible";l.addClass("material_check_circle");break;case i.messageType.PROCESSING:y="alert alert-warning alert-dismissible";break;case i.messageType.FAILURE:y="alert alert-danger alert-dismissible";l.addClass("material_error");break;default:throw new Error("Not supported message type: "+r.type);}h=$(document.createElement("li"));u=$(document.createElement("div"));u.addClass(y);c=$(document.createElement("button"));c.addClass("close");c.attr("type","button");c.attr("data-ng-click","dismissActionMessage()");b=$(document.createElement("i"));b.addClass("material_close icon-size-18");c.append(b);o=$(document.createElement("span"));o.addClass("alert-text");f.setIsolateAttribute(o);r.link!==null?(o.text(r.text+" "),w=$(document.createElement("a")),w.attr("href",r.link),w.text("View"),o.append(w)):o.text(r.text);r.type===i.messageType.PROCESSING?u.remove(l):u.append(l);u.append(o);u.append(c);h.append(u);a.append(h);r.autoDismiss&&(k=n(function(){e.$apply(function(){p()})},r.ttl));t(h)(v);s.$set("style","")}function b(i,r){g();c=$(document.createElement("li"));c.html(i);a.append(c);r&&(d=n(function(){e.$apply(function(){g()})},l));t(c)(y);s.$set("style","")}function it(){var t,n,i;s.$addClass("notifications");s.$set("style","display:none");a=$(document.createElement("ul"));o.append(a);t=sessionStorage.getItem(u.SUCCESS_MESSAGE_KEY);t!==null&&(n=JSON.parse(t),i=Date.now()-n.date,n.ttl=n.ttl-i,n.ttl>0?(n.ttl+=tt,w(n)):sessionStorage.removeItem(u.SUCCESS_MESSAGE_KEY))}var l=4e3,nt=1e4,tt=1e3,a=null,v=null,k=null,h=null,y=null,d=null,c=null;r.hideMessage=function(){h!==null&&p()};r.showSuccessMessage=function(n,t,r){var f=null,e;(typeof n=="undefined"||n===null)&&(n="Saved!");(typeof t=="undefined"||t===null)&&(t=!0);typeof r!="undefined"&&r!==null?f=nt:(f=l,r=null);e={text:n,type:i.messageType.SUCCESS,autoDismiss:t,link:r,ttl:f,date:Date.now()};sessionStorage.setItem(u.SUCCESS_MESSAGE_KEY,JSON.stringify(e));w(e)};r.showProcessingMessage=function(n,t){typeof t=="undefined"&&(t=!0);var r={text:"Saving...",type:i.messageType.PROCESSING,autoDismiss:t,link:null,ttl:l};typeof n!="undefined"&&n!==null&&(r.text=n);w(r)};r.showErrorMessage=function(n,t){typeof t=="undefined"&&(t=!0);var r={text:"Error",type:i.messageType.FAILURE,autoDismiss:t,link:null,ttl:l};typeof n!="undefined"&&n!==null&&(r.text=n);w(r)};e.dismissActionMessage=function(){p()};e.dismissConnectionMessage=function(){g()};e.reconnect=function(){r.restartClientCallbackConnection()};e.$watch(function(){return r.clientCallbackConnectionStatus},function(n,t){switch(n){case i.clientCallbackConnectionStatus.NOT_CONNECTED:return;case i.clientCallbackConnectionStatus.CONNECTED:if(t===i.clientCallbackConnectionStatus.NOT_CONNECTED)return;b('<div class="alert alert-success alert-dismissible"><i class="icon-size-18 material_check_circle"><\/i><span> Reconnected!<\/span><button type="button" class="close" data-ng-click="dismissConnectionMessage()"><i icon="remove-small"><\/i><\/button><\/div>',!0);break;case i.clientCallbackConnectionStatus.RECONNECTING:t===i.clientCallbackConnectionStatus.DISCONNECTED?b('<div class="alert alert-warning alert-dismissible"><span>Reconnecting...<\/span><\/div>',!1):b('<div class="alert alert-danger alert-dismissible"><i class="icon-size-18 material_error"><\/i><span>Connection lost. Trying to reconnect...<\/span><\/div>',!1);break;case i.clientCallbackConnectionStatus.DISCONNECTED:b('<div class="alert alert-danger alert-dismissible text-right"><i class="icon-size-18 material_error"><\/i><div><span>Connection lost.<\/span><span><button class="btn btn-default btn-sm" type="button" data-ng-click="reconnect()">Reconnect<\/button><\/span><\/div><\/div>',!1)}});it()}}}]);angular.module("sharedElements").directive("cMobileBackButton",["helpService",function(n){return{restrict:"E",scope:{defaultPath:"="},link:function(t,i,r){if(typeof t.defaultPath=="undefined")throw new Error('"defaultPath" is undefined');r.$addClass("btn btn-default");i.text("Cancel");i.click(function(){t.$apply(function(){n.goToPreviousPage(t.defaultPath)})})}}}]);angular.module("sharedElements").directive("cMobileBulkOperationActionsButton",["$compile","actionService","constants",function(n,t){return{restrict:"E",scope:{actions:"=",onAction:"&",isDisabled:"="},link:function(i,r,u){function h(n){return typeof n=="undefined"?null:n}function l(){e!==null&&e.$destroy();e=i.$new();u.$removeClass("btn-group");r.html("");r.css("display","none")}function a(){o!==null&&o.$destroy();o=i.$new();s.html("")}function v(){var r,e,u,i;if(a(),typeof f!="undefined"&&f!==null)for(r=null,e=!0,u=0;u<f.length;u++)i=f[u],e===!0&&(r=i.groupName,e=!1),r!==i.groupName&&(s.append('<li class="item-divider"><\/li>'),r=i.groupName),s.append(n(t.getActionItemElement(i))(o))}function y(){return(l(),h(i.actions)!==null)?!0:!1}function c(){y()!==!1&&(r.css("display","block"),f=$.extend([],h(i.actions)),$(r).append('<c-dropdown data-is-disabled="isDisabledButton() === true">   <button data-c-dropdown-action data-ng-disabled="isDisabledButton() === true" class="btn btn-primary">       Actions   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),s=$(r).find(".dropdown-menu"),n(r.contents())(e),v())}var e=null,o=null,f=null,s=null;i.isDisabledButton=function(){return f===null?!0:i.isDisabled===!0?!0:!1};i.$watch(function(){return i.actions},function(n,t){typeof n!="undefined"&&n!==t&&c()},!0);i.handleAction=function(n){i.onAction({action:n})};c()}}}]);angular.module("sharedElements").directive("cMobileButton",["$compile","helpService","constants","actionService",function(n,t,i,r){return{restrict:"E",scope:{action:"=",onAction:"&?"},link:function(i,u){function o(){f!==null&&f.$destroy();f=i.$new();u.html("");u.css("display","none")}function s(){if(o(),typeof i.action=="undefined")throw new Error('"action" is undefined');return i.action!==null}function e(){if(s()!==!1){u.css("display","block");var e=r.getActionElement(i.action);e.addClass("btn");i.action.isPrimary===!0?e.addClass("btn-primary"):e.addClass("btn-default");i.action.icon!==null?(e.addClass("btn-icon"),e.html('<i class="'+t.getMaterialIconClass(i.action.icon)+'"><\/i>')):e.text(i.action.label);$(u).append(e);n(u.contents())(f)}}var f=null;i.$watch(function(){return i.action},function(n,t){typeof n!="undefined"&&n!==t&&e()},!0);i.handleAction=function(n){i.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cMobileContextMenuButton",["$compile","actionService",function(n,t){return{restrict:"E",scope:{actions:"=",onAction:"&"},link:function(i,r){function s(n){return typeof n=="undefined"?null:n}function c(){f!==null&&f.$destroy();f=i.$new();r.html("");r.css("display","none")}function l(){e!==null&&e.$destroy();e=i.$new();o.html("")}function a(){var r,s,f,i;if(l(),typeof u!="undefined"&&u!==null)for(r=null,s=!0,f=0;f<u.length;f++)i=u[f],s===!0&&(r=i.groupName,s=!1),r!==i.groupName&&(o.append('<li class="item-divider"><\/li>'),r=i.groupName),o.append(n(t.getActionItemElement(i))(e))}function v(){return(c(),s(i.actions)!==null)?!0:!1}function h(){v()!==!1&&(r.css("display","block"),u=$.extend([],s(i.actions)),$(r).append('<c-dropdown>   <i class="material_more_horiz icon-size-16" data-c-dropdown-action><\/i>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),o=$(r).find(".dropdown-menu"),n(r.contents())(f),a())}var f=null,e=null,u=null,o=null;i.$watch(function(){return i.actions},function(n,t){typeof n!="undefined"&&n!==t&&h()},!0);i.handleAction=function(n){i.onAction({action:n})};h()}}}]);angular.module("sharedElements").directive("cMobileHubspotStatusButton",["$compile","helpService",function(n,t){return{restrict:"E",scope:{hubspotStatus:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("");r.css("display","none")}function o(){return(e(),i.hubspotStatus===null)?!1:i.hubspotStatus.actions===null?!1:(t.validateActions(i.hubspotStatus.actions),!0)}function s(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function h(){var h=$(document.createElement("c-dropdown")),f=$(document.createElement("button")),c,l,u,e,r,o,n;for(f.addClass("btn btn-default btn-icon"),f.attr("data-c-dropdown-action",""),c='<span class="'+t.getIconClass(i.hubspotStatus.syncStatus)+' condition-salesforce-status"><\/span>',l='<span class="btn-hubspot-logo">&nbsp;<\/span>',f.html(c+l),h.append(f),u=$(document.createElement("ul")),u.addClass("dropdown-menu"),u.attr("data-c-dropdown-menu",""),e=0;e<i.hubspotStatus.actions.length;e++)r=i.hubspotStatus.actions[e],s(r),o=$(document.createElement("li")),o.addClass("item"),n=$(document.createElement("a")),r.link===null?n.attr("data-ng-click",'handleAction("'+r.name+'")'):(n.attr("href",r.link),r.targetBlank===!0&&(n.attr("target","_blank"),n.attr("rel","noreferrer"))),n.attr("data-unit-t-multiple-actions-link",""),n.text(r.label),o.append(n),u.append(o);return h.append(u),h}function f(){if(i.hubspotStatus!==null&&typeof i.hubspotStatus.actions=="undefined")throw new Error('"hubspotStatus.actions" is undefined');o()!==!1&&(r.css("display","block"),r.append(h()),n(r.contents())(u))}var u=null;i.$watch(function(){return i.hubspotStatus},function(n,t){n!==t&&f()},!0);i.handleAction=function(n){i.onAction({action:n})};f()}}}]);angular.module("sharedElements").directive("cMobileMoreButton",["$compile","constants","actionService",function(n,t,i){return{restrict:"E",scope:{actions:"=?",onAction:"&",lister:"=?",listerStatus:"=?",listerSettings:"=?",commonItems:"=?"},link:function(r,u){function f(n){return typeof n=="undefined"?null:n}function a(){s!==null&&s.$destroy();s=r.$new();u.html("");u.css("display","none")}function v(){h!==null&&h.$destroy();h=r.$new();o.html("")}function c(){var u,c,s,t;if(v(),typeof e!="undefined"&&e!==null)for(u=null,c=!0,s=0;s<e.length;s++)(t=e[s],i.isActionVisible(t,f(r.lister),f(r.listerStatus),f(r.commonItems))!==!1)&&(c===!0&&(u=t.groupName,c=!1),u!==t.groupName&&(o.append('<li class="item-divider"><\/li>'),u=t.groupName),o.append(n(i.getActionItemElement(t))(h)))}function y(){return(a(),f(r.actions)!==null)?!0:f(r.listerSettings)!==null&&(f(r.listerSettings).enabledExport===!0||f(r.listerSettings).enabledBulkOperations===!0)?!0:!1}function l(){y()!==!1&&(u.css("display","block"),e=$.extend([],f(r.actions)),f(r.listerSettings)!==null&&f(r.listerSettings).enabledBulkOperations===!0&&(e=i.addBulkSelectAction(e)),f(r.listerSettings)!==null&&f(r.listerSettings).enabledExport===!0&&(e=i.addExportActions(e,f(r.listerSettings).nestedTables)),$(u).append('<c-dropdown data-is-disabled="isDisabled() === true">   <button data-c-dropdown-action data-ng-disabled="isDisabled() === true" class="btn btn-default btn-icon">       <i class="material_more_horiz"><\/i>   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),o=$(u).find(".dropdown-menu"),n(u.contents())(s),c())}var s=null,h=null,e=null,o=null;r.isDisabled=function(){if(e===null)return!0;if(f(r.listerStatus)!==null)switch(r.listerStatus){case t.listerStatus.LOADING:case t.listerStatus.RENDERING:return!0;case t.listerStatus.DONE:return i.anyVisibleAction(e,f(r.lister),f(r.listerStatus),f(r.commonItems))===!0?!1:r.lister.rows===null||r.lister.rows.length===0}return!1};r.$watchGroup(["actions","listerSettings","commonItems"],function(n,t){for(var i=0;i<n.length;i++)if(typeof n[i]!="undefined"&&n[i]!==t[i]){l();break}},!0);r.$watch(function(){return r.listerStatus},function(n,i){if(n!==i&&typeof n!="undefined"&&o!==null)switch(n){case t.listerStatus.LOADING:c();break;case t.listerStatus.DONE:f(r.listerSettings)!==null&&(f(r.listerSettings).bulkOperationsVisible=!1);c()}},!1);r.handleAction=function(n){if(n===undefined)throw"Action is unspecified";switch(n){case"export-print":i.print(r.lister);break;case"export-to-excel":i.exportToExcel(r.lister);break;case"export-advanced":i.advancedExport(r.lister,r.listerSettings.nestedTables);break;case"select":f(r.listerSettings)!==null&&(f(r.listerSettings).bulkOperationsVisible=!0);break;default:r.onAction({action:n})}};l()}}}]);angular.module("sharedElements").directive("cMobileMoreChartSectionButton",["$compile",function(n){return{restrict:"E",scope:{filters:"=?",onAction:"&?"},link:function(t,i){function f(n){return typeof n=="undefined"?null:n}function e(){r!==null&&r.$destroy();r=t.$new();i.html("");i.css("display","none")}function o(){return(e(),f(t.filters)!==null)?!0:!1}function s(){if(o()!==!1){i.css("display","block");$(i).append('<c-dropdown data-is-disabled="isDisabled() === true">   <button data-c-dropdown-action data-ng-disabled="isDisabled() === true" class="btn btn-default btn-icon">       <i class="material_more_horiz"><\/i>   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>');u=$(i).find(".dropdown-menu");n(i.contents())(r);var t=$(document.createElement("li"));t.addClass("item persistent");t.append(n('<c-filter-button data-type="link" data-filters="filters" data-on-search="handleAction(\'refresh-chart\')"><\/c-filter-button>')(r));u.append(t)}}var r=null,u=null;t.isDisabled=function(){return f(t.filters)===null?!0:!1};t.handleAction=function(n){t.onAction({action:n})};s()}}}]);angular.module("sharedElements").directive("cMobileMoreFieldSectionButton",["$compile","actionService",function(n,t){return{restrict:"E",scope:{filters:"=?",actions:"=?",onAction:"&"},link:function(i,r){function f(n){return typeof n=="undefined"?null:n}function l(){e!==null&&e.$destroy();e=i.$new();r.html("");r.css("display","none")}function a(){o!==null&&o.$destroy();o=i.$new();u!==null&&u.find("li:not(.persistent)").remove()}function c(){var r,e,f,i;if(a(),s!==null)for(r=null,e=!0,f=0;f<s.length;f++)i=s[f],e===!0&&(r=i.groupName,h===!0&&u.append('<li class="item-divider"><\/li>'),e=!1),r!==i.groupName&&(u.append('<li class="item-divider"><\/li>'),r=i.groupName),u.append(n(t.getActionItemElement(i))(o))}function v(){return(l(),f(i.actions)!==null)?!0:f(i.filters)!==null?!0:!1}function y(){if(v()!==!1){if(r.css("display","block"),s=$.extend([],f(i.actions)),$(r).append('<c-dropdown data-is-disabled="isDisabled() === true">   <button data-c-dropdown-action data-ng-disabled="isDisabled() === true" class="btn btn-default btn-icon">       <i class="material_more_horiz"><\/i>   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),u=$(r).find(".dropdown-menu"),n(r.contents())(e),f(i.filters)!==null){var t=$(document.createElement("li"));t.addClass("item persistent");t.append(n('<c-filter-button data-type="link" data-filters="filters" data-on-search="handleAction(\'refresh-field\')"><\/c-filter-button>')(e));u.append(t);h=!0}c()}}var e=null,o=null,u=null,s=null,h=!1;i.isDisabled=function(){return f(i.actions)===null&&f(i.filters)===null?!0:!1};i.handleAction=function(n){i.onAction({action:n})};i.$watch(function(){return i.actions},function(n,t){n!==t&&typeof n!="undefined"&&u!==null&&c()},!1);y()}}}]);angular.module("sharedElements").directive("cMobileMoreListerSectionButton",["$compile","constants","actionService",function(n,t,i){return{restrict:"E",scope:{actions:"=?",onAction:"&",lister:"=?",listerStatus:"=?",listerSettings:"=?",filters:"=?"},link:function(r,u){function f(n){return typeof n=="undefined"?null:n}function v(){s!==null&&s.$destroy();s=r.$new();u.html("");u.css("display","none")}function y(){h!==null&&h.$destroy();h=r.$new();o!==null&&o.find("li:not(.persistent)").remove()}function l(){var u,l,s,t;if(y(),e!==null)for(u=null,l=!0,s=0;s<e.length;s++)(t=e[s],i.isActionVisible(t,f(r.lister),f(r.listerStatus),null)!==!1)&&(l===!0&&(u=t.groupName,c===!0&&o.append('<li class="item-divider"><\/li>'),l=!1),u!==t.groupName&&(o.append('<li class="item-divider"><\/li>'),u=t.groupName),o.append(n(i.getActionItemElement(t))(h)))}function p(){return(v(),f(r.actions)!==null)?!0:f(r.filters)!==null?!0:f(r.listerSettings)!==null&&(f(r.listerSettings).enabledPaging===!0||f(r.listerSettings).enabledSorting===!0||f(r.listerSettings).enabledExport===!0||f(r.listerSettings).enabledBulkOperations===!0)?!0:!1}function a(){var t,h;p()!==!1&&(u.css("display","block"),e=$.extend([],f(r.actions)),f(r.listerSettings)!==null&&f(r.listerSettings).enabledBulkOperations===!0&&(e=i.addBulkSelectAction(e)),f(r.listerSettings)!==null&&f(r.listerSettings).enabledExport===!0&&(e=i.addExportActions(e,f(r.listerSettings).nestedTables)),$(u).append('<c-dropdown data-is-disabled="isDisabled() === true">   <button data-c-dropdown-action data-ng-disabled="isDisabled() === true" class="btn btn-default btn-icon">       <i class="material_more_horiz"><\/i>   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),o=$(u).find(".dropdown-menu"),n(u.contents())(s),f(r.listerSettings)!==null&&f(r.listerSettings).enabledPaging===!0&&(t=$(document.createElement("li")),t.addClass("item persistent center"),t.css("padding","8px 0px"),t.append(n('<c-pager-mobile data-lister="lister" data-lister-status="listerStatus" data-on-action="handleAction(action, data)"><\/c-pager-mobile>')(s)),o.append(t),c=!0),(f(r.listerSettings)!==null&&f(r.listerSettings).enabledSorting===!0||f(r.filters)!==null)&&(h=$(document.createElement("li")),h.addClass("item persistent"),h.append(n('<c-filter-button data-type="link" data-filters="filters" data-lister="lister" data-lister-settings="listerSettings" data-on-action="handleAction(\'refresh-lister\', data)"><\/c-filter-button>')(s)),o.append(h),c=!0),l())}var s=null,h=null,e=null,o=null,c=!1;r.isDisabled=function(){if(e===null&&f(r.filters)===null&&(f(r.listerSettings)===null||f(r.listerSettings).enabledPaging===!1&&f(r.listerSettings).enabledSorting===!1))return!0;if(f(r.listerStatus)!==null)switch(r.listerStatus){case t.listerStatus.LOADING:case t.listerStatus.RENDERING:return!0;case t.listerStatus.DONE:return f(r.filters)!==null||f(r.listerSettings)!==null&&(f(r.listerSettings).enabledPaging===!0||f(r.listerSettings).enabledSorting===!0)?!1:i.anyVisibleAction(e,r.lister,r.listerStatus,null)===!0?!1:r.lister.rows===null||r.lister.rows.length===0}return!1};r.$watchGroup(["actions","listerSettings"],function(n,t){for(var i=0;i<n.length;i++)if(typeof n[i]!="undefined"&&n[i]!==t[i]){a();break}},!0);r.$watch(function(){return r.listerStatus},function(n,i){if(n!==i&&typeof n!="undefined"&&o!==null)switch(n){case t.listerStatus.LOADING:l();break;case t.listerStatus.DONE:f(r.listerSettings)!==null&&(f(r.listerSettings).bulkOperationsVisible=!1);l()}},!1);r.handleAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"export-print":i.print(r.lister);break;case"export-to-excel":i.exportToExcel(r.lister);break;case"export-advanced":i.advancedExport(r.lister,r.listerSettings.nestedTables);break;case"select":r.listerSettings.bulkOperationsVisible=!0;break;default:r.onAction({action:n,data:t})}};a()}}}]);angular.module("sharedElements").directive("cMobileNewButton",["$compile","actionService",function(n,t){return{restrict:"E",scope:{actions:"=",onAction:"&?"},link:function(i,r){function h(n){return typeof n=="undefined"?null:n}function c(){f!==null&&f.$destroy();f=i.$new();r.html("");r.css("display","none")}function l(){e!==null&&e.$destroy();e=i.$new();o.html("")}function a(){var r,s,f,i;if(l(),typeof u!="undefined"&&u!==null)for(r=null,s=!0,f=0;f<u.length;f++)i=u[f],s===!0&&(r=i.groupName,s=!1),r!==i.groupName&&(o.append('<li class="item-divider"><\/li>'),r=i.groupName),o.append(n(t.getActionItemElement(i))(e))}function v(){if(c(),typeof i.actions=="undefined")throw new Error('"actions" is undefined');return i.actions!==null}function s(){if(v()!==!1)if(r.css("display","block"),u=$.extend([],h(i.actions)),u.length===1){var e=t.getActionElement(u[0]);e.addClass("btn btn-primary btn-icon");e.html('<i class="material_add"><\/i>');$(r).append(e);n(r.contents())(f)}else $(r).append('<c-dropdown>   <button data-c-dropdown-action class="btn btn-primary btn-icon">       <i class="material_add"><\/i>   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),o=$(r).find(".dropdown-menu"),n(r.contents())(f),a()}var f=null,e=null,u=null,o=null;i.$watch(function(){return i.actions},function(n,t){typeof n!="undefined"&&n!==t&&s()},!0);i.handleAction=function(n){i.onAction({action:n})};s()}}}]);angular.module("sharedElements").directive("cMobileSalesforceStatusButton",["$compile","helpService",function(n,t){return{restrict:"E",scope:{salesforceStatus:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("");r.css("display","none")}function o(){return(e(),i.salesforceStatus===null)?!1:i.salesforceStatus.actions===null?!1:(t.validateActions(i.salesforceStatus.actions),!0)}function s(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function h(){var h=$(document.createElement("c-dropdown")),f=$(document.createElement("button")),c,l,u,e,r,o,n;for(f.addClass("btn btn-default btn-icon"),f.attr("data-c-dropdown-action",""),c='<span class="'+t.getIconClass(i.salesforceStatus.syncStatus)+' condition-salesforce-status"><\/span>',l='<span class="btn-salesforce-logo">&nbsp;<\/span>',f.html(c+l),h.append(f),u=$(document.createElement("ul")),u.addClass("dropdown-menu"),u.attr("data-c-dropdown-menu",""),e=0;e<i.salesforceStatus.actions.length;e++)r=i.salesforceStatus.actions[e],s(r),o=$(document.createElement("li")),o.addClass("item"),n=$(document.createElement("a")),r.link===null?n.attr("data-ng-click",'handleAction("'+r.name+'")'):(n.attr("href",r.link),r.targetBlank===!0&&(n.attr("target","_blank"),n.attr("rel","noreferrer"))),n.attr("data-unit-t-multiple-actions-link",""),n.text(r.label),o.append(n),u.append(o);return h.append(u),h}function f(){if(i.salesforceStatus!==null&&typeof i.salesforceStatus.actions=="undefined")throw new Error('"salesforceStatus.actions" is undefined');o()!==!1&&(r.css("display","block"),r.append(h()),n(r.contents())(u))}var u=null;i.$watch(function(){return i.salesforceStatus},function(n,t){n!==t&&f()},!0);i.handleAction=function(n){i.onAction({action:n})};f()}}}]);angular.module("sharedElements").directive("cMobileSubmitButton",function(){return{restrict:"E",scope:{pendingAction:"=",isEnabled:"=",form:"=?",onSubmit:"&?",isPrimary:"@"},link:function(n,t){function i(){return typeof n.isEnabled=="undefined"?!0:n.isEnabled}function r(){return typeof n.isPrimary=="undefined"?!0:n.isPrimary}function u(){$(t).addClass("btn");r()==!0?$(t).addClass("btn-primary"):$(t).addClass("btn-default");$(t).attr("type","button");i()===!1&&$(t).attr("disabled",!0);$(t).click(function(){typeof n.form!="undefined"&&n.form.submitForm();typeof n.onSubmit!="undefined"&&n.$apply(function(){n.onSubmit()})})}if(typeof n.pendingAction=="undefined")throw new Error('"pendingAction" is undefined');if(typeof n.form!="undefined"&&typeof n.onSubmit!="undefined")throw new Error('"form" and "onSubmit" cannot be defined at the same time');n.$watch(function(){return n.isEnabled},function(){$(t).attr("disabled",i()===!1)});n.$watch(function(){return n.pendingAction},function(r,u){r!==u&&i()!==!1&&$(t).attr("disabled",n.pendingAction)},!0);u()}}});angular.module("sharedElements").directive("cModuleSelector",function(){return{restrict:"A",templateUrl:"js/shared/common/directives/moduleSelector/moduleSelector.html",scope:{pendingAction:"=",onAction:"&"},controller:["$scope","helpService","constants","listerService","appDetailsValue",function(n,t,i,r,u){function e(){n.onAction({action:"load-modules"}).then(function(t){f(n.forumLister,t.forumLister);f(n.libraryLister,t.libraryLister);n.forumActions=t.forumActions;n.libraryActions=t.libraryActions;n.modulesSection=t.modulesSection;n.isLoading=!1})}function o(){t.openEditDialog({title:"New Library",template:'<div data-c-library-edit-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing"><\/div>',dependencies:["$q"],onAction:function(t,r,u,e){function o(){var t=e.defer();return n.onAction({action:"load-new-page",data:i.pageType.LIBRARY}).then(function(n){t.resolve(n.librarySection)}),t.promise}function s(t){var i=n.onAction({action:"add-library",data:t});return i.then(function(t){f(n.libraryLister,t.lister)}),i}switch(t){case"load":return o();case"save":return s(r.sections);default:throw"Unknown action: "+t;}}})}function s(){t.openEditDialog({title:"New Forum",template:'<div data-c-forum-edit-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing"><\/div>',dependencies:["$q"],onAction:function(t,r,u,e){function o(){var t=e.defer();return n.onAction({action:"load-new-page",data:i.pageType.FORUM}).then(function(n){t.resolve(n.forumSection)}),t.promise}function s(t){var i=n.onAction({action:"add-forum",data:t});return i.then(function(t){f(n.forumLister,t.lister)}),i}switch(t){case"load":return o();case"save":return s(r.sections);default:throw"Unknown action: "+t;}}})}function h(i){t.openDeleteDialog({title:"Delete Forum",onAction:function(t){function r(){return n.onAction({action:"get-delete-forum-dialog",data:i})}function e(){var t=n.onAction({action:"delete-forum",data:i});return t.thenWithoutErrorCallback(function(t){f(n.forumLister,t.lister);u.navigation=t.navigation}),t}switch(t){case"load":return r();case"delete":return e();default:throw"Unknown action: "+t;}}})}function f(n,t){n.data=t;n.status=i.listerStatus.RENDERING}n.isLoading=!0;n.form=null;n.libraryLister={data:null,status:i.listerStatus.LOADING};n.forumLister={data:null,status:i.listerStatus.LOADING};n.forumActions=null;n.libraryActions=null;n.modulesSection=null;n.pagesSettings=r.getListerSettings();e();n.handleAction=function(n,t){switch(n){case"add-library":o(t);break;case"add-forum":s(t);break;case"delete-forum":h(t.rowId);break;default:throw"Unknown action "+n;}};n.$watchCollection(function(){return n.modulesSection===null?null:[n.modulesSection.businessPlans.value,n.modulesSection.coBrandedCollateral.value,n.modulesSection.dealRegistration.value,n.modulesSection.emailMarketing.value,n.modulesSection.forum.value,n.modulesSection.leadDistribution.value,n.modulesSection.library.value,n.modulesSection.mdf.value,n.modulesSection.news.value,n.modulesSection.referrals.value,n.modulesSection.trainingCertification.value,]},function(i,r){var u,f;if(i!==null&&r!==null){if(u=n.modulesSection.news.value==="true",n.modulesSection.emailMarketing.isEnabled=u,!u&&n.modulesSection.emailMarketing.value!=="false"){n.modulesSection.emailMarketing.value="false";return}f=t.prepareSectionsForAjax([],n.modulesSection);n.onAction({action:"save-modules",data:f})}})}]}});angular.module("sharedElements").directive("cMobileNavigation",["$location","appDetailsValue","helpService","pageSharedDataFactory","$compile","constants","navigationService",function(n,t,i,r,u,f,e){return{restrict:"A",link:function(o,s,h){function v(t){var e,r,u;if(t==null||t.pageType===f.pageType.SEPARATOR)return!1;if(e=n.path(),r=t.items,i.linkStartsWith(e,t.link))return!0;if(r!=undefined&&r.length>0)for(u=0;u<r.length;u++)if(i.linkStartsWith(e,r[u].link))return!0;return!1}function a(){$(s).find(".n-layout-guide-mobile-item-collapse-icon").remove();$(s).find(".n-layout-header-menu-wrapper").removeClass("sub-menu-opened");$(s).find(".n-layout-header-menu-sub").hide()}function y(n,t,i){$(n).find(".n-layout-guide-mobile-item.selected").removeClass("selected");var r=$(document.createElement("a"));r.addClass("n-layout-guide-mobile-item-collapse-icon");r.attr("href","javascript:;");r.html('<i class="material_keyboard_arrow_left"><\/i>');r.click(a);t.prepend(r);t.addClass("selected");$(n).find(".n-layout-header-menu-sub").hide();$(n).find(".n-layout-header-menu-wrapper").addClass("sub-menu-opened");i.show()}function p(){$(s).find(".n-layout-header-menu-wrapper").removeClass("sub-menu-opened");$(s).find(".n-layout-guide-mobile-item-arrow").off("click");$(s).find(".n-layout-header-menu-sub").remove();$(s).find(".n-layout-guide-mobile").empty();c=!0}function l(){var g,nt,a,tt,u,o,w,it,b,k,d,h,c,l;for(p(),g=$(s).find(".n-layout-guide-mobile"),nt=e.cleanNavigation(t.navigation.items),a=0;a<nt.length;a++){var n=nt[a],rt=v(n),r=$(document.createElement("div"));if(r.addClass("n-layout-guide-mobile-item"),rt===!0&&r.addClass("active selected"),n.pageType===f.pageType.SEPARATOR){r.removeClass("invisible-element");tt=$(document.createElement("div"));tt.addClass("n-layout-guide-mobile-item-separator");r.append(tt);g.append(r);continue}if(u=$(document.createElement("a")),u.addClass("n-layout-guide-mobile-item-icon"),u.html('<i class="'+i.getMaterialIconClass(n.icon)+'"><\/i>'),u.attr("href",n.link),n.targetBlank===!0&&(u.attr("target","_blank"),u.attr("rel","noreferrer")),r.append(u),o=$(document.createElement("a")),o.addClass("n-layout-guide-mobile-item-text"),o.text(n.label),o.attr("href",n.link),n.targetBlank===!0&&(o.attr("target","_blank"),o.attr("rel","noreferrer")),r.append(o),n.items!==null&&(w=_.filter(n.items,function(n){return n.isVisible}),w.length>0)){for(it=$(document.createElement("div")),b=0;b<w.length;b++)k=w[b],d=$(document.createElement("div")),d.addClass("n-layout-guide-item"),h=$(document.createElement("a")),h.addClass("n-layout-guide-link"),h.attr("href",k.link),k.targetBlank===!0&&(h.attr("target","_blank"),h.attr("rel","noreferrer")),h.append('<span class="n-layout-guide-text">'+i.htmlEncode(k.label)+"<\/span>"),d.append(h),it.append(d);c=$(document.createElement("div"));c.addClass("n-layout-header-menu-sub");c.hide();c.append('   <div class="n-layout-scroll">       <div class="n-layout-guide n-layout-guide-vertical">'+it.html()+"       <\/div>   <\/div>");$(s).find(".n-layout-header-menu-wrapper").append(c);l=$(document.createElement("a"));l.addClass("n-layout-guide-mobile-item-arrow");l.attr("href","javascript:;");l.html('<i class="material_keyboard_arrow_right"><\/i>');l.click({element:s,itemElement:r,subMenuElement:c},function(n){n.preventDefault();n.stopPropagation();y(n.data.element,n.data.itemElement,n.data.subMenuElement)});r.append(l)}g.append(r)}}function w(){h.$addClass("n-layout-header-menu");var n=t.isChanneltivityBrandingEnabled===!0?'<div class="n-layout-credit">   <a href="https://channeltivity.com" target="_blank" rel="noreferrer">       <img src="assets/img/branding/credit.svg" alt="Powered by Channeltivity">   <\/a><\/div>':"";$(s).append('<div class="n-layout-header-menu-wrapper">   <div class="n-layout-header-menu-main">       <div class="n-layout-header-menu-main-overlay"><\/div>       <div class="n-layout-scroll hide-scrollbar">           <div class="n-layout-guide-mobile n-layout-guide-vertical"><\/div>'+n+'       <\/div>   <\/div><\/div><div class="n-layout-header-menu-overlay" data-ng-click="closeNavigation()"><\/div>');$(s).find(".n-layout-header-menu-main-overlay").click(a);u($(s).find(".n-layout-header-menu-overlay"))(o);l()}var c=!0;o.portalName=t.portalName;o.isEnabledContactChanneltivitySupport=t.help.isEnabledContactChanneltivitySupport;o.closeNavigation=function(){r.setSidebarNavigationAsOpened(!1)};o.$watch(function(){return r.isSidebarNavigationOpened()},function(n,t){var i,r;if(n!==t)if(n===!0){if($("html").addClass("menu-opened"),$("body").addClass("menu-opened"),c===!0){if(i=$(s).find(".n-layout-header-menu-wrapper .n-layout-scroll"),r=$(s).find(".n-layout-guide-mobile-item.active"),i.length>0&&r.length>0){var e=i.height(),u=i.offset().top,f=r.offset().top,o=r.height();f-u+o>e&&i.scrollTop(f-u)}c=!1}}else $("html").removeClass("menu-opened"),$("body").removeClass("menu-opened")});o.$watch(function(){return t.navigation},function(n,t){n!==t&&l()},!0);o.$on("$locationChangeSuccess",function(n,t,i){t!==i&&l()});w()}}}]);angular.module("sharedElements").directive("cNavigation",["$location","appDetailsValue","helpService","$timeout","constants","navigationService",function(n,t,i,r,u,f){return{restrict:"A",link:function(e,o,s){function rt(n){if(window.location.origin===n.origin&&w!==!1){if(n.data.action==="skin-manager-preview-nav-show"){lt();n.stopPropagation();return}if(n.data.action==="skin-manager-preview-nav-hide"){at();n.stopPropagation();return}}}function ot(t){var f;if(t==null||t.pageType===u.pageType.SEPARATOR)return!1;var e=n.path(),r=t.items,o=r!=undefined&&r.length>0;if(i.linkStartsWith(e,t.link))return!0;if(o)for(f=0;f<r.length;f++)if(i.linkStartsWith(e,r[f].link))return!0;return!1}function ut(n,t,i){if(n!==null&&t!==null&&i!==null){$(n).find(".n-layout-sub-items-wrapper").addClass("invisible-element");$(n).find(".n-layout-sub-items-wrapper").removeClass("submenu-open");i.removeClass("invisible-element");i.addClass("submenu-open");var h=t.offset(),r=$(window).height(),f=h.top,e=i.outerHeight(),s=n.offset().top,u=s+10,o=s+20;i.css("top","");i.css("bottom","");i.css("height","");i.css("left",t.outerWidth(!0)+"px");r>f+e+20?f<u?(i.css("top",u+"px"),e+20>r-u&&i.css("height",r-o+"px")):i.css("top",f+"px"):r-o>e?i.css("bottom","10px"):(i.css("top",u+"px"),i.css("height",r-o+"px"))}}function st(){$(o).find(".n-layout-menu-top").empty()}function ft(n,t,i){for(var r,c,u,o,s,h=n.split(" "),f=[],e=0;e<h.length;e++){if(r=h[e],c=r.length,c<=i){f.push(r);continue}for(u=$(document.createElement("div")),u.text(r),u.css({position:"absolute",left:"-500px",visibility:"hidden"}),u.appendTo("body"),o=u.width(),s=!1;o>t;)r=r.substring(0,r.length-1),u.text(r),o=u.width(),s=!0;u.remove();s&&(r=r.substring(0,r.length-3)+"...");f.push(r)}return f.join(" ")}function et(){var vt,yt,ct,pt,k,w,s,rt,lt,at,d,et,b,it;for(st(),vt=$(o).find(".n-layout-menu-top"),yt=f.cleanNavigation(t.navigation.items),ct=0;ct<yt.length;ct++){var e=yt[ct],wt=ot(e),n=$(document.createElement("div"));if(n.addClass("n-layout-guide-item invisible-element"),wt===!0&&(n.addClass("active"),activeItemElement=n),e.pageType===u.pageType.SEPARATOR){n.removeClass("invisible-element");pt=$(document.createElement("div"));pt.addClass("n-layout-guide-item-separator");n.append(pt);vt.append(n);continue}if(k=$(document.createElement("a")),k.addClass("n-layout-guide-item-icon"),k.html('<i class="'+i.getMaterialIconClass(e.icon)+'"><\/i>'),k.attr("href",e.link),i.setTestAttribute(k,"nav-icon",e.link),e.targetBlank===!0&&(k.attr("target","_blank"),k.attr("rel","noreferrer")),n.append(k),w=$(document.createElement("a")),w.addClass("n-layout-guide-item-text"),w.attr("href",e.link),i.setTestAttribute(w,"nav-link",e.link),i.setTestAttribute(w,"nav-label",e.label),e.targetBlank===!0&&(w.attr("target","_blank"),w.attr("rel","noreferrer")),n.append(w),s=null,rt=[],e.items!==null&&(rt=_.filter(e.items,function(n){return n.isVisible})),rt.length>0){for(s=$(document.createElement("div")),s.addClass("n-layout-sub-items-wrapper invisible-element layout-scroll"),lt=$(document.createElement("div")),lt.addClass("n-layout-sub-items layout-scroll"),at=0;at<rt.length;at++)d=rt[at],et=$(document.createElement("div")),et.addClass("n-layout-guide-item invisible-element sub-item"),b=$(document.createElement("a")),b.addClass("n-layout-guide-item-text"),b.attr("href",d.link),i.setTestAttribute(b,"nav-child-link",d.link),i.setTestAttribute(b,"nav-child-label",d.label),d.targetBlank===!0&&(b.attr("target","_blank"),b.attr("rel","noreferrer")),et.append(b),lt.append(et),r(function(n,t,i){var r=ft(n,t.width(),25);t.text(r);i.removeClass("invisible-element")},0,!1,d.label,b,et);it=$(document.createElement("a"));it.addClass("n-layout-guide-item-arrow");it.attr("href","javascript:;");it.html('<i class="material_keyboard_arrow_right"><\/i>');i.setTestAttribute(it,"nav-caret-label",e.label);s.append(lt);n.append(it);n.append(s);s.mouseenter({element:o,itemElement:n,subItemsElement:s},function(n){$(n.currentTarget).hasClass("n-layout-sub-items-wrapper")!=!1&&(l!==null&&r.cancel(l),v!==null&&r.cancel(v),y!==null&&r.cancel(y))});s.mouseleave({element:o,itemElement:n,subItemsElement:s},function(n){$(n.currentTarget).hasClass("n-layout-sub-items-wrapper")!=!1&&(y=r(function(){nt();$(n.data.element).find(".n-layout-sub-items-wrapper").addClass("invisible-element")},p))});h===null&&(h={element:o,itemElement:n,subItemsElement:s})}n.mouseenter({element:o,itemElement:n,subItemsElement:s},function(n){if($(n.currentTarget).hasClass("n-layout-guide-item")!==!1){l!==null&&r.cancel(l);v!==null&&r.cancel(v);y!=null&&r.cancel(y);var t=ht()===!0&&n.data.subItemsElement!==null?0:tt;a=r(function(){g();$(n.data.element).find(".n-layout-sub-items-wrapper").addClass("invisible-element");n.data.subItemsElement!==null&&ut(n.data.element,n.data.itemElement,n.data.subItemsElement)},t)}});n.mouseleave({element:o,itemElement:n,subItemsElement:s},function(n){$(n.currentTarget).hasClass("n-layout-guide-item")!=!1&&(c!==null&&r.cancel(c),a!==null&&r.cancel(a),v=r(function(){$(n.data.element).find(".n-layout-sub-items-wrapper").addClass("invisible-element")},p))});vt.append(n);r(function(n,t,i){var r=ft(n,t.width(),15);t.text(r);i.removeClass("invisible-element")},0,!1,e.label,w,n)}}function k(n){$(n.currentTarget).hasClass("n-layout-menu")!=!1&&(l!==null&&r.cancel(l),c=r(function(){i.closeDropdownMenus();g()},tt))}function d(n){$(n.currentTarget).hasClass("n-layout-menu")!=!1&&(c!==null&&r.cancel(c),a!==null&&r.cancel(a),l=r(function(){i.closeDropdownMenus();nt()},p))}function ht(){return $(o).hasClass("is-hover")===!0}function g(){s.$addClass("is-hover")}function nt(){s.$removeClass("is-hover")}function ct(){s.$addClass("n-layout-menu tour-intro-1");var n=t.isChanneltivityBrandingEnabled===!0?'<div class="n-layout-credit">   <a href="https://channeltivity.com" target="_blank" rel="noreferrer">       <img src="assets/img/branding/credit.svg" alt="Powered by Channeltivity">   <\/a><\/div>':"";$(o).append('<div class="n-layout-menu-wrapper n-layout-scroll">   <div class="n-layout-menu-content n-layout-menu-top"><\/div>   <div class="n-layout-menu-content n-layout-menu-credit">'+n+"   <\/div><\/div>");et();o.off("mouseenter",k);o.off("mouseleave",d);o.on("mouseenter",k);o.on("mouseleave",d);r(function(){w=i.isPreview();w&&(window.addEventListener("message",rt),$(o).find(".n-layout-menu-wrapper.n-layout-scroll").removeClass("n-layout-scroll"))})}function lt(){r(function(){b!==null&&clearTimeout(b);g();h!==null&&(h.itemElement.addClass("active"),ut(h.element,h.itemElement,h.subItemsElement))})}function at(){b=setTimeout(()=>{r(function(){nt();h!==null&&(h.itemElement.removeClass("active"),h.subItemsElement.addClass("invisible-element"))})},1e3)}var tt=300,p=200,w=!1,b=null,c=null,l=null,a=null,v=null,it=null,y=null,h=null;e.$watch(function(){return t.navigation},function(n,t){n!==t&&et()},!0);e.$on("$destroy",function(){c!==null&&r.cancel(c);a!==null&&r.cancel(a);it!=null&&r.cancel(it);o.off("mouseenter",k);o.off("mouseleave",d);window.removeEventListener("message",rt)});ct()}}}]);angular.module("sharedElements").service("navigationService",["constants",function(n){this.cleanNavigation=function(t){let i=t.filter(n=>n.isVisible!==!1);while(i.length>0&&i[0].pageType===n.pageType.SEPARATOR)i.shift();while(i.length>0&&i[i.length-1].pageType===n.pageType.SEPARATOR)i.pop();return i.filter((t,i,r)=>!(t.pageType===n.pageType.SEPARATOR&&r[i-1]?.pageType===n.pageType.SEPARATOR))}}]);angular.module("sharedElements").directive("cNewButton",["helpService",function(n){return{restrict:"E",scope:{actions:"=",onAction:"&"},templateUrl:"js/shared/common/directives/newButton/newButton.html",controller:["$scope",function(t){if(typeof t.actions=="undefined")throw new Error('"actions" is undefined');t.isSingleActionVisible=function(){return t.actions===null?!1:(n.validateActions(t.actions),t.actions.length===1)};t.isMultipleActionsVisible=function(){return t.actions===null?!1:(n.validateActions(t.actions),t.actions.length>1)};t.isLink=function(n){if(typeof n=="undefined")throw new Error('"action" is undefined');if(n===null)throw new Error('"action" is null');if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');return!0}if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');return!1};t.singleActionLabel=function(){return"New"};t.handleAction=function(n){if(typeof n.disabledTooltip=="undefined"||n.disabledTooltip===null)t.onAction({action:n.name})}}]}}]);angular.module("sharedElements").directive("cNewsItemContentLister",["$compile","$timeout","constants","helpService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{lister:"=",listerStatus:"=",settings:"=",onAction:"&"},link:function(f,e,o){function a(n,t){var f=$('<div c-dropdown class="btn-group"><\/div>'),s=$('<button class="btn btn-default btn-sm btn-icon" data-c-dropdown-action><i class="material_more_horiz"><\/i><\/button>'),e,r,u,o,i;for(f.append(s),e=$('<ul class="dropdown-menu" data-c-dropdown-menu><\/ul>'),f.append(e),r=0;r<n.contextMenuActions.length;r++)u=n.contextMenuActions[r],o=$('<li class="item"><\/li>'),e.append(o),i=$("<a data-unit-t-multiple-actions-link>"+u.label+"<\/a>"),o.append(i),u.link===null?i.attr("data-ng-click","contextMenuAction(lister.rows["+t+"].contextMenuActions["+r+"].name, lister.rows["+t+"].id)"):(i.attr("href",u.link),u.targetBlank===!0&&(i.attr("target","_blank"),i.attr("rel","noreferrer")));return f}function c(){h!==null&&h.$destroy();h=f.$new();$(e).html("");o.$addClass("news-viewer");s=$(document.createElement("div"));s.addClass("lister-viewer-wrapper");s.attr("data-ng-class",'{"loading-large": isLoading() === true}');l!==null&&l.destroy();n(s)(h);$(e).append(s)}function v(){var tt,it,k,d,o,v,rt,y,w,g,b,nt,p,ft,ut;for(c(),tt=$(document.createElement("div")),tt.addClass("n-full-width-height layout-table"),s.append(tt),it=$(document.createElement("div")),it.addClass("n-full-width-height"),tt.append(it),k=$(document.createElement("div")),k.addClass("news"),it.append(k),$(e).append(s),d=0;d<f.lister.rows.length;d++)o=f.lister.rows[d],v=$(document.createElement("div")),v.addClass(r.masonryItemDefinitionClassName),v.addClass("news-item"),o.additionalData.thumbnailUrl!==null&&(rt=$(document.createElement("div")),rt.addClass("news-item-image"),y=$(document.createElement("img")),y.addClass("news-item-image-preview"),y.attr("src",o.additionalData.thumbnailUrl),y.attr("data-c-image-placeholder",""),y.attr("data-mode","static"),y.attr("data-width",o.additionalData.thumbnailWidth),y.attr("data-height",o.additionalData.thumbnailHeight),rt.append(y),v.append(rt)),w=$(document.createElement("div")),w.addClass("news-item-text"),g=$(document.createElement("h2")),g.addClass("news-item-text-title"),o.additionalData.url!==null?(b=$(document.createElement("a")),b.attr("href",o.additionalData.url),o.additionalData.targetBlank&&b.attr({target:"_blank",rel:"noreferrer"})):b=$(document.createElement("span")),b.text(o.additionalData.title),u.setIsolateAttribute(g),g.append(b),w.append(g),nt=$(document.createElement("div")),nt.addClass("news-item-text-excerpt"),nt.html(o.additionalData.excerpt),w.append(nt),u.setIsolateAttribute(nt),o.additionalData.ctaText!==null&&o.additionalData.ctaText!==""&&(o.additionalData.url!==null?(p=$(document.createElement("a")),p.addClass("news-item-text-cta"),p.attr("href",o.additionalData.url),o.additionalData.targetBlank&&p.attr({target:"_blank",rel:"noreferrer"})):p=$(document.createElement("span")),p.text(o.additionalData.ctaText),w.append(p)),v.append(w),o.contextMenuActions!==null&&(ft=a(o,d),ut=$(document.createElement("div")),ut.addClass("news-item-controls right-side"),ut.append(ft),v.append(ut)),n(v)(h),k.append(v);t(function(){f.listerStatus=i.listerStatus.RENDERING;l=r.initializeMasonry(k);t(function(){f.listerStatus=i.listerStatus.DONE})})}f.pendingAction=!1;var h=null,l=null,s=null;f.isLoading=function(){return f.listerStatus!==i.listerStatus.DONE};f.contextMenuAction=function(n,t){return f.onAction({action:n,data:{rowId:t}})};f.$on("$destroy",function(){c()});f.$watch(function(){return f.listerStatus},function(u){if(f.lister===null){c();return}if(f.lister.layout===null){c();return}switch(f.lister.layout){case i.listerLayout.BAR_CHART:case i.listerLayout.TIMELINE:case i.listerLayout.TABLE:case i.listerLayout.TILES_L:case i.listerLayout.TILES_S:case i.listerLayout.MAP:c();return;case i.listerLayout.CONTENT:switch(u){case i.listerStatus.LOADING:c();break;case i.listerStatus.RENDERING:if(c(),f.lister.rows.length===0){var e=$('   <div class="layout-no-data">       <div class="no-data alert alert-info">          <i class="icon-size-18 material_info"><\/i>           <p>No results.<\/p>       <\/div>   <\/div>'),o=e.find("p");r.setTestAttribute(o,"no-data","No Items");n(e)(h);$(s).append(e);t(function(){f.listerStatus=i.listerStatus.DONE});return}v()}break;default:throw Error("Unknown Lister layout: "+f.lister.layout);}},!1)}}}]);angular.module("sharedElements").directive("cNotAvailableOnMobileMessage",function(){return{restrict:"E",scope:{},link:function(n,t,i){function r(){i.$addClass("small-only");$(t).append('<div class="alert alert-info"><i class="icon-size-18 material_info"><\/i><span class="format-wrap">This functionality is not available on small screens or tablets.<\/span><\/div>')}r()}}});angular.module("sharedElements").directive("cPageColumn",["$timeout","$q","helpService","testService","exceptionService",function(n,t,i,r,u){return{restrict:"A",scope:{column:"=",pendingAction:"=",isPreviewMode:"=",onAction:"&"},templateUrl:"js/shared/common/directives/pageColumn/pageColumn.html",link:function(t,f,e){function y(){t.column.element.resizable({disabled:!0});s=!0;a()}function a(){var n,i,r;t.isPreviewMode!==!0&&t.column.siblings!==null&&s!==!1&&(n=Math.floor(t.column.parentElementWidthInPx/o),t.column.element.resizable("option","grid",[n,n]),i=t.column.siblings.indexOf(t.column),r=i===t.column.siblings.length-1,t.column.element.resizable(r===!0?"disable":"enable"))}function b(){t.column.element.resizable("destroy");s=!1}function p(){t.column.element.find(".dash-widgets").first().sortable({connectWith:".dash-widgets",placeholder:"dash-widget-placeholder",tolerance:"pointer",handle:".panel",appendTo:"#dash-content-main-row",cancel:".panel-tools, .dash-split-column-tool",cursorAt:{left:0,top:0},helper:function(){return $("<div>Widget<\/div>")}})}function k(){t.column.element.find(".dash-widgets").first().sortable("destroy")}function d(){var n=$(f).find(".dash-row");return n.length===0?null:n.first()}function l(n){var c=_.filter(n,function(n){return n.widthInClc<n.minWidthInClc}),u=!1,f,r,i,s,h;if(angular.forEach(c,function(n){n.widthInClc=n.minWidthInClc;u=!0}),u===!0){f=_.filter(n,function(n){return n.widthInClc===n.minWidthInClc});r=0;angular.forEach(f,function(n){r+=n.widthInClc});var a=o-r,t=_.filter(n,function(n){return n.widthInClc>n.minWidthInClc}),e=0;angular.forEach(t,function(n){e+=n.widthInClc});angular.forEach(t,function(n){n.widthInClc=n.widthInClc/e*a});t=_.sortBy(t,function(n){return n.widthInClc});angular.forEach(t,function(n,i){n.widthInClc=i===t.length-1?Math.ceil(n.widthInClc):Math.floor(n.widthInClc)});l(n)}else i=_.reduce(n,function(n,t){return n+t.widthInClc},0),i<o&&(s=o-i,angular.forEach(n,function(n){n.widthInClc=n.widthInClc+n.widthInClc/i*s}),h=_.sortBy(n,function(n){return n.widthInClc}),angular.forEach(h,function(n,t){n.widthInClc=t===0?Math.ceil(n.widthInClc):Math.floor(n.widthInClc)}),l(n))}function g(n){var r=t.column.siblings.indexOf(t.column),i;if(n===!0){if(i=t.column.siblings[r+1],i.widthInClc===i.minWidthInClc)return;t.column.widthInClc++;i.widthInClc--}else{if(t.column.widthInClc===t.column.minWidthInClc)return;i=t.column.siblings[r+1];t.column.widthInClc--;i.widthInClc++}$("div[data-c-chart]").trigger("resized-column")}function nt(){t.onAction({action:"resize-column",section:null,data:null})}function w(n){if(t.canAddColumn()!==!1){var i={id:null,sections:[],subColumns:null,parentColumn:t.column.parentColumn===null?null:t.column.parentColumn,siblings:t.column.siblings,widthInClc:1,minWidthInClc:null,widthInTlc:null,minWidthBasedOnChildrenInTlc:null,ratio:null,leafCount:null,leafWithSectionCount:null,widthInPx:null,rank:null};t.onAction({action:"add-column",section:null,data:{column:t.column,newColumn:i,isLeft:n}})}}function tt(){if(t.canSplitColumn()!==!1){var n=[{id:null,sections:[],subColumns:null,parentColumn:t.column,siblings:null,widthInClc:Math.ceil(o/2),minWidthInClc:null,widthInTlc:null,minWidthBasedOnChildrenInTlc:null,ratio:null,leafCount:null,leafWithSectionCount:null,widthInPx:null,rank:null},{id:null,sections:[],subColumns:null,parentColumn:t.column,siblings:null,widthInClc:Math.floor(o/2),minWidthInClc:null,widthInTlc:null,minWidthBasedOnChildrenInTlc:null,ratio:null,leafCount:null,leafWithSectionCount:null,widthInPx:null,rank:null}];t.onAction({action:"split-column",section:null,data:{column:t.column,newSubColumns:n}})}}function it(){if(t.canRemoveColumn()!==!1)t.onAction({action:"remove-column",section:null,data:{column:t.column}})}function rt(){if(e.$addClass("dash-col"),r.setAttribute(f,"column",t.column.id),t.column.parentElement=$(f).parent(".dash-row"),t.column.parentElementWidth=null,t.column.element=f,t.column.parentColumn!==null&&(t.column.siblings=t.column.parentColumn.subColumns),t.column.siblings!==null){var i=t.column.siblings.indexOf(t.column)+1,n="";t.column.parentColumn!==null&&(n=t.column.parentColumn.rank+".");t.column.rank=n+i}t.isPreviewMode===!1&&(y(),p());$(f).on("mouseenter",function(n){n.stopPropagation();$(".dash-col-hover").removeClass("dash-col-hover");$(".dash-tools").removeClass("dash-tools-active");$(this).addClass("dash-col-hover");$(this).find(".dash-tools").first().addClass("dash-tools-active");$(this).find(".dash-split-column-tool").first().addClass("dash-split-column-tool-active")});$(f).on("mouseleave",function(n){n.stopPropagation();$(".dash-col-hover").removeClass("dash-col-hover");$(".dash-tools-active").removeClass("dash-tools-active");$(".dash-split-column-tool-active").removeClass("dash-split-column-tool-active");var t=$(this).parent().closest(".dash-col");t.length!==0&&(t.addClass("dash-col-hover"),t.find(".dash-tools").first().addClass("dash-tools-active"),t.first().addClass("dash-split-column-tool-active"))})}function ut(){t.column.parentElementWidthInPx!==null&&t.column.siblings!==null&&(t.column.parentElementWidthInPx<=t.column.siblings.length*v?t.column.parentElement.addClass("dash-row-wrap"):t.column.parentElement.removeClass("dash-row-wrap"))}function ft(){var r,i,n;t.column.parentElementWidthInPx!==null&&t.column.siblings!==null&&(r=t.column.siblings.indexOf(t.column),i=(t.column.siblings.length-r)*v>t.column.parentElementWidthInPx,i===!0?$(f).addClass("dash-col-full-width"):$(f).removeClass("dash-col-full-width"),n=d(),n!==null&&(i===!0?n.addClass("dash-row-full-width"):n.removeClass("dash-row-full-width")))}function et(n){var i=0;return angular.forEach(n,function(n){n===null?u.logError(new Error("#60762 - section is NULL - countVisibleSections()"),"",!1,""):t.isPreviewMode===!1?i++:n.isVisibleInConfigModeOnly===!1&&i++}),i}var h=2,o=12,v=220,c=null,s=!1;f.on("resizestart",function(r,u){(r.stopPropagation(),s!==!1)&&(t.pendingAction===!0&&i.openProcessingDialogCustomPage(function(){return t.pendingAction},t),u.element.tempWidthInClc=t.column.widthInClc,n(function(){t.onAction({action:"disable-tools"})}))});f.on("resize",function(n,i){(n.stopPropagation(),s!==!1)&&($(f).css("width",""),t.pendingAction===!1&&t.$apply(function(){try{g(parseInt(i.size.width)>parseInt(i.originalSize.width))}catch(n){throw new Error('"BUG ID(1): 48024" resizeColumn(parseInt(ui.size.width) > parseInt(ui.originalSize.width)) error. Error: '+n);}}))});f.on("resizestop",function(i,r){(i.stopPropagation(),s!==!1)&&(t.pendingAction===!1&&r.element.tempWidthInClc!==t.column.widthInClc&&nt(),n(function(){t.onAction({action:"enable-tools"})}))});f.on("sortstart",function(i,r){i.stopPropagation();r.item.sourceIndex=r.item.index();r.item.sourceColumn=t.column;r.item.section=null;r.item.widget=null;r.item.section=angular.copy(t.column.sections[r.item.sourceIndex]);var u=$(document.createElement("div"));u.addClass("dash-widget-helper");u.text(r.item.section.title);r.helper.width("auto");r.helper.html(u);n(function(){t.onAction({action:"disable-tools"})})});f.on("sortupdate",function(n,i){n.stopPropagation();var r=i.item.index();if(t.column.sections.length===0&&r===1&&(r=0),i.sender!==null)t.$apply(function(){if(i.item.widget!==null){$(i.sender).sortable("cancel");t.onAction({action:"add-section",section:null,data:{column:t.column,widget:i.item.widget,targetIndex:r}})}else{i.item.remove();t.onAction({action:"move-section",section:null,data:{sourceColumn:i.item.sourceColumn,targetColumn:t.column,sourceIndex:i.item.sourceIndex,targetIndex:r}})}});else{if($(n.target).has(i.item).length===0)return;t.$apply(function(){i.item.remove();t.onAction({action:"sort-section",section:null,data:{column:t.column,sourceIndex:i.item.sourceIndex,targetIndex:r}})})}});f.on("sortstop",function(i){i.stopPropagation();n(function(){$(".ui-sortable-helper").remove();t.onAction({action:"enable-tools"})})});t.canAddColumn=function(){var n,i,r,u;return(t.column.parentColumn===null?(n=o,i=1):(n=t.column.parentColumn.widthInTlc,i=t.column.parentColumn.ratio),r=_.reduce(t.column.siblings,function(n,t){return n+t.minWidthInTlc},0),u=_.reduce(t.column.siblings,function(n,t){return n+t.minWidthInClc},0),n-r<h||o-u<Math.ceil(i*h))?!1:!0};t.canSplitColumn=function(){return t.column.subColumns!==null?!1:t.column.widthInTlc<2*h?!1:!0};t.canRemoveColumn=function(){return t.column.subColumns!==null?!1:t.column.sections.length>0?!1:t.column.parentColumn===null&&t.column.siblings.length===1?!1:!0};t.addColumnLeft=function(){if(t.pendingAction===!0){i.openProcessingDialogCustomPage(function(){return t.pendingAction},t);return}w(!0)};t.addColumnRight=function(){if(t.pendingAction===!0){i.openProcessingDialogCustomPage(function(){return t.pendingAction},t);return}w(!1)};t.removeColumn=function(){if(t.pendingAction===!0){i.openProcessingDialogCustomPage(function(){return t.pendingAction},t);return}it()};t.splitColumn=function(){if(t.pendingAction===!0){i.openProcessingDialogCustomPage(function(){return t.pendingAction},t);return}tt()};t.filterColumnsFunction=function(n){return t.isPreviewMode===!1?!0:n.leafWithSectionCount>0};t.filterSectionsFunction=function(n){return t.isPreviewMode===!1?!0:n===null?(u.logError(new Error("#60762 - section is NULL - filterSectionsFunction()"),"",!1,""),!1):n.isVisibleInConfigModeOnly===!1};t.handleAction=function(n,i,r){switch(n){case"edit-widget":t.onAction({action:"edit-section",section:i,data:{column:t.column,linkerId:r.sectionId}});break;case"remove-widget":t.onAction({action:"remove-section",section:i,data:{column:t.column,linkerId:r.sectionId}});break;default:return t.onAction({action:n,section:i,data:r})}};t.$watch(function(){return t.column.parentColumn===null?o:t.column.parentColumn.widthInTlc},function(n){t.column.widthInTlc=n*t.column.widthInClc/o});t.$watch(function(){return t.column.widthInClc},function(n){var i,r;t.column.parentColumn===null?(i=o,r=o/n):(i=t.column.parentColumn.widthInTlc,r=t.column.parentColumn.ratio*o/n);t.column.ratio=r;t.column.widthInTlc=i*n/o;t.column.parentElementWidthInPx=$(t.column.parentElement).width()});t.$watch(function(){return t.column.parentColumn===null?null:t.column.parentColumn.ratio},function(n){t.column.ratio=n===null?1:n*o/t.column.widthInClc;t.column.minWidthInClc=Math.ceil((n===null?1:n)*t.column.minWidthInTlc);t.column.minWidthInClc>t.column.widthInClc&&l(t.column.siblings)});t.$watch(function(){return t.column.parentElement.width()},function(){t.column.parentElementWidthInPx=$(t.column.parentElement).width()});t.$watch(function(){var n=et(t.column.sections),i;return n===0&&t.column.subColumns===null?0:t.column.subColumns===null?n:(i=_.reduce(t.column.subColumns,function(n,t){return n+t.leafWithSectionCount},0),i+n)},function(n){t.column.leafWithSectionCount=n});t.$watch(function(){return t.column.subColumns===null?1:_.reduce(t.column.subColumns,function(n,t){return n+t.leafCount},0)},function(n){t.column.leafCount=n;t.column.minWidthInTlc=t.column.leafCount*h;var i=t.column.parentColumn===null?1:t.column.parentColumn.ratio;t.column.minWidthInClc=Math.ceil(i*t.column.minWidthInTlc)});t.$watch(function(){return t.column.parentColumn===null?null:t.column.parentColumn.ratio},function(n){t.column.ratio=n===null?o/t.column.widthInClc:n*o/t.column.widthInClc;t.column.minWidthInClc=Math.ceil((n===null?1:n)*t.column.minWidthInTlc)});t.$watch(function(){return t.column.siblings.length},function(){l(t.column.siblings);a()});t.$watch(function(){return t.column.parentElementWidthInPx},function(t){t!==null&&(c!==null&&n.cancel(c),c=n(function(){ut();ft();a();$("div[data-c-chart]").trigger("resized-window");$("div[data-c-news-item-content-lister] .masonry").trigger("resized-window");c=null},50))});t.$watch(function(){return t.isPreviewMode},function(n,t){n!==t&&(n===!0?(b(),k()):(y(),p()))});t.$watch(function(){return t.pendingAction},function(n,i){if(n!==i&&t.isPreviewMode!==!0){var r=t.column.element.find(".dash-widgets").first().sortable("instance");typeof r!="undefined"&&(n===!0?t.column.element.find(".dash-widgets").first().sortable("disable"):t.column.element.find(".dash-widgets").first().sortable("enable"))}});rt()}}}]);angular.module("sharedElements").directive("cPageColumnWidget",["$compile","helpService","$timeout",function(n,t){return{restrict:"A",scope:{widget:"=",pendingAction:"=",isPreviewMode:"=",onAction:"&"},link:function(i,r,u){function o(){f!==null&&f.$destroy();f=i.$new();r.html("");r.css("display","none")}function s(){if(o(),typeof i.widget=="undefined")throw new Error('"widget" is undefined');return i.widget!==null}function e(){if(s()!==!1){r.css("display","block");u.$addClass("dash-widget-wrapper");$(r).append('<div data-c-section class="dash-widget" data-section="widget" on-action="handleAction(action, section, data)"><\/div>');n(r.contents())(f);$(r).find(".dash-widget").on("mousedown",function(){i.pendingAction===!0&&t.openProcessingDialogCustomPage(function(){return i.pendingAction},i)})}}var f=null;i.$watch(function(){return i.widget},function(n,t){typeof n!="undefined"&&n!==t&&e()});i.handleAction=function(n,t,r){return i.onAction({action:n,section:t,data:r})};e()}}}]);angular.module("sharedElements").directive("cPageColumnWrapper",["$compile","$timeout","helpService",function(n){return{restrict:"A",scope:{columns:"=",pendingAction:"=",isPreviewMode:"=",isPreviewNoBordersLayoutMode:"=",onAction:"&"},link:function(t,i){function u(){t.isPreviewMode===!0?($(i).removeClass("dash1-edit"),$(i).find("#dash-content").removeClass("dash-edit"),r()):($(i).addClass("dash1-edit"),$(i).find("#dash-content").addClass("dash-edit"),$(i).find("#dash-content").removeClass("dash-flush"));$("div[data-c-chart]").trigger("resized-column")}function r(){t.isPreviewNoBordersLayoutMode===!0?$(i).find("#dash-content").addClass("dash-flush"):$(i).find("#dash-content").removeClass("dash-flush");$("div[data-c-chart]").trigger("resized-column")}function f(){$(i).append('<div id="dash-content" class="dash dash-pad dash-full">    <div id="dash-content-main-row" class="dash-row" >        <div data-c-page-column data-column="column"  data-is-preview-mode="isPreviewMode"  data-cols="[[exec[[column.widthInClc]]exec]]" data-pending-action="pendingAction" data-on-action="handleSectionAction(action, section, data)" class="dash-col" data-ng-repeat="column in columns | filter: filterColumnsFunction | orderBy:$index:isPreviewMode === true"><\/div>    <\/div><\/div>');n(i.contents())(t);u();r()}t.handleSectionAction=function(n,i,r){return t.onAction({action:n,section:i,data:r})};t.filterColumnsFunction=function(n){return t.isPreviewMode===!1?!0:n.leafWithSectionCount>0};t.$watch(function(){return t.isPreviewMode},function(n,t){n!==t&&u()});t.$watch(function(){return t.isPreviewNoBordersLayoutMode},function(n,i){n!==i&&t.isPreviewMode!==!1&&r()});f()}}}]);angular.module("sharedElements").directive("cPageHeaderCentered",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t){var v=t.children("attr-breadcrumbs").clone(),y=t.children("attr-title").clone(),p=t.children("attr-labels").clone(),w=t.children("attr-actions").clone(),b=t.children("attr-description").clone(),k=t.children("attr-alerts").clone(),r,u,i,f,e,o,s,h,c,l,a;t.html("");t.addClass("centered-header");r=$(document.createElement("div"));r.addClass("centered-header-actions");u=$(document.createElement("div"));u.addClass("centered-header-actions-wrapper");r.append(u);i=$(document.createElement("div"));i.addClass("centered-header-details");v.length>0&&(f=n.copyHtmlElement(v,"div"),f.addClass("header-breadcrumbs"),f.html(v.html()),u.append(f));w.length>0&&(e=n.copyHtmlElement(w,"div"),e.addClass("header-actions large-only"),o=$(document.createElement("div")),o.addClass("n-actions"),s=$(document.createElement("div")),s.addClass("n-actions-right"),w.children().each(function(){s.append(this)}),o.append(s),e.append(o),u.append(e));k.length>0&&(h=n.copyHtmlElement(k,"div"),h.addClass("header-alerts"),h.html(k.html()),r.append(h));y.length>0&&(c=n.copyHtmlElement(y,"div"),c.addClass("header-title"),c.html('<h1 class="header-name">'+y.html()+"<\/h1>"),i.append(c));b.length>0&&(l=n.copyHtmlElement(b,"div"),l.addClass("header-description"),l.html(b.html()),i.append(l));p.length>0&&(a=n.copyHtmlElement(p,"div"),a.addClass("header-labels"),a.html(p.html()),i.append(a));t.append(r);t.append(i)}}}]);angular.module("sharedElements").directive("cPageHeader",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t,i){var it=typeof i.largeOnly!="undefined",p=t.children("attr-breadcrumbs").clone(),w=t.children("attr-title").clone(),b=t.children("attr-entity-type").clone(),k=t.children("attr-labels").clone(),d=t.children("attr-filters").clone(),rt=t.children("attr-actions").clone(),g=t.children("attr-actions").clone(),nt=t.children("attr-description").clone(),r=t.children("attr-alerts").clone(),f,e,o,s,h,tt,c,l,a,v,u,y;t.html("");t.addClass("header");p.length>0&&(f=n.copyHtmlElement(p,"div"),f.addClass("header-breadcrumbs"),f.html(p.html()),t.append(f));w.length>0&&(e=n.copyHtmlElement(w,"div"),e.addClass("header-title"),e.html('<h1 class="header-name">'+w.html()+"<\/h1>"),t.append(e));b.length>0&&(o=n.copyHtmlElement(b,"div"),o.addClass("header-tag"),o.html('<span class="text-smallcaps">'+b.html()+"<\/span>"),t.append(o));k.length>0&&(s=n.copyHtmlElement(k,"div"),s.addClass("header-labels"),s.html(k.html()),t.append(s));d.length>0&&(h=n.copyHtmlElement(d,"div"),h.addClass("header-filters large-only"),h.html(d.html()),t.append(h));tt=rt.length>0?n.copyHtmlElement(rt,"div"):$(document.createElement("div"));tt.addClass("header-spacer");t.append(tt);g.length>0&&(c=n.copyHtmlElement(g,"div"),c.addClass("header-actions large-only"),l=$(document.createElement("div")),l.addClass("n-actions"),a=$(document.createElement("div")),a.addClass("n-actions-right"),g.children().each(function(){a.append(this)}),l.append(a),c.append(l),t.append(c));nt.length>0&&(v=n.copyHtmlElement(nt,"div"),v.addClass("header-description"),v.html(nt.html()),t.append(v));(r.length>0||it)&&(u=r.length>0?n.copyHtmlElement(r,"div"):$(document.createElement("div")),u.addClass("header-alerts"),it?(u.append('<div class="alert alert-info small-only"><i class="icon-size-18 material_info"><\/i><span class="format-wrap">This functionality is not available on small screens or tablets.<\/span><\/div>'),r.length>0&&(y=$(document.createElement("div")),y.addClass("large-only"),y.html(r.html()),u.append(y))):u.html(r.html()),t.append(u))}}}]);angular.module("sharedElements").directive("cPageLayoutDetailsCentered",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t){var r=t.children("attr-left").clone(),u=t.children("attr-center").clone(),f=t.children("attr-right").clone(),e=t.children("attr-mobile-actions").clone(),i,o,s,h,c;t.html("");t.addClass("n-full-width-height");i=$(document.createElement("data-c-page-layout-general"));r.length>0&&(o=n.copyHtmlElement(r,"attr-left"),o.html("<div data-c-page-layout-item-sidebar>"+r.html()+"<\/div>"),i.append(o));u.length>0&&(s=n.copyHtmlElement(u,"attr-center"),s.html("<div data-c-page-layout-item-details-centered>"+u.html()+"<\/div>"),i.append(s));f.length>0&&(h=n.copyHtmlElement(f,"attr-right"),h.html("<div data-c-page-layout-item-sidebar>"+f.html()+"<\/div>"),i.append(h));e.length>0&&(c=n.copyHtmlElement(e,"attr-mobile-actions"),c.html(e.html()),i.append(c));t.append(i)}}}]);angular.module("sharedElements").directive("cPageLayoutDetailsSettings",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t){var r=t.children("attr-left").clone(),u=t.children("attr-center").clone(),f=t.children("attr-right").clone(),e=t.children("attr-mobile-actions").clone(),i,o,s,h,c;t.html("");t.addClass("n-full-width-height");i=$(document.createElement("data-c-page-layout-general"));r.length>0&&(o=n.copyHtmlElement(r,"attr-left"),o.html("<div data-c-page-layout-item-sidebar>"+r.html()+"<\/div>"),i.append(o));u.length>0&&(s=n.copyHtmlElement(u,"attr-center"),s.html("<div data-c-page-layout-item-details>"+u.html()+"<\/div>"),i.append(s));f.length>0&&(h=n.copyHtmlElement(f,"attr-right"),h.html("<div data-c-page-layout-item-sidebar>"+f.html()+"<\/div>"),i.append(h));e.length>0&&(c=n.copyHtmlElement(e,"attr-mobile-actions"),c.html(e.html()),i.append(c));t.append(i)}}}]);angular.module("sharedElements").directive("cPageLayoutDetails",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t){var u=t.children("attr-left").clone(),f=t.children("attr-center").clone(),e=t.children("attr-right").clone(),o=t.children("attr-mobile-actions").clone(),r,i,s,h,c,l;t.html("");t.addClass("n-full-width-height");r=$(document.createElement("data-c-page-layout-general"));f.length>0&&(i=$(document.createElement("div")),i.attr("data-c-page-layout-item-details",""),u.length>0&&(s=n.copyHtmlElement(u,"attr-left"),s.append(u.html()),i.append(s)),h=n.copyHtmlElement(f,"attr-center"),i.append(f.html()),e.length>0&&(c=n.copyHtmlElement(e,"attr-right"),c.append(e.html()),i.append(c)),h.append(i),r.append(h));o.length>0&&(l=n.copyHtmlElement(o,"attr-mobile-actions"),l.html(o.html()),r.append(l));t.append(r)}}}]);angular.module("sharedElements").directive("cPageLayoutEdit",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t,i){var l=typeof i.largeOnly!="undefined",e=t.children("attr-left").clone(),o=t.children("attr-center").clone(),s=t.children("attr-mobile-actions").clone(),r,h,c,u,f;t.html("");t.addClass("n-full-width-height");r=$(document.createElement("data-c-page-layout-general"));e.length>0&&(h=n.copyHtmlElement(e,"attr-left"),h.html("<div data-c-page-layout-item-sidebar>"+e.html()+"<\/div>"),r.append(h));o.length>0&&(c=n.copyHtmlElement(o,"attr-center"),u=$(document.createElement("div")),u.attr("data-c-page-layout-item-edit",""),l&&u.attr("data-large-only",""),u.html(o.html()),c.html(u),r.append(c));s.length>0&&(f=n.copyHtmlElement(s,"attr-mobile-actions"),f.addClass("n-mobile-actions"),f.html(s.html()),r.append(f));t.append(r)}}}]);angular.module("sharedElements").directive("cPageLayoutGeneral",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t){var y=t.children("attr-left").clone(),h=t.children("attr-center").clone(),c=t.children("attr-right").clone(),l=t.children("attr-mobile-actions").clone(),r,i,f,a,e,o,s,u,v;for(t.html(""),t.addClass("n-full-width-height"),r=$(document.createElement("div")),r.addClass("n-layout-general-wrapper"),i=$(document.createElement("div")),i.addClass("n-layout-general"),f=0;f<y.length;f++)a=$(y[f]),e=n.copyHtmlElement(a,"div"),e.addClass("n-layout-general-sidebar n-layout-scroll sidebar-left"),e.html(a.html()),i.append(e);h.length>0&&(o=n.copyHtmlElement(h,"div"),o.addClass("n-layout-general-content"),o.html(h.html()),i.append(o));c.length>0&&(s=n.copyHtmlElement(c,"div"),s.addClass("n-layout-general-sidebar n-layout-scroll sidebar-right"),s.html(c.html()),i.append(s));r.append(i);l.length>0&&(u=n.copyHtmlElement(l,"div"),u.addClass("n-mobile-actions-sticky-footer n-mobile-actions"),u.html(l.html()),v=u.attr("data-ng-if"),typeof v!="undefined"?i.attr("data-ng-class","{'n-mobile-actions-spacer' : "+v+"}"):i.addClass("n-mobile-actions-spacer"),r.append(u));t.append(r)}}}]);angular.module("sharedElements").directive("cPageLayoutItemDetailsCentered",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t){var u=t.children("attr-header").clone(),f=t.children("attr-body").clone(),i,r;t.html("");t.addClass("n-layout-details-page n-layout-scroll n-layout-fill-large-only");i=$(document.createElement("div"));i.addClass("n-layout-padding-uniform");r=n.copyHtmlElement(u,"div");r.attr("data-c-page-header-centered","");r.html(u.html());i.append(r);i.append(f.html());t.html(i)}}}]);angular.module("sharedElements").directive("cPageLayoutItemDetailsSettings",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t){var v=t.children("attr-header").clone(),a=t.children("attr-body").clone(),y=t.children("attr-footer").clone(),u=t.children("attr-left").clone(),f=t.children("attr-right").clone(),i,e,r,o,s,h,c,l;t.html("");t.addClass("n-layout-details-page n-layout-scroll n-layout-fill-large-only");i=$(document.createElement("div"));i.addClass("n-layout-padding-uniform");e=n.copyHtmlElement(v,"div");e.attr("data-c-page-header","");e.html(v.html());i.append(e);u.length>0||f.length>0?(r=$(document.createElement("div")),r.addClass("content"),u.length>0&&(o=n.copyHtmlElement(u,"div"),o.addClass("sidebar sidebar-left large-only"),s=$(document.createElement("div")),s.addClass("sidebar-content n-layout-padding-uniform"),s.append(u.html()),o.append(s),r.append(o)),h=n.copyHtmlElement(a,"div"),h.addClass("main-content"),h.append(a.html()),r.append(h),f.length>0&&(c=n.copyHtmlElement(f,"div"),c.addClass("sidebar sidebar-right large-only"),l=$(document.createElement("div")),l.addClass("sidebar-content n-layout-padding-uniform"),l.append(f.html()),c.append(l),r.append(c)),i.append(r)):i.append(a.html());y.length>0&&(i.addClass("n-layout-flex-col n-layout-padding-left-right-large"),i.append(y.html()));t.html(i)}}}]);angular.module("sharedElements").directive("cPageLayoutItemDetails",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t){var v=t.children("attr-header").clone(),a=t.children("attr-body").clone(),y=t.children("attr-footer").clone(),u=t.children("attr-left").clone(),f=t.children("attr-right").clone(),i,e,r,o,s,h,c,l;t.html("");t.addClass("n-layout-details-page n-layout-scroll n-layout-fill-large-only");i=$(document.createElement("div"));i.addClass("n-layout-padding-uniform");e=n.copyHtmlElement(v,"div");e.attr("data-c-page-header","");e.html(v.html());i.append(e);u.length>0||f.length>0?(r=$(document.createElement("div")),r.addClass("content"),u.length>0&&(o=n.copyHtmlElement(u,"div"),o.addClass("sidebar sidebar-left large-only"),s=$(document.createElement("div")),s.addClass("sidebar-content n-layout-padding-uniform"),s.append(u.html()),o.append(s),r.append(o)),h=n.copyHtmlElement(a,"div"),h.addClass("main-content"),h.append(a.html()),r.append(h),f.length>0&&(c=n.copyHtmlElement(f,"div"),c.addClass("sidebar sidebar-right large-only"),l=$(document.createElement("div")),l.addClass("sidebar-content n-layout-padding-uniform"),l.append(f.html()),c.append(l),r.append(c)),i.append(r)):i.append(a.html());y.length>0&&(i.addClass("n-layout-flex-col n-layout-padding-left-right-large"),i.append(y.html()));t.html(i)}}}]);angular.module("sharedElements").directive("cPageLayoutItemEdit",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t,i){var v=typeof i.largeOnly!="undefined",c=t.children("attr-header").clone(),l=t.children("attr-body").clone(),a=t.children("attr-footer-actions").clone(),r,e,u,f,o,s,h;t.html("");t.addClass("n-layout-edit n-layout-scroll");r=$(document.createElement("div"));r.addClass("n-layout-padding-uniform n-layout-padding-edit");c.length>0&&(e=n.copyHtmlElement(c,"div"),e.addClass("n-layout-edit-header"),u=$(document.createElement("div")),u.attr("data-c-page-header",""),v&&u.attr("data-large-only",""),u.html(c.html()),e.html(u),r.append(e));l.length>0&&(f=n.copyHtmlElement(l,"div"),f.addClass("n-layout-edit-body"),v&&f.addClass("large-only"),f.html(l.html()),r.append(f));a.length>0&&(o=n.copyHtmlElement(a,"div"),o.addClass("n-layout-edit-footer"),s=$(document.createElement("div")),s.addClass("n-actions"),h=$(document.createElement("div")),h.addClass("n-actions-right"),h.html(a.html()),s.append(h),o.append(s),r.append(o));t.append(r)}}}]);angular.module("sharedElements").directive("cPageLayoutItemLister",["compileService",function(n){return{restrict:"A",scope:{},compile:function(t){var l=t.children("attr-header").clone(),r=t.children("attr-actions-left").clone(),u=t.children("attr-actions-right").clone(),a=t.children("attr-body").clone(),f,e,o,i,s,h,c;return t.html(""),t.addClass("n-layout-lister"),l.length>0&&(f=n.copyHtmlElement(l,"div"),f.addClass("n-layout-lister-header layout-header"),f.html('<div class="n-layout-padding-uniform"><div data-c-page-header>'+l.html()+"<\/div><\/div>"),t.append(f)),(r.length>0||u.length>0)&&(e=$(document.createElement("div")),e.addClass("n-layout-lister-header layout-header layout-header-actions"),o=$(document.createElement("div")),o.addClass("n-layout-padding-uniform"),i=$(document.createElement("div")),i.addClass("n-actions"),r.length>0&&(s=n.copyHtmlElement(r,"div"),s.addClass("n-actions-left"),r.children().each(function(){s.append(this)}),i.append(s)),u.length>0&&(h=n.copyHtmlElement(u,"div"),h.addClass("n-actions-right"),u.children().each(function(){h.append(this)}),i.append(h)),o.append(i),e.append(o),t.append(e)),a.length>0&&(c=n.copyHtmlElement(a,"div"),c.addClass("n-layout-lister-body"),c.html('<div class="n-layout-scroll"><div class="n-layout-lister-body-wrapper">'+a.html()+"<\/div><\/div>"),t.append(c)),function(n,t){n.$watch(function(){var n=$(t).find(".n-layout-lister-body");return n.length>0?n.outerHeight(!1):null},function(n,i){if(n!==i&&n!==null){var r=$(t).find(".n-layout-lister-body-wrapper");r.length>0&&r.css("max-height",n)}},!1)}}}}]);angular.module("sharedElements").directive("cPageLayoutItemScrollableLister",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t){var l=t.children("attr-header").clone(),e=t.children("attr-actions").clone(),a=t.children("attr-body").clone(),i,o,s,r,u,f,h,c,v;t.html("");t.addClass("n-layout-scrollable-lister n-layout-scroll");i=$(document.createElement("div"));i.addClass("n-layout-padding");l.length>0&&(o=n.copyHtmlElement(l,"div"),o.addClass("n-layout-scrollable-lister-header"),o.html("<div data-c-page-header>"+l.html()+"<\/div>"),i.append(o));e.length>0&&(s=n.copyHtmlElement(e,"div"),s.addClass("n-layout-scrollable-lister-actions"),r=e.children("attr-actions-left"),u=e.children("attr-actions-right"),(r.length>0||u.length>0)&&(f=$(document.createElement("div")),f.addClass("n-actions"),r.length>0&&(h=n.copyHtmlElement(r,"div"),h.addClass("n-actions-left"),r.children().each(function(){h.append(this)}),f.append(h)),u.length>0&&(c=n.copyHtmlElement(u,"div"),c.addClass("n-actions-right"),u.children().each(function(){c.append(this)}),f.append(c)),s.append(f),i.append(s)));a.length>0&&(v=n.copyHtmlElement(a,"div"),v.html(a.html()),i.append(v));t.append(i)}}}]);angular.module("sharedElements").directive("cPageLayoutItemSidebar",["compileService",function(){return{restrict:"A",scope:!1,compile:function(n){var t=n.html();n.html("");n.addClass("n-layout-scroll n-layout-fill-large-only");n.html('<div class="n-layout-padding-uniform">'+t+"<\/div>")}}}]);angular.module("sharedElements").directive("cPageLayoutLister",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t){var a=t.children("attr-left").clone(),u=t.children("attr-center").clone(),f=t.children("attr-right").clone(),e=t.children("attr-mobile-actions").clone(),i,r,o,s,h,c,l;for(t.html(""),t.addClass("n-full-width-height"),i=$(document.createElement("data-c-page-layout-general")),r=0;r<a.length;r++)o=$(a[r]),s=n.copyHtmlElement(o,"attr-left"),s.html(o.html()),i.append(s);u.length>0&&(h=n.copyHtmlElement(u,"attr-center"),h.html("<div data-c-page-layout-item-lister>"+u.html()+"<\/div>"),i.append(h));f.length>0&&(c=n.copyHtmlElement(f,"attr-right"),c.html(f.html()),i.append(c));e.length>0&&(l=n.copyHtmlElement(e,"attr-mobile-actions"),l.html(e.html()),i.append(l));t.append(i)}}}]);angular.module("sharedElements").directive("cPageLayoutScrollableLister",["compileService",function(n){return{restrict:"E",scope:!1,compile:function(t){var r=t.children("attr-center").clone(),u=t.children("attr-mobile-actions").clone(),i,f,e;t.html("");t.addClass("n-full-width-height");i=$(document.createElement("data-c-page-layout-general"));r.length>0&&(f=n.copyHtmlElement(r,"attr-center"),f.html("<div data-c-page-layout-item-scrollable-lister>"+r.html()+"<\/div>"),i.append(f));u.length>0&&(e=n.copyHtmlElement(u,"attr-mobile-actions"),e.html(u.html()),i.append(e));t.append(i)}}}]);angular.module("sharedElements").directive("cPageLayoutEditorContentWrapper",["$compile","$timeout","helpService","$window",function(n,t,i,r){return{restrict:"A",scope:{isPreviewNoBordersLayoutMode:"=",onAction:"&"},link:function(n,i){function u(){var u=$(i).closest(".n-layout-scroll"),o=$(i).find(".layout-center-banner"),n=$(i).find(".layout-center-sidebar");if(n.length!==0){var t=$(u).scrollTop(),f=$(u).outerHeight(!0),r=o.height(),e=n.outerHeight(!0)-n.height();t>r&&(t=r);n.css("max-height",f-r+t-e);n.css("height",f-r+t-e)}}function f(){var n=$(i).closest(".n-layout-scroll");t(function(){u()});angular.element(n).on("scroll",u);angular.element(r).on("resize",u)}n.handleSectionAction=function(t,i,r){return n.onAction({action:t,section:i,data:r})};n.$watch(function(){return $(i).height()},function(n,i){n!==i&&t(function(){u()})});f()}}}]);angular.module("sharedElements").directive("cPageLayoutEditorPageComponent",["$compile",function(n){return{restrict:"A",scope:{type:"=",component:"=?",state:"=",onAction:"&"},link:function(t,i){function r(){i.addClass("page-layout-component");var r=$(document.createElement("div"));r.addClass("page-layout-component-overlay skin-bg-color");r.attr("data-ng-if","isAvailable() === false");r.attr("data-ng-click","edit()");r.html('<div data-ng-if="isHighlighted() === true" class="component-overlay-content"><svg width="51" height="50" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.783 18.25c.262.911.627 1.789 1.088 2.613l-1.314 1.674c-.429.547-.38 1.328.102 1.82l2.264 2.288c.488.493 1.26.536 1.802.102l1.647-1.316c.847.493 1.748.877 2.687 1.148l.247 2.14c.08.694.66 1.215 1.346 1.215h3.202c.687 0 1.266-.52 1.346-1.214l.236-2.065a12.03 12.03 0 0 0 2.88-1.176l1.594 1.274a1.35 1.35 0 0 0 1.802-.103l2.264-2.287a1.379 1.379 0 0 0 .102-1.82l-1.24-1.588c.515-.9.918-1.859 1.186-2.861l1.91-.223a1.366 1.366 0 0 0 1.2-1.36v-3.235c0-.693-.514-1.279-1.2-1.36l-1.883-.222a12.089 12.089 0 0 0-1.137-2.829l1.158-1.48c.43-.546.381-1.327-.102-1.82l-2.258-2.281a1.344 1.344 0 0 0-1.802-.103l-1.422 1.138a11.872 11.872 0 0 0-2.944-1.247l-.215-1.858A1.362 1.362 0 0 0 16.983 0H13.78c-.687 0-1.266.52-1.347 1.214l-.214 1.858c-1.062.288-2.076.721-3.02 1.29L7.725 3.181a1.35 1.35 0 0 0-1.802.103L3.659 5.57a1.379 1.379 0 0 0-.102 1.82l1.234 1.577a11.86 11.86 0 0 0-1.116 2.856l-1.974.228A1.366 1.366 0 0 0 .5 13.412v3.235c0 .693.515 1.279 1.201 1.36l2.082.244ZM15.384 9.5c2.918 0 5.294 2.4 5.294 5.348s-2.376 5.348-5.294 5.348c-2.917 0-5.294-2.4-5.294-5.348s2.377-5.349 5.294-5.349Z" fill="#fff"/><path d="m47.042 19.049-1.69-1.442a1.326 1.326 0 0 0-1.78.049l-.934.883a9.577 9.577 0 0 0-2.489-.813l-.263-1.3a1.351 1.351 0 0 0-1.426-1.084l-2.205.19a1.35 1.35 0 0 0-1.228 1.306l-.043 1.322a9.637 9.637 0 0 0-2.376 1.263l-1.116-.748a1.33 1.33 0 0 0-1.765.254l-1.426 1.718a1.36 1.36 0 0 0 .048 1.8l.976 1.05c-.338.77-.58 1.577-.719 2.407l-1.394.287a1.36 1.36 0 0 0-1.073 1.441l.188 2.227a1.35 1.35 0 0 0 1.292 1.241l1.508.049a9.991 9.991 0 0 0 1.067 2.06l-.842 1.283a1.364 1.364 0 0 0 .252 1.783l1.69 1.442c.52.444 1.287.422 1.78-.05l1.105-1.045a9.614 9.614 0 0 0 2.27.748l.305 1.528c.134.672.75 1.138 1.427 1.084l2.204-.19a1.35 1.35 0 0 0 1.229-1.306l.048-1.496a9.875 9.875 0 0 0 2.269-1.16l1.217.814a1.33 1.33 0 0 0 1.765-.255l1.427-1.707a1.36 1.36 0 0 0-.049-1.8l-.981-1.05c.36-.77.622-1.583.772-2.417l1.341-.276a1.36 1.36 0 0 0 1.073-1.442l-.188-2.227a1.35 1.35 0 0 0-1.292-1.241l-1.347-.043a9.88 9.88 0 0 0-1.12-2.233l.734-1.116a1.357 1.357 0 0 0-.241-1.788Zm-8.309 12.875c-2.381.206-4.484-1.588-4.682-3.994-.204-2.406 1.571-4.53 3.953-4.73 2.381-.206 4.484 1.587 4.682 3.993.204 2.406-1.571 4.53-3.953 4.73ZM11.496 37.915a1.349 1.349 0 0 0-1.202 1.333l-.016 1.371a1.346 1.346 0 0 0 1.17 1.36l.997.13c.166.613.402 1.198.708 1.75l-.644.802a1.361 1.361 0 0 0 .08 1.8l.95.98a1.33 1.33 0 0 0 1.78.125l.8-.623a7.797 7.797 0 0 0 1.78.786l.108 1.04c.07.683.638 1.208 1.32 1.214l1.357.016c.68.01 1.26-.498 1.346-1.181l.123-.986a8.013 8.013 0 0 0 1.931-.76l.751.613a1.327 1.327 0 0 0 1.781-.081l.971-.96a1.363 1.363 0 0 0 .123-1.798l-.574-.753c.354-.597.628-1.23.816-1.897l.89-.092a1.349 1.349 0 0 0 1.202-1.333l.016-1.371a1.346 1.346 0 0 0-1.17-1.36l-.869-.114a8.217 8.217 0 0 0-.734-1.897l.541-.672a1.361 1.361 0 0 0-.08-1.799l-.95-.98a1.329 1.329 0 0 0-1.78-.125l-.65.504a7.849 7.849 0 0 0-1.952-.857l-.086-.85a1.345 1.345 0 0 0-1.32-1.214l-1.356-.016a1.341 1.341 0 0 0-1.346 1.181l-.108.845a8.053 8.053 0 0 0-2.022.835l-.67-.553a1.327 1.327 0 0 0-1.781.081l-.976.965a1.363 1.363 0 0 0-.124 1.799l.574.748a7.978 7.978 0 0 0-.767 1.897l-.938.097Zm8.759-1.55c1.947.022 3.508 1.642 3.486 3.61-.021 1.966-1.625 3.543-3.572 3.521-1.947-.021-3.508-1.642-3.487-3.609.022-1.967 1.626-3.543 3.573-3.522Z" fill="#fff"/><\/svg><span class="text-strong" data-ng-bind="getHighlightedComponentName()">Settings<\/span><\/div>');r.attr("data-ng-mouseover","mouseOver(type)");r.attr("data-ng-mouseleave","mouseLeave()");r.attr("data-ng-class","{'active': isActive() === true, 'selected': isHighlighted() === true, 'inactive': isDisabled() === true }");$(i).prepend(n(r)(t))}t.mouseOver=function(n){t.state.getActiveComponentType()===null&&t.state.setHighlightedComponent(n)};t.mouseLeave=function(){t.state.setHighlightedComponent(null)};t.isActive=function(){return t.state.isHighlightAvailable()===!1?!1:t.state.getActiveComponentType()===null?!1:t.type!==t.state.getActiveComponentType()};t.isDisabled=function(){return t.state.isHighlightAvailable()===!1?!1:t.state.isDisabled(t.type)===!0};t.isHighlighted=function(){return t.state.isHighlightAvailable()===!1?!1:t.state.isDisabled(t.type)===!0?!1:t.type===t.state.getHighlightedComponent()};t.getHighlightedComponentName=function(){return t.isHighlighted()===!1?"":t.state.getComponentName(t.state.getHighlightedComponent())};t.isAvailable=function(){return t.state.isAvailable()===!0};t.edit=function(){if(t.state.getActiveComponentType()===null)return t.onAction({action:"edit-component",data:{type:t.type}})};r()}}}]);angular.module("sharedElements").directive("cPageLayoutEditorSideBarComponent",["helpService","$compile","$controller",function(n,t,i){return{restrict:"A",scope:{options:"=",onAction:"&"},link:function(n,r){function f(){u!==null&&u.$destroy();u=n.$new();r.html("")}function e(){var r=["$scope"];typeof n.options.dependencies!="undefined"&&n.options.dependencies!==null&&(r=r.concat(n.options.dependencies));r.push(function(t){var r=[],i;if(arguments.length>1)for(i=1;i<arguments.length;i++)r.push(arguments[i]);t.form=null;t.isProcessing=null;t.handleAction=function(t,i){return n.options.onAction.apply(null,[t,i].concat(r))}});i(r,{$scope:u,$element:templateElement});t(templateElement)(u)}var u=null;n.$watch(function(){return n.options},function(n,t){n!==t&&(f(),n!==null)&&e()})}}}]);angular.module("sharedElements").directive("cPager",["$compile","constants","filterService","helpService","translationHelperService",function(n,t,i,r,u){return{restrict:"E",scope:{lister:"=",listerStatus:"=",onRefresh:"&?",onAction:"&?",tName:"@",updateOnRowCountChange:"=?",removePageSizeOptions:"=?"},link:function(f,e){function a(){h!==null&&h.$destroy();h=f.$new();e.html("");e.css("display","none")}function c(){if(a(),f.lister===null)return!1;if(Object.prototype.toString.call(f.lister)!=="[object Object]")throw new Error('"lister" is not Object');if(typeof f.lister.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof f.lister.totalRowCount!="number")throw new Error('"lister.totalRowCount" is not Number');if(typeof f.lister.currentPage=="undefined")throw new Error('"lister.currentPage" is undefined');if(typeof f.lister.currentPage!="number")throw new Error('"lister.currentPage" is not Number');if(typeof f.lister.pageSize=="undefined")throw new Error('"lister.pageSize" is undefined');if(typeof f.lister.pageSize!="number")throw new Error('"lister.pageSize" is not Number');if(typeof f.listerStatus!="number")throw new Error('"lister.listerStatus" is not Number');return f.lister.totalRowCount>0&&f.listerStatus===t.listerStatus.DONE}function l(){var a,p,y,d,v,g,nt,tt,t,k;if(c()!==!1){e.css("display","block");a=$('<div class="btn-group pages" data-unit-t-main><\/div>');r.setTestAttribute(a,"instance",f.tName?f.tName:"main");r.setTestAttribute(a,"pager");p=$('<button type="button" class="btn btn-default btn-icon" data-ng-click="previousPage()" data-ng-disabled="disablePreviousPage()" data-unit-t-previous><i class="material_keyboard_arrow_left"><\/i><\/button>');r.setTestAttribute(p,"button","Previous");a.append(p);y=$('<div class="btn-group dropdown large-only" data-c-dropdown>');a.append(y);d=$('<button type="button" class="btn btn-default" data-c-dropdown-action><span data-ng-bind-html="label()" data-unit-t-label><\/span> <span class="caret"><\/span><\/button>');y.append(d);v=$('<ul class="dropdown-menu" data-c-dropdown-menu>');y.append(v);f.removePageSizeOptions===!1&&(g=$('<li class="item-header">Items per Page<\/li>'),v.append(g),angular.forEach(i.getPageSizeOptions(),function(n){var t=n===f.lister.pageSize?" active":"",i='<li class="item'+t+'" data-ng-click="setPageSize('+n+')" data-unit-t-page-size><a>'+n+"<\/a><\/li>";v.append(i)}),nt=$('<li class="item-divider" data-unit-t-divider><\/li>'),v.append(nt));tt=$('<li class="item-header" data-unit-t-pages-header>View Page<\/li>');v.append(tt);var u=[],w=1,b=o.length,l=f.lister.currentPage;if(l-w<=s+2)for(t=w;t<l;t++)u.push({page:t,enabled:!0});else for(u.push({page:w,enabled:!0}),u.push({enabled:!1}),t=l-s;t<l;t++)u.push({page:t,enabled:!0});if(b-l<=s+2)for(t=l;t<=b;t++)u.push({page:t,enabled:!0});else{for(t=l;t<=l+s;t++)u.push({page:t,enabled:!0});u.push({enabled:!1});u.push({page:b,enabled:!0})}angular.forEach(u,function(n){var t=null,i;n.enabled===!0?(i=n.page===l?" active":"",t=$('<li class="item'+i+'" data-ng-click="setCurrentPage('+n.page+')" data-unit-t-page><a>'+n.page+"<\/a><\/li>")):t=$('<li class="item disabled" data-unit-t-page><span>...<\/span><\/li>');v.append(t)});k=$('<button type="button" class="btn btn-default btn-icon" data-ng-click="nextPage()" data-ng-disabled="disableNextPage()" data-unit-t-next><i class="material_keyboard_arrow_right"><\/i><\/button>');r.setTestAttribute(k,"button","Next");a.append(k);e.append(a);n(e.contents())(h)}}if(typeof f.lister=="undefined")throw new Error('"lister" is undefined');if(typeof f.listerStatus=="undefined")throw new Error('"listerStatus" is undefined');typeof f.updateOnRowCountChange=="undefined"&&(f.updateOnRowCountChange=!1);typeof f.removePageSizeOptions=="undefined"&&(f.removePageSizeOptions=!1);var s=12,h=null,o=[];f.label=function(){var n=(f.lister.currentPage-1)*f.lister.pageSize+1,t=f.lister.currentPage*f.lister.pageSize>f.lister.totalRowCount?f.lister.totalRowCount:f.lister.currentPage*f.lister.pageSize;return u.wrapTextInVar(n+"-"+t,u.variableName.VISIBLE_RECORDS)+" of "+u.wrapTextInVar(f.lister.totalRowCount,u.variableName.TOTAL_RECORDS)};f.setPageSize=function(n){if(f.lister.pageSize!==n)if(f.lister.pageSize=n,f.lister.currentPage=1,typeof f.onAction!="undefined"&&f.onAction!==null)f.onAction({action:"refresh-lister",data:{listerState:{pageSize:f.lister.pageSize,currentPage:f.lister.currentPage}}});else f.onRefresh()};f.setCurrentPage=function(n){if(f.lister.currentPage!==n)if(f.lister.currentPage=n,typeof f.onAction!="undefined"&&f.onAction!==null)f.onAction({action:"refresh-lister",data:{listerState:{currentPage:f.lister.currentPage}}});else f.onRefresh()};f.nextPage=function(){if(f.lister.currentPage!==_.last(o))if(f.lister.currentPage=f.lister.currentPage+1,typeof f.onAction!="undefined"&&f.onAction!==null)f.onAction({action:"refresh-lister",data:{listerState:{currentPage:f.lister.currentPage}}});else f.onRefresh()};f.disableNextPage=function(){return f.lister.currentPage===_.last(o)};f.previousPage=function(){if(f.lister.currentPage!==1)if(f.lister.currentPage=f.lister.currentPage-1,typeof f.onAction!="undefined"&&f.onAction!==null)f.onAction({action:"refresh-lister",data:{listerState:{currentPage:f.lister.currentPage}}});else f.onRefresh()};f.disablePreviousPage=function(){return f.lister.currentPage===1};f.$watch(function(){return f.lister!==null&&f.lister.totalRowCount!==null?f.lister.totalRowCount:null},function(n,t){var r,u,i;if(n!==t&&c()&&f.updateOnRowCountChange!==!1){for(r=[],u=Math.ceil(f.lister.totalRowCount/f.lister.pageSize),i=1;i<=u;i++)r.push(i);o=r;l()}},!1);f.$watch(function(){return f.listerStatus},function(n){var r,u,i;if(c()&&n===t.listerStatus.DONE){for(r=[],u=Math.ceil(f.lister.totalRowCount/f.lister.pageSize),i=1;i<=u;i++)r.push(i);o=r;l()}},!1);l()}}}]);angular.module("sharedElements").directive("cPagerMobile",["constants","$compile","$timeout",function(n,t){return{restrict:"E",scope:{lister:"=",listerStatus:"=",onRefresh:"&?",onAction:"&?"},link:function(i,r,u){function h(){s()}function c(){f!==null&&typeof f!="undefined"&&f.$destroy();f=i.$new();u.$removeClass("btn-group");u.$removeClass("pages");r.html("");r.css("display","none")}function l(){return(c(),i.lister===null)?!0:i.lister.layout===n.listerLayout.TABLE||i.lister.layout===n.listerLayout.TILES_S||i.lister.layout===n.listerLayout.TILES_L||i.lister.layout===n.listerLayout.BAR_CHART||i.lister.layout===n.listerLayout.TIMELINE}function s(){l()&&(r.css("display","block"),u.$addClass("btn-group pages"),$(r).html('<button type="button" class="btn btn-default btn-icon" data-ng-click="previousPage()" data-ng-disabled="disablePreviousPage()" data-unit-t-previous><i class="material_keyboard_arrow_left"><\/i><\/button><button type="button" class="btn btn-default btn-icon" data-ng-click="nextPage()" data-ng-disabled="disableNextPage()" data-unit-t-next><i class="material_keyboard_arrow_right"><\/i><\/button>'),t($(r).find("button"))(f))}function o(){if(i.lister===null)return!1;if(Object.prototype.toString.call(i.lister)!=="[object Object]")throw new Error('"lister" is not Object');if(typeof i.lister.totalRowCount=="undefined")throw new Error('"lister.totalRowCount" is undefined');if(typeof i.lister.totalRowCount!="number")throw new Error('"lister.totalRowCount" is not Number');if(typeof i.lister.currentPage=="undefined")throw new Error('"lister.currentPage" is undefined');if(typeof i.lister.currentPage!="number")throw new Error('"lister.currentPage" is not Number');if(typeof i.lister.pageSize=="undefined")throw new Error('"lister.pageSize" is undefined');if(typeof i.lister.pageSize!="number")throw new Error('"lister.pageSize" is not Number');if(typeof i.listerStatus!="number")throw new Error('"lister.listerStatus" is not Number');return i.lister.totalRowCount>0&&i.listerStatus===n.listerStatus.DONE}var e=[],f;i.$watch(function(){return i.listerStatus},function(t){var u,r;s();switch(t){case n.listerStatus.RENDERING:for(e=[],u=Math.ceil(i.lister.totalRowCount/i.lister.pageSize),r=1;r<=u;r++)e.push(r)}},!1);i.$watch(function(){return i.lister},function(n,t){n!==t&&s()},!1);i.nextPage=function(){if(o()!==!1&&i.lister.currentPage!==_.last(e))if(i.lister.currentPage=i.lister.currentPage+1,typeof i.onAction!="undefined"&&i.onAction!==null)i.onAction({action:"refresh-lister",data:{listerState:{currentPage:i.lister.currentPage}}});else i.onRefresh()};i.disableNextPage=function(){return o()===!1?!0:i.lister.currentPage===_.last(e)};i.previousPage=function(){if(o()!==!1&&i.lister.currentPage!==1)if(i.lister.currentPage=i.lister.currentPage-1,typeof i.onAction!="undefined"&&i.onAction!==null)i.onAction({action:"refresh-lister",data:{listerState:{currentPage:i.lister.currentPage}}});else i.onRefresh()};i.disablePreviousPage=function(){return o()===!1?!0:i.lister.currentPage===1};h()}}}]);angular.module("sharedElements").directive("cPanel",["compileService",function(n){return{restrict:"A",scope:!1,compile:function(t){var o=t.children("attr-tools").clone(),i=t.children("attr-header").clone(),tt=t.children("attr-body").clone(),s=t.children("attr-footer").clone(),it,h,a,v,y,p,u,w,b,d,g,nt;if(t.html(""),t.addClass("panel panel-default"),it=$(document.createElement("div")),it.addClass("panel-overlay"),t.append(it),o.length>0&&o.children().length>0&&(h=n.copyHtmlElement(o,"div"),h.addClass("panel-tools large-only"),h.append(o.children()),t.append(h)),i.length>0&&i.children().length>0){var ot=i.children("attr-title"),rt=i.children("attr-description"),c=i.children("attr-actions-left"),l=i.children("attr-actions-right"),ut=i.children("attr-mobile-actions"),f=null,r=null,e=null;ot.length>0&&(f=$(document.createElement("h6")),f.addClass("panel-title"),f.append("<span>"+ot.html()+"<\/span>"),rt.length>0&&(a=n.copyHtmlElement(rt,"small"),a.addClass("word-wrap"),a.append(rt.html()),f.append(a)));(c.length>0||l.length>0)&&(r=$(document.createElement("div")),r.addClass("panel-actions n-actions large-only"),c.length>0&&(r.addClass("wrap-actions-left"),v=n.copyHtmlElement(c,"div"),v.addClass("n-actions-left"),c.children().each(function(){v.append(this)}),r.append(v)),l.length>0&&(y=n.copyHtmlElement(l,"div"),y.addClass("n-actions-right"),l.children().each(function(){y.append(this)}),r.append(y)));ut.length>0&&(e=n.copyHtmlElement(ut,"div"),e.addClass("panel-actions n-actions small-only"),p=$(document.createElement("div")),p.addClass("n-actions-right"),ut.children().each(function(){p.append(this)}),e.append(p));u=n.copyHtmlElement(i,"div");u.addClass("panel-heading");r!==null||e!==null?(w=$(document.createElement("div")),w.addClass("panel-heading-content"),w.append(f),u.append(w),r!==null&&u.append(r),e!==null&&u.append(e)):u.append(f);t.append(u)}if(tt.length>0&&(b=n.copyHtmlElement(tt,"div"),b.addClass("panel-body"),b.append(tt.children()),t.append(b)),s.length>0){var ft=s.children("attr-actions"),et=s.children("attr-mobile-actions"),k=n.copyHtmlElement(s,"div");k.addClass("panel-footer");ft.length>0&&(d=n.copyHtmlElement(ft,"div"),d.addClass("actions large-only"),g=$(document.createElement("div")),g.addClass("actions-right"),g.append(ft.html()),d.append(g),k.append(d));et.length>0&&(nt=n.copyHtmlElement(et,"div"),nt.addClass("n-mobile-actions"),nt.append(et.html()),k.append(nt));t.append(k)}}}}]);angular.module("sharedElements").directive("cPartnerMap",function(){return{restrict:"A",scope:{markers:"=",mapState:"=",onAction:"&",loadPartners:"&",showSearchBar:"@",searchLocation:"&?"},controller:["$scope","$element","appDetailsValue","$q","$timeout","$compile","pageSharedDataFactory","helpService","translationHelperService",function(n,t,i,r,u,f,e,o,s){function k(){var t=0,i=h.getBounds(),n=i.getSouthWest().lng;if(n<-180)while(n<-180)t=t+1,n=n+360;else if(n>180)while(n>180)t=t-1,n=n-360;return t}function g(){var n=$(t[0]).width();return Math.round(n/b)}function nt(){var n=$(t[0]).height();return Math.round(n/b)}function tt(t){var u=[],i;return c===null?u=t:$.each(t,function(n,t){var i=_.find(c,function(n){return n.id===t});i===undefined&&u.push(t)}),i=r.defer(),u.length>0?n.loadPartners({ids:t}).then(function(n){c===null?c=n:$.each(n,function(n,t){var i=_.find(c,function(n){return n.id===t.id});i===undefined&&c.push(t)});i.resolve(_.filter(c,function(n){return t.indexOf(n.id)!==-1}))}):i.resolve(_.filter(c,function(n){return t.indexOf(n.id)!==-1})),i.promise}function it(n,t){var w=$(document.createElement("div")),a=$(document.createElement("ul")),y,i,h,u,p,f,c,r,l,e;for(a.addClass("leaflet-orgs"),n=_.sortBy(n,"name"),y=0;y<n.length;y++)i=n[y],h=$(document.createElement("li")),h.addClass("leaflet-org"),n.length>1&&h.addClass("leaflet-org-collapsed"),u=$(document.createElement("div")),u.addClass("leaflet-org-header"),n.length>1&&(p=$(document.createElement("div")),p.addClass("leaflet-org-toggle"),p.append('<a href="javascript:;" data-toggle-org><i icon="show"><\/i><\/a>'),u.addClass("pointer"),u.bind("click",function(){var n=$(this).find("[icon]"),r=n.attr("icon"),i=n.closest(".leaflet-org"),u=i.find(".leaflet-org-body");u.slideToggle(100,function(){t._adjustPan()});i.toggleClass("leaflet-org-collapsed");n.attr("icon",r==="hide"?"show":"hide")}),u.append(p)),f=$(document.createElement("div")),f.addClass("leaflet-org-title"),o.setTestAttribute(f,"map-title",i.name),c=$(document.createElement("h6")),s.setTranslateAttribute(c,!1),v===!0?c.text(i.name):c.append('<a href="Partners/'+i.id+'">'+o.htmlEncode(i.name)+"<\/a>"),f.append(c),r=$(document.createElement("div")),i.status!==null&&f.append('<span class="status status-pending">'+i.status+"<\/span>"),i.type!==null&&(r.text(i.type),f.append('<span class="status status-default">'+r.html()+"<\/span>")),u.append(f),h.append(u),l=$(document.createElement("div")),l.addClass("leaflet-org-body"),n.length>1&&l.css("display","none"),e=$(document.createElement("div")),e.addClass("fields"),r.text(i.address),e.append('<div class="field format-wrap"><div class="field-label">Address<\/div><div class="field-value">'+r.html()+"<\/div><\/div>"),r.text(i.phone),e.append('<div class="field format-wrap"><div class="field-label">Phone<\/div><div class="field-value">'+r.html()+"<\/div><\/div>"),i.primaryContactName!==null&&(r.text(i.primaryContactName),e.append('<div class="field format-wrap"><div class="field-label">Primary Contact<\/div><div class="field-value">'+r.html()+"<\/div><\/div>")),i.primaryPartnerManagerName!==null&&(r.text(i.primaryPartnerManagerName),e.append('<div class="field format-wrap"><div class="field-label">Primary Partner Manager<\/div><div class="field-value">'+r.html()+"<\/div><\/div>")),l.append(e),h.append(l),a.append(h);return w.append(a),a[0]}function w(n,t,i,r,u){var f=new L.marker([n,t],{icon:i,partnerIds:r,status:u});f.on("click",function(){var t=f.options.partnerIds,n=(new L.popup).setContent('<div class="loading-large"><\/div>');f.unbindPopup();o.isMobileDevice()===!0?f.bindPopup(n,{minWidth:250,maxWidth:250,offset:new L.Point(0,-16),autoPanPadding:new L.Point(20,20)}):f.bindPopup(n,{minWidth:350,maxWidth:350,offset:new L.Point(0,-16),autoPanPadding:new L.Point(50,50)});f.openPopup();tt(t).then(function(n){var t=f.getPopup(),i;t._isOpen!==!1&&(i=it(n,t),t.setContent(i),t.update())})});p.addLayer(f)}function rt(){n.mapState.doRedraw&&(p.clearLayers(),y=[]);var t=-85,i=85,r=-110,u=110,e=k(),f=h.getBounds();$.each(n.markers,function(n,o){var l=4/h.getZoom(),a,v,k,c,p,b,s;if(l===Infinity&&(l=.001),t=o.latMin-l,i=o.latMax+l,r=o.lonMin-l,u=o.lonMax+l,a=[],$.each(o.partnerIds,function(n,t){y[t]==undefined&&(y[t]=!0,a.push(t))}),v=_.size(a),v!==0){if(k='<div class="marker-icon-box"><div class="marker-icon-content">'+v+"<\/div><\/div>",c=null,v===1)switch(o.status){case 1:c="marker-active-partner";break;case 2:c="marker-inactive-partner";break;case 3:c="marker-prospective-partner"}else switch(o.status){case-1:c="marker-group-partner";break;case 1:c="marker-group-partner marker-active-partner";break;case 2:c="marker-group-partner marker-inactive-partner";break;case 3:c="marker-group-partner marker-prospective-partner"}for(p=L.divIcon({className:c,iconSize:[30,30],iconAnchor:[15,30],html:k}),b=o.longitude+e*-360,w(o.latitude,b,p,a,o.status),s=b+360;s<f.getNorthEast().lng;)w(o.latitude,s,p,a,o.status),s=s+360;for(s=b-360;s>f.getSouthWest().lng;)w(o.latitude,s,p,a,o.status),s=s-360}});p.addTo(h);n.mapState.autoCenterAndZoom&&h.fitBounds(new L.LatLngBounds(new L.LatLng(t,r),new L.LatLng(i,u)))}function d(t,i){var e=k(),f=h.getBounds(),r=f.getNorthEast().lng,u=f.getSouthWest().lng,o=f.getNorthEast().lat,s=f.getSouthWest().lat;r-u>=360?(s=-90,u=-180,o=90,r=180):(r=r+e*360,r>180&&(r=r-360),u=u+e*360);n.mapState.minLatitude=s;n.mapState.minLongitude=u;n.mapState.maxLatitude=o;n.mapState.maxLongitude=r;n.mapState.latGridCount=nt();n.mapState.lonGridCount=g();n.mapState.autoCenterAndZoom=t;n.mapState.doRedraw=i;n.mapState.zoomLevel=h.getZoom();n.onAction({action:"refresh-markers"})}function ut(){var r=new L.LatLng(-90,-180),u=new L.LatLng(90,180),n;h=L.map(t[0],{zoomAnimation:!1,keyboard:!1,closePopupOnClick:!1});v===!0&&(n=L.control({position:"topright"}),n.onAdd=function(){return l=L.DomUtil.create("div","map-find"),this.update=function(){l.innerHTML='<form name="search-form" class="form-inline" data-ng-submit="search()"><div class="form-group"> <div class="input-group input-group-search">  <span class="input-group-addon input-group-search-left"><i class="material_search"><\/i><\/span>  <input data-ng-model="location" class="form-control input-group-search-right" placeholder="Search..." type="text"> <\/div> <\/div><form>'},$(l).mouseover(function(){h.dragging.disable();h.doubleClickZoom.disable()}).mouseout(function(){h.dragging.enable();h.doubleClickZoom.enable()}),this.update(),l},n.addTo(h));L.tileLayer(i.mapTileUrl).addTo(h);h.fitBounds(new L.LatLngBounds(r,u));h.on("moveend",function(){d(!1,!a)});h.on("dragstart",function(){h.closePopup();a=!1;$("#map-find-text").blur()});h.on("zoomstart",function(){h.closePopup();a=!1});h.on("popupopen",function(){a=!0});d(!0,!1)}var c=null,h=null,b=80,y=[],p=new L.layerGroup,a=!1,l=null,v=typeof n.showSearchBar!="undefined"&&n.showSearchBar==="true";n.location=null;n.$watch(function(){return n.markers},function(n,t){n!==t&&rt()},!1);n.$on("$destroy",function(){h.off("moveend")});n.search=function(){if(v===!1)throw"Partner Map: search bar is not allowed";if(typeof n.searchLocation=="undefined")throw"Partner Map: search location is undefined";var t=n.location.replace("."," ").replace(","," ").replace(";"," ");e.showProcessingMessage("Searching...");n.searchLocation({location:t}).then(function(n){if(n===null){e.showErrorMessage("No results");return}var i=new L.LatLng(n.latMin,n.lonMin),r=new L.LatLng(n.latMax,n.lonMax),t=new L.LatLngBounds(i,r),u=t.getCenter(),f=Math.max(1,h.getBoundsZoom(t)-1);h.setView(u,f);e.hideMessage()})};u(function(){ut();v===!0&&f(l)(n)})}]}});angular.module("sharedElements").directive("cPlaceholder",["$compile",function(n){return{restrict:"A",scope:{field:"=",inputElement:"="},link:function(t,i,r){function f(){if(t.field===null)return!1;if(typeof t.field.placeholders=="undefined")throw new Error('"field.placeholders" are undefined');if(t.field.placeholders===null)return!1;if(Object.prototype.toString.call(t.field.placeholders)!=="[object Array]")throw new Error('"placeholders" is not an Array');return!0}function u(){var e,h,o,u,s,c;if(f()!==!1){for(r.$addClass("placeholder"),e="",h=null,o=0;o<t.field.placeholders.length;o++)u=t.field.placeholders[o],u.groupName!==null&&(h!==u.groupName&&(o!==0&&(e+='<li class="item-divider"><\/li>'),e+='<li class="item-header">'+u.groupName+"<\/li>"),h=u.groupName),s=$("<a>"),s.attr("data-ng-click","addPlaceholder('"+u.value+"')"),s.text(u.text),c=$("<div>"),c.append(s),e+='<li class="item">'+c.html()+"<\/li>";$(i).append('<div class="dropdown help-block" data-c-dropdown><a class="btn btn-link" href="javascript:;" data-c-dropdown-action><span>Add Placeholder<\/span> <span class="caret">&nbsp;<\/span><\/a><ul class="dropdown-menu" data-c-dropdown-menu>'+e+"<\/ul><\/div>");n(i.contents())(t)}}function e(){u()}if(typeof t.field=="undefined")throw new Error('"field" is undefined');t.$watch(function(){return t.field},function(n,t){n!==t&&u()});t.addPlaceholder=function(n){var i=t.inputElement[0],s=i.scrollTop,r=0,f=i.selectionStart||i.selectionStart===0?"ff":document.selection?"ie":!1,e,o,u;f==="ie"?(i.focus(),u=document.selection.createRange(),u.moveStart("character",-i.value.length),r=u.text.length):f==="ff"&&(r=i.selectionStart);e=i.value.substring(0,r);o=i.value.substring(r,i.value.length);i.value=e+n+o;r=r+n.length;f==="ie"?(i.focus(),u=document.selection.createRange(),u.moveStart("character",-i.value.length),u.moveStart("character",r),u.moveEnd("character",0),u.select()):f==="ff"&&(i.selectionStart=r,i.selectionEnd=r,i.focus());i.scrollTop=s;angular.element(i).trigger("input");angular.element(i).trigger("addplaceholder")};e()}}}]);angular.module("sharedElements").directive("cRater",["helpService",function(){return{restrict:"E",scope:{rating:"=",isEnabled:"@",onChange:"&?"},link:function(n,t,i){function o(){f!==null&&f.$destroy();f=n.$new();i.$removeClass("review-content-rating");t.html("");t.css("display","none")}function s(){return(o(),n.rating===null)?!1:!0}function e(){var e,f;if(typeof n.rating=="undefined")throw new Error('"rating" is undefined');if(typeof n.isEnabled=="undefined")throw new Error('"isEnabled" is undefined');if(s())for(i.$addClass("review-content-rating"),t.css("display","block"),e=1;e<=5;e++)f=$(document.createElement("div")),f.addClass("review-star"),e<=r&&f.addClass("review-star-selected"),u===!1&&f.css("cursor","auto"),f.hover(function(n){if(u!==!1){var t=$(n.target),i=t.index()+1;t.parent().find(".review-star").each(function(){var n=$(this),t=n.index()+1;t<=i?n.addClass("review-star-selected"):n.removeClass("review-star-selected")})}},function(n){if(u!==!1){var t=$(n.target);t.parent().find(".review-star").each(function(){var n=$(this),t=n.index()+1;t<=r?n.addClass("review-star-selected"):n.removeClass("review-star-selected")})}}),f.click(function(t){if(u!==!1){var i=$(t.target),f=i.index()+1;r=f;n.onChange({rating:r})}}),t.append(f)}var f=null,r=n.rating,u=n.isEnabled==="true";n.$watch(function(){return n.rating},function(n,t){n!==t&&(r=n,e())},!0);e()}}}]);angular.module("sharedElements").directive("cRating",["$compile","testService",function(n){return{restrict:"A",scope:{rating:"=",onAction:"&?"},link:function(t,i){function u(){r!==null&&r.$destroy();r=t.$new();i.html("");i.css("display","none")}function f(){if(u(),t.rating===null)return!1;if(Object.prototype.toString.call(t.rating)!=="[object Object]")throw new Error('"rating" is not Object');return!0}function e(){var u,s,e;f()&&(i.css("display","block"),u=$('<div class="library-item-rating"><\/div>'),s=$('<span class="library-item-rating-score"><\/span>'),s.text(t.rating.score),u.append(s),u.append('<span class="library-item-rating-star '+o()+'"><\/span>'),u.append('<span class="library-item-rating-count">('+t.rating.countText+")<\/span>"),t.rating.allowRating===!0?(e=$(document.createElement("a")),e.attr("href","javascript:;"),e.attr("data-ng-click","handleAction(action)"),e.css("text-decoration","none"),e.append(u),$(i).append(n(e)(r))):$(i).append(u))}function o(){var n=parseFloat(t.rating.score);return n<1?"rating-zero":n>=1&&n<1.25?"rating-one":n>=1.25&&n<1.75?"rating-onehalf":n>=1.75&&n<2.25?"rating-two":n>=2.25&&n<2.75?"rating-twohalf":n>=2.75&&n<3.25?"rating-three":n>=3.25&&n<3.75?"rating-threehalf":n>=3.75&&n<4.25?"rating-four":n>=4.25&&n<4.75?"rating-fourhalf":n>=4.75?"rating-five":"rating-zero"}if(typeof t.rating=="undefined")throw new Error('"rating" is undefined');var r=null;e();t.handleAction=function(n){t.onAction({action:n})}}}}]);angular.module("sharedElements").directive("cRefreshButton",["$compile",function(n){return{restrict:"E",scope:{onAction:"&"},link:function(t,i,r){function u(){r.$addClass("btn-group");var u=$('<button class="btn btn-default" data-ng-click="refresh()" data-unit-t-refresh-button><i icon="refresh"><\/i><\/button>');i.append(u);n(i.contents())(t)}t.refresh=function(){t.onAction({action:"refresh-lister",data:{listerState:{}}})};u()}}}]);angular.module("sharedElements").directive("cRelatedEntities",["$compile",function(n){return{restrict:"E",scope:{entities:"=",showTooltip:"=?"},link:function(t,i){function f(){r!==null&&r.$destroy();r=t.$new();i.html("")}function e(){return(f(),t.entities===null)?!1:(o(t.entities),!0)}function o(n){var t,i;if(typeof n=="undefined")throw new Error('"entities" is undefined');if(Object.prototype.toString.call(n)!=="[object Array]")throw new Error('"entities" is not Array');if(n.length===0)throw new Error('"entities" is empty Array');for(t=0;t<n.length;t++){if(i=n[t],typeof i.prefix=="undefined")throw new Error('"prefix" of '+t+". relatedEntity is undefined");if(typeof i.link=="undefined")throw new Error('"link" of '+t+". relatedEntity is undefined");if(typeof i.linkedText=="undefined")throw new Error('"linkedText" of '+t+". relatedEntity is undefined");if(0)throw new Error('"linkedText" of '+t+". relatedEntity is null");}}function u(){var h,c,u,o,s,f;if(e()){for(h=$(document.createElement("ul")),h.attr("data-unit-t-related-entities"),c=0;c<t.entities.length;c++)u=t.entities[c],o=$(document.createElement("li")),u.prefix!==null&&(o.text(u.prefix),o.append(" ")),u.link===null?(s=$(document.createElement("span")),s.addClass("no-access"),t.showTooltip===!0&&s.attr("data-c-tooltip","You don't have permissions"),s.html(u.linkedText),s.attr("data-unit-t-related-entity-text",""),o.append(s)):(f=$(document.createElement("a")),f.attr("href",u.link),f.attr("target","_blank"),f.attr("rel","noreferrer"),f.html(u.linkedText),f.attr("data-unit-t-related-entity-link",""),o.append(f)),h.append(o);i.append(h);n(i.contents())(r)}}var r=null;if((t.showTooltip===null||typeof t.showTooltip=="undefined")&&(t.showTooltip=!0),typeof t.entities=="undefined")throw new Error('"entities" is undefined');t.$watch(function(){return t.entities},function(n,t){n!==t&&u()},!0);u()}}}]);angular.module("sharedElements").directive("cRuleSelector",function(){return{restrict:"A",scope:{field:"=",form:"=",onAction:"&"},templateUrl:"js/shared/common/directives/ruleSelector/ruleSelector.html",controller:["$scope","constants","helpService","appDetailsValue","validationService","$q","$timeout",function(n,t,i,r,u,f,e){function s(){return n.field.isRequired===!0&&n.field.selectedRules.length===0}function h(n){return n.isEnabled===!0}function y(t){var i,u,r;switch(t.type){case n.fieldType.PICKLIST:case n.fieldType.PICKLIST_WITH_STRING_ID:case n.fieldType.MULTISELECT:if((i=_.map(t.field.value,function(n){return n.value}),i.length===0)||(u=_.filter(t.field.listItems,function(n){return n.isEnabled===!1}).map(function(n){return n.value}),u.length===0))return!0;for(r=0;r<i.length;r++)if(_.contains(u,i[r])===!0)return!1;return!0;default:return!0}}function c(t){var i={name:t.name,operatorName:t.operator.name,operator:parseInt(t.operator.value),value:null,otherValue:null,isValid:!1,rules:null,aggregateColumnDefinition:null};switch(t.type){case n.fieldType.INT:case n.fieldType.DOUBLE:case n.fieldType.PERCENT:case n.fieldType.CURRENCY:case n.fieldType.DATE:case n.fieldType.DATETIME:if(t.field.value!==null)switch(parseInt(t.operator.value)){case n.compareOperator.BETWEEN:case n.compareOperator.NOT_BETWEEN:i.value=t.field.value.value;i.otherValue=t.field.value.otherValue;break;default:i.value=t.field.value.value}break;case n.fieldType.PICKLIST:case n.fieldType.PICKLIST_WITH_STRING_ID:case n.fieldType.MULTISELECT:i.value=t.field.value;break;case n.fieldType.CHECKBOX:case n.fieldType.CHECKBOX_GROUP:i.value=null;break;default:throw Error("Unknown rule type "+t.type);}return i}function p(){var t=[],i;return s()===!0?t:(i=_.some(n.field.selectedRules,function(n){return h(n)===!1||y(n)===!1}),i===!0)?t:($.each(n.field.selectedRules,function(i,r){var e=[r.name,r.operatorName],f=!0,u;angular.forEach(n.form,function(n){n!=null&&typeof n=="object"&&n.hasOwnProperty("$validators")&&$.each(e,function(t,i){n.$name.indexOf(i)>-1&&(f=f&&n.$valid)})});f===!0&&(u=c(r),r.computedRule!=null&&(u.rules=[],u.aggregateColumnDefinition=r.computedRule.fieldAndAggregateField.value,$.each(r.computedRule.ruleSelectorField.selectedRules,function(n,t){u.rules.push(c(t))})),t.push(u))}),t)}function l(){e(function(){n.form.validate(!1,!0).then(function(){n.field.value=p()})})}function a(){return n.field===null?!1:!0}function o(t){$.each(t,function(t,i){if(i.operator!==null&&i.value!==null&&(i.operator.value=i.value.operator),i.field!==null&&i.value!==null)switch(i.type){case n.fieldType.INT:case n.fieldType.DOUBLE:case n.fieldType.PERCENT:case n.fieldType.CURRENCY:case n.fieldType.DATE:case n.fieldType.DATETIME:i.field.value={value:i.value.value,otherValue:i.value.otherValue};break;case n.fieldType.PICKLIST:case n.fieldType.PICKLIST_WITH_STRING_ID:case n.fieldType.MULTISELECT:var r=[];$.each(i.value.value,function(n,t){var i={value:t,isNew:!1};r.push(i)});i.field.value=r;break;default:throw Error("Unknown rule type "+i.type);}i.computedRule!=null&&o(i.computedRule.ruleSelectorField.selectedRules)})}function w(){a()!==!1&&(o(n.field.selectedRules),$.each(n.field.availableRules,function(n,t){i.generateFilterableInterface(t,function(){return this.value},function(){return this.text},function(){return!1},function(){return this.translate},function(){return this.groupName})}),v(),l())}function v(){var t=$.map(n.field.selectedRules,function(n){return n.name}),i=_.filter(n.field.availableRules,function(n){return t.includes(n.value)===!1});n.data.availableRules=i}function b(t){i.openDialog({template:"js/shared/common/directives/ruleSelector/computedRuleView.html",controller:["$scope","$q",function(i,r){i.form=null;i.pendingAction=!1;i.fieldAndAggregateField=t.computedRule.fieldAndAggregateField;i.ruleSelectorField=t.computedRule.ruleSelectorField;i.isLoading=!1;i.fields=null;i.handleAction=function(n,t){if(typeof n=="undefined")throw"action is undefined";switch(n){case"rule-selector-add-rule":var u=r.defer(),f=_.find(i.ruleSelectorField.availableRuleDescriptions,function(n){return n.name===t});return u.resolve(f),u.promise;default:throw"Unknown action: "+n;}};i.save=function(r){r.submit(function(){var r=[t,i.fieldAndAggregateField,i.ruleSelectorField,];n.onAction({action:"rule-selector-add-computed-rule",data:{computedFieldName:t.name,fields:r}}).then(function(t){o(t.computedRule.ruleSelectorField.selectedRules);n.field.selectedRules.push(t)});i.pendingAction=!1;i.closeThisDialog()})}}]})}n.datePattern=r.localization.shortDatePattern;n.timePattern=r.localization.shortTimePattern;n.fieldType=t.fieldType;n.compareOperator=t.validationCompareOperator;n.data={availableRules:null};n.isVisible=function(){return a()};n.hasComputedRuleAnyFilters=function(n){return n.computedRule===null?!1:n.computedRule.selectedFilters===null?!1:n.computedRule.selectedFilters.length===0?!1:!0};n.getComputedRuleFilters=function(n){return n.computedRule.selectedFilters};n.addRule=function(t){t.isEnabled=!1;n.onAction({action:"rule-selector-add-rule",data:t.value}).then(function(i){t.isEnabled=!0;i.computedRule!==null?b(i):n.field.selectedRules.push(i)})};n.remove=function(t){n.field.selectedRules=_.reject(n.field.selectedRules,function(n){return n===t});v()};n.validateRules=function(){var n=f.defer();return s()===!0?n.resolve(u.getCustomAsyncValidatorResult({success:!1,message:"Please add at least one rule"})):n.resolve(u.getCustomAsyncValidatorResult({success:!0})),n.promise};n.validateRule=function(n){var t=f.defer();return h(n)===!1?t.resolve(u.getCustomAsyncValidatorResult({success:!1,message:"Invalid Rule. Field is unavailable."})):t.resolve(u.getCustomAsyncValidatorResult({success:!0})),t.resolve(u.getCustomAsyncValidatorResult({success:!0})),t.promise};n.$watch(function(){return n.field===null?null:n.field.selectedRules===null?null:n.field.selectedRules},function(n,t){n!==t&&n!==null&&l()},!0);w()}]}});angular.module("sharedElements").directive("cSalesforceStatusButton",["$compile","helpService",function(n,t){return{restrict:"E",scope:{salesforceStatus:"=",onAction:"&"},link:function(i,r,u){function o(){f!==null&&f.$destroy();f=i.$new();r.html("");r.css("display","none")}function s(){return(o(),i.salesforceStatus===null)?!1:i.salesforceStatus.actions===null?!1:(t.validateActions(i.salesforceStatus.actions),!0)}function h(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function c(){var c=$(document.createElement("div")),u,f,l,a,e,o,r,s,n;for(c.addClass("btn-group"),u=$(document.createElement("c-dropdown")),u.addClass("btn-group"),f=$(document.createElement("button")),f.addClass("btn btn-default"),f.attr("data-c-dropdown-action",""),l='<span class="'+t.getIconClass(i.salesforceStatus.syncStatus)+' condition-salesforce-status" data-c-tooltip="'+i.salesforceStatus.status+'"><\/span>',a='<span class="btn-salesforce-logo" data-c-tooltip="Salesforce">&nbsp;<\/span>',f.html(l+a+" "+i.salesforceStatus.text+' <span class="caret"><\/span>'),u.append(f),e=$(document.createElement("ul")),e.addClass("dropdown-menu"),e.attr("data-c-dropdown-menu",""),o=0;o<i.salesforceStatus.actions.length;o++)r=i.salesforceStatus.actions[o],h(r),s=$(document.createElement("li")),s.addClass("item"),n=$(document.createElement("a")),r.link===null?n.attr("data-ng-click",'handleAction("'+r.name+'")'):(n.attr("href",r.link),r.targetBlank===!0&&(n.attr("target","_blank"),n.attr("rel","noreferrer"))),n.attr("data-unit-t-multiple-actions-link",""),n.text(r.label),s.append(n),e.append(s);return u.append(e),c.append(u),c}function e(){if(i.salesforceStatus!==null&&typeof i.salesforceStatus.actions=="undefined")throw new Error('"salesforceStatus.actions" is undefined');s()&&(u.$addClass("btn-group"),r.css("display","block"),r.append(c()),n(r.contents())(f))}var f=null;i.$watch(function(){return i.salesforceStatus},function(n,t){n!==t&&e()},!0);i.handleAction=function(n){i.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cSection",["$compile","constants","helpService",function(n,t,i){return{restrict:"A",replace:!0,scope:{section:"=",onAction:"&"},link:function(r,u){function o(n){$(u).append(n)}function h(){e!==null&&e.$destroy();e=r.$new();u.html("")}function c(){if(h(),r.section===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.title=="undefined")throw new Error('"section.title" is undefined');if(r.section.title!==null){if(typeof r.section.title!="string")throw new Error('"section.title" is not String');if(r.section.title==="")throw new Error('"section.title" is empty');}if(typeof r.section.description=="undefined")throw new Error('"section.description" is undefined');if(r.section.description!==null&&typeof r.section.description!="string")throw new Error('"section.description" is not String');if(typeof r.section.type=="undefined")throw new Error('"section.type" is undefined');if(typeof r.section.type!="number")throw new Error('"section.type" is not Number');if(r.section.type===t.sectionType.FIELDS&&r.section.fields!==null&&Object.prototype.toString.call(r.section.fields)!=="[object Array]")throw new Error('"section.fields" is not Array');if(r.section.type===t.sectionType.CARD_SECTION&&r.section.cards!==null&&Object.prototype.toString.call(r.section.cards)!=="[object Array]")throw new Error('"section.cards" is not Array');if(r.section.type===t.sectionType.SYSTEM_MESSAGES&&r.section.messages!==null&&Object.prototype.toString.call(r.section.messages)!=="[object Array]")throw new Error('"section.messages" is not Array');if(r.section.type===t.sectionType.ARTICLES&&r.section.articles!==null&&Object.prototype.toString.call(r.section.articles)!=="[object Array]")throw new Error('"section.articles" is not Array');if(r.section.type===t.sectionType.WELCOME_MESSAGES&&r.section.welcomeMessages!==null&&Object.prototype.toString.call(r.section.welcomeMessages)!=="[object Array]")throw new Error('"section.welcomeMessages" is not Array');return!0}function l(){if(r.section.title===null)return null;var n=$(document.createElement("attr-title"));return n.append(i.htmlEncode(r.section.title)),n}function a(){if(r.section.title===null||r.section.description===null)return null;var n=$(document.createElement("attr-description"));return n.append(r.section.isHtmlDescription===!0?i.htmlEncode(r.section.description):r.section.description),n}function v(){if(r.section.actions===null)return null;switch(r.section.type){case t.sectionType.FIELDS:case t.sectionType.FILTERED_FIELDS:case t.sectionType.LISTER:case t.sectionType.FILTERED_LISTER:case t.sectionType.CHART:case t.sectionType.FILTERED_CHART:case t.sectionType.LINKS:case t.sectionType.TEMPLATE_PREVIEW:case t.sectionType.IMAGE:case t.sectionType.CARD_SECTION:case t.sectionType.SYSTEM_MESSAGES:case t.sectionType.HTML_CODE:case t.sectionType.COURSES:case t.sectionType.CERTIFICATIONS:case t.sectionType.WELCOME_MESSAGES:case t.sectionType.ARTICLES:case t.sectionType.RICH_TEXT:case t.sectionType.HERO:case t.sectionType.ICONS:case t.sectionType.VIDEO:case t.sectionType.PLAY_BOOKS:case t.sectionType.HISTORY:case t.sectionType.NEWS:case t.sectionType.IMAGE_WIDGET:case t.sectionType.LIBRARY_WIDGET:case t.sectionType.DATA_WIDGET:return null;default:throw new Error("Not implemented section type: "+r.section.type);}}function y(){if(r.section.actions===null||typeof r.section.actions.mobile=="undefined"||r.section.actions.mobile===null)return null;switch(r.section.type){case t.sectionType.LISTER:case t.sectionType.FILTERED_LISTER:return null;default:var n=$(document.createElement("attr-mobile-actions"));return n.append('<c-mobile-more-button data-actions="section.actions.mobile" data-on-action="sectionAction(action)"><\/c-mobile-more-button>'),n}}function p(){var n;switch(r.section.type){case t.sectionType.FIELDS:case t.sectionType.FILTERED_FIELDS:case t.sectionType.LISTER:case t.sectionType.FILTERED_LISTER:case t.sectionType.CHART:case t.sectionType.FILTERED_CHART:case t.sectionType.ARTICLES:case t.sectionType.WELCOME_MESSAGES:case t.sectionType.COURSES:case t.sectionType.CERTIFICATIONS:case t.sectionType.CARD_SECTION:case t.sectionType.HTML_CODE:case t.sectionType.SYSTEM_MESSAGES:case t.sectionType.IMAGE:case t.sectionType.RICH_TEXT:case t.sectionType.HERO:case t.sectionType.ICONS:case t.sectionType.VIDEO:case t.sectionType.PLAY_BOOKS:case t.sectionType.HISTORY:case t.sectionType.NEWS:case t.sectionType.IMAGE_WIDGET:case t.sectionType.LIBRARY_WIDGET:case t.sectionType.DATA_WIDGET:throw new Error("Section has been reworked, use correct directive definition");case t.sectionType.TEMPLATE_PREVIEW:n=w("data-c-template-preview-section");r.section.isLoading=!1;n.attr("data-pages","section.pages");break;default:throw new Error("Not implemented section type: "+r.section.type);}return n}function w(n){var t=$(document.createElement("div"));return t.attr(n,""),t}function b(){f!==null&&f.$destroy();f=r.$new();$(u).html("")}function s(){var i,e,u,s,h,w,k;if(b(),c()){i=null;switch(r.section.type){case t.sectionType.LISTER:case t.sectionType.FILTERED_LISTER:i="data-c-lister-section";break;case t.sectionType.CHART:case t.sectionType.FILTERED_CHART:i="data-c-chart-section";break;case t.sectionType.FIELDS:case t.sectionType.FILTERED_FIELDS:i="data-c-field-section";break;case t.sectionType.ARTICLES:i="data-c-article-section";break;case t.sectionType.WELCOME_MESSAGES:i="data-c-welcome-message-section";break;case t.sectionType.COURSES:i="data-c-course-section";break;case t.sectionType.CERTIFICATIONS:i="data-c-certification-section";break;case t.sectionType.CARD_SECTION:i="data-c-card-section";break;case t.sectionType.LINKS:i="data-c-link-section";break;case t.sectionType.HTML_CODE:i="data-c-html-code-section";break;case t.sectionType.SYSTEM_MESSAGES:i="data-c-system-messages-section";break;case t.sectionType.IMAGE:i="data-c-image-section";break;case t.sectionType.RICH_TEXT:i="data-c-rich-text-section";break;case t.sectionType.HERO:i="data-c-hero-section";break;case t.sectionType.ICONS:i="data-c-icons-section";break;case t.sectionType.VIDEO:i="data-c-video-section";break;case t.sectionType.PLAY_BOOKS:i="data-c-play-books-section";break;case t.sectionType.HISTORY:i="data-c-history-section";break;case t.sectionType.NEWS:i="data-c-news-section";break;case t.sectionType.IMAGE_WIDGET:i="data-c-image-widget-section";break;case t.sectionType.LIBRARY_WIDGET:i="data-c-library-lister-section";break;case t.sectionType.DATA_WIDGET:i="data-c-data-widget-section"}if(i!==null){e=$(document.createElement("div"));e.attr(i,"");e.attr("data-section","section");e.attr("data-on-action","handleSectionAction(action, section, data)");e.addClass("section");o(n(e)(f));return}u=$(document.createElement("div"));u.attr("data-c-panel","");u.html("<attr-header><\/attr-header><attr-body><\/attr-body>");s=l();s!==null&&u.find("attr-header").append(s);h=a();h!==null&&u.find("attr-header").append(h);w=v();w!==null&&u.find("attr-header").append(w);k=y();k!==null&&u.find("attr-header").append(k);u.find("attr-body").append(p());o(n(u)(f))}}var f=null,e=null;if(typeof r.section=="undefined")throw new Error('"section" is undefined');if(typeof r.onAction=="undefined")throw new Error('"onAction" is undefined');s();r.sectionAction=function(n,t){typeof n=="undefined"&&(n=r.section.action.name);typeof t=="undefined"&&(t=r.section.id);r.onAction({action:n,data:{sectionId:t}})};r.tabAction=function(n,i){var f,u;for(typeof n=="undefined"&&(n=r.section.action.name),f=r.section.id,u=0;u<r.tabs.length;u++)r.tabs[u].isActive=r.tabs[u].id===i.tab.id;switch(r.section.type){case t.sectionType.COURSES:case t.sectionType.CERTIFICATIONS:break;default:throw new Error("Not implemented for section type: "+r.section.type);}r.onAction({action:n,data:{sectionId:f,activeTab:i,section:r.section}})};r.handleAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"refresh-lister":r.onAction({action:"refresh-section-lister",data:r.section.data});break;default:return r.onAction({action:n,data:t})}};r.handleSectionAction=function(n,t,i){typeof i=="undefined"&&(i={sectionId:r.section.id});return r.onAction({action:n,section:t,data:i})};r.$watch(function(){return r.section},function(n,t){n!==t&&s()});r.$watch(function(){return r.section===null?null:typeof r.section.setHeight=="undefined"?null:r.section.setHeight},function(n,t){if(n!==t&&n!==null){var i=$(u).find(".panel");n===!0?i.css("height",i.height()):i.css("height","")}})}}}]);angular.module("sharedElements").directive("cArticleSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function s(n){if(n.actions===null||n.actions.primary===null)return null;var i=$(document.createElement("attr-actions-right")),t=$(document.createElement("c-actions-link"));return t.attr("data-actions","section.actions.primary"),t.attr("data-on-action","handleAction(action)"),i.append(t),i}function h(n){if(n.actions===null||n.actions.mobile===null)return null;var t=$(document.createElement("attr-mobile-actions"));return t.append('<c-mobile-more-button data-actions="section.actions.mobile" data-on-action="handleAction(action)"><\/c-mobile-more-button>'),t}function f(){var f,c,l,a,v,y,p,e;o()&&(f=$(document.createElement("div")),f.attr("data-c-panel",""),f.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),c=t.getManageToolActionElement(i.section,"handleAction(action)"),l=t.getSettingsToolActionElement(i.section,"handleAction(action)"),c!==null&&f.find("attr-tools").append(c),l!==null&&f.find("attr-tools").append(l),i.section.showTitle===!0&&(a=t.getTitleElement(i.section),a!==null&&f.find("attr-header").append(a),v=t.getDescriptionElement(i.section),v!==null&&f.find("attr-header").append(v),y=s(i.section),y!==null&&f.find("attr-header").append(y),p=h(i.section),p!==null&&f.find("attr-header").append(p)),e=$(document.createElement("div")),e.attr("data-c-article-lister",""),e.attr("data-articles","section.articles"),e.attr("data-on-action","handleAction(action, data)"),i.section.articles===null&&f.find("attr-body").addClass("panel-no-title"),f.find("attr-body").attr("data-ng-class",'{"panel-body-padding": section.articles !== null}').append(e),$(r).append(n(f)(u)))}var u=null;i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()});f()}}}]);angular.module("sharedElements").directive("cCardSection",["$compile","sectionService","helpService",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){var t=$(document.createElement("div")),n,i;return t.addClass("layout-no-data"),n=$(document.createElement("div")),n.attr("data-unit-t-no-data",""),n.addClass("no-data alert alert-info"),i=$(document.createElement("p")),i.text("No data."),n.append(i),t.append(n),t}function h(){if(o(),r.section===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function e(){var e,c,l,a,o;h()!==!1&&(i.setTestAttribute(u,"section",r.section.title),e=$(document.createElement("div")),e.attr("data-c-panel",""),e.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),c=t.getSettingsToolActionElement(r.section,"handleAction(action)"),c!==null&&e.find("attr-tools").append(c),l=t.getTitleElement(r.section),l!==null&&e.find("attr-header").append(l),a=t.getDescriptionElement(r.section),a!==null&&e.find("attr-header").append(a),e.find("attr-body").attr("data-ng-class",'{"panel-body-padding": section.cards !== null}'),r.section.cards===null?e.find("attr-body").append(s()):(o=$(document.createElement("div")),o.addClass("cards"),o.append('<div data-c-card data-card="card" data-ng-repeat="card in section.cards"><\/div>'),e.find("attr-body").append(o)),$(u).append(n(e)(f)))}var f=null;r.$watch(function(){return r.section},function(n,t){n!==t&&e()},!0);r.handleAction=function(n,t){r.handleSectionAction(n,r.section,t)};r.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";r.onAction({action:n,section:t,data:i})};e()}}}]);angular.module("sharedElements").directive("cCertificationSection",["$compile","constants","sectionService","helpService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(f,e){function l(){o!==null&&o.$destroy();o=f.$new();e.html("")}function a(){if(l(),f.section===null)return!1;if(Object.prototype.toString.call(f.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof f.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function h(n){var t;return n.link===null?t=$(document.createElement("span")):(t=$(document.createElement("a")),t.attr("href",n.link)),t.attr("data-unit-t-certification-title",""),u.setTranslateAttribute(t,!1),t}function v(n){var t=$(document.createElement("h5")),i;return t.addClass("article-title"),i=h(n),i.text(n.title),t.append(i),t}function y(n){if(n.expirationDate===null)return null;var t=$(document.createElement("span"));return t.addClass("article-time"),t.text("valid until "+u.wrapTextInVar(n.expirationDate,u.variableName.DATE)),t}function p(n){if(n.summary===null||n.summary==="")return null;var t=$(document.createElement("div"));return t.addClass("article-excerpt"),t.text(n.summary),t}function w(n){var i=$(document.createElement("span")),r;if(i.attr("data-unit-t-certification-date",""),i.addClass("article-status"),r=f.adminMessage!==null,r)i.html("added on "+u.wrapTextInVar(n.createdDate,u.variableName.DATE));else switch(n.status){case t.certificationStatus.NOT_STARTED:i.html(n.statusText+", added on "+u.wrapTextInVar(n.createdDate,u.variableName.DATE));break;case t.certificationStatus.COMPLETED:i.addClass("text-success");i.text(n.statusText);break;case t.certificationStatus.IN_PROGRESS:case t.certificationStatus.EXPIRED:case t.certificationStatus.VOIDED:i.text(n.statusText);break;default:throw Error("Unknown certification status: "+n.status);}return i}function b(t){var r=h(t),i;return r.addClass("article-preview"),i=$(document.createElement("div")),i.attr("data-c-thumbnail-image",""),typeof f.thumbnails=="undefined"&&(f.thumbnails={}),f.thumbnails[t.id]=t.thumbnail,i.attr("data-image","thumbnails["+t.id+"]"),r.append(i),n(i)(o),r}function k(n){if(typeof n.id=="undefined")throw new Error('"certification.id" is undefined');if(typeof n.id!="number")throw new Error('"certification.id" is not Number');if(typeof n.summary=="undefined")throw new Error('"certification.summary" is undefined');if(typeof n.summary!="string")throw new Error('"certification.summary" is not String');if(typeof n.title=="undefined")throw new Error('"certification.title" is undefined');if(typeof n.title!="string")throw new Error('"certification.title" is not String');if(typeof n.createdDate=="undefined")throw new Error('"certification.createdDate" is undefined');if(n.createdDate!==null&&typeof n.createdDate!="string")throw new Error('"certification.createdDate" is not String');if(typeof n.link=="undefined")throw new Error('"certification.link" is undefined');if(n.link!==null&&typeof n.link!="string")throw new Error('"certification.link" is not String');}function d(n){if(n.actions===null||n.actions.refineResults===null)return null;var i=$(document.createElement("attr-actions-right")),t=$(document.createElement("c-link-button"));return t.attr("data-action","section.actions.refineResults"),t.attr("data-on-action","handleAction(action)"),i.append(t),i}function g(n){if(n.actions===null||n.actions.mobile===null)return null;var t=$(document.createElement("attr-mobile-actions"));return t.append('<c-mobile-more-button data-actions="section.actions.mobile" data-on-action="handleAction(action)"><\/c-mobile-more-button>'),t}function c(){var t,l,nt,tt,it,rt,u,c,h,ut;if(a()!==!1){if(r.setTestAttribute(e,"section",f.section.title),typeof f.section.isLoading=="undefined"&&(f.section.isLoading=!1),typeof f.section.tabsActionName=="undefined"&&(f.section.tabsActionName="refresh-section-certifications"),t=$(document.createElement("div")),t.attr("data-c-panel",""),t.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),l=i.getSettingsToolActionElement(f.section,"handleAction(action)"),l!==null&&t.find("attr-tools").append(l),nt=i.getTitleElement(f.section),nt!==null&&t.find("attr-header").append(nt),tt=i.getDescriptionElement(f.section),tt!==null&&t.find("attr-header").append(tt),it=d(f.section),it!==null&&t.find("attr-header").append(it),rt=g(f.section),rt!==null&&t.find("attr-header").append(rt),t.find("attr-body").addClass("panel-body-padding"),u=$(document.createElement("div")),u.addClass("panel-tabs"),u.attr("data-c-tabs",""),u.attr("data-tabs","section.tabs"),u.attr("data-on-action","tabAction(action,data)"),t.find("attr-body").append(u),c=$(document.createElement("div")),c.addClass("feed"),h=$('<div class="articles" data-ng-class="{\'loading-large\': section.isLoading === true}"><\/div>'),angular.forEach(f.section.certifications,function(n){var i,r,t;k(n);i=$(document.createElement("div"));i.addClass("article");i.attr("data-unit-t-certification","");r=b(n);i.append(r);t=$(document.createElement("div"));t.addClass("article-brief");t.append(v(n));t.append(y(n));t.append(p(n));t.append(w(n));i.append(t);h.append(i)}),f.section.adminMessage===null&&f.section.certifications.length===0)h.append('<span class="no-data">No items.<\/span>');else if(f.section.adminMessage!==null){ut=_.find(f.section.tabs,function(n){return n.isActive===!0});switch(ut.id){case s.LAST_UPDATED:f.section.certifications.length===0&&h.append('<span class="no-data">No items.<\/span>');break;case s.IN_PROGRESS:case s.COMPLETED:h.append('<span class="no-data">'+f.section.adminMessage+"<\/span>");break;default:throw new Error("Unknown CertificationTab Type: "+ut.id);}}c.append(h);t.find("attr-body").append(c);$(e).append(n(t)(o))}}var s={LAST_UPDATED:1,IN_PROGRESS:2,COMPLETED:3},o=null;f.$watch(function(){return f.section},function(n,t){n!==t&&c()},!0);f.tabAction=function(n,t){f.handleSectionAction("refresh-section-certifications",f.section,{activeTab:t})};f.handleAction=function(n,t){f.handleSectionAction(n,f.section,t)};f.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";f.onAction({action:n,section:t,data:i})};c()}}}]);angular.module("sharedElements").directive("cChartSection",["$compile","constants","sectionService","helpService","$timeout",function(n,t,i,r,u){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(f,e){function h(){o!==null&&o.$destroy();o=f.$new();e.html("")}function c(){if(h(),f.section===null)return!1;if(Object.prototype.toString.call(f.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof f.section.chart=="undefined")throw new Error('"section.chart" is undefined');if(Object.prototype.toString.call(f.section.chart)!=="[object Object]")throw new Error('"section.chart" is not Object');return!0}function l(n){if(n.filters===null)return null;var t=$(document.createElement("attr-mobile-actions"));return t.append('<c-mobile-more-chart-section-button data-filters="section.filters" data-on-action="handleAction(action)"><\/c-mobile-more-chart-section-button>'),t}function s(){var u,s,h,a,v,y,o;c()&&(r.setTestAttribute(e,"section",f.section.title),f.section.status=t.listerStatus.RENDERING,u=$(document.createElement("div")),u.attr("data-c-panel",""),u.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),s=i.getSettingsToolActionElement(f.section,"handleAction(action)"),s!==null&&u.find("attr-tools").append(s),h=i.getTitleElement(f.section),h!==null&&u.find("attr-header").append(h),a=i.getDescriptionElement(f.section),a!==null&&u.find("attr-header").append(a),v=l(f.section),v!==null&&u.find("attr-header").append(v),y=i.getFiltersElement(f.section,"filterChanged()","form"),y!==null&&u.find("attr-body").addClass("panel-body-filters").append(y),o=$(document.createElement("div")),o.attr("data-c-chart",""),o.attr("data-chart","section.chart"),o.attr("data-status","section.status"),u.find("attr-body").append(o),$(e).append(n(u)(f)))}if(typeof f.section=="undefined")throw new Error('"section" is undefined');var o=null;f.form=null;s();f.$watch(function(){return f.section},function(n,t){n!==t&&s()});f.filterChanged=function(){if(r.isMobileDevice()!==!0){u(function(){o.form.submit(function(){f.handleSectionAction("refresh-chart",f.section)})});return}};f.handleAction=function(n,t){f.handleSectionAction(n,f.section,t)};f.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";switch(n){case"refresh-chart":f.onAction({action:"refresh-section-chart",section:t,data:i});break;default:f.onAction({action:n,section:t,data:i})}}}}}]);angular.module("sharedElements").directive("cCourseSection",["$compile","constants","sectionService","helpService","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(f,e){function l(){o!==null&&o.$destroy();o=f.$new();e.html("")}function a(){if(l(),f.section===null)return!1;if(Object.prototype.toString.call(f.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof f.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function h(n){var t;return n.link===null?t=$(document.createElement("span")):(t=$(document.createElement("a")),t.attr("href",n.link)),t.attr("data-unit-t-course-title",""),t}function v(n){var i=$(document.createElement("h5")),t;return i.addClass("article-title"),t=h(n),t.text(n.title),u.setTranslateAttribute(t,!1),i.append(t),i}function y(n){if(n.expirationDate===null)return null;var t=$(document.createElement("span"));return t.addClass("article-time"),t.text("valid until "+u.wrapTextInVar(n.expirationDate,u.variableName.DATE)),t}function p(n){if(n.summary===null||n.summary==="")return null;var t=$(document.createElement("div"));return t.addClass("article-excerpt"),t.text(n.summary),t}function w(n){var i=$(document.createElement("span")),r;if(i.attr("data-unit-t-course-date",""),i.addClass("article-status"),r=f.adminMessage!==null,r)i.html("added on "+u.wrapTextInVar(n.createdDate,u.variableName.DATE));else switch(n.status){case t.courseStatus.NOT_STARTED:i.html(n.statusText+", added on "+u.wrapTextInVar(n.createdDate,u.variableName.DATE));break;case t.courseStatus.COMPLETED:i.addClass("text-success");i.text(n.statusText);break;case t.courseStatus.EXPIRED:case t.courseStatus.IN_PROGRESS:case t.courseStatus.VOIDED:i.text(n.statusText);break;default:throw Error("Unknown course status: "+n.status);}return i}function b(t){var r=h(t),i;return r.addClass("article-preview"),i=$(document.createElement("div")),i.attr("data-c-thumbnail-image",""),typeof f.thumbnails=="undefined"&&(f.thumbnails={}),f.thumbnails[t.id]=t.thumbnail,i.attr("data-image","thumbnails["+t.id+"]"),r.append(i),n(i)(o),r}function k(n){if(typeof n.id=="undefined")throw new Error('"course.id" is undefined');if(typeof n.id!="number")throw new Error('"course.id" is not Number');if(typeof n.summary=="undefined")throw new Error('"course.summary" is undefined');if(typeof n.summary!="string")throw new Error('"course.summary" is not String');if(typeof n.title=="undefined")throw new Error('"course.title" is undefined');if(typeof n.title!="string")throw new Error('"course.title" is not String');if(typeof n.createdDate=="undefined")throw new Error('"course.createdDate" is undefined');if(n.createdDate!==null&&typeof n.createdDate!="string")throw new Error('"course.createdDate" is not String');if(typeof n.link=="undefined")throw new Error('"course.link" is undefined');if(n.link!==null&&typeof n.link!="string")throw new Error('"course.link" is not String');}function d(n){if(n.actions===null||n.actions.refineResults===null)return null;var i=$(document.createElement("attr-actions-right")),t=$(document.createElement("c-link-button"));return t.attr("data-action","section.actions.refineResults"),t.attr("data-on-action","handleAction(action)"),i.append(t),i}function g(n){if(n.actions===null||n.actions.mobile===null)return null;var t=$(document.createElement("attr-mobile-actions"));return t.append('<c-mobile-more-button data-actions="section.actions.mobile" data-on-action="handleAction(action)"><\/c-mobile-more-button>'),t}function c(){var t,l,nt,tt,it,rt,u,c,h,ut;if(a()!==!1){if(r.setTestAttribute(e,"section",f.section.title),typeof f.section.isLoading=="undefined"&&(f.section.isLoading=!1),t=$(document.createElement("div")),t.attr("data-c-panel",""),t.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),l=i.getSettingsToolActionElement(f.section,"handleAction(action)"),l!==null&&t.find("attr-tools").append(l),nt=i.getTitleElement(f.section),nt!==null&&t.find("attr-header").append(nt),tt=i.getDescriptionElement(f.section),tt!==null&&t.find("attr-header").append(tt),it=d(f.section),it!==null&&t.find("attr-header").append(it),rt=g(f.section),rt!==null&&t.find("attr-header").append(rt),t.find("attr-body").addClass("panel-body-padding"),u=$(document.createElement("div")),u.addClass("panel-tabs"),u.attr("data-c-tabs",""),u.attr("data-tabs","section.tabs"),u.attr("data-on-action","tabAction(action,data)"),t.find("attr-body").append(u),c=$(document.createElement("div")),c.addClass("feed"),h=$('<div class="articles" data-ng-class="{\'loading-large\': section.isLoading === true}"><\/div>'),angular.forEach(f.section.courses,function(n){var i,r,t;k(n);i=$(document.createElement("div"));i.addClass("article");i.attr("data-unit-t-course","");r=b(n);i.append(r);t=$(document.createElement("div"));t.addClass("article-brief");t.append(v(n));t.append(y(n));t.append(p(n));t.append(w(n));i.append(t);h.append(i)}),f.section.adminMessage===null&&f.section.courses.length===0)h.append('<span class="no-data">No items.<\/span>');else if(f.section.adminMessage!==null){ut=_.find(f.section.tabs,function(n){return n.isActive===!0});switch(ut.id){case s.LAST_UPDATED:f.section.courses.length===0&&h.append('<span class="no-data">No items.<\/span>');break;case s.IN_PROGRRESS:case s.COMPLETED:h.append('<span class="no-data">'+f.section.adminMessage+"<\/span>");break;default:throw new Error("Unknown CourseTab Type: "+ut.id);}}c.append(h);t.find("attr-body").append(c);$(e).append(n(t)(o))}}var s={LAST_UPDATED:1,IN_PROGRRESS:2,COMPLETED:3},o=null;f.$watch(function(){return f.section},function(n,t){n!==t&&c()},!0);f.tabAction=function(n,t){f.handleSectionAction("refresh-section-courses",f.section,{activeTab:t})};f.handleAction=function(n,t){f.handleSectionAction(n,f.section,t)};f.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";f.onAction({action:n,section:t,data:i})};c()}}}]);angular.module("sharedElements").directive("cDataWidgetSection",["$compile","constants","helpService","sectionService","$timeout",function(n,t,i,r){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(u,f){function h(){o!==null&&o.$destroy();o=u.$new();f.html("")}function c(){if(h(),u.section===null)return!1;if(Object.prototype.toString.call(u.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof u.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function s(){var h,v,y,p,w,l,a,s;c()&&(i.setTestAttribute(f,"section",u.section.title),h=$(document.createElement("div")),h.attr("data-c-panel",""),h.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),v=r.getEditToolActionElement(u.section,"handleAction(action)"),y=r.getSettingsToolActionElement(u.section,"handleAction(action)"),v!==null&&h.find("attr-tools").append(v),y!==null&&h.find("attr-tools").append(y),u.section.showTitle===!0&&(p=r.getTitleElement(u.section),p!==null&&h.find("attr-header").append(p),w=r.getDescriptionElement(u.section),w!==null&&h.find("attr-header").append(w)),l=$(document.createElement("div")),l.addClass("panel-body-lister-wrapper"),u.section.alerts!==null?(a=$(document.createElement("div")),a.attr("data-c-alert-viewer",""),a.attr("data-alerts","section.alerts"),l.append(a)):u.section.lister!==null&&(u.section.listerStatus=t.listerStatus.RENDERING,e=u.section.lister.listerState,s=$(document.createElement("div")),s.addClass("layout-scroll"),e.layout===t.listerLayout.CONTENT?(s.attr("data-c-news-item-content-lister",""),s.removeClass("layout-scroll"),l.removeClass("panel-body-lister-wrapper"),l.addClass("news-content-layout")):s.attr("data-c-data-viewer",""),s.attr("data-lister","section.lister"),s.attr("data-settings","section.listerSettings"),s.attr("data-on-action","handleAction(action, data)"),s.attr("data-lister-status","section.listerStatus")),l.append(s),h.find("attr-body").append(l),$(f).append(n(h)(o)))}var o,e;if(typeof u.section=="undefined")throw new Error('"section" is undefined');o=null;u.form=null;e=null;s();u.anyRows=function(){return i.showControlsRelatedWithListerData(u.section.lister,u.section.listerStatus)};u.handleAction=function(n,t){return u.handleSectionAction(n,u.section,t)};u.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";switch(n){case"refresh-lister":e=$.extend(e,i.listerState);u.onAction({action:"refresh-section-lister",section:t,data:{listerState:e}});break;case"load-marker":return u.onAction({action:"load-marker",section:t,data:i});default:u.onAction({action:n,section:t,data:i})}};u.$watch(function(){return u.section},function(n,t){n!==t&&s()})}}}]);angular.module("sharedElements").directive("cFieldSection",["$compile","sectionService","helpService","$timeout",function(n,t,i,r){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(u,f){function s(){e!==null&&e.$destroy();e=u.$new();f.html("")}function h(){if(s(),u.section===null)return!1;if(Object.prototype.toString.call(u.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof u.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function c(n){if(n.actions===null||n.actions.primary===null)return null;var i=$(document.createElement("attr-actions-right")),t=$(document.createElement("c-actions-link"));return t.attr("data-on-action","handleAction(action)"),t.attr("data-actions","section.actions.primary"),i.append(t),i}function l(n){if((n.actions===null||n.actions.mobile===null)&&n.filters===null)return null;var t=$(document.createElement("attr-mobile-actions"));return t.append('<c-mobile-more-field-section-button data-actions="section.actions.mobile" data-filters="section.filters" data-on-action="handleAction(action)"><\/c-mobile-more-field-section-button>'),t}function o(){var r,o,s,y,p,w,b;h()!==!1&&(i.setTestAttribute(f,"section",u.section.title),typeof u.section.isLoading=="undefined"&&(u.section.isLoading=!1),r=$(document.createElement("div")),r.attr("data-c-panel",""),r.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),o=t.getSettingsToolActionElement(u.section,"handleAction(action)"),o!==null&&r.find("attr-tools").append(o),s=t.getTitleElement(u.section),s!==null&&r.find("attr-header").append(s),y=t.getDescriptionElement(u.section),y!==null&&r.find("attr-header").append(y),p=c(u.section),p!==null&&r.find("attr-header").append(p),w=l(u.section),w!==null&&r.find("attr-header").append(w),b=t.getFiltersElement(u.section,"filterChanged()","form"),b!==null&&r.find("attr-body").addClass("panel-body-filters").append(b),r.find("attr-body").append(a()),r.find("attr-body").append(v()),$(f).append(n(r)(e)))}function a(){var n=$(document.createElement("div")),t,i;return n.addClass("layout-no-data"),n.attr("data-ng-class",'{"loading-large": section.isLoading === true}'),n.attr("data-ng-show","anyData() === false"),t=$(document.createElement("div")),t.addClass("no-data alert alert-info"),i=$(document.createElement("p")),i.text("No data."),t.append(i),n.append(t),n}function v(){var n=$(document.createElement("div"));return n.attr("data-ng-class",'{"loading-large": section.isLoading === true}'),n.attr("data-ng-show","anyData() === true"),n.addClass("fields panel-fields-padding"),angular.forEach(u.section.fields,function(t,i){var r=$(document.createElement("div"));r.addClass("field");r.attr("data-c-field","");r.attr("data-field","section.fields["+i+"]");r.attr("data-on-action","handleAction(action, data)");n.append(r)}),n}if(typeof u.section=="undefined")throw new Error('"section" is undefined');var e=null;u.form=null;u.filterChanged=function(){i.isMobileDevice()!==!0&&r(function(){e.form.submit(function(){u.handleSectionAction("refresh-field",u.section)})})};u.$watch(function(){return u.section},function(n,t){n!==t&&o()});u.$watch(function(){return u.section!==null&&u.section.fields!==null?u.section.fields.length:null},function(n,t){n!==t&&o()});u.anyData=function(){return u.section===null?!1:u.section.fields===null?!1:u.section.fields.length===0?!1:!0};u.handleAction=function(n,t){return u.handleSectionAction(n,u.section,t)};u.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";switch(n){case"refresh-field":u.onAction({action:"refresh-section-field",section:t,data:i});break;default:return u.onAction({action:n,section:t,data:i})}};o()}}}]);angular.module("sharedElements").directive("cHeroSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');if(i.section.imageId!==null&&typeof i.section.imageId!="number")throw new Error('"section.imageId" is not number');if(i.section.buttons!==null&&Object.prototype.toString.call(i.section.buttons)!=="[object Array]")throw new Error('"section.buttons" is not an array');return!0}function f(){var f,e,s,c,h;o()&&(f=$("<div data-c-panel><attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body><\/div>"),f.addClass("panel-flush"),e=t.getEditToolActionElement(i.section,"handleAction(action)"),s=t.getSettingsToolActionElement(i.section,"handleAction(action)"),e!==null&&f.find("attr-tools").append(e),s!==null&&f.find("attr-tools").append(s),c=$('<div data-c-hero-widget data-section="section" data-on-action="handleAction(action)"><\/div>'),h=f.find("attr-body"),h.addClass("panel-no-title"),h.append(c),$(r).append(n(f)(u)))}var u=null;i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()});f()}}}]);angular.module("sharedElements").directive("cHistorySection",["$compile","sectionService","helpService","pageSharedDataFactory","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(f,e){function c(){o!==null&&o.$destroy();o=f.$new();e.html("")}function l(){if(c(),f.section===null)return!1;if(Object.prototype.toString.call(f.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof f.section.history=="undefined")throw new Error('"section.history" is undefined');if(Object.prototype.toString.call(f.section.history)!=="[object Object]")throw new Error('"section.history" is not Object');return!0}function a(){var n=$(document.createElement("attr-mobile-actions"));return n.append('<c-mobile-more-button data-actions="section.historySectionActions.mobile" data-on-action="handleAction(action)"><\/c-mobile-more-button>'),n}function v(){var n=$(document.createElement("attr-actions-left"));return n.append('<c-actions-button data-actions="section.historySectionActions.new" data-on-action="handleAction(action)" data-is-primary="true"><\/c-actions-button>'),n}function h(){var r,s,h,c,y,o,u,p;l()&&(i.setTestAttribute(e,"section",f.section.title),r=$(document.createElement("div")),r.attr("data-c-panel",""),r.html("<attr-header><\/attr-header><attr-body data-ng-class=\"{'panel-body-padding': anyHistoryItems() === true }\"><\/attr-body>"),s=t.getTitleElement(f.section),s!==null&&r.find("attr-header").append(s),h=v(f.section),h!==null&&r.find("attr-header").append(h),c=a(f.section),c!==null&&r.find("attr-header").append(c),y=$(document.createElement("div")),f.section!==null&&f.section.history!==null&&f.section.history.entries!==null&&f.section.history.entries.length>0?(o=$(document.createElement("div")),o.addClass("events"),o.append('<div data-c-history data-history="section.history" data-on-action="handleAction(action,data)"><\/div>'),r.find("attr-body").append(o)):(u=$(document.createElement("div")),u.addClass("no-data"),u.addClass("alert"),u.addClass("alert-info"),p=$(document.createElement("p")),p.html("No Items."),u.append(p),y.append(u),r.find("attr-body").append(y)),$(e).append(n(r)(f)))}function y(){i.openDialog({template:"js/shared/common/views/addHistoryEntry/addHistoryEntryView.html",controller:["$scope",function(n){function t(){if(s!==null){n.historyEntrySection=$.extend(!0,{},s);n.isLoading=!1;return}f.handleAction("load-history-section",{id:f.section.entityId}).then(function(t){s=$.extend(!0,{},t);n.historyEntrySection=t;n.isLoading=!1})}n.historyEntrySection=null;n.isLoading=!0;n.pendingAction=!1;n.addHistory=function(t){t.submit(function(){r.showProcessingMessage();n.pendingAction=!0;var t=i.prepareSectionsForAjax([],n.historyEntrySection);f.handleAction("save-history-comment",{id:f.section.entityId,sections:t}).then(function(){r.showSuccessMessage();n.pendingAction=!1;n.closeThisDialog()})})};t()}]})}function p(n){i.openDeleteDialog({title:"Delete History File",dependencies:[],onAction:function(t){function r(){var t=_.find(f.section.history.entries,function(t){return t.id===n}),r=i.htmlEncode(t.files[0].name);return i.resolveLoadDialog({message:"Do you really want to delete the History File <b>"+u.wrapTextInVar(r,u.variableName.ENTITY_NAME)+"<\/b>?"})}function e(){var t=f.handleAction("delete-history-file",{id:n});return t.thenWithoutErrorCallback(function(n){i.updateSection(f.section,n)}),t}switch(t){case"load":return r();case"delete":return e();default:throw"Unknown action: "+t;}}})}if(typeof f.section=="undefined")throw new Error('"section" is undefined');var o=null,s=null;f.form=null;h();f.$watch(function(){return f.section},function(n,t){n!==t&&h()},!0);f.anyHistoryItems=function(){return f.section!==null&&f.section.history!==null&&f.section.history.entries!==null&&f.section.history.entries.length>0};f.handleAction=function(n,t){if(typeof n=="undefined")throw"Action is unspecified";switch(n){case"add-history-comment":y();break;case"delete-file":p(t.historyId);break;default:return f.onAction({action:n,section:f.section,data:t})}}}}}]);angular.module("sharedElements").directive("cHtmlCodeSection",["$compile","$window","sectionService",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function s(){f!==null&&f.$destroy();f=r.$new();u.html("")}function h(){if((s(),r.section===null)||r.section.widgetId===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function e(n){var e,i,f;if(window===null){e=t===null?"is null also.":"is not null.";throw new Error('"BUG ID: 48039?" window is null. $window '+e+' Origin: "'+n.origin+"'");}if(typeof location=="undefined")throw new Error('"BUG ID: 48039" window.location is undefined. Origin: "'+n.origin+"'");n.origin===window.location.origin&&((i=n.source.location.pathname.split("/"),i.length<3)||i[2]===r.section.widgetId.toString()&&(f=$(u).find("iframe"),n.data.autoHeight!==undefined&&f.css("height",n.data.autoHeight+"px"),n.data.height!==undefined&&f.css("height",n.data.height+"px")))}function o(){var s,l,a,v,y,p,o,c;h()!==!1&&(s=$("<div data-c-panel><attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body><\/div>"),s.addClass("panel-flush"),l=i.getEditToolActionElement(r.section,"handleAction(action)"),a=i.getSettingsToolActionElement(r.section,"handleAction(action)"),l!==null&&s.find("attr-tools").append(l),a!==null&&s.find("attr-tools").append(a),r.section.showTitle===!0&&(v=s.find("attr-header"),y=i.getTitleElement(r.section),y!==null&&v.append(y),p=i.getDescriptionElement(r.section),p!==null&&v.append(p)),o=$(document.createElement("iframe")),r.section.previewUserId===0?o.attr("src","HtmlCodeWidget/"+r.section.widgetId):o.attr("src","HtmlCodeWidget/"+r.section.widgetId+"/PreviewUser/"+r.section.previewUserId),o.attr("frameborder",0),o.attr("scrolling","no"),o.css("width","100%"),o.css("overflow","hidden"),o.css("display","block"),t.addEventListener?t.addEventListener("message",e,!1):t.attachEvent("onmessage",e,!1),c=s.find("attr-body"),r.section.showTitle===!1?c.addClass("panel-no-title"):c.addClass("panel-body-padding-top-only"),c.append(o),$(u).append(n(s)(f)))}var f=null;r.$watch(function(){return r.section},function(n,t){n!==t&&o()});r.handleAction=function(n,t){r.handleSectionAction(n,r.section,t)};r.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";r.onAction({action:n,section:t,data:i})};o()}}}]);angular.module("sharedElements").directive("cIconsSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');if(typeof i.section.title!="string")throw new Error('"section.title" is not a string');if(i.section.icons!==null&&Object.prototype.toString.call(i.section.icons)!=="[object Array]")throw new Error('"section.icons" is not an array');return!0}function f(){var f,s,h,c,l,a,v,e;o()&&(f=$("<div data-c-panel><attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body><\/div>"),f.addClass("panel-flush"),s=t.getEditToolActionElement(i.section,"handleAction(action)"),h=t.getSettingsToolActionElement(i.section,"handleAction(action)"),s!==null&&f.find("attr-tools").append(s),h!==null&&f.find("attr-tools").append(h),i.section.showTitle===!0&&(c=f.find("attr-header"),l=t.getTitleElement(i.section),l!==null&&c.append(l),a=t.getDescriptionElement(i.section),a!==null&&c.append(a)),v=$('<div data-c-icons-widget data-section="section"><\/div>'),e=f.find("attr-body"),i.section.showTitle===!1?e.addClass("panel-no-title"):e.addClass("panel-body-padding-top-only"),e.append(v),$(r).append(n(f)(u)))}var u=null;i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()},!0);f()}}}]);angular.module("sharedElements").directive("cImageSection",["$timeout","$compile","sectionService",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function e(){f!==null&&f.$destroy();f=r.$new();u.html("")}function o(){if(r.section===null)return!1;if(typeof r.section=="undefined")throw new Error('"section" is undefined');return!0}function s(){var s,l,a,v,y,h,c,p;(e(),o()!==!1)&&(s=$(document.createElement("div")),s.attr("data-c-panel",""),s.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),l=i.getSettingsToolActionElement(r.section,"handleAction(action)"),l!==null&&s.find("attr-tools").append(l),a=i.getTitleElement(r.section),a!==null&&s.find("attr-header").append(a),v=i.getDescriptionElement(r.section),v!==null&&s.find("attr-header").append(v),y=s.find("attr-body"),y.addClass("loading-large"),h=$(document.createElement("div")),h.addClass("image-viewer"),c=$(document.createElement("img")),c.attr("src",r.section.imageUrl),h.append(c),y.append(h),$(u).append(t(s)(f)),p=u.find(".panel-body"),c.one("load",function(){n(function(){p.removeClass("loading-large")})}).each(function(){this.complete&&$(this).trigger("load")}))}if(typeof r.section.imageUrl=="undefined")throw new Error('"imageUrl" is undefined');if(typeof r.section.imageUrl!="string")throw new Error('"imageUrl" is not a string');var f=null;s()}}}]);angular.module("sharedElements").directive("cImageWidgetSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function f(){var f,c,l,a,s,e,h;o()&&(f=$(document.createElement("div")),f.addClass("image-widget"),f.attr("data-c-panel",""),f.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),c=t.getEditToolActionElement(i.section,"handleAction(action)"),l=t.getSettingsToolActionElement(i.section,"handleAction(action)"),c!==null&&f.find("attr-tools").append(c),l!==null&&f.find("attr-tools").append(l),i.section.showTitle===!0&&(a=t.getTitleElement(i.section),a!==null&&f.find("attr-header").append(a)),s=f.find("attr-body"),s.addClass("panel-body-padding-top-only"),i.section.showTitle===!1&&s.addClass("panel-no-title"),e=$(document.createElement("img")),e.attr("src",i.section.imageUrl),e.attr("data-c-image-placeholder",""),e.attr("data-mode","dynamic-vertical"),e.attr("data-width",i.section.imageWidth),e.attr("data-height",i.section.imageHeight),typeof i.section.linkUrl!="undefined"&&i.section.linkUrl!==null?(h=$(document.createElement("a")),h.attr("href",i.section.linkUrl),i.section.targetBlank&&h.attr("target","_blank"),h.append(e),s.append(h)):(e.attr("src",i.section.imageUrl),s.append(e)),$(r).append(n(f)(u)))}var u=null;i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()});f()}}}]);angular.module("sharedElements").directive("cLibraryListerSection",["$compile","constants","helpService","sectionService","$timeout",function(n,t,i,r,u){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(f,e){function c(){s!==null&&s.$destroy();s=f.$new();e.html("")}function l(){if(c(),f.section===null)return!1;if(Object.prototype.toString.call(f.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof f.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function h(){var h,v,y,p,w,c,a,u;l()&&(i.setTestAttribute(e,"section",f.section.title),h=$(document.createElement("div")),h.attr("data-c-panel",""),h.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),v=r.getEditToolActionElement(f.section,"handleAction(action)"),y=r.getSettingsToolActionElement(f.section,"handleAction(action)"),v!==null&&h.find("attr-tools").append(v),y!==null&&h.find("attr-tools").append(y),f.section.showTitle===!0&&(p=r.getTitleElement(f.section),p!==null&&h.find("attr-header").append(p),w=r.getDescriptionElement(f.section),w!==null&&h.find("attr-header").append(w)),f.section.listerStatus=t.listerStatus.RENDERING,f.section.actions!==null&&(i.bindRefineResultsActionLinkForMobile(f.section.actions.mobile,f.section.lister),i.bindRefineResultsActionLink(f.section.actions.refineResults,f.section.lister)),c=$(document.createElement("div")),c.addClass("panel-body-lister-wrapper"),f.section.alerts!==null?(a=$(document.createElement("div")),a.attr("data-c-alert-viewer",""),a.attr("data-alerts","section.alerts"),c.append(a)):f.section.lister!==null&&(o=f.section.lister.listerState,u=$(document.createElement("div")),u.addClass("layout-scroll"),u.addClass("library-widget"),u.attr("data-c-library-lister",""),u.attr("data-lister","section.lister"),u.attr("data-settings","section.listerSettings"),u.attr("data-on-refresh","refreshLister()"),u.attr("data-on-action","handleAction(action, data)"),u.attr("data-lister-status","section.listerStatus"),c.append(u)),h.find("attr-body").append(c),$(e).append(n(h)(s)))}var s,o;if(typeof f.section=="undefined")throw new Error('"section" is undefined');s=null;f.form=null;o=null;h();f.anySelectedRows=function(){return i.anySelectedRows(f.section.lister,f.section.listerStatus)};f.anyRows=function(){return i.showControlsRelatedWithListerData(f.section.lister,f.section.listerStatus)};f.refreshLister=function(){f.handleSectionAction("refresh-lister",f.section,{listerState:o})};f.filterChanged=function(){i.isMobileDevice()!==!0&&u(function(){s.form.submit(function(){f.handleSectionAction("refresh-lister",f.section,{listerState:o})})})};f.cancelBulkOperations=function(){f.section.listerSettings.bulkOperationsVisible=!1};f.handleAction=function(n,t){return f.handleSectionAction(n,f.section,t)};f.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";switch(n){case"refresh-lister":o=$.extend(o,i.listerState);f.onAction({action:"refresh-section-lister",section:t,data:{listerState:o}});break;case"load-marker":return f.onAction({action:"load-marker",section:t,data:i});default:f.onAction({action:n,section:t,data:i})}};f.$watch(function(){return f.section===null?null:f.section.actions===null?null:f.section.lister===null?null:typeof f.section.lister.refineResults!="undefined"&&f.section.lister.refineResults!==null?f.section.lister.refineResults:f.section.lister.filterAndListerState},function(n){if(n!==null){var t=typeof f.section.lister.refineResults!="undefined"&&f.section.lister.refineResults!==null;u(function(){t===!0?(i.updateRefineResultsActionLinkForMobile_NEW(f.section.actions.mobile,n),i.updateRefineResultsActionLink_NEW(f.section.actions.refineResults,n)):(i.updateRefineResultsActionLinkForMobile(f.section.actions.mobile,n),i.updateRefineResultsActionLink(f.section.actions.refineResults,n))})}});f.$watch(function(){return f.section},function(n,t){n!==t&&h()})}}}]);angular.module("sharedElements").directive("cLinkSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(i.section===null)return!1;if(typeof i.section=="undefined")throw new Error('"section" is undefined');return!0}function f(){var f,s,h,c,l;(e(),o()!==!1)&&(f=$(document.createElement("div")),f.attr("data-c-panel",""),f.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),s=t.getSettingsToolActionElement(i.section,"handleAction(action)"),s!==null&&f.find("attr-tools").append(s),h=t.getTitleElement(i.section),h!==null&&f.find("attr-header").append(h),c=t.getDescriptionElement(i.section),c!==null&&f.find("attr-header").append(c),l=$('<div data-c-link-lister data-links="section.links" data-on-action="handleAction(action, data)"><\/div>'),f.find("attr-body").addClass("panel-body-padding").append(l),$(r).append(n(f)(u)))}var u=null;i.$watch(function(){return i.section},function(n,t){n!==t&&f()},!0);i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};f()}}}]);angular.module("sharedElements").directive("cListerSection",["$compile","constants","helpService","sectionService","$timeout",function(n,t,i,r,u){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(f,e){function c(){s!==null&&s.$destroy();s=f.$new();e.html("")}function l(){if(c(),f.section===null)return!1;if(Object.prototype.toString.call(f.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof f.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function a(n){var r,u,f,i;return n.actions===null?null:n.actions.primary===null&&n.actions.bulk===null&&n.actions.refresh===null?null:(r=$(document.createElement("attr-actions-left")),n.actions.primary!==null&&(u=$(document.createElement("c-new-button")),u.attr("data-is-primary","true"),u.attr("data-actions","section.actions.primary"),u.attr("data-on-action","handleAction(action)"),r.append(u)),n.actions.refresh!==null&&(f=$(document.createElement("c-refresh-button")),f.attr("data-on-action","handleAction(action,data)"),r.append(f)),n.actions.bulk!==null&&(i=$(document.createElement("c-actions-button")),i.attr("data-actions","section.actions.bulk"),i.attr("data-on-action","handleAction(action)"),i.attr("data-ng-show","anyRows() === true"),i.attr("data-is-disabled","anySelectedRows() === false"),i.attr("data-disabled-tooltip",t.disabledActionsTooltip),r.append(i)),r)}function v(n){var t,i,u;return(n.actions===null||n.actions.refineResults===null)&&n.listerSettings.enabledPaging===!1&&n.listerSettings.enabledExport===!1?null:(t=$(document.createElement("attr-actions-right")),t.append(r.getRefineResultsActionElement(n,"handleAction(action)")),n.listerSettings.enabledPaging===!0&&(i=$(document.createElement("c-pager")),i.attr("data-lister","section.lister"),i.attr("data-lister-status","section.listerStatus"),i.attr("data-on-refresh","refreshLister()"),t.append(i)),n.listerSettings.enabledExport===!0&&(u=$(document.createElement("c-exporter")),u.attr("data-lister","section.lister"),u.attr("data-lister-status","section.listerStatus"),u.attr("data-nested-tables","section.nestedTables"),t.append(u)),t)}function y(n){if((n.actions===null||n.actions.mobile===null)&&n.listerSettings.enabledSorting===!1&&n.listerSettings.enabledBulkOperations===!1&&n.filters===null)return null;var t=$(document.createElement("attr-mobile-actions"));return n.listerSettings!==null&&n.listerSettings.enabledBulkOperations===!0&&t.attr("data-ng-show","section.listerSettings.bulkOperationsVisible === false"),t.append('<c-mobile-more-lister-section-button data-actions="section.actions.mobile" data-on-action="handleAction(action, data)" data-lister="section.lister" data-lister-status="section.listerStatus" data-lister-settings="section.listerSettings" data-filters="section.filters"><\/c-mobile-more-lister-section-button>'),t}function h(){var u,w,b,k,d,g,nt,tt,it,c,p,h;l()&&(i.setTestAttribute(e,"section",f.section.title),f.section.listerStatus=t.listerStatus.RENDERING,o=f.section.lister.listerState,f.section.actions!==null&&(i.bindRefineResultsActionLinkForMobile(f.section.actions.mobile,f.section.lister),i.bindRefineResultsActionLink(f.section.actions.refineResults,f.section.lister)),u=$(document.createElement("div")),u.attr("data-c-panel",""),u.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),w=r.getEditToolActionElement(f.section,"handleAction(action)"),b=r.getSettingsToolActionElement(f.section,"handleAction(action)"),w!==null&&u.find("attr-tools").append(w),b!==null&&u.find("attr-tools").append(b),f.section.showTitle===!0&&(k=r.getTitleElement(f.section),k!==null&&u.find("attr-header").append(k),d=r.getDescriptionElement(f.section),d!==null&&u.find("attr-header").append(d),g=a(f.section),g!==null&&u.find("attr-header").append(g),nt=v(f.section),nt!==null&&u.find("attr-header").append(nt),tt=y(f.section),tt!==null&&u.find("attr-header").append(tt)),it=r.getFiltersElement(f.section,"filterChanged()","form"),it!==null&&u.find("attr-body").addClass("panel-body-filters").append(it),f.section.listerSettings.enabledBulkOperations===!0&&(c=$(document.createElement("div")),c.attr("data-ng-show","section.listerSettings.bulkOperationsVisible === true"),c.addClass("panel-bulk-operations small-only"),c.append('<c-mobile-bulk-operation-actions-button data-actions="section.actions.bulk" data-on-action="handleAction(action)" data-is-disabled="anySelectedRows() === false">Actions<\/c-mobile-bulk-operation-actions-button><button class="btn btn-default" data-ng-click="cancelBulkOperations()">Cancel<\/button>'),u.find("attr-body").append(c)),p=$(document.createElement("div")),p.addClass("panel-body-lister-wrapper"),h=$(document.createElement("div")),h.addClass("layout-scroll"),h.attr("data-c-data-viewer",""),h.attr("data-lister","section.lister"),h.attr("data-settings","section.listerSettings"),h.attr("data-on-action","handleAction(action, data)"),h.attr("data-lister-status","section.listerStatus"),p.append(h),u.find("attr-body").append(p),$(e).append(n(u)(s)))}var s,o;if(typeof f.section=="undefined")throw new Error('"section" is undefined');s=null;f.form=null;o=null;h();f.anySelectedRows=function(){return i.anySelectedRows(f.section.lister,f.section.listerStatus)};f.anyRows=function(){return i.showControlsRelatedWithListerData(f.section.lister,f.section.listerStatus)};f.refreshLister=function(){f.handleSectionAction("refresh-lister",f.section,{listerState:o})};f.filterChanged=function(){i.isMobileDevice()!==!0&&u(function(){s.form.submit(function(){f.handleSectionAction("refresh-lister",f.section,{listerState:o})})})};f.cancelBulkOperations=function(){f.section.listerSettings.bulkOperationsVisible=!1};f.handleAction=function(n,t){return f.handleSectionAction(n,f.section,t)};f.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";switch(n){case"refresh-lister":o=$.extend(o,i.listerState);f.onAction({action:"refresh-section-lister",section:t,data:{listerState:o}});break;case"load-marker":return f.onAction({action:"load-marker",section:t,data:i});default:f.onAction({action:n,section:t,data:i})}};f.$watch(function(){return f.section===null?null:f.section.actions===null?null:f.section.lister===null?null:typeof f.section.lister.refineResults!="undefined"&&f.section.lister.refineResults!==null?f.section.lister.refineResults:f.section.lister.filterAndListerState},function(n){if(n!==null){var t=typeof f.section.lister.refineResults!="undefined"&&f.section.lister.refineResults!==null;u(function(){t===!0?(i.updateRefineResultsActionLinkForMobile_NEW(f.section.actions.mobile,n),i.updateRefineResultsActionLink_NEW(f.section.actions.refineResults,n)):(i.updateRefineResultsActionLinkForMobile(f.section.actions.mobile,n),i.updateRefineResultsActionLink(f.section.actions.refineResults,n))})}});f.$watch(function(){return f.section},function(n,t){n!==t&&h()})}}}]);angular.module("sharedElements").directive("cNewsSection",["$compile","sectionService","constants",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){if(o(),r.section===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function e(){var e,h,c,l,o;s()&&(r.section.listerStatus=i.listerStatus.RENDERING,e=$(document.createElement("div")),e.attr("data-c-panel",""),r.section.lister.totalRowCount===0&&e.addClass("no-data"),e.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),h=t.getEditToolActionElement(r.section,"handleAction(action)"),c=t.getSettingsToolActionElement(r.section,"handleAction(action)"),h!==null&&e.find("attr-tools").append(h),c!==null&&e.find("attr-tools").append(c),l=t.getTitleElement(r.section),l!==null&&e.find("attr-header").append(l),o=e.find("attr-body"),o.addClass("fr-view"),r.section.lister.totalRowCount!==0&&o.addClass("panel-body-padding"),o.append('<div data-c-news-item-content-lister data-lister="section.lister" data-lister-status="section.listerStatus" data-settings="section.listerSettings"><\/div>'),$(u).append(n(e)(f)))}var f=null;r.handleAction=function(n,t){r.handleSectionAction(n,r.section,t)};r.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";r.onAction({action:n,section:t,data:i})};r.$watch(function(){return r.section},function(n,t){n!==t&&e()});e()}}}]);angular.module("sharedElements").directive("cPlayBooksSection",["$compile","helpService","translationHelperService",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function s(){f!==null&&f.$destroy();f=r.$new();u.html("")}function h(){if(s(),r.section===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function e(n){var t=$(document.createElement("a"));return t.attr("target","_blank"),t.attr("rel","noreferrer"),t.attr("href","/File/"+n.fileId),t}function c(n){var r=$(document.createElement("h5")),t;return r.addClass("play-book-document-title"),t=e(n),t.text(n.title),i.setTranslateAttribute(t,!1),r.append(t),r}function l(n){if(n.description===null||n.description==="")return null;var t=$(document.createElement("div"));return t.addClass("play-book-document-description"),t.text(n.description),i.setTranslateAttribute(t,!1),t}function a(n,t){var r=e(n),i,u;return r.addClass("play-book-document-preview"),i=$('<div data-c-thumbnail-image data-image="section.files['+t+'].thumbnail">'),i.addClass("play-book-document-graphic"),u=$(document.createElement("div")),u.attr("src",n.thumbnailLink),i.append(u),r.append(i),r}function o(){var o,e,s,v,y;h()!==!1&&(t.setTestAttribute(u,"section",r.section.title),o=$(document.createElement("div")),o.attr("data-c-panel",""),o.html("<attr-body><\/attr-body>"),e=$(document.createElement("div")),e.addClass("play-book panel-play-book-padding"),r.section.title!==null&&(s=$(document.createElement("h3")),s.addClass("play-book-title"),s.text(r.section.title),i.setIsolateAttribute(s),e.append(s)),r.section.description!==null&&(v=$(document.createElement("div")),v.addClass("play-book-description wysiwyg fr-view"),v.html(r.section.description),i.setIsolateAttribute(v),e.append(v)),r.section.files!==null&&(y=$(document.createElement("div")),y.addClass("play-book-documents"),r.section.description!==null&&y.addClass("additional-padding-top"),angular.forEach(r.section.files,function(n,t){var r=$(document.createElement("div")),u,i;r.addClass("play-book-document");u=a(n,t);r.append(u);i=$(document.createElement("div"));i.addClass("play-book-document-content");i.append(c(n));i.append(l(n));r.append(i);y.append(r)})),e.append(y),o.find("attr-body").append(e),$(u).append(n(o)(f)))}var f=null;r.$watch(function(){return r.section},function(n,t){n!==t&&o()},!0);r.handleAction=function(n,t){r.handleSectionAction(n,r.section,t)};r.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";r.onAction({action:n,section:t,data:i})};o()}}}]);angular.module("sharedElements").directive("cRichTextSection",["$compile","sectionService","translationHelperService",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){if(o(),r.section===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.id=="undefined")throw new Error('"section.id" is undefined');if(typeof r.section.content!="string")throw new Error('"section.content" is not string');if(r.section.content==="")throw new Error('"section.content" is empty');return!0}function e(){var e,h,c,l,o;s()&&(e=$(document.createElement("div")),e.attr("data-c-panel",""),e.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),h=t.getEditToolActionElement(r.section,"handleAction(action)"),c=t.getSettingsToolActionElement(r.section,"handleAction(action)"),h!==null&&e.find("attr-tools").append(h),c!==null&&e.find("attr-tools").append(c),r.section.showTitle===!0&&(l=t.getTitleElement(r.section),l!==null&&e.find("attr-header").append(l)),o=e.find("attr-body"),o.addClass("panel-body-padding fr-view"),i.setIsolateAttribute(o),o.append(r.section.content),$(u).append(n(e)(f)))}var f=null;r.handleAction=function(n,t){r.handleSectionAction(n,r.section,t)};r.handleSectionAction=function(n,t,i){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";r.onAction({action:n,section:t,data:i})};r.$watch(function(){return r.section},function(n,t){n!==t&&e()});e()}}}]);angular.module("sharedElements").directive("cSystemMessagesSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function f(){var f,h,c,l,a,s,e;o()!==!1&&(f=$(document.createElement("div")),f.attr("data-c-panel",""),f.html("<attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body>"),h=t.getSettingsToolActionElement(i.section,"handleAction(action)"),h!==null&&f.find("attr-tools").append(h),c=t.getTitleElement(i.section),c!==null&&f.find("attr-header").append(c),l=t.getDescriptionElement(i.section),l!==null&&f.find("attr-header").append(l),a=f.find("attr-body"),s=$(document.createElement("div")),i.section.messages!==null&&s.addClass("panel-body-messages-wrapper"),e=$(document.createElement("div")),e.attr("data-c-system-message-lister",""),e.attr("data-messages","section.messages"),e.attr("data-auto-refresh","true"),s.append(e),a.append(s),$(r).append(n(f)(u)))}var u=null;i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()});f()}}}]);angular.module("sharedElements").directive("cTemplatePreviewSection",["$compile","helpService","$timeout",function(n,t,i){return{restrict:"A",scope:{pages:"="},link:function(r,u,f){function y(){return r.zoom.selectedValue}function g(n){$(u).append(n)}function nt(){v!==null&&v.$destroy();v=r.$new();u.html("")}function tt(n){if(typeof n.id=="undefined")throw new Error('"page.id" is undefined');if(typeof n.id!="number")throw new Error('"page.id" is not Number');if(typeof n.rank=="undefined")throw new Error('"page.rank" is undefined');if(typeof n.rank!="number")throw new Error('"page.rank" is not Number');if(typeof n.width=="undefined")throw new Error('"page.width" is undefined');if(typeof n.width!="number")throw new Error('"page.width" is not Number');if(typeof n.height=="undefined")throw new Error('"page.height" is undefined');if(typeof n.height!="number")throw new Error('"page.height" is not Number');if(typeof n.thumbnailImagePath=="undefined")throw new Error('"page.thumbnailImagePath" is undefined');if(typeof n.thumbnailImagePath!="string")throw new Error('"page.thumbnailImagePath" is not String');if(typeof n.imagePath=="undefined")throw new Error('"page.imagePath" is undefined');if(typeof n.imagePath!="string")throw new Error('"page.imagePath" is not String');}function p(n){e===null&&(e=$(document.createElement("div")),e.addClass("loading-large"),e.css("transform-origin","0px 0px 0px"),c.append(e));var t=y();e.css("transform","translate(0px, 0px) scale("+1/t+")").css("width",Number(n.width)*t+"em").css("height",Number(n.height)*t+"em");e.show()}function w(n){n.highResImageElement!==null?n.highResImageIsLoaded===!0?n.highResImageElement.show():n.lowResImageElement!==null&&(n.lowResImageIsLoaded===!0?n.lowResImageElement.show():p(n)):(p(n),n.lowResImageElement=$(document.createElement("img")),n.lowResImageElement.attr("src",n.thumbnailImagePath),n.lowResImageElement.hide(),n.highResImageElement=$(document.createElement("img")),n.highResImageElement.attr("src",n.imagePath),n.highResImageElement.hide(),n.lowResImageElement.one("load",{page:n},function(n){if(n.data.page.lowResImageIsLoaded=!0,n.data.page.id!==r.activePage.id){e.hide();return}n.data.page.highResImageIsLoaded!==!0&&(n.data.page.lowResImageElement.show(),e.hide())}).each(function(){this.complete&&$(this).trigger("load")}),n.highResImageElement.one("load",{page:n},function(n){if(n.data.page.highResImageIsLoaded=!0,n.data.page.lowResImageElement.remove(),n.data.page.lowResImageElement=null,n.data.page.id!==r.activePage.id){e.hide();return}n.data.page.lowResImageElement!==!0&&(n.data.page.highResImageElement.show(),e.hide())}).each(function(){this.complete&&$(this).trigger("load")}),c.append(n.lowResImageElement),c.append(n.highResImageElement))}function it(){var f=$(document.createElement("div")),r,u,i;f.addClass("doc-nav");r=$(document.createElement("div"));r.addClass("doc-nav-section");u=$(document.createElement("div"));u.addClass("select");i=$(document.createElement("select"));i.addClass("form-control input-btn");i.attr("data-ng-change","zoomChanged()");angular.forEach(t.getZoomOptions(),function(n){i.append('<option value="'+n.value+'">'+n.name+"<\/option>")});i.attr("data-ng-model","zoom.selectedValue");n(i)(v);u.append(i);r.append(u);f.append(r);a.append(f)}function rt(){var n=$(document.createElement("div"));n.addClass("doc-scroll");s=$(document.createElement("div"));s.addClass("doc-pages");h=$(document.createElement("div"));h.addClass("doc-page");h.css("font-size",Number(y())+"px").css("width",Number(r.activePage.width)+"em").css("height",Number(r.activePage.height)+"em");l=$(document.createElement("div"));l.addClass("doc-page-content");l.css("font-size","1px").css("width",Number(r.activePage.width)+"em").css("height",Number(r.activePage.height)+"em").css("-webkit-transform","scale("+Number(y())+")").css("transform","scale("+Number(y())+")");c=$(document.createElement("div"));c.addClass("doc-page-scan");l.append(c);h.append(l);s.append(h);n.append(s);a.append(n)}function ut(){var t=$(document.createElement("div")),i;return t.addClass("doc-thumbnails"),angular.forEach(r.pages,function(n){var i=$(document.createElement("div")),r,u;i.addClass("doc-thumbnail loading");i.attr("data-ng-click","setActivePage("+n.id+")");r=$(document.createElement("img"));r.attr("src",n.thumbnailImagePath);i.attr("data-ng-class",'{"doc-thumbnail-active": pageIsActive('+n.id+")}");r.one("load",function(){i.removeClass("loading")}).each(function(){this.complete&&$(this).trigger("load")});u=$(document.createElement("div"));u.addClass("doc-thumbnail-label");u.text(n.rank);i.append(r);i.append(u);t.append(i)}),n(t)(v),i=$(document.createElement("div")),i.addClass("doc-preview"),i.append(t),i}function ft(){var t,n,i;f.$addClass("panel-body panel-body-padding-top-only");t=$(document.createElement("div"));t.addClass("doc doc-lg");n=$(document.createElement("div"));n.addClass("doc-content");a=$(document.createElement("div"));a.addClass("doc-viewer");i=ut();n.append(a);n.append(i);t.append(n);g(t)}function b(n){o.isScrollByDraggingActive===!0&&(n.stopPropagation(),n.stopImmediatePropagation(),n.preventDefault(),s.scrollTop(s.scrollTop()-(n.clientY-o.y)),o.y=n.clientY,s.scrollLeft(s.scrollLeft()-(n.clientX-o.x)),o.x=n.clientX)}function k(){o.isScrollByDraggingActive=!1}function et(){c.bind("mousedown",function(n){o.x=n.clientX;o.y=n.clientY;o.isScrollByDraggingActive=!0});$(window).bind("mousemove",b);$(window).bind("mouseup",k)}function d(){nt();angular.forEach(r.pages,function(n){tt(n);n.lowResImageElement=null;n.highResImageElement=null;n.lowResImageIsLoaded=!1;n.highResImageIsLoaded=!1});r.activePage=r.pages[0];ft();i(function(){r.zoom.selectedValue=t.getInitialZoomOption(a.width(),a.height(),Number(r.activePage.width),Number(r.activePage.height)).value+"";rt();w(r.activePage);it();et()})}if(typeof r.pages=="undefined")throw new Error('"pages" is undefined');typeof r.isLoading=="undefined"&&(r.isLoading=!1);var s=null,h=null,c=null,l=null,a=null,e=null,v=null,o={x:0,y:0,isScrollByDraggingActive:!1};r.activePage=null;r.zoom={selectedValue:null};r.$watch(function(){return r.pages},function(n,t){n!==t&&d()});r.zoomChanged=function(){var n=y();h.css("font-size",n+"px");l.css("transform","scale("+n+")");e.css("transform","translate(0px, 0px) scale("+1/n+")").css("width",Number(r.activePage.width)*n+"em").css("height",Number(r.activePage.height)*n+"em")};r.pageIsActive=function(n){return r.activePage.id===n};r.setActivePage=function(n){if(n!==r.activePage.id){r.activePage.lowResImageElement!==null&&r.activePage.lowResImageElement.hide();r.activePage.highResImageElement.hide();var t=_.find(r.pages,function(t){return t.id===parseInt(n)});r.activePage=t;h.css("width",Number(r.activePage.width)+"em").css("height",Number(r.activePage.height)+"em");l.css("width",Number(r.activePage.width)+"em").css("height",Number(r.activePage.height)+"em");w(t);return}};r.$on("$destroy",function(){$(window).unbind("mousemove",b);$(window).unbind("mouseup",k)});d()}}}]);angular.module("sharedElements").directive("cVideoSection",["$compile","sectionService","constants","$timeout","$window",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');if(typeof i.section.title!="string")throw new Error('"section.title" is not a string');if(i.section.videoDetails===null||typeof i.section.videoDetails=="undefined")throw new Error('"section.videoDetails" is not a undefined or null');return!0}function f(){var f,s,h,e,c,l,a;o()&&(f=$("<div data-c-panel><attr-tools><\/attr-tools><attr-header><\/attr-header><attr-body><\/attr-body><\/div>"),f.addClass("panel-flush"),s=t.getEditToolActionElement(i.section,"handleAction(action)"),h=t.getSettingsToolActionElement(i.section,"handleAction(action)"),s!==null&&f.find("attr-tools").append(s),h!==null&&f.find("attr-tools").append(h),e=f.find("attr-body"),i.section.showTitle===!0?(c=f.find("attr-header"),l=t.getTitleElement(i.section),l!==null&&c.append(l),a=t.getDescriptionElement(i.section),a!==null&&c.append(a)):e.addClass("panel-no-title"),i.section.showTitle===!1?e.addClass("panel-no-title"):e.addClass("panel-body-padding-top-only"),e.append('<div data-c-video data-video-details="section.videoDetails" data-on-action="handleAction(action)"><\/div>'),$(r).append(n(f)(u)))}var u=null;i.logView=function(){i.handleSectionAction("log-view",i.section)};i.handleAction=function(n,t){if(typeof n=="undefined")throw new Error('"action" is not defined');switch(n){case"log-view":i.handleSectionAction("log-view",i.section,{id:i.section.widgetId});break;default:i.handleSectionAction(n,i.section,t)}};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()});f()}}}]);angular.module("sharedElements").directive("cWelcomeMessageSection",["$compile","sectionService",function(n,t){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(i,r){function e(){u!==null&&u.$destroy();u=i.$new();r.html("")}function o(){if(e(),i.section===null)return!1;if(Object.prototype.toString.call(i.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof i.section.id=="undefined")throw new Error('"section.id" is undefined');return!0}function f(){var f,s,h,e;o()!==!1&&(f=$(document.createElement("div")),f.attr("data-c-panel",""),f.html("<attr-tools><\/attr-tools><attr-body><\/attr-body>"),s=t.getManageToolActionElement(i.section,"handleAction(action)"),h=t.getSettingsToolActionElement(i.section,"handleAction(action)"),s!==null&&f.find("attr-tools").append(s),h!==null&&f.find("attr-tools").append(h),e=$(document.createElement("div")),e.attr("data-c-welcome-message-lister",""),e.attr("data-welcome-messages","section.welcomeMessages"),f.find("attr-body").attr("data-ng-class",'{"panel-body-padding": section.welcomeMessages !== null}').append(e),$(r).append(n(f)(u)))}if(typeof i.section=="undefined")throw new Error('"section" is undefined');var u=null;i.handleAction=function(n,t){i.handleSectionAction(n,i.section,t)};i.handleSectionAction=function(n,t,r){if(typeof n=="undefined")throw"Action is unspecified";if(typeof t=="undefined")throw"Section is unspecified";i.onAction({action:n,section:t,data:r})};i.$watch(function(){return i.section},function(n,t){n!==t&&f()});f()}}}]);angular.module("sharedElements").directive("cSectionManageButton",["$compile","testService","actionService",function(n,t,i){return{restrict:"E",scope:{action:"=",onAction:"&?"},link:function(t,r){function e(){u!==null&&u.$destroy();u=t.$new();r.html("")}function o(){if(e(),typeof t.action=="undefined")throw new Error('"action" is undefined');return t.action!==null}function f(){var f,e;o()!==!1&&(f=$(document.createElement("div")),f.addClass("panel-tool-icon-wrapper"),e=i.getActionElement(t.action),e.addClass("panel-tool-icon icon-pencil"),e.append('<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="10" height="10" viewBox="0 0 528.899 528.899" style="enable-background:new 0 0 528.899 528.899;" xml:space="preserve">   <g><path d="M328.883,89.125l107.59,107.589l-272.34,272.34L56.604,361.465L328.883,89.125z M518.113,63.177l-47.981-47.981c-18.543-18.543-48.653-18.543-67.259,0l-45.961,45.961l107.59,107.59l53.611-53.611C532.495,100.753,532.495,77.559,518.113,63.177z M0.3,512.69c-1.958,8.812,5.998,16.708,14.811,14.565l119.891-29.069L27.473,390.597L0.3,512.69z"/><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><\/svg>'),f.append(e),r.append(f),n(r.contents())(u))}var u=null;t.$watch(function(){return t.action},function(n,t){typeof n!="undefined"&&n!==t&&f()},!0);t.handleAction=function(n){t.onAction({action:n})};f()}}}]);angular.module("sharedElements").directive("cSectionSettingsButton",["$compile","helpService","actionService",function(n,t,i){return{restrict:"E",scope:{actions:"=",onAction:"&",tName:"@"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){return(o(),r.actions===null)?!1:(t.validateActions(r.actions),!0)}function h(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}if(n.name!==null){if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function c(){var n=$(document.createElement("div")),f,o,e,u,s;for(n.addClass("dropdown"),n.attr("data-c-dropdown",""),n.attr("data-unit-t-actions",""),n.attr("data-offset","-4"),n.append('<div class="panel-tool-icon-wrapper" data-c-dropdown-action>   <a href="javascript:;" class="panel-tool-icon icon-gear">       <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Capa_1" x="0px" y="0px" viewBox="0 0 21.589 21.589" style="enable-background:new 0 0 21.589 21.589;height: 12px;width: 12px;" xml:space="preserve">           <g><path d="M18.622,8.371l-0.545-1.295c0,0,1.268-2.861,1.156-2.971l-1.679-1.639c-0.116-0.113-2.978,1.193-2.978,1.193l-1.32-0.533   c0,0-1.166-2.9-1.326-2.9H9.561c-0.165,0-1.244,2.906-1.244,2.906L6.999,3.667c0,0-2.922-1.242-3.034-1.131L2.289,4.177   C2.173,4.29,3.507,7.093,3.507,7.093L2.962,8.386c0,0-2.962,1.141-2.962,1.295v2.322c0,0.162,2.969,1.219,2.969,1.219l0.545,1.291   c0,0-1.268,2.859-1.157,2.969l1.678,1.643c0.114,0.111,2.977-1.195,2.977-1.195l1.321,0.535c0,0,1.166,2.898,1.327,2.898h2.369   c0.164,0,1.244-2.906,1.244-2.906l1.322-0.535c0,0,2.916,1.242,3.029,1.133l1.678-1.641c0.117-0.115-1.22-2.916-1.22-2.916   l0.544-1.293c0,0,2.963-1.143,2.963-1.299v-2.32C21.59,9.425,18.622,8.371,18.622,8.371z M14.256,10.794   c0,1.867-1.553,3.387-3.461,3.387c-1.906,0-3.461-1.52-3.461-3.387s1.555-3.385,3.461-3.385   C12.704,7.41,14.256,8.927,14.256,10.794z"><\/path><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g><g><\/g>       <\/svg>   <\/a><\/div>'),f=$(document.createElement("ul")),f.addClass("dropdown-menu"),f.attr("data-c-dropdown-menu",""),o=0;o<r.actions.length;o++)e=r.actions[o],h(e),u=$(document.createElement("li")),u.addClass("item"),s=i.getActionElement(e),s.text(e.label),u.append(s),t.setTestAttribute(u,"instance",r.tName?r.tName:"main"),t.setTestAttribute(u,"action",e.label),f.append(u);return n.append(f),t.setTestAttribute(n,"section-settings-button",r.tName?r.tName:"main"),n}function e(){if(typeof r.actions=="undefined")throw new Error('"actions" is undefined');s()&&(u.append(c),n(u.contents())(f))}var f=null;r.$watch(function(){return r.actions},function(n,t){n!==t&&e()},!0);r.handleAction=function(n){r.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cSectionTabs",["$compile","$window",function(n,t){return{restrict:"A",scope:{tabs:"=",actionName:"=",onAction:"&"},link:function(i,r){function f(){var o,f,h,t,s;if(u!==null&&u.$destroy(),u=i.$new(),e=[],$(r).html(""),i.tabs!==null&&i.tabs.length!==0){for(o=$(document.createElement("ul")),o.addClass("nav nav-tabs"),f=0;f<i.tabs.length;f++)h=i.tabs[f],t=$(document.createElement("li")),h.isActive&&t.addClass("active"),t.attr("data-ng-click","tabClicked(tabs["+f+"])"),s=$(document.createElement("a")),s.attr("href","javascript:;"),s.text(h.label),t.append(s),t=n(t)(u),o.append(t),e.push(t);$(r).append(o)}}function o(){f();angular.element(t).bind("resize",function(){f()})}var u=null,e=[];i.tabClicked=function(n){if(!n.isActive)i.onAction({action:i.actionName,data:{tab:n}})};i.$watch(function(){return r.width()},function(n,t){n!==t&&f()});i.$watch(function(){return i.tabs},function(n,t){n!==t&&f()},!0);o()}}}]);angular.module("sharedElements").directive("cSettingsBreadcrumbs",["$location","helpService","appDetailsValue","$compile",function(n,t,i,r){return{restrict:"A",scope:{settingsSections:"="},link:function(u,f){function h(){e!==null&&e.$destroy();e=u.$new();f.html("")}function c(){if((f.html(""),i.navigation.logs.isVisible===!1)||u.settingsSections===null)return!1;if(Object.prototype.toString.call(u.settingsSections)!=="[object Array]")throw new Error('"settingsSections" is not Array');return!0}function l(n){if(typeof n.title=="undefined")throw new Error('"section.title" is undefined');if(typeof n.breadcrumbTitle=="undefined")throw new Error('"section.breadcrumbTitle" is undefined');if(n.title===null&&n.breadcrumbTitle===null)throw new Error('One of "section.title" or "section.breadcrumbTitle" have to be defined');if(n.title!==null&&typeof n.title!="string")throw new Error('"section.title" is not String');if(n.breadcrumbTitle!==null&&typeof n.breadcrumbTitle!="string")throw new Error('"section.breadcrumbTitle" is not String');if(typeof n.link=="undefined")throw new Error('"section.link" is undefined');if(n.link!==null&&typeof n.link!="string")throw new Error('"section.link" is not String');}function o(i){if(i===null)return null;var r=_.find(i,function(i){return t.replaceLinkHolders(i),t.linkStartsWith(n.path(),i.link)});return typeof r=="undefined"?null:r}function a(n,t){var r=$(document.createElement("li")),i,u;return n.link===null||t?(u=$(document.createElement("span")),u.text(n.breadcrumbTitle||n.title),r.append(u)):(i=$(document.createElement("a")),i.attr("href",n.link),i.text(n.breadcrumbTitle||n.title),r.append(i)),r}function v(){var c,s,h,n,u,o;return i.navigation.logs.items===null?null:(c=_.find(i.navigation.logs.items,function(n){return n.isVisible}),typeof c=="undefined")?null:(s="",typeof i.navigation.logs.icon!="undefined"&&(s='<i class="'+t.getMaterialIconClass(i.navigation.logs.icon)+' breadcrumb-icon icon-size-12 icon-spacer-small"><\/i>'),h=$(document.createElement("li")),n=$(document.createElement("div")),n.addClass("dropdown"),n.attr("data-c-dropdown",""),u=$(document.createElement("a")),u.attr("data-c-dropdown-action",""),u.attr("href","javascript:;"),u.html(s+i.navigation.logs.label+'<span class="caret breadcrumb-caret"><\/span>'),n.append(u),o=$(document.createElement("ul")),o.addClass("dropdown-menu"),o.attr("data-c-dropdown-menu",""),angular.forEach(i.navigation.logs.items,function(n){var t,i;n.isVisible!==!1&&(t=$(document.createElement("li")),t.addClass("item"),i=$(document.createElement("a")),i.attr("href",n.link),i.text(n.label),t.append(i),o.append(t))}),n.append(o),f.append(n),r(n)(e),h.append(n),h)}function y(n,r){var e=$(document.createElement("li")),u=null,f;return r?u=$(document.createElement("span")):(u=$(document.createElement("a")),u.attr("href","SettingsAndLogs/Settings")),n?(f="",typeof i.navigation.logs.icon!="undefined"&&(f='<i class="'+t.getMaterialIconClass(i.navigation.logs.icon)+' breadcrumb-icon icon-size-12 icon-spacer-small"><\/i>'),u.html(f+"Settings")):u.text("Settings"),e.append(u),e}function s(){var r;if(h(),c()){$(f).append('<div class="n-layout-breadcrumbs-wrapper">   <div class="n-layout-scroll hide-scrollbar n-layout-fill">       <ol class="breadcrumb"><\/ol>   <\/div><\/div>');var t=$(f).find("ol"),n=o(u.settingsSections),i=v();if(i!==null&&t.append(i),t.append(y(i===null,n===null)),n!==null)do l(n),r=o(n.sections),t.append(a(n,r===null)),n=r;while(n!==null)}}var e=null;if(typeof u.settingsSections=="undefined")throw new Error('"settingsSections" is undefined');s();u.$watch(function(){return u.settingsSections},function(n,t){n!==t&&s()})}}}]);angular.module("sharedElements").directive("cSettingsButton",["$compile","helpService","actionService","constants","listerService","translationHelperService","testService","appDetailsValue",function(n,t,i,r,u,f,e,o){return{restrict:"E",scope:{actions:"=",onAction:"&",lister:"=",listerStatus:"=",listerSettings:"=?",nestedTables:"=",exportActions:"=?"},link:function(s,h,c){function w(){if(k(),s.lister===null)return!1;if(Object.prototype.toString.call(s.lister)!=="[object Object]")throw new Error('"lister" is not Object');if(typeof s.listerSettings=="undefined")throw new Error('"listerSettings" is undefined');if(typeof s.listerSettings.columns=="undefined")throw new Error('"listerSettings.columns" is undefined');if(typeof s.listerStatus!="number")throw new Error('"listerStatus" is not Number');if(s.nestedTables!=null){if(Object.prototype.toString.call(s.nestedTables)!=="[object Array]")throw new Error('"nestedTables" is not Array');if(s.nestedTables.length===0)throw new Error('"nestedTables" is empty Array');}return s.listerStatus===r.listerStatus.DONE}function b(){return s.lister.exportLink==null?!1:t.showControlsRelatedWithListerData(s.lister,s.listerStatus)||t.showControlsRelatedWithMapData(s.lister,s.listerStatus)||t.showControlsRelatedWithBarChartData(s.lister,s.listerStatus)||t.showControlsRelatedWithTimelineData(s.lister,s.listerStatus)}function k(){l!==null&&l.$destroy();l=s.$new();c.$removeClass("btn-group");h.html("");h.css("display","none")}function v(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function d(){return _.filter(s.actions,function(n){return s.lister.layout===r.listerLayout.TABLE||n.name!=="manage-columns"})}function v(n){if(typeof n.label=="undefined")throw new Error('"action.label" is undefined');if(typeof n.label!="string")throw new Error('"action.label" is not String');if(n.label==="")throw new Error('"action.label" is empty');if(typeof n.link=="undefined")throw new Error('"action.link" is undefined');if(typeof n.name=="undefined")throw new Error('"action.name" is undefined');if(typeof n.targetBlank=="undefined")throw new Error('"action.targetBlank" is undefined');if(n.link!==null&&n.name!==null)throw new Error('"action.link" and "action.name" both cannot have values');if(n.link===null&&n.name===null)throw new Error('"action.link" or "action.name" must have value');if(n.link!==null){if(typeof n.link!="string")throw new Error('"action.link" is not String');if(n.link==="")throw new Error('"action.link" is empty');if(typeof n.targetBlank!="boolean")throw new Error('"action.targetBlank" is not Boolean');}else{if(typeof n.name!="string")throw new Error('"action.name" is not String');if(n.name==="")throw new Error('"action.name" is empty');}}function y(){var tt,p,a,it,rt,ut,g,k,r,y,ft;if(w()){if(c.$addClass("btn-group"),t.validateActions(s.actions),h.css("display","inline-block"),tt=$(document.createElement("c-dropdown")),tt.addClass("btn-group"),p=$(document.createElement("button")),p.addClass("btn"),p.addClass("btn-default"),p.addClass("btn-icon"),p.attr("data-c-dropdown-action",""),p.html('<i class="material_more_horiz"><\/i>'),t.setTestAttribute(p,"button","SettingsView"),tt.append(p),a=$(document.createElement("ul")),a.addClass("dropdown-menu"),a.attr("data-c-dropdown-menu",""),b()){if(it=$(document.createElement("li")),it.addClass("item"),e.setAttribute(it,"exporter-item","excel"),it.append('<a href="'+u.getExportToExcelLink(s.lister,!1,null,!1)+'" target="_blank" rel="noreferrer" >Export to Excel<\/a>'),a.append(it),rt=$(document.createElement("li")),rt.addClass("item"),e.setAttribute(rt,"exporter-item","print"),rt.append('<a href="'+u.getPrintLink(s.lister,!1,null,!1)+'" '+(o.isTestMode?"":' target="_blank" rel="noreferrer"')+">Print View<\/a>"),a.append(rt),s.nestedTables!==null&&(ut=$(document.createElement("li")),ut.addClass("item"),e.setAttribute(ut,"exporter-item","advanced"),ut.append('<a href="javascript:;" data-ng-click="showAdvancedDialog()">Advanced<\/a>'),a.append(ut)),typeof s.exportActions!="undefined"&&typeof s.onAction!="undefined")for(k=0;k<s.exportActions.length;k++)(r=s.exportActions[k],v(r),i.isActionVisible(r,s.lister,s.listerStatus,null)!==!1)&&(y=$(document.createElement("li")),y.addClass("item"),e.setAttribute(y,"exporter-item",r.label),g=$(document.createElement("a")),r.link===null?g.attr("data-ng-click",'handleAction("'+r.name+'")'):(g.attr("href",r.link),r.targetBlank===!0&&(g.attr("target","_blank"),g.attr("rel","noreferrer"))),g.text(r.label),y.append(g),a.append(y));a.append('<li class="item-divider"><\/li>')}var nt=null,et=!0,ot=d();for(k=0;k<ot.length;k++)r=ot[k],v(r),y=$(document.createElement("li")),y.addClass("item"),ft=i.getActionElement(r),ft.text(r.label),nt!==r.groupName&&(nt=r.groupName,et===!0?et=!1:a.append('<li class="item-divider"><\/li>'),typeof nt!="undefined"&&nt!==null&&nt.indexOf("group_")===-1&&a.append('<li class="item-header">'+nt+"<\/li>")),nt==="Saved Views"&&f.setTranslateAttribute(ft,!1),t.setTestAttribute(ft,"action",r.label),y.append(ft),a.append(y);tt.append(a);h.append(tt);n(h.contents())(l)}}function p(){y()}var a=null,l;if(typeof s.lister=="undefined")throw new Error('"lister" is undefined');if(typeof s.listerStatus=="undefined")throw new Error('"listerStatus" is undefined');l=null;s.showAdvancedDialog=function(){u.openAdvancedExportDialog(s.lister,s.nestedTables)};s.$watch(function(){return s.actions},function(n,t){n!==t&&typeof n!="undefined"&&p()},!0);s.$watch(function(){return s.listerStatus},function(n,t){n!==t&&y()});s.handleAction=function(n){if(typeof n=="undefined")throw"action is undefined";switch(n){case"save-as":u.openListerViewSaveAsDialog({lastViewId:a,onAction:s.onAction,pageComponent:s.listerSettings.pageComponent}).then(function(n){s.actions=n.actions.views;a=n.viewId},function(){});break;case"manage-views":u.openListerViewManagementDialog(s.listerSettings.pageComponent).then(function(n){s.actions=n.views},function(){});break;case"manage-columns":u.openManageColumnsDialog(s.lister,s.listerSettings,s.onAction);break;case"default-view":s.onAction({action:"load-default-view",data:{layout:s.lister.layout}});break;default:if(n.indexOf("load-view-")===0){var t=n.replace("load-view-",""),i=parseInt(t);a=t;s.onAction({action:"load-view",data:{viewId:i}})}else s.onAction({action:n,data:null})}};p()}}}]);angular.module("sharedElements").directive("cSettingsNavigation",function(){return{restrict:"A",scope:{settingsSections:"="},templateUrl:"js/shared/common/directives/settingsNavigation/settingsNavigation.html",link:function(n,t,i){i.$addClass("sidebar-settings")},controller:["$scope","$element","helpService","$location","testService",function(n,t,i,r,u){function o(){if(n.settingsSections===null)return!1;if(Object.prototype.toString.call(n.settingsSections)!=="[object Array]")throw new Error('"settingsSections" is not Array');return!0}function f(n){if(typeof n=="undefined")throw new Error('"section" is undefined');if(n===null)throw new Error('"section" is null');if(typeof n.title=="undefined")throw new Error('"section.title" is undefined');if(typeof n.title!="string")throw new Error('"section.title" is not string');if(typeof n.link=="undefined")throw new Error('"section.link" is undefined');if(typeof n.link!="string")throw new Error('"section.link" is not string');}function e(){var c,l,y,p,e,w,s,a,b,v,k,h;if(o()){for(c=_.find(n.settingsSections,function(n){return i.linkStartsWith(r.path(),n.link)}),c=c||null,l=null,c!==null&&(l=_.find(c.sections,function(n){return i.linkStartsWith(r.path(),n.link)})),l=l||null,y=$(document.createElement("div")),y.addClass("list-group-items"),p=0;p<n.settingsSections.length;p++)if(e=n.settingsSections[p],f(e),w=$(document.createElement("div")),w.addClass("list-group-item"),s=$(document.createElement("a")),s.addClass("list-group-item-link"),s.attr("href",e.link),s.text(e.title),u.setAttribute(s,"settings-nav-item",e.title),w.append(s),y.append(w),e===c){if(l===null&&s.addClass("active"),a=e.sections,a===null)continue;if(typeof a=="undefined")throw new Error('"subSections" is undefined');if(Object.prototype.toString.call(a)!=="[object Array]")throw new Error('"subSections" is not Array');for(b=0;b<a.length;b++)v=a[b],f(v),k=$(document.createElement("div")),k.addClass("list-group-item nested"),h=$(document.createElement("a")),h.addClass("list-group-item-link"),v===l&&h.addClass("active"),h.attr("href",v.link),h.text(v.title),u.setAttribute(h,"settings-nav-child",v.title),k.append(h),y.append(k)}$(t[0]).find("div.list-group").empty();$(t[0]).find("div.list-group").append(y)}}if(typeof n.settingsSections=="undefined")throw new Error('"settingsSections" is undefined');n.$watch(function(){return n.settingsSections},function(n,t){n!==t&&e()},!1);e()}]}});angular.module("sharedElements").directive("cSmartPicklist",["$compile","helpService","$timeout","testService","translationHelperService","constants",function(n,t,i,r,u,f){return{restrict:"A",scope:{value:"=",listItems:"=",name:"@",form:"=",onChange:"&?",isRequired:"@?",revalidateOnChange:"=",invalidValues:"&?",defaultValue:"@?",dependsOn:"=?",validatorName:"@?",onValidation:"&?",label:"@?",setTranslate:"=?",translateGroupName:"=?",isDisabled:"@?",placeholder:"=?",createNewFunction:"&?",createNewText:"=?"},link:function(e,o,s){function p(){return e.defaultValue===""?undefined:e.defaultValue}function g(){return e.listItems!==null&&e.listItems.length>0}function ht(){if(typeof e.createNewFunction!="undefined"&&p()!==undefined){var n=_.find(e.listItems,function(n){return n.value==p()});typeof n!="undefined"&&(n.text="Create New/Select Existing")}}function ct(){g()===!0&&e.listItems.forEach(n=>{t.initializeSearachableListItem(n)})}function ui(n){var t=n.data.item;e.value=t.value}function lt(){var t=$(window).height(),i=h.offset().top,r=b.offset().top,u=t-(i-r)-100,n=u+"px";h.css("max-height",n);c.data("max",n)}function at(){c.css("minWidth",$(o).closest(".select").width()+"px")}function ft(){return e.listItems.length>ti||e.createNewFunction!==undefined}function ot(n){ut.push(n)}function fi(){return ut.length>0}function vt(){for(var i,n="",t=0;t<ut.length;t++)n+=String.fromCharCode(ut[t]);return n===""?null:(n=n.toLowerCase(),i=_.find(e.listItems,function(t){return t.getTranslatedText().toLowerCase().indexOf(n,0)===0&&t.isEnabled===!0}),typeof i=="undefined"?null:i)}function yt(){et!==null&&i.cancel(et);et=i(function(){ut=[]},ii)}function ei(){v!==null&&v.$destroy();v=e.$new();o.html("");c!==null&&c.remove()}function oi(){var o=l.currentIndex+st>l.items.length?l.items.length:l.currentIndex+st,i=null,n,t,r;for(l.currentIndex!==0&&(i=l.items[l.currentIndex-1].groupName),l.currentIndex;l.currentIndex<o;l.currentIndex++){if(l.cancel===!0)return;if(n=l.items[l.currentIndex],v==null||!v.searchValue||n.type===f.dropdownItemTypes.NORMAL){n.groupName!==null&&n.groupName!==""&&(i!==n.groupName&&(l.currentIndex!==0&&h.append('<li class="item-divider"><\/li>'),t=$(document.createElement("li")),t.addClass("item-header"),t.text(n.groupName),u.setTranslateAttribute(t,e.translateGroupName),u.setTranslatedCallback(t,function(n,t){var i=_.filter(e.listItems,function(n){return n.groupName===t.groupName});i.forEach(t=>{t.groupTranslation=n})},n),h.append(t)),i=n.groupName);switch(n.type){case f.dropdownItemTypes.NORMAL:case f.dropdownItemTypes.ADDITIONAL_TEXT:r=hi(n);break;case f.dropdownItemTypes.CREATE:r=pt(n.text);break;default:throw new Error("unknown ListItem type "+n.type);}h.append(r)}}}function si(){var n=_.find(e.listItems,function(n){return n.getTranslatedText()!==null&&n.getTranslatedText().toLowerCase()==v.searchValue.toLowerCase()});return typeof n!="undefined"}function hi(n){var i=$(document.createElement("li")),o,s,h;if(n.materialIconValue!==null?i.addClass("item-icon"):i.addClass("item"),u.setTranslateAttribute(i,e.setTranslate===!0||n.translate===!0),n.isEnabled===!0?i.click({item:n},ui):i.addClass("disabled"),l.activeItem!==undefined&&l.activeItem!==null&&l.activeItem===n.value&&(i.addClass("active"),i.bind("touchmove",function(n){n.preventDefault();n.stopPropagation()})),n.materialIconValue!==null&&(o=$(document.createElement("i")),o.addClass(t.getMaterialIconClass(n.materialIconValue)),o.addClass("icon-small"),i.append(o)),s=$(document.createElement("span")),s.text(n.text),u.setTranslatedCallback(s,function(n,t){t.translation=n},n),i.append(s),n.type===f.dropdownItemTypes.ADDITIONAL_TEXT){if(typeof n.additionalData!="string")throw new Error("Missing additionalData for ListItem");h=$(document.createElement("span"));h.addClass("additional-data");h.text(n.additionalData);i.append(h)}return r.setAttribute(i,"smart-picklist-item",n.text),i}function pt(n,i=null){var r=$(document.createElement("li")),f;return r.addClass("item"),f=u.wrapTextInVar('<span class="new-value skin-color-link skin-color-link-background">'+t.htmlEncode(n)+"<\/span>",u.variableName.VALUE,!1),r.html("<span>"+e.createNewText+": "+f+"<\/span>"),r.click(function(){e.createNewFunction({value:i})}),r}function wt(){var n,f,t,u;if(l.cancel!==!0){if(l.currentIndex>=l.items.length){h.focusin();typeof e.createNewFunction!="undefined"?v.searchValue===""||si()?l.items.length===0&&(t=$(document.createElement("li")),t.addClass("item-no-matched"),t.html("<span>No items<\/span>"),t.click(function(n){n.preventDefault();n.stopPropagation()}),h.append(t)):(f=pt(v.searchValue,v.searchValue),r.setAttribute(f,"smart-picklist-item-new",v.searchValue),l.items.length===0&&f.addClass("active"),l.items.length!==0&&h.append('<li class="item-divider"><\/li>'),h.append(f)):l.items.length===0&&(u=$(document.createElement("li")),u.addClass("item-no-matched"),u.html("<span>No items matched<\/span>"),u.click(function(n){n.preventDefault();n.stopPropagation()}),h.append(u));rt===!0&&(n=h.find(".active"),n.length>0&&h.scrollTop(n.offset().top-h.offset().top+h.scrollTop()));rt=!1;return}rt===!0&&(n=h.find(".active"),n.length>0&&(h.scrollTop(n.offset().top-h.offset().top+h.scrollTop()),rt=!1));oi();i(function(){wt()},ni)}}function bt(n){l.cancel=!0;n===null&&c!==null&&c.remove();k!==null&&(ft()?k.css("display","block"):k.css("display","none"));h!==null&&(h.remove(),h=$(document.createElement("ul")),h.addClass("dropdown-menu-items"),h.attr("tabindex","0"),h.keydown(kt),t.isMobileDevice()===!0?h.css("max-height",c.data("max")):h.css("max-height",c.data("max-height-desktop")),b.append(h));var i=_.find(n,function(n){return n.value==e.value});i!==undefined&&i!==null?i=i.value:n.length>0&&(i=n[0].value);p()!==undefined&&(n=_.filter(n,function(n){return n.value!=p()}));l={currentIndex:0,items:n,cancel:!1,activeItem:i};wt()}function kt(n){var i,e,s,u,c,l,f,a,v;if(ft()===!1&&yt(),n.which===27){t.closeDropdownMenus();o.focus();return}if(i=h.find(".active"),i.length===0){if(i=h.find(".item:not(.disabled)").first(),i.length===0)return;i.addClass("active");return}ft()===!1&&ot(n.which);var r=h.offset().top,y=h.scrollTop(),p=h.height();switch(n.which){case 38:if(n.preventDefault(),n.stopPropagation(),e=i.prevAll(".item:not(.disabled)"),e.length===0)return;s=e.first();i.removeClass("active");s.addClass("active");u=s.offset().top;r<u&&r+p>u||h.scrollTop(u-r+y);break;case 40:if(n.preventDefault(),n.stopPropagation(),c=i.nextAll(".item:not(.disabled)"),c.length===0)return;l=c.first();i.removeClass("active");l.addClass("active");f=l.offset().top;r<f&&r+p>f||h.scrollTop(f-r+y);break;case 9:n.preventDefault();n.stopPropagation();i.click();o.focus();break;case 13:n.preventDefault();n.stopPropagation();i.click();o.focus();break;case 32:break;default:ft()===!1&&(a=vt(),a!==null&&(i.removeClass("active"),v=h.find('.item:contains("'+a.getTranslatedText()+'")'),v.length===1&&v.addClass("active")))}}function ci(){if(t.isMobileDevice()!==!1){var i=o.closest(t.scrollableElementsSelector),n=$(window).scrollTop();it=i.length>0?o.offset().top-n:n}}function dt(){t.isMobileDevice()!==!1&&i(function(){if(!(it<=0)){var n=o.closest(t.scrollableElementsSelector);n.length>0?$(n[0]).scrollTop(it):$(window).scrollTop(it);it=0}},0)}function li(n){var u,f,s;yt();var r=null,t=null,i=e.listItems;switch(n.which){case 9:break;case 27:break;case 37:case 38:if(n.preventDefault(),n.stopPropagation(),r=_.find(i,function(n){return n.value==e.value}),r!==undefined){if(t=_.indexOf(i,r),t===0)return;for(t;t>0;t--)if(u=i[t-1],u.isEnabled===!0){e.$apply(function(){e.value=u.value});break}}break;case 39:case 40:if(n.preventDefault(),n.stopPropagation(),r=_.find(i,function(n){return n.value==e.value}),r!==undefined){if(t=_.indexOf(i,r),t===i.length-1)return;for(t;t<i.length-1;t++)if(f=i[t+1],f.isEnabled===!0){e.$apply(function(){e.value=f.value});break}}break;case 13:n.preventDefault();n.stopPropagation();o.click();break;case 32:n.preventDefault();n.stopPropagation();fi()===!0?ot(n.which):o.click();break;default:ot(n.which);s=vt();s!==null&&e.$apply(function(){e.value=s.value})}}function ai(){lt()}function vi(n){v.searchValue="";rt=!0;g()===!0&&(bt(e.listItems),t.isMobileDevice()===!1?at():c.data("max-height-desktop",""));n.resolve()}function yi(){c!==null&&(t.isMobileDevice()===!1?(c.data("max-height-desktop",h.css("max-height")),at(),k.css("display")!=="none"?a.focus():h.focus()):(c.focus(),lt()))}function gt(){var rt,f,s,it,l;if(ei(),e.value!==null){ht();ct();e.label!==null&&typeof e.label!="undefined"&&e.label!==""&&(rt=$('<span class="inline-label colon-and-space">[[exec[[label]]exec]]<\/span>'),o.append(rt));f=$(document.createElement("i"));f.addClass("icon-size-20 picklist-icon");f.attr("data-ng-class","getSelectedOptionMaterialIconClass()");f.attr("data-ng-if","getSelectedOptionMaterialIconClass() !== null");o.append(f);d=$(document.createElement("span"));d.attr("data-ng-bind","getSelectedOptionText()");d.addClass("selected-value");o.append(d);indicatorWrapper=$(document.createElement("div"));indicatorWrapper.addClass("picklist-indicators");o.append(indicatorWrapper);p()!==undefined&&(w=$(document.createElement("div")),w.addClass("clear-button"),w.append($('<i icon="remove-small"><\/i>')),w.attr("data-ng-click","clearSelectedValue($event)"),indicatorWrapper.append(w),tt=$(document.createElement("span")),tt.addClass("indicator-separator"),indicatorWrapper.append(tt));caretElement=$('<span class="caret"><\/span');indicatorWrapper.append(caretElement);y=$(document.createElement("select"));y.attr("name",e.name);y.addClass("form-control");y.attr("data-ng-model","value");y.attr("style","display:none");(e.isRequired==="true"||typeof e.dependsOn!="undefined"||typeof e.validatorName!="undefined"&&e.validatorName!==null||typeof e.invalidValues!="undefined"&&typeof e.invalidValues()!="undefined")&&(y.attr("data-c-validator",""),typeof e.revalidateOnChange!="undefined"&&y.attr("data-revalidate-on-change","revalidateOnChange"),typeof e.dependsOn!="undefined"&&y.attr("data-depends-on","dependsOn"),s=[],e.isRequired==="true"&&s.push("picklistRequired"),typeof e.invalidValues!="undefined"&&typeof e.invalidValues()!="undefined"&&(s.push("invalidValues"),y.attr("data-invalid-values",e.invalidValues())),s.length!==0&&y.attr("data-ng-attr-data-validators","["+s.join(",")+"]"),typeof e.validatorName!="undefined"&&e.validatorName!==null&&y.attr("data-async-validation-function","validate(value)"));p()!=null&&y.attr("data-default-value",p());o.append(y);o.keydown(li);c=$(document.createElement("div"));c.addClass("dropdown-menu");c.data("max","100%");c.data("max-height-desktop","");r.setAttribute(c,"instance",e.name);i(function(){var n=t.getTestAttributes($(o));n!==null&&$.each(n,function(){c.attr(this.name+"-items",this.value)})});it=$(document.createElement("div"));it.addClass("dropdown-menu-overlay");l=$(document.createElement("div"));l.addClass("dropdown-menu-close");l.append('<i icon="remove"><\/i>');b=$(document.createElement("div"));b.addClass("dropdown-menu-content");u.setTranslateAttributeBasedOnParent(b,o);k=$(document.createElement("div"));k.addClass("search-panel");a!==null&&(a.remove(),a.off("focusin"),a.off("keydown"));a=$(document.createElement("input"));a.addClass("form-control");a.attr("data-close-on-inside-click","false");a.attr("type","text");a.attr("data-ng-model","searchValue");typeof e.placeholder!="undefined"&&!0&&a.attr("placeholder",e.placeholder);a.keydown(kt);a.focusin(ci);e.label!==null&&typeof e.label!="undefined"&&e.label!==""?r.setAttribute(a,"smart-picklist-search-field",e.label):r.setAttribute(a,"smart-picklist-search-field",e.name);$(o).on("dropdownclosed",dt);k.append(a);h=$(document.createElement("ul"));h.addClass("dropdown-menu-items");b.append(k);b.append(h);c.append(it);c.append(l);c.append(b);c.appendTo($("body"));n(c)(v);n(o.contents())(v);nt={actionElement:ri,menuElement:c,beforeCallback:vi,afterCallback:yi,preventOpen:e.isDisabled==="true"||g()===!1};t.initializeDropdown(nt);r.setAttribute(o,"ready","true")}}function pi(){if(e.createNewFunction!==undefined&&(e.createNewText===undefined||e.createNewText===null))throw new Error('"createNewText" is not defined');s.$addClass("smart-picklist");s.$set("tabindex","0");gt()}var ni=20,st=50,ti=10,ii=650,v=null,ri=$(o).closest(".select"),nt=null,d=null,w=null,tt=null,y=null,c=null,b=null,h=null,k=null,a=null,l={currentIndex:0,items:null,cancel:!1,activeItem:null},it=0,rt=!0,et=null,ut=[];e.searchValue="";e.clearSelectedValue=function(n){n.stopPropagation();e.value=p();gt()};e.$watch(function(){return v.searchValue},function(n,t){if(n!==t){var i=e.listItems;i!==null&&(n!==null&&n!==""&&(i=_.filter(i,function(t){return t.search(n)})),bt(i))}});e.$watch(function(){return e.value},function(n,t){n!==null&&(w!==null&&(e.value!=p()?w.show():w.hide()),tt!==null&&(e.value!=p()?tt.show():tt.hide()),n!==t)&&typeof e.onChange!="undefined"&&e.onChange()});e.$watch(function(){return e.isDisabled},function(n,t){n!==t&&nt!==null&&(nt.preventOpen=n==="true"||g()===!1)},!1);e.$watch(function(){return e.listItems},function(n,t){n!==t&&(nt!==null&&(nt.preventOpen=e.isDisabled==="true"||g()===!1),ht(),ct())});e.$on("$destroy",function(){c!==null&&c.remove();$(o).off("dropdownclosed",dt);$(window).unbind("resize",ai)});e.getSelectedOptionText=function(){if(g()===!1)return u.removeTranslateAttribute(d),"Loading...";var n=_.find(e.listItems,function(n){return n.value==e.value});return e.setTranslate===!0||n.translate===!0?u.removeTranslateAttribute(d):u.setTranslateAttribute(d,!1),_.find(e.listItems,function(n){return n.value==e.value}).text};e.getSelectedOptionMaterialIconClass=function(){if(g()===!1)return null;var n=_.find(e.listItems,function(n){return n.value==e.value});return n.materialIconValue===null?null:t.getMaterialIconClass(n.materialIconValue)};e.validate=function(n){if(typeof e.onValidation=="undefined")throw new Error('"onValidation" is not defined');return e.onValidation({name:e.validatorName,value:n})};pi()}}}]);angular.module("sharedElements").directive("cSmartPicklistFilter",["$compile","helpService","$timeout","testService","$q","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",scope:{listItems:"=",name:"@",onChange:"&?",label:"@?",setTranslate:"=?",translateGroupName:"=?",isDisabled:"=?"},link:function(u,e,o){function w(){return u.listItems!==null&&u.listItems.length>0}function et(){w()===!0&&u.listItems.forEach(n=>{t.initializeSearachableListItem(n)})}function bt(){t.isMobileDevice()===!1&&(t.recalculateDropdownMenuPosition(ft,h,!0,!1,0,null),s.focus())}function kt(n){return parseInt(n.value)<=0}function d(){var n=_.filter(u.listItems,function(n){return n.isDefault===!0&&kt(n)===!0});if(n.length===0)return null;if(n.length>1)throw new Error("Multiple special default items:",n);return n[0]}function dt(n){var t=d(),r;t.isSelected===!0&&(t.isSelected=!1);r=_.find(u.listItems,function(t){return t.value===n.data.item.value});r.isSelected=!0;i(function(){rt(ht(a.searchValue,u.listItems));bt();u.onChange()})}function ot(){var t=$(window).height(),i=s.offset().top,r=y.offset().top,u=t-(i-r)-100,n=u+"px";s.css("max-height",n);h.data("max",n)}function st(){h.css("minWidth",$(e).closest(".select").width()+"px")}function nt(){return u.listItems.length>pt}function it(n){k.push(n)}function gt(){return k.length>0}function ni(){for(var i,n="",t=0;t<k.length;t++)n+=String.fromCharCode(k[t]);return n===""?null:(n=n.toLowerCase(),i=_.find(u.listItems,function(t){return t.getTranslatedText().toLowerCase().indexOf(n,0)===0}),typeof i=="undefined"?null:i)}function ht(n,t){return n===null||n===""?t:_.filter(t,function(t){return t.search(n)})}function ct(){tt!==null&&i.cancel(tt);tt=i(function(){k=[]},wt)}function ti(){a!==null&&a.$destroy();a=u.$new();e.html("");h!==null&&h.remove()}function ii(){var l=c.currentIndex+ut>c.items.length?c.items.length:c.currentIndex+ut,h=null,n,r,i,e,o;for(c.currentIndex!==0&&(h=c.items[c.currentIndex-1].groupName),c.currentIndex;c.currentIndex<l;c.currentIndex++){if(c.cancel===!0)return;n=c.items[c.currentIndex];n.groupName!==null&&n.groupName!==""&&(h!==n.groupName&&(c.currentIndex!==0&&s.append('<li class="item-divider"><\/li>'),r=$(document.createElement("li")),r.addClass("item-header"),r.text(n.groupName),f.setTranslateAttribute(r,u.translateGroupName),f.setTranslatedCallback(r,function(n,t){var i=_.filter(u.listItems,function(n){return n.groupName===t.groupName});i.forEach(t=>{t.groupTranslation=n})},n),s.append(r)),h=n.groupName);i=$(document.createElement("li"));n.materialIconValue!==null?i.addClass("item-icon"):i.addClass("item");f.setTranslateAttribute(i,u.setTranslate===!0||n.translate===!0);n.isEnabled===!0?i.click({item:n},dt):i.addClass("disabled");c.activeItem!==undefined&&c.activeItem!==null&&c.activeItem===n.value&&(i.addClass("active"),i.bind("touchmove",function(n){n.preventDefault();n.stopPropagation()}));n.materialIconValue!==null&&(e=$(document.createElement("i")),e.addClass(t.getMaterialIconClass(n.materialIconValue)),e.addClass("icon-small"),i.append(e));o=$(document.createElement("span"));o.text(n.text);f.setTranslatedCallback(o,function(n,t){t.translation=n},n);i.append(o);t.setTestAttribute(i,"smart-picklist-item",n.text);s.append(i)}}function lt(){var n,r,t;if(c.cancel!==!0){if(c.currentIndex>=c.items.length){s.focusin();c.items.length===0&&(a.searchValue===""&&v.css("display","none"),r=a.searchValue===""?"No items":"No items matched",t=$(document.createElement("li")),t.addClass("item-no-matched"),t.html("<span>"+r+"<\/span>"),t.click(function(n){n.preventDefault();n.stopPropagation()}),s.append(t));b===!0&&(n=s.find(".active"),n.length>0&&s.scrollTop(n.offset().top-s.offset().top+s.scrollTop()));b=!1;return}b===!0&&(n=s.find(".active"),n.length>0&&(s.scrollTop(n.offset().top-s.offset().top+s.scrollTop()),b=!1));ii();i(function(){lt()},yt)}}function rt(n){c.cancel=!0;n=_.filter(n,function(n){return n.isSelected===!1&&d()!==n});n===null&&h!==null&&h.remove();v!==null&&(nt()?v.css("display","block"):v.css("display","none"));s!==null&&(s.remove(),s=$(document.createElement("ul")),s.addClass("dropdown-menu-items"),s.attr("tabindex","0"),s.keydown(at),t.isMobileDevice()===!0?s.css("max-height",h.data("max")):s.css("max-height",h.data("max-height-desktop")),y.append(s));var i=_.find(n,function(n){return n.isSelected===!1&&d()!==n});i!==undefined&&i!==null&&(i=i.value);c={currentIndex:0,items:n,cancel:!1,activeItem:i};lt()}function at(n){var i,o,h,u,c,l,f,a,v;if(nt()===!1&&ct(),n.which===27){t.closeDropdownMenus();e.focus();return}if(i=s.find(".active"),i.length!==0){nt()===!1&&it(n.which);var r=s.offset().top,y=s.scrollTop(),p=s.height();switch(n.which){case 38:if(n.preventDefault(),n.stopPropagation(),o=i.prevAll(".item:not(.disabled)"),o.length===0)return;h=o.first();i.removeClass("active");h.addClass("active");u=h.offset().top;r<u&&r+p>u||s.scrollTop(u-r+y);break;case 40:if(n.preventDefault(),n.stopPropagation(),c=i.nextAll(".item:not(.disabled)"),c.length===0)return;l=c.first();i.removeClass("active");l.addClass("active");f=l.offset().top;r<f&&r+p>f||s.scrollTop(f-r+y);break;case 9:n.preventDefault();n.stopPropagation();i.click();e.focus();break;case 13:n.preventDefault();n.stopPropagation();i.click();e.focus();break;case 32:break;default:nt()===!1&&(a=ni(),a!==null&&(i.removeClass("active"),v=s.find('.item:contains("'+a.getTranslatedText()+'")'),v.length===1&&v.addClass("active")))}}}function ri(){if(t.isMobileDevice()!==!1){var i=e.closest(t.scrollableElementsSelector),n=$(window).scrollTop();p=i.length>0?e.offset().top-n:n}}function vt(){t.isMobileDevice()!==!1&&i(function(){if(!(p<=0)){var n=e.closest(t.scrollableElementsSelector);n.length>0?$(n[0]).scrollTop(p):$(window).scrollTop(p);p=0}},0)}function ui(n){ct();var i=u.listItems;switch(n.which){case 9:break;case 27:t.closeDropdownMenus();e.focus();break;case 37:case 38:n.preventDefault();n.stopPropagation();break;case 39:case 40:n.preventDefault();n.stopPropagation();break;case 13:n.preventDefault();n.stopPropagation();e.click();break;case 32:n.preventDefault();n.stopPropagation();gt()===!0?it(n.which):e.click();break;default:it(n.which)}}function fi(){ot()}function ei(n){a.searchValue="";b=!0;w()===!0&&(rt(u.listItems),t.isMobileDevice()===!1?st():h.data("max-height-desktop",""));n.resolve()}function oi(){h!==null&&(t.isMobileDevice()===!1?(h.data("max-height-desktop",s.css("max-height")),st(),v.css("display")!=="none"?l.focus():s.focus()):(h.focus(),ot()))}function si(){var p,c,it,b,o,k,d,tt,nt;if(ti(),u.value!==null){et();p=$(document.createElement("div"));p.addClass("smart-picklist-filter-wrapper");c=$(document.createElement("div"));c.addClass("value-wrapper");u.label!==null&&typeof u.label!="undefined"&&u.label!==""&&(it=$('<span class="inline-label">[[exec[[label]]exec]]: <\/span>'),c.append(it));b=$(document.createElement("span"));b.addClass("selected-value");b.attr("data-ng-if","isDefaultSpecialItemSelected() === true");b.attr("data-ng-bind","getDefaultSpecialItemText()");c.append(b);o=$(document.createElement("span"));o.addClass("selected-item");o.attr("data-ng-if","isDefaultSpecialItemSelected() === false");o.attr("data-ng-repeat","item in listItems | filter: {'isSelected':'true'}");o.attr("data-ng-click","removeSelectedItem(item);$event.stopPropagation();");k=$(document.createElement("span"));k.addClass("selected-item-label");k.attr("data-ng-class","{'"+f.doNotTranslateClassName()+"' : isDoNotTranslateItem(item)}");k.html("[[exec[[item.text]]exec]]");o.append(k);d=$(document.createElement("span"));d.addClass("selected-item-remove");d.html('<i icon="remove-small"><\/i>');o.append(d);indicatorWrapper=$(document.createElement("div"));indicatorWrapper.addClass("picklist-indicators");caretElement=$('<span class="caret"><\/span');indicatorWrapper.append(caretElement);c.append(o);c.keydown(ui);p.append(c);p.append(indicatorWrapper);e.append(p);h=$(document.createElement("div"));h.addClass("dropdown-menu");h.data("max","100%");h.data("max-height-desktop","");h.attr("data-close-on-inside-click","false");r.setAttribute(h,"instance",u.name);i(function(){var n=t.getTestAttributes($(e));n!==null&&$.each(n,function(){h.attr(this.name+"-items",this.value)})});tt=$(document.createElement("div"));tt.addClass("dropdown-menu-overlay");nt=$(document.createElement("div"));nt.addClass("dropdown-menu-close");nt.append('<i icon="remove"><\/i>');y=$(document.createElement("div"));y.addClass("dropdown-menu-content");f.setTranslateAttributeBasedOnParent(y,e);v=$(document.createElement("div"));v.addClass("search-panel");l!==null&&(l.remove(),l.off("focusin"),l.off("keydown"));l=$(document.createElement("input"));l.addClass("form-control");l.attr("data-close-on-inside-click","false");l.attr("type","text");l.attr("data-ng-model","searchValue");l.keydown(at);l.focusin(ri);u.label!==null&&typeof u.label!="undefined"&&u.label!==""?r.setAttribute(l,"smart-picklist-search-field",u.label):r.setAttribute(l,"smart-picklist-search-field",u.name);$(e).on("dropdownclosed",vt);v.append(l);s=$(document.createElement("ul"));s.addClass("dropdown-menu-items");y.append(v);y.append(s);h.append(tt);h.append(nt);h.append(y);h.appendTo($("body"));n(h)(a);n(e.contents())(a);g={actionElement:ft,menuElement:h,beforeCallback:ei,afterCallback:oi,preventOpen:u.isDisabled===!0||w()===!1};t.initializeDropdown(g);r.setAttribute(e,"ready","true")}}function hi(){o.$addClass("smart-picklist smart-picklist-filter");o.$set("tabindex","0");si()}var yt=20,ut=50,pt=10,wt=650,a=null,ft=$(e).closest(".select"),g=null,h=null,y=null,s=null,v=null,l=null,c={currentIndex:0,items:null,cancel:!1,activeItem:null},p=0,b=!0,tt=null,k=[];u.searchValue="";u.$watch(function(){return a.searchValue},function(n,t){if(n!==t){var i=u.listItems;i!==null&&rt(ht(n,i))}});u.$watch(function(){return u.listItems},function(n,t){n!==t&&(g!==null&&(g.preventOpen=w()===!1),et())});u.$on("$destroy",function(){h!==null&&h.remove();$(e).off("dropdownclosed",vt);$(window).unbind("resize",fi)});u.removeSelectedItem=function(n){u.isDisabled!==!0&&(t.closeDropdownMenus(),n.isSelected=!1,_.filter(u.listItems,function(n){return n.isSelected===!0}).length===0&&$.each(u.listItems,function(n,t){t.isSelected=t.isDefault}),u.onChange())};u.isDefaultSpecialItemSelected=function(){if(w()===!1)return!0;var n=d();return n!==null&&n.isSelected===!0};u.getDefaultSpecialItemText=function(){if(w()===!1)return"Loading...";var n=d();return n.text};u.isDoNotTranslateItem=function(n){return!(u.setTranslate===!0||n.translate===!0)};hi()}}}]);angular.module("sharedElements").directive("cSorter",["$compile","constants","helpService","translationHelperService",function(n,t,i,r){return{restrict:"A",scope:{items:"=",mode:"=?",translate:"=?",onRemove:"&"},link:function(u,f){function e(n,t){if(n!==t){var i=u.items[n];u.items.splice(n,1);u.items.length<=t?u.items.push(angular.copy(i)):u.items.splice(t,0,angular.copy(i))}}function o(){var e,o,y,c,h,s,l,a,v;if(u.translate=angular.isDefined(u.translate)?u.translate:!0,f.addClass("sorting"),e=$(document.createElement("div")),e.attr("data-ng-repeat","item in items"),e.addClass("panel panel-default"),e.addClass("[[exec[[item.getCssClass()]]exec]]"),u.mode!==t.sorterMode.DELETE&&e.addClass("grab-cursor"),o=$(document.createElement("div")),o.addClass("sort-title"),o.html("[[exec[[item.getTitle()]]exec]]"),r.setTranslateAttribute(o,u.translate),i.setTestAttribute(o,"sorter-label","[[exec[[item.getTitle()]]exec]]"),e.append(o),u.items.length===0){y=$('<i class="icon-size-18 material_info"><\/i>');c=$("<p>No results.<\/p>");i.setTestAttribute(c,"no-data","No Items");h=$('<div class="alert alert-info"><\/div>');h.append(y);h.append(c);f.append(h);return}s=$('<div class="sort-actions"><\/div>');(u.mode===t.sorterMode.SORT||u.mode===t.sorterMode.SORT_AND_DELETE)&&(l=$('<i class="icon-size-18 icon-spacer-small material_arrow_upward sort-action small-only" data-ng-click="moveUp(item.getId())" aria-hidden="true"><\/i>'),i.setTestAttribute(l,"sorter-move-up","[[exec[[item.getTitle()]]exec]]"),s.append(l),a=$('<i class="icon-size-18 icon-spacer-small material_arrow_downward sort-action small-only" data-ng-click="moveDown(item.getId())" aria-hidden="true"><\/i>'),i.setTestAttribute(a,"sorter-move-down","[[exec[[item.getTitle()]]exec]]"),s.append(a));(u.mode===t.sorterMode.DELETE||u.mode===t.sorterMode.SORT_AND_DELETE)&&(v=$('<a href="javascript:;" data-ng-click="remove(item.getId())" data-ng-if="item.getIsFixed() == false" aria-hidden="true" class="option-remove sort-action"><i icon="remove-small"><\/i><\/a>'),i.setTestAttribute(v,"sorter-remove","[[exec[[item.getTitle()]]exec]]"),s.append(v));e.append(s);$(f).append(e);n(f.contents())(u);(u.mode===t.sorterMode.SORT||u.mode===t.sorterMode.SORT_AND_DELETE)&&$(f).sortable({cancel:".sort-actions",placeholder:"panel sortable-placeholder",cursor:"move",cursorAt:{top:0,left:0},tolerance:"pointer"}).disableSelection()}u.mode=angular.isDefined(u.mode)?u.mode:t.sorterMode.SORT;u.moveUp=function(n){if(u.mode===t.sorterMode.SORT||u.mode===t.sorterMode.SORT_AND_DELETE){var r=_.find(u.items,function(t){return t.getId()===n}),i=u.items.indexOf(r);i!==0&&e(i,i-1)}};u.moveDown=function(n){if(u.mode===t.sorterMode.SORT||u.mode===t.sorterMode.SORT_AND_DELETE){var r=_.find(u.items,function(t){return t.getId()===n}),i=u.items.indexOf(r);i!==u.items.length-1&&e(i,i+1)}};u.remove=function(n){if(u.mode===t.sorterMode.DELETE||u.mode===t.sorterMode.SORT_AND_DELETE){var i=_.find(u.items,function(t){return t.getId()===n}),r=u.items.indexOf(i);u.items.splice(r,1);u.onRemove({item:i})}};f.on("sortstart",function(n,t){t.item.sourceIndex=t.item.index();var i=u.items[t.item.sourceIndex].getPlaceholderCssClass();i!==""&&t.placeholder.addClass(i)});f.on("sortupdate",function(n,t){if(t.sender==null&&$(n.target).has(t.item).length!==0){var i=t.item.sourceIndex,r=t.item.index();u.$apply(function(){t.item.remove();e(i,r)})}});o()}}}]);angular.module("sharedElements").directive("cSubmitButton",["helpService",function(n){return{restrict:"A",scope:{pendingAction:"=",isEnabled:"=",form:"=?",showLoader:"=",onSubmit:"&?",loaderText:"@",isPrimary:"@",tName:"@"},link:function(t,i){function u(){return typeof t.isEnabled=="undefined"?!0:t.isEnabled}function e(){return typeof t.isPrimary=="undefined"?!0:t.isPrimary}function o(){$(i).addClass("btn");e()===!0?$(i).addClass("btn-primary"):$(i).addClass("btn-default");$(i).attr("type","button");n.setTestAttribute($(i),"submit-button",t.tName?t.tName:$(i).text());typeof t.loaderText=="undefined"&&(t.loaderText="Saving");u()===!1&&$(i).attr("disabled",!0);$(i).click(function(){r=!0;typeof t.form!="undefined"&&t.form.submitForm();typeof t.onSubmit!="undefined"&&t.$apply(function(){t.onSubmit()})})}var r=!1,f;if(typeof t.pendingAction=="undefined")throw new Error('"pendingAction" is undefined');if(typeof t.form!="undefined"&&typeof t.onSubmit!="undefined")throw new Error('"form" and "onSubmit" cannot be defined at the same time');f=$(i).text();t.$watch(function(){return t.isEnabled},function(){$(i).attr("disabled",u()===!1)});t.$watch(function(){return t.pendingAction},function(n,e){n!==e&&(u()&&$(i).attr("disabled",t.pendingAction),(r===!0||t.showLoader===!0)&&(t.pendingAction===!0&&($(i).addClass("working"),$(i).text(t.loaderText),$(i).attr("disabled",!0)),t.pendingAction===!1&&(r=!1,typeof t.showLoader!="undefined"&&(t.showLoader=!1),$(i).removeClass("working"),$(i).text(f))))},!0);o()}}}]);angular.module("sharedElements").directive("cSuccessMessage",function(){return{restrict:"A",scope:{messages:"="},link:function(n,t,i){function u(){if(n.messages===null)return!1;if(Object.prototype.toString.call(n.messages)!=="[object Array]")throw new Error('"messages" is not Array');return!0}function r(){(t.html(""),u()!==!1)&&(i.$addClass("panel panel-success"),angular.forEach(n.messages,function(n){if(typeof n=="undefined")throw new Error('"message.message" is undefined');if(typeof n!="string")throw new Error('"message.message" is not String');$(t).append('<div class="alert alert-success"><i class="icon-size-18 material_check_circle"><\/i><span class="format-wrap">'+n+"<\/span><\/div>")}))}if(typeof n.messages=="undefined")throw new Error('"messages" is undefined');n.$watch(function(){return n.messages},function(n,t){n!==t&&r()});r()}}});angular.module("sharedElements").directive("cSystemMessageLister",["$compile","helpService","systemMessageService","pageSharedDataFactory","translationHelperService",function(n,t,i,r,u){return{restrict:"A",scope:{messages:"=",autoRefresh:"@?"},link:function(f,e){function s(n){$(e).append(n)}function h(){var n=$(document.createElement("div")),t;n.attr("data-unit-t-no-data","");n.addClass("no-data alert alert-info");t=$(document.createElement("p"));t.text("No messages.");n.append(t);s(n)}function c(){if(f.messages===null)return h(),!1;if(Object.prototype.toString.call(f.messages)!=="[object Array]")throw new Error('"messages" is not Array');return!0}function l(n,i){var r=$(document.createElement("span"));return r.attr("data-unit-t-message-content",""),r.addClass("format-wrap message-content"),n.translate===!1?u.setTranslateAttribute(r,!1):u.setIsolateAttribute(r),r.html(n.message),f.actions[i]=t.bindActions(r,"actions["+i+"]"),r}function a(n){if(typeof n.message=="undefined")throw new Error('"message.message" is undefined');if(typeof n.message!="string")throw new Error('"message.message" is not String');if(typeof n.isError=="undefined")throw new Error('"message.isError" is undefined');if(typeof n.isError!="boolean")throw new Error('"message.isError" is not Boolean');}function o(){c()&&angular.forEach(f.messages,function(t,i){a(t);var r=$(document.createElement("div"));r.attr("data-unit-t-message","");r.addClass("alert");t.isError?r.addClass("alert-warning"):r.addClass("alert-info");r.append(n(l(t,i))(f));s(r)})}if(typeof f.messages=="undefined")throw new Error('"messages" is undefined');(typeof f.autoRefresh=="undefined"||f.autoRefresh==="true")&&(f.autoRefresh=!0);f.actions=[];o();f.openAdminSystemMessageDialog=function(n){t.openDialog({template:"js/shared/common/directives/systemMessageLister/adminSystemMessageView.html",controller:["$scope",function(u){u.form=null;u.pendingAction=!1;var e=_.find(f.messages,function(t){return t.adminMessage.id===n});u.message={title:e.adminMessage.title,description:t.toTrustedHtml(e.adminMessage.description)};u.dismiss=function(){u.pendingAction=!0;r.showProcessingMessage("Dismissing...");i.dismiss(n).then(function(n){r.setSystemMessages(n);r.showSuccessMessage("Dismissed!");u.pendingAction=!1;u.closeThisDialog()})}}]})};f.$watch(function(){return f.messages},function(n,t){n!==t&&($(e).html(""),o())});f.autoRefresh===!0&&f.$watch(function(){return r.getSystemMessages()},function(n,t){n!==t&&(f.messages=r.getSystemMessages(),$(e).html(""),o())});f.handleAction=function(n){switch(n){case"show-g2-review":r.openInternalUserReviewDialog();break;default:throw"Unknown action: "+n;}}}}}]);angular.module("sharedElements").directive("cTabs",["$compile","helpService","$timeout","translationHelperService",function(n,t,i,r){return{restrict:"A",scope:{tabs:"=",onAction:"&"},link:function(u,f,e){function w(){s!==null&&s.$destroy();s=u.$new();f.html("");$(window).unbind("language-changed",v);f.css("display","none")}function b(){return(w(),typeof u.tabs=="undefined")?!1:u.tabs!==null&&u.tabs.length>0?!0:!1}function a(n){var t=0;return $.each(n,function(n,i){t+=i.outerWidth(!0)}),t+0}function v(){c(!1)}function y(){var a,v,e,f,h,i,y,c;for(o=[],a=$(document.createElement("div")),v=t.isMobileDevice()===!1&&r.isEnabled(),e=0;e<u.tabs.length;e++)f=u.tabs[e],h=$(document.createElement("div")),h.addClass("n-layout-tab"),f.isActive===!0&&h.addClass("active"),i=$(document.createElement("a")),r.setIsolateAttribute(i),y=typeof f.isHtml!="undefined"&&f.isHtml===!0,y===!0?i.html(t.replaceCrmIconPlaceholder(f.label)):i.text(f.label),v===!0&&(r.setTranslateAttribute(i,!0),$(i).data("isTranslated",!1),r.setTranslatedCallback(i,function(n,t){var i=!0;(o.forEach(n=>{i=i&&$(n).find("a").data("isTranslated")===!0}),i!==!0)&&($(t).data("isTranslated",!0),i=!0,o.forEach(n=>{i=i&&$(n).find("a").data("isTranslated")===!0}),i===!0&&l())},i)),t.setTestAttribute(i,"tab-link",f.link),t.setTestAttribute(i,"tab-label",f.label),f.count!==null&&(c=$(document.createElement("span")),c.html("&nbsp;("+r.wrapTextInVar(f.count,r.variableName.COUNT,!1)+")"),r.setTranslateAttribute(c,!1),i.append(c)),f.isActive===!0?i.attr("href","javascript:;"):f.link!==null?(i.attr("href",f.link),f.targetBlank===!0&&(link.attr("target","_blank"),link.attr("rel","noreferrer"))):i.attr("data-ng-click","tabClicked(tabs["+e+"].name,tabs["+e+"])"),n(i)(s),h.append(i),a.append(h),o.push(h);return a.children()}function l(){var u,l,i,t,r;if($(f).is(":hidden")!==!0&&o.length!==0){u=a(o);h=$(f).width();for(var e=!1,v=0,c=$(document.createElement("div"));o.length>0&&(e===!1&&u>h||e===!0&&u+v>h);)l=o.pop(),e===!1&&(i=$(document.createElement("div")),i.addClass("n-layout-tabs n-layout-tabs-expender"),t=$(document.createElement("div")),t.attr("data-c-dropdown",""),t.addClass("n-layout-tab dropdown"),t.append('<a href="javascript:;" data-c-dropdown-action><span>More<\/span> <span class="large-only">Results<\/span> <span class="caret"><\/a>'),c.addClass("dropdown-menu"),c.attr("data-c-dropdown-menu",""),t.append(c),i.append(t),$(f).append(n(i)(s)),v=i.outerWidth(!0),e=!0),r=$(document.createElement("li")),r.addClass("item"),l.hasClass("active")&&r.addClass("active"),r.append(l.children()),l.remove(),c.prepend(r),u=a(o)}}function k(n){var t=$(document.createElement("div"));t.addClass("n-layout-tabs");t.append(y());f.append(t);r.isEnabled()===!0?$(window).bind("language-changed",v):n===!0?i(function(){l()},0):l()}function d(){var n=$(document.createElement("div")),t,i;if(n.addClass("n-layout-tabs"),n.css("width",h+"px"),n.append(y()),f.append(n),p===!0)for(t=0;t<u.tabs.length;t++)if(i=u.tabs[t],i.isActive===!0){var r=o[t],c=n.width(),e=n.offset().left,l=r.width(),s=r.offset().left;s-e+l>c&&n.scrollLeft(s-e);break}}function c(n){b()!==!1&&(f.css("display","flex"),h=$(f).width(),t.isMobileDevice()===!0?d():k(n))}e.$addClass("n-layout-tabs-container");var o=[],s=null,h=null,p=!0;u.tabClicked=function(n,t){if(t.isActive!==!0){angular.forEach(u.tabs,function(n){n.isActive=n.id===t.id});u.onAction({action:n,data:{tab:t}})}};u.$watch(function(){return f.width()},function(n,t){n!==t&&c(!1)});u.$watch(function(){return u.tabs},function(n,t){n!==t&&c(!1)},!0);c(!0)}}}]);angular.module("sharedElements").directive("cThumbnailImage",["helpService","$compile",function(n,t){return{restrict:"A",scope:{image:"=",useLongText:"=?"},link:function(i,r){function o(){u!==null&&u.$destroy();r.attr("class",e);u=i.$new();r.html("")}function f(){var e,f;(o(),i.image!=null)&&(i.image.id!==null?(e=$('<img data-c-image-placeholder data-mode="max">'),e.attr("src",n.getThumbnailLink(i.image.id,i.image.hash)),r.append(e),t(e)(u)):(r.addClass("thumbnail-text-wrapper"),f=$(document.createElement("span")),f.addClass("thumbnail-text format-wrap"),typeof i.useLongText=="undefined"?(f.addClass("short-text"),f.text(i.image.shortText)):f.text(i.image.longText),n.setThumbnailClass(i.image,r),r.append(f)))}function s(){f()}var u=null,e=r.attr("class");i.$watch(function(){return i.image},function(n,t){n!==t&&f()},!0);s()}}}]);angular.module("sharedElements").directive("cToggleButton",function(){return{restrict:"A",scope:{isOn:"=",pendingAction:"=",isEnabled:"=",onClick:"&",showLoader:"=",isPrimary:"@",onText:"@",onLoaderText:"@",offText:"@",offLoaderText:"@"},link:function(n,t){function r(){return typeof n.isEnabled=="undefined"?!0:n.isEnabled}function f(){return typeof n.isPrimary=="undefined"?!0:n.isPrimary}function e(){return typeof n.onText=="undefined"?"Disable":n.onText}function o(){return typeof n.onLoaderText=="undefined"?"Disabling":n.onLoaderText}function s(){return typeof n.offText=="undefined"?"Enable":n.offText}function h(){return typeof n.offLoaderText=="undefined"?"Enabling":n.offLoaderText}function u(){return n.isOn===!0?e():s()}function c(){return n.isOn===!0?o():h()}function l(){$(t).addClass("btn");f()?$(t).addClass("btn-primary"):$(t).addClass("btn-default");$(t).attr("type","button");$(t).text(u());r()===!1&&$(t).attr("disabled",!0);$(t).click(function(){i=!0;n.$apply(function(){n.onClick()})})}var i=!1;if(typeof n.pendingAction=="undefined")throw new Error('"pendingAction" is undefined');if(typeof n.isOn=="undefined")throw new Error('"isEnabled" is undefined');n.$watch(function(){return n.isEnabled},function(){$(t).attr("disabled",r()===!1)});n.$watch(function(){return n.isOn},function(){$(t).text(u())});n.$watch(function(){return n.pendingAction},function(f,e){f!==e&&(r()===!0&&$(t).attr("disabled",n.pendingAction),(i===!0||n.showLoader===!0)&&(n.pendingAction===!0&&($(t).addClass("working"),$(t).text(c()),$(t).attr("disabled",!0)),n.pendingAction===!1&&(i=!1,typeof n.showLoader!="undefined"&&(n.showLoader=!1),$(t).removeClass("working"),$(t).text(u()))))},!0);l()}}});angular.module("sharedElements").directive("cTooltip",["helpService","translationHelperService",function(n,t){return{restrict:"AE",scope:{showNextToThePointer:"@"},link:function(i,r,u){function c(){return typeof i.showNextToThePointer=="undefined"?!1:i.showNextToThePointer==="true"?!0:!1}function v(){var e=!1,o=!1,s,y=$(window).height(),l=$(window).scrollTop(),t=r.offset().top,a=r.outerHeight(),u=f.outerHeight(),p,w,nt,tt;t-l-u>0?(e=!0,s=t-u):y>t-l+u+a?(e=!1,s=t+a):(p=(t-l-u)*-1,w=(y-(t-l+a+u))*-1,p<w?(e=!0,s=t-u):(e=!1,s=t+a));var h,b=$("body").css("margin-left").replace("px",""),v=$(window).width()-b,c=$(window).scrollLeft(),n=r.offset().left-b,k=r.outerWidth(),i=f.outerWidth(),d=null,g=null;v>n-c+i?(o=!0,h=n):v<n-c+i&&n-c-i>0?(o=!1,h=n-i+k):(d=(n-c-i)*-1,g=(v-(n-c+i))*-1,d<g?(o=!1,h=n-i+k):(o=!0,h=n));f.css({top:s,left:h,display:"block"});nt=e?"top":"bottom";tt=o?"left":"right";f.addClass(nt+"-"+tt)}function y(n){var e=!1,o=!1,a=0,v=20,s=10,y=10,h,b=$(window).height(),p=$(window).scrollTop(),i=n.pageY,u=f.outerHeight(),k,d,it,rt;i-a-p-u>0?(e=!0,h=i-a-u):b>i-p+u+v?(e=!1,h=i+v):(k=(i-a-p-u)*-1,d=(b-(i-p+u+v))*-1,k<d?(e=!0,h=i-a-u):(e=!1,h=i+v));var c,g=$("body").css("margin-left").replace("px",""),w=$(window).width()-g,l=$(window).scrollLeft(),t=n.pageX-g,r=f.outerWidth(),nt=null,tt=null;w>t+y-l+r?(o=!0,c=t+y):w<t+s-l+r&&t-s-l-r>0?(o=!1,c=t-r-s):(nt=(t-s-l-r)*-1,tt=(w-(t+y-l+r))*-1,nt<tt?(o=!1,c=t-r-s):(o=!0,c=t+y));f.css({top:h,left:c,display:"block"});it=e?"top":"bottom";rt=o?"left":"right";f.addClass(it+"-"+rt)}function l(){f=$(document.createElement("div"));f.addClass("popover");f.html('<div class="arrow"><\/div><div class="popover-content">'+u.cTooltip+"<\/div>");t.setTranslateAttributeBasedOnParent(f,r);f.appendTo($("body"))}function o(){c()!==!0&&u.cTooltip!==""&&(l(),v())}function s(n){c()!==!1&&(f!==null&&f.remove(),clearTimeout(e),e=setTimeout(function(){u.cTooltip!==""&&(l(),y(n))},200))}function h(){clearTimeout(e);f!==null&&f.remove()}function a(){r.off("mouseenter",o);r.off("mouseleave",h);r.off("mousemove",s);r.on("mouseenter",o);r.on("mousemove",s);r.on("mouseleave",h);n.bindRemovingTooltips()}var e,f=null;u.$addClass("pointer");i.$watch(function(){return u.cTooltip},function(n,t){n!==t&&a()});i.$on("$destroy",function(){clearTimeout(e);f!==null&&f.remove();r.off("mouseenter",o);r.off("mouseleave",h);r.off("mousemove",s)});a()}}}]);angular.module("sharedElements").directive("cTree",["helpService","translationHelperService","appDetailsValue","$compile","$q",function(n,t,i,r,u){return{restrict:"A",scope:{nodes:"=",selectedNode:"=?",onAction:"&",actions:"="},link:function(f,e){function k(n,t){return $.each(n,function(n,i){a(i,t)}),t}function a(n,t){$.each(t,function(t,i){i.action.value==n?i.isOpened=!0:i.nodes.length>0&&a(n,i.nodes)})}function v(n){return $.map(n,function(n){return{text:_.escape(n.action.label),data:{folderId:n.action.value},state:{selected:n.isSelected,opened:n.isSelected===!0||n.isOpened===!0},id:n.action.value,children:v(n.nodes),a_attr:{href:n.action.link}}})}function y(n){$.each(n,function(n,t){var e,u,o;$(t).find("."+h).length===0&&(e=$(t).attr("id").replace("_anchor",""),u="",i.isTestMode===!0&&(u=' data-t-name="'+$(t).text()+'"'),o=$('<c-actions-button class="'+h+' hide" data-is-inline-block="true" data-is-small="true" data-is-more="true" data-actions="actions" data-on-action="handleAction(action, '+e+')"'+u+"><\/c-actions-button>"),s===null&&(s=f.$new()),$(t).after(r(o)(s)))})}function p(n){return $(e).find("#"+n+"_anchor")}function w(n,t){var i=p(n).next("."+h);t===!0?$(i).removeClass("hide"):$(i).addClass("hide")}function b(){c=u.defer();e.attr("style","display:none");s!==null&&(s.$destroy(),$(e).find("."+h).remove(),s=null);n.setTestAttribute(e,"tree","");t.setTranslateAttribute(e,!1);$(e).jstree("destroy");$(e).jstree({core:{data:v(f.nodes),themes:{theme:"default",icons:!0,dots:!1}},plugins:["themes","json","ui","wholerow"]}).bind("select_node.jstree",function(n,t){typeof t.event!="undefined"&&f.$apply(function(){f.onAction({action:"navigate-to-folder",data:t.node.data.folderId})})}).bind("after_open.jstree",function(n,t){var i=p(t.node.id),r=$(i).siblings(".jstree-children").find("."+l);y(r)}).bind("loaded.jstree",function(){e.removeAttr("style");c.resolve();var n=$(e).find("."+l);n.click(function(n){n.preventDefault()});y(n)}).bind("hover_node.jstree",function(n,t){w(t.node.id,!0)}).bind("dehover_node.jstree",function(n,t){w(t.node.id,!1)});o=$(e).jstree()}var o=null,s=null,h="jstree-action-button",l="jstree-anchor",c=u.defer();if(typeof f.nodes=="undefined")throw new Error('"nodes" is undefined');f.$watch(function(){return f.nodes},function(n){n!==null&&b()},!1);f.$watch(function(){return f.selectedNode},function(n,t){if(n!==t){var i=u.defer();i.promise.then(function(){if(n===null)o.deselect_all();else{var t=o.get_node("#"+f.selectedNode);t!==!1?(o.deselect_all(),o.select_node(t),o.open_node(t)):f.onAction({action:"refresh-folder-tree",data:f.selectedNode}).then(function(n){f.nodes=k(o.get_state().open,n);b()})}});c.promise.$$state.status===0?c.promise.then(function(){i.resolve()}):i.resolve()}},!1);f.handleAction=function(n,t){switch(n){default:return f.onAction({action:n,data:t})}}}}}]);angular.module("sharedElements").directive("cCustomValidator",["$compile","helpService",function(n,t){return{restrict:"A",scope:{form:"=",model:"=?",validationFunction:"&?",revalidateOnChange:"="},link:function(i,r){function f(){u=t.getUniqueName("CustomValidator",i.form);var f=$(document.createElement("input"));f.attr("name",u);f.attr("type","hidden");f.attr("data-ng-model","model");f.attr("data-c-validator","");f.attr("data-async-validation-function","validate()");typeof i.revalidateOnChange!="undefined"&&f.attr("data-revalidate-on-change","revalidateOnChange");$(r).append(f);$(r).append('<label data-c-validation-message data-form="form" data-field-name="'+u+'"><\/label>');n(r.contents())(i)}function e(){f()}typeof i.model=="undefined"&&(i.model="dummy");var u=null;if(typeof i.form=="undefined")throw new Error('"form" is undefined');i.validate=function(){if(typeof i.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return i.validationFunction()};e()}}}]);angular.module("sharedElements").directive("cForm",["$q","pageSharedDataFactory","$timeout","helpService","$compile","wysiwygService",function(n,t,i,r,u,f){return{restrict:"A",require:"form",scope:{pendingAction:"=",disableAutoFocus:"@"},link:function(e,o,s,h){function y(){return typeof e.disableAutoFocus=="undefined"?!1:e.disableAutoFocus==="true"?!0:!1}function v(){return $(o[0]).find("[data-auto-focus='true']:visible:not([disabled])")}function p(){return v().length}var l,a=!1,c=$('<input type="submit" class="btn btn-invisible" data-ng-disabled="pendingAction === true" />');u(c)(e);$(o[0]).prepend(c);h.showLoader=!1;h.submitForm=function(){i(function(){c.click()})};h.submit=function(r,u){e.pendingAction!=undefined&&(e.pendingAction=!0,h.showLoader=!0);angular.forEach(h,function(n){n!=null&&typeof n=="object"&&n.hasOwnProperty("$validators")&&n.$setDirty()});var f=n.defer();h.$pending?e.$watch(function(){return h.$pending},function(){h.$pending==undefined&&i(function(){angular.forEach(h,function(n){n!=null&&typeof n=="object"&&n.hasOwnProperty("$validators")&&n.$setDirty()});f.resolve()})}):f.resolve();f.promise.then(function(){h.$invalid?(i(function(){e.$apply(function(){e.pendingAction!=undefined&&(e.pendingAction=!1);t.showErrorMessage("Please correct the errors to continue")})}),typeof u=="function"&&u(h)):typeof r=="function"&&r(h)})};h.validate=function(t,i){typeof i=="undefined"&&(i=!1);i===!1&&e.pendingAction!=undefined&&(e.pendingAction=!0,h.showLoader=!0);typeof t=="undefined"&&(t=!1);$.each(h,function(n,i){if(i!=null&&typeof i=="object"&&i.hasOwnProperty("$validators")){if(t===!0&&i.$asyncValidators.hasOwnProperty("customAsyncValidator")===!1)return;i.$validate()}});var r=n.defer();return h.$pending?e.$watch(function(){return h.$pending},function(){h.$pending==undefined&&r.resolve()}):r.resolve(),r.promise};y()===!1&&r.isMobileDevice()===!1&&e.$watch(function(){return a===!0?-1:p()},function(n){n!==-1&&(clearTimeout(l),l=setTimeout(function(){var r=v(),n,t;r.length>0&&(a=!0,n=$(r[0]),t=n.attr("froala"),typeof t!=typeof undefined&&t!==!1?i(function(){f.getEditor(n).events.focus()}):n.focus())},100))})}}}]);angular.module("sharedElements").directive("cRequiredMultiFieldValidator",["$compile","helpService","$q","constants","validationService","$timeout",function(n,t,i,r,u){return{restrict:"A",scope:{form:"=",fields:"="},link:function(f,e){function s(){o=t.getUniqueName("RequiredMultiFieldValidator",f.form);var i=$(document.createElement("input"));i.attr("name",o);i.attr("type","hidden");i.attr("data-ng-model","isValid");i.attr("data-c-validator","");i.attr("data-async-validation-function","validate(value)");$(e).append(i);$(e).append('<label data-c-validation-message data-form="form" data-field-name="'+o+'"><\/label>');n(e.contents())(f)}function h(){var n,t,i;for(s(),n=0;n<f.fields.length;n++)t=function(n){return function(){return n}}(f.fields[n]),i=function(n){return function(){return f.form[n.inputName].$viewValue}}(f.fields[n]),f.$watch(t,function(n,t){var i,e;if(typeof t!="undefined"&&t!==null&&n!==t&&n.value!==t.value){i=n;switch(i.type){case r.fieldType.TEXTAREA:e=new u.RequiredValidator;f.isValid=e.validate(i.value,i.value);break;case r.fieldType.FILE_UPLOAD:f.isValid=i.value!==null;break;default:throw new Error("Not implemented for field type: "+f.field.type);}}},!0),f.$watch(i,function(n,t){typeof t!="undefined"&&t!==null&&n!==t&&f.form[o].$setPristine()})}f.isValid=!1;var o=null;if(typeof f.form=="undefined")throw new Error('"form" is undefined');if(Array.isArray(f.fields)===!1)throw new Error('"fields" is not an array');f.validate=function(n){var t=i.defer(),r;return n===!0?t.resolve(u.getCustomAsyncValidatorResult({success:!0})):(r=$.map(f.fields,function(n){return n.label.value}),t.resolve(u.getCustomAsyncValidatorResult({success:!1,message:"Please enter data into one of these fields: "+r.join(", ")}))),t.promise};h()}}}]);angular.module("sharedElements").directive("cValidationMessage",["helpService","translationHelperService",function(n){return{restrict:"A",scope:{form:"=",fieldName:"@"},template:'<span data-ng-if="isVisible()" class="help-block c-i" data-ng-bind-html="form[fieldName].errorMessage"><\/span>',link:function(t,i){$(i).addClass("has-error");n.setTestAttribute($(i),"field-validation",t.fieldName);t.isVisible=function(){return typeof t.fieldName!="undefined"&&typeof t.form[t.fieldName]!="undefined"};t.$watch(function(){return typeof t.fieldName=="undefined"?null:typeof t.form[t.fieldName]=="undefined"?null:t.form[t.fieldName].$invalid&&t.form[t.fieldName].$dirty},function(n){var t=$(i).closest(".form-inline").length>0;n?$(i).css("display",t===!0?"inline-block":"block"):$(i).css("display","none")})}}}]);angular.module("sharedElements").directive("cValidator",["$q","validationService","helpService",function(n,t,i){return{require:"ngModel",scope:{dependsOn:"=",validator:"=",revalidateOnChange:"=",asyncValidationFunction:"&",customMessageFunction:"&"},link:function(r,u,f,e){function c(n){e.errorMessage=n}function h(){var u=[],o=f.validators,p,a,v,h,y,w;if(o!=undefined&&o!==""){if(p=new RegExp("^\\[(.+)\\]$","g"),a=p.exec(o),a===null)throw l+': invalid value of "data-validators" attribute: "'+o+'"';for(o=a[1],v=o.split(","),h=0;h<v.length;h++){y=v[h].trim();switch(y){case"required":u.push(new t.RequiredValidator);break;case"checked":u.push(new t.CheckedValidator);break;case"formatDomain":u.push(new t.FormatDomainValidator);break;case"formatEmailAddress":u.push(new t.FormatEmailAddressValidator);break;case"formatEmailAddressWithSemicolon":u.push(new t.FormatEmailAddressWithSemicolonValidator);break;case"formatEmailAddressWithSemicolonCommaNewLine":u.push(new t.FormatEmailAddressWithSemicolonCommaNewLineValidator);break;case"url":u.push(new t.UrlValidator);break;case"maxLength":u.push(new t.MaxLengthValidator(f.maxLength));break;case"picklistRequired":u.push(new t.PicklistRequiredValidator(f.defaultValue));break;case"multiSelectRequired":u.push(new t.MultiSelectPicklistRequiredValidator(f.defaultValue));break;case"invalidValues":u.push(new t.InvalidValuesValidator(f.invalidValues));break;case"multiSelectInvalidValues":u.push(new t.MultiSelectInvalidValuesValidator(f.invalidValues));break;case"dataType":u.push(new t.DataTypeValidator(f.dataType));break;case"compare":if(typeof r.validator=="undefined"||r.validator===null||typeof r.validator.compare=="undefined"||r.validator.compare===null)throw'Client side "compare" validator is undefined';u.push(new t.CompareValidator(f.dataType,r.validator.compare.operator,r.validator.compare.valueToCompare));break;case"range":if(typeof r.validator=="undefined"||r.validator===null||typeof r.validator.compare=="undefined"||r.validator.compare===null)throw'Client side "range" validator is undefined';u.push(new t.RangeValidator(f.dataType,r.validator.compare.minimumValue,r.validator.compare.maximumValue));break;case"regularExpression":if(typeof r.validator=="undefined"||r.validator===null||typeof r.validator.regularExpression=="undefined"||r.validator.regularExpression===null)throw'Client side "regularExpression" validator is undefined';if(r.validator.regularExpression.pattern!==null&&typeof r.validator.regularExpression.pattern!="undefined"&&r.validator.regularExpression.patternType!==null&&typeof r.validator.regularExpression.patternType!="undefined")throw'Client side "regularExpression" validator has defined both "pattern" and "patternType". Only one can be defined.';w=r.validator.regularExpression.pattern||i.getRegexPattern(r.validator.regularExpression.patternType);u.push(new t.RegularExpressionValidator(w,r.validator.regularExpression.message,r.validator.regularExpression.ignoreCase));break;default:throw"Invalid client side validator: "+y;}}}e.$asyncValidators={};typeof f.asyncValidationFunction!="undefined"&&(e.$asyncValidators.customAsyncValidator=function(i,u){var l=i||u,o,h;return typeof r.dependsOn!="undefined"&&r.dependsOn===!1?n.when(!0):(o=!1,typeof f.validateEmptyValue!="undefined"&&(o=f.validateEmptyValue),o===!1&&e.$isEmpty(l))?n.when(!0):typeof e.$pending!="undefined"?n.when(!0):(h=new t.CustomAsyncValidator(r.asyncValidationFunction),h.validate(i,u,c,s))});e.$validators={};u.length>0&&(e.$validators.customClientValidator=function(n,t){var i,f,e;if(typeof r.dependsOn!="undefined"&&r.dependsOn===!1)return!0;for(i=0;i<u.length;i++)if(f=u[i],e=f.validate(n,t),e===!1)return s.value=t,c(f.getMessage()),!1;return!0})}var l="validator.js",s={value:null},o;if(u.is("input:text")||u.is("textarea")||u.is("input:password")){if(o=f.debounce,o!=undefined&&o!==""?e.$overrideModelOptions({updateOn:"default blur",debounce:{"default":parseInt(o),blur:0},updateOnDefault:!0}):e.$overrideModelOptions({updateOn:"blur",updateOnDefault:!1}),e.hasKeyDownEventHandler==undefined||e.hasKeyDownEventHandler===!1){u.on("keyup",function(){var n=this.value;r.$apply(function(){(n.indexOf("‎")>-1||n.indexOf("‏")>-1||n.indexOf("\f")>-1)&&(n=n.replace(/\u200E/g,""),n=n.replace(/\u200F/g,""),n=n.replace(/\u000C/g,""),e.$setViewValue(n),e.$render());s.value===e.$viewValue?e.$setDirty():e.$setPristine()})});e.hasKeyDownEventHandler=!0}if(e.hasAddPlaceholderEventHandler==undefined||e.hasAddPlaceholderEventHandler===!1){u.on("addplaceholder",function(){e.$setPristine()});e.hasAddPlaceholderEventHandler=!0}}else if(u.is("input:checkbox")||u.is("input:radio"))e.$overrideModelOptions({updateOnDefault:!0});else if(u.is("input:hidden"))e.$overrideModelOptions({allowInvalid:!0,updateOnDefault:!0});else if(u.is("select"))e.$overrideModelOptions({allowInvalid:!0,updateOnDefault:!0});else throw"Unknown html element tag: "+u.context.tagName;r.$watch(function(){return r.revalidateOnChange},function(n,t){typeof n!="undefined"&&n!==t&&e.$validate()});r.$watch(function(){return r.dependsOn},function(n,t){typeof n!="undefined"&&n!==t&&e.$validate()});r.$watch(function(){return f.validators},function(n,t){typeof n!="undefined"&&n!==t&&(h(),e.$validate())});r.$watch(function(){return f.asyncValidationFunction},function(n,t){typeof n!="undefined"&&n!==t&&(h(),e.$validate())});h()}}}]);angular.module("sharedElements").directive("cVideo",["$compile","$sce","constants","exceptionService",function(n,t,i,r){return{restrict:"A",scope:{videoDetails:"=",initCondition:"=?",onAction:"&?"},link:function(u,f){function w(){s!==null&&s.$destroy();s=u.$new();f.html("")}function b(){return(w(),u.videoDetails===null)?!1:!0}function p(){var n=1,t="video-iframe";for(e=t;$("#"+e).length!==0;)e=t+"_"+n,n++}function k(n){if(typeof u.onAction=="function")u.onAction(n)}function v(){u.videoDetails.logView===!0&&k({action:"log-view"})}function d(n){var t=!1,i={key:u.videoDetails.bitmovin.key,ui:!1,location:{ui:"/lib/bitmovin/bitmovinplayer-ui.js",ui_css:"/lib/bitmovin/bitmovinplayer-ui.css"},events:{[bitmovin.player.PlayerEvent.Play]:()=>{t===!1&&(v(),t=!0)}}},f={errorMessages:function(n){return r.logError(new Error("Bitmovin Video Error"),"",!1,JSON.stringify(n)),"<b>Connection Issue<\/b><br/>We're having trouble loading the video. This can be due to an issue with our server or your Internet connection. Please try again."}},e={hls:u.videoDetails.bitmovin.hlsUrl,dash:u.videoDetails.bitmovin.dashUrl};o=new bitmovin.player.Player(n[0],i);a=bitmovin.playerui.UIFactory.buildDefaultUI(o,f);o.load(e)}function g(){o!=null&&o.destroy();a!=null&&a.release()}function nt(){var n,t,i;switch(u.videoDetails.status){case c.invalid:f.append('<div class="video-processing-wrapper">    <div class="video-processing-message">        <div class="invalid-video"><\/div>        <h2>Invalid Video<\/h2>    <\/div><\/div>');u.videoDetails.errorMessage!==null&&(n=$(document.createElement("div")),n.addClass("invalid-video-description"),n.html(u.videoDetails.errorMessage),f.find(".video-processing-message").append(n));break;case c.processing:f.append('<div class="video-processing-wrapper">    <div class="video-processing-message">        <div class="loading-large"><\/div>        <h2>Processing Video<\/h2>    <\/div><\/div>');break;case c.ok:t=$(document.createElement("div"));i=$('<div class="bitmovin-video-player-wrapper"><\/div>');i.append(t);f.append(i);d(t);break;default:throw new Error("Unexpected video status "+u.videoDetails.status);}}function tt(){var i,r,o,n;p();i=$('<div class="video-viewer-wrapper ratio-wide"><\/div>');r=$('<div class="video-viewer"><\/div>');i.append(r);o=t.trustAsResourceUrl(u.videoDetails.url);n=$(document.createElement("iframe"));n.attr("id",e);n.attr("src",o);n.attr("frameborder","0");n.attr("allowfullscreen","");n.attr("webkitallowfullscreen","");r.append(n);n[0].onload=function(){var n=new YT.Player(e,{events:{onStateChange:function(n){n.data!==YT.PlayerState.PLAYING||h||(h=!0,v())}}})};f.append(i)}function it(){var i,r,o,n;p();i=$('<div class="video-viewer-wrapper ratio-wide"><\/div>');r=$('<div class="video-viewer"><\/div>');i.append(r);o=t.trustAsResourceUrl(u.videoDetails.url);n=$(document.createElement("iframe"));n.attr("id",e);n.attr("src",o);n.attr("frameborder","0");n.attr("allowfullscreen","");n.attr("webkitallowfullscreen","");r.append(n);n[0].onload=function(){var t=new Vimeo.Player(n);t.on("play",function(){h||(h=!0,v())})};f.append(i)}function y(){if(l!==!0&&(typeof u.initCondition=="undefined"||u.initCondition!==!1)&&b()!==!1){switch(u.videoDetails.type){case i.videoType.BIT_MOVIN:nt();break;case i.videoType.YOUTUBE:tt();break;case i.videoType.VIMEO:it();break;default:throw new Error("Unexpected video type "+u.videoDetails.type);}l=!0;n(f.contents())(s)}}var s=null,l=!1,e="",h=!1,o=null,a=null,c;if(typeof u.videoDetails=="undefined")throw new Error('"videoDetails" is undefined');c={ok:1,invalid:2,processing:3};u.$watch(function(){return u.videoDetails},function(n,t){n!==t&&(l=!1,y())});u.$watch(function(){return u.initCondition},function(n,t){n!==t&&n!==!1&&y()});u.$on("$destroy",function(){g()});y()}}}]);angular.module("sharedElements").directive("cWalkthrough",["$timeout","helpService","$q","appDetailsValue","walkthroughService","pageSharedDataFactory","constants","translationHelperService",function(n,t,i,r,u,f,e,o){return{restrict:"A",scope:{},link:function(s,h,c){function it(){v.hide();$("."+t.walkthroughHighlightedMenuClassName).css("display","none").removeClass(t.walkthroughHighlightedMenuClassName)}function st(){w.removeClass("walkthrough-overlay-border");w.css({display:"block",borderWidth:"0"})}function ht(n){u.completed(k,n);k=null}function yt(t,i){var r=5,e=0,o=0,c=$(window).height(),l=$(window).scrollTop(),a=$(window).width(),u=t.top,f=t.left,v=c-(t.top+t.bottom),y=a-(t.left+t.right),s=i.outerHeight(),h=i.outerWidth();a>f+y+h+r?(e=u,o=f+y+r):r<f-h-r?(e=u,o=f-(h+r)):c>u-l+v+s+r?(e=u+v+r,o=f+r):r<u-l-s-r&&(e=u-s-r,o=f+r);n(function(){i.css({top:e,left:o,display:"block"})})}function rt(t,r){ot=t;it();var u=i.defer();u.promise.then(function(){n(function(){var u,f,e,n,i;if(d.html(t.content),u=$(window).height(),f=$(window).width(),t.selector===null)st(),v.css({top:u/2-v.height()/2,left:f/2-v.width()/2,display:"block",position:"fixed"}),b=!1;else{if(e=$(t.selector),e.length===0){b=!1;r===!0?a.click():y.click();return}n=t.getPosition();i="";i+=n.top+"px ";i+=n.right+"px ";i+=n.bottom+"px ";i+=n.left+"px";w.addClass("walkthrough-overlay-border");w.animate({display:"block",borderWidth:i},{complete:function(){yt(n,v);b=!1},duration:300})}},5)});typeof t.before!="undefined"?t.before(u):u.resolve()}function pt(){t.isLaptopOrBiggerDevice()===!0?rt(ot,!1):s.$destroy()}function g(n){var t=$(n);if(t.length===0)return null;var u=$(window).height(),f=$(window).width(),i=t.offset().top,r=t.offset().left,e=t.height(),o=t.width();return{top:i,right:f-(r+o),bottom:u-(i+e),left:r}}function ct(){st();it();clearTimeout(et);et=setTimeout(pt,80)}function lt(n){if(b!==!0)switch(n.keyCode){case 27:p!==null&&$(p).click();break;case 37:a!==null&&$(a).click();break;case 39:if(y!==null){if(n.data.steps.length-1===l)return;$(y).click()}}}function at(){return[{selector:null,content:'Welcome! Click "Next" or hit the '+o.wrapTextInVar('<span class="glyphicon glyphicon-arrow-right" aria-hidden="true"><\/span>')+" key for a quick walkthrough of the user interface."},{selector:".tour-intro-1",content:"The main navigation provides access to all content areas",getPosition:function(){return g(this.selector)}},{selector:".tour-intro-2",content:"All settings and logs are accessed via the gear icon.",getPosition:function(){return g(this.selector)}},{selector:".tour-intro-3",content:"Any items that require your action will appear in the messages menu.",getPosition:function(){return g(this.selector)}},{selector:".tour-intro-4",content:"The help menu allows you to access contact information and launch this walkthrough if you ever need a refresher.",getPosition:function(){return g(this.selector)}},{selector:".tour-intro-5",content:"The User menu provides access to your profile and settings, and also contains the log out link.",getPosition:function(){return g(this.selector)},after:function(){s.$destroy()}}]}function vt(n){l=0;tt=!1;v=$(document.createElement("div"));v.addClass("walkthrough-menu");d=$(document.createElement("div"));d.addClass("walkthrough-content");o.setIsolateAttribute(d);nt=$(document.createElement("div"));nt.addClass("walkthrough-actions n-actions");var t=$(document.createElement("div"));t.addClass("n-actions-right");p=$(document.createElement("div"));p.text("Skip");p.addClass("btn btn-text");p.click(function(){b=!0;it();tt===!1&&ht(ft.SKIPPED);ut()});t.append(p);a=$(document.createElement("div"));a.text("Back");a.addClass("btn btn-default");a.css({display:"none"});a.click(function(){if(0!==l){b=!0;l--;var t=n[l];y.text(n.length-1===l?"Done":"Next");a.css("display",l===0?"none":"inline-block");p.css("display",n.length-1===l?"none":"inline-block");rt(t,!0)}});t.append(a);y=$(document.createElement("div"));y.text("Next");y.addClass("btn btn-primary");y.click(function(){b=!0;tt===!1&&(ht(ft.VIEWED),tt=!0);var t=n[l];if(typeof t.after!="undefined"&&t.after(),n.length-1===l){ut();return}l++;t=n[l];y.text(n.length-1===l?"Done":"Next");a.css("display",l===0?"none":"inline-block");p.css("display",n.length-1===l?"none":"inline-block");rt(t,!1)});t.append(y);nt.append(t);v.append(d);v.append(nt);w=$(document.createElement("div"));w.addClass("walkthrough-overlay");h.append(w);h.append(v);$(document).on("keydown",{steps:n},lt);$(window).on("resize",ct);rt(n[l],!1)}function wt(){var t,n,i;if(typeof r.walkthroughs=="undefined")throw new Error('"appDetailsValue.walkthroughs" is undefined');if(r.walkthroughs!==null&&r.walkthroughs.length!==0)for(t=!1,n=0;n<r.walkthroughs.length;n++){k=r.walkthroughs[n];switch(k){case e.walkthroughType.INTRO:i=at();vt(i);t=!0;break;default:throw new Error("Unknown walkthrough: "+k);}if(t===!0){r.walkthroughs.splice(n,1);break}}}function ut(){$(window).off("resize",ct);$(document).off("keydown",lt);it();w.hide();h.html("")}function bt(n){switch(n){case e.walkthroughType.INTRO:k=n;vt(at());break;default:throw new Error("Unknown walkthrough type: "+n);}}var ft={VIEWED:1,SKIPPED:2},et,l=0,ot=null,k=null,w=null,v=null,d=null,nt=null,y=null,a=null,p=null,tt=!1,b=!1;c.$addClass("walkthrough");s.$on("$routeChangeSuccess",function(){t.isLaptopOrBiggerDevice()===!0&&n(function(){wt()},1e3)});s.$on("$destroy",function(){ut()});f.startWalkthrough=bt}}}]);angular.module("sharedElements").service("walkthroughService",["securityService",function(n){this.completed=function(t,i){return n.httpGet("data/Common/Walkthrough/Complete",{walkthrough:t,status:i})}}]);angular.module("sharedElements").directive("cWelcomeMessageLister",["$compile","helpService","testService","translationHelperService",function(n,t,i,r){return{restrict:"A",scope:{welcomeMessages:"=",onAction:"&"},link:function(u,f){function o(n){$(f).append(n)}function h(){e!==null&&e.$destroy();e=u.$new();f.html("")}function c(){var n=$(document.createElement("div")),t;n.attr("data-unit-t-no-data","");n.addClass("no-data alert alert-info");t=$(document.createElement("p"));t.text("No data.");n.append(t);o(n)}function l(){if(h(),u.welcomeMessages===null)return c(),!1;if(Object.prototype.toString.call(u.welcomeMessages)!=="[object Array]")throw new Error('"welcomeMessages" is not Array');return!0}function a(i,r){var f=$(document.createElement("div")),u,o;return f.addClass("post-title"),u=$(document.createElement("h2")),u.text(i.title),u.attr("data-unit-t-welcome-messages-title",""),t.setTestAttribute(u,"welcome-messages-title",i.title),f.append(u),i.actions!==null&&(u.addClass("has-actions"),o='<div class="post-title-actions"><c-mobile-context-menu-button data-actions="welcomeMessages['+r+'].actions" data-on-action="handleAction(action, welcomeMessages['+r+'])"><\/c-mobile-context-menu-button><\/div>',f.append(n(o)(e))),f}function v(n){var u,i;return n.description===null||n.description===""?null:(u=$(document.createElement("div")),u.addClass("post-content"),i=$(document.createElement("div")),i.attr("data-unit-t-welcome-message-description",""),t.setTestAttribute(i,"welcome-messages-description",n.description),i.addClass("wysiwyg fr-view"),i.html(n.description),r.setIsolateAttribute(i),u.append(i),i)}function y(n){if(n.restriction===null)return null;var t=$(document.createElement("div"));return t.attr("data-unit-t-welcome-message-restriction",""),t.addClass("post-restriction"),t.text(n.restriction),t}function p(t,r){var u=$(document.createElement("div")),f;return u.addClass("post-attribution large-only"),t.actions!==null&&(f="<c-actions-link "+i.getAttributeString("name",t.title)+' class="post-actions" data-is-dropdown="true" data-actions="welcomeMessages['+r+'].actions" data-custom-class="btn btn-text" data-on-action="handleAction(action, welcomeMessages['+r+'])"><\/c-actions-link>',u.append(n(f)(e))),u.append(y(t)),u}function w(n){if(typeof n.id=="undefined")throw new Error('"welcomeMessage.id" is undefined');if(typeof n.id!="number")throw new Error('"welcomeMessage.id" is not Number');if(typeof n.description=="undefined")throw new Error('"welcomeMessage.description" is undefined');if(typeof n.description!="string")throw new Error('"welcomeMessage.description" is not String');if(typeof n.title=="undefined")throw new Error('"welcomeMessage.title" is undefined');if(typeof n.title!="string")throw new Error('"welcomeMessage.title" is not String');if(typeof n.restriction=="undefined")throw new Error('"welcomeMessage.restriction" is undefined');if(n.restriction!==null&&typeof n.restriction!="string")throw new Error('"welcomeMessage.restriction" is not String');}function s(){var n,t;l()!==!1&&(n=$(document.createElement("div")),n.addClass("feed n-layout-padding"),t=$(document.createElement("div")),t.addClass("posts post-container"),angular.forEach(u.welcomeMessages,function(n,i){var r,u;w(n);r=$(document.createElement("div"));r.addClass("post");u=$(document.createElement("div"));u.addClass("post-header");u.append(a(n,i));u.append(p(n,i));r.append(u);r.append(v(n));t.append(r)}),n.append(t),o(n))}var e=null;u.$watch(function(){return u.welcomeMessages},function(n,t){n!==t&&s()});u.handleAction=function(n,t){u.onAction({action:n,data:t})};s()}}}]);angular.module("sharedElements").directive("cWidthWatcher",function(){return{restrict:"A",scope:{width:"="},link:function(n,t){n.$watch(function(i,r){i!==r&&(n.width=t.width())})}}});angular.module("sharedElements").directive("cWizardProgressBar",["$compile",function(n){return{restrict:"A",scope:{steps:"=",currentStep:"="},link:function(t,i,r){var e,u,f;if(t.isActive=function(n){return t.currentStep===n},t.steps!==null&&t.steps.length>0){for(r.$addClass("steps"),e=$(document.createElement("div")),u=0;u<t.steps.length;u++)f=$(document.createElement("div")),f.addClass("step"),f.attr("data-ng-class","{'active' : isActive("+u+") }"),f.append('<div class="step-ordinal">Step '+(u+1)+"<\/div>"),f.append('<div class="step-title">'+t.steps[u].label+"<\/div>"),e.append(f);$(i).append(n(e.html())(t))}}}}]);angular.module("sharedElements").directive("cAnalyticsSidebar",function(){return{restrict:"A",scope:{settings:"=",listerState:"=",onAction:"&",form:"=?"},templateUrl:"js/shared/common/directives/analytics/analyticsSidebar/analyticsSidebar.html",controller:["$scope","$attrs",function(n,t){function i(){t.$addClass("menu-wrapper")}n.handleAction=function(t,i){n.onAction({action:t,data:i})};i()}]}});angular.module("sharedElements").directive("cBarChartSidebar",function(){return{restrict:"A",scope:{settings:"=",listerState:"=",onAction:"&",form:"=?"},templateUrl:"js/shared/common/directives/analytics/barChartSidebar/barChartSidebar.html",controller:["$scope","constants","helpService","$attrs","translationHelperService",function(n,t,i,r,u){function e(){return typeof _.find(n.aggregateColumns,function(n){return n.aggregateFunction===t.aggregateFunctions.MIN||n.aggregateFunction===t.aggregateFunctions.MAX||n.aggregateFunction===t.aggregateFunctions.AVG})=="undefined"}function f(){var t=o();n.orderByField.listItems=t;n.orderByField.value=t[0].value}function o(){var r=[],t=_.find(n.barDataField.listItems,function(t){return t.value===n.barDataField.value});return r.push(i.getListItem({value:t.value+"-asc",text:u.wrapTextInVar(t.text,"column",!0)+" Ascending",isEnabled:!0,columnName:t.value,sortReverse:!1,translate:!0})),r.push(i.getListItem({value:t.value+"-desc",text:u.wrapTextInVar(t.text,"column",!0)+" Descending",isEnabled:!0,columnName:t.value,sortReverse:!0,translate:!0})),$.each(n.aggregateColumns,function(n,t){var f="";t.aggregateFunctionLabel!==null&&(f=u.wrapTextInVar(t.aggregateFunctionLabel,"function",!0)+" ");r.push(i.getListItem({value:t.name+"-asc",text:u.wrapTextInVar(t.columnLabel,"column",!0)+" "+f+"Ascending",isEnabled:!0,columnName:t.name,sortReverse:!1,translate:!0}));r.push(i.getListItem({value:t.name+"-desc",text:u.wrapTextInVar(t.columnLabel,"column",!0)+" "+f+"Descending",isEnabled:!0,columnName:t.name,sortReverse:!0,translate:!0}))}),r}function s(){return n.listerState.layout===null?{}:n.listerState.state[n.listerState.layout]}function a(i){var r={layout:t.listerLayout.BAR_CHART,chartParameters:{view:n.viewField.value,groupByColumns:[],aggregateColumns:[]}},u;i===!0&&(r.currentPage=1);r.chartParameters.groupByColumns.push(n.barDataField.value);n.stackDataField.value!=="0"&&r.chartParameters.groupByColumns.push(n.stackDataField.value);$.each(n.aggregateColumns,function(n,t){r.chartParameters.aggregateColumns.push({name:t.name,axis:t.axis.value})});u=_.find(n.orderByField.listItems,function(t){return t.value===n.orderByField.value});r.sortBy=u.columnName;r.sortReverse=u.sortReverse;n.onAction({action:"refresh-lister",data:{listerState:r}})}function h(){return _.chain(n.settings.columns).filter(function(n){return n.isGroupBy===!0}).sortBy(function(n){return n.label}).sortBy(function(n){return n.entityTypeName}).value()}function v(){n.data.availableAggregateColumns=[];var f=[i.getListItem({value:t.yAxis.BOTTOM,text:"Axis "+u.wrapTextInVar("A","name"),translate:!0}),i.getListItem({value:t.yAxis.TOP,text:"Axis "+u.wrapTextInVar("B","name"),translate:!0})],r=[],e={id:"Count",name:"Count",aggregateFunction:t.aggregateFunctions.COUNT,label:"Count",columnLabel:"Count",aggregateFunctionLabel:null,axis:i.getField({label:"Count",name:"Count",type:t.fieldType.PICKLIST,value:f[0].value,listItems:f,isRequired:!1})};i.generateFilterableInterface(e,function(){return this.name},function(){return this.label},function(){return!1},function(){return!0});r.push(e);$.each(n.settings.columns,function(n,f){f.isAggregate===!0&&$.each(f.availableAggregateFunctions,function(n,e){var o,s,h;switch(e){case t.aggregateFunctions.AVG:o="Avg";break;case t.aggregateFunctions.SUM:o="Sum";break;case t.aggregateFunctions.MIN:o="Min";break;case t.aggregateFunctions.MAX:o="Max";break;default:throw"Unknown aggregate functions: "+e;}s=[i.getListItem({value:t.yAxis.BOTTOM,text:"Axis "+u.wrapTextInVar("A","name"),translate:!0}),i.getListItem({value:t.yAxis.TOP,text:"Axis "+u.wrapTextInVar("B","name"),translate:!0})];h={id:f.name+"-"+o,name:o+"("+f.name+")",aggregateFunction:e,label:u.wrapTextInVar(f.fullLabel,"column",!0)+" "+o,columnLabel:f.fullLabel,aggregateFunctionLabel:o,translate:!0,axis:i.getField({label:f.name,name:f.name,type:t.fieldType.PICKLIST,value:s[0].value,listItems:s,isRequired:!1})};i.generateFilterableInterface(h,function(){return this.name},function(){return this.label},function(){return!1},function(){return!0});r.push(h)})});n.data.availableAggregateColumns=r;l()}function y(t){n.aggregateColumns=[];typeof t.chartParameters.aggregateColumns!="undefined"&&$.each(t.chartParameters.aggregateColumns,function(t,i){var r=_.find(n.data.availableAggregateColumns,function(n){return n.name===i.name});r.axis.value=i.axis;n.aggregateColumns.push(r);n.data.availableAggregateColumns.splice(n.data.availableAggregateColumns.indexOf(r),1)})}function p(r){var u=[i.getListItem({value:"1",text:"Pivot Table"}),i.getListItem({value:"2",text:"Chart"})],f;f=typeof r.chartParameters.view!="undefined"?r.chartParameters.view:u[0].value;n.viewField=i.getField({label:"View",name:"View",type:t.fieldType.PICKLIST,value:f,isRequired:!1,listItems:u,translate:!0})}function w(r){var u=[],f;$.each(h(),function(n,t){u.push(i.getListItem({value:t.name,text:t.fullLabel}))});f=typeof r.chartParameters.groupByColumns!="undefined"?r.chartParameters.groupByColumns[0]:u[0].value;n.barDataField=i.getField({label:"Bar Data",name:"BarData",type:t.fieldType.PICKLIST,value:f,isRequired:!1,listItems:u,translate:!0})}function b(r){var u=[],f;$.each(h(),function(n,t){u.push(i.getListItem({value:t.name,text:t.fullLabel}))});u.splice(0,0,i.getListItem({value:"0",text:"None"}));f=typeof r.chartParameters.groupByColumns!="undefined"&&r.chartParameters.groupByColumns.length>1?r.chartParameters.groupByColumns[1]:u[0].value;n.stackDataField=i.getField({label:"Stack Data",name:"StackData",type:t.fieldType.PICKLIST,value:f,defaultValue:u[0].value,isRequired:!1,listItems:u,translate:!0});n.stackDataNotAvailableField=i.getField({label:"Stack Data",name:"StackDataNone",type:t.fieldType.READ_ONLY,value:"None",translate:!0})}function k(r){var u=o(),e=u[0],f=_.find(u,function(n){return n.columnName===r.sortBy&&n.sortReverse===r.sortReverse});typeof f=="undefined"&&(f=e);n.orderByField=i.getField({label:"Sort Bars by",name:"OrderBy",type:t.fieldType.PICKLIST,value:f.value,isRequired:!1,listItems:u})}function c(n){v();y(n);p(n);w(n);b(n);k(n)}function l(){n.data.availableAggregateColumns=_.sortBy(n.data.availableAggregateColumns,function(n){return n.id==="Count"?" "+n.label:n.label})}function d(){var i,t;r.$addClass("menu-wrapper");i=s();c(i);t=!1;n.$watchCollection(function(){var t=[n.barDataField.value,n.viewField.value,n.orderByField.value,n.stackDataField.value,n.aggregateColumns.length];return $.each(n.aggregateColumns,function(n,i){t.push(i.axis.value)}),t},function(n,i){if(i!==n){if(t===!0){t=!1;return}i[0]!==n[0]&&(t=!0,f());var r=i[1]!==n[1]||i[2]!==n[2];a(r)}});n.$watch(function(){return s()},function(i,r){var f,e,u,o;i!==r&&(f=!1,e=_.find(n.orderByField.listItems,function(t){return t.value===n.orderByField.value}),(typeof e=="undefined"||i.sortBy!==e.columnName||i.sortReverse!==e.sortReverse)&&(f=!0),u=i.chartParameters,typeof u.view!="undefined"&&n.viewField.value!==u.view&&(f=!0),typeof u.groupByColumns!="undefined"&&(n.barDataField.value!==u.groupByColumns[0]&&(f=!0),u.groupByColumns.length>1?n.stackDataField.value!==u.groupByColumns[1]&&(f=!0):n.stackDataField.value!==n.stackDataField.defaultValue&&(f=!0)),typeof u.aggregateColumns!="undefined"&&(o=$.map(n.aggregateColumns,function(n){return{name:n.name,axis:n.axis.value}}),_.isEqual(u.aggregateColumns,o)==!1&&(f=!0)),f===!0&&(t=!0,c(i)))})}typeof n.form=="undefined"&&(n.form=null);n.form=null;n.viewField=null;n.barDataField=null;n.stackDataField=null;n.stackDataNotAvailableField=null;n.orderByField=null;n.aggregateColumns=[];n.data={availableAggregateColumns:[]};n.$on("$destroy",function(){});n.addColumn=function(t){n.aggregateColumns.push(t);n.data.availableAggregateColumns.splice(n.data.availableAggregateColumns.indexOf(t),1);e()===!1&&(n.stackDataField.value=n.stackDataField.defaultValue);f()};n.removeColumn=function(t){t.axis.value=t.axis.listItems[0].value;n.aggregateColumns.splice(n.aggregateColumns.indexOf(t),1);n.data.availableAggregateColumns.push(t);l();f()};n.isStackingAvailable=function(){return e()};n.isLargeView=function(){return i.isMobileDevice()===!1};d()}]}});angular.module("sharedElements").directive("cTimelineSidebar",["filterService",function(){return{restrict:"A",scope:{settings:"=",listerState:"=",onAction:"&",form:"=?"},templateUrl:"js/shared/common/directives/analytics/timelineSidebar/timelineSidebar.html",controller:["$scope","constants","helpService","$attrs","$timeout","translationHelperService",function(n,t,i,r,u,f){function e(){return}function c(){var r=[],t=_.find(n.barDataField.listItems,function(t){return t.value===n.barDataField.value});return r.push(i.getListItem({value:t.value+"-asc",text:f.wrapTextInVar(t.text,"column",!0)+" Ascending",isEnabled:!0,columnName:t.value,sortReverse:!1,translate:!0})),r.push(i.getListItem({value:t.value+"-desc",text:f.wrapTextInVar(t.text,"column",!0)+" Descending",isEnabled:!0,columnName:t.value,sortReverse:!0,translate:!0})),$.each(n.aggregateColumns,function(n,t){r.push(i.getListItem({value:t.name+"-asc",text:f.wrapTextInVar(t.label,"column",!0)+" Ascending",isEnabled:!0,columnName:t.name,sortReverse:!1,translate:!0}));r.push(i.getListItem({value:t.name+"-desc",text:f.wrapTextInVar(t.label,"column",!0)+" Descending",isEnabled:!0,columnName:t.name,sortReverse:!0,translate:!0}))}),r}function o(){return n.listerState.layout===null?{}:n.listerState.state[n.listerState.layout]}function l(i){var r={layout:t.listerLayout.TIMELINE,chartParameters:{view:n.viewField.value,aggregateColumns:[],timeUnit:parseInt(n.timeUnitField.value),timeFrame:parseInt(n.timeFrameField.value),start:n.timeFrameStartField.value,end:n.timeFrameEndField.value}};i===!0&&(r.currentPage=1);$.each(n.aggregateColumns,function(n,t){r.chartParameters.aggregateColumns.push({name:t.name,axis:t.axis.value})});n.onAction({action:"refresh-lister",data:{listerState:r}})}function a(){n.data.availableAggregateColumns=[];var u=[i.getListItem({value:t.yAxis.BOTTOM,text:"Axis "+f.wrapTextInVar("A","name"),translate:!0}),i.getListItem({value:t.yAxis.TOP,text:"Axis "+f.wrapTextInVar("B","name"),translate:!0})],e=_.filter(n.settings.columns,function(n){return n.isDate===!0}),r=[];$.each(e,function(n,e){var o={id:"Count",name:"Count~"+e.name,aggregateFunction:t.aggregateFunctions.COUNT,label:"Count, "+f.wrapTextInVar(e.fullLabel,"date-column",!0),columnLabel:null,aggregateFunctionLabel:null,translate:!0,axis:i.getField({label:"Count",name:"Count",type:t.fieldType.PICKLIST,value:u[0].value,listItems:u,isRequired:!1})};i.generateFilterableInterface(o,function(){return this.name},function(){return this.label},function(){return!1},function(){return!0});r.push(o)});$.each(n.settings.columns,function(n,u){u.isAggregate===!0&&$.each(u.availableAggregateFunctions,function(n,o){var s;switch(o){case t.aggregateFunctions.AVG:s="Avg";break;case t.aggregateFunctions.SUM:s="Sum";break;case t.aggregateFunctions.MIN:s="Min";break;case t.aggregateFunctions.MAX:s="Max";break;default:throw"Unknown aggregate functions: "+o;}$.each(e,function(n,e){var h=[i.getListItem({value:t.yAxis.BOTTOM,text:"Axis "+f.wrapTextInVar("A","name"),translate:!0}),i.getListItem({value:t.yAxis.TOP,text:"Axis "+f.wrapTextInVar("B","name"),translate:!0})],c={id:u.name+"-"+s,name:s+"("+u.name+")~"+e.name,aggregateFunction:o,label:f.wrapTextInVar(u.fullLabel,"column",!0)+" "+s+", "+f.wrapTextInVar(e.fullLabel,"date-column",!0),columnLabel:u.fullLabel,aggregateFunctionLabel:s,translate:!0,axis:i.getField({label:u.name,name:u.name,type:t.fieldType.PICKLIST,value:h[0].value,listItems:h,isRequired:!1})};i.generateFilterableInterface(c,function(){return this.name},function(){return this.label},function(){return!1},function(){return!0});r.push(c)})})});n.data.availableAggregateColumns=r;h()}function v(t){n.aggregateColumns=[];typeof t.chartParameters.aggregateColumns!="undefined"&&$.each(t.chartParameters.aggregateColumns,function(t,i){var r=_.find(n.data.availableAggregateColumns,function(n){return n.name===i.name});r.axis.value=i.axis;n.aggregateColumns.push(r);n.data.availableAggregateColumns.splice(n.data.availableAggregateColumns.indexOf(r),1)})}function y(r){var u=[i.getListItem({value:"1",text:"Pivot Table"}),i.getListItem({value:"2",text:"Chart"})],f;f=typeof r.chartParameters.view!="undefined"?r.chartParameters.view:u[0].value;n.viewField=i.getField({label:"View",name:"View",type:t.fieldType.PICKLIST,value:f,isRequired:!1,listItems:u,translate:!0})}function s(r){a();v(r);n.timeFrameField=n.settings.timeFrame;n.timeFrameStartField=i.getField({name:"TimeFrameStart",isRequired:!0,label:null,type:t.fieldType.DATE});n.timeFrameEndField=i.getField({name:"TimeFrameEnd",isRequired:!0,label:null,type:t.fieldType.DATE});typeof r.chartParameters.timeFrame!="undefined"&&(n.timeFrameField.value=r.chartParameters.timeFrame,n.timeFrameStartField.value=r.chartParameters.start,n.timeFrameEndField.value=r.chartParameters.end);n.timeUnitField=n.settings.timeUnit;typeof r.chartParameters.timeUnit!="undefined"&&(n.timeUnitField.value=r.chartParameters.timeUnit);y(r)}function h(){n.data.availableAggregateColumns=_.sortBy(n.data.availableAggregateColumns,function(n){return n.id==="Count"?" "+n.label:n.label})}function p(){var i,t;r.$addClass("menu-wrapper");i=o();s(i);t=!1;n.$watch(function(){return n.timeFrameField.value},function(t,i){i!==t&&(t==n.DATE_RANGE.CUSTOM?u(function(){n.form[n.timeFrameStartField.name].$setDirty();n.form[n.timeFrameEndField.name].$setDirty()},0):(n.timeFrameStartField!==null&&(n.timeFrameStartField.value=null),n.timeFrameEndField!==null&&(n.timeFrameEndField.value=null)))});n.$watchCollection(function(){var t=[n.viewField.value,n.timeFrameField.value,n.timeFrameStartField.value,n.timeFrameEndField.value,n.timeUnitField.value,n.aggregateColumns.length];return $.each(n.aggregateColumns,function(n,i){t.push(i.axis.value)}),t},function(i,r){if(r!==i){if(t===!0){t=!1;return}n.form.submit(function(){r[0]!==i[0]&&e();var n=r[1]!==i[1]||r[2]!==i[2]||r[3]!==i[3]||r[4]!==i[4];l(n)})}});n.$watch(function(){return o()},function(i,r){var f,u,e;i!==r&&(f=!1,u=i.chartParameters,typeof u.view!="undefined"&&n.viewField.value!==u.view&&(f=!0),typeof u.timeFrame!="undefined"&&(n.timeFrameField.value!==u.timeFrame||n.timeFrameStartField.value!==u.start||n.timeFrameEndField.value!==u.end)&&(f=!0),typeof u.timeUnit!="undefined"&&n.timeUnitField.value!==u.timeUnit&&(f=!0),typeof u.aggregateColumns!="undefined"&&(e=$.map(n.aggregateColumns,function(n){return{name:n.name,axis:n.axis.value}}),_.isEqual(u.aggregateColumns,e)===!1&&(f=!0)),f===!0&&(t=!0,s(i)))})}typeof n.form=="undefined"&&(n.form=null);n.form=null;n.viewField=null;n.timeFrameField=null;n.timeFrameStartField=null;n.timeFrameEndField=null;n.timeUnitField=null;n.orderByField=null;n.DATE_RANGE=t.dateRange;n.aggregateColumns=[];n.data={availableAggregateColumns:[]};n.$on("$destroy",function(){});n.addColumn=function(t){n.aggregateColumns.push(t);n.data.availableAggregateColumns.splice(n.data.availableAggregateColumns.indexOf(t),1);e()};n.removeColumn=function(t){t.axis.value=t.axis.listItems[0].value;n.aggregateColumns.splice(n.aggregateColumns.indexOf(t),1);n.data.availableAggregateColumns.push(t);h();e()};n.isLargeView=function(){return i.isMobileDevice()===!1};p()}]}}]);angular.module("sharedElements").directive("cField",["$compile","constants","helpService","translationHelperService",function(n,t,i,r){return{restrict:"A",scope:{field:"=",onAction:"&"},link:function(u,f,e){function o(n){$(f).append(n)}function p(){e.$addClass("field");switch(u.field.type){case t.fieldType.NESTED_TABLE:e.$addClass("field-table");break;case t.fieldType.SECTION:case t.fieldType.HTML_SECTION:e.$addClass("field-section");break;case t.fieldType.TEXTAREA:u.field.value!==""&&e.$addClass("field-block");break;case t.fieldType.COUNT:e.$addClass("field-big-data")}}function c(){var n=$(document.createElement("div"));return n.addClass("field-value"),i.setTestAttribute(n,"field-value"),n}function h(){var r=$(document.createElement("div")),t,f;r.addClass("field-label");t=$(document.createElement("span"));t.addClass("field-title colon");i.setTestAttribute(t,"field-label");t.text(u.field.title);r.append(t);o(r);u.field.description!==null&&(t.addClass("has-inline-help"),f=$('<span data-c-inline-help data-message="field.description"><\/span>'),r.append(f),n(f)(s))}function v(n){var r=$(document.createElement("h6")),t;r.text(u.field.title);i.setTestAttribute(r,"field-label");o(r);u.field.description!==null&&(t=$(document.createElement("div")),t.addClass("help-block"),n===!0?t.html(u.field.description):t.text(u.field.description),o(t))}function w(){var n=$(document.createElement("div"));return n.attr("data-c-nested-table",""),n.attr("data-lister","field.lister"),n.attr("data-fields","field.fields"),n.attr("data-ng-if","field.lister.rows.length > 0"),n.addClass("layout-scroll rounded-wrapper-thin"),n}function b(){h();var t=c();t.append(w());o(t);n(t)(s)}function k(){var n,t;h();n=c();u.field.value==="True"&&(t=$(document.createElement("span")),t.addClass("switch checked"),n.append(t));o(n)}function d(){h();var t=c();t.addClass("white-space-no-wrap");u.field.isEnabled===!0&&u.field.isMapped===!0&&u.field.remoteLink!==null?t.append('<a href="'+u.field.remoteLink+'" target="_blank" rel="noreferrer"><span class="'+i.getIconClass(u.field.icon)+'" data-c-tooltip="'+u.field.status+'"><\/span><\/a>'):t.append('<span class="'+i.getIconClass(u.field.icon)+'" data-c-tooltip="'+u.field.status+'"><\/span>');u.field.isEnabled===!1?t.append("<span> "+u.field.message+"<\/span>"):u.field.isMapped===!1?t.append('<a href="javascript:;" data-ng-click="handleAction(\''+u.field.actionName+"')\">Sync Now<\/a>"):(u.field.remoteLink!==null?t.append('<a href="'+u.field.remoteLink+'" target="_blank" rel="noreferrer">'+u.field.remoteName+"<\/a>"):t.append("<span>"+u.field.remoteName+"<\/span>"),t.append('<span> (<a href="javascript:;" data-ng-click="handleAction(\''+u.field.actionName+"')\">details<\/a>)<\/span>"));o(t);n(t)(s)}function l(){var n;return u.field.link===null?n=$(document.createElement("span")):(n=$(document.createElement("a")),n.attr("href",u.field.link),u.field.targetBlank&&n.attr("target","_blank"),n.attr("rel","noreferrer")),n}function a(){var t=c(),n;u.field.value!==null&&u.field.value!==""&&(n=l(),n.addClass("format-wrap"),r.setTranslateAttribute(n,u.field.translate),n.text(u.field.value),t.append(n));o(t)}function g(n){try{return JSON.parse(n)}catch(t){}return null}function nt(){if(h(),u.jsonData=g(u.field.value),u.jsonData!==null){var t=c();t.append('<json-formatter json="jsonData" open="3"><\/json-formatter>');r.setTranslateAttribute(t,!1);o(t);n(t)(s)}else a()}function tt(){h();a()}function it(){var t,n;h();t=c();u.field.value!==null&&u.field.value!==""&&(n=l(),n.addClass("white-space-no-wrap"),r.setTranslateAttribute(n,u.field.translate),n.text(u.field.value),t.append(n));o(t)}function rt(){var f,t,e;h();f=c();u.field.value!==null&&u.field.value!==""&&(t=l(),t.addClass("format-wrap"),t.html(u.field.value),r.setTranslateAttribute(t,u.field.translate),u.field.translate===!0&&r.setIsolateAttribute(t),u.actions=i.bindActions(t,"actions"),e=u.actions.length>0,f.append(t),e&&n(t)(s));o(f)}function ut(){var t,i,f,e,r;h();s.openMapTrigger=function(n){u.field.doRedraw=!0;n.resolve()};t=$(document.createElement("div"));t.addClass("field-more dropdown");t.attr("data-c-dropdown","");t.attr("data-on-after-callback","openMapTrigger(defer)");i=$(document.createElement("a"));i.attr("href","javascript:;");i.attr("data-c-dropdown-action","");f=$(document.createElement("i"));f.addClass("icon-size-18 material_location_on");i.append(f);e=$(document.createElement("span"));e.addClass("caret");i.append(e);t.append(i);r=$(document.createElement("div"));r.addClass("dropdown-menu dropdown-megamenu");r.attr("data-c-dropdown-menu","");r.attr("data-close-on-inside-click","false");r.append('<div data-c-geocoding-map data-field="field" data-on-action="handleAction(action, data)"><\/div>');t.append(r);o(t);n(t)(s);a()}function ft(){var i,t;h();i=c();u.field.rating!==null&&(t=$(document.createElement("div")),t.attr("data-c-rating",""),t.attr("rating","field.rating"),t.attr("data-on-action","handleAction('"+u.field.rating.actionName+"')"),n(t)(s),i.append(t));o(i)}function et(){s!==null&&s.$destroy();s=u.$new();f.html("")}function ot(){if(et(),u.field===null)return!1;if(Object.prototype.toString.call(u.field)!=="[object Object]")throw new Error('"field" is not Object');if(typeof u.field.title=="undefined")throw new Error('"field.title" is undefined');if(typeof u.field.title!="string")throw new Error('"field.title" is not String');if(u.field.title==="")throw new Error('"field.title" is empty');if(typeof u.field.value=="undefined")throw new Error('"field.value" is undefined');if(u.field.value!==null&&u.field.type!==t.fieldType.SECTION&&u.field.type!==t.fieldType.HTML_SECTION&&u.field.type!==t.fieldType.INTEGRATION_STATUS&&typeof u.field.value!="string")throw new Error('"field.value" is not String');if(typeof u.field.type=="undefined")throw new Error('"field.type" is undefined');if(typeof u.field.type!="number")throw new Error('"field.type" is not Number');if(typeof u.field.lister=="undefined")throw new Error('"field.lister" is undefined');if(u.field.type!==t.fieldType.NESTED_TABLE&&u.field.lister!==null)throw new Error('if "field.type" is not NESTED_TABLE, then "field.lister" cannot have value');if(typeof u.field.link=="undefined")throw new Error('"field.link" is undefined');if(typeof u.field.targetBlank=="undefined")throw new Error('"field.targetBlank" is undefined');if(u.field.link!==null){if(typeof u.field.link!="string")throw new Error('"field.link" is not String');if(u.field.link==="")throw new Error('"field.link" is empty');if(typeof u.field.targetBlank!="boolean")throw new Error('"field.targetBlank" is not Boolean');}if(typeof u.field.description=="undefined")throw new Error('"field.description" is undefined');if(u.field.description!==null){if(typeof u.field.description!="string")throw new Error('"field.description" is not String');if(u.field.description==="")throw new Error('"field.description" is empty');}return!0}function y(){if(ot()){p();i.setTestAttribute($(f),"field",u.field.title);switch(u.field.type){case t.fieldType.SECTION:v(!1);break;case t.fieldType.HTML_SECTION:v(!0);break;case t.fieldType.NESTED_TABLE:b();break;case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:k();break;case t.fieldType.INTEGRATION_STATUS:d();break;case t.fieldType.ADDRESS_WITH_GEOCODING:ut();break;case t.fieldType.CURRENCY:case t.fieldType.INT:case t.fieldType.DOUBLE:case t.fieldType.PERCENT:case t.fieldType.DATE:case t.fieldType.DATETIME:case t.fieldType.DATETIME_WITH_MILLISECONDS:it();break;case t.fieldType.HTML_TEXT:rt();break;case t.fieldType.TEXT:case t.fieldType.TEXTAREA:case t.fieldType.ADDRESS:case t.fieldType.PICKLIST:case t.fieldType.URL:case t.fieldType.COUNT:tt();break;case t.fieldType.JSON:nt();break;case t.fieldType.RATING:ft();break;default:throw new Error("Not implemented field type: "+u.field.type);}}}var s=null;if(u.jsonData=null,u.actions=null,typeof u.field=="undefined")throw new Error('"field" is undefined');y();u.$watch(function(){return u.field},function(n,t){n!==t&&y()});u.handleAction=function(n,t){return u.onAction({action:n,data:t})}}}}]);angular.module("sharedElements").directive("cNestedTable",function(){return{restrict:"A",scope:{lister:"=",fields:"=",onAction:"&"},templateUrl:"js/shared/common/directives/field/nestedTable/nestedTable.html",controller:["$scope","constants","helpService",function(n,t,i){function u(){var f=i.getListerState(n.lister),u=_.sortBy(n.lister.rows,function(n){return n.id}),r;if(f.sortBy!=="ID"){if(r=_.find(n.fields,function(n){return n.name===f.sortBy}),typeof r=="undefined"||r===null)throw new Error("Sort by field not found: "+f.sortBy);u=_.sortBy(u,function(n){var i=_.find(n.cells,function(n){return n.name===r.name}),u;if(typeof i=="undefined"||i===null)throw new Error('Cell "'+r.name+'" not found in row with ID '+n.id);switch(r.type){case t.fieldType.TEXT:case t.fieldType.TEXTAREA:case t.fieldType.URL:return i.rawValue===null||i.rawValue.trim()===""?"":i.rawValue;case t.fieldType.INT:case t.fieldType.DOUBLE:case t.fieldType.CURRENCY:case t.fieldType.PERCENT:case t.fieldType.DATE:case t.fieldType.DATETIME:return i.rawValue===null?null:parseFloat(i.rawValue.replace(",","."));case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:return i.rawValue==="true";case t.fieldType.PICKLIST:if(i.rawValue===null||parseInt(i.rawValue)===t.dropdownSpecialValues.PLEASE_SELECT_0)return"";if(u=_.find(r.listItems,function(n){return n.value===i.rawValue}),(typeof u=="undefined"||u===null)&&(u=_.find(r.deletedListItems,function(n){return n.value===i.rawValue}),typeof u=="undefined"||u===null))throw new Error('Field "'+r.name+'" list item "'+i.rawValue+'" not found');return u.text;case t.fieldType.FILE_UPLOAD:default:throw new Error('Field "'+r.name+'" type "'+r.type+'" is not supported');}})}f.sortReverse&&(u=u.reverse());n.lister.rows=u}function f(n,r){var u=r.value,f={icon:null,materialIcon:t.materialIconType.NONE,link:null,name:n.name,targetBlank:!1,value:null,formatType:r.formatType,linkAction:null},e;switch(n.type){case t.fieldType.TEXT:case t.fieldType.TEXTAREA:f.rawValue=u;f.value=u;break;case t.fieldType.INT:f.rawValue=u;u!=null&&(f.value=i.formatInteger(u));break;case t.fieldType.DOUBLE:f.rawValue=u;u!=null&&(f.value=i.formatNumber(u));break;case t.fieldType.CURRENCY:f.rawValue=u;u!=null&&(f.value=i.formatCurrency(u));break;case t.fieldType.PERCENT:f.rawValue=u;u!=null&&(f.value=i.formatPercent(u));break;case t.fieldType.DATE:f.rawValue=u;u!=null&&(f.value=i.formatLongDate(u));break;case t.fieldType.DATETIME:f.rawValue=u;u!=null&&(f.value=i.formatLongTime(u));break;case t.fieldType.URL:f.rawValue=u;f.value=u;f.link=u;break;case t.fieldType.CHECKBOX:case t.fieldType.CHECKBOX_GROUP:f.rawValue=u;u==="true"&&(f.icon=t.iconType.CHECKED);break;case t.fieldType.PICKLIST:if(f.rawValue=u,parseInt(u)===t.dropdownSpecialValues.PLEASE_SELECT_0)f.value=null;else{if(e=_.find(n.listItems,function(n){return n.value===u}),(typeof e=="undefined"||e===null)&&(e=_.find(n.deletedListItems,function(n){return n.value===u}),typeof e=="undefined"||e===null))throw new Error('Field "'+n.name+'" list item "'+f.rawValue+'" not found');f.value=e.text}}return f}function r(){u();n.listerStatus=t.listerStatus.RENDERING}function e(){angular.forEach(n.lister.rows,function(t,i){angular.forEach(t.cells,function(t,r){var u=_.find(n.fields,function(n){return t.name===n.name});if(typeof u=="undefined"||u===null)throw new Error('Field "'+t.name+'" not found');n.lister.rows[i].cells[r]=f(u,t)})});r()}n.listerStatus=t.listerStatus.LOADING;n.settings={enabledFixedHeader:!1,enabledSorting:!0,enabledBulkOperations:!1};n.refresh=function(){r()};e()}]}});angular.module("sharedElements").directive("cAppliedFilters",["$compile","constants","helpService","filterService","testService","translationHelperService",function(n,t,i,r,u,f){return{restrict:"A",scope:{appliedFilters:"=",filters:"=",refresh:"&"},link:function(e,o,s){function w(){c!==null&&c.$destroy();c=e.$new();o.html("")}function b(){if(w(),typeof e.appliedFilters=="undefined")throw new Error('"scope.appliedFilters" is undefined');if(typeof e.filters=="undefined")throw new Error('"scope.filters" is undefined');if(typeof e.refresh!="function")throw new Error('"scope.refresh" is not a function');if(e.appliedFilters===null)return!1;if(Object.prototype.toString.call(e.appliedFilters)!=="[object Array]")throw new Error('"scope.appliedFilters" is not Array');if(Object.prototype.toString.call(e.filters)!=="[object Array]")throw new Error('"scope.filters" is not Array');return!0}function l(n){return typeof n.customValue1=="undefined"?n.filterValue.otherValues[0]:n.customValue1}function a(n){return typeof n.customValue2=="undefined"?n.filterValue.otherValues[1]:n.customValue2}function y(n){for(var i,t=0;t<n.listItems.length;t++)if(i=n.listItems[t],i.value===n.filterValue.value)return i;throw new Error('Item with filter value "'+value+'" was not found.');}function h(n,t){for(var r,i=0;i<n.length;i++)if(r=n[i],r.value===t)return r.text;throw new Error('Item with filter value "'+t+'" was not found.');}function k(n){var i=[],t=n.filterValue.otherValues;return t.length>0&&(i.push(f.wrapTextInVar(h(n.listItems,t[0]),"country",!0)),t.length>1&&i.push(f.wrapTextInVar(h(n.stateListItems,t[1]),"state",!1))),i.join(" - ")}function d(n){var i=[],t=n.filterValue.otherValues;return t.length>0&&(i.push(f.wrapTextInVar(h(n.listItems,t[0]),"course-name",!1)),t.length>1&&(i.push(f.wrapTextInVar(h(n.quizListItems,t[1]),"quiz-name",!0)),t.length>2&&(i.push(f.wrapTextInVar(h(n.questionListItems,t[2]),"question",!0)),t.length>3&&i.push(f.wrapTextInVar(h(n.answerListItems,t[3]),"answer",!0))))),i.join(" - ")}function v(){var ct,tt,s,rt,lt,et,ot,pt,h,v,ut,nt,wt,st,w,yt,it,ft,ht,bt,kt;if(b()!==!1)for(ct=0;ct<e.appliedFilters.length;ct++){if(ct>=p&&e.appliedFilters.length!=p+1&&e.viewAll===!1){tt=$(document.createElement("a"));tt.addClass("filter-more");tt.attr("href","javascript:;");tt.attr("data-ng-click","showAll()");tt.attr("data-ng-if","viewAll === false");tt.text("View All "+f.wrapTextInVar(e.appliedFilters.length)+" Filters");u.setAttribute(tt,"applied-filters-view-all-count",e.appliedFilters.length);n(tt)(c);o.append(tt);break}if(s=e.appliedFilters[ct],rt=$(document.createElement("a")),rt.addClass("filter"),rt.attr("href","javascript:;"),u.setAttribute(rt,"applied-filter",s.fullLabel),lt=$(document.createElement("span")),lt.addClass("filter-label"),lt.text(s.fullLabel),et=$(document.createElement("span")),et.addClass("filter-value"),et.addClass("hide-ellipsis"),ot=$(document.createElement("span")),ot.addClass("filter-remove"),ot.attr("data-ng-click",'remove("'+s.name+'")'),u.setAttribute(ot,"applied-filter-remove",s.fullLabel),n(ot)(c),pt=$(document.createElement("i")),pt.attr("icon","remove-small"),ot.append(pt),h=null,r.hasFilterDefaultValue(s)!==!0){var at=null,vt=null,g=s.translate;switch(s.type){case t.filterTypes.TEXT:h=s.filterValue.value;break;case t.filterTypes.BOOLEAN:case t.filterTypes.DROPDOWN:it=y(s);h=it.text;g=it.translate===!0||s.translate===!0;break;case t.filterTypes.DROPDOWN_ADVANCED:for(v=[],ut=0;ut<s.listItems.length;ut++)nt=s.listItems[ut],g===!1&&(g=nt.translate===!0||s.translate===!0),typeof nt.isSelected!="undefined"&&nt.isSelected&&v.push(nt);if(v.length===1)h=v[0].text;else if(g===!0){for(st=[],w=0;w<v.length;w++)st.push(f.wrapTextInVar(v[w].text,"value-"+w,v[w].translate===!0||s.translate===!0));h="("+f.wrapTextInVar(v.length,"value-count")+") "+f.wrapTextInVar(st.join(", "),"values",!0)}else yt=_.map(v,function(n){return n.text}),h="("+v.length+") "+yt.join(", ");break;case t.filterTypes.MULTISELECT:for(v=[],ut=0;ut<s.listItems.length;ut++)nt=s.listItems[ut],g===!1&&(g=nt.translate===!0||s.translate===!0),typeof nt.isSelected!="undefined"&&nt.isSelected&&v.push(nt);if(wt=parseInt(s.filterValue.value)===t.dropdownSpecialValues.MULTISELECT_OR?"OR: ":"AND: ",v.length===1)h=v[0].text;else if(g===!0){for(st=[],w=0;w<v.length;w++)st.push(f.wrapTextInVar(v[w].text,"value-"+w,v[w].translate===!0||s.translate===!0));h="("+f.wrapTextInVar(v.length,"value-count")+") "+wt+f.wrapTextInVar(st.join(", "),"values",!0)}else yt=_.map(v,function(n){return n.text}),h="("+v.length+") "+wt+yt.join(", ");break;case t.filterTypes.DATE:parseInt(s.filterValue.value)===t.dateRange.CUSTOM?(at=f.wrapTextInVar(i.formatLongDate(l(s)),f.variableName.VALUE_1),vt=f.wrapTextInVar(i.formatLongDate(a(s)),f.variableName.VALUE_2),h="Between "+at+" and "+vt):(it=y(s),h=it.text,g=it.translate===!0||s.translate===!0);break;case t.filterTypes.DATETIME:parseInt(s.filterValue.value)===t.dateRange.CUSTOM?(at=f.wrapTextInVar(i.formatLongTime(l(s)),f.variableName.VALUE_1),vt=f.wrapTextInVar(i.formatLongTime(a(s)),f.variableName.VALUE_2),h="Between "+at+" and "+vt):(it=y(s),h=it.text,g=it.translate===!0||s.translate===!0);break;case t.filterTypes.INTEGER:case t.filterTypes.FILESIZE:case t.filterTypes.DOUBLE:case t.filterTypes.CURRENCY:case t.filterTypes.PERCENT:switch(s.type){case t.filterTypes.CURRENCY:ft=i.formatCurrency;break;case t.filterTypes.PERCENT:ft=i.formatPercent;break;case t.filterTypes.DOUBLE:ft=i.formatNumber;break;case t.filterTypes.FILESIZE:ft=function(n){return i.formatFileSize(n*1048576)};break;case t.filterTypes.INTEGER:ft=i.formatInteger;break;default:throw new Error("Unknown formatFunction for Number filter: "+parseInt(s.type));}ht=f.wrapTextInVar(ft(l(s)),f.variableName.VALUE);switch(parseInt(s.filterValue.value)){case t.numberModifierTypes.IS_EQUAL_TO:h="Equal to "+ht;break;case t.numberModifierTypes.IS_GREATER_THAN:h="Greater than "+ht;break;case t.numberModifierTypes.IS_LESS_THAN:h="Less than "+ht;break;case t.numberModifierTypes.IS_GREATER_THAN_OR_EQUAL_TO:h="Greater than or equal to "+ht;break;case t.numberModifierTypes.IS_LESS_THAN_OR_EQUAL_TO:h="Less than or equal to "+ht;break;case t.numberModifierTypes.IS_BETWEEN:bt=f.wrapTextInVar(ft(l(s)),f.variableName.VALUE_1);kt=f.wrapTextInVar(ft(a(s)),f.variableName.VALUE_2);h="Between "+bt+" and "+kt;break;default:throw new Error("Unknown Number filter modifier: "+parseInt(s.filterValue.value));}break;case t.filterTypes.SPECIAL_REFERENCE:h=s.formattedValue;break;case t.filterTypes.COUNTRY_AND_STATE:h=k(s);break;case t.filterTypes.COURSE_QUIZ_QUESTION_ANSWER:g=!0;h=d(s);break;case t.filterTypes.LOCATION_FILTER:if(s.filterValue.value===null||s.filterValue.value==="")continue;h=f.wrapTextInVar(l(s))+" "+a(s)+" from "+f.wrapTextInVar(s.filterValue.value);break;default:throw new Error("Unknown filter type: "+s.type);}et.text(h);u.setAttribute(et,"applied-filter-value",h);f.setTranslateAttribute(et,g);rt.append(lt);rt.append(et);rt.append(ot);o.append(rt)}}}var c=null,p=3;if(e.viewAll=!1,typeof e.appliedFilters=="undefined")throw new Error("scope.appliedFilters is undefined");s.$addClass("filters");e.showAll=function(){e.viewAll=!0;v()};e.remove=function(n){var i=_.find(e.appliedFilters,function(t){return t.name===n}),t;typeof i!="undefined"&&(e.appliedFilters.splice(e.appliedFilters.indexOf(i),1),t=_.find(e.filters,function(t){return t.name===n}),typeof t!="undefined"&&t!==null&&(r.resetFilters([t]),r.initFilter(t)),e.refresh(),v())};e.$watch(function(){return e.appliedFilters},function(n,t){n!==t&&($.each(e.appliedFilters,function(n,t){r.initFilter(t)}),v())});v()}}}]);angular.module("sharedElements").directive("cCountryAndStateFilter",["constants","$timeout","addressService","$q",function(n,t,i,r){return{restrict:"A",scope:{filter:"=",form:"=",onChange:"&",showLabel:"@?"},templateUrl:"js/shared/common/directives/filter/countryAndStateFilter/countryAndStateFilter.html",controller:["$scope",function(u){function e(){u.countryValue===u.filter.defaultValue?(u.filter.filterValue.value=u.countryValue,u.filter.filterValue.otherValues=[]):u.stateFilter.value===u.stateFilter.defaultValue?(u.filter.filterValue.value=u.countryValue,u.filter.filterValue.otherValues=[u.countryValue]):(u.filter.filterValue.value=u.stateFilter.value,u.filter.filterValue.otherValues=[u.countryValue,u.stateFilter.value])}function o(){if(u.filter.type!==n.filterTypes.COUNTRY_AND_STATE)throw new Error('"filter.type" should be "COUNTRY_AND_STATE"');u.countryValue=s();u.stateFilter.value=h();u.filter.filterValue.otherValues=$.extend(!0,[],u.filter.defaultFilterValue.otherValues);u.filter.stateListItems!==null&&(f[u.countryValue]=u.filter.stateListItems);e()}function s(){return u.filter.filterValue.otherValues.length!==2?u.filter.filterValue.value:u.filter.filterValue.otherValues[0]}function h(){return u.filter.filterValue.otherValues.length!==2?u.filter.defaultFilterValue.value:u.filter.filterValue.otherValues[1]}u.countryValue=null;var f=[];u.stateFilter={value:null,translate:!1,listItems:u.filter.stateListItems,defaultValue:u.filter.defaultFilterValue.value};u.inlineLabel=function(){return u.showLabel==="true"?u.filter.fullLabel:null};u.showStateFilter=function(){return u.stateFilter.listItems!==null};u.$watch(function(){return u.countryValue},function(n,t){var s,o,h;n!==t&&(s=r.defer(),s.promise.then(function(n){u.stateFilter.listItems=n;u.filter.stateListItems=n;u.stateFilter.value=u.stateFilter.defaultValue;e()}),o=u.countryValue,o!==u.filter.defaultFilterValue.value?(h=_.find(u.filter.countriesWithVisibleStates,function(n){return n===o})!==undefined,h===!0?typeof f[o]=="undefined"?i.getStatesForFilter(o).then(function(n){f[o]=n;s.resolve(n)}):s.resolve(f[o]):s.resolve(null)):s.resolve(null))},!1);u.$watch(function(){return u.stateFilter.value},function(n,t){n!==t&&e()},!1);u.$watch(function(){return u.filter.filterValue.value},function(n,t){n!==t&&n===u.filter.defaultFilterValue.value&&(u.countryValue=u.filter.defaultFilterValue.value,u.stateFilter.value=u.filter.defaultFilterValue.value)},!1);u.change=function(){t(function(){u.onChange()})};o()}]}}]);angular.module("sharedElements").directive("cCourseQuizQuestionAnswerFilter",["constants","$timeout","trainingAndCertificationsService","$q",function(n,t,i,r){return{restrict:"A",scope:{filter:"=",form:"=",onChange:"&",showLabel:"@?"},templateUrl:"js/shared/common/directives/filter/courseQuizQuestionAnswerFilter/courseQuizQuestionAnswerFilter.html",controller:["$scope",function(u){function f(){var n=[];u.courseValue!==u.filter.defaultFilterValue.value&&(n.push(u.courseValue),u.quizFilter.value!==u.quizFilter.defaultValue&&(n.push(u.quizFilter.value),u.questionFilter.value!==u.questionFilter.defaultValue&&(n.push(u.questionFilter.value),u.answerFilter.value!==u.answerFilter.defaultValue&&n.push(u.answerFilter.value))));u.filter.filterValue.otherValues=n}function c(){if(u.filter.type!==n.filterTypes.COURSE_QUIZ_QUESTION_ANSWER)throw new Error('"filter.type" should be "COURSE_QUIZ_QUESTION_ANSWER"');u.filter.quizListItems!==null&&(e[u.courseValue]=u.filter.quizListItems);u.filter.questionListItems!==null&&(o[u.quizFilter.value]=u.filter.questionListItems);u.filter.answerListItems!==null&&(s[u.questionFilter.value]=u.filter.answerListItems);u.filter.filterValue.otherValues.length>0?(u.courseValue=u.filter.filterValue.otherValues[0],u.filter.filterValue.otherValues.length>1&&(u.quizFilter.value=u.filter.filterValue.otherValues[1],u.filter.filterValue.otherValues.length>2&&(u.questionFilter.value=u.filter.filterValue.otherValues[2],u.filter.filterValue.otherValues.length>3&&(u.answerFilter.value=u.filter.filterValue.otherValues[3])))):u.courseValue=u.filter.defaultFilterValue.value;f()}var h={ALL:1,COURSE_QUIZ:2};u.courseValue=null;var e=[],o=[],s=[];u.quizFilter={value:u.filter.defaultFilterValue.value,listItems:u.filter.quizListItems,defaultValue:u.filter.defaultFilterValue.value};u.questionFilter={value:u.filter.defaultFilterValue.value,listItems:u.filter.questionListItems,defaultValue:u.filter.defaultFilterValue.value};u.answerFilter={value:u.filter.defaultFilterValue.value,listItems:u.filter.answerListItems,defaultValue:u.filter.defaultFilterValue.value};u.inlineLabel=function(){return u.showLabel==="true"?u.filter.fullLabel:null};u.showQuizFilter=function(){return u.quizFilter.listItems!==null};u.showQuestionFilter=function(){return u.filter.filterType===h.ALL&&u.questionFilter.listItems!==null};u.showAnswerFilter=function(){return u.filter.filterType===h.ALL&&u.answerFilter.listItems!==null};u.$watch(function(){return u.courseValue},function(n,t){var s,o;n!==t&&(s=r.defer(),s.promise.then(function(n){u.quizFilter.listItems=n;u.filter.quizListItems=n;u.quizFilter.value=u.quizFilter.defaultValue;f()}),o=u.courseValue,o!==u.filter.defaultFilterValue.value?typeof e[o]=="undefined"?i.getQuizzesForFilter(o).then(function(n){e[o]=n;s.resolve(n)}):s.resolve(e[o]):s.resolve(null))},!1);u.$watch(function(){return u.quizFilter.value},function(n,t){var s,e;n!==t&&(s=r.defer(),s.promise.then(function(n){u.questionFilter.listItems=n;u.filter.questionListItems=n;u.questionFilter.value=u.questionFilter.defaultValue;f()}),e=u.quizFilter.value,e!==u.quizFilter.defaultValue?typeof o[e]=="undefined"?i.getQuestionsForFilter(e).then(function(n){o[e]=n;s.resolve(n)}):s.resolve(o[e]):s.resolve(null),f())},!1);u.$watch(function(){return u.questionFilter.value},function(n,t){var o,e;n!==t&&(o=r.defer(),o.promise.then(function(n){u.answerFilter.listItems=n;u.filter.answerListItems=n;u.answerFilter.value=u.answerFilter.defaultValue;f()}),e=u.questionFilter.value,e!==u.questionFilter.defaultValue?typeof s[e]=="undefined"?i.getAnswersForFilter(e).then(function(n){s[e]=n;o.resolve(n)}):o.resolve(s[e]):o.resolve(null),f())},!1);u.$watch(function(){return u.answerFilter.value},function(n,t){n!==t&&f()},!1);u.$watch(function(){return u.filter.filterValue.value},function(n,t){n!==t&&n===u.filter.defaultFilterValue.value&&(u.courseValue=u.filter.defaultFilterValue.value,u.quizFilter.value=u.quizFilter.defaultValue,u.questionFilter.value=u.questionFilter.defaultValue,u.answerFilter.value=u.answerFilter.defaultValue)},!1);u.change=function(){t(function(){u.onChange()})};c()}]}}]);angular.module("sharedElements").directive("cFilter",["constants","$timeout","filterService","$q","helpService",function(n,t,i,r){return{restrict:"A",scope:{filter:"=",form:"=",onChange:"&",showLabel:"@?",onLoadItems:"&?",isDisabled:"=?",validate:"=?",validationFunction:"&?",revalidateOnChange:"=",onAction:"&?"},templateUrl:"js/shared/common/directives/filter/filter/filter.html",controller:["$scope","appDetailsValue",function(u,f){function e(n){var t=[];return $.each(n.listItems,function(n,i){i.isSelected!=undefined&&i.isSelected&&t.push(i.value)}),t}function o(){var n=r.defer();n.promise.then(function(){i.initFilter(u.filter)});switch(u.filter.type){case u.FILTER_TYPES.DROPDOWN:case u.FILTER_TYPES.DROPDOWN_ADVANCED:case u.FILTER_TYPES.MULTISELECT:u.filter.listItems===null||u.filter.listItems.length===0?u.onAction({action:i.LOAD_FILTER_LIST_ITEMS_ACTION_NAME,data:{name:u.filter.name}}).then(function(t){u.filter.listItems=t;n.resolve()}):n.resolve();break;default:n.resolve()}}typeof u.isDisabled=="undefined"&&(u.isDisabled=!1);typeof u.validate=="undefined"&&(u.validate=!1);u.datePattern=f.localization.shortDatePattern;u.timePattern=f.localization.shortTimePattern;u.currencySymbolAfterNumber=f.localization.currencySymbolAfterNumber==="True";u.currencySymbol=f.localization.currencySymbol;u.FILTER_TYPES=n.filterTypes;u.DROPDOWN_SPECIAL_VALUES=n.dropdownSpecialValues;u.NUMBER_MODIFIER_TYPES=n.numberModifierTypes;u.DATE_RANGE=n.dateRange;u.multiSelectOperatorInlineHelp="Check this box to only show records matching all selected values. Leave unchecked to show records matching at least one selected value.";u.inlineLabel=function(){return u.showLabel==="true"?u.filter.fullLabel:null};u.greaterThan=function(n,t){return function(i){return parseInt(i[n])>t}};u.validateFilter=function(){if(typeof u.validationFunction=="undefined")throw new Error('"validationFunction" is not defined');return u.validationFunction(u.filter)};u.change=function(i){switch(i.type){case n.filterTypes.DROPDOWN_ADVANCED:case n.filterTypes.MULTISELECT:i.filterValue.otherValues=e(i);break;case n.filterTypes.DATE:case n.filterTypes.DATETIME:i.filterValue.value==u.DATE_RANGE.CUSTOM?i.filterValue.otherValues=[i.customValue1,i.customValue2]:(i.filterValue.otherValues=[],i.customValue1=null,i.customValue2=null);break;case n.filterTypes.DOUBLE:case n.filterTypes.CURRENCY:case n.filterTypes.PERCENT:case n.filterTypes.INTEGER:case n.filterTypes.FILESIZE:switch(parseInt(i.filterValue.value)){case u.DROPDOWN_SPECIAL_VALUES.ANY:i.filterValue.otherValues=[];i.customValue1=null;i.customValue2=null;break;case u.NUMBER_MODIFIER_TYPES.IS_EQUAL_TO:case u.NUMBER_MODIFIER_TYPES.IS_GREATER_THAN:case u.NUMBER_MODIFIER_TYPES.IS_LESS_THAN:case u.NUMBER_MODIFIER_TYPES.IS_GREATER_THAN_OR_EQUAL_TO:case u.NUMBER_MODIFIER_TYPES.IS_LESS_THAN_OR_EQUAL_TO:i.filterValue.otherValues=[i.customValue1];i.customValue2=null;break;case u.NUMBER_MODIFIER_TYPES.IS_BETWEEN:i.filterValue.otherValues=[i.customValue1,i.customValue2]}}t(function(){u.onChange()})};u.autoFillSearch=function(n,t){switch(n){case"countries":return i.searchLocation(t);default:throw"Unknown validator "+n;}};o()}]}}]);angular.module("sharedElements").directive("cFilterButton",["helpService","$compile","filterService","actionService","constants","listerService",function(n,t,i,r,u,f){return{restrict:"E",scope:{filters:"=?",lister:"=?",listerSettings:"=?",listerState:"=?",appliedFilters:"=?",actions:"=",onSearch:"&?",onAction:"&?",type:"@?"},link:function(e,o){function a(){return e.filters!==null&&typeof e.filters!="undefined"}function h(){return e.listerSettings===null||typeof e.listerSettings=="undefined"?!1:e.listerSettings.enabledSorting===!0}function k(){return e.listerSettings===null||typeof e.listerSettings=="undefined"?!1:e.listerSettings.columns!==null&&typeof e.listerSettings.columns!="undefined"}function g(){return k()}function v(n){switch(n){case s.FILTERS:return"Filters";case s.SORTING_AND_PAGING:return"Sorting & Paging";case s.COLUMNS:return"Columns";case s.CHART:return"Chart";default:throw Error("Not supported tab: "+n);}}function nt(){return e.actions===null||typeof e.actions=="undefined"?null:_.filter(e.actions,function(n){return n.name!=="set-layout-"+e.lister.layout})}function tt(){p!==null&&p.$destroy();p=e.$new();o.html("");o.css("display","none")}function d(){var n,i,r;tt();o.css("display","block");n=nt();e.type==="link"?(i='<a data-ng-click="openDialog()" data-ng-bind="getLabel()"><\/a>',$(o).append(t(i)(e))):n===null?(r='<button type="button" class="btn btn-default btn-icon" data-ng-click="openDialog()" data-ng-disabled="isDisabled()"><span data-ng-show="getAppliedFiltersCount() > 0" class="label label-numeric applied-filters-badge" data-ng-bind="getAppliedFiltersCount()"><\/span><i class="material_filter_list"><\/i><\/button>',$(o).append(t(r)(e))):($(o).append('<c-dropdown data-is-disabled="isDisabled() === true" >   <button data-c-dropdown-action data-ng-disabled="isDisabled() === true" class="btn btn-default btn-icon">   <span data-ng-show="getAppliedFiltersCount() > 0" class="label label-numeric applied-filters-badge" data-ng-bind="getAppliedFiltersCount()"><\/span>       <i class="material_filter_list"><\/i>   <\/button>   <ul data-c-dropdown-menu class="dropdown-menu"><\/ul><\/c-dropdown>'),l=$.extend([],w(n)),c=$(o).find(".dropdown-menu"),t(o.contents())(p),rt())}function w(n){return typeof n=="undefined"?null:n}function it(){y!==null&&y.$destroy();y=e.$new();c.html("")}function rt(){var n,f,u,i;if(it(),typeof l!="undefined"&&l!==null)for(n=null,f=!0,u=0;u<l.length;u++)(i=l[u],r.isActionVisible(i,w(e.lister),w(e.listerStatus),w(e.commonItems))!==!1)&&(n!==i.groupName&&(n=i.groupName,f===!0?f=!1:c.append('<li class="item-divider"><\/li>'),typeof n!="undefined"&&n!==null&&n.indexOf("group_")===-1&&c.append(' <li class="item-header">'+n+"<\/li>")),c.append(t(r.getActionItemElement(i))(y)))}var b=null,s={FILTERS:1,SORTING_AND_PAGING:2,COLUMNS:3,CHART:4},c=null,y=null,l=null,p=null;e.getLabel=function(){var n=[];return a()&&n.push(s.FILTERS),h()&&n.push(s.SORTING_AND_PAGING),k()&&n.push(s.COLUMNS),g()&&n.push(s.CHART),n.length>1?"Modify View Settings":v(n[0])};e.getAppliedFiltersCount=function(){return typeof e.appliedFilters=="undefined"||e.appliedFilters===null?0:e.appliedFilters.length};e.isDisabled=function(){return(e.filters===null||typeof e.filters=="undefined")&&(e.lister===null||typeof e.lister=="undefined")?!0:!1};e.openDialog=function(){n.openDialog({template:"js/shared/common/directives/filter/filterButton/filterDialogView.html",controller:["$scope","filterService",function(t,i){function p(){return t.tabs.length>1?"Current View":t.tabs[0].label}function o(t){return n.generateSortItem(t.name,t.fullLabel,t.isFixed)}function c(t){var i=$.extend({},t);return n.generateFilterableInterface(i,function(){return this.name},function(){return this.label},function(){return this.isFixed},function(){return!0},function(){return this.entityTypeName}),i}function l(n){return _.sortBy(n,function(n){return[n.entityTypeName,n.label]})}function r(n){return typeof _.find(n,function(n){return n===t.layout})!="undefined"}function w(){var n=[];return a()&&n.push({id:s.FILTERS,label:v(s.FILTERS),count:null,isActive:!0,name:"change-tab",link:null,targetBlank:null}),t.isSortingAndPagingAvailableScope()&&n.push({id:s.SORTING_AND_PAGING,label:v(s.SORTING_AND_PAGING),count:null,isActive:!1,name:"change-tab",link:null,targetBlank:null}),t.areColumnsAvailableScope()&&n.push({id:s.COLUMNS,label:v(s.COLUMNS),count:null,isActive:!1,name:"change-tab",link:null,targetBlank:null}),t.isChartAvailableScope()&&n.push({id:s.CHART,label:v(s.CHART),count:null,isActive:!1,name:"change-tab",link:null,targetBlank:null}),n}function b(){var n,i;typeof t.lister!="undefined"&&t.lister!==null&&(t.layout=t.lister.layout);t.isLoadingDialog=!1;t.tabs=w();t.areColumnsAvailableScope()&&(n=[],$.each(e.lister.columns,function(t,i){var r=_.find(e.listerSettings.columns,function(n){return i.name===n.name});n.push(o(r))}),t.selectedColumns=n,i=[],$.each(e.listerSettings.columns,function(n,t){typeof _.find(e.lister.columns,function(n){return n.name===t.name})=="undefined"&&i.push(c(t))}),t.availableColumns=l(i));t.title=p();t.activeTab=t.tabs[0].id}function y(){t.filtersForm.submit(function(){t.sortAndLayoutForm.submit(function(){var i={},r;if(h()===!0&&(t.sortAndLayout.sortBy!==null&&(t.lister.sortBy=t.sortAndLayout.sortBy.filterValue.value,i.sortBy=t.lister.sortBy),t.sortAndLayout.sortReverse!==null&&(t.lister.sortReverse=t.sortAndLayout.sortReverse.filterValue.value,i.sortReverse=t.lister.sortReverse),t.sortAndLayout.pageSize!==null&&(t.lister.pageSize=t.sortAndLayout.pageSize.filterValue.value,i.pageSize=t.lister.pageSize)),typeof t.lister!="undefined"&&t.lister!==null&&(n.setListerCurrentPage(t.lister,1),i.currentPage=1),t.selectedColumns!=null&&(r=$.map(t.selectedColumns,function(n){return n.getId()}),i.columns=r),typeof e.onAction!="undefined"&&e.onAction!==null){f!==null&&(i=$.extend(f,i));e.onAction({action:"search",data:{listerState:i}})}else e.onSearch();t.closeThisDialog()},function(){t.activeTab=s.SORTING_AND_PAGING})},function(){t.activeTab=s.FILTERS})}function d(n){t.activeTab=n.id}t.tabType=s;t.layout=null;t.filtersForm=null;t.sortAndLayoutForm=null;t.pendingAction=!1;t.filters=e.filters;t.lister=e.lister;t.listerState=e.listerState;t.listerSettings=e.listerSettings;t.selectedColumns=null;t.availableColumns=null;t.tabs=null;t.sortAndLayout={sortBy:null,sortReverse:null,pageSize:null};t.availableFilters=null;t.title=null;t.activeTab=s.FILTERS;t.listerLayout=u.listerLayout;var f=null;t.areFiltersAvailableScope=function(){return a()};t.isSortingAndPagingAvailableScope=function(){return h()===!0&&r([u.listerLayout.TABLE,u.listerLayout.TILES_L,u.listerLayout.TILES_S,u.listerLayout.BAR_CHART,u.listerLayout.TIMELINE])===!0};t.areColumnsAvailableScope=function(){return k()===!0&&r([u.listerLayout.TABLE])===!0};t.isChartAvailableScope=function(){return g()===!0&&r([u.listerLayout.BAR_CHART,u.listerLayout.TIMELINE])===!0};t.handleAction=function(n,t){switch(n){case"change-tab":d(t.tab);break;case"refresh-lister":f=t.listerState;break;case i.LOAD_FILTER_LIST_ITEMS_ACTION_NAME:return e.onAction({action:n,data:t});default:throw"Unknown action: "+n;}};t.getMainFilters=function(){return i.getMainFilters(t.filters)};t.getVisibleFilters=function(){return i.getVisibleFilters(t.filters)};t.anyAvailableFilters=function(){return i.anyAvailableFilters(t.filters)};t.anyVisibleFilters=function(){return i.anyVisibleFilters(t.filters)};t.addFilter=function(n){i.addFilter(t.filters,n)};t.removeFilter=function(n){i.removeFilter(n)};t.apply=function(){y()};t.reset=function(){i.resetFilters(t.filters);y()};t.addColumn=function(n){var i=_.find(e.listerSettings.columns,function(t){return t.name===n.getId()});t.selectedColumns.push(o(i));t.availableColumns=t.availableColumns.filter(function(t){return t.getId()!==n.getId()})};t.removeColumn=function(n){var i=_.find(e.listerSettings.columns,function(t){return t.name===n.getId()});t.availableColumns.push(c(i));t.availableColumns=l(t.availableColumns)};t.$watch(function(){return t.filters},function(){a()!==!1&&(i.generateFilterableInterface(t.filters),t.availableFilters=i.getAvailableFilters(t.filters))});t.$watch(function(){return i.getAvailableFilterNames(t.filters)},function(){a()!==!1&&(t.availableFilters=i.getAvailableFilters(t.filters))},!0);t.$watch(function(){return h()===!1?null:r([u.listerLayout.TABLE,u.listerLayout.TILES_L,u.listerLayout.TILES_S])===!1?null:typeof t.lister=="undefined"||t.lister===null?null:t.lister.sortBy},function(n){t.sortAndLayout.sortBy=n===null?null:e.listerSettings.columns!==null?i.getSortByFilter(t.lister.sortBy,e.listerSettings.columns):i.getSortByFilter(t.lister.sortBy,e.lister.columns)},!1);t.$watch(function(){return h()===!1?null:r([u.listerLayout.TABLE,u.listerLayout.TILES_L,u.listerLayout.TILES_S])===!1?null:typeof t.lister=="undefined"||t.lister===null?null:t.lister.sortReverse},function(n){t.sortAndLayout.sortReverse=n===null?null:i.getSortReverseFilter(t.lister.sortReverse)},!1);t.$watch(function(){return h()===!1?null:typeof t.lister=="undefined"||t.lister===null?null:t.lister.pageSize},function(n){n!==null&&(t.sortAndLayout.pageSize=i.getPageSizeFilter(t.lister.pageSize))},!1);b()}]})};e.$watch(function(){return e.filters},function(){typeof e.filters!="undefined"&&e.filters!==null&&i.generateFilterableInterface(e.filters)},!0);e.$watch(function(){return e.actions},function(n,t){n!==t&&typeof n!="undefined"&&d()},!0);e.$watch(function(){return e.lister},function(n,t){n!==t&&typeof n!="undefined"&&d()},!0);e.handleAction=function(n){var t,i,r,u;if(typeof n=="undefined")throw"action is undefined";switch(n){case"save-as":f.openListerViewSaveAsDialog({lastViewId:b,onAction:e.onAction,pageComponent:e.listerSettings.pageComponent}).then(function(n){e.actions=n.actions.viewsMobile;b=n.viewId},function(){});break;case"manage-views":f.openListerViewManagementDialog(e.listerSettings.pageComponent).then(function(n){e.actions=n.viewsMobile},function(){});break;case"modify-view":e.openDialog();break;case"default-view":e.onAction({action:"load-default-view",data:{layout:e.lister.layout}});break;default:if(n.indexOf("load-view-")===0){t=n.replace("load-view-","");i=parseInt(t);b=t;e.onAction({action:"load-view",data:{viewId:i}})}else if(n.indexOf("set-layout-")===0)if(r=n.replace("set-layout-",""),u=parseInt(r),typeof e.onAction!="undefined"&&e.onAction!==null)e.onAction({action:"search",data:{listerState:{layout:u}}});else e.onSearch();else throw"Unknown action: "+n;}};d()}}}]);angular.module("sharedElements").directive("cFiltersSidebar",function(){return{restrict:"A",scope:{filters:"=",filterSettings:"=",onSearch:"&",form:"=?",onAction:" &?",hideButtonVisible:"=?"},templateUrl:"js/shared/common/directives/filter/filtersSidebar/filtersSidebar.html",link:function(n,t,i){i.$addClass("menu-wrapper");n.filterSettings.setForm(n.form)},controller:["$scope","filterService",function(n,t){typeof n.form=="undefined"&&(n.form=null);n.availableFilters=null;n.hideButtonVisible=typeof n.hideButtonVisible=="undefined"?!0:n.hideButtonVisible;n.getMainFilters=function(){return t.getMainFilters(n.filters)};n.getVisibleFilters=function(){return t.getVisibleFilters(n.filters)};n.anyAvailableFilters=function(){return t.anyAvailableFilters(n.filters)};n.anyVisibleFilters=function(){return t.anyVisibleFilters(n.filters)};n.addFilter=function(i){t.addFilter(n.filters,i)};n.removeFilter=function(n){t.removeFilter(n)};n.search=function(){n.form.validate(!0).then(function(){n.form.submit(function(){n.onSearch()},function(){n.filterSettings.openFilters()})})};n.reset=function(){t.resetFilters(n.filters);n.form.submit(function(){n.onSearch()})};n.handleAction=function(i,r){switch(i){case t.LOAD_FILTER_LIST_ITEMS_ACTION_NAME:return n.onAction({action:i,data:r});default:throw"Unknown action: "+i;}};n.closeFilters=function(){n.filterSettings.closeFilters()};n.$watch(function(){return n.filters},function(){t.generateFilterableInterface(n.filters);n.availableFilters=t.getAvailableFilters(n.filters)});n.$watch(function(){return t.getAvailableFilterNames(n.filters)},function(){n.availableFilters=t.getAvailableFilters(n.filters)},!0)}]}});angular.module("sharedElements").directive("cFilterSwitcher",["$compile","constants","testService",function(n,t,i){return{restrict:"E",scope:{filterSettings:"=",listerStatus:"="},link:function(r,u){function s(){f!==null&&f.$destroy();f=r.$new();u.html("");u.css("display","none")}function e(){return s(),r.listerStatus===t.listerStatus.DONE}function o(){e()!==!1&&(u.css("display",""),u.addClass("filter-switcher-group"),u.append('<form class="form-inline" data-ng-if="isVisible() === true" data-c-form name="searchForm" data-ng-submit="search()"><div class="input-group input-group-search"><span class="input-group-addon input-group-search-left"><i class="material_search"><\/i><\/span><input class="form-control" type="text" name="search" data-ng-model="filterSettings.searchFilter.filterValue.value" placeholder="Search..."><\/div><\/form><div class="btn-group"><button type="button" class="btn btn-default btn-icon" data-ng-click="toggle()"'+i.getAttributeString("button","filter-toggle")+'><i class="material_filter_list"><\/i><\/button><\/div>'),n(u.contents())(f))}var f=null;r.toggle=function(){r.filterSettings.toggleFilters()};r.search=function(){r.filterSettings.applyFilters()};r.isVisible=function(){return r.filterSettings.searchFilter!==null&&r.filterSettings.isOpened===!1};r.$watch(function(){return r.listerStatus},function(){e()!==!1&&o()},!1);o()}}}]);angular.module("sharedElements").directive("cInlineFilters",["$compile","constants","filterService",function(n,t,i){return{restrict:"A",scope:{filters:"=",search:"&"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function e(){if(o(),r.filters!==null){if(Object.prototype.toString.call(r.filters)!=="[object Array]")throw new Error('"filters" is not an Array');var e=$(document.createElement("div"));e.addClass("inline-filters");r.orderedFilters=i.getVisibleFilters(r.filters);angular.forEach(r.orderedFilters,function(n,i){if(n.type!==t.filterTypes.TEXT&&n.type!==t.filterTypes.DROPDOWN&&n.type!==t.filterTypes.DROPDOWN_ADVANCED)throw new Error("filter.type: "+n.type+" is not supported for use in a settingsListerFilter");n.type===t.filterTypes.TEXT?e.append('<div data-c-search-box data-value="orderedFilters['+i+'].filterValue.value" data-on-search="onChangeOrSearch()"><\/div>'):e.append('<div data-c-filter data-filter="orderedFilters['+i+']" data-on-change="onChangeOrSearch()"><\/div>')});n(e)(f);u.append(e)}}var f=null;r.onChangeOrSearch=function(){r.search()};r.$watch(function(){return r.filters},function(n,t){n!==t&&e()});e()}}}]);angular.module("sharedElements").directive("cLocationFilter",["$compile","helpService","constants",function(n,t,i){return{restrict:"A",scope:{filter:"=",form:"=",autoFillFunction:"&?",onChange:"&",showLabel:"@?"},link:function(r,u){function o(){e!==null&&e.$destroy();e=r.$new();u.html("")}function s(){if(o(),r.filter===null)return!1;if(r.filter.type!==i.filterTypes.LOCATION_FILTER)throw new Error('"filter.type" should be "LOCATION_FILTER"');return!0}function h(){var i,o,h,l,a;s()!==!1&&(r.filter.location.value=r.filter.filterValue.value,r.filter.distance.value=r.filter.filterValue.otherValues[0],r.filter.unit.value=r.filter.filterValue.otherValues[1],i=$(document.createElement("div")),i.addClass("location-filter"),i.append('<span class="location-filter-label">Within<\/span>'),i.append('<div class="location-filter-distance" data-c-input-field-int data-size="3" data-field="filter.distance" data-form="form"><\/div>'),i.append('<div class="location-filter-unit" data-c-input-field-picklist data-field="filter.unit" data-form="form"><\/div>'),i.append('<span class="location-filter-label">from<\/span>'),o=$(document.createElement("div")),o.addClass("grid grid-buffer"),h=$(document.createElement("div")),h.addClass("grid-body grid-body-full"),l=$(document.createElement("div")),l.addClass("grid-row"),a=$(document.createElement("div")),a.addClass("grid-cell"),f=$(document.createElement("div")),f.attr("data-c-input-field-text",""),f.attr("data-field","filter.location"),f.attr("data-form","form"),a.append(f),l.append(a),h.append(l),o.append(h),i.append(o),$(u).append(i),n(u.contents())(e),t.initializeAutoComplete(r.filter.location,"countries",r.form,f,c))}function c(n,t){if(typeof r.autoFillFunction=="undefined")throw new Error('"autofillfunction" is not defined');return r.autoFillFunction({name:n,value:t})}function l(){h()}var e=null,f=null;if(typeof r.filter=="undefined")throw new Error('"filter" is undefined');if(typeof r.form=="undefined")throw new Error('"form" is undefined');r.$watchCollection(function(){return r.filter===null?null:[r.filter.distance.value,r.filter.unit.value,r.filter.location.value]},function(n,t){n!==t&&n!==null&&(r.filter.filterValue.value=r.filter.location.value,r.filter.filterValue.otherValues[0]=r.filter.distance.value,r.filter.filterValue.otherValues[1]=r.filter.unit.value)},!1);r.$watchCollection(function(){return r.filter===null?null:[r.filter.filterValue.value,r.filter.filterValue.otherValues[0],r.filter.filterValue.otherValues[1]]},function(n,t){n!==t&&n!==null&&(r.filter.location.value=r.filter.filterValue.value,r.filter.distance.value=r.filter.filterValue.otherValues[0],r.filter.unit.value=r.filter.filterValue.otherValues[1])},!1);r.$on("$destroy",function(){$(f).trigger("destroy")});l()}}}]);angular.module("sharedElements").directive("cSearchBox",function(){return{restrict:"A",scope:{value:"=",onSearch:"&",showAdvanced:"@",maxWidth:"@"},templateUrl:"js/shared/common/directives/filter/searchBox/searchBox.html",link:function(n,t,i){function r(){if(typeof n.showAdvanced=="undefined")n.showAdvanced=!1;else if(n.showAdvanced==="true")n.showAdvanced=!0;else if(n.showAdvanced==="false")n.showAdvanced=!1;else throw new Error('"showAdvanced" has invalid value');if(typeof n.maxWidth=="undefined")n.maxWidth=!1;else if(n.maxWidth==="true")n.maxWidth=!0;else if(n.maxWidth==="false")n.maxWidth=!1;else throw new Error('"maxWidth" has invalid value');n.maxWidth===!0&&i.$addClass("search-box-full")}i.$addClass("search-box");n.submitForm=function(){n.onSearch()};r()}}});angular.module("sharedElements").directive("cSectionFilter",function(){return{restrict:"A",scope:{filter:"=",form:"=",onChange:"&"},templateUrl:"js/shared/common/directives/filter/sectionFilter/sectionFilter.html",controller:["$scope",function(n){n.change=function(){n.onChange()}}],link:function(n,t,i){i.$addClass("section-filter")}}});angular.module("sharedElements").directive("cHeroWidget",["$compile","helpService","constants",function(n,t,i){return{restrict:"A",scope:{section:"=",onAction:"&"},link:function(r,u){function o(){f!==null&&f.$destroy();f=r.$new();u.html("")}function s(){if(o(),r.section===null)return!1;if(Object.prototype.toString.call(r.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof r.section.id=="undefined")throw new Error('"section.id" is undefined');if(r.section.imageId!==null&&typeof r.section.imageId!="number")throw new Error('"section.imageId" is not number');if(r.section.actionButtons!==null&&Object.prototype.toString.call(r.section.actionButtons)!=="[object Array]")throw new Error('"section.actionButtons" is not an array');return!0}function e(){var i,h,t,c,l,e,o,a;s()&&(i=$('<div class="hero"><\/div>'),h=$('<div class="background hero-background" data-ng-style="getBackgroundImageStyle()"><\/div>'),i.append(h),t=$('<div class="hero-content" data-ng-class="{\'no-text-hero\': noTextContent() === true, \'no-bgImg-mobile-hero no-img-padding\': getBackgroundImageStyle() === null}" data-ng-style="getContentStyle()"><\/div>'),i.append(t),c=$('<h1 data-ng-if="section.title !== null" class="hero-title" data-ng-style="getTextTitleStyle()" data-ng-bind="section.title"><\/h1>'),t.append(c),l=$('<p class="hero-description" data-ng-if="section.description !== null" data-ng-style="getTextDescriptionStyle()" data-ng-bind="section.description"><\/p>'),t.append(l),e=$('<div class="hero-buttons"><\/div>'),t.append(e),o='data-is-more="false"',r.section.actionButtons!==null&&r.section.actionButtons.length===1&&r.section.actionButtons[0].length>1&&(o='data-is-more="true" data-t-name="isMore"'),a=$("<c-actions-button "+o+' data-actions="buttonActions" data-ng-repeat="buttonActions in section.actionButtons" data-on-action="handleAction(action)"><\/c-actions-button>'),e.append(a),$(u).append(n(i)(f)))}var f=null;r.isMobileDevice=function(){return t.isMobileDevice()===!0};r.getBackgroundImageStyle=function(){return r.section.imageId===null?null:{"background-image":"url('/File/Image/"+r.section.imageId+"')"}};r.getTextTitleStyle=function(){var n={color:"#"+r.section.textColor},t=i.fontSize.LARGE;t=typeof r.section.fontSize=="string"?parseInt(r.section.fontSize):r.section.fontSize;switch(t){case i.fontSize.SMALL:n["font-size"]="22px";break;case i.fontSize.MEDIUM:n["font-size"]="30px";break;case i.fontSize.LARGE:n["font-size"]="36px";break;case i.fontSize.EXTRA_LARGE:n["font-size"]="40px";break;default:n["font-size"]="36px"}return r.getTextShadowStyle(n)};r.getTextDescriptionStyle=function(){var n={color:"#"+r.section.textColor},t=i.fontSize.LARGE;t=typeof r.section.fontSize=="string"?parseInt(r.section.fontSize):r.section.fontSize;switch(t){case i.fontSize.SMALL:n["font-size"]="13px";break;case i.fontSize.MEDIUM:n["font-size"]="14px";break;case i.fontSize.LARGE:n["font-size"]="15px";break;case i.fontSize.EXTRA_LARGE:n["font-size"]="16px";break;default:n["font-size"]="15px"}return r.getTextShadowStyle(n)};r.getTextShadowStyle=function(n){return r.section.textShadowEnabled===!0?r.section.textShadowColor===null||r.section.textShadowColor===""?n:(n["text-shadow"]="1px 1px 4px #"+r.section.textShadowColor,n):n};r.getContentStyle=function(){var n={},t,u,f;if(r.section.imageId!==null&&r.section.overlayEnabled===!0&&r.section.overlayColor!==null&&r.section.overlayColor!==""&&(t=colorConvert.hex.rgb(r.section.overlayColor),u=1-r.section.overlayTransparency/100,n["background-color"]="rgba("+t[0]+", "+t[1]+", "+t[2]+", "+u+")"),r.section.height!==null){f=typeof r.section.height=="string"?parseInt(r.section.height):r.section.height;switch(f){case i.heroWidgetHeight.SHORT:n.padding="4% 15%";break;case i.heroWidgetHeight.MEDIUM:n.padding="8% 15%";break;case i.heroWidgetHeight.TALL:n.padding="10 15%"}}return n};r.noTextContent=function(){return(r.section.title===null||t.valueIsEmptyOrNull(r.section.title.value)===!0)&&(r.section.description===null||t.valueIsEmptyOrNull(r.section.description.value)===!0)};r.$watch(function(){return r.section},function(n,t){n!==t&&e()});r.handleAction=function(n){return r.onAction({action:n})};e()}}}]);angular.module("sharedElements").directive("cHeroWidgetButtonEditForm",function(){return{restrict:"A",templateUrl:"js/shared/common/directives/widget/heroWidgetButtonEditForm/heroWidgetButtonEditForm.html",scope:{form:"=",pendingAction:"=",preview:"=",anyChanges:"=",onAction:"&"},controller:["$scope","pageSharedDataFactory","helpService","componentService",function(n,t,i,r){function e(){n.onAction({action:"load"}).then(function(t){n.detailsSection=t.detailsSection;n.permissionFields.push(t.detailsSection.linkDestination);u.init([n.detailsSection],null,null,null);f.init(n.preview,function(){this.setField("label",n.detailsSection.label,"Sample")})})}function o(r){r.submit(function(){n.pendingAction=!0;t.showProcessingMessage();var u=i.prepareSectionsForAjax([],n.detailsSection);n.onAction({action:"save",data:{sections:u}}).then(function(){},i.handleError({invalidData:function(){r.validate().then(function(){n.pendingAction=!1;t.hideMessage()})}}))})}n.pendingAction=!1;n.detailsSection=null;n.permissionFields=[];typeof n.preview=="undefined"&&(n.preview=null);var u=r.getChangesHelper(),f=r.getPreviewHelper();n.save=function(n){o(n)};n.handleAction=function(t,i){switch(t){case"get-matching-users":return n.onAction({action:t,data:{getPermissions:i.getPermissions,linkDestination:n.detailsSection.linkDestination}});default:throw"Unknown action: "+t;}};n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.label!==null&&n.detailsSection.label.value!==null&&typeof n.detailsSection.label.value!="undefined"?n.detailsSection.label.value:null},function(t,i){t!==i&&(u.updateField(n.detailsSection.label,t),f.updateField(n.detailsSection.label,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.permissions!==null&&n.detailsSection.permissions.value!==null&&typeof n.detailsSection.permissions.value!="undefined"?n.detailsSection.permissions.value:null},function(t,i){t!==i&&u.updateField(n.detailsSection.permissions,t)});n.$watch(function(){return u.anyChanges()},function(t,i){t!==i&&(n.anyChanges=t)});e()}]}});angular.module("sharedElements").directive("cHeroWidgetEditForm",function(){return{restrict:"A",templateUrl:"js/shared/common/directives/widget/heroWidgetEditForm/heroWidgetEditForm.html",scope:{form:"=",pendingAction:"=",preview:"=?",anyChanges:"=?",usage:"@?",onAction:"&"},controller:["$scope","pageSharedDataFactory","helpService","listerService","constants","$q","componentService","securityService","validationService","$timeout",function(n,t,i,r,u,f,e,o,s,h){function k(){n.onAction({action:"load"}).then(function(t){n.detailsSection=t.detailsSection;n.listerData.settings=t.listerSettings;n.listerData.actions=t.listerActions;n.maxButtonCount=t.buttonCountLimitMax;t.buttonsLister!==null&&n.listerData.bindLister(t.buttonsLister);var i=null;n.listerData.lister!==null&&(i=[{name:"actionButtons",rows:n.listerData.lister.rows}]);c.init([n.detailsSection],i,null,null);l.init(n.preview,function(){this.setField("title",n.detailsSection.heroTitle,null);this.setField("description",n.detailsSection.description,null);this.setField("imageId",n.detailsSection.image,null);this.setField("textColor",n.detailsSection.textColor,null);this.setField("textShadowColor",n.detailsSection.textShadowColor,null);this.setField("overlayColor",n.detailsSection.overlayColor,null);this.setField("textShadowEnabled",n.detailsSection.textShadowEnabled,null);this.setField("overlayEnabled",n.detailsSection.overlayEnabled,null);this.setField("overlayTransparency",n.detailsSection.overlayTransparency,null);this.setField("fontSize",n.detailsSection.fontSize,null);n.detailsSection.height!==null&&this.setField("height",n.detailsSection.height,null);n.listerData.lister!==null&&(n.listerData.lister.rows!==undefined&&n.listerData.lister.rows!==null&&(y=n.listerData.lister.rows.length),this.setLister("actionButtons",n.listerData.lister.rows,function(n){var t=[];return angular.forEach(n,function(n){var i={id:n.id,name:null,label:n.title,link:"#",targetBlank:!1};t.push([i])}),t}))}).then(function(t){t.id=-1;n.preview=t})})}function d(r){switch(parseInt(n.usage)){case u.widgetUsage.CUSTOM_PAGE:a=!0;break;case u.widgetUsage.LIBRARY:p=!0;break;default:throw Error("Unknown widget usage: "+n.usage);}r.validate(!0).then(function(){r.submit(function(){switch(parseInt(n.usage)){case u.widgetUsage.CUSTOM_PAGE:if(n.showMissingButtonsMessage()===!0){h(function(){n.pendingAction=!1});return}break;case u.widgetUsage.LIBRARY:if(n.showMissingBackgroudImageMessage()===!0){h(function(){n.pendingAction=!1});return}break;default:throw Error("Unknown widget usage: "+n.usage);}n.pendingAction=!0;t.showProcessingMessage();var f=i.prepareSectionsForAjax([],n.detailsSection),e=v(n.listerData.lister);n.onAction({action:"save",data:{sections:f,buttonIds:e}}).then(function(){},i.handleError({invalidData:function(){r.validate().then(function(){n.pendingAction=!1;t.hideMessage()})}}))})})}function v(n){return n===null?null:_.map(n.rows,function(n){return n.id})}function g(t){var r=v(t.lister);i.editComponent({title:"Add Button",isLarge:!1,submitButton:{label:"Done",processingMessage:"Processing",successMessage:"Done"},template:'<div data-c-hero-widget-button-edit-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing" data-any-changes="anyChanges" data-preview="preview"><\/div>',preview:function(){var t={id:null,label:null};return n.preview.buttons.push(t),t},onCancel:function(t){n.preview.buttons=_.reject(n.preview.buttons,function(n){return n.id===t.id})},onAction:function(i,f){function e(){return o.httpGet("data/Pages/HeroWidget/LoadNewButtonSection")}function s(n){t.status=u.listerStatus.LOADING;var i=o.httpPost("data/Pages/HeroWidget/CreateButton",{sections:n,buttonIds:r});return a=!1,i.then(function(n){t.bindLister(n)}),i}switch(i){case"load":return e();case"save":return s(f.sections);case"get-matching-users":return n.onAction({action:i,data:{getPermissions:f.getPermissions,linkDestination:f.linkDestination,parentEntityPermissions:n.detailsSection.permissions}});default:throw"Unknown action: "+i;}}})}function nt(t,r){var f=v(r.lister);i.editComponent({title:"Edit Button",isLarge:!1,submitButton:{label:"Done",processingMessage:"Processing",successMessage:"Done"},template:'<div data-c-hero-widget-button-edit-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing" data-any-changes="anyChanges" data-preview="preview"><\/div>',preview:function(){return _.find(n.preview.buttons,function(n){return n.id===t})},onAction:function(i,e){function s(){return o.httpGet("data/Pages/HeroWidget/LoadEditButtonSection",{buttonId:t})}function h(n){r.status=u.listerStatus.LOADING;var i=o.httpPost("data/Pages/HeroWidget/UpdateButton",{id:t,sections:n,buttonIds:f});return i.then(function(n){r.bindLister(n)}),i}switch(i){case"load":return s();case"save":return h(e.sections);case"get-matching-users":return n.onAction({action:i,data:{getPermissions:e.getPermissions,linkDestination:e.linkDestination,parentEntityPermissions:n.detailsSection.permissions}});default:throw"Unknown action: "+i;}}})}function tt(i,r){var f=v(r.lister);t.showProcessingMessage("Removing...");r.status=u.listerStatus.LOADING;a=!0;o.httpPost("data/Pages/HeroWidget/DeleteButton",{buttonId:i,buttonIds:f}).then(function(i){t.showSuccessMessage("Removed!");r.bindLister(i);n.form[n.detailsSection.heroTitle.inputName].$dirty!==!0&&n.form[n.detailsSection.heroTitle.inputName].$setDirty();n.form[n.detailsSection.description.inputName].$dirty!==!0&&n.form[n.detailsSection.description.inputName].$setDirty()})}function it(n){i.openDialog({template:"js/shared/common/views/reorder/reorderItemsView.html",controller:["$scope",function(r){r.pendingAction=!1;r.title="Reorder Buttons";r.items=$.map(n.lister.rows,function(n){return i.generateSortItem(n.id,n.title)});r.save=function(){t.showProcessingMessage();r.pendingAction=!0;var i=$.map(r.items,function(n){return n.id});n.status=u.listerStatus.LOADING;o.httpPost("data/Pages/HeroWidget/ReorderButtons",i).then(function(i){n.bindLister(i);t.showSuccessMessage();r.pendingAction=!1;r.closeThisDialog()})}}]})}function w(n){return'You must have either content in this field or the "'+n+'" field, or add at least one Button to save.'}function b(n){return"Either the "+n.heroTitle.label.value+", "+n.description.label.value+" or "+n.image.label.value+" must have content in order to save."}var y;typeof n.preview=="undefined"&&(n.preview=null);typeof n.usage=="undefined"&&(n.usage=u.widgetUsage.CUSTOM_PAGE);var a=!1,p=!1,c=e.getChangesHelper(),l=e.getPreviewHelper();n.pendingAction=!1;n.detailsSection=null;n.maxButtonCount=undefined;y=0;n.listerData={lister:null,status:u.listerStatus.LOADING,settings:r.getListerSettings(),actions:i.getListerSectionActions(),bindLister:function(n){this.lister=n;this.status=u.listerStatus.RENDERING}};n.getAddIconActionTooltip=function(){return n.listerData.lister===undefined||n.listerData.lister.rows===undefined||n.listerData.lister.rows.length<n.maxButtonCount?null:"You have reached the limit of "+n.maxButtonCount+" Buttons."};n.validateButtons=function(){var t=n.listerData===undefined||n.listerData.lister===undefined||n.listerData.lister.rows.length<=Math.max(n.maxButtonCount,y),i=f.defer();return i.resolve(s.getCustomAsyncValidatorResult({success:t,message:t?"":"There must be at most "+n.maxButtonCount+" Buttons"})),i.promise};n.usageType=u.widgetUsage;n.isVisible=function(t){return t.includes(n.usage,0)};n.save=function(n){d(n)};n.handleAction=function(t,i){if(typeof t=="undefined")throw Error("action in handleAction is not defined.");switch(t){case"add-button":g(n.listerData);break;case"edit-button":nt(i.rowId,n.listerData);break;case"remove-button":tt(i.rowId,n.listerData);break;case"reorder-buttons":it(n.listerData);break;case"get-matching-users":return n.onAction({action:t,data:{getPermissions:i.getPermissions}});default:throw"Unexpected action name1: "+t;}};n.listerIsVisible=function(){return n.listerData.lister!==null&&n.listerData.lister.rows!==null&&n.listerData.lister.rows.length>0};n.showReorderButton=function(){return n.listerData.lister!==null&&n.listerData.lister.rows.length>1};n.showOverlay=function(){return n.detailsSection!==null&&n.detailsSection.image!==null&&n.detailsSection.image.value!==null&&typeof n.detailsSection.image.value!="undefined"};n.showOverlaySettings=function(){return n.showOverlay()===!1?!1:n.detailsSection!==null&&n.detailsSection.overlayEnabled!==null&&n.detailsSection.overlayEnabled.value==="true"};n.showTextShadowSettings=function(){return n.detailsSection!==null&&n.detailsSection.textShadowEnabled!==null&&n.detailsSection.textShadowEnabled.value==="true"};n.showHeightSettings=function(){return n.listerData.lister!==null};n.showMissingButtonsMessage=function(){return a===!1?!1:n.detailsSection===null?!1:n.listerData.lister===null||typeof n.listerData.lister.rows=="undefined"||n.listerData.lister.rows===null?!1:n.detailsSection.heroTitle===null?!1:n.detailsSection.description===null?!1:(typeof n.detailsSection.heroTitle.value=="undefined"||i.valueIsEmptyOrNull(n.detailsSection.heroTitle.value)===!0)&&(typeof n.detailsSection.description.value=="undefined"||i.valueIsEmptyOrNull(n.detailsSection.description.value)===!0)&&n.listerData.lister.rows.length===0};n.showMissingBackgroudImageMessage=function(){return p===!1?!1:n.detailsSection===null?!1:n.detailsSection.image===null?!1:n.detailsSection.heroTitle===null?!1:n.detailsSection.description===null?!1:(typeof n.detailsSection.heroTitle.value=="undefined"||i.valueIsEmptyOrNull(n.detailsSection.heroTitle.value)===!0)&&(typeof n.detailsSection.description.value=="undefined"||i.valueIsEmptyOrNull(n.detailsSection.description.value)===!0)&&(typeof n.detailsSection.image.value=="undefined"||n.detailsSection.image.value===null)};n.revalidateTitle=function(){if(n.detailsSection!==null&&n.detailsSection.description!==null&&typeof n.detailsSection.description.value!="undefined"&&i.valueIsEmptyOrNull(n.detailsSection.description.value)===!1)return!0;switch(parseInt(n.usage)){case u.widgetUsage.CUSTOM_PAGE:if(n.listerData.lister!==null&&n.listerData.lister.rows!==null&&n.listerData.lister.rows.length>0)return!0;break;case u.widgetUsage.LIBRARY:if(n.detailsSection!==null&&n.detailsSection.image!==null&&typeof n.detailsSection.image.value!="undefined"&&n.detailsSection.image.value!==null)return!0;break;default:throw Error("Unknown widget usage: "+n.usage);}return!1};n.validateEmptyFieldsTitle=function(t,r){if(t!=="hero-title-validator")throw Error("Unknown validator name: "+t);var e=f.defer();switch(parseInt(n.usage)){case u.widgetUsage.CUSTOM_PAGE:typeof r!="undefined"&&i.valueIsEmptyOrNull(r)===!1||typeof n.detailsSection.description.value!="undefined"&&i.valueIsEmptyOrNull(n.detailsSection.description.value)===!1||n.listerData.lister!==null&&n.listerData.lister.rows.length>0?(a=!1,e.resolve({success:!0})):(a=!0,n.form[n.detailsSection.description.inputName].$dirty!==!0&&n.form[n.detailsSection.description.inputName].$setDirty(),e.resolve({success:!1,message:w(n.detailsSection.description.label.value)}));break;case u.widgetUsage.LIBRARY:typeof r!="undefined"&&i.valueIsEmptyOrNull(r)===!1||typeof n.detailsSection.description.value!="undefined"&&i.valueIsEmptyOrNull(n.detailsSection.description.value)===!1||typeof n.detailsSection.image.value!="undefined"&&n.detailsSection.image.value!==null?e.resolve({success:!0}):e.resolve({success:!1,message:b(n.detailsSection)});break;default:throw Error("Unknown widget usage: "+n.usage);}return e.promise};n.validateEmptyFieldsDescription=function(t,r){if(t!=="hero-description-validator")throw Error("Unknown validator name: "+t);var e=f.defer();switch(parseInt(n.usage)){case u.widgetUsage.CUSTOM_PAGE:typeof r!="undefined"&&i.valueIsEmptyOrNull(r)===!1||typeof n.detailsSection.heroTitle.value!="undefined"&&i.valueIsEmptyOrNull(n.detailsSection.heroTitle.value)===!1||n.listerData.lister!==null&&n.listerData.lister.rows.length>0?(a=!1,e.resolve({success:!0})):(a=!0,n.form[n.detailsSection.heroTitle.inputName].$dirty!==!0&&n.form[n.detailsSection.heroTitle.inputName].$setDirty(),e.resolve({success:!1,message:w(n.detailsSection.heroTitle.label.value)}));break;case u.widgetUsage.LIBRARY:typeof r!="undefined"&&i.valueIsEmptyOrNull(r)===!1||typeof n.detailsSection.heroTitle.value!="undefined"&&i.valueIsEmptyOrNull(n.detailsSection.heroTitle.value)===!1||typeof n.detailsSection.image.value!="undefined"&&n.detailsSection.image.value!==null?e.resolve({success:!0}):e.resolve({success:!1,message:b(n.detailsSection)});break;default:throw Error("Unknown widget usage: "+n.usage);}return e.promise};n.revalidateDescription=function(){if(n.detailsSection!==null&&n.detailsSection.heroTitle!==null&&typeof n.detailsSection.heroTitle.value!="undefined"&&i.valueIsEmptyOrNull(n.detailsSection.heroTitle.value)===!1)return!0;switch(parseInt(n.usage)){case u.widgetUsage.CUSTOM_PAGE:if(n.listerData.lister!==null&&n.listerData.lister.rows!==null&&n.listerData.lister.rows.length>0)return!0;break;case u.widgetUsage.LIBRARY:if(n.detailsSection!==null&&n.detailsSection.image!==null&&typeof n.detailsSection.image.value!="undefined"&&n.detailsSection.image.value!==null)return!0;break;default:throw Error("Unknown widget usage: "+n.usage);}return!1};n.showButtonsSettings=function(){return n.listerData.lister!==null};n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.heroTitle!==null&&n.detailsSection.heroTitle.value!==null&&typeof n.detailsSection.heroTitle.value!="undefined"?n.detailsSection.heroTitle.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.heroTitle),l.updateField(n.detailsSection.heroTitle,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.description!==null&&n.detailsSection.description.value!==null&&typeof n.detailsSection.description.value!="undefined"?n.detailsSection.description.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.description),l.updateField(n.detailsSection.description,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.image!==null&&n.detailsSection.image.value!==null&&typeof n.detailsSection.image.value!="undefined"?parseInt(n.detailsSection.image.value):null},function(t,i){t!==i&&(c.updateField(n.detailsSection.image),l.updateField(n.detailsSection.image,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.textColor!==null&&n.detailsSection.textColor.value!==null&&typeof n.detailsSection.textColor.value!="undefined"?n.detailsSection.textColor.value:null},function(t,i){t!==i&&t!==null&&(c.updateField(n.detailsSection.textColor),l.updateField(n.detailsSection.textColor,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.textShadowEnabled!==null&&n.detailsSection.textShadowEnabled.value!==null&&typeof n.detailsSection.textShadowEnabled.value!="undefined"?n.detailsSection.textShadowEnabled.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.textShadowEnabled),l.updateField(n.detailsSection.textShadowEnabled,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.textShadowColor!==null&&n.detailsSection.textShadowColor.value!==null&&typeof n.detailsSection.textShadowColor.value!="undefined"?n.detailsSection.textShadowColor.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.textShadowColor),l.updateField(n.detailsSection.textShadowColor,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.overlayEnabled!==null&&n.detailsSection.overlayEnabled.value!==null&&typeof n.detailsSection.overlayEnabled.value!="undefined"?n.detailsSection.overlayEnabled.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.overlayEnabled),l.updateField(n.detailsSection.overlayEnabled,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.fontSize!==null&&n.detailsSection.fontSize.value!==null&&typeof n.detailsSection.fontSize.value!="undefined"?n.detailsSection.fontSize.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.fontSize),l.updateField(n.detailsSection.fontSize,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.overlayColor!==null&&n.detailsSection.overlayColor.value!==null&&typeof n.detailsSection.overlayColor.value!="undefined"?n.detailsSection.overlayColor.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.overlayColor),l.updateField(n.detailsSection.overlayColor,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.overlayTransparency!==null&&n.detailsSection.overlayTransparency.value!==null&&typeof n.detailsSection.overlayTransparency.value!="undefined"?n.detailsSection.overlayTransparency.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.overlayTransparency),l.updateField(n.detailsSection.overlayTransparency,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.height!==null&&n.detailsSection.height.value!==null&&typeof n.detailsSection.height.value!="undefined"?n.detailsSection.height.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.height),l.updateField(n.detailsSection.height,t))});n.$watch(function(){return n.listerData.lister!==null&&n.listerData.lister.rows!==null?n.listerData.lister.rows:null},function(n){n!==null&&(c.updateLister("actionButtons",n),l.updateLister("actionButtons",n))});n.$watch(function(){return c.anyChanges()},function(t,i){t!==i&&(n.anyChanges=t)});k()}]}});angular.module("sharedElements").directive("cIconsWidget",["$compile",function(n){return{restrict:"A",scope:{section:"="},link:function(t,i){function f(){r!==null&&r.$destroy();r=t.$new();i.html("")}function e(){if(f(),t.section===null)return!1;if(Object.prototype.toString.call(t.section)!=="[object Object]")throw new Error('"section" is not Object');if(typeof t.section.id=="undefined")throw new Error('"section.id" is undefined');if(t.section.icons!==null&&Object.prototype.toString.call(t.section.icons)!=="[object Array]")throw new Error('"section.icons" is not an array');return!0}function u(){var t,u,f;e()&&(t=$('<div class="quicklinks"><\/div>'),u=$('<div class="quicklinks-content"><\/div>'),t.append(u),f=$('<a class="quicklink" data-ng-repeat="icon in section.icons" data-ng-href="[[exec[[icon.link]]exec]]" data-ng-class="{\'disabled\': icon.tooltip !== null }" data-t-button="[[exec[[icon.title]]exec]]" data-t-instance="[[exec[[section.title]]exec]]" ng-attr-target="[[exec[[(icon.targetBlank === true) ? \'_blank\' : null]]exec]]" rel="noreferrer">   <div data-c-tooltip="[[exec[[getTooltipText(icon)]]exec]]" class="quicklink-graphic"><img data-ng-if="isIconVisible(icon) === true" data-ng-src="[[exec[[iconSrc(icon)]]exec]]"><\/div>   <div class="quicklink-body">       <h3 data-ng-bind="icon.title"><\/h3>       <p data-ng-if="icon.description !== null && icon.description !== \'\'" data-ng-bind="icon.description"><\/p>   <\/div><\/a>'),u.append(f),$(i).append(n(t)(r)))}var r=null;t.isIconVisible=function(n){return n.imageId!==null};t.iconSrc=function(n){return"/File/Image/"+n.imageId};t.getTooltipText=function(n){return n.tooltip!==null?n.tooltip:null};t.$watch(function(){return t.section},function(n,t){n!==t&&u()});u()}}}]);angular.module("sharedElements").directive("cIconsWidgetEditForm",function(){return{restrict:"A",templateUrl:"js/shared/common/directives/widget/iconsWidgetEditForm/iconsWidgetEditForm.html",scope:{form:"=",pendingAction:"=",preview:"=?",anyChanges:"=?",usage:"@?",onAction:"&",disabledAddTooltipMsg:"=?",skipValidation:"&?",failedValidationMsg:"=?"},controller:["$scope","pageSharedDataFactory","helpService","listerService","constants","$timeout","componentService","securityService","$q","validationService",function(n,t,i,r,u,f,e,o,s,h){function y(){n.onAction({action:"load"}).then(function(t){var i=e.getPrivatePreviewObject(t);i!==null&&(n.preview=i);n.detailsSection=t.detailsSection;n.listerData.settings=t.listerSettings;n.listerData.actions=t.listerActions;n.listerData.bindLister(t.iconsLister);n.minLimit=t.iconCountLimitMin;n.maxLimit=t.iconCountLimitMax;n.listerData.description=parseInt(n.usage)===u.widgetUsage.LIBRARY?"You can have a maximum of "+n.maxLimit+" Tiles.":"Add Icons to drive Users to specific areas within your portal. You can have a maximum of "+n.maxLimit+" Icons.";c.init([n.detailsSection],[{name:"icons",rows:n.listerData.lister.rows}],null,null);l.init(n.preview,function(){n.detailsSection.widgetTitle!=null&&this.setField("title",n.detailsSection.widgetTitle,"Sample");n.detailsSection.description!=null&&this.setField("description",n.detailsSection.description,null);n.detailsSection.showTitle!=null&&this.setField("showTitle",n.detailsSection.showTitle,null);n.listerData.lister.rows!==undefined&&n.listerData.lister.rows!==null&&(v=n.listerData.lister.rows.length);this.setLister("icons",n.listerData.lister.rows,function(n){var t=[];return angular.forEach(n,function(n){var i={id:n.id,title:n.title,description:n.additionalData.description,imageId:n.additionalData.imageId,link:"#",targetBlank:null,tooltip:null};t.push(i)}),t})}).then(function(t){t.id=-1;n.preview=t})})}function p(r){r.validate(!0).then(function(){r.submit(function(){n.pendingAction=!0;t.showProcessingMessage();var u=i.prepareSectionsForAjax([],n.detailsSection),f=a(n.listerData.lister);n.onAction({action:"save",data:{sections:u,iconIds:f}}).then(function(){},i.handleError({invalidData:function(){r.validate().then(function(){n.pendingAction=!1;t.hideMessage()})}}))})})}function a(n){return _.map(n.rows,function(n){return n.id})}function w(t){var r=a(t.lister);i.editComponent({title:parseInt(n.usage)===u.widgetUsage.LIBRARY?"Add Tile":"Add Icon",isLarge:!1,submitButton:{label:"Done",processingMessage:"Processing",successMessage:"Done"},template:'<div data-c-icons-widget-icon-edit-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing" data-any-changes="anyChanges" data-preview="preview" data-usage="'+n.usage+'"><\/div><div data-ng-if="isSetDestinationVisible() === true" class="btn btn-default" data-ng-click="handleAction(\'set-destination\')" data-t-button="Edit Destination" data-t-instance="new-icon">Edit Destination<\/div><div data-ng-if="isSetDestinationVisible() === true" class="help-block">Specify where in the Library to send Users when they click the Tile<\/div>',dependencies:["libraryService","constants"],preview:function(){var t={id:null,imageId:null,title:null,description:null,predefinedDestination:0,tooltip:null};return n.preview.icons.push(t),t},onCancel:function(t){n.preview.icons=_.reject(n.preview.icons,function(n){return n.id===t.id})},onAction:function(i,f,e,s,h){function c(){e.iconSection=null;e.isSetDestinationVisible=function(){return parseInt(n.usage)===h.widgetUsage.LIBRARY}}function l(){c();var t=o.httpGet("data/Pages/IconsWidget/LoadNewIconSection",{widgetUsage:n.usage});return t.then(function(t){e.iconSection=t.iconSection;parseInt(n.usage)===u.widgetUsage.LIBRARY&&(e.iconSection.customLinkDestination.value=s.getDestinationUrl())}),t}function a(i){t.status=u.listerStatus.LOADING;var f=o.httpPost("data/Pages/IconsWidget/CreateIcon",{sections:i,iconIds:r,widgetUsage:n.usage});return f.then(function(n){t.bindLister(n)}),f}switch(i){case"load":return l();case"save":return a(f.sections);case"get-matching-users":return n.onAction({action:i,data:{getPermissions:f.getPermissions,linkDestination:f.linkDestination,parentEntityPermissions:n.detailsSection.permissions}});case"set-destination":return n.onAction({action:i,data:e.iconSection});default:throw Error("Unknown action: "+i);}}})}function b(t,r){var f=a(r.lister);i.editComponent({title:parseInt(n.usage)===u.widgetUsage.LIBRARY?"Edit Tile":"Edit Icon",isLarge:!1,submitButton:{label:"Done",processingMessage:"Processing",successMessage:"Done"},dependencies:["constants"],template:'<div data-c-icons-widget-icon-edit-form data-on-action="handleAction(action, data)" data-form="form" data-pending-action="isProcessing" data-any-changes="anyChanges" data-preview="preview" data-usage="'+n.usage+'"><\/div><div data-ng-if="isSetDestinationVisible() === true" class="btn btn-default" data-ng-click="handleAction(\'set-destination\')" data-t-button="Edit Destination" data-t-instance="edit-icon">Edit Destination<\/div><div data-ng-if="isSetDestinationVisible() === true" class="help-block">Specify where in the Library to send Users when they click the Tile<\/div>',preview:function(){return _.find(n.preview.icons,function(n){return n.id===t})},onAction:function(i,e,s,h){function c(){s.iconSection=null;s.isSetDestinationVisible=function(){return parseInt(n.usage)===h.widgetUsage.LIBRARY}}function l(){c();var i=o.httpGet("data/Pages/IconsWidget/LoadEditIconSection",{iconId:t,widgetUsage:n.usage});return i.then(function(n){s.iconSection=n.iconSection}),i}function a(i){r.status=u.listerStatus.LOADING;var e=o.httpPost("data/Pages/IconsWidget/UpdateIcon",{id:t,sections:i,iconIds:f,widgetUsage:n.usage});return e.then(function(n){r.bindLister(n)}),e}switch(i){case"load":return l();case"save":return a(e.sections);case"get-matching-users":return n.onAction({action:i,data:{getPermissions:e.getPermissions,linkDestination:e.linkDestination,parentEntityPermissions:n.detailsSection.permissions}});case"set-destination":return n.onAction({action:i,data:s.iconSection});default:throw Error("Unknown action: "+i);}}})}function k(i,r){var f=a(r.lister);t.showProcessingMessage("Removing...");r.status=u.listerStatus.LOADING;o.httpPost("data/Pages/IconsWidget/DeleteIcon",{iconId:i,iconIds:f,widgetUsage:n.usage}).then(function(n){t.showSuccessMessage("Removed!");r.bindLister(n)})}function d(t){i.editComponent({title:"Reorder Icons",isLarge:!1,submitButton:{label:"Done",processingMessage:"Processing",successMessage:"Done"},dependencies:["constants","$q","helpService","$timeout"],template:'<form data-c-form class="form-horizontal" name="form" novalidate data-ng-submit="save(form)" data-pending-action="pendingAction"><div data-c-sorter data-items="items" data-translate="translate"><\/div><\/form>',doAutoLoad:!0,preview:function(){return n.preview.icons},onCancel:function(t){n.preview.icons=t},onAction:function(i,r,u,f,s,h,c){function a(){u.items=$.map(t.lister.rows,function(n){return h.generateSortItem(n.id,n.title)});l.init(null,null,null,[{name:"items",value:$.extend([],u.items)}]);u.save=function(n){n.submit(function(){u.handleAction("save",null)})};u.$watchCollection(function(){return u.items},function(t,i){if(t!==i){var r=[];angular.forEach(t,function(t){r.push(_.find(n.preview.icons,function(n){return n.id===t.id}))});l.update("items",$.extend([],t));n.preview.icons=r}});u.$watch(function(){return l.anyChanges()},function(n,t){n!==t&&(u.anyChanges=n)})}function v(){a();var n=s.defer();return c(function(){n.resolve(null)},1),n.promise}function y(){t.status=f.listerStatus.LOADING;var r=$.map(u.items,function(n){return n.id}),i=o.httpPost("data/Pages/IconsWidget/ReorderIcons",{iconIds:r,widgetUsage:n.usage});return i.then(function(n){t.bindLister(n)}),i}var l=e.getChangesHelper();switch(i){case"load":return v();case"save":return y();default:throw Error("Unknown action: "+i);}}})}var c,l,v;typeof n.preview=="undefined"&&(n.preview=null);typeof n.usage=="undefined"&&(n.usage=u.widgetUsage.CUSTOM_PAGE);c=e.getChangesHelper();l=e.getPreviewHelper();n.pendingAction=!1;n.detailsSection=null;n.minLimit=undefined;n.maxLimit=undefined;v=0;n.listerData={label:parseInt(n.usage)===u.widgetUsage.LIBRARY?null:"Icons",lister:null,status:u.listerStatus.LOADING,settings:r.getListerSettings(),actions:i.getListerSectionActions(),bindLister:function(n){this.lister=n;this.status=u.listerStatus.RENDERING},isVisible:function(){return this.lister!==null&&this.lister.rows!==null&&this.lister.rows.length>0}};n.usageType=u.widgetUsage;n.save=function(n){p(n)};n.handleAction=function(t,i){if(typeof t=="undefined")throw Error("action in handleAction is not defined.");switch(t){case"add-icon":if(n.getAddIconActionTooltip()!==null)return;w(n.listerData);break;case"edit-icon":b(i.rowId,n.listerData);break;case"remove-icon":k(i.rowId,n.listerData);break;case"reorder-icons":d(n.listerData);break;case"get-matching-users":return n.onAction({action:t,data:{getPermissions:i.getPermissions}});default:throw"Unexpected action name: "+t;}};n.listerIsVisible=function(){return n.listerData.lister!==null&&n.listerData.lister.rows!==null&&n.listerData.lister.rows.length>0};n.showDescription=function(){return n.detailsSection!==null&&n.detailsSection.showTitle!==null&&n.detailsSection.showTitle.value==="true"};n.showReorderButton=function(){return n.listerData.lister!==null&&n.listerData.lister.rows.length>1};n.isVisible=function(t){return t.includes(n.usage,0)};n.getAddIconActionTooltip=function(){return n.listerData.lister===undefined||n.listerData.lister.rows===undefined||n.maxLimit===undefined||n.listerData.lister.rows.length<n.maxLimit?null:n.disabledAddTooltipMsg};n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.widgetTitle!==null&&n.detailsSection.widgetTitle.value!==null&&typeof n.detailsSection.widgetTitle.value!="undefined"?n.detailsSection.widgetTitle.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.widgetTitle),l.updateField(n.detailsSection.widgetTitle,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.description!==null&&n.detailsSection.description.value!==null&&typeof n.detailsSection.description.value!="undefined"?n.detailsSection.description.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.description),l.updateField(n.detailsSection.description,t))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.showTitle!==null&&n.detailsSection.showTitle.value!==null&&typeof n.detailsSection.showTitle.value!="undefined"?n.detailsSection.showTitle.value:null},function(t,i){t!==i&&(c.updateField(n.detailsSection.showTitle),l.updateField(n.detailsSection.showTitle,t))});n.$watch(function(){return n.listerData.lister!==null&&n.listerData.lister.rows!==null?n.listerData.lister.rows:null},function(n){n!==null&&(c.updateLister("icons",n),l.updateLister("icons",n))});n.$watch(function(){return n.detailsSection!==null&&n.detailsSection.permissions!==null&&n.detailsSection.permissions.value!==null&&typeof n.detailsSection.permissions.value!="undefined"?n.detailsSection.permissions.value:null},function(t,i){t!==i&&c.updateField(n.detailsSection.permissions)});n.$watch(function(){return c.anyChanges()},function(t,i){t!=i&&(n.anyChanges=t)});n.validateIcons=function(){var t=function(){if(n.skipValidation!==undefined&&n.skipValidation()===!0||n.listerData===undefined||n.listerData.lister===undefined)return!0;var t=n.listerData.lister.rows.length;return t<n.minLimit||t>Math.max(n.maxLimit,v)?!1:!0}(),i=s.defer();return i.resolve(h.getCustomAsyncValidatorResult({success:t,message:t?"":n.failedValidationMsg})),i.promise};y()}]}});angular.module("sharedElements").directive("cIconsWidgetIconEditForm",function(){return{restrict:"A",templateUrl:"js/shared/common/directives/widget/iconsWidgetIconEditForm/iconsWidgetIconEditForm.html",scope:{form:"=",pendingAction:"=",preview:"=?",anyChanges:"=?",usage:"@",onAction:"&"},controller:["$scope","pageSharedDataFactory","helpService","componentService","constants",function(n,t,i,r,u){function o(){n.onAction({action:"load"}).then(function(t){n.iconSection=t.iconSection;t.iconSection.linkDestination!==null&&n.permissionFields.push(t.iconSection.linkDestination);f.init([n.iconSection],null,null,null);e.init(n.preview,function(){this.setField("title",n.iconSection.iconTitle,"Sample");this.setField("imageId",n.iconSection.image,null);n.iconSection.description!==null&&this.setField("description",n.iconSection.description,null)}).then(function(t){n.preview=t})})}function s(r){r.submit(function(){n.pendingAction=!0;t.showProcessingMessage();var u=i.prepareSectionsForAjax([],n.iconSection);n.onAction({action:"save",data:{sections:u}}).then(function(){},i.handleError({invalidData:function(){r.validate().then(function(){n.pendingAction=!1;t.hideMessage()})}}))})}n.pendingAction=!1;n.iconSection=null;n.permissionFields=[];typeof n.preview=="undefined"&&(n.preview=null);n.usageType=u.widgetUsage;var f=r.getChangesHelper(),e=r.getPreviewHelper();n.save=function(n){s(n)};n.isVisible=function(t){return t.indexOf(n.usage)>0};n.handleAction=function(t,i){switch(t){case"get-matching-users":return n.onAction({action:"get-matching-users",data:{getPermissions:i.getPermissions,linkDestination:n.iconSection.linkDestination}});case"set-destination":return n.onAction({action:t,data:i});default:throw Error("Unknown action: "+t);}};n.$watch(function(){return n.iconSection!==null&&n.iconSection.iconTitle!==null&&n.iconSection.iconTitle.value!==null&&typeof n.iconSection.iconTitle.value!="undefined"?n.iconSection.iconTitle.value:null},function(t,i){t!==i&&(f.updateField(n.iconSection.iconTitle,t),e.updateField(n.iconSection.iconTitle,t))});n.$watch(function(){return n.iconSection!==null&&n.iconSection.description!==null&&n.iconSection.description.value!==null&&typeof n.iconSection.description.value!="undefined"?n.iconSection.description.value:null},function(t,i){t!==i&&(f.updateField(n.iconSection.description,t),e.updateField(n.iconSection.description,t))});n.$watch(function(){return n.iconSection!==null&&n.iconSection.image!==null&&n.iconSection.image.value!==null&&typeof n.iconSection.image.value!="undefined"?parseInt(n.iconSection.image.value):null},function(t,i){t!==i&&(f.updateField(n.iconSection.image,t),e.updateField(n.iconSection.image,t))});n.$watch(function(){return n.iconSection!==null&&n.iconSection.permissions!==null&&n.iconSection.permissions.value!==null&&typeof n.iconSection.permissions.value!="undefined"?n.iconSection.permissions.value:null},function(t,i){t!==i&&f.updateField(n.iconSection.permissions,t)});n.$watch(function(){return f.anyChanges()},function(t,i){t!==i&&(n.anyChanges=t)});o()}]}});angular.module("sharedElements").controller("ContactSupportDialogCtrl",["$scope","pageSharedDataFactory","helpService","contactSupportService","appDetailsValue","constants",function(n,t,i,r,u,f){function e(){n.isLoading=!0;r.loadQuestionFieldDescription().then(function(t){n.isLoading=!1;n.questionDescription=t})}n.form=null;n.pendingAction=!1;n.contactSupportDescription=u.help.contactSupportDescription;n.questionDescription=null;n.isLoading=!1;var o=t.header.userName===""?t.header.userEmail:'"'+t.header.userName+'" <'+t.header.userEmail+">";n.fromField=i.getField({label:"From",name:"from",type:f.fieldType.READ_ONLY,value:o});n.submitQuestionComment=function(u){u.submit(function(){n.pendingAction=!0;t.showProcessingMessage("Sending...");var u=i.prepareSectionsForAjax([],n.questionDescription);r.submitQuestionComment(u).then(function(){t.showSuccessMessage("Sent!");n.pendingAction=!1;n.closeThisDialog()})})};e()}]);angular.module("sharedElements").service("contactSupportService",["securityService","helpService",function(n,t){this.loadQuestionFieldDescription=function(){return n.httpGet("data/Common/ContactSupport/LoadQuestionFieldDescription")};this.submitQuestionComment=function(i){return n.httpPost("data/Common/ContactSupport/SubmitQuestionComment",{sections:t.getProcessedSections(i)})}}]);angular.module("sharedElements").controller("CookiesNotEnabledDialogCtrl",["$scope","$window","helpService",function(n,t,i){n.reload=function(){t.location.reload();n.closeThisDialog()};n.goToPreviousPage=function(){i.goToPreviousPage("Home");n.closeThisDialog()}}]);angular.module("sharedElements").directive("cEmailSettingsEditForm",function(){return{restrict:"A",templateUrl:"js/shared/common/views/emailSettings/emailSettingsEditForm.html",scope:{form:"=",pendingAction:"=",onAction:"&"},controller:["$scope","constants","pageSharedDataFactory","helpService","securityService",function(n,t,i,r,u){function o(){n.onAction({action:"load"}).then(function(t){n.section=t})}function f(n){return typeof n!="undefined"&&n!==null&&n==="true"?!0:!1}var e={EVENT_NOTIFICATION:1,REMINDER:2,MARKETING:3};n.pendingAction=!1;n.section=null;n.showEmailSubscriptionsField=function(){return f(n.section.receiveEmails.value)};n.showEmailNotificationSection=function(){return f(n.section.receiveEmails.value)===!1?!1:_.find(n.section.emailSubscriptions.value,function(n){return n==e.EVENT_NOTIFICATION})!=undefined};n.showEmailRemindersSection=function(){return f(n.section.receiveEmails.value)===!1?!1:_.find(n.section.emailSubscriptions.value,function(n){return n==e.REMINDER})==undefined?!1:n.section.emailReminderSubscriptions!==null};n.showDays=function(n){return n.value===null||typeof n.value=="undefined"||n.value===t.emailReminderFrequency.DEFAULT||n.value===t.emailReminderFrequency.DISABLED?!1:!0};n.validateFrequencyInterval=function(t,i,r){var f,e,o;if(t!=="frequency-interval-validator")throw new Error('"'+t+'" unknown validator name.');for(f=null,e=0;e<n.section.emailReminderSubscriptions.length;e++)o=n.section.emailReminderSubscriptions[e],o.id===r&&(f=parseInt(o.frequency.value));if(f===null)throw new Error('Subscription with id "'+r+'" was not found.');return u.httpGet("data/Common/Validation/ValidateEmailReminderFrequencyInterval",{subscriptionId:r,frequency:f,daysInterval:i})};n.update=function(t){t.submit(function(){var u,o,f,s,e;if(n.pendingAction=!0,i.showProcessingMessage(),u=r.prepareSectionsForAjax([],n.section),u=r.getProcessedSections(u),o=[],n.showEmailRemindersSection()===!0)for(f=0;f<n.section.emailReminderSubscriptions.length;f++)s=n.section.emailReminderSubscriptions[f],e=r.prepareSectionsForAjax([],s),e=r.getProcessedSections(e),o.push({id:s.id,sections:e});n.onAction({action:"save",data:{sections:u,updatedSubscriptions:o}}).then(function(){},r.handleError({invalidData:function(){t.validate().then(function(){n.pendingAction=!1;i.hideMessage()})}}))})};n.$watch(function(){return n.section===null?null:n.section.receiveEmails.value},function(t,i){t!==i&&(n.section.receiveEmails.description=t=="true"?n.section.receiveEmailsDescriptionCheckedValue:n.section.receiveEmailsDescriptionUncheckedValue)},!0);o()}]}});angular.module("sharedElements").controller("InvalidRequestDialogCtrl",["$scope","$window","helpService",function(n,t,i){n.reload=function(){t.location.reload();n.closeThisDialog()};n.goToPreviousPage=function(){i.goToPreviousPage("Home");n.closeThisDialog()}}]);angular.module("sharedElements").controller("LoginDialogCtrl",["$scope","pageSharedDataFactory","$window","securityService","appDetailsValue","translationHelperService",function(n,t,i,r,u,f){function o(){(t.serviceUnavailable.promise.$$state.status===1||t.serviceUnavailable.promise.$$state.status===2)&&(n.errorMessage=null,n.loginErrorMessage=null,r.isLoggedIn().then(function(i){if(i.success){if(typeof i.redirectPath=="undefined")throw new Error('"BUG ID(4): 48038" result.redirectPath is undefined. result: "'+JSON.stringify(i)+"'");if(i.redirectPath!==null){helpService.redirect(i.redirectPath);return}t.session.resolve();e!==null&&e.close();t.loginDialog.close()}else n.errorMessage=i.errorMessage}))}function s(){n.errorMessage=n.ngDialogData.sessionError.message;n.ngDialogData.sessionError.isWebLoginEnabled===!0&&n.ngDialogData.sessionError.storedEmail!==null&&(n.email=n.ngDialogData.sessionError.storedEmail,n.rememberLogin=!0);n.ngDialogData.sessionError.isWebLoginEnabled&&n.ngDialogData.sessionError.identityProviders!==null?n.loginModeMessage="Select an Identity Provider or log in using your "+u.portalName+" User account below:":n.ngDialogData.sessionError.isWebLoginEnabled===!1&&n.ngDialogData.sessionError.identityProviders!==null&&(n.loginModeMessage="Select an Identity Provider:");angular.element(i).on("focus",o)}var e=null;n.title="Log in to "+f.wrapTextInVar(u.portalName,f.variableName.PORTAL_NAME);n.isProcessing=!1;n.errorMessage=null;n.loginErrorMessage=null;n.email=null;n.password=null;n.rememberLogin=!1;n.loginModeMessage=null;n.login=function(i){i.email.$commitViewValue();i.password.$commitViewValue();i.submit(function(){n.errorMessage=null;n.loginErrorMessage=null;r.login(n.email,n.password,n.rememberLogin).then(function(r){r.success?(t.session.resolve(),t.loginDialog.close(),t.refreshHeader!==null&&t.refreshHeader()):(n.password=null,i.$setPristine(),n.loginErrorMessage=r.errorMessage,n.ngDialogData.sessionError.isWebLoginEnabled&&n.ngDialogData.sessionError.identityProviders!==null?n.loginModeMessage="Select an Identity Provider or log in using your "+u.portalName+" User account below:":n.ngDialogData.sessionError.isWebLoginEnabled===!1&&n.ngDialogData.sessionError.identityProviders!==null&&(n.loginModeMessage="Select an Identity Provider:"),n.isProcessing=!1)})})};n.getLoginLogoUrl=function(){return"File/"+u.loginLogoId};n.getLoginLogoAdditionalClass=function(){return u.loginLogoAdditionalClass};n.forgotPassword=function(){e=r.openPasswordLookupDialog(n.email)};n.$on("$destroy",function(){angular.element(i).off("focus",o)});s()}]);angular.module("sharedElements").controller("PasswordLookupCtrl",["$scope","securityService",function(n,t){function i(t){n.step=t.step;n.message=t.message;switch(t.step){case n.steps.VERIFY_SECRET_ANSWER:n.secretQuestion=t.secretQuestion}}function r(){return n.message=null,t.lookupPassword(n.step,n.email.value,n.secretAnswer.value)}function u(){n.email.value=n.ngDialogData.email;r().then(function(t){i(t);n.isLoading=!1})}n.pendingAction=!1;n.isLoading=!0;n.message=null;n.email={value:null};n.secretQuestion=null;n.secretAnswer={value:null};n.steps={CHECK_SESSION:1,FIND_USER:2,VERIFY_SECRET_ANSWER:3,CONFIRMATION:4};n.step=n.steps.CHECK_SESSION;n.submitForm=function(t){n.pendingAction=!0;t.submit(function(){r().then(function(t){i(t);n.pendingAction=!1})})};u()}]);angular.module("sharedElements").controller("PdfTemplateEditorCtrl",["$scope","pageSharedDataFactory","constants","appDetailsValue","$compile","helpService","$timeout","$element","wysiwygService","translationHelperService","listerService","imageChooserService",function(n,t,i,r,u,f,e,o,s,h,c,l){function ri(){switch(v.templateType){case i.pdfTemplateType.COBRANDED_ASSET:return!0;case i.pdfTemplateType.TRAINING_CERTIFICATION:case i.pdfTemplateType.AGREEMENT_LETTERHEAD:return!1;default:throw"Unknown pdfTemplateType: "+v.templateType;}}function ui(t){n.imagesLister=t;n.imagesListerStatus=i.listerStatus.RENDERING}function wi(){return ii++,ii}function k(){return n.zoom.selectedOption.value}function tt(){return n.activeContentArea===null?!0:n.form.$invalid===!0?(n.form[n.textFields.fontFamily.inputName].$dirty===!1&&n.form[n.textFields.fontFamily.inputName].$setDirty(),f.openInformationMessageDialog("Content Area Error","Please correct the errors with the Content Area before continuing."),!1):!0}function lt(t,i){var r=_.find(n.pages,function(n){return n.id===parseInt(t)});return _.find(r.contentAreas,function(n){return n.tempId===parseInt(i)})}function at(n,t){var u=$('<div class="doc-element" data-ng-class="{\'doc-element-error\': contentAreaIsInvalid('+t.id+", "+n.tempId+')}"/>'),r,e,s,c,o;h.setTranslateAttribute(u,!1);r=$('<div class="doc-element-content"/>');e=null;switch(n.type){case i.contentAreaType.TEXT:r.css({"font-family":n.fontFamily,"font-size":f.convertPointsToPixels(n.fontSize,d)+"px","line-height":f.convertPointsToPixels(f.getLeading(n.fontSize,n.lineHeight),d)+"px","text-align":f.getTextHorizontalAlignmentValue(n.horizontalAlignment),"vertical-align":f.getTextVerticalAlignmentValue(n.verticalAlignment),color:n.textColor});s=$('<div class="doc-element-text"/>');e=$('<div class="doc-element-editor"/>');e.html(n.content);s.append(e);r.append(s);u.mousedown(function(n){y.selectedElement=n.currentTarget});break;case i.contentAreaType.LOGO:r.css({"background-position":f.getImageAlignmentValue(n.horizontalAlignment,n.verticalAlignment),"background-image":"url(assets/img/avatars/logo-1500x900.svg)"});break;case i.contentAreaType.IMAGE:n.imageId!==null?(n.calculateMaxImageDimensions(),c="File/Image/"+n.imageId,o=$('<img data-c-image-placeholder data-mode="max-resizable" src="'+c+'" />'),o.css("height","100%"),o.css("width","100%"),r.append(o)):r.css({"background-position":f.getImageAlignmentValue(i.horizontalAlignment.CENTER,i.verticalAlignment.MIDDLE),"background-image":"url(assets/img/avatars/image-1200x600.svg)"})}switch(v.templateType){case i.pdfTemplateType.COBRANDED_ASSET:case i.pdfTemplateType.TRAINING_CERTIFICATION:u.attr("data-ng-click",'contentAreaClicked($event,"'+n.tempId+'")');break;case i.pdfTemplateType.AGREEMENT_LETTERHEAD:break;default:throw"Unknown pdfTemplateType: "+v.templateType;}u.on("mouseenter",{contentArea:n},function(){n.setNavigationItemActive()});u.on("mouseleave",{contentArea:n},function(){n.setNavigationItemInactive()});return u.append(r),n.contentElement=r,n.editorElement=e,u}function et(t){angular.forEach(t.contentAreas,function(i){i.element===null&&(i.element=at(i,t),it.append(i.element),yt(i),ot(i),u(i.element)(n));i.updatePosition();i.updateDimensions();i.show()})}function fi(t,r){var u=$(document.createElement("div")),f,e,o,s;u.addClass("doc-jump");u.attr("data-ng-class","{'doc-jump-error': contentAreaIsInvalid("+r+","+t.tempId+")}");u.attr("data-ng-click","goToContentArea($event,"+r+", "+t.tempId+")");u.on("mouseenter",{contentArea:t},function(){t.setActive()});u.on("mouseleave",{contentArea:t},function(){(n.activeContentArea===null||n.activeContentArea.tempId!==t.tempId)&&t.setInactive()});f=$(document.createElement("a"));f.addClass("doc-jump-link");f.attr("href","javascript:;");e=null;switch(t.type){case i.contentAreaType.TEXT:e="Text";break;case i.contentAreaType.LOGO:e="Logo";break;case i.contentAreaType.IMAGE:e="Image";break;default:throw"Unknown assetType: "+t.type;}return o=$(document.createElement("span")),o.addClass("doc-jump-link-label"),o.text(e),f.append(o),u.append(f),s=$('<div class="doc-jump-message" data-ng-if="getContentAreaValidationMessage('+r+", "+t.tempId+') !== null" data-ng-bind-html="getContentAreaValidationMessage('+r+", "+t.tempId+')" />'),u.append(s),u}function bi(n){var t=_.find(w.fontFamily.listItems,function(t){return t.isEnabled===!0&&t.value===n});return typeof t=="undefined"?!1:!0}function ei(t,u){function e(n,t){if(t===null)return!1;var i=f.getFormattingOptions(rt,n),r=f.getFormattingOptions(rt,t);return i.bold===r.bold&&i.italic===r.italic?!1:!0}t.tempId=wi();t.page=u;t.element=null;t.contentElement=null;t.editorElement=null;t.navigationElement=null;t.isValid=null;t.validationMessage=null;t.isDeleted=!1;t.updatePosition=function(n){this.element!==null&&(n===!0?this.element.animate({top:t.top+"%",left:t.left+"%"},500):this.element.css({left:t.left+"%",top:t.top+"%"}))};t.updateDimensions=function(){if(this.element!==null){var n=k();this.element.css("transform-origin","0px 0px 0px").css("transform","translate(0px, 0px) scale("+1/n+")").css("width",this.width*n+"%").css("height",this.height*n+"%");this.contentElement.css("transform-origin","0px 0px 0px").css("transform","translate(0px, 0px) scale("+n+")").css("width",100/n+"%").css("height",100/n+"%")}};t.show=function(){this.element!==null&&this.element.css("visibility","visible")};t.hide=function(){this.element!==null&&this.element.css("visibility","hidden")};t.validate=function(){var u;this.isValid=!0;this.validationMessage=null;switch(v.templateType){case i.pdfTemplateType.AGREEMENT_LETTERHEAD:return;case i.pdfTemplateType.TRAINING_CERTIFICATION:case i.pdfTemplateType.COBRANDED_ASSET:var e=this.left,o=this.left+this.width,s=this.top,h=this.top+this.height,c=this.tempId,f=_.filter(n.activePage.contentAreas,function(n){return c!==n.tempId&&n.isDeleted===!1});for(u=0;u<f.length;u++){var r=f[u],l=r.left,a=r.left+r.width,y=r.top,p=r.top+r.height,w=!(e>a||o<l),b=!(s>p||h<y);if(w&&b){this.isValid=!1;this.validationMessage="Content Areas cannot overlap.";break}}if(this.isValid===!0)switch(t.type){case i.contentAreaType.IMAGE:t.imageId===null?(this.isValid=!1,this.validationMessage="No Image was chosen."):(this.isValid=!0,this.validationMessage=null);return;case i.contentAreaType.LOGO:this.isValid=!0;this.validationMessage=null;return;case i.contentAreaType.TEXT:var k=this.contentElement[0].clientHeight,d=this.contentElement.find(".fr-wrapper")[0]||this.contentElement.find(".doc-element-text")[0],g=d.clientHeight;g<=k?(this.isValid=!0,this.validationMessage=null):(this.isValid=!1,this.validationMessage="Text content is too long and cannot fit into the Content Area. You can fix this by making the text shorter or removing leading or trailing line breaks.");bi(this.fontFamily)===!1&&(this.isValid=!1,this.validationMessage="The font for this Content Area is not valid anymore. Please change the font to a valid one.");return;default:throw Error("Not implemented content area type: "+t.type);}break;default:throw"Unknown pdfTemplateType: "+v.templateType;}};t.isActive=function(){return this.element===null?!1:this.element.hasClass(g)};t.setActive=function(){this.element!==null&&this.element.addClass(g)};t.setInactive=function(){this.element!==null&&this.element.removeClass(g)};t.setNavigationItemActive=function(){this.navigationElement!==null&&this.navigationElement.addClass("active")};t.setNavigationItemInactive=function(){this.navigationElement!==null&&this.navigationElement.removeClass("active")};t.toggleDraggable=function(n){this.element!==null&&this.element.draggable({disabled:n})};t.destroyFroalaEditor=function(){switch(this.type){case i.contentAreaType.TEXT:this.editorElement!==null&&this.editorElement.hasClass("fr-box")===!0&&(s.getEditor(this.editorElement).destroy(),this.content=this.editorElement.html());return;default:throw Error("Not implemented content area type: "+this.type);}};t.calculateMaxImageDimensions=function(){var n=this.imageWidthPx*st,t=this.imageHeightPx*st,i=n/this.page.width*100,r=t/this.page.height*100;this.maxImageWidth=i;this.maxImageHeight=r};t.initFroalaEditor=function(){var n,t,u;switch(this.type){case i.contentAreaType.TEXT:if(this.editorElement===null)return;n={attribution:!1,key:r.wysiwygApiKey,toolbarContainer:dt,charCounterCount:!1,pastePlain:!0,quickInsertEnabled:!1,htmlAllowedTags:ni,htmlAllowedAttrs:ti,toolbarButtons:["underline"],toolbarButtonsMD:["underline"],toolbarButtonsSM:["underline"],toolbarButtonsXS:["underline"],events:{"html.get":function(n){return n.replace(/id="isPasted"/g,"")}}};t=f.getFormattingOptions(rt,this.fontFamily);t.italic===!0&&(n.toolbarButtons.unshift("italic"),n.toolbarButtonsMD.unshift("italic"),n.toolbarButtonsSM.unshift("italic"),n.toolbarButtonsXS.unshift("italic"));t.bold===!0&&(n.toolbarButtons.unshift("bold"),n.toolbarButtonsMD.unshift("bold"),n.toolbarButtonsSM.unshift("bold"),n.toolbarButtonsXS.unshift("bold"));s.addPlaceholders(n,gt);u=new FroalaEditor(this.editorElement[0],n);s.setEditor(this.editorElement,u);return;default:throw Error("Not implemented content area type: "+this.type);}};t.setHorizontalAlignment=function(n){if(typeof n!="undefined"&&(this.horizontalAlignment=n,this.contentElement!==null))switch(this.type){case i.contentAreaType.LOGO:case i.contentAreaType.IMAGE:this.contentElement.css({"background-position":f.getImageAlignmentValue(this.horizontalAlignment,this.verticalAlignment)});break;case i.contentAreaType.TEXT:this.contentElement.css({"text-align":f.getTextHorizontalAlignmentValue(n)})}};t.setVerticalAlignment=function(n){if(typeof n!="undefined"&&(this.verticalAlignment=n,this.contentElement!==null))switch(this.type){case i.contentAreaType.LOGO:case i.contentAreaType.IMAGE:this.contentElement.css({"background-position":f.getImageAlignmentValue(this.horizontalAlignment,this.verticalAlignment)});return;case i.contentAreaType.TEXT:this.contentElement.css({"vertical-align":f.getTextVerticalAlignmentValue(n)});return;default:throw Error("Not implemented content area type: "+this.type);}};t.setFontSize=function(n){switch(this.type){case i.contentAreaType.TEXT:if(typeof n=="undefined")return;if(n===""||n==="0")return;if(this.fontSize=n,this.contentElement===null)return;this.contentElement.css({"font-size":f.convertPointsToPixels(n,d)+"px","line-height":f.convertPointsToPixels(f.getLeading(n,this.lineHeight),d)+"px"});return;default:throw Error("Not implemented content area type: "+this.type);}};t.setFontFamily=function(n,t){switch(this.type){case i.contentAreaType.TEXT:if(typeof n=="undefined")return;if(this.fontFamily=n,this.contentElement===null)return;if(this.contentElement.css({"font-family":n}),e(n,t)){var u=f.getFormattingOptions(rt,n),r=this.editorElement.html();u.bold===!1&&(r=r.replace(/<strong>/gi,"").replace(/<\/strong>/gi,""));u.italic===!1&&(r=r.replace(/<em>/gi,"").replace(/<\/em>/gi,""));this.editorElement.html(r);this.destroyFroalaEditor();this.initFroalaEditor()}return;default:throw Error("Not implemented content area type: "+this.type);}};t.setLineHeight=function(n){switch(this.type){case i.contentAreaType.TEXT:if(typeof n=="undefined")return;if(n===""||n==="0")return;if(this.lineHeight=n,this.contentElement===null)return;this.contentElement.css({"line-height":f.convertPointsToPixels(f.getLeading(this.fontSize,n),d)+"px"});return;default:throw Error("Not implemented content area type: "+this.type);}};t.setTextColor=function(n){switch(this.type){case i.contentAreaType.TEXT:if(typeof n=="undefined"||n==="")return;if(this.textColor=n,this.contentElement===null)return;this.contentElement.css({color:n});return;default:throw Error("Not implemented content area type: "+this.type);}};t.setIsEditable=function(n){switch(this.type){case i.contentAreaType.TEXT:if(typeof n=="undefined")return;this.isEditable=n;return;default:throw Error("Not implemented content area type: "+this.type);}}}function oi(n){y.isScrollByDraggingActive===!0&&(n.stopPropagation(),n.stopImmediatePropagation(),n.preventDefault(),a.scrollTop(a.scrollTop()-(n.clientY-y.y)),y.y=n.clientY,a.scrollLeft(a.scrollLeft()-(n.clientX-y.x)),y.x=n.clientX)}function si(){y.isScrollByDraggingActive=!1}function ki(){it.bind("mousedown",function(n){var t=$(n.target).closest(".doc-element");t.length>0||(y.x=n.clientX,y.y=n.clientY,y.isScrollByDraggingActive=!0)});$(window).bind("mousemove",oi);$(window).bind("mouseup",si)}function di(){v.onAction("load",null).then(function(t){switch(v.templateType){case i.pdfTemplateType.COBRANDED_ASSET:n.dialogTitle="Edit Content Areas";n.dialogDescription=null;break;case i.pdfTemplateType.TRAINING_CERTIFICATION:n.dialogTitle="Edit";n.dialogDescription=null;t.title!==null&&(n.dialogTitle=t.title+" - "+n.dialogTitle);break;case i.pdfTemplateType.AGREEMENT_LETTERHEAD:n.dialogTitle="Letterhead";n.dialogDescription="Adjust the margins of the Agreement template";break;default:throw"Unknown pdfTemplateType: "+v.templateType;}w=t.textContentAreaFieldsSection;ft=t.logoContentAreaFieldsSection;gt=t.contentAreaPlaceholders;st=t.editorToOutputDpiRatio;d=t.dpi;n.newButtonActions=t.newButtonActions;n.secondaryActions=t.secondaryActions;n.pages=t.pages;rt=t.fontFormattingOptions;ni=t.wysiwygAllowedTags;ti=t.wysiwygAllowedAttributes;angular.forEach(n.pages,function(n){n.navElementsContainer=null;n.navPage=null;n.lowResImageElement=null;n.highResImageElement=null;n.lowResImageIsLoaded=!1;n.highResImageIsLoaded=!1;n.anyContentArea=function(){var n=this;return _.filter(n.contentAreas,function(n){return n.isDeleted===!1}).length>0};n.invalidContentAreas=function(){var n=this;return _.filter(n.contentAreas,function(n){return n.isDeleted===!1&&n.isValid===!1}).length};angular.forEach(n.contentAreas,function(t){ei(t,n)})});n.activePage=n.pages[0];e(function(){ct=$(o).find(".doc-viewer");a=$(o).find(".doc-pages");b=$(o).find(".doc-page");nt=$(o).find(".doc-page-scan");it=$(o).find(".doc-page-elements");kt=f.getInitialZoomOption(ct.width(),ct.height(),nt.width(),nt.height());n.zoom.selectedOption=kt;nr(n.pages);gi(n.pages);vt(n.activePage);ki()});n.isLoading=!1})}function gi(t){var i=$(document.createElement("div"));i.addClass("doc-jumper");angular.forEach(t,function(n){var t=$(document.createElement("div")),f,r,u;t.addClass("doc-jump-page");t.attr("data-ng-show","pageAnyContentArea("+n.id+")");ri()&&(f=$(document.createElement("div")),f.addClass("doc-jump-header"),r=$(document.createElement("a")),r.addClass("doc-jump-link"),r.attr("href","javascript:;"),r.attr("data-ng-click","setActivePage("+n.id+")"),r.text("Page "+n.rank),f.append(r),t.append(f));u=$(document.createElement("div"));u.addClass("doc-jump-elements");n.navElementsContainer=u;t.append(u);angular.forEach(n.contentAreas,function(t){var i=fi(t,n.id);t.navigationElement=i;u.append(i)});n.navPage=t;i.append(t)});u(i)(n);$("#content-area-container").append(i)}function hi(n){p===null&&(p=$(document.createElement("div")),p.addClass("loading-large"),p.css("transform-origin","0px 0px 0px"),nt.append(p));ci(n);p.show()}function ci(n){var t=k();p.css("transform","translate(0px, 0px) scale("+1/t+")").css("width",Number(n.width)*t+"em").css("height",Number(n.height)*t+"em")}function vt(t){t.highResImageElement!==null?t.highResImageIsLoaded===!0?(et(t),t.highResImageElement.show()):t.lowResImageElement!==null&&(t.lowResImageIsLoaded===!0?(et(t),t.lowResImageElement.show()):hi(t)):(hi(t),t.lowResImageElement=$(document.createElement("img")),t.lowResImageElement.attr("src",t.thumbnailImagePath),t.lowResImageElement.hide(),t.highResImageElement=$(document.createElement("img")),t.highResImageElement.attr("src",t.imagePath),t.highResImageElement.hide(),t.lowResImageElement.one("load",{page:t},function(i){if(i.data.page.lowResImageIsLoaded=!0,i.data.page.id!==n.activePage.id){p.hide();return}i.data.page.highResImageIsLoaded!==!0&&(i.data.page.lowResImageElement.show(),et(t),p.hide())}).each(function(){this.complete&&$(this).trigger("load")}),t.highResImageElement.one("load",{page:t},function(i){if(i.data.page.highResImageIsLoaded=!0,i.data.page.lowResImageElement.remove(),i.data.page.lowResImageElement=null,i.data.page.id!==n.activePage.id){p.hide();return}i.data.page.lowResImageElement!==!0&&(i.data.page.highResImageElement.show(),et(t),p.hide())}).each(function(){this.complete&&$(this).trigger("load")}),nt.append(t.lowResImageElement),nt.append(t.highResImageElement))}function yt(i){i.element.draggable({start:function(){t.hideMessage()},drag:function(n,t){var c=t.position.left-t.originalPosition.left,l=t.position.top-t.originalPosition.top,f=k(),a=c/f,v=l/f,y=a/i.page.width*100,p=v/i.page.height*100,r=i.left+y,u=i.top+p,e=0,o=100,s=0,h=100;r<e&&(r=e);r+i.width>o&&(r=o-i.width);u<s&&(u=s);u+i.height>h&&(u=h-i.height);t.position.left=r/100*i.page.width;t.position.top=u/100*i.page.height},stop:function(){var s=parseInt(i.element.css("left")),h=parseInt(i.element.css("top")),u=s/i.page.width*100,f=h/i.page.height*100,c=u+i.width,l=f+i.height,o=!1,r,t;if(0)for(r=_.filter(n.activePage.contentAreas,function(n){return i.tempId!==n.tempId&&n.isDeleted===!1}),t=0;t<r.length;t++){var a=r[t].left,v=r[t].left+r[t].width,y=r[t].top,p=r[t].top+r[t].height,w=!(u>v||c<a),b=!(f>p||l<y);if(w===!0&&b===!0){o=!0;break}}o===!0?i.updatePosition(!0):(i.top=f,i.left=u,i.updatePosition(),e(function(){for(var t=0;t<n.activePage.contentAreas.length;t++)n.activePage.contentAreas[t].isDeleted||n.activePage.contentAreas[t].validate()}))}})}function ot(i){var u=i.imageId!==null,r={horizontal:1,vertical:2};i.element.resizable("instance")&&i.element.resizable("destroy");i.element.resizable({handles:"n,e,s,w,ne,se,sw,nw",minWidth:!1,minHeight:!1,aspectRatio:u,start:function(){var u,r,f;for(t.hideMessage(),u=_.filter(n.activePage.contentAreas,function(n){return i.tempId!==n.tempId&&n.isDeleted===!1}),r=0;r<u.length;r++)f=u[r],f.firstOverlappingDirection=null},resize:function(t,f){var b,d,it,rt,y,p,ut,at,vt,s,yt,tt,nt;i.element.trigger("resize");b=yi*100/i.page.width;d=pi*100/i.page.height;u===!0&&(i.width>i.height?b=d*i.width/i.height:d=b*i.height/i.width);var o=0,bt=i.left+i.width-b,kt=i.left+b,h=100,c=0,dt=i.top+i.height-d,gt=i.top+d,l=100;u===!0&&(o=Math.max(o,i.left+i.width-i.maxImageWidth),c=Math.max(c,i.top+i.height-i.maxImageHeight),h=Math.min(h,i.left+i.maxImageWidth),l=Math.min(l,i.top+i.maxImageHeight));var a=i.left,v=i.top,pt=i.width,wt=i.height,w=k();if(f.size.width!==f.originalSize.width&&(it=f.size.width-f.originalSize.width,f.position.left!==f.originalPosition.left&&(a-=it*100/w/i.page.width),pt+=it*100/w/i.page.width),f.size.height!==f.originalSize.height&&(rt=f.size.height-f.originalSize.height,f.position.top!==f.originalPosition.top&&(v-=rt*100/w/i.page.height),wt+=rt*100/w/i.page.height),y=a+pt,p=v+wt,a=Math.min(a,bt),y=Math.max(y,kt),v=Math.min(v,dt),p=Math.max(p,gt),!1){for(ut=_.filter(n.activePage.contentAreas,function(n){return i.tempId!==n.tempId&&n.isDeleted===!1}),s=0;s<ut.length;s++){var e=ut[s],ft=e.left,et=e.left+e.width,ot=e.top,st=e.top+e.height,ct=!(a>et||y<ft),lt=!(v>st||p<ot);ct===!0&&(e.firstOverlappingDirection===null?e.firstOverlappingDirection=r.horizontal:lt===!1&&(e.firstOverlappingDirection=r.horizontal));lt===!0&&(e.firstOverlappingDirection===null?e.firstOverlappingDirection=r.vertical:ct===!1&&(e.firstOverlappingDirection=r.vertical));ct===!1&&lt===!1&&(e.firstOverlappingDirection=null)}for(at=_.filter(n.activePage.contentAreas,function(n){return n.firstOverlappingDirection===r.horizontal}),s=0;s<at.length;s++){var e=at[s],ft=e.left,et=e.left+e.width,ot=e.top,st=e.top+e.height;st<i.top+i.height&&(c=Math.max(c,st));ot>i.top&&(l=Math.min(l,ot))}for(vt=_.filter(n.activePage.contentAreas,function(n){return n.firstOverlappingDirection===r.vertical}),s=0;s<vt.length;s++){var e=vt[s],ft=e.left,et=e.left+e.width,ot=e.top,st=e.top+e.height;et<i.left+i.width&&(o=Math.max(o,et));ft>i.left&&(h=Math.min(h,ft))}}u===!0&&(f.position.left!==f.originalPosition.left?f.position.top!==f.originalPosition.top?(yt=o,o=Math.max(o,i.left-(i.top-c)*i.width/i.height),c=Math.max(c,i.top-(i.left-o)*i.height/i.width)):f.size.height!==f.originalSize.height&&(yt=o,o=Math.max(o,i.left-(l-i.top-i.height)*i.width/i.height),l=Math.min(l,i.top+i.height+(i.left-yt)*i.height/i.width)):f.size.width!==f.originalSize.width&&(f.position.top!==f.originalPosition.top?(tt=h,h=Math.min(h,i.left+i.width+(i.top-c)*i.width/i.height),c=Math.max(c,i.top-(tt-i.left-i.width)*i.height/i.width)):f.size.height!==f.originalSize.height&&(tt=h,h=Math.min(h,i.left+i.width+(l-i.top-i.height)*i.width/i.height),l=Math.min(l,i.top+i.height+(tt-i.left-i.width)*i.height/i.width))));a=Math.max(a,o);y=Math.min(y,h);v=Math.max(v,c);p=Math.min(p,l);i.element.find("#"+ht).remove();i.element.removeClass("doc-element-error-1");i.element.addClass(g);(Math.abs(y-a-i.maxImageWidth)<1e-9||Math.abs(p-v-i.maxImageHeight)<1e-9)&&(i.element.removeClass(g),i.element.addClass("doc-element-error-1"),nt=$(document.createElement("div")),nt.addClass("img-max-size-error"),nt.attr("id",ht),nt.append('<p class="img-max-size-error-msg">Maximum size reached!<\/p>'),i.element.append(nt));f.position.left!==f.originalPosition.left&&(f.position.left=a*i.page.width/100);f.position.top!==f.originalPosition.top&&(f.position.top=v*i.page.height/100);f.size.width!==f.originalSize.width&&(f.size.width=(y-a)*i.page.width*w/100);f.size.height!==f.originalSize.height&&(f.size.height=(p-v)*i.page.height*w/100)},stop:function(){i.element.removeClass("doc-element-error-1");i.element.addClass(g);i.element.find("#"+ht).remove();var o=parseInt(i.element.css("left")),s=parseInt(i.element.css("top")),h=parseInt(i.element.css("width")),c=parseInt(i.element.css("height")),t=k(),l=h/t,a=c/t,v=o/i.page.width*100,y=s/i.page.height*100,r=l/i.page.width*100,f=a/i.page.height*100;u===!0&&(f=r*i.maxImageHeight/i.maxImageWidth);i.left=v;i.top=y;i.width=r;i.height=f;i.updatePosition();i.updateDimensions();e(function(){for(var t=0;t<n.activePage.contentAreas.length;t++)n.activePage.contentAreas[t].isDeleted||n.activePage.contentAreas[t].validate()})}})}function nr(t){var i=$(document.createElement("div"));i.addClass("doc-thumbnails");angular.forEach(t,function(n){var t=$(document.createElement("div")),r,u,f;t.addClass("doc-thumbnail loading");t.attr("data-ng-click","setActivePage("+n.id+")");r=$(document.createElement("img"));r.attr("src",n.thumbnailImagePath);t.attr("data-ng-class",'{"doc-thumbnail-active": pageIsActive('+n.id+")}");r.one("load",function(){t.removeClass("loading")}).each(function(){this.complete&&$(this).trigger("load")});u=$(document.createElement("div"));u.addClass("doc-thumbnail-label");u.text(n.rank);t.append(r);t.append(u);f=$('<div class="doc-thumbnail-annotations" data-ng-if="getInvalidContentAreasCount('+n.id+') > 0"><span class="label label-numeric label-danger" data-ng-bind="getInvalidContentAreasCount('+n.id+')"><\/span><\/div>');t.append(f);i.append(t)});u(i)(n);$(o).find(".doc-preview").append(i)}function pt(n,t){return typeof n.id=="undefined"&&(n.id=null),typeof n.width=="undefined"&&(n.width=null),typeof n.height=="undefined"&&(n.height=null),typeof n.top=="undefined"&&(n.top=!1),typeof n.left=="undefined"&&(n.left=null),typeof n.textColor=="undefined"&&(n.textColor=null),typeof n.horizontalAlignment=="undefined"&&(n.horizontalAlignment=null),typeof n.verticalAlignment=="undefined"&&(n.verticalAlignment=null),typeof n.isEditable=="undefined"&&(n.isEditable=null),typeof n.fontSize=="undefined"&&(n.fontSize=null),typeof n.lineHeight=="undefined"&&(n.lineHeight=null),typeof n.content=="undefined"&&(n.content=!0),typeof n.fontFamily=="undefined"&&(n.fontFamily=null),typeof n.type=="undefined"&&(n.type=null),typeof n.isValid=="undefined"&&(n.isValid=null),typeof n.imageId=="undefined"&&(n.imageId=null),ei(n,t),n}function wt(t,i,r){i.contentAreas.push(t);t.element=at(t,i);t.updatePosition();t.updateDimensions();it.append(t.element);yt(t);ot(t);u(t.element)(n);t.show();var f=fi(t,i.id);t.navigationElement=f;i.navElementsContainer.append(f);u(t.navigationElement)(n);r===!0&&n.goToContentArea(null,n.activePage.id,t.tempId)}function bt(n){var u=30,v=.8,t=k(),e=(a.innerWidth()-a.width()+b.outerWidth(!0)-b.width())/2,o=(a.innerHeight()-a.height()+b.outerHeight(!0)-b.height())/2,y=n.width/n.height*u*.5,nt=u/100*n.width,tt=y/100*n.height,it=f.measureContentAreaForZooming(a.innerWidth(),a.innerHeight(),nt,tt),i,r,s,h,c,p,l,w,d,g;return it.value<t?(s=a.innerWidth(),h=a.innerHeight(),a.scrollTop()<o&&(h-=(o-a.scrollTop())*2),a.scrollLeft()<e&&(s-=(e-a.scrollLeft())*2),i=s*v/t/n.width*100,r=h*v/t/n.height*100):(i=u,r=y),a.width()<b.outerWidth(!0)?(p=a.scrollLeft()+a.innerWidth()/2-e,c=p/t/n.width*100):c=50,a.height()<b.outerHeight(!0)?(w=a.scrollTop()+a.innerHeight()/2-o,l=w/t/n.height*100):l=50,d=c-i/2,g=l-r/2,{width:i,height:r,top:g,left:d}}function tr(){var t=bt(n.activePage),r=pt({type:i.contentAreaType.TEXT,width:t.width,height:t.height,top:t.top,left:t.left,content:"<p>Sample text. Click to change. Use Placeholders for dynamic content.<\/p>",horizontalAlignment:w.horizontalAlignment.value,verticalAlignment:w.verticalAlignment.value,fontSize:w.fontSize.value,fontFamily:w.fontFamily.value,lineHeight:w.lineHeight.value,textColor:w.textColor.value,isEditable:!1},n.activePage);w.allowPartnerToEdit!==null&&(r.isEditable=w.allowPartnerToEdit.value);wt(r,n.activePage,!1)}function ir(){var t=bt(n.activePage),r=pt({type:i.contentAreaType.LOGO,width:t.width,height:t.height,top:t.top,left:t.left,url:"assets/img/avatars/logo-1500x900.svg",horizontalAlignment:ft.horizontalAlignment.value,verticalAlignment:ft.verticalAlignment.value},n.activePage);wt(r,n.activePage,!1)}function rr(){var t=bt(n.activePage),r=pt({type:i.contentAreaType.IMAGE,width:t.width,height:t.height,top:t.top,left:t.left,horizontalAlignment:i.horizontalAlignment.CENTER,verticalAlignment:i.verticalAlignment.MIDDLE},n.activePage);wt(r,n.activePage,!0)}function li(){if(n.pages===null||n.pages.length===0)return"There must be pages to add Content Areas to";var t=!1,i=!1;return(angular.forEach(n.pages,function(r){r.anyContentArea()!==!1&&(t=!0,angular.forEach(r.contentAreas,function(t){t.isDeleted!==!0&&(t.element===null&&(t.element=at(t,r),it.append(t.element),yt(t),ot(t),u(t.element)(n),t.hide()),t.updatePosition(),t.updateDimensions(),t.isValid===null&&t.validate())}),r.invalidContentAreas()>0&&(i=!0))}),i===!0)?"Please fix the Content Areas with errors":t===!1?"Please add at least one Content Area to a page":null}function ai(){n.activeContentArea!==null&&(n.activeContentArea.type===i.contentAreaType.TEXT&&n.activeContentArea.destroyFroalaEditor(),n.activeContentArea.validate(),n.activeContentArea.setInactive(),n.activeContentArea.toggleDraggable(!1),n.activeContentArea=null)}function vi(){return _.map(n.pages,function(n){return{id:n.id,rank:n.rank,width:n.width,height:n.height,thumbnailImagePath:n.thumbnailImagePath,imagePath:n.imagePath,contentAreas:_.map(n.contentAreas,function(n){return{id:n.id,width:n.width,height:n.height,top:n.top,left:n.left,fontSize:n.fontSize,lineHeight:n.lineHeight,content:n.content,fontFamily:n.fontFamily,type:n.type,isValid:n.isValid,textColor:n.textColor,horizontalAlignment:n.horizontalAlignment,verticalAlignment:n.verticalAlignment,imageId:n.imageId+"",isEditable:n.isEditable,isDeleted:n.isDeleted}})}})}function ur(){var i,r;if(tt()!==!1){if(ai(),i=li(),i!==null){t.showErrorMessage(i);return}t.showProcessingMessage("Generating...");n.pendingAction=!0;r=f.openProcessingDialog("Processing Content Areas","We're generating preview images. Depending on the number of pages, this may take a few minutes.<br/>Thank you for your patience.",1e3);v.onAction("generate-preview-images",vi()).then(function(t){angular.forEach(n.pages,function(n){n.lowResImageElement=null;n.highResImageElement=null;n.lowResImageIsLoaded=!1;n.highResImageIsLoaded=!1;n.imagePath=t[n.rank]});var i=_.find(n.pages,function(t){return t.id===n.activePage.id});vt(i);n.pendingAction=!1;r.close()})}}function fr(t){var e=f.getRowById(n.imagesLister.rows,t.rowId),s=e.additionalData.widthPx,h=e.additionalData.heightPx,i=n.activeContentArea,o,r;i.imageId=e.id;i.imageHeightPx=h;i.imageWidthPx=s;i.calculateMaxImageDimensions();i.width>i.maxImageWidth&&i.height>i.maxImageHeight?(i.width=i.maxImageWidth,i.height=i.maxImageHeight):i.width>i.maxImageWidth?(i.width=i.maxImageWidth,i.height=i.width*i.maxImageHeight/i.maxImageWidth):i.height>i.maxImageHeight?(i.height=i.maxImageHeight,i.width=i.height*i.maxImageWidth/i.maxImageHeight):i.width=i.height*i.maxImageWidth/i.maxImageHeight;i.left+i.width>100&&(i.width=100-i.left,i.height=i.width*i.maxImageHeight/i.maxImageWidth);i.top+i.height>100&&(i.height=100-i.top,i.width=i.height*i.maxImageWidth/i.maxImageHeight);i.updateDimensions();ot(i);o="File/Image/"+i.imageId;i.contentElement.html("");r=$('<img data-c-image-placeholder data-mode="max-resizable" src="'+o+'" />');r.css("height","100%");r.css("width","100%");i.contentElement.append(r);i.contentElement.css("background-image","none");u(r)(n)}var d=null,st=null,kt=null,v=n.ngDialogData;n.dialogTitle=null;n.dialogDescription=null;n.imagesLister=null;n.imagesListerStatus=i.listerStatus.LOADING;n.imagesListerSettings=c.getListerSettings();n.imageToolbarIsLoading=!0;var ut=i.fileType.TRAINING_PDF_CERTIFICATE_CONTENT_AREA_IMAGE,ht="max-size-message",g="doc-element-active",dt="#froala-toolbar",ct=null,nt=null,p=null,it=null,w=null,ft=null,gt=null,a=null,b=null,rt=null,ni=null,ti=null,ii=0,y={x:0,y:0,scrollTop:0,scrollLeft:0,selectedElement:null,isScrollByDraggingActive:!1},yi=10,pi=10;n.pdfTemplateType=i.pdfTemplateType;n.devModeLabel=r.labels.devMode;n.pages=null;n.activePage=null;n.newButtonActions=null;n.secondaryActions=null;n.pendingAction=!1;n.zoom={options:f.getZoomOptions(),selectedOption:f.getOneHundredPercentZoomOption()};n.activeContentArea=null;n.textFields=null;n.logoFields=null;n.form=null;n.isLoading=!0;n.showPageNavigation=function(){return ri()};n.showContentAreaSidebar=function(){return v.templateType!==i.pdfTemplateType.AGREEMENT_LETTERHEAD};n.isNewContentToolbarVisible=function(){return n.activeContentArea===null};n.isTextToolbarVisible=function(){return n.activeContentArea===null?!1:n.activeContentArea.type===i.contentAreaType.TEXT};n.isLogoToolbarVisible=function(){return n.activeContentArea===null?!1:n.activeContentArea.type===i.contentAreaType.LOGO};n.isImageToolbarVisible=function(){return n.activeContentArea===null?!1:n.activeContentArea.type===i.contentAreaType.IMAGE};n.removeContentArea=function(){if(n.activeContentArea!==null){n.activeContentArea.type===i.contentAreaType.TEXT&&n.activeContentArea.destroyFroalaEditor();n.activeContentArea.navigationElement.remove();n.activeContentArea.element.remove();n.activeContentArea.isDeleted=!0;n.activeContentArea.id===null&&(n.activePage.contentAreas=_.reject(n.activePage.contentAreas,function(t){return t.tempId===n.activeContentArea.tempId}));for(var t=0;t<n.activePage.contentAreas.length;t++)n.activePage.contentAreas[t].isDeleted||n.activePage.contentAreas[t].validate();n.activeContentArea=null}};n.goToContentArea=function(t,r,u){var e,s,h;if(tt()!==!1&&(n.setActivePage(r),n.contentAreaClicked(t,u),e=k(),n.activeContentArea!==null)){var c=20,o=0,y=(a.innerWidth()-a.width()+b.outerWidth(!0)-b.width())/2,p=(a.innerHeight()-a.height()+b.outerHeight(!0)-b.height())/2,w=n.activeContentArea.left/100*n.activePage.width,d=n.activeContentArea.top/100*n.activePage.height,l=n.activeContentArea.width/100*n.activePage.width,v=n.activeContentArea.height/100*n.activePage.height;switch(n.activeContentArea.type){case i.contentAreaType.TEXT:s=$(dt);s.length&&(o=s.height()+s.position().top)}h=f.measureContentAreaForZooming(a.innerWidth()-c*2,a.innerHeight()-c*2-o,l,v);h.value<e&&(n.zoom.selectedOption=h,n.zoomChanged(),e=k());var g=w*e,nt=d*e,it=l*e,rt=v*e,ut=y+g+it/2,ft=ut-a.innerWidth()/2,et=p+nt+rt/2,ot=et-(a.innerHeight()-o)/2-o;a.animate({scrollTop:ot,scrollLeft:ft},500)}};n.contentAreaClicked=function(t,r){if(t!==null&&(t.stopPropagation(),t.stopImmediatePropagation(),t.preventDefault()),tt()!==!1){if(r=parseInt(r),n.activeContentArea!==null){if(n.activeContentArea.tempId===r)return;n.activeContentArea.type===i.contentAreaType.TEXT&&n.activeContentArea.destroyFroalaEditor();n.activeContentArea.validate();n.activeContentArea.setInactive();n.activeContentArea.toggleDraggable(!1)}var u=lt(n.activePage.id,r);n.logoFields=null;n.textFields=null;n.activeContentArea=u;n.activeContentArea.setActive();switch(n.activeContentArea.type){case i.contentAreaType.LOGO:n.logoFields=$.extend(!0,{},ft);n.logoFields.horizontalAlignment.value=n.activeContentArea.horizontalAlignment;n.logoFields.verticalAlignment.value=n.activeContentArea.verticalAlignment;break;case i.contentAreaType.IMAGE:n.imagesLister===null&&l.loadDialogData(ut).then(function(t){n.imagesListerActions=t.actions;n.imagesListerSettings=t.listerSettings;ui(t.lister);n.imageToolbarIsLoading=!1});break;case i.contentAreaType.TEXT:n.activeContentArea.toggleDraggable(!0);n.textFields=$.extend(!0,{},w);n.textFields.horizontalAlignment.value=n.activeContentArea.horizontalAlignment;n.textFields.verticalAlignment.value=n.activeContentArea.verticalAlignment;n.textFields.fontSize.value=n.activeContentArea.fontSize;n.textFields.lineHeight.value=n.activeContentArea.lineHeight;n.textFields.fontFamily.value=n.activeContentArea.fontFamily;n.textFields.textColor.value=n.activeContentArea.textColor;switch(v.templateType){case i.pdfTemplateType.COBRANDED_ASSET:n.textFields.allowPartnerToEdit.value=n.activeContentArea.isEditable;break;case i.pdfTemplateType.TRAINING_CERTIFICATION:case i.pdfTemplateType.AGREEMENT_LETTERHEAD:break;default:throw"Unknown pdfTemplateType: "+v.templateType;}n.activeContentArea.initFroalaEditor()}}};n.pageAnyContentArea=function(t){var i=_.find(n.pages,function(n){return n.id===parseInt(t)});return i.anyContentArea()===!0};n.pageIsActive=function(t){return n.activePage.id===t};n.saveContentAreas=function(){var e,r,u,o;if(tt()!==!1){if(ai(),e=li(),e!==null){t.showErrorMessage(e);return}t.showProcessingMessage("Saving...");n.pendingAction=!0;switch(v.templateType){case i.pdfTemplateType.COBRANDED_ASSET:r="Processing Content Areas";u="We're saving your Content Areas. Depending on the number of pages in your Asset, this may take a few minutes.<br/>Thank you for your patience.";break;case i.pdfTemplateType.TRAINING_CERTIFICATION:r="Processing Content Areas";u="We're saving your Content Areas. This may take a few minutes.<br/>Thank you for your patience.";break;case i.pdfTemplateType.AGREEMENT_LETTERHEAD:r="Processing Letterhead";u="We're saving your Letterhead changes. This may take a few minutes.<br/>Thank you for your patience.";break;default:throw"Unknown pdfTemplateType: "+v.templateType;}o=f.openProcessingDialog(r,u,1e3);v.onAction("save",vi()).then(function(){t.showSuccessMessage("Saved!");o.close();n.closeThisDialog()})}};n.zoomChanged=function(){ci(n.activePage);angular.forEach(n.activePage.contentAreas,function(n){n.updateDimensions()})};n.setActivePage=function(t){if(t!==n.activePage.id&&tt()!==!1){n.blur();angular.forEach(n.activePage.contentAreas,function(n){n.hide()});n.activePage.lowResImageElement!==null&&n.activePage.lowResImageElement.hide();n.activePage.highResImageElement.hide();var i=_.find(n.pages,function(n){return n.id===parseInt(t)});n.activePage=i;vt(i)}};n.blur=function(){return y.selectedElement!==null&&window.getSelection().toString()!==""?!1:(y.selectedElement=null,tt()===!1)?!1:(n.activeContentArea!==null&&(n.activeContentArea.type===i.contentAreaType.TEXT&&n.activeContentArea.destroyFroalaEditor(),n.activeContentArea.validate(),n.activeContentArea.setInactive(),n.activeContentArea.toggleDraggable(!1)),n.activeContentArea=null,n.textFields=null,n.logoFields=null,!0)};n.onNewAction=function(n){if(typeof n=="undefined")throw"Action is undefined";switch(n){case"new-text-content-area":tr();break;case"new-logo-content-area":ir();break;case"new-image-content-area":rr();break;default:throw"Unknown action: "+n;}};n.onSecondaryAction=function(n){if(typeof n=="undefined")throw"Action is undefined";switch(n){case"generate-preview-images":ur();break;default:throw"Unknown action: "+n;}};n.getInvalidContentAreasCount=function(t){var i=_.find(n.pages,function(n){return n.id===t});return i.invalidContentAreas()};n.getContentAreaValidationMessage=function(n,t){var i=lt(n,t);return typeof i=="undefined"?null:i.validationMessage};n.contentAreaIsInvalid=function(n,t){var i=lt(n,t);return typeof i=="undefined"?!1:i.isValid===null||i.isValid===!0?!1:!0};n.$watch(function(){return n.textFields===null?null:n.textFields.fontSize===null?null:n.textFields.fontSize.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setFontSize(t)});n.$watch(function(){return n.textFields===null?null:n.textFields.fontFamily===null?null:n.textFields.fontFamily.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setFontFamily(t,i)});n.$watch(function(){return n.textFields===null?null:n.textFields.lineHeight===null?null:n.textFields.lineHeight.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setLineHeight(t)});n.$watch(function(){return n.textFields===null?null:n.textFields.textColor===null?null:n.textFields.textColor.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setTextColor(t)});n.$watch(function(){return n.textFields===null?null:n.textFields.horizontalAlignment===null?null:n.textFields.horizontalAlignment.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setHorizontalAlignment(t)});n.$watch(function(){return n.textFields===null?null:n.textFields.verticalAlignment===null?null:n.textFields.verticalAlignment.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setVerticalAlignment(t)});n.$watch(function(){return n.textFields===null?null:n.textFields.allowPartnerToEdit===null?null:n.textFields.allowPartnerToEdit.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setIsEditable(t)});n.$watch(function(){return n.logoFields===null?null:n.logoFields.horizontalAlignment===null?null:n.logoFields.horizontalAlignment.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setHorizontalAlignment(t)});n.$watch(function(){return n.logoFields===null?null:n.logoFields.verticalAlignment===null?null:n.logoFields.verticalAlignment.value},function(t,i){t!==null&&t!==i&&n.activeContentArea!==null&&n.activeContentArea.setVerticalAlignment(t)});n.$on("$destroy",function(){n.activeContentArea!==null&&n.activeContentArea.type===i.contentAreaType.TEXT&&n.activeContentArea.destroyFroalaEditor();$(window).unbind("mousemove",oi);$(window).unbind("mouseup",si)});n.openUploadImageDialog=function(){f.openDialog({template:"js/shared/common/directives/inputField/inputFieldImageChooser/uploadImageView.html",controller:["$scope",function(r){function u(){l.loadNewImageDescription(ut).then(function(n){r.detailsSection=n;r.isLoading=!1})}r.isLoading=!0;r.pendingAction=!1;r.detailsSection=null;r.validateImage=function(n,t){if(r.detailsSection.imageFile.validatorName!==n)throw new Error("Unknown validator name : "+n);return l.validateImage(ut,t)};r.onUploadStatusChange=function(n,t){if(typeof n=="undefined")throw"Action is undefined";switch(n){case"status-changed":switch(t.status){case i.uploadStatus.IN_PROGRESS:(r.detailsSection.imageTitle.value===null||typeof r.detailsSection.imageTitle.value=="undefined")&&(r.detailsSection.imageTitle.value=t.fileName)}break;default:throw"Unknown action: "+n;}};r.save=function(u){u.submit(function(){t.showProcessingMessage();r.pendingAction=!0;var u=f.prepareSectionsForAjax([],r.detailsSection);n.imagesListerStatus=i.listerStatus.LOADING;l.createNewImage(ut,u).then(function(n){r.pendingAction=!1;r.closeThisDialog();t.showSuccessMessage();ui(n)})})};u()}]})};n.handleImageAction=function(n,t){if(n===undefined)throw"Action is unspecified";switch(n){case"lister-item-selected":fr(t);break;default:throw"Unknown action: "+n;}};di()}]);angular.module("sharedElements").controller("SecureFileUploadDialogCtrl",["$scope","secureFileUploadService","constants","helpService","listerService","pageSharedDataFactory",function(n,t,i,r,u){function e(t){n.files=t;n.listerStatus=i.listerStatus.RENDERING}function s(){n.isLoading=!0;t.loadListerDialog().then(function(t){n.listerSettings=t.listerSettings;e(t.lister);n.actions=t.actions;n.isLoading=!1})}function o(u){r.openDialog({template:"js/shared/common/views/safeFileUpload/secureFileUploadView.html",controller:["$scope",function(o){function s(){if(o.secureFileUploadSection=null,typeof u=="undefined"||u===null)o.dialogViewState=o.dialogViewStateEnum.UPLOAD,o.isLoadingDialog=!0,f!==null?(o.secureFileUploadSection=$.extend(!0,{},f),o.isLoadingDialog=!1,o.isUploaded=!1):t.loadNewFileDialog().then(function(n){f=n;o.secureFileUploadSection=$.extend(!0,{},f);o.isLoadingDialog=!1;o.isUploaded=!1});else{o.dialogViewState=o.dialogViewStateEnum.MORE;var i=_.find(n.files.rows,function(n){return n.id===u});o.link=i.additionalData}}o.dialogViewStateEnum={UPLOAD:1,UPLOADED:2,MORE:3};o.form=null;o.link=null;o.secureFileUploadSection=null;o.dialogViewState=null;o.pendingAction=!1;o.isLoadingDialog=!1;o.copyToClipboard=function(){r.copyToClipboard(o.link)};o.save=function(r){r.submit(function(){var r=[{name:o.secureFileUploadSection.name,fields:[o.secureFileUploadSection.file,o.secureFileUploadSection.comment]}];t.saveFile(r).then(function(t){o.link=t.link;o.pendingAction=!1;o.dialogViewState=o.dialogViewStateEnum.UPLOADED;n.listerStatus=i.listerStatus.LOADING;e(t.lister)})})};s()}]})}var f=null;n.isLoading=!1;n.pendingAction=!1;n.settingsSection=null;n.actions=r.getListerSectionActions();n.files=null;n.listerStatus=i.listerStatus.LOADING;n.listerSettings=u.getListerSettings();n.refresh=function(){n.listerStatus=i.listerStatus.LOADING;t.listFiles(r.getListerState(n.files)).then(e)};n.selectAll=function(n){n.target.tagName==="INPUT"&&n.target.select()};n.handleAction=function(n,t){if(typeof n=="undefined")throw new Error("Action is unspecified");switch(n){case"secure-file-upload":o();break;case"detail-link-file-data":o(t.rowId);break;default:throw"Unknown action: "+n;}};s()}]);angular.module("sharedElements").service("secureFileUploadService",["securityService","helpService",function(n,t){this.loadListerDialog=function(){return n.httpGet("data/Common/SecureFileUpload/LoadListerDialog")};this.loadNewFileDialog=function(){return n.httpGet("data/Common/SecureFileUpload/LoadNewFileDialog")};this.saveFile=function(i){return n.httpPost("data/Common/SecureFileUpload/SaveFile",{sections:t.getProcessedSections(i)})};this.listFiles=function(t){return n.httpPost("data/Common/SecureFileUpload/ListFiles",{listerState:t})}}]);angular.module("sharedElements").controller("ApiCtrl",["$scope","$element","constants","appDetailsValue","$location","$route","pageSharedDataFactory","$rootScope","helpService","$timeout","$window","securityService","$q",function(n,t,i,r,u,f,e,o,s,h,c){e.session.resolve();e.wysiwygValidationUrl="data/Common/Validation/IsWysiwygContentValid";e.serviceUnavailable.resolve();e.appOutOfDate.resolve();n.skinColors=r.skinColors;n.loading=!0;n.noAccess=!1;n.entityNotFound=!1;n._title=r.portalName;n.isSidebarNavigationOpened=!1;n.confirmDialogBeforeUnloadPage={callback:null,closingWindow:!0,ignoreWithinSameApp:!1,locationValidation:null};e.setTitle=function(t){n._title=t+" - "+r.portalName};e.setSidebarNavigationAsOpened=function(t){n.isSidebarNavigationOpened=t};e.isSidebarNavigationOpened=function(){return n.isSidebarNavigationOpened};e.setEntityNotFound=function(t){n.entityNotFound=!0;n.entityNotFoundMessage=t;e.setTitle("Not Found")};e.setAccessDenied=function(t){typeof t=="undefined"&&(t="You do not have permission to access that resource.");n.noAccess=!0;n.noAccessMessage=t;e.setTitle("No Access")};e.setPageFocus=function(){s.isMobileDevice()||h(function(){var n=t.find(s.scrollableElementsSelector).filter(":visible"),i;n.length!==0&&(n.sort(function(n,t){return $(t).width()-$(n).width()}),i=$(n[0]),$(i).attr("tabindex",0),$(i).focus())})};e.showConfirmDialogBeforeUnloadPage=function(t){n.confirmDialogBeforeUnloadPage.callback=t};e.showConfirmDialogBeforeUnloadPage_locationValidation=function(t){n.confirmDialogBeforeUnloadPage.locationValidation=t};n.getNoticeBarBackground=function(){var i=tinycolor(n.skinColors.menu),t=tinycolor("gray");return t=i.isLight()?t.darken(15).toString():t.lighten(15).toString(),t.replace("#","")};c.onbeforeunload=function(){if(n.confirmDialogBeforeUnloadPage.callback!==null&&n.confirmDialogBeforeUnloadPage.callback()===!0&&n.confirmDialogBeforeUnloadPage.closingWindow===!0&&(n.confirmDialogBeforeUnloadPage.locationValidation===null||n.confirmDialogBeforeUnloadPage.locationValidation()===!0))return!0;n.confirmDialogBeforeUnloadPage.closingWindow=!0};n.$on("$locationChangeStart",function(t,i){var o,h,r;if(s.closeAllOpenedElements(),n.isSidebarNavigationOpened=!1,n.confirmDialogBeforeUnloadPage.callback!==null&&n.confirmDialogBeforeUnloadPage.callback()===!0&&(n.confirmDialogBeforeUnloadPage.locationValidation===null||n.confirmDialogBeforeUnloadPage.locationValidation()===!0)&&(o=confirm("You have unsaved changes."),o===!1)){n.loading=!1;t.preventDefault();return}e.pageGuide=null;h=u.path();r=!0;angular.forEach(f.routes,function(n){n.regexp&&n.regexp.test(h)&&(r=!1)});r&&(n.confirmDialogBeforeUnloadPage.closingWindow=!1,t.preventDefault(),s.redirect(i));n.noAccess=!1;n.entityNotFound=!1});n.$on("$locationChangeSuccess",function(){(n.confirmDialogBeforeUnloadPage.locationValidation===null||n.confirmDialogBeforeUnloadPage.locationValidation()===!0)&&(n.confirmDialogBeforeUnloadPage.callback=null,n.confirmDialogBeforeUnloadPage.closingWindow=!0)});n.$on("$routeChangeStart",function(){n.loading=!0});n.$on("$routeChangeError",function(){s.redirect(u.absUrl())});n.$on("$viewContentLoaded",function(){n.loading=!1});o.$on("ngDialog.opened",function(){s.bindHiddingDropdownMenus()})}]);angular.module("sharedElements").controller("IframeCtrl",["pageSharedDataFactory","translationAjaxService",function(n,t){n.session.resolve();t.init(!0);n.serviceUnavailable.resolve();n.appOutOfDate.resolve()}]);angular.module("sharedElements").controller("IndexCtrl",["$scope","$element","constants","appDetailsValue","$location","$route","pageSharedDataFactory","$rootScope","helpService","$timeout","$window","securityService","$q","translationAjaxService",function(n,t,i,r,u,f,e,o,s,h,c,l,a,v){var y,p,w;e.session.resolve();e.wysiwygValidationUrl="data/Common/Validation/IsWysiwygContentValid";v.init(!0);e.serviceUnavailable.resolve();e.appOutOfDate.resolve();n.skinColors=r.skinColors;n.thumbnailTextColor=r.thumbnailTextColor;n.loading=!0;n.noAccess=!1;n.entityNotFound=!1;n._title=r.portalName;n.isSidebarNavigationOpened=!1;n.confirmDialogBeforeUnloadPage={callback:null,closingWindow:!0,ignoreWithinSameApp:!1,locationValidation:null};e.setTitle=function(t){n._title=t+" - "+r.portalName};e.setSidebarNavigationAsOpened=function(t){n.isSidebarNavigationOpened=t};e.isSidebarNavigationOpened=function(){return n.isSidebarNavigationOpened};e.setEntityNotFound=function(t){n.entityNotFound=!0;n.entityNotFoundMessage=t;e.setTitle("Not Found")};e.setAccessDenied=function(t){typeof t=="undefined"&&(t="You do not have permission to access that resource.");n.noAccess=!0;n.noAccessMessage=t;e.setTitle("No Access")};e.setPageFocus=function(){s.isMobileDevice()||h(function(){var n=t.find(s.scrollableElementsSelector).filter(":visible"),i;n.length!==0&&(n.sort(function(n,t){return $(t).width()-$(n).width()}),i=$(n[0]),$(i).attr("tabindex",0),$(i).focus())})};e.showConfirmDialogBeforeUnloadPage=function(t){n.confirmDialogBeforeUnloadPage.callback=t};e.showConfirmDialogBeforeUnloadPage_locationValidation=function(t){n.confirmDialogBeforeUnloadPage.locationValidation=t};y={defer:null,connectionId:null,clientCallbacks:[],connect:function(){var t=(new signalR.HubConnectionBuilder).withUrl(r.signalR.hubPath).configureLogging(signalR.LogLevel.None).withAutomaticReconnect().build();t.on(r.signalR.clientMethod,function(n){var t=_.find(y.clientCallbacks,function(t){return n.type===t.type&&n.key===t.key});if(typeof t=="undefined"||t===null)throw new Error("Unknown callback: "+n.type);n.isSuccess===!0?t.successDelegate(n.data):typeof t.failureDelegate!="undefined"&&t.failureDelegate!==null&&t.failureDelegate(n.data)});t.start().then(function(){if(y.connectionId===null)angular.element(c).on("focus",function(){e.updateClientCallbacks()});y.connectionId=t.connection.connectionId;n.$apply(function(){e.clientCallbackConnectionStatus=i.clientCallbackConnectionStatus.CONNECTED});t.onreconnecting(()=>{n.$apply(function(){e.clientCallbackConnectionStatus=i.clientCallbackConnectionStatus.RECONNECTING})});t.onreconnected(t=>{y.connectionId=t,e.recreateClientCallbacks(t),n.$apply(function(){e.clientCallbackConnectionStatus=i.clientCallbackConnectionStatus.CONNECTED})});t.onclose(()=>{n.$apply(function(){e.clientCallbackConnectionStatus=i.clientCallbackConnectionStatus.DISCONNECTED}),y.defer=a.defer()});y.defer.resolve()}).catch(function(t){t.errorType==="FailedToNegotiateWithServerError"&&(n.$apply(function(){e.clientCallbackConnectionStatus=i.clientCallbackConnectionStatus.DISCONNECTED}),y.defer=a.defer())})}};e.createClientCallback=function(n,t,i,r){var u=_.find(y.clientCallbacks,function(i){return n===i.type&&t===i.key}),f;return typeof u=="undefined"||u===null?y.clientCallbacks.push({type:n,key:t,successDelegate:i,failureDelegate:r}):(u.successDelegate=i,u.failureDelegate=r),y.defer===null&&(y.defer=a.defer(),y.connect()),f=a.defer(),y.defer.promise.then(function(){l.createClientCallbacks(y.connectionId,[{type:n,key:t}]).then(function(){f.resolve()})}),f.promise};e.restartClientCallbackConnection=function(){e.clientCallbackConnectionStatus=i.clientCallbackConnectionStatus.RECONNECTING;y.connect();y.defer.promise.then(function(){e.recreateClientCallbacks(y.connectionId)})};p=a.defer();p.resolve();e.updateClientCallbacks=function(){(p.promise.$$state.status===1||p.promise.$$state.status===2)&&(p=a.defer(),l.updateClientCallbacks(y.connectionId).then(function(){p.resolve()}))};w=a.defer();w.resolve();e.recreateClientCallbacks=function(){if(w.promise.$$state.status===1||w.promise.$$state.status===2){w=a.defer();var n=_.map(y.clientCallbacks,function(n){return{type:n.type,key:n.key}});l.createClientCallbacks(y.connectionId,n).then(function(){w.resolve()})}};e.removeClientCallback=function(n,t){var i=_.find(y.clientCallbacks,function(i){return n===i.type&&t===i.key});typeof i!="undefined"&&i!==null&&(i.successDelegate=function(){},i.failureDelegate=null)};n.getNoticeBarBackground=function(){var i=tinycolor(n.skinColors.menu),t=tinycolor("gray");return t=i.isLight()?t.darken(15).toString():t.lighten(15).toString(),t.replace("#","")};n.getPortalFontFamilyName=function(){return s.getPortalFontFamilyName()};c.onbeforeunload=function(){if(n.confirmDialogBeforeUnloadPage.callback!==null&&n.confirmDialogBeforeUnloadPage.callback()===!0&&n.confirmDialogBeforeUnloadPage.closingWindow===!0&&(n.confirmDialogBeforeUnloadPage.locationValidation===null||n.confirmDialogBeforeUnloadPage.locationValidation()===!0))return!0;n.confirmDialogBeforeUnloadPage.closingWindow=!0};n.$on("$locationChangeStart",function(t,i){var o,h,r;if(s.closeAllOpenedElements(),n.isSidebarNavigationOpened=!1,n.confirmDialogBeforeUnloadPage.callback!==null&&n.confirmDialogBeforeUnloadPage.callback()===!0&&(n.confirmDialogBeforeUnloadPage.locationValidation===null||n.confirmDialogBeforeUnloadPage.locationValidation()===!0)&&(o=confirm("You have unsaved changes."),o===!1)){n.loading=!1;t.preventDefault();return}e.pageGuide=null;h=u.path();r=!0;angular.forEach(f.routes,function(n){n.regexp&&n.regexp.test(h)&&(r=!1)});r&&(n.confirmDialogBeforeUnloadPage.closingWindow=!1,t.preventDefault(),s.redirect(i));n.noAccess=!1;n.entityNotFound=!1});n.$on("$locationChangeSuccess",function(){(n.confirmDialogBeforeUnloadPage.locationValidation===null||n.confirmDialogBeforeUnloadPage.locationValidation()===!0)&&(n.confirmDialogBeforeUnloadPage.callback=null,n.confirmDialogBeforeUnloadPage.closingWindow=!0)});n.$on("$routeChangeStart",function(){n.loading=!0});n.$on("$routeChangeError",function(){s.redirect(u.absUrl())});n.$on("$viewContentLoaded",function(){n.loading=!1;typeof translationService!="undefined"&&translationService.translate()});o.$on("ngDialog.opened",function(){s.bindHiddingDropdownMenus()})}]);angular.module("sharedElements").controller("PublicCertificationCtrl",["$scope",function(){}]);angular.module("sharedElements").controller("PublicCommonCtrl",["$scope","appDetailsValue","pageSharedDataFactory","helpService","translationAjaxService",function(n,t,i,r,u){i.session.resolve();i.wysiwygValidationUrl="data/Common/Validation/IsWysiwygContentValidAfterLoginWizard";u.init(!1);i.serviceUnavailable.resolve();i.appOutOfDate.resolve();n.skinColors=t.skinColors;n.loading=!0;n.logoUrl=t.loginLogoUrl;n.title=t.portalName;n.getLoginLogoUrl=function(){return t.loginLogoId===null?"assets/img/avatars/logo-1500x900.svg":"File/"+t.loginLogoId};var f=t.loginLogoId;n.showLoginLogoAdditionalClass=function(){return t.loginLogoAdditionalClass===""||t.loginLogoAdditionalClass===null?!1:f===t.loginLogoId};n.getBackgroundColorStyle=function(){return t.loginBackgroundImageId===null?{"background-color":"#f4f4f4"}:{"background-color":"#b3c6d5"}};n.hideBackgroundImage=function(){return t.loginBackgroundImageId===null};n.getBackgroundImageStyle=function(){return t.loginBackgroundImageId===null?null:{opacity:"0.5","background-image":"url('File/Image/"+t.loginBackgroundImageId+"')"}};n.$on("$locationChangeStart",function(n,t,i){r.closeAllOpenedElements();i!==t&&(n.preventDefault(),r.redirect(t))});n.handleAction=function(n,t){switch(n){case"set-language":return u.setLanguage(t,translationService.isPublic);default:throw"Unknown action: "+n;}}}]);angular.module("sharedElements").controller("WizardCtrl",["$scope","$location","$route","appDetailsValue","pageSharedDataFactory","helpService","translationAjaxService",function(n,t,i,r,u,f,e){function s(t){n.title=t+" - "+r.portalName}function l(){var i=t.path(),r,u;for(i.charAt(0)==="/"&&(i=i.slice(1,i.length)),i.charAt(i.length-1)==="/"&&(i=i.slice(0,i.length-1)),r=0;r<n.steps.length;r++)if(u=n.steps[r].link,i.slice(0,u.length)===u){n.currentStep=r;break}s(n.steps[n.currentStep].label)}function a(){f.getTargetPath()!==null&&(o=f.getTargetPath());l()}var o=null,c=r.landingPagePath,h;e.init(!0);u.session.resolve();u.wysiwygValidationUrl="data/Common/Validation/IsWysiwygContentValidAfterLoginWizard";u.serviceUnavailable.resolve();u.appOutOfDate.resolve();n.skinColors=r.skinColors;n.loading=!0;n.steps=r.steps;n.currentStep=0;n.getLoginLogoUrl=function(){return"File/"+r.loginLogoId};h=r.loginLogoId;n.showLoginLogoAdditionalClass=function(){return r.loginLogoAdditionalClass===""||r.loginLogoAdditionalClass===null?!1:h===r.loginLogoId};n.getBackgroundColorStyle=function(){return r.loginBackgroundImageId===null?{"background-color":"#f4f4f4"}:{"background-color":"#b3c6d5"}};n.hideBackgroundImage=function(){return r.loginBackgroundImageId===null};n.getBackgroundImageStyle=function(){return r.loginBackgroundImageId===null?null:{opacity:"0.5","background-image":"url('File/Image/"+r.loginBackgroundImageId+"')"}};u.nextStep=function(){n.currentStep+1<n.steps.length?(n.currentStep=n.currentStep+1,t.path(n.steps[n.currentStep].link)):o!==null?f.redirect(o):f.redirect(c)};n.$on("$locationChangeStart",function(r,u){f.closeAllOpenedElements();var o=t.path(),e=!0;angular.forEach(i.routes,function(n){n.regexp&&n.regexp.test(o)&&(e=!1)});e&&(r.preventDefault(),f.redirect(u));s(n.steps[n.currentStep].label)});n.$on("$routeChangeStart",function(){n.loading=!0});n.$on("$viewContentLoaded",function(){n.loading=!1;typeof translationService!="undefined"&&translationService.translate()});n.handleAction=function(n,t){switch(n){case"set-language":return e.setLanguage(t,!1);default:throw"Unknown action: "+n;}};a()}]);angular.module("loginApp",["ngRoute","sharedElements"]).config(["$routeProvider","$locationProvider","routeHelperProvider","constants",function(n,t,i,r){function u(n){return i.getRoute({templateUrl:"js/apps/login/views/generateCompletionCertificate/generateCompletionCertificateView.html",controller:"GenerateCompletionCertificateCtrl",completionType:n})}n.when("/",{redirectTo:"/Login",caseInsensitiveMatch:!0}).when("/Login",i.getRoute({templateUrl:"js/apps/login/views/login/loginView.html",controller:"LoginCtrl"})).when("/Login/Preview",i.getRoute({templateUrl:"js/apps/login/views/login/loginView.html",controller:"LoginCtrl",isPreview:!0})).when("/RequestAccess",i.getRoute({templateUrl:"js/apps/login/views/requestAccess/requestAccessView.html",controller:"RequestAccessCtrl"})).when("/BecomeAPartner",i.getRoute({templateUrl:"js/apps/login/views/becomeAPartner/becomeAPartnerView.html",controller:"BecomeAPartnerCtrl"})).when("/ContactAdmin",i.getRoute({templateUrl:"js/apps/login/views/contactAdmin/contactAdminView.html",controller:"ContactAdminCtrl"})).when("/Unsubscribe",i.getRoute({templateUrl:"js/apps/login/views/unsubscribe/unsubscribeView.html",controller:"UnsubscribeCtrl"})).when("/p/rf/:hash",i.getRoute({templateUrl:"js/apps/login/views/publicReferralForm/publicReferralFormView.html",controller:"PublicReferralFormCtrl"})).when("/File/PdfCert/:id",u(r.pdfCertificationSharingType.FILE)).when("/Connector/LinkedIn/Profile/:id",u(r.pdfCertificationSharingType.LINKED_IN_PROFILE)).when("/Connector/LinkedIn/Timeline/:id",u(r.pdfCertificationSharingType.LINKED_IN_TIMELINE)).when("/Unsubscribe/Confirmation",{redirectTo:"/Unsubscribe"});t.html5Mode(!0)}]);angular.module("sharedElements").controller("LoginAppCtrl",["$scope","appDetailsValue","$location","$route","pageSharedDataFactory","helpService","translationAjaxService","$window",function(n,t,i,r,u,f,e,o){function s(n){var u,t,r;if(typeof n=="undefined")throw new Error("Tabs are undefined");if(n===null)return null;if(Object.prototype.toString.call(n)!=="[object Array]")throw new Error("Tabs is not an Array");if(n.length===0)throw new Error("Tabs is an empty Array");for(u=[],t=0;t<n.length;t++)r=n[t],u.push({id:"loginTab"+t,label:r.label,count:null,isActive:f.linkStartsWith(i.path(),r.link),name:null,link:r.link,targetBlank:!1});return u}u.session.resolve();e.init(!1);u.serviceUnavailable.resolve();u.appOutOfDate.resolve();n.skinColors=t.skinColors;n.loading=!0;n.logoUrl=t.loginLogoUrl;n.title=t.portalName;n.getLoginLogoUrl=function(){return t.loginLogoId===null?"assets/img/avatars/logo-1500x900.svg":"File/"+t.loginLogoId};var h=t.loginLogoId;n.showLoginLogoAdditionalClass=function(){return t.loginLogoAdditionalClass===""||t.loginLogoAdditionalClass===null?!1:h===t.loginLogoId};n.getBackgroundColorStyle=function(){return t.loginBackgroundImageId===null?{"background-color":"#f4f4f4"}:{"background-color":"#b3c6d5"}};n.hideBackgroundImage=function(){return t.loginBackgroundImageId===null};n.getBackgroundImageStyle=function(){return t.loginBackgroundImageId===null?null:{opacity:"0.5","background-image":"url('File/Image/"+t.loginBackgroundImageId+"')"}};n.getPortalFontFamilyName=function(){return f.getPortalFontFamilyName()};u.setTitle=function(i,r){typeof r=="undefined"&&(r=!0);n.title=i;r===!0&&(n.title+=" - "+t.portalName)};n.tabs=null;u.setAccessDenied=function(t){typeof t=="undefined"&&(t="You do not have permission to access that resource.");n.noAccess=!0;n.noAccessMessage=t;u.setTitle("No Access")};u.setEntityNotFound=function(){o.location.reload()};n.$on("$locationChangeStart",function(n,t){f.closeAllOpenedElements();var e=i.path(),u=!0;angular.forEach(r.routes,function(n){n.regexp&&n.regexp.test(e)&&(u=!1)});u&&(n.preventDefault(),f.redirect(t))});n.$on("$routeChangeStart",function(){n.loading=!0});n.$on("$viewContentLoaded",function(){n.loading=!1;typeof translationService!="undefined"&&translationService.translate()});n.$on("$routeChangeSuccess",function(){n.tabs=s(t.tabs)});n.tabs=s(t.tabs);n.handleAction=function(n,t){switch(n){case"set-language":return e.setLanguage(t,!0);default:throw"Unknown action: "+n;}}}]);angular.module("loginApp").controller("BecomeAPartnerCtrl",["$scope","pageSharedDataFactory","becomeAPartnerService","helpService","$window",function(n,t,i,r,u){function f(){i.loadPage().then(function(i){t.setTitle(i.pageName);n.pageName=i.pageName;n.description=i.description;n.partnerDetailsSection=i.partnerDetailsSection;n.partnerProfileDetailsSection=i.partnerProfileDetailsSection;n.primaryContactDetailsSection=i.primaryContactDetailsSection;n.isLoading=!1},r.handleError({notFound:function(){n.isLoading=!1;u.location.reload()}}))}n.description=null;n.successMessage=null;n.partnerDetailsSection=null;n.partnerProfileDetailsSection=null;n.primaryContactDetailsSection=null;n.form=null;n.isLoading=!0;n.pendingAction=!1;n.requestIsSubmitted=!1;n.pageName=null;n.save=function(f){f.submit(function(){t.showProcessingMessage("Sending...");var f=[{name:n.partnerDetailsSection.name,fields:n.partnerDetailsSection.fields},{name:n.primaryContactDetailsSection.name,fields:n.primaryContactDetailsSection.fields}];n.partnerProfileDetailsSection!==null&&f.push({name:n.partnerProfileDetailsSection.name,fields:n.partnerProfileDetailsSection.fields});i.create(f).then(function(i){t.showSuccessMessage("Sent");n.successMessage=i;n.requestIsSubmitted=!0},r.handleError({accessDenied:function(){u.location.reload()}}))})};f()}]);angular.module("loginApp").service("becomeAPartnerService",["securityService","helpService",function(n,t){this.loadPage=function(){return n.httpGet("data/Common/BecomeAPartner/LoadPage")};this.create=function(i){return n.httpPost("data/Common/BecomeAPartner/Create",{sections:t.getProcessedSections(i)})}}]);angular.module("loginApp").controller("ContactAdminCtrl",["$scope","pageSharedDataFactory","contactAdminService","helpService","$window",function(n,t,i,r,u){function f(){i.loadPage().then(function(i){t.setTitle(i.pageName);n.description=i.description;n.isLoading=!1},r.handleError({accessDenied:function(){u.location.reload()}}))}n.isLoading=!0;n.contactMessage=null;n.pendingAction=!1;f()}]);angular.module("loginApp").service("contactAdminService",["securityService",function(n){this.loadPage=function(){return n.httpGet("data/Common/ContactAdmin/LoadPage")}}]);angular.module("loginApp").controller("GenerateCompletionCertificateCtrl",["$scope","pageSharedDataFactory","generateCompletionCertificateService","helpService","$window","$routeParams","$route",function(n,t,i,r,u,f,e){function h(){i.loadPage(o,s).then(function(t){r.redirect(t);n.isLoading=!1},r.handleError({notFound:function(){n.isLoading=!1;u.location.reload()}}))}n.title=null;n.description=null;n.isLoading=!0;t.setTitle("Generating Certificate",!1);var o=f.id,s=e.current.$$route.completionType;h()}]);angular.module("loginApp").service("generateCompletionCertificateService",["securityService",function(n){this.loadPage=function(t,i){return n.httpGet("data/Common/GenerateCompletionCertificate/LoadPage",{id:t,type:i})}}]);angular.module("loginApp").controller("LoginCtrl",["$scope","pageSharedDataFactory","securityService","$location","appDetailsValue","constants","$httpParamSerializer","helpService","$timeout","translationHelperService",function(n,t,i,r,u,f,e,o,s,h){function l(t){window.location.origin===t.origin&&t.data.action==="update-skin"&&n.$apply(function(){o.updateSkinLoginPage(t.data)})}function a(){if(u.failedLoginMessage!==null)n.isWebLoginEnabled=r.search().mgmtsso==="1"||r.search().mgmtsso==="true",n.errorMessage=u.failedLoginMessage,u.failedLoginMessage=null,s(function(){n.isPageLoading=!1});else{var t=r.search().nosso==="1"||r.search().nosso==="true",l=o.isPreview();i.loadLoginPage(t,l).then(function(t){if(typeof t.sessionCheckResult.redirectPath=="undefined")throw new Error('"BUG ID(2): 48038" result.sessionCheckResult.redirectPath is undefined. result: "'+JSON.stringify(t)+"'");n.title=t.header;n.description=t.description;t.sessionCheckResult.redirectPath!==null?o.getTargetPath()!==null?o.redirect(t.sessionCheckResult.redirectPath+"?"+e({target:o.getTargetPath()})):o.redirect(t.sessionCheckResult.redirectPath):t.sessionCheckResult.success?o.getTargetPath()!==null?o.redirect(o.getTargetPath()):o.redirect(c):(t.sessionCheckResult.errorCode!==f.sessionCheckFailReason.LOGOUT&&(n.errorMessage=t.sessionCheckResult.errorMessage),t.identityProviders!==null&&o.getTargetPath()!==null&&angular.forEach(t.identityProviders,function(n){n.connectorUrl+="?"+e({target:o.getTargetPath()})}),n.isWebLoginEnabled=t.isWebLoginEnabled,n.identityProviders=t.identityProviders,n.isWebLoginEnabled&&n.identityProviders!==null?n.loginModeMessage="Select an Identity Provider or log in using your "+h.wrapTextInVar(u.portalName,h.variableName.PORTAL_NAME)+" User account below:":n.isWebLoginEnabled===!1&&n.identityProviders!==null&&(n.loginModeMessage="Select an Identity Provider:"),t.sessionCheckResult.storedEmail!==null&&(n.email=t.sessionCheckResult.storedEmail,n.rememberLogin=!0),n.isPageLoading=!1)})}}t.setTitle("Log In");var c=u.landingPagePath;n.title="Log in to "+h.wrapTextInVar(u.portalName,h.variableName.PORTAL_NAME);n.isPageLoading=!0;n.isProcessing=!1;n.errorMessage=null;n.loginErrorMessage=null;n.description=null;n.email=null;n.password=null;n.rememberLogin=!1;n.isWebLoginEnabled=!1;n.identityProviders=null;n.loginModeMessage=null;window.addEventListener("message",l);n.$on("$destroy",function(){window.removeEventListener("message",l)});n.login=function(t){t.email.$commitViewValue();t.password.$commitViewValue();t.submit(function(){n.errorMessage=null;n.loginErrorMessage=null;i.login(n.email,n.password,n.rememberLogin).then(function(i){if(i.success){if(typeof i.redirectPath=="undefined")throw new Error('"BUG ID (1): 48038" result.redirectPath is undefined. result: "'+JSON.stringify(i)+"'");i.redirectPath!==null?o.getTargetPath()!==null?o.redirect(i.redirectPath+"?"+e({target:o.getTargetPath()})):o.redirect(i.redirectPath):o.getTargetPath()!==null?o.redirect(o.getTargetPath()):i.landingPage!==null?o.redirect(i.landingPage):o.redirect(c)}else n.password=null,t.password.$setPristine(),n.loginErrorMessage=i.errorMessage,n.isProcessing=!1})})};n.forgotPassword=function(){var t=i.openPasswordLookupDialog(n.email)};a()}]);angular.module("sharedElements").service("loginService",["securityService","helpService",function(n,t){this.loadPageOuter=function(){return n.httpGet("data/Common/UserProfileEdit/LoadLanguageOuterDialog",null,{ignoreLoadingBar:!1})};this.updateOuter=function(i){var r=t.getProcessedSections(i);return n.httpPost("data/Common/UserProfileEdit/UpdateLanguageOuterDialog",{sections:r})}}]);angular.module("loginApp").controller("PublicReferralFormCtrl",["$scope","pageSharedDataFactory","publicReferralFormService","helpService","$window","$routeParams","appDetailsValue",function(n,t,i,r,u,f,e){function s(){i.loadPage(o).then(function(i){t.setTitle(i.browserTitle,!1);n.pageTitle=i.pageTitle;n.description=i.description;n.detailsSection=i.detailsSection;n.isLoading=!1},r.handleError({notFound:function(){n.isLoading=!1;u.location.reload()}}))}n.pageTitle=null;n.description=null;n.successMessage=null;n.detailsSection=null;n.form=null;n.isLoading=!0;n.pendingAction=!1;n.referralIsSubmitted=!1;n.referralSingular=e.labels.referralSingular;var o=f.hash;n.save=function(f){f.submit(function(){t.showProcessingMessage("Submitting...");var f=[{name:n.detailsSection.name,fields:n.detailsSection.fields}];i.create(o,f).then(function(i){t.showSuccessMessage("Submitted");n.successMessage=i;n.referralIsSubmitted=!0},r.handleError({accessDenied:function(){u.location.reload()}}))})};s()}]);angular.module("loginApp").service("publicReferralFormService",["securityService","helpService",function(n,t){this.loadPage=function(t){return n.httpGet("data/Common/PublicReferralForm/LoadPage",{hash:t})};this.create=function(i,r){return n.httpPost("data/Common/PublicReferralForm/Create",{additionalData:i,sections:t.getProcessedSections(r)})}}]);angular.module("loginApp").controller("RequestAccessCtrl",["$scope","pageSharedDataFactory","requestAccessService","$window","helpService",function(n,t,i,r,u){function f(){i.loadPage().then(function(i){t.setTitle("Request Access");n.description=i.description;n.fields=i.fields;n.isLoading=!1},u.handleError({accessDenied:function(){r.location.reload()}}))}n.fields=null;n.isLoading=!0;n.pendingAction=!1;n.form=null;n.successMessage=null;n.description=null;n.requestIsSubmitted=!1;n.save=function(f){f.submit(function(){t.showProcessingMessage("Sending...");i.create(n.fields).then(function(i){t.showSuccessMessage("Sent");n.successMessage=i;n.requestIsSubmitted=!0},u.handleError({notFound:function(){n.isLoading=!1;r.location.reload()}}))})};f()}]);angular.module("loginApp").service("requestAccessService",["securityService","helpService",function(n,t){this.loadPage=function(){return n.httpGet("data/Common/RequestAccount/LoadPage")};this.create=function(i){var r=t.getProcessedFields(i);return n.httpPost("data/Common/RequestAccount/Create",{fields:r})}}]);angular.module("loginApp").controller("UnsubscribeCtrl",["$scope","pageSharedDataFactory","unsubscribeService","helpService","$location","translationHelperService",function(n,t,i,r,u,f){function o(){var n=u.search().hash;return typeof n=="undefined"?"":n}function s(){i.loadPage(e).then(function(i){t.setTitle("Unsubscribe");n.hashIsInvalid=i.hashIsInvalid;n.isUnsubscribed=i.isUnsubscribed;n.portalName=i.portalName;n.isCurrentUser=i.isCurrentUser;n.emailAddress=i.emailAddress;n.unsubscribeSection=i.unsubscribeSection;n.unsubscribeHeading="Unsubscribe <b>"+f.wrapTextInVar(i.emailAddress,f.variableName.USER_EMAIL)+"<\/b> from email messages sent by "+f.wrapTextInVar(r.htmlEncode(i.portalName),f.variableName.PORTAL_NAME)+"?";n.successMessage="<b>"+f.wrapTextInVar(i.emailAddress,f.variableName.USER_EMAIL)+"<\/b> has been unsubscribed.";n.isLoading=!1})}var e=o();n.successMessage=null;n.form=null;n.isLoading=!0;n.pendingAction=!1;n.hashIsInvalid=!1;n.isUnsubscribed=!1;n.portalName=null;n.isCurrentUser=null;n.emailAddress=null;n.unsubscribeSection=null;n.title=null;n.successMessage=null;n.submitForm=function(r){r.submit(function(){t.showProcessingMessage();var r=null;n.unsubscribeSection!==null&&(r=[{name:n.unsubscribeSection.name,fields:[n.unsubscribeSection.unsubscribe]}]);i.unsubscribe(e,r).then(function(i){t.showSuccessMessage();n.unsubscribeSection=null;n.isUnsubscribed=i.isUnsubscribed})})};s()}]);angular.module("loginApp").service("unsubscribeService",["securityService","helpService",function(n,t){this.loadPage=function(t){return n.httpGet("data/Common/Unsubscribe/LoadPage",{hash:t})};this.unsubscribe=function(i,r){return n.httpPost("data/Common/Unsubscribe/Unsubscribe",{additionalData:i,sections:t.getProcessedSections(r)})}}])