{"version":3,"sources":["cms/components/element/ElementWrapper/ElementWrapper.js","payments/CardPayment/Nets/Nets.js","serviceWorker.js","constants/attendee/attendee.constants.js","assets/icons/unsplash_logo.svg","file/components/ArchiveSidebar.js","cms_2.0/constants/condition.constants.js","helpers/labelHelper.js","constants/alert.constants.js","cms/models/content.js","helpers/lanugageHelper.js","services/system/systemLabel/systemLabel.service.js","helpers/requestHandler.js","store/actions/system/systemLabel/systemLabel.action.js","constants/event/event.constants.js","file/containers/ArchiveContainer.js","helpers/cssHelper.js","store/actions/cms/condition.action.js","cms/components/UI/Buttons/JirangoButton.js","cms/helpers/containerHelper.js","services/cms/form/element/element.service.js","store/actions/cms/element/element.action.js","cms/areas/menu/containers/MenuLayout.js","cms/areas/template/containers/TemplateHeader/TemplateHeader.js","cms/areas/template/containers/TemplateFooter/TemplateFooter.js","cms/components/version/MergeAlerter.js","cms/areas/template/components/PreviewMode/PreviewWrapper.js","cms/areas/template/components/MediaBackdrop/MediaBackdrop.js","cms/areas/template/containers/TemplateLayout/Wrappers/ContentWrapper/ContentWrapper.js","cms/areas/template/containers/TemplateLayout/Wrappers/MenuWrapper/MenuWrapper.js","cms/areas/template/containers/TemplateLayout/Wrappers/HeaderWrapper/HeaderWrapper.js","cms/areas/template/containers/TemplateLayout/Wrappers/FooterWrapper/FooterWrapper.js","cms/components/CmsNavigation/CmsSpeedDial/CmsSpeedDial.js","cms/areas/template/containers/TemplateLayout/TemplateWrapper.js","cms_2.0/components/SystemLabel.js","cms/components/UI/SplashScreen/SplashScreen.js","cms/helpers/labelAlignment.js","cms/components/selects/SelectAddItem.js","components/UI/Checkbox/JirangoCheckbox2.js","cms/elements/element/Question/Options/Options.js","components/UI/Form/IsRequiredSymbol.js","cms/elements/element/Question/Question.js","components/UI/Input/FakeInput.js","system/CountryList/CountryList.js","cms/elements/element/Field/Field.js","cms/elements/element/ProfileImageUploader/ProfileImageUploader.js","cms/elements/element/Event/Event.js","cms/elements/element/Container/Container.js","assets/icons/google_maps.svg","cms/components/plugins/GoogleMaps/MapContainer.js","assets/img/no_thumb.png","cms/elements/element/Content/Widgets/VideoElement.js","cms/elements/element/Content/Widgets/ImageElement/ImageElement.js","helpers/dateHelper.js","services/core/eventLabelService.js","store/actions/core/eventLabel.action.js","core/EventLabel2/EventLabel2.js","components/CountdownTimer.js","cms/elements/element/CalendarInvitation/CalendarInvitation.js","core/EventLabel/EventLabel.js","cms/elements/element/Content/Content.js","cms/elements/element/PaymentOptions/invoiceFieldValidator.js","cms/elements/element/PaymentOptions/PaymentOptions.js","cms/elements/element/UserPage/UserPage.js","cms/elements/element/PreConfirmation/PreConfirmation.js","cms/elements/element/Discount/Discount.js","cms/elements/element/FileUploader/FiletypeIcons/doc.svg","cms/elements/element/FileUploader/FiletypeIcons/jpg.svg","cms/elements/element/FileUploader/FiletypeIcons/mp.svg","cms/elements/element/FileUploader/FiletypeIcons/png.svg","cms/elements/element/FileUploader/FiletypeIcons/svg.svg","cms/elements/element/FileUploader/FiletypeIcons/txt.svg","cms/elements/element/FileUploader/FiletypeIcons/xls.svg","cms/elements/element/FileUploader/FiletypeIcons/pdf.svg","cms/elements/element/FileUploader/FiletypeIcons/ppt.svg","cms/elements/element/FileUploader/FileUploader.js","cms/helpers/renderElement.js","cms_2.0/components/CustomIcon.js","constants/system/language/language.constants.js","constants/event/eventLabel.constants.js","polyfill.js","views/Pages/PageBug/PageBug.js","store/actions/global.action.js","RedirectUser.js","cms/areas/page/plugins/article/components/ArticleActionBar/ArticleActionBar.js","cms/areas/page/plugins/article/components/Article/Article.js","cms/areas/page/plugins/article/components/ArticleMenu/ArticleMenu.js","cms/areas/page/plugins/article/containers/ArticleFeed.js","assets/icons/firefox.svg","assets/icons/opera.svg","assets/icons/google_chrome.svg","system/BrowserAgent/ProvideBrowserOptions.js","checkpoint/ScanView.js","assets/img/brand/poweredbyjirango.svg","checkpoint/CheckinView.js","system/LinkTracker/LinkTracker.js","QRList/QRList.js","views/Pages/PrinterClients/PrinterClients.js","cms_2.0/payment/Stripe/CheckoutForm.js","cms_2.0/payment/Stripe/Stripe.js","App.js","system/BrowserAgent/BrowserDetector.js","index.js","cms/components/editor/tools/DeviceButtonGroup/DeviceButtonGroup.js","cms/components/editor/tools/EditorSlider.js","cms_2.0/helpers/usePrevious.js","cms/components/element/Overlay/ElementOverlay.js","cms/areas/email/elements/elementHandlers.js","cms/areas/email/models/defaultEmailElement.js","cms/areas/email/helper/email.helper.js","constants/system/global.constans.js","system/SystemLabel/SystemLabel.js","helpers/localStorageHelper.js","helpers/moneyHelpers.js","cms/helpers/contentHelper.js","cms_2.0/store/Store.js","services/cms/form/form.service.js","store/actions/cms/form/form.action.js","cms/components/editor/tools/EditorTabGroup.js","cms/components/editor/BoxShadowSettings/BoxShadowSettings.js","cms/areas/template/components/ContentSettings/ContentSettings.js","cms/areas/template/components/BackgroundSettings/BackgroundSettings.js","fonts/FontPicker.js","fonts/FontWeightPicker/FontWeightPicker.js","cms/areas/template/components/TextSettings/TextSettings.js","cms/areas/template/components/TitleSettings/TitleSettings.js","cms/areas/template/components/SubtitleSettings/SubtitleSettings.js","cms/areas/template/components/FooterSettings/FooterSettings.js","cms/areas/template/components/HeaderSettings/HeaderSettings.js","cms/areas/template/components/ButtonSettings/ButtonSettings.js","cms/areas/template/components/FieldSettings/FieldSettings.js","cms/areas/template/components/LinkSettings/LinkSettings.js","cms/areas/template/components/TableSettings/TableSettings.js","cms/areas/template/components/LabelSettings/LabelSettings.js","cms/areas/menu/components/MenuEditDialog.js","cms/areas/template/components/MenuSettings/MenuSettings.js","cms/areas/template/components/InteractionSettings/ClientSettings/ClientSettings.js","cms/areas/template/components/ChartSettings/ChartSettings.js","cms/areas/template/components/ScrollbarSettings/ScrollbarSettings.js","cms/areas/template/components/InteractionSettings/ConnectionSettings/ConnectionSettings.js","cms/areas/template/components/InteractionSettings/AgendaSettings/AgendaSettings.js","cms/areas/template/components/InteractionSettings/ChatSettings/ChatSettings.js","cms/areas/template/components/InteractionSettings/ExhibitorSettings/ExhibitorSettings.js","cms/areas/template/containers/TemplateSettings/TemplateSettings.js","cms/elements/element/Question/Options/Settings/OptionSettings.js","common/validationType.js","cms/areas/form/conditions/components/CondtionTypeList.js","cms/models/displayTypes.js","cms/elements/element/Question/Settings/QuestionSettings.js","cms/elements/element/Field/Settings/FieldSettings.js","components/UI/Checkbox/JirangoCheckbox.js","cms/elements/element/Event/Settings/EventSettings.js","cms/elements/element/Content/Settings/DividerSettings.js","cms/elements/element/Content/Settings/ImageSettings.js","cms/elements/element/Content/Settings/MapSettings.js","global/JirangoDatepicker.js","cms/elements/element/Content/Settings/ButtonSettings.js","cms/elements/element/Content/Settings/VideoSettings.js","cms/models/eventGroup.js","cms/elements/element/Container/Settings/ContainerSettings.js","cms/elements/element/Content/Settings/CalendarInvitationSettings.js","cms/elements/element/Content/Settings/ContentSettings.js","cms/elements/element/PaymentOptions/Settings/InvoiceFieldSettings/InvoiceFieldSettings.js","cms/elements/element/PaymentOptions/Settings/PaymentOptionSettings.js","cms/elements/element/UserPage/Settings/UserPageSettings.js","cms/areas/email/elements/EmptySpace/EmptySpace.settings.js","cms/areas/tags/components/RecipeReviewCard.js","cms/areas/tags/components/TagSection.js","cms/areas/tags/containers/TagToolbar.js","cms/areas/email/elements/TextArea/TextArea.settings.js","cms/areas/email/elements/BackgroundImageWithText/BackgroundImageWithText.settings.js","cms/areas/email/elements/LargeHeaderImage/LargeHeaderImage.settings.js","cms/areas/email/elements/SmallHeaderImage/SmallHeaderImage.settings.js","cms/elements/element/ProfileImageUploader/Settings/ProfileImageUploaderSettings.js","cms/elements/element/Discount/Settings/DiscountSettings.js","cms/areas/email/elements/CalendarInvitation/CalendarInvitation.settings.js","cms/elements/element/GroupRegistration/Settings/GroupRegistrationSettings.js","cms/elements/element/FileUploader/Settings/FileUploaderSettings.js","cms/helpers/renderElementSettings.js","cms/components/ConfirmModal/ConfirmModal.js","cms/areas/form/components/Pagination/Pagination.js","cms/components/editor/Nav/NavItems/PreviewOption.js","cms/elements/element/Question/CreateQuestion/CreateQuestion.js","cms/components/UI/List/AddElement/AddElement.js","cms/helpers/cmsHelper.js","cms/components/editor/tools/Inheritage/InheritedSymbol.js","cms/components/editor/ElementDropItem/ElementDropItem.js","cms/elements/list/QuestionElements/QuestionElements.js","cms/areas/form/models/fieldTypes.js","cms/elements/element/Field/CreateField/CreateField.js","cms/elements/list/FieldElements/FieldElements.js","cms/elements/element/Event/CreateEvent/CreateEvent.js","cms/elements/list/EventElements/EventElements.js","cms/elements/list/ContainerElements/ContainerElements.js","cms/elements/list/ContentElements/ContentElements.js","cms/models/payments.js","cms/elements/list/PaymentElements/PaymentElements.js","cms/elements/list/PreConfirmationElements/PreConfirmationsElements.js","cms/elements/list/UserPageElements/UserPageElements.js","cms/areas/email/assets/images/backgroundWithText.png","cms/areas/email/models/emailElementTabList.js","cms/components/editor/ElementDropItem/ElementDropItemWithImage.js","cms/areas/email/elementGroups/EmailElements.js","cms/components/editor/ElementsTab/ElementsTab.js","assets/icons/inheritage_icon.svg","cms/components/selects/TemplateSelect.js","cms/components/selects/ConfirmationSelect.js","cms/components/editor/tools/Inheritage/InheritageButtonGroup.js","cms/components/editor/LangInputGroup/LangInputGroup.js","cms/areas/form/components/FormSettings/FormSettings.js","cms/components/editor/Nav/NavItems/RunFormOption/RunFormOption.js","cms/areas/email/containers/EmailEditor/EmailSettings.js","assets/icons/sent_icon.svg","cms/areas/email/components/SendTestEmail.js","cms/areas/page/components/PageSettings.js","cms/areas/template/components/TemplateInternalSettings.js","cms/components/editor/EditorSidebar/EditorSidebar.js","cms/helpers/elementHelper.js","helpers/inputVaildator.js","components/UI/ListExpansion/ListExpansion.js","helpers/colorHelper.js","helpers/imageHelper.js","cms/areas/page/plugins/article/helpers/imageLoader.lazy.js","services/cms/template/template.service.js","services/cms/menu/menu.service.js","store/actions/cms/template/template.action.js","cms/areas/email/components/HtmlWrapper.js","cms/areas/email/models/emailFonts/emailFonts.js","components/UI/Notifier/Notifier.js","services/system/language/language.service.js","store/actions/system/language/language.action.js","cms/areas/template/models/defaultTemplate.js","components/UI/Buttons/TemplateColors.js","components/UI/Buttons/ColorPickerFacade.js","cms/components/UI/DropArea/DropArea.js","cms/components/UI/DragContainer/DragContainer.js","helpers/handleresponse.js","store/actions/alert.action.js","cms/components/plugins/tiny_plugin/TinyEditor.js","cms/components/editor/tools/Inheritage/InheritageWrapper.js","cms_2.0/constants/invoiceFields.constants.js","cms/components/NotAuthorized.js","store/actions/cms/cms.action.js","helpers/authHeader.js","store/reducers/cms/cms.reducer.js","helpers/fontHelper.js","file/plugins/InlineCropper.js","cms/areas/email/components/TextWrapper.js","navigation/LinkManager/LinkManager.js","system/LanguageToggler/LanguageToggler.js","cms/areas/form/containers/PostFormLayout/PostFormContent.js","cms/areas/form/containers/PostFormLayout/PostFormLayout.js","helpers/objectHelper.js","cms/areas/tags/assets/images/section_tags_helper.png","cms/areas/tags/TagGroups/SectionTagHelpInfo.js","cms/areas/tags/models/tagDictionary.js","sentry.config.js","hoc/ErrorBoundry.js","cms/areas/form/conditions/condition.constants.js","cms/areas/email/elements/EmptySpace/EmptySpace.js","cms/areas/email/elements/EmptySpace/EmptySpace.handler.js","constants/cms/template/template.constants.js","cms_2.0/helpers/objectHelper.js","helpers/securityHelper.js","cms/areas/page/container/View/Content/PageViewContent.js","cms/areas/page/container/View/Layout/PageViewLayout.js","cms/models/containers.js","cms/areas/form/models/formSettings.js","routes.js","helpers/UrlHelper.js","file/components/ArchiveFilterBar.js","cms/areas/email/models/cerberus/cssReset.js","cms/areas/email/models/cerberus/progressiveEnhancement.js","cms/areas/template/helpers/templateHelper.js","constants/cms/form/form.constants.js","cms/elements/element/Image/ImageOverlay.js","cms/areas/email/elements/SimpleButton/SimpleButton.settings.js","services/cms/page/page.service.js","store/actions/cms/page/page.action.js","cms/components/editor/tools/FloatingChecklist/FloatingChecklist.js","components/UI/Switch/JirangoSwitch.js","cms/elements/element/GroupRegistration/GroupRegistration.js","cms/helpers/paymentHelper.js","cms/helpers/preConfirmationHelper.js","cms/areas/page/plugins/article/components/ArticleMediaUploader/ArticleMedia.js","components/UI/Spinner/MobileLoader.js","cms/areas/page/plugins/article/containers/ArticleEditor/ArticleEditor.js","cms_2.0/modules/Space/Space.js","cms_2.0/modules/Menu/Menu.js","cms_2.0/components/Asterisk.js","cms_2.0/hooks/onClickOutside.js","cms_2.0/modules/CountrySelect/CountrySelect.js","cms_2.0/components/EventLabel.js","cms_2.0/components/PhoneNumberField.js","cms_2.0/components/CustomInput.js","cms_2.0/helpers/inputValidator.dnk.helper.js","cms_2.0/helpers/inputValidator.helper.js","cms_2.0/modules/Field/Field.js","cms_2.0/helpers/date.helper.js","cms_2.0/modules/Countdown/Countdown.js","cms_2.0/modules/Button/Button.js","cms_2.0/modules/Question/OptionSelector.js","cms_2.0/modules/Question/Option.js","cms_2.0/modules/Question/Text.js","cms_2.0/modules/Question/Question.js","cms_2.0/helpers/money.helper.js","cms_2.0/modules/Event/components/EventDates.js","cms_2.0/modules/Event/components/EventLocation.js","cms_2.0/modules/Event/Event.js","cms_2.0/modules/SubmitButton/SubmitButton.js","cms_2.0/modules/PreviousPage/PreviousPage.js","cms_2.0/modules/ForwardPage/ForwardPage.js","cms_2.0/modules/InvoiceFields/InvoiceFields.js","cms_2.0/modules/PaymentOptions/PaymentOptions.js","cms_2.0/components/GLNPopup.js","cms_2.0/modules/InvoiceFieldsNew/InvoiceFieldHelpers.js","cms_2.0/modules/InvoiceFieldsNew/InvoiceFieldsNew.js","cms_2.0/modules/OrderSummary/components/ConfirmationOrderRow.js","cms_2.0/modules/PaymentOptionsNew/PaymentOptionsNew.js","cms_2.0/modules/Discount/Discount.js","cms_2.0/modules/OrderSummary/components/PersonDetailsSummary.js","cms_2.0/modules/OrderSummary/components/OrderTotalSummary.js","cms_2.0/modules/OrderSummary/OrderSummary.js","cms_2.0/modules/GroupRegistration/GroupRegistration.js","cms_2.0/modules/FileUploader/FiletypeIcons/doc.svg","cms_2.0/modules/FileUploader/FiletypeIcons/jpg.svg","cms_2.0/modules/FileUploader/FiletypeIcons/mp.svg","cms_2.0/modules/FileUploader/FiletypeIcons/png.svg","cms_2.0/modules/FileUploader/FiletypeIcons/svg.svg","cms_2.0/modules/FileUploader/FiletypeIcons/txt.svg","cms_2.0/modules/FileUploader/FiletypeIcons/xls.svg","cms_2.0/modules/FileUploader/FiletypeIcons/pdf.svg","cms_2.0/modules/FileUploader/FiletypeIcons/ppt.svg","cms_2.0/modules/FileUploader/FileUploader.js","cms_2.0/modules/ProfileImageUploader/components/ProfileUploadCrop.js","cms_2.0/modules/ProfileImageUploader/ProfileImageUploader.js","global/PictureDisplay.js","cms_2.0/modules/Image/Image.js","cms_2.0/components/LoadSpinner.js","cms_2.0/modules/TextContent/TextContent.js","cms_2.0/modules/Iframe/Iframe.js","cms_2.0/modules/ContentView/ContentView.js","cms_2.0/modules/Paginator/Paginator.js","cms_2.0/modules/Video/VideoModule.js","cms_2.0/components/BootstrapInput.js","cms_2.0/modules/EventGroup/EventGroup.js","cms_2.0/assets/icons/google_maps.svg","cms_2.0/modules/GoogleMaps/components/MapStyles.js","cms_2.0/modules/GoogleMaps/GoogleMaps.js","cms_2.0/modules/CalendarInvitation/CalendarInvitation.js","cms_2.0/modules/QRCode/QRCode.js","cms_2.0/modules/ImageGroup/ImageGroup.js","cms_2.0/modules/VoucherModule/components/VoucherLinkDialog.js","cms_2.0/modules/VoucherModule/components/VoucherRow.js","cms_2.0/modules/VoucherModule/VoucherModule.js","cms_2.0/components/AdvancedTable/components/DebouncedFilterInput.js","cms_2.0/components/AdvancedTable/components/Filter.js","cms_2.0/components/AdvancedTable/AdvancedTable.js","cms_2.0/modules/ExhibitorInviteList/ExhibitorInviteList.js","cms_2.0/modules/Printer/Printer.js","cms_2.0/modules/ContentGroup/ContentGroup.js","cms_2.0/modules/ContentLayoutModule.js","cms_2.0/components/ValidationSnackbar.js","cms_2.0/modules/GroupRegistration/FloatingGroupOrderCart.js","cms_2.0/components/NotAuthorized.js","cms_2.0/components/PasswordDialog.js","cms_2.0/components/PageClosed.js","cms_2.0/helpers/font.helper.js","cms_2.0/components/AnimatedBackground.js","cms_2.0/hooks/useLayoutRender.js","cms_2.0/Layout.js","cms_2.0/helpers/adobeTypekit.helper.js","file/plugins/Cropper.js","cms/areas/email/elements/LargeHeaderImage/LargeHeaderImage.js","cms/areas/email/elements/LargeHeaderImage/LargeHeaderImage.handler.js","cms/areas/email/elements/SmallHeaderImage/SmallHeaderImage.js","cms/areas/email/elements/SmallHeaderImage/SmallHeaderImage.handler.js","cms/areas/email/elements/TextArea/TextArea.js","cms/areas/email/elements/TextArea/TextArea.handler.js","cms/areas/email/elements/SimpleButton/SimpleButton.js","cms/areas/email/elements/SimpleButton/SimpleButton.handler.js","cms/areas/email/elements/BackgroundImageWithText/BackgroundImageWithText.js","cms/areas/email/elements/BackgroundImageWithText/BackgroundImageWithText.handler.js","services/cms/email/email.service.js","store/actions/cms/email/email.action.js","cms/areas/email/containers/EmailEditor/Wrappers/EmailWrapperHtml.js","helpers/history.js","store/reducers/alert.reducer.js","store/reducers/authentication.reducer.js","store/reducers/cms/template/template.reducer.js","constants/organization.constants.js","constants/role.constants.js","store/reducers/cms/page/page.reducer.js","constants/question/question.constants.js","store/reducers/cms/email/email.reducer.js","store/reducers/event/eventLabel.reducer.js","store/reducers/root.reducer.js","store/reducers/user.reducer.js","store/reducers/system/language/language.reducer.js","store/reducers/event/event.reducer.js","store/reducers/organization/organization.reducer.js","store/reducers/organization/role.reducer.js","store/reducers/system/systemLabel/systemLabels.reducer.js","store/reducers/global.reducer.js","store/reducers/account/account.reducer.js","store/reducers/confirmation/confirmation.reducer.js","store/reducers/question/question.reducer.js","store/configureStore.js","store/reducers/cms/form/element/element.reducer.js","store/reducers/cms/form/form.reducer.js","store/reducers/attendee/attendee.reducer.js","cms/areas/template/components/StyleWrapper.js","cms/areas/form/helpers/formHelper.js","cms/models/defaultElements.js","global/AlertDialog.js","payments/CardPayment/Dibs/Dibs.js","cms/components/UI/Buttons/FloatingActionButtons.js","cms/areas/form/conditions/condition.dictionary.js","cms/areas/form/conditions/components/ConditionRow.js","cms/areas/form/conditions/condition.model.js","cms/areas/form/conditions/components/ConditionModal.js","cms/areas/form/containers/FormLayout/FormContent.js","cms/components/UI/EditorToggler/EditorToggler.js","cms/helpers/profileImageUploader.helper.js","cms/helpers/rebateHelper.js","cms/helpers/groupRegistrationHelper.js","cms/helpers/fileUploadHelper.js","cms/areas/form/containers/FormLayout/FormLayout.js","cms/components/UI/Buttons/JirangoLink.js","cms/areas/template/placeholders/ChatPlaceholder.js","cms/areas/template/components/PlaceholderContent/PlaceholderContent.js","cms/areas/template/containers/TemplateLayout/TemplateLayout.js","cms/components/element/Selected/InnerElementWrapper.js","cms/components/element/DragHandle/DragHandleDistractor.js","cms/areas/page/container/Editor/Content/PageContent.js","cms/areas/page/container/Editor/Layout/PageEditorLayout.js","cms/areas/email/containers/EmailEditor/EmailContent.js","cms/areas/email/containers/EmailEditor/EmailEditor.js","cms/areas/meeting/components/MeetingModule.js","cms/areas/meeting/container/EditorLayout/MeetingEditorLayout.js","services/confirmation/confirmation.service.js","store/actions/confirmation/confirmation.action.js","services/attendee/attendee.service.js","store/actions/attendee/attendee.action.js","cms/areas/email/elements/CalendarInvitation/CalendarInvitation.js","cms/areas/email/elements/CalendarInvitation/CalendarInvitation.handler.js","cms/areas/form/conditions/conditionHelper.js","cms_2.0/helpers/condition.translator.js","constants/cms/form/element/element.constants.js","constants/system/systemLabels/systemLabels.constants.js","constants/confirmation/confirmation.constants.js","components/TinyMCE/sv_SE.js","components/TinyMCE/tinyconfig.js","cms_2.0/helpers/url.helper.js","constants/email/email.constants.js","cms/areas/email/constants/emailElementType.constants.js","cms/components/editor/tools/UrlMultiInput/UrlMultiInput.js","constants/cms/sourceType.js","cms/areas/email/components/UseTemplateButton.js","helpers/arrayHelper.js","constants/cms/cms.constants.js","constants/cms/page/page.constants.js","constants/user.constants.js","file/contstants/archive.contstants.js","cms/areas/form/conditions/condition.navigator.js","cms/areas/form/conditions/condition.translator.js","file/components/ArchiveHeader.js","file/containers/ArchiveContent.js","file/components/UploadInfo.js","file/components/UnsplashPlugin.js","file/plugins/ImageCropper.js","cms_2.0/helpers/condition.navigator.js","cms/components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup.js"],"names":["Container","styled","div","_templateObject","_taggedTemplateLiteral","props","isDragging","backgroundColor","ElementWrapper","React","PureComponent","render","createElement","style","width","Draggable","draggableId","this","id","isDragDisabled","index","provided","snapshot","Object","assign","draggableProps","dragHandleProps","ref","innerRef","children","NetsCardpayment","Component","constructor","arguments","state","test","showLoader","template","undefined","loaderMsg","componentDidMount","prevProps","prevState","match","location","params","checkoutOptions","encodedCheckout","localStorage","getItem","JSON","parse","Buffer","from","toString","search","stateNo","requestOptions","method","headers","fetch","concat","then","handleResponse","response","redirectUrl","history","push","setState","addScript","options","URLSearchParams","paymentId","get","getKey","encodedTemplate","removeItem","window","Dibs","initCheckout","s","document","src","testMode","head","appendChild","onload","e","containerId","theme","merchantHandlesConsumerData","checkoutString","stringify","console","log","templateString","setItem","Checkout","on","origin","href","includes","replace","setTimeout","Fragment","css","height","overflowY","position","display","flexDirection","justifyContent","alignItems","top","left","right","bottom","zIndex","Spinner","color","maxHeight","maxWidth","connect","globals","alert","Boolean","hostname","unregister","navigator","serviceWorker","ready","registration","attendeeConstants","GET_ATTENDEE_LIST_REQUEST","GET_ATTENDEE_LIST_SUCCESS","GET_ATTENDEE_LIST_FAILURE","SET_ACTIVE_PERSON_NO","CREATE_ORDER","UPDATE_ORDER","SET_PAYMETHOD","REMOVE_ORDER","UPDATE_DISCOUNT","SET_LEADER","REMOVE_ORDER_BY_CONDITION","ArchiveSidebar","objects","navigate","filterType","ListGroup","ListGroupItem","border","archiveConstants","IMAGE","onClick","CLIENT_STORAGE","className","SystemLabel","name","Badge","pill","marginLeft","filter","o","type","substring","lastIndexOf","length","OTHERS","UNSPLASH","UnsplashLogo","FONT","conditionConstants","operators","AND","OR","EQUAL","NOT_EQUAL","GREATER_THAN","LESS_THAN","LESS_THAN_OR_EQUAL_TO","GREATER_THAN_OR_EQUAL_TO","BETWEEN","LIKE","ANY","NOT","actions","hidden","require","readonly","error","persontype","eventOperators","fieldOperators","questionOptionOperators","questionTextOperators","selectors","NUMERIC","DROPDOWN","TEXT","OPTIONS","CHECKBOX","separators","actionTypes","CHECK_CONDITION_REQUEST","CHECK_CONDITION_SUCCESS","labelHelper","loadingLabels","getLabelValue","groupName","routes","find","r","comparePaths","pathname","path","labelGroup","systemLabels","authentication","store","getState","groups","user","languageCode","userLang","group","label","loading","dispatch","systemLabelActions","getAllGroups","l","some","ll","hint","value","create","p1","p2","locRegex","pathRegex","toLowerCase","getLabel","alertConstants","SUCCESS","ERROR","INFO","CLEAR","WARNING","content","settings","conditions","padding","actionLink","alignment","borderRadius","icon","FilterHdrIcon","fontSize","marginBottom","marginTop","orgSize","LineStyleOutlinedIcon","margin","borderColor","borderWidth","borderStyle","RemoveOutlinedIcon","zoom","RoomOutlinedIcon","target","timer","startDate","endDate","TouchAppIcon","loop","autoplay","frame","thumbnail","YouTubeIcon","invitationId","CalendarTodayIcon","tempLangConverter","lang","systemLabelService","async","authHeader","getGroup","update","body","updateRange","labelArray","labelName","systemLabelConstants","GET_ALL_SYSTEM_LABEL_GROUP_REQUEST","alertActions","clear","groupLoading","GET_ALL_SYSTEM_LABEL_GROUP_SUCCESS","success","GET_ALL_SYSTEM_LABEL_GROUP_FAILURE","failure","GET_SYSTEM_LABEL_REQUEST","GET_SYSTEM_LABEL_SUCCESS","GET_SYSTEM_LABEL_FAILURE","CREATE_LAYOUT_LABEL_REQUEST","CREATE_SYSTEM_LABEL_REQUEST","CREATE_LAYOUT_LABEL_SUCCESS","CREATE_SYSTEM_LABEL_SUCCESS","CREATE_LAYOUT_LABEL_FAILURE","CREATE_SYSTEM_LABEL_FAILURE","UPDATE_SYSTEM_LABEL_REQUEST","_","status","UPDATE_SYSTEM_LABEL_SUCCESS","UPDATE_SYSTEM_LABEL_FAILURE","UPDATE_RANGE_SYSTEM_LABEL_REQUEST","UPDATE_RANGE_SYSTEM_LABEL_SUCCESS","UPDATE_RANGE_SYSTEM_LABEL_FAILURE","currentLoadingGroups","GET_LAYOUT_LABEL_GROUP_REQUEST","GET_SYSTEM_LABEL_GROUP_REQUEST","GET_LAYOUT_LABEL_GROUP_SUCCESS","GET_SYSTEM_LABEL_GROUP_SUCCESS","GET_LAYOUT_LABEL_GROUP_FAILURE","GET_SYSTEM_LABEL_GROUP_FAILURE","eventConstants","TOGGLE_EVENT_LANGUAGE","GET_EVENT_LIST_REQUEST","GET_EVENT_LIST_SUCCESS","GET_EVENT_LIST_FAILURE","GET_EVENT_REQUEST","GET_EVENT_SUCCESS","GET_EVENT_FAILURE","GET_EVENT_SETTINGS_REQUEST","GET_EVENT_SETTINGS_SUCCESS","GET_EVENT_SETTINGS_FAILURE","UPDATE_EVENT_REQUEST","UPDATE_EVENT_SUCCESS","UPDATE_EVENT_SETTINGS_SUCCESS","UPDATE_EVENT_FAILURE","CREATE_EVENT_REQUEST","CREATE_EVENT_SUCCESS","CREATE_EVENT_FAILURE","DELETE_EVENT_REQUEST","DELETE_EVENT_SUCCESS","DELETE_EVENT_FAILURE","ArchiveContainer","_this","files","isOpen","filtered","uploadingInfo","selectedFile","unsplashFile","isUploading","storageUsage","isCompleted","showLaunchBtn","fontEnabled","useCropper","toggle","cmsActions","blockDeselect","onUseSelected","fontName","indexOf","url","dt","ft","onUnsplashDownload","fileInfo","securityHelper","createGuid","size","file","urls","raw","queryStr","encodeURIComponent","catch","err","message","onUpload","reader","FileReader","readAsDataURL","result","onFontUpload","onDeleteFile","filePath","Array","indexToRemove","f","splice","removeFont","onUploadCropped","img","download","fileType","text","storageSummary","map","i","key","eventMemoryUsage","onSelect","str","filteredFiles","crop","toggleCropper","cms","enviroment","sourceTypes","EMAIL","PAGE","componentDidUpdate","deselectionBlocked","Button","Modal","minWidth","ModalHeader","ErrorBoundary","ArchiveHeader","onDelete","ModalBody","paddingTop","minHeight","Row","Col","UploadingInfo","ArchiveContent","UnsplashPlugin","ImageCropper","cropSizes","onSave","close","ModalFooter","Math","round","skipKeys","skipProps","keySubstitutions","sub","present","replaceKeyName","presentation","obj","ks","convertPseudoClassesToCss","pclass","action","pseudoClass","toKebabCase","converWebkitScroll","scrollbar","thumbBackgroundColor","thumbBorderRadius","trackBackgroundColor","thumbColorHover","scroll","targetObj","styleString","isArray","source","entries","reduce","_ref","propName","propValue","matches","conditionActions","checkAll","pageId","conditionHelper","triggerCheck","sourceElementId","checkConditions","JirangoButton","mouseOver","mouseEnter","mouseLeave","disabled","btnStyle","opacity","onMouseEnter","onMouseLeave","containerHelper","sourceType","sortOrder","config","containers","c","eventId","langCode","elements","currentPage","formId","FORM","formElements","pageElements","TEMPLATE","newContainerElements","newId","el","elementConstants","CONTAINER","max","apply","getCurrentContainerId","newContainer","defaultContainerElement","parentId","contentId","page","parentName","newChild","data","sort","addTo","destination","elementInfo","split","parseInt","containerWrapperId","droppableId","slice","element","deepClone","container","parentContainer","EVENT","groupId","CONTENT","selectedEl","contentHelper","newForm","adjust","newPage","tempSource","remove","form","outerContainer","innerContainer","trimmedInnerContainer","move","newSrc","getSource","elementToMove","sourceId","sourceElements","adjustTarget","adjustSource","arrayHelper","setSource","newFormElements","targetContainerId","targetContainer","targetContainerChildrens","newtargetContainerChild","indexDiff","abs","destinationTrack","a","b","x","y","reArranged","elementService","getAll","elementActions","GETALL_ELEMENTS_REQUEST","GETALL_ELEMENTS_SUCCESS","GETALL_ELEMENTS_FAILURE","updateToForm","UPDATE_ELEMENT_REQUEST","newEl","formConstants","UPDATE_FORM_ELEMENT","UPDATE_ELEMENT_FAILURE","CREATE_ELEMENT_REQUEST","ADD_TO_LIST_SUCCESS","CREATE_ELEMENT_FAILURE","updateList","UPDATE_LIST_SUCCESS","addToList","softUpdate","MenuLayout","collapsed","replaceUrlTags","attendee","badgeNo","hasOrder","orders","orderId","paramProps","fixateMenuToTop","headerHeight","scrollTop","documentElement","clientWidth","scrollWidth","clientHeight","scrollHeight","getElementById","classList","add","header","menu","innerWidth","getMenuList","newMenuItems","mi","editMode","alignMenuItems","onscroll","componentWillUnmount","navBrand","itemAlignment","menuItems","Media","queries","mobile","desktop","marginRight","Navbar","expand","NavbarBrand","NavbarToggler","Collapse","navbar","Nav","flexWrap","DrawMenuList","light","isHamburger","fontFamily","fontWeight","sortByParam","parentMenuId","mc","menuId","UncontrolledDropdown","nav","inNavbar","DropdownToggle","caret","DropdownMenu","mii","ii","DropdownItem","NavLink","NavItem","TemplateHeader","isDropZoneDisabled","disableDropZone","isDisabled","templateActions","select","sortChildrens","selectedContainer","selectedElement","Droppable","isDropDisabled","DropArea","droppableProps","isDraggingOver","DragContainer","renderElement","ElementOverlay","targetElement","placeholder","TemplateFooter","footer","modal","setModal","useState","mergeSource","showMergeAlert","mergeCallback","alertNewModifications","formActions","checkForUpdates","pageActions","device","previewDevice","MediaBackdrop","blurEffect","generateYoutubeSource","setScale","small","medium","large","translate","setBackground","main","bg","backgroundPosition","backgroundRepeat","background","backgroundAttachment","setHeight","enabled","PreviewWrapper","transform","frameBorder","allowFullScreen","allow","title","contentStyle","responsiveStyle","responsive","menuStyle","headerStyle","setStyle","dekstopStyle","templateConstants","DESKTOP","dvc","TABLET","SMARTPHONE","footerStyle","useStyles","makeStyles","root","spacing","extendedIcon","env","formPaths","paths","pagePaths","anchorEl","setAnchorEl","handleClose","currentPath","classes","open","Fab","handleClick","event","t","currentTarget","ExploreIcon","Popover","onClose","anchorOrigin","vertical","horizontal","transformOrigin","NavigationPopOver","list","FileCopyIcon","p","RateReviewIcon","popoverOpen","setPopoverOpen","List","component","li","ListItem","button","ListItemIcon","ListItemText","primary","TemplateWrapper","prevBodyBGg","asideEditorRef","contains","sidebarRef","footerRef","deselect","headerRef","getClientFonts","Template","addEventListener","removeEventListener","fonts","youtubeUrl","videoBackgroundEnabled","CmsSpeedDial","MergeAlerter","dangerouslySetInnerHTML","__html","insertFonts","HeaderWrapper","MenuWrapper","ContentWrapper","FooterWrapper","isMenuModalOpen","observer","textOnly","useContext","Store","environment","useEffect","runInAction","Axios","_ref2","groupData","d","_ref3","SplashScreen","labelAlignment","labelAlignmentButtonDisplay","SelectAddItem","optValue","addList","toggleInsertMode","addOptions","onAdd","addOptionsAsList","onListAdd","handleChange","handleKeyDown","keyCode","which","ReactDragList","animation","dataSource","rowKey","rowClassName","handles","onUpdate","onOrderChange","row","labels","ol","textDecorationLine","isDeleted","flexGrow","ContentEditable","contentEditable","html","onBlur","onEdit","innerHTML","optionId","tagName","textAlign","IconButton","cursor","DeleteIcon","Input","autoComplete","resize","onKeyUp","onChange","JirangoCheckbox2","setLabelPosition","placement","lineHeight","setLabelTextAlignment","smartphone","setMargin","inline","optionSpacing","checkAdapter","checkOnchange","checked","drawLabel","isHidden","isReadonly","labelPlacement","checkboxIsDisabled","textStyle","editable","labelOnchange","systemLabel","labelname","hideCheckbox","isSelected","boxType","boxStyle","loaderIcon","replacementContent","hideLabels","FormGroup","Checkbox","CheckBoxOutlineBlank","disableRipple","Radio","Label","language","defaultOption","isChanged","Options","option","selectOption","removeOption","stopPropagation","parent","updateFormElement","addOption","eventCodes","j","code","isValid","addListOptions","order","activePersonNo","answer","questionId","answerId","interactionKey","answerRow","requiredMax","ar","deleted","questionOptionId","answerRowId","orderRow","attendeeActions","updateOrder","clearTimeout","validateTimeout","validateOptions","labelOnChange","val","handleOrderChange","sortedOptions","ds","isParentSelected","sortOptions","sortType","textA","textB","labelA","toUpperCase","labelB","getIsSelected","parentSelected","paddingLeft","displayType","FormControl","checkboxLabelPlacement","hideCheckboxLabels","displayCheckboxRowAsHeader","selectedOption","readOnly","isChangeLocked","valid","invalid","errorMessage","forceValidationMessage","FormFeedback","validation","forceValidate","OptionPopOver","unblock","block","Select","handleBlur","styles","control","input","boxShadow","IsRequiredSymbol","condition","Question","updateValidator","getValidator","validateField","changeLock","getFieldValue","required","minCharacters","inputValidator","newElement","formElementId","min","requiredMin","checkedCount","getCheckedCount","handleUpdate","names","subInputs","subLabels","handleValueChange","getQuestionLabels","questionLabel","questionSubLabel","questionSubInput","labelAlign","titleWidth","wordBreak","handleOnBlur","showSubLabel","inputWidth","rows","textRows","maxLength","maxCharacters","showSubInput","handleOptionsChange","FakeInput","autoFocus","CountryList","countryList","setCountries","getCountries","countries","countryId","nameSwe","nameInt","isReadOnly","singleValue","Field","isNaN","getFieldLabels","fieldLabel","fieldSubLabel","fieldSubInput","handleSelectOnChange","handleOptionEdit","selectOptions","opt","newType","newOrder","toCamelCase","readOnlyOpacity","so","UncontrolledPopover","trigger","PopoverBody","rElement","Croppie","createSliderWithTooltip","Slider","ProfileImageUploader","isCropping","imageLoaded","loadImage","defaultImage","toBase64","Promise","resolve","reject","onerror","onImageUpload","Error","setImageOnOrder","sqlStateNo","res","onCropped","setImageClassName","handleImageLoaded","shape","viewport","imgRef","onLoad","startsWith","Date","alt","ProfileImageCropper","htmlFor","CropTwoToneIcon","accept","isLoading","rndParam","now","init","reRender","cropper","destroy","boundary","showZoomer","enableOrientation","handleZoomOut","listNodes","getElementsByClassName","scale","controlled","cZoom","setZoom","handlResult","handleSave","rotate","hideOverlay","LinearProgress","onWheel","paddingBottom","crossOrigin","Rotate90DegreesCcwTwoToneIcon","SaveTwoToneIcon","Event","checkboxHasChanged","loadingBookingRequest","currentOrderId","isFetching","forceRerender","checkForOverbooking","isChecked","reqEvent","fe","allowOverbooking","startDateTime","endDateTime","checkGroupAvailableStatus","eventsIncReq","events","checkedEvent","extra","handleCheckboxChangeGroup","isRadio","checkAvailableStatus","preChecked","handleCheckboxChange","available","setFullbooked","fullbooked","or","amount","comment","discount","orderRowId","quantity","vatPercent","orow","checkboxHandler","formatDate","date","datePath","timePath","displayDiscount","_orders$activePersonN","_orders$activePersonN2","discountAmount","discounts","_orders$activePersonN3","_orders$activePersonN4","_orders$activePersonN5","targetEventId","valueType","oldPrice","parseFloat","displayEventSettings","displayMoney","price","preciseRound","currency","doNotExistIfHidden","activityName","sm","md","flex","InputGroup","hidePrice","startTime","locationLabel","venue","city","maxLabel","description","descriptionMargin","TinyEditor","slimFormat","_state$attendee$order","isHovering","containerChildren","containerChildrenChildren","validateEventGroup","calculateChildren","getElements","getChildren2","getInheritance","handleMouseLeave","disableDropParent","handleMouseOver","getSelectedElementSource","_element$data$style$w","direction","DropAreaContainer","onMouseOver","cel","regex","RegExp","parentValues","exec","parentTransform","childValues","heigh","cElements","API_KEY","mapStyles","MapContainer","super","getCoordinatesByAdress","address","axios","results","geometry","formatedAddress","formatted_address","coords","displayMarkers","Marker","onMarkerClick","marker","selectedPlace","activeMarker","showingInfoWindow","onMapClicked","google","Map","disableDefaultUI","center","InfoWindow","visible","initialCenter","lat","lng","GoogleMapsIcon","GoogleApiWrapper","apiKey","VideoElement","vUrl","selected","longVideo","VideoThumbnail","videoUrl","thumbnailHandler","customThumb","class","controls","preload","poster","NoThumb","controlsList","ImageElement","editor","isMediaVaultOpen","containerStyle","baseValue","saveCrop","handleOnChange","changeImage","setImage","toggleMediaVault","toggleCroppie","handleCropSave","imageAlignment","pos","setImageStyle","renderOverlay","v","offsetWidth","offsetHeight","InlineCropper","bgColor","cancel","compareDates","time","eventLabelService","eventLabelAction","eventLabelsConstants","CREATE_EVENTLABEL_REQUEST","request","CREATE_EVENTLABEL_SUCCESS","CREATE_EVENTLABEL_FAILURE","GET_GROUP_EVENTLABEL_SUCCESS","labelSettings","creationList","EventLabel2","getFromGroup","n","g","eventLabel","setTime","setClear","datetime","setInterval","countdown","setSeconds","getSeconds","clearInterval","currentTime","secondsLeft","delta","days","floor","hours","minutes","seconds","subtitle","timeBadgeStyle","InsertInvitationIcon","EventLabel","buttonShow","buttonTimeHandler","buttonTimer","setImageHeight","handleExtra","isColumnChild","StyleWrapper","isPage","isHeaderText","CalendarInvitation","CountdownTimer","newUrl","URL","convertUrl","ReCaptchaContainer","autplay","Content","indexOfRemovedEl","updatePageElement","elementCopy","invoiceFieldValidator","countryCode","company","validateOrgno","validateGln","PaymentOptions","showInvoiceFields","showPaymentOptions","notSelectedMessage","notSelected","addFieldProps","validationReq","invoiceFields","INVOICE_FIELD","allValid","payMethod","checkIfOrderHasValue","iv","NaN","addInvoiceFields","missingInvoiceFields","currentFields","cf","newElementList","mif","defaultInvoiceElement","updated","countryCodeField","removeInvoiceFields","renderField","parentElement","isRequired","selectPayMethod","setPayMethod","getPayMethod","handleSoftUpdate","renderRadioButtons","paymentMethods","selectedPayMethod","overflow","fontStyle","selectedPaymentMethod","UserPage","renderFrame","ErrorOutlineIcon","VisibilityOffOutlinedIcon","String","prototype","replaceHtmlEntites","nbsp","amp","quot","lt","gt","entity","PreConfirmation","renderPersonInformation","personFields","fieldElements","FIELD","person","_this$state$countries","tcell","Table","renderCompanyInformation","fields","_this$state$countries2","renderQuestionInformation","questionFields","questionElements","QUESTION","question","qe","questionName","ox","renderInvoiceInformation","invoice","charAt","renderOrderInformation","ordersRows","basePrice","ev","toLocaleString","displayDiscountPrice","thead","_orders$find","_orders$find$orderRow","_orders$find2","_orders$find2$orderRo","_orders$find2$orderRo2","_orders$find3","newPrice","FindInPageOutlinedIcon","setCode","setIsValid","setIsChangeLocked","validCodes","setValidCodes","fetchEarlyBird","fetchOrderDiscounts","dd","updateDiscounts","for","inputOnChange","InputGroupAddon","addonType","validateCode","rebate","Alert","severity","CheckCircleOutlineIcon","secondary","FileIcon","FileUploader","sourceFilename","showConflictPopper","allowedFiletypes","uploading","showDeleteDialog","deleteTarget","onFileSelected","_order$toCamelCase","u","_u$name","setFileOnOrder","unshift","fileInputRef","removeUploadedFile","confirmDelete","confirmed","_this$props$attendee$","_this$props$attendee$2","_prevProps$attendee$o","_prevProps$attendee$o2","uploadedFiles","_element$data","_element$data$allowed","FolderOpenIcon","join","AlertTitle","ConfirmDialog","dense","_template$content","ListItemAvatar","Avatar","FileType","substr","ListItemSecondaryAction","DeleteForeverIcon","pdfIcon","docIcon","jpgIcon","mpIcon","pngIcon","svgIcon","txtIcon","xlsIcon","pptIcon","Transition","forwardRef","Slide","Dialog","TransitionComponent","keepMounted","DialogTitle","DialogContent","DialogContentText","DialogActions","variant","dropControl","allowAdd","DELETED","USER_PAGE","PROFILEIMAGE_UPLOAD","PAYMENT_OPTIONS","PRE_CONFIRMATION","DISCOUNT","Discount","GROUP_REGISTRATION","GroupRegistration","FILE_UPLOADER","HorizontalAlignLeftIcon","VerticalAlignBottomIcon","HorizontalAlignCenterIcon","VerticalAlignCenterIcon","HorizontalAlignRightIcon","VerticalAlignTopIcon","UnitIcon","Icon","HeaderIcon","FooterIcon","ContentIcon","BackgroundIcon","TextIcon","ScrollIcon","ThemeIcon","RightIcon","LeftIcon","TopIcon","BottomIcon","PagesIcon","CodeIcon","TemplateIcon","GlobalSettingsIcon","ModuleIcon","AdvandcedSettingsIcon","TextEditorIcon","VideoIcon","SpaceIcon","ContentViewIcon","OrderSummeryIcon","ImageIcon","CopyIcon","UploadIcon","QuestionIcon","SortIcon","OptionsIcon","EditorIcon","MenuItemIcon","MobileMenuIcon","NarrowIcon","CustomIcon","tooltip","getIcon","Tooltip","MenuIcon","TitleIcon","TouchAppOutlinedIcon","LinkIcon","SubtitlesOutlinedIcon","BorderColorOutlinedIcon","FormatUnderlinedOutlinedIcon","TableChartOutlinedIcon","GridOnOutlinedIcon","CheckBoxOutlinedIcon","FolderIcon","OpenWithIcon","SpaceBarIcon","SliderIcon","SaveIcon","RedoIcon","UndoIcon","OpenInNewIcon","AddIcon","ClearIcon","SettingsIcon","PaletteOutlinedIcon","ZoomInIcon","ZoomOutIcon","Rotate90DegreesCcwIcon","CropIcon","CheckIcon","ImageAspectRatioIcon","AspectRatioIcon","CircleIcon","CropLandscapeIcon","DeleteOutlineOutlinedIcon","AssignmentOutlinedIcon","AssignmentTurnedInOutlinedIcon","ImagesIcon","FilesIcon","FontsIcon","FieldIcon","RegIcon","EventIcon","ListAddIcon","DragIcon","AddBoxIcon","RestoreFromTrashIcon","MoreVertIcon","languageConstants","GETALL_CODES_REQUEST","GETALL_CODES_SUCCESS","GETALL_CODES_FAILURE","GETALL_CODES_BY_EVENT_REQUEST","GETALL_CODES_BY_EVENT_SUCCESS","GETALL_CODES_BY_EVENT_FAILURE","GET_GROUP_EVENTLABEL_REQUEST","GET_GROUP_EVENTLABEL_FAILURE","CustomEvent","bubbles","cancelable","detail","evt","createEvent","initCustomEvent","PageBug","globalActions","setSaveStatus","isSaved","area","globalConstants","SET_SAVE_STATUS","setHeaderHeight","SET_HEADER_HEIGHT","setBreadcrumbHeight","breadcrumbHeight","SET_BREADCRUMB_HEIGHT","setLoading","SET_IS_LOADING","showMenu","show","SHOW_MENU","updateUserToken","userConstants","LOGIN_SUCCESS","RedirectUser","allowed","to","fetched","userGuid","userId","json","token","lssetItem","Redirect","ArticleActionBar","likes","expandArticle","likeArticle","edit","articleId","isLiked","isEditor","buttonStyle","isExpanded","Article","media","headerFile","downloadArticleMedia","m","headerImage","newMedia","mediaVm","editArticle","lazyLoad","publishDate","autoPlay","ArticleMedia","isEditable","ArticleMenu","ArticleFeed","articles","isLoaded","downloadArticles","scrollTo","getDefaultTemplateByEvent","DragDropContext","eid","MobileLoader","ProvideBrowserOptions","Chrome","Opera","FireFox","ScanView","breakpoints","selectIsOpen","selectedBreakpoint","codeDisplay","sending","sendBuffer","onLine","sendCode","focus","addCode","codes","codeArr","getCode","shift","handleScan","codeInput","refs","scrollIntoView","behavior","onBreakpointSelect","breakpointsList","blur","isSending","exhibitorId","sendTimer","scanDisplay","onMenuOpen","CheckinView","entrance","nameList","connectToHub","host","hubConnection","HubConnectionBuilder","withUrl","build","onError","onCheckIn","start","invoke","checkList","nextPerson","firstName","lastName","companyName","Particles","particles","number","interactivity","onhover","enable","mode","PowerLogo","LinkTracker","refNo","QRList","_match$params","badgeNos","setBadgeNos","columnGap","QRCode","PrinterClients","printerClients","setPrinterClients","setHubConnection","onGetActivePrintClients","clients","client","isOnline","onPrinterConnected","useCallback","findIndex","clientGuid","prev","onPrinterDisconnected","off","monitor","stop","placeItems","PrintRounded","CheckoutForm","clientSecret","stripe","useStripe","useElements","email","setEmail","setMessage","setIsLoading","retrievePaymentIntent","paymentIntent","onSubmit","_response$paymentInte","_response$error","_response$error2","preventDefault","confirmPayment","redirect","post","PaymentElement","layout","Stripe","setClientSecret","setStateNo","publishableKey","setPublishableKey","setAmount","stripePromise","useMemo","loadStripe","appearance","Elements","Page404","lazy","Page500","App","directToInadraHomePage","Router","Suspense","fallback","Switch","Route","exact","ExternalRedirect","link","Layout","Nets","PageEditorLayout","MeetingEditorLayout","FormLayout","EmailEditor","TemplateLayout","PostFormLayout","PageViewLayout","ArticleEditor","BrowserDetector","msieversion","userAgent","browserUpdate","insecure","api","reminder","no_permanent_hide","ReactDOM","Provider","BrowserRouter","cDevices","getDeviceOptions","devices","badgeClass","togglePreviewMode","DesktopWindowsIcon","TabletMacIcon","SmartphoneIcon","deviceIcon","SliderWithTooltip","EditorSlider","fallBackUnit","setFallbackUnit","units","activeUnit","unitChange","steps","attachUnit","responsiveSettings","extraParam","unitsZ","DeviceButtonGroup","textTransform","textDecoration","paddingRight","defaultValue","step","usePrevious","useRef","current","onDrag","DragIndicatorIcon","ElementOverlayEmail","elementHandlers","largeHeaderImageHandler","smallHeaderImageHandler","textAreaHandler","simpleButtonHandler","emptySpaceHandler","backgroundWithImageHandler","calendarInvitationHandler","defaultEmailElement","families","startTag","endTag","emailHelper","getElementHandler","sortElementOnChange","sourceElement","sortElements","replaceTags","sortedElements","replaceTextTags","controlledList","sortController","handler","defaultStyle","elementEditor","maxId","getNewId","tags","handleTemplateStyleInheritage","newElements","templateCopy","inheritedStyles","its","styleParts","stylePath","templateParts","templatePath","unit","templateHelper","getUnit","getValueWithoutUnit","setValueToNestedObject","incrementList","reversed","parsedElements","createTagDictionaryForReplace","pe","emailElementType","CALENDAR_INVITATION","elementProps","tag","editFacade","LARGE_HEADER_IMAGE","SMALL_HEADER_IMAGE","BUTTON","SPACE","BACKDROPIMAGE_ELEVATED_TEXT","systemLabelIsEqual","nextProps","memo","asOption","asOption2","gName","setGroupName","creating","setCreating","isSaveable","setIsSaveable","setOpen","setLanguageCode","admin","editLabel","setEditLabel","loaded","setLoaded","labelList","activeRoute","currLabel","ctrlKey","field","newLabel","onKeyPressed","shiftKey","save","stopShit","systemLabelId","onFocus","PopoverHeader","onKeyDown","InfoOutlinedIcon","lsgetItem","param","strUser","decPlaces","pow","fraction","vat","toFixed","removeZerosFromNumber","num","numString","newNumString","defaultContentElement","contents","updateSqlStateTimeout","languages","alpha3Code","alpha2Code","templates","breakoutsFullbooked","mainEventFullbooked","contentHeaderLayout","contentFooterLayout","selectedModule","activeLayout","activePage","versionIndex","hasContentView","scopedLayout","contentLayout","validate","validatePaymentFields","uploadedFonts","googleFonts","questions","xrayMode","breakouts","changeList","contentLayoutChanges","contentLayoutModuleChanges","contentModuleChanges","templateChanges","fieldChanges","questionChanges","breakoutChanges","displayConfirmationSettings","modules","validations","formState","globalAlert","eventLabels","mainEvent","voucherList","hotels","hotelAllotments","defaultSelectedCountry","setActivePage","int","_this$contentLayout","_this$contentLayout2","_this$current","activateGroupLeaderOnPage","leader","setActiveOrder","setBreakoutFullbooked","bookedStatus","setVoucherList","loadHotels","_response$data$hotels","_response$data","_response$data$allotm","_response$data2","allotments","setValidatePaymentFields","setMenuItems","items","isHiddenByConditions","clm","contentLayoutModules","contentModuleId","_this$conditions$clm$","contentLayoutModuleId","checkInvoiceValidation","getFilteredValidations","currentPageValidations","register","callback","contentLayoutId","webConfirmationId","webConfirmation","emailConfirmationId","emailConfirmation","secondaryEmailConfirmationId","secondaryEmailConfirmation","dto","forEach","eventIds","surveyPost","formPost","showQuestionModule","foundModule","specificModule","contentModule","_this$conditions$spec","item","states","expires","station","_ref4","updateSqlState","formStates","storageStates","fs","stateString","responseType","updatedOrder","_this$orders$length","personNo","getUrlParam","orderExtra","oe","orderExtraId","value2","personTypeId","addPersonType","updateOrderRow","forceUncheck","_this$orders","createOrder","hotelGroupId","hotelAllotmentPricingId","updateOrderRowHotel","hotelGroup","orderRowHotel","_order$orderRow","orderRows","orh","roomMate","removeOrder","newOrderList","newActivePersonNo","orderToRemove","setLeader","toJS","checkForGroupTransferValues","configureValidation","personTypes","pt","removePersonType","_this$orders2","_this$orders2$this$ac","personTypeOrderId","checkEventAvailability","_this$orders$filter$l","_this$orders$filter","count","_x$orderRow","oldValidations","validationObject","pages","reason","_clm$contentModule$se","fieldType","decorator","prechecked","defaultInvoiceFields","df","defaultValidity","currentValidity","mustIncludeDecorators","allDecoratorsIncluded","_validation$decorator","missingDecorators","_validation$decorator2","triggerValidation","configureEnviroment","defaultLanguage","_toJS$this$activePers","_toJS","_toJS$this$activePers2","textContent","put","targets","resolveQuery","conditionLists","hasOwnProperty","secondaryActions","Set","secondaryAction","prefix","resolveCondition","suffix","eval","executeAction","_target$contentModule","_target$contentModule2","cssId","extractElement","conditionStr","sourceValue","conditionNavigator","operator","resolveCheckboxCondition","conditionTranslator","translateOperator","_sourceValue$length","cStr","sv","CustomError","checkMainEventBookingStatus","makeObservable","observable","previousOrder","_m$settings","groupTransfer","_previousOrder$toCame","fieldId","_previousOrder$orderR","ord","_previousOrder$answer","_answer$answerRow","createContext","formService","registerMode","getNewStateId","isSurvey","forms","postSurvey","deleteForm","getSurvey","isModified","getAllPaths","screenshot","attach","ATTACH_SUCCESS","GET_FORM_REQUEST","prevStateNo","checkForFormUpdates","formSettings","submit","attachLabel","navigation","next","previous","GET_FORM_SUCCESS","GET_FORM_FAILURE","SELECT_SUCCESS","removePage","REMOVE_PAGE","reCreation","inherit","inheritageAffected","SOFT_UPDATE_SUCCESS","DELETE_SUCCESS","addPage","ADD_PAGE","scrollPage","SCROLL_PAGE","transfer","TRANSFER_SUCCESS","DESELECT_SUCCESS","CREATE_FORM_REQUEST","survey","CREATE_FORM_FAILURE","POST_FORM_REQUEST","POST_FORM_FAILURE","SELECT_OPTION","formIsValid","FORM_IS_VALID","conditionCheck","hasChanged","DELETE_FORM_REQUEST","DELETE_FORM_SUCCESS","DELETE_FORM_FAILURE","restore","RESTORE_FORM","isAnswered","redirectId","confId","removeOrderByCondition","stringifyForm","GET_ALL_FORM_PATHS","set","IS_CROPPING","UPDATE_FORM_REQUEST","formResponse","UPDATE_FORM_SUCCESS","UPDATE_FORM_FAILURE","GETALL_FORM_REQUEST","GETALL_FORM_SUCCESS","GETALL_FORM_FAILURE","ElementTabGroup","activeTab","tabName","tempIsInherited","tabs","EditIcon","borderBottom","PaletteIcon","TextCustomedTabGroup","LabelIcon","EditorTabGroup","isOwner","AppsIcon","EmailIcon","InheritageWrapper","defaultBoxShadow","BoxShadowSettings","toggleBoxShadow","parseColorToRgba","splitString","boxShadowEnabled","rgb","JirangoSwitch","ColorPickerFacade","ContentSettings","getValueFromInput","handleUnitChange","formatToResponsivePath","BackgroundSettings","fallbackUnit","setAttribute","attr","changeBackgroundImage","backgroundSize","backgroundUrl","setBackgroundImage","enableVideoBackground","handlePaste","clipboard","readText","UrlMultiInput","InputGroupText","JirangoFontPicker","isFocused","dowloadClientFonts","clientFonts","convertFont","loadClientFonts","dowloadGoogleFonts","family","toggleExtensions","sortBy","selectFont","font","archiveOpen","categoryOnChange","category","selectedCategories","selectedCategory","getFont","currentFontFamily","toggleArchive","onClientFontUpload","fontPickerRef","createRef","bind","categoryOptions","fontPicker","dropdownOpen","previewFont","categoriesOpen","sortByOpen","selectStyles","classNamePrefix","fontWeights","FontWeightPicker","weight","currentFont","optionStyle","TextSettings","TitleSettings","SubtitleSettings","FooterSettings","HeaderSettings","ButtonSettings","handleSpaceOnChange","dir","spaceValue","splitted","newString","convertSpaceValue","closeColorPickers","FieldSettings","LinkSettings","TableSettings","ListExpansion","TableChartTwoToneIcon","BorderAllTwoToneIcon","LabelSettings","paper","toggleConfirmDialog","selectedItem","setSelectedItem","isSavable","setIsSavable","deletedList","setDeletedList","showConfirmDialog","finalMenuItems","setMenu","newOption","oldId","updatedUserId","appendBadgeNo","toISOString","inserted","newDeletedList","dl","onSort","child","rest","toggleMenuModal","fullWidth","startIcon","CloseIcon","overflowX","MenuItem","EditableTab","edge","DoneIcon","CreateOutlinedIcon","ReplayIcon","DeleteOutlineIcon","SubdirectoryArrowRightIcon","internalPaths","setInternalPaths","domain","setDomain","getInternalPaths","pathsObj","convertPath","internalPath","FormControlLabel","toggleBadgeno","toggleOpenInNewWindow","selectPath","MenuSettings","activePointer","togglePointer","pointer","MenuEditDialog","BuildIcon","AlignmentButtonGroup","ClientSettings","cu","nestledFind","interaction","sendButton","CropPortraitTwoToneIcon","CheckBoxTwoToneIcon","TouchAppTwoToneIcon","ChartSettings","toggleDropDown","currentUnit","renderColors","palette","ret","chart","colors","textflowColor","textflowBgColor","ScrollbarSettings","ConnectionSettings","connections","AgendaSettings","agenda","default","active","passed","PaletteTwoToneIcon","chat","primaryColor","secondaryColor","badgePillColor","sendButtonColor","BorderTopTwoToneIcon","TocTwoToneIcon","ForumTwoToneIcon","messages","thumbColor","sender","receiver","BorderBottomTwoToneIcon","inputColor","inputBackground","ExhibitorSettings","exhibitor","BusinessCenterTwoToneIcon","logo","TitleTwoToneIcon","TextFieldsTwoToneIcon","backgroundAreaIsExpanded","titleAreaIsExpanded","textAreaIsExpanded","footerAreaIsExpanded","headerAreaIsExpanded","buttonAreaIsExpanded","linksAreaIsExpanded","subtitleAreaIsExpanded","contentAreaIsExpanded","menuAreaIsExpanded","fieldAreaIsExpanded","tableAreaIsExpanded","image","lastCollapse","hex","expandArea","PanoramaTwoToneIcon","MenuTwoToneIcon","ImportContactsTwoToneIcon","SubtitlesTwoToneIcon","WrapTextTwoToneIcon","SubjectTwoToneIcon","BorderColorTwoToneIcon","LinkTwoToneIcon","VerticalAlignBottomTwoToneIcon","EqualizerTwoToneIcon","OptionSettings","validationTypes","ConditionTypeList","isBtnActive","btn","Show","Require","ReadOnly","checkCondition","ReadoOnly","ButtonGroup","toggleConditionModal","displayTypesField","displayTypesQuestion","sortTypes","checkboxLabelAlignmentStyles","QuestionSettings","fill","isChange","tabPane","tab","newArray","handleSlider","TabContent","defaultExpanded","renderElementSettings","CondtionTypeList","JirangoCheckbox","disableCheckboxOnEdit","disableCheckbox","unDisableCheckboxOnEdit","questionDto","minRows","maxRows","editableLabel","labelDisabled","isEventBox","appendedText","noHtmlFor","editArea","hiddenText","boxTypeC","typeClass","isInline","EventSettings","updateConditions","renderDisplaySettings","setting","renderPropsSettings","typeDic","widthDic","flexBasis","letterSpacing","borderStyles","DividerSettings","newTemplate","handleElementUpdates","imageShapes","ImageSettings","defSettings","heightRatio","widthRatio","typeRequest","externalSourceOnly","linkHelper","MapSettings","addressOnChange","getResultFromInput","isCurrent","FloatingChecklist","onCheck","MuiPickersUtilsProvider","utils","MomentUtils","KeyboardDateTimePicker","clearable","ampm","onOpen","format","cancelLabel","clearLabel","targetTypes","JirangoDatePicker","VideoSettings","defaultEventGroupProps","containerTypes","ContainerSettings","toggleEventGroup","mainContainersChildrens","cc","CalendarInvitationSettings","invitations","fetchCalendarInvitations","calendarInviteId","_this$state$invitatio","borderRight","TemplateButtonSettings","InvoiceFieldSettings","PaymentOptionSettings","handlePaymentMethodChange","renderPaymentAlternatives","availableModules","am","UserPageSettings","confirmationActions","getByEvent","confirmation","confirmationOptions","confirmationList","cl","confirmationId","EmptySpaceSettings","spreadActiveSet","emailActions","updateEmailElement","useTemplateStyle","spreadStyle","parts","elementsCopy","typeFamily","tf","parseRgbaToHex","spreadToggler","styleProps","UseTemplateButton","SetStyleToAllOfItsType","expanded","setExpanded","Card","CardHeader","avatar","handleExpandClick","ExpandMoreIcon","transition","tooltipComponent","in","timeout","unmountOnExit","CardContent","TagSection","editorTags","createTagDictionary","RecipeReviewCard","ti","i2","Chip","clickable","TagToolbar","addTag","TextAreaSettings","inheritedStylesControl","typeFamilyTree","onAddTag","selection","setContent","wrapper","emailFonts","LargeImageWithTextSettings","LargeHeaderImageSettings","PhotoSizeSelectLargeIcon","SmallHeaderImageSettings","shapes","ProfileImageUploaderSettings","RebateSettings","handleInput","openMenuOnClick","GroupRegistrationSettings","returnPage","BootstrapInput","withStyles","transitions","InputBase","FileUploaderSettings","MultipleSelect","unBlock","formControl","chips","chip","noLabel","MenuProps","PaperProps","ITEM_HEIGHT","labelId","multiple","renderValue","_OPTIONS$find","SimpleButtonSettings","BackgroundImageWithText","DiscountSettings","ConfirmModal","onCancel","onAction","extraProps","showNameInput","onNameEdit","affected","FormPagination","showMore","showSettings","showModal","toggleModal","Pagination","PaginationItem","PaginationLink","FirstPageIcon","drawPageTabs","totalPages","startPage","endPage","pageTabs","LastPageIcon","NoteAddIcon","onRemovePage","Zoom","toggleDevice","CreateQuestion","labelSet","relations","typeIsValid","labelsIsValid","action2","defaultQuestionElement","eventLanguage","setQuestionType","validateForm","actionLabel","xs","AddElement","fontsize","cmsHelper","addElementByClick","newSource","getElementsFromSource","elementList","findElement","dropIndex","adjustSorting","elementsPath","getSourceElementPath","newPaymentElement","paymentHelper","newPreConfiramtionElement","preConfirmationHelper","contentElement","getUpdater","moveElement","InheritedSymbol","AccountTreeIcon","activeElements","listElements","userLabel","infoText","customStyle","isContainer","addOnClick","QuestionElements","adjusted","reset","copyElement","useBase","simpleModal","contentModal","preCreate","toggleCollapse","preAttach","copy","filterActiveQuestions","fel","collapse","optionQuestionIsOpen","textQuestionIsOpen","filteredElements","displayLang","ElementDropItem","MessageOutlinedIcon","action1","cElement","companyTypes","CreateField","availableCompanyFields","availablePersonFields","Text","nameIsValid","updateFieldList","defaultFieldElement","setFieldType","fieldName","fieldValidationErrors","formErrors","labelIsValid","FieldElements","filterActiveFields","companyIsPOpen","fieldIsOpen","PermIdentityOutlinedIcon","WorkOutlineOutlinedIcon","CreateEvent","amountIncVatField","updateAmountIncVat","updateAmountExVat","mainEventStartDateTime","defaultEventElement","EventElements","filterActiveEvents","EventOutlinedIcon","ContainerElements","restoreList","guid","getRef","ContentElements","paymentOptions","PaymentElements","reArrangeList","PaymentOutlinedIcon","UserPageElements","AccountCircleIcon","MoneyOffIcon","GroupAddIcon","CloudUploadIcon","AccountBoxOutlinedIcon","emailElementTabList","PanoramaIcon","SIMPLE","BackgroundWithText","MULTI","EmailElements","ElementDropItemWithImage","ElementsTab","hideContent","toggleTab","WidgetsIcon","AccountBoxIcon","PreConfirmationsElements","TemplateSelect","selectedTemplate","templateId","dot","InheritIcon","colourStyles","ConfirmationSelect","selectedConf","emails","comContentId","pageConfirmationId","selectedWebConf","selectedEmailConf","emailOptions","inheritParentId","PolicyIcon","confirmations","selectedLang","setLang","FormSettings","confirmationAreaIsExpanded","navigationAreaIsExpanded","submitAreaIsExpanded","templateAreaIsExpanded","toggleInheritageInfo","toggleInheritageStatus","btnText","defaultLabel","authorizedFormMode","changeToGroupLeaderOnSpecificPage","specificPage","forceChangeOrderOnSpecificPage","googleAnalyticsId","facebookId","inheritInfo","InheritageButtonGroup","warningMessage","setWarning","LaunchIcon","formHelper","isPublishable","runForm","EmailSettings","toggleLinktracking","useLinktrack","emailCopy","subject","previewText","fromName","fromAddr","bcc","_window$location$host","_this$props","_this$props$cms","_this$props2","_this$props2$cms","addresses","appendAddress","setInput","modalOpen","sent","setSent","validateEmail","SendIcon","AlternateEmailIcon","CheckCircleIcon","ErrorIcon","outline","addAddress","updatedAddresses","removeAddress","sendTest","toAddress","PageSettings","onlyAuthorizedUsers","TemplateInternalSettings","EditorSidebar","displayPopOver","confirmModal","inheritedElements","tooltips","saveOpen","postOpen","templateOpen","clearOpen","prevPageOpen","nextPageOpen","addPageOpen","pageSettingsOpen","removePageOpen","formSettingsOpen","openPageOpen","copyArea","copyName","toggleTooltip","openPage","parseElementNames","tempIsSavable","elText","ie","newTemp","newF","newP","newMail","newM","onTransfer","navigateToTemplateEditor","setSourceLocation","togglePopover","popoverMessage","restoreForm","renderTabContent","TabPane","tabId","TemplateSettings","setOverflow","getRefs","handleWindowBeforeUnload","confirmationMessage","returnValue","RunFormOption","SendTestEmail","MLToolTip","PreviewOption","RestorePageIcon","affectedAreas","AlertDialog","elementOrgin","emailPattern","phonePattern","charCodeAt","sum","remainder","digit","Accordion","AccordionSummary","expandIcon","AccordionDetails","Divider","ExpansionPanelActions","colorHelper","getCorrectTextColor","hRed","hexToR","hGreen","hexToG","hBlue","hexToB","linearGradient","colorBase","hexToRgb","hexBase","rgbToObject","colourNameToHex","colour","colours","h","cutHex","calculateImageSize","base64String","inBytes","base64StringLength","endsWith","kBytes","mBytes","resetOrientation","base64","srcOrientation","Image","canvas","ctx","getContext","drawImage","toDataURL","dataURLtoFile","dataurl","filename","arr","mime","bstr","atob","u8arr","Uint8Array","File","lazyImages","call","querySelectorAll","lazyImage","getBoundingClientRect","innerHeight","getComputedStyle","dataset","srcset","templateService","templateDto","getAllByEvent","includeInherited","getDefaultByEvent","lastModified","menuService","SOFT_UPDATE_TEMPLATE","CREATE_TEMPLATE_FAILURE","defaultTemplate","CREATE_TEMPLATE_SUCCESS","SELECT_TEMPLATE_ELEMENT","GET_TEMPLATE_BY_EVENT_REQUEST","newTemplates","checkForTemplateUpdates","GET_TEMPLATE_BY_EVENT_SUCCESS","GET_TEMPLATE_BY_EVENT_FAILURE","DELETE_TEMPLATE_ELEMENT_SUCCESS","SET_MENU","GET_TEMPLATE_REQUEST","assignResponsiveStyle","GET_TEMPLATE_SUCCESS","GETALL_TEMPLATE_FAILURE","GET_DEFAULT_TEMPLATE_BY_EVENT_REQUEST","GET_DEFAULT_TEMPLATE_BY_EVENT_SUCCESS","GET_DEFAULT_TEMPLATE_BY_EVENT_FAILURE","TOGGLE_MENU_MODAL","TOGGLE_PREVIEW_MODE","extractFontsFromJson","UPDATE_TEMPLATE_REQUEST","UPDATE_TEMPLATE_SUCCESS","UPDATE_TEMPLATE_FAILURE","HtmlWrapper","emailFontList","Notifier","autoClose","hideProgressBar","closeOnClick","pauseOnHover","draggable","toastId","toast","isActive","ToastContainer","info","warn","languageService","getAllCodes","languagesCodes","getAllCodesByEvent","languageActions","languageCodes","table","borderCollapse","spinner","textAreaMinHeight","optionButton","color1","color2","color3","color4","color5","tablet","usedColors","isHex","filterColors","newColor","convertedColor","textOverflow","SketchPicker","disableAlpha","onChangeComplete","TemplateColors","_templateObject2","ok","statusText","logException","escapedText","warning","getGlobal","global","handleKeyUp","getContent","globalFormat","onLinkSelect","linkColor","lc","convertRgbStringToHex","insertContent","currentLink","displayText","toggleLinkHelper","linkHelperOpen","onInit","onArchiveUseSelect","cycleEditor","selectedLink","tinymce","TinyMCE","setTinymce","formatImage","Editor","inlineSettings","content_style","setup","ui","registry","addButton","getNode","localName","range","getRng","startContainer","startOffset","endOffset","tabSettings","onEditorChange","LinkManager","setLink","LockIcon","NotAuthourized","sourceLoc","cmsConstants","SET_SOURCE_LOCATION","setEnviroment","SET_ENVIROMENT","setEnviromentLang","SET_ENVIROMENT_LANG","containerToUpdate","CONTAINER_TO_UPDATE","containerUpdated","CONTAINER_UPDATED","containerAdded","CONTAINER_ADDED","LOAD_CLIENT_FONTS","getFonts","REMOVE_CLIENT_FONT","addFont","ADD_CLIENT_FONT","ALERT_NEW_MODIFICATIONS","globalSavingLoader","GLOBAL_SAVING_LOADER","TOGGLE_INHERITAGE_INFO","isAffected","INHERITAGE_AFFECTED","isBlocked","BLOCK_DESELECT","unparsedEventId","Authorization","initialState","mergeDescription","isSaving","newFonts","sourceLocation","sourceEnviroment","cssFonts","prop","createGoogleImports","createFontFaces","minZoom","handlRes","isCropped","mailCrop","_selectedStyles","_selectedStyles$a","textOnChange","elementStyle","selectedStyles","searchKey","showList","editLink","toggleAlt","convertInternalLink","selectFromList","getList","toggleMailTo","Paper","inputProps","ViewListIcon","FloatingGenericList","LanguageToggler","toggleLanguage","formLangChanged","ButtonDropdown","tyle","PostFormContent","submitted","validators","validatorList","isChangeLink","postForm","surveyCode","invalidElements","validator","updateValidators","togglePage","orderGroupId","setActivePersonNo","isAuthorized","FloatingCartButton","submitError","LockOutlinedIcon","paramHandled","notAuthourized","freezeCaptured","handleSearchParams","routeMaster","updatedForm","paramsHandled","loadOrder","searchParam","getOrdersByBadgeNo","eventName","dispatchEvent","MessageEvent","script1","script2","reload","_this$props$form$sett","onlyGroupLeaderAllowedChangelink","fluid","level","getValueFromNestedObject","getValueFromNestedObjectByParam","array","isObject","checkForUpdatesOneLevel","sourceObj","SectionTagsHelpInfo","CardActionArea","SectionTagHelperImage","Typography","gutterBottom","personTags","PersonIcon","companyTags","BusinessIcon","sectionTags","ListIcon","eventTags","tagDictionary","ReceiptIcon","ShoppingCartIcon","PublicIcon","ct","tagGroup","newTags","ignoreErrorsArray","ignoreUrlsArray","getUser","ex","context","Raven","captureException","stacktrace","_process","_process$env","_process$env$NODE_ENV","process","NODE_ENV","release","version","ignoreErrors","ignoreUrls","allowUrls","install","configSentry","getDerivedStateFromError","hasError","componentDidCatch","errorInfo","Sentry","scope","setExtras","setLevel","Info","setUser","EmptySpace","templateStyle","templateBackgroundStyle","GET_TEMPLATE_FAILURE","CREATE_TEMPLATE_REQUEST","GETALL_TEMPLATE_REQUEST","GETALL_TEMPLATE_SUCCESS","UNDO_TEMPLATE_CHANGE","REDO_TEMPLATE_CHANGE","SET_TEMPLATE_FROM_FORM","SET_TEMPLATE_FROM_FORM_REQUEST","random","getTime","PageViewContent","searchParamObj","Form","FormPost","PageEdit","PageView","ArticlesEditor","DibsPayment","searchString","searchParams","keys","ArchiveFilterBar","filterFiles","cssReset","cssResetInnerContent","progressiveEnhancement","progressiveEnhancementInnerContent","responsiveNames","newStyle","mainStyle","getTemplatesColors","red","hexCode","green","blue","onDragEnd","destinationContainer","base","pathArr","sourceEl","newDestinationContainer","Number","CLEAR_DND_CONFLICTS","CREATE_FORM_SUCCESS","POST_FORM_SUCCESS","SET_STATE_ERROR","FORM_VERSION_CONFLICT","JX_FORM_VERSION_CONFLICT","ImageOverlay","isCroppable","isEditing","toggleTextEdit","pageService","viewMode","pageConstants","PAGE_ATTACH","GET_PAGE_REQUEST","GET_PAGE_SUCCESS","GET_PAGE_FAILURE","PAGE_SELECT","REMOVE_VIEW_PAGE","SOFT_UPDATE_PAGE","DELETE_PAGE_ELEMENT","ADD_VIEW_PAGE","DESELECT_PAGE_ELEMENT","UPDATE_PAGE_ELEMENT","RESTORE_PAGE","GET_ALL_PAGE_PATHS","UPDATE_PAGE_REQUEST","pageElement","UPDATE_PAGE_SUCCESS","UPDATE_PAGE_FAILURE","AppSwitch","StyledBadge","badge","_attendee$orders","useTheme","fullScreen","useMediaQuery","down","handleClickOpen","badgeContent","subheader","ListSubheader","_o$person","_o$person2","CreateIcon","VerifiedUserIcon","MuiButton","PersonAddIcon","defaultPaymentElement","payments","defaultPreConfirmationElement","preConfirmations","headerImageFd","article","previewHeaderImage","prevHeaderImage","prevMediaLength","published","mediaUploaded","headerRotation","checkIfEdit","getArticle","getMedia","previewImage","FormData","onMediaDelete","append","onloadend","mediaF","onUpload2","parseImageUpload","resetBase64Image","deleteArticle","uploadHeaderImage","uploadToStorage","articleToUpdate","newArticle","fileName","publish2","apiBaseUrl","apiBaseUrl2","publish","publishAlert","backToFeedView","createView","Space","divider","isSmartphone","posY","setRenderSticky","renderSticky","moduleWidth","layouts","setLayouts","logoRef","fixedOnScroll","menuGroup","showLogo","logoSource","menuLayout","mobileMenuPos","showLinkTooltip","logoLink","menuLayoutArray","fetchMenuItems","querySelector","isInViewport","fetchLayouts","_mItems$","mItems","layoutCode","_newMenuItems$filter","mI","_x$menuGroupName$toLo","_x$menuGroupName","menuGroupName","nm","menuItem","langString","scrollToTop","MobileMenu","logoSrc","ml","cols","fixedCols","_logoRef$current","_logoRef$current2","_logoRef$current3","_logoRef$current4","_logoRef$current5","_logoRef$current6","_logoRef$current7","_logoRef$current8","imageStyle","naturalHeight","naturalWidth","aspectRatio","wrapStyle","DesktopMenu","disableFocusListener","disableTouchListener","disableHoverListener","MuiMenu","MenuListProps","getContentAnchorEl","StylesProvider","injectFirst","_logoRef$current9","_logoRef$current10","_logoRef$current11","_logoRef$current12","_logoRef$current13","_logoRef$current14","_logoRef$current15","_logoRef$current16","_menuItems$filter","drawerOpen","setDrawerOpen","openMenuOptionId","setOpenMenuOptionId","toggleDrawer","Drawer","anchor","role","layoutId","Asterisk","useOnClickOutside","bool","listener","_source$toLowerCase","CountrySelect","containerRef","query","setQuery","selectGrid","useCode","preselected","country","europeCountry","nordicCountry","swedishCountry","filteredCountries","_selectGrid$only","only","exceptions","selectedCountry","found","_value","precountry","Combobox","displayValue","_props$label","ArrowDownIcon","as","leave","leaveFrom","leaveTo","afterLeave","Option","_ref5","createLabel","GetEventLabelValueFn","updateEventLabels","_ref6","inputRef","setCountryCode","setPrefix","countryCodeSelectOpen","setCountryCodeSelectOpen","showCountryCodeSelector","_e$target$value","_e$target$value3","_e$target$value2","_newValue$","newValue","trimStart","_e$target$value4","handleCodeChange","inputStyle","borderTopLeftRadius","borderBottomLeftRadius","all","CountryCodeSelector","countryCodeList","phonePrefix","SearchOutlined","listStyle","ConfirmationInput","prefixClassName","parentLabel","confirmInputOnChange","confirmInputValue","CustomInput","noMargin","staticLabel","subLabel","noInputField","appendButton","validationError","validationErrorMessage","showConfirmInput","autocomplete","btnWrapRef","btnPos","setBtnPos","useLayoutEffect","ariaLabel","autoCompleteType","hideLabel","PhoneNumberField","staticSequenceFirstCheckDigit","staticSequenceSecondCheckDigit","elevenDigitsArray","isValidCheckDigit","staticSequence","digits","acc","hasOrgNoValidation","_fields$find","_fields$find$fieldLan","_fields$find$fieldLan2","_fields$find2","_fields$find2$fieldLa","_fields$find2$fieldLa2","inputTimerRef","validationType","minLength","confirmInput","requireUniqueEmail","disableChangeLock","validity","isConfirmValid","setIsConfirmValid","isEmailUnique","setIsEmailUnique","fValue","_toJS$activePersonNo","_toJS$activePersonNo$","setConfirmInputValue","previousValue","checkRegisteredEmail","compareConfirmInput","trim","regExists","_validations$find","_orders$","moduleType","moduleId","fieldLanguage","fl","Countdown","timerRef","timerShadow","showZeroes","showTitle","checkHeights","setDisabled","texts","useTimer","showTooltip","filterDeleted","qo","OptionSelector","showPlaceholder","placeholderText","questionOptions","_questionOptionLangua","questionOptionLanguage","filteredOptions","_questionOptionId","initValidation","setInitValidation","runValidation","setRunValidation","questionOption","RadioGroup","_qo$questionOptionLan","_qo$questionOptionLan2","RadioButtonDefaultIcon","checkedIcon","RadioButtonCheckedIcon","_answer$answerRow2","_qo$questionOptionLan3","_qo$questionOptionLan4","CheckboxDefaultIcon","CheckBoxIcon","orderList","getTextValue","_activeOrder$answer","_activeAnswer$answerR","activeOrder","activeAnswer","activeRow","answerText","validateText","imitateField","_question$questionLan","_question$questionLan2","_question$questionLan3","_question$questionLan4","q","questionLanguage","EventDates","toLocaleDateString","toLocaleTimeString","timeStyle","EventLocation","setIsFetching","isFullBooked","setIsFullbooked","isNoVouchersAvailable","setIsNoVouchersAvailable","setIsReadonly","isFetchingVouchers","setIsFetchingVouchers","hasParent","vdate","parentValid","escape","overrideDisplay","displayYesNo","voucherCheck","showAlternativeName","breakout","eventRejected","_order$orderExtra","activeDisplaySettings","showEventStartDateTime","showEventStartTime","showEventEndDateTime","showEventEndTime","showEventCity","showEventVenue","showEventDescription","showEventPrice","showEventName","showEventIncVat","showEventVatPrecentage","showEventVatSum","eventDisplayLanguage","deadline","alternative","isDue","validateGroup","matchedEvent","onlySelectOne","uncheckGroupActivities","_breakout$amount","_order$orderRow$lengt","_order$orderRow2","checkVoucherAvailable","_order$orderExtra2","_order$orderExtra2$fi","_order$personTypes$ma","_order$personTypes","statusLabel","RadioButtonUncheckedIcon","CheckBoxOutlineBlankIcon","_order$orderRow3","asNumber","_order$orderRow4","_order$orderRow4$find","SubmitButton","disableButton","setDisableButton","grpRegDisabled","registerCallbackRef","registerCallback","PreviousPage","ForwardPage","InvoiceFields","di","_newType$countryCode","orgNoValidity","_getFieldValue","setShowInvoiceFields","setShowPaymentOptions","setSelectedOption","addOrUpdate","configureOptions","PaymentOptionButton","isInvoice","module","selectedColor","CreditCardIcon","FormHelperText","GLNPopup","onSuccess","inputValue","setInputValue","glnList","selectedValue","setSelectedValue","companyId","dropdownOnChange","paddingInlineStart","whiteSpace","gln","isGovernment","orgno","compareTo","convertAutocomplete","InvoiceFieldsNew","currentType","invoiceAnchor","showGLNWindow","setShowGLNWindow","glnOrgFields","setGlnOrgFields","setInvoiceFields","initialRegex","currentRegex","setCurrentRegex","currentInfo","setCurrentInfo","GLNList","setGLNList","validFields","setValidFields","paymentType","lastValidVatNo","setLastValidVatNo","showEmail","setShowEmail","refNoWarning","setRefNoWarning","currentLeaderNo","setCurrentLeaderNo","lockGLN","setLockGLN","applySweVat","setApplySweVat","applyEuVat","setApplyEuVat","vatNoStatus","setVatNoStatus","timerExpired","setTimerExpires","orgNoValid","setOrgNoValid","showVatField","setShowVatField","orgNoRef","glnFieldPlaceholder","finalValid","_orders$currentLeader","_orders$currentLeader2","_validations$find2","_orders$currentLeader6","_orders$currentLeader7","_orders$currentLeader8","_orders$currentLeader9","fono","orgNo","_orders$currentLeader3","_orders$currentLeader4","_orders$currentLeader5","swevat","applyVat","scrollToAnchor","_invoiceAnchor$curren","_newOrder$invoice","vatno","vatNo","layoutIds","allowReverseCharge","_orders$currentLeader10","_orders$currentLeader11","shouldValidateOrgNo","newFields","europeVAT","tempOrders","currentVatNo","filteredValidations","fails","em","willBeValid","_orders$currentLeader12","_orders$currentLeader13","_orders$currentLeader14","_orders$currentLeader15","ognRequired","_orgNoRef$current","_selectedCountry$name","paymentGrid","fieldsToAdd","parties","_orders$currentLeader16","_orders$currentLeader17","_orders$currentLeader18","_orders$currentLeader19","cGLN","gLN","tempV","allAreValid","toValidate","tar","_newType$inExchangeRe","receiveElectronicInvoiceCapability","streetName","postalZone","toggleWindow","ivfRequired","_selectedCountry$coun","_selectedCountry$coun2","_selectedCountry$name2","_selectedCountry$name3","vatNoBlur","refNoBlur","refNoFocus","eventCountry","validateVatNo","loadVatNo","no","runtimeValidation","valitypety","validatedInvoiceFields","validatedglnOrgFields","_val$target$value","_val$target","infoPaneIsLink","rel","_val$target$value2","_val$target2","_val$target$value3","_val$target3","emailBool","onEmail","getCalculatedOrderRow","_orderRow$status$trim","_orderRow$status","targetBreakout","getVatExempt","_order$orderExtra$fin","calculateRowDiscount","_orders$find3$orderRo","_orders$find3$orderRo2","_orders$find4","decrementValue","allowNegative","calculateVatAmount","vatAmount","rowTotal","calculateRowSum","ConfirmationOrderRow","_targetBreakout$event","_eds$name","eds","_targetBreakout$event2","_eds$description","colSpan","setSelectedCountry","regionGroup","setRegionGroup","currentOptions","setCurrentOptions","setCurrentType","ix","setIx","selectedCountryCode","setSelectedCountryCode","fixedCountry","setFixedCountry","setIsLoaded","setPaymentMethods","setLoad","findLeader","_orderList$no","_orderList$no2","no2","isTemp","_orderList$no3","_orderList$no3$invoic","empty","pm","telephone1","_orderList$activePers","_orderList$activePers2","onCountry","_orderList$activePers3","_orderList$activePers4","_a$name","_orderList$activePers5","_orderList$activePers6","opts","onPaymentMethod","_orderList$no4","_orderList$no5","tempOrder","currentPT","pms","_orderList$activePers7","_orderList$activePers8","newOrders","targetOrder","_flatOrderRowsList$fi","_flatOrderRowsList$fi2","flatOrderRowsList","flat","shouldValidate","PaymentMethodButton","optionChanged","PersonOutline","Ballot","earlyBirdLoaded","setEarlyBirdLoaded","orderDiscountsLoaded","setOrderDiscountsLoaded","showMaxDiscountValidationMessage","setShowMaxDiscountValidationMessage","hideOnChangeLink","maxDiscounts","showEarlyBird","autoCodes","showAutoCodes","applyAutoCodes","codesToAdd","discountId","codesToApply","_orders$reduce$filter","orderDiscounts","_o$discounts","_code","ac","newCodes","deleteDiscount","PersonDetailsSummary","showPersonDetails","showCompanyDetails","showInvoiceDetails","showQuestionDetails","PersonDetails","CompanyDetails","InvoiceDetails","QuestionDetails","CountryChoice","oi","Grid","v4","_Object$entries","_Object$entries2","_order$person","fieldList","_field$fieldLanguage$","_Object$entries3","_Object$entries4","_order$person2","_field$fieldLanguage$2","_order$answer","questionList","_ref7","_conditions$specificM","_question$questionOpt","_question$questionOpt2","_question$questionOpt3","_question$questionOpt4","OrderTotalSummary","flatOrderRows","calcTotalVat","totalVat","calcTotalSum","isVatExempt","align","calcTotalExVat","totalExVat","TableHeader","OrderSummary","showOrderDetails","showOnlyHotelOrderRows","overridenDisplaySettings","showConfStartDate","showConfStartTime","showConfEndDate","showConfEndTime","showConfAmount","showConfDiscount","showConfVatAmount","showConfVatPercent","showConfQuantity","showConfRowTotal","showConfFreeRows","showConfOrderTotalSum","showConfMainEvent","showConfDescription","showConfRowStatus","showConfCancelledRows","showCancelledRows","hotelAllotmentRows","flatMap","hotelAllotment","ha","_ha$hotelAllotmentPri","hotelAllotmentPricing","hap","allotmentPricingId","hotel","hotelRoomType","hotelRoomTypeId","roomType","hr","pricingIds","dateValues","_ha$hotelAllotmentPri2","allotmentStartDate","allotmentEndDate","_o$invoice","_o$company","_Object$entries5","_o$company2","_o$answer","_o$answer2","showEventFull","setShowEventFull","maxCount","isAvailable","_document$querySelect","shouldFocus","setSourceFilename","setSourceType","setShowConflictPopper","setUploading","setShowDeleteDialog","setDeleteTarget","fileUploadTriggered","setFileUploadTriggered","_prevProps$orders$pre","_prevProps$orders$pre2","ProfileUploadCrop","cropperInstance","setCropperInstance","zoomLevel","setZoomLevel","minZoomLevel","setMinZoomLevel","imageRef","wrapperRef","convertedAspectRatio","aspectRatioRegex","onZoomChanged","initCropper","ratio","movable","canvasData","rotation","cropInst","Cropper","dragMode","guides","autoCrop","autoCropArea","cropBoxMovable","initialAspectRatio","cropBoxResizable","toggleDragModeOnDblclick","minContainerHeight","minContainerWidth","setCanvasData","rotateTo","getContainerData","getCanvasData","inset","CircularProgress","Popper","RotateLeftIcon","RotateRightIcon","imageData","getCroppedImage","sourceCanvas","getCroppedCanvas","imageSmoothingEnabled","globalCompositeOperation","beginPath","arc","PI","justify","zoomOut","handleZoomSlider","zoomIn","_source$toString","setIsCropping","setImageLoaded","fuRef","click","PictureDisplay","viewWidth","srcSet","sizes","setAspectRatio","filled","autoHeight","ignoreHeight","setIgnoreHeight","imgOnLoad","LoadSpinner","isModule","TextContent","setText","contentLoaded","setContentLoaded","checkHeightsRef","checkHeightsIntervalRef","intervalCountRef","replacedText","IframeModule","frameRef","framedHeight","setFramedHeight","parsedSource","setParsedSource","cb","contentWindow","postMessage","embedHost","embedPath","embedSearch","eventMethod","reciever","revertUrl","pushState","reqOverviewScroll","_document$querySelect2","_document$querySelect3","_document$querySelect4","_document$querySelect5","topOffset","searchOffset","overviewScroll","detailScroll","setScroll","setScrollSmooth","offset","IntersectionObserver","entry","isIntersecting","observe","ContentView","scoped","Paginator","back","showIcons","checkMinGroupReg","_contentLayout$conten","_grpModule$contentMod","_grpModule$contentMod2","grpModule","minCount","ArrowBackIosIcon","ArrowForwardIosIcon","VideoModule","forceThumbnail","setForceThumbnail","GenericPlayer","cors","VimeoPlayer","YouTubePlayer","DailyMotionPlayer","VideoPlayer","scrolling","played","setPlayed","videoId","setVideoId","iframeRef","playedRef","playerUrl","Vimeo","extractIdFromUrl","startString","tempString","playerVars","YouTube","onPlay","Dailymotion","video","uiTheme","downloadable","EventGroup","titleText","showSubtitle","subtitleText","eventList","checkedRows","_eventList$filter","dues","EventGroupSelector","localSettings","radio","disabledEvents","setDisabledEvents","selectedEvents","displayEmpty","paleDawn","midnightCommander","subtleGreyscale","shadesOfGrey","mapStyle","pinTitle","pinDescription","setCoords","setFormatedAddress","setSelectedPlace","setActiveMarker","setshowingInfoWindow","wrapRef","_res$data","_res$data$results","_res$data$results$","_res$data$results$$ge","_res$data2","_res$data2$results$","onReady","mapProps","setOptions","QR","_wrapRef$current","useBadgeNo","badgeNumber","setbadgeNumber","badgeNum","elStyle","ImageGroup","images","overrideAspectRatio","overriddenAspectRatio","showText","showImage","imageList","imageRefs","_imageRefs$current$i","_imageRefs$current$i2","_imageRefs$current$i3","_imageRefs$current$i4","_imageRefs$current$i5","_imageRefs$current$i6","_imageRefs$current$i7","_imageRefs$current$i8","VoucherLinkDialog","contentLayoutCode","voucher","showPopper","setShowPopper","linkUrl","copyRef","arrow","onCopyClick","writeText","VoucherRow","_usedVouchers$exhibit","_usedVouchers$exhibit2","_usedVouchers$exhibit3","usedVouchers","navigateToForm","showAltName","exhibitorVoucherId","_breakout$eventDispla","edl","VoucherModule","voucherType","showPriceSum","setUsedVouchers","dialogVoucher","setDialogVoucher","vouchers","vTypeIds","vt","_toJS$","updateVouchers","getVoucherCount","useCounts","voucherTotalSum","totalSum","usedCount","bought","_breakout$amount2","origAmount","DebouncedFilterInput","initialValue","debounce","setValue","fuzzyFilter","columnId","addMeta","itemRank","rankItem","getValue","fuzzySort","rowA","rowB","_rowA$columnFiltersMe","_rowB$columnFiltersMe","columnFiltersMeta","compareItems","sortingFns","alphanumeric","TableFilter","_table$getPreFiltered","column","firstValue","getPreFilteredRowModel","flatRows","columnFilterValue","getFilterValue","searchFieldPlaceholder","getFacetedUniqueValues","setFilterValue","AdvancedTable","columns","filterFns","fuzzy","getCoreRowModel","getFilteredRowModel","getSortedRowModel","getFacetedRowModel","useReactTable","getHeaderGroups","headerGroup","_asc$desc$header$colu","isPlaceholder","getCanSort","getToggleSortingHandler","flexRender","columnDef","asc","desc","getIsSorted","getCanFilter","getRowModel","getVisibleCells","cell","hozAlign","ExhibitorInviteList","editLinkUrl","showExportBtn","personList","setPersonList","updatePersonList","columnDefs","accessorKey","filterFn","_ev$eventDisplayLangu","evId","enableColumnFilter","onEditClick","original","exportPersonList","Printer","startTimeout","setStartTimeout","failed","setFailed","defaultStation","checkIn","_params$get","print","onPrint","withAutomaticReconnect","_params$get2","_params$get3","queryParams","queryString","imageColumnRefs","w","horizontalGroup","horizontalColumns","_horizontalColumns","lockedImageSize","imageMaxWidth","_columns$filter","_columns$filter2","getMinHeight","columnRef","_Object$values","values","_columns$columnIndex","_baseHeight","columnIndex","computedStyle","baseHeight","horizontalImages","_columns$columnIndex2","_columns$columnIndex3","computedColumnStyle","_imageRefs$current","_text$environment$lan","textColWidth","columnWidth","imageColWidth","imageIndex","_ref$current","_ref$current$columnIn","_ref$current$columnIn2","_ref$current2","_ref$current2$columnI","_ref$current2$columnI2","_ref$current3","_ref$current3$columnI","_ref$current3$columnI2","_ref$current4","_ref$current4$columnI","_ref$current4$columnI2","_ref$columnIndex","_ref$columnIndex$imag","_ref$current5","_ref$current5$columnI","_ref$current5$columnI2","NON_AUTO_HEIGHT_MODULES","ContentLayoutModule","moduleRef","modulesRefs","contentLayoutModule","hiddenElements","posX","bodyWidth","alpha","_alpha$id$index","cssIdGenerator","settingsOverride","hideOnMobile","createPortal","Module","GoogleMaps","Menu","ContentGroup","PaymentOptionsNew","MuiAlert","elevation","ValidationSnackbar","scrollToNonValidModule","Snackbar","_modules$find","vMessage","_questions$find","_questions$find$quest","_questions$find$quest2","_breakouts$find","FloatingGroupOrderCart","PeopleIcon","_o$person$firstName","_o$person$lastName","NotAuthorized","PasswordDialog","shadows","pwd","showValidationMsg","setShowValidationMsg","btoa","PageClosed","imgSrc","openDateTime","closeDateTime","onOpenPage","intervalRef","checkTimes","addOrUpdateFont","attributes","key2","targetFont","fontsString","createImport","adobe","importUrl","fontface","createFontFace","videoStyle","AnimatedBackground","urlRegex","extension","isVideoFile","playsInline","muted","LayoutRenderer","findCompatibleSibling","nextRow","compatibleSibling","added","renderedElements","rowElements","maxHeightInRow","elementsInRow","allElementsHidden","every","renderHeight","_elementsInRow$filter","_$sortBy","colElements","elementsInColumn","colWidth","compatibleSiblings","gridColumnStart","gridColumnEnd","_store$current2","_store$contentLayout$2","_store$contentLayout7","_store$contentHeaderL3","_store$contentHeaderL4","_store$contentFooterL3","_store$contentFooterL4","_bodyRef$current","_bodyRef$current2","_bodyRef$current3","_store$contentLayout8","_store$contentLayout9","setShowLoader","clienFontsLoaded","setClientFontsLoaded","googleFontsLoaded","setGoogleFontsLoaded","fontAppended","setFontAppended","ordersLoaded","setOrdersLoaded","layoutLoaded","setLayoutLoaded","notAuthorized","setNotAuthorized","showPwdDialog","setShowPwdDialog","showPageClosed","setShowPageClosed","resized","setResized","bodyRef","contentStyles","setContentStyles","fontStyles","setFontStyles","contentStyleRef","fontStyleRef","getElementsByTagName","windowOnResize","_store$current$templa","_store$current$templa2","fontstring","toJSON","formattedCss","_store$contentLayout","_store$contentLayout2","_store$contentLayout3","groupLeaderChangeLock","_store$contentLayout4","_store$contentLayout5","_store$contentLayout6","_store$current","fetchClientFonts","parsedFiles","importMatch","fontFaceRegex","fontFaceMatch","fontFamilyMatch","adobeTypekitParser","_name","getAttendee","_store$current$templa3","_store$current$templa4","_store$contentLayout$","_store$contentHeaderL","_store$contentHeaderL2","_store$contentFooterL","_store$contentFooterL2","contentModules","de","_data$contentLayout","_data$contentLayout2","googleAnalytics","appendGoogleAnalytics","facebookPixel","appendFacebookPixel","documentTitle","faviconUrl","setPageIcon","password","pwdItem","getEventLanguages","checkIsSurveyAnswered","redirectCode","facebookPixelId","eventLanguages","json2mq","headerLayout","footerLayout","headerModules","useLayoutRender","layoutModules","footerModules","thumb","valueLabel","track","rail","MuiSlider","_props$wrapperRef","setFilled","setShape","handleResult","_imgRef$current","_imgRef$current2","mediaVaultOpen","openMediaVault","updatedElement","altText","LargeHeaderImage","SmallHeaderImage","cellSpacing","cellPadding","TextWrapper","templateContentStyle","templateTextStyle","TextArea","SimpleButton","templateButtonStyle","buttonClass","settingsComponent","borderParts","editing","toggleText","backgroundImage","emailService","communication","bodyJson","rawBody","communicationId","communications","emailConstants","UPDATE_EMAIL_ELEMENT","oldEmail","UPDATE_EMAIL_REQUEST","newEmail","adjustedElements","validateColor","emailWrapperHtml","UPDATE_EMAIL_SUCCESS","UPDATE_EMAIL_FAILURE","GET_EMAIL_REQUEST","GET_EMAIL_SUCCESS","GET_EMAIL_FAILURE","DESELECT_EMAIL_ELEMENT","SELECT_EMAIL_ELEMENT","SOFT_UPDATE_EMAIL","REMOVE_EMAIL_ELEMENT","mail","SEND_TEST_REQUEST","SEND_TEST_SUCCESS","SEND_TEST_FAILURE","GETALL_EMAIL_REQUEST","GETALL_EMAIL_SUCCESS","GETALL_EMAIL_FAILURE","createBrowserHistory","basename","_process$env$PUBLIC_U","PUBLIC_URL","defaultState","loggedIn","currentVersion","organizationConstants","roleConstants","defaultPage","questionConstants","GET_QUESTION_BY_EVENT_REQUEST","GET_QUESTION_BY_EVENT_SUCCESS","GET_QUESTION_BY_EVENT_FAILURE","UPDATE_QUESTION_REQUEST","UPDATE_QUESTION_SUCCESS","UPDATE_QUESTION_FAILURE","UPDATE_QUESTIONS_REQUEST","UPDATE_QUESTIONS_SUCCESS","UPDATE_QUESTIONS_FAILURE","CREATE_QUESTION_REQUEST","CREATE_QUESTION_SUCCESS","CREATE_QUESTION_FAILURE","DELETE_QUESTIONS_REQUEST","DELETE_QUESTIONS_FAILURE","DELETE_QUESTIONS_SUCCESS","defaultEmail","combineReducers","GETALL_REQUEST","GETALL_SUCCESS","users","GETALL_FAILURE","UPDATE_REQUEST","saved","UPDATE_SUCCESS","UPDATE_FAILURE","LOGIN_REQUEST","loggingIn","LOGIN_FAILURE","LOGOUT","RESETPASSWORD_REQUEST","RESETPASSWORD_SUCCESS","RESETPASSWORD_FAILURE","SENDRESETPASSWORDTOKEN_REQUEST","SENDRESETPASSWORDTOKEN_SUCCESS","SENDRESETPASSWORDTOKEN_FAILURE","TOGGLE_ADMIN_SUCCESS","newUser","userToken","oid","SET_DEFAULT_EVENT_SUCCESS","UNDO_CHANGE","REDO_CHANGE","timeStamp","updatedTemplate","elementToRemove","elToRemove","sc","containerChildId","parentChild","Id","newSelectedContainer","newSelectedElement","eventListTime","eventSettings","showSaveAlert","organization","organizationList","orgDetails","details","roles","orgUsers","subOrganizations","subOrgs","orgSettings","updatedRole","deletedRoleId","roleId","newGroups","saveAreas","loadingAreas","globalIsSaved","globalIsLoading","account","GET_ACCOUNT_DETAILS_REQUEST","GET_ACCOUNT_DETAILS_SUCCESS","GET_ACCOUNT_DETAILS_FAILURE","confirmationConstants","UPDATE_CONFIRMATION_REQUEST","UPDATE_CONFIRMATION_SUCCESS","UPDATE_CONFIRMATION_FAILURE","GET_CONFIRMATION_LIST_REQUEST","GET_CONFIRMATION_LIST_SUCCESS","confirmationListTime","GET_CONFIRMATION_LIST_FAILURE","CREATE_CONFIRMATION_RANGE_REQUEST","CREATE_CONFIRMATION_RANGE_SUCCESS","CREATE_CONFIRMATION_RANGE_FAILURE","GET_CONFIRMATION_REQUEST","GET_CONFIRMATION_SUCCESS","GET_CONFIRMATION_FAILURE","CREATE_CONFIRMATION_REQUEST","CREATE_CONFIRMATION_SUCCESS","CREATE_CONFIRMATION_FAILURE","DELETE_CONFIRMATION_REQUEST","DELETE_CONFIRMATION_SUCCESS","DELETE_CONFIRMATION_FAILURE","sortNo","getMaxValue","findByParam","newPageElements","ae","GET_QUESTIONS_BY_EVENT_FAILURE","cleanedElements","EMAIL_SENT","createStore","rootReducer","applyMiddleware","thunkMiddleware","UPDATE_ELEMENT_SUCCESS","CREATE_ELEMENT_SUCCESS","reInsertedElement","defaultForm","updatedFormElements","newState","childEl","parsedFormElements","updatedOrderList","condtionizedOrderList","currOrder","ARTICLE","defaultCountry","invoiceCountries","defaultProfileImageUploaderElement","defaultUserPageElement","endTime","priceExVat","priceIncVat","vatSum","defaultDiscountElement","defaultGroupRegistrationElement","defaultFileUploaderElement","InfoIcon","WarningIcon","DibsCardpayment","headerHtml","footerHtml","iconStyle","fab","onDeSelect","optionQuestionDictionary","fieldDictionary","eventDictionary","ConditionRow","conditionPrefix","currentCondition","convertSourceList","sourceList","sl","si","groupedOptions","convertOperators","operatorOptions","getValueInput","qOptions","getDashes","indent","indentWrapper","borderLeft","borderTop","Selector","selector","removeCondition","addCondition","addConditionGroup","conditionModel","ConditionModal","currentConditions","otherConditions","newCondition","conditionAction","cond","logConditions","updateCondition","updatedCondition","removedCondition","newConditions","other","hasChildren","FormContent","isConditionModalOpen","elementContainerRef","onDeselect","onImageChange","containerAdjustedSelection","shouldRenderEmptyDivider","selectedBorderStyle","EditorToggler","onToggle","profileImageUploaderHelper","discountHelper","REBATE","groupRegistrationHelper","fileUploadHelper","sidebarOpen","asideOpen","dragging","newProfileImageUploader","newRebate","newFileUploader","onDragStart","toggleEditor","onDragUpdate","AppAside","fixed","restoreDragElement","JirangoLink","linkStyle","grow","menuButton","up","iconButton","sectionDesktop","sectionMobile","online","offline","DemoChart","plotBorderWidth","plotShadow","plotBackgroundColor","xAxis","categories","crosshair","yAxis","headerFormat","pointFormat","footerFormat","shared","useHTML","plotOptions","pointPadding","series","HighchartsReact","highcharts","Highcharts","PlaceholderContent","textGroupPlaceholder","navigationGroupPlaceholder","inputGroupPlaceholder","InnerElementWrapper","DragHandleDistractor","PageContent","isImage","providePlaceholder","np","EmailDropArea","EmailDragContainer","tr","_templateObject3","EmailContent","elementType","lastFetched","MeetingModule","onLoadPosition","onDragStop","digitalMeetingItemId","onResizeStop","Rnd","onStop","dragGrid","getModules","deleteModule","deletedId","updateMeetingLayout","MEETING","z","confirmationService","createRange","deleteConfirmation","attendeeService","eventPrice","eventVatPercent","elementId","GET_SYSTEM_LABEL_DATA_REQUEST","GET_SYSTEM_LABEL_DATA_SUCCESS","GET_SYSTEM_LABEL_DATA_FAILURE","GET_ALL_LABEL_GROUPS_REQUEST","GET_ALL_LABEL_GROUPS_SUCCESS","GET_ALL_LABEL_GROUPS_FAILURE","addI18n","getLanguageCodeForTiny","menubar","plugins","paste_as_text","toolbar","fontsize_formats","language_url","imagetools_toolbar","imagetools_cors_hosts","imagetools_credentials_hosts","theme_advanced_toolbar_location","theme_advanced_toolbar_align","theme_advanced_statusbar_location","block_formats","theme_advanced_resizing","fullpage_default_doctype","fullpage_default_encoding","link_assume_external_targets","relative_urls","remove_script_host","convert_urls","urlParams","HEADLINE_TEXT_LIST_BUTTON","TWO_COL_IMAGE_TEXT","THREE_COL_IMAGE_TEXT","LEFT_THUMBNAIL_IMAGE_HEADLINE_TEXT_BUTTON","RIGHT_THUMBNAIL_IMAGE_HEADLINE_TEXT_BUTTON","FOOTER","FULL_BLEED_SECTION","rowStyle","colStyle","vaultOpen","setLinkeHelperOpen","INTERACTION","CallSplitIcon","_len","args","_key","getMaxVal","getMinVal","arraysEqual","arr1","arr2","updatedArray","EDIT_MODE_ON","EDIT_MODE_OFF","GET_PAGES_BY_REQUEST","GET_PAGES_BY_SUCCESS","GET_PAGES_BY_FAILURE","NAVIGATE_PAGE","REGISTER_REQUEST","REGISTER_SUCCESS","REGISTER_FAILURE","SET_DEFAULT_EVENT_REQUEST","SET_DEFAULT_EVENT_FAILURE","TOGGLE_ADMIN_REQUEST","TOGGLE_ADMIN_FAILURE","GRID","LIST","fieldHandler","questionHandler","eventHandler","copyLink","_this$props$selectedF","isCopied","filterString","toggleDisplayType","Style","canvasA","canvasWidth","canvasHeight","ColorLinearProgress","colorPrimary","barColorPrimary","MY_ACCESS_KEY","instagram_username","_aspectRatio","_crop","_rotate","_saveChanges","b64","_toggle","_close","Dropdown","CropRotateIcon","_order$answer$find","checkedOptions","co","eventGroupHandler","_module$contentModule","_module$contentModule2","_module$contentModule3","_module$contentModule4","moduleEventIds"],"mappings":"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B,OAAS,GAClBJ,EAAEspB,OAAOtmB,MAAKoB,GACLA,EAAER,eAAiB8T,EAAK9T,eAC9BiL,SAGT+Q,YAAY,GACZyR,OAAQ,CACNC,QAASD,IAAM,IACVA,EACHhrB,iBACyBjO,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAMlrB,aAClC,QACFT,kBACyBxN,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAM3rB,cAClC,QACF6X,gBACyBrlB,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAM9T,YAClC,QACFC,gBACyBtlB,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAM7T,YAClC,QACFtX,YACyBhO,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAMnrB,QAClC,QACForB,eACyBp5B,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAMC,WAClC,QACFzrB,cACyB3N,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAMxrB,UAClC,QACF1I,WACyBjF,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAMl0B,OAClC,QACFhH,qBACyB+B,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQisB,MAAMl7B,iBAClC,QACFkH,SAAU,SAEZse,KAAMwV,IAAM,IACPA,EACH9zB,SAAU,SAEZ4vB,OAAQkE,IAAM,IACTA,EACHtrB,cACyB3N,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQuJ,KAAKxR,OACjC,QACFogB,gBACyBrlB,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQuJ,KAAK4O,YACjC,UAEJmC,YAAayR,IAAM,IACdA,EACHtrB,cACyB3N,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQuJ,KAAKxR,OACjC,QACFogB,gBACyBrlB,IAAtBD,EAASA,UACRA,EAASA,SAASmN,QAAQuJ,KAAK4O,YACjC,cAMVlnB,IAAAG,cAAC+Z,IAAG,KACFla,IAAAG,cAAC6zB,IAAK,CACJ5zB,MAAO,CAAEgG,QAAS,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AAQisB,MAAMlrB,aACzB,QACFT,kBACgBxN,IAAbD,GACCA,EAASmN,QAAQisB,MAAM3rB,cACzB,QACF6X,gBACgBrlB,IAAbD,GACCA,EAASmN,QAAQisB,MAAM9T,YACzB,QACFC,gBACgBtlB,IAAbD,GACCA,EAASmN,QAAQisB,MAAM7T,YACzB,QACFtX,YACgBhO,IAAbD,GACCA,EAASmN,QAAQisB,MAAMnrB,QACzB,QACForB,eACgBp5B,IAAbD,GACCA,EAASmN,QAAQisB,MAAMC,WACzB,QACFzrB,cACgB3N,IAAbD,GACCA,EAASmN,QAAQisB,MAAMxrB,UACzB,QACF1I,WACgBjF,IAAbD,GACCA,EAASmN,QAAQisB,MAAMl0B,OACzB,QACFhH,qBACgB+B,IAAbD,GACCA,EAASmN,QAAQisB,MAAMl7B,iBACzB,QACFkH,SAAU,SAEZse,KAAMwV,IAAM,IACPA,EACH9zB,SAAU,SAEZg0B,MAAOF,IAAM,IACRA,EACHtrB,cACgB3N,IAAbD,GACCA,EAASmN,QAAQisB,MAAMl0B,OACzB,QACFogB,gBACgBrlB,IAAbD,GACCA,EAASmN,QAAQisB,MAAM9T,YACzB,UAEJiX,YAAarD,IAAM,IACdA,EACHtrB,cACgB3N,IAAbD,GACCA,EAASmN,QAAQisB,MAAMl0B,OACzB,QACFogB,gBACgBrlB,IAAbD,GACCA,EAASmN,QAAQisB,MAAM9T,YACzB,UAEJ0P,OAAQkE,IAAM,IACTA,EACHtrB,cACgB3N,IAAbD,GACCA,EAASmN,QAAQisB,MAAMl0B,OACzB,QACFogB,gBACgBrlB,IAAbD,GACCA,EAASmN,QAAQisB,MAAM9T,YACzB,UAEJmC,YAAayR,IAAM,IACdA,EACHtrB,cACgB3N,IAAbD,GACCA,EAASmN,QAAQisB,MAAMl0B,OACzB,QACFogB,gBACgBrlB,IAAbD,GACCA,EAASmN,QAAQisB,MAAM9T,YACzB,WAGNjZ,MAAOoS,EAAQV,KAAKif,cAAcnyB,MAAKihB,GAC9BA,EAAEzf,QAAUoS,EAAQV,KAAKrH,UAKtCtY,IAAAG,cAAC6zB,IAAK,CACJ5zB,MAAO,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Ae,qBACf,QAAW,CACP,CACI,MAAS,WAEb,CACI,UAAa,MAIzB,CACI,YAAe,iBACf,YAAe,gBACf,QAAW,CACP,CACI,MAAS,aAIrB,CACI,YAAe,iBACf,YAAe,kBACf,QAAW,CACP,CACI,MAAS,WAEb,CACI,UAAa,IAEjB,CACI,OAAU,OAItB,CACI,YAAe,YACf,YAAe,MACf,QAAW,CACP,CACI,MAAS,aAIrB,CACI,YAAe,MACf,YAAe,WACf,QAAW,CACP,CACI,MAAS,WAEb,CACI,UAAa,KAIzB,CACI,YAAe,eACf,YAAe,gBACf,QAAW,CACP,CACI,MAAS,aAIrB,CACI,YAAe,eACf,YAAe,kBACf,QAAW,CACP,CACI,MAAS,WAEb,CACI,UAAa,MAIzB,CACI,YAAe,gBACf,YAAe,gBACf,QAAW,CACP,CACI,MAAS,aAIrB,CACI,YAAe,gBACf,YAAe,kBACf,QAAW,CACP,CACI,MAAS,WAEb,CACI,UAAa,MAIzB,CACI,YAAe,aACf,YAAe,WACf,QAAW,CACP,CACI,MAAS,aAIrB,CACI,YAAe,UACf,YAAe,MACf,QAAW,CACP,CACI,MAAS,aAIrB,CACI,YAAe,QACf,YAAe,MACf,QAAW,CACP,CACI,MAAS,cA2XrBC,gBArXoB,CACpB,CACI,YAAe,MACf,YAAe,MACf,QAAW,CACP,CACI,IAAO,WAEX,CACI,YAAe,KAEnB,CACI,WAAc,KAElB,CACI,WAAc,SAI1B,CACI,YAAe,MACf,YAAe,MACf,QAAW,CACP,CACI,IAAO,WAEX,CACI,YAAe,KAEnB,CACI,WAAc,KAElB,CACI,WAAc,SAI1B,CACI,YAAe,iBACf,YAAe,MACf,QAAW,CACP,CACI,IAAO,WAEX,CACI,WAAc,GAElB,CACI,WAAc,KAElB,CACI,WAAc,SAI1B,CACI,YAAe,OACf,YAAe,SACf,QAAW,CACP,CACI,IAAO,WAEX,CACI,YAAe,KAEnB,CACI,UAAa,KAEjB,CACI,WAAc,SAI1B,CACI,YAAe,QACf,YAAe,SACf,QAAW,CACP,CACI,IAAO,WAEX,CACI,YAAe,KAEnB,CACI,WAAc,KAElB,CACI,WAAc,SA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","file":"static/js/main.bb524a9b.chunk.js","sourcesContent":["\r\nimport React from 'react';\r\nimport { Draggable } from 'react-beautiful-dnd';\r\nimport styled from 'styled-components';\r\n\r\nconst Container = styled.div`\r\n background-color: ${props => (props.isDragging ? 'transparent' : props.backgroundColor)}\r\n width: 100%\r\n\r\n`;\r\n\r\nclass ElementWrapper extends React.PureComponent {\r\n render() {\r\n return (\r\n
\r\n \r\n {(provided, snapshot) => (\r\n \r\n\r\n {this.props.children}\r\n \r\n )}\r\n\r\n \r\n \r\n\r\n\r\n )\r\n }\r\n}\r\nexport default ElementWrapper;","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Spinner, Row } from \"reactstrap\";\r\nimport { handleResponse } from \"../../../helpers/handleresponse\";\r\nimport { history } from \"../../../helpers/history\";\r\nimport { getKey } from \"../../../helpers/UrlHelper\";\r\n\r\nclass NetsCardpayment extends React.Component {\r\n state = {\r\n test: false,\r\n showLoader: true,\r\n template: undefined,\r\n loaderMsg: \"PrePaymentLoadMsg\"\r\n };\r\n\r\n componentDidMount = (prevProps, prevState) => {\r\n const { match, location } = this.props;\r\n if (match && match.params && match.params.id) {\r\n let encodedCheckout = localStorage.getItem(\"__dco\")\r\n let checkoutOptions = undefined;\r\n if(encodedCheckout){\r\n checkoutOptions = JSON.parse(Buffer.from(encodedCheckout, \"base64\").toString(\"utf16le\"))\r\n }\r\n if (location.search && checkoutOptions && checkoutOptions.stateNo == match.params.id) {\r\n const params = new URLSearchParams(location.search);\r\n const paymentId = params.get(getKey('paymentId', params));\r\n let encodedTemplate = localStorage.getItem(\"__tmpl\");\r\n if (encodedTemplate) {\r\n // let template = JSON.parse(atob(encodedTemplate));\r\n let template = JSON.parse(Buffer.from(encodedTemplate, \"base64\").toString(\"utf16le\"))\r\n this.setState({ template });\r\n localStorage.removeItem(\"__tmpl\");\r\n }\r\n checkoutOptions.paymentId = paymentId;\r\n this.addScript(checkoutOptions);\r\n localStorage.removeItem(\"__dco\");\r\n } else {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" }\r\n };\r\n return fetch(`./api/nets/${match.params.id}`, requestOptions)\r\n .then(handleResponse)\r\n .then(response => {\r\n if (response.redirectUrl) {\r\n history.push(response.redirectUrl);\r\n }\r\n else {\r\n this.setState({ template: response.template }, () =>\r\n this.addScript(response.options)\r\n );\r\n }\r\n });\r\n }\r\n }\r\n };\r\n addScript = response => {\r\n if (!window.Dibs) {\r\n var s = document.createElement(\"script\");\r\n s.src = response.testMode\r\n ? \"https://test.checkout.dibspayment.eu/v1/checkout.js?v=1\"\r\n : \"https://checkout.dibspayment.eu/v1/checkout.js?v=1\";\r\n document.head.appendChild(s);\r\n s.onload = e => this.initCheckout(response);\r\n } else {\r\n this.initCheckout(response);\r\n }\r\n };\r\n\r\n initCheckout = checkoutOptions => {\r\n checkoutOptions.containerId = \"dibs-complete-checkout\";\r\n checkoutOptions.theme = undefined;\r\n checkoutOptions.merchantHandlesConsumerData = true;\r\n let checkoutString = JSON.stringify(checkoutOptions);\r\n console.log(\"checkoutOpts\", checkoutOptions)\r\n if (this.state.template) {\r\n let templateString = JSON.stringify(this.state.template);\r\n let encodedTemplate = Buffer.from(templateString, 'utf16le')\r\n // let encodedTemplate = btoa(templateString);\r\n localStorage.setItem(\"__tmpl\", encodedTemplate.toString(\"base64\"));\r\n }\r\n let encodedCheckout = Buffer.from(checkoutString, 'utf16le')\r\n // let encodedCheckout = btoa(checkoutString);\r\n localStorage.setItem(\"__dco\", encodedCheckout.toString(\"base64\"));\r\n var checkout = new window.Dibs.Checkout(checkoutOptions);\r\n //this is the event that the merchant should listen to redirect to the “payment-is-ok” page\r\n checkout.on(\"payment-completed\", response => {\r\n this.setState({ showLoader: true, loaderMsg: 'PostPaymentLoadMsg' }, () => {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" }\r\n };\r\n return fetch(\r\n `./api/nets/${this.props.match.params.id}?paymentId=${response.paymentId}`,\r\n requestOptions\r\n )\r\n .then(handleResponse)\r\n .then(response => {\r\n localStorage.removeItem(\"__tmpl\");\r\n localStorage.removeItem(\"__dco\");\r\n var redirectUrl = window.location.origin + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + response.redirectUrl;\r\n window.location.replace(redirectUrl);\r\n });\r\n });\r\n });\r\n setTimeout(() => this.setState({ showLoader: false }), 1500);\r\n };\r\n render = () => {\r\n const { template } = this.state;\r\n\r\n return (\r\n \r\n \r\n
\r\n {this.state.showLoader === true ? (\r\n \r\n \r\n
\r\n ) : null}\r\n
\r\n
\r\n \r\n );\r\n };\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n globals: state.globals,\r\n alert: state.alert\r\n };\r\n}\r\nexport default connect(mapStateToProps)(NetsCardpayment);\r\n\r\n\r\n","// In production, we register a service worker to serve assets from local cache.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\r\n// cached resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\r\n// This link also includes instructions on opting out of this behavior.\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === \"localhost\" ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === \"[::1]\" ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\r\n);\r\n\r\nexport function register(config) {\r\n if (process?.env?.NODE_ENV === \"production\" && \"serviceWorker\" in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener(\"load\", () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\"This web app is being served cache-first by a service \" + \"worker. To learn more, visit https://goo.gl/SC7cgQ\");\r\n });\r\n } else {\r\n // Is not local host. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then((registration) => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === \"installed\") {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the old content will have been purged and\r\n // the fresh content will have been added to the cache.\r\n // It's the perfect time to display a \"New content is\r\n // available; please refresh.\" message in your web app.\r\n console.log(\"New content is available; please refresh.\");\r\n\r\n // Execute callback\r\n if (config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log(\"Content is cached for offline use.\");\r\n\r\n // Execute callback\r\n if (config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch((error) => {\r\n console.error(\"Error during service worker registration:\", error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then((response) => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n if (response.status === 404 || response.headers.get(\"content-type\").indexOf(\"javascript\") === -1) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then((registration) => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\"No internet connection found. App is running in offline mode.\");\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if (\"serviceWorker\" in navigator) {\r\n navigator.serviceWorker.ready.then((registration) => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","export const attendeeConstants = {\r\n\r\n GET_ATTENDEE_LIST_REQUEST: 'GET_ATTENDEE_LIST_REQUEST',\r\n GET_ATTENDEE_LIST_SUCCESS: 'GET_ATTENDEE_LIST_SUCCESS',\r\n GET_ATTENDEE_LIST_FAILURE: 'GET_ATTENDEE_LIST_FAILURE',\r\n\r\n SET_ACTIVE_PERSON_NO:'SET_ACTIVE_PERSON_NO',\r\n CREATE_ORDER:'CREATE_ORDER',\r\n UPDATE_ORDER:'UPDATE_ORDER',\r\n SET_PAYMETHOD:'SET_PAYMETHOD',\r\n REMOVE_ORDER: 'REMOVE_ORDER',\r\n UPDATE_DISCOUNT: 'UPDATE_DISCOUNT',\r\n SET_LEADER: 'SET_LEADER',\r\n REMOVE_ORDER_BY_CONDITION: 'REMOVE_ORDER_BY_CONDITION'\r\n}","export default __webpack_public_path__ + \"static/media/unsplash_logo.7559a9a7.svg\";","import React from 'react';\r\nimport { ListGroup, ListGroupItem, Badge } from 'reactstrap';\r\nimport SystemLabel from '../../system/SystemLabel/SystemLabel';\r\nimport { archiveConstants } from '../contstants/archive.contstants';\r\nimport UnsplashLogo from '../../assets/icons/unsplash_logo.svg';\r\n\r\nexport default class ArchiveSidebar extends React.Component {\r\n render() {\r\n const { objects, navigate, filterType } = this.props;\r\n return (\r\n \r\n navigate(archiveConstants.CLIENT_STORAGE, archiveConstants.IMAGE)} className=\"justify-content-between\">{\" \"}\r\n \r\n {\" \"}\r\n {objects ? objects.filter(o => {\r\n return archiveConstants.IMAGE.includes(o.type.substring(o.type.lastIndexOf('/') + 1)) && o\r\n }).length : 0}\r\n \r\n \r\n navigate(archiveConstants.CLIENT_STORAGE, archiveConstants.OTHERS)} className=\"justify-content-between\">{\" \"}\r\n \r\n {\" \"}\r\n {objects ? objects.filter(o => {\r\n return archiveConstants.OTHERS.includes(o.type.substring(o.type.lastIndexOf('/') + 1)) && o\r\n }).length : 0}\r\n \r\n \r\n navigate(archiveConstants.UNSPLASH,archiveConstants.UNSPLASH)} className=\"justify-content-between\">\r\n \r\n navigate(archiveConstants.CLIENT_STORAGE, archiveConstants.FONT)} className=\"justify-content-between\">{\" \"}\r\n {objects ? objects.filter(o => {\r\n return archiveConstants.FONT.includes(o.type.substring(o.type.lastIndexOf('/') + 1)) && o\r\n }).length : 0}\r\n \r\n );\r\n }\r\n}\r\n","export const separators = {\r\n AND: \"AND\",\r\n OR: \"OR\",\r\n};\r\n\r\nexport const conditionType = {\r\n GROUP: 2,\r\n CONDITION: 1,\r\n QUERY: 3,\r\n SEPARATOR: 4,\r\n};\r\n\r\nexport const selectors = {\r\n NUMERIC: \"NUMERIC\",\r\n DROPDOWN: \"DROPDOWN\",\r\n TEXT: \"TEXT\",\r\n OPTIONS: \"OPTIONS\",\r\n CHECKBOX: \"CHECKBOX\",\r\n};\r\n\r\nexport const operators = {\r\n AND: \"AND\",\r\n OR: \"OR\",\r\n\r\n EQUAL: \"EQUAL\",\r\n NOT_EQUAL: \"NOT_EQUAL\",\r\n GREATER_THAN: \"GREATER_THAN\",\r\n LESS_THAN: \"LESS_THAN\",\r\n LESS_THAN_OR_EQUAL_TO: \"LESS_THAN_OR_EQUAL_TO\",\r\n GREATER_THAN_OR_EQUAL_TO: \"GREATER_THAN_OR_EQUAL_TO\",\r\n BETWEEN: \"BETWEEN\",\r\n LIKE: \"LIKE\",\r\n ANY: \"ANY\",\r\n NOT: \"NOT\",\r\n};\r\n\r\nexport const actions = {\r\n hidden: \"hidden\",\r\n require: \"require\",\r\n readonly: \"readonly\",\r\n error: \"error\",\r\n persontype:\"persontype\"\r\n};\r\n\r\nexport const eventOperators = {\r\n EQUAL: \"=\",\r\n NOT_EQUAL: \"!=\",\r\n};\r\n\r\nconst fieldOperators = {\r\n EQUAL: \"=\",\r\n NOT_EQUAL: \"!=\",\r\n GREATER_THAN: \">\",\r\n LESS_THAN: \"<\",\r\n LESS_THAN_OR_EQUAL_TO: \"<=\",\r\n GREATER_THAN_OR_EQUAL_TO: \">=\",\r\n LIKE: \"LIKE\",\r\n /* BETWEEN:\"BETWEEN\", */\r\n};\r\n\r\nconst questionOptionOperators = {\r\n EQUAL: \"=\",\r\n NOT_EQUAL: \"!=\",\r\n ANY: \"ANY\",\r\n /* NOT:\"NOT\", */\r\n};\r\n\r\nconst questionTextOperators = {\r\n EQUAL: \"=\",\r\n NOT_EQUAL: \"!=\",\r\n GREATER_THAN: \">\",\r\n LESS_THAN: \"<\",\r\n LESS_THAN_OR_EQUAL_TO: \"<=\",\r\n GREATER_THAN_OR_EQUAL_TO: \">=\",\r\n LIKE: \"LIKE\",\r\n /* BETWEEN:\"BETWEEN\", */\r\n};\r\nconst conditionActionTypes = {\r\n CHECK_CONDITION_REQUEST: \"CHECK_CONDITION_REQUEST\",\r\n CHECK_CONDITION_SUCCESS: \"CHECK_CONDITION_SUCCESS\",\r\n};\r\nexport const conditionConstants = {\r\n operators,\r\n actions,\r\n eventOperators,\r\n fieldOperators,\r\n questionOptionOperators,\r\n questionTextOperators,\r\n selectors,\r\n separators,\r\n actionTypes: conditionActionTypes,\r\n};\r\n","import { store } from \"../store/configureStore\";\r\nimport { systemLabelActions } from \"../store/actions/system/systemLabel/systemLabel.action\";\r\nimport routes from \"../routes\";\r\nimport {history} from \"./history\";\r\nimport { getKey } from \"./UrlHelper\";\r\n\r\nexport const labelHelper = new (function() {\r\n this.loadingLabels = [];\r\n this.getLabelValue = name => {\r\n const { location } = history;\r\n let activeRoute = routes.find(r => {\r\n return this.comparePaths(location.pathname, r.path);\r\n });\r\n const groupName = activeRoute.labelGroup;\r\n const { systemLabels, authentication } = store.getState();\r\n const { groups } = systemLabels;\r\n const { user } = authentication;\r\n let languageCode = null; \r\n if (location && location.search) {\r\n const params = new URLSearchParams(location.search);\r\n languageCode = params.get(getKey (\"languageCode\", params));\r\n if(!languageCode) languageCode = params.get(getKey (\"lang\", params));\r\n }\r\n if(!languageCode && user) languageCode= user.userLang;\r\n if(!languageCode) languageCode=\"swe\";\r\n let group = null;\r\n let label = null;\r\n if (groups !== undefined) {\r\n group = groups[groupName];\r\n } else if(systemLabels.loading === false) {\r\n store.dispatch(systemLabelActions.getAllGroups())\r\n }\r\n if (group) {\r\n label = group.find(l => {\r\n return l.name === name && l.languageCode === languageCode;\r\n });\r\n if (!label && !this.loadingLabels.some(ll => {\r\n return ll === name;\r\n })) {\r\n\r\n store.dispatch(\r\n systemLabelActions.create(name, languageCode, groupName)\r\n );\r\n this.loadingLabels.push(name);\r\n } else if (label) {\r\n this.loadingLabels = this.loadingLabels.filter(ll => {\r\n return ll !== name;\r\n });\r\n if (label.hint) {\r\n return `${label.value} `;\r\n } else {\r\n return label.value;\r\n }\r\n }\r\n else{\r\n return `*${name}*`;\r\n }\r\n } else if (!this.loadingLabels.some(ll => {\r\n return ll === name;\r\n })) {\r\n this.loadingLabels.push(name);\r\n store.dispatch(systemLabelActions.create(name, languageCode, groupName));\r\n }\r\n };\r\n this.comparePaths = (p1, p2) => {\r\n const locRegex = /\\/\\d+.*/gi;\r\n const pathRegex = /\\/:id/gi;\r\n p1 = p1.replace(locRegex, \"\").replace(pathRegex, \"\").toLowerCase();\r\n p2 = p2.replace(locRegex, \"\").replace(pathRegex, \"\").toLowerCase();\r\n return p1 === p2;\r\n };\r\n\r\n return {\r\n getLabel: this.getLabelValue\r\n };\r\n})();\r\n","export const alertConstants = {\r\n SUCCESS: 'ALERT_SUCCESS',\r\n ERROR: 'ALERT_ERROR',\r\n INFO: 'ALERT_INFO',\r\n CLEAR: 'ALERT_CLEAR',\r\n WARNING: 'ALERT_WARNING'\r\n};","import React from 'react';\r\nimport RoomOutlinedIcon from '@material-ui/icons/RoomOutlined';\r\nimport LineStyleOutlinedIcon from '@material-ui/icons/LineStyleOutlined';\r\nimport RemoveOutlinedIcon from '@material-ui/icons/RemoveOutlined';\r\nimport FilterHdrIcon from '@material-ui/icons/FilterHdr';\r\nimport TouchAppIcon from '@material-ui/icons/TouchApp';\r\nimport YouTubeIcon from '@material-ui/icons/YouTube';\r\nimport CalendarTodayIcon from '@material-ui/icons/CalendarToday';\r\nconst roundImage = {\r\n hidden: false,\r\n conditions: [],\r\n type: 'CIRCLE',\r\n padding: 0,\r\n actionLink: null,\r\n alignment: 'center',\r\n style: { borderRadius: '50%', width: '210px', height: '210px', maxHeight: 'unset', }\r\n};\r\n\r\nconst originalImage = {\r\n hidden: false,\r\n conditions: [],\r\n orgSize: {\r\n height: 0,\r\n width: 0\r\n },\r\n type: 'ORIGINAL',\r\n padding: 0,\r\n actionLink: null,\r\n alignment: 'center',\r\n style: { width: 'unset', height: 'unset', maxHeight: 'unset', }\r\n};\r\n\r\nconst calendarInvitation = {\r\n hidden: false,\r\n conditions: [],\r\n invitationId: null,\r\n type: 'CALENDAR_INVITATION',\r\n padding: 0,\r\n alignment: 'center',\r\n style: { width: 'unset', height: 'unset', maxHeight: 'unset', }\r\n};\r\n\r\nconst squareImage = {\r\n hidden: false,\r\n conditions: [],\r\n type: 'SQUARE',\r\n padding: 0,\r\n actionLink: null,\r\n alignment: 'center',\r\n style: { maxHeight: 'unset', height: '210px', width: '210px', borderRadius: '0px', }\r\n}\r\nconst fullImage = {\r\n hidden: false,\r\n conditions: [],\r\n padding: 0,\r\n actionLink: null,\r\n type: 'FULL',\r\n style: { maxHeight: 'unset', height: 'auto', width: '100%', borderRadius: '0px' }\r\n}\r\n\r\nconst googleMap = {\r\n hidden: false,\r\n conditions: [],\r\n zoom: 15,\r\n padding: 0,\r\n style: { height: '200px', width: '100%', borderRadius: '0px' }\r\n}\r\n\r\nconst video = {\r\n hidden: false,\r\n conditions: [],\r\n loop: false,\r\n autoplay: false,\r\n padding: 10,\r\n frame: true,\r\n thumbnail: '',\r\n style: { height: '500px', width: '100%' }\r\n}\r\n\r\nconst text = {\r\n hidden: false,\r\n conditions: [],\r\n padding: 10,\r\n style: { height: '100%', width: '100%' }\r\n}\r\nconst divider = {\r\n hidden: false,\r\n conditions: [],\r\n padding: 0,\r\n margin: 0,\r\n borderColor: '#222',\r\n borderWidth: 0.5,\r\n borderStyle: 'solid',\r\n height: 10, width: 100\r\n}\r\n\r\nconst captcha = {\r\n hidden: false,\r\n isValid: false,\r\n\r\n}\r\n\r\nconst button = {\r\n hidden: false,\r\n conditions: [],\r\n padding: '4px 12px 4px 12px',\r\n alignment: 'center',\r\n target: 'blank',\r\n actionLink: '',\r\n timer: false,\r\n startDate: null,\r\n endDate: null,\r\n style: { height: 'auto', width: 'auto' }\r\n}\r\n\r\n\r\nexport const content = [\r\n {\r\n id: 'A', type: 'IMG', settings: roundImage, icon: , label: 'RoundImage'\r\n },\r\n {\r\n id: 'B', type: 'IMG', settings: squareImage, icon: , label: 'SquareImageX'\r\n },\r\n {\r\n id: 'C', type: 'IMG', settings: fullImage, icon: , label: 'FullImageX'\r\n },\r\n {\r\n id: 'J', type: 'IMG', settings: originalImage, icon: , label: 'OrgImage'\r\n },\r\n { id: 'D', type: 'TEXT', settings: text, icon: , label: 'TextEditor' },\r\n { id: 'E', type: 'DIVIDER', settings: divider, icon: , label: 'Divider' },\r\n { id: 'F', type: 'MAP', settings: googleMap, icon: , label: 'GoogleMaps' },\r\n { id: 'G', type: 'BUTTON', settings: button, icon: , label: 'Button' },\r\n { id: 'H', type: 'VIDEO', settings: video, icon: , label: 'VideoElement' },\r\n { id: 'K', type: 'CALENDAR_INVITATION', settings: calendarInvitation, icon: , label: 'CalendarInvitation' }\r\n\r\n /* { id: 'D', type: 'BUTTON', settings: button }, */\r\n /* { id: 'C', type: 'VIDEO', description: 'Youtube' },\r\n { id: 'D', type: 'AUDO', description: 'Audio player' },\r\n { id: 'E', type: 'MAP', description: 'Google map' },\r\n { id: 'F', type: 'TEXT', description: 'Text' } */\r\n\r\n]\r\n","export const tempLangConverter = (lang) => {\r\n switch (lang) {\r\n case \"swe\":\r\n return 'se'\r\n case \"nor\":\r\n return 'no'\r\n case \"eng\":\r\n return 'gb'\r\n\r\n default:\r\n break;\r\n }\r\n}\r\n","\r\nimport { authHeader } from \"../../../helpers/authHeader\";\r\nimport { handleResponse } from \"../../../helpers/handleresponse\";\r\n\r\nexport const systemLabelService = {\r\n get,\r\n getGroup,\r\n getAllGroups,\r\n update,\r\n updateRange,\r\n create,\r\n};\r\n\r\nasync function get(name, languageCode, groupName) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/systemLabel/?languageCode=${languageCode}&groupName=${groupName}&name=${name}`, requestOptions)\r\n .then(handleResponse)\r\n .then(label => {\r\n return label;\r\n });\r\n}\r\nasync function create(name, languageCode, groupName) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body:JSON.stringify({labelName:name, languageCode, groupName})\r\n };\r\n\r\n return fetch(`./api/systemLabel/`, requestOptions)\r\n .then(handleResponse)\r\n .then(labelGroup => {\r\n return labelGroup;\r\n });\r\n}\r\nasync function update(id, value,hint, languageCode, groupName) {\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify({value, groupName,hint, id, languageCode} )\r\n };\r\n\r\n return fetch(`./api/systemLabel/`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nasync function updateRange(labelArray) {\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify(labelArray)\r\n };\r\n\r\n return fetch(`./api/systemLabel/range/`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nasync function getGroup(languageCode, groupName) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/systemLabel/group/?languageCode=${languageCode}&groupName=${groupName}`, requestOptions)\r\n .then(handleResponse)\r\n .then(group => {\r\n return group;\r\n });\r\n}\r\n\r\nasync function getAllGroups() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/systemLabel/all/`, requestOptions)\r\n .then(handleResponse)\r\n .then(groups => {\r\n return groups;\r\n });\r\n}\r\n\r\n","export const requestHandler = {\r\n setRequestTimer \r\n};\r\n\r\n\r\nconst setRequestTimer = (time, action) => {\r\n setTimeout(() => action(), time)\r\n}","import { alertActions } from \"../../alert.action\";\r\nimport { systemLabelConstants } from \"../../../../constants/system/systemLabels/systemLabels.constants\";\r\nimport { systemLabelService } from \"../../../../services/system/systemLabel/systemLabel.service\";\r\nimport { requestHandler } from \"../../../../helpers/requestHandler\";\r\n\r\nexport const systemLabelActions = {\r\n getAllGroups,\r\n getGroup,\r\n get,\r\n create,\r\n update,\r\n updateRange\r\n};\r\nconst currentLoadingGroups = {};\r\nvar groupLoading = false;\r\nfunction getAllGroups() {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n if (!groupLoading) {\r\n groupLoading = true;\r\n systemLabelService.getAllGroups().then(\r\n groups => {\r\n dispatch(success(groups));\r\n groupLoading = false;\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n }\r\n };\r\n\r\n function request() {\r\n return { type: systemLabelConstants.GET_ALL_SYSTEM_LABEL_GROUP_REQUEST };\r\n }\r\n function success(groups) {\r\n return {\r\n type: systemLabelConstants.GET_ALL_SYSTEM_LABEL_GROUP_SUCCESS,\r\n groups\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: systemLabelConstants.GET_ALL_SYSTEM_LABEL_GROUP_FAILURE,\r\n error\r\n };\r\n }\r\n}\r\n\r\nfunction getGroup(languageCode, groupName) {\r\n return dispatch => {\r\n if (groupName && !currentLoadingGroups[groupName]) {\r\n currentLoadingGroups[groupName] = true;\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n systemLabelService.getGroup(languageCode, groupName).then(\r\n (group) => {\r\n dispatch(success(group, groupName));\r\n currentLoadingGroups[groupName] = false;\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n currentLoadingGroups[groupName] = false;\r\n }\r\n );\r\n }\r\n };\r\n\r\n function request() {\r\n if (groupName === \"Core.Layout\")\r\n return { type: systemLabelConstants.GET_LAYOUT_LABEL_GROUP_REQUEST };\r\n else return { type: systemLabelConstants.GET_SYSTEM_LABEL_GROUP_REQUEST };\r\n }\r\n function success(group, groupName) {\r\n if (groupName === \"Core.Layout\")\r\n return {\r\n type: systemLabelConstants.GET_LAYOUT_LABEL_GROUP_SUCCESS,\r\n group,\r\n groupName\r\n };\r\n else\r\n return {\r\n type: systemLabelConstants.GET_SYSTEM_LABEL_GROUP_SUCCESS,\r\n group,\r\n groupName\r\n };\r\n }\r\n function failure(error) {\r\n if (groupName === \"Core.Layout\")\r\n return {\r\n type: systemLabelConstants.GET_LAYOUT_LABEL_GROUP_FAILURE,\r\n error\r\n };\r\n else\r\n return {\r\n type: systemLabelConstants.GET_SYSTEM_LABEL_GROUP_FAILURE,\r\n error\r\n };\r\n }\r\n}\r\n\r\nfunction get(name, languageCode, groupName) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n systemLabelService.get(name, languageCode, groupName).then(\r\n label => {\r\n dispatch(success(label));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: systemLabelConstants.GET_SYSTEM_LABEL_REQUEST };\r\n }\r\n function success(label) {\r\n return { type: systemLabelConstants.GET_SYSTEM_LABEL_SUCCESS, label };\r\n }\r\n function failure(error) {\r\n return { type: systemLabelConstants.GET_SYSTEM_LABEL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction create(name, languageCode, groupName) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n systemLabelService.create(name, languageCode, groupName).then(\r\n labelGroup => {\r\n dispatch(success(labelGroup, groupName));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n if (groupName === \"Core.Layout\")\r\n return { type: systemLabelConstants.CREATE_LAYOUT_LABEL_REQUEST };\r\n else return { type: systemLabelConstants.CREATE_SYSTEM_LABEL_REQUEST };\r\n }\r\n function success(labelGroup, groupName) {\r\n if (groupName === \"Core.Layout\")\r\n return {\r\n type: systemLabelConstants.CREATE_LAYOUT_LABEL_SUCCESS,\r\n group: labelGroup,\r\n groupName\r\n };\r\n else\r\n return {\r\n type: systemLabelConstants.CREATE_SYSTEM_LABEL_SUCCESS,\r\n group: labelGroup,\r\n groupName\r\n };\r\n }\r\n function failure(error) {\r\n if (groupName === \"Core.Layout\")\r\n return { type: systemLabelConstants.CREATE_LAYOUT_LABEL_FAILURE, error };\r\n else\r\n return { type: systemLabelConstants.CREATE_SYSTEM_LABEL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction update(id, value, hint, languageCode, groupName) {\r\n /* requestHandler.setRequestTimer(() => { */\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n\r\n systemLabelService.update(id, value, hint, languageCode, groupName).then(\r\n _ => {\r\n dispatch(success(true));\r\n dispatch(getGroup(languageCode, groupName));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n /* }, 5000); */\r\n\r\n function request() {\r\n return { type: systemLabelConstants.UPDATE_SYSTEM_LABEL_REQUEST };\r\n }\r\n function success(status) {\r\n return { type: systemLabelConstants.UPDATE_SYSTEM_LABEL_SUCCESS, status };\r\n }\r\n function failure(error) {\r\n return { type: systemLabelConstants.UPDATE_SYSTEM_LABEL_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction updateRange(labelArray) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n\r\n systemLabelService.updateRange(labelArray).then(\r\n _ => {\r\n dispatch(success(true));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: systemLabelConstants.UPDATE_RANGE_SYSTEM_LABEL_REQUEST };\r\n }\r\n function success(status) {\r\n return {\r\n type: systemLabelConstants.UPDATE_RANGE_SYSTEM_LABEL_SUCCESS,\r\n status\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: systemLabelConstants.UPDATE_RANGE_SYSTEM_LABEL_FAILURE,\r\n error\r\n };\r\n }\r\n}\r\n","export const eventConstants = {\r\n TOGGLE_EVENT_LANGUAGE: 'TOGGLE_EVENT_LANGUAGE',\r\n\r\n GET_EVENT_LIST_REQUEST: 'GET_EVENT_LIST_REQUEST',\r\n GET_EVENT_LIST_SUCCESS: 'GET_EVENT_LIST_SUCCESS',\r\n GET_EVENT_LIST_FAILURE: 'GET_EVENT_LIST_FAILURE',\r\n \r\n GET_EVENT_REQUEST: 'GET_EVENT_REQUEST',\r\n GET_EVENT_SUCCESS: 'GET_EVENT_SUCCESS',\r\n GET_EVENT_FAILURE: 'GET_EVENT_FAILURE',\r\n\r\n GET_EVENT_SETTINGS_REQUEST: 'GET_EVENT_SETTINGS_REQUEST',\r\n GET_EVENT_SETTINGS_SUCCESS: 'GET_EVENT_SETTINGS_SUCCESS',\r\n GET_EVENT_SETTINGS_FAILURE: 'GET_EVENT_SETTINGS_FAILURE',\r\n\r\n UPDATE_EVENT_REQUEST: 'UPDATE_EVENT_REQUEST',\r\n UPDATE_EVENT_SUCCESS: 'UPDATE_EVENT_SUCCESS',\r\n UPDATE_EVENT_SETTINGS_SUCCESS: 'UPDATE_EVENT_SETTINGS_SUCCESS',\r\n UPDATE_EVENT_FAILURE: 'UPDATE_EVENT_FAILURE',\r\n\r\n CREATE_EVENT_REQUEST: 'CREATE_EVENT_REQUEST',\r\n CREATE_EVENT_SUCCESS: 'CREATE_EVENT_SUCCESS',\r\n CREATE_EVENT_FAILURE: 'CREATE_EVENT_FAILURE',\r\n\r\n DELETE_EVENT_REQUEST: 'DELETE_EVENT_REQUEST',\r\n DELETE_EVENT_SUCCESS: 'DELETE_EVENT_SUCCESS',\r\n DELETE_EVENT_FAILURE: 'DELETE_EVENT_FAILURE',\r\n};","import React from 'react';\r\nimport {\r\n Button,\r\n Modal,\r\n ModalHeader,\r\n ModalBody,\r\n ModalFooter,\r\n Container,\r\n Row,\r\n Col\r\n} from 'reactstrap';\r\nimport { connect } from 'react-redux';\r\nimport ArchiveHeader from '../components/ArchiveHeader';\r\nimport ArchiveSidebar from '../components/ArchiveSidebar';\r\nimport { handleResponse } from '../../helpers/handleresponse';\r\nimport ErrorBoundary from '../../hoc/ErrorBoundry';\r\nimport { authHeader } from '../../helpers/authHeader';\r\nimport ArchiveContent from './ArchiveContent';\r\nimport '../style/Archive.css';\r\nimport { securityHelper } from '../../helpers/securityHelper';\r\nimport UploadingInfo from '../components/UploadInfo';\r\nimport { archiveConstants } from '../contstants/archive.contstants';\r\nimport SystemLabel from '../../system/SystemLabel/SystemLabel';\r\nimport UnsplashPlugin from '../components/UnsplashPlugin';\r\nimport ImageCropper from '../plugins/ImageCropper';\r\nimport { cmsActions } from '../../store/actions/cms/cms.action';\r\nimport { sourceTypes } from '../../constants/cms/sourceType';\r\n\r\nclass ArchiveContainer extends React.Component {\r\n state = {\r\n files: [],\r\n isOpen: false,\r\n filtered: null,\r\n uploadingInfo: null,\r\n selectedFile: null,\r\n unsplashFile: null,\r\n isUploading: false,\r\n storageUsage: 0,\r\n isCompleted: false,\r\n showLaunchBtn: true,\r\n fontEnabled: false,\r\n display: archiveConstants.CLIENT_STORAGE,\r\n useCropper: false,\r\n filterType: archiveConstants.IMAGE\r\n\r\n }\r\n componentDidMount() {\r\n this.download();\r\n if (this.props.cms.enviroment !== sourceTypes.EMAIL && this.props.cms.enviroment !== sourceTypes.PAGE) {\r\n this.props.dispatch(cmsActions.blockDeselect(true))\r\n }\r\n\r\n this.setState({\r\n isOpen: this.props.isOpen,\r\n showLaunchBtn: this.props.showLaunchBtn !== undefined ?\r\n this.props.showLaunchBtn :\r\n this.state.showLaunchBtn,\r\n fontEnabled: this.props.fontEnabled && this.props.fontEnabled === true ? true : false,\r\n }, () => {\r\n if (this.state.fontEnabled) {\r\n this.navigate(archiveConstants.CLIENT_STORAGE, archiveConstants.FONT);\r\n }\r\n });\r\n }\r\n\r\n componentDidUpdate(prevProps, prevState) {\r\n const { showLaunchBtn } = this.props;\r\n if ((!showLaunchBtn ? this.props.isOpen : this.state.isOpen) && this.props.cms.deselectionBlocked == false) {\r\n this.props.dispatch(cmsActions.blockDeselect(true))\r\n }\r\n }\r\n toggle = () => {\r\n const { toggle } = this.props;\r\n\r\n this.setState(prevState => ({\r\n isOpen: !prevState.isOpen\r\n }), () => {\r\n if (toggle && typeof toggle === 'function') {\r\n this.props.toggle();\r\n setTimeout(() => this.props.dispatch(cmsActions.blockDeselect(false)), 2000)\r\n }\r\n });\r\n }\r\n onUseSelected = () => {\r\n const { onUseSelected, toggle } = this.props;\r\n const { selectedFile } = this.state;\r\n if (onUseSelected && typeof onUseSelected === 'function') {\r\n if (selectedFile.type.includes('font/')) {\r\n let fontName = selectedFile.name.substring(selectedFile.name.lastIndexOf('/') + 1, selectedFile.name.indexOf('.'));\r\n this.props.onUseSelected(fontName);\r\n return;\r\n }\r\n this.props.onUseSelected(selectedFile.url);\r\n setTimeout(() => this.props.dispatch(cmsActions.blockDeselect(false)), 2000)\r\n this.props.toggle();\r\n }\r\n }\r\n navigate = (dt, ft) => {\r\n this.setState({\r\n display: dt,\r\n filterType: ft,\r\n unsplashFile: null,\r\n selectedFile: null\r\n });\r\n }\r\n onUnsplashDownload = (unsplashFile) => {\r\n this.setState({ display: archiveConstants.CLIENT_STORAGE, filterType: archiveConstants.IMAGE });\r\n const fileInfo = {\r\n name: 'unsplash_image_' + securityHelper.createGuid(),\r\n size: 0,\r\n type: 'image/jpeg',\r\n file: unsplashFile.urls.raw\r\n }\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n this.setState({ uploadingInfo: fileInfo, isUploading: true });\r\n let queryStr = \"\";\r\n if (window.location.search) {\r\n queryStr = window.location.search + \"&url=\" + encodeURIComponent(unsplashFile.urls.raw)\r\n }\r\n else {\r\n queryStr = \"?url=\" + encodeURIComponent(unsplashFile.urls.raw)\r\n }\r\n fetch(`./api/files/unsplash` + queryStr, requestOptions)\r\n .then(handleResponse)\r\n .then(file => {\r\n this.setState({\r\n isCompleted: true,\r\n unsplashFile: null,\r\n selectedFile: { ...file },\r\n storageUsage: this.state.storageUsage + file.size,\r\n files: file !== undefined && file !== null && [Object.assign({}, { ...file }), ...this.state.files]\r\n }, () => {\r\n this.setState({\r\n isUploading: false,\r\n uploadingInfo: null,\r\n })\r\n });\r\n })\r\n .catch(err => {\r\n console.log(err.message);\r\n });\r\n }\r\n onUpload = (e) => {\r\n const file = e.target.files[0];\r\n let reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => {\r\n if (reader.result) {\r\n const fileInfo = {\r\n name: file.name,\r\n size: file.size,\r\n type: file.type,\r\n file: reader.result\r\n }\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(fileInfo)\r\n };\r\n this.setState({ uploadingInfo: fileInfo, isUploading: true });\r\n fetch(`./api/files/` + window.location.search, requestOptions)\r\n .then(handleResponse)\r\n .then(file => {\r\n this.setState({\r\n storageUsage: this.state.storageUsage + file.size,\r\n selectedFile: Object.assign({}, { ...file }),\r\n files: file !== undefined && file !== null && [Object.assign({}, { ...file }), ...this.state.files]\r\n }, () => {\r\n this.setState({\r\n isUploading: false,\r\n uploadingInfo: null,\r\n })\r\n if (file.type.includes('font/')) {\r\n if (this.state.fontEnabled) {\r\n let fontName = this.state.selectedFile.name.substring(\r\n this.state.selectedFile.name.lastIndexOf('/') + 1,\r\n this.state.selectedFile.name.indexOf('.'));\r\n\r\n this.props.onFontUpload(fontName, file.url);\r\n\r\n }\r\n this.navigate(archiveConstants.CLIENT_STORAGE, archiveConstants.FONT);\r\n }\r\n });\r\n })\r\n .catch(err => {\r\n console.error(err.message);\r\n });\r\n }\r\n }\r\n }\r\n onDeleteFile = () => {\r\n let filePath = this.state.selectedFile.name;\r\n const requestOptions = {\r\n method: \"DELETE\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n filePath = filePath.substring(filePath.lastIndexOf('/') + 1);\r\n fetch(`./api/files/${filePath}` + window.location.search, requestOptions)\r\n .then(handleResponse)\r\n .then(_ => {\r\n const files = Array.from(this.state.files);\r\n const indexToRemove = files.indexOf(files.find(f => { return f.id === this.state.selectedFile.id }));\r\n files.splice(indexToRemove, 1);\r\n if (this.state.selectedFile.type.includes('font/')) {\r\n let fontName = this.state.selectedFile.name.substring(\r\n this.state.selectedFile.name.lastIndexOf('/') + 1,\r\n this.state.selectedFile.name.indexOf('.'));\r\n this.props.dispatch(cmsActions.removeFont(fontName))\r\n }\r\n this.setState({\r\n selectedFile: null,\r\n files\r\n })\r\n })\r\n .catch(err => {\r\n console.error(err.message);\r\n });\r\n }\r\n onUploadCropped = (img) => {\r\n\r\n let size = new Buffer(img, 'base64').length / 1000;\r\n const fileInfo = {\r\n name: '_cropped_' + securityHelper.createGuid(),\r\n size: size,\r\n type: 'image/jpeg',\r\n file: img\r\n }\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(fileInfo)\r\n };\r\n this.setState({ uploadingInfo: fileInfo, isUploading: true });\r\n\r\n fetch(`./api/files/` + window.location.search, requestOptions)\r\n .then(handleResponse)\r\n .then(file => {\r\n this.setState({\r\n storageUsage: this.state.storageUsage + file.size,\r\n selectedFile: Object.assign({}, { ...file }),\r\n files: file !== undefined && file !== null && [...this.state.files, Object.assign({}, { ...file })]\r\n }, () => {\r\n setTimeout(() => {\r\n this.setState({\r\n isUploading: false,\r\n uploadingInfo: null,\r\n useCropper: false\r\n })\r\n }, 2500);\r\n\r\n });\r\n })\r\n .catch(err => {\r\n console.error(err.message);\r\n });\r\n }\r\n download = (fileType, all = false) => {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({})\r\n };\r\n fetch(`./api/files/` + window.location.search, requestOptions)\r\n .then(response => response.text().then(text => {\r\n try {\r\n const storageSummary = JSON.parse(text);\r\n storageSummary.files && storageSummary.files.map((f, i) => {\r\n return Object.assign({}, { ...f, key: securityHelper.createGuid() })\r\n })\r\n if (storageSummary !== null && storageSummary !== undefined) {\r\n\r\n this.setState({ files: storageSummary.files, storageUsage: storageSummary.eventMemoryUsage });\r\n }\r\n } catch (error) {\r\n console.error(\"DOWNLOAD_ERROR\", error)\r\n }\r\n\r\n }));\r\n }\r\n onSelect = (file, unsplash = false) => {\r\n if (!unsplash) {\r\n return this.setState({ selectedFile: file })\r\n }\r\n else {\r\n this.setState({ unsplashFile: file })\r\n }\r\n }\r\n filter = (str) => {\r\n if (!str) {\r\n return this.setState({\r\n filtered: []\r\n });\r\n }\r\n\r\n const { files } = this.state;\r\n\r\n const filteredFiles = [...files.filter((f, i) => {\r\n return f.name.includes(str);\r\n })];\r\n\r\n this.setState({\r\n filtered: filteredFiles\r\n });\r\n }\r\n crop = (e) => {\r\n this.setState({ useCropper: true })\r\n }\r\n toggleCropper = () => {\r\n this.setState({ useCropper: !this.state.useCropper })\r\n }\r\n render() {\r\n const {\r\n files,\r\n uploadingInfo,\r\n isUploading,\r\n showLaunchBtn,\r\n selectedFile,\r\n storageUsage,\r\n display,\r\n unsplashFile,\r\n useCropper\r\n } = this.state;\r\n return (\r\n
\r\n {showLaunchBtn && }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { this.setState({ selectedFile: null }) }}>\r\n \r\n \r\n \r\n \r\n \r\n {isUploading && }\r\n \r\n {display === archiveConstants.CLIENT_STORAGE && }\r\n {display === archiveConstants.UNSPLASH && }\r\n\r\n \r\n \r\n \r\n \r\n {selectedFile && useCropper && }\r\n \r\n \r\n : {storageUsage && Math.round((storageUsage * 0.001) * 10) / 10} {\" kB\"}\r\n \r\n \r\n
\r\n )\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n cms: state.cms\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ArchiveContainer);\r\n\r\n\r\n","const skipKeys = [\r\n 'interaction',\r\n 'spinner'\r\n\r\n]\r\nconst skipProps = [\r\n 'innerWidth',\r\n 'backgroundUrl',\r\n 'content'\r\n]\r\n\r\nconst keySubstitutions = [\r\n {\r\n name: 'menu', sub: [\r\n { value: '.styleWrapper .menu', present: true, },\r\n { value: '.menu', present: false }\r\n ]\r\n },\r\n {\r\n name: 'footer', sub: [\r\n { value: '.styleWrapper footer', present: true, },\r\n { value: 'footer', present: false }\r\n ]\r\n },\r\n {\r\n name: 'main', sub: [\r\n { value: '.styleWrapper body, #body', present: true, },\r\n { value: 'body, #body', present: false }\r\n ]\r\n },\r\n {\r\n name: 'content', sub: [\r\n { value: '.styleWrapper main', present: true },\r\n { value: 'main', present: false }\r\n ]\r\n },\r\n {\r\n name: 'text', sub: [\r\n { value: '.styleWrapper p', present: true },\r\n { value: 'p', present: false }\r\n ]\r\n },\r\n {\r\n name: 'title', sub: [\r\n { value: '.styleWrapper h1', present: true },\r\n { value: 'h1', present: false }\r\n ]\r\n },\r\n {\r\n name: 'a', sub: [\r\n { value: '.styleWrapper a', present: true },\r\n { value: 'a', present: false }\r\n ]\r\n },\r\n {\r\n name: 'button', sub: [\r\n { value: '.styleWrapper button', present: true },\r\n { value: 'button', present: false }\r\n ]\r\n },\r\n {\r\n name: 'header', sub: [\r\n { value: '.styleWrapper header', present: true },\r\n { value: 'header', present: false }\r\n ]\r\n },\r\n {\r\n name: 'footer', sub: [\r\n { value: '.styleWrapper footer', present: true },\r\n { value: 'footer', present: false }\r\n ]\r\n },\r\n {\r\n name: 'subtitle', sub: [\r\n { value: '.styleWrapper h2', present: true },\r\n { value: 'h2', present: false }\r\n ]\r\n },\r\n {\r\n name: 'tcell', sub: [\r\n { value: '.styleWrapper td', present: true },\r\n { value: 'td', present: false }\r\n ]\r\n },\r\n {\r\n name: 'thead', sub: [\r\n { value: '.styleWrapper th', present: true },\r\n { value: 'th', present: false }\r\n ]\r\n },\r\n {\r\n name: 'table', sub: [\r\n { value: '.styleWrapper table', present: true },\r\n { value: 'table', present: false }\r\n ]\r\n },\r\n {\r\n name: 'label', sub: [\r\n { value: '.styleWrapper label', present: true },\r\n { value: 'label', present: false }\r\n ]\r\n },\r\n]\r\n\r\nconst replaceKeyName = (key, presentation) => {\r\n let obj = keySubstitutions.find(ks => ks.name === key)\r\n if (!obj) return '';\r\n let val = obj.sub.find(s => s.present === presentation).value;\r\n return val;\r\n}\r\n\r\nconst convertPseudoClassesToCss = (pclass, action, style) => {\r\n const pseudoClass = action.replace('&', pclass);\r\n style = toKebabCase({ [pseudoClass]: { ...style } });\r\n return style;\r\n}\r\nconst converWebkitScroll = (scrollbar) => {\r\n const {\r\n thumbBackgroundColor,\r\n thumbBorderRadius,\r\n trackBackgroundColor,\r\n thumbColorHover, width } = scrollbar\r\n return `.jir-scroll::-webkit-scrollbar {\r\n width: ${width !== 'unset' ? width : '1em'} !important;\r\n \r\n }\r\n .jir-scroll::-webkit-scrollbar-track {\r\n background: ${trackBackgroundColor !== 'unset' ? trackBackgroundColor : 'transparent'} !important;\r\n }\r\n .jir-scroll::-webkit-scrollbar-thumb {\r\n background-color: ${thumbBackgroundColor !== 'unset' ? thumbBackgroundColor : '#aaaaaa'} !important;\r\n border-radius: ${thumbBorderRadius !== 'unset' ? thumbBorderRadius : '5px'} !important;\r\n \r\n }\r\n .jir-scroll::-webkit-scrollbar-thumb:hover {\r\n background-color: ${thumbColorHover !== 'unset' ? thumbColorHover : '#777777'} !important;\r\n }`\r\n\r\n}\r\n\r\nexport const toKebabCase = (style, presentation = false, scroll = false) => {\r\n const targetObj = Object.assign({}, style);\r\n let styleString = ''\r\n if(!scroll){\r\n for (const key in targetObj) {\r\n if (!Array.isArray(targetObj[key]) && !skipKeys.includes(key)) {\r\n let source = `${replaceKeyName(key, presentation)}{`;\r\n Object.entries(targetObj[key]).reduce((styleString, [propName, propValue]) => {\r\n if (propName.includes('&:')) {\r\n styleString += convertPseudoClassesToCss(key, propName, propValue)\r\n }\r\n else if (!skipProps.includes(propName)) {\r\n propName = propName.replace(/([A-Z])/g, matches => `-${matches[0].toLowerCase()}`);\r\n source += `${propName}:${propName === 'font-family' ? `'${propValue}'` : propValue};`\r\n }\r\n }, '')\r\n source += '}'\r\n styleString += source;\r\n }\r\n }\r\n }\r\n \r\n if (targetObj['scrollbar'] !== undefined) {\r\n styleString += converWebkitScroll(targetObj['scrollbar']);\r\n }\r\n if(scroll){\r\n styleString += converWebkitScroll(targetObj);\r\n }\r\n return styleString;\r\n}\r\n","/* import { conditionConstants } from \"../../../cms/form/conditions/condition.constants\"; */\r\nimport { conditionHelper } from \"../../../cms/areas/form/conditions/conditionHelper\";\r\n\r\n\r\n\r\n\r\nexport const conditionActions = {\r\n checkAll,\r\n triggerCheck\r\n}\r\n\r\nfunction triggerCheck(sourceElementId){\r\n \r\n conditionHelper.checkConditions(sourceElementId)\r\n return {type:\"NONE\"};\r\n}\r\nfunction checkAll(pageId){\r\n conditionHelper.checkAll(pageId);\r\n return {type:\"NONE\"}\r\n}","import React from \"react\";\r\nimport { Button } from 'reactstrap';\r\nclass JirangoButton extends React.Component {\r\n state = {\r\n mouseOver: false\r\n }\r\n mouseEnter = () => {\r\n this.setState({ mouseOver: true });\r\n }\r\n mouseLeave = () => {\r\n this.setState({ mouseOver: false });\r\n }\r\n render() {\r\n const { style, children, onClick, disabled, settings } = this.props;\r\n let btnStyle = this.state.mouseOver && style[\"&:hover\"] !== undefined ?\r\n {\r\n ...style,\r\n backgroundColor: style[\"&:hover\"].backgroundColor,\r\n color: style[\"&:hover\"].color\r\n } : style;\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n }\r\n\r\n};\r\nexport default JirangoButton;\r\n","import {\r\n defaultContainerElement,\r\n} from \"../models/defaultElements\";\r\nimport { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\nimport { securityHelper } from \"../../helpers/securityHelper\";\r\nimport { arrayHelper } from \"../../helpers/arrayHelper\";\r\nimport { containers } from \"../models/containers\";\r\nimport { content } from \"../models/content\";\r\nimport { contentHelper } from \"./contentHelper\";\r\nimport { sourceTypes } from \"../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../helpers/objectHelper\";\r\n\r\nexport const containerHelper = {\r\n create,\r\n sort,\r\n addTo,\r\n remove,\r\n sort,\r\n move\r\n};\r\n\r\n\r\n\r\nfunction getNewId(elements) {\r\n const containers = elements.filter(\r\n el => el.type === elementConstants.CONTAINER\r\n );\r\n\r\n if (!containers.length > 0) {\r\n return 1;\r\n }\r\n\r\n return containers.length + 1;\r\n}\r\nfunction getCurrentContainerId(elements) {\r\n const containers = elements.filter(\r\n el => el.type === elementConstants.CONTAINER\r\n );\r\n\r\n if (containers.length < 1) return 1;\r\n const maxId = Math.max.apply(Math, containers.map(function (o) { return o.id; }))\r\n return maxId + 1;\r\n}\r\nfunction create(source, sourceType, id, sortOrder) {\r\n const config = containers.find(c => c.id === id);\r\n\r\n let eventId = null;\r\n let langCode = null;\r\n let elements = null;\r\n let currentPage = null;\r\n let formId = null;\r\n let pageId = null;\r\n\r\n if (sourceType === sourceTypes.FORM) {\r\n elements = Array.from(source.formElements);\r\n currentPage = source.currentPage;\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n formId = source.formId;\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n elements = source.pageElements;\r\n currentPage = source.currentPage;\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n pageId = source.pageId;\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n elements = source;\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n currentPage = 1;\r\n }\r\n let newContainerElements = [];\r\n let prevLength = elements.length;\r\n let newId = getCurrentContainerId(elements);\r\n let newContainer = Object.assign({}, defaultContainerElement);\r\n newContainer.sortOrder = sortOrder;\r\n newContainer.formId = formId;\r\n newContainer.eventId = eventId;\r\n newContainer.parentId = null;\r\n newContainer.pageId = pageId;\r\n newContainer.id = newId++;\r\n newContainer.languageCode = langCode;\r\n newContainer.contentId = securityHelper.createGuid();\r\n newContainer.page = currentPage;\r\n\r\n if (source.parentName !== undefined) {\r\n newContainer.parentName = source.parentName;\r\n }\r\n\r\n newContainerElements.push(newContainer);\r\n\r\n for (let index = 0; index < config.type.length; index++) {\r\n let newChild = Object.assign({}, defaultContainerElement);\r\n newChild.sortOrder = index;\r\n newChild.formId = formId;\r\n newChild.eventId = eventId;\r\n newChild.parentId = newContainer.id;\r\n newChild.pageId = pageId;\r\n newChild.id = newId++;\r\n newChild.languageCode = langCode;\r\n newChild.contentId = securityHelper.createGuid();\r\n newChild.page = currentPage;\r\n newChild.data = {\r\n ...defaultContainerElement.data,\r\n style: { width: config.type[index] }\r\n };\r\n newContainerElements.push(newChild);\r\n }\r\n return newContainerElements;\r\n}\r\n\r\nfunction setSource(source, sourceType, target) {\r\n const newSrc = Object.assign({}, source);\r\n if (sourceType === sourceTypes.FORM) {\r\n newSrc.formElements = target;\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n newSrc.pageElements = target;\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n newSrc.elements = target;\r\n }\r\n return newSrc;\r\n}\r\nfunction getSource(source, sourceType) {\r\n if (sourceType === sourceTypes.FORM) {\r\n return Array.from(source.formElements);\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n return Array.from(source.pageElements);\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n return Array.from(source.elements);\r\n }\r\n}\r\n\r\nfunction remove(form, outerContainer, innerContainer, element) {\r\n const trimmedInnerContainer = innerContainer.props.elements.filter(\r\n (el, i) => el.contentId !== element.contentId\r\n );\r\n\r\n outerContainer.props.elements.map((el, i) => {\r\n if (el.contentId === innerContainer.contentId) {\r\n el.props.elements = trimmedInnerContainer;\r\n }\r\n });\r\n\r\n return form;\r\n}\r\n\r\nfunction sort(form, result) {\r\n const newForm = { ...form };\r\n const { destination, source, draggableId } = result;\r\n const newFormElements = [...newForm.formElements];\r\n const targetContainerId = destination.droppableId.slice(\r\n 9,\r\n destination.droppableId.length\r\n );\r\n\r\n const targetContainer = newFormElements.find(el => {\r\n return el.contentId === targetContainerId;\r\n });\r\n\r\n if (!targetContainer) {\r\n return;\r\n }\r\n\r\n const targetContainerChildrens = [\r\n ...newFormElements.filter(el => {\r\n return el.page === form.currentPage && el.parentId === targetContainer.id;\r\n })\r\n ];\r\n\r\n const newtargetContainerChild = [...targetContainerChildrens];\r\n\r\n const indexDiff = Math.abs(source.index - destination.index);\r\n let destinationTrack = null;\r\n\r\n if (destination.index > source.index && indexDiff > 1) {\r\n destinationTrack = targetContainerChildrens.filter(el => {\r\n return (\r\n el.sortOrder <= destination.index &&\r\n el.sortOrder !== newtargetContainerChild[source.index].sortOrder\r\n );\r\n });\r\n for (let index = 0; index < destinationTrack.length; index++) {\r\n destinationTrack[index].sortOrder = destinationTrack[index].sortOrder - 1;\r\n }\r\n targetContainerChildrens[source.index].sortOrder = destination.index;\r\n arrayHelper.concat(\r\n newFormElements,\r\n targetContainerChildrens,\r\n destinationTrack\r\n );\r\n } else if (destination.index < source.index && indexDiff > 1) {\r\n destinationTrack = targetContainerChildrens.filter(el => {\r\n return (\r\n el.sortOrder >= destination.index &&\r\n el.sortOrder <= source.index &&\r\n el.sortOrder !== newtargetContainerChild[source.index].sortOrder\r\n );\r\n });\r\n for (let index = 0; index < destinationTrack.length; index++) {\r\n destinationTrack[index].sortOrder = destinationTrack[index].sortOrder;\r\n }\r\n targetContainerChildrens[source.index].sortOrder = destination.index;\r\n arrayHelper.concat(\r\n newFormElements,\r\n targetContainerChildrens,\r\n destinationTrack\r\n );\r\n /* newForm.formElements = newFormElements;\r\n return newForm; */\r\n } else {\r\n //if an element just been moved one index\r\n targetContainerChildrens[source.index].sortOrder = destination.index;\r\n targetContainerChildrens[destination.index].sortOrder = source.index;\r\n arrayHelper.concat(newFormElements, targetContainerChildrens);\r\n }\r\n /* let arr = newForm.formElements.map(a => a.sortOrder); */\r\n newForm.formElements = newFormElements;\r\n return newForm;\r\n}\r\n\r\nfunction move(source, sourceType, result) {\r\n const { destination, draggableId } = result;\r\n\r\n let newSrc = Object.assign({}, source);\r\n let target = getSource(source, sourceType);\r\n\r\n const elementToMove = target.find(el => {\r\n return el.contentId === draggableId;\r\n });\r\n\r\n if (elementToMove === undefined || elementToMove.type === elementConstants.CONTAINER) {\r\n return;\r\n }\r\n //If the destination is to a container\r\n if (destination.droppableId.includes(\"column\")) {\r\n //We know the destination is to a container so we want to know which one\r\n const containerId = parseInt(destination.droppableId.substring(destination.droppableId.indexOf('-') + 1, destination.droppableId.lastIndexOf('-') + 1));\r\n //The source where the element used to live [null = Main content, {*numeric*} = containerId]\r\n const sourceId = elementToMove.parentId;\r\n\r\n elementToMove.parentId = containerId;\r\n elementToMove.sortOrder = destination.index;\r\n\r\n const container =\r\n deepClone(target.find(el => {\r\n return (\r\n el.type === elementConstants.CONTAINER && el.id === containerId\r\n );\r\n })\r\n );\r\n\r\n if (!container && container === undefined) {\r\n return;\r\n }\r\n\r\n if (elementToMove.type === elementConstants.EVENT && container.data.type === 'EVENT_GROUP') {\r\n elementToMove.data.groupId = containerId;\r\n }\r\n //All the elements where the element inherit from, do not include the element it self\r\n const sourceElements = [\r\n ...target.filter(el => {\r\n return (\r\n el.parentId === sourceId && el.contentId !== elementToMove.contentId\r\n );\r\n })\r\n ];\r\n //adjust the target location with the new element\r\n target = adjustTarget(\r\n destination,\r\n target,\r\n containerId,\r\n elementToMove\r\n );\r\n //adjust source location and reorder the elements\r\n adjustSource(sourceElements);\r\n //merge the all elements with the source\r\n arrayHelper.concat(target, sourceElements);\r\n newSrc = setSource(newSrc, sourceType, target)\r\n } else {\r\n const containerId = null;\r\n const sourceId = elementToMove.parentId;\r\n\r\n if (elementToMove.type === elementConstants.EVENT) {\r\n elementToMove.data.groupId = null;;\r\n }\r\n\r\n //the element will be placed outside a container\r\n\r\n //All the elements where the element inherit from, do not include the element it self\r\n const sourceElements = [\r\n ...target.filter(el => {\r\n return (\r\n el.parentId === elementToMove.parentId &&\r\n el.contentId !== elementToMove.contentId\r\n );\r\n })\r\n ];\r\n\r\n elementToMove.parentId = null;\r\n elementToMove.sortOrder = destination.index;\r\n //adjust the target location with the new element\r\n target = adjustTarget(\r\n destination,\r\n target,\r\n elementToMove.parentId,\r\n elementToMove\r\n );\r\n //adjust source location and reorder the elements\r\n adjustSource(sourceElements);\r\n //merge the all elements with the source\r\n arrayHelper.concat(target, sourceElements);\r\n newSrc = setSource(newSrc, sourceType, target)\r\n }\r\n return newSrc;\r\n}\r\n\r\nfunction addTo(source, sourceType, elements, result) {\r\n const { destination, draggableId } = result;\r\n const elementInfo = draggableId.split(\":\");\r\n //Not allowed to drop a container inside a container\r\n if (parseInt(elementInfo[0]) === elementConstants.CONTAINER) {\r\n return;\r\n }\r\n const containerWrapperId = parseInt(\r\n destination.droppableId.slice(\r\n destination.droppableId.indexOf(\"-\") + 1,\r\n destination.droppableId.lastIndexOf(\"-\")\r\n )\r\n );\r\n\r\n let target = null;\r\n\r\n if (sourceType === sourceTypes.FORM) {\r\n target = source.formElements;\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n target = source.pageElements;\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n target = source;\r\n }\r\n\r\n\r\n //spread the form for insertion\r\n //Find the element that is about to be moved to a new destination\r\n let element = elements !== undefined ?\r\n deepClone(elements.find(el => {\r\n return (\r\n el.id === parseInt(elementInfo[1]) &&\r\n el.type === parseInt(elementInfo[0])\r\n );\r\n })) : null;\r\n\r\n\r\n //Find the container that will be recieving an element\r\n const container =\r\n deepClone(target.find(el => {\r\n return (\r\n el.type === elementConstants.CONTAINER && el.id === containerWrapperId\r\n );\r\n })\r\n );\r\n\r\n if (!container && container === undefined) {\r\n return;\r\n }\r\n const parentContainer =\r\n deepClone(target.find(el => {\r\n return (\r\n el.type === elementConstants.CONTAINER && el.id === container.parentId\r\n );\r\n })\r\n );\r\n\r\n if (parseInt(elementInfo[0]) === elementConstants.EVENT && parentContainer && parentContainer.data.type === 'EVENT_GROUP'\r\n || parseInt(elementInfo[0]) === elementConstants.EVENT && container.parentId === null && container.data.type === 'EVENT_GROUP') {\r\n element.data.groupId = parentContainer.id;\r\n\r\n }\r\n if (parseInt(elementInfo[0]) === elementConstants.CONTENT) {\r\n const selectedEl = content.find((el, index) => {\r\n return el.id === elementInfo[1];\r\n });\r\n\r\n element = contentHelper.create(source, sourceType, selectedEl, destination);\r\n element.parentId = containerWrapperId;\r\n }\r\n\r\n if (sourceType === sourceTypes.FORM) {\r\n const newForm = deepClone(source);\r\n newForm.formElements = adjust(\r\n element,\r\n containerWrapperId,\r\n destination,\r\n source,\r\n sourceType\r\n );\r\n\r\n return newForm;\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n const newPage = deepClone(source);\r\n newPage.pageElements = adjust(\r\n element,\r\n containerWrapperId,\r\n destination,\r\n source,\r\n sourceType\r\n );\r\n return newPage;\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n let tempSource = deepClone(source);\r\n tempSource = adjust(element, containerWrapperId, destination, source, sourceType);\r\n return tempSource;\r\n }\r\n}\r\n\r\nfunction adjustSource(sourceElements) {\r\n sourceElements.sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n });\r\n sourceElements.map((el, index) => {\r\n el.sortOrder = index;\r\n });\r\n return sourceElements;\r\n}\r\n\r\nfunction adjustTarget(destination, formElements, parentId, elementToMove) {\r\n const reArranged = Array.from(formElements);\r\n let destinationTrack = null;\r\n destinationTrack = reArranged.filter(el => {\r\n return (\r\n el.sortOrder >= destination.index &&\r\n el.parentId === parentId &&\r\n el.contentId !== elementToMove.contentId\r\n );\r\n });\r\n for (let index = 0; index < destinationTrack.length; index++) {\r\n destinationTrack[index].sortOrder = destinationTrack[index].sortOrder + 1;\r\n }\r\n arrayHelper.concat(reArranged, destinationTrack);\r\n return reArranged;\r\n}\r\n\r\nfunction adjust(element, parentId, destination, source, sourceType) {\r\n let elements = null;\r\n let eventId = null;\r\n let langCode = null;\r\n let currentPage = null;\r\n let formId = null;\r\n let pageId = null;\r\n\r\n if (sourceType === sourceTypes.FORM) {\r\n elements = source.formElements;\r\n currentPage = source.currentPage;\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n formId = source.formId;\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n elements = source.pageElements;\r\n currentPage = source.currentPage;\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n pageId = source.pageId;\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n elements = source;\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n }\r\n\r\n let destinationTrack = null;\r\n destinationTrack = elements.filter(el => {\r\n return el.sortOrder >= destination.index + 1 && el.parentId === parentId;\r\n });\r\n //Filter all the elements with a higher sortOrder than the requested\r\n //index for the new element\r\n //Increase all the elements that are above the requested index with 1\r\n for (let index = 0; index < destinationTrack.length; index++) {\r\n destinationTrack[index].sortOrder = destinationTrack[index].sortOrder + 1;\r\n }\r\n\r\n elements.push({\r\n ...element,\r\n sortOrder: destination.index,\r\n formId: formId,\r\n languageCode: langCode,\r\n contentId: securityHelper.createGuid(),\r\n parentId: parentId,\r\n pageId: pageId,\r\n page: currentPage,\r\n eventId: eventId,\r\n });\r\n arrayHelper.concat(elements, destinationTrack);\r\n return elements;\r\n}\r\n","/* import { authHeader } from \"../helpers/authHeader\"; */\r\nimport { handleResponse } from \"../../../../helpers/handleresponse\";\r\nimport { authHeader } from \"../../../../helpers/authHeader\";\r\n\r\nexport const elementService = {\r\n getAll,\r\n update,\r\n create\r\n};\r\n\r\nasync function getAll(eventId) {\r\n const requestOptions = {\r\n method: \"GET\" ,\r\n headers: authHeader({})\r\n };\r\n\r\n return fetch(`./api/formElement/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(elements => {\r\n return elements;\r\n });\r\n}\r\n\r\n\r\nasync function update(element) {\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(element)\r\n };\r\n\r\n return fetch(`./api/formElement`, requestOptions)\r\n .then(handleResponse)\r\n .then(element => {\r\n return element;\r\n });\r\n}\r\n\r\nasync function create(element) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(element)\r\n };\r\n\r\n return fetch(`./api/formElement`, requestOptions)\r\n .then(handleResponse)\r\n .then(element => {\r\n return element;\r\n });\r\n}\r\n","import { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { alertActions } from \"../../alert.action\";\r\nimport { elementService } from \"../../../../services/cms/form/element/element.service\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport { formConstants } from \"../../../../constants/cms/form/form.constants\";\r\n\r\nexport const elementActions = {\r\n getAll,\r\n update,\r\n create,\r\n updateList,\r\n addToList, softUpdate\r\n};\r\n\r\nfunction getAll(eventId) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n elementService.getAll(eventId).then(\r\n elements => dispatch(success(elements)),\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: elementConstants.GETALL_ELEMENTS_REQUEST };\r\n }\r\n function success(elements) {\r\n return { type: elementConstants.GETALL_ELEMENTS_SUCCESS, elements };\r\n }\r\n function failure(error) {\r\n return { type: elementConstants.GETALL_ELEMENTS_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction softUpdate(element) {\r\n\r\n return dispatch => {\r\n dispatch(alertActions.clear());\r\n let newEl = deepClone(element);\r\n newEl.data = JSON.stringify(element.data);\r\n elementService.update(newEl).then(\r\n el => {\r\n },\r\n error => {\r\n }\r\n );\r\n };\r\n\r\n\r\n function success(element) {\r\n return { type: elementConstants.UPDATE_ELEMENT_SUCCESS, element };\r\n }\r\n\r\n}\r\n\r\nfunction update(element, updateToForm = false) {\r\n\r\n return dispatch => {\r\n dispatch(request(element.contentId));\r\n dispatch(alertActions.clear());\r\n let newEl = deepClone(element);\r\n newEl.data = JSON.stringify(element.data);\r\n elementService.update(newEl).then(\r\n el => {\r\n if(updateToForm){\r\n el.data = JSON.parse(el.data);\r\n dispatch(success({ ...el, contentId: element.contentId }));\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request(id) {\r\n return { type: elementConstants.UPDATE_ELEMENT_REQUEST, id };\r\n }\r\n function success(element) {\r\n return { type: formConstants.UPDATE_FORM_ELEMENT, element };\r\n }\r\n function failure(error) {\r\n return { type: elementConstants.UPDATE_ELEMENT_FAILURE, error };\r\n }\r\n}\r\nfunction addToList(element) {\r\n return dispatch => {\r\n dispatch(success(element));\r\n };\r\n\r\n function success(element) {\r\n return { type: elementConstants.ADD_TO_LIST_SUCCESS, element };\r\n }\r\n}\r\n\r\nfunction updateList(elements) {\r\n return dispatch => {\r\n dispatch(success(elements));\r\n };\r\n\r\n function success(elements) {\r\n return { type: elementConstants.UPDATE_LIST_SUCCESS, elements };\r\n }\r\n}\r\nfunction create(element) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n element.data = JSON.stringify(element.data);\r\n /* element.props = JSON.stringify(element.props); */\r\n elementService.create(element).then(\r\n element => {\r\n dispatch(success(element));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: elementConstants.CREATE_ELEMENT_REQUEST };\r\n }\r\n function success(element) {\r\n return { type: elementConstants.ADD_TO_LIST_SUCCESS, element };\r\n }\r\n function failure(error) {\r\n return { type: elementConstants.CREATE_ELEMENT_FAILURE, error };\r\n }\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Route, Link } from \"react-router-dom\";\r\nimport { Collapse, Navbar, NavbarToggler, NavbarBrand, Nav, NavItem, NavLink, UncontrolledDropdown, DropdownToggle, DropdownMenu, DropdownItem } from \"reactstrap\";\r\nimport { arrayHelper } from \"../../../../helpers/arrayHelper\";\r\nimport Media from \"react-media\";\r\nimport \"./MenuLayout.css\";\r\nimport PageViewLayout from \"../../page/container/View/Layout/PageViewLayout\";\r\nimport PostFormLayout from \"../../form/containers/PostFormLayout/PostFormLayout\";\r\nimport { getKey } from \"../../../../helpers/UrlHelper\";\r\n\r\nexport class MenuLayout extends React.Component {\r\n state = {\r\n isOpen: false,\r\n collapsed: true,\r\n };\r\n componentDidMount() {\r\n const { template, headerHeight } = this.props;\r\n if (template.content.menu.position === \"fixed\" && headerHeight !== undefined)\r\n window.onscroll = function () {\r\n this.fixateMenuToTop(headerHeight.clientHeight);\r\n };\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.headerHeight !== undefined && prevProps.headerHeight !== this.props.headerHeight && this.props.template.content.menu.position === \"fixed\") {\r\n const { template, headerHeight } = this.props;\r\n window.onscroll = () => this.fixateMenuToTop(headerHeight.clientHeight);\r\n }\r\n }\r\n componentWillUnmount() {\r\n const { template, headerHeight } = this.props;\r\n if (template.content.menu.position === \"fixed\" && headerHeight !== undefined) window.onscroll = null;\r\n }\r\n replaceUrlTags = (url) => {\r\n const { attendee } = this.props;\r\n let path = url.toString();\r\n let badgeNo = \"\";\r\n let lang = \"\"\r\n let hasOrder = attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined;\r\n if (window.location && window.location.search) {\r\n const paramProps = new URLSearchParams(window.location.search);\r\n if (paramProps.get(getKey(\"badgeno\", paramProps))) badgeNo = paramProps.get(getKey(\"badgeno\", paramProps));\r\n else if (paramProps.get(getKey(\"clientkey\", paramProps))) badgeNo = paramProps.get(getKey(\"clientkey\", paramProps));\r\n\r\n if (paramProps.get(getKey(\"lang\", paramProps))) lang = paramProps.get(getKey(\"lang\", paramProps));\r\n }\r\n if (/\\[BadgeNo\\]/gi.test(path)) {\r\n if (hasOrder && badgeNo) {\r\n path = path.replace(/\\[BadgeNo\\]/gi, badgeNo);\r\n } else {\r\n path = path.replace(/&*badgeno=\\[BadgeNo\\]/gi, \"\");\r\n path = path.replace(/&*clientkey=\\[BadgeNo\\]/gi, \"\");\r\n }\r\n }\r\n if (/\\[ClientKey\\]/gi.test(path)) {\r\n if (hasOrder && badgeNo) {\r\n path = path.replace(/\\[ClientKey\\]/gi, badgeNo);\r\n } else {\r\n path = path.replace(/&*badgeno=\\[ClientKey\\]/gi, \"\");\r\n path = path.replace(/&*clientkey=\\[ClientKey\\]/gi, \"\");\r\n }\r\n }\r\n\r\n if(/lang=.{3}/gi.test(path) && lang){\r\n path = path.replace(/lang=.{3}/gi, \"lang=\"+lang);\r\n }\r\n else if(lang){\r\n path = path + \"&lang=\"+lang;\r\n }\r\n\r\n return path;\r\n };\r\n // appendBadgeNo = (url) => {\r\n // const { attendee } = this.props;\r\n\r\n // if (window.location && window.location.search) {\r\n // /* let params = \"/?\"; */\r\n // const paramProps = new URLSearchParams(window.location.search);\r\n\r\n // let hasOrder = attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined;\r\n\r\n // let lang = \"\";\r\n // let badgeNo = \"\";\r\n\r\n // if (paramProps.get(getKey(\"badgeno\", paramProps))) {\r\n // badgeNo = paramProps.get(getKey(\"badgeno\", paramProps));\r\n // } else if (paramProps.get(getKey(\"clientkey\", paramProps)) && hasOrder) badgeNo = paramProps.get(getKey(\"clientkey\", paramProps));\r\n\r\n // lang = paramProps.get(getKey(\"languagecode\", paramProps));\r\n // if (!lang) lang = paramProps.get(getKey(\"lang\", paramProps));\r\n\r\n // let searchParam = \"\";\r\n // if (!url.includes(\"lang\")) {\r\n // searchParam =\r\n // \"?\" +\r\n // new URLSearchParams({\r\n // lang: lang || \"swe\",\r\n // }).toString();\r\n // }\r\n\r\n // if (badgeNo && !url.includes(\"badgeNo\")) {\r\n // searchParam =\r\n // \"?\" +\r\n // new URLSearchParams({\r\n // lang: lang || \"swe\",\r\n // badgeNo,\r\n // }).toString();\r\n // }\r\n // /* \r\n // paramProps.forEach(function (value, key) {\r\n // params += `${key}=${value}&`;\r\n // });\r\n // if (params.charAt(params.length - 1) === \"&\")\r\n // params = params.slice(0, params.length - 1); */\r\n\r\n // return url + searchParam;\r\n // }\r\n // /* } */\r\n // return url;\r\n // };\r\n fixateMenuToTop = (headerHeight = 0) => {\r\n const { template } = this.props;\r\n if (document.body.scrollTop > headerHeight || document.documentElement.scrollTop > headerHeight) {\r\n const el = document.body;\r\n let isOverflowing = el.clientWidth < el.scrollWidth || el.clientHeight < el.scrollHeight;\r\n\r\n if (isOverflowing) {\r\n try {\r\n document.getElementById(\"menu-bar-mobile\").classList.add(\"fixed-top\");\r\n document.getElementById(\"menu-bar\").classList.add(\"fixed-top\");\r\n document.getElementById(\"menu-bar\").style.width = template.content.header.width;\r\n } catch (error) {}\r\n }\r\n } else {\r\n try {\r\n document.getElementById(\"menu-bar-mobile\").classList.remove(\"fixed-top\");\r\n document.getElementById(\"menu-bar-mobile\").style.width = \"100%\";\r\n document.getElementById(\"menu-bar\").classList.remove(\"fixed-top\");\r\n document.getElementById(\"menu-bar\").style.width = template.content.menu.innerWidth;\r\n } catch (error) {}\r\n }\r\n };\r\n getMenuList = () => {\r\n const { menu, cms } = this.props;\r\n if (!Array.isArray(menu) || menu.length === 0) return undefined;\r\n const newMenuItems = Array.from(menu);\r\n newMenuItems.map((mi, i) => {\r\n if (\r\n /* mi.appendBadgeNo === true &&\r\n !mi.url.includes(\"/?badgeNo=\") && */\r\n cms.editMode == false\r\n ) {\r\n mi.url = this.replaceUrlTags(mi.url);\r\n }\r\n });\r\n return newMenuItems;\r\n };\r\n alignMenuItems = (value) => {\r\n switch (value) {\r\n case \"center\":\r\n return \"align-center\";\r\n case \"left\":\r\n return \"mr-auto\";\r\n case \"right\":\r\n return \"ml-auto\";\r\n default:\r\n break;\r\n }\r\n };\r\n render() {\r\n const { isOpen, collapsed } = this.state;\r\n const { template, menu, headerHeight, cms } = this.props;\r\n const navBrand =\r\n menu !== undefined && menu\r\n ? menu.find((mi) => {\r\n return mi.sortOrder === 0;\r\n })\r\n : null;\r\n const itemAlignment = this.alignMenuItems(template.content.menu.justifyContent);\r\n if (template.content.menu.display === \"none\" || template.content.menu.display === \"unset\") return null;\r\n const menuItems = this.getMenuList();\r\n return (\r\n
\r\n \r\n {(matches) => (\r\n \r\n {matches.desktop ? (\r\n \r\n 6 ? 'none' : undefined */\r\n }}\r\n expand=\"md\"\r\n >\r\n {navBrand ? {navBrand.label} : null}\r\n this.setState({ isOpen: !this.state.isOpen })} />\r\n \r\n \r\n \r\n \r\n
\r\n ) : null}\r\n {matches.mobile ? (\r\n
\r\n 6 ? 'inline-flex' : undefined */\r\n }}\r\n >\r\n this.setState({ collapsed: !this.state.collapsed })}\r\n className=\"mr-2\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ) : null}\r\n \r\n )}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction DrawMenuList(menuItems, template, isHamburger, editMode) {\r\n const { fontFamily, backgroundColor, fontSize, fontWeight, color } = template;\r\n\r\n return (\r\n \r\n {arrayHelper\r\n .sortByParam(menuItems, \"sortOrder\")\r\n .filter((mi) => {\r\n return mi.parentMenuId === null;\r\n })\r\n .map((mi, i) => {\r\n if (\r\n menuItems.find((mc) => {\r\n return mc.parentMenuId === mi.menuId;\r\n })\r\n ) {\r\n return (\r\n \r\n \r\n {mi.label}\r\n \r\n \r\n {arrayHelper\r\n .sortByParam(menuItems, \"sortOrder\")\r\n .filter((mii) => {\r\n return mii.parentMenuId == mi.menuId;\r\n })\r\n .map((mii, ii) => {\r\n return (\r\n \r\n {/* {mc.target}\r\n {mc.target} */}\r\n \r\n {mii.label}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n } else {\r\n return (\r\n \r\n {/* {mi.url.includes('/p') ? {mi.label}: */}\r\n \r\n {mi.label}\r\n \r\n\r\n {/* } */}\r\n \r\n );\r\n }\r\n })}\r\n \r\n );\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n cms: state.cms,\r\n template: state.template.template,\r\n menu: state.template.menu,\r\n menuItems: state.menu,\r\n attendee: state.attendee,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(MenuLayout);\r\n","import React from 'react';\r\nimport { Droppable, Draggable } from 'react-beautiful-dnd';\r\nimport { DragContainer } from '../../../../components/UI/DragContainer/DragContainer';\r\nimport { DropArea } from '../../../../components/UI/DropArea/DropArea';\r\nimport { Col, Row } from 'reactstrap';\r\nimport { renderElement } from '../../../../helpers/renderElement';\r\nimport { connect } from 'react-redux';\r\nimport { templateActions } from '../../../../../store/actions/cms/template/template.action';\r\nimport { sourceTypes } from '../../../../../constants/cms/sourceType';\r\nimport { ElementOverlay } from '../../../../components/element/Overlay/ElementOverlay';\r\n\r\n\r\nclass TemplateHeader extends React.Component {\r\n state = {\r\n isDropZoneDisabled: false\r\n }\r\n componentDidMount() {\r\n if (this.props.cms.enviroment !== sourceTypes.TEMPLATE) {\r\n this.disableDropZone(true);\r\n }\r\n }\r\n disableDropZone = (isDisabled) => {\r\n this.setState({ isDropZoneDisabled: isDisabled })\r\n }\r\n onSelect = (el) => {\r\n const { dispatch, cms } = this.props;\r\n if (!cms.editMode && cms.enviroment !== sourceTypes.TEMPLATE) { return; }\r\n dispatch(templateActions.select(el))\r\n }\r\n onDelete = (el) => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.remove(el, 'HEADER'))\r\n }\r\n\r\n sortChildrens = () => {\r\n const { template } = this.props.template;\r\n const dataSource = template && template.content ? Array.from\r\n (template.content.header.content\r\n .sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n })\r\n .filter(el => el.parentId === null)) : [];\r\n\r\n return dataSource;\r\n }\r\n render() {\r\n const { template } = this.props.template;\r\n const { selectedContainer, selectedElement } = this.props.template;\r\n const { editMode, enviroment } = this.props.cms\r\n\r\n if (template === undefined) return null;\r\n if (!editMode && enviroment !== sourceTypes.TEMPLATE) {\r\n return (\r\n
{this.sortChildrens().map((el, index) => {\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n {renderElement(el.type, el, this.disableDropZone)}\r\n \r\n\r\n \r\n \r\n
\r\n
)\r\n })}\r\n )\r\n }\r\n return (\r\n
\r\n \r\n {(provided, snapshot) => (\r\n \r\n {this.sortChildrens().map((el, index) => {\r\n return (\r\n
\r\n\r\n \r\n {(provided, snapshot) => (\r\n \r\n
\r\n\r\n this.onSelect(el)}\r\n >\r\n \r\n \r\n {renderElement(el.type, el, this.disableDropZone)}\r\n \r\n {enviroment === sourceTypes.TEMPLATE ? (\r\n \r\n /*
\r\n
\r\n \r\n \r\n \r\n \r\n this.onDelete(el)} style={{ fontSize: '1em' }} />\r\n \r\n \r\n
\r\n
*/\r\n ) : null}\r\n \r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n\r\n );\r\n })}\r\n {template && template.content.header && template.content.header.content &&\r\n template.content.header.content !== undefined &&\r\n template.content.header.content.length < 1 || template && template.content.header.content !== undefined &&\r\n template.content.header.content === 0 ?\r\n
\r\n {provided.placeholder}\r\n
:\r\n
{provided.placeholder}
}\r\n\r\n\r\n
\r\n )}\r\n
\r\n {/* */}\r\n
\r\n )\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template,\r\n cms: state.cms,\r\n form: state.form\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TemplateHeader);\r\n","import React from 'react';\r\nimport { Droppable, Draggable } from 'react-beautiful-dnd';\r\nimport { DragContainer } from '../../../../components/UI/DragContainer/DragContainer';\r\nimport { DropArea } from '../../../../components/UI/DropArea/DropArea';\r\nimport { Col, Row } from 'reactstrap';\r\nimport { renderElement } from '../../../../helpers/renderElement';\r\nimport { connect } from 'react-redux';\r\nimport { templateActions } from '../../../../../store/actions/cms/template/template.action';\r\nimport { sourceTypes } from '../../../../../constants/cms/sourceType';\r\nimport '../styles/TemplateContent.css';\r\nimport { ElementOverlay } from '../../../../components/element/Overlay/ElementOverlay';\r\n\r\nclass TemplateFooter extends React.Component {\r\n state = {\r\n isDropZoneDisabled: false\r\n }\r\n componentDidMount() {\r\n if (this.props.cms.enviroment !== sourceTypes.TEMPLATE) {\r\n this.disableDropZone(true);\r\n }\r\n\r\n }\r\n disableDropZone = (isDisabled) => {\r\n this.setState({ isDropZoneDisabled: isDisabled })\r\n }\r\n onSelect = (el) => {\r\n const { dispatch, cms } = this.props;\r\n if (!cms.editMode) { return; }\r\n dispatch(templateActions.select(el))\r\n }\r\n\r\n onDelete = (el) => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.remove(el, 'FOOTER'))\r\n }\r\n sortChildrens = () => {\r\n const { template } = this.props.template;\r\n\r\n const dataSource = template && template.content ? Array.from\r\n (template.content.footer.content\r\n .sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n })\r\n .filter(el => el.parentId === null)) : [];\r\n\r\n return dataSource;\r\n }\r\n render() {\r\n const { template, selectedContainer, selectedElement } = this.props.template;\r\n const { editMode, enviroment } = this.props.cms\r\n\r\n if (template === undefined) return null;\r\n if (!editMode && enviroment !== sourceTypes.TEMPLATE) {\r\n return (
{this.sortChildrens().map((el, index) => {\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n {renderElement(el.type, el, this.disableDropZone)}\r\n \r\n\r\n \r\n \r\n
\r\n
)\r\n })}\r\n
)\r\n }\r\n return (\r\n
\r\n \r\n {(provided, snapshot) => (\r\n \r\n {this.sortChildrens().map((el, index) => {\r\n return (\r\n
\r\n\r\n \r\n {(provided, snapshot) => (\r\n \r\n
\r\n\r\n this.onSelect(el)}\r\n >\r\n this.onSelect(el)}\r\n >\r\n\r\n \r\n\r\n {renderElement(el.type, el, this.disableDropZone)}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n\r\n );\r\n })}\r\n\r\n {template.content.footer.content &&\r\n template.content.footer.content !== undefined &&\r\n template.content.footer.content < 1 || template.content.header.content !== undefined &&\r\n template.content.footer.content === 0 ?\r\n
\r\n {provided.placeholder}\r\n
:\r\n
{provided.placeholder}
}\r\n\r\n\r\n
\r\n )}\r\n
\r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template,\r\n cms: state.cms,\r\n form: state.form\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TemplateFooter);\r\n","import React, { useState } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\nimport SystemLabel from '../../../system/SystemLabel/SystemLabel';\r\nimport { cmsActions } from '../../../store/actions/cms/cms.action';\r\nimport { sourceTypes } from '../../../constants/cms/sourceType';\r\nimport { formActions } from '../../../store/actions/cms/form/form.action';\r\nimport { templateActions } from '../../../store/actions/cms/template/template.action';\r\nimport { pageActions } from '../../../store/actions/cms/page/page.action';\r\n\r\nconst MergeAlerter = (props) => {\r\n const [modal, setModal] = useState(false);\r\n const toggle = () => setModal(!modal);\r\n const { dispatch, form, page, cms, template, type } = props;\r\n const { mergeSource, showMergeAlert, mergeCallback } = cms;\r\n\r\n if (showMergeAlert) {\r\n return
\r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n \r\n
\r\n }\r\n else {\r\n return null;\r\n }\r\n\r\n}\r\n\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n cms: state.cms,\r\n form: state.form,\r\n template: state.template.template,\r\n page: state.page\r\n };\r\n}\r\n\r\n\r\nexport default connect(mapStateToProps)(MergeAlerter);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"./MobilePreview.css\";\r\nimport \"./TabletPreview.css\";\r\n\r\nconst PreviewWrapper = ({ device, children }) => {\r\n let style = device === \"desktop\" ? \"\" : device;\r\n return (\r\n
\r\n
{children}
\r\n
\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice\r\n };\r\n}\r\nexport default connect(mapStateToProps)(PreviewWrapper);\r\n","import React from \"react\";\r\nimport \"./MediaBackdrop.css\";\r\nimport Media from \"react-media\";\r\nimport PreviewWrapper from \"../PreviewMode/PreviewWrapper\";\r\nexport class MediaBackdrop extends React.Component {\r\n state = {\r\n blurEffect: \"blur\"\r\n };\r\n componentDidMount() {\r\n setTimeout(() => this.setState({ blurEffect: \"unblur\" }), 3000);\r\n }\r\n generateYoutubeSource = () => {\r\n const { url } = this.props;\r\n if (!url.includes(\"https://www.youtube.com/watch?v=\")) return \"\";\r\n let id = url.substring(url.indexOf(\"v=\") + 2, url.length);\r\n return id;\r\n };\r\n setScale = ({ small, medium, large }) => {\r\n let translate = \"translateX(-58%) translateY(-50%) \";\r\n if (small) translate += \"scale(4)\";\r\n else if (medium) translate += \"scale(2.5)\";\r\n else translate += \"scale(1.5)\";\r\n return translate;\r\n };\r\n setBackground = () => {\r\n const { main, device } = this.props;\r\n const bg = {};\r\n\r\n bg.backgroundSize = \"cover\";\r\n bg.backgroundPosition = main.backgroundPosition;\r\n bg.backgroundRepeat = \"no-repeat\";\r\n bg.background = main.background;\r\n bg.backgroundAttachment = \"fixed\";\r\n bg.height =\r\n this.props.editMode && (device === \"desktop\" || device === undefined) || (!this.props.editMode)\r\n ? \"100vh\"\r\n : \"100%\";\r\n bg.overflowY = this.props.editMode ? \"auto\" : \"unset\";\r\n return bg;\r\n \r\n };\r\n setHeight = () => {\r\n const { device, enabled } = this.props;\r\n if (this.props.editMode && (device === \"desktop\" || device === undefined) || (!this.props.editMode)) {\r\n return '100vh';\r\n } else if (this.props.editMode && device !== \"desktop\" && device !== undefined && enabled == true) {\r\n\r\n return '100%'\r\n } \r\n }\r\n render() {\r\n const { url, children, enabled, device, main } = this.props;\r\n const { blurEffect } = this.state;\r\n return (\r\n
\r\n \r\n {enabled === true && url !== \"unset\" && url !== \"\" ? (\r\n
\r\n \r\n {matches => (\r\n \r\n )}\r\n \r\n
\r\n ) : null}\r\n \r\n
{children}
\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n","import Media from \"react-media\";\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Container } from \"reactstrap\";\r\nimport \"./ContentWrapper.css\";\r\nimport { templateConstants } from \"../../../../../../../constants/cms/template/template.constants\";\r\n\r\nconst ContentWrapper = ({\r\n children,\r\n device,\r\n editMode,\r\n menuStyle,\r\n headerStyle,\r\n contentStyle,\r\n responsiveStyle\r\n}) => {\r\n if (!contentStyle) return null;\r\n\r\n\r\n const setStyle = matches => {\r\n let dekstopStyle = {\r\n ...contentStyle, minHeight: `calc(${contentStyle.minHeight} - \r\n (${contentStyle.marginTop}) - \r\n (${contentStyle.marginBottom}) -\r\n (${menuStyle.minHeight != 'auto' && menuStyle.minHeight != 'unset' ? menuStyle.minHeight : '0px'}) - \r\n (${headerStyle.height != 'auto' && headerStyle.height != 'unset' ? headerStyle.height : '0px'}) -\r\n (${headerStyle.marginBottom != 'auto' && headerStyle.marginBottom != 'unset' ? headerStyle.marginBottom : '0px'}) -\r\n (${headerStyle.marginTop != 'auto' && headerStyle.marginTop != 'unset' ? headerStyle.marginTop : '0px'}) \r\n )`\r\n };\r\n if (!editMode) {\r\n if (matches.large) return dekstopStyle;\r\n else {\r\n let dvc = \"\";\r\n if (matches.medium) dvc = templateConstants.TABLET;\r\n else if (matches.small) dvc = templateConstants.SMARTPHONE;\r\n if (responsiveStyle[dvc] === undefined) return dekstopStyle\r\n const style = { ...contentStyle, ...responsiveStyle[dvc].content };\r\n return style;\r\n }\r\n } else {\r\n if (device === templateConstants.DESKTOP) return dekstopStyle;\r\n const style = { ...contentStyle, ...responsiveStyle[device].content };\r\n\r\n return style;\r\n }\r\n }\r\n return (\r\n \r\n {matches => (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n );\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice,\r\n editMode: state.cms.editMode,\r\n contentStyle: state.template.template.content.content,\r\n responsiveStyle: state.template.template.content.responsive,\r\n menuStyle: state.template.template.content.menu,\r\n headerStyle: state.template.template.content.header,\r\n\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ContentWrapper);\r\n","import Media from \"react-media\";\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"./MenuWrapper.css\";\r\nimport { templateConstants } from \"../../../../../../../constants/cms/template/template.constants\";\r\n\r\nconst MenuWrapper = ({\r\n children,\r\n device,\r\n editMode,\r\n menuStyle,\r\n responsiveStyle\r\n}) => {\r\n if (!menuStyle) return null;\r\n const setStyle = matches => {\r\n if (!editMode) {\r\n if (matches.large) return menuStyle;\r\n else {\r\n let dvc = \"\";\r\n if (matches.medium) dvc = templateConstants.TABLET;\r\n else if (matches.small) dvc = templateConstants.SMARTPHONE;\r\n if (responsiveStyle[dvc] === undefined) return menuStyle\r\n const style = { ...menuStyle, ...responsiveStyle[dvc].menu };\r\n style.position = 'unset'\r\n return style;\r\n }\r\n } else {\r\n if (device === templateConstants.DESKTOP) return menuStyle;\r\n const style = { ...menuStyle, ...responsiveStyle[device].menu };\r\n style.position = 'unset'\r\n return style;\r\n }\r\n };\r\n if(menuStyle.display === 'none') return null;\r\n return (\r\n \r\n {matches => (\r\n
\r\n {children}\r\n
\r\n )}\r\n \r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice,\r\n editMode: state.cms.editMode,\r\n menuStyle: state.template.template.content.menu,\r\n responsiveStyle: state.template.template.content.responsive\r\n };\r\n}\r\nexport default connect(mapStateToProps)(MenuWrapper);\r\n","import Media from \"react-media\";\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"./HeaderWrapper.css\";\r\nimport { templateConstants } from \"../../../../../../../constants/cms/template/template.constants\";\r\n\r\nconst HeaderWrapper = ({\r\n children,\r\n device,\r\n editMode,\r\n headerStyle,\r\n responsiveStyle\r\n}) => {\r\n if (!headerStyle) return null;\r\n const setStyle = matches => {\r\n if (!editMode) {\r\n if (matches.large) return headerStyle;\r\n else {\r\n let dvc = \"\";\r\n if (matches.medium) dvc = templateConstants.TABLET;\r\n else if (matches.small) dvc = templateConstants.SMARTPHONE;\r\n if (responsiveStyle[dvc] === undefined) return headerStyle;\r\n const style = { ...headerStyle, ...responsiveStyle[dvc].header };\r\n return style;\r\n }\r\n } else {\r\n if (device === templateConstants.DESKTOP) return headerStyle;\r\n const style = { ...headerStyle, ...responsiveStyle[device].header };\r\n return style;\r\n }\r\n };\r\n return (\r\n \r\n {matches => (\r\n
\r\n {children}\r\n
\r\n )}\r\n \r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice,\r\n editMode: state.cms.editMode,\r\n headerStyle: state.template.template.content.header,\r\n responsiveStyle: state.template.template.content.responsive\r\n };\r\n}\r\nexport default connect(mapStateToProps)(HeaderWrapper);\r\n","import Media from \"react-media\";\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"./FooterWrapper.css\";\r\nimport { templateConstants } from \"../../../../../../../constants/cms/template/template.constants\";\r\n\r\nconst FooterWrapper = ({\r\n children,\r\n device,\r\n editMode,\r\n footerStyle,\r\n responsiveStyle\r\n}) => {\r\n if (!footerStyle) return null;\r\n const setStyle = matches => {\r\n if (!editMode) {\r\n if (matches.large) return footerStyle;\r\n else {\r\n let dvc = \"\";\r\n if (matches.medium) dvc = templateConstants.TABLET;\r\n else if (matches.small) dvc = templateConstants.SMARTPHONE;\r\n if (responsiveStyle[dvc] === undefined) return footerStyle;\r\n const style = { ...footerStyle, ...responsiveStyle[dvc].footer };\r\n return style;\r\n }\r\n } else {\r\n if (device === templateConstants.DESKTOP) return footerStyle;\r\n const style = { ...footerStyle, ...responsiveStyle[device].footer };\r\n return style;\r\n }\r\n };\r\n return (\r\n \r\n {matches => (\r\n
\r\n {children}\r\n
\r\n )}\r\n \r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice,\r\n editMode: state.cms.editMode,\r\n footerStyle: state.template.template.content.footer,\r\n responsiveStyle: state.template.template.content.responsive\r\n };\r\n}\r\nexport default connect(mapStateToProps)(FooterWrapper);\r\n","import React, { useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col\r\n} from \"reactstrap\";\r\nimport FileCopyIcon from \"@material-ui/icons/FileCopyOutlined\";\r\nimport ExploreIcon from \"@material-ui/icons/Explore\";\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport \"./CmsSpeedDial.css\";\r\nimport { Fab } from \"@material-ui/core\";\r\nimport RateReviewIcon from \"@material-ui/icons/RateReview\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemIcon from \"@material-ui/core/ListItemIcon\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n '& > *': {\r\n margin: theme.spacing(1),\r\n },\r\n },\r\n extendedIcon: {\r\n marginRight: theme.spacing(1),\r\n },\r\n}));\r\n\r\nconst CmsSpeedDial = props => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const handleClick = (event, t) => {\r\n if (Boolean(anchorEl)) {\r\n handleClose();\r\n }\r\n else {\r\n setAnchorEl(event.currentTarget);\r\n }\r\n };\r\n const loadNavItems = () => {\r\n return [\r\n {\r\n icon: ,\r\n name: \"Pages\",\r\n paths: Array.isArray(props.pagePaths)\r\n ? props.pagePaths.map(p => {\r\n return { name: p.name, path: `./cms/page/${p.id}` };\r\n })\r\n : []\r\n },\r\n {\r\n icon: ,\r\n name: \"Forms\",\r\n paths: Array.isArray(props.formPaths)\r\n ? props.formPaths.map(f => {\r\n return { name: f.name, path: `./cms/form/${f.id}` };\r\n })\r\n : []\r\n }\r\n ];\r\n };\r\n let currentPath = window.location.pathname;\r\n\r\n /* const toggleDial = () => {\r\n setOpen(!open);\r\n }; */\r\n const classes = useStyles();\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n return (\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* {open ? (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n ) : null} */}\r\n
\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n const env = state.cms.enviroment;\r\n let name = \"\";\r\n if (env === sourceTypes.FORM) {\r\n name = state.form.name;\r\n } else if (env === sourceTypes.PAGE) {\r\n name = state.page.name;\r\n }\r\n return {\r\n alert: state.alert,\r\n formPaths: state.form.paths,\r\n pagePaths: state.page.paths,\r\n cms: state.cms,\r\n env,\r\n name\r\n };\r\n}\r\nexport default connect(mapStateToProps)(CmsSpeedDial);\r\n\r\nconst NavigationPopOver = props => {\r\n const [popoverOpen, setPopoverOpen] = useState(false);\r\n const toggle = () => setPopoverOpen(!popoverOpen);\r\n const { list } = props;\r\n return (\r\n
\r\n \r\n {list.map(li => {\r\n return li.paths.length > 0\r\n ? li.paths.map(p => {\r\n return (\r\n window.location.replace(p.path)}\r\n >\r\n \r\n {li.icon}\r\n \r\n \r\n \r\n );\r\n })\r\n : null;\r\n })}\r\n \r\n
\r\n );\r\n};\r\n","import React, { Suspense } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport MenuLayout from \"../../../menu/containers/MenuLayout\";\r\nimport TemplateHeader from \"../TemplateHeader/TemplateHeader\";\r\nimport TemplateFooter from \"../TemplateFooter/TemplateFooter\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { insertFonts } from \"../../../../../helpers/fontHelper\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\nimport MergeAlerter from \"../../../../components/version/MergeAlerter\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { MediaBackdrop } from \"../../components/MediaBackdrop/MediaBackdrop\";\r\nimport \"../styles/TemplateContent.css\";\r\nimport ContentWrapper from \"./Wrappers/ContentWrapper/ContentWrapper\";\r\nimport MenuWrapper from \"./Wrappers/MenuWrapper/MenuWrapper\";\r\nimport HeaderWrapper from \"./Wrappers/HeaderWrapper/HeaderWrapper\";\r\nimport FooterWrapper from \"./Wrappers/FooterWrapper/FooterWrapper\";\r\nimport CmsSpeedDial from \"../../../../components/CmsNavigation/CmsSpeedDial/CmsSpeedDial\";\r\n\r\nclass TemplateWrapper extends React.Component {\r\n state = { prevBodyBGg: \"\", headerHeight: null };\r\n componentDidMount() {\r\n if (this.props.template !== undefined) {\r\n const { template, cms } = this.props;\r\n this.props.dispatch(cmsActions.getClientFonts(template.eventId));\r\n }\r\n if (\r\n this.props.cms.editMode === true &&\r\n this.props.cms.enviroment === sourceTypes.Template\r\n ) {\r\n document.addEventListener(\"click\", this.handleClick, false);\r\n }\r\n }\r\n componentDidUpdate(prevProps, prevState) {\r\n if (\r\n this.props.template !== undefined &&\r\n prevProps.template !== this.props.template\r\n ) {\r\n const { template, cms } = this.props;\r\n this.props.dispatch(cmsActions.getClientFonts(template.eventId));\r\n }\r\n if (this.headerRef !== undefined && this.state.headerRef === null) {\r\n this.setState({ headerHeight: this.headerRef.clientHeight });\r\n }\r\n }\r\n\r\n handleClick = (e) => {\r\n const { dispatch, selectedContainer, selectedElement } = this.props;\r\n if (\r\n (this.props.asideEditorRef &&\r\n this.props.asideEditorRef.contains(e.target)) ||\r\n (this.props.sidebarRef && this.props.sidebarRef.contains(e.target))\r\n ) {\r\n return;\r\n } else if (this.props.cms.deselectionBlocked) {\r\n return;\r\n }\r\n\r\n if (selectedContainer !== null) {\r\n if (\r\n selectedContainer.parentName === \"FOOTER\" &&\r\n !this.footerRef.contains(e.target)\r\n ) {\r\n dispatch(templateActions.deselect());\r\n }\r\n }\r\n if (selectedElement !== null) {\r\n if (\r\n selectedElement.parentName === \"FOOTER\" &&\r\n !this.footerRef.contains(e.target)\r\n ) {\r\n dispatch(templateActions.deselect());\r\n }\r\n }\r\n if (selectedContainer !== null) {\r\n if (\r\n selectedContainer.parentName === \"HEADER\" &&\r\n !this.headerRef.contains(e.target)\r\n ) {\r\n dispatch(templateActions.deselect());\r\n }\r\n }\r\n if (selectedElement !== null) {\r\n if (\r\n selectedElement.parentName === \"HEADER\" &&\r\n !this.headerRef.contains(e.target)\r\n ) {\r\n dispatch(templateActions.deselect());\r\n }\r\n }\r\n };\r\n componentWillUnmount() {\r\n document.removeEventListener(\"click\", this.handleClick, false);\r\n }\r\n render() {\r\n const { template, cms, previewDevice } = this.props;\r\n const { editMode, fonts } = cms;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n {editMode ? : null}\r\n {editMode ? : null}\r\n {fonts !== undefined && (\r\n \r\n )}\r\n \r\n
(this.headerRef = r)} id=\"temp-header\">\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {this.props.children}\r\n
\r\n \r\n
(this.footerRef = r)}>\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template.template,\r\n previewDevice: state.template.previewDevice,\r\n selectedContainer: state.template.selectedContainer,\r\n selectedElement: state.template.selectedElement,\r\n cms: state.cms,\r\n isMenuModalOpen: state.template.isMenuModalOpen,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TemplateWrapper);\r\n","import Axios from \"axios\";\r\nimport { runInAction } from \"mobx\";\r\nimport React, { useContext, useEffect } from \"react\";\r\nimport Store from \"../store/Store\";\r\nimport { observer } from \"mobx-react-lite\";\r\n\r\nconst SystemLabel = observer(({ name, groupName, textOnly = false }) => {\r\n const store = useContext(Store);\r\n groupName = groupName || \"Cms.Content\";\r\n/* name = name.toUpperCase(); */\r\n const label = store.systemLabels[groupName] ? store.systemLabels[groupName][name] : null;\r\n const { lang } = store.environment;\r\n useEffect(() => {\r\n if (typeof store.systemLabels[groupName] !== \"object\" && store.systemLabels[groupName] !== \"Loading\") {\r\n getGroup();\r\n } else if (typeof store.systemLabels[groupName] === \"object\") {\r\n if (!label) createLabel();\r\n }\r\n }, [store.systemLabels[groupName], label]);\r\n function getGroup() {\r\n runInAction(() => {\r\n store.systemLabels[groupName] = \"Loading\";\r\n });\r\n Axios.get(`./api/systemLabel/group/?groupName=${groupName}&languageCode=${lang}`).then(({ data }) => {\r\n runInAction(() => {\r\n const groups = { ...store.systemLabels };\r\n const groupData = {};\r\n data.map((d) => {\r\n groupData[d.name] = d;\r\n });\r\n groups[groupName] = groupData;\r\n store.systemLabels = groups;\r\n });\r\n });\r\n }\r\n function createLabel() {\r\n runInAction(() => {\r\n store.systemLabels[groupName][name] = \"Loading\";\r\n });\r\n Axios.get(`./api/systemLabel?groupName=${groupName}&name=${name}&languageCode=${lang}`).then(({ data }) => {\r\n runInAction(() => {\r\n const groups = { ...store.systemLabels };\r\n groups[groupName][name] = data.label;\r\n store.systemLabels = groups;\r\n });\r\n });\r\n }\r\n if (textOnly) return label || label === \"Loading\" ? label.value : `#${name}#`;\r\n if (!label || label === \"Loading\") return {`#${name}#`};\r\n return {label.value};\r\n});\r\nexport default SystemLabel;\r\n","import React from 'react';\r\nimport { Spinner } from 'reactstrap'\r\nimport './SplashScreen.css';\r\nexport const SplashScreen = (props) => {\r\n return (\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n}","export const labelAlignment = (position) => {\r\n switch (position) {\r\n case 'right':\r\n return \"row-reverse\"\r\n case 'left':\r\n return \"row\"\r\n case 'center':\r\n return \"column\"\r\n default:\r\n return \"column\"\r\n }\r\n}\r\n\r\nexport const labelAlignmentButtonDisplay = (position) => {\r\n switch (position) {\r\n case 'right':\r\n return { flexDirection: 'row-reverse' }\r\n case 'left':\r\n return { flexDirection: 'row' }\r\n case 'center':\r\n return { justifyContent: 'center' }\r\n default:\r\n return { justifyContent: 'center' }\r\n }\r\n}","import React from \"react\";\r\nimport { Row, Col, Input, Button } from \"reactstrap\";\r\nimport { connect } from \"react-redux\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport ReactDragList from \"react-drag-list\";\r\nimport \"./ReactDragListStyle.css\";\r\nimport { labelHelper } from \"../../../helpers/labelHelper\";\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport { IconButton } from \"@material-ui/core\";\r\n\r\nclass SelectAddItem extends React.Component {\r\n state = {\r\n optValue: \"\",\r\n addList: false\r\n };\r\n toggleInsertMode = () => {\r\n this.setState({ addList: !this.state.addList });\r\n };\r\n addOptions = () => {\r\n const { optValue } = this.state;\r\n this.props.onAdd(optValue);\r\n this.setState({ optValue: \"\" });\r\n };\r\n addOptionsAsList = () => {\r\n const { optValue } = this.state;\r\n this.props.onListAdd(optValue);\r\n this.setState({ optValue: \"\" });\r\n };\r\n handleChange = (value) => {\r\n this.setState({ optValue: value });\r\n };\r\n handleKeyDown = (e) => {\r\n const keyCode = e.keyCode || e.which;\r\n if (keyCode === 13) {\r\n // You code when \"Enter\" is pressed\r\n if (this.state.optValue) {\r\n this.handleChange(e.target.value);\r\n this.addOptions();\r\n }\r\n }\r\n\r\n }\r\n\r\n render() {\r\n const { options } = this.props;\r\n return (\r\n
\r\n {options.length > 0 ? (\r\n \r\n this.props.onOrderChange(event, dataSource)\r\n }\r\n row={(o, index) => {\r\n let label = \"\";\r\n if (o.labels) {\r\n label = o.labels.find(\r\n ol => ol.languageCode === this.props.languageCode\r\n );\r\n } else {\r\n label = { text: o.value };\r\n }\r\n\r\n return (\r\n \r\n \r\n

{o.sortOrder}.

\r\n \r\n \r\n \r\n this.props.onEdit(\r\n e.target.innerHTML,\r\n o.optionId,\r\n this.props.languageCode\r\n )\r\n }\r\n style={{ marginTop: '3px !important' }}\r\n tagName=\"p\"\r\n className=\"ignore-click\"\r\n />\r\n \r\n \r\n this.props.onDelete(o.optionId, e)}\r\n style={{\r\n marginTop: '-10px',\r\n cursor: \"pointer\"\r\n }}>\r\n \r\n \r\n {/* */}\r\n \r\n \r\n );\r\n }}\r\n />\r\n ) : null}\r\n \r\n \r\n this.handleChange(e.target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {};\r\n}\r\n\r\nexport default connect(mapStateToProps)(SelectAddItem);\r\n","import React from \"react\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport { connect } from \"react-redux\";\r\nimport { Button, Form, FormGroup, Label, Input, FormText, Spinner } from \"reactstrap\";\r\nimport { CheckCircleOutlined, CheckBoxOutlineBlank } from \"@material-ui/icons\";\r\nimport CheckBoxTwoToneIcon from \"@material-ui/icons/CheckBoxTwoTone\";\r\nimport Media from \"react-media\";\r\n\r\nclass JirangoCheckbox2 extends React.Component {\r\n setLabelPosition = (placement, matches) => {\r\n if (matches.small || this.props.previewDevice === \"smartphone\") return { display: \"inline-flex\", lineHeight: \"40px\", flexDirection: \"row\" };\r\n switch (placement) {\r\n case \"start\":\r\n return { display: \"inline-flex\", lineHeight: \"40px\", flexDirection: \"row-reverse\" };\r\n case \"end\":\r\n return { display: \"inline-flex\", lineHeight: \"40px\", flexDirection: \"row\" };\r\n case \"top\":\r\n return { display: \"inline-flex\", flexDirection: \"column-reverse\" };\r\n case \"under\":\r\n return { display: \"inline-flex\", flexDirection: \"column\" };\r\n default:\r\n return { display: \"inline-flex\", lineHeight: \"40px\", flexDirection: \"row\" };\r\n }\r\n };\r\n setLabelTextAlignment = (placement, smartphone) => {\r\n if (smartphone || this.props.previewDevice === \"smartphone\") return \"left\";\r\n switch (placement) {\r\n case \"start\":\r\n return \"right\";\r\n case \"end\":\r\n return \"left\";\r\n case \"top\":\r\n return \"center\";\r\n case \"under\":\r\n return \"center\";\r\n default:\r\n return \"center\";\r\n }\r\n };\r\n setMargin = (inline) => {\r\n const { optionSpacing } = this.props;\r\n if (inline) return `0px ${parseInt(optionSpacing)}px`;\r\n else return `${parseInt(optionSpacing)}px 0px`;\r\n };\r\n checkAdapter = (e, id) => {\r\n if (this.props.cms.editMode) return;\r\n this.props.checkOnchange(e.target.checked, id);\r\n };\r\n drawLabel = (smartphone, isHidden) => {\r\n const { isReadonly, labelPlacement, labelName, checkboxIsDisabled, textStyle, id, editable, labelOnchange, previewDevice, systemLabel = false } = this.props;\r\n if (isHidden && !smartphone && previewDevice !== \"smartphone\") return null;\r\n else {\r\n return editable ? (\r\n \r\n labelOnchange(e.target.value, id)}\r\n style={{\r\n ...textStyle,\r\n cursor: isReadonly || checkboxIsDisabled ? \"not-allowed\" : \"pointer\",\r\n margin: \"0px\",\r\n textAlign: this.setLabelTextAlignment(labelPlacement, smartphone),\r\n minWidth: \"30px\",\r\n marginTop: labelPlacement === \"start\" || labelPlacement === \"end\" || smartphone || previewDevice === \"smartphone\" ? \"15px\" : \"unset\" /* cursor: 'pointer', */,\r\n lineHeight: labelPlacement === \"start\" || labelPlacement === \"end\" || smartphone || previewDevice === \"smartphone\" ? \"19px\" : \"unset\" /* cursor: 'pointer' */,\r\n }}\r\n html={labelName !== \"\" ? labelName : \"  \"}\r\n className=\"cms-edit-label\"\r\n tagName=\"p\"\r\n />\r\n \r\n ) : (\r\n \r\n {systemLabel ? :
}\r\n

\r\n );\r\n }\r\n };\r\n render() {\r\n const {\r\n labelPlacement = \"end\",\r\n editable,\r\n labelname,\r\n textStyle,\r\n id,\r\n hideCheckbox,\r\n labelOnchange,\r\n checkOnchange,\r\n labelName = \"text\",\r\n isSelected = false,\r\n checkboxIsDisabled,\r\n boxType,\r\n boxStyle,\r\n previewDevice,\r\n loaderIcon = false,\r\n replacementContent,\r\n isReadonly,\r\n optionSpacing = null,\r\n inline = false,\r\n hideLabels = false,\r\n cms,\r\n } = this.props;\r\n return (\r\n \r\n \r\n {(matches) => (\r\n \r\n {boxType === \"checkbox\" ? (\r\n !hideCheckbox ? (\r\n : }\r\n disableRipple={checkboxIsDisabled || isReadonly}\r\n id={\"my-input\"}\r\n checked={isSelected}\r\n style={{\r\n color: boxStyle.backgroundColor,\r\n opacity: !cms.editMode && (isReadonly || checkboxIsDisabled) ? \"0.5\" : 1,\r\n cursor: !cms.editMode && (isReadonly || checkboxIsDisabled) ? \"not-allowed\" : \"pointer\",\r\n }}\r\n onChange={(e) => (!checkboxIsDisabled && !isReadonly ? this.checkAdapter(e, id) : null)}\r\n color=\"primary\"\r\n />\r\n ) : (\r\n replacementContent\r\n )\r\n ) : (\r\n (!checkboxIsDisabled && !isReadonly ? this.checkAdapter(e, id) : null)}\r\n color=\"primary\"\r\n />\r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n language: state.language,\r\n template: state.template,\r\n form: state.form,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(JirangoCheckbox2);\r\n\r\nconst editableLabel = (editable, onChange, style = {}, value) => {\r\n return editable ? (\r\n \r\n onChange(e)} style={{ ...style, margin: \"0px\" }} html={value} tagName=\"p\" />\r\n \r\n ) : (\r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col,\r\n Button,\r\n FormFeedback,\r\n Input\r\n} from \"reactstrap\";\r\nimport ReactDragList from \"react-drag-list\";\r\nimport Select from \"react-select\";\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport \"./Options.css\";\r\nimport SelectAddItem from \"../../../../components/selects/SelectAddItem\";\r\nimport { attendeeActions } from \"../../../../../store/actions/attendee/attendee.action\";\r\nimport Popover from '@material-ui/core/Popover';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport FormGroup from '@material-ui/core/FormGroup';\r\nimport JirangoCheckbox2 from \"../../../../../components/UI/Checkbox/JirangoCheckbox2\";\r\nimport Media from 'react-media';\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\n\r\nconst useStyles = makeStyles({});\r\n\r\nconst defaultOption = {\r\n isChanged: false,\r\n isSelected: false,\r\n isDeleted: false,\r\n labels: [],\r\n optionId: -1,\r\n sortOrder: -1,\r\n className: \"default-checkbox\"\r\n};\r\nclass Options extends React.PureComponent {\r\n select = option => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.selectOption(option));\r\n };\r\n removeOption = (optionId, e) => {\r\n e.stopPropagation();\r\n const element = deepClone(this.props.parent);\r\n element.props.options.map(o => {\r\n if (o.optionId == optionId) {\r\n o.isDeleted = !(o.isDeleted || false);\r\n }\r\n });\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n addOption = (value = null) => {\r\n const element = deepClone(this.props.parent);\r\n const { form } = this.props;\r\n const { eventCodes } = this.props.language;\r\n const option = deepClone(defaultOption);\r\n if (eventCodes) {\r\n for (let j = 0; j < eventCodes.length; j++) {\r\n if (!value) {\r\n option.labels.push({\r\n text: \"\",\r\n languageCode: eventCodes[j].code,\r\n isValid: false\r\n });\r\n } else {\r\n option.labels.push({\r\n text:\r\n value +\r\n (eventCodes[j].code == form.languageCode\r\n ? \"\"\r\n : \"(\" + eventCodes[j].code + \")\"),\r\n languageCode: eventCodes[j].code,\r\n isValid: false\r\n });\r\n }\r\n }\r\n }\r\n option.sortOrder =\r\n element.props.options.length > 0 ? element.props.options.length + 1 : 1;\r\n option.optionId = option.sortOrder * -1;\r\n element.props.options.push(option);\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n addListOptions = value => {\r\n const options = value.split(\"\\n\");\r\n const { eventCodes } = this.props.language;\r\n const { form } = this.props;\r\n const element = deepClone(this.props.parent);\r\n options.map(o => {\r\n if (o !== \"\") {\r\n if (eventCodes) {\r\n let sortOrder =\r\n element.props.options.length > 0\r\n ? element.props.options.length + 1\r\n : 1;\r\n\r\n let option = deepClone(defaultOption);\r\n for (let j = 0; j < eventCodes.length; j++) {\r\n option.labels.push({\r\n text:\r\n o +\r\n (eventCodes[j] == form.languageCode\r\n ? \"\"\r\n : \"(\" + eventCodes[j] + \")\"),\r\n languageCode: eventCodes[j],\r\n isValid: false\r\n });\r\n }\r\n option.optionId = sortOrder * -1;\r\n option.sortOrder = sortOrder;\r\n element.props.options.push(option);\r\n }\r\n }\r\n });\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n handleChange = (value, optionId) => {\r\n const { parent, attendee, dispatch } = this.props;\r\n let isSelected = false;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = deepClone(attendee.orders[attendee.activePersonNo]);\r\n\r\n if (!order.answer) {\r\n order.answer = [];\r\n }\r\n let answer = order.answer.find(a => a.questionId == parent.id);\r\n if (!answer) {\r\n answer = {\r\n answerId: 0,\r\n interactionKey: null,\r\n orderId: 0,\r\n questionId: parent.id,\r\n answerRow: []\r\n };\r\n order.answer.push(answer);\r\n }\r\n if (!answer.answerRow) {\r\n answer.answerRow = [];\r\n }\r\n if (value === true && parent.props.requiredMax === 1) {\r\n answer.answerRow.map(ar => (ar.deleted = true));\r\n }\r\n let row = answer.answerRow.find(ar => ar.questionOptionId == optionId);\r\n if (row) {\r\n row.deleted = !value;\r\n } else {\r\n answer.answerRow.push({\r\n answerId: answer.answerId,\r\n answerRowId: 0,\r\n questionOptionId: optionId,\r\n text: null,\r\n deleted: false\r\n });\r\n }\r\n answer.answerRow = answer.answerRow.filter(ar => {\r\n return !ar.deleted;\r\n });\r\n console.log(\"option\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(order, attendee.activePersonNo));\r\n }\r\n clearTimeout(this.validateTimeout);\r\n this.validateTimeout = setTimeout(this.props.validateOptions, 200);\r\n };\r\n labelOnChange = (val, optionId, languageCode = 'swe') => {\r\n const { parent } = this.props;\r\n let element = deepClone(parent);\r\n element.props.options.map(o => {\r\n if (o.optionId == optionId) {\r\n o.isChanged = true;\r\n o.labels.map(ol => {\r\n if (ol.languageCode == languageCode) {\r\n ol.text = val;\r\n }\r\n });\r\n }\r\n });\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n\r\n handleOrderChange = (event, dataSource) => {\r\n const element = deepClone(this.props.parent);\r\n const sortedOptions = dataSource.map((ds, i) => {\r\n let el = Object.assign({}, ds);\r\n el.sortOrder = i + 1;\r\n el.isChanged = true;\r\n return el;\r\n });\r\n element.props.options = sortedOptions;\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n isParentSelected = () => {\r\n const { parent, selectedElement } = this.props;\r\n return (\r\n selectedElement &&\r\n selectedElement.contentId &&\r\n (selectedElement.contentId === parent.contentId ? true : false)\r\n );\r\n };\r\n sortOptions = () => {\r\n const { form, parent } = this.props;\r\n if (parent.props.options.length === 0) return [];\r\n let options = Array.from(parent.props.options);\r\n if (parent.data.sortType === \"ALPHA\") {\r\n options.sort(function (a, b) {\r\n let textA = \"\";\r\n let textB = \"\";\r\n if (a.labels && a.labels.length > 0) {\r\n let labelA = a.labels.find(l => {\r\n return l.languageCode === form.languageCode;\r\n });\r\n if (labelA) {\r\n textA = labelA.text.toUpperCase();\r\n }\r\n }\r\n if (b.labels && b.labels.length > 0) {\r\n let labelB = b.labels.find(l => {\r\n return l.languageCode === form.languageCode;\r\n });\r\n if (labelB) {\r\n textB = labelB.text.toUpperCase();\r\n }\r\n }\r\n if (textA < textB) return -1;\r\n else if (textA > textB) return 1;\r\n else return 0;\r\n });\r\n } else {\r\n options.sort((a, b) => {\r\n return a.sortOrder - b.sortOrder;\r\n });\r\n }\r\n return options;\r\n };\r\n\r\n getIsSelected = optionId => {\r\n const { parent, attendee } = this.props;\r\n let isSelected = false;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n if (order.answer) {\r\n let answer = order.answer.find(a => a.questionId == parent.id);\r\n if (answer && answer.answerRow && answer.answerRow.length > 0) {\r\n let row = answer.answerRow.find(\r\n ar => ar.questionOptionId == optionId\r\n );\r\n if (row && !row.deleted) {\r\n isSelected = true;\r\n }\r\n }\r\n }\r\n }\r\n return isSelected;\r\n };\r\n render() {\r\n const { form, parent, template, selectedElement, cms, previewDevice } = this.props;\r\n let options = this.sortOptions();\r\n const parentSelected = this.isParentSelected();\r\n if (parent === undefined) return null;\r\n return (\r\n \r\n {options !== undefined ? (\r\n \r\n {parent.data.displayType === \"CHECKBOX\" ? (\r\n \r\n \r\n \r\n {matches => (\r\n \r\n \r\n this.handleOrderChange(event, dataSource)\r\n }\r\n\r\n row={(o, index) => {\r\n return (\r\n \r\n \r\n this.select(o)}\r\n >\r\n 0 &&\r\n o.labels.find(l => {\r\n return (l.languageCode.code || l.languageCode ) === form.languageCode;\r\n }).text\r\n }\r\n textStyle={{\r\n ...template.template.content.text,\r\n textDecorationLine: o.isDeleted\r\n ? \"line-through\"\r\n : 'initial',\r\n color: cms.editMode && o.isDeleted\r\n ? \"red\"\r\n : template.template.content.text.color\r\n }}\r\n previewDevice={template.previewDevice}\r\n optionSpacing={parent.data.optionSpacing}\r\n inline={parent.data.inline}\r\n boxStyle={{\r\n ...template.template.content.button\r\n }}\r\n checkboxIsDisabled={parent.data.readOnly || cms.editMode || (!cms.editMode && this.props.isChangeLocked())}\r\n labelPlacement={parent.data.checkboxLabelPlacement}\r\n labelOnchange={this.labelOnChange}\r\n id={o.optionId}\r\n boxType={\r\n parent.props.requiredMax === 1\r\n ? \"radio\"\r\n : \"checkbox\"\r\n }\r\n hideLabels={parent.data.hideCheckboxLabels}\r\n checkOnchange={this.handleChange}\r\n isSelected={this.getIsSelected(o.optionId)} />\r\n
\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {!parent.isValid\r\n ? parent.data.validation.message\r\n : /* \"\" */\r\n null}\r\n {parent.forceValidationMessage ? this.forceValidate() : \"\"}\r\n \r\n \r\n {cms.editMode &&\r\n selectedElement &&\r\n parent &&\r\n selectedElement.contentId === parent.contentId ? (\r\n \r\n setTimeout(() => this.props.dispatch(cmsActions.blockDeselect(false)), 2000)}\r\n block={() => this.props.dispatch(cmsActions.blockDeselect(true))}>\r\n \r\n \r\n \r\n ) : null}\r\n \r\n ) : null}\r\n\r\n {parent.data.displayType === \"SELECT\" ? (\r\n \r\n \r\n \r\n this.handleChange(true, selectedOption.value)\r\n }\r\n onBlur={this.handleBlur}\r\n isDisabled={parent.data.readOnly || false}\r\n options={this.sortOptions().map((o, i) => {\r\n return {\r\n value: o.optionId,\r\n label:\r\n o.labels &&\r\n o.labels.length > 0 &&\r\n o.labels.find(l => {\r\n return l.languageCode === form.languageCode;\r\n }).text\r\n };\r\n })}\r\n placeholder=\"\"\r\n styles={{\r\n control: styles => ({\r\n ...styles,\r\n borderColor:\r\n (template.template !== undefined &&\r\n template.template.content.input.borderColor) ||\r\n \"unset\",\r\n borderRadius:\r\n (template.template !== undefined &&\r\n template.template.content.input.borderRadius) ||\r\n \"unset\",\r\n fontFamily:\r\n (template.template !== undefined &&\r\n template.template.content.input.fontFamily) ||\r\n \"unset\",\r\n fontWeight:\r\n (template.template !== undefined &&\r\n template.template.content.input.fontWeight) ||\r\n \"unset\",\r\n margin:\r\n (template.template !== undefined &&\r\n template.template.content.input.margin) ||\r\n \"unset\",\r\n boxShadow:\r\n (template.template !== undefined &&\r\n template.template.content.input.boxShadow) ||\r\n \"unset\",\r\n fontSize:\r\n (template.template !== undefined &&\r\n template.template.content.input.fontSize) ||\r\n \"unset\",\r\n color:\r\n (template.template !== undefined &&\r\n template.template.content.input.color) ||\r\n \"unset\",\r\n backgroundColor:\r\n (template.template !== undefined &&\r\n template.template.content.input.backgroundColor) ||\r\n \"unset\",\r\n maxWidth: \"100%\"\r\n }),\r\n menu: styles => ({\r\n ...styles,\r\n maxWidth: \"100%\"\r\n }),\r\n option: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template.template !== undefined &&\r\n template.template.content.text.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template.template !== undefined &&\r\n template.template.content.text.fontFamily) ||\r\n \"unset\"\r\n }),\r\n placeholder: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template.template !== undefined &&\r\n template.template.content.text.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template.template !== undefined &&\r\n template.template.content.text.fontFamily) ||\r\n \"unset\"\r\n })\r\n }}\r\n />\r\n \r\n\r\n \r\n \r\n \r\n {parent.isValid === false ? parent.data.validation.message : null}\r\n \r\n \r\n\r\n {cms.editMode &&\r\n selectedElement &&\r\n parent &&\r\n selectedElement.contentId === parent.contentId ? (\r\n \r\n setTimeout(() => this.props.dispatch(cmsActions.blockDeselect(false)), 2000)}\r\n block={() => this.props.dispatch(cmsActions.blockDeselect(true))}>\r\n \r\n \r\n \r\n ) : null}\r\n \r\n ) : null}\r\n \r\n ) : null}\r\n \r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n previewDevice: state.template.previewDevice,\r\n language: state.language,\r\n template: state.template,\r\n form: state.form,\r\n cms: state.cms,\r\n attendee: state.attendee\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Options);\r\n\r\nfunction OptionPopOver(props) {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const classes = useStyles(props);\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n props.block();\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n props.unblock();\r\n };\r\n\r\n const open = Boolean(anchorEl);\r\n const id = open ? 'simple-popover' : undefined;\r\n\r\n return (\r\n
\r\n \r\n {\" \"}\r\n \r\n \r\n \r\n {props.children}\r\n \r\n
\r\n );\r\n}\r\n\r\n\r\n\r\n","import React from 'react';\r\n\r\nconst IsRequiredSymbol = (props) => {\r\n const { condition } = props;\r\n\r\n return (\r\n \r\n {condition &&

*

}\r\n
\r\n )\r\n}\r\n\r\nexport default IsRequiredSymbol;","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport Options from \"./Options/Options\";\r\nimport { Row, Col, Input, FormFeedback } from \"reactstrap\";\r\nimport { labelAlignment } from \"../../../helpers/labelAlignment\";\r\nimport { inputValidator } from \"../../../../helpers/inputVaildator\";\r\nimport IsRequiredSymbol from \"../../../../components/UI/Form/IsRequiredSymbol\";\r\nimport { conditionActions } from \"../../../../store/actions/cms/condition.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\n\r\nclass Question extends React.Component {\r\n componentDidMount() {\r\n if (this.props.updateValidator && typeof this.props.updateValidator === 'function') {\r\n this.props.updateValidator(this.updateValidator);\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (\r\n this.props.updateValidator &&\r\n typeof this.props.updateValidator === \"function\"\r\n ) {\r\n this.props.updateValidator(this.updateValidator, true);\r\n }\r\n }\r\n updateValidator = () => {\r\n if (\r\n this.props.getValidator &&\r\n typeof this.props.getValidator === \"function\"\r\n ) {\r\n this.props.getValidator(() => this.validateField());\r\n this.props.getValidator(() => this.validateOptions());\r\n }\r\n }\r\n isChangeLocked = () => {\r\n const { element, attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined && element.data.changeLock) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n validateField = () => {\r\n const input = this.getFieldValue();\r\n const { element, dispatch, cms } = this.props;\r\n let isValid = true;\r\n let errorMessage = \"\";\r\n\r\n if (element.data.readOnly || element.data.hidden) {\r\n isValid = false;\r\n return { isValid };\r\n }\r\n if (element.data.required && input.toString().replace(/\\s/g, \"\").length) {\r\n isValid = false;\r\n }\r\n if (\r\n element.data.minCharacters > 0 &&\r\n input.length < element.data.minCharacters\r\n ) {\r\n isValid = false;\r\n }\r\n if (element.data.validation.type !== \"none\") {\r\n isValid = inputValidator(input, element.data.validation.type);\r\n }\r\n if (element.isValid !== isValid) {\r\n let newElement = deepClone(element);\r\n newElement.isValid = isValid;\r\n dispatch(formActions.updateFormElement(newElement));\r\n }\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n return isValid;\r\n };\r\n validateOptions = () => {\r\n const { element, dispatch, cms } = this.props;\r\n let isValid = true;\r\n\r\n if (element.data.readOnly || element.data.hidden) {\r\n isValid = true;\r\n return isValid;\r\n }\r\n\r\n let min = element.props.requiredMin;\r\n let max = element.props.requiredMax;\r\n\r\n const checkedCount = this.getCheckedCount();\r\n\r\n if ((element.data.required && checkedCount === 0)\r\n || (min > 0 && checkedCount < min)\r\n || (max > 0 && checkedCount > max)) {\r\n isValid = false;\r\n }\r\n\r\n if (element.isValid !== isValid) {\r\n let newElement = deepClone(element);\r\n newElement.isValid = isValid;\r\n dispatch(formActions.updateFormElement(newElement));\r\n }\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n return isValid;\r\n };\r\n getCheckedCount = () => {\r\n const { element, attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n if (order.answer) {\r\n let answer = order.answer.find(a => a.questionId == element.id);\r\n if (answer && answer.answerRow && answer.answerRow.length > 0) {\r\n let rows = answer.answerRow.filter(\r\n ar => ar.questionOptionId != 0 && !ar.deleted\r\n );\r\n return rows.length;\r\n }\r\n }\r\n }\r\n return 0;\r\n };\r\n handleUpdate = element => {\r\n const { dispatch, cms } = this.props;\r\n element.forceValidationMessage = false;\r\n dispatch(formActions.updateFormElement(element));\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n };\r\n handleChange = (e, path) => {\r\n const { form } = this.props;\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.element);\r\n\r\n if (names[1] === \"labels\") {\r\n element.props.labels.map(l => {\r\n if (l.languageCode === form.languageCode) {\r\n l.text = e.target.value;\r\n }\r\n });\r\n } else if (names[1] === \"subInputs\") {\r\n element.props.subInputs.map(l => {\r\n if (l.languageCode === form.languageCode) {\r\n l.text = e.target.value;\r\n }\r\n });\r\n } else if (names[1] === \"subLabels\") {\r\n element.props.subLabels.map(l => {\r\n if (l.languageCode === form.languageCode) {\r\n l.text = e.target.value;\r\n }\r\n });\r\n } else {\r\n element[names[0]][names[1]] = e.target.value;\r\n }\r\n this.handleUpdate(element);\r\n };\r\n\r\n handleValueChange = value => {\r\n const { element, attendee, dispatch } = this.props;\r\n\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = deepClone(attendee.orders[attendee.activePersonNo]);\r\n\r\n if (!order.answer) order.answer = [];\r\n let answer = order.answer.find(a => a.questionId == element.id);\r\n if (!answer) {\r\n answer = {\r\n answerId: -1,\r\n interactionKey: null,\r\n orderId: -1,\r\n questionId: element.id,\r\n answerRow: []\r\n };\r\n order.answer.push(answer);\r\n }\r\n if (!answer.answerRow) answer.answerRow = [];\r\n let row = answer.answerRow.find(\r\n ar => !ar.questionOptionId || ar.questionOptionId == 0\r\n );\r\n if (row) {\r\n row.text = value;\r\n } else {\r\n answer.answerRow.push({\r\n answerId: -1,\r\n answerRowId: -1,\r\n questionOptionId: 0,\r\n text: value,\r\n deleted: false\r\n });\r\n }\r\n console.log(\"question\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(order, attendee.activePersonNo));\r\n }\r\n clearTimeout(this.validateTimeout);\r\n this.validateTimeout = setTimeout(this.validateField, 200);\r\n };\r\n getFieldValue = () => {\r\n const { element, attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n if (order.answer) {\r\n let answer = order.answer.find(a => a.questionId == element.id);\r\n if (answer && answer.answerRow && answer.answerRow.length > 0) {\r\n let row = answer.answerRow.find(ar => ar.questionOptionId == 0);\r\n if (row && !row.deleted) {\r\n return row.text;\r\n }\r\n }\r\n }\r\n }\r\n return \"\";\r\n };\r\n handleBlur = () => { };\r\n\r\n getQuestionLabels = () => {\r\n const element = deepClone(this.props.element);\r\n const { form } = this.props;\r\n const questionLabel =\r\n element &&\r\n element.props.labels &&\r\n element.props.labels.find(l => {\r\n return l.languageCode === form.languageCode && l.text ? l : \"\";\r\n });\r\n const questionSubLabel =\r\n element &&\r\n element.props.subLabels &&\r\n element.props.subLabels.find(l => {\r\n return l.languageCode === form.languageCode && l.text ? l : \"\";\r\n });\r\n const questionSubInput =\r\n element &&\r\n element.props.subInputs &&\r\n element.props.subInputs.find(l => {\r\n return l && l.languageCode === form.languageCode && l.text ? l : \"\";\r\n });\r\n\r\n return { questionLabel, questionSubInput, questionSubLabel };\r\n };\r\n\r\n render() {\r\n const { element, form, cms } = this.props;\r\n const { template, previewDevice } = this.props.template;\r\n const {\r\n questionLabel,\r\n questionSubInput,\r\n questionSubLabel\r\n } = this.getQuestionLabels();\r\n\r\n if (element && element.data && element.data.hidden && !cms.editMode)\r\n return null;\r\n else\r\n return element ? (\r\n \r\n {element.data.hidden && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n \r\n
\r\n this.handleChange(e, \"props.labels\")}\r\n tagName=\"label\"\r\n disabled={!cms.editMode}\r\n html={\r\n questionLabel && questionLabel !== undefined\r\n ? questionLabel.text\r\n : \"\"\r\n }\r\n />\r\n 0 ||\r\n element.data.required ||\r\n element.data.minCharacters > 0\r\n }\r\n />\r\n
\r\n {element.data.showSubLabel && (\r\n this.handleChange(e, \"props.subLabels\")}\r\n tagName=\"p\"\r\n />\r\n )}\r\n \r\n\r\n \r\n {element.props.type === \"Text\" ? (\r\n \r\n this.handleValueChange(e.target.value)}\r\n valid={element.isValid === true}\r\n invalid={element.isValid === false}\r\n />\r\n \r\n {element.isValid === false ? element.data.validation.message : null}\r\n \r\n {element.data.showSubInput && (\r\n this.handleChange(e, \"props.subInputs\")}\r\n tagName=\"p\"\r\n />\r\n )}\r\n \r\n ) : (\r\n
\r\n \r\n {element.data.showSubInput && (\r\n this.handleChange(e, \"props.subInputs\")}\r\n tagName=\"p\"\r\n />\r\n )}\r\n
\r\n )}\r\n \r\n \r\n \r\n ) : null;\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n form: state.form,\r\n template: state.template,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Question);\r\n","import React from \"react\";\r\n\r\nconst FakeInput = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default FakeInput;","import React, { useState, useEffect } from 'react';\r\nimport { handleResponse } from '../../helpers/handleresponse';\r\nimport Select from 'react-select';\r\n\r\nexport const CountryList = (props) => {\r\n const [countryList, setCountries] = useState([]);\r\n /* const [countries, setCountriesBase] = useState([]); */\r\n useEffect(() => {\r\n if (!countryList || countryList.length < 1) {\r\n getCountries();\r\n }\r\n }, []);\r\n const getCountries = () => {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n };\r\n fetch(`./api/country/`, requestOptions)\r\n .then(handleResponse)\r\n .then(countries => {\r\n let countryList = [];\r\n /* setCountriesBase(countries) */\r\n countryList.push({ value: 0, label: '' })\r\n countries.map(c => {\r\n countryList.push({ value: c.countryId, label: props.languageCode === 'swe' || props.languageCode === undefined ? c.nameSwe : c.nameInt });\r\n });\r\n\r\n setCountries(countryList)\r\n });\r\n }\r\n\r\n const { onChange, isReadOnly, template, value, element, width } = props;\r\n return (\r\n
\r\n onChange(selectedOption, \"props.text\", element)}\r\n isDisabled={isReadOnly || false}\r\n options={\r\n countryList\r\n }\r\n placeholder=\"\"\r\n styles={{\r\n control: styles => ({\r\n ...styles,\r\n borderColor:\r\n (template !== undefined &&\r\n template.content.input.borderColor) ||\r\n \"unset\",\r\n borderRadius:\r\n (template !== undefined &&\r\n template.content.input.borderRadius) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\",\r\n fontWeight:\r\n (template !== undefined &&\r\n template.content.input.fontWeight) ||\r\n \"unset\",\r\n margin:\r\n (template !== undefined &&\r\n template.content.input.margin) ||\r\n \"unset\",\r\n boxShadow:\r\n (template !== undefined &&\r\n template.content.input.boxShadow) ||\r\n \"unset\",\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.fontSize) ||\r\n \"unset\",\r\n color:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n backgroundColor:\r\n (template !== undefined &&\r\n template.content.input.backgroundColor) ||\r\n \"unset\",\r\n maxWidth: \"100%\"\r\n }),\r\n menu: styles => ({\r\n ...styles,\r\n maxWidth: \"100%\"\r\n }),\r\n input: styles => ({\r\n ...styles,\r\n color:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.fontSize) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n }),\r\n singleValue: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.fontSize) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\",\r\n color:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n }),\r\n option: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n }),\r\n placeholder: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n })\r\n }}\r\n value={countryList.find(t => { return t.value === value })}\r\n />\r\n
\r\n )\r\n}","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport {\r\n Row,\r\n Col,\r\n Input,\r\n FormFeedback,\r\n UncontrolledPopover,\r\n Button,\r\n PopoverBody,\r\n} from \"reactstrap\";\r\nimport { labelAlignment } from \"../../../helpers/labelAlignment\";\r\nimport FakeInput from \"../../../../components/UI/Input/FakeInput\";\r\nimport { inputValidator } from \"../../../../helpers/inputVaildator\";\r\nimport IsRequiredSymbol from \"../../../../components/UI/Form/IsRequiredSymbol\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { conditionActions } from \"../../../../store/actions/cms/condition.action\";\r\nimport Select from \"react-select\";\r\nimport SelectAddItem from \"../../../components/selects/SelectAddItem\";\r\nimport { deepClone, toCamelCase } from \"../../../../helpers/objectHelper\";\r\nimport { CountryList } from \"../../../../system/CountryList/CountryList\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\n\r\nclass Field extends React.Component {\r\n componentDidMount() {\r\n if (\r\n this.props.updateValidator &&\r\n typeof this.props.updateValidator === \"function\"\r\n ) {\r\n this.props.updateValidator(this.updateValidator);\r\n }\r\n }\r\n componentDidUpdate(prevProps){\r\n if(this.props.attendee.activePersonNo != prevProps.attendee.activePersonNo){\r\n this.validateField();\r\n }\r\n }\r\n isChangeLocked = () => {\r\n const { element, attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined && element.data.changeLock) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n updateValidator = () => {\r\n if (\r\n this.props.getValidator &&\r\n typeof this.props.getValidator === \"function\"\r\n ) {\r\n this.props.getValidator(() => this.validateField());\r\n }\r\n }\r\n validateField = () => {\r\n let input = this.getFieldValue();\r\n const element = deepClone(this.props.element);\r\n let isValid = true;\r\n if (element.props.labels[0].text === 'Avdelning') {\r\n }\r\n if (element.data.readOnly || element.data.hidden) {\r\n isValid = true;\r\n return isValid;\r\n }\r\n\r\n if (element.data.required === true && input.length === 0) {\r\n isValid = false;\r\n }\r\n\r\n if (input !== null) {\r\n isValid = (input && input.length >= element.props.length) ||\r\n (input === '' && element.props.length === 0)/* ? true : false */;\r\n if (isValid && element.data.validation.type !== \"none\") {\r\n isValid = inputValidator(input, element.data.validation.type);\r\n }\r\n }\r\n if ((this.props.element.props.name == 'CountryId' && !isNaN(parseInt(input)) && parseInt(input) > 0) || (this.props.element.props.name == 'CountryId' && input == 0)) {\r\n isValid = true;\r\n }\r\n if (this.props.element.isValid !== isValid) {\r\n element.isValid = isValid;\r\n this.handleUpdate(element);\r\n }\r\n return isValid;\r\n };\r\n handleUpdate = element => {\r\n const { dispatch, cms } = this.props;\r\n element.forceValidationMessage = false;\r\n dispatch(formActions.updateFormElement(element));\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n };\r\n\r\n handleChange(e, path) {\r\n const { form } = this.props;\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.element);\r\n if (names[1] === \"labels\") {\r\n element.props.labels.map(l => {\r\n if (l.languageCode === form.languageCode) {\r\n l.text = e.target.value;\r\n }\r\n });\r\n } else if (names[1] === \"subInputs\") {\r\n element.props.subInputs.map(l => {\r\n if (l.languageCode === form.languageCode) {\r\n l.text = e.target.value;\r\n }\r\n });\r\n } else if (names[1] === \"subLabels\") {\r\n element.props.subLabels.map(l => {\r\n if (l.languageCode === form.languageCode) {\r\n l.text = e.target.value;\r\n }\r\n });\r\n } else {\r\n element[names[0]][names[1]] = e.target.value;\r\n }\r\n this.handleUpdate(element);\r\n }\r\n\r\n componentWillUnmount() {\r\n if (\r\n this.props.updateValidator &&\r\n typeof this.props.updateValidator === \"function\"\r\n ) {\r\n this.props.updateValidator(this.updateValidator, true);\r\n }\r\n }\r\n getFieldLabels = () => {\r\n const { form, element } = this.props;\r\n const fieldLabel =\r\n element &&\r\n element.props.labels &&\r\n element.props.labels.find(l => {\r\n return l.languageCode === form.languageCode && l.text ? l : \"\";\r\n });\r\n const fieldSubLabel =\r\n element &&\r\n element.props.subLabels &&\r\n element.props.subLabels.find(l => {\r\n return l.languageCode === form.languageCode && l.text ? l : \"\";\r\n });\r\n const fieldSubInput =\r\n element &&\r\n element.props.subInputs &&\r\n element.props.subInputs.find(l => {\r\n return l && l.languageCode === form.languageCode && l.text ? l : \"\";\r\n });\r\n\r\n return { fieldLabel, fieldSubInput, fieldSubLabel };\r\n };\r\n handleSelectOnChange = (o, path, /* el, lang */) => {\r\n this.handleValueChange(o.value)\r\n };\r\n handleOptionEdit = (value, index) => {\r\n const element = deepClone(this.props.element);\r\n element.data.selectOptions.splice(index, 1, {\r\n value: value,\r\n sortOrder: index + 1\r\n });\r\n this.handleUpdate(element);\r\n };\r\n addOptions = value => {\r\n const element = deepClone(this.props.element);\r\n const sortOrder =\r\n element.data.selectOptions.length > 0\r\n ? element.data.selectOptions.length + 1\r\n : 1;\r\n element.data.selectOptions.push({ value: value, sortOrder: sortOrder });\r\n\r\n this.handleUpdate(element);\r\n };\r\n addListOptions = value => {\r\n const options = value.split(\"\\n\");\r\n const element = deepClone(this.props.element);\r\n options.map(o => {\r\n if (o !== \"\") {\r\n let sortOrder =\r\n element.data.selectOptions.length > 0\r\n ? element.data.selectOptions.length + 1\r\n : 1;\r\n element.data.selectOptions.push({ value: o, sortOrder: sortOrder });\r\n }\r\n });\r\n this.handleUpdate(element);\r\n };\r\n removeOption = index => {\r\n const element = deepClone(this.props.element);\r\n element.data.selectOptions.splice(index, 1);\r\n element.data.selectOptions.sort().map((o, i) => {\r\n let opt = deepClone(o);\r\n opt.sortOrder = i + 1;\r\n return opt;\r\n });\r\n this.handleUpdate(element);\r\n };\r\n\r\n handleOrderChange = (event, dataSource) => {\r\n const element = deepClone(this.props.element);\r\n const sortedOptions = dataSource.map((ds, i) => {\r\n let el = Object.assign({}, ds);\r\n el.sortOrder = i + 1;\r\n return el;\r\n });\r\n element.data.selectOptions = sortedOptions;\r\n this.handleUpdate(element);\r\n };\r\n sortOptions = () => {\r\n if (this.props.element.data.selectOptions.length === 0) return [];\r\n if (this.props.element.data.sortType === \"ALPHA\") {\r\n return this.props.element.data.selectOptions.sort(function (a, b) {\r\n var textA = a.value.toUpperCase();\r\n var textB = b.value.toUpperCase();\r\n return textA < textB ? -1 : textA > textB ? 1 : 0;\r\n });\r\n }\r\n return this.props.element.data.selectOptions.sort(function (a, b) {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n });\r\n };\r\n handleValueChange = (value/* , lang = null */) => {\r\n const { element, attendee, dispatch, cms } = this.props;\r\n if (attendee && attendee.orders) {\r\n /* if(lang){\r\n attendee.orders.languageCode = lang.toLowerCase();\r\n } */\r\n let order = attendee.orders[attendee.activePersonNo];\r\n\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(element.props.type)];\r\n let newType = undefined;\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n newType[toCamelCase(element.props.name)] = value;\r\n newOrder[toCamelCase(element.props.type)] = newType;\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n }\r\n clearTimeout(this.validateTimeout);\r\n this.validateTimeout = setTimeout(() => {\r\n this.validateField()\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n }, 200);\r\n };\r\n getFieldValue = () => {\r\n const { element, attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n let type = order[toCamelCase(element.props.type)];\r\n if (type) {\r\n let val = type[toCamelCase(element.props.name)];\r\n if (val) {\r\n return val;\r\n }\r\n }\r\n }\r\n return \"\";\r\n };\r\n\r\n render() {\r\n const { form, selectedElement, cms, element, } = this.props;\r\n const { template, previewDevice } = this.props.template;\r\n const { fieldLabel, fieldSubInput, fieldSubLabel } = this.getFieldLabels();\r\n let isReadOnly = element.data.readOnly || (!cms.editMode && this.isChangeLocked());\r\n if (element && element.data && element.data.hidden && !cms.editMode)\r\n return null;\r\n\r\n return (\r\n \r\n {element.data.hidden && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n
\r\n this.handleChange(e, \"props.labels\")}\r\n tagName=\"label\"\r\n />\r\n 0 || element.data.required}\r\n />\r\n
\r\n {element.data.showSubLabel && (\r\n this.handleChange(e, \"props.subLabels\")}\r\n tagName=\"p\"\r\n />\r\n )}\r\n \r\n \r\n {element.props.name === \"CountryId\" ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {element.isValid === false ? element.data.validation.message : null}\r\n \r\n \r\n ) : null}\r\n {element.data.displayType === \"TEXT\" &&\r\n element.props.name !== \"CountryId\" ? (\r\n \r\n this.handleValueChange(e.target.value)}\r\n autoComplete=\"off\"\r\n autoFocus={false}\r\n readOnly={isReadOnly}\r\n required={element.data.required || false}\r\n value={this.getFieldValue()}\r\n style={\r\n template && {\r\n ...template.content.input,\r\n width: cms.editMode && previewDevice === 'smartphone' ? '100%' : (element.data.style.width.toString().includes('%') ? element.data.style.width : element.data.style.width + '%'),\r\n wordBreak: \"break-word\",\r\n opacity: isReadOnly ? template.content.input.readOnlyOpacity : 1,\r\n fontSize: template.content.input.fontSize /* + ' !important' */\r\n\r\n }\r\n }\r\n maxLength={element.data.maxCharacters}\r\n valid={element.isValid === true}\r\n invalid={element.isValid === false}\r\n />\r\n \r\n {element.isValid === false ? element.data.validation.message : null}\r\n \r\n \r\n ) : null}\r\n {element.data.displayType === \"SELECT\" &&\r\n element.props.name !== \"CountryId\" ? (\r\n \r\n \r\n {/*

{element.props.Name }

*/}\r\n \r\n this.handleValueChange(selectedOption.value)\r\n }\r\n isDisabled={element.data.readOnly || false}\r\n options={this.sortOptions().map((so, i) => {\r\n return { value: so.value, label: so.value };\r\n })}\r\n placeholder=\"\"\r\n styles={{\r\n control: styles => ({\r\n ...styles,\r\n borderColor:\r\n (template !== undefined &&\r\n template.content.input.borderColor) ||\r\n \"unset\",\r\n borderRadius:\r\n (template !== undefined &&\r\n template.content.input.borderRadius) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\",\r\n fontWeight:\r\n (template !== undefined &&\r\n template.content.input.fontWeight) ||\r\n \"unset\",\r\n margin:\r\n (template !== undefined &&\r\n template.content.input.margin) ||\r\n \"unset\",\r\n boxShadow:\r\n (template !== undefined &&\r\n template.content.input.boxShadow) ||\r\n \"unset\",\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.fontSize) ||\r\n \"unset\",\r\n color:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n backgroundColor:\r\n (template !== undefined &&\r\n template.content.input.backgroundColor) ||\r\n \"unset\",\r\n maxWidth: \"100%\"\r\n }),\r\n menu: styles => ({\r\n ...styles,\r\n maxWidth: \"100%\"\r\n }),\r\n input: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n }),\r\n singleValue: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n }),\r\n option: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n }),\r\n placeholder: styles => ({\r\n ...styles,\r\n fontSize:\r\n (template !== undefined &&\r\n template.content.input.color) ||\r\n \"unset\",\r\n fontFamily:\r\n (template !== undefined &&\r\n template.content.input.fontFamily) ||\r\n \"unset\"\r\n })\r\n }}\r\n value={element.data.selectOptions.find(t => {\r\n return t.value === element.data.text;\r\n })}\r\n />\r\n \r\n\r\n \r\n \r\n {element.isValid === false ? element.data.validation.message : null}\r\n \r\n {cms.editMode &&\r\n selectedElement &&\r\n element &&\r\n selectedElement.contentId === element.contentId ? (\r\n \r\n \r\n {\" \"}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n
\r\n ) : null}\r\n\r\n {element.data.showSubInput && (\r\n this.handleChange(e, \"props.subInputs\")}\r\n tagName=\"p\"\r\n />\r\n )}\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n form: state.form,\r\n event: state.event,\r\n template: state.template,\r\n rElement: state.element,\r\n cms: state.cms,\r\n attendee: state.attendee\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Field);\r\n","import React from \"react\";\r\nimport \"croppie/croppie.css\";\r\nimport { Button, Spinner } from \"reactstrap\";\r\nimport { connect } from \"react-redux\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport { deepClone, toCamelCase } from \"../../../../helpers/objectHelper\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport ZoomOutIcon from \"@material-ui/icons/ZoomOut\";\r\nimport ZoomInIcon from \"@material-ui/icons/ZoomIn\";\r\nimport Rotate90DegreesCcwTwoToneIcon from \"@material-ui/icons/Rotate90DegreesCcwTwoTone\";\r\nimport { IconButton, LinearProgress } from \"@material-ui/core\";\r\nimport SaveTwoToneIcon from \"@material-ui/icons/SaveTwoTone\";\r\nimport CropTwoToneIcon from \"@material-ui/icons/CropTwoTone\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { handleResponse } from \"../../../../helpers/handleresponse\";\r\nconst Croppie = require(\"croppie\");\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass ProfileImageUploader extends React.Component {\r\n state = {\r\n source: \"\",\r\n isCropping: false,\r\n imageLoaded: false,\r\n };\r\n\r\n componentDidMount() {\r\n this.loadImage();\r\n }\r\n\r\n loadImage = () => {\r\n const { attendee, dispatch, cms } = this.props;\r\n const { defaultImage } = this.props.settings;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"ProfileImage\")];\r\n\r\n let newType = undefined;\r\n if (!type) {\r\n newType = { source: \"\" };\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n if (newType.file) {\r\n return this.setState({ source: newType.file });\r\n }\r\n\r\n if (newType[toCamelCase(\"Source\")]) {\r\n this.setState({ source: newType[toCamelCase(\"Source\")] });\r\n } else {\r\n newType[toCamelCase(\"File\")] = defaultImage || null;\r\n this.setState({\r\n source: defaultImage || \"https://www.xovi.com/wp-content/plugins/all-in-one-seo-pack/images/default-user-image.png\",\r\n });\r\n }\r\n newOrder[toCamelCase(\"ProfileImage\")] = newType;\r\n console.log(\"pfimage\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n } else {\r\n this.setState({\r\n source: defaultImage || \"https://www.xovi.com/wp-content/plugins/all-in-one-seo-pack/images/default-user-image.png\",\r\n });\r\n }\r\n };\r\n componentDidUpdate(prevProps) {\r\n const { settings } = this.props;\r\n if (settings.defaultImage && prevProps.settings.defaultImage != settings.defaultImage) {\r\n this.setState({ source: settings.defaultImage });\r\n }\r\n if (this.props.attendee.activePersonNo != prevProps.attendee.activePersonNo) {\r\n this.loadImage();\r\n }\r\n }\r\n toBase64 = (file) =>\r\n new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = (error) => reject(error);\r\n });\r\n onImageUpload = async (e) => {\r\n const { cms, dispatch, element } = this.props;\r\n\r\n const file = e.target.files[0];\r\n\r\n const result = await this.toBase64(file).catch((e) => Error(e));\r\n if (result instanceof Error) {\r\n console.log(\"Error: \", result.message);\r\n this.setState({ errorMessage: result.message });\r\n return;\r\n }\r\n if (cms.editMode) {\r\n const el = deepClone(element);\r\n el.data.defaultImage = result;\r\n dispatch(formActions.updateFormElement(el));\r\n }\r\n this.setState({ isCropping: true, source: result });\r\n dispatch(formActions.crop(true));\r\n };\r\n setImageOnOrder = (source) => {\r\n const { dispatch, attendee } = this.props;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"ProfileImage\")];\r\n let newType = undefined;\r\n\r\n if (!type) {\r\n newType = { source: \"\" };\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify({\r\n file: source,\r\n name: `${order.sqlStateNo + attendee.activePersonNo}_ProfileImage.png`,\r\n type: \"image/png\",\r\n }),\r\n };\r\n fetch(`./api/files/profileimagetemp/${order.eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then((res) => {\r\n newType.file = res;\r\n newOrder[toCamelCase(\"ProfileImage\")] = newType;\r\n console.log(\"pfImage\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n });\r\n }\r\n };\r\n onCropped = (source) => {\r\n const { cms, dispatch, element } = this.props;\r\n if (cms.editMode) {\r\n const el = deepClone(element);\r\n el.data.defaultImage = source;\r\n dispatch(formActions.updateFormElement(el));\r\n } else {\r\n this.setImageOnOrder(source);\r\n }\r\n\r\n this.setState({ source, isCropping: false });\r\n dispatch(formActions.crop(false));\r\n };\r\n setImageClassName = (type) => {\r\n switch (type) {\r\n case \"SQUARE\":\r\n return \"square--landscape\";\r\n case \"CIRCLE\":\r\n return \"circular--landscape\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n handleImageLoaded = () => this.setState({ imageLoaded: true });\r\n\r\n render() {\r\n const { source, isCropping } = this.state;\r\n const { cms, template } = this.props;\r\n const { contentId } = this.props.element;\r\n const { size, shape, viewport, defaultImage } = this.props.settings;\r\n return (\r\n
\r\n {!this.state.isCropping && (\r\n \r\n (this.imgRef = r)}\r\n onLoad={this.handleImageLoaded}\r\n src={source + (source && source.startsWith(\"http\") ? `?rnd=${+new Date()}` : \"\")}\r\n className={`image-content ${this.state.imageLoaded ? \"unblur\" : \"blur\"}`}\r\n alt=\"image\"\r\n />\r\n
\r\n )}\r\n\r\n \r\n {isCropping ? (\r\n \r\n ) : null}\r\n {!isCropping ? (\r\n \r\n ) : null}\r\n {!isCropping ? (\r\n {\r\n this.setState({ isCropping: true });\r\n this.props.dispatch(formActions.crop(true));\r\n }}\r\n >\r\n \r\n {\" \"}\r\n \r\n \r\n ) : null}\r\n \r\n\r\n this.onImageUpload(e)} />\r\n \r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template.template,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ProfileImageUploader);\r\n\r\nclass ProfileImageCropper extends React.Component {\r\n state = {\r\n zoom: 0,\r\n isLoading: false,\r\n rndParam: Date.now(),\r\n };\r\n componentDidMount() {\r\n this.init();\r\n }\r\n init = (reRender = false) => {\r\n const { size, shape, parentId, viewport, backgroundColor } = this.props;\r\n\r\n if (this.cropper) {\r\n this.cropper.destroy();\r\n }\r\n if (size !== null || reRender) {\r\n this.cropper = new Croppie(document.getElementById(\"croppie-img-\" + parentId), {\r\n viewport: { ...viewport, type: shape.toLowerCase() },\r\n boundary: viewport,\r\n showZoomer: true,\r\n type: \"base64\",\r\n enableOrientation: true,\r\n });\r\n\r\n this.handleZoomOut(0);\r\n let listNodes = document.getElementsByClassName(\"cr-vp-square\");\r\n\r\n if (listNodes[0]) {\r\n listNodes[0].style.boxShadow = `0px 0px 2000px 2000px ${backgroundColor}`;\r\n }\r\n listNodes = document.getElementsByClassName(\"cr-vp-circle\");\r\n if (listNodes[0]) {\r\n listNodes[0].style.boxShadow = `0px 0px 2000px 2000px ${backgroundColor}`;\r\n }\r\n }\r\n };\r\n componentDidUpdate(prevProps) {\r\n const { hideOverlay, size, source, isCropping } = this.props;\r\n\r\n if (hideOverlay !== undefined && prevProps.hideOverlay !== hideOverlay && hideOverlay == false) {\r\n this.init(true);\r\n }\r\n /* if ((prevProps.size !== size && size !== undefined && size !== null && !this.size) || prevProps.source !== source) {\r\n this.init();\r\n } */\r\n if (source !== undefined && prevProps.source !== source) {\r\n this.init();\r\n }\r\n if (isCropping !== isCropping) {\r\n this.init();\r\n }\r\n }\r\n\r\n handleZoomOut = (scale, controlled = false) => {\r\n if (this.cropper !== undefined) {\r\n const cZoom = this.cropper.get().zoom;\r\n if (!controlled && scale === 0) {\r\n this.setState({ zoom: scale }, () => {\r\n this.cropper.setZoom(scale);\r\n });\r\n return;\r\n }\r\n if (controlled === true && scale !== undefined) {\r\n this.setState({ zoom: scale }, () => {\r\n this.cropper.setZoom(scale);\r\n });\r\n return;\r\n }\r\n if (cZoom !== this.state.zoom) {\r\n if (cZoom === 50) {\r\n this.cropper.setZoom(0);\r\n this.setState({ zoom: 0 });\r\n return;\r\n }\r\n this.setState({ zoom: cZoom });\r\n }\r\n }\r\n };\r\n handlResult = () => {\r\n const { size } = this.props;\r\n this.setState({ isLoading: true });\r\n this.cropper.result({ type: \"base64\", size }).then((res) => this.handleSave(res));\r\n };\r\n handleSave = (res) => {\r\n const { onCropped } = this.props;\r\n onCropped(res);\r\n };\r\n rotate = () => {\r\n this.cropper.rotate(90);\r\n };\r\n render() {\r\n const { shape, size, parentId, viewport, hideOverlay, source } = this.props;\r\n // if(source && source.startsWith(\"http\"))\r\n // source += `?rndparam=${this.state.rndParam}`;\r\n return (\r\n \r\n
\r\n {this.state.isLoading ? : null}\r\n
\r\n {source && source.startsWith(\"http\") ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n
\r\n {/* \r\n \r\n */}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport { Row, Col, Label, InputGroup, Badge } from \"reactstrap\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport { conditionActions } from \"../../../../store/actions/cms/condition.action\";\r\nimport { displayMoney, preciseRound } from \"../../../../helpers/moneyHelpers\";\r\nimport \"./Event.css\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\nimport { handleResponse } from \"../../../../helpers/handleresponse\";\r\nimport TinyEditor from \"../../../components/plugins/tiny_plugin/TinyEditor\";\r\nimport { toKebabCase } from \"../../../../helpers/cssHelper\";\r\nimport JirangoCheckbox2 from \"../../../../components/UI/Checkbox/JirangoCheckbox2\";\r\nimport { element } from \"../../../../store/reducers/cms/form/element/element.reducer\";\r\nimport { attendee } from \"../../../../store/reducers/attendee/attendee.reducer\";\r\nimport { TramRounded } from \"@material-ui/icons\";\r\n\r\nclass Event extends React.Component {\r\n state = {\r\n checkboxHasChanged: false,\r\n isOpen: false,\r\n loadingBookingRequest: false,\r\n currentOrderId: undefined,\r\n isFetching: false,\r\n forceRerender: true,\r\n };\r\n componentDidMount() {\r\n if (!this.props.cms.editMode && this.props.element.data.preChecked) {\r\n if (this.props.element.data.hidden && this.props.element.data.doNotExistIfHidden === true) {\r\n return;\r\n } else {\r\n this.checkAvailableStatus(true, true);\r\n }\r\n } else {\r\n this.checkAvailableStatus();\r\n }\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n const { attendee } = this.props;\r\n\r\n if (attendee.activePersonNo != prevProps.activePersonNo && this.props.element.data.preChecked && attendee.orders.length > 0 && this.props.element.data.readOnly) {\r\n if (this.props.element.data.hidden && this.props.element.data.doNotExistIfHidden === true) {\r\n return;\r\n } else {\r\n this.checkAvailableStatus(true, true);\r\n }\r\n }\r\n\r\n /* if(attendee.orders.length > 0 && attendee.orders[attendee.activePersonNo]?.orderRow.length != prevProps.attendee.orders[attendee.activePersonNo]?.orderRow.length ){\r\n\r\n console.log('ORDER HAS CHANGED!!!!')\r\n }\r\n */\r\n /* else if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let orderId = attendee.orders[attendee.activePersonNo].orderId;\r\n if (orderId !== this.state.currentOrderId) {\r\n this.setState({ currentOrderId: orderId }, this.checkAvailableStatus);\r\n }\r\n } */\r\n }\r\n\r\n handleUpdate = (element) => {\r\n const { dispatch, cms } = this.props;\r\n dispatch(formActions.updateFormElement(element));\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n };\r\n isChangeLocked = () => {\r\n const { element, attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined && element.data.changeLock) {\r\n return true;\r\n }\r\n return false;\r\n };\r\n handleChange = (e, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.element);\r\n let val = e && e.target === undefined ? e : e.target !== undefined ? e.target.value : \"\";\r\n element[names[0]][names[1]] = val;\r\n this.handleUpdate(element);\r\n };\r\n checkForOverbooking = (isChecked) => {\r\n const reqEvent = deepClone(this.props.element);\r\n const events = this.props.form.formElements.filter((fe) => {\r\n return fe.type === elementConstants.EVENT && fe.id !== reqEvent.id;\r\n });\r\n events.map((e) => {\r\n if (!e.data.allowOverbooking && e.page === this.props.form.currentPage) {\r\n if (\r\n (+new Date(e.props.startDateTime) > +new Date(reqEvent.props.startDateTime) && +new Date(e.props.startDateTime) < +new Date(reqEvent.props.endDateTime)) ||\r\n (+new Date(e.props.endDateTime) > +new Date(reqEvent.props.startDateTime) && +new Date(e.props.endDateTime) <= +new Date(reqEvent.props.endDateTime))\r\n ) {\r\n let element = deepClone(e);\r\n element.data.readOnly = isChecked && !e.props.isSelected;\r\n this.handleUpdate(element);\r\n }\r\n }\r\n });\r\n\r\n reqEvent.props.isSelected = isChecked;\r\n this.handleUpdate(reqEvent);\r\n };\r\n checkGroupAvailableStatus = (groupId, value) => {\r\n const reqEvent = deepClone(this.props.element);\r\n const eventsIncReq = this.props.form.formElements.filter((fe) => {\r\n return fe.type === elementConstants.EVENT && fe.data.groupId === groupId;\r\n });\r\n const events = this.props.form.formElements.filter((fe) => {\r\n return fe.type === elementConstants.EVENT && fe.id !== reqEvent.id && fe.data.groupId === groupId;\r\n });\r\n const container = this.props.form.formElements.find((fe) => {\r\n return fe.type === elementConstants.CONTAINER && fe.id === groupId;\r\n });\r\n\r\n if (!container || events.length === 0) return;\r\n\r\n let checkedEvent = events.filter((e) => {\r\n return e.props.isSelected === true;\r\n }).length;\r\n if (parseInt(container.data.extra.max) === 1 && checkedEvent === parseInt(container.data.extra.max) && value) {\r\n eventsIncReq.map((e) => {\r\n let element = deepClone(e);\r\n if (element.id === reqEvent.id) {\r\n this.handleCheckboxChangeGroup(true, element.id);\r\n element.props.isSelected = true;\r\n } else {\r\n this.handleCheckboxChangeGroup(false, element.id);\r\n element.props.isSelected = false;\r\n }\r\n this.handleUpdate(element);\r\n });\r\n } else if (parseInt(container.data.extra.max) > 0 && checkedEvent === parseInt(container.data.extra.max) - 1 && parseInt(container.data.extra.max) > 1) {\r\n events.map((e) => {\r\n let element = deepClone(e);\r\n element.data.readOnly = value && !e.props.isSelected;\r\n this.handleUpdate(element);\r\n });\r\n reqEvent.props.isSelected = value;\r\n this.handleCheckboxChangeGroup(value, reqEvent.id);\r\n }\r\n };\r\n isRadio = () => {\r\n const { element } = this.props;\r\n if (element.parentId !== null && element.data.groupId > 0) {\r\n const container = this.props.form.formElements.find((fe) => {\r\n return fe.type === elementConstants.CONTAINER && fe.id === element.data.groupId;\r\n });\r\n if (!container) return false;\r\n if (parseInt(container.data.extra.max) === 1) return true;\r\n }\r\n return false;\r\n };\r\n checkAvailableStatus = (value, preChecked = false) => {\r\n if (this.props.element.parentId !== null && this.props.element.data.groupId > -1 && value !== undefined) {\r\n this.checkGroupAvailableStatus(this.props.element.data.groupId, value);\r\n }\r\n if (value === false) {\r\n this.handleCheckboxChange(false);\r\n } else {\r\n this.setState({ loadingBookingRequest: true });\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n };\r\n const { currentOrderId } = this.state;\r\n if (this.state.isFetching === false) {\r\n this.setState({ isFetching: true });\r\n fetch(`./api/attendee/status/${this.props.element.id}${currentOrderId ? \"/\" + currentOrderId : \"\"}`, requestOptions)\r\n .then(handleResponse)\r\n .then((response) => {\r\n if (response.available) {\r\n if (value) {\r\n this.handleCheckboxChange(true, preChecked);\r\n }\r\n this.setFullbooked(false);\r\n } else {\r\n this.setFullbooked(true);\r\n }\r\n this.setState({ isFetching: false });\r\n })\r\n .catch((err) => {\r\n this.setState({ isFetching: false });\r\n console.error(err);\r\n });\r\n } else {\r\n setTimeout(() => this.checkAvailableStatus(value, preChecked), 500);\r\n }\r\n }\r\n };\r\n\r\n setFullbooked = (value) => {\r\n this.setState({ fullbooked: value, loadingBookingRequest: false });\r\n };\r\n handleCheckboxChangeGroup = (value, eventId) => {\r\n const { cms, element, attendee, dispatch } = this.props;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n let newOrder = deepClone(order);\r\n if (!newOrder.orderRow) {\r\n newOrder.orderRow = [];\r\n }\r\n let row = newOrder.orderRow.find((or) => or.eventId == eventId);\r\n if (!row) {\r\n newOrder.orderRow.push({\r\n amount: element.props.amount,\r\n comment: \"\",\r\n discount: 0,\r\n eventId: element.id,\r\n orderId: -1,\r\n orderRowId: newOrder.orderRow.length * -1,\r\n quantity: 1,\r\n status: null,\r\n vatPercent: element.props.vatPercent ? element.props.vatPercent : 0,\r\n deleted: false,\r\n });\r\n } else {\r\n row.deleted = !value;\r\n }\r\n newOrder.orderRow = newOrder.orderRow.filter((orow) => {\r\n return !orow.deleted;\r\n });\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n }\r\n if (this.state.loadingBookingRequest) this.setState({ loadingBookingRequest: false });\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n\r\n this.checkForOverbooking(value);\r\n };\r\n handleCheckboxChange = (value, preChecked) => {\r\n const { cms, element, attendee, dispatch } = this.props;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n let newOrder = deepClone(order);\r\n if (!newOrder.orderRow) {\r\n newOrder.orderRow = [];\r\n }\r\n let row = newOrder.orderRow.find((or) => or.eventId == element.id);\r\n if (!row) {\r\n newOrder.orderRow.push({\r\n amount: element.props.amount,\r\n comment: \"\",\r\n discount: 0,\r\n eventId: element.id,\r\n orderId: -1,\r\n orderRowId: newOrder.orderRow.length * -1,\r\n quantity: 1,\r\n status: null,\r\n vatPercent: element.props.vatPercent ? element.props.vatPercent : 0,\r\n deleted: false,\r\n });\r\n } else if (!preChecked) {\r\n row.deleted = !value;\r\n }\r\n\r\n newOrder.orderRow = newOrder.orderRow.filter((orow) => {\r\n return !orow.deleted;\r\n });\r\n\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n/* setTimeout(() => {\r\n this.setState({ forceRerender: true });\r\n }, 4000); */\r\n console.log(newOrder.orderRow);\r\n }\r\n if (this.state.loadingBookingRequest) this.setState({ loadingBookingRequest: false });\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n\r\n this.checkForOverbooking(value);\r\n };\r\n\r\n checkboxHandler = () => {\r\n const { element, attendee, cms } = this.props;\r\n let isSelected = false;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n if (order.orderRow) {\r\n let row = order.orderRow.find((or) => or.eventId == element.id);\r\n \r\n if (row && !row.deleted) {\r\n isSelected = true;\r\n }\r\n }\r\n } else if (cms.editMode && element.data.preChecked === true) {\r\n isSelected = true;\r\n }\r\n return isSelected;\r\n };\r\n formatDate = (date, datePath, timePath) => {\r\n const { element } = this.props;\r\n if (element.data.display[datePath] && !element.data.display[timePath]) return date.substring(0, 11).replace(\"T\", \" \");\r\n else if (!element.data.display[datePath] && element.data.display[timePath]) {\r\n return date.substring(11, 16).replace(\"T\", \" \");\r\n } else return date.substring(0, 16).replace(\"T\", \" \");\r\n };\r\n displayDiscount = () => {\r\n const { element, form, orders, activePersonNo, cms } = this.props;\r\n let discountAmount = 0;\r\n\r\n let discounts = this.props.discounts || [];\r\n\r\n if (!cms.editMode && orders[activePersonNo].orderId > 0 && orders[activePersonNo]?.orderRow?.find((o) => o.eventId == this.props.element.id)) {\r\n discountAmount = orders[activePersonNo]?.orderRow?.find((o) => o.eventId == this.props.element.id)?.discount;\r\n }\r\n\r\n discounts\r\n .filter((d) => (d.targetEventId == this.props.element.id && d.value != 0) || (d.targetEventId == null && d.valueType == \"Percent\" && d.value != 0))\r\n .sort(function (a, b) {\r\n return a.value - b.value;\r\n })\r\n .map((d) => {\r\n discountAmount += d.valueType == \"Percent\" ? (element.props.amount - discountAmount) * (d.value / 100) : d.value;\r\n });\r\n\r\n const oldPrice = parseFloat(\r\n form.displayEventSettings.find((ds) => ds.name === \"ShowEventIncVat\" && ds.value === true) ? displayMoney(parseInt(element.props.amount), element.props.vatPercent) : element.props.amount\r\n );\r\n const price = parseFloat(\r\n form.displayEventSettings.find((ds) => ds.name === \"ShowEventIncVat\" && ds.value === true)\r\n ? displayMoney(parseFloat(element.props.amount - discountAmount), element.props.vatPercent)\r\n : preciseRound(element.props.amount - discountAmount, 2)\r\n );\r\n\r\n if (!discountAmount) return price + ` ${form.currency || \"SEK\"}`;\r\n\r\n return (\r\n <>\r\n \r\n {oldPrice} {` ${form.currency || \"SEK\"}`}\r\n \r\n \r\n {price > 0 ? price : 0} {` ${form.currency || \"SEK\"}`}\r\n \r\n \r\n );\r\n };\r\n render() {\r\n const { form, template, element, cms, discounts, attendee } = this.props;\r\n const { loadingBookingRequest, fullbooked } = this.state;\r\n let isSelected = this.checkboxHandler();\r\n\r\n /* || this.props.element.data.preChecked; */\r\n let activityName = element.data.display.name ? (element.props ? element.props.name : \"\") : \"\";\r\n /* console.log(attendee.orders); */\r\n if (!element.props) return null;\r\n if (element && element.data && element.data.hidden && !cms.editMode) return null;\r\n else\r\n return (\r\n
\r\n {element.data.hidden && (\r\n
\r\n \r\n
\r\n )}\r\n\r\n \r\n \r\n \r\n Fullbokad\r\n \r\n ) : undefined\r\n }\r\n loaderIcon={loadingBookingRequest}\r\n boxStyle={{\r\n ...template.content.button,\r\n }}\r\n checkboxIsDisabled={cms.editMode || (!cms.editMode && this.isChangeLocked() === true)}\r\n isReadonly={element.data.readOnly}\r\n labelPlacement={\"end\"}\r\n labelOnchange={this.handleChange}\r\n id={\"props.name\"}\r\n boxType={this.isRadio() ? \"radio\" : \"checkbox\"}\r\n checkOnchange={this.checkAvailableStatus}\r\n isSelected={isSelected}\r\n /* isSelected={this.props.attendee?.orders[attendee.activePersonNo]?.orderRow?.find(or => or.eventId == this.props.element.id)} */\r\n />\r\n \r\n\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventPrice\" && ds.value === true) ? (\r\n \r\n \r\n {!element.data.hidePrice ? (\r\n \r\n ) : null}\r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventStartDateTime\" && ds.value === true) ||\r\n form.displayEventSettings.find((ds) => ds.name === \"ShowEventEndDateTime\" && ds.value === true) ||\r\n form.displayEventSettings.find((ds) => ds.name === \"ShowEventStartTime\" && ds.value === true) ||\r\n form.displayEventSettings.find((ds) => ds.name === \"ShowEventEndTime\" && ds.value === true) ? (\r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventVenue\" && ds.value === true) || form.displayEventSettings.find((ds) => ds.name === \"ShowEventCity\" && ds.value === true) ? (\r\n \r\n \r\n \r\n {element.data.locationLabel ? (\r\n this.handleChange(e, \"data.locationLabel\")}\r\n tagName=\"label\"\r\n />\r\n ) : null}\r\n \r\n \r\n \r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventMax\" && ds.value === true) ? (\r\n \r\n \r\n \r\n {element.data.maxLabel ? (\r\n this.handleChange(e, \"data.maxLabel\")}\r\n tagName=\"label\"\r\n />\r\n ) : null}\r\n \r\n \r\n \r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventDescription\" && ds.value === true) && element.props.description && element.props.description.length > 0 ? (\r\n cms.editMode /* && form.selectedElement && form.selectedElement.contentId === element.contentId */ ? (\r\n \r\n \r\n \r\n
\r\n ) : (\r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.description\")}\r\n tagName=\"div\"\r\n />\r\n \r\n \r\n \r\n )\r\n ) : null}\r\n \r\n \r\n
\r\n \r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template.template,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n orders: state.attendee.orders,\r\n activePersonNo: state.attendee.activePersonNo,\r\n discounts: state.attendee.orders && state.attendee.orders[state.attendee.activePersonNo] ? state.attendee.orders[state.attendee.activePersonNo]?.discounts : [],\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Event);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Container as BsContainer, Row, Col, Input, FormFeedback } from \"reactstrap\";\r\nimport { DropArea, DropAreaContainer } from \"../../../components/UI/DropArea/DropArea\";\r\nimport { Droppable, Draggable } from \"react-beautiful-dnd\";\r\nimport { renderElement } from \"../../../helpers/renderElement\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { DragContainer } from \"../../../components/UI/DragContainer/DragContainer\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { templateActions } from \"../../../../store/actions/cms/template/template.action\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport { pageActions } from \"../../../../store/actions/cms/page/page.action\";\r\nimport { ElementOverlay } from \"../../../components/element/Overlay/ElementOverlay\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\n\r\nclass Container extends React.Component {\r\n state = {\r\n element: null,\r\n isHovering: false,\r\n containerChildren: null,\r\n containerChildrenChildren: null,\r\n isDropDisabled: false,\r\n };\r\n\r\n componentDidMount() {\r\n const { cms, dispatch, element } = this.props;\r\n if (this.props.updateValidator && typeof this.props.updateValidator === \"function\") {\r\n this.props.updateValidator(this.updateValidator);\r\n }\r\n this.calculateChildren();\r\n }\r\n validateEventGroup = () => {\r\n const element = deepClone(this.props.element);\r\n let isValid = true;\r\n const groupId = element.id;\r\n\r\n if (element.data.type === \"EVENT_GROUP\" && this.props.cms.enviroment === sourceTypes.FORM) {\r\n let min = element.data.extra.min;\r\n const groupEvents = this.props.form.formElements.filter((fe) => {\r\n return fe.type === elementConstants.EVENT && fe.data.groupId === groupId && fe.props.isSelected === true;\r\n });\r\n if (groupEvents.length < min) {\r\n isValid = false;\r\n }\r\n if (this.props.element.isValid !== isValid) {\r\n element.isValid = isValid;\r\n this.handleUpdate(element);\r\n }\r\n }\r\n return isValid;\r\n };\r\n updateValidator = () => {\r\n if (this.props.getValidator && typeof this.props.getValidator === \"function\") {\r\n this.props.getValidator(() => this.validateEventGroup());\r\n }\r\n };\r\n handleUpdate = (element) => {\r\n const { dispatch, cms } = this.props;\r\n dispatch(formActions.updateFormElement(element));\r\n };\r\n componentWillUnmount() {\r\n if (this.props.updateValidator && typeof this.props.updateValidator === \"function\") {\r\n this.props.updateValidator(this.updateValidator, true);\r\n }\r\n }\r\n isDropDisabled = (element) => {\r\n if (element.parentName !== undefined && this.props.cms.enviroment !== sourceTypes.TEMPLATE && this.state.isDropDisabled === false) {\r\n this.setState({ isDropDisabled: true });\r\n }\r\n };\r\n componentDidUpdate(prevProps, prevState) {\r\n if (this.props.form !== undefined && (!prevProps.form || !prevProps.form.formElements || this.props.form.formElements != prevProps.form.formElements)) {\r\n this.calculateChildren();\r\n }\r\n if (this.props.page !== undefined && (!prevProps.page || !prevProps.page.pageElements || this.props.page.pageElements != prevProps.page.pageElements)) {\r\n this.calculateChildren();\r\n }\r\n if (\r\n this.props.template !== undefined &&\r\n (!prevProps.template || !prevProps.template.template || this.props.template.template.content != prevProps.template.template.content) &&\r\n this.props.cms.enviroment === sourceTypes.TEMPLATE\r\n ) {\r\n this.calculateChildren();\r\n }\r\n }\r\n calculateChildren = () => {\r\n const { element } = this.props;\r\n const elements = this.getElements();\r\n let containerChildren = elements.filter((el, i) => {\r\n return el.type === elementConstants.CONTAINER && el.parentId && el.parentId === element.id;\r\n });\r\n let containerChildrenChildren = [];\r\n containerChildren.map((el, i) => {\r\n containerChildrenChildren.push({\r\n id: el.id,\r\n elements: this.getChildren2(el.id, elements),\r\n });\r\n });\r\n this.isDropDisabled(element);\r\n return { element, containerChildren, containerChildrenChildren };\r\n };\r\n getInheritance = () => {\r\n const { element } = this.props;\r\n if (element.formId !== null) {\r\n return \"FORM\";\r\n } else if (element.pageId !== null) {\r\n return \"PAGE\";\r\n } else {\r\n return \"TEMPLATE\";\r\n }\r\n };\r\n getElements = () => {\r\n switch (this.getInheritance()) {\r\n case \"FORM\":\r\n return this.props.form.formElements;\r\n case \"PAGE\":\r\n return this.props.page.pageElements;\r\n case \"TEMPLATE\":\r\n if (this.props.element.parentName === \"HEADER\") {\r\n return this.props.template.template.content.header.content;\r\n }\r\n if (this.props.element.parentName === \"FOOTER\") {\r\n return this.props.template.template.content.footer.content;\r\n }\r\n default:\r\n return;\r\n }\r\n };\r\n onSelect = (element) => {\r\n const { dispatch, cms } = this.props;\r\n if (!cms.editMode) {\r\n return;\r\n }\r\n switch (this.getInheritance()) {\r\n case \"FORM\":\r\n dispatch(formActions.select(element));\r\n break;\r\n case \"TEMPLATE\":\r\n if (cms.enviroment === sourceTypes.TEMPLATE) {\r\n dispatch(templateActions.select(element));\r\n }\r\n break;\r\n case \"PAGE\":\r\n dispatch(pageActions.select(element));\r\n default:\r\n break;\r\n }\r\n };\r\n onDelete = (element) => {\r\n const { dispatch } = this.props;\r\n switch (this.getInheritance()) {\r\n case \"FORM\":\r\n dispatch(formActions.remove(element));\r\n break;\r\n case \"TEMPLATE\":\r\n dispatch(templateActions.remove(element, element.parentName));\r\n break;\r\n case \"PAGE\":\r\n dispatch(pageActions.remove(element));\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n handleMouseLeave = () => {\r\n if (!this.props.cms.editMode) {\r\n return;\r\n }\r\n this.props.disableDropParent(false);\r\n };\r\n handleMouseOver = () => {\r\n if (!this.props.cms.editMode) {\r\n return;\r\n }\r\n this.props.disableDropParent(true);\r\n };\r\n getChildren2 = (id, elements) => {\r\n let children = elements\r\n .filter((el) => {\r\n return el.parentId === id;\r\n })\r\n .sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n });\r\n return children;\r\n };\r\n getSelectedElementSource = () => {\r\n switch (this.getInheritance()) {\r\n case \"FORM\":\r\n return this.props.form.selectedElement;\r\n case \"TEMPLATE\":\r\n return this.props.template.selectedElement;\r\n case \"PAGE\":\r\n return this.props.page.selectedElement;\r\n default:\r\n return null;\r\n }\r\n };\r\n render() {\r\n let selectedElement = this.getSelectedElementSource();\r\n const { cms, template } = this.props;\r\n const containers = this.calculateChildren();\r\n const { element } = this.props;\r\n const { isDropDisabled } = this.state;\r\n\r\n if (element && element.data && element.data.hidden && !cms.editMode) return null;\r\n return (\r\n
\r\n 1)\r\n ? \"auto\"\r\n : element.data.style.height\r\n : \"inherit\",\r\n width: element.data.style.width.toString()?.includes(\"px\") ? element.data.style.width : parseInt(element.data.style.width) + \"%\",\r\n maxWidth: element.data.style.width.toString().includes(\"px\") ? element.data.style.width : undefined,\r\n margin: element.data.margin,\r\n padding: /* element.data.padding.toString().includes('px') ? */ element.data.padding /* : element.data.padding + 'px' */,\r\n background: element.data.background,\r\n backgroundAttachment: element.data.backgroundAttachment,\r\n /* marginLeft: \"auto !important\",\r\n marginRight: \"auto !important\", */\r\n paddingTop: element.data.type === \"EVENT_GROUP\" ? 10 : 0,\r\n }}\r\n >\r\n \r\n \r\n {element.isValid === false ? element.data.validation.message : null}\r\n \r\n {element.data.hidden && (\r\n
\r\n \r\n
\r\n )}\r\n {element.data.hidden}\r\n {containers.containerChildren &&\r\n containers.containerChildren.length > 0 &&\r\n containers.containerChildren\r\n .sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n })\r\n .map((el, index) => {\r\n return (\r\n \r\n {(provided, snapshot) => (\r\n \r\n {containers.containerChildrenChildren &&\r\n containers.containerChildrenChildren.find((cel) => {\r\n return cel.id === el.id;\r\n }).elements &&\r\n containers.containerChildrenChildren\r\n .find((cel) => {\r\n return cel.id === el.id;\r\n })\r\n .elements.map((cel, index) => {\r\n return (\r\n
\r\n \r\n {(provided, snapshot) => {\r\n let transform = provided.draggableProps.style.transform;\r\n if (snapshot.isDragging) {\r\n let regex = new RegExp(\"translate\\\\((.*?)px, (.*?)px\\\\)\");\r\n let parentValues = regex.exec(this.props.parentTransform || \"\");\r\n let childValues = regex.exec(provided.draggableProps.style.transform || \"\");\r\n if (childValues != null && parentValues != null) {\r\n let x = parseFloat(childValues[1], 10) - (parseFloat(parentValues[1], 10) + parseFloat(provided.draggableProps.style.left, 10)) + 20;\r\n let y = parseFloat(childValues[2], 10) - (parseFloat(parentValues[2], 10) + parseFloat(provided.draggableProps.style.top, 10));\r\n transform = `translate(${x}px, ${y}px)`;\r\n }\r\n }\r\n return (\r\n \r\n
\r\n this.onSelect(cel)}\r\n >\r\n \r\n \r\n {renderElement(cel.type, cel)}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n }}\r\n
\r\n {containers.containerChildrenChildren.length > 0 && provided.placeholder}\r\n
\r\n );\r\n })}\r\n\r\n {containers.containerChildrenChildren &&\r\n containers.containerChildrenChildren.find((cel) => {\r\n return cel.id === el.id;\r\n }).elements.length < 1 ? (\r\n \r\n {provided.placeholder}\r\n
\r\n ) : (\r\n
{provided.placeholder}
\r\n )}\r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template,\r\n cElements: state.elements,\r\n cms: state.cms,\r\n page: state.page,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Container);\r\n","export default __webpack_public_path__ + \"static/media/google_maps.89046afd.svg\";","import React, { Component } from 'react';\r\nimport { Map, GoogleApiWrapper, Marker, InfoWindow } from 'google-maps-react';\r\nimport axios from 'axios';\r\nimport GoogleMapsIcon from '../../../../assets/icons/google_maps.svg'\r\nconst API_KEY = 'REMOVE'\r\n\r\n\r\nconst mapStyles = {\r\n width: '100%',\r\n padding: '10px',\r\n height: '200px',\r\n};\r\n\r\nexport class MapContainer extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n coords: null,\r\n formatedAddress: '',\r\n showingInfoWindow: false,\r\n activeMarker: {},\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.address) {\r\n this.getCoordinatesByAdress(this.props.address)\r\n }\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.address !== undefined && prevProps.address !== this.props.address) {\r\n this.getCoordinatesByAdress(this.props.address)\r\n }\r\n }\r\n getCoordinatesByAdress = (address) => {\r\n axios.get(`https://maps.googleapis.com/maps/api/geocode/json?address=${address.replace(' ', '+')}&key=${API_KEY}`)\r\n .then(res => {\r\n const location = res.data.results[0].geometry.location\r\n const formatedAddress = res.data.results[0].formatted_address;\r\n this.setState({ coords: location, formatedAddress });\r\n })\r\n }\r\n displayMarkers = () => {\r\n return \r\n }\r\n onMarkerClick = (props, marker, e) =>\r\n this.setState({\r\n selectedPlace: props,\r\n activeMarker: marker,\r\n showingInfoWindow: true\r\n });\r\n onMapClicked = (props) => {\r\n if (this.state.showingInfoWindow) {\r\n this.setState({\r\n showingInfoWindow: false,\r\n })\r\n }\r\n };\r\n render() {\r\n if (!this.props.google) {\r\n return \r\n }\r\n return (\r\n \r\n {this.state.coords !== null ?\r\n \r\n {this.state.coords !== null ? this.displayMarkers() : null}\r\n \r\n
\r\n
{this.state.formatedAddress}
\r\n

\r\n
\r\n \r\n \r\n :\r\n \r\n }\r\n \r\n );\r\n }\r\n}\r\nexport default GoogleApiWrapper({\r\n apiKey: API_KEY,\r\n\r\n})(MapContainer);","export default __webpack_public_path__ + \"static/media/no_thumb.09b01d5c.png\";","import React from \"react\";\r\nimport { connect } from 'react-redux';\r\nimport { securityHelper } from \"../../../../../helpers/securityHelper\";\r\nimport 'video.js';\r\nimport VideoThumbnail from 'react-video-thumbnail';\r\nimport \"./VideoElement.css\";\r\nimport NoThumb from \"../../../../../assets/img/no_thumb.png\"\r\nclass VideoElement extends React.Component {\r\n state={}\r\n generateYoutubeSource = () => {\r\n const { url } = this.props;\r\n let vUrl = url;\r\n if (!url.includes(\"https://www.youtube.com/watch?v=\")) vUrl = 'https://www.youtube.com/watch?v=ruRI3RH5HcA';\r\n let id = vUrl.substring(vUrl.indexOf(\"v=\") + 2, vUrl.length);\r\n return id;\r\n };\r\n \r\n render() {\r\n\r\n const { autoplay, loop, frame, style, editMode, selected, element, url, thumbnail } = this.props;\r\n let longVideo = !url.includes(\"https://www.youtube.com\");\r\n \r\n return (\r\n \r\n {longVideo ? (\r\n
\r\n {\r\n !thumbnail && url ? {\r\n if(this.state.customThumb !== thumbnail) this.setState({\r\n customThumb: thumbnail\r\n })\r\n }}\r\n width={0}\r\n height={0}\r\n style={{display:\"none\"}}\r\n />:null\r\n }\r\n \r\n \r\n \r\n

\r\n To view this video please enable JavaScript, and consider upgrading to a\r\n web browser that\r\n supports HTML5 video\r\n

\r\n \r\n
\r\n ) :
\r\n \r\n
\r\n }\r\n
\r\n )\r\n }\r\n\r\n}\r\nfunction mapStateToProps(state) {\r\n \r\n return {\r\n form: state.form,\r\n page: state.page,\r\n template: state.template.template,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(VideoElement);","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { NavLink } from \"reactstrap\";\r\nimport Media from \"react-media\";\r\nimport \"./ImageElement.css\";\r\nimport { sourceTypes } from \"../../../../../../constants/cms/sourceType\";\r\nimport ArchiveContainer from \"../../../../../../file/containers/ArchiveContainer\";\r\nimport InlineCropper from \"../../../../../../file/plugins/InlineCropper\";\r\nimport { cmsActions } from \"../../../../../../store/actions/cms/cms.action\";\r\n\r\nconst defaultImage =\r\n \"https://images.unsplash.com/photo-1517484030358-fd0cca3d33d0?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=500&q=60\";\r\n\r\nclass ImageElement extends React.PureComponent {\r\n state = {\r\n editor: {},\r\n isMediaVaultOpen: false,\r\n isCropping: false,\r\n containerStyle: null,\r\n baseValue: 0,\r\n saveCrop: false,\r\n style: \"\",\r\n marginTop: 0,\r\n reRender: false,\r\n data: null,\r\n imageLoaded: false,\r\n };\r\n componentDidMount() {\r\n if (\r\n this.props.settings.style !== undefined &&\r\n this.props.settings.style.maxHeight !== undefined &&\r\n this.props.settings.style.maxHeight !== \"unset\"\r\n ) {\r\n this.setState({\r\n containerStyle: {\r\n height: this.imgRef.clientHeight,\r\n width: this.imgRef.clientWidth,\r\n baseValue: this.imgRef.clientHeight,\r\n },\r\n });\r\n if (\r\n this.props.type === \"IMG\" &&\r\n this.props.settings.type === \"FULL\" &&\r\n this.props.v === \"\"\r\n ) {\r\n this.props.onChange(\r\n this.props.settings.style.maxHeight + \"px\",\r\n \"data.style.maxHeight\"\r\n );\r\n }\r\n }\r\n }\r\n componentDidUpdate(prevProps, prevState) {\r\n if (\r\n (this.props.settings.style !== undefined &&\r\n this.props.settings.style.maxHeight !== undefined &&\r\n this.state.imageLoaded &&\r\n this.imgRef &&\r\n this.props.value !== prevProps.value) ||\r\n (this.props.settings.style !== undefined &&\r\n this.props.settings.style.maxHeight !== undefined &&\r\n this.state.imageLoaded &&\r\n this.imgRef &&\r\n this.props.settings.type !== prevProps.settings.type)\r\n ) {\r\n this.props.onChange(\r\n { width: this.imgRef.offsetWidth, height: this.imgRef.offsetHeight },\r\n \"data.orgSize\"\r\n );\r\n this.setState({\r\n containerStyle: {\r\n height: this.imgRef.clientHeight,\r\n width: this.imgRef.clientWidth,\r\n baseValue: this.imgRef.clientHeight,\r\n },\r\n });\r\n if (this.props.type === \"IMG\" && this.props.settings.type === \"FULL\") {\r\n if (this.props.value && this.props.value.toString().includes(\"cropped\"))\r\n return;\r\n this.props.onChange(\r\n this.imgRef.clientHeight + \"px\",\r\n \"data.style.maxHeight\"\r\n );\r\n }\r\n }\r\n }\r\n handleOnChange = (value) => {\r\n this.props.onChange(value, \"props.value\", this.props.contentId);\r\n };\r\n changeImage = (url) => {\r\n this.setState(\r\n {\r\n isMediaVaultOpen: false,\r\n },\r\n () => {\r\n this.props.onChange(url, \"props.value\");\r\n }\r\n );\r\n };\r\n setImage = (url) => {\r\n const { dispatch } = this.props;\r\n dispatch(cmsActions.blockDeselect(true));\r\n this.handleOnChange(url);\r\n setTimeout(() => dispatch(cmsActions.blockDeselect(false)), 2000);\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n toggleCroppie = () => {\r\n if (!this.state.containerStyle) {\r\n this.setState({\r\n containerStyle: {\r\n height: this.imgRef.clientHeight,\r\n width: this.imgRef.clientWidth,\r\n },\r\n isCropping: !this.state.isCropping,\r\n });\r\n } else {\r\n this.setState({ isCropping: !this.state.isCropping });\r\n }\r\n };\r\n handleCropSave = (value) => {\r\n this.setState({ value: value }, () => {\r\n this.setImage(value);\r\n this.setState({ isCropping: false });\r\n });\r\n };\r\n handleImageLoaded = () => {\r\n this.setState({ imageLoaded: true });\r\n };\r\n imageAlignment = (pos) => {\r\n switch (pos) {\r\n case \"center\":\r\n return \"0px auto 0px auto\";\r\n case \"right\":\r\n return \"0px 0px 0px auto\";\r\n case \"left\":\r\n return \"0px auto 0px 0px\";\r\n default:\r\n return \"0px auto 0px auto\";\r\n }\r\n };\r\n setImageClassName = (type) => {\r\n switch (type) {\r\n case \"ORIGINAL\":\r\n return \"\";\r\n case \"FULL\":\r\n return \"full--landscape\";\r\n case \"SQUARE\":\r\n return \"square--landscape\";\r\n case \"CIRCLE\":\r\n return \"circular--landscape\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n setImageStyle = (settings, matches) => {\r\n return {\r\n display:\r\n settings.type !== \"FULL\" && settings.style ? \"inline-flex\" : \"unset\",\r\n maxHeight:\r\n settings.type === \"FULL\" &&\r\n !matches.small &&\r\n settings.style.maxHeight !== \"unset\"\r\n ? settings.style.maxHeight\r\n : \"unset\",\r\n height:\r\n settings.type !== \"FULL\" && settings.style\r\n ? settings.style.height\r\n : undefined,\r\n width:\r\n settings.type !== \"FULL\" && settings.style\r\n ? settings.style.width\r\n : \"100%\",\r\n margin:\r\n settings.type !== \"FULL\"\r\n ? this.imageAlignment(settings.alignment)\r\n : \"unset\",\r\n };\r\n };\r\n renderOverlay = (value, defaultImage) => {\r\n const { type } = this.props.settings;\r\n return (\r\n
\r\n \r\n \r\n {value !== defaultImage && type !== \"ORIGINAL\" ? (\r\n \r\n ) : null}\r\n \r\n
\r\n );\r\n };\r\n render() {\r\n const { cms, template } = this.props;\r\n const { settings, type, value, contentId } = this.props;\r\n\r\n let v = \"\";\r\n if (!value && (type === \"TEXT\" || type === \"BUTTON\")) v = `

Text

`;\r\n else if (value === \"\" && type === \"IMG\") v = defaultImage;\r\n else v = value;\r\n\r\n return (\r\n \r\n \r\n {(matches) => (\r\n \r\n {!this.state.isCropping && (\r\n \r\n \r\n (this.imgRef = r)}\r\n onLoad={this.handleImageLoaded}\r\n src={v}\r\n className={`image-content ${\r\n this.state.imageLoaded ? \"unblur\" : \"blur\"\r\n }`}\r\n alt=\"image\"\r\n />\r\n \r\n {cms.editMode ? this.renderOverlay(v, defaultImage) : null}\r\n \r\n )}\r\n \r\n \r\n \r\n {this.state.isMediaVaultOpen ? (\r\n \r\n ) : null}\r\n \r\n )}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n let selectedElement = null;\r\n if (state.cms.enviroment === sourceTypes.TEMPLATE) {\r\n selectedElement = state.template.selectedElement;\r\n }\r\n if (state.cms.enviroment === sourceTypes.PAGE) {\r\n selectedElement = state.page.selectedElement;\r\n }\r\n if (state.cms.enviroment === sourceTypes.FORM) {\r\n selectedElement = state.form.selectedElement;\r\n }\r\n return {\r\n alert: state.alert,\r\n form: state.form,\r\n cms: state.cms,\r\n selectedElement,\r\n template: state.template,\r\n language: state.language,\r\n page: state.page,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ImageElement);\r\n","export function getTimeDiff(date1, timeSpan) {\r\n var startDate = new Date(date1);\r\n var seconds = ((startDate.getTime() + timeSpan) - startDate.getTime()) / 1000;\r\n return seconds;\r\n}\r\n\r\nexport function compareDates(time) {\r\n var endTime = new Date(time);\r\n if (+endTime <= +new Date()) return true;\r\n return false;\r\n}","import { handleResponse } from \"../../helpers/handleresponse\";\r\nimport { authHeader } from \"../../helpers/authHeader\";\r\n\r\nexport const eventLabelService = {\r\n getGroup,\r\n create\r\n\r\n}\r\n\r\nasync function create(eventId, name, groupName, languageCode) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify({ eventId, name, groupName, languageCode: languageCode })\r\n };\r\n\r\n return fetch(`./api/eventLabel`, requestOptions)\r\n .then(handleResponse)\r\n .then(label => {\r\n return label;\r\n });\r\n}\r\nasync function getGroup(eventId, groupName, langCode) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/eventLabel/getgroup/${eventId}?groupName=${groupName}&languageCode=${langCode}`, requestOptions)\r\n .then(handleResponse)\r\n .then(group => {\r\n return group;\r\n });\r\n}\r\n\r\n","import { eventConstants } from \"../../../constants/event/event.constants\";\r\nimport { alertActions } from \"../alert.action\";\r\nimport { eventLabelsConstants } from \"../../../constants/event/eventLabel.constants\";\r\nimport { eventLabelService } from \"../../../services/core/eventLabelService\";\r\n\r\nexport const eventLabelAction = {\r\n create,\r\n getGroup\r\n};\r\n\r\nfunction create(eventId, name, groupName, languageCode) {\r\n return dispatch => {\r\n dispatch(request(groupName));\r\n dispatch(alertActions.clear());\r\n eventLabelService.create(eventId, name, groupName, languageCode).then(\r\n label => {\r\n dispatch(success(label, groupName));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request(groupName) {\r\n return { type: eventLabelsConstants.CREATE_EVENTLABEL_REQUEST, groupName };\r\n }\r\n function success(label, groupName) {\r\n return { type: eventLabelsConstants.CREATE_EVENTLABEL_SUCCESS, label, groupName };\r\n }\r\n function failure(error) {\r\n return { type: eventLabelsConstants.CREATE_EVENTLABEL_FAILURE, error };\r\n }\r\n}\r\nfunction getGroup(eventId, groupName, languageCode) {\r\n return dispatch => {\r\n dispatch(request({groupName}));\r\n dispatch(alertActions.clear());\r\n eventLabelService.getGroup(eventId, groupName, languageCode).then(\r\n group => {\r\n dispatch(success(group, groupName));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request(groupName) {\r\n return { type: eventLabelsConstants.CREATE_EVENTLABEL_REQUEST, groupName };\r\n }\r\n function success(group, groupName) {\r\n return { type: eventLabelsConstants.GET_GROUP_EVENTLABEL_SUCCESS, group, groupName };\r\n }\r\n function failure(error) {\r\n return { type: eventLabelsConstants.GET_GROUP_EVENTLABEL_SUCCESS, error };\r\n }\r\n}\r\n\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { eventLabelAction } from \"../../store/actions/core/eventLabel.action\";\r\nimport { store } from \"../../store/configureStore\";\r\n\r\n//state\r\n\r\nlet labelSettings = {\r\n eventId: null,\r\n langCode: null,\r\n};\r\nconst creationList = {};\r\n\r\nexport function init(eventId, groupName, langCode) {\r\n labelSettings.eventId = eventId;\r\n labelSettings.langCode = langCode;\r\n\r\n store.dispatch(\r\n eventLabelAction.getGroup(eventId, groupName.toUpperCase(), langCode)\r\n );\r\n}\r\n\r\nfunction create(name, groupName) {\r\n if (!creationList[groupName] || !creationList[groupName].includes(name)) {\r\n if (!creationList[groupName]) {\r\n creationList[groupName] = [];\r\n }\r\n creationList[groupName].push(name);\r\n }\r\n const { langCode, eventId } = labelSettings;\r\n store.dispatch(\r\n eventLabelAction.create(eventId, name, groupName.toUpperCase(), langCode)\r\n );\r\n}\r\n\r\nexport function renderText(name, groupName) {\r\n if (!name || !groupName) return;\r\n let n = name.toUpperCase();\r\n let g = groupName.toUpperCase();\r\n const groups = store.getState().eventLabel.groups;\r\n let group = groups[g];\r\n\r\n if (!group) {\r\n return `*${name}*`;\r\n } else if (!Array.isArray(group) && group.loading) {\r\n return `*${name}*`;\r\n } else if (!group.find((g) => g.name == n)) {\r\n create(name, groupName);\r\n return `*${name}*`;\r\n } else {\r\n return group.find((g) => g.name == n).value;\r\n }\r\n}\r\n\r\nclass EventLabel2 extends React.Component {\r\n getFromGroup = () => {\r\n const { groups, name, groupName } = this.props;\r\n if (!name || !groupName) return;\r\n let n = name.toUpperCase();\r\n let g = groupName.toUpperCase();\r\n let group = groups[g];\r\n\r\n if (!group) {\r\n return `*${name}*`;\r\n } else if (!Array.isArray(group) && group.loading) {\r\n return `*${name}*`;\r\n } else if (!group.find((g) => g.name == n)) {\r\n create(name, groupName);\r\n return `*${name}*`;\r\n } else {\r\n return group.find((g) => g.name == n).value;\r\n }\r\n };\r\n render() {\r\n let text = this.getFromGroup();\r\n return {text};\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n groups: state.eventLabel.groups,\r\n loading: state.eventLabel.loading,\r\n error: state.eventLabel.error,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(EventLabel2);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useEffect, useState } from \"react\";\r\nimport EventLabel2, { init } from \"../core/EventLabel2/EventLabel2\";\r\n\r\nconst CountdownTimer = (props) => {\r\n const [time, setTime] = useState(\"\");\r\n const [clear, setClear] = useState(false)\r\n const { datetime, style } = props;\r\n useEffect(() => {\r\n const t = new Date();\r\n console.log(props.cms)\r\n const { eventId, languageCode } = props.cms;\r\n const timer = setInterval(\r\n () => countdown(t.setSeconds(t.getSeconds() + 1)),\r\n 1000\r\n );\r\n init(eventId, \"Cms.Countdown\", languageCode || \"swe\");\r\n return () => clearInterval(timer);\r\n }, []);\r\n const countdown = (currentTime) => {\r\n if(clear) return;\r\n let secondsLeft = (new Date(datetime) - new Date(currentTime)) / 1000;\r\n let time = \"\";\r\n\r\n var delta = Math.abs(datetime - currentTime) / 1000;\r\n var days = Math.floor(delta / 86400);\r\n delta -= days * 86400;\r\n var hours = Math.floor(delta / 3600) % 24;\r\n delta -= hours * 3600;\r\n var minutes = Math.floor(delta / 60) % 60;\r\n delta -= minutes * 60;\r\n var seconds = Math.floor(delta % 60);\r\n\r\n if (secondsLeft <= 0) {\r\n setTime(null);\r\n setClear(true)\r\n return;\r\n }\r\n\r\n setTime({\r\n days: days < 10 && days > 0 ? \"0\" + days : days,\r\n hours: hours < 10 && hours > 0 ? \"0\" + hours : hours,\r\n minutes: minutes < 10 && minutes > 0 ? \"0\" + minutes : minutes,\r\n seconds: seconds < 10 && seconds > 0 ? \"0\" + seconds : seconds,\r\n });\r\n\r\n \r\n };\r\n\r\n if (clear) return null;\r\n\r\n const { template } = props;\r\n \r\n if (!template) return null;\r\n\r\n const { content, subtitle } = template.content;\r\n\r\n const timeBadgeStyle = {\r\n backgroundColor: content.backgroundColor,\r\n color: subtitle.color,\r\n fontFamily: subtitle.fontFamily,\r\n };\r\n const textStyle = {\r\n color: subtitle.color,\r\n fontFamily: subtitle.fontFamily,\r\n };\r\n\r\n if(!time) return null;\r\n\r\n const { days, hours, minutes, seconds } = time;\r\n\r\n return (\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {days}\r\n
\r\n \r\n
\r\n
\r\n
\r\n {hours}\r\n
\r\n \r\n
\r\n
\r\n
\r\n {minutes}\r\n
\r\n \r\n
\r\n
\r\n
\r\n {seconds}\r\n
{\" \"}\r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template.template,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(CountdownTimer);\r\n","import React, { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport InsertInvitationIcon from \"@material-ui/icons/InsertInvitation\";\r\nimport JirangoButton from \"../../../components/UI/Buttons/JirangoButton\";\r\nimport Axios from \"axios\";\r\nimport EventLabel2, { init } from \"../../../../core/EventLabel2/EventLabel2\";\r\n\r\nconst CalendarInvitation = (props) => {\r\n const { type, value, contentId, cms, template, settings } = props;\r\n\r\n useEffect(() => {\r\n const t = new Date();\r\n const { eventId, languageCode } = props.cms;\r\n init(eventId, \"Cms.CalendarInvitation\", languageCode || \"swe\");\r\n }, []);\r\n // const handleClick = () => {\r\n // let badgeNo = props.attendee.orders[props.attendee.activePersonNo].badgeNo;\r\n // if (!settings.invitationId) return;\r\n // Axios.get(`./api/calendar/geticalfile/${settings.invitationId}?badgeNo=${badgeNo}`, {\r\n // responseType: \"arraybuffer\",\r\n // }).then((response) => {\r\n // /* fileSaver.saveAs(response, \"Hej\"); */\r\n // });\r\n // };\r\n\r\n return (\r\n \r\n
\r\n \r\n {value || }\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n form: state.form,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n template: state.template,\r\n language: state.language,\r\n page: state.page,\r\n badgeNo: state.attendee && state.attendee.orders && state.attendee.orders.length > 0 ? state.attendee.orders[state.attendee.activePersonNo].badgeNo : \"\",\r\n };\r\n}\r\nexport default connect(mapStateToProps)(CalendarInvitation);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport JirangoButton from \"../../cms/components/UI/Buttons/JirangoButton\";\r\nimport StyleWrapper from \"../../cms/areas/template/components/StyleWrapper\";\r\nimport TinyEditor from \"../../cms/components/plugins/tiny_plugin/TinyEditor\";\r\nimport { sourceTypes } from \"../../constants/cms/sourceType\";\r\nimport \"./EventLabel.css\";\r\nimport MapContainer from \"../../cms/components/plugins/GoogleMaps/MapContainer\";\r\nimport { toKebabCase } from \"../../helpers/cssHelper\";\r\nimport { ReCaptchaContainer } from \"../../cms/elements/element/Content/Widgets/ReCaptchaContainer/ReCaptchaContainer\";\r\nimport VideoElement from \"../../cms/elements/element/Content/Widgets/VideoElement\";\r\nimport ImageElement from \"../../cms/elements/element/Content/Widgets/ImageElement/ImageElement\";\r\nimport { compareDates } from \"../../helpers/dateHelper\";\r\nimport CountdownTimer from \"../../components/CountdownTimer\";\r\nimport CalendarInvitation from \"../../cms/elements/element/CalendarInvitation/CalendarInvitation\";\r\n\r\nconst defaultImage = \"https://images.unsplash.com/photo-1517484030358-fd0cca3d33d0?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=500&q=60\";\r\n\r\nclass EventLabel extends React.PureComponent {\r\n state = {\r\n editor: {},\r\n isMediaVaultOpen: false,\r\n isCropping: false,\r\n containerStyle: null,\r\n baseValue: 0,\r\n saveCrop: false,\r\n style: \"\",\r\n marginTop: 0,\r\n reRender: false,\r\n data: null,\r\n imageLoaded: false,\r\n buttonShow: false,\r\n };\r\n buttonTimeHandler = () => {\r\n const { editMode } = this.props.cms;\r\n const { timer, endDate, startDate } = this.props.settings;\r\n /* let endDate = new Date().getTime() + 1 * 60000; */\r\n if (!timer) {\r\n this.setState({ buttonShow: true });\r\n return;\r\n }\r\n if (startDate || endDate) {\r\n if (startDate && !this.state.buttonShow && compareDates(startDate)) {\r\n if (!endDate || (endDate && +new Date() < +new Date(endDate))) {\r\n this.setState({ buttonShow: true });\r\n }\r\n } else if (endDate && +new Date() > +new Date(endDate)) {\r\n this.setState({ buttonShow: false });\r\n } else {\r\n this.buttonTimer = setInterval(() => {\r\n if (startDate && !this.state.buttonShow && compareDates(startDate)) {\r\n if (!endDate || (endDate && +new Date() < +new Date(endDate))) {\r\n this.setState({ buttonShow: true });\r\n if (!endDate) clearInterval(this.buttonTimer);\r\n }\r\n }\r\n if (endDate && +new Date() > +new Date(endDate)) {\r\n this.setState({ buttonShow: false });\r\n clearInterval(this.buttonTimer);\r\n }\r\n }, 10000);\r\n }\r\n } else {\r\n this.setState({ buttonShow: true });\r\n }\r\n };\r\n componentDidMount() {\r\n this.buttonTimeHandler();\r\n if (this.props.settings.style !== undefined && this.props.settings.style.maxHeight !== undefined && this.props.settings.style.maxHeight !== \"unset\") {\r\n this.setState({\r\n containerStyle: {\r\n height: this.imgRef.clientHeight,\r\n width: this.imgRef.clientWidth,\r\n baseValue: this.imgRef.clientHeight,\r\n },\r\n });\r\n if (this.props.type === \"IMG\" && this.props.settings.type === \"FULL\" && this.props.v === \"\") {\r\n this.props.onChange(this.props.settings.style.maxHeight + \"px\", \"data.style.maxHeight\");\r\n }\r\n }\r\n }\r\n componentDidUpdate(prevProps, prevState) {\r\n if (this.props.settings.style !== undefined && this.props.settings.style.maxHeight !== undefined && this.state.imageLoaded && this.imgRef && this.props.value !== prevProps.value) {\r\n this.setState({\r\n containerStyle: {\r\n height: this.imgRef.clientHeight,\r\n width: this.imgRef.clientWidth,\r\n baseValue: this.imgRef.clientHeight,\r\n },\r\n });\r\n if (this.props.type === \"IMG\" && this.props.settings.type === \"FULL\") {\r\n if (this.props.value && this.props.value.toString().includes(\"cropped\")) return;\r\n this.props.onChange(this.imgRef.clientHeight + \"px\", \"data.style.maxHeight\");\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (this.buttonTimer) clearInterval(this.buttonTimer);\r\n }\r\n setImageHeight = () => {};\r\n handleOnChange = (value) => {\r\n this.props.onChange(value, \"props.value\", this.props.contentId);\r\n };\r\n handleExtra = (path, value) => {\r\n this.props.onChange(value, path);\r\n };\r\n changeImage = (url) => {\r\n this.setState(\r\n {\r\n isMediaVaultOpen: false,\r\n },\r\n () => {\r\n this.props.onChange(url, \"props.value\");\r\n }\r\n );\r\n };\r\n setImage = (url) => {\r\n this.handleOnChange(url);\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n toggleCroppie = () => {\r\n if (!this.state.containerStyle) {\r\n this.setState({\r\n containerStyle: {\r\n height: this.imgRef.clientHeight,\r\n width: this.imgRef.clientWidth,\r\n },\r\n isCropping: !this.state.isCropping,\r\n });\r\n } else {\r\n this.setState({ isCropping: !this.state.isCropping });\r\n }\r\n };\r\n handleCropSave = (value) => {\r\n this.setState({ value: value }, () => {\r\n this.setImage(value);\r\n this.setState({ isCropping: false });\r\n });\r\n };\r\n handleImageLoaded = () => {\r\n this.setState({ imageLoaded: true });\r\n };\r\n imageAlignment = (pos) => {\r\n switch (pos) {\r\n case \"center\":\r\n return \"0px auto 0px auto\";\r\n case \"right\":\r\n return \"0px 0px 0px auto\";\r\n case \"left\":\r\n return \"0px auto 0px 0px\";\r\n default:\r\n return \"0px auto 0px auto\";\r\n }\r\n };\r\n render() {\r\n const { form, cms, template, selectedElement } = this.props;\r\n const { settings, type, value, contentId, data, isColumnChild, onSelect } = this.props;\r\n let v = \"\";\r\n if (!value && (type === \"TEXT\" || type === \"BUTTON\")) v = `

Text

`;\r\n else if (value === \"\" && type === \"IMG\") v = defaultImage;\r\n else v = value;\r\n return (\r\n \r\n {type && (\r\n (this.imgRef = r)}\r\n className={\"responsive-col-image\"}\r\n style={{\r\n height: \"auto\",\r\n width: \"100%\",\r\n display: type === \"MAP\" ? \"grid\" : \"flex\",\r\n }}\r\n >\r\n {type === \"IMG\" && }\r\n {type === \"TEXT\" && (\r\n \r\n {cms.editMode /* && selectedElement && selectedElement.contentId === contentId */ ? (\r\n
\r\n \r\n \r\n
\r\n ) : (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n )}\r\n {type === \"DIVIDER\" && (\r\n \r\n \r\n \r\n )}\r\n {type === \"MAP\" ? : null}\r\n {type === \"CALENDAR_INVITATION\" ? : null}\r\n {type === \"BUTTON\" ? (\r\n
\r\n {settings.timer && settings.startDate ? : null}\r\n \r\n settings.actionLink\r\n ? window.open(\r\n convertUrl(\r\n settings.actionLink,\r\n this.props.attendee !== undefined && this.props.attendee.orders !== undefined && this.props.attendee.orders.length > 0 ? this.props.attendee.orders[0] : null\r\n ),\r\n `_${settings.target}`\r\n )\r\n : null\r\n }\r\n >\r\n \r\n this.handleOnChange(e.target.value)}\r\n tagName=\"p\"\r\n />\r\n \r\n
\r\n ) : null}\r\n {type === \"FILTER\" ? : null}\r\n {type === \"VIDEO\" ? (\r\n { return e.contentId === contentId })} */\r\n autoplay={settings.autplay}\r\n frame={settings.frame}\r\n />\r\n ) : null}\r\n \r\n )}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n let selectedElement = null;\r\n let lang = undefined;\r\n if (state.cms.enviroment === sourceTypes.TEMPLATE) {\r\n selectedElement = state.template.selectedElement;\r\n }\r\n if (state.cms.enviroment === sourceTypes.PAGE) {\r\n selectedElement = state.page.selectedElement;\r\n lang = state.page.languageCode;\r\n }\r\n if (state.cms.enviroment === sourceTypes.FORM) {\r\n selectedElement = state.form.selectedElement;\r\n lang = state.form.languageCode;\r\n }\r\n return {\r\n alert: state.alert,\r\n form: state.form,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n selectedElement,\r\n template: state.template,\r\n language: state.language,\r\n page: state.page,\r\n attendee: state.attendee,\r\n lang,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(EventLabel);\r\n\r\nfunction convertUrl(url, order) {\r\n var newUrl = new URL(url);\r\n let params = newUrl.search;\r\n if (/\\[badgeno\\]|\\[clientkey\\]/gi.test(params)) {\r\n params = params.replace(/\\[badgeno\\]|\\[clientkey\\]/gi, order ? order.badgeNo : \"\");\r\n var basicUrl = newUrl.origin + newUrl.pathname + (order && order.badgeNo ? params : \"\");\r\n return basicUrl;\r\n }\r\n return url;\r\n}\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport EventLabel from \"../../../../core/EventLabel/EventLabel\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport { templateActions } from \"../../../../store/actions/cms/template/template.action\";\r\nimport { pageActions } from \"../../../../store/actions/cms/page/page.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport { conditionActions } from \"../../../../store/actions/cms/condition.action\";\r\n\r\nclass Content extends React.Component {\r\n handleUpdate = element => {\r\n const { dispatch, cms, page } = this.props;\r\n\r\n if (cms.enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n //Move this code to reducer\r\n if (element.parentName === \"HEADER\") {\r\n let el = template.content.header.content.find(f => {\r\n return f.contentId === element.contentId;\r\n });\r\n var indexOfRemovedEl = template.content.header.content.indexOf(el);\r\n if (indexOfRemovedEl > -1) {\r\n template.content.header.content.splice(indexOfRemovedEl, 1);\r\n template.content.header.content.push(element);\r\n }\r\n }\r\n if (element.parentName === \"FOOTER\") {\r\n let el = template.content.footer.content.find(f => {\r\n return f.contentId === element.contentId;\r\n });\r\n var indexOfRemovedEl = template.content.footer.content.indexOf(el);\r\n if (indexOfRemovedEl > -1) {\r\n template.content.footer.content.splice(indexOfRemovedEl, 1);\r\n template.content.footer.content.push(element);\r\n }\r\n }\r\n dispatch(templateActions.softUpdate(template));\r\n } else if (cms.enviroment === sourceTypes.PAGE) {\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n } else if (cms.enviroment === sourceTypes.FORM) {\r\n dispatch(formActions.updateFormElement(element));\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n };\r\n handleChange = (value, path, contentId = null) => {\r\n let elementCopy = deepClone(this.props.element);\r\n const names = path.split(\".\");\r\n if (names.length === 2) elementCopy[names[0]][names[1]] = value;\r\n else if (names.length === 3)\r\n elementCopy[names[0]][names[1]][names[2]] = value;\r\n this.handleUpdate(elementCopy);\r\n };\r\n render() {\r\n const { element } = this.props;\r\n if (\r\n element === undefined ||\r\n (element && element.data && element.data.hidden)\r\n )\r\n return null;\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n form: state.form,\r\n page: state.page,\r\n template: state.template.template,\r\n cms: state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Content);\r\n","import { inputValidator, validateGln, validateOrgno } from \"../../../../helpers/inputVaildator\";\r\n\r\nexport const invoiceFieldValidator = (input, type, data, countryCode = null, company = true) => {\r\n let isValid = true\r\n switch (type) {\r\n case \"Name\":\r\n if (data.required && /* input.toString().replace(/\\s/g, '').length && */ input.length === 0) isValid = false;\r\n break;\r\n case \"Address1\":\r\n if (data.required && /* input.toString().replace(/\\s/g, '').length && */ input.length === 0) isValid = false;\r\n break;\r\n case \"Address2\":\r\n isValid = true;\r\n break;\r\n case \"Zip\":\r\n if (data.required && /* input.toString().replace(/\\s/g, '').length && */ input.length === 0) isValid = false;\r\n break;\r\n case \"City\":\r\n if (data.required && /* input.toString().replace(/\\s/g, '').length && */ input.length === 0) isValid = false;\r\n break;\r\n case \"OrgNo\":\r\n if (data.required && /* input.toString().replace(/\\s/g, '').length && */ input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = validateOrgno(input, countryCode, company);\r\n }\r\n break;\r\n case \"GLN\":\r\n if (data.required/* && input.toString().replace(/\\s/g, '').length */ && input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = validateGln(input);\r\n }\r\n break;\r\n case \"Email\":\r\n if (data.required && /* input.toString().replace(/\\s/g, '').length && */input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = inputValidator(input, 'email');\r\n }\r\n break;\r\n case \"CountryCode\":\r\n if (data.readOnly) isValid = true;\r\n else if (data.required/* && input.toString().replace(/\\s/g, '').length */ && input.length === 0) isValid = false;\r\n break;\r\n case \"Telephone1\":\r\n if (data.required /* && input.toString().replace(/\\s/g, '').length */ && input.length === 0) isValid = false;\r\n break;\r\n default:\r\n break;\r\n }\r\n return isValid;\r\n}\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport { Col, FormFeedback, FormGroup, Input, Label, Row } from \"reactstrap\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { deepClone, toCamelCase } from \"../../../../helpers/objectHelper\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport { defaultInvoiceElement } from \"../../../models/defaultElements\";\r\nimport { conditionActions } from \"../../../../store/actions/cms/condition.action\";\r\nimport { labelAlignment } from \"../../../helpers/labelAlignment\";\r\nimport { securityHelper } from \"../../../../helpers/securityHelper\";\r\nimport { CountryList } from \"../../../../system/CountryList/CountryList\";\r\nimport { invoiceFieldValidator } from \"./invoiceFieldValidator\";\r\nimport IsRequiredSymbol from \"../../../../components/UI/Form/IsRequiredSymbol\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\nimport JirangoCheckbox2 from \"../../../../components/UI/Checkbox/JirangoCheckbox2\";\r\n\r\nclass PaymentOptions extends React.Component {\r\n state = {\r\n showInvoiceFields: true,\r\n showPaymentOptions: true,\r\n notSelectedMessage: 'YouNeedToSelectAPaymentOption',\r\n notSelected: false\r\n\r\n };\r\n componentDidMount() {\r\n const { element, dispatch } = this.props;\r\n if (\r\n element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.length === 1 &&\r\n element.data.paymentMethods.includes(\"invoice\")\r\n ) {\r\n this.addInvoiceFields();\r\n dispatch(attendeeActions.setPayMethod(\"invoice\"));\r\n } else if (\r\n element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.length === 1 &&\r\n element.data.paymentMethods.includes(\"dibs\")\r\n ) {\r\n dispatch(attendeeActions.setPayMethod(\"dibs\"));\r\n }\r\n if (\r\n this.props.getValidator &&\r\n typeof this.props.getValidator === \"function\"\r\n ) {\r\n console.log('payment validator')\r\n this.props.updateValidator(this.updateValidator);\r\n }\r\n }\r\n componentDidUpdate() {\r\n const { element } = this.props;\r\n if (\r\n element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.length === 1 &&\r\n element.data.paymentMethods.includes(\"invoice\")\r\n ) {\r\n this.addInvoiceFields();\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (\r\n this.props.updateValidator &&\r\n typeof this.props.updateValidator === \"function\"\r\n ) {\r\n console.log('will umount')\r\n this.props.updateValidator(this.updateValidator, true);\r\n }\r\n }\r\n addFieldProps = type => {\r\n switch (type) {\r\n case \"Name\":\r\n return true;\r\n case \"Address1\":\r\n return true;\r\n case \"Address2\":\r\n return false;\r\n case \"Zip\":\r\n return true;\r\n case \"City\":\r\n return true;\r\n case \"OrgNo\":\r\n return true;\r\n case \"GLN\":\r\n return false;\r\n case \"Email\":\r\n return false;\r\n case \"CountryCode\":\r\n return true;\r\n case \"Telephone1\":\r\n return false;\r\n default:\r\n return false;\r\n }\r\n };\r\n updateValidator = () => {\r\n if (\r\n this.props.getValidator &&\r\n typeof this.props.getValidator === \"function\"\r\n ) {\r\n this.props.getValidator(() => this.validationReq());\r\n }\r\n }\r\n validationReq = () => {\r\n const invoiceFields = this.props.form.formElements\r\n .filter(el => el.type == elementConstants.INVOICE_FIELD);\r\n let allValid = true;\r\n if (!this.props.attendee.payMethod && this.checkIfOrderHasValue() > 0) {\r\n allValid = false; this.setState({ notSelected: true })\r\n }\r\n else if (this.props.attendee.payMethod === 'invoice' && this.checkIfOrderHasValue() > 0) {\r\n invoiceFields.map(iv => {\r\n let isValid = invoiceFieldValidator(\r\n this.getFieldValue(iv),\r\n iv.props.name,\r\n iv.data\r\n );\r\n if (isValid === false) {\r\n allValid = false;\r\n }\r\n if (iv.isValid !== isValid) {\r\n let newElement = deepClone(iv);\r\n newElement.isValid = isValid;\r\n this.handleUpdate(newElement);\r\n }\r\n })\r\n }\r\n return allValid;\r\n }\r\n checkIfOrderHasValue = () => {\r\n const { attendee } = this.props;\r\n let value = 0;\r\n if (attendee.orders && attendee.orders.length > 0) {\r\n attendee.orders.map(o => {\r\n if (o.orderRow && o.orderRow.length > 0) {\r\n o.orderRow.map(or => {\r\n value += or.amount;\r\n\r\n })\r\n }\r\n })\r\n }\r\n if (value === NaN) value = 0;\r\n return value;\r\n }\r\n addInvoiceFields = () => {\r\n const missingInvoiceFields = [\r\n \"Name\",\r\n \"OrgNo\",\r\n \"GLN\",\r\n \"Telephone1\",\r\n \"Address1\",\r\n \"Address2\",\r\n \"Zip\",\r\n \"City\",\r\n \"CountryCode\",\r\n \"Email\",\r\n ];\r\n const { form } = this.props;\r\n let sortOrder = 0;\r\n let currentFields = form.formElements.filter(\r\n el => el.type == elementConstants.INVOICE_FIELD\r\n );\r\n if (currentFields && currentFields.length > 0) {\r\n currentFields.map(cf => {\r\n let index = missingInvoiceFields.indexOf(cf.data.name);\r\n if (index >= 0) {\r\n missingInvoiceFields.splice(index, 1);\r\n }\r\n });\r\n sortOrder = currentFields.length + 1;\r\n }\r\n if (missingInvoiceFields.length > 0) {\r\n let newElementList = [];\r\n missingInvoiceFields.map(mif => {\r\n let newElement = deepClone(defaultInvoiceElement);\r\n\r\n newElement.eventId = this.props.form.eventId;\r\n newElement.formId = this.props.form.formId;\r\n newElement.languageCode = this.props.form.languageCode;\r\n newElement.contentId = securityHelper.createGuid();\r\n newElement.sortOrder = sortOrder++;\r\n newElement.data.name = mif;\r\n newElement.isValid = undefined;\r\n newElement.data.required = this.addFieldProps(mif);\r\n newElementList.push(newElement);\r\n });\r\n let newForm = deepClone(form);\r\n newForm.formElements = Array.from(form.formElements).concat(\r\n newElementList\r\n );\r\n newForm.formElements.map(el => {\r\n if (el.type == elementConstants.INVOICE_FIELD) {\r\n el.props = {\r\n name: el.data.name,\r\n type: el.data.type,\r\n length: el.data.length,\r\n labels: el.data.labels,\r\n text: el.props.text || \"\"\r\n };\r\n }\r\n });\r\n this.props.dispatch(formActions.softUpdate(newForm, true));\r\n } else {\r\n let newForm = deepClone(form);\r\n let updated = false;\r\n newForm.formElements = Array.from(form.formElements);\r\n newForm.formElements.map(el => {\r\n if (el.type == elementConstants.INVOICE_FIELD) {\r\n if (\r\n !el.props ||\r\n (el.props &&\r\n (el.props.name !== el.data.name ||\r\n el.props.type != el.data.type ||\r\n el.props.length != el.data.length ||\r\n el.props.labels != el.data.labels))\r\n ) {\r\n el.props = {\r\n name: el.data.name,\r\n type: el.data.type,\r\n length: el.data.length,\r\n labels: el.data.labels,\r\n text: (el.props && el.props.text) || \"\"\r\n };\r\n updated = true;\r\n }\r\n }\r\n });\r\n if (updated) {\r\n this.props.dispatch(formActions.softUpdate(newForm, true));\r\n }\r\n }\r\n };\r\n forceValidate = element => {\r\n const { form } = this.props;\r\n const countryCodeField = form.formElements.find(el => {\r\n return (\r\n el.type == elementConstants.INVOICE_FIELD &&\r\n el.props.name === \"CountryCode\"\r\n );\r\n });\r\n let countryCode = null;\r\n if (countryCodeField) {\r\n countryCode = this.getFieldValue(countryCodeField);\r\n }\r\n if (countryCode && countryCode.length !== 3) {\r\n countryCode = null;\r\n }\r\n if (!element) {\r\n let currentFields = form.formElements.filter(\r\n el => el.type == elementConstants.INVOICE_FIELD\r\n );\r\n if (currentFields.length > 0) {\r\n let isValid = true;\r\n currentFields.map(el => {\r\n if (\r\n !invoiceFieldValidator(\r\n this.getFieldValue(el),\r\n el.data.name,\r\n el.data,\r\n countryCode\r\n )\r\n )\r\n isValid = false;\r\n });\r\n return isValid;\r\n } else {\r\n return true;\r\n }\r\n } else {\r\n return invoiceFieldValidator(\r\n this.getFieldValue(element),\r\n element.props.type,\r\n element.data,\r\n countryCode\r\n );\r\n }\r\n };\r\n removeInvoiceFields = () => {\r\n const { form } = this.props;\r\n let currentFields = form.formElements.filter(\r\n el => el.type == elementConstants.INVOICE_FIELD\r\n );\r\n if (currentFields.length > 0) {\r\n let newForm = deepClone(form);\r\n newForm.formElements = form.formElements.filter(\r\n el => el.type !== elementConstants.INVOICE_FIELD\r\n );\r\n this.props.dispatch(formActions.softUpdate(newForm, true));\r\n }\r\n };\r\n handleChange(e, element, path) {\r\n const names = path.split(\".\");\r\n const newElement = deepClone(element);\r\n newElement[names[0]][names[1]] = e.target.value;\r\n \r\n this.handleUpdate(newElement);\r\n }\r\n handleValueChange = (value, element) => {\r\n const { attendee, dispatch } = this.props;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(element.props.type)];\r\n let newType = undefined;\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n newType[toCamelCase(element.props.name)] = value;\r\n newOrder[toCamelCase(element.props.type)] = newType;\r\n console.log(\"payment\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n }\r\n let isValid = invoiceFieldValidator(\r\n value,\r\n element.props.name,\r\n element.data\r\n );\r\n if (isValid !== element.isValid) {\r\n let newElement = deepClone(element);\r\n newElement.isValid = isValid;\r\n this.handleUpdate(newElement);\r\n }\r\n };\r\n getFieldValue = element => {\r\n const { attendee } = this.props;\r\n if (attendee && attendee.orders && attendee.orders.length > 0) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n let type = order[toCamelCase(element.props.type)];\r\n if (type) {\r\n let val = type[toCamelCase(element.props.name)];\r\n if (val) {\r\n return val;\r\n }\r\n }\r\n }\r\n return \"\";\r\n };\r\n handleSelectOnChange = (o, path, el) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(el);\r\n if (names[1] === \"text\") {\r\n element[names[0]][names[1]] = o.value;\r\n element.isValid = invoiceFieldValidator(\r\n o.value,\r\n element.props.name,\r\n element.data\r\n );\r\n }\r\n this.handleValueChange(o.value, element)\r\n this.handleUpdate(element);\r\n };\r\n handleUpdate = element => {\r\n const { dispatch, cms } = this.props;\r\n element.forceValidationMessage = false;\r\n dispatch(formActions.updateFormElement(element));\r\n if (!cms.editMode) {\r\n dispatch(conditionActions.triggerCheck(element.formElementId));\r\n }\r\n };\r\n renderField = (element, index) => {\r\n const { cms, attendee } = this.props;\r\n const { template } = this.props.template;\r\n const parentElement = this.props.element;\r\n if (!element.props) {\r\n const { labels, name, type, length } = element.data;\r\n element.props = { ...element.props, labels, name, type, length };\r\n }\r\n\r\n let isRequired = this.addFieldProps(element.props.name);\r\n let fieldLabel = element.props.labels.find(l => {\r\n return (\r\n l.languageCode === this.props.form.languageCode &&\r\n l.text &&\r\n l.text.length > 0\r\n );\r\n });\r\n return (\r\n \r\n \r\n \r\n \r\n
\r\n {fieldLabel && element.props.name === \"Name\" ? (\r\n this.handleChange(e, \"props.labels\")}\r\n tagName=\"label\"\r\n />\r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n \r\n \r\n {element.props.name === \"CountryCode\" ? (\r\n \r\n \r\n \r\n \r\n {element.isValid === false ? (\r\n \r\n ) : null}\r\n \r\n \r\n ) : (\r\n \r\n \r\n this.handleValueChange(e.target.value, element)\r\n }\r\n autoComplete=\"off\"\r\n autoFocus={false}\r\n readOnly={element.data.readOnly || false}\r\n required={element.data.required || false}\r\n value={this.getFieldValue(element)}\r\n style={\r\n template &&\r\n template.content && {\r\n ...template.content.input,\r\n width: \"unset\",\r\n width: parentElement.data.style.width,\r\n wordBreak: \"break-word\"\r\n }\r\n }\r\n maxLength={element.data.maxCharacters}\r\n valid={element.isValid === true}\r\n invalid={element.isValid === false}\r\n />\r\n \r\n {element.isValid === false ? (\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n
\r\n
\r\n );\r\n };\r\n selectPayMethod = method => {\r\n const { attendee, dispatch } = this.props;\r\n if (attendee && attendee.orders) {\r\n dispatch(attendeeActions.setPayMethod(method));\r\n }\r\n if (method === \"invoice\") {\r\n this.addInvoiceFields();\r\n } else {\r\n this.removeInvoiceFields();\r\n }\r\n this.setState({ notSelected: false })\r\n };\r\n getPayMethod = () => {\r\n const { attendee } = this.props;\r\n if (attendee && attendee.payMethod) {\r\n return attendee.payMethod;\r\n }\r\n return \"\";\r\n };\r\n handleSoftUpdate = element => {\r\n const { dispatch, cms } = this.props;\r\n const { enviroment } = cms;\r\n\r\n dispatch(formActions.updateFormElement(element));\r\n\r\n };\r\n checkAdapter = (value, method) => {\r\n this.selectPayMethod(method)\r\n }\r\n\r\n renderRadioButtons = () => {\r\n const { template } = this.props.template;\r\n let element = this.props.element;\r\n let selectedPayMethod = this.getPayMethod();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {this.state.notSelected === true ? (\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n \r\n\r\n
\r\n {element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.includes(\"dibs\") ? (\r\n \r\n ) : null}\r\n {element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.includes(\"invoice\") ? (\r\n \r\n /* this.selectPayMethod(`invoice`)}\r\n inline={true}\r\n value={selectedPayMethod === \"invoice\"}\r\n type=\"radio\"\r\n boxType=\"radio\"\r\n labelName={\"InvoicePaymentOption\"}\r\n /> */\r\n ) : null}\r\n
\r\n\r\n
\r\n );\r\n };\r\n render() {\r\n const { form, cms, element, attendee } = this.props;\r\n const { template } = this.props.template;\r\n const invoiceFields = form.formElements\r\n .filter(el => el.type == elementConstants.INVOICE_FIELD)\r\n .sort((a, b) => a.sortOrder - b.sortOrder);\r\n if (!cms.editMode && this.checkIfOrderHasValue() === 0 || this.checkIfOrderHasValue() === undefined) return null;\r\n return (\r\n \r\n {cms.editMode && element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.length === 0 ? (\r\n \r\n {\" \"}\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n ) : null}\r\n {cms.editMode && element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n (element.data.paymentMethods.length === 1 &&\r\n element.data.paymentMethods.includes(\"dibs\")) ? (\r\n \r\n {\" \"}\r\n \r\n

\r\n
\r\n ) : null}\r\n\r\n {element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n element.data.paymentMethods.length > 1 ? (\r\n \r\n \r\n {/* */}{this.renderRadioButtons()}{/* */}\r\n \r\n \r\n ) : null}\r\n {/* {element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n ((element.data.paymentMethods.length > 1 &&\r\n element.data.paymentMethods.includes(\"invoice\")) &&\r\n element.data.paymentMethods.includes(\"dibs\")) &&\r\n ( attendee.payMethod === 'dibs' || element.data.selectedPayMethod === 'dibs') &&\r\n invoiceFields.length > 0 ? (\r\n \r\n \r\n {invoiceFields.map(this.renderField)}\r\n \r\n \r\n ) : null} */}\r\n\r\n {element &&\r\n element.data &&\r\n element.data.paymentMethods &&\r\n ((element.data.paymentMethods.length === 1 &&\r\n element.data.paymentMethods.includes(\"invoice\")) ||\r\n (element.data.selectedPaymentMethod === \"invoice\" || attendee.payMethod === 'invoice')) &&\r\n invoiceFields.length > 0 ? (\r\n \r\n \r\n {invoiceFields.map(this.renderField)}\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template,\r\n cms: state.cms,\r\n attendee: state.attendee\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PaymentOptions);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { getKey } from \"../../../../helpers/UrlHelper\";\r\nimport { Label } from 'reactstrap';\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport VisibilityOffOutlinedIcon from '@material-ui/icons/VisibilityOffOutlined';\r\nimport ErrorOutlineIcon from '@material-ui/icons/ErrorOutline';\r\n\r\nclass UserPage extends React.Component {\r\n state = {\r\n badgeNo: null,\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (window.location && window.location.search && this.props.attendee.loading === false && this.state.badgeNo === null) {\r\n const params = new URLSearchParams(window.location.search);\r\n const badgeNo = params.get(getKey('badgeno', params))\r\n const { attendee } = this.props;\r\n if (badgeNo && attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined)\r\n this.setState({ badgeNo: this.props.attendee.orders[0].badgeNo })\r\n else {\r\n this.setState({ badgeNo: 'NOT_VALID' });\r\n }\r\n }\r\n }\r\n renderFrame = () => {\r\n const { badgeNo } = this.state;\r\n if (badgeNo && badgeNo !== 'NOT_VALID') {\r\n return (\r\n \r\n OldWebConfLayout\r\n )\r\n }\r\n return
\r\n
\r\n \r\n
\r\n }\r\n render() {\r\n const { badgeNo } = this.state;\r\n const { element, cms, attendee } = this.props;\r\n if (element === undefined || (element && element.data && element.data.hidden)) return null;\r\n return (\r\n \r\n {cms.editMode ?\r\n

\r\n \r\n

\r\n
\r\n :\r\n (badgeNo ?\r\n this.renderFrame()\r\n :
\r\n
\r\n \r\n
)\r\n }\r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n form: state.form,\r\n page: state.page,\r\n template: state.template.template,\r\n cms: state.cms,\r\n attendee: state.attendee\r\n };\r\n}\r\nexport default connect(mapStateToProps)(UserPage);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, Table } from \"reactstrap\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { securityHelper } from \"../../../../helpers/securityHelper\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport FindInPageOutlinedIcon from \"@material-ui/icons/FindInPageOutlined\";\r\nimport { displayMoney } from \"../../../../helpers/moneyHelpers\";\r\nimport { handleResponse } from \"../../../../helpers/handleresponse\";\r\nString.prototype.replaceHtmlEntites = function () {\r\n var s = this;\r\n var translate_re = /&(nbsp|amp|quot|lt|gt);/g;\r\n var translate = { nbsp: \" \", amp: \"&\", quot: '\"', lt: \"<\", gt: \">\" };\r\n return s.replace(translate_re, function (match, entity) {\r\n return translate[entity];\r\n });\r\n};\r\n\r\nclass PreConfirmation extends React.Component {\r\n state = {\r\n countries: [],\r\n };\r\n\r\n componentDidMount() {\r\n const { form } = this.props;\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n };\r\n fetch(`./api/country/`, requestOptions)\r\n .then(handleResponse)\r\n .then((countries) => {\r\n let countryList = [];\r\n /* setCountriesBase(countries) */\r\n countryList.push({ value: 0, label: \"\" });\r\n countries.map((c) => {\r\n countryList.push({ value: c.countryId, label: form.languageCode === \"swe\" || form.languageCode === undefined ? c.nameSwe : c.nameInt });\r\n });\r\n\r\n this.setState({ countries: countryList });\r\n });\r\n }\r\n\r\n renderPersonInformation = (order) => {\r\n let personFields = [];\r\n const fieldElements = this.props.form.formElements.filter((f) => {\r\n return f.type === elementConstants.FIELD && f.props.type === \"Person\";\r\n });\r\n if (fieldElements.length === 0) return null;\r\n if (!order.person) return null;\r\n for (const key in order.person) {\r\n let label = \"\";\r\n fieldElements.find((f) => {\r\n if (f.props.name.toLowerCase() === key.toLowerCase()) {\r\n label = f.props.labels[0].text;\r\n }\r\n });\r\n console.log('key', key, this.state.countries)\r\n personFields.push(\r\n \r\n {label}\r\n {key == \"countryId\" ? this.state.countries.find((c) => c.value == order.person[key])?.label : order.person[key]}\r\n \r\n );\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n {personFields.map((f) => {\r\n return f;\r\n })}\r\n \r\n
\r\n \r\n
\r\n );\r\n };\r\n renderCompanyInformation = (order) => {\r\n let fields = [];\r\n const elements = this.props.form.formElements.filter((f) => {\r\n return f.type === elementConstants.FIELD && f.props.type === \"Company\";\r\n });\r\n if (elements.length === 0) return null;\r\n if (!order.company) return null;\r\n for (const key in order.company) {\r\n let label = \"\";\r\n elements.find((f) => {\r\n if (f.props.name.toLowerCase() === key.toLowerCase()) {\r\n label = f.props.labels[0].text;\r\n }\r\n });\r\n fields.push(\r\n \r\n {label}\r\n {key == \"countryId\" ? this.state.countries.find((c) => c.value == order.company[key])?.label : order.company[key]}\r\n \r\n );\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n {fields.map((f) => {\r\n return f;\r\n })}\r\n \r\n
\r\n \r\n
\r\n );\r\n };\r\n\r\n renderQuestionInformation = (order) => {\r\n let questionFields = [];\r\n const questionElements = this.props.form.formElements.filter((f) => {\r\n return f.type === elementConstants.QUESTION;\r\n });\r\n\r\n if (questionElements.length === 0) return null;\r\n if (!order.answer) return null;\r\n\r\n order.answer.map((a, i) => {\r\n let question = questionElements.find((qe) => qe.id === a.questionId);\r\n let questionName = question.props.labels[0].text;\r\n let label = questionName;\r\n try {\r\n label = questionName.replace(/<[^>]*>?/gm, \"\");\r\n label = label.replaceHtmlEntites();\r\n } catch (error) {}\r\n if (a.answerRow.length > 0) {\r\n let options = a.answerRow.filter((ar) => ar.questionOptionId !== undefined);\r\n let text = a.answerRow.filter((ar) => ar.text !== undefined);\r\n\r\n if (text.length > 0) {\r\n text.map((ar, i) => {\r\n if (ar.text) {\r\n questionFields.push(\r\n \r\n {label}\r\n {ar.text}\r\n \r\n );\r\n }\r\n });\r\n }\r\n if (options.length > 0 && question.props.type === \"Option\") {\r\n questionFields.push(\r\n \r\n {label}\r\n \r\n {question.props.options.map((o, i) => {\r\n if (options.find((ox) => ox.questionOptionId === o.optionId)) {\r\n return (\r\n \r\n \r\n {\" \"}\r\n \r\n
\r\n
\r\n );\r\n }\r\n })}\r\n \r\n \r\n );\r\n }\r\n }\r\n });\r\n return (\r\n \r\n \r\n \r\n \r\n {questionFields.map((f) => {\r\n return f;\r\n })}\r\n \r\n
\r\n \r\n
\r\n );\r\n /* return questionFields; */\r\n };\r\n\r\n renderInvoiceInformation = (order) => {\r\n let fields = [];\r\n const elements = this.props.form.formElements.filter((f) => {\r\n return f.type === elementConstants.INVOICE_FIELD;\r\n });\r\n if (elements.length === 0) return null;\r\n if (!order.person) return null;\r\n for (const key in order.invoice) {\r\n let label = \"\";\r\n /* elements.find(f => {\r\n if (f.props.name.toLowerCase() === key.toLowerCase()) {\r\n label = f.props.labels[0].text;\r\n }\r\n }) */\r\n fields.push(\r\n \r\n \r\n \r\n \r\n {order.invoice[key]}\r\n \r\n );\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n {fields.map((f) => {\r\n return f;\r\n })}\r\n \r\n
\r\n \r\n
\r\n );\r\n };\r\n renderOrderInformation = (order) => {\r\n const { form } = this.props;\r\n let discounts = this.props.discounts || [];\r\n let ordersRows = [];\r\n const elements = this.props.form.formElements.filter((f) => {\r\n return f.type === elementConstants.EVENT;\r\n });\r\n if (elements.length === 0) return null;\r\n if (!order.orderRow) return null;\r\n if (order.orderRow.length === 1 && order.orderRow[0].eventId === form.eventId) return null;\r\n\r\n order.orderRow.map((or, i) => {\r\n let startDateTime = \"\";\r\n let endDateTime = \"\";\r\n let label = \"\";\r\n let basePrice = 0;\r\n let ev = or;\r\n if (or.eventId !== form.eventId || discounts.find((d) => d.targetEventId == or.eventId)) {\r\n elements.find((f) => {\r\n if (f.id === or.eventId) {\r\n startDateTime = new Date(f.props.startDateTime).toLocaleString().substring(0, 16);\r\n endDateTime = new Date(f.props.endDateTime).toLocaleString().substring(0, 16);\r\n label = f.props.name;\r\n basePrice = f.props.amount;\r\n try {\r\n label = label.replace(/<[^>]*>?/gm, \"\");\r\n label = label.replaceHtmlEntites();\r\n } catch (error) {}\r\n }\r\n });\r\n\r\n ordersRows.push(\r\n \r\n {label}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventStartDateTime\" && ds.value === true) ? {startDateTime} : null}\r\n\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventEndDateTime\" && ds.value === true) ? {endDateTime} : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventPrice\" && ds.value === true) ? (\r\n {this.displayDiscountPrice(ev.amount, ev.eventId, ev.vatPercent)}\r\n ) : null}\r\n {this.displayDiscount(ev.amount, ev.eventId, ev.vatPercent, order.orderId)}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventVatPrecentage\" && ds.value === true) ? {ev.vatPercent}% : null}\r\n \r\n );\r\n }\r\n });\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventStartDateTime\" && ds.value === true) ? (\r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventEndDateTime\" && ds.value === true) ? (\r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventPrice\" && ds.value === true) ? (\r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventPrice\" && ds.value === true) ? (\r\n \r\n ) : null}\r\n {form.displayEventSettings.find((ds) => ds.name === \"ShowEventVatPrecentage\" && ds.value === true) ? (\r\n \r\n ) : null}\r\n \r\n \r\n \r\n {ordersRows.map((or) => {\r\n return or;\r\n })}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n );\r\n };\r\n\r\n displayDiscount = (price, eventId, vatPercent, orderId = null) => {\r\n const { form, orders, activePersonNo } = this.props;\r\n let discounts = this.props.discounts || [];\r\n\r\n let discountAmount = 0;\r\n\r\n if (orderId > 0 && orders.find((o) => o.orderId == orderId)?.orderRow?.find((o) => o.eventId == eventId)) {\r\n discountAmount = orders.find((o) => o.orderId == orderId)?.orderRow?.find((o) => o.eventId == eventId)?.discount;\r\n }\r\n\r\n if (orderId > 0) {\r\n discounts = orders.find((o) => o.orderId == orderId)?.discounts || [];\r\n }\r\n\r\n discounts\r\n .filter((d) => (d.targetEventId == eventId && d.value != 0) || (d.targetEventId == null && d.valueType == \"Percent\" && d.value != 0))\r\n .sort(function (a, b) {\r\n return a.value - b.value;\r\n })\r\n .map((d) => {\r\n discountAmount += d.valueType == \"Percent\" ? (price - discountAmount) * (d.value / 100) : d.value;\r\n });\r\n\r\n /* if (discounts.length == 0 && orders[activePersonNo].orderRow?.find((o) => o.eventId == eventId)) {\r\n discountAmount = orders[activePersonNo].orderRow?.find((o) => o.eventId == eventId)?.discount;\r\n } */\r\n\r\n if (form.displayEventSettings.find((ds) => ds.name === \"ShowEventIncVat\" && ds.value === true)) {\r\n discountAmount = displayMoney(parseFloat(discountAmount), vatPercent);\r\n }\r\n return (\r\n <>\r\n {discountAmount} {` ${form.currency || \"SEK\"}`}\r\n \r\n );\r\n };\r\n\r\n displayDiscountPrice = (price, eventId, vatPercent) => {\r\n const { form } = this.props;\r\n\r\n const newPrice = parseFloat(form.displayEventSettings.find((ds) => ds.name === \"ShowEventIncVat\" && ds.value === true) ? displayMoney(parseFloat(price), vatPercent) : price);\r\n\r\n return (\r\n <>\r\n \r\n {newPrice} {` ${form.currency || \"SEK\"}`}\r\n \r\n \r\n );\r\n };\r\n render() {\r\n const { orders, cms } = this.props;\r\n if (cms.editMode)\r\n return (\r\n \r\n \r\n
\r\n \r\n \r\n

\r\n \r\n

\r\n
\r\n \r\n );\r\n else if (orders.length === 0) return null;\r\n return (\r\n \r\n {orders.map((o, i) => {\r\n return (\r\n
\r\n {this.renderPersonInformation(o)}\r\n {this.renderCompanyInformation(o)}\r\n {this.renderInvoiceInformation(o)}\r\n {this.renderQuestionInformation(o)}\r\n {this.renderOrderInformation(o)}\r\n
\r\n );\r\n })}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.form.selectedElement,\r\n form: state.form,\r\n event: state.event,\r\n template: state.template.template,\r\n cms: state.cms,\r\n activePersonNo: state.attendee.activePersonNo,\r\n orders: state.attendee.orders,\r\n discounts: state.attendee.orders ? state.attendee.orders[state.attendee.activePersonNo].discounts : [],\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PreConfirmation);\r\n","import React, { Fragment, useEffect, useState } from \"react\";\r\nimport axios from \"axios\";\r\nimport { connect } from \"react-redux\";\r\nimport { InputGroup, InputGroupAddon, InputGroupText, Input, Button, FormGroup, Label } from \"reactstrap\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport Col from \"reactstrap/lib/Col\";\r\nimport Row from \"reactstrap/lib/Row\";\r\nimport { labelAlignment } from \"../../../helpers/labelAlignment\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport CheckCircleOutlineIcon from \"@material-ui/icons/CheckCircleOutline\";\r\nimport { Avatar, ListItem, ListItemAvatar, ListItemIcon, ListItemText } from \"@material-ui/core\";\r\nconst Discount = (props) => {\r\n const [code, setCode] = useState(\"\");\r\n const [isValid, setIsValid] = useState(null);\r\n const [isChangeLocked, setIsChangeLocked] = useState(false);\r\n const [validCodes, setValidCodes] = useState([]);\r\n\r\n const { cms, template, previewDevice, element, attendee, form } = props;\r\n const { input, label, button } = template;\r\n\r\n useEffect(() => {\r\n setIsChangeLocked(attendee && attendee.orders && attendee.orders.length > 0 && attendee.orders[0].orderId !== undefined && element.data.changeLock);\r\n fetchEarlyBird();\r\n fetchOrderDiscounts();\r\n }, []);\r\n\r\n useEffect(() => {\r\n fetchEarlyBird();\r\n }, [attendee.activePersonNo]);\r\n\r\n const fetchEarlyBird = () => {\r\n axios.get(`./api/discount/${form.eventId}`).then(({ data }) => {\r\n console.log(data);\r\n if (data && !cms.editMode) {\r\n let order = deepClone(attendee.orders[attendee.activePersonNo]);\r\n\r\n if (!Array.isArray(order.discounts)) {\r\n order.discounts = [];\r\n }\r\n\r\n if (!order.discounts.find((d) => data.find((dd) => dd.code == d.code))) {\r\n setValidCodes([...validCodes, ...data]);\r\n props.dispatch(attendeeActions.updateDiscounts([...order.discounts, ...data], attendee.activePersonNo));\r\n }\r\n /* else if (data && !order.discounts.find((d) => d.code == data.code)) {\r\n order.discounts.push(data);\r\n\r\n setValidCodes([...validCodes, data]);\r\n\r\n props.dispatch(attendeeActions.updateDiscounts(order.discounts, attendee.activePersonNo));\r\n } */\r\n }\r\n });\r\n };\r\n\r\n const fetchOrderDiscounts = () => {\r\n if (attendee.orders && attendee.orders.length > 0 && !cms.editMode && attendee.orders[attendee.activePersonNo].orderId > 0) {\r\n axios.get(`./api/discount/mydiscounts/${attendee.orders[attendee.activePersonNo].orderId}`).then(({ data }) => {\r\n if (data) {\r\n /* let order = deepClone(attendee.orders[attendee.activePersonNo]);\r\n\r\n if (!Array.isArray(order.discounts)) {\r\n order.discounts = [];\r\n } */\r\n /* order.discounts = [...order.discounts, ...data]; */\r\n\r\n setValidCodes([...validCodes, ...data]);\r\n /* props.dispatch(attendeeActions.updateOrder(order, attendee.activePersonNo)); */\r\n }\r\n });\r\n }\r\n };\r\n\r\n const validateCode = () => {\r\n const { dispatch } = props;\r\n axios.get(`./api/discount/validate/${form.eventId}?code=${code}`).then(({ data }) => {\r\n const rebate = data;\r\n\r\n if (rebate) {\r\n let order = deepClone(attendee.orders[attendee.activePersonNo]);\r\n\r\n if (!Array.isArray(order.discounts)) {\r\n order.discounts = [];\r\n }\r\n\r\n if (order.discounts.find((d) => d.code == rebate.code)) return;\r\n\r\n order.discounts.push(rebate);\r\n setCode(\"\");\r\n setIsValid(true);\r\n setValidCodes([...validCodes, rebate]);\r\n\r\n console.log(\"discount\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(order, attendee.activePersonNo));\r\n } else {\r\n setIsValid(false);\r\n }\r\n });\r\n };\r\n const inputOnChange = (code) => {\r\n setIsValid(null);\r\n setCode(code);\r\n };\r\n if (element && element.data && element.data.hidden && !cms.editMode) return null;\r\n\r\n return (\r\n \r\n {element.data.hidden ? (\r\n
\r\n \r\n
\r\n ) : null}\r\n \r\n \r\n \r\n \r\n \r\n \r\n inputOnChange(e.target.value)}\r\n autoComplete=\"off\"\r\n autoFocus={false}\r\n readOnly={isChangeLocked}\r\n required={element.data.required || false}\r\n value={code}\r\n valid={isValid == true}\r\n invalid={isValid == false}\r\n style={\r\n template && {\r\n ...template.content.input,\r\n width: cms.editMode && previewDevice === \"smartphone\" ? \"100%\" : element.data.style.width.toString().includes(\"%\") ? element.data.style.width : element.data.style.width + \"%\",\r\n maxWidth: cms.editMode && previewDevice === \"smartphone\" ? \"100%\" : element.data.style.width.toString().includes(\"%\") ? element.data.style.width : element.data.style.width + \"%\",\r\n wordBreak: \"break-word\",\r\n opacity: isChangeLocked ? input.readOnlyOpacity : 1,\r\n fontSize: input.fontSize + \" !important\",\r\n }\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {isValid == false ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n \r\n {validCodes.map((v, i) => {\r\n const { code, value, name, valueType } = v;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {code || name} \r\n \r\n }\r\n secondary={\r\n \r\n {`${value}${valueType == \"Percent\" ? \"%\" : \" \" + (props.form.currency || \"SEK\")} `} \r\n \r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n //maybe set rebates to redux\r\n selectedElement: state.form.selectedElement,\r\n form: state.form,\r\n event: state.event,\r\n /* rElement: state.element, */\r\n template: state.template && state.template.template ? state.template.template.content : {},\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(Discount);\r\n{\r\n /* \r\n\r\n\r\n\r\n \r\n\r\n */\r\n}\r\n","export default __webpack_public_path__ + \"static/media/doc.bbce7705.svg\";","export default __webpack_public_path__ + \"static/media/jpg.6ca0b6ea.svg\";","export default __webpack_public_path__ + \"static/media/mp.a52dc8f2.svg\";","export default __webpack_public_path__ + \"static/media/png.046434e7.svg\";","export default __webpack_public_path__ + \"static/media/svg.2568c680.svg\";","export default __webpack_public_path__ + \"static/media/txt.9122a637.svg\";","export default __webpack_public_path__ + \"static/media/xls.6834159c.svg\";","export default __webpack_public_path__ + \"static/media/pdf.1e356d53.svg\";","export default __webpack_public_path__ + \"static/media/ppt.ac3be26a.svg\";","import React from \"react\";\r\nimport \"croppie/croppie.css\";\r\nimport { connect } from \"react-redux\";\r\nimport { deepClone, toCamelCase } from \"../../../../helpers/objectHelper\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport { Avatar, IconButton, LinearProgress, List, ListItem, ListItemAvatar, ListItemSecondaryAction, ListItemText } from \"@material-ui/core\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { handleResponse } from \"../../../../helpers/handleresponse\";\r\nimport Popper from \"@material-ui/core/Popper\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport AlertTitle from \"@material-ui/lab/AlertTitle\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\nimport DeleteForeverIcon from \"@material-ui/icons/DeleteForever\";\r\nimport styled from \"styled-components\";\r\nimport PublishIcon from \"@material-ui/icons/Publish\";\r\nimport CheckIcon from \"@material-ui/icons/Check\";\r\nimport FolderOpenIcon from \"@material-ui/icons/FolderOpen\";\r\nimport docIcon from \"./FiletypeIcons/doc.svg\";\r\nimport jpgIcon from \"./FiletypeIcons/jpg.svg\";\r\nimport mpIcon from \"./FiletypeIcons/mp.svg\";\r\nimport pngIcon from \"./FiletypeIcons/png.svg\";\r\nimport svgIcon from \"./FiletypeIcons/svg.svg\";\r\nimport txtIcon from \"./FiletypeIcons/txt.svg\";\r\nimport xlsIcon from \"./FiletypeIcons/xls.svg\";\r\nimport pdfIcon from \"./FiletypeIcons/pdf.svg\";\r\nimport pptIcon from \"./FiletypeIcons/ppt.svg\";\r\nimport { form } from \"../../../../store/reducers/cms/form/form.reducer\";\r\n\r\nconst FileIcon = styled.img`\r\n width: 50px;\r\n maxwidth: 50px;\r\n max-height: 50px;\r\n height: auto;\r\n`;\r\n\r\nclass FileUploader extends React.Component {\r\n state = {\r\n source: \"\",\r\n sourceFilename: \"\",\r\n sourceType: \"\",\r\n showConflictPopper: false,\r\n allowedFiletypes: [],\r\n uploading: false,\r\n showDeleteDialog: false,\r\n deleteTarget: null,\r\n };\r\n\r\n toBase64 = (file) =>\r\n new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = (error) => reject(error);\r\n });\r\n\r\n componentDidUpdate(prevProps) {\r\n if (\r\n !this.props.cms.editMode &&\r\n this.props.attendee.orders &&\r\n prevProps &&\r\n this.props.attendee.orders[this.props.attendee.activePersonNo]?.uploadedFiles?.length != prevProps.attendee.orders[prevProps.attendee.activePersonNo]?.uploadedFiles?.length\r\n ) {\r\n this.setState({ uploading: false });\r\n }\r\n }\r\n\r\n onFileSelected = async (e) => {\r\n const { dispatch, attendee, form } = this.props;\r\n const file = e.target.files[0];\r\n\r\n const order = attendee.orders[attendee.activePersonNo];\r\n\r\n const key = order.sqlStateNo;\r\n\r\n const hasNameConflict = order[toCamelCase(\"UploadedFiles\")]?.find((u) => u.name?.replace(`${key}_`, \"\") == file?.name);\r\n\r\n if (hasNameConflict) return this.setState({ showConflictPopper: true });\r\n\r\n const result = await this.toBase64(file).catch((e) => Error(e));\r\n\r\n if (result instanceof Error) {\r\n console.log(\"Error: \", result.message);\r\n this.setState({ errorMessage: result.message });\r\n return;\r\n }\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n console.log(order.sqlStateNo, form.sqlStateNo);\r\n if (!order.sqlStateNo || order.sqlStateNo != form.sqlStateNo) dispatch(attendeeActions.updateOrder(order, attendee.activePersonNo));\r\n }\r\n this.setState({ source: result, sourceFilename: file.name, sourceType: file.type, showConflictPopper: false }, this.setFileOnOrder);\r\n };\r\n\r\n setFileOnOrder = () => {\r\n const { dispatch, attendee } = this.props;\r\n const { source, sourceFilename, sourceType } = this.state;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"UploadedFiles\")];\r\n let newType = undefined;\r\n if (!type) {\r\n newType = [];\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify({\r\n file: source,\r\n name: `${order.sqlStateNo + attendee.activePersonNo}_${sourceFilename}`,\r\n type: sourceType,\r\n }),\r\n };\r\n this.setState({ uploading: true });\r\n fetch(`./api/files/fileUploadTemp/${order.eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then((res) => {\r\n newType.unshift(res);\r\n newOrder[toCamelCase(\"UploadedFiles\")] = newType;\r\n // console.log(\"pfImage\", order.orderRow, order, attendee.activePersonNo);\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n this.setState({ source: \"\", sourceFilename: \"\", sourceType: \"\" });\r\n console.log(this.fileInputRef);\r\n if (this.fileInputRef) this.fileInputRef.value = \"\";\r\n });\r\n }\r\n };\r\n removeUploadedFile = (file) => {\r\n const { attendee, dispatch } = this.props;\r\n if (attendee && attendee.orders) {\r\n let order = attendee.orders[attendee.activePersonNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"UploadedFiles\")];\r\n let newType = type.filter((f) => f.url !== file.url);\r\n newOrder[toCamelCase(\"UploadedFiles\")] = newType;\r\n dispatch(attendeeActions.updateOrder(newOrder, attendee.activePersonNo));\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify(file),\r\n };\r\n fetch(`./api/files/removeUploadedFile/${order.eventId}`, requestOptions);\r\n }\r\n\r\n this.setState({ deleteTarget: null });\r\n };\r\n\r\n confirmDelete = (confirmed) => {\r\n if (confirmed == true && this.state.deleteTarget) {\r\n this.removeUploadedFile(this.state.deleteTarget);\r\n this.setState({ showDeleteDialog: false });\r\n } else {\r\n this.setState({ showDeleteDialog: false, deleteTarget: null });\r\n }\r\n };\r\n\r\n render() {\r\n const { cms, template, element } = this.props;\r\n const { contentId } = this.props.element;\r\n const { attendee } = this.props;\r\n\r\n if (cms.editMode) {\r\n return (\r\n
\r\n

\r\n \r\n

\r\n

\r\n \r\n

\r\n
\r\n );\r\n }\r\n\r\n let order = null;\r\n if (attendee && attendee.orders) {\r\n order = attendee.orders[attendee.activePersonNo];\r\n }\r\n\r\n const key = order.badgeNo || order.sqlStateNo;\r\n // const { size, shape, viewport, defaultImage } = this.props.settings;\r\n console.log(order);\r\n return (\r\n
\r\n
\r\n
\r\n \r\n {this.state.source ? this.state.sourceFilename.replace(`${key}_`, \"\") : }\r\n
\r\n (this.fileInputRef = r)}\r\n style={{ display: \"none\" }}\r\n className=\"form-control\"\r\n type=\"file\"\r\n id=\"file-upload\"\r\n accept={element.data?.allowedFiletypes?.join(\"\")}\r\n onChange={(e) => this.onFileSelected(e)}\r\n />\r\n {/* \r\n \r\n */}\r\n
\r\n {this.state.showConflictPopper ? (\r\n <>\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n\r\n {this.state.uploading ? :
}\r\n {this.state.showDeleteDialog && this.state.deleteTarget ? : null}\r\n \r\n {order && order[toCamelCase(\"UploadedFiles\")]\r\n ? order[toCamelCase(\"UploadedFiles\")].map((f, i) => {\r\n return (\r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n {f.name.includes(`${order.sqlStateNo}_`) ? f.name.replace(`${order.sqlStateNo}_`, \"\") : f.name.replace(`${key}_`, \"\")}\r\n

\r\n }\r\n />\r\n \r\n this.setState({ showDeleteDialog: true, deleteTarget: f })}>\r\n \r\n \r\n \r\n
\r\n );\r\n })\r\n : null}\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template.template,\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(FileUploader);\r\n\r\nconst FileType = ({ type, source }) => {\r\n switch (type) {\r\n case \"pdf\":\r\n return ;\r\n case \"doc\":\r\n case \"docx\":\r\n return ;\r\n case \"jpg\":\r\n return ;\r\n case \"mp4\":\r\n return ;\r\n case \"png\":\r\n return ;\r\n case \"svg\":\r\n return ;\r\n case \"txt\":\r\n return ;\r\n case \"xls\":\r\n case \"xlsx\":\r\n return ;\r\n case \"ppt\":\r\n return ;\r\n default:\r\n break;\r\n }\r\n};\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport function ConfirmDialog({ action }) {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\n\r\nimport { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\n\r\nimport Question from \"../elements/element/Question/Question\";\r\nimport Field from \"../elements/element/Field/Field\";\r\nimport ProfileImageUploader from \"../elements/element/ProfileImageUploader/ProfileImageUploader\";\r\nimport Event from \"../elements/element/Event/Event\";\r\nimport Container from \"../elements/element/Container/Container\";\r\nimport Content from \"../elements/element/Content/Content\";\r\nimport PaymentOptions from \"../elements/element/PaymentOptions/PaymentOptions\";\r\nimport UserPage from \"../elements/element/UserPage/UserPage\";\r\nimport PreConfirmation from \"../elements/element/PreConfirmation/PreConfirmation\";\r\nimport SystemLabel from \"../../system/SystemLabel/SystemLabel\";\r\nimport Discount from \"../elements/element/Discount/Discount\";\r\nimport GroupRegistration from \"../elements/element/GroupRegistration/GroupRegistration\";\r\nimport FileUploader from \"../elements/element/FileUploader/FileUploader\";\r\n\r\nexport const renderElement = (type, element, dropControl, parentTransform, getValidator, updateValidator, allowAdd) => {\r\n switch (type) {\r\n case elementConstants.DELETED:\r\n return (\r\n
\r\n
\r\n {element.type == elementConstants.EVENT ? : null}\r\n {element.type == elementConstants.QUESTION ? : null}\r\n {element.type == elementConstants.FIELD ? : null}\r\n {element.type == elementConstants.CONTENT ? : null}\r\n {element.type == elementConstants.CONTAINER ? : null}\r\n {element.type == elementConstants.USER_PAGE ? : null}\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n case elementConstants.EVENT:\r\n return ;\r\n case elementConstants.FIELD:\r\n return ;\r\n case elementConstants.QUESTION:\r\n return ;\r\n case elementConstants.CONTAINER:\r\n return ;\r\n case elementConstants.CONTENT:\r\n return ;\r\n case elementConstants.PROFILEIMAGE_UPLOAD:\r\n return ;\r\n case elementConstants.PAYMENT_OPTIONS:\r\n return ;\r\n case elementConstants.USER_PAGE:\r\n return ;\r\n case elementConstants.PRE_CONFIRMATION:\r\n return ;\r\n case elementConstants.DISCOUNT:\r\n return ;\r\n case elementConstants.GROUP_REGISTRATION:\r\n return ;\r\n case elementConstants.FILE_UPLOADER:\r\n return ;\r\n default:\r\n return null;\r\n }\r\n};\r\n","import React from \"react\";\r\nimport { Icon } from \"@iconify/react\";\r\nimport FolderIcon from \"@material-ui/icons/FolderOutlined\";\r\nimport MenuIcon from \"@material-ui/icons/Menu\";\r\nimport TitleIcon from \"@material-ui/icons/Title\";\r\nimport FormatUnderlinedOutlinedIcon from \"@material-ui/icons/FormatUnderlinedOutlined\";\r\nimport TouchAppOutlinedIcon from \"@material-ui/icons/TouchAppOutlined\";\r\nimport LinkIcon from \"@material-ui/icons/Link\";\r\nimport SubtitlesOutlinedIcon from \"@material-ui/icons/SubtitlesOutlined\";\r\nimport TableChartOutlinedIcon from \"@material-ui/icons/TableChartOutlined\";\r\nimport GridOnOutlinedIcon from \"@material-ui/icons/GridOnOutlined\";\r\nimport CheckBoxOutlinedIcon from \"@material-ui/icons/CheckBoxOutlined\";\r\nimport BorderColorOutlinedIcon from \"@material-ui/icons/BorderColorOutlined\";\r\nimport OpenWithIcon from \"@material-ui/icons/OpenWith\";\r\nimport VerticalAlignBottomIcon from \"@material-ui/icons/VerticalAlignBottom\";\r\nimport VerticalAlignCenterIcon from \"@material-ui/icons/VerticalAlignCenter\";\r\nimport VerticalAlignTopIcon from \"@material-ui/icons/VerticalAlignTop\";\r\nimport SpaceBarIcon from \"@material-ui/icons/SpaceBar\";\r\nimport SliderIcon from \"@material-ui/icons/Tune\";\r\nimport SaveIcon from \"@material-ui/icons/Save\";\r\nimport UndoIcon from \"@material-ui/icons/Undo\";\r\nimport RedoIcon from \"@material-ui/icons/Redo\";\r\nimport OpenInNewIcon from \"@material-ui/icons/OpenInNew\";\r\nimport AddIcon from \"@material-ui/icons/Add\";\r\nimport ClearIcon from \"@material-ui/icons/Clear\";\r\nimport SettingsIcon from \"@material-ui/icons/SettingsOutlined\";\r\nimport PaletteOutlinedIcon from \"@material-ui/icons/PaletteOutlined\";\r\nimport ZoomOutIcon from \"@material-ui/icons/ZoomOut\";\r\nimport ZoomInIcon from \"@material-ui/icons/ZoomIn\";\r\nimport Rotate90DegreesCcwIcon from \"@material-ui/icons/Rotate90DegreesCcw\";\r\nimport CropIcon from \"@material-ui/icons/Crop\";\r\nimport CheckIcon from \"@material-ui/icons/Check\";\r\nimport ImageAspectRatioIcon from \"@material-ui/icons/ImageAspectRatio\";\r\nimport AspectRatioIcon from \"@material-ui/icons/AspectRatio\";\r\nimport CircleIcon from \"@material-ui/icons/RadioButtonUnchecked\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nimport CropLandscapeIcon from \"@material-ui/icons/CropLandscape\";\r\nimport SystemLabel from \"./SystemLabel\";\r\nimport DeleteOutlineOutlinedIcon from \"@material-ui/icons/DeleteOutlineOutlined\";\r\nimport AssignmentOutlinedIcon from \"@material-ui/icons/AssignmentOutlined\";\r\nimport AssignmentTurnedInOutlinedIcon from \"@material-ui/icons/AssignmentTurnedInOutlined\";\r\nimport ImagesIcon from \"@material-ui/icons/PhotoLibraryOutlined\";\r\nimport FilesIcon from \"@material-ui/icons/FileCopyOutlined\";\r\nimport FontsIcon from \"@material-ui/icons/FontDownloadOutlined\";\r\n/* import conditionalFlow from \"@iconify-icons/bpmn/conditional-flow\"; */\r\nimport FieldIcon from \"@material-ui/icons/ContactMailOutlined\";\r\nimport EventIcon from \"@material-ui/icons/Event\";\r\nimport RegIcon from \"@material-ui/icons/HowToReg\";\r\n/* import welcomeWidgetsMenus from \"@iconify/icons-dashicons/welcome-widgets-menus\"; */\r\nimport CalendarTodayIcon from \"@material-ui/icons/CalendarToday\";\r\nimport DragIcon from \"@material-ui/icons/DragIndicator\";\r\nimport AddBoxIcon from \"@material-ui/icons/AddBox\";\r\nimport ListAddIcon from \"@material-ui/icons/PlaylistAdd\";\r\nimport RestoreFromTrashIcon from \"@material-ui/icons/RestoreFromTrash\";\r\nimport MoreVertIcon from \"@material-ui/icons/MoreVert\";\r\n\r\nconst HorizontalAlignLeftIcon = () => ;\r\nconst HorizontalAlignCenterIcon = () => ;\r\nconst HorizontalAlignRightIcon = () => ;\r\n\r\nconst UnitIcon = () => ;\r\nconst HeaderIcon = () => ;\r\nconst FooterIcon = () => ;\r\nconst ContentIcon = () => ;\r\nconst BackgroundIcon = () => ;\r\nconst TextIcon = () => ;\r\nconst ScrollIcon = () => ;\r\nconst ThemeIcon = () => ;\r\nconst RightIcon = () => ;\r\nconst LeftIcon = () => ;\r\nconst TopIcon = () => ;\r\nconst BottomIcon = () => ;\r\nconst PagesIcon = () => ;\r\nconst CodeIcon = () => ;\r\nconst TemplateIcon = () => ;\r\nconst GlobalSettingsIcon = () => ;\r\nconst ModuleIcon = () => ;\r\nconst AdvandcedSettingsIcon = () => ;\r\nconst TextEditorIcon = () => ;\r\nconst VideoIcon = () => ;\r\nconst SpaceIcon = () => ;\r\nconst ContentViewIcon = () => ;\r\nconst OrderSummeryIcon = () => ;\r\nconst ImageIcon = () => ;\r\nconst CopyIcon = () => ;\r\nconst UploadIcon = () => ;\r\n/* const ConditionIcon = () => ; */\r\n/* const ContentModuleIcon = () => ; */\r\nconst QuestionIcon = () => ;\r\nconst SortIcon = () => ;\r\nconst OptionsIcon = () => ;\r\nconst EditorIcon = () => ;\r\nconst MenuItemIcon = () => ;\r\nconst MobileMenuIcon = () => ;\r\nconst NarrowIcon = () => ;\r\n\r\nexport const CustomIcon = ({ name, className, tooltip }) => {\r\n const icon = {getIcon(name)};\r\n return tooltip ? }>{icon} : icon;\r\n};\r\n\r\nconst getIcon = (name) => {\r\n switch (name.toUpperCase()) {\r\n case \"THEME\":\r\n return ;\r\n case \"MAIN\":\r\n return ;\r\n case \"MENU\":\r\n return ;\r\n case \"HEADER\":\r\n return ;\r\n case \"FOOTER\":\r\n return ;\r\n case \"CONTENT\":\r\n return ;\r\n case \"TITLE\":\r\n return ;\r\n case \"BUTTON\":\r\n return ;\r\n case \"LINK\":\r\n return ;\r\n case \"SUBTITLE\":\r\n return ;\r\n case \"INPUT\":\r\n return ;\r\n case \"PARAGRAPH\":\r\n return ;\r\n case \"LABEL\":\r\n return ;\r\n case \"THEAD\":\r\n return ;\r\n case \"TCELL\":\r\n return ;\r\n case \"SCROLL\":\r\n return ;\r\n case \"CHECKBOX\":\r\n return ;\r\n case \"FOLDER\":\r\n return ;\r\n case \"UNIT\":\r\n return ;\r\n case \"TOP\":\r\n return ;\r\n case \"BOTTOM\":\r\n return ;\r\n case \"LEFT\":\r\n return ;\r\n case \"RIGHT\":\r\n return ;\r\n case \"ALL\":\r\n return ;\r\n case \"JUSTIFY_START\":\r\n return ;\r\n case \"JUSTIFY_END\":\r\n return ;\r\n case \"JUSTIFY_CENTER\":\r\n return ;\r\n case \"SPACE_BETWEEN\":\r\n return ;\r\n case \"ALIGN_START\":\r\n return ;\r\n case \"ALIGN_END\":\r\n return ;\r\n case \"ALIGN_CENTER\":\r\n return ;\r\n case \"SLIDER\":\r\n return ;\r\n case \"SAVE\":\r\n return ;\r\n case \"REDO\":\r\n return ;\r\n case \"UNDO\":\r\n return ;\r\n case \"OPENINNEW\":\r\n return ;\r\n case \"PAGES\":\r\n return ;\r\n case \"CODE\":\r\n case \"HTML\":\r\n case \"CSS\":\r\n return ;\r\n case \"TEMPLATE\":\r\n return ;\r\n case \"GLOBAL_SETTINGS\":\r\n return ;\r\n case \"MODULE\":\r\n return ;\r\n case \"ADD\":\r\n case \"PLUS\":\r\n return ;\r\n case \"CLEAR\":\r\n case \"CLOSE\":\r\n case \"CANCEL\":\r\n return ;\r\n case \"ADVANCED_SETTINGS\":\r\n return ;\r\n case \"SETTINGS\":\r\n return ;\r\n case \"STYLE\":\r\n return ;\r\n case \"VIDEO\":\r\n return ;\r\n case \"CONFIRMATION\":\r\n return ;\r\n case \"TEXT_EDITOR\":\r\n return ;\r\n case \"IMAGE\":\r\n return ;\r\n case \"SPACE\":\r\n return ;\r\n case \"CONTENT_VIEW\":\r\n return ;\r\n case \"ZOOMIN\":\r\n return ;\r\n case \"ZOOMOUT\":\r\n return ;\r\n case \"ROTATE\":\r\n return ;\r\n case \"CROP\":\r\n return ;\r\n case \"CHECK\":\r\n return ;\r\n case \"ASPECT_RATIO\":\r\n return ;\r\n case \"FULL_SIZE\":\r\n return ;\r\n case \"CIRCLE\":\r\n return ;\r\n case \"NORMAL_SHAPE\":\r\n return ;\r\n case \"DELETE\":\r\n return ;\r\n case \"COPY\":\r\n return ;\r\n case \"UPLOAD\":\r\n return ;\r\n case \"CLIPBOARD_COPY\":\r\n return ;\r\n case \"CLIPBOARD_COPIED\":\r\n return ;\r\n case \"IMAGES\":\r\n return ;\r\n case \"FILES\":\r\n return ;\r\n case \"FONTS\":\r\n return ;\r\n /* \r\n case \"CONDITION\":\r\n return ; */\r\n case \"FIELD_MODULE\":\r\n return ;\r\n case \"REG_MODULE\":\r\n return ;\r\n case \"EVENT_MODULE\":\r\n return ;\r\n case \"QUESTION_MODULE\":\r\n return ;\r\n /* case \"CONTENT_MODULE\":\r\n return ; */\r\n case \"DATE\":\r\n case \"CALENDAR\":\r\n return ;\r\n case \"LIST_ADD\":\r\n return ;\r\n case \"DRAG\":\r\n return ;\r\n case \"ADD_BOX\":\r\n return ;\r\n case \"SORT\":\r\n return ;\r\n case \"OPTIONS\":\r\n case \"OPTION\":\r\n return ;\r\n case \"RESTORE\":\r\n return ;\r\n case \"MORE\":\r\n return ;\r\n case \"EDITOR\":\r\n return ;\r\n case \"MENUITEMS\":\r\n case \"MENUITEM\":\r\n return ;\r\n case \"MOBILEMENU\":\r\n return ;\r\n case \"NARROW\":\r\n return ;\r\n default:\r\n return null;\r\n }\r\n};\r\n","export const languageConstants = {\r\n GETALL_CODES_REQUEST: 'GETALL_CODES_REQUEST',\r\n GETALL_CODES_SUCCESS: 'GETALL_CODES_SUCCESS',\r\n GETALL_CODES_FAILURE: 'GETALL_CODES_FAILURE',\r\n\r\n GETALL_CODES_BY_EVENT_REQUEST: 'GETALL_CODES_BY_EVENT_REQUEST',\r\n GETALL_CODES_BY_EVENT_SUCCESS: 'GETALL_CODES_BY_EVENT_SUCCESS',\r\n GETALL_CODES_BY_EVENT_FAILURE: 'GETALL_CODES_BY_EVENT_FAILURE',\r\n\r\n\r\n //and so on\r\n};","export const eventLabelsConstants = {\r\n \r\n\r\n\r\n CREATE_EVENTLABEL_REQUEST: 'CREATE_EVENTLABEL_REQUEST',\r\n CREATE_EVENTLABEL_SUCCESS: 'CREATE_EVENTLABEL_SUCCESS',\r\n CREATE_EVENTLABEL_FAILURE: 'CREATE_EVENTLABEL_FAILURE',\r\n\r\n GET_GROUP_EVENTLABEL_REQUEST: 'GET_GROUP_EVENTLABEL_REQUEST',\r\n GET_GROUP_EVENTLABEL_SUCCESS: 'GET_GROUP_EVENTLABEL_SUCCESS',\r\n GET_GROUP_EVENTLABEL_FAILURE: 'GET_GROUP_EVENTLABEL_FAILURE',\r\n};","/*\r\n* required polyfills\r\n*/\r\nimport 'url-search-params-polyfill';\r\n\r\n/** IE9, IE10 and IE11 requires all of the following polyfills. **/\r\n// import 'core-js/es6/symbol'\r\n// import 'core-js/es6/object'\r\n// import 'core-js/es6/function'\r\n// import 'core-js/es6/parse-int'\r\n// import 'core-js/es6/parse-float'\r\n// import 'core-js/es6/number'\r\n// import 'core-js/es6/math'\r\n// import 'core-js/es6/string'\r\n// import 'core-js/es6/date'\r\nimport 'core-js/es6/array'\r\n// import 'core-js/es6/regexp'\r\nimport 'core-js/es6/map'\r\n// import 'core-js/es6/weak-map'\r\nimport 'core-js/es6/set'\r\nimport 'core-js/es7/object'\r\n\r\n/** IE10 and IE11 requires the following for the Reflect API. */\r\n// import 'core-js/es6/reflect'\r\n\r\n/** Evergreen browsers require these. **/\r\n// Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove.\r\n// import 'core-js/es7/reflect'\r\n\r\n// CustomEvent() constructor functionality in IE9, IE10, IE11\r\n(function () {\r\n\r\n if ( typeof window.CustomEvent === \"function\" ) return false\r\n\r\n function CustomEvent ( event, params ) {\r\n params = params || { bubbles: false, cancelable: false, detail: undefined }\r\n var evt = document.createEvent( 'CustomEvent' )\r\n evt.initCustomEvent( event, params.bubbles, params.cancelable, params.detail )\r\n return evt\r\n }\r\n\r\n CustomEvent.prototype = window.Event.prototype\r\n\r\n window.CustomEvent = CustomEvent\r\n})()","import React, { Component } from 'react';\r\nimport { Button, Col, Container, Input, InputGroup, InputGroupAddon, InputGroupText, Row } from 'reactstrap';\r\n/* import SystemLabel from '../../../system/SystemLabel/SystemLabel'; */\r\nimport { history } from '../../../helpers/history';\r\n\r\nclass PageBug extends Component {\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n

\r\n

An error occurred

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default PageBug;\r\n","import { globalConstants } from \"../../constants/system/global.constans\";\r\nimport { userConstants } from \"../../constants/user.constants\";\r\n\r\n\r\nexport const globalActions = {\r\n setSaveStatus,\r\n setHeaderHeight,\r\n setBreadcrumbHeight,\r\n setLoading,\r\n showMenu,\r\n updateUserToken,\r\n};\r\n\r\nfunction setSaveStatus(isSaved, area){\r\n return { type: globalConstants.SET_SAVE_STATUS, isSaved, area };\r\n }\r\n\r\n function setHeaderHeight(headerHeight){\r\n return {type:globalConstants.SET_HEADER_HEIGHT, headerHeight}\r\n }\r\n function setBreadcrumbHeight(breadcrumbHeight){\r\n return {type:globalConstants.SET_BREADCRUMB_HEIGHT, breadcrumbHeight}\r\n }\r\n function setLoading(isLoading, area){\r\n return { type: globalConstants.SET_IS_LOADING, isLoading, area };\r\n }\r\n function showMenu(show){\r\n return {type:globalConstants.SHOW_MENU, show}\r\n }\r\n function updateUserToken(){\r\n \r\n let user = localStorage.getItem(\"user\");\r\n if(user){\r\n return { type: userConstants.LOGIN_SUCCESS, user:JSON.parse(user) };\r\n }\r\n }","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Redirect } from \"react-router-dom\";\r\nimport { globalActions } from \"./store/actions/global.action\";\r\nimport { lssetItem } from \"./helpers/localStorageHelper\";\r\nimport { getKey } from \"./helpers/UrlHelper\";\r\nimport { SplashScreen } from \"./cms/components/UI/SplashScreen/SplashScreen\";\r\n\r\nclass RedirectUser extends React.Component {\r\n state = {\r\n allowed: false,\r\n to: \"\",\r\n fetched: false\r\n };\r\n componentDidMount() {\r\n const { search } = this.props.location;\r\n const params = new URLSearchParams(search);\r\n const userGuid = params.get(getKey('token1', params));\r\n const userId = params.get(getKey('token2', params));\r\n const redirectUrl = params.get(getKey('redirectUrl', params));\r\n\r\n if (userGuid && redirectUrl) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify({ userGuid, userId, redirectUrl })\r\n };\r\n\r\n fetch(`./api/authentication/token`, requestOptions)\r\n .then(res => res.json())\r\n .then(token => {\r\n // store user details and jwt token in local storage to keep user logged in between page refreshes\r\n lssetItem(token, \"user\");\r\n this.props.dispatch(globalActions.showMenu(false));\r\n this.props.dispatch(globalActions.updateUserToken());\r\n this.setState({ to: redirectUrl, allowed: true, fetched: true });\r\n })\r\n .catch(err => {\r\n //navigate back or something\r\n });\r\n }\r\n }\r\n render() {\r\n const { allowed, fetched, to } = this.state;\r\n if (!fetched) {\r\n return ;\r\n }\r\n if (fetched && allowed) {\r\n return ;\r\n }\r\n }\r\n}\r\n\r\nexport default connect()(RedirectUser);\r\n","import React from 'react';\r\nimport { Button } from 'reactstrap';\r\n\r\nimport './ArticleActionBar.css'\r\n\r\nconst ArticleActionBar = (props) => {\r\n const { likes, expandArticle, likeArticle, edit, articleId, isLiked, isEditor, buttonStyle, isExpanded } = props;\r\n return (\r\n
\r\n \r\n {isEditor &&
\r\n \r\n
}\r\n
\r\n \r\n {likes}\r\n
\r\n
\r\n )\r\n}\r\nexport default ArticleActionBar;","import React from 'react';\r\nimport { Row, Col } from 'reactstrap';\r\nimport ArticleActionBar from '../ArticleActionBar/ArticleActionBar';\r\n\r\nimport './Article.css'\r\nimport ArticleMedia from '../ArticleMediaUploader/ArticleMedia';\r\nimport { history } from '../../../../../../../helpers/history';\r\nimport { lazyLoad } from '../../helpers/imageLoader.lazy';\r\n\r\nclass Article extends React.Component {\r\n state = {\r\n isExpanded: false,\r\n likes: 0,\r\n media: [],\r\n errorMessage: \"\",\r\n headerFile: null\r\n }\r\n componentDidMount() {\r\n \r\n this.setState({\r\n likes: this.props.likes\r\n })\r\n this.downloadArticleMedia(this.props.articleId, this.props.eventId);\r\n document.addEventListener(\"scroll\", lazyLoad);\r\n }\r\n downloadArticleMedia = (articleId, eventId) => {\r\n\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n };\r\n fetch(`./api/files/article/${eventId}/?articleId=${articleId}`, requestOptions)\r\n .then(res => res.json())\r\n .then(files => {\r\n const headerFile = files.find(m => {\r\n return m.url === this.props.headerImage\r\n });\r\n const newMedia = Array.from(files.filter(f => { return f.url !== this.props.headerImage }));\r\n\r\n this.setState({\r\n mediaVm: newMedia, media: [], headerFile: headerFile\r\n });\r\n\r\n })\r\n .catch(err => { this.setState({ errorMessage: err }) });\r\n\r\n\r\n\r\n }\r\n expandArticle = () => {\r\n this.setState({ isExpanded: !this.state.isExpanded })\r\n }\r\n likeArticle = () => {\r\n const { articleId, eventId } = this.props;\r\n if (localStorage.getItem(`articleId-${articleId}`)) {\r\n localStorage.removeItem(`articleId-${articleId}`);\r\n this.setState({ likes: this.state.likes > 0 ? this.state.likes - 1 : 0 });\r\n const requestOptions = {\r\n method: \"Post\",\r\n headers: /* authHeader( */{ \"Content-Type\": \"application/json\" }/* ) */\r\n };\r\n fetch(`./api/article/like/${articleId}/?increase=false`, requestOptions)\r\n .then(res => {\r\n\r\n })\r\n .catch(err => console.error(err));\r\n }\r\n else {\r\n localStorage.setItem(`articleId-${articleId}`, true);\r\n this.setState({ likes: this.state.likes + 1 });\r\n const requestOptions = {\r\n method: \"Post\",\r\n headers: /* authHeader( */{ \"Content-Type\": \"application/json\" }/* ) */\r\n };\r\n fetch(`./api/article/like/${articleId}/?increase=true`, requestOptions)\r\n .then(res => {\r\n\r\n })\r\n .catch(err => console.error(err));\r\n\r\n }\r\n }\r\n isEditor = () => {\r\n if (localStorage.getItem(\"user\")) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n editArticle = () => {\r\n history.push('/articles/edit/' + this.props.articleId);\r\n }\r\n\r\n render() {\r\n const { headerImage, title, subtitle, content, articleId, publishDate, eventId, template } = this.props;\r\n const { isExpanded, likes, mediaVm, headerFile } = this.state;\r\n return (\r\n
\r\n
\r\n {headerImage && headerFile && (\r\n headerFile.type.includes('image') ?\r\n \r\n \r\n {/*
\r\n \r\n
*/}\r\n
\r\n\r\n\r\n :\r\n \r\n )}\r\n
\r\n {/*
*/}\r\n
\r\n \r\n
\r\n

{title}

\r\n
\r\n
\r\n

{subtitle}

\r\n
\r\n
\r\n
\r\n

\r\n {content}\r\n {/* {!isExpanded &&

} */}\r\n

\r\n\r\n \r\n {this.state.errorMessage != \"\" && this.state.errorMessage}\r\n {/*

Publicerades {publishDate}

*/}\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n )\r\n }\r\n}\r\nexport default Article;\r\n\r\n\r\n","import React from 'react';\r\nimport { Button } from 'reactstrap';\r\nimport { history } from '../../../../../../../helpers/history';\r\nimport './ArticleMenu.css'\r\nclass ArticleMenu extends React.Component {\r\n state = {\r\n media: [],\r\n editMode: false,\r\n headerImage: \"\"\r\n }\r\n render() {\r\n return (\r\n
\r\n
\r\n \r\n

Skapa en ny artikel

\r\n
\r\n
\r\n )\r\n }\r\n}\r\nexport default ArticleMenu;\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport Article from '../components/Article/Article';\r\nimport { DragDropContext } from \"react-beautiful-dnd\";\r\nimport TemplateWrapper from '../../../../template/containers/TemplateLayout/TemplateWrapper';\r\nimport { templateActions } from '../../../../../../store/actions/cms/template/template.action';\r\nimport ArticleMenu from '../components/ArticleMenu/ArticleMenu';\r\nimport { MobileLoader } from '../../../../../../components/UI/Spinner/MobileLoader';\r\nimport { lazyLoad } from '../helpers/imageLoader.lazy';\r\nimport './ArticleFeed.css';\r\nimport { authHeader } from '../../../../../../helpers/authHeader';\r\nclass ArticleFeed extends React.Component {\r\n state = {\r\n articles: [],\r\n isLoaded: false,\r\n template: null\r\n }\r\n componentDidMount() {\r\n //Load articles from server\r\n window.scrollTo(0, 0);\r\n //Load extra images\r\n this.downloadArticles();\r\n const { match } = this.props;\r\n const eventId = match.params.id;\r\n this.props.dispatch(templateActions.getDefaultTemplateByEvent(eventId));\r\n document.addEventListener(\"scroll\", lazyLoad);\r\n window.addEventListener(\"orientationchange\", lazyLoad);\r\n\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.template.template !== undefined && prevProps.template.template !== this.props.template.template) {\r\n this.setState({ template: this.props.template.template.content });\r\n }\r\n }\r\n downloadArticles = () => {\r\n const { match } = this.props;\r\n const eventId = match.params.id;\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n fetch(`./api/article/${eventId}`, requestOptions)\r\n .then(res => res.json())\r\n .then(articles => {\r\n this.setState({\r\n articles,\r\n isLoaded: true\r\n }, () => {\r\n lazyLoad();\r\n })\r\n })\r\n .catch(err => { this.setState({ isLoaded: true }) });\r\n }\r\n render() {\r\n const { articles, isLoaded, template } = this.state;\r\n const { user, match } = this.props;\r\n return (\r\n \r\n \r\n {user && user.eid.toString() === match.params.id && }\r\n {!isLoaded && }\r\n
\r\n {isLoaded === true && articles.length > 0 && articles.map((a, i) => {\r\n return \r\n })}\r\n {isLoaded && articles.length === 0 && (\r\n

Det finns inga artiklar att läsa

\r\n )}\r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n user: state.authentication.user,\r\n template: state.template,\r\n cms: state.cms\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ArticleFeed);\r\n\r\n","export default __webpack_public_path__ + \"static/media/firefox.369ed5c3.svg\";","export default __webpack_public_path__ + \"static/media/opera.da34cdf4.svg\";","export default __webpack_public_path__ + \"static/media/google_chrome.3e91b77c.svg\";","import React from 'react';\r\nimport { Row, Col, Container, Button } from 'reactstrap';\r\nimport FireFox from '../../assets/icons/firefox.svg';\r\nimport Opera from '../../assets/icons/opera.svg';\r\nimport Chrome from '../../assets/icons/google_chrome.svg';\r\n\r\n\r\n//If using internet exploret provide new browser options\r\n\r\nexport const ProvideBrowserOptions = () => {\r\n\r\n return (\r\n \r\n \r\n \r\n

Jirango does not support Internet explorer!

\r\n \r\n
\r\n \r\n \r\n

The page you are looking for is not supported in the browser you are currently using, Internet Explorer.\r\n\r\nInternet Explorer has security issues and is no longer supported my Microsoft.\r\n\r\n\r\n\r\nIf you came here from a link in an email, read this article to change the way links are opened in Outlook.\r\n\r\n\r\n\r\n\r\n\r\n

\r\n\r\n \r\n Read more\r\n\r\n

\r\n

\r\n The following browsers are supported – click one of the options below to download and install.

\r\n \r\n
\r\n
\r\n \r\n window.location.replace(\"https://www.google.com/intl/sv/chrome/\")\r\n }>\r\n

\r\n \r\n\r\n Google Chrome\r\n \r\n \r\n window.location.replace(\"https://www.opera.com\")\r\n }>\r\n

\r\n \r\n Opera\r\n \r\n \r\n window.location.replace(\"https://www.mozilla.org/sv-SE/firefox/new/\")\r\n }>\r\n

\r\n FireFox\r\n \r\n
\r\n
\r\n )\r\n}","import React from 'react';\r\nimport { Container, Row, Col, Label } from 'reactstrap';\r\nimport Select from 'react-select';\r\nimport { handleResponse } from '../helpers/handleresponse';\r\n\r\n\r\nexport class ScanView extends React.Component {\r\n state = {\r\n breakpoints: [\r\n {\r\n label: 'Event 1',\r\n value: 1\r\n },\r\n {\r\n label: 'Event 2',\r\n value: 2\r\n },\r\n {\r\n label: 'Event 3',\r\n value: 3\r\n },\r\n {\r\n label: 'Event 4',\r\n value: 4\r\n },\r\n ],\r\n selectIsOpen: false,\r\n selectedBreakpoint: null,\r\n errorMessage: '',\r\n codeDisplay: [],\r\n value: '',\r\n sending: false\r\n }\r\n componentDidMount() {\r\n this.autoFocus();\r\n this.sendTimer = setInterval(this.sendBuffer, 1000);\r\n document.addEventListener('click', this.autoFocus);\r\n /* document.addEventListener('blur', this.autoFocus); */\r\n document.addEventListener('keyup', this.handleScan)\r\n\r\n if (localStorage.getItem('breakpoint')) {\r\n this.setState({ selectedBreakpoint: JSON.parse(localStorage.getItem('breakpoint')) });\r\n }\r\n }\r\n sendBuffer = () => {\r\n if (!this.state.sending && localStorage.getItem('codes')) {\r\n if (navigator.onLine) {\r\n this.setState({ sending: true }, this.sendCode);\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n clearInterval(this.sendTimer);\r\n this.sendTimer = null;\r\n }\r\n\r\n autoFocus = () => {\r\n if (!this.state.selectIsOpen) {\r\n document.body.focus();\r\n window.focus();\r\n }\r\n }\r\n addCode = (code) => {\r\n let codes = localStorage.getItem('codes');\r\n let codeArr = [];\r\n if (codes) {\r\n codeArr = JSON.parse(codes);\r\n }\r\n codeArr.push(code);\r\n localStorage.setItem('codes', JSON.stringify(codeArr));\r\n }\r\n getCode = () => {\r\n let codes = localStorage.getItem('codes');\r\n if (codes) {\r\n let codeArr = JSON.parse(codes);\r\n if (Array.isArray(codeArr) && codeArr.length > 0) {\r\n let code = codeArr.shift();\r\n localStorage.setItem('codes', codeArr);\r\n return code;\r\n }\r\n else {\r\n localStorage.removeItem('codes');\r\n return null;\r\n }\r\n }\r\n }\r\n handleScan = (e) => {\r\n if (!this.state.selectedBreakpoint) return;\r\n var key = e.which || e.keyCode;\r\n if (key === 13) { // 13 is enter\r\n const codeInput = this.state.value;\r\n this.addCode(codeInput);\r\n const codeDisplay = this.state.codeDisplay;\r\n codeDisplay.push(codeInput);\r\n this.setState({ codeDisplay, value: '' });\r\n }\r\n else if (!isNaN(parseInt(e.key))) {\r\n this.setState({ value: this.state.value + e.key });\r\n }\r\n if (this.state.codeDisplay.length > 5)\r\n this.refs[this.state.codeDisplay.length - 1].scrollIntoView({ block: 'end', behavior: 'smooth' });\r\n }\r\n onBreakpointSelect = (option) => {\r\n this.breakpointsList.blur();\r\n this.setState({ selectedBreakpoint: option, selectIsOpen: false }, this.autoFocus);\r\n localStorage.setItem('breakpoint', JSON.stringify(option));\r\n }\r\n sendCode = () => {\r\n let isSending = this.state.sending;\r\n while (isSending) {\r\n const code = this.getCode();\r\n if (!code) {\r\n isSending = false;\r\n }\r\n else {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify({ badgeNo: code, eventId: this.state.selectedBreakpoint.value, exhibitorId: 0 })\r\n };\r\n fetch(`./api/checkpoint`, requestOptions)\r\n .then(handleResponse)\r\n .then(_ => { });\r\n }\r\n\r\n }\r\n this.setState({ sending: isSending });\r\n }\r\n\r\n render() {\r\n const { breakpoints, selectedBreakpoint, codeDisplay } = this.state;\r\n return (\r\n \r\n {selectedBreakpoint ? \r\n \r\n {codeDisplay.length > 0 ? codeDisplay.map((c, i) => {\r\n return

{c}

\r\n }) : null}\r\n\r\n \r\n
: null}\r\n \r\n \r\n\r\n \r\n this.breakpointsList = r}\r\n onChange={selectedOption => this.onBreakpointSelect(selectedOption)}\r\n options={breakpoints}\r\n value={selectedBreakpoint}\r\n onMenuOpen={() => this.setState({ selectIsOpen: true })}\r\n />\r\n \r\n \r\n {/* \r\n \r\n \r\n this.scanInput = r} id=\"code-input\" autoFocus />\r\n \r\n */}\r\n \r\n \r\n

{this.state.errorMessage}

\r\n \r\n
\r\n
\r\n\r\n )\r\n }\r\n\r\n}\r\n","export default __webpack_public_path__ + \"static/media/poweredbyjirango.e01a6853.svg\";","import React from \"react\";\r\nimport Particles from 'react-particles-js';\r\nimport { HubConnectionBuilder } from \"@microsoft/signalr\";\r\nimport './CheckinView.css'\r\nimport PowerLogo from '../assets/img/brand/poweredbyjirango.svg';\r\nclass CheckinView extends React.Component {\r\n state = {\r\n eventId: undefined,\r\n response: null,\r\n name: null,\r\n company: null,\r\n entrance: null,\r\n nameList: [],\r\n }\r\n componentDidMount() {\r\n window.scrollTo(0, 0);\r\n document.body.style.overflow = 'hidden';\r\n const eventId = this.props.match.params.id;\r\n \r\n this.setState({ eventId }, this.connectToHub);\r\n }\r\n\r\n connectToHub = () => {\r\n const { eventId } = this.state;\r\n try {\r\n let url = \"https://jirango.com/onsitehub\";\r\n if (window.location.host.includes(\"localhost\")) {\r\n url = \"https://localhost:44331/onsitehub\"\r\n }\r\n this.hubConnection = new HubConnectionBuilder().withUrl(url).build();\r\n } catch (error) {\r\n this.onError(error);\r\n }\r\n this.hubConnection.on(\"onCheckInDisplay\", this.onCheckIn);\r\n this.hubConnection\r\n .start()\r\n .then(() => {\r\n this.hubConnection\r\n .invoke(\"registerDisplay\",\r\n eventId,\r\n )\r\n .catch(err => {\r\n console.error(err);\r\n });\r\n })\r\n .catch(error => {\r\n console.log(error)\r\n });\r\n };\r\n onCheckIn = (res) => {\r\n this.state.nameList.push(res);\r\n this.checkList();\r\n }\r\n\r\n checkList = () => {\r\n if(!this.state.name && this.state.nameList.length > 0){\r\n const nextPerson = this.state.nameList.shift();\r\n this.setState({ name: `${nextPerson.firstName} ${nextPerson.lastName}`, company: nextPerson.companyName });\r\n setTimeout(() => this.setState({ name: null, company:null }, this.checkList), 3000);\r\n }\r\n }\r\n render() {\r\n const { name, company } = this.state;\r\n return (\r\n
\r\n \r\n {name ? \r\n
\r\n Välkommen\r\n
\r\n
\r\n {name}\r\n
\r\n
\r\n {company}\r\n
\r\n
\r\n : null}\r\n \r\n\r\n
\r\n );\r\n }\r\n}\r\nexport default CheckinView;\r\n","import React from \"react\";\r\nimport axios from 'axios'\r\n\r\nclass LinkTracker extends React.Component {\r\n async componentDidMount() {\r\n let refNo = this.props.match.params.refNo;\r\n if (refNo) {\r\n axios.get('./api/linktracker/' + refNo)\r\n .then(res => {\r\n if(res.data) {\r\n window.location.replace(res.data.url);\r\n }\r\n })\r\n .catch(err => {\r\n window.location.replace(\"https://inadra.se/jirango/\");\r\n })\r\n }\r\n else {\r\n window.location.replace(\"https://inadra.se/jirango/\");\r\n }\r\n }\r\n render() {\r\n return
\r\n }\r\n}\r\nexport default LinkTracker;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport Axios from \"axios\";\r\nimport QRCode from \"react-qr-code\";\r\n\r\nexport default function QRList({ match }) {\r\n const eventId = match?.params?.id;\r\n const [badgeNos, setBadgeNos] = useState([]);\r\n\r\n useEffect(() => {\r\n if (eventId) {\r\n (async () => {\r\n const { data } = await Axios.get(`./api/attendee/getAtendeesList?eventId=${eventId}`);\r\n setBadgeNos(data?.map(({ badgeNo, firstName, lastName }) => ({ badgeNo, firstName, lastName })));\r\n })();\r\n }\r\n }, [eventId]);\r\n\r\n return (\r\n
\r\n {badgeNos?.map(({ badgeNo, firstName, lastName }) => (\r\n
\r\n
\r\n \r\n

\r\n {firstName} {lastName}\r\n

\r\n
\r\n
\r\n ))}\r\n
\r\n );\r\n}\r\n","import React, { useCallback, useEffect, useState } from \"react\";\r\nimport { HubConnectionBuilder } from \"@microsoft/signalr\";\r\nimport { PrintRounded } from \"@material-ui/icons\";\r\n\r\nexport default function PrinterClients(props) {\r\n const [printerClients, setPrinterClients] = useState([]);\r\n const [hubConnection, setHubConnection] = useState(null);\r\n\r\n async function onGetActivePrintClients(clients) {\r\n setPrinterClients(clients.map((client) => ({ ...client, isOnline: true })));\r\n }\r\n\r\n const onPrinterConnected = useCallback(\r\n (client) => {\r\n console.log(client);\r\n const index = printerClients.findIndex((c) => c.clientGuid === client.clientGuid || c.name === client.name);\r\n if (index !== -1) setPrinterClients((prev) => [...prev.slice(0, index), { ...client, isOnline: true }, ...prev.slice(index + 1)]);\r\n else setPrinterClients((prev) => [...prev, { ...client, isOnline: true }]);\r\n },\r\n [printerClients]\r\n );\r\n\r\n const onPrinterDisconnected = useCallback(\r\n (clientGuid) => {\r\n console.log(clientGuid);\r\n const index = printerClients.findIndex((c) => c.clientGuid === clientGuid);\r\n if (index !== -1) setPrinterClients((prev) => [...prev.slice(0, index), { ...prev[index], isOnline: false }, ...prev.slice(index + 1)]);\r\n },\r\n [printerClients]\r\n );\r\n\r\n useEffect(() => {\r\n if (!hubConnection) return;\r\n hubConnection.on(\"onPrinterConnected\", onPrinterConnected);\r\n hubConnection.on(\"onPrinterDisconnected\", onPrinterDisconnected);\r\n return () => {\r\n if (!hubConnection) return null;\r\n hubConnection.off(\"onPrinterConnected\", onPrinterConnected);\r\n hubConnection.off(\"onPrinterDisconnected\", onPrinterDisconnected);\r\n };\r\n }, [printerClients, hubConnection]);\r\n\r\n useEffect(() => {\r\n const eventId = props.match.params.id;\r\n let url = \"https://jirango.com/onsitehub\";\r\n if (window.location.host.includes(\"localhost\")) url = \"https://localhost:44331/onsitehub\";\r\n const hubConnection = new HubConnectionBuilder().withUrl(url).build();\r\n\r\n (async () => {\r\n try {\r\n await hubConnection.start();\r\n\r\n hubConnection.on(\"onGetActivePrintClients\", onGetActivePrintClients);\r\n hubConnection.on(\"onPrinterConnected\", onPrinterConnected);\r\n hubConnection.on(\"onPrinterDisconnected\", onPrinterDisconnected);\r\n\r\n hubConnection.invoke(\"getActivePrintClients\", { monitor: true }, eventId);\r\n setHubConnection(hubConnection);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n })();\r\n\r\n return () => {\r\n hubConnection.stop();\r\n };\r\n }, []);\r\n\r\n return (\r\n
\r\n
\r\n {printerClients?.length > 0 ? (\r\n printerClients.map((client) => (\r\n
\r\n \r\n {client.name}\r\n {client.isOnline ? \"Online\" : \"Offline\"}\r\n
\r\n ))\r\n ) : (\r\n

Inga printers anslutna

\r\n )}\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { PaymentElement, LinkAuthenticationElement, useStripe, useElements } from \"@stripe/react-stripe-js\";\r\nimport Axios from \"axios\";\r\nimport { history } from \"../../../helpers/history\";\r\n\r\nexport default function CheckoutForm({ stateNo, clientSecret, amount }) {\r\n const stripe = useStripe();\r\n const elements = useElements();\r\n const [email, setEmail] = useState(\"\");\r\n const [message, setMessage] = useState(null);\r\n const [isLoading, setIsLoading] = useState(false);\r\n\r\n useEffect(() => {\r\n if (!stripe || !clientSecret) {\r\n return;\r\n }\r\n\r\n stripe.retrievePaymentIntent(clientSecret).then(({ paymentIntent }) => {\r\n switch (paymentIntent.status) {\r\n case \"succeeded\":\r\n setMessage(\"Payment succeeded!\");\r\n break;\r\n case \"processing\":\r\n setMessage(\"Your payment is processing.\");\r\n break;\r\n // case \"requires_payment_method\":\r\n // setMessage(\"Your payment was not successful, please try again.\");\r\n // break;\r\n default:\r\n setMessage(\"Something went wrong.\");\r\n break;\r\n }\r\n });\r\n }, [stripe, clientSecret]);\r\n\r\n const handleSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (!stripe || !elements) {\r\n return;\r\n }\r\n\r\n setIsLoading(true);\r\n\r\n const response = await stripe.confirmPayment({\r\n elements,\r\n redirect: \"if_required\",\r\n });\r\n\r\n if (response?.paymentIntent?.status === \"succeeded\") {\r\n const { data, status } = await Axios.post(`./api/stripe/complete/${stateNo}?paymentId=${response.paymentIntent.id}`);\r\n if (status === 200 && data?.redirectUrl) {\r\n return history.push(data?.redirectUrl);\r\n }\r\n }\r\n\r\n // This point will only be reached if there is an immediate error when\r\n // confirming the payment. Otherwise, your customer will be redirected to\r\n // your `return_url`. For some payment methods like iDEAL, your customer will\r\n // be redirected to an intermediate site first to authorize the payment, then\r\n // redirected to the `return_url`.\r\n if (response?.error?.type === \"card_error\" || response?.error?.type === \"validation_error\") {\r\n setMessage(response.error.message);\r\n } else {\r\n setMessage(\"An unexpected error occurred.\");\r\n }\r\n\r\n setIsLoading(false);\r\n };\r\n\r\n const paymentElementOptions = {\r\n layout: \"tabs\",\r\n };\r\n\r\n return (\r\n
\r\n {/* setEmail(e.target.value)} /> */}\r\n \r\n \r\n {/* Show any error or success messages */}\r\n {message &&
{message}
}\r\n \r\n );\r\n}\r\n","import React, { useEffect, useState, useMemo } from \"react\";\r\nimport Axios from \"axios\";\r\nimport { loadStripe } from \"@stripe/stripe-js\";\r\nimport { Elements } from \"@stripe/react-stripe-js\";\r\nimport CheckoutForm from \"./CheckoutForm\";\r\nimport \"./stripe.css\";\r\n\r\nfunction Stripe(props) {\r\n const [clientSecret, setClientSecret] = useState(null);\r\n const [stateNo, setStateNo] = useState(null);\r\n const [publishableKey, setPublishableKey] = useState(null);\r\n const [amount, setAmount] = useState(null);\r\n\r\n useEffect(() => {\r\n const { match } = props;\r\n if (match && match.params && match.params.id) {\r\n (async () => {\r\n const sqlStateNo = match.params.id;\r\n const { data, status } = await Axios.post(`./api/stripe/${sqlStateNo}`);\r\n if (status === 200) {\r\n setClientSecret(data.clientSecret);\r\n setPublishableKey(data.publishableKey);\r\n setAmount(data.amount)\r\n setStateNo(sqlStateNo);\r\n }\r\n })();\r\n }\r\n }, []);\r\n\r\n const stripePromise = useMemo(async () => publishableKey && (await loadStripe(publishableKey)), [publishableKey]);\r\n\r\n const appearance = {\r\n theme: \"stripe\",\r\n };\r\n const options = {\r\n clientSecret,\r\n appearance,\r\n };\r\n\r\n return clientSecret && stripePromise && stateNo ? (\r\n
\r\n \r\n \r\n \r\n
\r\n ) : null;\r\n}\r\n\r\nexport default Stripe;\r\n","import React, { Component } from \"react\";\r\nimport { Router, Route, Switch } from \"react-router-dom\";\r\nimport { history } from \"./helpers/history\";\r\nimport \"./App.scss\";\r\nimport { connect } from \"react-redux\";\r\nimport FormLayout from \"./cms/areas/form/containers/FormLayout/FormLayout\";\r\nimport PostFormLayout from \"./cms/areas/form/containers/PostFormLayout/PostFormLayout\";\r\nimport TemplateLayout from \"./cms/areas/template/containers/TemplateLayout/TemplateLayout\";\r\nimport PageBug from \"./views/Pages/PageBug/PageBug\";\r\nimport RedirectUser from \"./RedirectUser\";\r\nimport ArticleFeed from \"./cms/areas/page/plugins/article/containers/ArticleFeed\";\r\nimport ArticleEditor from \"./cms/areas/page/plugins/article/containers/ArticleEditor/ArticleEditor\";\r\nimport Dibs from \"./payments/CardPayment/Dibs/Dibs\";\r\nimport Nets from \"./payments/CardPayment/Nets/Nets\";\r\nimport PageEditorLayout from \"./cms/areas/page/container/Editor/Layout/PageEditorLayout\";\r\nimport PageViewLayout from \"./cms/areas/page/container/View/Layout/PageViewLayout\";\r\nimport { ProvideBrowserOptions } from \"./system/BrowserAgent/ProvideBrowserOptions\";\r\nimport { ScanView } from \"./checkpoint/ScanView\";\r\nimport { SplashScreen } from \"./cms/components/UI/SplashScreen/SplashScreen\";\r\nimport CheckinView from \"./checkpoint/CheckinView\";\r\nimport LinkTracker from \"./system/LinkTracker/LinkTracker\";\r\nimport EmailEditor from \"./cms/areas/email/containers/EmailEditor/EmailEditor\";\r\n\r\nimport MeetingEditorLayout from \"./cms/areas/meeting/container/EditorLayout/MeetingEditorLayout\";\r\nimport Layout from \"./cms_2.0/Layout\";\r\nimport QRList from \"./QRList/QRList\";\r\nimport PrinterClients from \"./views/Pages/PrinterClients/PrinterClients\";\r\nimport Stripe from \"./cms_2.0/payment/Stripe/Stripe\";\r\n\r\nconst loading = () =>
Loading...
;\r\n\r\n// Pages\r\nconst Page404 = React.lazy(() => import(\"./views/Pages/Page404\"));\r\nconst Page500 = React.lazy(() => import(\"./views/Pages/Page500\"));\r\n\r\nclass App extends Component {\r\n componentDidMount() {\r\n // this.props.dispatch(systemLabelActions.getAllGroups());\r\n }\r\n directToInadraHomePage = () => {\r\n window.location.replace(\"https://jirango.com/\");\r\n };\r\n render() {\r\n return (\r\n \r\n \r\n {this.props.globals.isLoading ? : null}\r\n \r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n } />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n } />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n (localStorage.getItem(\"user\") ? : )}\r\n />\r\n {/* } /> */}\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\nconst ExternalRedirect = (props) => {\r\n return (\r\n {\r\n window.location.replace(props.link);\r\n return null;\r\n }}\r\n />\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n globals: state.globals,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(App);\r\n","import React from 'react';\r\n\r\nexport class BrowserDetector extends React.Component {\r\n componentDidMount() {\r\n this.msieversion();\r\n }\r\n msieversion = () => {\r\n var ua = window.navigator.userAgent;\r\n var msie = ua.indexOf(\"MSIE \");\r\n if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\\:11\\./)) // If Internet Explorer, return version number\r\n {\r\n if (window.location.href !== \"https://jirango.com/cms/provide-browser-options\") {\r\n window.location.href = \"https://jirango.com/cms/provide-browser-options\";\r\n }\r\n }\r\n }\r\n render() {\r\n return null;\r\n }\r\n}","import browserUpdate from 'browser-update';\r\nimport \"react-app-polyfill/ie9\"; // For IE 9-11 support\r\nimport \"react-app-polyfill/ie11\"; // For IE 11 support\r\nimport \"./polyfill\";\r\nimport React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport \"./index.css\";\r\nimport App from \"./App\";\r\nimport * as serviceWorker from \"./serviceWorker\";\r\nimport { BrowserRouter } from 'react-router-dom';\r\nimport { Provider } from \"react-redux\";\r\nimport { store } from \"./store/configureStore\";\r\nimport { BrowserDetector } from './system/BrowserAgent/BrowserDetector';\r\nimport './sentry.config';\r\n\r\nbrowserUpdate({ required: { e: 18, f: -3, o: -3, s: -1, c: -3 }, insecure: true, api: 2019.08, reminder: 0, test: false, no_permanent_hide: false })\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById(\"root\")\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: http://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"./DeviceButtonGroup.css\";\r\nimport SmartphoneIcon from \"@material-ui/icons/Smartphone\";\r\nimport TabletMacIcon from \"@material-ui/icons/TabletMac\";\r\nimport DesktopWindowsIcon from \"@material-ui/icons/DesktopWindows\";\r\nimport { templateConstants } from \"../../../../../constants/cms/template/template.constants\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\n\r\nconst cDevices = [\r\n {\r\n name: \"Desktop\",\r\n id: templateConstants.DESKTOP\r\n },\r\n {\r\n name: \"Tablet\",\r\n id: templateConstants.TABLET\r\n },\r\n {\r\n name: \"SmartPhone\",\r\n id: templateConstants.SMARTPHONE\r\n }\r\n];\r\n\r\nconst DeviceButtonGroup = ({ device, dispatch }) => {\r\n const deviceIcon = (className, d, style = {}) => {\r\n let badgeClass =\r\n d === device ? \"device-badge current-device\" : \"device-badge\";\r\n switch (d) {\r\n case \"desktop\":\r\n return (\r\n dispatch(templateActions.togglePreviewMode(d))}\r\n >\r\n \r\n \r\n );\r\n case \"tablet\":\r\n return (\r\n dispatch(templateActions.togglePreviewMode(d))}\r\n >\r\n \r\n \r\n );\r\n case \"smartphone\":\r\n return (\r\n dispatch(templateActions.togglePreviewMode(d))}\r\n >\r\n \r\n \r\n );\r\n default:\r\n return \"\";\r\n }\r\n };\r\n const getDeviceOptions = () => {\r\n let devices = [];\r\n cDevices.map((d, index) => {\r\n devices.push(deviceIcon(\"device-icon-sm\", d.id));\r\n });\r\n return devices;\r\n };\r\n return (\r\n
\r\n {getDeviceOptions().map((d, i) => {\r\n return {d};\r\n })}\r\n
\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice\r\n };\r\n}\r\nexport default connect(mapStateToProps)(DeviceButtonGroup);\r\n","import React, { useEffect, useState } from \"react\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Input,\r\n Row,\r\n Col,\r\n Label,\r\n} from \"reactstrap\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport DeviceButtonGroup from \"./DeviceButtonGroup/DeviceButtonGroup\";\r\nimport './EditorSlider.css'\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nconst def = {\r\n label: \"Margin\",\r\n value: 22,\r\n defaultValue: 0,\r\n units: [\"px\", \"em\", \"rem\"],\r\n activeUnit: \"rem\",\r\n onChange: () => null,\r\n path: \"\"\r\n};\r\n\r\nexport const EditorSlider = props => {\r\n const [fallBackUnit, setFallbackUnit] = React.useState('px')\r\n const {\r\n label,\r\n value,\r\n units,\r\n activeUnit,\r\n onChange,\r\n path,\r\n unitChange,\r\n steps,\r\n max,\r\n min,\r\n attachUnit = false,\r\n responsiveSettings,\r\n extraParam = null\r\n } = props;\r\n let unitsZ = units.length > 1 && !units.includes('vh') ? [...units, \"vh\"] : units;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {responsiveSettings === true ? : null}\r\n \r\n {unitsZ.map((u, i) => {\r\n return (\r\n unitChange(u, path)}\r\n key={i}\r\n >\r\n {u}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n {\r\n if (activeUnit) setFallbackUnit(activeUnit)\r\n onChange(null, attachUnit ? e + activeUnit : e, path, fallBackUnit)\r\n }}\r\n />\r\n \r\n \r\n {\r\n if (activeUnit) setFallbackUnit(activeUnit)\r\n\r\n let value = e.target.value + (!activeUnit ? fallBackUnit : activeUnit);\r\n console.log('onChange')\r\n onChange(null, attachUnit ? value : e.target.value, path, fallBackUnit)\r\n }}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default EditorSlider;\r\n","import { useState, useEffect, useRef } from \"react\";\r\n\r\nexport function usePrevious(value) {\r\n // The ref object is a generic container whose current property is mutable ...\r\n // ... and can hold any value, similar to an instance property on a class\r\n const ref = useRef();\r\n // Store current value in ref\r\n useEffect(() => {\r\n ref.current = value;\r\n }, [value]); // Only re-run if value changes\r\n // Return previous value (happens before update in useEffect above)\r\n return ref.current;\r\n}\r\n","import React from \"react\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport \"./ElementOverlay.css\";\r\nimport DragIndicatorIcon from \"@material-ui/icons/DragIndicator\";\r\n\r\nexport const ElementOverlay = props => {\r\n const { onDrag, dragHandleProps, onDelete } = props;\r\n const { selectedElement, targetElement, selectedContainer } = props;\r\n const className =\r\n targetElement.type === elementConstants.CONTAINER\r\n ? \"element-overlay-container\"\r\n : \"element-overlay\";\r\n\r\n const dir =\"row\";\r\n return (\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n onDelete(targetElement)}\r\n />\r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const ElementOverlayEmail = props => {\r\n const { onDrag, dragHandleProps, onDelete } = props;\r\n const { selectedElement, targetElement } = props;\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n onDelete(targetElement)}\r\n />\r\n \r\n
\r\n \r\n
\r\n );\r\n};","import { largeHeaderImageHandler } from '../elements/LargeHeaderImage/LargeHeaderImage.handler';\r\nimport { smallHeaderImageHandler } from '../elements/SmallHeaderImage/SmallHeaderImage.handler';\r\nimport { textAreaHandler } from '../elements/TextArea/TextArea.handler';\r\nimport { simpleButtonHandler } from '../elements/SimpleButton/SimpleButton.handler';\r\nimport { emptySpaceHandler } from '../elements/EmptySpace/EmptySpace.handler';\r\nimport { calendarInvitationHandler } from '../elements/CalendarInvitation/CalendarInvitation.handler';\r\nimport { backgroundWithImageHandler } from '../elements/BackgroundImageWithText/BackgroundImageWithText.handler';\r\n\r\nexport const elementHandlers = {\r\n largeHeaderImageHandler,\r\n smallHeaderImageHandler,\r\n textAreaHandler,\r\n simpleButtonHandler,\r\n emptySpaceHandler,\r\n backgroundWithImageHandler,\r\n calendarInvitationHandler\r\n}","export const defaultEmailElement = {\r\n /* eventId: 0, */\r\n /* confirmationId: null,\r\n communicationId: null, */\r\n languageCode: \"\",\r\n id: -1,\r\n sortOrder: 0,\r\n style: null,\r\n families: [],\r\n content: null,\r\n settings: null,\r\n startTag: '',\r\n endTag: '',\r\n type: null,\r\n }","import { emailElementType } from \"../constants/emailElementType.constants\";\r\nimport { elementHandlers } from \"../elements/elementHandlers\";\r\nimport { defaultEmailElement } from \"../models/defaultEmailElement\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../template/helpers/templateHelper\";\r\nimport { createTagDictionaryForReplace } from \"../../tags/models/tagDictionary\";\r\n\r\nexport const emailHelper = {\r\n getElementHandler,\r\n sortElementOnChange,\r\n sortElements,\r\n createElement,\r\n renderElement,\r\n handleTemplateStyleInheritage,\r\n replaceTextTags,\r\n incrementList,\r\n};\r\n\r\n/* const CodeReplace = (code, element) => {\r\n element.content = code;\r\n} */\r\nfunction renderElement(element) {\r\n const handler = getElementHandler(element.type);\r\n if (!handler || element.content === undefined) return null;\r\n return handler.component(element);\r\n}\r\nfunction handleTemplateStyleInheritage(elements, template) {\r\n const newElements = [];\r\n let templateCopy = deepClone(template);\r\n\r\n elements.map((el) => {\r\n let elementCopy = deepClone(el);\r\n if (el.style.inheritedStyles && el.style.inheritedStyles.length > 0) {\r\n el.style.inheritedStyles.map((its) => {\r\n const styleParts = its.stylePath ? its.stylePath.split(\".\") : \"\";\r\n const templateParts = its.templatePath ? its.templatePath.split(\".\") : \"\";\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(styleParts, value, elementCopy.style);\r\n });\r\n }\r\n newElements.push(elementCopy);\r\n });\r\n return newElements;\r\n}\r\n\r\nfunction replaceTextTags(elements, reversed = false) {\r\n const parsedElements = Array.from(elements);\r\n const tags = createTagDictionaryForReplace();\r\n\r\n parsedElements.map((pe) => {\r\n if (pe.type === emailElementType.TEXT || pe.type === emailElementType.CALENDAR_INVITATION || (pe.families.length > 0 && pe.families.includes(\"text\"))) {\r\n let text = pe.style.elementProps.text;\r\n if (text.length > 0) {\r\n tags.map((t) => {\r\n if (reversed) {\r\n if (text.includes(t.tag)) {\r\n text = text.replace(t.tag, t.editFacade);\r\n }\r\n } else {\r\n if (text.includes(t.editFacade)) {\r\n text = text.replace(t.editFacade, t.tag);\r\n }\r\n }\r\n });\r\n }\r\n pe.style.elementProps.text = text;\r\n let handler = getElementHandler(pe.type);\r\n pe.content = handler.elementEditor(pe.style);\r\n }\r\n });\r\n return parsedElements;\r\n}\r\n\r\nfunction getElementHandler(type) {\r\n switch (type) {\r\n case emailElementType.LARGE_HEADER_IMAGE:\r\n return elementHandlers.largeHeaderImageHandler;\r\n case emailElementType.SMALL_HEADER_IMAGE:\r\n return elementHandlers.smallHeaderImageHandler;\r\n case emailElementType.TEXT:\r\n return elementHandlers.textAreaHandler;\r\n case emailElementType.BUTTON:\r\n return elementHandlers.simpleButtonHandler;\r\n case emailElementType.SPACE:\r\n return elementHandlers.emptySpaceHandler;\r\n case emailElementType.BACKDROPIMAGE_ELEVATED_TEXT:\r\n return elementHandlers.backgroundWithImageHandler;\r\n case emailElementType.CALENDAR_INVITATION:\r\n return elementHandlers.calendarInvitationHandler;\r\n default:\r\n return null;\r\n }\r\n}\r\nfunction getNewId(elements) {\r\n if (elements.length < 1) return 1;\r\n const maxId = Math.max.apply(\r\n Math,\r\n elements.map(function (o) {\r\n return o.id;\r\n })\r\n );\r\n return maxId + 1;\r\n}\r\n\r\nfunction createElement(type, elements, destination, template = null) {\r\n const newElement = deepClone(defaultEmailElement);\r\n const handler = getElementHandler(type);\r\n\r\n if (!handler) return;\r\n\r\n const style = handler.defaultStyle(template, false);\r\n const content = handler.elementEditor(style, template, false);\r\n const newId = getNewId(elements);\r\n\r\n newElement.families = handler.families();\r\n newElement.style = style;\r\n newElement.content = content;\r\n newElement.id = newId;\r\n newElement.type = type;\r\n newElement.startTag = handler.tags().startTag;\r\n newElement.endTag = handler.tags().endTag;\r\n newElement.sortOrder = destination.index;\r\n return newElement;\r\n}\r\n\r\n//Sorters\r\n\r\nfunction sortController(elements) {\r\n const controlledList = Array.from(elements);\r\n for (let index = 0; index < controlledList.length; index++) {\r\n if (controlledList[index].sortOrder !== index) {\r\n controlledList[index].sortOrder = index;\r\n }\r\n }\r\n return controlledList;\r\n}\r\n\r\nfunction sortElementOnChange(elements, sourceElement, destination, source) {\r\n if (destination.index > source.index) {\r\n //if moved down\r\n elements.map((el) => {\r\n if (el.sortOrder > source.index && el.sortOrder <= destination.index) {\r\n el.sortOrder -= 1;\r\n }\r\n if (el.id === sourceElement.id) {\r\n el.sortOrder = destination.index;\r\n }\r\n });\r\n } else if (destination.index < source.index) {\r\n elements.map((el) => {\r\n if (el.sortOrder <= source.index && el.sortOrder >= destination.index) {\r\n el.sortOrder += 1;\r\n }\r\n if (el.id === sourceElement.id) {\r\n el.sortOrder = destination.index;\r\n }\r\n });\r\n }\r\n return elements;\r\n}\r\nfunction incrementList(elements, destination) {\r\n let sortedElements = Array.from(elements);\r\n sortedElements.map((el) => {\r\n if (el.sortOrder >= destination.index) {\r\n el.sortOrder += 1;\r\n }\r\n });\r\n return sortedElements;\r\n}\r\n\r\nfunction sortElements(elements, destination = null, replaceTags = false) {\r\n if (!elements || !Array.isArray(elements)) return [];\r\n if (elements.length === 0) return elements;\r\n let sortedElements = Array.from(elements);\r\n if (destination) {\r\n sortedElements.map((el) => {\r\n if (el.sortOrder >= destination.index) {\r\n el.sortOrder += 1;\r\n }\r\n });\r\n }\r\n sortedElements = sortedElements.sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n });\r\n if (replaceTags == true) sortedElements = replaceTextTags(sortedElements, true);\r\n return sortController(sortedElements);\r\n}\r\n","export const globalConstants = {\r\n SET_SAVE_STATUS:'SET_SAVE_STATUS',\r\n SET_HEADER_HEIGHT:'SET_HEADER_HEIGHT',\r\n SET_BREADCRUMB_HEIGHT:'SET_BREADCRUMB_HEIGHT',\r\n SET_IS_LOADING:'SET_IS_LOADING',\r\n SHOW_MENU:'SHOW_MENU',\r\n}","import React, { memo, useEffect, useMemo, useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, Popover, PopoverBody, PopoverHeader, Input, Button } from \"reactstrap\";\r\nimport { systemLabelActions } from \"../../store/actions/system/systemLabel/systemLabel.action\";\r\nimport \"./SystemLabel.css\";\r\nimport routes from \"../../routes\";\r\nimport { history } from \"../../helpers/history\";\r\nimport { getKey } from \"../../helpers/UrlHelper\";\r\nimport InfoOutlinedIcon from \"@material-ui/icons/InfoOutlined\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nfunction systemLabelIsEqual(prevProps, nextProps) {\r\n if (prevProps.systemLabels === nextProps.systemLabels && prevProps.systemLabels.loading == prevProps.systemLabels.loading && prevProps.systemLabels.groups === nextProps.systemLabels.groups)\r\n return true;\r\n else return false;\r\n}\r\nconst SystemLabel = memo(({ dispatch, groupName, name, user, systemLabels, asOption, asOption2, cms }) => {\r\n const { groups } = systemLabels;\r\n const [gName, setGroupName] = useState(null);\r\n const [creating, setCreating] = useState(false);\r\n const [isSaveable, setIsSaveable] = useState(false);\r\n const [open, setOpen] = useState(false);\r\n const [languageCode, setLanguageCode] = useState(\"swe\");\r\n const isEditable = user && user.admin;\r\n const [editLabel, setEditLabel] = useState(null);\r\n const { location } = history;\r\n const [loaded, setLoaded] = useState(false);\r\n\r\n const labelList = useMemo(() => {\r\n if (groups && groups[gName]) return groups[gName];\r\n else return null;\r\n }, [groups]);\r\n useEffect(() => {\r\n let langCode = null;\r\n if (location && location.search) {\r\n const params = new URLSearchParams(location.search);\r\n langCode = params.get(getKey(\"languageCode\", params));\r\n if (!langCode) langCode = params.get(getKey(\"lang\", params));\r\n if (langCode && langCode.length > 3) {\r\n langCode = langCode.substr(0, 3);\r\n }\r\n }\r\n\r\n if (!langCode && user) langCode = user.userLang;\r\n else if (!langCode && cms.languageCode) {\r\n langCode = cms.languageCode;\r\n } else if (!langCode) langCode = \"swe\";\r\n\r\n if (langCode !== languageCode) setLanguageCode(langCode);\r\n\r\n if (groupName) setGroupName(groupName);\r\n else {\r\n let activeRoute = routes.find((r) => {\r\n return comparePaths(location.pathname, r.path);\r\n });\r\n setGroupName(activeRoute.labelGroup);\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (!loaded && gName && languageCode && (!systemLabels.loading || !groups || !groups[gName])) {\r\n dispatch(systemLabelActions.getGroup(languageCode, gName));\r\n setLoaded(true);\r\n }\r\n }, [gName, languageCode, groups]);\r\n\r\n const label = useMemo(() => {\r\n let currLabel = null;\r\n if (!labelList) return null;\r\n currLabel = labelList.find((l) => {\r\n return l.name === name && l.languageCode === (languageCode ? languageCode : (user && user.userLang) || \"swe\");\r\n });\r\n if (currLabel) {\r\n if (creating) {\r\n setCreating(false);\r\n }\r\n return currLabel;\r\n } else {\r\n if (!creating) {\r\n dispatch(systemLabelActions.create(name, languageCode, gName));\r\n setCreating(true);\r\n }\r\n return null;\r\n }\r\n }, [labelList]);\r\n\r\n const comparePaths = (p1, p2) => {\r\n //Special case, change this later on\r\n if (p1.includes(\"/register/\") && p2.includes(\"/register/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/p/\") && p2.includes(\"/p/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/survey/\") && p2.includes(\"/survey/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/web/\") && p2.includes(\"/web/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/digitalarena/\") && p2.includes(\"/digitalarena/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/backstage/\") && p2.includes(\"/backstage/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/editor/\") && p2.includes(\"/editor/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/digitalmeeting/\") && p2.includes(\"/digitalmeeting/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/session/moderator/\") && p2.includes(\"/session/moderator/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/session/client/\") && p2.includes(\"/session/client/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/presenter/\") && p2.includes(\"/presenter/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/session/stage/\") && p2.includes(\"/session/stage/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/session/chatmoderator/\") && p2.includes(\"/session/chatmoderator/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/exhibitor/\") && p2.includes(\"/exhibitor/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/exhibitor2/\") && p2.includes(\"/exhibitor2/\")) {\r\n return true;\r\n }\r\n if (p1.includes(\"/booth/\") && p2.includes(\"/booth/\")) {\r\n return true;\r\n }\r\n const locRegex = /\\/\\d+.*/g;\r\n const pathRegex = /\\/:id/g;\r\n p1 = p1.replace(locRegex, \"\").replace(pathRegex, \"\").toLowerCase();\r\n p2 = p2.replace(locRegex, \"\").replace(pathRegex, \"\").toLowerCase();\r\n return p1 === p2;\r\n };\r\n const toggle = (e) => {\r\n if (isEditable && e.ctrlKey === true) {\r\n e.stopPropagation();\r\n if (!open) setEditLabel({ ...label });\r\n setOpen(!open);\r\n }\r\n };\r\n const handleChange = (field, e) => {\r\n let newLabel = { ...editLabel };\r\n newLabel[field] = e.target.value;\r\n setEditLabel(newLabel);\r\n if (!isSaveable) {\r\n setIsSaveable(true);\r\n }\r\n };\r\n const onKeyPressed = (e) => {\r\n if (e.keyCode == 13 && e.shiftKey === false) {\r\n e.preventDefault();\r\n save();\r\n }\r\n };\r\n const stopShit = (e) => {\r\n if (open) {\r\n e.stopPropagation();\r\n }\r\n };\r\n const save = () => {\r\n const { systemLabelId, languageCode, value, hint } = editLabel;\r\n\r\n if (open && isSaveable) {\r\n dispatch(systemLabelActions.update(systemLabelId, value, hint, languageCode, groupName));\r\n }\r\n setOpen(false);\r\n setIsSaveable(false);\r\n label.value = value;\r\n label.hint = hint;\r\n setEditLabel(null);\r\n };\r\n const cancel = () => {\r\n setOpen(false);\r\n setIsSaveable(false);\r\n setEditLabel(null);\r\n };\r\n const onFocus = (e) => {\r\n e.target.select();\r\n };\r\n\r\n if (asOption && label) {\r\n return (\r\n \r\n );\r\n } else if (asOption2 && label) {\r\n return { value: asOption2, label: label.value };\r\n } else {\r\n return (\r\n \r\n {label && (\r\n \r\n {label.value}\r\n {isEditable && open && editLabel ? (\r\n \r\n {label.name + ` (${label.languageCode})[${gName}]`}\r\n \r\n \r\n \r\n \r\n handleChange(\"value\", e)}\r\n onKeyDown={onKeyPressed}\r\n />\r\n \r\n \r\n \r\n handleChange(\"hint\", e)}\r\n onKeyDown={onKeyPressed}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n ) : null}\r\n {label.hint && label.hint.length > 0 ? (\r\n \r\n  \r\n {label.hint}
}>\r\n \r\n \r\n
\r\n ) : null}\r\n \r\n )}\r\n \r\n );\r\n }\r\n}, systemLabelIsEqual);\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n user: state.authentication.user,\r\n systemLabels: state.systemLabels,\r\n cms: state.cms,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(SystemLabel);\r\n","export function lsgetItem(param) {\r\n let user = localStorage.getItem(param) ? JSON.parse(localStorage.getItem(param)) : null;\r\n/* if(!encodedUser) return null;\r\n let user = JSON.parse(atob(encodedUser)); */\r\n return user;\r\n}\r\n\r\nexport function lssetItem(user,param) {\r\n let strUser = JSON.stringify(user);\r\n/* let encodedUser = btoa(strUser); */\r\n localStorage.setItem(param, strUser);\r\n}","export function preciseRound(value, decPlaces) {\r\n var val = value * Math.pow(10, decPlaces);\r\n var fraction = (Math.round((val - parseInt(val)) * 10) / 10);\r\n\r\n //this line is for consistency with .NET Decimal.Round behavior\r\n // -342.055 => -342.06\r\n if (fraction == -0.5) fraction = -0.6;\r\n\r\n val = Math.round(parseInt(val) + fraction) / Math.pow(10, decPlaces);\r\n return val;\r\n}\r\n\r\nexport function displayMoney(amount, vat) {\r\n let price = 0;\r\n if (!isNaN(amount)) {\r\n if (isNaN(vat) || vat === 0) {\r\n price = amount\r\n }\r\n else {\r\n price = (amount + (amount * (vat / 100))).toFixed(4);\r\n }\r\n }\r\n return preciseRound(price, 2);\r\n}\r\n\r\nexport function removeZerosFromNumber(num) {\r\n if (num % 1 != 0) {\r\n \r\n let numString = num.toString();\r\n let newNumString = ''\r\n for (let index = numString.length - 1; index >= 0; index--) {\r\n let v = numString.charAt(index)\r\n if (v !== '0' || newNumString.includes('.'))\r\n newNumString = v + newNumString;\r\n }\r\n\r\n newNumString = parseFloat(newNumString);\r\n return newNumString;\r\n }\r\n return num;\r\n}","import { defaultContentElement } from \"../models/defaultElements\";\r\nimport { securityHelper } from \"../../helpers/securityHelper\";\r\nimport { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\nimport { sourceTypes } from \"../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../helpers/objectHelper\";\r\n\r\nexport const contentHelper = {\r\n create\r\n};\r\n\r\nfunction getNewId(elements) {\r\n const contents =\r\n elements.filter(el => el.type === elementConstants.CONTENT)\r\n ;\r\n\r\n if (!contents.length > 0) {\r\n return 0;\r\n }\r\n\r\n return contents.length * -1;\r\n}\r\n\r\nfunction create(\r\n source,\r\n sourceType,\r\n selectedEl,\r\n destination\r\n) {\r\n let eventId = null;\r\n let langCode = null;\r\n let elements = null;\r\n let currentPage = null;\r\n let formId = null;\r\n let pageId = null;\r\n let templateId = null;\r\n\r\n if (sourceType === sourceTypes.FORM) {\r\n elements = source.formElements;\r\n currentPage = source.currentPage\r\n eventId = source.eventId;\r\n langCode = source.languageCode;\r\n formId = source.formId;\r\n }\r\n if (sourceType === sourceTypes.PAGE) {\r\n elements = source.pageElements\r\n currentPage = source.currentPage\r\n eventId = source.eventId\r\n langCode = source.languageCode;\r\n pageId = source.pageId;\r\n }\r\n if (sourceType === sourceTypes.TEMPLATE) {\r\n elements = source;\r\n eventId = source.eventId;\r\n langCode = source.languageCode\r\n currentPage = 1\r\n }\r\n let newEl = deepClone(defaultContentElement);\r\n newEl.sortOrder = destination.index;\r\n newEl.formId = formId;\r\n newEl.eventId = eventId;\r\n newEl.parentId = null;\r\n newEl.pageId = pageId;\r\n newEl.id = getNewId(elements);\r\n newEl.languageCode = langCode;\r\n newEl.contentId = securityHelper.createGuid();\r\n newEl.page = currentPage;\r\n newEl.props = {\r\n ...defaultContentElement.props,\r\n type: selectedEl.type\r\n };\r\n newEl.data = selectedEl.settings;\r\n return newEl;\r\n}\r\n","import { createContext } from \"react\";\r\nimport { makeObservable, observable, runInAction, toJS } from \"mobx\";\r\nimport Axios from \"axios\";\r\nimport { conditionConstants } from \"../constants/condition.constants\";\r\nimport { conditionTranslator } from \"../helpers/condition.translator\";\r\nimport { conditionNavigator } from \"../helpers/condition.navigator\";\r\nimport { defaultInvoiceFields } from \"../constants/invoiceFields.constants\";\r\nimport { getUrlParam } from \"../helpers/url.helper\";\r\nimport { deepClone, toCamelCase } from \"../helpers/objectHelper\";\r\n\r\nvar updateSqlStateTimeout;\r\n\r\nexport class Store {\r\n constructor() {\r\n makeObservable(this, {\r\n contentLayout: observable,\r\n modules: observable,\r\n environment: observable,\r\n current: observable,\r\n templates: observable,\r\n uploadedFonts: observable,\r\n googleFonts: observable,\r\n questions: observable,\r\n fields: observable,\r\n orders: observable,\r\n validations: observable,\r\n activePersonNo: observable,\r\n formState: observable,\r\n sqlStateNo: observable,\r\n validate: observable,\r\n conditions: observable,\r\n globalAlert: observable,\r\n countries: observable,\r\n eventLabels: observable,\r\n systemLabels: observable,\r\n contentHeaderLayout: observable,\r\n contentFooterLayout: observable,\r\n mainEvent: observable,\r\n displayConfirmationSettings: observable,\r\n displayEventSettings: observable,\r\n menuItems: observable,\r\n validatePaymentFields: observable,\r\n mainEventFullbooked: observable,\r\n voucherList: observable,\r\n breakoutsFullbooked: observable,\r\n defaultSelectedCountry: observable,\r\n hotels: observable,\r\n hotelAllotments: observable,\r\n });\r\n }\r\n\r\n environment = {\r\n name: \"FORM\",\r\n eventId: 172,\r\n lang: \"swe\",\r\n currency: \"SEK\", //?\r\n };\r\n event = {\r\n name: \"Test event\",\r\n languages: [\r\n { alpha3Code: \"swe\", alpha2Code: \"\" },\r\n { alpha3Code: \"eng\", alpha2Code: \"\" },\r\n ],\r\n };\r\n templates = [];\r\n breakoutsFullbooked = {};\r\n menuItems = [];\r\n mainEventFullbooked = false;\r\n contentHeaderLayout = null;\r\n contentFooterLayout = null;\r\n current = {\r\n selectedModule: null,\r\n activeLayout: null,\r\n activePage: 1,\r\n versionIndex: 0,\r\n template: null,\r\n payMethod: \"\",\r\n hasContentView: false,\r\n scopedLayout: false,\r\n };\r\n\r\n languages = [];\r\n contentLayout = null;\r\n fields = [];\r\n conditions = {};\r\n validate = false;\r\n validatePaymentFields = false;\r\n sqlStateNo = null;\r\n uploadedFonts = [];\r\n googleFonts = [];\r\n questions = [];\r\n xrayMode = false;\r\n breakouts = [];\r\n changeList = {};\r\n contentLayoutChanges = [];\r\n contentLayoutModuleChanges = [];\r\n contentModuleChanges = [];\r\n templateChanges = [];\r\n fieldChanges = [];\r\n questionChanges = [];\r\n breakoutChanges = [];\r\n displayEventSettings = [];\r\n displayConfirmationSettings = [];\r\n modules = [];\r\n validations = [];\r\n orders = [];\r\n activePersonNo = 0;\r\n formState = null;\r\n globalAlert = null;\r\n countries = [];\r\n eventLabels = {};\r\n systemLabels = {};\r\n mainEvent = null;\r\n voucherList = [];\r\n hotels = [];\r\n hotelAllotments = [];\r\n defaultSelectedCountry = 0;\r\n\r\n setActivePage = (int) => {\r\n runInAction(() => {\r\n this.current.activePage = int;\r\n if (this.contentLayout?.activateGroupLeaderOnPage && this.contentLayout?.activateGroupLeaderOnPage == this.current?.activePage) {\r\n runInAction(() => {\r\n let leader = this.orders.find((x) => x.leader);\r\n if (leader) {\r\n this.setActiveOrder(this.orders.indexOf(leader));\r\n }\r\n });\r\n }\r\n });\r\n };\r\n\r\n setBreakoutFullbooked = (eventId, bookedStatus) => {\r\n runInAction(() => {\r\n this.breakoutsFullbooked[eventId] = bookedStatus;\r\n });\r\n this.checkConditions();\r\n };\r\n\r\n setVoucherList = (list) => {\r\n runInAction(() => {\r\n this.voucherList = list;\r\n });\r\n };\r\n\r\n loadHotels = async () => {\r\n var response = await Axios.get(`./hotel/getHotelAllotments/${this.environment.eventId}`);\r\n runInAction(() => {\r\n this.hotels = response?.data?.hotels ?? [];\r\n this.hotelAllotments = response?.data?.allotments ?? [];\r\n });\r\n };\r\n\r\n setValidatePaymentFields = (val) => {\r\n runInAction(() => {\r\n this.validatePaymentFields = val;\r\n });\r\n };\r\n\r\n setMenuItems = (items) => {\r\n if (items !== \"\" && items !== undefined && items !== null) {\r\n runInAction(() => {\r\n this.menuItems = items;\r\n });\r\n }\r\n };\r\n\r\n isHiddenByConditions = (id) => {\r\n var hidden = false;\r\n let clm = this.contentLayout.contentLayoutModules.find((x) => x.contentModuleId == id);\r\n if (clm) {\r\n let isHidden = this.conditions[clm.contentLayoutModuleId]?.hidden;\r\n if (isHidden) {\r\n hidden = true;\r\n }\r\n }\r\n return hidden;\r\n };\r\n\r\n checkInvoiceValidation = (isValid) => {\r\n if (\r\n this.validations\r\n .filter((v) => v.page == this.current.activePage)\r\n .find((v) => v.id.toString().includes(\"INVOICE_\") && this.current.payMethod != \"invoice\" && this.current.payMethod != \"dibs\" && this.current.payMethod != \"stripe\" && this.validatePaymentFields)\r\n ) {\r\n isValid = this.getFilteredValidations().length == 0;\r\n } else if (this.validations.filter((v) => v.page == this.current.activePage).find((v) => (v.id.toString().includes(\"INVOICE_\") && this.current.payMethod != \"invoice\") || !this.validatePaymentFields)) {\r\n isValid = this.getFilteredValidations().length == 0;\r\n }\r\n return isValid;\r\n };\r\n\r\n getFilteredValidations = () => {\r\n const currentPageValidations = this.validations.filter((v) => v.page == this.current.activePage || v.page === 0);\r\n //if any id of any validations is an invoice field (aka includes INVOICE_), AND if current payMethod isn't invoice nor dibs, AND we're suppossed to validate fields\r\n if (currentPageValidations.find((v) => v.id.toString().includes(\"INVOICE_\")) && ![\"invoice\", \"dibs\", \"stripe\"].includes(this.current.payMethod) && this.validatePaymentFields) {\r\n //return any current page validation that is invalid, visible, and not invoice\r\n return currentPageValidations.filter((v) => v.valid == false && !this.isHiddenByConditions(v.id) && !v.id.toString().includes(\"INVOICE_\"));\r\n }\r\n //if (any id of the validations is an invoice field (aka includes INVOICE_), AND if current payMethod isn't invoice), OR we're not supposed to validate payment fields\r\n else if (currentPageValidations.find((v) => (v.id.toString().includes(\"INVOICE_\") && this.current.payMethod != \"invoice\") || !this.validatePaymentFields)) {\r\n //return any current page validation that is invalid, visible, and not invoice\r\n return currentPageValidations.filter((v) => v.valid == false && !this.isHiddenByConditions(v.id) && !v.id.toString().includes(\"INVOICE_\") && v.label != \"PaymentOption\");\r\n } else {\r\n return currentPageValidations.filter((v) => v.valid == false && !this.isHiddenByConditions(v.id));\r\n }\r\n };\r\n //Registration\r\n register = (callback) => {\r\n let isValid = this.validations.filter((v) => v.valid == false && !this.isHiddenByConditions(v.id)).length == 0;\r\n if (this.current.payMethod == \"dibs\" || this.current.payMethod === \"stripe\") isValid = this.getFilteredValidations().filter((v) => v.valid == false).length == 0;\r\n isValid = this.checkInvoiceValidation(isValid);\r\n if (isValid) {\r\n let orders = Array.from(this.orders);\r\n if (this.current.payMethod) {\r\n orders.map((o) => {\r\n o.payMethod = this.current.payMethod;\r\n o.contentLayoutId = this.contentLayout.contentLayoutId;\r\n if (!o.webConfirmationId) o.webConfirmationId = this.contentLayout.webConfirmation;\r\n if (!o.emailConfirmationId) o.emailConfirmationId = this.contentLayout.emailConfirmation;\r\n if (!o.secondaryEmailConfirmationId) o.secondaryEmailConfirmationId = this.contentLayout.secondaryEmailConfirmation;\r\n });\r\n } else {\r\n orders.map((o) => {\r\n o.contentLayoutId = this.contentLayout.contentLayoutId;\r\n if (!o.webConfirmationId) o.webConfirmationId = this.contentLayout.webConfirmation;\r\n if (!o.emailConfirmationId) o.emailConfirmationId = this.contentLayout.emailConfirmation;\r\n if (!o.secondaryEmailConfirmationId) o.secondaryEmailConfirmationId = this.contentLayout.secondaryEmailConfirmation;\r\n });\r\n }\r\n\r\n const dto = [];\r\n\r\n orders.forEach((o) => {\r\n const order = {\r\n orderId: o.orderId ? o.orderId : null,\r\n eventIds: [],\r\n };\r\n\r\n if (o.orderRow) {\r\n o.orderRow\r\n .filter(({ orderRowId }) => orderRowId < 0)\r\n .forEach((or) => {\r\n order.eventIds.push(or.eventId);\r\n });\r\n }\r\n if (!order.discounts) {\r\n order.discounts = [];\r\n }\r\n if (order.eventIds.length > 0) {\r\n dto.push(order);\r\n }\r\n });\r\n\r\n if (dto.length > 0) {\r\n Axios.post(`./api/attendee/statusrange/${this.sqlStateNo}`, dto).then(({ data }) => {\r\n if (data.available) {\r\n if (this.contentLayout.type === \"SURVEY\") this.surveyPost(orders, callback);\r\n else this.formPost(orders, callback);\r\n } else {\r\n alert(\"OrderRowFull\");\r\n }\r\n });\r\n } else {\r\n if (this.contentLayout.type === \"SURVEY\") this.surveyPost(orders, callback);\r\n else this.formPost(orders, callback);\r\n }\r\n }\r\n };\r\n\r\n showQuestionModule = (id) => {\r\n var foundModule = true;\r\n var specificModule = this.contentLayout.contentLayoutModules.find((x) => x.contentModule.type == \"QUESTION\" && x.contentModule.settings.questionId == id);\r\n if (specificModule) {\r\n let isHidden = this.conditions[specificModule.contentLayoutModuleId]?.hidden;\r\n if (isHidden) {\r\n foundModule = false;\r\n }\r\n }\r\n return foundModule;\r\n };\r\n\r\n formPost = (orders, callback) => {\r\n orders = deepClone(orders);\r\n //exclude hidden required questions\r\n orders.forEach((order) => {\r\n if (order.answer && order.answer.length > 0) {\r\n order.answer.forEach((question) => {\r\n let include = this.showQuestionModule(question.questionId);\r\n if (!include) {\r\n order.answer = order.answer.filter((x) => x.questionId != question.questionId);\r\n }\r\n });\r\n }\r\n });\r\n\r\n Axios.post(`./api/cms/post/`, orders)\r\n .then(({ data }) => {\r\n let item = localStorage.getItem(\"formstates\");\r\n if (item) {\r\n let states = JSON.parse(item);\r\n let prevState = states.find((s) => s.formId === this.contentLayout.contentLayoutId && s.expires > Date.now());\r\n if (prevState) {\r\n states.splice(states.indexOf(prevState), 1);\r\n localStorage.setItem(\"formstates\", JSON.stringify(states));\r\n }\r\n }\r\n if (typeof callback === \"function\") {\r\n callback(true);\r\n }\r\n\r\n const searchParams = new URLSearchParams(window.location.search);\r\n const station = searchParams.get(\"station\");\r\n window.location.href = window.location.origin + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + data.redirectUrl + (station ? \"&station=\" + station : \"\");\r\n })\r\n .catch((err) => {\r\n if (typeof callback === \"function\") {\r\n callback(false);\r\n }\r\n this.globalAlert = \"RegisterFailed\";\r\n });\r\n };\r\n\r\n surveyPost = (orders, callback) => {\r\n Axios.post(`./api/cms/postSurvey/`, orders)\r\n .then(({ data }) => {\r\n let item = localStorage.getItem(\"formstates\");\r\n if (item) {\r\n let states = JSON.parse(item);\r\n let prevState = states.find((s) => s.formId === this.contentLayout.contentLayoutId && s.expires > Date.now());\r\n if (prevState) {\r\n states.splice(states.indexOf(prevState), 1);\r\n localStorage.setItem(\"formstates\", JSON.stringify(states));\r\n }\r\n }\r\n if (typeof callback === \"function\") {\r\n callback(true);\r\n }\r\n window.location.href = window.location.origin + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + data.redirectUrl;\r\n })\r\n .catch((err) => {\r\n if (typeof callback === \"function\") {\r\n callback(false);\r\n }\r\n this.globalAlert = \"RegisterFailed\";\r\n });\r\n };\r\n\r\n updateSqlState = () => {\r\n let storageStates = localStorage.getItem(\"formstates\");\r\n let formStates = undefined;\r\n\r\n if (storageStates) {\r\n formStates = JSON.parse(storageStates);\r\n } else {\r\n formStates = [];\r\n }\r\n var state = formStates.find((fs) => fs.formId === this.contentLayout.contentLayoutId && fs.expires > Date.now());\r\n if (state) {\r\n state.expires = Date.now() + 1800000;\r\n } else {\r\n formStates.push({\r\n formId: this.contentLayout.contentLayoutId,\r\n sqlStateNo: this.sqlStateNo,\r\n expires: Date.now() + 1800000,\r\n });\r\n }\r\n\r\n formStates = formStates.filter((fs) => fs.expires > Date.now());\r\n localStorage.setItem(\"formstates\", JSON.stringify(formStates));\r\n\r\n const body = {\r\n eventId: this.environment.eventId,\r\n sqlStateNo: this.sqlStateNo,\r\n stateString: JSON.stringify(this.orders),\r\n };\r\n\r\n Axios.post(`./api/attendee/`, body, { responseType: \"json\" });\r\n };\r\n\r\n updateOrder = (updatedOrder, personNo = this.activePersonNo) => {\r\n updatedOrder.sqlStateNo = this.sqlStateNo;\r\n updatedOrder.contentLayoutId = this.contentLayout.contentLayoutId;\r\n updatedOrder.eventId = this.environment.eventId;\r\n updatedOrder.languageCode = this.environment.lang;\r\n const exhibitorId = getUrlParam(\"exi\");\r\n\r\n if (exhibitorId && !isNaN(exhibitorId)) {\r\n if (!updatedOrder.orderExtra) updatedOrder.orderExtra = [{ orderExtraId: 0, name: \"ExhibitorInvite\", value: `${exhibitorId}`, value2: \"\" }];\r\n else if (!updatedOrder.orderExtra.some((oe) => oe.name == \"ExhibitorInvite\")) {\r\n updatedOrder.orderExtra.push({ orderExtraId: 0, name: \"ExhibitorInvite\", value: `${exhibitorId}`, value2: \"\" });\r\n } else if (updatedOrder.orderExtra.find((oe) => oe.name == \"ExhibitorInvite\")) {\r\n updatedOrder.orderExtra.find((oe) => oe.name == \"ExhibitorInvite\").value = `${exhibitorId}`;\r\n }\r\n }\r\n\r\n if (!updatedOrder.orderId) updatedOrder.orderId = ((this.orders.length ?? 0) + 1) * -1;\r\n if (!updatedOrder.orderRow) updatedOrder.orderRow = [];\r\n\r\n if (!updatedOrder.orderRow.find((row) => row.eventId === this.environment.eventId)) {\r\n updatedOrder.orderRow.push({\r\n amount: this.mainEvent.amount,\r\n comment: \"\",\r\n discount: 0,\r\n eventId: this.mainEvent.eventId,\r\n orderId: -1,\r\n orderRowId: updatedOrder.orderRow.length * -1,\r\n quantity: 1,\r\n status: null,\r\n vatPercent: this.mainEvent.vatPercent,\r\n deleted: false,\r\n });\r\n }\r\n if (updateSqlStateTimeout) {\r\n clearTimeout(updateSqlStateTimeout);\r\n }\r\n updateSqlStateTimeout = setTimeout(this.updateSqlState, 500);\r\n\r\n runInAction(() => {\r\n this.orders[personNo] = updatedOrder;\r\n this.orders = [...this.orders];\r\n });\r\n const personTypeId = getUrlParam(\"pti\");\r\n if (personTypeId && !isNaN(personTypeId)) {\r\n this.addPersonType(parseInt(personTypeId));\r\n }\r\n };\r\n\r\n updateOrderRow = (orderRow, forceUncheck = false, orderId = null) => {\r\n runInAction(() => {\r\n if (this.orders?.length == 0) this.createOrder();\r\n let order = this.orders[this.activePersonNo];\r\n if (orderId) order = this.orders.find((o) => o.orderId === orderId);\r\n\r\n if (!order.orderRow) {\r\n order.orderRow = [\r\n {\r\n amount: this.mainEvent.amount,\r\n comment: \"\",\r\n discount: 0,\r\n eventId: this.mainEvent.eventId,\r\n orderId: -1,\r\n orderRowId: (order.orderRow.length + 1) * -1,\r\n quantity: 1,\r\n status: null,\r\n vatPercent: this.mainEvent.vatPercent,\r\n deleted: false,\r\n },\r\n ];\r\n }\r\n\r\n if (!order.orderExtra) {\r\n order.orderExtra = [];\r\n }\r\n\r\n if (forceUncheck && !order.orderExtra.find((oe) => oe.name === \"EventRejected\" && oe.value == orderRow.eventId)) {\r\n order.orderExtra.push({ name: \"EventRejected\", value: orderRow.eventId, value2: \"\" });\r\n } else if (forceUncheck && order.orderExtra.find((oe) => oe.name === \"EventRejected\" && oe.value == orderRow.eventId)) {\r\n order.orderExtra = order.orderExtra.filter((oe) => !(oe.name === \"EventRejected\" && oe.value == orderRow.eventId));\r\n }\r\n\r\n if (orderRow.eventId) {\r\n if (!order.orderRow.find((or) => or.eventId === orderRow.eventId) && !forceUncheck) {\r\n order.orderRow.push(orderRow);\r\n } else if (!forceUncheck) {\r\n order.orderRow = order.orderRow.filter((or) => or.eventId !== orderRow.eventId);\r\n }\r\n } else if (orderRow.hotelGroupId && orderRow.hotelAllotmentPricingId) {\r\n if (!order.orderRow.some((or) => or.hotelGroupId === orderRow.hotelGroupId && or.hotelAllotmentPricingId === orderRow.hotelAllotmentPricingId) && !forceUncheck) {\r\n order.orderRow.push(orderRow);\r\n } else if (orderRow.deleted) {\r\n order.orderRow = order.orderRow.filter((or) => or.orderRowId !== orderRow.orderRowId);\r\n } else {\r\n const index = order.orderRow.findIndex((or) => (or.orderRowId === orderRow.orderRowId) & (or.hotelGroupId === orderRow.hotelGroupId) & (or.hotelAllotmentPricingId === orderRow.hotelAllotmentPricingId));\r\n if (index !== -1) {\r\n order.orderRow[index] = orderRow;\r\n }\r\n }\r\n }\r\n\r\n if (orderRow.eventId) {\r\n if (!order.orderRow.find((or) => or.eventId === orderRow.eventId) && !forceUncheck) {\r\n order.orderRow.push(orderRow);\r\n } else {\r\n order.orderRow = order.orderRow.filter((or) => or.eventId !== orderRow.eventId);\r\n }\r\n } else if (orderRow.hotelGroupId && orderRow.hotelAllotmentPricingId) {\r\n if (!order.orderRow.some((or) => or.hotelGroupId === orderRow.hotelGroupId && or.hotelAllotmentPricingId === orderRow.hotelAllotmentPricingId) && !forceUncheck) {\r\n order.orderRow.push(orderRow);\r\n } else if (orderRow.deleted) {\r\n console.log(\"deleted\");\r\n order.orderRow = order.orderRow.filter((or) => or.orderRowId !== orderRow.orderRowId);\r\n } else {\r\n const index = order.orderRow.findIndex((or) => (or.orderRowId === orderRow.orderRowId) & (or.hotelGroupId === orderRow.hotelGroupId) & (or.hotelAllotmentPricingId === orderRow.hotelAllotmentPricingId));\r\n if (index !== -1) {\r\n order.orderRow[index] = orderRow;\r\n }\r\n }\r\n }\r\n });\r\n if (updateSqlStateTimeout) {\r\n clearTimeout(updateSqlStateTimeout);\r\n }\r\n updateSqlStateTimeout = setTimeout(this.updateSqlState, 500);\r\n runInAction(() => {\r\n this.orders = [...this.orders];\r\n });\r\n };\r\n\r\n updateOrderRowHotel = (hotelGroup, orderRowHotel) => {\r\n const order = this.orders[this.activePersonNo];\r\n const orderRows = order?.orderRow?.filter((or) => or.hotelGroup === hotelGroup);\r\n runInAction(() => {\r\n orderRows.map((or) => {\r\n if (orderRowHotel.orderId) {\r\n if (or.orderRowHotel.some((orh) => orh.orderId == orderRowHotel.orderId)) {\r\n or.orderRowHotel = or.orderRowHotel.filter((orh) => orh.orderId != orderRowHotel.orderId);\r\n } else {\r\n or.orderRowHotel.push(orderRowHotel);\r\n }\r\n } else {\r\n if (or.orderRowHotel.some((orh) => orh.roomMate === orderRowHotel.roomMate)) {\r\n or.orderRowHotel = or.orderRowHotel.filter((orh) => orh.roomMate != orderRowHotel.roomMate);\r\n } else {\r\n or.orderRowHotel.push(orderRowHotel);\r\n }\r\n }\r\n });\r\n });\r\n updateSqlStateTimeout = setTimeout(this.updateSqlState, 500);\r\n runInAction(() => {\r\n this.orders = [...this.orders];\r\n });\r\n };\r\n removeOrder = (index) => {\r\n var newOrderList = Array.from(this.orders);\r\n var newActivePersonNo = 0;\r\n\r\n if (this.orders.length > 1) {\r\n const orderToRemove = newOrderList[index];\r\n const indexToRemove = newOrderList.indexOf(orderToRemove);\r\n if (indexToRemove != -1) {\r\n if (indexToRemove <= this.activePersonNo) {\r\n newActivePersonNo = this.activePersonNo - 1;\r\n }\r\n newOrderList.splice(index, 1);\r\n }\r\n }\r\n this.activePersonNo = newActivePersonNo;\r\n this.orders = newOrderList;\r\n };\r\n\r\n setActiveOrder = (index) => {\r\n runInAction(() => {\r\n this.activePersonNo = index;\r\n });\r\n };\r\n\r\n setLeader = (index) => {\r\n var newOrderList = Array.from(this.orders);\r\n newOrderList = newOrderList.map((n, i) => {\r\n runInAction(() => {\r\n n.leader = false;\r\n if (i == index) n.leader = true;\r\n });\r\n return n;\r\n });\r\n this.orders = newOrderList;\r\n };\r\n\r\n createOrder = () => {\r\n const newOrder = {};\r\n newOrder.sqlStateNo = this.sqlStateNo; // fix\r\n newOrder.contentLayoutId = this.contentLayout.contentLayoutId;\r\n newOrder.eventId = this.contentLayout.eventId;\r\n newOrder.languageCode = this.environment.lang;\r\n newOrder.orderId = 0;\r\n\r\n const exhibitorId = getUrlParam(\"exi\");\r\n if (exhibitorId && !isNaN(exhibitorId)) {\r\n newOrder.orderExtra = [{ orderExtraId: 0, name: \"ExhibitorInvite\", value: `${exhibitorId}`, value2: \"\" }];\r\n }\r\n\r\n if (!newOrder.orderRow) {\r\n newOrder.orderRow = [];\r\n }\r\n\r\n if (!newOrder.orderRow.find((row) => row.eventId == this.mainEvent.eventId)) {\r\n newOrder.orderRow.push({\r\n amount: this.mainEvent.amount,\r\n comment: \"\",\r\n discount: 0,\r\n eventId: this.mainEvent.eventId,\r\n orderId: -1,\r\n orderRowId: newOrder.orderRow.length * -1,\r\n quantity: 1,\r\n status: null,\r\n vatPercent: this.mainEvent.vatPercent,\r\n deleted: false,\r\n });\r\n }\r\n if (updateSqlStateTimeout) {\r\n clearTimeout(updateSqlStateTimeout);\r\n }\r\n\r\n updateSqlStateTimeout = setTimeout(this.updateSqlState, 500);\r\n if (this.orders.length > 0 && toJS(this.orders)[this.activePersonNo]) {\r\n this.checkForGroupTransferValues(this.orders[this.activePersonNo], newOrder);\r\n }\r\n\r\n if (this.orders.length == 1) {\r\n this.orders[0].leader = true;\r\n } else {\r\n }\r\n this.orders.push(newOrder);\r\n this.configureValidation();\r\n //this.activePersonNo += 1;\r\n if (this.orders.length > 0) {\r\n this.activePersonNo = this.orders.length - 1;\r\n } else {\r\n this.activePersonNo = 0;\r\n }\r\n const personTypeId = getUrlParam(\"pti\");\r\n if (personTypeId && !isNaN(personTypeId)) {\r\n newOrder.personTypes = [{ orderId: 0, personTypeId: parseInt(personTypeId) }];\r\n }\r\n };\r\n\r\n addPersonType = (personTypeId) => {\r\n if (this.orders.length === 0) {\r\n this.createOrder();\r\n }\r\n runInAction(() => {\r\n if (!this.orders[this.activePersonNo].personTypes) {\r\n this.orders[this.activePersonNo].personTypes = [];\r\n }\r\n if (!this.orders[this.activePersonNo].personTypes.find((pt) => pt.personTypeId === personTypeId)) {\r\n this.orders[this.activePersonNo].personTypes.push({ orderId: 0, personTypeId });\r\n this.orders[this.activePersonNo] = { ...this.orders[this.activePersonNo] };\r\n this.orders = [...this.orders];\r\n }\r\n });\r\n };\r\n\r\n removePersonType = (personTypeId) => {\r\n if (this.orders?.[this.activePersonNo]?.personTypes) {\r\n runInAction(() => {\r\n this.orders[this.activePersonNo].personTypes = this.orders[this.activePersonNo].personTypes.filter((pt) => pt.personTypeId !== personTypeId && !pt.personTypeOrderId);\r\n this.orders = [...this.orders];\r\n });\r\n }\r\n };\r\n\r\n checkForGroupTransferValues(previousOrder, newOrder) {\r\n if (this.questions.length > 0) {\r\n this.modules.map((m) => {\r\n if (m.settings?.groupTransfer) {\r\n if (m.type === \"FIELD\") {\r\n const field = this.fields.find((f) => f.fieldId == m.settings.fieldId);\r\n if (previousOrder[toCamelCase(field.type)]?.[toCamelCase(field.name)]) {\r\n if (!newOrder[toCamelCase(field.type)]) {\r\n newOrder[[toCamelCase(field.type)]] = {};\r\n }\r\n newOrder[[toCamelCase(field.type)]][toCamelCase(field.name)] = previousOrder[toCamelCase(field.type)][toCamelCase(field.name)];\r\n }\r\n } else if (m.type === \"EVENT\") {\r\n let row = previousOrder?.orderRow?.find((or) => or.eventId == m.settings.eventId);\r\n if (row) {\r\n if (!newOrder.orderRow) {\r\n newOrder.orderRow = [];\r\n }\r\n newOrder.orderRow.push({\r\n ...row,\r\n orderId: -1,\r\n orderRowId: newOrder.orderRow.length * -1,\r\n });\r\n this.checkEventAvailability(row.eventId, -1, this.sqlStateNo, true).then((res) => {\r\n if (res === false) {\r\n const ord = deepClone(this.orders.find((x) => x.orderId == newOrder.orderId));\r\n ord.orderRow = ord.orderRow.filter((x) => x.eventId != row.eventId);\r\n runInAction(() => {\r\n const target = this.orders.find((x) => x.orderId == newOrder.orderId);\r\n target.orderRow = ord.orderRow;\r\n });\r\n }\r\n });\r\n }\r\n } else if (m.type === \"QUESTION\") {\r\n const answer = previousOrder?.answer?.find((a) => a.questionId == m.settings.questionId);\r\n if (answer) {\r\n if (!newOrder.answer) {\r\n newOrder.answer = [];\r\n }\r\n newOrder.answer.push({\r\n answerId: 0,\r\n interactionKey: null,\r\n orderId: 0,\r\n questionId: m.settings.questionId,\r\n answerRow: answer.answerRow?.map((ar) => {\r\n return {\r\n answerId: 0,\r\n answerRowId: 0,\r\n questionOptionId: ar.questionOptionId,\r\n text: ar.text,\r\n deleted: false,\r\n };\r\n }),\r\n });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n checkEventAvailability = async (eventId, orderId, sqlStateNo, add = false) => {\r\n const count = (this.orders.filter((x) => x.orderRow?.some((y) => y.eventId === eventId))?.length ?? 0) + (add ? 1 : 0);\r\n const { data } = await Axios.get(`./api/attendee/status/${eventId}${orderId && orderId > 0 ? \"/\" + orderId : \"\"}?sqlStateNo=${sqlStateNo ? sqlStateNo : 0}&count=${count}`);\r\n return data.available;\r\n };\r\n\r\n configureValidation = () => {\r\n var oldValidations = deepClone(this.validations);\r\n\r\n this.validations = [];\r\n const layout = this.current.scopedLayout ? this.current.scopedLayout : this.contentLayout;\r\n layout?.contentLayoutModules.map((clm) => {\r\n const validationObject = { page: clm.pages, valid: false, id: clm.contentModule.contentModuleId, reason: \"\" };\r\n\r\n if (clm.contentModule.type == \"FIELD\" || clm.contentModule.type == \"QUESTION\") {\r\n if (\r\n clm.contentModule.settings.required ||\r\n (clm.contentModule.settings.fieldType &&\r\n (clm.contentModule.settings.fieldType.toLowerCase() == \"email\" || clm.contentModule.settings.fieldType.toLowerCase() == \"firstname\" || clm.contentModule.settings.fieldType.toLowerCase() == \"lastname\"))\r\n ) {\r\n console.log(\"field\");\r\n validationObject.reason = \"required\";\r\n if (clm.contentModule.settings?.fieldType) {\r\n validationObject.decorator = clm.contentModule.settings.fieldType.toLowerCase();\r\n }\r\n } else {\r\n validationObject.valid = true;\r\n }\r\n this.validations.push(validationObject);\r\n } else if (clm.contentModule.type == \"EVENT\" || clm.contentModule.type == \"EVENT_GROUP\") {\r\n if (clm.contentModule.settings.required && !clm.contentModule.settings.prechecked) {\r\n validationObject.reason = \"required\";\r\n } else {\r\n validationObject.valid = true;\r\n }\r\n this.validations.push(validationObject);\r\n }\r\n\r\n if (clm.contentModule.type == \"PAYMENT_OPTIONS\" && clm.contentModule.settings.paymentMethods.includes(\"invoice\")) {\r\n defaultInvoiceFields.map((df) => {\r\n let defaultValidity = false;\r\n switch (df) {\r\n case \"Email\":\r\n case \"Telephone1\":\r\n case \"Address2\":\r\n case \"GLN\":\r\n defaultValidity = true;\r\n break;\r\n default:\r\n defaultValidity = false;\r\n break;\r\n }\r\n this.validations.push({ page: clm.pages, valid: defaultValidity, id: `INVOICE_${df}`, label: df + \"ValidationMessage\", type: df });\r\n });\r\n if (clm.contentModule.settings.paymentMethods.length > 1) {\r\n this.validations.push({ page: clm.pages, valid: true, id: clm.contentModule.contentModuleId, label: \"PaymentOption\", message: \"PaymentOptionValidationMessage\" });\r\n }\r\n }\r\n\r\n if (clm.contentModule.type == \"PAYMENT_OPTIONS_TWO\") {\r\n defaultInvoiceFields.map((df) => {\r\n let defaultValidity = false;\r\n\r\n let currentValidity = oldValidations.find((v) => v.id == `INVOICE_${df}`);\r\n if (currentValidity != undefined) {\r\n currentValidity = currentValidity.valid;\r\n }\r\n switch (df) {\r\n case \"Email\":\r\n case \"Address1\":\r\n case \"Address2\":\r\n case \"GLN\":\r\n defaultValidity = true;\r\n break;\r\n default:\r\n defaultValidity = false;\r\n break;\r\n }\r\n this.validations.push({ page: clm.pages, valid: currentValidity ? currentValidity : defaultValidity, id: `INVOICE_${df}`, label: df + \"ValidationMessage\", type: df });\r\n });\r\n if (clm.contentModule.settings.paymentMethods.length > 1) {\r\n this.validations.push({ page: clm.pages, valid: true, id: clm.contentModule.contentModuleId, label: \"PaymentOption\", message: \"PaymentOptionValidationMessage\" });\r\n }\r\n }\r\n\r\n if (clm.conditions && typeof clm.conditions == \"string\" && clm.conditions != \"null\") {\r\n clm.conditions = JSON.parse(clm.conditions);\r\n }\r\n if (!this.conditions[clm.contentLayoutModuleId]) this.conditions[clm.contentLayoutModuleId] = { hidden: false, readonly: false, required: false };\r\n this.checkConditions(clm.contentLayoutModuleId);\r\n });\r\n\r\n const mustIncludeDecorators = [\"email\", \"firstname\", \"lastname\"];\r\n const includedDecorators = mustIncludeDecorators.filter((decorator) => this.validations.some((validation) => validation?.decorator?.toLowerCase() === decorator.toLowerCase()));\r\n\r\n const allDecoratorsIncluded = includedDecorators.length === mustIncludeDecorators.length;\r\n const missingDecorators = mustIncludeDecorators.filter((decorator) => !this.validations.some((validation) => validation?.decorator?.toLowerCase() === decorator.toLowerCase()));\r\n\r\n if (!allDecoratorsIncluded && this.environment.name === \"FORM\") {\r\n missingDecorators.forEach((decorator) => {\r\n this.validations.push({ decorator, reason: \"required\", id: 0, valid: false, page: 0 });\r\n });\r\n }\r\n };\r\n\r\n triggerValidation = (trigger = true) => {\r\n runInAction(() => {\r\n this.validate = trigger;\r\n });\r\n };\r\n\r\n //Global\r\n configureEnviroment = (layout, res) => {\r\n runInAction(() => {\r\n const lang = getUrlParam(\"lang\");\r\n if (lang) {\r\n this.environment.lang = lang;\r\n } else {\r\n this.environment.lang = res.defaultLanguage;\r\n }\r\n if (layout.type == \"FORM\") {\r\n this.environment.name = \"FORM\";\r\n this.sqlStateNo = res.sqlStateNo;\r\n this.configureValidation();\r\n } else if (layout.type == \"SURVEY\") {\r\n this.environment.name = \"SURVEY\";\r\n this.sqlStateNo = res.sqlStateNo;\r\n this.configureValidation();\r\n }\r\n });\r\n };\r\n\r\n replaceTags = async (textContent) => {\r\n //this.orders.length > 0 && this.orders[this.activePersonNo]?.orderId &&\r\n if (textContent && /\\[.*\\]/.test(textContent)) {\r\n var response = await Axios.put(`./api/tag/tagreplace`, {\r\n text: textContent,\r\n orderId: toJS(this.orders)?.[this.activePersonNo]?.orderId ?? 0,\r\n eventId: this.environment.eventId,\r\n lang: this.environment.lang,\r\n });\r\n return response.data.text;\r\n } else {\r\n return textContent;\r\n }\r\n };\r\n\r\n //Conditions\r\n checkConditions = (contentLayoutModuleId) => {\r\n let targets = [];\r\n if (this.contentLayout.contentLayoutModules.length > 0) {\r\n this.contentLayout.contentLayoutModules.map((clm) => {\r\n if (Array.isArray(clm.conditions) && (!contentLayoutModuleId || clm.conditions.some((c) => c.sourceId == contentLayoutModuleId) || clm.contentLayoutModuleId == contentLayoutModuleId)) {\r\n targets.push(clm);\r\n }\r\n });\r\n }\r\n if (Array.isArray(this.contentLayout.conditions) && (!contentLayoutModuleId || this.contentLayout.conditions.some((c) => c.sourceId == contentLayoutModuleId))) {\r\n targets.push(this.contentLayout);\r\n }\r\n targets.map((target) => {\r\n this.resolveQuery(target);\r\n });\r\n };\r\n\r\n resolveQuery = (target) => {\r\n //ALla conditions för det här target elementet\r\n //filtrerar alla conditons som inte är i grupp 0\r\n\r\n // let queryStr = \"\";\r\n let conditionLists = {};\r\n\r\n for (const action in conditionConstants.actions) {\r\n if (conditionConstants.actions.hasOwnProperty(action)) {\r\n conditionLists[conditionConstants.actions[action]] = target.conditions.filter((el) => el.action == conditionConstants.actions[action]);\r\n }\r\n }\r\n\r\n for (const action in conditionLists) {\r\n if (conditionLists.hasOwnProperty(action)) {\r\n if (conditionLists[action] && conditionLists[action].length > 0) {\r\n const secondaryActions = [\r\n ...new Set(\r\n conditionLists[action].map((c) => {\r\n return c.secondaryAction;\r\n })\r\n ),\r\n ];\r\n for (const secondaryAction of secondaryActions) {\r\n let queryStr = \"\";\r\n conditionLists[action]\r\n .filter((c) => c.secondaryAction === secondaryAction)\r\n .sort((a, b) => {\r\n return a.sortOrder - b.sortOrder;\r\n })\r\n .map((c) => {\r\n if (c.prefix) queryStr += \" \" + c.prefix.replace(\"AND\", \"&&\").replace(\"OR\", \"||\") + \" \";\r\n queryStr += this.resolveCondition(c);\r\n if (c.suffix) queryStr += \" \" + c.suffix.replace(\"AND\", \"&&\").replace(\"OR\", \"||\") + \" \";\r\n });\r\n try {\r\n let result = eval(queryStr);\r\n this.executeAction(action, secondaryAction, target.contentLayoutModuleId, result);\r\n } catch (err) {\r\n console.error(`Invalid Condition in {${target.contentModule?.type}} module: #${target.contentModule?.cssId}`, err);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n\r\n resolveCondition = (condition) => {\r\n const source = this.extractElement(condition.sourceId);\r\n let conditionStr = \"\";\r\n if (source) {\r\n const sourceValue = conditionNavigator.navigate(source, this.orders, this.activePersonNo);\r\n\r\n if (source.contentModule.type === \"EVENT\" && condition.operator === \"FULL\") {\r\n if (this.breakoutsFullbooked[source.contentModule.settings.eventId]) {\r\n conditionStr = `('true' == 'true')`;\r\n } else {\r\n conditionStr = `('false' == 'true')`;\r\n }\r\n } else if (Array.isArray(sourceValue) || condition.operator === conditionConstants.operators.LIKE) {\r\n conditionStr = this.resolveCheckboxCondition(sourceValue, condition);\r\n } else {\r\n if ((condition.operator.includes(\"GREATER\") || condition.operator.includes(\"LESS\")) && sourceValue) {\r\n conditionStr = `(${sourceValue.length} ${conditionTranslator.translateOperator(condition.operator)} ${condition.value})`;\r\n } else if (condition.operator.includes(\"ANY\")) {\r\n conditionStr = `(${sourceValue?.length ?? 0} > 0)`;\r\n } else {\r\n conditionStr = `('${sourceValue}' ${conditionTranslator.translateOperator(condition.operator)} '${condition.value}')`;\r\n }\r\n }\r\n }\r\n return conditionStr;\r\n };\r\n\r\n resolveCheckboxCondition = (sourceValue, condition) => {\r\n let cStr = \"\";\r\n if (condition.operator == conditionConstants.operators.ANY && sourceValue.length > 0) {\r\n cStr = \"(true)\";\r\n } else if (condition.operator == conditionConstants.operators.LIKE && sourceValue && sourceValue.toString().includes(condition.value)) {\r\n cStr = \"(true)\";\r\n } else if (condition.operator == conditionConstants.operators.EQUAL) {\r\n cStr = `(${sourceValue.some((sv) => sv == condition.value)})`;\r\n } else if (condition.operator == conditionConstants.operators.NOT_EQUAL) {\r\n cStr = `(${!sourceValue.some((sv) => sv == condition.value)})`;\r\n } else if (condition.operator == conditionConstants.operators.LESS_THAN_OR_EQUAL_TO) {\r\n cStr = `(${sourceValue.length <= condition.value})`;\r\n } else if (condition.operator == conditionConstants.operators.GREATER_THAN_OR_EQUAL_TO) {\r\n cStr = `(${sourceValue.length >= condition.value})`;\r\n } else {\r\n cStr = \"(false)\";\r\n }\r\n return cStr;\r\n };\r\n\r\n executeAction = (action, secondaryAction, id, value) => {\r\n if (action === \"persontype\") {\r\n if (value) {\r\n this.addPersonType(parseInt(secondaryAction.replace(\"pt\", \"\")));\r\n } else {\r\n this.removePersonType(parseInt(secondaryAction.replace(\"pt\", \"\")));\r\n }\r\n } else {\r\n runInAction(() => {\r\n if (!this.conditions[id]) this.conditions[id] = { hidden: false, readonly: false, required: false };\r\n switch (action) {\r\n case conditionConstants.actions.hidden:\r\n this.conditions[id].hidden = !value;\r\n break;\r\n case conditionConstants.actions.require:\r\n this.conditions[id].required = value;\r\n break;\r\n case conditionConstants.actions.readonly:\r\n this.conditions[id].readonly = value;\r\n case conditionConstants.actions.CustomError:\r\n break;\r\n default:\r\n break;\r\n }\r\n });\r\n }\r\n };\r\n\r\n extractElement = (id) => {\r\n const source = this.contentLayout.contentLayoutModules.find((clm) => {\r\n return clm.contentLayoutModuleId === id;\r\n });\r\n return source;\r\n };\r\n\r\n checkMainEventBookingStatus = async () => {\r\n const { data } = await Axios.get(`./api/attendee/status/${this.mainEvent.eventId}${this.orders.length > 0 ? \"/\" + this.orders[this.activePersonNo].orderId : \"\"}?sqlStateNo=${this.sqlStateNo}`).catch((err) => {\r\n console.error(err);\r\n });\r\n runInAction(() => {\r\n if (data.available) {\r\n this.mainEventFullbooked = false;\r\n } else {\r\n this.mainEventFullbooked = true;\r\n }\r\n });\r\n return data.available;\r\n };\r\n}\r\n\r\nexport default createContext(new Store());\r\n","import { handleResponse } from \"../../../helpers/handleresponse\";\r\nimport { authHeader } from \"../../../helpers/authHeader\";\r\n\r\nexport const formService = {\r\n update,\r\n get,\r\n create,\r\n getAll,\r\n post,\r\n postSurvey,\r\n deleteForm,\r\n getSurvey,\r\n // setSqlState,\r\n checkForUpdates,\r\n getAllPaths,\r\n screenshot\r\n};\r\n// async function setSqlState(stateNo, eventId, state) {\r\n// const requestOptions = {\r\n// method: \"POST\",\r\n// headers: /* authHeader( */{ \"Content-Type\": \"application/json\" }/* ) */,\r\n// body: JSON.stringify({\r\n// sqlStateNo: stateNo,\r\n// eventId,\r\n// add: state\r\n// })\r\n// };\r\n\r\n// return fetch(`./api/form/state`, requestOptions)\r\n// .then(handleResponse);\r\n// }\r\n\r\nasync function getAll(eventId, isSurvey) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: /* authHeader( */{ \"Content-Type\": \"application/json\" }/* ) */\r\n };\r\n\r\n return fetch(`./api/form/getAll/${eventId}/?isSurvey=${isSurvey}`, requestOptions)\r\n .then(handleResponse)\r\n .then(forms => {\r\n return forms;\r\n });\r\n}\r\nasync function getAllPaths(eventId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: /* authHeader( */{ \"Content-Type\": \"application/json\" }/* ) */\r\n };\r\n\r\n return fetch(`./api/form/getAllPaths/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(forms => {\r\n return forms;\r\n });\r\n}\r\n\r\nasync function checkForUpdates(form) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(form)\r\n };\r\n\r\n return fetch(`./api/form/checklastupdate`, requestOptions)\r\n .then(handleResponse)\r\n .then(isModified => {\r\n return isModified;\r\n });\r\n}\r\n\r\nasync function post(orders) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(orders)\r\n };\r\n\r\n return fetch(`./api/form/post/`, requestOptions)\r\n .then(handleResponse)\r\n\r\n}\r\n\r\nasync function postSurvey(orders) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(orders)\r\n };\r\n\r\n return fetch(`./api/form/post/survey`, requestOptions).then(handleResponse);\r\n}\r\n\r\n\r\nasync function get(formId, registerMode, getNewStateId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n console.log('GET_FORM')\r\n return fetch(`./api/form/${formId}/?registerMode=${registerMode}&newStateId=${getNewStateId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(form => {\r\n return form;\r\n });\r\n}\r\nasync function getSurvey(code) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n let url = `./api/form/survey/${code}`;\r\n \r\n return fetch(url, requestOptions)\r\n .then(handleResponse)\r\n .then(form => {\r\n return form;\r\n });\r\n}\r\n\r\nasync function create(form) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(form)\r\n };\r\n\r\n return fetch(`./api/form`, requestOptions)\r\n .then(handleResponse)\r\n .then(form => {\r\n return form;\r\n });\r\n}\r\nasync function screenshot(formId, pages) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/files/formscreenshot/${formId}?pages=${pages}&alphaId=${formId.toString(36)}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\nasync function update(form) {\r\n\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(form)\r\n };\r\n\r\n return fetch(`./api/form`, requestOptions)\r\n .then(handleResponse)\r\n .then(form => {\r\n return form;\r\n });\r\n}\r\nasync function deleteForm(formId) {\r\n const requestOptions = {\r\n method: \"DELETE\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/form/${formId}`, requestOptions)\r\n .then(handleResponse);\r\n // .then(form => {\r\n // return form;\r\n // });\r\n}\r\n/* async function create(element) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify(element)\r\n };\r\n\r\n return fetch(`./api/formElement`, requestOptions)\r\n .then(handleResponse)\r\n .then(element => {\r\n return element;\r\n });\r\n} */\r\n","import { history } from \"../../../../helpers/history\";\r\nimport { formConstants } from \"../../../../constants/cms/form/form.constants\";\r\nimport { elementActions } from \"../../../actions/cms/element/element.action\";\r\nimport { templateActions } from \"../../../actions/cms/template/template.action\";\r\nimport { alertActions } from \"../../alert.action\";\r\nimport { formService } from \"../../../../services/cms/form/form.service\";\r\nimport {\r\n checkForFormUpdates,\r\n deepClone\r\n} from \"../../../../helpers/objectHelper\";\r\n\r\nimport { store } from \"../../../configureStore\";\r\nimport { formSettings } from \"../../../../cms/areas/form/models/formSettings\";\r\nimport { cms } from \"../../../reducers/cms/cms.reducer\";\r\nimport { cmsActions } from \"../cms.action\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { attendeeActions } from \"../../attendee/attendee.action\";\r\nimport { attendeeConstants } from \"../../../../constants/attendee/attendee.constants\";\r\nexport const formActions = {\r\n attach,\r\n update,\r\n get,\r\n select,\r\n removePage,\r\n softUpdate,\r\n remove,\r\n addPage,\r\n scrollPage,\r\n transfer,\r\n deselect,\r\n create,\r\n getAll,\r\n post,\r\n selectOption,\r\n formIsValid,\r\n updateFormElement,\r\n deleteForm,\r\n restore,\r\n getSurvey,\r\n postSurvey,\r\n removeOrderByCondition,\r\n // setSqlState,\r\n checkForUpdates,\r\n getAllPaths,\r\n crop\r\n};\r\n\r\n//#region CLIENT ACTIONS\r\n\r\nfunction formIsValid(state) {\r\n return dispatch => {\r\n dispatch(success(state));\r\n };\r\n function success(element) {\r\n return { type: formConstants.FORM_IS_VALID, state };\r\n }\r\n}\r\nfunction crop(isCropping) {\r\n return dispatch => {\r\n\r\n dispatch(success(isCropping));\r\n };\r\n function success(isCropping) {\r\n return { type: formConstants.IS_CROPPING, isCropping };\r\n }\r\n}\r\nfunction attach(element) {\r\n return dispatch => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: formConstants.ATTACH_SUCCESS, element };\r\n }\r\n}\r\nfunction scrollPage(page, callback) {\r\n return dispatch => {\r\n dispatch(success(page));\r\n };\r\n function success(page) {\r\n return { type: formConstants.SCROLL_PAGE, page };\r\n }\r\n}\r\nfunction restore() {\r\n return dispatch => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: formConstants.RESTORE_FORM };\r\n }\r\n}\r\nfunction addPage() {\r\n return dispatch => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: formConstants.ADD_PAGE };\r\n }\r\n}\r\nfunction removePage() {\r\n return dispatch => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: formConstants.REMOVE_PAGE };\r\n }\r\n}\r\nfunction updateFormElement(element, conditionCheck = false) {\r\n const form = store.getState().form;\r\n return dispatch => {\r\n if ((element.props && element.props.inherit !== null) || form.inherit == true ) {\r\n dispatch(cmsActions.inheritageAffected(true));\r\n }\r\n dispatch(success({ ...element, hasChanged: true }, conditionCheck));\r\n };\r\n function success(element, conditionCheck, reCreation) {\r\n return { type: formConstants.UPDATE_FORM_ELEMENT, element, conditionCheck };\r\n }\r\n}\r\nfunction deselect() {\r\n return dispatch => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: formConstants.DESELECT_SUCCESS };\r\n }\r\n}\r\nfunction remove(element) {\r\n return dispatch => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: formConstants.DELETE_SUCCESS, element };\r\n }\r\n}\r\nfunction selectOption(option) {\r\n return dispatch => {\r\n dispatch(success(option));\r\n };\r\n function success(option) {\r\n return { type: formConstants.SELECT_OPTION, option };\r\n }\r\n}\r\nvar updateSqlStateTimeout;\r\nfunction removeOrderByCondition(eventId) {\r\n if (updateSqlStateTimeout) {\r\n clearTimeout(updateSqlStateTimeout);\r\n }\r\n updateSqlStateTimeout = setTimeout(attendeeActions.updateSqlState, 500);\r\n\r\n return { type: attendeeConstants.REMOVE_ORDER_BY_CONDITION, eventId };\r\n}\r\nfunction select(element) {\r\n return dispatch => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: formConstants.SELECT_SUCCESS, element };\r\n }\r\n}\r\nfunction softUpdate(form, reCreation = false) {\r\n return dispatch => {\r\n if (form.inherit == true) {\r\n dispatch(cmsActions.inheritageAffected(true));\r\n }\r\n dispatch(success(form, reCreation));\r\n };\r\n function success(form, reCreation) {\r\n return { type: formConstants.SOFT_UPDATE_SUCCESS, form, reCreation };\r\n }\r\n}\r\nfunction transfer(element) {\r\n return dispatch => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: formConstants.TRANSFER_SUCCESS, element };\r\n }\r\n}\r\n//#endregion\r\n\r\n//#region SERVER ACTIONS\r\nfunction checkForUpdates(form, allowOverWrite = false) {\r\n return dispatch => {\r\n dispatch(alertActions.clear());\r\n\r\n /* if (allowOverWrite) {\r\n return dispatch(update(form));\r\n } */\r\n\r\n const newForm = stringifyForm(form);\r\n return dispatch(update(form));\r\n /* formService.checkForUpdates(newForm).then(\r\n data => {\r\n if (data.isModified === true) {\r\n return dispatch(\r\n cmsActions.alertNewModifications(data.isModified, \"FORM\")\r\n );\r\n } else {\r\n return dispatch(update(form));\r\n }\r\n },\r\n error => {\r\n dispatch(alertActions.error(error));\r\n }\r\n ); */\r\n };\r\n}\r\nfunction update(form) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n const newForm = stringifyForm(form);\r\n\r\n formService.update(newForm).then(\r\n formResponse => {\r\n dispatch(success(formResponse));\r\n if (formResponse.formId != form.formId) {\r\n history.push('/cms/form/' + formResponse.formId);\r\n }\r\n /* formService.screenshot(newForm.formId, newForm.pages) */\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: formConstants.UPDATE_FORM_REQUEST };\r\n }\r\n function success(form) {\r\n return { type: formConstants.UPDATE_FORM_SUCCESS, form };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.UPDATE_FORM_FAILURE, error };\r\n }\r\n}\r\nfunction getAll(eventId, isSurvey) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n formService.getAll(eventId, isSurvey).then(\r\n forms => {\r\n dispatch(success(forms));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n function request() {\r\n return { type: formConstants.GETALL_FORM_REQUEST };\r\n }\r\n function success(forms) {\r\n return { type: formConstants.GETALL_FORM_SUCCESS, forms };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.GETALL_FORM_FAILURE, error };\r\n }\r\n}\r\nfunction getSurvey(code) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n formService.getSurvey(code).then(\r\n form => {\r\n if(form.isAnswered === true){\r\n window.location.replace(window.location.origin + (!window.location.href.includes(\"localhost\") ? '/cms' : '') + `/p/${form.redirectId}`);\r\n }\r\n else{\r\n form.settings = JSON.parse(form.settings);\r\n form.settings = checkForFormUpdates(form.settings, formSettings);\r\n dispatch(success(form));\r\n }\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n if (error.includes(\"JX_SURVEY_ISANSWERED\")) {\r\n history.push(\"/isanswered\");\r\n }\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: formConstants.GET_FORM_REQUEST };\r\n }\r\n function success(form, editMode) {\r\n return { type: formConstants.GET_FORM_SUCCESS, form, editMode };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.GET_FORM_FAILURE, error };\r\n }\r\n}\r\nfunction get(formId, editMode, registerMode = false) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n let item = localStorage.getItem(\"formstates\");\r\n let prevStateNo = undefined;\r\n if (item) {\r\n let states = JSON.parse(item);\r\n let prevState = states.find(\r\n s => s.formId === formId && s.expires > Date.now()\r\n );\r\n if (prevState) {\r\n prevStateNo = prevState.sqlStateNo;\r\n }\r\n }\r\n\r\n formService.get(formId, registerMode, prevStateNo === undefined).then(\r\n form => {\r\n form.settings = JSON.parse(form.settings);\r\n form.settings = checkForFormUpdates(form.settings, formSettings);\r\n if (/* !registerMode && */ form.settings.submit !== undefined\r\n && Array.isArray(form.settings.submit.labels) && form.settings.submit.labels.length === 0) {\r\n form.settings = attachLabel(\"submit\", form);\r\n }\r\n if (\r\n form.settings.navigation.next !== undefined\r\n && Array.isArray(form.settings.navigation.next.labels) && form.settings.navigation.next.labels.length === 0\r\n ) {\r\n form.settings = attachLabel(\"navigation.next\", form);\r\n }\r\n if (\r\n form.settings.navigation.previous !== undefined\r\n && Array.isArray(form.settings.navigation.previous.labels) && form.settings.navigation.previous.labels.length === 0\r\n ) {\r\n form.settings = attachLabel(\"navigation.previous\", form);\r\n }\r\n if (prevStateNo !== undefined) {\r\n form.sqlStateNo = prevStateNo;\r\n }\r\n dispatch(success(form, editMode));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: formConstants.GET_FORM_REQUEST };\r\n }\r\n function success(form, editMode) {\r\n return { type: formConstants.GET_FORM_SUCCESS, form, editMode };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.GET_FORM_FAILURE, error };\r\n }\r\n}\r\nfunction post(orders, formId) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n formService.post(orders).then(\r\n response => {\r\n let item = localStorage.getItem(\"formstates\");\r\n if (item) {\r\n let states = JSON.parse(item);\r\n let prevState = states.find(\r\n s => s.formId === formId && s.expires > Date.now()\r\n );\r\n if (prevState) {\r\n states.splice(states.indexOf(prevState), 1);\r\n localStorage.setItem(\"formstates\", JSON.stringify(states))\r\n }\r\n }\r\n window.location.replace(window.location.origin + (!window.location.href.includes(\"localhost\") ? '/cms' : '') + response.redirectUrl);\r\n /* history.push(response.redirectUrl); */\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: formConstants.POST_FORM_REQUEST };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.POST_FORM_FAILURE, error };\r\n }\r\n}\r\nfunction postSurvey(orders) {\r\n return dispatch => {\r\n dispatch(alertActions.clear());\r\n // const newForm = deepClone(form);\r\n // newForm.settings = JSON.stringify(newForm.settings);\r\n // newForm.formElements.map(e => {\r\n // let newEl = deepClone(e);\r\n // newEl.data = JSON.stringify(newEl.data);\r\n // return newEl;\r\n // });\r\n formService.postSurvey(orders).then(\r\n result => {\r\n window.location.replace(window.location.origin + (!window.location.href.includes(\"localhost\") ? '/cms' : '') + `/p/${result.confId}`);\r\n \r\n },\r\n error => {\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n}\r\n\r\nfunction getAllPaths(eventId) {\r\n return dispatch => {\r\n dispatch(alertActions.clear());\r\n formService.getAllPaths(eventId).then(\r\n forms => {\r\n dispatch(set(forms));\r\n },\r\n error => {\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function set(forms) {\r\n return { type: formConstants.GET_ALL_FORM_PATHS, forms };\r\n }\r\n}\r\n\r\nfunction create(form, eventId) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n const newForm = deepClone(form);\r\n newForm.settings = JSON.stringify(newForm.settings);\r\n formService.create(newForm).then(\r\n form => {\r\n dispatch(getAll(form.eventId, form.survey));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: formConstants.CREATE_FORM_REQUEST };\r\n }\r\n function success(form) {\r\n return { type: formConstants.CREATE_FORM_SUCCESS, form };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.CREATE_FORM_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction deleteForm(formId, eventId) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n formService.deleteForm(formId).then(\r\n _ => {\r\n dispatch(success(formId));\r\n dispatch(getAll(eventId));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: formConstants.DELETE_FORM_REQUEST };\r\n }\r\n function success(form) {\r\n return { type: formConstants.DELETE_FORM_SUCCESS, form };\r\n }\r\n function failure(error) {\r\n return { type: formConstants.DELETE_FORM_FAILURE, error };\r\n }\r\n}\r\n\r\n// function setSqlState(stateNo, eventId, state) {\r\n// return dispatch => {\r\n// dispatch(alertActions.clear());\r\n// formService.setSqlState(stateNo, eventId, state).then(\r\n// _ => { },\r\n// error => {\r\n// dispatch(failure(error));\r\n// dispatch(alertActions.error(error));\r\n// }\r\n// );\r\n// };\r\n// function failure(error) {\r\n// return { type: formConstants.SET_STATE_ERROR, error };\r\n// }\r\n// }\r\n//#endregion\r\n\r\n//#region UTILITIES\r\nfunction stringifyForm(form) {\r\n const newForm = deepClone(form);\r\n newForm.formElements = form.formElements.map(el => {\r\n let newEl = deepClone(el);\r\n if (\r\n newEl.type == elementConstants.PAYMENT_OPTIONS &&\r\n typeof newEl.data === \"object\"\r\n ) {\r\n newEl.data.selectedPaymentMethod = \"\";\r\n }\r\n newEl.data = JSON.stringify(newEl.data);\r\n return newEl;\r\n });\r\n newForm.settings = JSON.stringify(form.settings);\r\n return newForm;\r\n}\r\nfunction attachLabel(path, form) {\r\n const names = path.split(\".\");\r\n const settings = deepClone(form.settings);\r\n let codes = store.getState().language.eventCodes;\r\n if (!codes) {\r\n codes = [\"swe\", \"eng\"];\r\n }\r\n\r\n const labels = [];\r\n\r\n for (let i = 0; i < codes.length; i++) {\r\n labels.push({\r\n text: \"\",\r\n languageCode: codes[i],\r\n isValid: false\r\n });\r\n }\r\n\r\n if (names.length === 1) {\r\n settings[names[0]].labels = labels;\r\n } else if (names.length === 2) {\r\n settings[names[0]][names[1]].labels = labels;\r\n }\r\n return settings;\r\n}\r\n//#endregion\r\n","import React from \"react\";\r\nimport { Nav, NavItem, NavLink } from \"reactstrap\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport PaletteIcon from \"@material-ui/icons/Palette\";\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport AppsIcon from '@material-ui/icons/Apps';\r\nimport SettingsIcon from '@material-ui/icons/Settings';\r\nimport InheritageWrapper from \"./Inheritage/InheritageWrapper\";\r\nimport EmailIcon from '@material-ui/icons/Email';\r\nimport LabelIcon from '@material-ui/icons/Label';\r\n\r\nexport const ElementTabGroup = ({ toggle, activeTab, tabName, tempIsInherited = null, email = false }) => {\r\n return (\r\n \r\n \r\n toggle(0, '1')}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n textAlign: \"center\",\r\n maxHeight: \"55px\",\r\n\r\n }}\r\n className={activeTab === '1' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n toggle(0, '2')}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n textAlign: \"center\",\r\n maxHeight: \"55px\",\r\n\r\n }}\r\n className={activeTab === '2' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n toggle(0, '3')}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n textAlign: \"center\",\r\n maxHeight: \"55px\",\r\n\r\n }}\r\n className={activeTab === '3' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const TextCustomedTabGroup = ({ toggle, activeTab, tabName, email = false }) => {\r\n return (\r\n \r\n \r\n toggle(0, '1')}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n textAlign: \"center\",\r\n maxHeight: \"55px\",\r\n }}\r\n className={activeTab === '1' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n toggle(0, '2')}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n maxHeight: \"55px\",\r\n textAlign: \"center\",\r\n marginTop: '2px',\r\n }}\r\n className={activeTab === '2' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\n\r\nexport const EditorTabGroup = ({ toggle, activeTab, tabName, tempIsInherited = null, email = false, isOwner = false }) => {\r\n return (\r\n \r\n \r\n toggle(\"Elements\")}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n textAlign: \"center\",\r\n maxHeight: \"55px\",\r\n }}\r\n className={activeTab === 'Elements' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n {email ?\r\n \r\n toggle(\"EmailSettings\")}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n maxHeight: \"55px\",\r\n textAlign: \"center\",\r\n marginTop: '2px',\r\n }}\r\n className={activeTab === 'EmailSettings' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n : \r\n tempIsInherited !== false || isOwner ? toggle(\"TemplateSettings\") : null}\r\n style={{\r\n padding: \"7px\",\r\n width: \"100%\",\r\n maxHeight: \"55px\",\r\n textAlign: \"center\",\r\n marginTop: '2px',\r\n position: 'relative'\r\n }}\r\n className={activeTab === 'TemplateSettings' ? 'jirango-active' : 'jirango-not-active'}\r\n >\r\n null} />\r\n \r\n \r\n \r\n \r\n \r\n }\r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n} from \"reactstrap\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport EditorSlider from \"../tools/EditorSlider\";\r\nimport JirangoSwitch from \"../../../../components/UI/Switch/JirangoSwitch\";\r\n\r\nconst defaultBoxShadow = \"2px 7px 5px 0px #888888\";\r\n\r\nclass BoxShadowSettings extends React.Component {\r\n state = {\r\n isOpen: false\r\n };\r\n componentDidMount() {\r\n if (this.props.boxShadowEnabled) {\r\n this.setState({ isOpen: true });\r\n }\r\n }\r\n toggleBoxShadow = () => {\r\n this.setState({ isOpen: !this.state.isOpen });\r\n if (!this.state.isOpen === false) {\r\n this.props.onChange(null, \"unset\", this.props.path);\r\n } else {\r\n this.props.onChange(null, defaultBoxShadow, this.props.path);\r\n }\r\n };\r\n parseColorToRgba(color) {\r\n const { r, g, b, a } = color.rgb;\r\n return `rgba(${r},${g},${b},${a})`;\r\n }\r\n handleChange = (color, e, path) => {\r\n let boxShadow = \"\";\r\n if (this.props.value.split(\" \").length > 5)\r\n boxShadow = defaultBoxShadow\r\n else boxShadow = this.props.value;\r\n\r\n boxShadow = boxShadow.split(\" \");\r\n let value = color ? this.parseColorToRgba(color) : e;\r\n\r\n if (path.includes(\"bscol\")) path = 4;\r\n path = parseInt(path);\r\n boxShadow[path] = `${value}${path !== 4 ? \"px\" : \"\"}`;\r\n boxShadow = boxShadow.join(\" \");\r\n\r\n this.props.onChange(null, boxShadow, this.props.path);\r\n };\r\n splitString = (value) => {\r\n if (value === 'unset' || value === 'none') return value;\r\n else {\r\n let str = value.split(\" \");\r\n return str.length <= 5 ? str : defaultBoxShadow.split(\" \");\r\n }\r\n }\r\n render() {\r\n const { value } = this.props;\r\n let boxShadow = this.splitString(value);\r\n let area = this.props.path.toString().split('.')\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.isOpen ? (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n null}\r\n path={\"0\"}\r\n value={parseInt(boxShadow[0])}\r\n />\r\n
\r\n null}\r\n path={\"1\"}\r\n value={parseInt(boxShadow[1])}\r\n />\r\n
\r\n null}\r\n path={\"2\"}\r\n value={parseInt(boxShadow[2])}\r\n />\r\n
\r\n null}\r\n path={\"3\"}\r\n value={parseInt(boxShadow[3])}\r\n />\r\n
\r\n ) : null}\r\n
\r\n );\r\n }\r\n}\r\nexport default BoxShadowSettings;\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Collapse,\r\n Alert,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Card,\r\n Badge,\r\n CardBody,\r\n Label,\r\n Tooltip\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject,\r\n getValueFromNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport BoxShadowSettings from \"../../../../components/editor/BoxShadowSettings/BoxShadowSettings\";\r\n\r\n\r\nfunction percentFormatter(v) {\r\n return `${v} %`;\r\n}\r\n\r\nclass ContentSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(setValueToNestedObject(\r\n names,\r\n value,\r\n templateCopy.content\r\n ));\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names)\r\n templateCopy.content = setValueToNestedObject(names, value + unit, templateCopy.content);\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template, device } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template,\r\n device: state.template.previewDevice\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ContentSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../helpers/objectHelper\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\n\r\nclass BackgroundSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false\r\n };\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (!unit && fallbackUnit) unit = fallbackUnit;\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(setValueToNestedObject(\r\n names,\r\n value,\r\n templateCopy.content\r\n ));\r\n this.handleUpdate(templateCopy);\r\n if(path == 'main.backgroundColor'){\r\n this.handleChange(color, e, 'main.background');\r\n }\r\n };\r\n setAttribute = (attr, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n\r\n if (names.length === 3) {\r\n templateCopy.content[names[0]][names[1]][names[2]] = attr;\r\n } else {\r\n templateCopy.content[names[0]][names[1]] = attr;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n\r\n changeBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.main.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.main.backgroundSize = `cover`;\r\n templateCopy.content.main.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.main.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.main.backgroundSize = `cover`;\r\n templateCopy.content.main.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n enableVideoBackground = e => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n let enabled = e.target.checked;\r\n if (!enabled) {\r\n templateCopy.content.main.youtubeUrl = \"\";\r\n }\r\n templateCopy.content.main.videoBackgroundEnabled = enabled;\r\n this.handleUpdate(templateCopy);\r\n };\r\n handlePaste = () => {\r\n let ytUrlStandard = \"https://www.youtube.com/watch?v=\";\r\n navigator.clipboard.readText().then(text => {\r\n if (text.includes(ytUrlStandard)) {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.main.youtubeUrl = text;\r\n this.handleUpdate(templateCopy);\r\n }\r\n });\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"main.backgroundColor\")\r\n }\r\n path=\"main.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template && template.content.main.backgroundUrl && (\r\n \r\n this.setAttribute(\r\n `url('${template.content.main.backgroundUrl}') no-repeat center center / cover`,\r\n \"main.background\"\r\n )\r\n }\r\n alt=\"\"\r\n src={template.content.main.backgroundUrl}\r\n />\r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template.content.main.videoBackgroundEnabled === true ? (\r\n \r\n \r\n \r\n this.handleChange(null, e, \"main.youtubeUrl\")}\r\n value={\r\n template.content.main.youtubeUrl !== \"unset\"\r\n ? template.content.main.youtubeUrl\r\n : \"\"\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n ) : null}\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(BackgroundSettings);\r\n","import React from \"react\";\r\nimport Select from \"react-select\";\r\nimport \"./FontPicker.css\";\r\nimport {\r\n InputGroupAddon,\r\n InputGroup,\r\n InputGroupText,\r\n Row,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\nimport ArchiveContainer from \"../file/containers/ArchiveContainer\";\r\nimport { authHeader } from \"../helpers/authHeader\";\r\nimport { arrayHelper } from \"../helpers/arrayHelper\";\r\nimport { connect } from \"react-redux\";\r\nimport { cmsActions } from \"../store/actions/cms/cms.action\";\r\nimport SystemLabel from \"../system/SystemLabel/SystemLabel\";\r\n\r\nconst API_KEY = \"AIzaSyB6aQW4uFg8OuFMHaxBmqDPCvzBGe5vuTg\";\r\n\r\nconst rowStyle = {\r\n display: \"inline-flex\",\r\n width: \"100%\",\r\n maxWidth: \"100%\",\r\n margin: \"0px\"\r\n};\r\nconst colourStyles = {\r\n option: (styles, { data, isDisabled, isFocused, isSelected }) => {\r\n return {\r\n fontFamily: data.value\r\n };\r\n }\r\n};\r\n\r\nclass JirangoFontPicker extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.fontPickerRef = React.createRef();\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n categoryOptions: [\r\n \"All\",\r\n \"sans-serif\",\r\n \"serif\",\r\n \"display\",\r\n \"handwriting\",\r\n \"monospace\"\r\n ],\r\n selectedCategory: \"All\",\r\n clientFonts: [],\r\n fonts: [],\r\n sortOptions: [\"alpha\", \"date\", \"popularity\", \"style\", \"trending\"],\r\n sortBy: \"alpha\",\r\n fontPicker: null,\r\n dropdownOpen: false,\r\n previewFont: \"\",\r\n categoriesOpen: false,\r\n sortByOpen: false,\r\n archiveOpen: false\r\n };\r\n }\r\n setStyle = (styles, { data, isDisabled, isFocused, isSelected }) => {\r\n return {\r\n option: {\r\n fontFamily: data.value,\r\n fontWeight: \"400\",\r\n fontSize: \"0.875rem\",\r\n paddingLeft: \"1.5px\"\r\n }\r\n };\r\n };\r\n toggle() {\r\n this.setState({\r\n dropdownOpen: !this.state.dropdownOpen\r\n });\r\n }\r\n componentDidMount() {\r\n this.dowloadClientFonts();\r\n this.dowloadGoogleFonts();\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (\r\n this.props.cms.fonts !== undefined &&\r\n prevProps.cms.fonts !== this.props.cms.fonts\r\n ) {\r\n this.props.cms.fonts.map(cf => {\r\n if (\r\n !this.state.fonts.find(t => {\r\n return t === cf.name;\r\n })\r\n ) {\r\n this.setState({ fonts: [cf.name, ...this.state.fonts] });\r\n\r\n }\r\n });\r\n }\r\n }\r\n dowloadClientFonts = (update = false) => {\r\n const fonts = [];\r\n const clientFonts = [];\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n fetch(`./api/files/?format=font`, requestOptions)\r\n .then(res => res.json())\r\n .then(data => {\r\n data.files.map(f => {\r\n fonts.push(this.convertFont(f.name));\r\n clientFonts.push({ name: this.convertFont(f.name), url: f.url });\r\n });\r\n this.props.dispatch(cmsActions.loadClientFonts(clientFonts));\r\n this.setState({\r\n fonts: arrayHelper.concat(this.state.fonts, fonts),\r\n clientFonts: clientFonts\r\n });\r\n })\r\n .catch(err => console.error(err));\r\n };\r\n convertFont = f => {\r\n return f\r\n .substring(f.lastIndexOf(\"/\") + 1, f.lastIndexOf(\".\") + 1)\r\n .toString()\r\n .replace(\")\", \"\")\r\n .replace(\"(\", \"\")\r\n .replace(\".\", \"\")\r\n .replace(\"1\", \"\")\r\n .replace(\"\", \"\");\r\n };\r\n dowloadGoogleFonts = () => {\r\n const fonts = [...this.state.fonts];\r\n fetch(\r\n `https://www.googleapis.com/webfonts/v1/webfonts?sort=popularity&key=${API_KEY}`\r\n )\r\n .then(res => res.json())\r\n .then(data => {\r\n data.items.splice(0, 50).map(f => {\r\n fonts.push(f.family);\r\n });\r\n let cFonts = [\r\n \"Arial\",\r\n \"Helvetica\",\r\n \"Times New Roman\",\r\n \"Times\",\r\n \"Courier New\",\r\n \"Courier\",\r\n \"Verdana\",\r\n \"Georgia\",\r\n \"Comic Sans MS\",\r\n \"Trebuchet MS\",\r\n \"Arial Black\",\r\n \"Impact\"\r\n ]\r\n let f = [...cFonts, ...fonts];\r\n const n = arrayHelper.concat(this.state.fonts, fonts).sort(function (a, b) {\r\n if (a.family < b.family) { return -1; }\r\n if (a.family > b.family) { return 1; }\r\n return 0;\r\n })\r\n this.setState({ fonts: f });\r\n })\r\n .catch(err => console.error(err));\r\n };\r\n toggleExtensions = type => {\r\n this.setState({ [type]: !this.state[type] });\r\n };\r\n sortBy = sortBy => {\r\n this.setState({ sortBy }, () => {\r\n this.dowloadGoogleFonts();\r\n });\r\n };\r\n selectFont = font => {\r\n this.props.onChange(null, font, this.props.path);\r\n this.setState({ archiveOpen: false });\r\n };\r\n\r\n categoryOnChange = category => {\r\n this.setState({ selectedCategories: category });\r\n };\r\n filter = () => {\r\n const { selectedCategory, fonts } = this.state;\r\n\r\n if (selectedCategory === \"All\") {\r\n return fonts;\r\n }\r\n return fonts\r\n .filter(f => {\r\n return f.category === selectedCategory && f;\r\n })\r\n .sort();\r\n };\r\n getFont = () => {\r\n const { currentFontFamily } = this.props;\r\n const { fonts } = this.state;\r\n\r\n let font = fonts.find(f => {\r\n return f === currentFontFamily;\r\n });\r\n\r\n if (font !== undefined && font) {\r\n return { value: font, label: font };\r\n }\r\n return { value: \"\", label: \"Font missing\" };\r\n };\r\n toggleArchive = () => {\r\n this.setState({ archiveOpen: !this.state.archiveOpen });\r\n };\r\n onClientFontUpload = (font, url) => {\r\n this.props.dispatch(\r\n cmsActions.loadClientFonts([\r\n ...this.state.clientFonts,\r\n { name: font, url: url }\r\n ])\r\n );\r\n };\r\n render() {\r\n const { fontWeight } = this.props;\r\n const {\r\n fonts,\r\n } = this.state;\r\n\r\n\r\n \r\n \r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n fontWeight\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\"\r\n }),\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n fontWeight\r\n };\r\n }\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t, label: t };\r\n })\r\n }\r\n value={this.getFont()}\r\n onChange={selectedOption =>\r\n this.selectFont(selectedOption.value)\r\n }\r\n styles={selectStyles}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {this.state.archiveOpen ? (\r\n \r\n ) : null}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n cms: state.cms\r\n };\r\n}\r\nexport default connect(mapStateToProps)(JirangoFontPicker);\r\n","import React from \"react\";\r\nimport Select from \"react-select\";\r\nimport \"./FontWeightPicker.css\";\r\nimport {\r\n Row,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\n\r\nimport SystemLabel from \"../../system/SystemLabel/SystemLabel\";\r\n\r\nconst fontWeights = [\r\n { value: \"lighter\", label: \"Lighter\" },\r\n { value: \"normal\", label: \"Normal\" },\r\n { value: \"bold\", label: \"Bold\" },\r\n { value: \"bolder\", label: \"Bolder\" }\r\n];\r\n\r\nexport const FontWeightPicker = ({ weight, onChange, currentFont, path }) => {\r\n const optionStyle = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: currentFont,\r\n fontWeight: data.value,\r\n padding: \"0 10px\"\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\"\r\n }),\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontWeight: weight,\r\n fontFamily: currentFont\r\n };\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n onChange(null, selectedOption.value, path)\r\n }\r\n styles={optionStyle}\r\n />\r\n \r\n \r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n InputGroupAddon,\r\n Col,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Label,\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\n\r\nclass TextSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if(parseFloat(value) && unit.length < 4){\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n \r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TextSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n InputGroupAddon,\r\n Col,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Label\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass TitleSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TitleSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Collapse,\r\n Alert,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Card,\r\n CardBody,\r\n Label\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass SubtitleSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if(parseFloat(value) && unit.length < 4){\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n \r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(SubtitleSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Button,\r\n Label,\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport ArchiveContainer from \"../../../../../file/containers/ArchiveContainer\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport BoxShadowSettings from \"../../../../components/editor/BoxShadowSettings/BoxShadowSettings\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\n\r\nclass FooterSettings extends React.Component {\r\n state = { isMediaVaultOpen: false }\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n changeBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.footer.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.footer.backgroundSize = `cover`;\r\n templateCopy.content.footer.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.footer.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.footer.backgroundSize = `cover`;\r\n templateCopy.content.footer.backgroundUrl = url;\r\n/* document.body.style.background = templateCopy.content.footer.background; */\r\n this.handleUpdate(templateCopy);\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const { template, device } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"footer.background\")\r\n }\r\n path=\"footer.background\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template && template.content.footer.backgroundUrl && (\r\n \r\n this.setAttribute(\r\n `url('${template.content.footer.backgroundUrl}') no-repeat center center / cover`,\r\n \"footer.background\"\r\n )\r\n }\r\n alt=\"\"\r\n src={template.content.footer.backgroundUrl}\r\n />\r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {/*
\r\n */}\r\n\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template,\r\n device: state.template.previewDevice\r\n };\r\n}\r\nexport default connect(mapStateToProps)(FooterSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Collapse,\r\n Alert,\r\n Label,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Card,\r\n Badge,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport ArchiveContainer from \"../../../../../file/containers/ArchiveContainer\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport BoxShadowSettings from \"../../../../components/editor/BoxShadowSettings/BoxShadowSettings\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass HeaderSettings extends React.Component {\r\n state = { isMediaVaultOpen: false }\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n changeBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.header.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.header.backgroundSize = `cover`;\r\n templateCopy.content.header.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.header.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.header.backgroundSize = `cover`;\r\n templateCopy.content.header.backgroundUrl = url;\r\n /* document.body.style.background = templateCopy.content.header.background; */\r\n this.handleUpdate(templateCopy);\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const { template, device } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"header.background\")\r\n }\r\n path=\"header.background\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template && template.content.header.backgroundUrl && (\r\n \r\n this.setAttribute(\r\n `url('${template.content.header.backgroundUrl}') no-repeat center center / cover`,\r\n \"header.background\"\r\n )\r\n }\r\n alt=\"\"\r\n src={template.content.header.backgroundUrl}\r\n />\r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template,\r\n device: state.template.previewDevice\r\n };\r\n}\r\nexport default connect(mapStateToProps)(HeaderSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, Input } from \"reactstrap\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../helpers/objectHelper\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport BoxShadowSettings from \"../../../../components/editor/BoxShadowSettings/BoxShadowSettings\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\n\r\nclass ButtonSettings extends React.Component {\r\n handleUpdate = (template) => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let spaceValue = templateCopy.content[names[0]][names[1]];\r\n if(spaceValue == 'unset') spaceValue = '0px 0px 0px 0px';\r\n\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + \"px\";\r\n splitted = splitted.join(\" \");\r\n templateCopy.content[names[0]][names[1]] = splitted;\r\n } else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(\" \");\r\n newString[dir] = value + \"px\";\r\n\r\n templateCopy.content[names[0]][names[1]] = newString.join(\" \");\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n } else {\r\n return parseInt(splitted[0]);\r\n }\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (!unit && fallbackUnit) unit = fallbackUnit;\r\n if (!path.includes(\"hover\")) {\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(setValueToNestedObject(names, value, templateCopy.content));\r\n } else {\r\n templateCopy.content.button[\"&:hover\"][names[2]] = value;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n\r\n templateCopy.content = setValueToNestedObject(names, value + unit, templateCopy.content);\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"button.color\")} path=\"button.color\" />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"button.backgroundColor\")}\r\n path=\"button.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"button.&:hover.color\")}\r\n path={\"buttonHover.color\"}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"button.&:hover.backgroundColor\")}\r\n path={\"buttonHover.backgroundColor\"}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, template.content.button.textTransform === \"none\" || template.content.button.textTransform === \"unset\" ? \"uppercase\" : \"unset\", \"button.textTransform\")\r\n }\r\n isChecked={template.content.button.display === \"uppercase\"}\r\n />\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n{/* {selectedContainer.data.margin !== undefined ? ( */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `button.padding`, 0)} value={this.convertSpaceValue(template.content.button.padding, 0)} />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `button.padding`, 1)} value={this.convertSpaceValue(template.content.button.padding, 1)} />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `button.padding`, 2)} value={this.convertSpaceValue(template.content.button.padding, 2)} />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `button.padding`, 3)} value={this.convertSpaceValue(template.content.button.padding, 3)} />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n {/* ) : null} */}\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ButtonSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Collapse,\r\n Alert,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Card,\r\n CardBody,\r\n Badge,\r\n Label\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\n\r\nclass FieldSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"\"]}\r\n activeUnit={\"\"}\r\n steps={0.1}\r\n max={1}\r\n min={0}\r\n path=\"input.readOnlyOpacity\"\r\n label=\"ReadOnlyOpacity\"\r\n />\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template,\r\n systemLabels: state.systemLabels\r\n };\r\n}\r\nexport default connect(mapStateToProps)(FieldSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport { Row, InputGroup, Col, Button, ButtonGroup, Label } from \"reactstrap\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass LinkSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (!path.includes('hover')) {\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n }\r\n else {\r\n templateCopy.content.a[\"&:hover\"][names[2]] = value;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n null,\r\n template.content.a.textDecoration === \"unset\" ||\r\n template.content.a.textDecoration === \"none\"\r\n ? \"underline\"\r\n : \"none\", 'a.textDecoration'\r\n )\r\n }\r\n isChecked={template.content.a.textDecoration === \"underline\"}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n null,\r\n template.content.a[\"&:hover\"].textDecoration === \"unset\" ||\r\n template.content.a[\"&:hover\"].textDecoration === \"none\"\r\n ? \"underline\"\r\n : \"none\", 'a.&:hover.textDecoration'\r\n )\r\n }\r\n isChecked={\r\n template.content.a[\"&:hover\"].textDecoration === \"underline\"\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"a.color\")}\r\n path=\"a.color\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"a.&:hover.color\")\r\n }\r\n path={\"aHover.color\"}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(LinkSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Alert,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Badge,\r\n Card,\r\n Collapse,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../helpers/objectHelper\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport TableChartTwoToneIcon from '@material-ui/icons/TableChartTwoTone';\r\nimport BorderAllTwoToneIcon from '@material-ui/icons/BorderAllTwoTone';\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass TableSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n \r\n } description=\"TableHeader\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"thead.backgroundColor\")\r\n } path=\"thead.backgroundColor\" />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"thead.color\")\r\n } path=\"thead.color\" />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"thead.borderColor\")\r\n } path=\"thead.borderColor\" />\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n } description=\"TableData\">\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n this.handleChange(color, e, \"tcell.backgroundColor\")\r\n } path=\"tcell.backgroundColor\" />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"tcell.color\")\r\n } path=\"tcell.color\" />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"tcell.borderColor\")\r\n } path=\"tcell.borderColor\" />\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TableSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n InputGroupAddon,\r\n Col,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Label\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass LabelSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if(parseFloat(value) && unit.length < 4){\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n \r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n \r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(LabelSettings);\r\n","import {\r\n Button,\r\n Card,\r\n Dialog,\r\n Checkbox,\r\n FormControlLabel,\r\n DialogActions,\r\n DialogContent,\r\n DialogContentText,\r\n DialogTitle,\r\n FormGroup,\r\n IconButton,\r\n List,\r\n ListItem,\r\n ListItemSecondaryAction,\r\n ListItemText,\r\n makeStyles,\r\n} from \"@material-ui/core\";\r\nimport ReactDragList from \"react-drag-list\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Input, Label } from \"reactstrap\";\r\nimport Axios from \"axios\";\r\nimport { templateActions } from \"../../../../store/actions/cms/template/template.action\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport CreateOutlinedIcon from \"@material-ui/icons/CreateOutlined\";\r\nimport DeleteOutlineIcon from \"@material-ui/icons/DeleteOutline\";\r\nimport AddIcon from \"@material-ui/icons/Add\";\r\nimport SubdirectoryArrowRightIcon from \"@material-ui/icons/SubdirectoryArrowRight\";\r\nimport ReplayIcon from \"@material-ui/icons/Replay\";\r\nimport DoneIcon from \"@material-ui/icons/Done\";\r\nimport SaveIcon from \"@material-ui/icons/Save\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { arrayHelper } from \"../../../../helpers/arrayHelper\";\r\nconst useStyles = makeStyles({\r\n paper: {\r\n height: \"100%\",\r\n },\r\n});\r\n\r\nconst MenuEditDialog = (props) => {\r\n const classes = useStyles();\r\n const { menu, dispatch, cms } = props;\r\n const [selectedItem, setSelectedItem] = useState(null);\r\n const [menuItems, setMenuItems] = useState([]);\r\n const [isSavable, setIsSavable] = useState(false);\r\n const [deletedList, setDeletedList] = useState([]);\r\n const [showConfirmDialog, toggleConfirmDialog] = useState(false);\r\n\r\n useEffect(() => {\r\n if (menu && Array.isArray(menu) && menuItems.length == 0) {\r\n setMenuItems(menu);\r\n if (menu.length > 0) {\r\n let m = null;\r\n menu\r\n .filter((x) => !x.parentMenuId)\r\n .map((x) => {\r\n if (!m || m.sortOrder > x.sortOrder) {\r\n m = x;\r\n }\r\n });\r\n if (m) setSelectedItem(m.menuId);\r\n }\r\n }\r\n }, []);\r\n\r\n const onSave = () => {\r\n const finalMenuItems = Array.from(menuItems.filter((m) => !deletedList.includes(m.menuId)));\r\n Axios.post(\"./api/menu?eventId=\" + cms.eventId, finalMenuItems).then((res) => {\r\n dispatch(templateActions.setMenu(res.data));\r\n toggle(true);\r\n });\r\n };\r\n const onAdd = (id) => {\r\n const { eventId } = cms;\r\n \r\n let menuId = (menuItems.filter((m) => m.menuId <= 0).length + 1) *-1;\r\n const sortOrder = !id ? menuItems.length + 1 : menuItems.filter((m) => m.parentMenuId == id).length + 1;\r\n\r\n const newOption = {\r\n menuId,\r\n oldId: menuId,\r\n eventId,\r\n parentMenuId: id,\r\n languageCode: \"swe\",\r\n label: \"-\",\r\n url: \"\",\r\n sortOrder,\r\n updatedUserId: null,\r\n target: \"_self\",\r\n appendBadgeNo: true,\r\n updated: new Date().toISOString(),\r\n inserted: new Date().toISOString(),\r\n };\r\n const newMenuItems = Array.from(menuItems);\r\n newMenuItems.push(newOption);\r\n setMenuItems(newMenuItems);\r\n setIsSavable(true);\r\n setSelectedItem(menuId);\r\n };\r\n const onDelete = (id) => {\r\n let newDeletedList = Array.from(deletedList);\r\n if (deletedList.includes(id)) {\r\n newDeletedList = newDeletedList.filter((dl) => dl != id);\r\n setDeletedList(newDeletedList);\r\n } else {\r\n newDeletedList.push(id);\r\n setDeletedList(newDeletedList);\r\n }\r\n setIsSavable(true);\r\n };\r\n const onChange = (path, value) => {\r\n const newMenuItems = Array.from(menuItems);\r\n const index = menuItems.indexOf(menuItems.find((m) => m.menuId == selectedItem));\r\n if (index > -1) {\r\n newMenuItems[index][path] = value;\r\n setMenuItems(newMenuItems);\r\n }\r\n setIsSavable(true);\r\n };\r\n const isDeleted = (id) => deletedList.includes(id);\r\n const onSelect = (id) => setSelectedItem(id);\r\n const onSort = (event, dataSource, child = null) => {\r\n let rest = Array.from(menuItems.filter((r) => r.parentMenuId != null));\r\n if (child) {\r\n rest = menuItems.filter((r) => r.parentMenuId != child);\r\n }\r\n const sortedOptions = dataSource.map((ds, i) => {\r\n let el = Object.assign({}, ds);\r\n el.sortOrder = i + 1;\r\n return el;\r\n });\r\n\r\n setMenuItems(arrayHelper.concat(sortedOptions, rest));\r\n setIsSavable(true);\r\n };\r\n const toggle = (surpass = false) => {\r\n if (isSavable && !showConfirmDialog && !surpass) {\r\n toggleConfirmDialog(true);\r\n return;\r\n }\r\n\r\n dispatch(templateActions.toggleMenuModal());\r\n\r\n if (isSavable && showConfirmDialog) {\r\n toggleConfirmDialog(false);\r\n }\r\n };\r\n return (\r\n <>\r\n {showConfirmDialog ? : null}\r\n null} aria-labelledby=\"menu editing dialog\">\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n m.parentMenuId == null)\r\n .sort((a, b) => {\r\n return a.sortOrder - b.sortOrder;\r\n })}\r\n rowKey={\"menuId\"}\r\n className=\"menu-list\"\r\n rowClassName=\"rdl-row\"\r\n handles={false}\r\n onUpdate={(event, dataSource) => onSort(event, dataSource)}\r\n row={(m, index) => {\r\n return (\r\n \r\n \r\n\r\n {menuItems.find((mi) => mi.parentMenuId == m.menuId) ? (\r\n c.parentMenuId == m.menuId)\r\n .sort((a, b) => {\r\n return a.sortOrder - b.sortOrder;\r\n })}\r\n rowKey={\"menuId\"}\r\n className=\"menu-list\"\r\n rowClassName=\"rdl-row\"\r\n handles={false}\r\n onUpdate={(event, dataSource) => onSort(event, dataSource, m.menuId)}\r\n row={(c, index) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n ) : null}\r\n \r\n );\r\n }}\r\n />\r\n \r\n \r\n {selectedItem != null ? (\r\n \r\n mi.menuId == selectedItem)} />\r\n \r\n ) : null}\r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nconst ConfirmDialog = ({ save, toggle, toggleConfirmDialog }) => {\r\n return (\r\n
\r\n null} aria-labelledby=\"alert-dialog-title\" aria-describedby=\"alert-dialog-description\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template.template,\r\n menu: state.template.menu,\r\n eventId: state.template.template.eventId,\r\n cms: state.cms,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(MenuEditDialog);\r\n\r\nconst MenuItem = (props) => {\r\n const { label, url, isDeleted, parentMenuId, onAdd, selectedItem, menuId, onDelete, onSelect } = props;\r\n let child = parentMenuId;\r\n return (\r\n <>\r\n \r\n \r\n 0 ? {right:\"-2px\"}:null}>\r\n onSelect(selectedItem == menuId ? null : menuId)} edge=\"end\" aria-label=\"delete\">\r\n {selectedItem == menuId ? : }\r\n \r\n onDelete(menuId)} edge=\"end\" aria-label=\"delete\">\r\n {isDeleted ? : }\r\n \r\n \r\n \r\n {!child ? (\r\n \r\n \r\n \r\n \r\n }\r\n onClick={() => onAdd(menuId)}\r\n >\r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nconst EditableTab = (props) => {\r\n const { onChange, label, url, eventId, target } = props;\r\n const [internalPaths, setInternalPaths] = useState([]);\r\n const [domain, setDomain] = useState([]);\r\n useEffect(() => {\r\n getInternalPaths();\r\n }, []);\r\n const getInternalPaths = () => {\r\n if (!eventId) return;\r\n Axios.get(`./api/link/${eventId}`).then((res) => {\r\n const { data } = res;\r\n if (data) {\r\n const { pathsObj } = data;\r\n let paths = pathsObj.paths;\r\n setInternalPaths(paths);\r\n setDomain(pathsObj.domain);\r\n }\r\n });\r\n };\r\n const toggleBadgeno = () => {\r\n let path = url;\r\n if (path && path.includes(\"[BadgeNo]\")) {\r\n path = path.replace(\"badgeNo=[BadgeNo]\", \"\").replace(\"clientKey=[BadgeNo]\", \"\");\r\n } else {\r\n if (path.includes(\"/register/\") || path.includes(\"/p/\")) {\r\n path = path + \"&badgeNo=[BadgeNo]\";\r\n } else if (path.includes(\"/digitalmeeting/\") || path.includes(\"/digitalarena/\") || path.includes(\"/exhibitor/\")) {\r\n path = path + \"&clientKey=[BadgeNo]\";\r\n }\r\n }\r\n while (path && (path.includes(\"?&\") || path.includes(\"&&\"))) {\r\n path = path.replace(\"?&\", \"?\").replace(\"&&\", \"&\");\r\n }\r\n onChange(\"url\", path);\r\n };\r\n\r\n const toggleOpenInNewWindow = () => {\r\n if (target == \"_blank\") onChange(\"target\", \"_self\");\r\n else onChange(\"target\", \"_blank\");\r\n };\r\n const selectPath = (id) => {\r\n let path = convertPath(id);\r\n onChange(\"url\", path);\r\n };\r\n const convertPath = (id) => {\r\n const internalPath = internalPaths.find((p) => p.id == id);\r\n let type = internalPath ? internalPath.type : \"\";\r\n if (typeof id == \"string\" && !isNaN(id)) {\r\n id = parseInt(id);\r\n }\r\n switch (type) {\r\n case \"Form\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/register/\" + id.toString(36) + \"?badgeNo=[BadgeNo]\";\r\n case \"Page\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/p/\" + id.toString(36) + \"?badgeNo=[BadgeNo]\";\r\n case \"Breakout\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/digitalarena/\" + id + \"?clientKey=[BadgeNo]\";\r\n case \"DigitalArena\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/digitalarena/\" + id + \"?clientKey=[BadgeNo]\";\r\n case \"Exhibitor\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/exhibitor/\" + id.toString(36) + \"?clientKey=[BadgeNo]\";\r\n case \"AnonymousSurvey\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/survey/\" + id + \"?\"; /* .toString(36) */\r\n case \"Survey\":\r\n return \"[SurveyLink]\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n return (\r\n \r\n \r\n \r\n onChange(\"label\", e.target.value)} value={label} />\r\n \r\n
\r\n \r\n \r\n onChange(\"url\", e.target.value)} value={url} />\r\n \r\n
\r\n \r\n }\r\n control={}\r\n />\r\n }\r\n control={}\r\n />\r\n \r\n
\r\n \r\n
\r\n {internalPaths.map((a, i) => {\r\n return (\r\n selectPath(a.id)} key={i}>\r\n {a.name == \"Survey\" ? : a.name}\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n
\r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label } from \"reactstrap\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject,\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { FontWeightPicker } from \"../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport MenuEditDialog from \"../../../menu/components/MenuEditDialog\";\r\nimport Button from \"reactstrap/lib/Button\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nclass MenuSettings extends React.Component {\r\n state = {\r\n activePointer: \"normal\",\r\n };\r\n handleUpdate = (template) => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n\r\n if (!path.includes(\"active\")) {\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n } else {\r\n templateCopy.content.menu[\"&:active\"][names[2]] = value;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n togglePointer = (pointer) => {\r\n this.setState({ activePointer: pointer });\r\n };\r\n render() {\r\n const { template, device, isMenuModalOpen } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n {isMenuModalOpen ? : null}\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n null,\r\n template.content.menu.display === \"none\" ||\r\n template.content.menu.display === \"unset\"\r\n ? \"initial\"\r\n : \"none\",\r\n \"menu.display\"\r\n )\r\n }\r\n isChecked={template.content.menu.display === \"initial\"}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n \r\n \r\n this.handleChange(\r\n null,\r\n \"menu.position\",\r\n template.content.menu.position === \"unset\"\r\n ? \"fixed\"\r\n : \"unset\"\r\n )\r\n }\r\n isChecked={template.content.menu.position === \"fixed\"}\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.props.dispatch(templateActions.toggleMenuModal())\r\n }>\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"menu.&:active.color\")\r\n }\r\n path=\"menuActive.color\"\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"menu.&:active.backgroundColor\")\r\n }\r\n path=\"menuActive.backgroundColor\"\r\n />\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.setAttribute('left', \"menu.justifyContent\")\r\n }\r\n >\r\n \r\n \r\n \r\n this.setAttribute('center', \"menu.justifyContent\")\r\n }\r\n >\r\n \r\n \r\n \r\n this.setAttribute('right', \"menu.justifyContent\")\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n */}\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template,\r\n systemLabels: state.systemLabels,\r\n device: state.template.previewDevice,\r\n isMenuModalOpen: state.template.isMenuModalOpen,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(MenuSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Collapse,\r\n Alert,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Badge,\r\n Card,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport TouchAppTwoToneIcon from '@material-ui/icons/TouchAppTwoTone';\r\nimport CheckBoxTwoToneIcon from '@material-ui/icons/CheckBoxTwoTone';\r\nimport CropPortraitTwoToneIcon from '@material-ui/icons/CropPortraitTwoTone';\r\nimport ListExpansion from \"../../../../../../components/UI/ListExpansion/ListExpansion\";\r\n\r\nclass ClientSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const cu = templateHelper.nestledFind(path, templateCopy.content)\r\n let val = parseInt(cu)\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, val + unit, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined || template.content.interaction.client.sendButton === undefined) return null;\r\n return (\r\n
\r\n
\r\n } description=\"CardStyle\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.client.frame.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.client.frame.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.client.frame.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.client.frame.borderRadius\"}\r\n label=\"BorderRadius\"\r\n />\r\n \r\n
\r\n
\r\n
\r\n } description=\"QuestionStyle\">\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.client.question.minWidth\")}\r\n steps={1}\r\n max={800}\r\n min={1}\r\n path={\"interaction.client.question.minWidth\"}\r\n label=\"QuestionMinWidth\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.client.question.maxWidth\")}\r\n steps={1}\r\n max={800}\r\n min={1}\r\n path={\"interaction.client.question.maxWidth\"}\r\n label=\"QuestionMaxWidth\"\r\n />\r\n
\r\n
\r\n
\r\n
\r\n } description=\"SendButton\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.client.sendButton.color\")\r\n }\r\n path=\"interaction.client.sendButton.color\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.client.sendButton.backgroundColor\")\r\n }\r\n path=\"interaction.client.sendButton.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.client.sendButton.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.client.sendButton.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.client.sendButton.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.client.sendButton.borderRadius\"}\r\n label=\"BorderRadius\"\r\n />\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ClientSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n ListGroupItem,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Button,\r\n ButtonGroup,\r\n Collapse,\r\n Alert,\r\n DropdownToggle,\r\n ButtonDropdown,\r\n DropdownMenu,\r\n DropdownItem,\r\n Badge,\r\n Card,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../fonts/FontPicker\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { securityHelper } from \"../../../../../helpers/securityHelper\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass ChartSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n toggleDropDown = path => {\r\n const names = path.split(\".\");\r\n this.setState({\r\n [names[0]]: { [names[1]]: !this.state[names[0]][names[1]] }\r\n });\r\n };\r\n\r\n setAttribute = (attr, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n\r\n if (names.length === 3) {\r\n templateCopy.content[names[0]][names[1]][names[2]] = attr;\r\n } else {\r\n templateCopy.content[names[0]][names[1]] = attr;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const currentUnit = templateCopy.content[names[0]][names[1]].replace(\r\n /[0-9]/g,\r\n \"\"\r\n );\r\n templateCopy.content[names[0]][names[1]] = templateCopy.content[names[0]][\r\n names[1]\r\n ].replace(currentUnit, unit);\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n\r\n handleChange = (color, e, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let value = null;\r\n let templateCopy = deepClone(template);\r\n if (\r\n [names[1]].toString() === \"fontWeight\" ||\r\n [names[1]].toString() === \"fontFamily\"\r\n ) {\r\n value = e.target.value;\r\n } else if (color) {\r\n const { r, g, b, a } = color.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else {\r\n value =\r\n e.target.value +\r\n templateCopy.content[names[0]][names[1]].replace(/[0-9\\d.-]/g, \"\");\r\n }\r\n\r\n if (names.length === 2) {\r\n templateCopy.content[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n templateCopy.content[names[0]][names[1]][names[2]] = value;\r\n } else {\r\n templateCopy.content[names[0]][names[1]] = value;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n renderColors = (palette, template) => {\r\n let ret = [];\r\n for (const key in palette) {\r\n if (palette.hasOwnProperty(key)) {\r\n ret.push(\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, `chart.colors.${key}`)\r\n }\r\n path={`chart.colors-${key}`}\r\n />\r\n \r\n \r\n )\r\n }\r\n\r\n }\r\n return ret;\r\n }\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n const palette = template.content.chart.colors;\r\n const alpha = ['A', 'B', 'C', 'D', 'E']\r\n return (\r\n
\r\n {this.renderColors(palette, template)}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, `chart.textflowColor`)\r\n }\r\n path={`chart.textflowColor`}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, `chart.textflowBgColor`)\r\n }\r\n path={`chart.textflowBgColor`}\r\n />\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ChartSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label } from \"reactstrap\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport {\r\n deepClone,\r\n setValueToNestedObject\r\n} from \"../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\n\r\nclass ScrollbarSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (!path.includes('hover')) {\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n }\r\n else {\r\n templateCopy.content.a[\"&:hover\"][names[2]] = value;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const value = templateHelper.getValueWithoutUnit(templateCopy, names);\r\n\r\n templateCopy.content = setValueToNestedObject(\r\n names,\r\n value + unit,\r\n templateCopy.content\r\n );\r\n\r\n if (unit === \"auto\") {\r\n templateCopy.content[names[0]][names[1]] = unit;\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"scrollbar.thumbBackgroundColor\")}\r\n path=\"scrollbar.thumbBackgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"scrollbar.thumbColorHover\")}\r\n path=\"scrollbar.thumbColorHover\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"scrollbar.trackBackgroundColor\")}\r\n path=\"scrollbar.trackBackgroundColor\"\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ScrollbarSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport { UrlMultiInput } from \"../../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { hexToRgb } from \"../../../../../../helpers/colorHelper\";\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass ConnectionSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const cu = templateHelper.nestledFind(path, templateCopy.content)\r\n let val = parseInt(cu)\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, val + unit, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.interaction.connections.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.interaction.connections.backgroundSize = `cover`;\r\n templateCopy.content.interaction.connections.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n if (path == 'interaction.connections.backgroundColor') {\r\n templateCopy.content.interaction.connections.background = templateHelper.parseColorToRgba(color);\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined || template.content.interaction.connections === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.connections.backgroundColor\")\r\n }\r\n path=\"interaction.connections.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.connections.color\")\r\n }\r\n path=\"interaction.connections.color\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template && template.content.interaction.connections.backgroundUrl && (\r\n \r\n this.setBackgroundImage(template.content.interaction.connections.backgroundUrl\r\n )\r\n }\r\n alt=\"\"\r\n src={template.content.interaction.connections.backgroundUrl}\r\n />\r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.connections.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.connections.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.connections.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.connections.borderRadius\"}\r\n label=\"BorderRadius\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.connections.borderWidth\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.connections.borderWidth\"}\r\n label=\"BorderWidth\"\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.connections.borderColor\")\r\n }\r\n path=\"interaction.connections.borderColor\"\r\n />\r\n \r\n \r\n
\r\n\r\n\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ConnectionSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport { UrlMultiInput } from \"../../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport ListExpansion from \"../../../../../../components/UI/ListExpansion/ListExpansion\";\r\n\r\n\r\nclass AgendaSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const cu = templateHelper.nestledFind(path, templateCopy.content)\r\n let val = parseInt(cu)\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, val + unit, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.interaction.agenda.content.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.interaction.agenda.content.backgroundSize = `cover`;\r\n templateCopy.content.interaction.agenda.content.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n /* handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n const spaceValue = element[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n element[names[0]][names[1]] = splitted;\r\n }\r\n else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n \r\n element[names[0]][names[1]] = newString.join(' ');\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n } */\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n if (path == 'interaction.agenda.content.backgroundColor') {\r\n templateCopy.content.interaction.agenda.content.background = templateHelper.parseColorToRgba(color);\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined || template.content.interaction.connections === undefined) return null;\r\n return (\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.content.backgroundColor\")\r\n }\r\n path=\"interaction.agenda.content.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template && template.content.interaction.agenda.content.backgroundUrl && (\r\n \r\n this.setBackgroundImage(template.content.interaction.agenda.content.backgroundUrl\r\n )\r\n }\r\n alt=\"\"\r\n src={template.content.interaction.agenda.content.backgroundUrl}\r\n />\r\n )}\r\n \r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.content.padding\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.content.padding\"}\r\n label=\"OuterFramePadding\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.content.margin\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.content.margin\"}\r\n label=\"OuterFrameMargin\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.content.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.content.borderRadius\"}\r\n label=\"OuterFrameBorderRadius\"\r\n />\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.title.color\")\r\n }\r\n path=\"interaction.agenda.title.color\"\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.title.marginLeft\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.title.marginLeft\"}\r\n label=\"MarginLeft\"\r\n />\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.title.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.title.fontSize\"}\r\n label=\"TitleFontSize\"\r\n />\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.default.frame.backgroundColor\")\r\n }\r\n path=\"interaction.agenda.row.default.frame.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.default.frame.borderColor\")\r\n }\r\n path=\"interaction.agenda.row.default.frame.borderColor\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.default.frame.borderWidth\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.frame.borderWidth\"}\r\n label=\"FrameBorderWidth\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.default.frame.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.frame.borderRadius\"}\r\n label=\"FrameBorderRadius\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.default.frame.padding\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.frame.padding\"}\r\n label=\"FramePadding\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.default.frame.marginTop\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.frame.marginTop\"}\r\n label=\"FrameMarginTop\"\r\n />\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.default.title.color\")\r\n }\r\n path=\"interaction.agenda.row.default.title.color\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.default.title.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.row.default.title.fontSize\"}\r\n label=\"TitleFontSize\"\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.default.text.color\")\r\n }\r\n path=\"interaction.agenda.row.default.text.color\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.default.text.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.row.default.text.fontSize\"}\r\n label=\"TextFontSize\"\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.active.frame.backgroundColor\")\r\n }\r\n path=\"interaction.agenda.row.active.frame.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.active.frame.borderColor\")\r\n }\r\n path=\"interaction.agenda.row.active.frame.borderColor\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.active.frame.borderWidth\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.active.frame.borderWidth\"}\r\n label=\"FrameBorderWidth\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.active.frame.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.active.frame.borderRadius\"}\r\n label=\"FrameBorderRadius\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.active.frame.padding\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.active.frame.padding\"}\r\n label=\"FramePadding\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.active.frame.marginTop\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.active.frame.marginTop\"}\r\n label=\"FrameMarginTop\"\r\n />\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.active.title.color\")\r\n }\r\n path=\"interaction.agenda.row.active.title.color\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.active.title.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.row.active.title.fontSize\"}\r\n label=\"TitleFontSize\"\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.active.text.color\")\r\n }\r\n path=\"interaction.agenda.row.active.text.color\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.active.text.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.row.active.text.fontSize\"}\r\n label=\"TextFontSize\"\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.passed.frame.backgroundColor\")\r\n }\r\n path=\"interaction.agenda.row.passed.frame.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.passed.frame.borderColor\")\r\n }\r\n path=\"interaction.agenda.row.passed.frame.borderColor\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.passed.frame.borderWidth\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.passed.frame.borderWidth\"}\r\n label=\"FrameBorderWidth\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.passed.frame.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.passed.frame.borderRadius\"}\r\n label=\"FrameBorderRadius\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.passed.frame.padding\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.passed.frame.padding\"}\r\n label=\"FramePadding\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.passed.frame.marginTop\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.passed.frame.marginTop\"}\r\n label=\"FrameMarginTop\"\r\n />\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.passed.title.color\")\r\n }\r\n path=\"interaction.agenda.row.passed.title.color\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.passed.title.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.row.passed.title.fontSize\"}\r\n label=\"TitleFontSize\"\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.agenda.row.passed.text.color\")\r\n }\r\n path=\"interaction.agenda.row.passed.text.color\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.agenda.row.passed.text.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.agenda.row.default.row.passed.text.fontSize\"}\r\n label=\"TextFontSize\"\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(AgendaSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport { UrlMultiInput } from \"../../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { hexToRgb } from \"../../../../../../helpers/colorHelper\";\r\nimport CropPortraitTwoToneIcon from '@material-ui/icons/CropPortraitTwoTone';\r\nimport BorderTopTwoToneIcon from '@material-ui/icons/BorderTopTwoTone';\r\nimport ListExpansion from \"../../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport TocTwoToneIcon from '@material-ui/icons/TocTwoTone';\r\nimport ForumTwoToneIcon from '@material-ui/icons/ForumTwoTone';\r\nimport PaletteTwoToneIcon from '@material-ui/icons/PaletteTwoTone';\r\nimport BorderBottomTwoToneIcon from '@material-ui/icons/BorderBottomTwoTone';\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass ConnectionSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const cu = templateHelper.nestledFind(path, templateCopy.content)\r\n let val = parseInt(cu)\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, val + unit, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.interaction.connections.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.interaction.connections.backgroundSize = `cover`;\r\n templateCopy.content.interaction.connections.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n if (path == 'interaction.connections.backgroundColor') {\r\n templateCopy.content.interaction.connections.background = templateHelper.parseColorToRgba(color);\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined || template.content.interaction.connections === undefined) return null;\r\n return (\r\n
\r\n
\r\n } description=\"Colors\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.primaryColor\")\r\n }\r\n path=\"interaction.chat.primaryColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.secondaryColor\")\r\n }\r\n path=\"interaction.chat.secondaryColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.badgePillColor\")\r\n }\r\n path=\"interaction.chat.badgePillColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.sendButtonColor\")\r\n }\r\n path=\"interaction.chat.sendButtonColor\"\r\n />\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n } description=\"ContainerStyles\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.container.borderColor\")\r\n }\r\n path=\"interaction.chat.container.borderColor\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.chat.container.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.chat.container.borderRadius\"}\r\n label=\"BorderRadius\"\r\n />\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.chat.container.borderWidth\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.chat.container.borderWidth\"}\r\n label=\"BorderWidth\"\r\n />\r\n
\r\n
\r\n
\r\n } description=\"ChatHeaderStyle\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.header.background\")\r\n }\r\n path=\"interaction.chat.header.background\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.header.borderColor\")\r\n }\r\n path=\"interaction.chat.header.borderColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.header.color\")\r\n }\r\n path=\"interaction.chat.header.color\"\r\n />\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.chat.header.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.chat.header.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n
\r\n
\r\n
\r\n } description=\"MessageContainer\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.content.background\")\r\n }\r\n path=\"interaction.chat.content.background\"\r\n />\r\n \r\n \r\n
\r\n
\r\n
\r\n } description=\"MessageStyle\">\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.color\")\r\n }\r\n path=\"interaction.chat.messages.color\"\r\n />\r\n \r\n \r\n {/* */}\r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.chat.messages.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.chat.messages.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.sender.color\")\r\n }\r\n path=\"interaction.chat.messages.sender.color\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.sender.thumbColor\")\r\n }\r\n path=\"interaction.chat.messages.sender.thumbColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.sender.backgroundColor\")\r\n }\r\n path=\"interaction.chat.messages.sender.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.receiver.color\")\r\n }\r\n path=\"interaction.chat.messages.receiver.color\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.receiver.thumbColor\")\r\n }\r\n path=\"interaction.chat.messages.receiver.thumbColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.messages.receiver.backgroundColor\")\r\n }\r\n path=\"interaction.chat.messages.receiver.backgroundColor\"\r\n />\r\n \r\n \r\n
\r\n
\r\n
\r\n } description=\"ChatFooterStyle\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.footer.background\")\r\n }\r\n path=\"interaction.chat.footer.background\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.footer.borderColor\")\r\n }\r\n path=\"interaction.chat.footer.borderColor\"\r\n />\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.footer.inputColor\")\r\n }\r\n path=\"interaction.chat.footer.inputColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.chat.footer.inputBackground\")\r\n }\r\n path=\"interaction.chat.footer.inputBackground\"\r\n />\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ConnectionSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n CardBody\r\n} from \"reactstrap\";\r\nimport { units } from \"../../../../../../common/units\";\r\nimport { templateActions } from \"../../../../../../store/actions/cms/template/template.action\";\r\nimport { DropDownFacade } from \"../../../../../../components/UI/Buttons/DropDownFacade\";\r\nimport ColorPickerFacade from \"../../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport JirangoFontPicker from \"../../../../../../fonts/FontPicker\";\r\nimport { deepClone, setValueToNestedObject } from \"../../../../../../helpers/objectHelper\";\r\nimport { templateHelper } from \"../../../helpers/templateHelper\";\r\nimport EditorSlider from \"../../../../../components/editor/tools/EditorSlider\";\r\nimport { FontWeightPicker } from \"../../../../../../fonts/FontWeightPicker/FontWeightPicker\";\r\nimport { UrlMultiInput } from \"../../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { hexToRgb } from \"../../../../../../helpers/colorHelper\";\r\nimport CropPortraitTwoToneIcon from '@material-ui/icons/CropPortraitTwoTone';\r\nimport BorderTopTwoToneIcon from '@material-ui/icons/BorderTopTwoTone';\r\nimport ListExpansion from \"../../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport TocTwoToneIcon from '@material-ui/icons/TocTwoTone';\r\nimport ForumTwoToneIcon from '@material-ui/icons/ForumTwoTone';\r\nimport PaletteTwoToneIcon from '@material-ui/icons/PaletteTwoTone';\r\nimport BorderBottomTwoToneIcon from '@material-ui/icons/BorderBottomTwoTone';\r\nimport TitleTwoToneIcon from '@material-ui/icons/TitleTwoTone';\r\nimport TextFieldsTwoToneIcon from '@material-ui/icons/TextFieldsTwoTone';\r\nimport BusinessCenterTwoToneIcon from '@material-ui/icons/BusinessCenterTwoTone';\r\n\r\nclass ExhibitorSettings extends React.Component {\r\n handleUpdate = template => {\r\n const { dispatch } = this.props;\r\n dispatch(templateActions.softUpdate(template));\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n const cu = templateHelper.nestledFind(path, templateCopy.content)\r\n let val = parseInt(cu)\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, val + unit, templateCopy.content)\r\n );\r\n this.handleUpdate(templateCopy);\r\n };\r\n setBackgroundImage = url => {\r\n const { template } = this.props;\r\n const templateCopy = deepClone(template);\r\n templateCopy.content.interaction.connections.background = `url('${url}') no-repeat center center / cover`;\r\n templateCopy.content.interaction.connections.backgroundSize = `cover`;\r\n templateCopy.content.interaction.connections.backgroundUrl = url;\r\n this.handleUpdate(templateCopy);\r\n };\r\n handleChange = (color, e, path, fallbackUnit = null) => {\r\n const { template } = this.props;\r\n const names = path.split(\".\");\r\n let templateCopy = deepClone(template);\r\n let value = templateHelper.getValueFromInput(e, color);\r\n let unit = templateHelper.getUnit(templateCopy, names);\r\n if (parseFloat(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n templateCopy.content = deepClone(\r\n setValueToNestedObject(names, value, templateCopy.content)\r\n );\r\n if (path == 'interaction.connections.backgroundColor') {\r\n templateCopy.content.interaction.connections.background = templateHelper.parseColorToRgba(color);\r\n }\r\n this.handleUpdate(templateCopy);\r\n };\r\n render() {\r\n const { template } = this.props;\r\n if (template === undefined || template.content.interaction.connections === undefined) return null;\r\n return (\r\n
\r\n
\r\n } description=\"ContainerStyles\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.exhibitor.frame.background\")\r\n }\r\n path=\"interaction.exhibitor.frame.background\"\r\n />\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.exhibitor.frame.borderRadius\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.exhibitor.frame.borderRadius\"}\r\n label=\"BorderRadius\"\r\n />\r\n
\r\n this.handleChange(color, e, path, extraParam)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.exhibitor.frame.padding\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.exhibitor.frame.padding\"}\r\n label=\"Padding\"\r\n />\r\n
\r\n
\r\n
\r\n } description=\"LogoStyle\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.exhibitor.logo.background\")\r\n }\r\n path=\"interaction.exhibitor.logo.background\"\r\n />\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n } description=\"Title\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.exhibitor.title.color\")\r\n }\r\n path=\"interaction.exhibitor.title.color\"\r\n />\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.exhibitor.title.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.exhibitor.title.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n\r\n
\r\n
\r\n
\r\n } description=\"Subtitle\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"interaction.exhibitor.subtitle.color\")\r\n }\r\n path=\"interaction.exhibitor.subtitle.color\"\r\n />\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n this.handleChange(color, e, path)}\r\n units={[\"px\", \"rem\", \"%\"]}\r\n activeUnit={templateHelper.getUnit(template, \"interaction.exhibitor.subtitle.fontSize\")}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"interaction.exhibitor.subtitle.fontSize\"}\r\n label=\"FontSize\"\r\n />\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ExhibitorSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport ContentSettings from \"../../components/ContentSettings/ContentSettings\";\r\nimport BackgroundSettings from \"../../components/BackgroundSettings/BackgroundSettings\";\r\nimport TextSettings from \"../../components/TextSettings/TextSettings\";\r\nimport TitleSettings from \"../../components/TitleSettings/TitleSettings\";\r\nimport SubtitleSettings from \"../../components/SubtitleSettings/SubtitleSettings\";\r\nimport FooterSettings from \"../../components/FooterSettings/FooterSettings\";\r\nimport HeaderSettings from \"../../components/HeaderSettings/HeaderSettings\";\r\nimport ButtonSettings from \"../../components/ButtonSettings/ButtonSettings\";\r\nimport FieldSettings from \"../../components/FieldSettings/FieldSettings\";\r\nimport LinkSettings from \"../../components/LinkSettings/LinkSettings\";\r\nimport TableSettings from \"../../components/TableSettings/TableSettings\";\r\nimport LabelSettings from \"../../components/LabelSettings/LabelSettings\";\r\nimport \"./TemplateSettings.css\";\r\nimport MenuSettings from \"../../components/MenuSettings/MenuSettings\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport ClientSettings from \"../../components/InteractionSettings/ClientSettings/ClientSettings\";\r\nimport ChartSettings from \"../../components/ChartSettings/ChartSettings\";\r\nimport ScrollbarSettings from \"../../components/ScrollbarSettings/ScrollbarSettings\";\r\nimport ConnectionSettings from \"../../components/InteractionSettings/ConnectionSettings/ConnectionSettings\";\r\nimport AgendaSettings from \"../../components/InteractionSettings/AgendaSettings/AgendaSettings\";\r\nimport ChatSettings from \"../../components/InteractionSettings/ChatSettings/ChatSettings\";\r\n\r\nimport ChatTwoToneIcon from '@material-ui/icons/ChatTwoTone';\r\nimport EventNoteTwoToneIcon from '@material-ui/icons/EventNoteTwoTone';\r\nimport PersonOutlineTwoToneIcon from '@material-ui/icons/PersonOutlineTwoTone';\r\nimport PollTwoToneIcon from '@material-ui/icons/PollTwoTone';\r\nimport EqualizerTwoToneIcon from '@material-ui/icons/EqualizerTwoTone';\r\nimport BorderTopTwoToneIcon from '@material-ui/icons/BorderTopTwoTone';\r\nimport BorderBottomTwoToneIcon from '@material-ui/icons/BorderBottomTwoTone';\r\nimport VerticalAlignBottomTwoToneIcon from '@material-ui/icons/VerticalAlignBottomTwoTone';\r\nimport TouchAppTwoToneIcon from '@material-ui/icons/TouchAppTwoTone';\r\nimport LinkTwoToneIcon from '@material-ui/icons/LinkTwoTone';\r\nimport SubjectTwoToneIcon from '@material-ui/icons/SubjectTwoTone';\r\nimport TitleTwoToneIcon from '@material-ui/icons/TitleTwoTone';\r\nimport SubtitlesTwoToneIcon from '@material-ui/icons/SubtitlesTwoTone';\r\nimport WrapTextTwoToneIcon from '@material-ui/icons/WrapTextTwoTone';\r\nimport BorderColorTwoToneIcon from '@material-ui/icons/BorderColorTwoTone';\r\nimport ImportContactsTwoToneIcon from '@material-ui/icons/ImportContactsTwoTone';\r\nimport MenuTwoToneIcon from '@material-ui/icons/MenuTwoTone';\r\nimport PanoramaTwoToneIcon from '@material-ui/icons/PanoramaTwoTone';\r\nimport StorefrontTwoToneIcon from '@material-ui/icons/StorefrontTwoTone';\r\nimport ExhibitorSettings from \"../../components/InteractionSettings/ExhibitorSettings/ExhibitorSettings\";\r\nclass TemplateLayout extends React.PureComponent {\r\n state = {\r\n backgroundAreaIsExpanded: false,\r\n titleAreaIsExpanded: false,\r\n textAreaIsExpanded: false,\r\n footerAreaIsExpanded: false,\r\n headerAreaIsExpanded: false,\r\n buttonAreaIsExpanded: false,\r\n linksAreaIsExpanded: false,\r\n backgroundColor: false,\r\n subtitleAreaIsExpanded: false,\r\n contentAreaIsExpanded: false,\r\n menuAreaIsExpanded: false,\r\n fieldAreaIsExpanded: false,\r\n tableAreaIsExpanded: false,\r\n image: false,\r\n template: null,\r\n dropdownOpen: false,\r\n lastCollapse: \"\"\r\n };\r\n handleChange = (color, e, path) => {\r\n const { dispatch } = this.props;\r\n const names = path.split(\".\");\r\n let value =\r\n [names[1]].toString() === \"margin\" ||\r\n [names[1]].toString() === \"borderRadius\"\r\n ? e.target.value + \"px\"\r\n : e.target.value;\r\n if (color) {\r\n value = color.hex;\r\n }\r\n if (e.target.value !== undefined && e.target.value.includes(\"http\")) {\r\n value = `url(${e.target.value}) no-repeat fixed center`;\r\n }\r\n let templateCopy = {};\r\n if (names.length > 2) {\r\n templateCopy = {\r\n ...this.state.template,\r\n content: {\r\n ...this.state.template.content,\r\n [names[0]]: {\r\n ...this.state.template.content[names[0]],\r\n [names[1]]: {\r\n ...this.state.template.content[names[1]],\r\n [names[2]]: value\r\n }\r\n }\r\n }\r\n };\r\n } else {\r\n templateCopy = {\r\n ...this.state.template,\r\n content: {\r\n ...this.state.template.content,\r\n [names[0]]: {\r\n ...this.state.template.content[names[0]],\r\n [names[1]]: value\r\n }\r\n }\r\n };\r\n }\r\n dispatch(templateActions.update(templateCopy));\r\n };\r\n background = () => {\r\n this.setState({\r\n background: !this.state.backgroundColor,\r\n image: !this.state.image\r\n });\r\n };\r\n expandArea = area => {\r\n this.setState(\r\n {\r\n [area]: !this.state[area]\r\n },\r\n () => {\r\n if (this.state.lastCollapse !== area) {\r\n if (this.state.lastCollapse !== \"\") {\r\n this.setState({ [this.state.lastCollapse]: false }, () => {\r\n this.setState({ lastCollapse: area });\r\n });\r\n } else {\r\n this.setState({ lastCollapse: area });\r\n }\r\n }\r\n }\r\n );\r\n };\r\n render() {\r\n/* const { image, backgroundColor, template } = this.state; */\r\n return (\r\n \r\n
\r\n }\r\n\r\n description=\"Background\"\r\n >\r\n \r\n \r\n }\r\n\r\n description=\"Header\"\r\n >\r\n \r\n \r\n }description=\"Menu\">\r\n \r\n \r\n }\r\n description=\"Content\"\r\n >\r\n \r\n \r\n }\r\n description=\"Footer\"\r\n >\r\n \r\n \r\n

\r\n\r\n }description=\"Title\">\r\n \r\n \r\n }\r\n description=\"Subtitle\"\r\n >\r\n \r\n \r\n }\r\n description=\"InputLabel\"\r\n >\r\n \r\n \r\n }\r\n description=\"Paragraphs\"\r\n >\r\n \r\n \r\n }description=\"Field\">\r\n \r\n \r\n

\r\n }\r\n description=\"Button\"\r\n >\r\n \r\n \r\n }description=\"Links\">\r\n \r\n \r\n

\r\n \r\n }\r\n\r\n description=\"Scrollbar\"\r\n >\r\n \r\n \r\n }\r\n description=\"Chart\"\r\n >\r\n \r\n \r\n

\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TemplateLayout);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport 'rc-slider/assets/index.css';\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Label,\r\n} from \"reactstrap\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport { tempLangConverter } from \"../../../../../../helpers/lanugageHelper\";\r\nimport { deepClone } from \"../../../../../../helpers/objectHelper\";\r\nimport { formActions } from \"../../../../../../store/actions/cms/form/form.action\";\r\nimport JirangoSwitch from \"../../../../../../components/UI/Switch/JirangoSwitch\";\r\n\r\n\r\nclass OptionSettings extends React.Component {\r\n\r\n handleSoftUpdate = (option) => {\r\n const { dispatch } = this.props;\r\n const element = deepClone(this.props.selectedElement);\r\n let opt = element.props.options.find(o => o.optionId === option.optionId && o.sortOrder === option.sortOrder);\r\n let indexOf = element.props.options.indexOf(opt)\r\n element.props.options[indexOf] = option;\r\n element.props.options[indexOf].isChanged = true;\r\n\r\n dispatch(formActions.updateFormElement(element));\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const selectedOption = deepClone(this.props.selectedOption);\r\n let value = val ? val : e.target.value;\r\n if (names.length === 1) {\r\n selectedOption[names[0]] = value;\r\n selectedOption.isChanged = true;\r\n }\r\n if (names.length === 2) {\r\n selectedOption[names[0]][names[1]] = value;\r\n selectedOption.isChanged = true;\r\n }\r\n if (names.length === 3) {\r\n selectedOption[names[0]][names[1]][names[2]] = value;\r\n selectedOption.isChanged = true;\r\n }\r\n if (names.length === 4) {\r\n selectedOption[names[0]][names[1]][names[2]][names[3]] = value;\r\n selectedOption.isChanged = true;\r\n }\r\n this.handleSoftUpdate(selectedOption)\r\n }\r\n render() {\r\n const { selectedOption } = this.props;\r\n if (!selectedOption) return null;\r\n return (\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {selectedOption.labels.map((l, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `labels.${index}.text`)\r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, !selectedOption.preChecked, `preChecked`)}\r\n isChecked={\r\n selectedOption.preChecked !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, !selectedOption.readonly, `readonly`)}\r\n isChecked={\r\n selectedOption.readonly !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n selectedElement: state.form.selectedElement,\r\n selectedOption: state.form.selectedOption,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(OptionSettings);\r\n","import SystemLabel from \"../system/SystemLabel/SystemLabel\";\r\nimport React from 'react';\r\n\r\nexport const validationTypes = [\r\n { label: , value: \"none\" },\r\n { label: , value: \"email\" },\r\n { label: , value: \"phone\" },\r\n { label: , value: \"numeric\" },\r\n]","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { ButtonGroup, Button, Label, Col, Row } from \"reactstrap\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { conditionConstants } from \"../condition.constants\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\n\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { elementActions } from \"../../../../../store/actions/cms/element/element.action\";\r\nimport { TextOverHeaderRow } from \"../../../../../components/UI/Text/TextOverHeaderRow\";\r\nimport { ExpansionPanel } from \"@material-ui/core\";\r\nimport './ConditionStyle.css'\r\n\r\nclass ConditionTypeList extends React.Component {\r\n isBtnActive = btn => {\r\n const { Show, Require, ReadOnly, CustomError } = conditionConstants.actions;\r\n const { element } = this.props;\r\n if (!element.data.checkCondition) {\r\n element.data.checkCondition = {};\r\n element.data.checkCondition[Show] = false;\r\n element.data.checkCondition[Require] = false;\r\n element.data.checkCondition[ReadOnly] = false;\r\n element.data.checkCondition[CustomError] = false;\r\n }\r\n switch (btn) {\r\n case \"ShowAlways\":\r\n if (element.data.checkCondition[Show] === false && element.data.hidden === false) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"ShowWhen\":\r\n if (\r\n element.data.checkCondition[Show] === true &&\r\n element.data.conditions &&\r\n element.data.conditions.length > 0\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"ShowNever\":\r\n if (\r\n /* element.data.checkCondition[Show] === false || */\r\n element.data.hidden === true\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"RequireAlways\":\r\n if (\r\n element.data.checkCondition[Require] === false &&\r\n element.data.required === true\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"RequireWhen\":\r\n if (\r\n element.data.checkCondition[Require] === true &&\r\n element.data.conditions &&\r\n element.data.conditions.length > 0\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"RequireNever\":\r\n if (\r\n element.data.checkCondition[Require] === false &&\r\n !element.data.required\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"ReadonlyAlways\":\r\n if (\r\n element.data.checkCondition[ReadOnly] === false &&\r\n element.data.readOnly === true\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"ReadonlyWhen\":\r\n if (\r\n element.data.checkCondition[ReadOnly] === true &&\r\n element.data.conditions &&\r\n element.data.conditions.length > 0\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n case \"ReadonlyNever\":\r\n if (\r\n element.data.checkCondition[ReadOnly] === false &&\r\n !element.data.readOnly\r\n ) {\r\n return \"active\";\r\n } else return \"\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n handleClick = btn => {\r\n const {\r\n Show,\r\n Require,\r\n ReadOnly,\r\n CustomError\r\n } = conditionConstants.actions;\r\n const element = deepClone(this.props.element);\r\n if (!element.data.checkCondition) {\r\n element.data.checkCondition = {};\r\n }\r\n switch (btn) {\r\n case \"ShowAlways\":\r\n element.data.checkCondition[Show] = false;\r\n element.data.hidden = false;\r\n break;\r\n case \"ShowWhen\":\r\n element.data.checkCondition[Show] = true;\r\n break;\r\n case \"ShowNever\":\r\n element.data.hidden = true;\r\n break;\r\n case \"RequireAlways\":\r\n element.data.checkCondition[Require] = false;\r\n element.data.required = true;\r\n break;\r\n case \"RequireWhen\":\r\n element.data.checkCondition[Require] = true;\r\n break;\r\n case \"RequireNever\":\r\n element.data.checkCondition[Require] = false;\r\n element.data.required = false;\r\n break;\r\n case \"ReadonlyAlways\":\r\n element.data.checkCondition[ReadOnly] = false;\r\n element.data.readOnly = true;\r\n break;\r\n case \"ReadonlyWhen\":\r\n element.data.checkCondition[ReadOnly] = true;\r\n break;\r\n case \"ReadonlyNever\":\r\n element.data.checkCondition[ReadOnly] = false;\r\n element.data.readOnly = false;\r\n break;\r\n default:\r\n return;\r\n }\r\n /* this.props.dispatch(elementActions.update(element)); */\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n render() {\r\n const {\r\n Show,\r\n Require,\r\n ReadoOnly,\r\n CustomError\r\n } = conditionConstants.actions;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleClick(\"ShowAlways\")}\r\n >\r\n \r\n \r\n {\r\n this.handleClick(\"ShowWhen\");\r\n this.props.toggleConditionModal(Show);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default connect()(ConditionTypeList);\r\n","export const displayTypesField = [\r\n { value: \"TEXT\", label: 'Text' },\r\n { value: \"SELECT\", label: 'Dropdown' }\r\n]\r\nexport const displayTypesQuestion = [\r\n { value: \"CHECKBOX\", label: 'Checkbox' },\r\n { value: \"SELECT\", label: 'Dropdown' }\r\n]\r\n\r\n\r\nexport const sortTypes = [\r\n { value: \"DEFAULT\", label: 'Default' },\r\n { value: \"ALPHA\", label: 'Alphabetically' }\r\n]","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport { Input, Row, InputGroup, InputGroupAddon, InputGroupText, Col, Label, TabContent } from \"reactstrap\";\r\nimport Select from \"react-select\";\r\nimport OptionSettings from \"../Options/Settings/OptionSettings\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { validationTypes } from \"../../../../../common/validationType\";\r\nimport CondtionTypeList from \"../../../../areas/form/conditions/components/CondtionTypeList\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { displayTypesQuestion, sortTypes } from \"../../../../models/displayTypes\";\r\nimport { tempLangConverter } from \"../../../../../helpers/lanugageHelper\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport { ElementTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { renderElementSettings } from \"../../../../helpers/renderElementSettings\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { FormGroup } from \"@material-ui/core\";\r\n\r\nconst checkboxLabelAlignmentStyles = [\r\n { value: \"end\", text: },\r\n { value: \"start\", text: },\r\n { value: \"under\", text: },\r\n { value: \"top\", text: },\r\n];\r\n\r\nclass QuestionSettings extends React.Component {\r\n state = { activeTab: new Array(2).fill(\"1\"), isChange: false };\r\n componentDidMount() {\r\n this.setState({\r\n activeTab: new Array(2).fill(\"1\"),\r\n });\r\n }\r\n componentWillUnmount() {\r\n this.timer = null;\r\n }\r\n\r\n handleSoftUpdate = (element) => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.updateFormElement(element));\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleSlider(e, path) {\r\n const names = path.split(\".\");\r\n const selectedElement = Object.assign({}, this.props.selectedElement);\r\n\r\n if (path === \"data.style.width\") {\r\n selectedElement[names[0]][names[1]][names[2]] = e + \"%\";\r\n } else if (path === \"data.titleWidth\") {\r\n selectedElement.data.inputWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n } else if (path === \"data.inputWidth\") {\r\n selectedElement.data.titleWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n }\r\n this.handleSoftUpdate(selectedElement);\r\n }\r\n handleSelectOnChange = (options, path) => {\r\n const names = path.split(\".\");\r\n const selectedElement = Object.assign({}, this.props.selectedElement);\r\n\r\n selectedElement[names[0]][names[1]] = options.value;\r\n this.handleSoftUpdate(selectedElement);\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = val !== null && val !== undefined ? val : e.target.value;\r\n if (e && e.target.value === \"\" && path === \"props.length\") {\r\n value = 0;\r\n }\r\n if (e && e.target.type === \"checkbox\") {\r\n value = e.target.checked;\r\n }\r\n if (path === \"props.requiredMax\" || path === \"props.requiredMin\") {\r\n value = parseInt(value);\r\n }\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n expandArea = (area) => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n render() {\r\n const { selectedElement, selectedOption, selectedContainer } = this.props.form;\r\n return (\r\n selectedElement &&\r\n selectedElement.data && (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {selectedElement.props.labels &&\r\n selectedElement.props.labels.map((l, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `props.labels.${index}.text`)}\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.showSubInput`)} isChecked={selectedElement.data.showSubInput !== true ? false : true} />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.showSubLabel`)} isChecked={selectedElement.data.showSubLabel !== true ? false : true} />\r\n \r\n \r\n
\r\n {selectedElement.props.type === \"Text\" ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.minCharacters`)} value={selectedElement.data.minCharacters} />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.maxCharacters`)} value={selectedElement.data.maxCharacters} />\r\n \r\n \r\n
\r\n
\r\n ) : (\r\n \r\n {selectedElement.data.displayType !== undefined && (\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n id=\"name\"\r\n value={displayTypesQuestion.find((t) => {\r\n return t.value === selectedElement.data.displayType;\r\n })}\r\n onChange={(selectedOption) => this.handleSelectOnChange(selectedOption, \"data.displayType\")}\r\n />\r\n \r\n \r\n )}\r\n
\r\n {selectedElement.data.sortType !== undefined && (\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n id=\"name\"\r\n value={sortTypes.find((t) => {\r\n return t.value === selectedElement.data.sortType;\r\n })}\r\n onChange={(selectedOption) => this.handleSelectOnChange(selectedOption, \"data.sortType\")}\r\n />\r\n \r\n \r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `props.requiredMin`)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `props.requiredMax`)} />\r\n \r\n \r\n \r\n
\r\n )}\r\n\r\n
\r\n {selectedElement.props.type === \"Text\" ? (\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n id=\"name\"\r\n value={validationTypes.find((t) => {\r\n return t.value === selectedElement.data.validation.type;\r\n })}\r\n onChange={(selectedOption) => this.handleChange(null, selectedOption.value, \"data.validation.type\")}\r\n />\r\n \r\n \r\n ) : null}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.validation.message`)}\r\n />\r\n \r\n \r\n
\r\n
\r\n
\r\n {selectedOption && selectedElement.props.type === \"Option\" ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n ) : null}\r\n
\r\n {selectedContainer ? (\r\n \r\n {renderElementSettings(selectedContainer.type, selectedContainer, this.props.toggleConditionModal)}\r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n ) : null}\r\n
\r\n )}\r\n\r\n {this.state.activeTab[0] === \"2\" && (\r\n \r\n \r\n
\r\n {selectedElement.props.type === \"Option\" && selectedElement.data.displayType === \"CHECKBOX\" ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.text };\r\n })}\r\n id=\"name\"\r\n value={checkboxLabelAlignmentStyles.find((t) => {\r\n return t.value === selectedElement.data.checkboxLabelPlacement;\r\n })}\r\n onChange={(selectedOption) => this.handleSelectOnChange(selectedOption, \"data.checkboxLabelPlacement\")}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.checked, `data.inline`)} isChecked={selectedElement.data.inline !== true ? false : true} />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.checked, `data.hideCheckboxLabels`)}\r\n isChecked={selectedElement.data.hideCheckboxLabels !== true ? false : true}\r\n />\r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n {/*
*/}\r\n {!selectedElement.data.hideCheckboxLabels ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.checked, `data.displayCheckboxRowAsHeader`)}\r\n isChecked={selectedElement.data.displayCheckboxRowAsHeader !== true ? false : true}\r\n />\r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n
\r\n {selectedElement.data.optionSpacing !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={\"px\"}\r\n steps={1}\r\n max={30}\r\n min={-30}\r\n path={\"data.optionSpacing\"}\r\n label=\"OptionsSpacing\"\r\n />\r\n )}\r\n
\r\n ) : null}\r\n
\r\n {selectedElement.data.padding !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={\"px\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.padding\"}\r\n label=\"Padding\"\r\n />\r\n )}\r\n
\r\n {selectedElement.data.titleWidth !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.titleWidth\"}\r\n label=\"TitleColumnWidth\"\r\n />\r\n )}\r\n
\r\n {selectedElement.data.inputWidth !== undefined && selectedElement.props.type === \"Text\" ? (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.inputWidth\"}\r\n label=\"FieldColumnWidth\"\r\n />\r\n ) : null}\r\n {/*

{selectedElement.props.type}

\r\n

{selectedElement.data.displayType}

*/}\r\n {selectedElement.props.type === \"Text\" || (selectedElement.props.type == \"Option\" && selectedElement.data.displayType == \"SELECT\") ? (\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.style.width\"}\r\n label=\"InnerWidth\"\r\n />\r\n
\r\n ) : null}\r\n {selectedElement.data.textRows !== undefined && selectedElement.props.type === \"Text\" && (\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.textRows`)} value={selectedElement.data.textRows} />\r\n \r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, \"props.tag\")} value={selectedElement.props.tag} />\r\n \r\n

\r\n \r\n

\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.changeLock`)} isChecked={selectedElement.data.changeLock !== true ? false : true} />\r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n selectedElement: state.form.selectedElement,\r\n event: state.event,\r\n\r\n rElement: state.element,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(QuestionSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Col,\r\n Label,\r\n TabContent,\r\n} from \"reactstrap\";\r\nimport Select from \"react-select\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { validationTypes } from \"../../../../../common/validationType\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { tempLangConverter } from \"../../../../../helpers/lanugageHelper\";\r\nimport CondtionTypeList from \"../../../../areas/form/conditions/components/CondtionTypeList\";\r\nimport { displayTypesField, sortTypes } from \"../../../../models/displayTypes\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { ElementTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { renderElementSettings } from \"../../../../helpers/renderElementSettings\";\r\n\r\n\r\n\r\nconst optionStyle = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n padding: \"0 10px\"\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\"\r\n }),\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n };\r\n }\r\n};\r\n\r\nclass FieldSettings extends React.Component {\r\n state = { activeTab: new Array(2).fill(\"1\"), isChange: false };\r\n componentDidMount() {\r\n this.setState({\r\n activeTab: new Array(2).fill(\"1\")\r\n });\r\n }\r\n handleSoftUpdate = element => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.updateFormElement(element));\r\n };\r\n handleSelectOnChange = (options, path) => {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n if (names.length === 2) {\r\n selectedElement[names[0]][names[1]] = options.value;\r\n } else if (names.length === 3) {\r\n selectedElement[names[0]][names[1]][names[2]] = options.value;\r\n }\r\n\r\n this.handleSoftUpdate(selectedElement);\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = val !== null && val !== undefined ? val : e.target.value;\r\n\r\n if (e && e.target.value === \"\" && path === \"props.length\") {\r\n value = 0;\r\n }\r\n if (e && e.target.type === \"checkbox\") {\r\n value = e.target.checked;\r\n }\r\n if (path === 'data.titleWidth') {\r\n element.data.inputWidth = 100 - value;\r\n }\r\n if (path === 'data.inputWidth') {\r\n element.data.titleWidth = 100 - value;\r\n }\r\n\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n render() {\r\n const { selectedElement, selectedContainer } = this.props.form;\r\n return (\r\n selectedElement && (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n {selectedElement.props.labels.map((l, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n e,\r\n null,\r\n `props.labels.${index}.text`\r\n )\r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n this.handleChange(e, null, `data.showSubInput`)}\r\n isChecked={\r\n selectedElement.data.showSubInput !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n this.handleChange(e, null, `data.showSubLabel`)}\r\n isChecked={\r\n selectedElement.data.showSubLabel !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n
\r\n {selectedElement.data.displayType !== undefined && (\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={displayTypesField.find(t => {\r\n return t.value === selectedElement.data.displayType;\r\n })}\r\n onChange={selectedOption =>\r\n this.handleSelectOnChange(\r\n selectedOption,\r\n \"data.displayType\"\r\n )\r\n }\r\n />\r\n \r\n \r\n )}\r\n\r\n {selectedElement.data.sortType !== undefined &&\r\n selectedElement.data.displayType === \"SELECT\" && (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={sortTypes.find(t => {\r\n return t.value === selectedElement.data.sortType;\r\n })}\r\n style={optionStyle}\r\n onChange={selectedOption =>\r\n this.handleSelectOnChange(\r\n selectedOption,\r\n \"data.sortType\"\r\n )\r\n }\r\n />\r\n \r\n \r\n
\r\n\r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `props.length`)\r\n }\r\n value={selectedElement.props.length}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.maxCharacters`)\r\n }\r\n value={selectedElement.data.maxCharacters}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={validationTypes.find(t => {\r\n return t.value === selectedElement.data.validation.type;\r\n })}\r\n style={optionStyle}\r\n onChange={selectedOption =>\r\n this.handleChange(null,\r\n selectedOption.value,\r\n \"data.validation.type\"\r\n )\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.validation.message`)\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n
\r\n {selectedContainer ?\r\n \r\n {renderElementSettings(\r\n selectedContainer.type,\r\n selectedContainer,\r\n this.props.toggleConditionModal\r\n )}\r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n
\r\n\r\n : null}\r\n
\r\n )}\r\n\r\n {this.state.activeTab[0] === \"2\" && (\r\n \r\n \r\n
\r\n {selectedElement.data.padding !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={'data.padding'}\r\n label=\"Padding\"\r\n />\r\n )}\r\n {selectedElement.data.alignment !== 'center' ? \r\n
\r\n {selectedElement.data.titleWidth !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={'%'}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={'data.titleWidth'}\r\n label=\"TitleColumnWidth\"\r\n />\r\n )}\r\n
\r\n {selectedElement.data.inputWidth !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={'%'}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={'data.inputWidth'}\r\n label=\"FieldColumnWidth\"\r\n />\r\n )}\r\n
: null}\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={'%'}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={'data.style.width'}\r\n label=\"InnerWidth\"\r\n />\r\n
\r\n \r\n )}\r\n {this.state.activeTab[0] === \"3\" && (\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n this.handleChange(e, null, `data.changeLock`)}\r\n isChecked={\r\n selectedElement.data.changeLock !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n )}\r\n \r\n
\r\n
\r\n )\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n selectedElement: state.form.selectedElement,\r\n selectedContainer: state.form.selectedContainer,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(FieldSettings);\r\n","import React from 'react';\r\nimport SystemLabel from '../../../system/SystemLabel/SystemLabel';\r\nimport { Badge } from 'reactstrap'\r\nimport TextareaAutosize from 'react-textarea-autosize'\r\nimport './BootstrapCheckbox.css'\r\nimport ContentEditable from \"react-contenteditable\";\r\nimport { securityHelper } from '../../../helpers/securityHelper';\r\n\r\nString.prototype.replaceHtmlEntites = function () {\r\n var s = this;\r\n var translate_re = /&(nbsp|amp|quot|lt|gt);/g;\r\n var translate = { \"nbsp\": \" \", \"amp\": \"&\", \"quot\": \"\\\"\", \"lt\": \"<\", \"gt\": \">\" };\r\n return (s.replace(translate_re, function (match, entity) {\r\n return translate[entity];\r\n }));\r\n};\r\n\r\n\r\nclass JirangoCheckbox extends React.Component {\r\n constructor() {\r\n super()\r\n this.state = {\r\n disableCheckbox: false, value: '', rows: 2,\r\n minRows: 2,\r\n maxRows: 100,\r\n }\r\n };\r\n componentDidMount() {\r\n this.setState({\r\n value: this.props.labelName !== '' ? this.props.labelName : ''\r\n })\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.labelName !== undefined && prevProps.labelName !== this.props.labelName) {\r\n this.setState({\r\n value: this.props.labelName/* ? this.props.labelName.replaceHtmlEntites() : '' */\r\n })\r\n }\r\n }\r\n componentWillUnmount() {\r\n this.input = null;\r\n }\r\n disableCheckboxOnEdit = () => {\r\n this.setState({ disableCheckbox: true })\r\n }\r\n unDisableCheckboxOnEdit = () => {\r\n this.setState({ disableCheckbox: false })\r\n }\r\n\r\n onChange = (e) => {\r\n const { questionDto } = this.props;\r\n if (questionDto !== undefined) this.props.labelOnChange(e.target.value,\r\n questionDto.optionId,\r\n questionDto.langCode ? questionDto.langCode : 'swe')\r\n else {\r\n this.props.labelOnChange(e,\r\n this.props.path\r\n );\r\n }\r\n this.setState({ value: e.target.value })\r\n }\r\n render() {\r\n const { type, onChange, inline, labelName, value, editableLabel, labelDisabled, isEventBox, questionDto,\r\n labelOnChange, appendedText, checkboxIsDisabled, style, noHtmlFor, onBlur, path, editArea, boxType,\r\n hideCheckbox, hiddenText } = this.props;\r\n\r\n const boxTypeC = boxType !== undefined ? boxType : 'checkbox';\r\n const typeClass = type ? `${boxTypeC}-${type}` : '';\r\n const isInline = inline && \"checkbox-inline\";\r\n const newId = securityHelper.createGuid()/* . Math.floor(Math.random() * Math.floor(100)) */;\r\n const isDisabled = checkboxIsDisabled && true;\r\n return (\r\n
\r\n {hideCheckbox ?\r\n (hiddenText ?\r\n\r\n \r\n {hiddenText}\r\n \r\n\r\n : \"\")\r\n :\r\n onChange(e)} id={`${newId}-${labelName}`} checked={value} type={`${boxTypeC}`} />\r\n }\r\n\r\n \r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default JirangoCheckbox;\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Input,\r\n Row,\r\n Col,\r\n Label,\r\n TabContent,\r\n FormGroup,\r\n} from \"reactstrap\";\r\nimport JirangoCheckbox from \"../../../../../components/UI/Checkbox/JirangoCheckbox\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport CondtionTypeList from \"../../../../areas/form/conditions/components/CondtionTypeList\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport { ElementTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport { renderElementSettings } from \"../../../../helpers/renderElementSettings\";\r\nimport { toKebabCase } from \"../../../../../helpers/cssHelper\";\r\nimport ContentEditable from \"react-contenteditable\";\r\n\r\n\r\nclass EventSettings extends React.Component {\r\n state = { activeTab: new Array(2).fill('1'), isChange: false };\r\n componentDidMount() {\r\n this.setState({\r\n activeTab: new Array(2).fill('1'),\r\n });\r\n }\r\n handleSoftUpdate = (element) => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.updateFormElement(element));\r\n };\r\n handleSelectOnChange = (options, path) => {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n selectedElement[names[0]][names[1]] = options.value;\r\n this.handleSoftUpdate(selectedElement);\r\n }\r\n\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice()\r\n newArray[tabPane] = tab\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n }\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val !== undefined) {\r\n value = val;\r\n }\r\n else if (e && e.target !== undefined && e.target.type === \"checkbox\") {\r\n value = e.target.checked;\r\n }\r\n else if (e && e.target !== undefined && e.target.type !== \"checkbox\") {\r\n value = e.target.value;\r\n }\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n }\r\n else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = !element[names[0]][names[1]][names[2]];\r\n }\r\n\r\n this.handleSoftUpdate(element);\r\n }\r\n updateConditions = (conditions) => {\r\n const element = Object.assign({}, this.state.element);\r\n element.data.conditions = conditions;\r\n this.setState({ element }, () => this.handleUpdate());\r\n }\r\n renderDisplaySettings = () => {\r\n const { selectedElement } = this.props;\r\n let ret = [];\r\n for (const key in selectedElement.data.display) {\r\n if (selectedElement.data.display.hasOwnProperty(key)) {\r\n const setting = selectedElement.data.display[key];\r\n ret.push(\r\n \r\n \r\n \r\n this.handleChange(e, null, `data.display.${key}`)\r\n }\r\n inline={true}\r\n value={setting}\r\n type=\"info\"\r\n labelName={`${key.charAt(0).toUpperCase() + key.substring(1)}`} />\r\n \r\n \r\n )\r\n }\r\n }\r\n return ret;\r\n }\r\n renderPropsSettings = () => {\r\n const { selectedElement } = this.props;\r\n let ret = [];\r\n\r\n const typeDic = {\r\n name: \"text\",\r\n startDateTime: \"datetime-local\",\r\n endDateTime: \"datetime-local\",\r\n description: \"textarea\",\r\n max: \"number\",\r\n amount: \"number\",\r\n city: \"text\",\r\n venue: \"text\",\r\n vatPercent: \"number\"\r\n }\r\n const widthDic = {\r\n name: \"100%\",\r\n startDateTime: \"50%\",\r\n endDateTime: \"50%\",\r\n description: \"100%\",\r\n max: \"33.333%\",\r\n amount: \"33.333%\",\r\n city: \"100%\",\r\n venue: \"100%\",\r\n vatPercent: \"33.333%\"\r\n }\r\n\r\n for (const key in selectedElement.props) {\r\n if (selectedElement.props.hasOwnProperty(key)) {\r\n const setting = selectedElement.props[key];\r\n if (key === 'isSelected') continue;\r\n ret.push(\r\n\r\n \r\n \r\n \r\n {typeDic[key] === 'textarea' ?\r\n
\r\n \r\n this.handleChange(e, null, `props.description`)}\r\n tagName=\"div\"\r\n />\r\n \r\n \r\n

\r\n
:\r\n this.handleChange(e, null, `props.${key}`)}\r\n />}\r\n
\r\n \r\n )\r\n }\r\n }\r\n ret.push(\r\n \r\n \r\n \r\n this.handleChange(e, null, `data.locationLabel`)}\r\n />\r\n \r\n \r\n )\r\n ret.push(\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.maxLabel`)}\r\n />\r\n \r\n \r\n
\r\n
\r\n\r\n )\r\n return {ret.map(r => { return r })};\r\n }\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n const spaceValue = element[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n element[names[0]][names[1]] = splitted;\r\n }\r\n else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n\r\n element[names[0]][names[1]] = newString.join(' ');\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n }\r\n render() {\r\n const { selectedElement, selectedContainer, template, cms } = this.props;\r\n if (selectedElement === null) return null;\r\n return (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n \r\n \r\n {this.renderPropsSettings()}\r\n \r\n {selectedContainer ?\r\n \r\n
\r\n {renderElementSettings(\r\n selectedContainer.type,\r\n selectedContainer,\r\n this.props.toggleConditionModal\r\n )}\r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n
\r\n\r\n : null}\r\n
\r\n )}\r\n {this.state.activeTab[0] === \"2\" && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 0)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 0)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 1)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 1)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 2)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 2)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 3)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 3)} />\r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.descriptionMargin`, 0)}\r\n value={this.convertSpaceValue(selectedElement.data.descriptionMargin, 0)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.descriptionMargin`, 1)}\r\n value={this.convertSpaceValue(selectedElement.data.descriptionMargin, 1)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.descriptionMargin`, 2)}\r\n value={this.convertSpaceValue(selectedElement.data.descriptionMargin, 2)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.descriptionMargin`, 3)}\r\n value={this.convertSpaceValue(selectedElement.data.descriptionMargin, 3)} />\r\n

\r\n
\r\n \r\n
\r\n \r\n )}\r\n {this.state.activeTab[0] === \"3\" && (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.hidePrice`)}\r\n isChecked={\r\n selectedElement.data.hidePrice !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.readOnly`)}\r\n isChecked={\r\n selectedElement.data.readOnly !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.doNotExistIfHidden`)}\r\n isChecked={\r\n selectedElement.data.doNotExistIfHidden !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.preChecked`)}\r\n isChecked={\r\n selectedElement.data.preChecked !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.allowOverbooking`)}\r\n isChecked={\r\n selectedElement.data.allowOverbooking !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n this.handleChange(e, null, `data.changeLock`)}\r\n isChecked={\r\n selectedElement.data.changeLock !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n )}\r\n \r\n
\r\n
\r\n\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n selectedElement: state.form.selectedElement,\r\n selectedContainer: state.form.selectedContainer,\r\n template: state.template.template,\r\n cms: state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(EventSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n} from \"reactstrap\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport Select from 'react-select'\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\n\r\nconst borderStyles = [\r\n { value: 'none', label: 'Ingen' },\r\n { value: 'dotted', label: 'Dotted' },\r\n { value: 'dashed', label: 'Dashed' },\r\n { value: 'solid', label: 'Solid' },\r\n { value: 'inset', label: 'Inset' },\r\n { value: 'outset', label: 'Outset' },\r\n { value: 'double', label: 'Double' },\r\n { value: 'groove', label: 'Groove' },\r\n { value: 'ridge', label: 'Ridge' },\r\n]\r\n\r\nconst optionStyle = {\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n width: 120\r\n };\r\n }\r\n};\r\nclass DividerSettings extends React.Component {\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, enviroment, page } = this.props;\r\n console.log(\"settings\", this.props)\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(\r\n element,\r\n template\r\n );\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n parseColorToRgba(color) {\r\n const { r, g, b, a } = color.rgb;\r\n return `rgba(${r},${g},${b},${a})`;\r\n }\r\n handleChange = (color, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = color ? this.parseColorToRgba(color) : val;\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n }\r\n if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n\r\n render() {\r\n const { selectedElement } = this.props;\r\n if (selectedElement === undefined) return null;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"data.borderColor\")\r\n }\r\n path=\"data.borderColor\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={borderStyles.find(t => {\r\n return t.value === selectedElement.data.borderStyle;\r\n })}\r\n style={{ optionStyle }}\r\n onChange={selectedOption =>\r\n this.handleChange(\r\n null,\r\n selectedOption.value,\r\n \"data.borderStyle\"\r\n )\r\n }\r\n />\r\n \r\n \r\n\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n min={1}\r\n max={500}\r\n path={'data.height'}\r\n label=\"Height\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={'%'}\r\n steps={1}\r\n min={1}\r\n max={100}\r\n path={'data.width'}\r\n label=\"Width\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={0.5}\r\n min={0.5}\r\n max={50}\r\n path={'data.borderWidth'}\r\n label=\"BorderWidth\"\r\n />\r\n\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM)\r\n selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE)\r\n selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE)\r\n selectedElement = state.template.selectedElement;\r\n return {\r\n form: state.form,\r\n page:state.page,\r\n selectedElement,\r\n template: state.template.template,\r\n enviroment\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(DividerSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ArchiveContainer from \"../../../../../file/containers/ArchiveContainer\";\r\nimport { content } from \"../../../../models/content\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport Select from 'react-select';\r\n\r\n\r\nconst imageShapes = [\r\n { value: 'ORIGINAL', label: },\r\n { value: 'CIRCLE', label: },\r\n { value: 'SQUARE', label: },\r\n { value: 'FULL', label: }\r\n]\r\n\r\nclass ImageSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false\r\n };\r\n handleSoftUpdate = element => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(\r\n element,\r\n template\r\n );\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n setAttribute = (attr, path) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let element = deepClone(selectedElement);\r\n\r\n if (path === \"data.style\") {\r\n const defSettings = content.find(el => {\r\n return el.settings.type === element.data.type;\r\n });\r\n element.data.style = deepClone(defSettings.settings.style);\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = attr;\r\n } else {\r\n element[names[0]][names[1]] = attr;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n handleSlider(e, path) {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n\r\n if (path === \"data.style.width\") {\r\n selectedElement[names[0]][names[1]][names[2]] = e + \"%\";\r\n } else if (path === \"data.titleWidth\") {\r\n selectedElement.data.inputWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n } else if (path === \"data.inputWidth\") {\r\n selectedElement.data.titleWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n }\r\n this.handleSoftUpdate(selectedElement);\r\n }\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else if (e !== null) value = e.target.value;\r\n else return;\r\n\r\n if (element.data.type !== 'FULL' && element.data.type !== 'ORIGINAL' &&\r\n path === 'data.style.width') {\r\n\r\n element.data.style.width = value;\r\n element.data.style.height = value;\r\n }\r\n else if (element.data.type === 'ORIGINAL' && path === 'data.style.width') {\r\n if (element.data.orgSize) {\r\n element.data.style.width = value;\r\n let heightRatio = (element.data.orgSize.height / element.data.orgSize.width)\r\n element.data.style.height = value * heightRatio;\r\n }\r\n }\r\n else if (element.data.type === 'ORIGINAL' && path === 'data.style.height') {\r\n if (element.data.orgSize) {\r\n element.data.style.height = value;\r\n let widthRatio = (element.data.orgSize.width / element.data.orgSize.height)\r\n element.data.style.width = value * widthRatio;\r\n }\r\n }\r\n else if (path === 'data.type' && val === 'ORIGINAL') {\r\n if (element.data.orgSize) {\r\n element.data.style.height = element.data.orgSize.height;\r\n element.data.style.width = element.data.orgSize.width;\r\n }\r\n element.data.type = value;\r\n }\r\n else if (path === 'data.type' && (val === 'CIRCLE' || val === 'SQUARE')) {\r\n element.data.style.height = '210px';\r\n element.data.style.width = '210px';\r\n element.data.type = value;\r\n }\r\n else if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n expandArea = area => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n setImage = url => {\r\n const element = deepClone(this.props.selectedElement);\r\n element.props.value = url;\r\n this.handleSoftUpdate(element);\r\n };\r\n render() {\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n {selectedElement.data.type !== \"FULL\" && selectedElement.data.type !== \"ORIGINAL\" ? (\r\n \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n attachUnit={true}\r\n max={320}\r\n min={1}\r\n path={'data.style.width'}\r\n label=\"ImgSize\"\r\n />\r\n
\r\n
\r\n ) : null}\r\n {selectedElement.data.type === \"ORIGINAL\" ? \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n max={1800}\r\n min={1}\r\n path={'data.style.height'}\r\n label=\"ImgHeight\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n max={1000}\r\n min={1}\r\n path={'data.style.width'}\r\n label=\"ImgWidth\"\r\n />\r\n
\r\n
: null}\r\n\r\n {selectedElement.data.type === \"FULL\" ? \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n max={1000}\r\n min={1}\r\n path={'data.style.maxHeight'}\r\n label=\"MaxHeight\"\r\n />\r\n
\r\n
: null}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={imageShapes.find(t => {\r\n return t.value === selectedElement.data.type;\r\n })}\r\n onChange={selectedOption =>\r\n this.handleChange(\r\n null,\r\n selectedOption.value,\r\n \"data.type\"\r\n )\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {this.state.isMediaVaultOpen && (\r\n \r\n )}\r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM)\r\n selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE)\r\n selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE)\r\n selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ImageSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Input,\r\n Row,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport axios from 'axios';\r\nimport { FloatingChecklist } from \"../../../../components/editor/tools/FloatingChecklist/FloatingChecklist\";\r\n\r\nconst API_KEY = 'AIzaSyAfkmGGdpqu1LNCDkioaAJLvlZ4ezLOcNE'\r\nclass MapSettings extends React.Component {\r\n state = {\r\n results: []\r\n }\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(element, template);\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n addressOnChange = (address) => {\r\n const element = deepClone(this.props.selectedElement);\r\n element.props.value = address;\r\n this.setState({ results: [] })\r\n this.handleSoftUpdate(element);\r\n }\r\n\r\n handleChange = (color, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = color ? this.parseColorToRgba(color) : val;\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n }\r\n if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n getResultFromInput = (address) => {\r\n if (address.length < 4) return;\r\n const { props } = this.props.selectedElement;\r\n axios.get(`https://maps.googleapis.com/maps/api/geocode/json?address=${address.replace(' ', '+')}&key=${API_KEY}`)\r\n .then(res => {\r\n const results = [];\r\n res.data.results.map(r => {\r\n results.push({\r\n address: r.formatted_address,\r\n isCurrent: (props.value && props.value === r.formatted_address)\r\n })\r\n })\r\n this.setState({ results })\r\n })\r\n }\r\n render() {\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"\"]}\r\n activeUnit={''}\r\n steps={1}\r\n min={10}\r\n max={15}\r\n path={'data.zoom'}\r\n label=\"Scale\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n min={1}\r\n max={1000}\r\n path={'data.style.height'}\r\n label=\"Height\"\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.getResultFromInput(e.target.value)} /* onBlur={(e) => this.handleChange(this.state.value, 'props.value')} */ />\r\n {this.state.results.length > 0 ? : null}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM) selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE) selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE) selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(MapSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n DateTimePicker,\r\n KeyboardDateTimePicker,\r\n MuiPickersUtilsProvider,\r\n} from \"@material-ui/pickers\";\r\nimport MomentUtils from \"@date-io/moment\";\r\nimport { cmsActions } from \"../store/actions/cms/cms.action\";\r\nimport SystemLabel from \"../system/SystemLabel/SystemLabel\";\r\n\r\nconst JirangoDatePicker = ({ value, dispatch, handleChange, path }) => {\r\n return (\r\n \r\n dispatch(cmsActions.blockDeselect(true))}\r\n onClose={() => cmsActions.blockDeselect(false)}\r\n onChange={(e) => handleChange(e)}\r\n value={value ? new Date(value) : null}\r\n onError={(err) => console.error(err)}\r\n format=\"yyyy-MM-DD HH:mm:ss\"\r\n cancelLabel={}\r\n clearLabel={}\r\n />\r\n \r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {};\r\n}\r\nexport default connect(mapStateToProps)(JirangoDatePicker);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, Input, FormGroup } from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { content } from \"../../../../models/content\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport Select from \"react-select\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport { IconButton } from \"@material-ui/core\";\r\n\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\nimport JirangoDatePicker from \"../../../../../global/JirangoDatepicker\";\r\n\r\n\r\nconst targetTypes = [\r\n { value: \"self\", label: },\r\n { value: \"blank\", label: },\r\n];\r\nclass ButtonSettings extends React.Component {\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(\r\n element,\r\n template\r\n );\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n setAttribute = (attr, path) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let element = deepClone(selectedElement);\r\n\r\n if (path === \"data.style\") {\r\n const defSettings = content.find((el) => {\r\n return el.settings.type === element.data.type;\r\n });\r\n element.data.style = deepClone(defSettings.settings.style);\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = attr;\r\n } else {\r\n element[names[0]][names[1]] = attr;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (path == \"data.startDate\" || path == \"data.endDate\") {\r\n console.log(\"datestuff\")\r\n if ((path == \"data.endDate\" || path == \"data.startDate\") && val == null){\r\n value = null;\r\n }\r\n else if (path == \"data.endDate\" && element.data.startDate) {\r\n if (+new Date(val) <= element.data.startDate) return;\r\n }\r\n value = +new Date(val);\r\n } else if (val) value = val;\r\n else {\r\n if (!e) value = val;\r\n else value = e.target.value;\r\n }\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n const spaceValue = element[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + \"px\";\r\n splitted = splitted.join(\" \");\r\n element[names[0]][names[1]] = splitted;\r\n } else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(\" \");\r\n newString[dir] = value + \"px\";\r\n\r\n element[names[0]][names[1]] = newString.join(\" \");\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n } else {\r\n return parseInt(splitted[0]);\r\n }\r\n };\r\n\r\n render() {\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n \r\n
\r\n {selectedElement.data.padding !== undefined ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n this.handleSpaceOnChange(e, `data.padding`, 0)\r\n }\r\n value={this.convertSpaceValue(\r\n selectedElement.data.padding,\r\n 0\r\n )}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n this.handleSpaceOnChange(e, `data.padding`, 1)\r\n }\r\n value={this.convertSpaceValue(\r\n selectedElement.data.padding,\r\n 1\r\n )}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n this.handleSpaceOnChange(e, `data.padding`, 2)\r\n }\r\n value={this.convertSpaceValue(\r\n selectedElement.data.padding,\r\n 2\r\n )}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n this.handleSpaceOnChange(e, `data.padding`, 3)\r\n }\r\n value={this.convertSpaceValue(\r\n selectedElement.data.padding,\r\n 3\r\n )}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n {/* null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={500}\r\n min={1}\r\n path={'data.style.width'}\r\n label=\"ButtonWidth\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={500}\r\n min={1}\r\n path={'data.style.height'}\r\n label=\"ButtonHeight\"\r\n /> */}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={targetTypes.find((t) => {\r\n return t.value === selectedElement.data.target;\r\n })}\r\n onChange={(selectedOption) =>\r\n this.handleChange(null, selectedOption.value, \"data.target\")\r\n }\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n null,\r\n !selectedElement.data.timer,\r\n \"data.timer\"\r\n )\r\n }\r\n isChecked={selectedElement.data.timer}\r\n />\r\n \r\n \r\n
\r\n {selectedElement.data.timer == true ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, value, \"data.startDate\")\r\n }\r\n value={selectedElement.data.startDate}\r\n />\r\n\r\n {/* {\r\n console.log(e.target.value);\r\n console.log(\r\n new Date(e.target.value).toLocaleTimeString()\r\n );\r\n\r\n this.handleChange(\r\n null,\r\n e.target.value,\r\n \"data.startDate\"\r\n );\r\n }}\r\n /> */}\r\n \r\n \r\n \r\n \r\n this.handleChange(null, null, \"data.startDate\")\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, value, \"data.endDate\")\r\n }\r\n value={selectedElement.data.endDate}\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(null, null, \"data.endDate\")\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM)\r\n selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE)\r\n selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE)\r\n selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ButtonSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\n\r\nclass VideoSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false\r\n };\r\n handleSoftUpdate = element => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(\r\n element,\r\n template\r\n );\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else if (e !== null) value = e.target.value;\r\n else return;\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, url, 'data.thumbnail')} margin={false} externalSourceOnly={false} onChange={this.handleChange} path={'data.thumbnail'} url={selectedElement.data.thumbnail || ''} />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={'%'}\r\n steps={1}\r\n attachUnit={true}\r\n max={100}\r\n min={1}\r\n path={'data.style.width'}\r\n label=\"VideoWidth\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={1}\r\n max={1000}\r\n attachUnit={true}\r\n min={1}\r\n path={'data.style.height'}\r\n label=\"VideoHeight\"\r\n />\r\n
\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM)\r\n selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE)\r\n selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE)\r\n selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(VideoSettings);\r\n","export const defaultEventGroupProps = {\r\n min: 0,\r\n max: 0\r\n}","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport { Input, Row, Col, Label, InputGroup } from \"reactstrap\";\r\n\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport CondtionTypeList from \"../../../../areas/form/conditions/components/CondtionTypeList\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport Select from \"react-select\";\r\nimport { defaultEventGroupProps } from \"../../../../models/eventGroup\";\r\nimport { elementConstants } from \"../../../../../constants/cms/form/element/element.constants\";\r\n\r\nconst containerTypes = [\r\n { value: \"DEFAULT\", label: },\r\n { value: \"EVENT_GROUP\", label: },\r\n];\r\n\r\nclass ContainerSettings extends React.Component {\r\n state = { isMediaVaultOpen: false };\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, cms, page } = this.props;\r\n const { enviroment } = cms;\r\n if (enviroment === sourceTypes.FORM) dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE) dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(element, template);\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n\r\n parseColorToRgba = (color) => {\r\n const { r, g, b, a } = color.rgb;\r\n return `rgba(${r},${g},${b},${a})`;\r\n };\r\n toggleEventGroup = (groupId, off = false) => {\r\n if (off) {\r\n const events = this.props.form.formElements.filter((fe) => {\r\n return fe.type === elementConstants.EVENT && fe.data.groupId === groupId;\r\n });\r\n if (events.length > 0) {\r\n events.map((e) => {\r\n let element = deepClone(e);\r\n element.data.groupId = -1;\r\n this.handleSoftUpdate(element);\r\n });\r\n }\r\n } else {\r\n const mainContainersChildrens = this.props.form.formElements\r\n .filter((fe) => {\r\n return fe.type === elementConstants.CONTAINER && fe.parentId === groupId;\r\n })\r\n .map((cc) => {\r\n return cc.id;\r\n });\r\n\r\n const events = this.props.form.formElements.filter((fe) => {\r\n return fe.type === elementConstants.EVENT && fe.parentId !== null;\r\n });\r\n if (events.length > 0) {\r\n events.map((e) => {\r\n if (mainContainersChildrens.includes(e.parentId)) {\r\n let element = deepClone(e);\r\n element.data.groupId = groupId;\r\n this.handleSoftUpdate(element);\r\n }\r\n });\r\n }\r\n }\r\n };\r\n handleChange = (color, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedContainer);\r\n let value = color ? this.parseColorToRgba(color) : val;\r\n if (path === \"data.type\") {\r\n if (val === \"DEFAULT\") {\r\n element.data.extra = null;\r\n this.toggleEventGroup(element.id, true);\r\n } else if (val === \"EVENT_GROUP\") {\r\n element.data.extra = defaultEventGroupProps;\r\n this.toggleEventGroup(element.id, false);\r\n }\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n setBackgroundImage = (url) => {\r\n const element = deepClone(this.props.selectedContainer);\r\n element.data.backgroundUrl = url;\r\n element.data.background = `url('${url}') no-repeat center center / cover`;\r\n this.handleSoftUpdate(element);\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedContainer);\r\n const spaceValue = element[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + \"px\";\r\n splitted = splitted.join(\" \");\r\n element[names[0]][names[1]] = splitted;\r\n } else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(\" \");\r\n newString[dir] = value + \"px\";\r\n\r\n element[names[0]][names[1]] = newString.join(\" \");\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n } else {\r\n return parseInt(splitted[0]);\r\n }\r\n };\r\n handleUnitChange = (unit, path) => {\r\n const element = deepClone(this.props.selectedContainer);\r\n\r\n const names = path.split(\".\");\r\n\r\n element[names[0]][names[1]][names[2]] = parseFloat(element[names[0]][names[1]][names[2]]) + unit;\r\n\r\n this.handleSoftUpdate(element);\r\n };\r\n render() {\r\n const { selectedContainer, cms } = this.props;\r\n if (selectedContainer === null) return null;\r\n return (\r\n
\r\n \r\n {cms.enviroment === sourceTypes.FORM ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={containerTypes.find((t) => {\r\n return t.value === selectedContainer.data.type;\r\n })}\r\n onChange={(selectedOption) => this.handleChange(null, selectedOption.value, \"data.type\")}\r\n />\r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n {selectedContainer.data.type === \"EVENT_GROUP\" ? (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, `data.extra.min`)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, `data.extra.max`)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, `data.validation.message`)}\r\n />\r\n \r\n \r\n
\r\n ) : null}\r\n\r\n
\r\n {selectedContainer.data.padding !== undefined ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 0)}\r\n value={this.convertSpaceValue(selectedContainer.data.padding, 0)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 1)}\r\n value={this.convertSpaceValue(selectedContainer.data.padding, 1)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 2)}\r\n value={this.convertSpaceValue(selectedContainer.data.padding, 2)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 3)}\r\n value={this.convertSpaceValue(selectedContainer.data.padding, 3)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n {/* \r\n \r\n \r\n

\r\n \r\n

\r\n
\r\n \r\n
*/}\r\n
\r\n {selectedContainer.data.margin !== undefined ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 0)}\r\n value={this.convertSpaceValue(selectedContainer.data.margin, 0)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 1)}\r\n value={this.convertSpaceValue(selectedContainer.data.margin, 1)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 2)}\r\n value={this.convertSpaceValue(selectedContainer.data.margin, 2)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 3)}\r\n value={this.convertSpaceValue(selectedContainer.data.margin, 3)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n {/* \r\n \r\n \r\n

\r\n \r\n

\r\n
\r\n \r\n
*/}\r\n
\r\n
\r\n ) : null}\r\n
\r\n
\r\n ) : null}\r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(color, e, \"data.background\")} path=\"data.background\" />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n null,\r\n selectedContainer.data.backgroundAttachment === \"initial\" || selectedContainer.data.backgroundAttachment === \"unset\" || selectedContainer.data.backgroundAttachment === \"none\"\r\n ? \"fixed\"\r\n : \"initial\",\r\n \"data.backgroundAttachment\"\r\n )\r\n }\r\n isChecked={selectedContainer.data.backgroundAttachment === \"fixed\"}\r\n />\r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n \r\n
\r\n {selectedContainer.data.style.height !== \"auto\" ? (\r\n \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={\"px\"}\r\n steps={1}\r\n max={1000}\r\n min={80}\r\n path={\"data.style.height\"}\r\n label=\"ContainerHeight\"\r\n />\r\n
\r\n
\r\n ) : null}\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, selectedContainer.data.style.height === \"auto\" ? 200 : \"auto\", \"data.style.height\")}\r\n isChecked={selectedContainer.data.style.height === \"auto\"}\r\n />\r\n \r\n \r\n
\r\n
\r\n {cms.enviroment === sourceTypes.FORM ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n ) : null}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedContainer = null;\r\n if (enviroment === sourceTypes.FORM) selectedContainer = state.form.selectedContainer;\r\n if (enviroment === sourceTypes.PAGE) selectedContainer = state.page.selectedContainer;\r\n if (enviroment === sourceTypes.TEMPLATE) selectedContainer = state.template.selectedContainer;\r\n return {\r\n form: state.form,\r\n page: state.page,\r\n template: state.template.template,\r\n cms: state.cms,\r\n selectedContainer,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ContainerSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, InputGroup, FormGroup, Input } from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport Select from \"react-select\";\r\nimport Axios from \"axios\";\r\n\r\nclass CalendarInvitationSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false,\r\n invitations: [],\r\n };\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM) dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE) dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(element, template);\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n componentDidMount() {\r\n this.fetchCalendarInvitations();\r\n }\r\n\r\n fetchCalendarInvitations = () => {\r\n Axios.get(`./api/calendar/getCalendarInvites/${this.props.cms.eventId}`).then(({ data }) => {\r\n this.setState({\r\n invitations: data.map((d) => {\r\n return {\r\n value: d.calendarInviteId,\r\n label: d.name,\r\n };\r\n }),\r\n });\r\n });\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else if (e !== null) value = e.target.value;\r\n else return;\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: (styles) => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: \"1px solid gainsboro\",\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n };\r\n },\r\n };\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n i.value == selectedElement.data.invitationId)?.label,\r\n }\r\n : null\r\n }\r\n onChange={(selectedOption) => this.handleChange(null, selectedOption.value, \"data.invitationId\")}\r\n styles={selectStyles}\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `props.value`)}\r\n />\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM) selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE) selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE) selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(CalendarInvitationSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport { Input, Row, Col, Label } from \"reactstrap\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport CondtionTypeList from \"../../../../areas/form/conditions/components/CondtionTypeList\";\r\nimport DividerSettings from \"./DividerSettings\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport ImageSettings from \"./ImageSettings\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport MapSettings from \"./MapSettings\";\r\nimport ButtonSettings from \"./ButtonSettings\";\r\nimport TemplateButtonSettings from \"../../../../areas/template/components/ButtonSettings/ButtonSettings\";\r\nimport VideoSettings from \"./VideoSettings\";\r\nimport ContainerSettings from \"../../Container/Settings/ContainerSettings\";\r\nimport CalendarInvitationSettings from \"./CalendarInvitationSettings\";\r\n\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nfunction percentFormatter(v) {\r\n return `${v} %`;\r\n}\r\n\r\nclass ContentSettings extends React.Component {\r\n state = { activeTab: new Array(2).fill(\"1\"), isChange: false };\r\n componentDidMount() {\r\n this.setState({\r\n activeTab: new Array(2).fill(\"1\"),\r\n });\r\n }\r\n\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, cms, page } = this.props;\r\n const { enviroment } = cms;\r\n if (enviroment === sourceTypes.FORM) dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE) dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(element, template);\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n handleSlider(e, path) {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n\r\n if (path === \"data.style.width\") {\r\n selectedElement[names[0]][names[1]][names[2]] = e + \"%\";\r\n } else if (path === \"data.titleWidth\") {\r\n selectedElement.data.inputWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n } else if (path === \"data.inputWidth\") {\r\n selectedElement.data.titleWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n }\r\n this.handleSoftUpdate(selectedElement);\r\n }\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleChange = (e, path, val) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else value = e.target.value;\r\n\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n const spaceValue = element[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + \"px\";\r\n splitted = splitted.join(\" \");\r\n element[names[0]][names[1]] = splitted;\r\n } else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(\" \");\r\n newString[dir] = value + \"px\";\r\n\r\n element[names[0]][names[1]] = newString.join(\" \");\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n } else {\r\n return parseInt(splitted[0]);\r\n }\r\n };\r\n expandArea = (area) => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n render() {\r\n const { selectedElement, enviroment } = this.props;\r\n\r\n return (\r\n selectedElement && (\r\n \r\n
\r\n \r\n {/* */}\r\n {selectedElement.data.padding !== undefined ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 0)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 0)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 1)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 1)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 2)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 2)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 3)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 3)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n {selectedElement.data.margin !== undefined ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 0)}\r\n value={this.convertSpaceValue(selectedElement.data.margin, 0)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 1)}\r\n value={this.convertSpaceValue(selectedElement.data.margin, 1)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 2)}\r\n value={this.convertSpaceValue(selectedElement.data.margin, 2)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.margin`, 3)}\r\n value={this.convertSpaceValue(selectedElement.data.margin, 3)}\r\n />\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, \"data.backgroundColor\", color)} path=\"data.backgroundColor\" />\r\n \r\n \r\n
\r\n
\r\n {selectedElement.props.type === \"IMG\" ? : null}\r\n {selectedElement.props.type === \"MAP\" ? : null}\r\n {selectedElement.props.type === \"BUTTON\" ? (\r\n \r\n {\" \"}\r\n
{\" \"}\r\n \r\n \r\n {\" \"}\r\n
\r\n ) : null}\r\n {selectedElement.props.type === \"DIVIDER\" ? : null}\r\n {selectedElement.props.type === \"CALENDAR_INVITATION\" ? : null}\r\n {selectedElement.props.type === \"VIDEO\" ? : null}\r\n \r\n {this.props.form.selectedContainer ? : null}\r\n
\r\n
\r\n )\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM) selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE) selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE) selectedElement = state.template.selectedElement;\r\n return {\r\n form: state.form,\r\n page: state.page,\r\n template: state.template.template,\r\n cms: state.cms,\r\n selectedElement,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ContentSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport { Input, Row, Col, Label } from \"reactstrap\";\r\nimport { formActions } from \"../../../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport { deepClone } from \"../../../../../../helpers/objectHelper\";\r\nimport { AlignmentButtonGroup } from \"../../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport ListExpansion from \"../../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport EditorSlider from \"../../../../../components/editor/tools/EditorSlider\";\r\n\r\nclass InvoiceFieldSettings extends React.Component {\r\n handleChange = (color, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = color ? this.parseColorToRgba(color) : val;\r\n\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n handleSelectOnChange = (opt, path) => {\r\n const names = path.split(\".\");\r\n let selectedElement = deepClone(this.props.selectedElement);\r\n if (path === 'data.invoiceCountries') {\r\n const countryList = Array.from(selectedElement[names[0]][names[1]]);\r\n countryList.push(opt);\r\n selectedElement[names[0]][names[1]] = countryList;\r\n } else if (path === 'data.defaultCountry') {\r\n selectedElement[names[0]][names[1]] = opt.value;\r\n }\r\n this.props.dispatch(formActions.updateFormElement(selectedElement));\r\n }\r\n expandArea = area => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n const spaceValue = element[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + \"px\";\r\n splitted = splitted.join(\" \");\r\n element[names[0]][names[1]] = splitted;\r\n } else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(\" \");\r\n newString[dir] = value + \"px\";\r\n\r\n element[names[0]][names[1]] = newString.join(\" \");\r\n }\r\n this.props.dispatch(formActions.updateFormElement(element));\r\n };\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n } else {\r\n return parseInt(splitted[0]);\r\n }\r\n };\r\n render() {\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n\r\n \r\n \r\n
\r\n {selectedElement.data.padding !== undefined ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 0)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 0)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 1)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 1)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 2)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 2)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `data.padding`, 3)}\r\n value={this.convertSpaceValue(selectedElement.data.padding, 3)} />\r\n

\r\n
\r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n min={1}\r\n max={100}\r\n path={\"data.titleWidth\"}\r\n label=\"TitleColumnWidth\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n min={1}\r\n max={100}\r\n path={\"data.inputWidth\"}\r\n label=\"FieldColumnWidth\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n min={1}\r\n max={100}\r\n path={\"data.innerWidth\"}\r\n label=\"InnerWidth\"\r\n />\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n selectedElement: state.form.selectedElement\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(InvoiceFieldSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Col,\r\n Label,\r\n Row,\r\n TabContent,\r\n} from \"reactstrap\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport InvoiceFieldSettings from \"./InvoiceFieldSettings/InvoiceFieldSettings\";\r\nimport { ElementTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\n\r\nclass PaymentOptionSettings extends React.Component {\r\n state = { activeTab: new Array(2).fill(\"1\") };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n\r\n handlePaymentMethodChange = (e, method) => {\r\n let newElement = deepClone(this.props.element);\r\n if (!newElement.data) {\r\n newElement.data = { paymentMethods: [] };\r\n }\r\n if (e.target.checked) {\r\n newElement.data.paymentMethods.push(method);\r\n }\r\n else if (newElement.data.paymentMethods.indexOf(method) > -1) {\r\n newElement.data.paymentMethods.splice(newElement.data.paymentMethods.indexOf(method), 1);\r\n }\r\n this.props.dispatch(formActions.updateFormElement(newElement));\r\n };\r\n renderPaymentAlternatives = () => {\r\n const { form, element } = this.props;\r\n if (!element.data) {\r\n element.data = { paymentMethods: [] };\r\n }\r\n return (\r\n {form.availableModules.find(am => am.name === \"DIBS\") ?\r\n \r\n \r\n \r\n \r\n \r\n this.handlePaymentMethodChange(e, `dibs`)}\r\n isChecked={\r\n element.data.paymentMethods.includes(\"dibs\") || false\r\n }\r\n />\r\n \r\n \r\n : null\r\n }\r\n {form.availableModules.find(am => am.name === \"Invoice\") ?\r\n \r\n \r\n \r\n \r\n \r\n this.handlePaymentMethodChange(e, `invoice`)}\r\n isChecked={\r\n element.data.paymentMethods.includes(\"invoice\") || false\r\n }\r\n />\r\n \r\n \r\n : null\r\n }\r\n )\r\n };\r\n render() {\r\n const { activeTab } = this.state;\r\n return (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" ?\r\n \r\n {this.renderPaymentAlternatives()}\r\n \r\n : null}\r\n {this.state.activeTab[0] === \"2\" ?\r\n \r\n : null}\r\n {this.state.activeTab[0] === \"3\" ?\r\n null\r\n : null}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template,\r\n cms: state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PaymentOptionSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Input,\r\n Row,\r\n InputGroup,\r\n Col,\r\n Label\r\n} from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { content } from \"../../../../models/content\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { confirmationActions } from \"../../../../../store/actions/confirmation/confirmation.action\";\r\nimport Select from 'react-select'\r\nclass UserPageSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false,\r\n value: \"\"\r\n };\r\n componentDidMount() {\r\n this.props.dispatch(confirmationActions.getByEvent(this.props.page.eventId));\r\n }\r\n handleSoftUpdate = element => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(\r\n element,\r\n template\r\n );\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n setAttribute = (attr, path) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let element = deepClone(selectedElement);\r\n\r\n if (path === \"data.style\") {\r\n const defSettings = content.find(el => {\r\n return el.settings.type === element.data.type;\r\n });\r\n element.data.style = deepClone(defSettings.settings.style);\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = attr;\r\n } else {\r\n element[names[0]][names[1]] = attr;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n handleSlider(e, path) {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n\r\n if (path === \"data.style.width\") {\r\n selectedElement[names[0]][names[1]][names[2]] = e + \"%\";\r\n } else if (path === \"data.titleWidth\") {\r\n selectedElement.data.inputWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n } else if (path === \"data.inputWidth\") {\r\n selectedElement.data.titleWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n }\r\n this.handleSoftUpdate(selectedElement);\r\n }\r\n addressOnChange = e => {\r\n this.setState({ value: e.target.value });\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n handleChange(e, path, val) {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (e.target === undefined) value = e;\r\n else if (val) value = val;\r\n else value = e.target.value;\r\n\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n handleSelectOnChange = (selectedOption, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = selectedOption.value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = selectedOption.value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = selectedOption.value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const { selectedElement, confirmation } = this.props;\r\n let confirmationOptions = confirmation && confirmation.confirmationList ? confirmation.confirmationList.map(cl=> {\r\n return {label:cl.name, value:cl.confirmationId};\r\n }) : [];\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"data.style.height\")}\r\n type=\"number\"\r\n value={parseInt(selectedElement.data.style.height)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return t.value === selectedElement.data.confirmationId;\r\n })}\r\n onChange={selectedOption =>\r\n this.handleSelectOnChange(\r\n selectedOption,\r\n \"data.confirmationId\"\r\n )\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM)\r\n selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE)\r\n selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE)\r\n selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n confirmation:state.confirmation,\r\n selectedElement: selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(UserPageSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n Input\r\n} from \"reactstrap\";\r\nimport Select from 'react-select';\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { UseTemplateButton, SetStyleToAllOfItsType, SetToAuto } from \"../../components/UseTemplateButton\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { emptySpaceHandler } from \"./EmptySpace.handler\";\r\n\r\n\r\n\r\nclass EmptySpaceSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: []\r\n }\r\n handleSoftUpdate = element => {\r\n const { dispatch } = this.props;\r\n element.content = emptySpaceHandler.elementEditor(element.style);\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n }\r\n useTemplateStyle = (stylePath, templatePath) => {\r\n const { selectedElement, template } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n let templateCopy = deepClone(template)\r\n\r\n const styleParts = stylePath.split(\".\");\r\n const templateParts = templatePath.split(\".\");\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(\r\n styleParts,\r\n value,\r\n elementCopy.style\r\n );\r\n\r\n this.handleSoftUpdate(elementCopy);\r\n\r\n if (this.state.spreadActiveSet.includes(styleParts[styleParts.length - 1]) || this.state.spreadActiveSet.includes(styleParts[styleParts.length - 2] + styleParts[styleParts.length - 1])) {\r\n this.spreadStyle(elementCopy.type, styleParts, value)\r\n }\r\n\r\n }\r\n spreadStyle = (type, parts, value) => {\r\n const elementsCopy = Array.from(this.props.elements);\r\n if (elementsCopy.length === 0) return;\r\n const typeFamily = elementsCopy.filter(el => el.type === type);\r\n if (typeFamily.length === 0) return;\r\n typeFamily.map(tf => {\r\n let newEl = deepClone(tf);\r\n newEl.content = emptySpaceHandler.elementEditor(newEl.style);\r\n newEl.style = setValueToNestedObject(\r\n parts,\r\n value,\r\n newEl.style\r\n );\r\n this.handleSoftUpdate(newEl);\r\n });\r\n }\r\n handleChange = (e, val, path) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let elementCopy = deepClone(selectedElement);\r\n let value = val;\r\n if (val && val.hex !== undefined) {\r\n value = templateHelper.parseRgbaToHex(val)\r\n }\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n value,\r\n elementCopy.style\r\n );\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, value)\r\n }\r\n }\r\n spreadToggler = (name) => {\r\n let spreadActiveSet = Array.from(this.state.spreadActiveSet);\r\n if (spreadActiveSet.includes(name)) {\r\n spreadActiveSet = spreadActiveSet.filter(n => { return n !== name });\r\n }\r\n else {\r\n spreadActiveSet.push(name)\r\n }\r\n this.setState({ spreadActiveSet });\r\n }\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const elementCopy = deepClone(this.props.selectedElement);\r\n const spaceValue = elementCopy.style[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n let baseValue = '';\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n baseValue = splitted;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n splitted,\r\n elementCopy.style\r\n );\r\n }\r\n else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n baseValue = newString;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n newString,\r\n elementCopy.style\r\n );\r\n }\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, baseValue)\r\n }\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n }\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, color, \"styleProps.backgroundColor\")\r\n }\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n this.useTemplateStyle(\r\n \"styleProps.backgroundColor\",\r\n \"main.backgroundColor\"\r\n )}\r\n active={(selectedElement.style.styleProps.backgroundColor === template.content.main.backgroundColor)}\r\n />\r\n this.spreadToggler('backgroundColor')}\r\n active={this.state.spreadActiveSet.includes('backgroundColor')}\r\n />\r\n
\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={1000}\r\n min={1}\r\n path={'styleProps.height'}\r\n label=\"Height\"\r\n />\r\n \r\n \r\n this.spreadToggler('height')}\r\n active={this.state.spreadActiveSet.includes('height')}\r\n />\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n template: state.template.template,\r\n inherit: state.email.inherit,\r\n selectedElement: state.email.selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(EmptySpaceSettings);\r\n","import React from 'react';\r\nimport { Row, Col, Form, FormGroup, Label, Input, FormText } from 'reactstrap';\r\nimport './TagSection.css'\r\nimport { createTagDictionary } from '../models/tagDictionary';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport clsx from 'clsx';\r\nimport { connect } from 'react-redux';\r\nimport Card from '@material-ui/core/Card';\r\nimport CardHeader from '@material-ui/core/CardHeader';\r\nimport CardMedia from '@material-ui/core/CardMedia';\r\nimport CardContent from '@material-ui/core/CardContent';\r\nimport CardActions from '@material-ui/core/CardActions';\r\nimport Collapse from '@material-ui/core/Collapse';\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { red } from '@material-ui/core/colors';\r\nimport FavoriteIcon from '@material-ui/icons/Favorite';\r\nimport ShareIcon from '@material-ui/icons/Share';\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\r\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\r\nimport HelpIcon from '@material-ui/icons/Help';\r\nimport HelpOutlineOutlinedIcon from '@material-ui/icons/HelpOutlineOutlined';\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport Chip from '@material-ui/core/Chip';\r\nimport FaceIcon from '@material-ui/icons/Face';\r\nimport DoneIcon from '@material-ui/icons/Done';\r\nimport AddCircleOutlinedIcon from '@material-ui/icons/AddCircleOutlined';\r\nimport { cmsActions } from '../../../../store/actions/cms/cms.action';\r\nimport SystemLabel from '../../../../system/SystemLabel/SystemLabel';\r\n\r\n\r\n\r\nfunction RecipeReviewCard(props) {\r\n const [expanded, setExpanded] = React.useState(false);\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const handleExpandClick = () => {\r\n setExpanded(!expanded);\r\n };\r\n const handleClick = event => {\r\n setAnchorEl(event.currentTarget);\r\n props.dispatch(cmsActions.blockDeselect(true))\r\n //load all colors from template\r\n };\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n setTimeout(() => props.dispatch(cmsActions.blockDeselect(false)), 2000)\r\n };\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n return (\r\n \r\n \r\n {props.icon}\r\n \r\n }\r\n action={\r\n \r\n {/* {expanded ? \r\n \r\n : null} */}\r\n \r\n \r\n \r\n \r\n }\r\n style={{ textAlign: 'left', padding: '10px 16px' }}\r\n title={}\r\n />\r\n \r\n {props.tooltipComponent}\r\n \r\n \r\n \r\n {props.children}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return state\r\n}\r\nexport default connect(mapStateToProps)(RecipeReviewCard);","import React from 'react';\r\nimport './TagSection.css'\r\nimport { createTagDictionary } from '../models/tagDictionary';\r\nimport Chip from '@material-ui/core/Chip';\r\nimport RecipeReviewCard from './RecipeReviewCard';\r\n\r\nexport const TagSection = ({ tags, onAdd }) => {\r\n const editorTags = createTagDictionary();\r\n return (\r\n
\r\n {editorTags.map((t, i) => {\r\n return (\r\n \r\n
\r\n {t.tags.map((ti, i2) => {\r\n return (\r\n onAdd(ti.editFacade)}\r\n />\r\n )\r\n })}\r\n
\r\n
\r\n )\r\n })}\r\n
\r\n )\r\n}","import React from 'react'\r\nimport { TagSection } from '../components/TagSection'\r\nimport './TagToolbar.css';\r\n\r\nexport class TagToolbar extends React.Component {\r\n addTag = () => {\r\n\r\n }\r\n render() {\r\n const { onAdd } = this.props;\r\n return (\r\n \r\n )\r\n }\r\n}","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n Input,\r\n InputGroup,\r\n TabContent\r\n} from \"reactstrap\";\r\nimport Select from 'react-select';\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { UseTemplateButton, SetStyleToAllOfItsType, SetToAuto } from \"../../components/UseTemplateButton\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { textAreaHandler } from \"./TextArea.handler\";\r\nimport { emailFonts } from \"../../models/emailFonts/emailFonts\";\r\nimport { ElementTabGroup, TextCustomedTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport { TagToolbar } from \"../../../tags/containers/TagToolbar\";\r\n\r\n\r\n\r\nclass TextAreaSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: [],\r\n activeTab: new Array(2).fill(\"1\")\r\n }\r\n handleSoftUpdate = element => {\r\n const { dispatch } = this.props;\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n }\r\n useTemplateStyle = (stylePath, templatePath) => {\r\n const { selectedElement, template } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n let templateCopy = deepClone(template)\r\n const styleParts = stylePath.split(\".\");\r\n const templateParts = templatePath.split(\".\");\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(\r\n styleParts,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.style.inheritedStyles.push({ templatePath, stylePath });\r\n\r\n this.handleSoftUpdate(elementCopy);\r\n\r\n if (this.state.spreadActiveSet.includes(styleParts[styleParts.length - 1]) || this.state.spreadActiveSet.includes(styleParts[styleParts.length - 2] + styleParts[styleParts.length - 1])) {\r\n this.spreadStyle(elementCopy.type, styleParts, value, templatePath)\r\n }\r\n\r\n }\r\n inheritedStylesControl = (selectedElement, val, templatePath, stylePath) => {\r\n const { template } = this.props;\r\n if (!selectedElement.style.inheritedStyles ||\r\n selectedElement.style.inheritedStyles.length === 0) {\r\n return;\r\n }\r\n let templateCopy = deepClone(template)\r\n const newElement = deepClone(selectedElement);\r\n const templateParts = templatePath.split(\".\");\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n if (value !== val) {\r\n newElement.style.inheritedStyles = newElement.style.inheritedStyles.filter(s => s.templatePath !== templatePath);\r\n }\r\n else {\r\n\r\n newElement.style.inheritedStyles.push({ templatePath: templatePath, stylePath: stylePath })\r\n }\r\n return newElement;\r\n }\r\n handleChange = (e, val, path, templatePath = null) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let elementCopy = deepClone(selectedElement);\r\n let value = val;\r\n if (val && val.hex !== undefined) {\r\n /* value = templateHelper.parseColorToRgba(val) */\r\n value = templateHelper.parseRgbaToHex(val)\r\n }\r\n if (templatePath !== null) {\r\n elementCopy = this.inheritedStylesControl(elementCopy, value, templatePath, path)\r\n }\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.content = textAreaHandler.elementEditor(elementCopy.style);\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, value, templatePath)\r\n }\r\n }\r\n spreadStyle = (type, parts, value, templatePath = null) => {\r\n const elementsCopy = Array.from(this.props.elements);\r\n const { selectedElement } = this.props;\r\n if (elementsCopy.length === 0) return;\r\n const typeFamily = elementsCopy.filter(el => el.type === type && el.id !== selectedElement.id);\r\n if (typeFamily.length > 0) {\r\n typeFamily.map(tf => {\r\n let newEl = deepClone(tf);\r\n newEl.style = setValueToNestedObject(\r\n parts,\r\n value,\r\n newEl.style\r\n );\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n parts.join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n });\r\n }\r\n if (selectedElement.families.length > 0) {\r\n const typeFamilyTree = elementsCopy.filter(el => el.families && el.families.length > 0 && el.id !== selectedElement.id);\r\n if (typeFamilyTree.length === 0) return;\r\n selectedElement.families.map(f => {\r\n typeFamilyTree.map(tf => {\r\n if (tf.families.includes(f)) {\r\n let newEl = deepClone(tf);\r\n if (tf.families.length > 1) {\r\n if (newEl.style[f + 'Style'] !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n [f + 'Style', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n else {\r\n if (newEl.style.styleProps !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n ['styleProps', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n tf.families.length > 1 ?\r\n [f + 'Style', parts[parts.length - 1]].join('.') :\r\n ['styleProps', parts[parts.length - 1]].join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n }\r\n })\r\n })\r\n\r\n }\r\n }\r\n spreadToggler = (name) => {\r\n let spreadActiveSet = Array.from(this.state.spreadActiveSet);\r\n if (spreadActiveSet.includes(name)) {\r\n spreadActiveSet = spreadActiveSet.filter(n => { return n !== name });\r\n }\r\n else {\r\n spreadActiveSet.push(name)\r\n }\r\n this.setState({ spreadActiveSet });\r\n }\r\n handleSpaceOnChange = (e, path, dir) => {\r\n\r\n const names = path.split(\".\");\r\n const elementCopy = deepClone(this.props.selectedElement);\r\n const spaceValue = elementCopy.style[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n let baseValue = '';\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n baseValue = splitted;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n splitted,\r\n elementCopy.style\r\n );\r\n }\r\n else {\r\n let newString = `${splitted[0]} ${splitted[0]} ${splitted[0]} ${splitted[0]}`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n baseValue = newString;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n newString.join(' '),\r\n elementCopy.style\r\n );\r\n }\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, baseValue)\r\n }\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n }\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n onAddTag = (tag) => {\r\n const { selectedElement } = this.props;\r\n if (selectedElement.style.elementProps.editor)\r\n selectedElement.style.elementProps.editor.selection.setContent(tag, { format: 'raw' })\r\n }\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: '1px solid gainsboro'\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n };\r\n }\r\n };\r\n return (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, color, \"wrapper.backgroundColor\")\r\n }\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n this.useTemplateStyle(\r\n \"wrapper.backgroundColor\",\r\n \"content.backgroundColor\"\r\n )}\r\n active={(selectedElement.style.wrapper.backgroundColor === template.content.content.backgroundColor)}\r\n />\r\n this.spreadToggler('backgroundColor')}\r\n active={this.state.spreadActiveSet.includes('backgroundColor')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, color, \"styleProps.color\")\r\n }\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n this.useTemplateStyle(\r\n \"styleProps.color\",\r\n \"text.color\"\r\n )}\r\n active={(selectedElement.style.styleProps.color === template.content.text.color)}\r\n />\r\n this.spreadToggler('color')}\r\n active={this.state.spreadActiveSet.includes('color')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `styleProps.padding`, 0)}\r\n value={this.convertSpaceValue(selectedElement.style.styleProps.padding, 0)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `styleProps.padding`, 1)}\r\n value={this.convertSpaceValue(selectedElement.style.styleProps.padding, 1)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `styleProps.padding`, 2)}\r\n value={this.convertSpaceValue(selectedElement.style.styleProps.padding, 2)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `styleProps.padding`, 3)}\r\n value={this.convertSpaceValue(selectedElement.style.styleProps.padding, 3)} />\r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n this.spreadToggler('padding')}\r\n active={this.state.spreadActiveSet.includes('padding')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, selectedOption.value, 'styleProps.fontFamily')\r\n }\r\n styles={selectStyles}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.spreadToggler('fontFamily')}\r\n active={this.state.spreadActiveSet.includes('fontFamily')}\r\n />\r\n
\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={500}\r\n min={1}\r\n extraParam={'text.fontSize'}\r\n path={'styleProps.fontSize'}\r\n label=\"FontSize\"\r\n />\r\n \r\n \r\n this.useTemplateStyle(\r\n \"styleProps.fontSize\",\r\n \"text.fontSize\"\r\n )}\r\n active={(selectedElement.style.styleProps.fontSize === template.content.text.fontSize)}\r\n />\r\n this.spreadToggler('fontSize')}\r\n active={this.state.spreadActiveSet.includes('fontSize')}\r\n />\r\n
\r\n \r\n
\r\n
\r\n \r\n )}\r\n {this.state.activeTab[0] === \"2\" && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n inherit: state.email.inherit,\r\n template: state.template.template,\r\n selectedElement: state.email.selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TextAreaSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n Input,\r\n InputGroup,\r\n TabContent\r\n} from \"reactstrap\";\r\nimport Select from 'react-select';\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { UseTemplateButton, SetStyleToAllOfItsType, SetToAuto } from \"../../components/UseTemplateButton\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { backgroundWithImageHandler } from \"./BackgroundImageWithText.handler\";\r\nimport { emailFonts } from \"../../models/emailFonts/emailFonts\";\r\nimport { TextCustomedTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport { TagToolbar } from \"../../../tags/containers/TagToolbar\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\n/* import Resizer from 'react-image-file-resizer';\r\nimport Axios from \"axios\"; */\r\n\r\n\r\nclass LargeImageWithTextSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: [],\r\n activeTab: new Array(2).fill(\"1\")\r\n }\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n handleSoftUpdate = element => {\r\n const { dispatch } = this.props;\r\n /* element.content = textAreaHandler.elementEditor(element.style); */\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n }\r\n useTemplateStyle = (stylePath, templatePath) => {\r\n const { selectedElement, template } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n let templateCopy = deepClone(template)\r\n const styleParts = stylePath.split(\".\");\r\n const templateParts = templatePath.split(\".\");\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(\r\n styleParts,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.style.inheritedStyles.push({ templatePath, stylePath });\r\n\r\n this.handleSoftUpdate(elementCopy);\r\n\r\n if (this.state.spreadActiveSet.includes(styleParts[styleParts.length - 1]) || this.state.spreadActiveSet.includes(styleParts[styleParts.length - 2] + styleParts[styleParts.length - 1])) {\r\n this.spreadStyle(elementCopy.type, styleParts, value, templatePath)\r\n }\r\n\r\n }\r\n /* resizeFile = (file) => new Promise(resolve => {\r\n\r\n Resizer.imageFileResizer(file, 300, 300, 'JPEG', 100, 0,\r\n uri => {\r\n resolve(uri);\r\n },\r\n 'base64'\r\n );\r\n }); */\r\n inheritedStylesControl = (selectedElement, val, templatePath, stylePath) => {\r\n const { template } = this.props;\r\n if (!selectedElement.style.inheritedStyles ||\r\n selectedElement.style.inheritedStyles.length === 0) {\r\n return;\r\n }\r\n let templateCopy = deepClone(template)\r\n const newElement = deepClone(selectedElement);\r\n const templateParts = templatePath.split(\".\");\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n if (value !== val) {\r\n newElement.style.inheritedStyles = newElement.style.inheritedStyles.filter(s => s.templatePath !== templatePath);\r\n }\r\n else {\r\n\r\n newElement.style.inheritedStyles.push({ templatePath: templatePath, stylePath: stylePath })\r\n }\r\n return newElement;\r\n }\r\n handleChange = (e, val, path, templatePath = null) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let elementCopy = deepClone(selectedElement);\r\n let value = val;\r\n if (val && val.hex !== undefined) {\r\n value = templateHelper.parseColorToRgba(val)\r\n }\r\n if (templatePath !== null) {\r\n elementCopy = this.inheritedStylesControl(elementCopy, value, templatePath, path)\r\n }\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.content = backgroundWithImageHandler.elementEditor(elementCopy.style);\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, value, templatePath)\r\n }\r\n }\r\n spreadStyle = (type, parts, value, templatePath = null) => {\r\n const elementsCopy = Array.from(this.props.elements);\r\n const { selectedElement } = this.props;\r\n if (elementsCopy.length === 0) return;\r\n const typeFamily = elementsCopy.filter(el => el.type === type && el.id !== selectedElement.id);\r\n if (typeFamily.length > 0) {\r\n typeFamily.map(tf => {\r\n let newEl = deepClone(tf);\r\n newEl.style = setValueToNestedObject(\r\n parts,\r\n value,\r\n newEl.style\r\n );\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n parts.join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n });\r\n }\r\n if (selectedElement.families.length > 0) {\r\n const typeFamilyTree = elementsCopy.filter(el => el.families && el.families.length > 0 && el.id !== selectedElement.id);\r\n if (typeFamilyTree.length === 0) return;\r\n selectedElement.families.map(f => {\r\n typeFamilyTree.map(tf => {\r\n if (tf.families.includes(f)) {\r\n let newEl = deepClone(tf);\r\n if (tf.families.length > 1) {\r\n if (newEl.style[f + 'Style'] !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n [f + 'Style', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n else {\r\n if (newEl.style.styleProps !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n ['styleProps', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n tf.families.length > 1 ?\r\n [f + 'Style', parts[parts.length - 1]].join('.') :\r\n ['styleProps', parts[parts.length - 1]].join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n }\r\n })\r\n })\r\n\r\n }\r\n }\r\n onAddTag = (tag) => {\r\n const { selectedElement } = this.props;\r\n if (selectedElement.style.elementProps.editor)\r\n selectedElement.style.elementProps.editor.selection.setContent(tag, { format: 'raw' })\r\n }\r\n spreadToggler = (name) => {\r\n let spreadActiveSet = Array.from(this.state.spreadActiveSet);\r\n if (spreadActiveSet.includes(name)) {\r\n spreadActiveSet = spreadActiveSet.filter(n => { return n !== name });\r\n }\r\n else {\r\n spreadActiveSet.push(name)\r\n }\r\n this.setState({ spreadActiveSet });\r\n }\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const elementCopy = deepClone(this.props.selectedElement);\r\n const spaceValue = elementCopy.style[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n let baseValue = '';\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n baseValue = splitted;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n splitted,\r\n elementCopy.style\r\n );\r\n }\r\n else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n baseValue = newString;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n newString.join(' '),\r\n elementCopy.style\r\n );\r\n }\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, baseValue)\r\n }\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n }\r\n setImage = async (value) => {\r\n this.handleChange(null, value, 'elementProps.source')\r\n const { dispatch, cms } = this.props;\r\n setTimeout(() => dispatch(cmsActions.blockDeselect(false)), 2000)\r\n }\r\n blockDeselect = (status) => {\r\n const { dispatch, cms } = this.props;\r\n dispatch(cmsActions.blockDeselect(status));\r\n }\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: '1px solid gainsboro'\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n };\r\n }\r\n };\r\n return (\r\n \r\n\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {template && template.content.main.backgroundUrl && (\r\n this.handleChange(null, `url('${template.content.main.backgroundUrl}')`, 'elementProps.source')}\r\n alt=\"\"\r\n src={selectedElement.style.elementProps.source}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, color, \"textStyle.color\")\r\n }\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n this.spreadToggler('color')}\r\n active={this.state.spreadActiveSet.includes('color')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.handleSpaceOnChange(e, `textStyle.padding`, 0)}\r\n value={this.convertSpaceValue(selectedElement.style.textStyle.padding, 0)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `textStyle.padding`, 1)}\r\n value={this.convertSpaceValue(selectedElement.style.textStyle.padding, 1)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `textStyle.padding`, 2)}\r\n value={this.convertSpaceValue(selectedElement.style.textStyle.padding, 2)} />\r\n

\r\n
\r\n
\r\n this.handleSpaceOnChange(e, `textStyle.padding`, 3)}\r\n value={this.convertSpaceValue(selectedElement.style.textStyle.padding, 3)} />\r\n

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n this.spreadToggler('padding')}\r\n active={this.state.spreadActiveSet.includes('padding')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, selectedOption.value, 'textStyle.fontFamily')\r\n }\r\n styles={selectStyles}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.spreadToggler('fontFamily')}\r\n active={this.state.spreadActiveSet.includes('fontFamily')}\r\n />\r\n
\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={500}\r\n min={1}\r\n extraParam={'text.fontSize'}\r\n path={'textStyle.fontSize'}\r\n label=\"FontSize\"\r\n />\r\n \r\n \r\n this.useTemplateStyle(\r\n \"textStyle.fontSize\",\r\n \"text.fontSize\"\r\n )}\r\n active={(selectedElement.style.textStyle.fontSize === template.content.text.fontSize)}\r\n />\r\n this.spreadToggler('fontSize')}\r\n active={this.state.spreadActiveSet.includes('fontSize')}\r\n />\r\n
\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={500}\r\n min={1}\r\n path={'textStyle.lineHeight'}\r\n label=\"LineHeight\"\r\n />\r\n \r\n \r\n this.spreadToggler('lineHeight')}\r\n active={this.state.spreadActiveSet.includes('lineHeight')}\r\n />\r\n
\r\n \r\n
\r\n \r\n
)}\r\n\r\n {this.state.activeTab[0] === \"2\" && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n template: state.template.template,\r\n inherit: state.email.inherit,\r\n selectedElement: state.email.selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(LargeImageWithTextSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport { Row, Col, Label, Input, InputGroup, TabContent } from \"reactstrap\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\n\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { largeHeaderImageHandler } from \"./LargeHeaderImage.handler\";\r\n\r\nimport PhotoSizeSelectLargeIcon from \"@material-ui/icons/PhotoSizeSelectLarge\";\r\n\r\nclass LargeHeaderImageSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: [],\r\n activeTab: new Array(2).fill(\"1\"),\r\n };\r\n handleSoftUpdate = (element) => {\r\n const { dispatch } = this.props;\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n };\r\n useTemplateStyle = (stylePath, templatePath) => {\r\n const { selectedElement, template } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n let templateCopy = deepClone(template);\r\n const styleParts = stylePath.split(\".\");\r\n const templateParts = templatePath.split(\".\");\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(styleParts, value, elementCopy.style);\r\n elementCopy.style.inheritedStyles.push({ templatePath, stylePath });\r\n\r\n this.handleSoftUpdate(elementCopy);\r\n\r\n if (this.state.spreadActiveSet.includes(styleParts[styleParts.length - 1]) || this.state.spreadActiveSet.includes(styleParts[styleParts.length - 2] + styleParts[styleParts.length - 1])) {\r\n this.spreadStyle(elementCopy.type, styleParts, value, templatePath);\r\n }\r\n };\r\n inheritedStylesControl = (selectedElement, val, templatePath, stylePath) => {\r\n const { template } = this.props;\r\n if (!selectedElement.style.inheritedStyles || selectedElement.style.inheritedStyles.length === 0) {\r\n return;\r\n }\r\n let templateCopy = deepClone(template);\r\n const newElement = deepClone(selectedElement);\r\n const templateParts = templatePath.split(\".\");\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n if (value !== val) {\r\n newElement.style.inheritedStyles = newElement.style.inheritedStyles.filter((s) => s.templatePath !== templatePath);\r\n } else {\r\n newElement.style.inheritedStyles.push({ templatePath: templatePath, stylePath: stylePath });\r\n }\r\n return newElement;\r\n };\r\n handleChange = (e, val, path, templatePath = null) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let elementCopy = deepClone(selectedElement);\r\n let value = val;\r\n if (val && val.hex !== undefined) {\r\n /* value = templateHelper.parseColorToRgba(val) */\r\n value = templateHelper.parseRgbaToHex(val);\r\n }\r\n /* if (templatePath !== null) {\r\n elementCopy = this.inheritedStylesControl(elementCopy, value, templatePath, path)\r\n } */\r\n elementCopy.style = setValueToNestedObject(names, value, elementCopy.style);\r\n elementCopy.content = largeHeaderImageHandler.elementEditor(elementCopy.style);\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, value, templatePath);\r\n }\r\n };\r\n spreadStyle = (type, parts, value, templatePath = null) => {\r\n const elementsCopy = Array.from(this.props.elements);\r\n const { selectedElement } = this.props;\r\n if (elementsCopy.length === 0) return;\r\n const typeFamily = elementsCopy.filter((el) => el.type === type && el.id !== selectedElement.id);\r\n if (typeFamily.length > 0) {\r\n typeFamily.map((tf) => {\r\n let newEl = deepClone(tf);\r\n newEl.style = setValueToNestedObject(parts, value, newEl.style);\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(newEl, value, templatePath, parts.join(\".\"));\r\n }\r\n this.handleSoftUpdate(newEl);\r\n });\r\n }\r\n if (selectedElement.families.length > 0) {\r\n const typeFamilyTree = elementsCopy.filter((el) => el.families && el.families.length > 0 && el.id !== selectedElement.id);\r\n if (typeFamilyTree.length === 0) return;\r\n selectedElement.families.map((f) => {\r\n typeFamilyTree.map((tf) => {\r\n if (tf.families.includes(f)) {\r\n let newEl = deepClone(tf);\r\n if (tf.families.length > 1) {\r\n if (newEl.style[f + \"Style\"] !== undefined) {\r\n newEl.style = setValueToNestedObject([f + \"Style\", parts[parts.length - 1]], value, newEl.style);\r\n }\r\n } else {\r\n if (newEl.style.styleProps !== undefined) {\r\n newEl.style = setValueToNestedObject([\"styleProps\", parts[parts.length - 1]], value, newEl.style);\r\n }\r\n }\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n tf.families.length > 1 ? [f + \"Style\", parts[parts.length - 1]].join(\".\") : [\"styleProps\", parts[parts.length - 1]].join(\".\")\r\n );\r\n }\r\n this.handleSoftUpdate(newEl);\r\n }\r\n });\r\n });\r\n }\r\n };\r\n spreadToggler = (name) => {\r\n let spreadActiveSet = Array.from(this.state.spreadActiveSet);\r\n if (spreadActiveSet.includes(name)) {\r\n spreadActiveSet = spreadActiveSet.filter((n) => {\r\n return n !== name;\r\n });\r\n } else {\r\n spreadActiveSet.push(name);\r\n }\r\n this.setState({ spreadActiveSet });\r\n };\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const elementCopy = deepClone(this.props.selectedElement);\r\n const spaceValue = elementCopy.style[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(\" \");\r\n let baseValue = \"\";\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + \"px\";\r\n splitted = splitted.join(\" \");\r\n baseValue = splitted;\r\n elementCopy.style = setValueToNestedObject(names, splitted, elementCopy.style);\r\n } else {\r\n let newString = `${splitted[0]} ${splitted[0]} ${splitted[0]} ${splitted[0]}`;\r\n newString = newString.split(\" \");\r\n newString[dir] = value + \"px\";\r\n baseValue = newString;\r\n elementCopy.style = setValueToNestedObject(names, newString.join(\" \"), elementCopy.style);\r\n }\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, baseValue);\r\n }\r\n };\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(\" \");\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n } else {\r\n return parseInt(splitted[0]);\r\n }\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n onAddTag = (tag) => {\r\n const { selectedElement } = this.props;\r\n if (selectedElement.style.elementProps.editor) selectedElement.style.elementProps.editor.selection.setContent(tag, { format: \"raw\" });\r\n };\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: (styles) => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: \"1px solid gainsboro\",\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n };\r\n },\r\n };\r\n return (\r\n \r\n
\r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n } description=\"Size\" defaultExpanded={true}>\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={\"px\"}\r\n attachUnit={true}\r\n steps={1}\r\n max={800}\r\n min={1}\r\n extraParam={\"text.height\"}\r\n path={\"elementProps.height\"}\r\n label=\"MaxHeight\"\r\n />\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={\"px\"}\r\n attachUnit={true}\r\n steps={1}\r\n max={680}\r\n min={1}\r\n extraParam={\"text.height\"}\r\n path={\"elementProps.width\"}\r\n label=\"Width\"\r\n />\r\n \r\n )}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n inherit: state.email.inherit,\r\n template: state.template.template,\r\n selectedElement: state.email.selectedElement,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(LargeHeaderImageSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n Input,\r\n InputGroup,\r\n TabContent\r\n} from \"reactstrap\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\n\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { smallHeaderImageHandler } from \"./SmallHeaderImage.handler\";\r\n\r\nimport PhotoSizeSelectLargeIcon from '@material-ui/icons/PhotoSizeSelectLarge';\r\n\r\n\r\nclass SmallHeaderImageSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: [],\r\n activeTab: new Array(2).fill(\"1\")\r\n }\r\n handleSoftUpdate = element => {\r\n const { dispatch } = this.props;\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n }\r\n useTemplateStyle = (stylePath, templatePath) => {\r\n const { selectedElement, template } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n let templateCopy = deepClone(template)\r\n const styleParts = stylePath.split(\".\");\r\n const templateParts = templatePath.split(\".\");\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(\r\n styleParts,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.style.inheritedStyles.push({ templatePath, stylePath });\r\n\r\n this.handleSoftUpdate(elementCopy);\r\n\r\n if (this.state.spreadActiveSet.includes(styleParts[styleParts.length - 1]) || this.state.spreadActiveSet.includes(styleParts[styleParts.length - 2] + styleParts[styleParts.length - 1])) {\r\n this.spreadStyle(elementCopy.type, styleParts, value, templatePath)\r\n }\r\n\r\n }\r\n inheritedStylesControl = (selectedElement, val, templatePath, stylePath) => {\r\n const { template } = this.props;\r\n if (!selectedElement.style.inheritedStyles ||\r\n selectedElement.style.inheritedStyles.length === 0) {\r\n return;\r\n }\r\n let templateCopy = deepClone(template)\r\n const newElement = deepClone(selectedElement);\r\n const templateParts = templatePath.split(\".\");\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n if (value !== val) {\r\n newElement.style.inheritedStyles = newElement.style.inheritedStyles.filter(s => s.templatePath !== templatePath);\r\n }\r\n else {\r\n\r\n newElement.style.inheritedStyles.push({ templatePath: templatePath, stylePath: stylePath })\r\n }\r\n return newElement;\r\n }\r\n handleChange = (e, val, path, templatePath = null) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let elementCopy = deepClone(selectedElement);\r\n let value = val;\r\n if (val && val.hex !== undefined) {\r\n /* value = templateHelper.parseColorToRgba(val) */\r\n value = templateHelper.parseRgbaToHex(val)\r\n }\r\n /* if (templatePath !== null) {\r\n elementCopy = this.inheritedStylesControl(elementCopy, value, templatePath, path)\r\n } */\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.content = smallHeaderImageHandler.elementEditor(elementCopy.style);\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, value, templatePath)\r\n }\r\n }\r\n spreadStyle = (type, parts, value, templatePath = null) => {\r\n const elementsCopy = Array.from(this.props.elements);\r\n const { selectedElement } = this.props;\r\n if (elementsCopy.length === 0) return;\r\n const typeFamily = elementsCopy.filter(el => el.type === type && el.id !== selectedElement.id);\r\n if (typeFamily.length > 0) {\r\n typeFamily.map(tf => {\r\n let newEl = deepClone(tf);\r\n newEl.style = setValueToNestedObject(\r\n parts,\r\n value,\r\n newEl.style\r\n );\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n parts.join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n });\r\n }\r\n if (selectedElement.families.length > 0) {\r\n const typeFamilyTree = elementsCopy.filter(el => el.families && el.families.length > 0 && el.id !== selectedElement.id);\r\n if (typeFamilyTree.length === 0) return;\r\n selectedElement.families.map(f => {\r\n typeFamilyTree.map(tf => {\r\n if (tf.families.includes(f)) {\r\n let newEl = deepClone(tf);\r\n if (tf.families.length > 1) {\r\n if (newEl.style[f + 'Style'] !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n [f + 'Style', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n else {\r\n if (newEl.style.styleProps !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n ['styleProps', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n tf.families.length > 1 ?\r\n [f + 'Style', parts[parts.length - 1]].join('.') :\r\n ['styleProps', parts[parts.length - 1]].join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n }\r\n })\r\n })\r\n\r\n }\r\n }\r\n spreadToggler = (name) => {\r\n let spreadActiveSet = Array.from(this.state.spreadActiveSet);\r\n if (spreadActiveSet.includes(name)) {\r\n spreadActiveSet = spreadActiveSet.filter(n => { return n !== name });\r\n }\r\n else {\r\n spreadActiveSet.push(name)\r\n }\r\n this.setState({ spreadActiveSet });\r\n }\r\n handleSpaceOnChange = (e, path, dir) => {\r\n\r\n const names = path.split(\".\");\r\n const elementCopy = deepClone(this.props.selectedElement);\r\n const spaceValue = elementCopy.style[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n let baseValue = '';\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n baseValue = splitted;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n splitted,\r\n elementCopy.style\r\n );\r\n }\r\n else {\r\n let newString = `${splitted[0]} ${splitted[0]} ${splitted[0]} ${splitted[0]}`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n baseValue = newString;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n newString.join(' '),\r\n elementCopy.style\r\n );\r\n }\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, baseValue)\r\n }\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n }\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n onAddTag = (tag) => {\r\n const { selectedElement } = this.props;\r\n if (selectedElement.style.elementProps.editor)\r\n selectedElement.style.elementProps.editor.selection.setContent(tag, { format: 'raw' })\r\n }\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: '1px solid gainsboro'\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n };\r\n }\r\n };\r\n return (\r\n \r\n
\r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n }\r\n description=\"Size\"\r\n defaultExpanded={true}\r\n >\r\n \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={800}\r\n min={1}\r\n extraParam={'text.height'}\r\n path={'styleProps.height'}\r\n label=\"Height\"\r\n />\r\n \r\n \r\n )}\r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n inherit: state.email.inherit,\r\n template: state.template.template,\r\n selectedElement: state.email.selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(SmallHeaderImageSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col,\r\n Label, FormGroup, Input\r\n} from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ArchiveContainer from \"../../../../../file/containers/ArchiveContainer\";\r\nimport { content } from \"../../../../models/content\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport Select from 'react-select';\r\nimport ImageAspectRatioIcon from '@material-ui/icons/ImageAspectRatio';\r\nimport { cms } from \"../../../../../store/reducers/cms/cms.reducer\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\n\r\nconst shapes = [\r\n { value: 'CIRCLE', label: },\r\n { value: 'SQUARE', label: },\r\n\r\n]\r\n\r\nclass ProfileImageUploaderSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false\r\n };\r\n handleSoftUpdate = element => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM)\r\n dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(\r\n element,\r\n template\r\n );\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n setAttribute = (attr, path) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let element = deepClone(selectedElement);\r\n\r\n if (path === \"data.style\") {\r\n const defSettings = content.find(el => {\r\n return el.settings.type === element.data.type;\r\n });\r\n element.data.style = deepClone(defSettings.settings.style);\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = attr;\r\n } else {\r\n element[names[0]][names[1]] = attr;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n handleSlider(e, path) {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n\r\n if (path === \"data.style.width\") {\r\n selectedElement[names[0]][names[1]][names[2]] = e + \"%\";\r\n } else if (path === \"data.titleWidth\") {\r\n selectedElement.data.inputWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n } else if (path === \"data.inputWidth\") {\r\n selectedElement.data.titleWidth = 100 - e;\r\n selectedElement[names[0]][names[1]] = e /* + '%' */;\r\n }\r\n this.handleSoftUpdate(selectedElement);\r\n }\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n if (path == 'data.shape') {\r\n this.props.dispatch(cmsActions.blockDeselect(true));\r\n setTimeout(() => this.props.dispatch(cmsActions.blockDeselect(true), 1000));\r\n }\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else if (e !== null) value = e.target.value;\r\n else return;\r\n\r\n /* if (element.data.type !== 'FULL' && element.data.type !== 'ORIGINAL' &&\r\n path === 'data.style.width') {\r\n\r\n element.data.style.width = value;\r\n element.data.style.height = value;\r\n }\r\n else if (element.data.type === 'ORIGINAL' && path === 'data.style.width') {\r\n if (element.data.orgSize) {\r\n element.data.style.width = value;\r\n let heightRatio = (element.data.orgSize.height / element.data.orgSize.width)\r\n element.data.style.height = value * heightRatio;\r\n }\r\n }\r\n else if (element.data.type === 'ORIGINAL' && path === 'data.style.height') {\r\n if (element.data.orgSize) {\r\n element.data.style.height = value;\r\n let widthRatio = (element.data.orgSize.width / element.data.orgSize.height)\r\n element.data.style.width = value * widthRatio;\r\n }\r\n }\r\n else if (path === 'data.type' && val === 'ORIGINAL') {\r\n if (element.data.orgSize) {\r\n element.data.style.height = element.data.orgSize.height;\r\n element.data.style.width = element.data.orgSize.width;\r\n }\r\n element.data.type = value;\r\n }\r\n else if (path === 'data.type' && (val === 'CIRCLE' || val === 'SQUARE')) {\r\n element.data.style.height = '210px';\r\n element.data.style.width = '210px';\r\n element.data.type = value;\r\n } */\r\n /* else */ if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n }\r\n expandArea = area => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n setImage = url => {\r\n const element = deepClone(this.props.selectedElement);\r\n element.data.defaultImage = url;\r\n this.handleSoftUpdate(element);\r\n };\r\n render() {\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n }\r\n description=\"ImageSettings\"\r\n defaultExpanded={true}\r\n >\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n e,\r\n null,\r\n \"data.size.width\"\r\n )\r\n } value={selectedElement.data.size.width} type=\"number\" />\r\n \r\n\r\n \r\n x\r\n \r\n \r\n \r\n this.handleChange(\r\n e,\r\n null,\r\n \"data.size.height\"\r\n )\r\n } value={selectedElement.data.size.height} type=\"number\" />\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={5}\r\n max={500}\r\n min={1}\r\n path={'data.viewport.width'}\r\n label=\"ViewPortWidth\"\r\n />\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n steps={5}\r\n max={500}\r\n min={1}\r\n path={'data.viewport.height'}\r\n label=\"ViewPortHeight\"\r\n />\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return { value: t.value, label: t.label };\r\n })}\r\n value={shapes.find(t => {\r\n return t.value === selectedElement.data.shape;\r\n })}\r\n onChange={selectedOption =>\r\n this.handleChange(\r\n null,\r\n selectedOption.value,\r\n \"data.shape\"\r\n )\r\n }\r\n />\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM)\r\n selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE)\r\n selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE)\r\n selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ProfileImageUploaderSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport { Input, Row, InputGroup, InputGroupAddon, InputGroupText, Col, Label, TabContent } from \"reactstrap\";\r\nimport Select from \"react-select\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { validationTypes } from \"../../../../../common/validationType\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { tempLangConverter } from \"../../../../../helpers/lanugageHelper\";\r\nimport CondtionTypeList from \"../../../../areas/form/conditions/components/CondtionTypeList\";\r\nimport { displayTypesField, sortTypes } from \"../../../../models/displayTypes\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { ElementTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { renderElementSettings } from \"../../../../helpers/renderElementSettings\";\r\n\r\nconst optionStyle = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: (styles) => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n }),\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n };\r\n },\r\n};\r\n\r\nclass RebateSettings extends React.Component {\r\n state = { activeTab: new Array(2).fill(\"1\"), isChange: false };\r\n componentDidMount() {\r\n this.setState({\r\n activeTab: new Array(2).fill(\"1\"),\r\n });\r\n }\r\n handleSoftUpdate = (element) => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.updateFormElement(element));\r\n };\r\n handleSelectOnChange = (options, path) => {\r\n const names = path.split(\".\");\r\n const selectedElement = deepClone(this.props.selectedElement);\r\n if (names.length === 2) {\r\n selectedElement[names[0]][names[1]] = options.value;\r\n } else if (names.length === 3) {\r\n selectedElement[names[0]][names[1]][names[2]] = options.value;\r\n }\r\n\r\n this.handleSoftUpdate(selectedElement);\r\n };\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = val !== null && val !== undefined ? val : e.target.value;\r\n\r\n if (e && e.target.value === \"\" && path === \"props.length\") {\r\n value = 0;\r\n }\r\n if (e && e.target.type === \"checkbox\") {\r\n value = e.target.checked;\r\n }\r\n if (path === \"data.titleWidth\") {\r\n element.data.inputWidth = 100 - value;\r\n }\r\n if (path === \"data.inputWidth\") {\r\n element.data.titleWidth = 100 - value;\r\n }\r\n\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n render() {\r\n const { selectedElement, selectedContainer } = this.props.form;\r\n return (\r\n selectedElement && (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" ?
: null}\r\n\r\n {this.state.activeTab[0] === \"2\" && (\r\n \r\n \r\n
\r\n {selectedElement.data.padding !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={\"px\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.padding\"}\r\n label=\"Padding\"\r\n />\r\n )}\r\n {selectedElement.data.alignment !== \"center\" ? (\r\n \r\n
\r\n {selectedElement.data.titleWidth !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.titleWidth\"}\r\n label=\"TitleColumnWidth\"\r\n />\r\n )}\r\n
\r\n {selectedElement.data.inputWidth !== undefined && (\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.inputWidth\"}\r\n label=\"FieldColumnWidth\"\r\n />\r\n )}\r\n
\r\n ) : null}\r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"%\"]}\r\n activeUnit={\"%\"}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n path={\"data.style.width\"}\r\n label=\"InnerWidth\"\r\n />\r\n
\r\n
\r\n )}\r\n {this.state.activeTab[0] === \"3\" && (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.changeLock`)} isChecked={selectedElement.data.changeLock !== true ? false : true} />\r\n \r\n \r\n \r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n
\r\n \r\n )\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n selectedElement: state.form.selectedElement,\r\n selectedContainer: state.form.selectedContainer,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(RebateSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport { Row, Col, Label, Input, InputGroup, TabContent } from \"reactstrap\";\r\nimport Select from \"react-select\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { UseTemplateButton, SetStyleToAllOfItsType, SetToAuto } from \"../../components/UseTemplateButton\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { calendarInvitationHandler } from \"./CalendarInvitation.handler\";\r\nimport { emailFonts } from \"../../models/emailFonts/emailFonts\";\r\nimport { ElementTabGroup, TextCustomedTabGroup } from \"../../../../components/editor/tools/EditorTabGroup\";\r\nimport { TagToolbar } from \"../../../tags/containers/TagToolbar\";\r\nimport Axios from \"axios\";\r\nimport { FormGroup } from \"@material-ui/core\";\r\n\r\nclass CalendarInvitationSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: [],\r\n invitations: [],\r\n activeTab: new Array(2).fill(\"1\"),\r\n };\r\n\r\n componentDidMount() {\r\n this.fetchCalendarInvitations();\r\n }\r\n\r\n handleSoftUpdate = (element) => {\r\n const { dispatch } = this.props;\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n };\r\n\r\n handleInput = (text) => {\r\n const { selectedElement } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n elementCopy.style.elementProps.text = text;\r\n this.handleSoftUpdate(elementCopy);\r\n };\r\n\r\n handleChange = (val, name) => {\r\n const { selectedElement } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n\r\n elementCopy.style.elementProps.link = `https://jirango.com/cms/api/calendar/geticalfile/${val}?badgeNo=[badgeNo]`;\r\n\r\n elementCopy.style.elementProps.text = `${name}.ical`;\r\n /* elementCopy.style.elementProps.link = ` IcalFile`; */\r\n elementCopy.style.elementProps.invitationId = val;\r\n this.handleSoftUpdate(elementCopy);\r\n };\r\n\r\n fetchCalendarInvitations = () => {\r\n Axios.get(`./api/calendar/getCalendarInvites/${this.props.cms.eventId}`).then(({ data }) => {\r\n this.setState({\r\n invitations: data.map((d) => {\r\n return {\r\n value: d.calendarInviteId,\r\n label: d.name,\r\n };\r\n }),\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: (styles) => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: \"1px solid gainsboro\",\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n };\r\n },\r\n };\r\n console.log(this.state.invitations);\r\n return (\r\n \r\n
\r\n \r\n \r\n {this.state.activeTab[0] === \"1\" && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n null}\r\n value={\r\n selectedElement\r\n ? {\r\n value: selectedElement.style.elementProps.invitationId,\r\n label: this.state.invitations.find((i) => i.value == selectedElement.style.elementProps.invitationId)?.label,\r\n }\r\n : null\r\n }\r\n onChange={(selectedOption) => this.handleChange(selectedOption.value, selectedOption.label)}\r\n styles={selectStyles}\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleInput(e.target.value)} />\r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n inherit: state.email.inherit,\r\n template: state.template.template,\r\n selectedElement: state.email.selectedElement,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(CalendarInvitationSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, InputGroup, FormGroup, Input } from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\n\r\nclass GroupRegistrationSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false,\r\n invitations: [],\r\n };\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM) dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE) dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(element, template);\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else if (e !== null) value = e.target.value;\r\n else return;\r\n if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n };\r\n\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: (styles) => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: \"1px solid gainsboro\",\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n };\r\n },\r\n };\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.returnPage`)}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM) selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE) selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE) selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(GroupRegistrationSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col, Label, InputGroup, FormGroup, Input as RSInput } from \"reactstrap\";\r\nimport { pageActions } from \"../../../../../store/actions/cms/page/page.action\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { templateHelper } from \"../../../../areas/template/helpers/templateHelper\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport clsx from \"clsx\";\r\nimport Input from \"@material-ui/core/Input\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport Chip from \"@material-ui/core/Chip\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\nimport InputBase from \"@material-ui/core/InputBase\";\r\nimport { makeStyles, withStyles } from \"@material-ui/core/styles\";\r\n\r\nconst BootstrapInput = withStyles((theme) => ({\r\n root: {\r\n \"label + &\": {\r\n marginTop: theme.spacing(3),\r\n },\r\n },\r\n input: {\r\n borderRadius: 4,\r\n position: \"relative\",\r\n backgroundColor: theme.palette.background.paper,\r\n border: \"1px solid #ced4da\",\r\n fontSize: 16,\r\n padding: \"10px 26px 10px 12px\",\r\n transition: theme.transitions.create([\"border-color\", \"box-shadow\"]),\r\n // Use the system font instead of the default Roboto font.\r\n fontFamily: [\"-apple-system\", \"BlinkMacSystemFont\", '\"Segoe UI\"', \"Roboto\", '\"Helvetica Neue\"', \"Arial\", \"sans-serif\", '\"Apple Color Emoji\"', '\"Segoe UI Emoji\"', '\"Segoe UI Symbol\"'].join(\",\"),\r\n \"&:focus\": {\r\n borderRadius: 4,\r\n borderColor: \"#80bdff\",\r\n boxShadow: \"0 0 0 0.2rem rgba(0,123,255,.25)\",\r\n },\r\n },\r\n}))(InputBase);\r\nclass FileUploaderSettings extends React.Component {\r\n state = {\r\n isMediaVaultOpen: false,\r\n invitations: [],\r\n };\r\n handleSoftUpdate = (element) => {\r\n const { dispatch, enviroment, page } = this.props;\r\n if (enviroment === sourceTypes.FORM) dispatch(formActions.updateFormElement(element));\r\n if (enviroment === sourceTypes.PAGE) dispatch(pageActions.updatePageElement(element, null, page));\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n const template = deepClone(this.props.template);\r\n const newTemplate = templateHelper.handleElementUpdates(element, template);\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n };\r\n\r\n toggle = (tabPane, tab) => {\r\n const newArray = this.state.activeTab.slice();\r\n newArray[tabPane] = tab;\r\n this.setState({\r\n activeTab: newArray,\r\n });\r\n };\r\n handleChange = (e, val, path) => {\r\n const names = path.split(\".\");\r\n const element = deepClone(this.props.selectedElement);\r\n let value = null;\r\n\r\n if (path == \"data.allowedFiletypes\") {\r\n value = e;\r\n } else if (val && val.hex !== undefined) {\r\n const { r, g, b, a } = val.rgb;\r\n value = `rgba(${r},${g},${b},${a})`;\r\n } else if (val) value = val;\r\n else if (e !== null) value = e.target.value;\r\n else return;\r\n\r\n if (path == \"data.allowedFiletypes\") {\r\n if (!element.data.allowedFiletypes) {\r\n element.data.allowedFiletypes = [];\r\n }\r\n if (element.data.allowedFiletypes.includes(value)) {\r\n element.data.allowedFiletypes.splice(element.data.allowedFiletypes.indexOf(value), 1);\r\n } else {\r\n element.data.allowedFiletypes.push(value);\r\n }\r\n } else if (names.length === 2) {\r\n element[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n element[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n element[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n this.handleSoftUpdate(element);\r\n console.log(element.data.allowedFiletypes);\r\n };\r\n\r\n toggleMediaVault = () => {\r\n this.setState({ isMediaVaultOpen: !this.state.isMediaVaultOpen });\r\n };\r\n render() {\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: (styles) => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: \"1px solid gainsboro\",\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"12px\",\r\n fontFamily: data.value,\r\n };\r\n },\r\n };\r\n const { selectedElement } = this.props;\r\n return (\r\n
\r\n \r\n {/* \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.minFiles`)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `data.maxFiles`)}\r\n />\r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n this.props.dispatch(cmsActions.blockDeselect(true))}\r\n unBlock={() => this.props.dispatch(cmsActions.blockDeselect(false))}\r\n options={selectedElement.data.allowedFiletypes}\r\n onChange={(type) => this.handleChange(type, null, `data.allowedFiletypes`)}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedElement = null;\r\n if (enviroment === sourceTypes.FORM) selectedElement = state.form.selectedElement;\r\n if (enviroment === sourceTypes.PAGE) selectedElement = state.page.selectedElement;\r\n if (enviroment === sourceTypes.TEMPLATE) selectedElement = state.template.selectedElement;\r\n return {\r\n enviroment: enviroment,\r\n template: state.template.template,\r\n form: state.form,\r\n page: state.page,\r\n selectedElement: selectedElement,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(FileUploaderSettings);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n formControl: {\r\n margin: theme.spacing(1),\r\n minWidth: 120,\r\n maxWidth: 300,\r\n },\r\n chips: {\r\n display: \"flex\",\r\n flexWrap: \"wrap\",\r\n },\r\n chip: {\r\n margin: 2,\r\n },\r\n noLabel: {\r\n marginTop: theme.spacing(3),\r\n },\r\n}));\r\n\r\nconst ITEM_HEIGHT = 48;\r\nconst ITEM_PADDING_TOP = 8;\r\n\r\nconst OPTIONS = [\r\n { label: \"Pdf\", value: \".pdf,\" },\r\n { label: \"Powerpoints\", value: \".ppt,\" },\r\n { label: \"Documents\", value: \".doc,.docx,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document, .txt,\" },\r\n { label: \"Images\", value: \"image/*,\" },\r\n { label: \"Excel\", value: \".xls, .xlsx,\" },\r\n { label: \"Audio\", value: \".mp4, .mp3,\" },\r\n];\r\nconst MenuProps = {\r\n PaperProps: {\r\n style: {\r\n maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,\r\n width: 250,\r\n },\r\n },\r\n};\r\n\r\nfunction MultipleSelect({ options = [], onChange, block, unBlock }) {\r\n return (\r\n
\r\n \r\n block()}\r\n labelId=\"demo-mutiple-chip-label\"\r\n id=\"demo-mutiple-chip\"\r\n multiple\r\n value={options}\r\n input={}\r\n renderValue={() => (\r\n
\r\n {options.map((value) => (\r\n o.value == value)?.label} style={{ margin: 2 }} />\r\n ))}\r\n
\r\n )}\r\n MenuProps={MenuProps}\r\n >\r\n {OPTIONS.map((name) => (\r\n {\r\n onChange(name.value);\r\n setTimeout(() => unBlock(), 1500);\r\n }}\r\n key={name.label}\r\n value={name.value}\r\n >\r\n \r\n \r\n ))}\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\n\r\nimport { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\n\r\nimport QuestionSettings from \"../elements/element/Question/Settings/QuestionSettings\";\r\nimport FieldSettings from \"../elements/element/Field/Settings/FieldSettings\";\r\nimport EventSettings from \"../elements/element/Event/Settings/EventSettings\";\r\nimport ContentSettings from \"../elements/element/Content/Settings/ContentSettings\";\r\nimport ContainerSettings from \"../elements/element/Container/Settings/ContainerSettings\";\r\nimport PaymentOptionSettings from \"../elements/element/PaymentOptions/Settings/PaymentOptionSettings\";\r\nimport UserPageSettings from \"../elements/element/UserPage/Settings/UserPageSettings\";\r\nimport { emailElementType } from \"../areas/email/constants/emailElementType.constants\";\r\nimport SimpleButtonSettings from \"../areas/email/elements/SimpleButton/SimpleButton.settings\";\r\nimport EmptySpaceSettings from \"../areas/email/elements/EmptySpace/EmptySpace.settings\";\r\nimport TextAreaSettings from \"../areas/email/elements/TextArea/TextArea.settings\";\r\nimport BackgroundImageWithText from \"../areas/email/elements/BackgroundImageWithText/BackgroundImageWithText.settings\";\r\nimport LargeHeaderImageSettings from \"../areas/email/elements/LargeHeaderImage/LargeHeaderImage.settings\";\r\nimport SmallHeaderImageSettings from \"../areas/email/elements/SmallHeaderImage/SmallHeaderImage.settings\";\r\nimport ProfileImageUploaderSettings from \"../elements/element/ProfileImageUploader/Settings/ProfileImageUploaderSettings\";\r\nimport DiscountSettings from \"../elements/element/Discount/Settings/DiscountSettings\";\r\nimport CalendarInvitationSettings from \"../areas/email/elements/CalendarInvitation/CalendarInvitation.settings\";\r\nimport GroupRegistrationSettings from \"../elements/element/GroupRegistration/Settings/GroupRegistrationSettings\";\r\nimport FileUploaderSettings from \"../elements/element/FileUploader/Settings/FileUploaderSettings\";\r\n\r\nexport const renderElementSettings = (type, element, toggleConditionModal) => {\r\n switch (type) {\r\n case elementConstants.EVENT:\r\n if (!element.props) return null;\r\n return ;\r\n case elementConstants.QUESTION:\r\n if (!element.props) return null;\r\n return ;\r\n case elementConstants.FIELD:\r\n if (!element.props) return null;\r\n return ;\r\n case elementConstants.CONTENT:\r\n return ;\r\n case elementConstants.PAYMENT_OPTIONS:\r\n return ;\r\n case elementConstants.CONTAINER:\r\n return ;\r\n case elementConstants.USER_PAGE:\r\n return ;\r\n case emailElementType.BUTTON:\r\n return ;\r\n case emailElementType.SPACE:\r\n return ;\r\n case emailElementType.TEXT:\r\n return ;\r\n case emailElementType.LARGE_HEADER_IMAGE:\r\n return ;\r\n case emailElementType.CALENDAR_INVITATION:\r\n return ;\r\n case emailElementType.SMALL_HEADER_IMAGE:\r\n return ;\r\n case emailElementType.BACKDROPIMAGE_ELEVATED_TEXT:\r\n return ;\r\n case elementConstants.PROFILEIMAGE_UPLOAD:\r\n return ;\r\n case elementConstants.DISCOUNT:\r\n return ;\r\n case elementConstants.GROUP_REGISTRATION:\r\n return ;\r\n case elementConstants.FILE_UPLOADER:\r\n return ;\r\n default:\r\n return null;\r\n }\r\n};\r\n","import React from 'react';\r\nimport Button from '@material-ui/core/Button';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogContentText from '@material-ui/core/DialogContentText';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Slide from '@material-ui/core/Slide';\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\nimport { Input, Label } from 'reactstrap';\r\nimport { FormGroup } from '@material-ui/core';\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport default function ConfirmModal({ text, header, onCancel, onAction, open, extraProps = null, showNameInput = false, onNameEdit, affected = [] }) {\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {text}\r\n
\r\n {affected && Array.isArray(affected) ? affected.map((a, i) => {\r\n return \r\n \r\n \r\n \r\n onNameEdit(e.target.value, a.area)} />\r\n \r\n \r\n }) : null}\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}","import React from \"react\";\r\nimport { Pagination, PaginationItem, PaginationLink, Row, Col, NavLink } from \"reactstrap\";\r\nimport MoreHorizIcon from \"@material-ui/icons/MoreHoriz\";\r\nimport MoreVertIcon from \"@material-ui/icons/MoreVert\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport AccountTreeIcon from \"@material-ui/icons/AccountTree\";\r\nimport NoteAddIcon from \"@material-ui/icons/NoteAdd\";\r\nimport DeleteIcon from \"@material-ui/icons/Delete\";\r\nimport SettingsIcon from \"@material-ui/icons/Settings\";\r\nimport ConfirmModal from \"../../../../components/ConfirmModal/ConfirmModal\";\r\nimport LastPageIcon from \"@material-ui/icons/LastPage\";\r\nimport FirstPageIcon from \"@material-ui/icons/FirstPage\";\r\nimport \"./Pagination.css\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\n\r\nexport const FormPagination = ({ pages, currentPage, navigate, addPage, removePage, showMore, showSettings }) => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [showModal, setModal] = React.useState(false);\r\n const drawPageTabs = (totalPages, currentPage, navigate) => {\r\n let startPage = currentPage - 1;\r\n let endPage = currentPage + 1;\r\n\r\n if (startPage <= 0) {\r\n endPage -= startPage - 1;\r\n startPage = 1;\r\n }\r\n\r\n if (endPage > totalPages) {\r\n endPage = totalPages;\r\n }\r\n\r\n let pageTabs = [];\r\n\r\n for (let index = startPage; index <= endPage; index++) {\r\n pageTabs.push(\r\n \r\n navigate(index)}>\r\n {index}\r\n \r\n \r\n );\r\n }\r\n return pageTabs;\r\n };\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n const onRemovePage = () => {\r\n removePage();\r\n setModal(false);\r\n };\r\n const toggleModal = () => {\r\n setModal(!showModal);\r\n };\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n return (\r\n \r\n \r\n \r\n {pages > 3 ? (\r\n \r\n navigate(1)}>\r\n \r\n \r\n \r\n ) : null}\r\n \r\n (currentPage > 1 ? navigate(currentPage - 1) : null)}>\r\n \r\n \r\n \r\n {drawPageTabs(pages, currentPage, navigate).map((p) => {\r\n return p;\r\n })}\r\n \r\n (currentPage < pages ? navigate(currentPage + 1) : null)}>\r\n \r\n \r\n \r\n {pages > 3 ? (\r\n \r\n navigate(pages)}>\r\n \r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n Ta bort sida\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n );\r\n};\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col,\r\n NavItem,\r\n NavLink\r\n} from \"reactstrap\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport SmartphoneIcon from \"@material-ui/icons/Smartphone\";\r\nimport TabletMacIcon from \"@material-ui/icons/TabletMac\";\r\nimport DesktopWindowsIcon from \"@material-ui/icons/DesktopWindows\";\r\nimport { templateConstants } from \"../../../../../constants/cms/template/template.constants\";\r\nimport \"./PreviewOption.css\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { labelHelper } from \"../../../../../helpers/labelHelper\";\r\nimport Zoom from '@material-ui/core/Zoom';\r\nimport { Tooltip } from '@material-ui/core';\r\nconst cDevices = [\r\n {\r\n name: \"Desktop\",\r\n id: templateConstants.DESKTOP,\r\n icon: (\r\n \r\n )\r\n },\r\n {\r\n name: \"Tablet\",\r\n id: templateConstants.TABLET,\r\n icon: (\r\n \r\n )\r\n },\r\n {\r\n name: \"SmartPhone\",\r\n id: templateConstants.SMARTPHONE,\r\n icon: (\r\n \r\n )\r\n }\r\n];\r\n\r\nconst PreviewOption = ({ device, dispatch }) => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const deviceIcon = (className, d, style = {}) => {\r\n switch (d) {\r\n case \"desktop\":\r\n return ;\r\n case \"tablet\":\r\n return ;\r\n case \"smartphone\":\r\n return ;\r\n default:\r\n return \"\";\r\n }\r\n };\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const handleClick = event => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n const toggleDevice = device => {\r\n handleClose();\r\n dispatch(templateActions.togglePreviewMode(device));\r\n };\r\n const getDeviceOptions = () => {\r\n let devices = [];\r\n cDevices.map((d, index) => {\r\n devices.push(\r\n \r\n \r\n toggleDevice(d.id)}\r\n >\r\n {deviceIcon(\"pop-list-icon slim\", d.id)}\r\n {/* */}\r\n \r\n \r\n \r\n );\r\n });\r\n return devices;\r\n };\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n return (\r\n \r\n \r\n \r\n \r\n {deviceIcon(\"editor-toolbar-icon\", device, { fontSize: '18px !important', color: open ? '#fff' : 'inital', marginBottom: '2px' })}\r\n \r\n \r\n \r\n {getDeviceOptions().map(d => {\r\n return d;\r\n })}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n device: state.template.previewDevice\r\n };\r\n}\r\nexport default connect(mapStateToProps)(PreviewOption);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { elementActions } from \"../../../../../store/actions/cms/element/element.action\";\r\nimport {\r\n Button,\r\n Col,\r\n FormGroup,\r\n Input,\r\n Label,\r\n Row,\r\n Modal,\r\n ModalHeader,\r\n ModalBody,\r\n ModalFooter,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n ButtonGroup\r\n} from \"reactstrap\";\r\nimport { defaultQuestionElement } from \"../../../../models/defaultElements\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { tempLangConverter } from \"../../../../../helpers/lanugageHelper\";\r\n\r\nclass CreateQuestion extends React.Component {\r\n state = {\r\n labelSet: false,\r\n data: {\r\n editable: false,\r\n hidden: false,\r\n style: {},\r\n validation: {},\r\n relations: [],\r\n textRows: 0\r\n },\r\n typeIsValid: false,\r\n labelsIsValid: false,\r\n formIsValid: false,\r\n eventId: 0,\r\n formId: 0,\r\n\r\n props: {\r\n type: \"\",\r\n requiredMin: 0,\r\n requiredMax: 0,\r\n labels: [],\r\n subLabels: [],\r\n subInputs: [],\r\n\r\n options: []\r\n }\r\n };\r\n componentDidMount() {\r\n const { formId, eventId } = this.props.form;\r\n this.setState({ eventId, formId });\r\n }\r\n handleChange(e, path) {\r\n const names = path.split(\".\");\r\n const state = { ...this.state };\r\n\r\n let value = null;\r\n\r\n if (path === 'props.requiredMin') {\r\n value = e;\r\n }\r\n else {\r\n value = e.target.value;\r\n }\r\n if (names[1] === \"labels\") {\r\n state[names[0]][names[1]][names[2]][names[3]] = value;\r\n if (state.props.labels.length > 0 && !state.props.labels.find(l => l.text === '')) {\r\n state.labelsIsValid = true;\r\n }\r\n\r\n this.setState(state);\r\n } else {\r\n state[names[0]][names[1]] = value;\r\n this.setState(state);\r\n }\r\n }\r\n create = () => {\r\n const { formId, eventId, languageCode } = this.props.form;\r\n const { dispatch, event, action2 } = this.props;\r\n let el = {\r\n ...defaultQuestionElement,\r\n formId: formId,\r\n eventId: eventId,\r\n languageCode: languageCode,\r\n props: { ...this.state.props },\r\n data: defaultQuestionElement.data\r\n };\r\n dispatch(elementActions.create(el, event.eventLanguage));\r\n action2();\r\n };\r\n componentDidUpdate() {\r\n if (this.state.props.labels.length < 1 && this.state.labelSet === false && this.props.language && this.props.language.eventCodes) {\r\n\r\n const { eventCodes } = this.props.language;\r\n const { isOpen } = this.props;\r\n const state = { ...this.state };\r\n\r\n state.modal = isOpen;\r\n if (eventCodes) {\r\n for (let i = 0; i < eventCodes.length; i++) {\r\n state.props.labels.push({\r\n text: \"\",\r\n languageCode: eventCodes[i].code,\r\n isValid: false\r\n });\r\n state.props.subLabels.push({\r\n text: \"\",\r\n languageCode: eventCodes[i].code,\r\n isValid: false\r\n });\r\n state.props.subInputs.push({\r\n text: \"\",\r\n languageCode: eventCodes[i].code,\r\n isValid: false\r\n });\r\n }\r\n state.labelSet = true;\r\n }\r\n this.setState(state);\r\n }\r\n }\r\n setQuestionType = (type) => {\r\n const state = { ...this.state };\r\n state.props.type = type;\r\n state.typeIsValid = true;\r\n state.props.name = \"\";\r\n this.setState(state, () => {\r\n this.validateForm();\r\n });\r\n\r\n }\r\n validateForm = () => {\r\n const {\r\n typeIsValid,\r\n labelsIsValid\r\n } = this.state;\r\n this.setState({\r\n formIsValid: typeIsValid\r\n });\r\n };\r\n\r\n render() {\r\n const { title, actionLabel, action2 } = this.props;\r\n const { props, data } = this.state;\r\n const { eventCodes } = this.props.language;\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n {eventCodes.length > 0 &&\r\n eventCodes.map((c, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n e,\r\n `props.labels.${index}.text`\r\n )\r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {\" \"}\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n event: state.event,\r\n language: state.language\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(CreateQuestion);\r\n","import React from \"react\";\r\nimport \"./AddElement.css\";\r\nexport const AddElement = props => {\r\n const { create } = props;\r\n return (\r\n \r\n \r\n
\r\n );\r\n};\r\n","import { sourceTypes } from \"../../constants/cms/sourceType\";\r\nimport { formActions } from \"../../store/actions/cms/form/form.action\";\r\nimport { pageActions } from \"../../store/actions/cms/page/page.action\";\r\nimport { containerHelper } from \"./containerHelper\";\r\nimport { preConfirmationHelper } from \"./preConfirmationHelper\";\r\nimport { contentHelper } from \"./contentHelper\";\r\nimport { paymentHelper } from \"./paymentHelper\";\r\nimport { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\nimport { securityHelper } from \"../../helpers/securityHelper\";\r\nimport { content } from \"../models/content\";\r\n\r\nexport const cmsHelper = {\r\n addElementByClick\r\n}\r\n\r\n\r\nfunction addElementByClick(enviroment, elements, source, draggableId, dispatch) {\r\n if (elements === undefined && enviroment === sourceTypes.FORM) {\r\n return;\r\n }\r\n moveElement({\r\n destination: {\r\n index: source[getSourceElementPath(enviroment)].length\r\n },\r\n draggableId\r\n },\r\n source,\r\n enviroment,\r\n dispatch,\r\n elements\r\n );\r\n}\r\n\r\n\r\n/* function addElementByDrag(result , sourceObj, elements, dispatch, enviroment ) {\r\n const { destination, source, draggableId } = result;\r\n if (!destination) {\r\n return;\r\n } else if (elements === undefined) {\r\n return;\r\n } else if (\r\n destination.droppableId === source.droppableId &&\r\n destination.index === source.index\r\n ) {\r\n return;\r\n } else if (\r\n destination.droppableId === \"content\" &&\r\n source.droppableId === \"content\"\r\n ) {\r\n this.sortElements(result);\r\n } else if (\r\n destination.droppableId.includes(\"content\") &&\r\n source.droppableId.includes(\"sidebar\")\r\n ) {\r\n this.moveElement(result);\r\n } else if (\r\n destination.droppableId.includes(\"column\") &&\r\n source.droppableId.includes(\"sidebar\")\r\n ) {\r\n const newForm = containerHelper.addTo(\r\n form,\r\n sourceTypes.FORM,\r\n elements,\r\n result\r\n );\r\n dispatch(formActions.softUpdate(newForm));\r\n const containerId = destination.droppableId.slice(\r\n destination.droppableId.lastIndexOf(\"-\") + 1,\r\n destination.droppableId.length + 1\r\n );\r\n\r\n dispatch(cmsActions.containerToUpdate(containerId));\r\n } else if (\r\n destination.droppableId.includes(\"column\") &&\r\n source.droppableId.includes(\"column\") &&\r\n destination.droppableId === source.droppableId\r\n ) {\r\n let newForm = containerHelper.sort(form, result);\r\n dispatch(formActions.softUpdate(newForm));\r\n } else if (\r\n (!source.droppableId.includes(\"sidebar\") &&\r\n destination.droppableId.includes(\"content\") &&\r\n source.droppableId.includes(\"column\")) ||\r\n (destination.droppableId.includes(\"column\") &&\r\n source.droppableId.includes(\"content\")) ||\r\n (destination.droppableId.includes(\"column\") &&\r\n source.droppableId.includes(\"column\"))\r\n ) {\r\n let newForm = containerHelper.move(form, sourceTypes.FORM, result);\r\n dispatch(formActions.softUpdate(newForm));\r\n }\r\n}\r\n */\r\n\r\nfunction getElementsFromSource(enviroment, source) {\r\n switch (enviroment) {\r\n case sourceTypes.FORM:\r\n return sortElements(Array.from(source.formElements));\r\n case sourceTypes.PAGE:\r\n return sortElements(Array.from(source.pageElements));\r\n /* case sourceTypes.TEMPLATE: */\r\n\r\n default:\r\n return []\r\n }\r\n}\r\n\r\nfunction sortElements(elements) {\r\n if (!Array.isArray(elements) || elements.length === 0) return [];\r\n return elements.sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n });\r\n}\r\nfunction findElement(elementInfo, elementList) {\r\n return elementList.find(el => {\r\n return (\r\n el.id === parseInt(elementInfo[1]) &&\r\n el.type === parseInt(elementInfo[0])\r\n );\r\n });\r\n}\r\nfunction adjustSorting(dropIndex, enviroment, elements, source) {\r\n return Array.from(elements.map(el => {\r\n if (\r\n el.sortOrder >= dropIndex &&\r\n el.parentId === null\r\n ) {\r\n if (enviroment === sourceTypes.FORM && el.page == source.currentPage) {\r\n el.sortOrder += 1;\r\n }\r\n else if (enviroment !== sourceTypes.FORM) {\r\n el.sortOrder += 1;\r\n }\r\n }\r\n return el;\r\n }));\r\n}\r\n\r\nfunction moveElement(result, source, enviroment, dispatch, elements = []) {\r\n const { destination, draggableId } = result;\r\n /* const { dispatch, form, elements, event } = this.props; */\r\n if (elements === undefined) return;\r\n if (draggableId === undefined) return\r\n \r\n const elementInfo = draggableId.split(\":\");\r\n const newSource = Object.assign({}, source);\r\n let newElements = getElementsFromSource(enviroment, newSource);\r\n const elementList = Array.from(elements);\r\n\r\n let element = findElement(elementInfo, elementList);\r\n newElements = adjustSorting(destination.index, enviroment, newElements, source)\r\n\r\n const elementsPath = getSourceElementPath(enviroment)\r\n\r\n if (\r\n element === undefined &&\r\n parseInt(elementInfo[0]) === elementConstants.CONTAINER\r\n ) {\r\n let newContainerElements = containerHelper.create(\r\n newSource,\r\n enviroment,\r\n elementInfo[1],\r\n destination.index\r\n );\r\n newSource[elementsPath] = newElements.concat(newContainerElements);\r\n /* newForm.formElements = newFormElements.concat(newContainerElements); */\r\n } else if (\r\n element === undefined &&\r\n parseInt(elementInfo[0]) === elementConstants.PAYMENT_OPTIONS\r\n ) {\r\n let newPaymentElement = paymentHelper.create(\r\n newSource,\r\n enviroment,\r\n elementInfo[1],\r\n destination.index\r\n );\r\n /* newForm.formElements = newFormElements.concat(newPaymentElement); */\r\n newSource[elementsPath] = newElements.concat(newPaymentElement);\r\n } else if (\r\n element === undefined &&\r\n parseInt(elementInfo[0]) === elementConstants.PRE_CONFIRMATION\r\n ) {\r\n let newPreConfiramtionElement = preConfirmationHelper.create(\r\n newSource,\r\n enviroment,\r\n elementInfo[1],\r\n destination.index\r\n );\r\n\r\n newElements.push(newPreConfiramtionElement);\r\n newSource[elementsPath] = newElements\r\n /* newForm.formElements = newFormElements; */\r\n } else if (\r\n element === undefined &&\r\n parseInt(elementInfo[0]) === elementConstants.CONTENT\r\n ) {\r\n const selectedEl = content.find(el => {\r\n return el.id === elementInfo[1];\r\n });\r\n\r\n let contentElement = contentHelper.create(\r\n newSource,\r\n enviroment,\r\n selectedEl,\r\n destination\r\n );\r\n\r\n /* newFormElements.push(contentElement);\r\n newForm.formElements = newFormElements; */\r\n newElements.push(contentElement);\r\n newSource[elementsPath] = newElements\r\n\r\n } else if (element && enviroment === sourceTypes.FORM) {\r\n element.sortOrder = destination.index;\r\n element.formId = source.formId;\r\n element.languageCode = source.languageCode;\r\n element.contentId = securityHelper.createGuid();\r\n element.page = source.currentPage;\r\n element.data =\r\n typeof element.data === \"object\"\r\n ? element.data\r\n : JSON.parse(element.data);\r\n\r\n /* newElements.push(element);\r\n newSource.formElements = newElements; */\r\n\r\n newElements.push(element);\r\n newSource[elementsPath] = newElements;\r\n }\r\n getUpdater(enviroment, newSource, dispatch)\r\n}\r\n\r\nfunction getSourceElementPath(enviroment) {\r\n switch (enviroment) {\r\n case sourceTypes.FORM:\r\n return 'formElements'\r\n case sourceTypes.PAGE:\r\n return 'pageElements'\r\n default:\r\n break;\r\n }\r\n}\r\n\r\nfunction getUpdater(enviroment, source, dispatch) {\r\n switch (enviroment) {\r\n case sourceTypes.FORM:\r\n dispatch(formActions.softUpdate(source))\r\n case sourceTypes.PAGE:\r\n dispatch(pageActions.softUpdate(source))\r\n default:\r\n break;\r\n }\r\n}","import React from 'react';\r\nimport AccountTreeIcon from '@material-ui/icons/AccountTree';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { labelHelper } from '../../../../../helpers/labelHelper';\r\nimport './Inheritage.css';\r\n\r\nexport const InheritedSymbol = ({ size }) => {\r\n return (\r\n \r\n
\r\n \r\n
\r\n
\r\n )\r\n}","import React from \"react\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport { connect } from 'react-redux';\r\nimport \"./ElementDropItem.css\";\r\nimport { cmsHelper } from \"../../../helpers/cmsHelper\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport { InheritedSymbol } from \"../tools/Inheritage/InheritedSymbol\";\r\n\r\nconst ElementDropItem = ({\r\n name,\r\n icon,\r\n userLabel = false,\r\n infoText,\r\n row,\r\n draggableId,\r\n enviroment,\r\n source,\r\n children,\r\n inherit = null,\r\n dispatch, listElements,\r\n customStyle = {},\r\n isContainer = false\r\n}) => {\r\n const addOnClick = () => {\r\n cmsHelper.addElementByClick(enviroment, listElements, source, draggableId, dispatch)\r\n }\r\n\r\n const className = row === true ? 'element-row-drop-item' : 'element-drop-item'\r\n if (isContainer === true) {\r\n return (\r\n
\r\n {children}\r\n
\r\n
\r\n )\r\n }\r\n return (\r\n
\r\n\r\n {inherit ? : null}\r\n {icon}\r\n \r\n {enviroment !== sourceTypes.TEMPLATE && enviroment !== sourceTypes.EMAIL ?
: null}\r\n {userLabel === true ? (\r\n {name.substring(0, 26) + (name.length > 27 ? \"...\" : '')}\r\n ) : (\r\n \r\n {name ? : null}\r\n \r\n )}\r\n {infoText ? (\r\n \r\n
\r\n \r\n {infoText ? : null}\r\n
\r\n
\r\n ) : null}\r\n \r\n \r\n );\r\n};\r\n\r\n\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let activeElements = null;\r\n let source = null;\r\n if (enviroment === sourceTypes.FORM) {\r\n activeElements = state.form.formElements;\r\n source = state.form;\r\n }\r\n if (enviroment === sourceTypes.PAGE) {\r\n activeElements = state.page.pageElements;\r\n source = state.page;\r\n }\r\n return {\r\n template: state.template,\r\n source,\r\n activeElements,\r\n listElements: state.element.elements,\r\n enviroment\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ElementDropItem);","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport CreateQuestion from \"../../element/Question/CreateQuestion/CreateQuestion\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { Col, Row } from \"reactstrap\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { AddElement } from \"../../../components/UI/List/AddElement/AddElement\";\r\nimport CheckBoxOutlinedIcon from \"@material-ui/icons/CheckBoxOutlined\";\r\nimport MessageOutlinedIcon from \"@material-ui/icons/MessageOutlined\";\r\nimport \"../../../components/UI/List/ElementItem/ElementItem.css\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\n\r\nclass QuestionElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n simpleModal: false,\r\n contentModal: false,\r\n copyElement: null,\r\n useBase: null,\r\n list: null,\r\n optionQuestionIsOpen: false,\r\n textQuestionIsOpen: false\r\n };\r\n }\r\n attach = element => {\r\n const { dispatch, form } = this.props;\r\n const adjusted = { ...element, formId: form.formId };\r\n dispatch(formActions.attach(adjusted));\r\n this.reset();\r\n };\r\n reset = () => {\r\n this.setState({\r\n copyElement: null,\r\n useBase: null,\r\n simpleModal: false,\r\n contentModal: false\r\n });\r\n };\r\n componentDidUpdate(prevProps) {\r\n if (\r\n prevProps.form !== this.props.form &&\r\n this.props.form !== undefined &&\r\n this.props.elements !== undefined\r\n ) {\r\n let result = [];\r\n this.props.elements.map((e, index) => {\r\n if (\r\n e.type === elementConstants.QUESTION &&\r\n !this.props.form.formElements.find(el => {\r\n return el.id === e.id && el.type === e.type;\r\n })\r\n ) {\r\n result.push(e);\r\n }\r\n });\r\n this.setState({ list: result });\r\n }\r\n }\r\n preCreate = () => {\r\n this.setState({ contentModal: true });\r\n };\r\n toggleCollapse = area => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n\r\n preAttach = element => {\r\n this.setState({\r\n copyElement: () => this.copy(element),\r\n useBase: () => this.attach(element),\r\n simpleModal: true\r\n });\r\n };\r\n\r\n toggle() {\r\n this.setState(state => ({ collapse: !state.collapse }));\r\n }\r\n filterActiveQuestions = () => {\r\n const filtered = [];\r\n const { form, elements } = this.props;\r\n if (\r\n elements !== undefined &&\r\n form !== undefined &&\r\n form.formElements !== undefined\r\n ) {\r\n elements.map(el => {\r\n if (\r\n !form.formElements.find(fel => {\r\n return (\r\n fel.id === el.id &&\r\n fel.props !== null &&\r\n fel.props.name === el.props.name &&\r\n fel.props.type === el.props.type\r\n );\r\n }) &&\r\n el.type === elementConstants.QUESTION\r\n ) {\r\n filtered.push(el);\r\n }\r\n });\r\n }\r\n return filtered;\r\n };\r\n render() {\r\n const { elements, cms } = this.props;\r\n const { contentModal } = this.state;\r\n const filteredElements = this.filterActiveQuestions();\r\n const displayLang = cms.languageCode;\r\n if (elements === undefined) return null;\r\n return (\r\n
\r\n \r\n {elements && elements.length > 0 ? (\r\n \r\n {elements.filter(p => p.props.type === 'Text').length > 0 ?
\r\n \r\n \r\n
\r\n
: null}\r\n \r\n {provided => (\r\n \r\n \r\n {filteredElements\r\n .filter(el => {\r\n return el.props.type === \"Text\"\r\n })\r\n .map((e, index) => {\r\n return (\r\n \r\n \r\n {\r\n return l.languageCode === displayLang;\r\n }).text\r\n }\r\n row={true}\r\n userLabel={true}\r\n inherit={e.eventId != cms.eventId}\r\n draggableId={`${e.type}:${e.id}`}\r\n icon={\r\n \r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n {elements.filter(p => p.props.type === 'Option').length > 0 ?
\r\n \r\n \r\n
\r\n : null}\r\n \r\n {provided => (\r\n \r\n \r\n {filteredElements\r\n .filter(el => {\r\n return el.props.type === \"Option\"\r\n })\r\n .map((e, index) => {\r\n return (\r\n \r\n \r\n {\r\n return l.languageCode === displayLang;\r\n }).text\r\n }\r\n row={true}\r\n inherit={e.eventId != cms.eventId}\r\n draggableId={`${e.type}:${e.id}`}\r\n userLabel={true}\r\n icon={\r\n \r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n \r\n ) : null}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.element.elements,\r\n cElement: state.element,\r\n alert: state.alert,\r\n form: state.form,\r\n event: state.event,\r\n cms:state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(QuestionElements);\r\n","export const fieldTypes = {\r\n companyTypes,\r\n personTypes\r\n}\r\n\r\nexport const companyTypes = [\r\n \"Name\",\r\n \"Address1\",\r\n \"Address2\",\r\n \"Zip\",\r\n \"City\",\r\n \"OrgNo\",\r\n \"Telephone1\",\r\n \"Telephone2\",\r\n \"Telephone3\",\r\n \"Email\",\r\n \"Url\",\r\n \"CountryCode\",\r\n];\r\n\r\nexport const personTypes = [\r\n\r\n \"Address1\",\r\n \"Address2\",\r\n \"Zip\",\r\n \"Department\",\r\n \"Title\",\r\n \"Email\",\r\n \"FirstName\",\r\n \"LastName\",\r\n \"City\",\r\n \"CountryCode\",\r\n \"Telephone1\",\r\n \"Telephone2\",\r\n \"Telephone3\",\r\n \"Email\",\r\n]","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { elementActions } from \"../../../../../store/actions/cms/element/element.action\";\r\nimport {\r\n Button,\r\n Col,\r\n FormGroup,\r\n Input,\r\n Label,\r\n Row,\r\n Modal,\r\n ModalHeader,\r\n ModalBody,\r\n ModalFooter,\r\n InputGroup,\r\n InputGroupAddon,\r\n ButtonGroup,\r\n InputGroupText\r\n} from \"reactstrap\";\r\nimport Select from 'react-select';\r\nimport { defaultFieldElement } from \"../../../../models/defaultElements\";\r\nimport { personTypes, companyTypes } from \"../../../../areas/form/models/fieldTypes\";\r\nimport { elementConstants } from \"../../../../../constants/cms/form/element/element.constants\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { tempLangConverter } from \"../../../../../helpers/lanugageHelper\";\r\n\r\n\r\nclass CreateField extends React.Component {\r\n state = {\r\n availableCompanyFields: [],\r\n availablePersonFields: [],\r\n formIsValid: true,\r\n modal: false,\r\n eventId: 0,\r\n formId: 0,\r\n props: {\r\n name: \"\",\r\n type: \"\",\r\n length: 0,\r\n labels: [],\r\n subLabels: [],\r\n subInputs: [],\r\n Text: \"\"\r\n },\r\n typeIsValid: false,\r\n nameIsValid: false\r\n };\r\n\r\n updateFieldList = () => {\r\n const { formId, eventId, formElements } = this.props.form;\r\n\r\n const fieldElements = [...\r\n this.props.elements.filter(el => {\r\n return el.type === elementConstants.FIELD\r\n })];\r\n\r\n const availableCompanyFields = [];\r\n for (let i = 0; i < companyTypes.length; i++) {\r\n if (!fieldElements.find(el => {\r\n return el.props.name === companyTypes[i] &&\r\n el.props.type === \"Company\"\r\n })) {\r\n availableCompanyFields.push({ value: companyTypes[i], label: companyTypes[i] });\r\n }\r\n }\r\n const availablePersonFields = [];\r\n for (let i = 0; i < personTypes.length; i++) {\r\n if (!fieldElements.find(el => {\r\n return el.props.name === personTypes[i] &&\r\n el.props.type === \"Person\"\r\n })) {\r\n availablePersonFields.push({ value: personTypes[i], label: personTypes[i] });\r\n }\r\n }\r\n this.setState({ formId, eventId, availablePersonFields, availableCompanyFields });\r\n }\r\n componentDidMount() {\r\n this.updateFieldList();\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.elements !== this.props.elements && this.props.elements !== undefined) {\r\n this.updateFieldList();\r\n }\r\n }\r\n handleChange(e, path) {\r\n const names = path.split(\".\");\r\n const state = { ...this.state };\r\n\r\n const value = e.target.value;\r\n if (names[1] === \"labels\") {\r\n state[names[0]][names[1]][names[2]][names[3]] = value;\r\n this.setState(state);\r\n } else {\r\n state[names[0]][names[1]] = value;\r\n this.setState(state, () => {\r\n this.validateForm();\r\n });\r\n }\r\n }\r\n handleSelectOnChange = selectedOption => {\r\n const state = { ...this.state };\r\n\r\n const value = selectedOption.value;\r\n state.props.name = value;\r\n state.nameIsValid = true;\r\n\r\n this.setState(state, () => {\r\n this.validateForm();\r\n });\r\n };\r\n create = () => {\r\n const { formId, eventId, languageCode } = this.props.form;\r\n const { dispatch, event, action2 } = this.props;\r\n const state = { ...this.state };\r\n let el = {\r\n ...defaultFieldElement,\r\n formId: formId,\r\n eventId: eventId,\r\n languageCode: languageCode,\r\n props: { ...this.state.props, },\r\n data: defaultFieldElement.data\r\n };\r\n this.setState({\r\n props: {\r\n name: \"\",\r\n type: \"\",\r\n length: 2,\r\n labels: [],\r\n subLabels: [],\r\n subInputs: [],\r\n Text: \"\"\r\n },\r\n })\r\n dispatch(elementActions.create(el, event.eventLanguage));\r\n action2();\r\n };\r\n componentDidUpdate() {\r\n if (this.state.props.labels.length < 1) {\r\n const { eventCodes } = this.props.language;\r\n const { isOpen } = this.props;\r\n\r\n const state = { ...this.state };\r\n state.modal = isOpen;\r\n if (eventCodes) {\r\n for (let i = 0; i < eventCodes.length; i++) {\r\n state.props.labels.push({\r\n text: \"\",\r\n languageCode: eventCodes[i].code,\r\n isValid: false\r\n });\r\n state.props.subLabels.push({\r\n text: \"\",\r\n languageCode: eventCodes[i].code,\r\n isValid: false\r\n });\r\n state.props.subInputs.push({\r\n text: \"\",\r\n languageCode: eventCodes[i].code,\r\n isValid: false\r\n });\r\n }\r\n }\r\n else {\r\n }\r\n this.setState(state);\r\n }\r\n }\r\n\r\n validateField(fieldName, value, langCode) {\r\n\r\n let fieldValidationErrors = this.state.formErrors;\r\n let labelIsValid = this.state.labelIsValid;\r\n let nameIsValid = this.state.nameIsValid;\r\n switch (fieldName) {\r\n case \"label\":\r\n const label = this.state.labels.find(e => {\r\n return e.languageCode === langCode ? { ...e } : null;\r\n });\r\n label.isValid = value && value.length >= 6;\r\n fieldValidationErrors.label = labelIsValid\r\n ? \"\"\r\n : \"Text length must be at least 6 characters\";\r\n break;\r\n case \"name\":\r\n nameIsValid = value !== null;\r\n fieldValidationErrors.name = nameIsValid\r\n ? \"\"\r\n : \"Field name is required\";\r\n\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState(\r\n { nameIsValid },\r\n this.validateForm\r\n );\r\n }\r\n setFieldType = (type) => {\r\n const state = { ...this.state };\r\n\r\n state.props.type = type;\r\n state.typeIsValid = true;\r\n state.nameIsValid = false;\r\n state.props.name = \"\";\r\n\r\n this.setState(state, () => {\r\n this.validateForm();\r\n });\r\n\r\n }\r\n validateForm = () => {\r\n const {\r\n nameIsValid,\r\n typeIsValid\r\n } = this.state;\r\n this.setState({\r\n formIsValid: nameIsValid && typeIsValid\r\n });\r\n };\r\n render() {\r\n const { action2 } = this.props;\r\n const { props } = this.state;\r\n const { eventCodes } = this.props.language;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {eventCodes.length > 0 &&\r\n eventCodes.map((c, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\r\n e,\r\n `props.labels.${index}.text`\r\n )\r\n }\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {props.type === \"Person\" && (\r\n \r\n \r\n \r\n\r\n \r\n \r\n )}\r\n {props.type === \"Company\" && (\r\n \r\n \r\n \r\n\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n language: state.language,\r\n event: state.event,\r\n elements: state.element.elements\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(CreateField);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport CreateField from \"../../element/Field/CreateField/CreateField\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { AddElement } from \"../../../components/UI/List/AddElement/AddElement\";\r\nimport { Label, Row, Col } from \"reactstrap\";\r\nimport \"../../../components/UI/List/ElementItem/ElementItem.css\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\nimport PermIdentityOutlinedIcon from \"@material-ui/icons/PermIdentityOutlined\";\r\nimport WorkOutlineOutlinedIcon from \"@material-ui/icons/WorkOutlineOutlined\";\r\n\r\nclass FieldElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n simpleModal: false,\r\n contentModal: false,\r\n copyElement: null,\r\n useBase: null,\r\n list: null,\r\n companyIsPOpen: false,\r\n fieldIsOpen: false,\r\n };\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.form !== this.props.form && this.props.form !== undefined && this.props.elements !== undefined) {\r\n let result = [];\r\n this.props.elements.map((e, index) => {\r\n if (\r\n e.type === elementConstants.FIELD &&\r\n !this.props.form.formElements.find((el) => {\r\n return el.id === e.id && el.type === e.type;\r\n })\r\n ) {\r\n result.push(e);\r\n }\r\n });\r\n this.setState({ list: result });\r\n }\r\n }\r\n toggleCollapse = (area) => {\r\n this.setState({ [area]: !this.state[area] });\r\n };\r\n attach = (element) => {\r\n const { dispatch, form } = this.props;\r\n const adjusted = { ...element, formId: form.formId };\r\n dispatch(formActions.attach(adjusted));\r\n this.reset();\r\n };\r\n reset = () => {\r\n this.setState({\r\n copyElement: null,\r\n useBase: null,\r\n simpleModal: false,\r\n contentModal: false,\r\n });\r\n };\r\n preCreate = () => {\r\n this.setState({ contentModal: true });\r\n };\r\n preAttach = (element) => {\r\n this.setState({\r\n copyElement: () => this.copy(element),\r\n useBase: () => this.attach(element),\r\n simpleModal: true,\r\n });\r\n };\r\n filterActiveFields = () => {\r\n const filtered = [];\r\n const { form, elements } = this.props;\r\n if (elements !== undefined && form !== undefined && form.formElements !== undefined) {\r\n elements.map((el) => {\r\n if (\r\n !form.formElements.find((fel) => {\r\n return fel.id === el.id && fel.props !== null && fel.props.name === el.props.name && fel.props.type === el.props.type;\r\n }) &&\r\n el.type === elementConstants.FIELD\r\n ) {\r\n filtered.push(el);\r\n }\r\n });\r\n }\r\n return filtered;\r\n };\r\n\r\n toggle() {\r\n this.setState((state) => ({ collapse: !state.collapse }));\r\n }\r\n render() {\r\n const { elements, event, form, cms } = this.props;\r\n const { simpleModal, contentModal } = this.state;\r\n const filteredElements = this.filterActiveFields();\r\n const displayLang = cms.languageCode;\r\n if (elements === undefined) return null;\r\n return (\r\n
\r\n \r\n {elements && filteredElements.length > 0 ? (\r\n \r\n {filteredElements.filter((p) => p.props.type === \"Person\").length > 0 ? (\r\n
\r\n \r\n \r\n
\r\n
\r\n ) : null}\r\n \r\n {(provided) => (\r\n \r\n \r\n {filteredElements\r\n .filter((el) => {\r\n return el.props.type === \"Person\" || (el.props.type === \"Person\" && el.eventId != cms.eventId && el.props.inherit != false);\r\n })\r\n .map((e, index) => {\r\n console.log(e.props.name, e.props.inherit);\r\n return (\r\n \r\n \r\n {\r\n return l.languageCode === displayLang;\r\n }).text\r\n }\r\n draggableId={`${e.type}:${e.id}`}\r\n row={true}\r\n infoText={e.props.name}\r\n userLabel={true}\r\n inherit={e.props.inherit && e.eventId != cms.eventId}\r\n icon={}\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n {filteredElements.filter((p) => p.props.type === \"Company\").length > 0 ? (\r\n
\r\n \r\n \r\n
\r\n \r\n ) : null}\r\n \r\n {(provided) => (\r\n \r\n \r\n {filteredElements\r\n .filter((el) => {\r\n return el.props.type === \"Company\" || (el.props.type === \"Company\" && el.eventId != cms.eventId && el.props.inherit != false);\r\n })\r\n .map((e, index) => {\r\n return (\r\n \r\n \r\n {\r\n return l.languageCode === displayLang;\r\n }).text\r\n }\r\n draggableId={`${e.type}:${e.id}`}\r\n userLabel={true}\r\n row={true}\r\n infoText={e.props.name}\r\n inherit={e.eventId != cms.eventId}\r\n icon={}\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n \r\n ) : null}\r\n\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.element.elements,\r\n alert: state.alert,\r\n form: state.form,\r\n event: state.event,\r\n cElement: state.element,\r\n cms: state.cms,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(FieldElements);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { elementActions } from \"../../../../../store/actions/cms/element/element.action\";\r\nimport {\r\n Button,\r\n Col,\r\n FormGroup,\r\n Input,\r\n Label,\r\n Row,\r\n Modal,\r\n ModalHeader,\r\n ModalBody,\r\n ModalFooter\r\n} from \"reactstrap\";\r\nimport { defaultEventElement } from \"../../../../models/defaultElements\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { removeZerosFromNumber } from \"../../../../../helpers/moneyHelpers\";\r\n\r\nclass CreateEvent extends React.Component {\r\n state = {\r\n data: {\r\n editable: false,\r\n hidden: false,\r\n style: {},\r\n validation: {},\r\n relations: [],\r\n textRows: 0\r\n },\r\n eventId: 0,\r\n formId: 0,\r\n formElementId: -1,\r\n id: -1,\r\n page: 1,\r\n props: {\r\n name: \"\",\r\n startDateTime: '',\r\n endDateTime: '',\r\n description: \"\",\r\n max: 0,\r\n amount: 0,\r\n city: \"\",\r\n venue: \"\",\r\n vatPercent: 0\r\n },\r\n sortOrder: 0,\r\n type: 3,\r\n userId: 0,\r\n amountIncVatField: 0,\r\n\r\n };\r\n componentDidMount() {\r\n const { formId, eventId, mainEventStartDateTime } = this.props.form;\r\n this.setState({ eventId, formId, props: { ...this.state.props, startDateTime: mainEventStartDateTime, endDateTime: mainEventStartDateTime } });\r\n }\r\n handleChange(e, path) {\r\n const state = deepClone(this.state)\r\n if (path !== 'amountIncVatField') {\r\n const names = path.split(\".\");\r\n state[names[0]][names[1]] = e.target.value;\r\n }\r\n else {\r\n state.amountIncVatField = e.target.value;\r\n }\r\n this.setState(state, () => {\r\n if (path === 'props.vatPercent' || path === 'props.amount') {\r\n this.updateAmountIncVat();\r\n }\r\n if (path === 'amountIncVatField') {\r\n this.updateAmountExVat();\r\n }\r\n });\r\n }\r\n updateAmountIncVat = () => {\r\n let amount = parseFloat(this.state.props.amount);\r\n let vatPercent = parseInt(this.state.props.vatPercent);\r\n if (!isNaN(amount)) {\r\n let amountIncVatField = 0;\r\n if (isNaN(vatPercent) || vatPercent === 0) {\r\n amountIncVatField = removeZerosFromNumber(amount);\r\n }\r\n else {\r\n amountIncVatField = removeZerosFromNumber((amount + (amount * (vatPercent / 100))).toFixed(4));\r\n }\r\n this.setState({ amountIncVatField })\r\n\r\n }\r\n\r\n\r\n }\r\n updateAmountExVat = () => {\r\n let amountIncVatField = parseFloat(this.state.amountIncVatField);\r\n let vatPercent = parseInt(this.state.props.vatPercent);\r\n if (!isNaN(amountIncVatField)) {\r\n let amount = 0;\r\n if (isNaN(vatPercent) || vatPercent === 0) {\r\n amount = amountIncVatField\r\n }\r\n else {\r\n amount = (amountIncVatField / (1 + (vatPercent / 100))).toFixed(4);\r\n }\r\n const state = deepClone(this.state);\r\n state.props.amount = removeZerosFromNumber(amount);\r\n this.setState(state);\r\n }\r\n\r\n }\r\n create = () => {\r\n const { dispatch, form, action2 } = this.props;\r\n const { formId, eventId, mainEventStartDateTime } = this.props.form;\r\n let el = {\r\n ...defaultEventElement,\r\n formId: formId,\r\n eventId: eventId,\r\n languageCode: form.languageCode,\r\n props: { ...this.state.props },\r\n data: defaultEventElement.data\r\n };\r\n this.setState(el, () => {\r\n dispatch(elementActions.create(this.state));\r\n action2();\r\n }, () => {\r\n this.setState({\r\n data: {\r\n editable: false,\r\n hidden: false,\r\n style: {},\r\n validation: {},\r\n relations: [],\r\n textRows: 0\r\n },\r\n eventId: 0,\r\n formId: 0,\r\n formElementId: -1,\r\n id: -1,\r\n page: 1,\r\n props: {\r\n name: \"\",\r\n description: \"\",\r\n max: 0,\r\n amount: 0,\r\n city: \"\",\r\n venue: \"\",\r\n vatPercent: 0,\r\n startDateTime: mainEventStartDateTime, endDateTime: mainEventStartDateTime\r\n },\r\n sortOrder: 0,\r\n type: 3,\r\n userId: 0,\r\n amountIncVatField: 0,\r\n\r\n })\r\n });\r\n };\r\n\r\n\r\n render() {\r\n const { action2, form } = this.props;\r\n const { props } = this.state;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.name\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.description\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.startDateTime\")\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.endDateTime\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.city\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.venue\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.max\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.amount\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"amountIncVatField\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, \"props.vatPercent\")}\r\n />\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {\" \"}\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n event: state.event\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(CreateEvent);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport CreateEvent from \"../../element/Event/CreateEvent/CreateEvent\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { AddElement } from \"../../../components/UI/List/AddElement/AddElement\";\r\nimport { Row, Col } from \"reactstrap\";\r\nimport \"../../../components/UI/List/ElementItem/ElementItem.css\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\nimport EventOutlinedIcon from \"@material-ui/icons/EventOutlined\";\r\n\r\nclass EventElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n simpleModal: false,\r\n contentModal: false,\r\n copyElement: null,\r\n useBase: null,\r\n list: null\r\n };\r\n }\r\n\r\n attach = element => {\r\n const { dispatch, form } = this.props;\r\n const adjusted = { ...element, formId: form.formId };\r\n dispatch(formActions.attach(adjusted));\r\n this.reset();\r\n };\r\n reset = () => {\r\n this.setState({\r\n copyElement: null,\r\n useBase: null,\r\n simpleModal: false,\r\n contentModal: false\r\n });\r\n };\r\n\r\n preCreate = () => {\r\n this.setState({ contentModal: true });\r\n };\r\n\r\n preAttach = element => {\r\n this.setState({\r\n copyElement: () => this.copy(element),\r\n useBase: () => this.attach(element),\r\n simpleModal: true\r\n });\r\n };\r\n filterActiveEvents = () => {\r\n const filtered = [];\r\n const { form, elements } = this.props;\r\n if (\r\n elements !== undefined &&\r\n form !== undefined &&\r\n form.formElements !== undefined\r\n ) {\r\n elements.map(el => {\r\n if (\r\n !form.formElements.find(fel => {\r\n return (\r\n fel.id === el.id &&\r\n fel.props !== null &&\r\n fel.props.name === el.props.name &&\r\n fel.props.type === el.props.type\r\n );\r\n }) &&\r\n el.type === elementConstants.EVENT\r\n ) {\r\n filtered.push(el);\r\n }\r\n });\r\n }\r\n return filtered;\r\n };\r\n toggle() {\r\n this.setState(state => ({ collapse: !state.collapse }));\r\n }\r\n render() {\r\n /* const { elements } = this.props; */\r\n const { simpleModal, contentModal } = this.state;\r\n const {form, cms} = this.props;\r\n const elements = this.filterActiveEvents();\r\n return (\r\n
\r\n \r\n {elements && elements.length > 0 ? (\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {provided => (\r\n
\r\n \r\n {elements.map((e, index) => {\r\n if (e.type === 3) {\r\n return (\r\n \r\n \r\n \r\n 27 ? \"...\" : '')}\r\n userLabel={true}\r\n row={true}\r\n inherit={e.props.inherit && e.eventId != cms.eventId}\r\n draggableId={`${e.type}:${e.id}`}\r\n icon={\r\n \r\n }\r\n />\r\n \r\n \r\n );\r\n }\r\n })}\r\n \r\n
\r\n )}\r\n
\r\n \r\n ) : null}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.element.elements,\r\n alert: state.alert,\r\n form: state.form,\r\n cms:state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(EventElements);\r\n","import React from \"react\";\r\nimport { Row } from \"reactstrap\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { containers } from \"../../../models/containers\";\r\nimport { securityHelper } from \"../../../../helpers/securityHelper\";\r\nimport { connect } from \"react-redux\";\r\nimport './ContainerElements.css'\r\nimport { cmsHelper } from \"../../../helpers/cmsHelper\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\n\r\nclass ContainerElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n elements: null\r\n };\r\n }\r\n toggle() {\r\n this.setState(state => ({ collapse: !state.collapse }));\r\n }\r\n addOnClick = (draggableId) => {\r\n const { enviroment, listElements, source, dispatch } = this.props;\r\n cmsHelper.addElementByClick(enviroment, listElements, source, draggableId, dispatch)\r\n }\r\n\r\n restoreList = () => {\r\n const elements = Array.from(containers);\r\n const newElements = elements.map(el => {\r\n const newEl = Object.assign({}, el);\r\n newEl.guid = securityHelper.createGuid();\r\n return newEl;\r\n });\r\n this.setState({ elements: newElements });\r\n };\r\n\r\n componentDidMount() {\r\n if (typeof this.props.getRef === \"function\") {\r\n this.props.getRef({\r\n restoreList: this.restoreList\r\n });\r\n }\r\n this.restoreList();\r\n }\r\n render() {\r\n const { elements } = this.state;\r\n return (\r\n
\r\n \r\n {provided => (\r\n
\r\n {elements &&\r\n elements.map((c, index) => {\r\n return (\r\n \r\n \r\n {c.type.map((t, index) => {\r\n return (\r\n \r\n {this.props.enviroment !== sourceTypes.TEMPLATE ?
this.addOnClick(`${elementConstants.CONTAINER}:${c.id}:${c.guid}`)} />
: null}\r\n
\r\n );\r\n })}\r\n \r\n \r\n );\r\n })}\r\n
\r\n )}\r\n \r\n \r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let activeElements = null;\r\n let source = null;\r\n if (enviroment === sourceTypes.FORM) {\r\n activeElements = state.form.formElements;\r\n source = state.form;\r\n }\r\n if (enviroment === sourceTypes.PAGE) {\r\n activeElements = state.page.pageElements;\r\n source = state.page;\r\n }\r\n return {\r\n template: state.template,\r\n source,\r\n activeElements,\r\n listElements: state.element.elements,\r\n enviroment\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ContainerElements);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col } from \"reactstrap\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { content } from \"../../../models/content\";\r\nimport { securityHelper } from \"../../../../helpers/securityHelper\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport \"../../../style/ContentStyles.css\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\n\r\nclass ContentElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n elements: null\r\n };\r\n }\r\n restoreList = () => {\r\n const elements = Array.from(content);\r\n const newElements = elements.map(el => {\r\n const newEl = Object.assign({}, el);\r\n newEl.guid = securityHelper.createGuid();\r\n return newEl;\r\n });\r\n this.setState({ elements: newElements });\r\n };\r\n componentDidMount() {\r\n if (typeof this.props.getRef === \"function\") {\r\n this.props.getRef({\r\n restoreList: this.restoreList\r\n });\r\n }\r\n this.restoreList();\r\n }\r\n render() {\r\n const { elements } = this.state;\r\n if (!elements) return null;\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n {provided => (\r\n
\r\n \r\n {elements.map((e, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n )}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n template: state.template,\r\n form: state.form\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ContentElements);\r\n","import { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\n\r\nexport const paymentOptions = [\r\n {\r\n id: \"DIBS\",\r\n type: elementConstants.PAYMENT_OPTIONS,\r\n url:\r\n \"https://cdn.dibspayment.com/logo/checkout/combo/vert/DIBS_checkout_kombo_vertical_01.png\"\r\n },\r\n {\r\n id: \"INVOICE\",\r\n type: elementConstants.PAYMENT_OPTIONS\r\n }\r\n];\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col } from \"reactstrap\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { paymentOptions } from \"../../../models/payments\";\r\nimport { securityHelper } from \"../../../../helpers/securityHelper\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport PaymentOutlinedIcon from \"@material-ui/icons/PaymentOutlined\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\nclass PaymentElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n elements: null\r\n };\r\n }\r\n toggle() {\r\n this.setState(state => ({ collapse: !state.collapse }));\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.form !== this.props.form && this.props.form !== undefined) {\r\n if (\r\n prevProps.form.formElements.length < this.props.form.formElements.length\r\n ) {\r\n this.reArrangeList();\r\n }\r\n }\r\n }\r\n\r\n reArrangeList = () => {\r\n const elements = Array.from(paymentOptions);\r\n elements.map(el => {\r\n el.guid = securityHelper.createGuid();\r\n });\r\n this.setState({ elements });\r\n };\r\n componentDidMount() {\r\n this.reArrangeList();\r\n }\r\n render() {\r\n const { elements } = this.state;\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {provided => (\r\n
\r\n \r\n {elements &&\r\n elements.map((e, index) => {\r\n switch (e.id) {\r\n case \"DIBS\":\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n\r\n default:\r\n return null;\r\n }\r\n })}\r\n \r\n
\r\n )}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n cElements: state.element,\r\n template: state.template,\r\n form: state.form\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PaymentElements);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Col } from \"reactstrap\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport \"../../../style/ContentStyles.css\";\r\nimport FindInPageOutlinedIcon from \"@material-ui/icons/FindInPageOutlined\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\nimport AccountCircleIcon from \"@material-ui/icons/AccountCircle\";\r\nimport MoneyOffIcon from \"@material-ui/icons/MoneyOff\";\r\nimport GroupAddIcon from \"@material-ui/icons/GroupAdd\";\r\nimport CloudUploadIcon from '@material-ui/icons/CloudUpload';\r\n\r\nclass UserPageElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n elements: null,\r\n };\r\n }\r\n toggle() {\r\n this.setState((state) => ({ collapse: !state.collapse }));\r\n }\r\n render() {\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {(provided) => (\r\n
\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n cElements: state.element,\r\n template: state.template,\r\n page: state.page,\r\n form: state.form,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(UserPageElements);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Label } from \"reactstrap\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport '../../../style/ContentStyles.css'\r\nimport AccountBoxOutlinedIcon from '@material-ui/icons/AccountBoxOutlined';\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\n\r\nclass UserPageElements extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggle = this.toggle.bind(this);\r\n this.state = {\r\n collapse: false,\r\n elements: null\r\n };\r\n }\r\n toggle() {\r\n this.setState(state => ({ collapse: !state.collapse }));\r\n }\r\n render() {\r\n return (\r\n
\r\n \r\n {provided => (\r\n
\r\n \r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n
)}\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n cElements: state.element,\r\n template: state.template,\r\n page: state.page,\r\n form: state.form\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(UserPageElements);\r\n","export default __webpack_public_path__ + \"static/media/backgroundWithText.d2ecbfc8.png\";","import React from \"react\";\r\n\r\nimport { emailElementType } from \"../constants/emailElementType.constants\";\r\nimport ImageOutlinedIcon from \"@material-ui/icons/ImageOutlined\";\r\nimport PanoramaIcon from \"@material-ui/icons/Panorama\";\r\nimport LineStyleOutlinedIcon from \"@material-ui/icons/LineStyleOutlined\";\r\nimport RemoveOutlinedIcon from \"@material-ui/icons/RemoveOutlined\";\r\nimport TouchAppIcon from \"@material-ui/icons/TouchApp\";\r\nimport SpaceBarIcon from \"@material-ui/icons/SpaceBar\";\r\nimport CalendarTodayIcon from \"@material-ui/icons/CalendarToday\";\r\nimport BackgroundWithText from \"../assets/images/backgroundWithText.png\";\r\n\r\nexport const emailElementTabList = [\r\n { type: emailElementType.LARGE_HEADER_IMAGE, thumbnail: , label: \"Image\", group: emailElementType.SIMPLE },\r\n/* { type: emailElementType.SMALL_HEADER_IMAGE, thumbnail: , label: \"SmallImage\", group: emailElementType.SIMPLE }, */\r\n { type: emailElementType.TEXT, thumbnail: , label: \"Text\", group: emailElementType.SIMPLE },\r\n { type: emailElementType.BUTTON, thumbnail: , label: \"Button\", group: emailElementType.SIMPLE },\r\n { type: emailElementType.SPACE, thumbnail: , label: \"Space\", group: emailElementType.SIMPLE },\r\n { type: emailElementType.BACKDROPIMAGE_ELEVATED_TEXT, thumbnail: , label: \"Space\", group: emailElementType.MULTI },\r\n { type: emailElementType.CALENDAR_INVITATION, thumbnail: , label: \"CalendarInvite\", group: emailElementType.SIMPLE },\r\n];\r\n","import React from \"react\";\r\nimport { connect } from 'react-redux';\r\nimport \"./ElementDropItem.css\";\r\nimport { cmsHelper } from \"../../../helpers/cmsHelper\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\n\r\nconst ElementDropItemWithImage = ({\r\n name,\r\n thumbnail,\r\n userLabel = false,\r\n draggableId,\r\n enviroment,\r\n source,\r\n dispatch, listElements,\r\n customStyle = {},\r\n}) => {\r\n const addOnClick = () => {\r\n cmsHelper.addElementByClick(enviroment, listElements, source, draggableId, dispatch)\r\n }\r\n return (\r\n
\r\n {thumbnail}\r\n \r\n {enviroment !== sourceTypes.TEMPLATE && enviroment !== sourceTypes.EMAIL ?
: null}\r\n
\r\n \r\n );\r\n};\r\n\r\n\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let activeElements = null;\r\n let source = null;\r\n if (enviroment === sourceTypes.FORM) {\r\n activeElements = state.form.formElements;\r\n source = state.form;\r\n }\r\n if (enviroment === sourceTypes.PAGE) {\r\n activeElements = state.page.pageElements;\r\n source = state.page;\r\n }\r\n return {\r\n template: state.template,\r\n source,\r\n activeElements,\r\n listElements: state.element.elements,\r\n enviroment\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ElementDropItemWithImage);","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Row, Label, Col } from \"reactstrap\";\r\nimport { Droppable } from \"react-beautiful-dnd\";\r\nimport { emailElementTabList } from \"../models/emailElementTabList\";\r\nimport ElementWrapper from \"../../../components/element/ElementWrapper/ElementWrapper\";\r\nimport ElementDropItem from \"../../../components/editor/ElementDropItem/ElementDropItem\";\r\nimport ElementDropItemWithImage from \"../../../components/editor/ElementDropItem/ElementDropItemWithImage\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport { emailElementType } from \"../constants/emailElementType.constants\";\r\n\r\nexport const EmailElements = () => {\r\n const elements = Array.from(emailElementTabList);\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {provided => (\r\n
\r\n \r\n {elements.filter(el => el.group === emailElementType.SIMPLE).map((e, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {provided => (\r\n
\r\n \r\n {elements.filter(el => el.group === emailElementType.MULTI).map((e, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n )}\r\n
\r\n \r\n );\r\n}\r\n\r\n","import React from \"react\";\r\nimport { Row, Col, NavItem, Nav, NavLink } from \"reactstrap\";\r\nimport { connect } from \"react-redux\";\r\nimport QuestionElements from \"../../../elements/list/QuestionElements/QuestionElements\";\r\nimport FieldElements from \"../../../elements/list/FieldElements/FieldElements\";\r\nimport EventElements from \"../../../elements/list/EventElements/EventElements\";\r\nimport ContainerElements from \"../../../elements/list/ContainerElements/ContainerElements\";\r\nimport ContentElements from \"../../../elements/list/ContentElements/ContentElements\";\r\nimport PaymentElements from \"../../../../cms/elements/list/PaymentElements/PaymentElements\";\r\nimport PreConfirmationsElements from \"../../../elements/list/PreConfirmationElements/PreConfirmationsElements\";\r\nimport RateReviewIcon from \"@material-ui/icons/RateReview\";\r\nimport WidgetsIcon from \"@material-ui/icons/Widgets\";\r\nimport \"./ElementsTab.css\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport UserPageElements from \"../../../elements/list/UserPageElements/UserPageElements\";\r\nimport AccountBoxIcon from '@material-ui/icons/AccountBox';\r\nimport EmailIcon from '@material-ui/icons/Email';\r\nimport { EmailElements } from \"../../../areas/email/elementGroups/EmailElements\";\r\n\r\n\r\nclass ElementsTab extends React.Component {\r\n state = {\r\n activeTab: \"Content\",\r\n hideContent: false\r\n };\r\n componentDidMount() {\r\n if (this.props.env !== undefined &&\r\n this.props.env === sourceTypes.EMAIL) {\r\n this.setState({ activeTab: 'Email' })\r\n }\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.env !== undefined &&\r\n prevProps.env !== this.props.env &&\r\n this.props.env === sourceTypes.EMAIL) {\r\n this.setState({ activeTab: 'Email' })\r\n }\r\n }\r\n toggleTab = area => {\r\n if (area === this.state.activeTab) {\r\n if (!this.state.hideContent) {\r\n this.setState({ activeTab: \"\", hideContent: true });\r\n }\r\n } else {\r\n this.setState({ activeTab: area, hideContent: false });\r\n }\r\n };\r\n render() {\r\n const { activeTab } = this.state;\r\n const { env } = this.props;\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n this.toggleTab(\"Fields\")}>\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n : null}\r\n\r\n \r\n this.toggleTab(\"Question\")}>\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {!this.props.form.survey ? \r\n this.toggleTab(\"Payment\")}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.toggleTab(\"PreConfirmation\")}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
: null}\r\n \r\n ) : null}\r\n {env !== sourceTypes.EMAIL ? \r\n \r\n this.toggleTab(\"Containers\")}>\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n this.toggleTab(\"Content\")}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
: null}\r\n {env === sourceTypes.PAGE ?\r\n\r\n \r\n this.toggleTab(\"UserPage\")}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n \r\n : null\r\n }\r\n {env === sourceTypes.EMAIL ?\r\n \r\n \r\n this.toggleTab(\"Email\")}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
: null}\r\n \r\n \r\n \r\n \r\n \r\n {activeTab && (\r\n \r\n
\r\n {activeTab === \"Events\" && !this.state.isSurvey && (\r\n \r\n )}\r\n {activeTab === \"Fields\" && !this.state.isSurvey && (\r\n \r\n )}\r\n {activeTab === \"Question\" && }\r\n {activeTab === \"Containers\" && }\r\n {activeTab === \"Content\" && }\r\n {activeTab === \"Payment\" && }\r\n {activeTab === \"PreConfirmation\" && (\r\n \r\n )}\r\n {activeTab === \"Email\" && (\r\n \r\n )}\r\n {activeTab === \"UserPage\" && (\r\n \r\n )}\r\n
\r\n \r\n )}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n env: state.cms.enviroment,\r\n form: state.form\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ElementsTab);\r\n","export default __webpack_public_path__ + \"static/media/inheritage_icon.63ad104d.svg\";","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport Select from 'react-select';\r\nimport { templateActions } from '../../../store/actions/cms/template/template.action';\r\nimport { formActions } from '../../../store/actions/cms/form/form.action';\r\nimport InheritIcon from '../../../assets/icons/inheritage_icon.svg';\r\nimport { sourceTypes } from '../../../constants/cms/sourceType';\r\nimport { pageActions } from '../../../store/actions/cms/page/page.action';\r\n\r\nclass TemplateSelect extends React.Component {\r\n handleChange = selectedTemplate => {\r\n const { dispatch, template, form, cms, page } = this.props;\r\n const selected = template.templates.find(t => { return t.templateId === selectedTemplate.value });\r\n if (selected) {\r\n dispatch(templateActions.get(selected.templateId));\r\n if (cms.enviroment === sourceTypes.FORM)\r\n dispatch(formActions.softUpdate({ ...form/* , templateId: selected.templateId, oldTemplateId: form.templateId */ }));\r\n if (cms.enviroment === sourceTypes.PAGE)\r\n dispatch(pageActions.softUpdate({ ...page/* , templateId: selected.templateId, oldTemplateId: form.templateId */ }));\r\n }\r\n };\r\n render() {\r\n const { templates, template } = this.props.template;\r\n const list = templates.map(t => { return { value: t.templateId, label: t.name } });\r\n const dot = (color = '#ccc') => ({\r\n alignItems: 'center',\r\n display: 'flex',\r\n ':before': {\r\n backgroundColor: color,\r\n borderRadius: 10,\r\n content: `url(${InheritIcon})`,\r\n display: 'block',\r\n marginRight: 8,\r\n height: 10,\r\n width: 10,\r\n },\r\n });\r\n const colourStyles = {\r\n input: styles => ({ ...styles, ...dot() }),\r\n placeholder: styles => ({ ...styles, ...dot() }),\r\n singleValue: (styles, { data }) => ({ ...styles, ...dot(data.color) }),\r\n };\r\n return (\r\n (\r\n
\r\n {templates && template && }\r\n
\r\n\r\n )\r\n )\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template,\r\n form: state.form,\r\n page: state.page,\r\n cms: state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(TemplateSelect);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport Select from \"react-select\";\r\nimport { formActions } from \"../../../store/actions/cms/form/form.action\";\r\n\r\nclass ConfirmationSelect extends React.Component {\r\n handleChange = (selectedConf) => {\r\n const { dispatch, emails, form, type, pages } = this.props;\r\n\r\n if (type === \"EMAIL\") {\r\n if (selectedConf.value) {\r\n let selected = emails.find((t) => {\r\n return t.comContentId === selectedConf.value;\r\n });\r\n if (selected) {\r\n dispatch(formActions.softUpdate({ ...form, emailConfirmationId: selected.comContentId }));\r\n return;\r\n }\r\n }\r\n dispatch(formActions.softUpdate({ ...form, emailConfirmationId: null }));\r\n } else if (type === \"WEB\") {\r\n if (selectedConf.value) {\r\n let selected = pages.find((t) => {\r\n return t.id === selectedConf.value;\r\n });\r\n if (selected) {\r\n dispatch(formActions.softUpdate({ ...form, pageConfirmationId: selected.id }));\r\n return;\r\n }\r\n }\r\n dispatch(formActions.softUpdate({ ...form, pageConfirmationId: null}));\r\n }\r\n };\r\n render() {\r\n const { form, emails, type, pages } = this.props;\r\n const selectedWebConf =\r\n pages !== undefined &&\r\n pages.find((t) => {\r\n return t.id === form.pageConfirmationId;\r\n });\r\n const selectedEmailConf =\r\n emails !== undefined &&\r\n emails.find((t) => {\r\n return t.comContentId === form.emailConfirmationId;\r\n });\r\n const emailOptions =\r\n emails?.map((t) => {\r\n return { value: t.comContentId, label: t.name };\r\n }) || [];\r\n emailOptions.unshift({ value: null, label: \"-\" });\r\n\r\n return (\r\n \r\n {pages && emails ? (\r\n
\r\n {type === \"WEB\" && (\r\n
\r\n {pages && (\r\n {\r\n return { value: t.id, label: t.name };\r\n })}\r\n classNamePrefix=\"jirango-select\"\r\n className=\"jirango-select\"\r\n value={selectedWebConf ? { value: selectedWebConf.id, label: selectedWebConf.name } : null}\r\n onChange={this.handleChange}\r\n />\r\n )}\r\n
\r\n )}\r\n {type === \"EMAIL\" && (\r\n
\r\n {emails && (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : null}\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n emails: state.email.emails,\r\n pages: state.page.paths,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(ConfirmationSelect);\r\n","import React from 'react';\r\nimport AccountTreeIcon from '@material-ui/icons/AccountTree';\r\nimport { connect } from 'react-redux';\r\nimport './Inheritage.css';\r\nimport { sourceTypes } from '../../../../../constants/cms/sourceType';\r\nimport PolicyIcon from '@material-ui/icons/Policy';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { Row, Col } from 'reactstrap';\r\nimport Avatar from '@material-ui/core/Avatar';\r\nimport { IconButton } from '@material-ui/core';\r\n\r\nconst InheritageButtonGroup = (props) => {\r\n const { cms, status, onClick, form } = props;\r\n let disabled = cms.enviroment == sourceTypes.FORM && form.inherit !== null && form.inheritParentId !== null? true : false;\r\n return (\r\n
\r\n \r\n \r\n onClick(null)} className={`inherit-toggle-icon${status === null ? '-active' : ''}`}>\r\n \r\n \r\n \r\n \r\n

\r\n Har ej någon koppling till ett annat formulär i din organisation\r\n

\r\n \r\n
\r\n \r\n \r\n onClick(false)} className={`inherit-toggle-icon${status === false ? '-active' : ''}`}>\r\n \r\n \r\n \r\n \r\n

\r\n Andra formulär i som ärver av detta formulär har endast läsrättigheter men kan ej editera formuläret\r\n

\r\n \r\n
\r\n \r\n \r\n onClick(true)} className={`inherit-toggle-icon${status === true ? '-active' : ''}`}>\r\n \r\n \r\n \r\n \r\n

\r\n Andra formulär som ärver detta formulär har läsrättigheter och kan editera formuläret men då kommer en ny kopia skapas.\r\n

\r\n \r\n
\r\n
\r\n )\r\n\r\n}\r\nfunction mapStateToProps(state) {\r\n\r\n return {\r\n cms: state.cms,\r\n form: state.form\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(InheritageButtonGroup);\r\n","import React from \"react\";\r\nimport \"rc-slider/assets/index.css\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n} from \"reactstrap\";\r\nimport { connect } from 'react-redux';\r\nimport Select from 'react-select';\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport { tempLangConverter } from \"../../../../helpers/lanugageHelper\";\r\n\r\n\r\nexport const LangInputGroup = props => {\r\n const [selectedLang, setLang] = React.useState('swe')\r\n const {\r\n label,\r\n confirmations,\r\n languages,\r\n form,\r\n } = props;\r\n const list = confirmations.map(t => { return { value: t.confirmationId, label: t.name } });\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {languages.map((u, i) => {\r\n return (\r\n setLang(u)}\r\n key={i}\r\n >\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n c.value === form.emailConfirmationId) : null}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n languages: state.language.eventCodes,\r\n confirmations: state.confirmation.confirmationList,\r\n template: state.template\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(LangInputGroup);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Input, Row, InputGroup, InputGroupAddon, InputGroupText, Col, Label, Collapse, ListGroupItem, Button, ButtonGroup, FormGroup } from \"reactstrap\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport { ButtonGroupAlignment } from \"../../../../../components/UI/Buttons/ButtonGroupAlignment\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport TemplateSelect from \"../../../../components/selects/TemplateSelect\";\r\nimport ConfirmationSelect from \"../../../../components/selects/ConfirmationSelect\";\r\nimport { tempLangConverter } from \"../../../../../helpers/lanugageHelper\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { formSettings } from \"../../models/formSettings\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\nimport InheritageButtonGroup from \"../../../../components/editor/tools/Inheritage/InheritageButtonGroup\";\r\nimport LangInputGroup from \"../../../../components/editor/LangInputGroup/LangInputGroup\";\r\n\r\nconst WAIT_INTERVAL = 2000;\r\nconst ENTER_KEY = 13;\r\n\r\nclass FormSettings extends React.Component {\r\n state = {\r\n confirmationAreaIsExpanded: false,\r\n navigationAreaIsExpanded: false,\r\n submitAreaIsExpanded: false,\r\n templateAreaIsExpanded: false,\r\n };\r\n\r\n handleChange = (e, val, path) => {\r\n const { dispatch } = this.props;\r\n const names = path.split(\".\");\r\n const form = deepClone(this.props.form);\r\n let value = val !== null && val !== undefined ? val : e.target.value;\r\n\r\n if (names.length === 1) {\r\n form[names[0]] = value;\r\n }\r\n if (names.length === 2) {\r\n form[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n form[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n form[names[0]][names[1]][names[2]][names[3]] = value;\r\n } else if (names.length === 5) {\r\n form[names[0]][names[1]][names[2]][names[3]][names[4]] = value;\r\n } else if (names.length === 6) {\r\n form[names[0]][names[1]][names[2]][names[3]][names[4]][names[5]] = value;\r\n }\r\n form.isChanged = true;\r\n\r\n dispatch(formActions.softUpdate(form));\r\n };\r\n expandArea = (area) => {\r\n this.setState(\r\n {\r\n [area]: !this.state[area],\r\n },\r\n () => {\r\n if (this.state.lastCollapse !== area) {\r\n if (this.state.lastCollapse !== \"\") {\r\n this.setState({ [this.state.lastCollapse]: false }, () => {\r\n this.setState({ lastCollapse: area });\r\n });\r\n } else {\r\n this.setState({ lastCollapse: area });\r\n }\r\n }\r\n }\r\n );\r\n };\r\n toggleInheritageInfo = (on) => {\r\n const { dispatch } = this.props;\r\n dispatch(cmsActions.toggleInheritageInfo(on));\r\n };\r\n toggleInheritageStatus = (status) => {\r\n const { dispatch } = this.props;\r\n const form = deepClone(this.props.form);\r\n form.inherit = status;\r\n form.isChanged = true;\r\n dispatch(formActions.softUpdate(form));\r\n };\r\n render() {\r\n const { form, cms } = this.props;\r\n let btnText = form && form.settings !== undefined && form.settings.submit.defaultLabel;\r\n if (\r\n cms.languageCode &&\r\n form &&\r\n form.settings !== undefined &&\r\n form.settings.submit.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === cms.languageCode;\r\n }).text !== \"\"\r\n ) {\r\n btnText = form.settings.submit.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === cms.languageCode;\r\n }).text;\r\n }\r\n if (form.settings === undefined) return null;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `name`)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, !form.settings.authorizedFormMode, \"settings.authorizedFormMode\")}\r\n isChecked={form.settings.authorizedFormMode !== true ? false : true}\r\n />\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, !form.settings.changeToGroupLeaderOnSpecificPage, \"settings.changeToGroupLeaderOnSpecificPage\")}\r\n isChecked={form.settings.changeToGroupLeaderOnSpecificPage !== true ? false : true}\r\n />\r\n \r\n \r\n {form.settings.changeToGroupLeaderOnSpecificPage == true ? (\r\n <>\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `settings.specificPage`)} />\r\n \r\n \r\n \r\n
\r\n \r\n ) : null}\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, !form.settings.forceChangeOrderOnSpecificPage, \"settings.onlyGroupLeaderAllowedChangelink\")}\r\n isChecked={form.settings.forceChangeOrderOnSpecificPage !== true ? false : true}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, !form.settings.submit.hidden, \"settings.submit.hidden\")}\r\n isChecked={form.settings.submit.hidden && form.settings.submit.hidden == true ? true : false}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `settings.googleAnalyticsId`)}\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `settings.facebookId`)} />\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n {form.settings.navigation.next.labels.map((l, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `settings.navigation.next.labels.${index}.text`)}\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n {form.settings.navigation.previous.labels.map((l, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `settings.navigation.previous.labels.${index}.text`)}\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n {form.settings.submit.labels.map((l, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `settings.submit.labels.${index}.text`)}\r\n />\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n {form.pages === 1 ? : null}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.toggleInheritageInfo(!cms.inheritInfo)} isChecked={cms.inheritInfo !== true ? false : true} />\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form,\r\n template: state.template,\r\n cms: state.cms,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(FormSettings);\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n NavItem,\r\n NavLink\r\n} from \"reactstrap\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport { formHelper } from \"../../../../../areas/form/helpers/formHelper\";\r\nimport LaunchIcon from '@material-ui/icons/Launch';\r\nimport ErrorOutlineIcon from '@material-ui/icons/ErrorOutline';\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\nimport Zoom from '@material-ui/core/Zoom';\r\nimport { Tooltip } from '@material-ui/core';\r\nimport { labelHelper } from \"../../../../../../helpers/labelHelper\";\r\nconst RunFormOption = (props) => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [warningMessage, setWarning] = React.useState('');\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const handleClick = event => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n const runForm = (e) => {\r\n const { form } = props;\r\n const { result, message } = formHelper.isPublishable(form.formElements);\r\n\r\n if (!result && !form.survey) {\r\n setAnchorEl(e.currentTarget);\r\n setWarning(message)\r\n return;\r\n }\r\n let path = form.survey ? \"survey\" : \"register\";\r\n if (window.location.href.includes(\"localhost\")) {\r\n window.open(`/${path}/${form.formId.toString(36)}`);\r\n }\r\n else {\r\n window.open(`/cms/${path}/${form.formId.toString(36)}`);\r\n }\r\n }\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n return (\r\n \r\n \r\n \r\n \r\n runForm(e)} />\r\n \r\n \r\n \r\n
    \r\n {warningMessage &&\r\n warningMessage.map((m, i) => {\r\n return (\r\n
  • \r\n \r\n \r\n
  • \r\n );\r\n })}\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n form: state.form\r\n };\r\n}\r\nexport default connect(mapStateToProps)(RunFormOption);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport { Row, Col, Label, Input, InputGroup } from \"reactstrap\";\r\nimport Select from \"react-select\";\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { UseTemplateButton, SetStyleToAllOfItsType, SetToAuto } from \"../../components/UseTemplateButton\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { emailFonts } from \"../../models/emailFonts/emailFonts\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { emailHelper } from \"../../helper/email.helper\";\r\nimport InheritageButtonGroup from \"../../../../components/editor/tools/Inheritage/InheritageButtonGroup\";\r\nimport JirangoSwitch from \"../../../../../components/UI/Switch/JirangoSwitch\";\r\nimport OpenInNewIcon from \"@material-ui/icons/OpenInNew\";\r\n\r\nclass EmailSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: [],\r\n };\r\n componentDidMount() {\r\n const { dispatch, cms } = this.props;\r\n dispatch(templateActions.getAll(cms.eventId, true));\r\n }\r\n componentDidUpdate(prevProps) {\r\n const { email, dispatch } = this.props;\r\n if (this.props.template !== undefined && prevProps.template.templateId !== this.props.template.templateId) {\r\n const newElements = emailHelper.handleTemplateStyleInheritage(this.props.email.elements, this.props.template);\r\n dispatch(emailActions.updateEmailElement(newElements, null, true, this.props.inherit));\r\n }\r\n }\r\n handleSoftUpdate = (email) => {\r\n const { dispatch } = this.props;\r\n dispatch(emailActions.softUpdate(email));\r\n };\r\n toggleInheritageStatus = (status) => {\r\n const { dispatch } = this.props;\r\n const email = deepClone(this.props.email);\r\n email.inherit = status;\r\n email.isSavable = true;\r\n dispatch(emailActions.softUpdate(email));\r\n };\r\n toggleLinktracking = (on) => {\r\n const { dispatch } = this.props;\r\n const email = deepClone(this.props.email);\r\n email.useLinktrack = on;\r\n console.log(\"onChange\", on, email);\r\n dispatch(emailActions.softUpdate(email));\r\n };\r\n handleChange = (e, val, path) => {\r\n const { email } = this.props;\r\n let emailCopy = deepClone(email);\r\n emailCopy[path] = val;\r\n this.handleSoftUpdate(emailCopy);\r\n if (path === \"templateId\") {\r\n this.props.dispatch(templateActions.get(val));\r\n }\r\n };\r\n render() {\r\n const { email, templates, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: \"15px\",\r\n fontFamily: data.value,\r\n padding: \"10px 10px\",\r\n };\r\n },\r\n control: (provided, state) => ({\r\n ...provided,\r\n maxWidth: \"100%\",\r\n width: \"auto\",\r\n }),\r\n container: (styles) => ({\r\n ...styles,\r\n width: \"100%\",\r\n borderRight: \"1px solid gainsboro\",\r\n }),\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, \"name\")} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, \"subject\")} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, \"previewText\")} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, \"fromName\")} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, \"fromAddr\")} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, e.target.value, \"bcc\")} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return {\r\n value: t.templateId,\r\n label: t.name,\r\n };\r\n })}\r\n value={template.templateId ? { label: template.name, value: template.templateId } : null}\r\n onChange={(selectedOption) => this.handleChange(null, selectedOption.value, \"templateId\")}\r\n styles={selectStyles}\r\n />\r\n {\r\n window.open(\r\n window.location.host?.includes(\"localhost\") ? `https://localhost:44331/Template/List?eventId=${this.props?.cms?.eventId}` : `https://jirango.com/Template/List?eventId=${this.props?.cms?.eventId}`,\r\n \"_blank\"\r\n );\r\n }}\r\n style={{ backgroundColor: \"transparent\", border: 0, color: '#222' }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.toggleLinktracking(!email.useLinktrack)} isChecked={email.useLinktrack !== true ? false : true} />\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n email: state.email,\r\n template: state.template.template,\r\n inherit: state.email.inherit,\r\n templates: state.template.templates,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(EmailSettings);\r\n","export default __webpack_public_path__ + \"static/media/sent_icon.e4c3e94a.svg\";","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Pagination,\r\n PaginationItem,\r\n PaginationLink,\r\n Row,\r\n Col,\r\n NavItem,\r\n NavLink,\r\n Label,\r\n Input,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n} from \"reactstrap\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Zoom from \"@material-ui/core/Zoom\";\r\nimport { Tooltip, Typography } from \"@material-ui/core\";\r\nimport AddIcon from \"@material-ui/icons/Add\";\r\nimport ErrorIcon from \"@material-ui/icons/Error\";\r\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\r\nimport SendIcon from \"@material-ui/icons/Send\";\r\nimport AlternateEmailIcon from \"@material-ui/icons/AlternateEmail\";\r\nimport { labelHelper } from \"../../../../helpers/labelHelper\";\r\nimport { inputValidator } from \"../../../../helpers/inputVaildator\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport ConfirmModal from \"../../../components/ConfirmModal/ConfirmModal\";\r\nimport { emailActions } from \"../../../../store/actions/cms/email/email.action\";\r\nimport {\r\n Container,\r\n Modal,\r\n ModalHeader,\r\n ModalBody,\r\n ModalFooter,\r\n} from \"reactstrap\";\r\nimport SentIcon from \"../../../../assets/icons/sent_icon.svg\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\n\r\nconst SendTestEmail = (props) => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [addresses, appendAddress] = React.useState([]);\r\n const [input, setInput] = React.useState(\"\");\r\n const [modalOpen, toggleModal] = React.useState(false);\r\n const [sent, setSent] = React.useState(false);\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n const addAddress = () => {\r\n if (input.length > 0 && validateEmail(input)) {\r\n addresses.push(input);\r\n appendAddress(addresses);\r\n setInput(\"\");\r\n }\r\n };\r\n const validateEmail = (input) => {\r\n return inputValidator(input, \"email\");\r\n };\r\n const sendTest = () => {\r\n const { dispatch, email } = props;\r\n if (addresses.length === 0) return;\r\n \r\n addresses.map((a) => {\r\n dispatch(\r\n emailActions.sendTest({\r\n toAddress: a,\r\n subject: email.subject ? email.subject : \"Email Preview\",\r\n fromAddr: email.fromAddr\r\n ? email.fromName\r\n ? `${email.fromName}<${email.fromAddr}>`\r\n : email.fromAddr\r\n : \"support@inadra.se\",\r\n body: email.body,\r\n })\r\n );\r\n });\r\n setSent(true);\r\n handleClose()\r\n setTimeout(() => setSent(false), 2500);\r\n //send\r\n };\r\n const removeAddress = (index) => {\r\n let updatedAddresses = Array.from(addresses);\r\n /* updatedAddresses = */ updatedAddresses.splice(index, 1);\r\n appendAddress(updatedAddresses);\r\n };\r\n const renderStatusIcon = () => {\r\n if (input.length === 0)\r\n return ;\r\n else if (validateEmail(input)) {\r\n return ;\r\n } else return ;\r\n };\r\n\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n setInput(e.target.value)} style={{\r\n height: '38px', ['&:focus']: {\r\n boxShadow: 'none',\r\n outline: 0\r\n }\r\n }} value={input} />\r\n \r\n \r\n \r\n \r\n

\r\n
*/}\r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n {renderStatusIcon()}\r\n \r\n \r\n setInput(e.target.value)}\r\n style={{\r\n height: \"38px\",\r\n [\"&:focus\"]: {\r\n boxShadow: \"none\",\r\n outline: 0,\r\n },\r\n }}\r\n value={input}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {addresses.length > 0\r\n ? addresses.map((a, i) => {\r\n return (\r\n \r\n {a}\r\n removeAddress(i)}\r\n style={{\r\n position: \"absolute\",\r\n left: \"91%\",\r\n top: \"32%\",\r\n fontSize: \"15px\",\r\n cursor: \"pointer\",\r\n }}\r\n />\r\n \r\n );\r\n })\r\n : null}\r\n {addresses.length > 0 ? (\r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n {/* {sent ? : null} */}\r\n {/* toggleModal(false)}\r\n onAction={sendTest}\r\n text={\"AreYouSureYouWannaSend\"}\r\n /> */}\r\n
\r\n
\r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n email: state.email,\r\n isSavable: state.email.isSavable,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(SendTestEmail);\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nconst SendConfirmationModal = (props) => {\r\n return (\r\n \r\n null}\r\n aria-labelledby=\"alert-dialog-slide-title\"\r\n aria-describedby=\"alert-dialog-slide-description\"\r\n >\r\n \r\n {\" \"}\r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Input, Row, Col, Label, FormGroup } from \"reactstrap\";\r\nimport { pageActions } from \"../../../../store/actions/cms/page/page.action\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport TemplateSelect from \"../../../components/selects/TemplateSelect\";\r\nimport InheritageButtonGroup from \"../../../components/editor/tools/Inheritage/InheritageButtonGroup\";\r\nimport JirangoSwitch from \"../../../../components/UI/Switch/JirangoSwitch\";\r\nimport ListExpansion from \"../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { cmsActions } from \"../../../../store/actions/cms/cms.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\n\r\nclass PageSettings extends React.Component {\r\n state = {\r\n confirmationAreaIsExpanded: false,\r\n navigationAreaIsExpanded: false,\r\n submitAreaIsExpanded: false,\r\n templateAreaIsExpanded: false,\r\n };\r\n\r\n handleChange = (e, val, path) => {\r\n const { dispatch } = this.props;\r\n const names = path.split(\".\");\r\n const page = deepClone(this.props.page);\r\n let value = val !== null && val !== undefined ? val : e.target.value;\r\n\r\n if (names.length === 1) {\r\n page[names[0]] = value;\r\n }\r\n if (names.length === 2) {\r\n page[names[0]][names[1]] = value;\r\n } else if (names.length === 3) {\r\n page[names[0]][names[1]][names[2]] = value;\r\n } else if (names.length === 4) {\r\n page[names[0]][names[1]][names[2]][names[3]] = value;\r\n } else if (names.length === 5) {\r\n page[names[0]][names[1]][names[2]][names[3]][names[4]] = value;\r\n } else if (names.length === 6) {\r\n page[names[0]][names[1]][names[2]][names[3]][names[4]][names[5]] = value;\r\n }\r\n page.isChanged = true;\r\n\r\n dispatch(pageActions.softUpdate(page));\r\n };\r\n expandArea = (area) => {\r\n this.setState(\r\n {\r\n [area]: !this.state[area],\r\n },\r\n () => {\r\n if (this.state.lastCollapse !== area) {\r\n if (this.state.lastCollapse !== \"\") {\r\n this.setState({ [this.state.lastCollapse]: false }, () => {\r\n this.setState({ lastCollapse: area });\r\n });\r\n } else {\r\n this.setState({ lastCollapse: area });\r\n }\r\n }\r\n }\r\n );\r\n };\r\n toggleInheritageInfo = (on) => {\r\n const { dispatch } = this.props;\r\n dispatch(cmsActions.toggleInheritageInfo(on));\r\n };\r\n toggleInheritageStatus = (status) => {\r\n const { dispatch } = this.props;\r\n const page = deepClone(this.props.page);\r\n page.inherit = status;\r\n page.isChanged = true;\r\n dispatch(pageActions.softUpdate(page));\r\n };\r\n render() {\r\n const { page, cms } = this.props;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `name`)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `title`)} />\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `googleAnalyticsId`)} />\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `facebookId`)} />\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, page.onlyAuthorizedUsers !== true ? true : false, `onlyAuthorizedUsers`)}\r\n isChecked={page.onlyAuthorizedUsers !== true ? false : true}\r\n />\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.toggleInheritageInfo(!cms.inheritInfo)} isChecked={cms.inheritInfo !== true ? false : true} />\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n page: state.page,\r\n template: state.template,\r\n cms: state.cms,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PageSettings);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Input,\r\n Row,\r\n Col,\r\n Label,\r\n FormGroup,\r\n} from \"reactstrap\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport InheritageButtonGroup from \"../../../components/editor/tools/Inheritage/InheritageButtonGroup\";\r\nimport JirangoSwitch from \"../../../../components/UI/Switch/JirangoSwitch\";\r\nimport ListExpansion from \"../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { cmsActions } from \"../../../../store/actions/cms/cms.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport { templateActions } from \"../../../../store/actions/cms/template/template.action\";\r\n\r\nclass TemplateInternalSettings extends React.Component {\r\n state = {\r\n\r\n confirmationAreaIsExpanded: false,\r\n navigationAreaIsExpanded: false,\r\n submitAreaIsExpanded: false,\r\n templateAreaIsExpanded: false,\r\n }\r\n handleChange = (e, val, path) => {\r\n const { dispatch } = this.props;\r\n const names = path.split(\".\");\r\n const template = deepClone(this.props.template.template);\r\n let value = val !== null && val !== undefined ? val : e.target.value;\r\n\r\n if (names.length === 1) {\r\n template[names[0]] = value;\r\n }\r\n if (names.length === 2) {\r\n template[names[0]][names[1]] = value;\r\n }\r\n else if (names.length === 3) {\r\n template[names[0]][names[1]][names[2]] = value;\r\n }\r\n else if (names.length === 4) {\r\n template[names[0]][names[1]][names[2]][names[3]] = value;\r\n }\r\n else if (names.length === 5) {\r\n template[names[0]][names[1]][names[2]][names[3]][names[4]] = value;\r\n }\r\n else if (names.length === 6) {\r\n template[names[0]][names[1]][names[2]][names[3]][names[4]][names[5]] = value;\r\n }\r\n template.isChanged = true;\r\n\r\n dispatch(templateActions.softUpdate(template));\r\n\r\n }\r\n expandArea = area => {\r\n this.setState({\r\n [area]: !this.state[area],\r\n }, () => {\r\n if (this.state.lastCollapse !== area) {\r\n if (this.state.lastCollapse !== '') {\r\n this.setState({ [this.state.lastCollapse]: false }, () => {\r\n this.setState({ lastCollapse: area })\r\n })\r\n }\r\n else {\r\n this.setState({ lastCollapse: area })\r\n }\r\n }\r\n });\r\n };\r\n toggleInheritageInfo = (on) => {\r\n const { dispatch } = this.props;\r\n dispatch(cmsActions.toggleInheritageInfo(on));\r\n }\r\n toggleInheritageStatus = (status) => {\r\n const { dispatch } = this.props;\r\n const template = deepClone(this.props.template.template);\r\n template.inherit = status;\r\n template.isChanged = true;\r\n dispatch(templateActions.softUpdate(template));\r\n }\r\n render() {\r\n const { cms } = this.props;\r\n const {template} = this.props.template\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, null, `name`)}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.toggleInheritageInfo(!cms.inheritInfo)}\r\n isChecked={\r\n cms.inheritInfo !== true\r\n ? false\r\n : true\r\n }\r\n />\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n )\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n template: state.template,\r\n cms: state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(TemplateInternalSettings);\r\n","import React, { Component } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Nav, NavItem, NavLink, TabContent, TabPane, Tooltip as RSTooltip } from \"reactstrap\";\r\nimport { IconButton, Tooltip as MLToolTip } from \"@material-ui/core\";\r\nimport { EditorTabGroup } from \"../tools/EditorTabGroup\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport TemplateSettings from \"../../../areas/template/containers/TemplateSettings/TemplateSettings\";\r\nimport { renderElementSettings } from \"../../../helpers/renderElementSettings\";\r\nimport { FormPagination } from \"../../../areas/form/components/Pagination/Pagination\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport { cmsActions } from \"../../../../store/actions/cms/cms.action\";\r\nimport { templateActions } from \"../../../../store/actions/cms/template/template.action\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport PreviewOption from \"../Nav/NavItems/PreviewOption\";\r\nimport ElementsTab from \"../ElementsTab/ElementsTab\";\r\nimport \"../../../style/EditorLayout.css\";\r\nimport FormSettings from \"../../../areas/form/components/FormSettings/FormSettings\";\r\nimport { pageActions } from \"../../../../store/actions/cms/page/page.action\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport RunFormOption from \"../Nav/NavItems/RunFormOption/RunFormOption\";\r\nimport { emailActions } from \"../../../../store/actions/cms/email/email.action\";\r\nimport { EmailElements } from \"../../../areas/email/elementGroups/EmailElements\";\r\nimport EmailSettings from \"../../../areas/email/containers/EmailEditor/EmailSettings\";\r\nimport SaveIcon from \"@material-ui/icons/Save\";\r\nimport RestorePageIcon from \"@material-ui/icons/RestorePage\";\r\nimport SettingsIcon from \"@material-ui/icons/Settings\";\r\nimport { labelHelper } from \"../../../../helpers/labelHelper\";\r\nimport Zoom from \"@material-ui/core/Zoom\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nimport SendTestEmail from \"../../../areas/email/components/SendTestEmail\";\r\nimport LaunchIcon from \"@material-ui/icons/Launch\";\r\nimport ConfirmModal from \"../../ConfirmModal/ConfirmModal\";\r\nimport InheritageWrapper from \"../tools/Inheritage/InheritageWrapper\";\r\nimport PageSettings from \"../../../areas/page/components/PageSettings\";\r\nimport TemplateInternalSettings from \"../../../areas/template/components/TemplateInternalSettings\";\r\nimport { alertActions } from \"../../../../store/actions/alert.action\";\r\nimport AlertDialog from \"../../../../global/AlertDialog\";\r\n\r\nclass EditorSidebar extends Component {\r\n state = {\r\n activeTab: \"Elements\",\r\n displayPopOver: false,\r\n confirmModal: false,\r\n inheritedElements: [],\r\n tooltips: {\r\n saveOpen: false,\r\n postOpen: false,\r\n templateOpen: false,\r\n clearOpen: false,\r\n prevPageOpen: false,\r\n nextPageOpen: false,\r\n addPageOpen: false,\r\n pageSettingsOpen: false,\r\n removePageOpen: false,\r\n formSettingsOpen: false,\r\n openPageOpen: false,\r\n },\r\n copyArea: \"\",\r\n copyName: \"\",\r\n affected: [],\r\n };\r\n componentDidMount() {\r\n if (this.props.getRefs) {\r\n this.props.getRefs({ asideEditorRef: this.asideEditorRef });\r\n }\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.tempIsSavable === true && this.props.tempIsSavable === false) {\r\n this.save(true);\r\n }\r\n const {form,tempIsSavable,page,email} = this.props;\r\n if(form.isSavable || page.isSavable || tempIsSavable || email.isSavable){\r\n window.addEventListener(\"beforeunload\", this.handleWindowBeforeUnload);\r\n\r\n }\r\n else{\r\n window.removeEventListener(\"beforeunload\", this.handleWindowBeforeUnload);\r\n\r\n }\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"beforeunload\", this.handleWindowBeforeUnload);\r\n }\r\n handleWindowBeforeUnload(e){\r\n var confirmationMessage = 'It looks like you have been editing something. '\r\n + 'If you leave before saving, your changes will be lost.';\r\n\r\n (e || window.event).returnValue = confirmationMessage; //Gecko + IE\r\n return confirmationMessage; //Gecko + Webkit, Safari, Chrome etc.\r\n }\r\n toggleTooltip = (path) => {\r\n this.setState({\r\n tooltips: {\r\n ...this.state.tooltips,\r\n [path]: !this.state.tooltips[path],\r\n },\r\n });\r\n };\r\n toggle = (tab) => {\r\n if (tab === \"FormSettings\") {\r\n this.props.dispatch(formActions.deselect());\r\n }\r\n if (tab === \"PageSettings\") {\r\n this.props.dispatch(pageActions.deselect());\r\n }\r\n if (tab === \"TemplateInternalSettings\") {\r\n this.props.dispatch(templateActions.deselect());\r\n }\r\n this.setState({\r\n activeTab: tab,\r\n });\r\n };\r\n addPage = () => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.addPage());\r\n };\r\n removePage = () => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.removePage());\r\n };\r\n scrollPage = (page) => {\r\n const { dispatch } = this.props;\r\n const { form } = this.props;\r\n if (page <= form.pages || page >= 1) {\r\n dispatch(formActions.scrollPage(page));\r\n }\r\n };\r\n\r\n openPage = () => {\r\n const { page } = this.props;\r\n if (window.location.href.includes(\"localhost\")) {\r\n window.open(`/p/${page.pageId.toString(36)}`);\r\n } else {\r\n window.open(`/cms/p/${page.pageId.toString(36)}`);\r\n }\r\n };\r\n parseElementNames = (el, lang) => {\r\n if (el.type === elementConstants.EVENT) return el.props.name;\r\n if (el.type === elementConstants.FIELD) return el.props.labels.find((l) => l.languageCode === lang).text;\r\n if (el.type === elementConstants.QUESTION) return el.props.labels.find((l) => l.languageCode === lang).text;\r\n if (el.type === elementConstants.CONTENT) return el.data.type;\r\n else return el.type;\r\n };\r\n save = (confirmed = false) => {\r\n const { dispatch, form, page, template, tempIsSavable, enviroment, cms, email, isOwner } = this.props;\r\n //If inherited items are affected\r\n if (!confirmed && cms.inheritageAffected) {\r\n const affected = [];\r\n //if the current area [FORM, PAGE, EMAIL, TEMPLATE] run this\r\n \r\n //The ugliest mf piece of code ever written (brainfart)\r\n if (\r\n !isOwner ||\r\n (cms.enviroment == sourceTypes.FORM && !confirmed && cms.inheritageAffected && template.eventId != cms.eventId && form.templateId == template.templateId) ||\r\n (cms.enviroment == sourceTypes.PAGE && !confirmed && cms.inheritageAffected && template.eventId != cms.eventId && page.templateId == template.templateId)\r\n ) {\r\n if (!isOwner) {\r\n let copyArea = \"IsInheritedACopyWillBeCreated\";\r\n let area = \"\";\r\n if (cms.enviroment == sourceTypes.FORM) {\r\n copyArea += \"Form\";\r\n area = \"Form\";\r\n }\r\n if (cms.enviroment == sourceTypes.PAGE) {\r\n copyArea += \"Page\";\r\n area = \"Page\";\r\n }\r\n if (cms.enviroment == sourceTypes.EMAIL) {\r\n copyArea += \"EMAIL\";\r\n area = \"Email\";\r\n }\r\n if (cms.enviroment == sourceTypes.TEMPLATE) {\r\n copyArea += \"TEMPLATE\";\r\n area = \"Template\";\r\n }\r\n affected.push({ area, name: \"\" });\r\n this.setState({ confirmModal: true, copyArea });\r\n }\r\n //If the template in the area is affected run these two!\r\n if (cms.enviroment == sourceTypes.FORM) {\r\n if (!confirmed && cms.inheritageAffected && template.eventId != cms.eventId && form.templateId == template.templateId && tempIsSavable) {\r\n affected.push({ area: \"Template\", name: \"\" });\r\n this.setState({\r\n confirmModal: true,\r\n copyArea: this.state.copyArea ? (this.state.copyArea += \"AndTemplate\") : \"IsInheritedACopyWillBeCreatedTemplate\",\r\n });\r\n }\r\n }\r\n if (cms.enviroment == sourceTypes.PAGE) {\r\n if (!confirmed && cms.inheritageAffected && template.eventId != cms.eventId && page.templateId == template.templateId && tempIsSavable) {\r\n affected.push({ area: \"Template\", name: \"\" });\r\n this.setState({\r\n confirmModal: true,\r\n copyArea: this.state.copyArea ? (this.state.copyArea += \"AndTemplate\") : \"IsInheritedACopyWillBeCreatedTemplate\",\r\n });\r\n }\r\n }\r\n this.setState({ affected });\r\n if (affected && affected.length > 0) return;\r\n }\r\n }\r\n if (!confirmed && cms.enviroment === sourceTypes.FORM && !isOwner) {\r\n if (!form.inheritParentId && form.inherit !== null) {\r\n let elText = null;\r\n let inheritedElements = [];\r\n if (form.formElements.find((fe) => fe.props.inherit == null)) {\r\n form.formElements.map((f) => {\r\n if (f.props.inherit == null) {\r\n inheritedElements.push(f);\r\n }\r\n });\r\n }\r\n if (inheritedElements.length > 0) {\r\n elText = (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {inheritedElements.map((ie) => {\r\n return
{this.parseElementNames(ie, form.languageCode)}
;\r\n })}\r\n
\r\n );\r\n }\r\n this.setState({ confirmModal: true, inheritedElements: elText });\r\n return;\r\n }\r\n }\r\n this.setState({ confirmModal: false, copyArea: \"\" });\r\n const newTemplate = deepClone(template);\r\n if (tempIsSavable) {\r\n const newTemp = this.state.affected.find((a) => a.area == \"Template\");\r\n newTemplate.name = newTemp ? newTemp.name : newTemplate.name;\r\n newTemplate.eventId = cms.eventId;\r\n dispatch(templateActions.checkForUpdates(newTemplate));\r\n } else {\r\n if (enviroment === sourceTypes.FORM) {\r\n if (\r\n form.formElements.find(\r\n (el) =>\r\n !el.props &&\r\n el.type != elementConstants.INVOICE_FIELD &&\r\n el.type != elementConstants.CONTAINER &&\r\n el.type != elementConstants.PAYMENT_OPTIONS &&\r\n el.type != elementConstants.PROFILEIMAGE_UPLOAD &&\r\n el.type != elementConstants.DISCOUNT &&\r\n el.type != elementConstants.PRE_CONFIRMATION &&\r\n el.type != elementConstants.GROUP_REGISTRATION &&\r\n el.type != elementConstants.FILE_UPLOADER\r\n )\r\n ) {\r\n dispatch(alertActions.error(\"YouHaveDeletedElementsInForm\", \"RemoveAllMarkedElementsThenSave\"));\r\n return;\r\n }\r\n const newForm = deepClone(form);\r\n newForm.templateId = newTemplate.templateId;\r\n const newF = this.state.affected.find((a) => a.area == \"Form\");\r\n newForm.name = newF ? newF.name : newForm.name;\r\n /* newForm.name = this.state.copyName || newForm.name; */\r\n if (newForm.templateId != template.templateId) newForm.templateId = template.templateId;\r\n if (newForm.isSavable || form.templateId !== newTemplate.templateId) dispatch(formActions.checkForUpdates(newForm));\r\n }\r\n if (enviroment === sourceTypes.PAGE) {\r\n const newPage = deepClone(page);\r\n newPage.templateId = newTemplate.templateId;\r\n const newP = this.state.affected.find((a) => a.area == \"Page\");\r\n newPage.name = newP ? newP.name : newPage.name;\r\n /* newPage.name = this.state.copyName || newPage.name; */\r\n\r\n if (newPage.templateId != template.templateId) newPage.templateId = template.templateId;\r\n if (newPage.isSavable || page.templateId !== newTemplate.templateId) dispatch(pageActions.checkForUpdates(newPage));\r\n }\r\n if (enviroment === sourceTypes.EMAIL) {\r\n if (!email.subject) {\r\n dispatch(alertActions.error(\"EmailRequriesSubject\", \"AddASubjectAndThenSave\"));\r\n return;\r\n }\r\n const newMail = deepClone(email);\r\n newMail.templateId = newTemplate.templateId;\r\n const newM = this.state.affected.find((a) => a.area == \"Email\");\r\n newMail.name = newM ? newM.name : newMail.name;\r\n /* newMail.name = this.state.copyName || newMail.name; */\r\n\r\n dispatch(emailActions.update(newMail));\r\n }\r\n }\r\n this.setState({ affected: [] });\r\n };\r\n onTransfer = () => {\r\n const { selectedElement, dispatch } = this.props;\r\n const element = { ...selectedElement };\r\n element.page = element.page + 1;\r\n dispatch(formActions.transfer(element));\r\n };\r\n navigateToTemplateEditor = () => {\r\n const { template, dispatch } = this.props;\r\n dispatch(cmsActions.setSourceLocation(window.location.pathname), sourceTypes.FORM);\r\n window.open(`/cms/template/${template.templateId}`);\r\n };\r\n togglePopover = () => {\r\n this.setState({ displayPopOver: false, popoverMessage: \"\" });\r\n };\r\n restoreForm = () => {\r\n const { dispatch } = this.props;\r\n dispatch(formActions.restore());\r\n };\r\n renderTabContent = (activeTab) => {\r\n const { selectedElement, selectedContainer, form, enviroment, template } = this.props;\r\n if (activeTab === \"ElementSettings\" || selectedElement || selectedContainer) {\r\n return (\r\n \r\n {selectedElement ? renderElementSettings(selectedElement.type, selectedElement, this.props.toggleConditionModal) : null}\r\n {selectedContainer && !selectedElement ? {renderElementSettings(selectedContainer.type, selectedContainer, this.props.toggleConditionModal)} : null}\r\n \r\n );\r\n } else if (activeTab === \"Elements\") {\r\n return (\r\n \r\n {enviroment === sourceTypes.EMAIL ? : }\r\n \r\n );\r\n } else if ((activeTab === \"TemplateSettings\" && template.inherit !== false) || (activeTab === \"TemplateSettings\" && template.eventId === this.props.cms.eventId)) {\r\n return (\r\n \r\n \r\n \r\n );\r\n } else if (activeTab === \"EmailSettings\") {\r\n return (\r\n \r\n \r\n \r\n );\r\n } else if (activeTab === \"FormSettings\") {\r\n return (\r\n \r\n \r\n \r\n );\r\n } else if (activeTab === \"PageSettings\") {\r\n return (\r\n \r\n \r\n \r\n );\r\n } else if (activeTab === \"TemplateInternalSettings\") {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n };\r\n setOverflow = (activeTab) => {\r\n switch (activeTab) {\r\n case \"FormSettings\":\r\n return \"auto\";\r\n case \"ElementSettings\":\r\n if (this.props.enviroment === sourceTypes.EMAIL && this.props.selectedElement) {\r\n return \"auto\";\r\n }\r\n if (this.props.selectedElement && this.props.selectedElement.type === elementConstants.CONTENT) {\r\n return \"auto\";\r\n }\r\n if (!this.props.selectedElement && this.props.selectedContainer) {\r\n return \"auto\";\r\n }\r\n return \"hidden\";\r\n case \"Element\":\r\n return \"hidden\";\r\n case \"TemplateSettings\":\r\n return \"auto\";\r\n default:\r\n return \"auto\";\r\n }\r\n };\r\n onNameEdit = (name) => {\r\n this.setState({ copyName: name });\r\n };\r\n render() {\r\n const { selectedElement, selectedContainer, form, page, enviroment, template, tempIsSavable, email } = this.props;\r\n\r\n let activeTab = this.state.activeTab;\r\n if (selectedElement || selectedContainer) {\r\n activeTab = \"ElementSettings\";\r\n }\r\n if (template === undefined) return null;\r\n return (\r\n \r\n
(this.asideEditorRef = r)}>\r\n \r\n (form.isSavable || page.isSavable || tempIsSavable || email.isSavable ? this.save() : null)}>\r\n this.save()} */\r\n id=\"saveOpen\"\r\n >\r\n \r\n {/*
*/}\r\n {/*

*/}\r\n {/* Save*/}\r\n {/*

*/}\r\n \r\n \r\n
\r\n {enviroment === sourceTypes.FORM ? : null}\r\n {enviroment === sourceTypes.PAGE ? (\r\n \r\n \r\n \r\n {/*
*/}\r\n {/*

*/}\r\n {/* Preview*/}\r\n {/*

*/}\r\n
\r\n
\r\n ) : null}\r\n {enviroment === sourceTypes.EMAIL ? : null}\r\n {enviroment === sourceTypes.FORM && form.settings !== undefined ? (\r\n \r\n \r\n {\r\n this.toggle(\"FormSettings\");\r\n }}\r\n >\r\n \r\n {/*
*/}\r\n {/*

*/}\r\n {/* Settings*/}\r\n {/*

*/}\r\n \r\n
\r\n
\r\n ) : null}\r\n {enviroment === sourceTypes.PAGE ? (\r\n \r\n }>\r\n {\r\n this.toggle(\"PageSettings\");\r\n }}\r\n >\r\n \r\n {/*
*/}\r\n {/*

*/}\r\n {/* Devices*/}\r\n {/*

*/}\r\n \r\n
\r\n
\r\n ) : null}\r\n {enviroment === sourceTypes.TEMPLATE ? (\r\n \r\n }>\r\n {\r\n this.toggle(\"TemplateInternalSettings\");\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n ) : null}\r\n {enviroment !== sourceTypes.TEMPLATE && enviroment !== sourceTypes.EMAIL ? : null}\r\n {enviroment == sourceTypes.FORM ? (\r\n \r\n \r\n {\r\n this.restoreForm();\r\n }}\r\n >\r\n \r\n {/*
*/}\r\n {/*

*/}\r\n {/* Restore*/}\r\n {/*

*/}\r\n \r\n
\r\n
\r\n ) : null}\r\n \r\n {enviroment === sourceTypes.FORM ? (\r\n \r\n ) : null}\r\n
\r\n {!this.props.isOwner ? : null}\r\n {activeTab !== \"ElementSettings\" ? (\r\n \r\n ) : null}\r\n
\r\n \r\n {this.renderTabContent(activeTab)}\r\n \r\n
\r\n
\r\n
\r\n {this.state.confirmModal ? (\r\n {\r\n const affectedAreas = Array.from(this.state.affected);\r\n affectedAreas.map((a) => {\r\n if (a.area == path) {\r\n a.name = value;\r\n }\r\n });\r\n this.setState({ affected: affectedAreas });\r\n }}\r\n extraProps={null}\r\n affected={this.state.affected}\r\n text={this.state.inheritedElements ? : }\r\n onAction={() => this.save(true)}\r\n onCancel={() => this.setState({ confirmModal: false })}\r\n />\r\n ) : null}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n let selectedContainer = null;\r\n let selectedElement = null;\r\n let inherit = null;\r\n let isOwner = false;\r\n\r\n if (enviroment === sourceTypes.FORM) {\r\n inherit = state.form ? state.form.inherit : null;\r\n selectedElement = state.form.selectedElement;\r\n selectedContainer = state.form.selectedContainer;\r\n isOwner = state.form ? state.cms.eventId == state.form.eventId && state.form.inheritParentId == null : false;\r\n }\r\n if (enviroment === sourceTypes.PAGE) {\r\n inherit = state.page ? state.page.inherit : null;\r\n selectedElement = state.page.selectedElement;\r\n selectedContainer = state.page.selectedContainer;\r\n isOwner = state.page ? state.cms.eventId == state.page.eventId : false;\r\n }\r\n if (enviroment === sourceTypes.TEMPLATE) {\r\n inherit = state.template.template ? state.template.template.inherit : null;\r\n selectedElement = state.template.selectedElement;\r\n selectedContainer = state.template.selectedContainer;\r\n isOwner = state.template.template ? state.cms.eventId == state.template.template.eventId : false;\r\n }\r\n\r\n if (enviroment === sourceTypes.EMAIL) {\r\n selectedElement = state.email.selectedElement;\r\n selectedContainer = null;\r\n }\r\n return {\r\n selectedElement,\r\n selectedContainer,\r\n page: state.page,\r\n form: state.form,\r\n email: state.email,\r\n enviroment: state.cms.enviroment,\r\n template: state.template.template,\r\n tempIsSavable: state.template.isSavable,\r\n cms: state.cms,\r\n inherit,\r\n isOwner,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(EditorSidebar);\r\n","import { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\nimport { defaultContainerElement, defaultContentElement, defaultQuestionElement, defaultFieldElement, defaultEventElement } from \"../models/defaultElements\";\r\nimport { deepClone } from \"../../helpers/objectHelper\";\r\n\r\n\r\nexport const elementOrgin = (type) => {\r\n switch (type) {\r\n case elementConstants.FIELD:\r\n return deepClone(defaultFieldElement.data)\r\n case elementConstants.EVENT:\r\n return deepClone(defaultEventElement.data)\r\n case elementConstants.QUESTION:\r\n return deepClone(defaultQuestionElement.data)\r\n case elementConstants.CONTENT:\r\n return deepClone(defaultContentElement.data)\r\n case elementConstants.CONTAINER:\r\n return deepClone(defaultContainerElement.data)\r\n default:\r\n return null\r\n }\r\n}","const emailPattern = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n// const phonePattern = /^(\\+{1}\\d{2,3}\\s?[(]{1}\\d{1,3}[)]{1}\\s?\\d+|\\+\\d{2,3}\\s{1}\\d+|\\d+){1}[\\s|-]?\\d+([\\s|-]?\\d+){1,2}$/;\r\nconst phonePattern = /^(\\+\\d{1,2}\\s)?\\(?\\d{3}\\)?[\\s.-]?\\d{3}[\\s.-]?\\d{4}$/;\r\n\r\nexport function inputValidator(input, type) {\r\n switch (type) {\r\n case \"numeric\":\r\n return !isNaN(input);\r\n case \"email\":\r\n return emailPattern.test(String(input).toLowerCase());\r\n case \"phone\":\r\n return phonePattern.test(String(input).toLowerCase());\r\n default:\r\n return true;\r\n }\r\n}\r\n\r\nexport function validateGln(input) {\r\n // Test string for correct length\r\n if (!input) {\r\n return false;\r\n }\r\n input = input.replace(/[\\s\\-]/g, \"\", );\r\n if(isNaN(input)){\r\n return false;\r\n }\r\n // let data = input.split(\"\");\r\n if (input.length != 13) {\r\n return false;\r\n }\r\n // Test string for being numeric\r\n for (let i = 0; i < input.length; i++) {\r\n if (input.charCodeAt(i) < 0x30 || input.charCodeAt(i) > 0x39) return false;\r\n }\r\n let weight = 1;\r\n let sum = 0;\r\n for (let i = 0; i < input.length - 1; i++) {\r\n sum += parseInt(input.charAt(i), 10) * weight;\r\n weight = (weight + 2) % 4;\r\n }\r\n let remainder = (10 - (sum % 10)) % 10;\r\n return input.charAt(input.length - 1) == 0 + remainder;\r\n}\r\n\r\nexport function validateOrgno(input, countryCode) {\r\n\r\n if (!input) {\r\n return false;\r\n }\r\n input = input.replace(/[\\s\\-]/g, \"\", );\r\n if(isNaN(input)){\r\n return false;\r\n }\r\n switch (countryCode) {\r\n // case \"DNK\":\r\n // let bValid = input.length == 8;\r\n // if (bValid) {\r\n // bValid = true;\r\n // let iRes = 0;\r\n // let sMul = \"27654321\";\r\n // for (let i = 0; i < input.length; i++) {\r\n // iRes += new Number(input.substr(i, 1)) * parseInt(sMul.substr(i, 1));\r\n // }\r\n // bValid = iRes % 11 == 0;\r\n // }\r\n // return bValid;\r\n case \"NOR\":\r\n let gyldig = false;\r\n let kontrollsiffer = 0;\r\n let o = input.split(\"\").map(i => {\r\n return parseInt(i, 10);\r\n });\r\n if (input.length == 9) {\r\n let sum =\r\n o[0] * 3 +\r\n o[1] * 2 +\r\n o[2] * 7 +\r\n o[3] * 6 +\r\n o[4] * 5 +\r\n o[5] * 4 +\r\n o[6] * 3 +\r\n o[7] * 2;\r\n let rest = sum % 11;\r\n let kontrollsiffer = rest === 0\r\n ? 0\r\n : 11 - rest;\r\n\r\n return rest != 1 && kontrollsiffer == o[8];\r\n } else {\r\n return false;\r\n }\r\n case \"SWE\":\r\n default:\r\n // Check valid length & form\r\n let numdigits = input.length\r\n if (input.indexOf(\"-\") === -1) {\r\n if (input.length === 10) {\r\n input = input.slice(0, 6) + \"-\" + input.slice(6);\r\n } else {\r\n input = input.slice(0, 8) + \"-\" + input.slice(8);\r\n }\r\n }\r\n if (\r\n !input.match(\r\n /^(\\d{2})(\\d{2})(\\d{2})\\-(\\d{4})|(\\d{4})(\\d{2})(\\d{2})\\-(\\d{4})$/\r\n )\r\n ) {\r\n return false;\r\n }\r\n // Clean input\r\n input = input.replace(\"-\", \"\");\r\n if (input.length === 12) {\r\n input = input.substring(2);\r\n }\r\n let sum = 0;\r\n // Check luhn algorithm\r\n for (let i = 0; i < input.length; i = i + 1) {\r\n let digit = parseInt(input.charAt(i), 10);\r\n if (i % 2 === input.length % 2) {\r\n digit *= 2;\r\n }\r\n if (digit > 9) {\r\n digit -= 9;\r\n }\r\n sum += digit;\r\n }\r\n return sum % 10 === 0;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { ExpansionPanelDetails as AccordionDetails, ExpansionPanelSummary as AccordionSummary, ExpansionPanel as Accordion } from \"@material-ui/core\";\r\nimport ExpansionPanelActions from \"@material-ui/core/ExpansionPanelActions\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport ExpandMoreIcon from \"@material-ui/icons/ExpandMore\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\n\r\nexport default function ListExpansion(props) {\r\n const { footer, children, header, icon, description, defaultExpanded } = props;\r\n\r\n return (\r\n
\r\n \r\n } aria-controls=\"panel1c-content\" id=\"panel1c-header\" style={{ color: \"#222\", maxHeight: \"33.5px\", minHeight: \"33.5px\" /* backgroundColor: '#2f353a' */ }}>\r\n
\r\n {icon && !icon.toString().includes(\"fa\") ? icon : null}\r\n
\r\n {\" \"}\r\n
\r\n
\r\n
\r\n \r\n
\r\n {children}\r\n
\r\n \r\n {footer ? (\r\n \r\n \r\n \r\n \r\n ) : null}\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function ModeratorExpansionList(props) {\r\n const { footer, children, header, icon, description, expanded, summaryContent } = props;\r\n return (\r\n
\r\n \r\n } aria-controls=\"panel1c-content\" id=\"panel1c-header\" style={{ color: \"#eee\" /* backgroundColor: '#2f353a' */ }}>\r\n
\r\n \r\n {\" \"}\r\n \r\n
\r\n
{summaryContent}
\r\n
\r\n \r\n
\r\n {children}\r\n
\r\n \r\n {footer ? (\r\n \r\n \r\n \r\n \r\n ) : null}\r\n
\r\n
\r\n );\r\n}\r\n","export const colorHelper = {\r\n getCorrectTextColor,\r\n linearGradient,\r\n hexToRgb,\r\n rgbToObject,\r\n colourNameToHex\r\n}\r\n\r\nfunction getCorrectTextColor(hex) {\r\n\r\n /*\r\n From this W3C document: http://www.webmasterworld.com/r.cgi?f=88&d=9769&url=http://www.w3.org/TR/AERT#color-contrast\r\n \r\n Color brightness is determined by the following formula: \r\n ((Red value X 299) + (Green value X 587) + (Blue value X 114)) / 1000\r\n\r\nI know this could be more compact, but I think this is easier to read/explain.\r\n \r\n */\r\n\r\n const threshold = 130; /* about half of 256. Lower threshold equals more dark text on dark background */\r\n\r\n let hRed = hexToR(hex);\r\n let hGreen = hexToG(hex);\r\n let hBlue = hexToB(hex);\r\n\r\n const cBrightness = ((hRed * 299) + (hGreen * 587) + (hBlue * 114)) / 1000;\r\n if (cBrightness > threshold) { return \"#000000\"; } else { return \"#ffffff\"; }\r\n}\r\n\r\nfunction hexToR(h) { return parseInt((cutHex(h)).substring(0, 2), 16) }\r\nfunction hexToG(h) { return parseInt((cutHex(h)).substring(2, 4), 16) }\r\nfunction hexToB(h) { return parseInt((cutHex(h)).substring(4, 6), 16) }\r\nfunction cutHex(h) { return (h.charAt(0) == \"#\") ? h.substring(1, 7) : h }\r\n\r\nexport function hexToRgb(hex) {\r\n let hexBase = hex;\r\n if(hex.length < 6){\r\n for (let index = hex.length - 1; index < 6; index++) {\r\n hexBase += hexBase[1];\r\n }\r\n } \r\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hexBase);\r\n return result ? {\r\n r: parseInt(result[1], 16),\r\n g: parseInt(result[2], 16),\r\n b: parseInt(result[3], 16),\r\n a: 1\r\n } : null;\r\n}\r\n\r\nexport function rgbToObject(color) {\r\n const result = color.replace(/[^\\d,]/g, '').split(',');\r\n return result ? {\r\n r: parseInt(result[0], 16),\r\n g: parseInt(result[1], 16),\r\n b: parseInt(result[2], 16),\r\n a: result[3] !== undefined ? parseInt(result[3], 16) : 1\r\n } : null;\r\n}\r\n\r\nfunction colourNameToHex(colour) {\r\n var colours = {\r\n \"aliceblue\": \"#f0f8ff\", \"antiquewhite\": \"#faebd7\", \"aqua\": \"#00ffff\", \"aquamarine\": \"#7fffd4\", \"azure\": \"#f0ffff\",\r\n \"beige\": \"#f5f5dc\", \"bisque\": \"#ffe4c4\", \"black\": \"#000000\", \"blanchedalmond\": \"#ffebcd\", \"blue\": \"#0000ff\", \"blueviolet\": \"#8a2be2\", \"brown\": \"#a52a2a\", \"burlywood\": \"#deb887\",\r\n \"cadetblue\": \"#5f9ea0\", \"chartreuse\": \"#7fff00\", \"chocolate\": \"#d2691e\", \"coral\": \"#ff7f50\", \"cornflowerblue\": \"#6495ed\", \"cornsilk\": \"#fff8dc\", \"crimson\": \"#dc143c\", \"cyan\": \"#00ffff\",\r\n \"darkblue\": \"#00008b\", \"darkcyan\": \"#008b8b\", \"darkgoldenrod\": \"#b8860b\", \"darkgray\": \"#a9a9a9\", \"darkgreen\": \"#006400\", \"darkkhaki\": \"#bdb76b\", \"darkmagenta\": \"#8b008b\", \"darkolivegreen\": \"#556b2f\",\r\n \"darkorange\": \"#ff8c00\", \"darkorchid\": \"#9932cc\", \"darkred\": \"#8b0000\", \"darksalmon\": \"#e9967a\", \"darkseagreen\": \"#8fbc8f\", \"darkslateblue\": \"#483d8b\", \"darkslategray\": \"#2f4f4f\", \"darkturquoise\": \"#00ced1\",\r\n \"darkviolet\": \"#9400d3\", \"deeppink\": \"#ff1493\", \"deepskyblue\": \"#00bfff\", \"dimgray\": \"#696969\", \"dodgerblue\": \"#1e90ff\",\r\n \"firebrick\": \"#b22222\", \"floralwhite\": \"#fffaf0\", \"forestgreen\": \"#228b22\", \"fuchsia\": \"#ff00ff\",\r\n \"gainsboro\": \"#dcdcdc\", \"ghostwhite\": \"#f8f8ff\", \"gold\": \"#ffd700\", \"goldenrod\": \"#daa520\", \"gray\": \"#808080\", \"green\": \"#008000\", \"greenyellow\": \"#adff2f\",\r\n \"honeydew\": \"#f0fff0\", \"hotpink\": \"#ff69b4\",\r\n \"indianred \": \"#cd5c5c\", \"indigo\": \"#4b0082\", \"ivory\": \"#fffff0\", \"khaki\": \"#f0e68c\",\r\n \"lavender\": \"#e6e6fa\", \"lavenderblush\": \"#fff0f5\", \"lawngreen\": \"#7cfc00\", \"lemonchiffon\": \"#fffacd\", \"lightblue\": \"#add8e6\", \"lightcoral\": \"#f08080\", \"lightcyan\": \"#e0ffff\", \"lightgoldenrodyellow\": \"#fafad2\",\r\n \"lightgrey\": \"#d3d3d3\", \"lightgreen\": \"#90ee90\", \"lightpink\": \"#ffb6c1\", \"lightsalmon\": \"#ffa07a\", \"lightseagreen\": \"#20b2aa\", \"lightskyblue\": \"#87cefa\", \"lightslategray\": \"#778899\", \"lightsteelblue\": \"#b0c4de\",\r\n \"lightyellow\": \"#ffffe0\", \"lime\": \"#00ff00\", \"limegreen\": \"#32cd32\", \"linen\": \"#faf0e6\",\r\n \"magenta\": \"#ff00ff\", \"maroon\": \"#800000\", \"mediumaquamarine\": \"#66cdaa\", \"mediumblue\": \"#0000cd\", \"mediumorchid\": \"#ba55d3\", \"mediumpurple\": \"#9370d8\", \"mediumseagreen\": \"#3cb371\", \"mediumslateblue\": \"#7b68ee\",\r\n \"mediumspringgreen\": \"#00fa9a\", \"mediumturquoise\": \"#48d1cc\", \"mediumvioletred\": \"#c71585\", \"midnightblue\": \"#191970\", \"mintcream\": \"#f5fffa\", \"mistyrose\": \"#ffe4e1\", \"moccasin\": \"#ffe4b5\",\r\n \"navajowhite\": \"#ffdead\", \"navy\": \"#000080\",\r\n \"oldlace\": \"#fdf5e6\", \"olive\": \"#808000\", \"olivedrab\": \"#6b8e23\", \"orange\": \"#ffa500\", \"orangered\": \"#ff4500\", \"orchid\": \"#da70d6\",\r\n \"palegoldenrod\": \"#eee8aa\", \"palegreen\": \"#98fb98\", \"paleturquoise\": \"#afeeee\", \"palevioletred\": \"#d87093\", \"papayawhip\": \"#ffefd5\", \"peachpuff\": \"#ffdab9\", \"peru\": \"#cd853f\", \"pink\": \"#ffc0cb\", \"plum\": \"#dda0dd\", \"powderblue\": \"#b0e0e6\", \"purple\": \"#800080\",\r\n \"rebeccapurple\": \"#663399\", \"red\": \"#ff0000\", \"rosybrown\": \"#bc8f8f\", \"royalblue\": \"#4169e1\",\r\n \"saddlebrown\": \"#8b4513\", \"salmon\": \"#fa8072\", \"sandybrown\": \"#f4a460\", \"seagreen\": \"#2e8b57\", \"seashell\": \"#fff5ee\", \"sienna\": \"#a0522d\", \"silver\": \"#c0c0c0\", \"skyblue\": \"#87ceeb\", \"slateblue\": \"#6a5acd\", \"slategray\": \"#708090\", \"snow\": \"#fffafa\", \"springgreen\": \"#00ff7f\", \"steelblue\": \"#4682b4\",\r\n \"tan\": \"#d2b48c\", \"teal\": \"#008080\", \"thistle\": \"#d8bfd8\", \"tomato\": \"#ff6347\", \"turquoise\": \"#40e0d0\",\r\n \"violet\": \"#ee82ee\",\r\n \"wheat\": \"#f5deb3\", \"white\": \"#ffffff\", \"whitesmoke\": \"#f5f5f5\",\r\n \"yellow\": \"#ffff00\", \"yellowgreen\": \"#9acd32\"\r\n };\r\n\r\n if (typeof colours[colour.toLowerCase()] != 'undefined') {\r\n return colours[colour.toLowerCase()];\r\n }\r\n\r\n\r\n return false;\r\n}\r\n\r\nfunction linearGradient(colorBase, dir) {\r\n let r = hexToR(colorBase);\r\n let g = hexToG(colorBase);\r\n let b = hexToB(colorBase);\r\n\r\n const background = `linear-gradient(to ${dir}, rgb(${r}, ${g}, ${b}), rgba(${r}, ${g}, ${b}, 0))`;\r\n return background;\r\n}","\r\nexport const calculateImageSize = (base64String) => {\r\n let padding, inBytes, base64StringLength;\r\n if (base64String.endsWith(\"==\")) padding = 2;\r\n else if (base64String.endsWith(\"=\")) padding = 1;\r\n else padding = 0;\r\n\r\n base64StringLength = base64String.length;\r\n inBytes = (base64StringLength / 4) * 3 - padding;\r\n let kBytes = inBytes / 1000;\r\n let mBytes = kBytes / 1000\r\n return { inBytes, kBytes, mBytes };\r\n}\r\n\r\nexport const resetOrientation = (base64, srcOrientation, callback) => {\r\n\r\n var img = new Image();\r\n img.src = base64;\r\n\r\n\r\n\r\n img.onload = function () {\r\n var width = img.width,\r\n height = img.height,\r\n canvas = document.createElement('canvas'),\r\n ctx = canvas.getContext(\"2d\");\r\n\r\n // set proper canvas dimensions before transform & export\r\n if (4 < srcOrientation && srcOrientation < 9) {\r\n canvas.width = height;\r\n canvas.height = width;\r\n } else {\r\n canvas.width = width;\r\n canvas.height = height;\r\n }\r\n\r\n // transform context before drawing image\r\n switch (srcOrientation) {\r\n case 2: ctx.transform(-1, 0, 0, 1, width, 0); break;\r\n case 3: ctx.transform(-1, 0, 0, -1, width, height); break;\r\n case 4: ctx.transform(1, 0, 0, -1, 0, height); break;\r\n case 5: ctx.transform(0, 1, 1, 0, 0, 0); break;\r\n case 6: ctx.transform(0, 1, -1, 0, height, 0); break;\r\n case 7: ctx.transform(0, -1, -1, 0, height, width); break;\r\n case 8: ctx.transform(0, -1, 1, 0, 0, width); break;\r\n default: break;\r\n }\r\n\r\n // draw image\r\n ctx.drawImage(img, 0, 0);\r\n\r\n // export base64\r\n callback(canvas.toDataURL('image/jpeg', 0.7));\r\n };\r\n\r\n\r\n}\r\n\r\nexport function dataURLtoFile(dataurl, filename) {\r\n var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],\r\n bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new File([u8arr], filename, { type: mime });\r\n}","export const lazyLoad = function () {\r\n let lazyImages = [].slice.call(document.querySelectorAll(\"img.lazy\"));\r\n let active = false;\r\n if (active === false) {\r\n active = true;\r\n setTimeout(function () {\r\n lazyImages.forEach(function (lazyImage) {\r\n if ((lazyImage.getBoundingClientRect().top <= window.innerHeight && lazyImage.getBoundingClientRect().bottom >= 0) && getComputedStyle(lazyImage).display !== \"none\") {\r\n lazyImage.src = lazyImage.dataset.src;\r\n lazyImage.srcset = lazyImage.dataset.srcset;\r\n lazyImage.classList.remove(\"lazy\");\r\n lazyImage.classList.remove(\"blur\");\r\n lazyImage.classList.add(\"unblur\");\r\n lazyImages = lazyImages.filter(function (image) {\r\n return image !== lazyImage;\r\n });\r\n }\r\n });\r\n active = false;\r\n }, 200);\r\n }\r\n};\r\n\r\n\r\n\r\n","import { authHeader } from \"../../../helpers/authHeader\";\r\nimport { handleResponse } from \"../../../helpers/handleresponse\";\r\n\r\nexport const templateService = {\r\n get,\r\n update,\r\n create,\r\n getAllByEvent,\r\n getDefaultByEvent,\r\n checkForUpdates,\r\n};\r\n\r\n\r\nasync function create(templateDto) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(templateDto)\r\n\r\n };\r\n\r\n return fetch(`./api/template/`, requestOptions)\r\n .then(handleResponse)\r\n .then(template => {\r\n return template;\r\n });\r\n}\r\n\r\nasync function get(templateId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({})\r\n };\r\n\r\n return fetch(`./api/template/${templateId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(template => {\r\n return template;\r\n });\r\n}\r\n\r\nasync function checkForUpdates(templateId, lastModified) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n\r\n };\r\n\r\n return fetch(`./api/template/checkforupdates/${templateId}?lastModified=${lastModified}`, requestOptions)\r\n .then(handleResponse)\r\n .then(isModified => {\r\n return isModified;\r\n });\r\n}\r\n\r\n\r\nasync function getDefaultByEvent(eventId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({})\r\n };\r\n\r\n return fetch(`./api/template/eventdefault/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(template => {\r\n return template;\r\n });\r\n}\r\n\r\n\r\n\r\nasync function getAllByEvent(eventId, includeInherited) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({})\r\n };\r\n\r\n return fetch(`./api/template/event/${eventId}?includeInherited=${includeInherited}`, requestOptions)\r\n .then(handleResponse)\r\n .then(template => {\r\n return template;\r\n });\r\n}\r\n\r\nasync function update(template) {\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(template)\r\n };\r\n return fetch(`./api/template/`, requestOptions)\r\n .then(handleResponse);\r\n}\r\n\r\n","import { authHeader } from \"../../../helpers/authHeader\";\r\nimport { handleResponse } from \"../../../helpers/handleresponse\";\r\n\r\nexport const menuService = {\r\n getByEvent\r\n};\r\n\r\n\r\nasync function getByEvent(eventId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/menu/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(menu => {\r\n return menu;\r\n });\r\n}\r\n\r\n","import { templateConstants } from \"../../../../constants/cms/template/template.constants\";\r\nimport { alertActions } from \"../../alert.action\";\r\nimport { templateService } from \"../../../../services/cms/template/template.service\";\r\nimport {\r\n deepClone,\r\n checkForTemplateUpdates,\r\n} from \"../../../../helpers/objectHelper\";\r\nimport {\r\n insertGoogleFonts,\r\n insertFonts,\r\n extractFontsFromJson,\r\n} from \"../../../../helpers/fontHelper\";\r\nimport { defaultTemplate } from \"../../../../cms/areas/template/models/defaultTemplate\";\r\nimport { cmsActions } from \"../cms.action\";\r\nimport { menuService } from \"../../../../services/cms/menu/menu.service\";\r\nimport { templateHelper } from \"../../../../cms/areas/template/helpers/templateHelper\";\r\nimport { history } from \"../../../../helpers/history\";\r\nimport { cms } from \"../../../reducers/cms/cms.reducer\";\r\nimport { store } from \"../../../configureStore\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\n\r\nexport const templateActions = {\r\n update,\r\n softUpdate,\r\n create,\r\n select,\r\n getAll,\r\n remove,\r\n setMenu,\r\n get,\r\n getDefaultTemplateByEvent,\r\n checkForUpdates,\r\n deselect,\r\n toggleMenuModal,\r\n togglePreviewMode,\r\n};\r\n\r\nfunction togglePreviewMode(device) {\r\n return (dispatch) => {\r\n dispatch(success(device));\r\n };\r\n function success(element, source) {\r\n return { type: templateConstants.TOGGLE_PREVIEW_MODE, device };\r\n }\r\n}\r\n\r\nfunction remove(element, source) {\r\n return (dispatch) => {\r\n dispatch(success(element, source));\r\n };\r\n function success(element, source) {\r\n return {\r\n type: templateConstants.DELETE_TEMPLATE_ELEMENT_SUCCESS,\r\n element,\r\n source,\r\n };\r\n }\r\n}\r\nfunction select(element) {\r\n return (dispatch) => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: templateConstants.SELECT_TEMPLATE_ELEMENT, element };\r\n }\r\n}\r\nfunction toggleMenuModal() {\r\n return (dispatch) => {\r\n dispatch(toggle());\r\n };\r\n function toggle() {\r\n return { type: templateConstants.TOGGLE_MENU_MODAL };\r\n }\r\n}\r\nfunction deselect() {\r\n return (dispatch) => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: templateConstants.DESELECT_SUCCESS };\r\n }\r\n}\r\nfunction softUpdate(template) {\r\n return (dispatch) => {\r\n if (template.inherit === true) {\r\n dispatch(cmsActions.inheritageAffected(true));\r\n }\r\n dispatch(success(template));\r\n };\r\n function success(template) {\r\n return { type: templateConstants.SOFT_UPDATE_TEMPLATE, template };\r\n }\r\n}\r\n\r\nfunction create(eventId, name = null) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n\r\n const newTemplate = {\r\n eventId,\r\n name: name ? name : \"Default Template\",\r\n style: JSON.stringify({ ...defaultTemplate }),\r\n };\r\n\r\n templateService.create(newTemplate).then(\r\n (template) => {\r\n dispatch(success(template));\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: templateConstants.CREATE_TEMPLATE_FAILURE };\r\n }\r\n function success(template) {\r\n return { type: templateConstants.CREATE_TEMPLATE_SUCCESS, template };\r\n }\r\n function failure(error) {\r\n return { type: templateConstants.CREATE_TEMPLATE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAll(eventId, includeInherited = false) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n templateService.getAllByEvent(eventId, includeInherited).then(\r\n (templates) => {\r\n if (templates && templates !== undefined && templates.length > 0) {\r\n const newTemplates = deepClone(templates);\r\n newTemplates.map((t) => {\r\n t.content = JSON.parse(t.content);\r\n t.content = checkForTemplateUpdates(t.content, defaultTemplate);\r\n });\r\n dispatch(success(newTemplates));\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: templateConstants.GET_TEMPLATE_BY_EVENT_REQUEST };\r\n }\r\n function success(templates) {\r\n return { type: templateConstants.GET_TEMPLATE_BY_EVENT_SUCCESS, templates };\r\n }\r\n function failure(error) {\r\n return { type: templateConstants.GET_TEMPLATE_BY_EVENT_FAILURE, error };\r\n }\r\n}\r\nfunction getDefaultTemplateByEvent(eventId) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n templateService.getDefaultByEvent(eventId).then(\r\n (template) => {\r\n template.content = JSON.parse(template.content);\r\n template.content = checkForTemplateUpdates(\r\n template.content,\r\n defaultTemplate\r\n );\r\n dispatch(success(template));\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: templateConstants.GET_DEFAULT_TEMPLATE_BY_EVENT_REQUEST };\r\n }\r\n function success(template) {\r\n return {\r\n type: templateConstants.GET_DEFAULT_TEMPLATE_BY_EVENT_SUCCESS,\r\n template,\r\n };\r\n }\r\n function failure(error) {\r\n return {\r\n type: templateConstants.GET_DEFAULT_TEMPLATE_BY_EVENT_FAILURE,\r\n error,\r\n };\r\n }\r\n}\r\nfunction checkForUpdates(template, allowOverWrite = false) {\r\n return (dispatch) => {\r\n dispatch(alertActions.clear());\r\n /* if (allowOverWrite) {\r\n return dispatch(update(template));\r\n }\r\n const { templateId, updated } = template;\r\n templateService.checkForUpdates(templateId, updated).then(\r\n data => {\r\n if (data.isModified === true) {\r\n return dispatch(cmsActions.alertNewModifications(data.isModified, 'TEMPLATE'));\r\n }\r\n else { */\r\n return dispatch(update(template));\r\n /* }\r\n },\r\n error => {\r\n dispatch(alertActions.error(error));\r\n }\r\n ); */\r\n };\r\n}\r\nfunction setMenu(menu) {\r\n console.log(\"setmenu\");\r\n return (dispatch) => {\r\n dispatch(success(menu));\r\n };\r\n function success(menu) {\r\n return { type: templateConstants.SET_MENU, menu };\r\n }\r\n}\r\n\r\nfunction get(templateId) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n templateService.get(templateId).then(\r\n (template) => {\r\n menuService.getByEvent(template.eventId).then(\r\n (menu) => {\r\n if (template && template !== undefined) {\r\n template.content = JSON.parse(template.content);\r\n template.content = checkForTemplateUpdates(\r\n template.content,\r\n defaultTemplate\r\n );\r\n template.content = templateHelper.assignResponsiveStyle(\r\n template.content\r\n );\r\n /* if (template.content.header.content === undefined) template.content.header.content = [];\r\n if (template.content.footer.content === undefined) template.content.footer.content = []; */\r\n dispatch(success(template, menu));\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: templateConstants.GET_TEMPLATE_REQUEST };\r\n }\r\n function success(template, menu) {\r\n return { type: templateConstants.GET_TEMPLATE_SUCCESS, template, menu };\r\n }\r\n function failure(error) {\r\n return { type: templateConstants.GETALL_TEMPLATE_FAILURE, error };\r\n }\r\n}\r\nfunction update(template) {\r\n const templateDto = {\r\n templateId: template.templateId,\r\n eventId: template.eventId,\r\n name: template.name,\r\n inherit: template.inherit,\r\n style: JSON.stringify(template.content),\r\n fonts: extractFontsFromJson({ content: template.content }),\r\n };\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n templateService.update(templateDto).then(\r\n (t) => {\r\n if (t && t !== undefined) {\r\n t.content = JSON.parse(t.content);\r\n dispatch(success(t));\r\n const env = store.getState().cms.enviroment;\r\n if (\r\n template.templateId != t.templateId &&\r\n env == sourceTypes.TEMPLATE\r\n ) {\r\n history.push(\"/cms/template/\" + t.templateId);\r\n }\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: templateConstants.UPDATE_TEMPLATE_REQUEST };\r\n }\r\n function success(template) {\r\n return { type: templateConstants.UPDATE_TEMPLATE_SUCCESS, template };\r\n }\r\n function failure(error) {\r\n return { type: templateConstants.UPDATE_TEMPLATE_FAILURE, error };\r\n }\r\n}\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types'\r\n\r\n\r\nexport class HtmlWrapper extends React.Component {\r\n render() {\r\n const { content } = this.props;\r\n return (\r\n \r\n \r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nHtmlWrapper.propTypes = {\r\n content: PropTypes.string\r\n}","const emailFontList = [\r\n { value: 'Arial', label: 'Arial' },\r\n { value: 'Arial Black', label: 'Arial Black' },\r\n { value: 'Comic Sans', label: 'Comic Sans' },\r\n { value: 'Courier New', label: 'Courier New' },\r\n { value: 'Georgia', label: 'Georgia' },\r\n { value: 'Impact', label: 'Impact' },\r\n { value: 'Charchoal', label: 'Charcoal' },\r\n { value: 'Lucida Console', label: 'Lucida Console' },\r\n { value: 'Lucida Sans Unicode', label: 'Lucida Sans Unicode' },\r\n { value: 'Lucida Grande', label: 'Lucida Grande' },\r\n { value: 'Palatino Linotype', label: 'Palatino Linotype' },\r\n { value: 'Helvetica', label: 'Helvetica' },\r\n { value: 'Book Antiqua', label: 'Book Antiqua ' },\r\n { value: 'Palantino', label: 'Palantino' },\r\n { value: 'Tahoma', label: 'Tahoma' },\r\n { value: 'Geneva', label: 'Geneva' },\r\n { value: 'Times', label: 'Times New' },\r\n { value: 'Times New Romas', label: 'Times New Roman' },\r\n { value: 'Trebuchet MS', label: 'Trebuchet MS' },\r\n { value: 'Monaco', label: 'Monaco' },\r\n { value: 'Verdana', label: 'Verdana' },\r\n];\r\nexport function emailFonts() {\r\n return emailFontList.sort(function (a, b) {\r\n if (a < b) {\r\n return -1;\r\n }\r\n if (b > a) {\r\n return 1;\r\n }\r\n return 0;\r\n });\r\n}","import React from \"react\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\nimport \"react-toastify/dist/ReactToastify.css\";\r\n\r\nclass Notifier extends React.Component {\r\n state = {\r\n position: \"top-right\",\r\n autoClose: 5000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n containerId: \"A\"\r\n };\r\n componentDidMount() {\r\n let state = {};\r\n if (this.props.options !== undefined) state = { ...this.props.options };\r\n state.loaded = true;\r\n this.setState(state);\r\n }\r\n response = (type, message) => {\r\n if (!this.state.loaded || (this.state.loaded && this.state.toastId && toast.isActive(this.state.toastId))) {\r\n \r\n return ;;\r\n } else {\r\n switch (type) {\r\n case \"info\":\r\n return toast.info(message, this.state);\r\n case \"warning\":\r\n return toast.warn(message, this.state);\r\n case \"success\":\r\n return toast.success(message, this.state);\r\n case \"error\":\r\n return toast.error(message, this.state);\r\n default:\r\n return ;\r\n }\r\n }\r\n };\r\n render() {\r\n const { message, type } = this.props;\r\n if (!this.state.loaded\r\n ) return ;\r\n else {\r\n return (\r\n
\r\n \r\n {this.response(type, message)}\r\n
\r\n );\r\n }\r\n }\r\n}\r\nexport default Notifier;\r\n","/* import config from 'c'; */\r\nimport { authHeader } from \"../../../helpers/authHeader\";\r\nimport { handleResponse } from \"../../../helpers/handleresponse\";\r\n\r\nexport const languageService = {\r\n getAllCodes,\r\n getAllCodesByEvent\r\n};\r\n\r\nasync function getAllCodesByEvent(eventId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`./api/language/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(languagesCodes => {\r\n return languagesCodes;\r\n });\r\n}\r\n\r\nasync function getAllCodes() {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n };\r\n\r\n return fetch(`./api/language/`, requestOptions)\r\n .then(handleResponse)\r\n .then(languagesCodes => {\r\n return languagesCodes;\r\n });\r\n}\r\n\r\n\r\n\r\n\r\n","\r\nimport { alertActions } from \"../../alert.action\";\r\nimport { languageService } from \"../../../../services/system/language/language.service\";\r\nimport { languageConstants } from \"../../../../constants/system/language/language.constants\";\r\n\r\nexport const languageActions = {\r\n getAllCodes,\r\n getAllCodesByEvent\r\n};\r\n\r\nfunction getAllCodes() {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n languageService.getAllCodes().then(\r\n languageCodes => {\r\n dispatch(success(languageCodes));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: languageConstants.GETALL_CODES_REQUEST };\r\n }\r\n function success(languageCodes) {\r\n return { type: languageConstants.GETALL_CODES_SUCCESS, languageCodes };\r\n }\r\n function failure(error) {\r\n return { type: languageConstants.GETALL_CODES_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAllCodesByEvent(eventId) {\r\n return dispatch => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n languageService.getAllCodesByEvent(eventId).then(\r\n languageCodes => {\r\n dispatch(success(languageCodes));\r\n },\r\n error => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n \r\n function request() {\r\n return { type: languageConstants.GETALL_CODES_BY_EVENT_REQUEST };\r\n }\r\n function success(languageCodes) {\r\n return { type: languageConstants.GETALL_CODES_BY_EVENT_SUCCESS, languageCodes };\r\n }\r\n function failure(error) {\r\n return { type: languageConstants.GETALL_CODES_BY_EVENT_FAILURE, error };\r\n }\r\n }\r\n","export const defaultTemplate = {\r\n main: {\r\n background: \"#eee\",\r\n backgroundSize: \"cover\",\r\n backgroundUrl: \"\",\r\n backgroundAttachment: 'fixed',\r\n backgroundPosition: '50% 50%',\r\n backgroundRepeat: 'no-repeat',\r\n videoBackgroundEnabled: false,\r\n youtubeUrl: '',\r\n backgroundColor: '#fff'\r\n\r\n },\r\n content: {\r\n backgroundColor: \"#ffffff\",\r\n maxWidth: \"100%\",\r\n marginTop: \"0px\",\r\n marginBottom: \"0px\",\r\n borderRadius: \"0px\",\r\n boxShadow: 'none',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n padding: '13px',\r\n minHeight: '100%'\r\n },\r\n table: {\r\n borderCollapse: 'collapse',\r\n border: '0px'\r\n },\r\n tcell: {\r\n padding: '8px',\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n borderColor: '#dddddd',\r\n fontFamily: 'Open Sans',\r\n fontSize: '15px',\r\n backgroundColor: '#fff',\r\n color: '#222',\r\n fontWeight: 'normal'\r\n },\r\n spinner: {\r\n color: '#17a2b8'\r\n },\r\n thead: {\r\n padding: '8px',\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n borderColor: '#dddddd',\r\n fontFamily: 'Open Sans',\r\n fontSize: '15px',\r\n backgroundColor: '#fff',\r\n color: '#222',\r\n fontWeight: 'normal'\r\n },\r\n text: {\r\n color: \"#170c53\",\r\n fontFamily: \"Open Sans\",\r\n fontWeight: \"normal\",\r\n letterSpacing: \"0px\",\r\n fontSize: \"16px\"\r\n },\r\n title: {\r\n color: \"#535e58\",\r\n fontFamily: \"Open Sans\",\r\n fontSize: \"20px\",\r\n fontWeight: \"bold\",\r\n letterSpacing: \"1px\"\r\n },\r\n a: {\r\n color: \"blue\",\r\n textDecoration: \"none\",\r\n fontFamily: \"Open Sans\",\r\n letterSpacing: 'unset',\r\n fontWeight: 'unset',\r\n fontSize: 'unset',\r\n \"&:hover\": {\r\n color: 'lightblue',\r\n textDecoration: 'none'\r\n }\r\n },\r\n button: {\r\n height: \"auto\",\r\n minHeight: '30px',\r\n width: \"100%\",\r\n borderRadius: \"0px\",\r\n color: \"white\",\r\n fontSize: \"20px\",\r\n padding: '5px 20px',\r\n fontWeight: 'unset',\r\n backgroundColor: \"#FF8282\",\r\n borderColor: 'transparent',\r\n \"&:hover\": {\r\n color: \"white\",\r\n backgroundColor: \"pink\"\r\n },\r\n boxShadow: 'none',\r\n fontFamily: 'Open Sans',\r\n textTransform: 'unset'\r\n },\r\n header: {\r\n backgroundColor: \"#222\",\r\n marginTop: \"0px\",\r\n marginBottom: \"0px\",\r\n content: [],\r\n height: 'auto',\r\n background: '#222',\r\n width: '100%',\r\n innerWidth: '50%',\r\n overflow: 'hidden',\r\n boxShadow: 'none',\r\n backgroundUrl: \"\",\r\n padding: 'unset',\r\n marginLeft: 'auto',\r\n marginRight: 'auto'\r\n },\r\n footer: {\r\n backgroundColor: \"#222\",\r\n marginTop: \"0px\",\r\n marginBottom: \"0px\",\r\n content: [],\r\n height: 'auto',\r\n background: '#222',\r\n width: '100%',\r\n overflow: 'visible',\r\n backgroundUrl: \"\",\r\n innerWidth: '50%',\r\n boxShadow: 'none',\r\n padding: 'unset',\r\n marginLeft: 'auto',\r\n marginRight: 'auto'\r\n },\r\n label: {\r\n color: \"#535e58\",\r\n fontFamily: \"Open Sans\",\r\n fontSize: \"16px\",\r\n fontWeight: \"unset\",\r\n letterSpacing: \"1px\"\r\n },\r\n menu: {\r\n backgroundColor: \"unset\",\r\n fontFamily: \"Open Sans\",\r\n fontSize: \"20px\",\r\n fontWeight: \"normal\",\r\n color: \"unset\",\r\n textDecoration: \"none\",\r\n justifyContent: \"left\",\r\n display: 'none',\r\n position: 'unset',\r\n padding: 'unset',\r\n innerWidth: '50%',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n minHeight: '50px',\r\n width: '100%',\r\n height: 'auto',\r\n \"&:active\": {\r\n color: 'unset',\r\n backgroundColor: 'unset'\r\n }\r\n },\r\n input: {\r\n readOnlyOpacity: 0.8,\r\n fontSize: \"17px\",\r\n fontWeight: \"normal\",\r\n color: \"#686673\",\r\n backgroundColor: \"#ffffff\",\r\n borderColor: \"#c0bcc2\",\r\n margin: \"0px\",\r\n borderRadius: \"10px\",\r\n width: \"150px\",\r\n boxShadow: 'none',\r\n textAreaMinHeight: '200px',\r\n fontFamily: 'Open Sans'\r\n },\r\n subtitle: {\r\n color: \"#7ed321\",\r\n fontSize: \"15px\",\r\n fontFamily: \"Open Sans\",\r\n letterSpacing: \"0px\",\r\n fontWeight: \"unset\",\r\n },\r\n interaction: {\r\n exhibitor:{\r\n frame: {\r\n background: 'unset',\r\n borderRadius: 'unset',\r\n padding: 'unset',\r\n \r\n },\r\n logo: {\r\n background: 'unset'\r\n },\r\n title: {\r\n color: 'unset',\r\n fontSize: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n },\r\n subtitle: {\r\n color: 'unset',\r\n fontSize: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n }\r\n },\r\n chat: {\r\n primaryColor: 'unset',\r\n badgePillColor: 'unset',\r\n secondaryColor: 'unset',\r\n sendButtonColor: 'unset',\r\n container: {\r\n borderColor: 'unset',\r\n borderRadius: 'unset',\r\n borderWidth: 'unset',\r\n },\r\n header: {\r\n background: 'unset',\r\n borderColor: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset',\r\n fontSize: 'unset',\r\n },\r\n footer: {\r\n background: 'unset',\r\n borderColor: 'unset',\r\n inputColor: 'unset',\r\n inputBackground: 'unset',\r\n fontFamily: 'unset'\r\n },\r\n content: {\r\n background: 'unset'\r\n },\r\n messages: {\r\n fontSize: 'unset',\r\n fontWeight: 'unset',\r\n lineHeight: 'unset',\r\n fontFamily: 'unset',\r\n color: 'unset',\r\n \r\n receiver: {\r\n backgroundColor: 'unset',\r\n color: 'unset',\r\n thumbColor: 'unset',\r\n },\r\n sender: {\r\n backgroundColor: 'unset',\r\n color: 'unset',\r\n thumbColor: 'unset',\r\n }\r\n }\r\n \r\n\r\n },\r\n client: {\r\n sendButton: {\r\n height: \"auto\",\r\n width: \"auto\",\r\n borderRadius: \"0px\",\r\n color: \"white\",\r\n fontSize: \"20px\",\r\n backgroundColor: \"#FF8282\",\r\n /* background: 'linear-gradient(to right, #dddddd2b, #b1b1b170)', */\r\n boxShadow: 'none',\r\n fontFamily: 'Open Sans',\r\n\r\n },\r\n optionButton: {\r\n height: 'unset'\r\n },\r\n question: {\r\n minWidth: 'unset',\r\n maxWidth: 'unset'\r\n },\r\n frame: {\r\n backgroundColor: 'unset',\r\n borderRadius: 'unset',\r\n borderColor: 'unset',\r\n fontFamily: 'unset',\r\n fontWeight: 'unset',\r\n color: 'unset',\r\n fontSize: 'unset',\r\n\r\n }\r\n },\r\n agenda: {\r\n content: {\r\n padding: 'unset',\r\n background: 'unset',\r\n backgroundColor: 'unset',\r\n backgroundUrl: 'unset',\r\n margin: 'unset',\r\n borderRadius: 'unset'\r\n },\r\n title: {\r\n fontSize: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset',\r\n color: 'unset',\r\n marginLeft: 'unset',\r\n },\r\n row: {\r\n default: {\r\n frame: {\r\n borderColor: 'unset',\r\n borderWidth: 'unset',\r\n backgroundColor: 'unset',\r\n padding: 'unset',\r\n borderRadius: 'unset',\r\n /* margin: 'unset', */\r\n marginTop: 'unset',\r\n },\r\n title: {\r\n fontSize: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n },\r\n text: {\r\n fontSize: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n }\r\n },\r\n active: {\r\n frame: {\r\n borderColor: 'unset',\r\n borderWidth: 'unset',\r\n backgroundColor: 'unset',\r\n padding: 'unset',\r\n borderRadius: 'unset',\r\n /* margin: 'unset', */\r\n marginTop: 'unset',\r\n },\r\n title: {\r\n fontSize: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n },\r\n text: {\r\n fontSize: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n }\r\n },\r\n passed: {\r\n frame: {\r\n borderColor: 'unset',\r\n borderWidth: 'unset',\r\n backgroundColor: 'unset',\r\n padding: 'unset',\r\n borderRadius: 'unset',\r\n /* margin: 'unset', */\r\n marginTop: 'unset',\r\n },\r\n title: {\r\n fontSize: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n },\r\n text: {\r\n fontSize: 'unset',\r\n color: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset'\r\n }\r\n }\r\n }\r\n\r\n },\r\n connections: {\r\n background: 'unset',\r\n backgroundColor: 'unset',\r\n backgroundUrl: 'unset',\r\n borderRadius: 'unset',\r\n fontSize: 'unset',\r\n fontWeight: 'unset',\r\n fontFamily: 'unset',\r\n borderWidth: 'unset',\r\n borderColor: 'unset',\r\n color: 'unset'\r\n }\r\n },\r\n chart: {\r\n colors: {\r\n color1: 'blue',\r\n color2: 'red',\r\n color3: 'orange',\r\n color4: 'green',\r\n color5: 'yellow'\r\n },\r\n textflowColor: 'black',\r\n textflowBgColor: 'lightgray'\r\n\r\n },\r\n scrollbar: {\r\n thumbBackgroundColor: 'unset',\r\n thumbBorderRadius: 'unset',\r\n trackBackgroundColor: 'unset',\r\n thumbColorHover: 'unset',\r\n width: 'unset'\r\n },\r\n\r\n responsive: {\r\n tablet: {\r\n content: {\r\n maxWidth: '100%',\r\n minHeight: '100%',\r\n marginTop: \"unset\",\r\n marginBottom: \"unset\",\r\n borderRadius: \"unset\",\r\n boxShadow: 'unset',\r\n marginLeft: 'unset',\r\n marginRight: 'unset',\r\n padding: 'unset'\r\n },\r\n menu: {\r\n display: 'unset',\r\n padding: 'unset',\r\n innerWidth: 'unset',\r\n minHeight: 'unset',\r\n width: '100%',\r\n position: 'fixed'\r\n },\r\n footer: {\r\n height: 'unset',\r\n width: '100%',\r\n padding: 'unset'\r\n },\r\n header: {\r\n height: 'unset',\r\n width: '100%',\r\n padding: 'unset',\r\n innerWidth: 'unset',\r\n }\r\n },\r\n smartphone: {\r\n content: {\r\n maxWidth: '100%',\r\n marginTop: \"unset\",\r\n minHeight: '100%',\r\n marginBottom: \"unset\",\r\n borderRadius: \"unset\",\r\n boxShadow: 'unset',\r\n marginLeft: 'unset',\r\n marginRight: 'unset',\r\n padding: '15px'\r\n },\r\n menu: {\r\n display: 'unset',\r\n position: 'unset',\r\n padding: 'unset',\r\n innerWidth: 'unset',\r\n minHeight: 'unset',\r\n width: '100%',\r\n },\r\n footer: {\r\n height: 'unset',\r\n width: '100%',\r\n padding: 'unset',\r\n innerWidth: '50%',\r\n },\r\n header: {\r\n height: 'unset',\r\n width: '100%',\r\n padding: 'unset',\r\n innerWidth: 'unset',\r\n }\r\n }\r\n }\r\n};\r\n\r\n\r\n\r\n\r\n/*\r\nexport const defaultTemplate = {\r\n main: {\r\n background: \"orange\",\r\n backgroundUrl: \"\",\r\n backgroundColor: \"#fff\",\r\n backgroundSize: \"cover\"\r\n },\r\n backgroundConfig: {\r\n backgroundColor: \"\",\r\n maxWidth: \"\",\r\n marginTop: \"\",\r\n marginBottom: \"\"\r\n },\r\n text: {\r\n color: \"#fff\",\r\n fontFamily: \"\",\r\n fontWeight: \"\",\r\n fontSpacing: \"\"\r\n },\r\n title: {\r\n color: \"\",\r\n fontFamily: \"\",\r\n fontSize: \"\",\r\n fontWeight: \"\",\r\n fontSpacing: \"\"\r\n },\r\n subTitle: {\r\n color: \"\",\r\n fontFamily: \"\",\r\n fontSize: \"\",\r\n fontWeight: \"\",\r\n fontSpacing: \"\"\r\n },\r\n a: {\r\n colorDarkBg: \"\",\r\n colorLightBg: \"\",\r\n underScore: false,\r\n \"&:hover\": {\r\n color: \"\"\r\n }\r\n },\r\n button: {\r\n size: \"\",\r\n borderRadius: \"\",\r\n color: \"\",\r\n backgroundColor: \"\",\r\n \"&:hover\": {\r\n color: \"\",\r\n backgroundColor: \"red\"\r\n }\r\n },\r\n header: {\r\n backgroundColor: \"\",\r\n marginTop: \"\",\r\n marginBottom: \"\",\r\n content: \"\",\r\n height: 'auto',\r\n background: '',\r\n width: '100%',\r\n overflow: 'visible'\r\n },\r\n footer: {\r\n backgroundColor: \"\",\r\n marginTop: \"20%\",\r\n marginBottom: \"0px\",\r\n content: \"\",\r\n height: 'auto',\r\n background: '',\r\n width: '100%',\r\n overflow: 'visible'\r\n },\r\n menu: {\r\n icon: \"\",\r\n backgroundColor: \"\",\r\n fontFamily: \"\",\r\n fontSize: \"\",\r\n fontWeight: \"\",\r\n color: \"\",\r\n underScore: false,\r\n activePageColor: \"\",\r\n activePageBackgroundColor: \"\",\r\n justify: \"\"\r\n },\r\n input: {\r\n fontFamily: \"\",\r\n fontSize: \"\",\r\n fontWeight: \"\",\r\n color: \"\",\r\n backgroundColor: \"\",\r\n borderColor: \"\",\r\n margin: \"\",\r\n borderRadius: \"\"\r\n }\r\n};\r\n\r\n\r\n */\r\n\r\n\r\n\r\n\r\n","import React, { useEffect } from \"react\";\r\nimport { connect } from 'react-redux'\r\nimport { Button, Form, FormGroup, Label, Input, FormText } from 'reactstrap';\r\nimport { SketchPicker, Color } from \"react-color\";\r\nimport { colorHelper } from \"../../../helpers/colorHelper\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport { cmsActions } from \"../../../store/actions/cms/cms.action\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\nimport './ColorPickerStyles.css'\r\n\r\n\r\nconst TemplateColors = ({ usedColors, onClick, path }) => {\r\n const handleClick = (color) => {\r\n let newColor = color;\r\n if (!color.includes('#') && !color.includes('rgb') && !color.includes('rgba')) {\r\n newColor = colorHelper.colourNameToHex(color);\r\n if (!newColor) return;\r\n }\r\n let convertedColor = isHex(newColor) ? colorHelper.hexToRgb(newColor) : colorHelper.rgbToObject(newColor);\r\n\r\n onClick({ hex: '', rgb: convertedColor }, newColor, path)\r\n }\r\n const isHex = (color) => {\r\n if (color.toString().includes('#')) return true;\r\n return false;\r\n }\r\n const filterColors = (colors) => {\r\n return Array.from(new Set([...colors]));\r\n }\r\n const colors = filterColors(usedColors)\r\n return (\r\n \r\n \r\n \r\n
\r\n {colors.map((c, i) => {\r\n return
\r\n \r\n
handleClick(c)} style={{ backgroundColor: c }} className=\"color-box\">
\r\n
\r\n
\r\n })}\r\n
\r\n
\r\n
\r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n usedColors: state.template.usedColors\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TemplateColors);","import React, { useEffect } from \"react\";\r\nimport { connect } from 'react-redux'\r\nimport { SketchPicker, Color } from \"react-color\";\r\nimport { Button, Row, Col } from \"reactstrap\";\r\nimport { colorHelper } from \"../../../helpers/colorHelper\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport { cmsActions } from \"../../../store/actions/cms/cms.action\";\r\nimport TemplateColors from \"./TemplateColors\";\r\n\r\n\r\nconst ColorPickerFacade = (props) => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const handleClick = event => {\r\n setAnchorEl(event.currentTarget);\r\n props.dispatch(cmsActions.blockDeselect(true))\r\n //load all colors from template\r\n };\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n setTimeout(() => props.dispatch(cmsActions.blockDeselect(false)), 2000)\r\n };\r\n\r\n const { color, onChange, path } = props;\r\n const open = Boolean(anchorEl);\r\n const id = open ? `${path.replace(\".\", \"-\")}` : undefined;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n onChange(color, e, path)\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n usedColors: state.template.usedColors\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ColorPickerFacade);","import styled from 'styled-components';\r\n\r\nexport const DropArea = styled.div`\r\nbackground-color: ${props => (props.isDraggingOver ? '#00000005' : 'inherit')}`;\r\n\r\nexport const DropAreaContainer = styled.div`\r\nbackground-color: ${props => (props.isDraggingOver ? '#28a74563' : 'inherit')}\r\nborder: ${props => (props.isDraggingOver ? '1px dashed #28a745' : 'inherit')}\r\n`;","\r\nimport styled from 'styled-components';\r\nexport const DragContainer = styled.div`\r\nbackground-color: ${props => (props.isDragging ? '#e7f9ff' : props.backgroundColor)}\r\n\r\n`;","import { history } from \"./history\";\r\nimport { logException } from \"../sentry.config\";\r\n\r\nexport function handleResponse(response) {\r\n return response.text().then(text => {\r\n if (!response.ok) {\r\n switch (response.status) {\r\n case 400:\r\n /* history.push(\"/404\"); */\r\n break;\r\n case 500:\r\n const error = response.statusText;\r\n console.log('SERVER_ERR', error, 'RESPONSE:' + response, \"VALUE\" + text);\r\n logException(error, { response: response, text: text });\r\n history.push(\"/500\");\r\n break;\r\n case 404:\r\n history.push(\"/404\");\r\n break;\r\n case 401:\r\n history.push(\"/login\");\r\n break;\r\n default:\r\n break;\r\n }\r\n try {\r\n\r\n let data = text && JSON.parse(text);\r\n const error = (data && data.message) || response.statusText;\r\n return Promise.reject(error);\r\n }\r\n catch{\r\n const error = response.statusText;\r\n console.log('JX_PARSE_ERROR', error, 'RESPONSE:' + response, \"VALUE\" + text);\r\n logException(error, { response: response, text: text });\r\n return Promise.reject(error);\r\n }\r\n }\r\n\r\n try {\r\n let escapedText = text.replace(/\\\\n/g, \"\\\\n\")\r\n .replace(/\\\\'/g, \"\\\\'\")\r\n .replace(/\\\\\"/g, '\\\\\"')\r\n .replace(/\\\\&/g, \"\\\\&\")\r\n .replace(/\\\\r/g, \"\\\\r\")\r\n .replace(/\\\\t/g, \"\\\\t\")\r\n .replace(/\\\\b/g, \"\\\\b\")\r\n .replace(/\\\\f/g, \"\\\\f\");\r\n /* .replace('%20', ''); */\r\n let data = escapedText && JSON.parse(escapedText);\r\n return data;\r\n }\r\n catch{\r\n const error = response.statusText;\r\n console.log('JX_PARSE_ERROR', error, 'RESPONSE:' + response, \"VALUE\" + text)\r\n logException(error, { response: response, text: text });\r\n return Promise.reject(error);\r\n }\r\n });\r\n}\r\n","import { alertConstants } from '../../constants/alert.constants';\r\n\r\nexport const alertActions = {\r\n success,\r\n error,\r\n info,\r\n clear,\r\n warning\r\n};\r\n\r\nfunction success(title, message) {\r\n return { type: alertConstants.SUCCESS, message, title };\r\n}\r\n\r\nfunction info(title, message) {\r\n return { type: alertConstants.INFO, message, title };\r\n}\r\n\r\nfunction error(title, message) {\r\n return { type: alertConstants.ERROR, message, title };\r\n}\r\n\r\n\r\nfunction warning(title, message) {\r\n return { type: alertConstants.WARNING, message, title };\r\n}\r\n\r\nfunction clear() {\r\n return { type: alertConstants.CLEAR };\r\n}","import React from 'react';\r\nimport { connect } from 'react-redux'\r\nimport { inlineSettings, tabSettings } from '../../../../components/TinyMCE/tinyconfig';\r\nimport { Editor } from \"@tinymce/tinymce-react\";\r\nimport ArchiveContainer from '../../../../file/containers/ArchiveContainer';\r\nimport { sourceTypes } from '../../../../constants/cms/sourceType';\r\nimport { emailActions } from '../../../../store/actions/cms/email/email.action';\r\nimport LinkManager from '../../../../navigation/LinkManager/LinkManager';\r\nimport { templateHelper } from '../../../areas/template/helpers/templateHelper';\r\nimport { TinyMCE } from \"tinymce\";\r\nconst getGlobal = function () { return (typeof window !== 'undefined' ? window : global); };\r\nconst setTinymce = function () {\r\n var global = getGlobal();\r\n if (global && !global.tinymce)\r\n global.tinymce = TinyMCE;\r\n};\r\n\r\nclass TinyEditor extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.toggleArchive = this.toggleArchive.bind(this);\r\n this.onInit = this.onInit.bind(this);\r\n this.handleKeyUp = this.handleKeyUp.bind(this);\r\n this.onArchiveUseSelect = this.onArchiveUseSelect.bind(this);\r\n this.state = {\r\n editor: {},\r\n cycleEditor: false,\r\n archiveOpen: false,\r\n active: false,\r\n linkHelperOpen: false,\r\n selectedLink: null\r\n }\r\n setTinymce();\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.env === sourceTypes.FORM && prevProps.form.currentPage !== this.props.form.currentPage) {\r\n this.setState({ cycleEditor: true })\r\n }\r\n if (this.state.cycleEditor === true) {\r\n this.setState({ cycleEditor: false })\r\n }\r\n }\r\n\r\n onInit(editor, languageCode) {\r\n this.setState({ editor }, () => {\r\n });\r\n const { env, dispatch, element, email } = this.props;\r\n if (element && env === sourceTypes.EMAIL) {\r\n const newElement = Object.assign({}, element);\r\n newElement.style.elementProps.editor = this.state.editor;\r\n dispatch(emailActions.updateEmailElement(newElement, newElement.id, false, email.inherit))\r\n }\r\n };\r\n toggleArchive() {\r\n this.setState({ archiveOpen: !this.state.archiveOpen })\r\n }\r\n handleKeyUp = (event, languageCode) => {\r\n var content = this.state.editor.getContent();\r\n if (content !== this.props.value) {\r\n if (this.props.globalFormat === true) {\r\n this.props.onChange(null, content, this.props.path);\r\n }\r\n else if (this.props.slimFormat === true) {\r\n this.props.onChange(content, this.props.path);\r\n } else {\r\n this.props.onChange(content);\r\n }\r\n }\r\n\r\n };\r\n formatImage(id) {\r\n var content = this.state.editor.getContent();\r\n this.props.onChange(content);\r\n }\r\n onArchiveUseSelect(url) {\r\n var image = new Image;\r\n image.crossOrigin = \"anonymous\"; /* THIS WILL MAKE THE IMAGE CROSS-ORIGIN */\r\n image.src = url;\r\n let content = this.state.editor.insertContent(`\"_blank\" `);\r\n content = this.state.editor.getContent();\r\n this.props.onChange(content);\r\n }\r\n onLinkSelect = (obj) => {\r\n const { linkColor = undefined } = this.props;\r\n let content = null;\r\n if (linkColor) {\r\n let lc = '';\r\n if (linkColor.includes('rgb')) {\r\n lc = templateHelper.convertRgbStringToHex(linkColor)\r\n }\r\n\r\n content = this.state.editor.insertContent(`\r\n \r\n ${obj.displayText}\r\n \r\n `);\r\n }\r\n else {\r\n content = this.state.editor.insertContent(`\r\n ${obj.displayText}\r\n `);\r\n }\r\n\r\n content = this.state.editor.getContent();\r\n }\r\n toggleLinkHelper = () => {\r\n\r\n this.setState({ linkHelperOpen: !this.state.linkHelperOpen })\r\n }\r\n render() {\r\n const { style, value, onInit, onChange, cms, inline = true, height, env, selectedElement, contentId = null, element = null } = this.props;\r\n\r\n return (\r\n \r\n {!this.state.cycleEditor ? \r\n this.onInit(editor, cms && cms.languageCode)\r\n }\r\n onFocus={() => this.setState({ active: true })}\r\n disabled={!this.props.editMode}\r\n init={inline ? {\r\n ...inlineSettings, content_style: style, width: '100%', height: '100%', setup: (editor) => {\r\n editor.ui.registry.addButton('archive', {\r\n icon: 'image',\r\n image: 'image',\r\n onAction: () =>\r\n this.toggleArchive()\r\n });\r\n editor.ui.registry.addButton('anchor', {\r\n icon: 'link',\r\n image: 'link',\r\n onAction: () => {\r\n const selectedLink = editor.selection.getNode();\r\n if (selectedLink && selectedLink.localName === \"a\") {\r\n this.setState({\r\n selectedLink: {\r\n target: selectedLink.target,\r\n link: selectedLink.href,\r\n name: selectedLink.innerHTML\r\n }\r\n })\r\n }\r\n else {\r\n const range = editor.selection.getRng();\r\n if (range) {\r\n this.setState({\r\n selectedLink: {\r\n target: \"_blank\",\r\n link: \"\",\r\n name: range.startContainer.data ? range.startContainer.data.substring(range.startOffset, range.endOffset) : \" \",\r\n }\r\n })\r\n }\r\n }\r\n this.toggleLinkHelper()\r\n }\r\n });\r\n },\r\n } : {\r\n ...tabSettings, content_style: style, width: '100%', height: height, setup: (editor) => {\r\n editor.ui.registry.addButton('archive', {\r\n icon: 'image',\r\n image: 'image',\r\n onAction: () =>\r\n this.toggleArchive()\r\n })\r\n }\r\n }\r\n }\r\n onEditorChange={e => this.handleKeyUp(e, cms && cms.languageCode)}\r\n /> : null}\r\n \r\n {this.state.archiveOpen ? : null}\r\n \r\n )\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n let selectedElement = null;\r\n let env = null;\r\n if (state.cms.enviroment === sourceTypes.TEMPLATE) {\r\n selectedElement = state.template.selectedElement;\r\n env = sourceTypes.TEMPLATE\r\n }\r\n if (state.cms.enviroment === sourceTypes.PAGE) {\r\n selectedElement = state.page.selectedElement;\r\n env = sourceTypes.PAGE\r\n }\r\n if (state.cms.enviroment === sourceTypes.FORM) {\r\n selectedElement = state.form.selectedElement;\r\n env = sourceTypes.FORM\r\n }\r\n if (state.cms.enviroment === sourceTypes.EMAIL) {\r\n selectedElement = state.email.selectedElement;\r\n env = sourceTypes.EMAIL\r\n }\r\n return {\r\n alert: state.alert,\r\n form: state.form,\r\n cms: state.cms,\r\n selectedElement,\r\n template: state.template,\r\n language: state.language,\r\n page: state.page,\r\n email: state.email,\r\n env\r\n };\r\n}\r\nexport default connect(mapStateToProps)(TinyEditor);\r\n","import React from 'react';\r\nimport AccountTreeIcon from '@material-ui/icons/AccountTree';\r\nimport { connect } from 'react-redux';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { labelHelper } from '../../../../../helpers/labelHelper';\r\nimport LockIcon from '@material-ui/icons/Lock';\r\nimport './Inheritage.css';\r\nimport SystemLabel from '../../../../../system/SystemLabel/SystemLabel';\r\nimport { sourceTypes } from '../../../../../constants/cms/sourceType';\r\n\r\nconst InheritageWrapper = (props) => {\r\n const { cms, status, onClick, small } = props;\r\n if(cms.enviroment === sourceTypes.TEMPLATE && small) return null;\r\n if (status === true && cms.inheritInfo) return
\r\n \r\n
\r\n \r\n
\r\n
\r\n
;\r\n if (status === false) return (\r\n
\r\n \r\n {!small ?
\r\n

\r\n
: null}\r\n
\r\n )\r\n return null;\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n cms: state.cms\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(InheritageWrapper);\r\n","export const defaultInvoiceFields = [\"Name\", \"OrgNo\", \"GLN\", \"Telephone1\", \"Address1\", \"Address2\", \"Zip\", \"City\", \"CountryId\", \"Email\"];\r\n","import { Button } from \"@material-ui/core\";\r\nimport React from \"react\";\r\nimport SystemLabel from \"../../system/SystemLabel/SystemLabel\";\r\n\r\nexport const NotAuthourized = ({ children }) => {\r\n return (\r\n \r\n \r\n {children}\r\n \r\n );\r\n};\r\n","import { formActions } from './form/form.action';\r\nimport { elementActions } from './element/element.action';\r\nimport { cmsConstants } from '../../../constants/cms/cms.constants';\r\nimport { fileService } from '../../../services/file/file.service';\r\nimport { authHeader } from '../../../helpers/authHeader';\r\nimport { handleResponse } from '../../../helpers/handleresponse';\r\n\r\nexport const cmsActions = {\r\n setSourceLocation,\r\n setEnviroment,\r\n setEnviromentLang, \r\n containerToUpdate,\r\n containerUpdated,\r\n containerAdded,\r\n loadClientFonts,\r\n getClientFonts,\r\n getFonts,\r\n removeFont,\r\n addFont,\r\n alertNewModifications,\r\n globalSavingLoader,\r\n toggleInheritageInfo,\r\n inheritageAffected,\r\n blockDeselect\r\n}\r\n\r\nfunction globalSavingLoader(isLoading) {\r\n return dispatch => {\r\n dispatch(success(isLoading));\r\n };\r\n function success(model) {\r\n return { type: cmsConstants.GLOBAL_SAVING_LOADER, isLoading};\r\n }\r\n}\r\nfunction blockDeselect(isBlocked) {\r\n return dispatch => {\r\n dispatch(success(isBlocked));\r\n };\r\n function success(model) {\r\n return { type: cmsConstants.BLOCK_DESELECT, isBlocked};\r\n }\r\n}\r\n\r\nfunction alertNewModifications(isModified, source, callback) {\r\n\r\n return dispatch => {\r\n dispatch(success(isModified, source, callback));\r\n };\r\n function success(model) {\r\n return { type: cmsConstants.ALERT_NEW_MODIFICATIONS, isModified, source, callback };\r\n }\r\n}\r\n\r\nfunction loadClientFonts(fonts) {\r\n return dispatch => {\r\n dispatch(success(fonts));\r\n };\r\n function success(fonts) {\r\n return { type: cmsConstants.LOAD_CLIENT_FONTS, fonts };\r\n }\r\n}\r\nfunction removeFont(font) {\r\n return dispatch => {\r\n dispatch(success(font));\r\n };\r\n function success(font) {\r\n return { type: cmsConstants.REMOVE_CLIENT_FONT, font };\r\n }\r\n}\r\nfunction addFont(font) {\r\n return dispatch => {\r\n dispatch(success(font));\r\n };\r\n function success(font) {\r\n return { type: cmsConstants.ADD_CLIENT_FONT, font };\r\n }\r\n}\r\n\r\n\r\nfunction inheritageAffected(isAffected){\r\n return dispatch => {\r\n dispatch(success(isAffected));\r\n };\r\n function success(isAffected) {\r\n return { type: cmsConstants.INHERITAGE_AFFECTED, isAffected };\r\n }\r\n}\r\nfunction toggleInheritageInfo(on){\r\n return dispatch => {\r\n dispatch(success(on));\r\n };\r\n function success(on) {\r\n return { type: cmsConstants.TOGGLE_INHERITAGE_INFO, on };\r\n }\r\n}\r\nfunction getClientFonts(eventId) {\r\n return dispatch => {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n fetch(`./api/files/fonts/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(data => {\r\n if (data.files !== undefined) {\r\n let clientFonts = [];\r\n data.files.map(f => {\r\n\r\n clientFonts.push({\r\n name: f.name.substring(f.name.lastIndexOf('/') + 1, f.name.lastIndexOf('.') + 1).toString()\r\n .replace(')', '')\r\n .replace('(', '').replace('.', '').replace('1', '').replace('', ''), url: f.url\r\n });\r\n });\r\n dispatch(success(clientFonts));\r\n }\r\n\r\n })\r\n };\r\n function success(fonts) {\r\n return { type: cmsConstants.LOAD_CLIENT_FONTS, fonts };\r\n }\r\n}\r\nfunction getFonts(eventId) {\r\n\r\n return dispatch => {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n fetch(`./api/files/?format=font`, requestOptions)\r\n .then(handleResponse)\r\n .then(data => {\r\n let clientFonts = [];\r\n if (data.files === undefined) { return; }\r\n data.files.map(f => {\r\n\r\n clientFonts.push({\r\n name: f.name.substring(f.name.lastIndexOf('/') + 1, f.name.lastIndexOf('.') + 1).toString()\r\n .replace(')', '')\r\n .replace('(', '').replace('.', '').replace('1', '').replace('', ''), url: f.url\r\n });\r\n });\r\n dispatch(success(clientFonts));\r\n })\r\n };\r\n function success(fonts) {\r\n return { type: cmsConstants.LOAD_CLIENT_FONTS, fonts };\r\n }\r\n}\r\n\r\n\r\n//Remove these?\r\nfunction containerToUpdate(container) {\r\n return dispatch => {\r\n dispatch(success(container));\r\n };\r\n function success(container) {\r\n return { type: cmsConstants.CONTAINER_TO_UPDATE, container };\r\n }\r\n}\r\nfunction containerUpdated() {\r\n return dispatch => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: cmsConstants.CONTAINER_UPDATED };\r\n }\r\n}\r\nfunction containerAdded(container) {\r\n return dispatch => {\r\n dispatch(success(container));\r\n };\r\n function success(container) {\r\n return { type: cmsConstants.CONTAINER_ADDED, container };\r\n }\r\n}\r\n\r\n\r\nfunction setEnviroment(env, editMode = false, eventId, languageCode) {\r\n return dispatch => {\r\n dispatch(success(env, editMode));\r\n };\r\n function success(env) {\r\n return { type: cmsConstants.SET_ENVIROMENT, env, editMode, eventId, languageCode };\r\n }\r\n}\r\nfunction setEnviromentLang(languageCode) {\r\n return dispatch => {\r\n dispatch({ type: cmsConstants.SET_ENVIROMENT_LANG, languageCode });\r\n };\r\n \r\n}\r\n\r\nfunction setSourceLocation(sourceLoc, env) {\r\n return dispatch => {\r\n dispatch(success(sourceLoc, env));\r\n };\r\n function success(sourceLoc, env) {\r\n return { type: cmsConstants.SET_SOURCE_LOCATION, sourceLoc, env };\r\n }\r\n}\r\n","import { lsgetItem } from \"./localStorageHelper\";\r\nimport { getKey } from \"./UrlHelper\";\r\n\r\nexport function authHeader(headers) {\r\n // return authorization header with jwt token\r\n let user = lsgetItem('user');\r\n let eventId = null;\r\n let languageCode = null;\r\n if (window.location.search) {\r\n const params = new URLSearchParams(window.location.search);\r\n let unparsedEventId = params.get(getKey(\"eventId\", params));\r\n if (unparsedEventId) eventId = parseInt(unparsedEventId)\r\n languageCode = params.get(getKey(\"languageCode\", params));\r\n }\r\n if (user && !eventId) {\r\n eventId = user.eid === undefined ? user.token.eid : user.eid;\r\n }\r\n if (user && !languageCode) {\r\n languageCode = user.userLang === undefined ? user.token.userLang : user.userLang;\r\n }\r\n if (!languageCode) languageCode = \"swe\";\r\n if (user && user.token) {\r\n return { ...headers, Authorization: \"Bearer \" + user.token.toString(), eid: eventId, userLang: languageCode };\r\n } else {\r\n return { ...headers, eid: eventId, userLang: languageCode };\r\n }\r\n}\r\n\r\n\r\n","import { cmsConstants } from \"../../../constants/cms/cms.constants\";\r\n\r\nconst initialState = {\r\n editMode: true,\r\n containerToUpdate: null,\r\n containerAdded: null,\r\n fonts: [],\r\n showMergeAlert: false,\r\n mergeDescription: [],\r\n mergeSource: '',\r\n isSaving: false,\r\n inheritInfo: false,\r\n inheritageAffected: false,\r\n deselectionBlocked: false\r\n};\r\n\r\nexport function cms(state = initialState, action) {\r\n switch (action.type) {\r\n case cmsConstants.LOAD_CLIENT_FONTS:\r\n return {\r\n ...state,\r\n fonts: action.fonts\r\n };\r\n case cmsConstants.REMOVE_CLIENT_FONT:\r\n const newFonts = Array.from(state.fonts);\r\n const index = state.fonts.indexOf(newFonts.find(f => { return f.name === action.font.name }));\r\n newFonts.splice(index, 1);\r\n return {\r\n ...state,\r\n fonts: newFonts\r\n };\r\n case cmsConstants.ALERT_NEW_MODIFICATIONS:\r\n\r\n return {\r\n ...state,\r\n mergeSource: !action.isModified ? [] : [...state.mergeSource, action.source],\r\n showMergeAlert: action.isModified,\r\n mergeCallback: action.isModified ? action.callback : null\r\n }\r\n case cmsConstants.BLOCK_DESELECT:\r\n return {\r\n ...state,\r\n deselectionBlocked: action.isBlocked\r\n };\r\n case cmsConstants.GLOBAL_SAVING_LOADER:\r\n return {\r\n ...state,\r\n isSaving: action.isLoading\r\n };\r\n case cmsConstants.INHERITAGE_AFFECTED:\r\n return {\r\n ...state,\r\n inheritageAffected: action.isAffected\r\n };\r\n case cmsConstants.TOGGLE_INHERITAGE_INFO:\r\n return {\r\n ...state,\r\n inheritInfo: action.on\r\n };\r\n case cmsConstants.ADD_CLIENT_FONT:\r\n return {\r\n ...state,\r\n fonts: [...state.fonts, action.font]\r\n };\r\n case cmsConstants.SET_SOURCE_LOCATION:\r\n return {\r\n ...state,\r\n sourceLocation: action.sourceLoc,\r\n sourceEnviroment: action.env\r\n };\r\n case cmsConstants.SET_ENVIROMENT:\r\n return {\r\n ...state,\r\n enviroment: action.env,\r\n editMode: action.editMode,\r\n eventId: action.eventId,\r\n languageCode: action.languageCode || state.languageCode\r\n };\r\n case cmsConstants.SET_ENVIROMENT_LANG:\r\n return {\r\n ...state,\r\n languageCode: action.languageCode\r\n };\r\n case cmsConstants.CONTAINER_TO_UPDATE:\r\n return {\r\n ...state,\r\n containerToUpdate: action.container\r\n };\r\n case cmsConstants.CONTAINER_UPDATED:\r\n return {\r\n ...state,\r\n containerToUpdate: null\r\n };\r\n case cmsConstants.CONTAINER_ADDED:\r\n return {\r\n ...state,\r\n containerAdded: action.container\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { store } from \"../store/configureStore\";\r\nimport { arrayHelper } from \"./arrayHelper\";\r\n\r\nconst API_KEY = \"AIzaSyB6aQW4uFg8OuFMHaxBmqDPCvzBGe5vuTg\";\r\n\r\nconst createGoogleImports = (fonts) => {\r\n let str = \"\";\r\n fonts.map(f => {\r\n if (f.includes(\" \")) { f = f.replace(\" \", \"+\"); }\r\n str += `@import url('https://fonts.googleapis.com/css?family=${f}&display=swap');`;\r\n });\r\n return str;\r\n}\r\n\r\n\r\nexport const extractFontsFromJson = (obj) => {\r\n let cssFonts = \"\";\r\n let googleFonts = [];\r\n let clientFonts = [];\r\n for (const prop in obj) {\r\n for (const v in obj[prop]) {\r\n for (const c in obj[prop][v]) {\r\n if (c === 'fontFamily') {\r\n if (store.getState().cms.fonts.length > 0 && store.getState().cms.fonts.find(f => { return f.name === obj[prop][v][c] })) {\r\n const font = store.getState().cms.fonts.find(f => { return f.name === obj[prop][v][c] });\r\n if (font) {\r\n clientFonts.push(font);\r\n }\r\n\r\n }\r\n else {\r\n googleFonts.push(obj[prop][v][c]);\r\n }\r\n\r\n }\r\n }\r\n }\r\n }\r\n /* fonts = [...new Set(fonts)]; */\r\n cssFonts = googleFonts.length > 0 ? cssFonts + createGoogleImports(googleFonts) : cssFonts;\r\n cssFonts = clientFonts.length > 0 ? cssFonts + createFontFaces(clientFonts) : cssFonts;\r\n return cssFonts\r\n}\r\n\r\nconst createFontFaces = (fonts) => {\r\n let str = \"\";\r\n fonts.map(cf => {\r\n str += `@font-face{ font-family: ${cf.name}; src: url('${cf.url}'); }`;\r\n });\r\n return str;\r\n}\r\n\r\nexport const insertFonts = (clientFonts) => {\r\n let cssFonts = \"\";\r\n if (clientFonts !== undefined) {\r\n cssFonts += createFontFaces(clientFonts);\r\n }\r\n return cssFonts;\r\n}\r\n\r\nexport const insertGoogleFonts = (props) => {\r\n const { template } = props;\r\n const fonts = template.match(/font-family:(.*?)}/g);\r\n const clientFonts = store.getState().cms.fonts;\r\n\r\n let str = \"\";\r\n const googleFonts = [];\r\n fonts.map((f, i) => {\r\n\r\n let s = f.substring(0, f.indexOf(';') + 1);\r\n let q = f.substring(0, f.indexOf('}') + 1);\r\n\r\n let s1 = s.substring(0, s.indexOf(';'));\r\n let q1 = q.substring(0, q.indexOf('}'));\r\n\r\n if (!q1.includes(';') && q1 !== \"\" && !q1.includes('inherit')) {\r\n let font = q1.substring('font-family:'.length, q1.length + 1);\r\n if (clientFonts !== undefined && !clientFonts.find(f => { return f.name === font })) {\r\n if (font.includes(\" \")) { font = font.replace(\" \", \"+\"); }\r\n let importStr = `@import url('https://fonts.googleapis.com/css?family=${font}:300,400,700,800&display=swap');`;\r\n googleFonts.push(importStr);\r\n }\r\n else {\r\n if (font.includes(\" \")) { font = font.replace(\" \", \"+\"); }\r\n let importStr = `@import url('https://fonts.googleapis.com/css?family=${font}:300,400,700,800&display=swap');`;\r\n googleFonts.push(importStr);\r\n }\r\n\r\n }\r\n if (!s1.includes(';') && s1 !== \"\" && !s1.includes('inherit')) {\r\n let font = s1.substring('font-family:'.length, s1.length + 1);\r\n if (clientFonts !== undefined && !clientFonts.find(f => { return f.name === font })) {\r\n if (font.includes(\" \")) { font = font.replace(\" \", \"+\"); }\r\n let importStr = `@import url('https://fonts.googleapis.com/css?family=${font}:300,400,700,800&display=swap');`;\r\n googleFonts.push(importStr);\r\n } else {\r\n if (font.includes(\" \")) { font = font.replace(\" \", \"+\"); }\r\n let importStr = `@import url('https://fonts.googleapis.com/css?family=${font}:300,400,700,800&display=swap');`;\r\n googleFonts.push(importStr);\r\n }\r\n }\r\n });\r\n\r\n let unique = [...new Set(googleFonts)];\r\n unique.map(gf => {\r\n str += gf + '\\n';\r\n })\r\n clientFonts !== undefined && clientFonts.map(cf => {\r\n str += `@font-face{ font-family: ${cf.name}; src: url('${cf.url}')}`;\r\n })\r\n\r\n return str\r\n\r\n}\r\n","import React from \"react\";\r\nimport \"croppie/croppie.css\";\r\nimport { Spinner } from \"reactstrap\";\r\nimport { authHeader } from \"../../helpers/authHeader\";\r\nimport { handleResponse } from \"../../helpers/handleresponse\";\r\nimport { securityHelper } from \"../../helpers/securityHelper\";\r\nimport { calculateImageSize } from \"../../helpers/imageHelper\";\r\nimport Slider, { createSliderWithTooltip } from \"rc-slider\";\r\nimport Rotate90DegreesCcwTwoToneIcon from \"@material-ui/icons/Rotate90DegreesCcwTwoTone\";\r\nimport { IconButton, LinearProgress } from \"@material-ui/core\";\r\nimport SaveTwoToneIcon from \"@material-ui/icons/SaveTwoTone\";\r\nimport CropTwoToneIcon from \"@material-ui/icons/CropTwoTone\";\r\nimport \"./Cropper.css\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nconst Croppie = require(\"croppie\");\r\nconst SliderWithTooltip = createSliderWithTooltip(Slider);\r\n\r\nclass InlineCropper extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.handleZoomOut = this.handleZoomOut.bind(this);\r\n this.state = {\r\n zoom: 0,\r\n isLoading: false,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.init();\r\n }\r\n init = (reRender = false) => {\r\n if (this.cropper) {\r\n this.cropper.destroy();\r\n }\r\n if (this.props.containerStyle !== null || reRender) {\r\n this.cropper = new Croppie(document.getElementById(\"croppie-img\" + this.props.parent), {\r\n viewport:\r\n this.props.settings.type !== \"CIRCLE\" && this.props.settings.type !== \"SQUARE\"\r\n ? { width: this.props.containerStyle.width, height: this.props.settings.style.maxHeight }\r\n : {\r\n width: this.props.settings.style.width,\r\n height: this.props.settings.style.height,\r\n type: this.props.settings.type === \"CIRCLE\" && \"circle\",\r\n },\r\n boundary:\r\n this.props.settings.type !== \"CIRCLE\" && this.props.settings.type !== \"SQUARE\"\r\n ? { width: this.props.containerStyle.width, height: this.props.settings.style.maxHeight }\r\n : { width: this.props.settings.style.width, height: this.props.settings.style.height },\r\n showZoomer: true,\r\n type: \"base64\",\r\n minZoom: -10,\r\n zoom: -1,\r\n });\r\n /*debugger*/\r\n this.handleZoomOut(0);\r\n let listNodes = document.getElementsByClassName(\"cr-vp-square\");\r\n if (listNodes[0]) {\r\n listNodes[0].style.boxShadow = `0px 0px 2000px 2000px ${this.props.bgColor}`;\r\n }\r\n listNodes = document.getElementsByClassName(\"cr-vp-circle\");\r\n if (listNodes[0]) {\r\n listNodes[0].style.boxShadow = `0px 0px 2000px 2000px ${this.props.bgColor}`;\r\n }\r\n }\r\n };\r\n componentDidUpdate(prevProps) {\r\n if (this.props.hideOverlay !== undefined && prevProps.hideOverlay !== this.props.hideOverlay) {\r\n if (this.props.hideOverlay === false) {\r\n this.init(true);\r\n }\r\n }\r\n if (\r\n (prevProps.containerStyle !== this.props.containerStyle && this.props.containerStyle !== undefined && this.props.containerStyle !== null && !this.cropper) ||\r\n prevProps.url !== this.props.url\r\n ) {\r\n this.init();\r\n }\r\n if (this.props.url !== undefined && prevProps.url !== this.props.url) {\r\n this.init();\r\n }\r\n if (this.props.isCropping !== prevProps.isCropping) {\r\n this.init();\r\n }\r\n }\r\n rotate = () => {\r\n this.cropper.rotate(90);\r\n };\r\n handleZoomOut(scale, controlled = false) {\r\n if (this.cropper !== undefined) {\r\n const cZoom = this.cropper.get().zoom;\r\n if (!controlled && scale === 0) {\r\n this.setState({ zoom: scale }, () => {\r\n this.cropper.setZoom(scale);\r\n });\r\n return;\r\n }\r\n if (controlled === true && scale !== undefined) {\r\n this.setState({ zoom: scale }, () => {\r\n this.cropper.setZoom(scale);\r\n });\r\n return;\r\n }\r\n if (cZoom !== this.state.zoom) {\r\n if (cZoom === 50) {\r\n this.cropper.setZoom(0);\r\n this.setState({ zoom: 0 });\r\n return;\r\n }\r\n this.setState({ zoom: cZoom });\r\n }\r\n }\r\n }\r\n handlRes = () => {\r\n this.setState({ isLoading: true });\r\n const size = { height: parseInt(this.cropper.options.boundary.height) * 4, width: parseInt(this.cropper.options.boundary.width) * 4 };\r\n this.cropper.result({ type: \"base64\", size }).then((res) => this.handleSave(res));\r\n };\r\n handleSave = (res) => {\r\n const fileInfo = {\r\n name: \"cropped-\" + securityHelper.createGuid(),\r\n size: calculateImageSize(res).inBytes,\r\n type: \"image/png\",\r\n file: res,\r\n isCropped: true,\r\n };\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(fileInfo),\r\n };\r\n fetch(`./api/files/`, requestOptions)\r\n .then(handleResponse)\r\n .then((file) => {\r\n this.props.onSave(file.url);\r\n this.setState({ isLoading: false });\r\n })\r\n .catch((err) => {\r\n this.setState({ isLoading: false });\r\n });\r\n };\r\n alignment = () => {\r\n switch (this.props.settings.alignment) {\r\n case \"center\":\r\n return \"-90px\";\r\n case \"left\":\r\n return \"unset\";\r\n case \"right\":\r\n return \"-200px\";\r\n default:\r\n break;\r\n }\r\n };\r\n render() {\r\n return (\r\n \r\n
\r\n {this.state.isLoading ? : null}\r\n
\r\n \r\n
\r\n {/* \r\n \r\n */}\r\n
\r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n {/* {!this.props.mailCrop ? */}\r\n this.props.cancel()}>\r\n \r\n {\" \"}\r\n {/* : null} */}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\nexport default InlineCropper;\r\n","import React, { useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { toKebabCase } from \"../../../../helpers/cssHelper\";\r\nimport TinyEditor from \"../../../components/plugins/tiny_plugin/TinyEditor\";\r\n/* import './TextArea.css' */\r\n\r\nconst TextWrapper = (props) => {\r\n const { text, textOnChange, selectedElement, template, contentId, element, elementStyle = null } = props;\r\n let selectedStyles = {};\r\n if (template && template.content) {\r\n const { title, a, subtitle, label, table, thead, tcell } = template.content;\r\n selectedStyles = { title, a, subtitle, label, table, thead, tcell };\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {template ? (\r\n \r\n ) : null}\r\n \r\n
\r\n
\r\n );\r\n};\r\nfunction mapStateToProps(state) {\r\n return {\r\n selectedElement: state.email.selectedElement,\r\n template: state.template.template,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(TextWrapper);\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport Axios from \"axios\";\r\nimport { sourceTypes } from \"../../constants/cms/sourceType\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport { Row, Label, Col, Input } from \"reactstrap\";\r\nimport { InputBase, Paper, Button } from \"@material-ui/core\";\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\nimport JirangoSwitch from \"../../components/UI/Switch/JirangoSwitch\";\r\nimport SystemLabel from \"../../system/SystemLabel/SystemLabel\";\r\nimport LinkIcon from \"@material-ui/icons/Link\";\r\nimport ViewListIcon from \"@material-ui/icons/ViewList\";\r\nimport { FloatingGenericList } from \"../../cms/components/editor/tools/FloatingChecklist/FloatingChecklist\";\r\nimport { cmsActions } from \"../../store/actions/cms/cms.action\";\r\nclass LinkManager extends React.Component {\r\n state = {\r\n showSettings: false,\r\n internalPaths: [],\r\n searchKey: \"\",\r\n currentLink: \"\",\r\n domain: \"\",\r\n target: \"_blank\",\r\n appendBadgeNo: false,\r\n showList: false,\r\n };\r\n\r\n\r\n\r\n\r\n componentDidMount() {\r\n const { selectedLink } = this.props;\r\n if (selectedLink && typeof selectedLink == {}) {\r\n const { target, link, name } = selectedLink;\r\n this.setState({ target, currentLink: link, displayText: name });\r\n }\r\n this.getInternalPaths();\r\n }\r\n componentDidUpdate(prevProps) {\r\n const { selectedLink } = this.props;\r\n if ((selectedLink && !prevProps.selectedLink) || (selectedLink && prevProps.selectedLink != selectedLink)) {\r\n const { target, link, name } = selectedLink;\r\n this.setState({ target, currentLink: link, displayText: name });\r\n }\r\n\r\n if (this.props.isOpen && !prevProps.isOpen) {\r\n this.props.dispatch(cmsActions.blockDeselect(true));\r\n }\r\n }\r\n\r\n editLink = (e) => this.setState({ currentLink: e });\r\n search = (str) => this.setState({ searchKey: str, showList: false });\r\n toggleAlt = () =>\r\n this.setState({\r\n target: this.state.target == \"_blank\" ? \"_self\" : \"_blank\",\r\n });\r\n handleClose = () => {\r\n this.props.toggle();\r\n setTimeout(() => this.props.dispatch(cmsActions.blockDeselect(false)), 2000);\r\n };\r\n setLink = () => {\r\n const { displayText, target, domain, currentLink } = this.state;\r\n let link = currentLink;\r\n if (!link.includes(\"https://\") && !link.includes(\"mailto\")) link = \"https://\" + link;\r\n\r\n this.props.setLink({\r\n currentLink: link,\r\n displayText,\r\n target,\r\n });\r\n this.setState({ currentLink: \"\", displayText: \"\" });\r\n this.props.toggle();\r\n };\r\n getInternalPaths = () => {\r\n const { cms } = this.props;\r\n if (!cms.eventId) return;\r\n Axios.get(`./api/link/${cms.eventId}`).then((res) => {\r\n const { data } = res;\r\n if (data) {\r\n const { pathsObj } = data;\r\n let paths = pathsObj.paths;\r\n\r\n if (this.props.cms.enviroment == sourceTypes.EMAIL && paths) {\r\n paths.push({\r\n id: -100,\r\n type: \"Survey\",\r\n name: \"Survey\",\r\n });\r\n }\r\n this.setState({\r\n internalPaths: paths,\r\n domain: pathsObj.domain,\r\n });\r\n }\r\n });\r\n };\r\n convertInternalLink = (type, id) => {\r\n const { domain } = this.state;\r\n if (typeof id == \"string\" && !isNaN(id)) {\r\n id = parseInt(id);\r\n }\r\n\r\n switch (type) {\r\n case \"Form\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/register/\" + id.toString(36) + \"?badgeNo=[BadgeNo]\";\r\n case \"AnonymousSurvey\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/survey/\" + id; /* .toString(36) */\r\n case \"Breakout\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/digitalarena/\" + id + \"?clientkey=[BadgeNo]\";\r\n case \"Page\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/p/\" + id.toString(36) + \"?badgeNo=[BadgeNo]\";\r\n case \"DigitalArena\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/digitalarena/\" + id + \"?clientkey=[BadgeNo]\";\r\n case \"DigitalArenaOld\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/digitalmeeting/\" + id + \"?clientkey=[BadgeNo]\";\r\n case \"Exhibitor\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/exhibitor/\" + id.toString(36) + \"?clientkey=[BadgeNo]\";\r\n case \"Survey\":\r\n return \"[SurveyLink]\";\r\n case \"ChannelList\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/interaction\" : \"\") + \"/channels/\" + id + \"?clientKey=[BadgeNo]\";\r\n case \"Cms2FORM\":\r\n case \"Cms2PAGE\":\r\n case \"Cms2SURVEY\":\r\n return domain + (!window.location.href.includes(\"localhost\") ? \"/cms\" : \"\") + \"/web/\" + id + \"?badgeNo=[BadgeNo]\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n selectFromList = (id, type) => {\r\n const { internalPaths } = this.state;\r\n console.log(internalPaths)\r\n const internalPath = internalPaths.find((p) => p.id == id && p.type == type);\r\n if (internalPath) {\r\n var x = {\r\n currentLink: this.convertInternalLink(internalPath.type, id),\r\n displayText: internalPath.name,\r\n searchKey: false,\r\n showList: false,\r\n };\r\n this.setState(x);\r\n }\r\n };\r\n getList = () => {\r\n const { searchKey, internalPaths, showList, displayText, currentLink } = this.state;\r\n let paths = Array.from(internalPaths);\r\n\r\n return showList ? paths : paths.filter((p) => p.name.toLowerCase().includes(searchKey.toLowerCase()));\r\n };\r\n toggleMailTo = () => {\r\n if (this.state.currentLink.includes(\"mailto:\")) {\r\n this.setState({ currentLink: this.state.currentLink ? this.state.currentLink.replace(\"mailto:\", \"\") : this.state.currentLink });\r\n } else {\r\n this.setState({ currentLink: \"mailto:\" + this.state.currentLink });\r\n }\r\n };\r\n render() {\r\n const { isOpen } = this.props;\r\n const { searchKey, internalPaths, showList, displayText, currentLink } = this.state;\r\n console.log(internalPaths)\r\n return (\r\n \r\n \r\n \r\n {\" \"} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n this.search(e.target.value);\r\n this.editLink(e.target.value);\r\n }}\r\n />\r\n this.setState({ showList: !this.state.showList })}\r\n style={{\r\n padding: \"0px 10px\",\r\n cursor: \"pointer\",\r\n zIndex: 1,\r\n }}\r\n /* className={classes.iconButton} */ aria-label=\"search\"\r\n >\r\n \r\n \r\n \r\n
\r\n {(searchKey.length > 3 && internalPaths.length > 0) || (showList && internalPaths.length > 0) ? (\r\n this.selectFromList(id, type)} list={this.getList()} />\r\n ) : null}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.setState({ displayText: e.target.value })} />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {this.state.currentLink != \"[SurveyLink]\" ? (\r\n \r\n \r\n \r\n \r\n \r\n this.toggleMailTo()} isChecked={this.state.currentLink ? this.state.currentLink.includes(\"mailto:\") : \"\"} />\r\n \r\n \r\n ) : null}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n const { enviroment } = state.cms;\r\n return {\r\n template: state.template.template,\r\n cms: state.cms,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(LinkManager);\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { ButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem, InputGroupAddon, Input, InputGroupText, InputGroup, Col, Row } from 'reactstrap';\r\nimport { languageActions } from '../../store/actions/system/language/language.action';\r\nimport { formActions } from '../../store/actions/cms/form/form.action';\r\nimport './LanguageToggler.css'\r\nimport { tempLangConverter } from '../../helpers/lanugageHelper';\r\n\r\nclass LanguageToggler extends React.Component {\r\n state = {\r\n isOpen: false,\r\n codes: null,\r\n display: false\r\n }\r\n componentDidMount() {\r\n const { form, dispatch } = this.props;\r\n dispatch(languageActions.getAllCodesByEvent(form.eventId));\r\n }\r\n\r\n componentDidUpdate(prevProps, prevState) {\r\n if (prevProps.language !== this.props.language && this.props.language !== undefined) {\r\n const { eventCodes } = this.props.language;\r\n if (eventCodes !== undefined && eventCodes.length > 1) {\r\n this.setState({ codes: eventCodes, display: true });\r\n }\r\n\r\n }\r\n }\r\n toggleLanguage = (code) => {\r\n const { dispatch, event, form } = this.props;\r\n const formLangChanged = { ...form, languageCode: code };\r\n dispatch(formActions.softUpdate(Object.assign({}, formLangChanged)));\r\n }\r\n toggle = () => {\r\n this.setState({\r\n dropdownOpen: !this.state.dropdownOpen\r\n });\r\n }\r\n render() {\r\n const { codes, display } = this.state;\r\n const { form } = this.props\r\n return (\r\n \r\n {display && \r\n \r\n \r\n\r\n \r\n \r\n {codes ? codes.map(c => {\r\n return this.toggleLanguage(c)} key={c}>\r\n \r\n \r\n \r\n \r\n {/* \r\n
{c}
\r\n */}\r\n
\r\n
\r\n }) : }\r\n
\r\n
}\r\n
\r\n\r\n )\r\n }\r\n}\r\n\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n language: state.language,\r\n form: state.form,\r\n event: state.event,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(LanguageToggler);\r\n","import React from \"react\";\r\nimport { Container, Row, Col, Card, Button, Popover, PopoverHeader, Spinner } from \"reactstrap\";\r\nimport { connect } from \"react-redux\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { elementActions } from \"../../../../../store/actions/cms/element/element.action\";\r\n\r\nimport { renderElement } from \"../../../../helpers/renderElement\";\r\nimport { formHelper } from \"../../helpers/formHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport JirangoButton from \"../../../../components/UI/Buttons/JirangoButton\";\r\nimport { labelAlignmentButtonDisplay } from \"../../../../helpers/labelAlignment\";\r\nimport StyleWrapper from \"../../../template/components/StyleWrapper\";\r\nimport LanguageToggler from \"../../../../../system/LanguageToggler/LanguageToggler\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { elementConstants } from \"../../../../../constants/cms/form/element/element.constants\";\r\nimport { handleResponse } from \"../../../../../helpers/handleresponse\";\r\nimport { getKey } from \"../../../../../helpers/UrlHelper\";\r\nimport LockOutlinedIcon from \"@material-ui/icons/LockOutlined\";\r\nimport { FloatingCartButton } from \"../../../../elements/element/GroupRegistration/GroupRegistration\";\r\nimport \"../FormLayout/FormLayout.css\";\r\nimport { attendeeActions } from \"../../../../../store/actions/attendee/attendee.action\";\r\n\r\nclass PostFormContent extends React.PureComponent {\r\n state = {\r\n formIsValid: false,\r\n submitted: false,\r\n };\r\n validators = [];\r\n validatorList = [];\r\n componentDidMount() {\r\n this.validatorList.map((v) => {\r\n v();\r\n });\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.form.currentPage !== prevProps.form.currentPage) {\r\n this.validators = [];\r\n this.validatorList.map((v) => {\r\n v();\r\n });\r\n window.scrollTo(0, 0);\r\n }\r\n }\r\n isChangeLink = () => {\r\n const params = new URLSearchParams(this.props.location.search);\r\n let badgeNo = params.get(getKey(\"badgeno\", params));\r\n if (badgeNo) return true;\r\n return false;\r\n };\r\n postForm = async () => {\r\n const { dispatch, attendee } = this.props;\r\n const form = deepClone(this.props.form);\r\n\r\n /* if(form.isCropping){\r\n alert('CROP!')\r\n } */\r\n if (this.formIsValid() && !form.isCropping) {\r\n if (form.survey === true) {\r\n let orders = Array.from(attendee.orders);\r\n orders.map((o) => {\r\n o.formId = form.formId;\r\n o.surveyCode = /* parseInt( */ this.props.surveyCode; /* , 36) */\r\n });\r\n dispatch(formActions.postSurvey(orders));\r\n this.setState({ submitted: true });\r\n } else {\r\n let orders = Array.from(attendee.orders);\r\n if (attendee.payMethod) {\r\n orders.map((o) => {\r\n o.payMethod = attendee.payMethod;\r\n o.formId = form.formId;\r\n });\r\n } else {\r\n orders.map((o) => {\r\n o.formId = form.formId;\r\n });\r\n }\r\n /* let isChangeLink = this.isChangeLink(); */\r\n let dto = [];\r\n orders.map((o) => {\r\n let order = {\r\n orderId: o.orderId ? o.orderId : null,\r\n eventIds: [],\r\n };\r\n\r\n if (!o.discounts) o.discounts = [];\r\n\r\n if (o.orderRow) {\r\n o.orderRow.map((or) => {\r\n if (o.discount && or.amount > 0) {\r\n if (o.discount.includes(\"%\") && or.eventId != o.eventId) {\r\n or.discount = parseFloat(o.discount);\r\n } else {\r\n or.discount = parseFloat(o.discount);\r\n }\r\n }\r\n order.eventIds.push(or.eventId);\r\n });\r\n }\r\n if (order.eventIds.length > 0) {\r\n dto.push(order);\r\n }\r\n });\r\n if (dto.length > 0) {\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n body: JSON.stringify(dto),\r\n };\r\n fetch(`./api/attendee/statusrange/${form.sqlStateNo}`, requestOptions)\r\n .then(handleResponse)\r\n .then((response) => {\r\n if (response.available) {\r\n dispatch(formActions.post(orders, form.formId));\r\n this.setState({ submitted: true });\r\n } else {\r\n alert(\"OrderRowFull\");\r\n }\r\n })\r\n .catch((err) => console.error(err));\r\n } else {\r\n dispatch(formActions.post(orders));\r\n this.setState({ submitted: true });\r\n }\r\n }\r\n }\r\n };\r\n\r\n formIsValid = () => {\r\n let invalidElements = false;\r\n console.log(\"validate\");\r\n this.validators.map((validator) => {\r\n if (typeof validator === \"function\" && !validator()) {\r\n invalidElements = true;\r\n }\r\n });\r\n if (invalidElements) return false;\r\n return true;\r\n };\r\n getValidator = (validator) => {\r\n if (validator !== undefined && typeof validator === \"function\") {\r\n this.validators.push(validator);\r\n }\r\n };\r\n updateValidators = (validator, clear) => {\r\n console.log(\"clear\", clear);\r\n if (typeof validator === \"function\" && !clear) {\r\n this.validatorList.push(validator);\r\n } else if (typeof validator === \"function\" && clear) {\r\n let index = -1;\r\n this.validatorList.map((v, i) => {\r\n if (v === validator) {\r\n index = i;\r\n }\r\n });\r\n console.log(this.validatorList);\r\n if (index > -1) {\r\n this.validatorList.splice(index, 1);\r\n }\r\n } else {\r\n this.validatorList.map((validator) => {\r\n validator();\r\n });\r\n }\r\n };\r\n\r\n allowAdd = () => {\r\n return this.formIsValid();\r\n };\r\n\r\n togglePage = (page) => {\r\n const { dispatch } = this.props;\r\n const { form, attendee } = this.props;\r\n const isAllowed = this.formIsValid();\r\n if (!isAllowed && page > this.props.form.currentPage) return;\r\n if (page <= form.pages || page >= 1) {\r\n if (\r\n form.settings.changeToGroupLeaderOnSpecificPage == true &&\r\n form.settings.specificPage &&\r\n parseInt(form.settings.specificPage) > 0 &&\r\n !this.props.cms.editMode &&\r\n attendee.orders.length > 1 &&\r\n page == form.settings.specificPage\r\n ) {\r\n var leader = attendee.orders.find((o) => o.leader == true);\r\n if (leader) {\r\n dispatch(attendeeActions.setActivePersonNo(attendee.orders.indexOf(leader)));\r\n } else {\r\n leader = attendee.orders.find((o) => o.orderId == o.orderGroupId);\r\n dispatch(attendeeActions.setActivePersonNo(attendee.orders.indexOf(leader)));\r\n }\r\n }\r\n dispatch(formActions.scrollPage(page, () => {}));\r\n }\r\n };\r\n getElements = () => {\r\n const { formElements, selectedElement } = this.props.form;\r\n const { form, template } = this.props;\r\n if (!formElements) return [];\r\n return Array.from(\r\n formElements.filter(\r\n (el) => el.parentId == null && el.page == form.currentPage /* &&\r\n (el.data.hidden === false || el.data.hidden === undefined) */\r\n )\r\n );\r\n };\r\n isAuthorized = () => {\r\n const { form, attendee } = this.props;\r\n if (form.settings.authorizedFormMode === true) {\r\n if (attendee && attendee.orders && attendee.orders.length > 0 && this.props.attendee.orders[0].orderId !== undefined) {\r\n return true;\r\n }\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n };\r\n render() {\r\n const { formElements, selectedElement } = this.props.form;\r\n const { form, template, cms } = this.props;\r\n if (!cms.editMode && !this.isAuthorized()) {\r\n return (\r\n \r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n return (\r\n
\r\n {/* */}\r\n {formElements.find((f) => f.type == elementConstants.GROUP_REGISTRATION) &&\r\n !this.props.cms.editMode &&\r\n ((this.props.form.settings.changeToGroupLeaderOnSpecificPage == true && this.props.form.settings.specificPage != this.props.form.currentPage) ||\r\n this.props.form.settings.changeToGroupLeaderOnSpecificPage == false) ? (\r\n \r\n ) : null}\r\n {this.getElements().map((el, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n {renderElement(el.type, el, null, null, this.getValidator, this.updateValidators,this.allowAdd)}\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n {formElements.length > 0 && form.currentPage === form.pages && form.pages === 1 && form.settings !== undefined && form.settings.submit !== undefined && !form.settings.submit.hidden ? (\r\n \r\n \r\n
\r\n \r\n {form.settings.submit.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text || form.settings.submit.defaultLabel}{\" \"}\r\n {this.state.submitted && !form.submitError ? : null}\r\n \r\n
\r\n \r\n \r\n ) : null}\r\n {form && form.pages > 1 ? (\r\n \r\n \r\n {parseInt(form.currentPage) > 1 && form.settings !== undefined && form.settings.navigation !== undefined && form.settings.navigation.previous !== undefined ? (\r\n this.togglePage(parseInt(form.currentPage) - 1)} style={template && template.content.button}>\r\n {form.settings.navigation.previous.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text ? (\r\n form.settings.navigation.previous.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text\r\n ) : (\r\n \r\n )}\r\n \r\n ) : null}\r\n \r\n\r\n \r\n {parseInt(form.currentPage) < form.pages && form.settings !== undefined && form.settings.navigation !== undefined && form.settings.navigation.next !== undefined ? (\r\n this.togglePage(parseInt(form.currentPage) + 1)} style={template && template.content.button}>\r\n {form.settings.navigation.next.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text ? (\r\n form.settings.navigation.next.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text\r\n ) : (\r\n \r\n )}\r\n \r\n ) : null}\r\n {form.currentPage === form.pages &&\r\n form.settings !== undefined &&\r\n form.settings.submit !== undefined &&\r\n form.settings.submit.labels !== undefined &&\r\n !form.settings.submit.hidden /* .find(l => {\r\n return l.languageCode === form.languageCode;\r\n }).text !== \"\" */ ? (\r\n \r\n {form.settings.submit.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text !== \"\"\r\n ? form.settings.submit.labels.find((l) => {\r\n return (l.languageCode.code || l.languageCode) === form.languageCode;\r\n }).text\r\n : form.settings.submit.defaultLabel}{\" \"}\r\n {this.state.submitted && !form.submitError ? : null}\r\n \r\n ) : null}\r\n \r\n \r\n ) : null}\r\n {/* */}\r\n {/* */}\r\n
\r\n /* */\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n cElements: state.element,\r\n alert: state.alert,\r\n cms: state.cms,\r\n form: state.form,\r\n template: state.template.template,\r\n attendee: state.attendee,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PostFormContent);\r\n","import React, { Component, Suspense } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { formActions } from \"../../../../../store/actions/cms/form/form.action\";\r\nimport { templateActions } from \"../../../../../store/actions/cms/template/template.action\";\r\nimport { conditionActions } from \"../../../../../store/actions/cms/condition.action\";\r\nimport { DragDropContext } from \"react-beautiful-dnd\";\r\nimport { Container } from \"reactstrap\";\r\nimport PostFormContent from \"./PostFormContent\";\r\nimport TemplateWrapper from \"../../../template/containers/TemplateLayout/TemplateWrapper\";\r\nimport { sourceTypes } from \"../../../../../constants/cms/sourceType\";\r\nimport { cmsActions } from \"../../../../../store/actions/cms/cms.action\";\r\nimport { SplashScreen } from \"../../../../components/UI/SplashScreen/SplashScreen\";\r\nimport { attendeeActions } from \"../../../../../store/actions/attendee/attendee.action\";\r\nimport { getKey } from \"../../../../../helpers/UrlHelper\";\r\nimport { deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport { NotAuthourized } from \"../../../../components/NotAuthorized\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\n\r\nclass PostFormLayout extends React.Component {\r\n state = {\r\n loaded: false,\r\n surveyCode: \"\",\r\n badgeNo: \"\",\r\n disabled: false,\r\n paramHandled: false,\r\n notAuthourized: false,\r\n freezeCaptured: false,\r\n lang: \"swe\",\r\n };\r\n loading = () =>
Loading...
;\r\n componentDidMount() {\r\n const { dispatch, match, history } = this.props;\r\n let id = match.params.id;\r\n if (this.props.location.pathname.includes(\"/survey/\")) {\r\n this.setState({ surveyCode: id }, () => {\r\n dispatch(formActions.getSurvey(/* parseInt( */ id /* , 36) */));\r\n });\r\n } else {\r\n dispatch(formActions.get(parseInt(id, 36), false, true));\r\n }\r\n let badgeNo = \"\";\r\n let loadOrder = \"true\";\r\n let lang = null;\r\n if (this.props.location.search) {\r\n const params = new URLSearchParams(this.props.location.search);\r\n badgeNo = params.get(getKey(\"badgeno\", params));\r\n loadOrder = params.get(getKey(\"loadorder\", params));\r\n lang = params.get(getKey(\"lang\", params));\r\n }\r\n if (badgeNo) {\r\n this.setState({ badgeNo });\r\n }\r\n\r\n let searchParam = new URLSearchParams({}).toString();\r\n if (lang) {\r\n searchParam = new URLSearchParams({\r\n lang: lang,\r\n }).toString();\r\n }\r\n if (badgeNo) {\r\n let obj = {};\r\n\r\n if (lang) {\r\n obj.lang = lang;\r\n }\r\n\r\n obj.badgeNo = badgeNo;\r\n searchParam = new URLSearchParams(obj).toString();\r\n }\r\n\r\n this.setState({ lang: lang });\r\n history.push({\r\n pathname: match.url,\r\n search: \"?\" + searchParam,\r\n });\r\n\r\n dispatch(attendeeActions.getOrdersByBadgeNo(badgeNo));\r\n dispatch(cmsActions.setEnviroment(sourceTypes.FORM, false));\r\n }\r\n handleSearchParams = () => {\r\n if (this.props.location && this.props.location.search) {\r\n const { form, dispatch } = this.props;\r\n const params = new URLSearchParams(this.props.location.search);\r\n const page = params.get(getKey(\"page\", params));\r\n const routeMaster = params.get(getKey(\"routemaster\", params));\r\n const lang = params.get(getKey(\"lang\", params));\r\n //Handle page navigation\r\n if (page && routeMaster == \"true\" && form.pages >= parseInt(page)) {\r\n dispatch(formActions.scrollPage(parseInt(page)));\r\n }\r\n if (lang) {\r\n const updatedForm = deepClone(form);\r\n updatedForm.languageCode = lang;\r\n\r\n dispatch(formActions.softUpdate(updatedForm));\r\n dispatch(cmsActions.setEnviromentLang(lang || updatedForm.languageCode));\r\n }\r\n }\r\n this.setState({ paramsHandled: true });\r\n };\r\n componentDidUpdate(prevProps) {\r\n if (this.props.form !== undefined && prevProps.form !== this.props.form && this.props.template === undefined) {\r\n const { form, history, match, dispatch } = this.props;\r\n if (form && form.templateId && !form.editMode) {\r\n //check if form is a survey\r\n document.title = form.eventName;\r\n\r\n if (form.survey === true && this.state.surveyCode === \"\") {\r\n //something has gone wrong\r\n this.setState({ disabled: true });\r\n }\r\n if (!this.state.paramsHandled) this.handleSearchParams();\r\n this.props.dispatch(templateActions.get(this.props.form.templateId));\r\n }\r\n }\r\n if (\r\n this.state.badgeNo &&\r\n this.props.attendee &&\r\n this.props.attendee.loading == false &&\r\n this.props.attendee.orders &&\r\n this.props.attendee.orders[0] &&\r\n !this.props.attendee.orders[0].badgeNo &&\r\n this.state.notAuthourized == false\r\n ) {\r\n this.setState({ notAuthourized: true });\r\n }\r\n\r\n if (this.props.form.currentPage !== prevProps.currentPage && this.state.paramsHandled) {\r\n const params = new URLSearchParams(this.props.location.search);\r\n const routeMaster = params.get(getKey(\"routemaster\", params));\r\n if (routeMaster === \"true\" && !this.state.freezeCaptured) {\r\n document.dispatchEvent(new MessageEvent(\"FreezeFire\"));\r\n this.setState({ freezeCaptured: true });\r\n }\r\n }\r\n if (this.props.form.formId > 0 && this.props.template !== undefined && this.props.template.content !== undefined && this.state.loaded === false) {\r\n\r\n if(this.props.form.settings && this.props.form.settings.googleAnalyticsId){\r\n var script1 = document.createElement(\"script\");\r\n script1.src = `https://www.googletagmanager.com/gtag/js?id=${this.props.form.settings.googleAnalyticsId.replace(\" \", \"\")}`;\r\n script1.async = true;\r\n document.head.appendChild(script1);\r\n\r\n var script2 = document.createElement(\"script\");\r\n script2.text = `window.dataLayer = window.dataLayer || [];\r\n function gtag(){dataLayer.push(arguments);}\r\n gtag('js', new Date());\r\n gtag('config', '${this.props.form.settings.googleAnalyticsId.replace(\" \", \"\")}');`;\r\n\r\n document.head.appendChild(script2);\r\n }\r\n\r\n if (this.props.form.settings && this.props.form.settings.facebookId) {\r\n var script2 = document.createElement(\"script\");\r\n script2.text = `\r\n !function(f,b,e,v,n,t,s)\r\n {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\r\n n.callMethod.apply(n,arguments):n.queue.push(arguments)};\r\n if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\r\n n.queue=[];t=b.createElement(e);t.async=!0;\r\n t.src=v;s=b.getElementsByTagName(e)[0];\r\n s.parentNode.insertBefore(t,s)}(window, document,'script',\r\n 'https://connect.facebook.net/en_US/fbevents.js');\r\n fbq('init', '${this.props.form.settings.facebookId.replace(\" \", \"\")}');\r\n fbq('track', 'PageView');\r\n `;\r\n\r\n document.head.appendChild(script2);\r\n }\r\n\r\n document.body.style.height = \"100vh\";\r\n this.setState({ loaded: true });\r\n this.props.dispatch(conditionActions.checkAll());\r\n\r\n const params = new URLSearchParams(this.props.location.search);\r\n const lang = params.get(getKey(\"lang\", params));\r\n if (lang != this.props.form.languageCode && !lang) {\r\n this.props.dispatch(cmsActions.setEnviromentLang(this.props.form.languageCode));\r\n\r\n let searchParam = new URLSearchParams({}).toString();\r\n\r\n searchParam = new URLSearchParams({\r\n lang: this.props.form.languageCode,\r\n }).toString();\r\n\r\n if (this.state.badgeNo) {\r\n let obj = {};\r\n\r\n obj.badgeNo = this.state.badgeNo;\r\n obj.lang = this.props.form.languageCode;\r\n searchParam = new URLSearchParams(obj).toString();\r\n }\r\n\r\n this.props.history.push({\r\n pathname: this.props.match.url,\r\n search: \"?\" + searchParam,\r\n });\r\n window.location.reload();\r\n }\r\n }\r\n /* if(this.props.form && this.props.form.currentPage) */\r\n }\r\n render() {\r\n const { form, template } = this.props;\r\n const { loaded, notAuthourized } = this.state;\r\n if (notAuthourized)\r\n return (\r\n \r\n

\r\n \r\n

\r\n

\r\n \r\n

\r\n
\r\n );\r\n \r\n if (\r\n this.state.badgeNo &&\r\n this.props.attendee &&\r\n this.props.attendee.loading == false &&\r\n this.props.attendee.orders &&\r\n this.props.attendee.orders[0] &&\r\n this.props.attendee.orders[0].badgeNo &&\r\n this.props.form.settings?.onlyGroupLeaderAllowedChangelink == true &&\r\n this.props.attendee.orders.length == 1 &&\r\n this.props.attendee.orders[0].orderGroupId &&\r\n this.props.attendee.orders[0].orderGroupId != this.props.attendee.orders[0].orderId\r\n ) {\r\n return (\r\n \r\n

\r\n \r\n

\r\n

\r\n \r\n

\r\n
\r\n );\r\n }\r\n return (\r\n \r\n {!loaded ? : null}\r\n \r\n {form && template ? (\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n ) : (\r\n this.loading()\r\n )}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert,\r\n event: state.event,\r\n template: state.template.template,\r\n form: state.form,\r\n attendee: state.attendee,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(PostFormLayout);\r\n","export function setValueToNestedObject(path, value, source, level = 0) {\r\n if (Array.isArray(source)) {\r\n return;\r\n }\r\n\r\n for (let index = 0; index < path.length; index++) {\r\n if (source.hasOwnProperty(path[index])) {\r\n if (path[index] === path[path.length - 1] && level === path.length - 1) {\r\n source[path[index]] = value;\r\n } else {\r\n level++;\r\n source[path[index]] = setValueToNestedObject(\r\n path,\r\n value,\r\n source[path[index]],\r\n level\r\n );\r\n }\r\n }\r\n }\r\n return source;\r\n}\r\nexport function getValueFromNestedObject(path, source, value, level = 0) {\r\n if (Array.isArray(source)) {\r\n return;\r\n }\r\n for (let index = 0; index < path.length; index++) {\r\n if (source && source.hasOwnProperty(path[index])) {\r\n if (path[index] === path[path.length - 1] && level === path.length - 1) {\r\n value = source[path[index]];\r\n } else {\r\n level++;\r\n value = getValueFromNestedObject(path, source[path[index]], value, level);\r\n }\r\n }\r\n }\r\n return value;\r\n}\r\n/* export function deepClone(source) {\r\n if (Array.isArray(source)) {\r\n return Array.from(source);\r\n }\r\n\r\n let target = Object.assign({}, source);\r\n for (const key in source) {\r\n if (\r\n source.hasOwnProperty(key) &&\r\n source[key] &&\r\n typeof source[key] === \"object\" &&\r\n source[key] !== RegExp &&\r\n !(source[key] instanceof Date) &&\r\n !(source[key] instanceof Error) &&\r\n key !== 'editor'\r\n ) {\r\n target[key] = deepClone(source[key]);\r\n }\r\n }\r\n return target;\r\n} */\r\nexport function getValueFromNestedObjectByParam(params, source, array, level = 0) {\r\n if (Array.isArray(source)) {\r\n return;\r\n }\r\n for (const key in source) {\r\n if (isObject(source, key) && !Array.isArray(source[key])) {\r\n if (params.includes(key)) {\r\n array.push(source[key])\r\n } else {\r\n getValueFromNestedObjectByParam(params, source[key], array, level);\r\n }\r\n } else {\r\n if (params.includes(key)) {\r\n array.push(source[key])\r\n }\r\n }\r\n }\r\n return array;\r\n}\r\n\r\n\r\nexport function checkForUpdatesOneLevel(target, source) {\r\n const sourceObj = Object.assign({}, source);\r\n let targetObj = Object.assign({}, target);\r\n\r\n //* Loops two levels of an object*/\r\n\r\n for (const prop in sourceObj) {\r\n if (!targetObj.hasOwnProperty(`${prop}`)) {\r\n if (sourceObj[prop] !== typeof \"object\") {\r\n targetObj[prop] = sourceObj[prop];\r\n }\r\n\r\n if (targetObj.hasOwnProperty(`${prop}`)) {\r\n }\r\n }\r\n }\r\n return targetObj;\r\n}\r\n\r\n/* \r\nexport function checkForUpdates(target, source) {\r\n const sourceObj = Object.assign({}, source);\r\n let targetObj = Object.assign({}, target)\r\n\r\n\r\n for (const prop in sourceObj) {\r\n if (!targetObj.hasOwnProperty(`${prop}`)) {\r\n targetObj[prop] = { ...sourceObj[prop] };\r\n if (targetObj.hasOwnProperty(`${prop}`)) {\r\n }\r\n }\r\n else {\r\n for (const v in sourceObj[prop]) {\r\n\r\n if (!targetObj[prop].hasOwnProperty(v)) {\r\n targetObj[prop][v] = sourceObj[prop][v];\r\n for (const k in sourceObj[prop][v]) {\r\n targetObj[prop][v][k] = sourceObj[prop][v][k];\r\n }\r\n \r\n }\r\n }\r\n }\r\n }\r\n for (const prop in targetObj) {\r\n if (!sourceObj.hasOwnProperty(`${prop}`)) {\r\n targetObj[prop] = undefined;\r\n\r\n }\r\n else {\r\n for (const v in sourceObj[prop]) {\r\n\r\n if (!sourceObj[prop].hasOwnProperty(v)) {\r\n targetObj[prop][v] = undefined;\r\n }\r\n }\r\n }\r\n }\r\n return targetObj;\r\n} */\r\n\r\nfunction isObject(source, key) {\r\n return (\r\n source.hasOwnProperty(key) &&\r\n typeof source[key] === \"object\" &&\r\n source[key] !== RegExp &&\r\n !(source[key] instanceof Date) &&\r\n !(source[key] instanceof Error)\r\n );\r\n}\r\n\r\nexport function checkForFormUpdates(target, source) {\r\n if (Array.isArray(source)) {\r\n return Array.from(target);\r\n }\r\n const targetObj = Object.assign({}, target);\r\n for (const key in source) {\r\n if (isObject(source, key)) {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = deepClone(source[key]);\r\n } else {\r\n targetObj[key] = checkForFormUpdates(targetObj[key], source[key]);\r\n }\r\n } else {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = source[key];\r\n }\r\n }\r\n }\r\n return targetObj;\r\n}\r\n\r\nexport function checkForTemplateUpdates(target, source) {\r\n if (Array.isArray(source)) {\r\n /* if(target.length < 1) return Array.from(source);\r\n else return Array.from(target); */\r\n return;\r\n }\r\n const targetObj = Object.assign({}, target);\r\n for (const key in source) {\r\n if (isObject(source, key) && !Array.isArray(source[key])) {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = deepClone(source[key]);\r\n } else {\r\n targetObj[key] = checkForTemplateUpdates(targetObj[key], source[key]);\r\n }\r\n } else {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = \"unset\";\r\n }\r\n }\r\n }\r\n return targetObj;\r\n}\r\nexport function deepClone(source) {\r\n if (Array.isArray(source)) {\r\n return Array.from(source);\r\n }\r\n\r\n let target = Object.assign({}, source);\r\n for (const key in source) {\r\n if (\r\n source.hasOwnProperty(key) &&\r\n source[key] &&\r\n typeof source[key] === \"object\" &&\r\n source[key] !== RegExp &&\r\n !(source[key] instanceof Date) &&\r\n !(source[key] instanceof Error) &&\r\n key !== 'editor'\r\n ) {\r\n target[key] = deepClone(source[key]);\r\n }\r\n }\r\n return target;\r\n}\r\n\r\nexport function toCamelCase(input) {\r\n return input[0].toLowerCase() + input.substr(1, input.length);\r\n}\r\n","export default __webpack_public_path__ + \"static/media/section_tags_helper.7e0f0018.png\";","import React from 'react';\r\nimport SystemLabel from '../../../../system/SystemLabel/SystemLabel';\r\nimport SectionTagHelperImage from '../assets/images/section_tags_helper.png'\r\nimport Card from '@material-ui/core/Card';\r\nimport CardActionArea from '@material-ui/core/CardActionArea';\r\nimport CardContent from '@material-ui/core/CardContent';\r\nimport CardMedia from '@material-ui/core/CardMedia';\r\nimport Typography from '@material-ui/core/Typography';\r\n\r\n\r\n\r\nexport default function MediaCard() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\nexport const SectionTagsHelpInfo = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}","import React from \"react\";\r\nimport { labelHelper } from \"../../../../helpers/labelHelper\";\r\nimport { deepClone } from \"../../../../helpers/objectHelper\";\r\nimport PersonIcon from \"@material-ui/icons/Person\";\r\nimport BusinessIcon from \"@material-ui/icons/Business\";\r\nimport ListIcon from \"@material-ui/icons/List\";\r\nimport { SectionTagsHelpInfo } from \"../TagGroups/SectionTagHelpInfo\";\r\nimport PublicIcon from \"@material-ui/icons/Public\";\r\nimport EventIcon from \"@material-ui/icons/Event\";\r\nimport ShoppingCartIcon from \"@material-ui/icons/ShoppingCart\";\r\nimport ReceiptIcon from \"@material-ui/icons/Receipt\";\r\n\r\nconst personTags = {\r\n groupName: \"PersonTags\",\r\n description: \"ExtractTagsWithPersonData\",\r\n icon: ,\r\n tooltipComponent: null,\r\n tags: [\r\n { editFacade: \"\", name: \"PersonFirstName\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonFirstName]\" },\r\n { editFacade: \"\", name: \"PersonLastName\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonLastName]\" },\r\n { editFacade: \"\", name: \"PersonAddress1\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonAddress1]\" },\r\n { editFacade: \"\", name: \"PersonAddress2\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonAddress2]\" },\r\n { editFacade: \"\", name: \"PersonCity\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonCity]\" },\r\n { editFacade: \"\", name: \"PersonCountry\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonCountry]\" },\r\n { editFacade: \"\", name: \"PersonDepartment\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonDepartment]\" },\r\n { editFacade: \"\", name: \"PersonPassword\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonPassword]\" },\r\n { editFacade: \"\", name: \"PersonTitle\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonTitle]\" },\r\n { editFacade: \"\", name: \"PersonZip\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonZip]\" },\r\n { editFacade: \"\", name: \"PersonTelephone1\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonTelephone1]\" },\r\n { editFacade: \"\", name: \"PersonTelephone2\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonTelephone2]\" },\r\n { editFacade: \"\", name: \"PersonTelephone3\", labelName: \"\", group: \"PersonTags\", tag: \"[PersonTelephone3]\" },\r\n ],\r\n};\r\n\r\nconst companyTags = {\r\n groupName: \"CompanyTags\",\r\n description: \"ExtractTagsWithCompanyData\",\r\n icon: ,\r\n tooltipComponent: null,\r\n tags: [\r\n { editFacade: \"\", name: \"CompanyName\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyName]\" },\r\n { editFacade: \"\", name: \"CompanyAddress1\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyAddress1]\" },\r\n { editFacade: \"\", name: \"CompanyAddress2\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyAddress2]\" },\r\n { editFacade: \"\", name: \"CompanyZip\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyZip]\" },\r\n { editFacade: \"\", name: \"CompanyCountry\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyCountry]\" },\r\n { editFacade: \"\", name: \"CompanyOrgno\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyOrgno]\" },\r\n { editFacade: \"\", name: \"CompanyEmail\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyEmail]\" },\r\n { editFacade: \"\", name: \"CompanyTelephone1\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyTelephone1]\" },\r\n { editFacade: \"\", name: \"CompanyTelephone2\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyTelephone2]\" },\r\n { editFacade: \"\", name: \"CompanyTelephone3\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyTelephone3]\" },\r\n { editFacade: \"\", name: \"CompanyCity\", labelName: \"\", group: \"CompanyTags\", tag: \"[CompanyGLN]\" },\r\n ],\r\n};\r\nconst sectionTags = {\r\n groupName: \"SectionTags\",\r\n description: \"ExtractTagsWithSectionData\",\r\n icon: ,\r\n tooltipComponent: ,\r\n tags: [\r\n { editFacade: \"\", name: \"PersonDetails\", labelName: \"\", group: \"SectionTags\", tag: \"[PersonDetails]\" },\r\n { editFacade: \"\", name: \"CompanyDetails\", labelName: \"\", group: \"SectionTags\", tag: \"[CompanyDetails]\" },\r\n { editFacade: \"\", name: \"PersonCompanyDetails\", labelName: \"\", group: \"SectionTags\", tag: \"[PersonCompanyDetails]\" },\r\n { editFacade: \"\", name: \"InvoiceDetails\", labelName: \"\", group: \"SectionTags\", tag: \"[InvoiceDetails]\" },\r\n { editFacade: \"\", name: \"Questions\", labelName: \"\", group: \"SectionTags\", tag: \"[Questions]\" },\r\n { editFacade: \"\", name: \"OrderRows\", labelName: \"\", group: \"SectionTags\", tag: \"[OrderRows]\" },\r\n { editFacade: \"\", name: \"RepeatableStart\", labelName: \"\", group: \"SectionTags\", tag: \"[RepeatableStart]\" },\r\n { editFacade: \"\", name: \"RepeatableEnd\", labelName: \"\", group: \"SectionTags\", tag: \"[RepeatableEnd]\" },\r\n ],\r\n};\r\nconst eventTags = {\r\n groupName: \"EventTags\",\r\n description: \"ExtractTagsWithEvenntData\",\r\n icon: ,\r\n tooltipComponent: null,\r\n tags: [\r\n { editFacade: \"\", name: \"EventId\", labelName: \"\", group: \"EventTags\", tag: \"[EventId]\" },\r\n { editFacade: \"\", name: \"EventName\", labelName: \"\", group: \"EventTags\", tag: \"[EventName]\" },\r\n { editFacade: \"\", name: \"EventStartDate\", labelName: \"\", group: \"EventTags\", tag: \"[EventStartDate]\" },\r\n { editFacade: \"\", name: \"EventStartDate\", labelName: \"\", group: \"EventTags\", tag: \"[EventEndDate]\" },\r\n { editFacade: \"\", name: \"EventPrice\", labelName: \"\", group: \"EventTags\", tag: \"[EventPrice]\" },\r\n { editFacade: \"\", name: \"EventVenue\", labelName: \"\", group: \"EventTags\", tag: \"[EventVenue]\" },\r\n { editFacade: \"\", name: \"EventCity\", labelName: \"\", group: \"EventTags\", tag: \"[EventCity]\" },\r\n { editFacade: \"\", name: \"EventDescription\", labelName: \"\", group: \"EventTags\", tag: \"[EventDescription]\" },\r\n { editFacade: \"\", name: \"EventMax\", labelName: \"\", group: \"EventTags\", tag: \"[EventAvailable]\" },\r\n ],\r\n};\r\n\r\nconst invoiceCompanyTags = {\r\n groupName: \"InvoiceCompanyTags\",\r\n description: \"ExtractTagsWithInvoiceData\",\r\n icon: ,\r\n tooltipComponent: null,\r\n tags: [\r\n { editFacade: \"\", name: \"InvoiceCompanyName\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyName]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyAddress1\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyAddress1]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyAddress2\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyAddress2]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyZip\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyZip]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyCountry\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyCountry]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyOrgno\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyOrgno]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyEmail\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyEmail]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyTelephone1\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyTelephone1]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyCity\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyCity]\" },\r\n { editFacade: \"\", name: \"InvoiceCompanyGLN\", labelName: \"\", group: \"InvoiceCompanyTags\", tag: \"[InvoiceCompanyGLN]\" },\r\n ],\r\n};\r\n\r\nconst orderTags = {\r\n groupName: \"OrderTags\",\r\n description: \"ExtractTagsWithOrderData\",\r\n icon: ,\r\n tooltipComponent: null,\r\n tags: [\r\n { editFacade: \"\", name: \"RegistrationType\", labelName: \"\", group: \"OrderTags\", tag: \"[RegistrationType]\" },\r\n { editFacade: \"\", name: \"BadgeNo\", labelName: \"\", group: \"OrderTags\", tag: \"[BadgeNo]\" },\r\n { editFacade: \"\", name: \"OrderSource\", labelName: \"\", group: \"OrderTags\", tag: \"[OrderSource]\" },\r\n { editFacade: \"\", name: \"OrderBrowser\", labelName: \"\", group: \"OrderTags\", tag: \"[OrderBrowser]\" },\r\n { editFacade: \"\", name: \"OrderRemoteAddr\", labelName: \"\", group: \"OrderTags\", tag: \"[OrderRemoteAddr]\" },\r\n ],\r\n};\r\n\r\nconst orgTags = {\r\n groupName: \"OrganizationTags\",\r\n description: \"ExtractTagsWithOrgData\",\r\n icon: ,\r\n tooltipComponent: null,\r\n tags: [\r\n { editFacade: \"\", name: \"OrganizationName\", labelName: \"\", group: \"OrganizationTags\", tag: \"[OrganizationName]\" },\r\n { editFacade: \"\", name: \"OrganizationOrgno\", labelName: \"\", group: \"OrganizationTags\", tag: \"[OrganizationOrgno]\" },\r\n ],\r\n};\r\nconst tagDictionary = [sectionTags, personTags, companyTags, invoiceCompanyTags, eventTags, orderTags, orgTags];\r\n\r\nexport function createTagDictionaryForReplace(tags) {\r\n const editorTags = [];\r\n tagDictionary.map((t) => {\r\n t.tags.map((ct) => {\r\n editorTags.push({\r\n tag: ct.tag,\r\n editFacade: `[${ct.name}]`,\r\n });\r\n });\r\n });\r\n return editorTags;\r\n}\r\n\r\nexport function createTagDictionary(tags) {\r\n const editorTags = [];\r\n tagDictionary.map((t) => {\r\n const tagGroup = deepClone(t);\r\n const newTags = [];\r\n tagGroup.tags.map((ct) => {\r\n newTags.push({\r\n ...ct,\r\n labelName: ct.name == \"RepeatableEnd\" || ct.name == \"RepeatableStart\" ? ct.name : labelHelper.getLabel(ct.name),\r\n /* description: labelHelper.getLabel(ct.description), */\r\n editFacade: `[${ct.name}]`,\r\n });\r\n });\r\n tagGroup.tags = newTags;\r\n editorTags.push(tagGroup);\r\n });\r\n return editorTags;\r\n}\r\n","import Raven from \"raven-js\";\r\nimport { version } from \"../package.json\";\r\n// import { getInstance } from \"./logRocket.config\";\r\n/* import * as Sentry from '@sentry/browser'; */\r\n\r\nconst SENTRY_KEY = \"8a0ae2d10ef04f00af170d9721c252a3\";\r\nconst SENTRY_APP = \"1882320\";\r\nexport const SENTRY_URL = `https://59af82ca8fa84fa28655ba27dec55b7d@sentry.io/1537128`;\r\n\r\nconst ignoreErrorsArray = [\r\n // Random plugins/extensions\r\n \"top.GLOBALS\",\r\n // See: http://blog.errorception.com/2012/03/tale-of-unfindable-js-error.html\r\n \"originalCreateNotification\",\r\n \"ResizeObserver loop completed with undelivered notifications\",\r\n \"canvas.contentDocument\",\r\n \"MyApp_RemoveAllHighlights\",\r\n \"http://tt.epicplay.com\",\r\n \"Can't find variable: ZiteReader\",\r\n \"jigsaw is not defined\",\r\n \"ComboSearch is not defined\",\r\n \"http://loading.retry.widdit.com/\",\r\n \"atomicFindClose\",\r\n // Facebook borked\r\n \"fb_xd_fragment\",\r\n // ISP \"optimizing\" proxy - `Cache-Control: no-transform` seems to reduce this. (thanks @acdha)\r\n // See http://stackoverflow.com/questions/4113268/how-to-stop-javascript-injection-from-vodafone-proxy\r\n \"bmi_SafeAddOnload\",\r\n \"EBCallBackMessageReceived\",\r\n // See http://toolbar.conduit.com/Developer/HtmlAndGadget/Methods/JSInjection.aspx\r\n \"conduitPage\",\r\n // Generic error code from errors outside the security sandbox\r\n // You can delete this if using raven.js > 1.0, which ignores these automatically.\r\n \"Script error.\",\r\n `Uncaught (in promise) Error: Error parsing handshake response: Error: Expected a handshake response from the server.`,\r\n `'ResizeObserver' is not defined`,\r\n \"WebSocket closed with status code: 1006 ()\",\r\n \"Failed to fetch\",\r\n \"Error parsing handshake response: Error: Expected a handshake response from the server.\",\r\n \"Invocation canceled due to connection being closed.\",\r\n \"Server returned handshake error: Handshake was canceled.\",\r\n \"Server timeout elapsed without receiving a message from the server.\",\r\n \"Cannot send data if the connection is not in the 'Connected' State.\",\r\n];\r\nconst ignoreUrlsArray = [\r\n // Facebook flakiness\r\n /graph\\.facebook\\.com/i,\r\n // Facebook blocked\r\n /connect\\.facebook\\.net\\/en_US\\/all\\.js/i,\r\n // Woopra flakiness\r\n /eatdifferent\\.com\\.woopra-ns\\.com/i,\r\n /static\\.woopra\\.com\\/js\\/woopra\\.js/i,\r\n // Chrome extensions\r\n /extensions\\//i,\r\n /^chrome:\\/\\//i,\r\n // Other plugins\r\n /127\\.0\\.0\\.1:4001\\/isrunning/i, // Cacaoweb\r\n /webappstoolbarba\\.texthelp\\.com\\//i,\r\n /metrics\\.itunes\\.apple\\.com\\.edgesuite\\.net\\//i,\r\n];\r\nfunction getUser() {\r\n let user = localStorage.getItem(\"user\");\r\n if (user) user = JSON.parse(user);\r\n else return \"NoUser\";\r\n\r\n if (user.userGuid) return user.userGuid;\r\n else return \"NoUser\";\r\n}\r\nfunction configSentry() {\r\n if (process?.env?.NODE_ENV?.toLowerCase() === \"production\") {\r\n // var logRocket = getInstance();\r\n // Raven.setDataCallback((data) => {\r\n // data.extra.sessionURL = logRocket.sessionURL;\r\n // });\r\n return Raven.config(SENTRY_URL, {\r\n release: version,\r\n stacktrace: true,\r\n ignoreErrors: ignoreErrorsArray,\r\n ignoreUrls: ignoreUrlsArray,\r\n allowUrls: [/https?:\\/\\/(www\\.)?jirango\\.com/],\r\n environment: process.env.NODE_ENV,\r\n extra: {\r\n user: getUser(),\r\n },\r\n }).install();\r\n }\r\n}\r\n\r\nexport function logException(ex, context) {\r\n Raven.captureException(ex, { extra: context, stacktrace: true });\r\n window && window.console && console.error && console.error(ex);\r\n}\r\n\r\nexport default configSentry();\r\n","import React from 'react';\r\nimport * as Sentry from '@sentry/browser';\r\nimport { lsgetItem } from '../helpers/localStorageHelper';\r\n\r\nexport default class ErrorBoundary extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = { eventId: null };\r\n }\r\n\r\n static getDerivedStateFromError(error) {\r\n return { hasError: true };\r\n }\r\n\r\n componentDidCatch(error, errorInfo) {\r\n var user = lsgetItem('user');/* JSON.parse(localStorage.getItem('user')); */\r\n Sentry.configureScope(function (scope) {\r\n scope.setExtras(errorInfo);\r\n \r\n scope.setLevel(Sentry.Severity.Info);\r\n scope.setUser({\r\n id: user ? user.userGuid : 'noUser',\r\n email: user ? user.userGuid : 'noUser'\r\n });\r\n \r\n });\r\n const eventId = Sentry.captureException(error);\r\n this.setState({ eventId });\r\n }\r\n\r\n render() {\r\n if (this.state.hasError) {\r\n //render fallback UI\r\n return (\r\n \r\n );\r\n }\r\n\r\n //when there's not an error, render children untouched\r\n return this.props.children;\r\n }\r\n}\r\n","\r\n\r\nexport const separators = {\r\n AND: \"AND\",\r\n OR: \"OR\",\r\n}\r\n\r\nexport const conditionType = {\r\n GROUP: 2,\r\n CONDITION: 1,\r\n QUERY: 3,\r\n SEPARATOR: 4\r\n \r\n}\r\n\r\nexport const selectors = {\r\n NUMERIC: \"NUMERIC\",\r\n DROPDOWN: \"DROPDOWN\",\r\n TEXT: \"TEXT\",\r\n OPTIONS: \"OPTIONS\",\r\n CHECKBOX: \"CHECKBOX\"\r\n}\r\n\r\nexport const operators = {\r\n AND: \"AND\",\r\n OR: \"OR\",\r\n\r\n EQUAL: \"EQUAL\",\r\n NOT_EQUAL: \"NOT_EQUAL\",\r\n GREATER_THAN: \"GREATER_THAN\",\r\n LESS_THAN: \"LESS_THAN\",\r\n LESS_THAN_OR_EQUAL_TO: \"LESS_THAN_OR_EQUAL_TO\",\r\n GREATER_THAN_OR_EQUAL_TO: \"GREATER_THAN_OR_EQUAL_TO\",\r\n BETWEEN: \"BETWEEN\",\r\n LIKE: \"LIKE\",\r\n ANY: \"ANY\",\r\n NOT: \"NOT\",\r\n}\r\n\r\nexport const actions = {\r\n Show: \"ShowElement\",\r\n Require:\"RequireElement\",\r\n ReadOnly:\"ReadOnlyElement\",\r\n CustomError:\"ShowCustomError\",\r\n\r\n}\r\n\r\nexport const eventOperators = {\r\n EQUAL:\"=\",\r\n NOT_EQUAL:\"!=\",\r\n}\r\n\r\nconst fieldOperators = {\r\n EQUAL:\"=\",\r\n NOT_EQUAL:\"!=\",\r\n GREATER_THAN : \">\",\r\n LESS_THAN: \"<\",\r\n LESS_THAN_OR_EQUAL_TO: \"<=\",\r\n GREATER_THAN_OR_EQUAL_TO: \">=\",\r\n LIKE:\"LIKE\",\r\n/* BETWEEN:\"BETWEEN\", */\r\n}\r\n\r\nconst questionOptionOperators = {\r\n EQUAL:\"=\",\r\n NOT_EQUAL:\"!=\",\r\n ANY:\"ANY\",\r\n/* NOT:\"NOT\", */\r\n}\r\n\r\nconst questionTextOperators = {\r\n EQUAL:\"=\",\r\n NOT_EQUAL:\"!=\",\r\n GREATER_THAN : \">\",\r\n LESS_THAN : \"<\",\r\n LESS_THAN_OR_EQUAL_TO: \"<=\",\r\n GREATER_THAN_OR_EQUAL_TO: \">=\",\r\n LIKE:\"LIKE\",\r\n /* BETWEEN:\"BETWEEN\", */\r\n \r\n}\r\nconst conditionActionTypes = {\r\n CHECK_CONDITION_REQUEST: \"CHECK_CONDITION_REQUEST\",\r\n CHECK_CONDITION_SUCCESS: \"CHECK_CONDITION_SUCCESS\"\r\n}\r\nexport const conditionConstants = {\r\n operators,\r\n actions,\r\n eventOperators,\r\n fieldOperators,\r\n questionOptionOperators,\r\n questionTextOperators,\r\n selectors,\r\n separators,\r\n actionTypes: conditionActionTypes\r\n};","import React, { useState } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { HtmlWrapper } from '../../components/HtmlWrapper';\r\nimport './EmptySpace.css'\r\n\r\nconst EmptySpace = (props) => {\r\n const { content } = props.element;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\nfunction mapStateToProps(state) {\r\n /* return state; */\r\n}\r\n\r\nexport default /* connect(mapStateToProps)( */EmptySpace/* ); */","import React from 'react';\r\nimport EmptySpace from './EmptySpace';\r\nimport { templateHelper } from '../../../template/helpers/templateHelper';\r\n\r\nexport const emptySpaceHandler = {\r\n tags,\r\n elementEditor,\r\n defaultStyle,\r\n component,\r\n families\r\n}\r\n\r\nfunction component(element) {\r\n return \r\n}\r\n\r\nfunction tags() {\r\n return {\r\n startTag: '',\r\n endTag: ''\r\n }\r\n}\r\n\r\nfunction families(){\r\n return [\r\n 'space'\r\n ]\r\n}\r\n\r\nfunction defaultStyle(templateStyle, defaultStyle) {\r\n const templateBackgroundStyle = templateStyle ? templateStyle.main : null;\r\n return {\r\n styleProps: {\r\n height: '40px',\r\n backgroundColor: templateBackgroundStyle && !defaultStyle ? templateBackgroundStyle.background : '#fff'\r\n },\r\n }\r\n}\r\nfunction elementEditor(elementStyle, templateStyle = null, defaultStyle = true) {\r\n //Take what is relevant from the template\r\n const templateBackgroundStyle = templateStyle ? templateStyle.main : null;\r\n return (\r\n `\r\n \r\n ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ \r\n \r\n `\r\n )\r\n};\r\n\r\n/* \r\n\r\n  \r\n \r\n */\r\n\r\n","export const templateConstants = {\r\n GET_DEFAULT_TEMPLATE_BY_EVENT_REQUEST:\r\n \"GET_DEFAULT_TEMPLATE_BY_EVENT_REQUEST\",\r\n GET_DEFAULT_TEMPLATE_BY_EVENT_SUCCESS:\r\n \"GET_DEFAULT_TEMPLATE_BY_EVENT_SUCCESS\",\r\n GET_DEFAULT_TEMPLATE_BY_EVENT_FAILURE:\r\n \"GET_DEFAULT_TEMPLATE_BY_EVENT_FAILURE\",\r\n\r\n GET_TEMPLATE_BY_EVENT_REQUEST: \"GET_TEMPLATE_BY_EVENT_REQUEST\",\r\n GET_TEMPLATE_BY_EVENT_SUCCESS: \"GET_TEMPLATE_BY_EVENT_SUCCESS\",\r\n GET_TEMPLATE_BY_EVENT_FAILURE: \"GET_TEMPLATE_BY_EVENT_FAILURE\",\r\n\r\n GET_TEMPLATE_REQUEST: \"GET_TEMPLATE_REQUEST\",\r\n GET_TEMPLATE_SUCCESS: \"GET_TEMPLATE_SUCCESS\",\r\n GET_TEMPLATE_FAILURE: \"GET_TEMPLATET_FAILURE\",\r\n\r\n CREATE_TEMPLATE_SUCCESS: \"CREATE_TEMPLATE_SUCCESS\",\r\n CREATE_TEMPLATE_REQUEST: \"CREATE_TEMPLATE_REQUEST\",\r\n CREATE_TEMPLATE_FAILURE: \"CREATE_TEMPLATE_FAILURE\",\r\n\r\n SET_MENU: \"SET_MENU\",\r\n\r\n TOGGLE_MENU_MODAL: \"TOGGLE_MENU_MODAL\",\r\n\r\n DESKTOP: \"desktop\",\r\n SMARTPHONE: \"smartphone\",\r\n TABLET: \"tablet\",\r\n\r\n GETALL_TEMPLATE_REQUEST: \"GETALL_TEMPLATE_REQUEST\",\r\n GETALL_TEMPLATE_SUCCESS: \"GETALL_TEMPLATE_SUCCESS\",\r\n GETALL_TEMPLATE_FAILURE: \"GETALL_TEMPLATE_FAILURE\",\r\n\r\n UPDATE_TEMPLATE_REQUEST: \"UPDATE_TEMPLATE_REQUEST\",\r\n UPDATE_TEMPLATE_SUCCESS: \"UPDATE_TEMPLATE_SUCCESS\",\r\n UPDATE_TEMPLATE_FAILURE: \"UPDATE_TEMPLATE_FAILURE\",\r\n\r\n TOGGLE_PREVIEW_MODE: \"TOGGLE_PREVIEW_MODE\",\r\n DESELECT_SUCCESS: \"DESELECT_SUCCESS\",\r\n SOFT_UPDATE_TEMPLATE: \"SOFT_UPDATE_TEMPLATE\",\r\n UNDO_TEMPLATE_CHANGE: \"UNDO_TEMPLATE_CHANGE\",\r\n REDO_TEMPLATE_CHANGE: \"REDO_TEMPLATE_CHANGE\",\r\n SELECT_TEMPLATE_ELEMENT: \"SELECT_TEMPLATE_ELEMENT\",\r\n DELETE_TEMPLATE_ELEMENT_SUCCESS: \" DELETE_TEMPLATE_ELEMENT_SUCCESS\",\r\n\r\n SET_TEMPLATE_FROM_FORM: \"SET_TEMPLATE_FROM_FORM\",\r\n SET_TEMPLATE_FROM_FORM_REQUEST: \"SET_TEMPLATE_FROM_FORM_REQUEST\",\r\n /* COPY_SUCCESS: 'COPY_SUCCESS' */\r\n //and so on\r\n};\r\n","export function setValueToNestedObject(path, value, source, level = 0) {\r\n if (Array.isArray(source)) {\r\n return;\r\n }\r\n\r\n for (let index = 0; index < path.length; index++) {\r\n if (source.hasOwnProperty(path[index])) {\r\n if (path[index] === path[path.length - 1] && level === path.length - 1) {\r\n source[path[index]] = value;\r\n } else {\r\n level++;\r\n source[path[index]] = setValueToNestedObject(\r\n path,\r\n value,\r\n source[path[index]],\r\n level\r\n );\r\n }\r\n }\r\n }\r\n return source;\r\n}\r\nexport function getValueFromNestedObject(path, source, value, level = 0) {\r\n if (Array.isArray(source)) {\r\n return;\r\n }\r\n for (let index = 0; index < path.length; index++) {\r\n if (source && source.hasOwnProperty(path[index])) {\r\n if (path[index] === path[path.length - 1] && level === path.length - 1) {\r\n value = source[path[index]];\r\n } else {\r\n level++;\r\n value = getValueFromNestedObject(path, source[path[index]], value, level);\r\n }\r\n }\r\n }\r\n return value;\r\n}\r\n/* export function deepClone(source) {\r\n if (Array.isArray(source)) {\r\n return Array.from(source);\r\n }\r\n\r\n let target = Object.assign({}, source);\r\n for (const key in source) {\r\n if (\r\n source.hasOwnProperty(key) &&\r\n source[key] &&\r\n typeof source[key] === \"object\" &&\r\n source[key] !== RegExp &&\r\n !(source[key] instanceof Date) &&\r\n !(source[key] instanceof Error) &&\r\n key !== 'editor'\r\n ) {\r\n target[key] = deepClone(source[key]);\r\n }\r\n }\r\n return target;\r\n} */\r\nexport function getValueFromNestedObjectByParam(params, source, array, level = 0) {\r\n if (Array.isArray(source)) {\r\n return;\r\n }\r\n for (const key in source) {\r\n if (isObject(source, key) && !Array.isArray(source[key])) {\r\n if (params.includes(key)) {\r\n array.push(source[key])\r\n } else {\r\n getValueFromNestedObjectByParam(params, source[key], array, level);\r\n }\r\n } else {\r\n if (params.includes(key)) {\r\n array.push(source[key])\r\n }\r\n }\r\n }\r\n return array;\r\n}\r\n\r\n\r\nexport function checkForUpdatesOneLevel(target, source) {\r\n const sourceObj = Object.assign({}, source);\r\n let targetObj = Object.assign({}, target);\r\n\r\n //* Loops two levels of an object*/\r\n\r\n for (const prop in sourceObj) {\r\n if (!targetObj.hasOwnProperty(`${prop}`)) {\r\n if (sourceObj[prop] !== typeof \"object\") {\r\n targetObj[prop] = sourceObj[prop];\r\n }\r\n\r\n if (targetObj.hasOwnProperty(`${prop}`)) {\r\n }\r\n }\r\n }\r\n return targetObj;\r\n}\r\n\r\n/* \r\nexport function checkForUpdates(target, source) {\r\n const sourceObj = Object.assign({}, source);\r\n let targetObj = Object.assign({}, target)\r\n\r\n\r\n for (const prop in sourceObj) {\r\n if (!targetObj.hasOwnProperty(`${prop}`)) {\r\n targetObj[prop] = { ...sourceObj[prop] };\r\n if (targetObj.hasOwnProperty(`${prop}`)) {\r\n }\r\n }\r\n else {\r\n for (const v in sourceObj[prop]) {\r\n\r\n if (!targetObj[prop].hasOwnProperty(v)) {\r\n targetObj[prop][v] = sourceObj[prop][v];\r\n for (const k in sourceObj[prop][v]) {\r\n targetObj[prop][v][k] = sourceObj[prop][v][k];\r\n }\r\n \r\n }\r\n }\r\n }\r\n }\r\n for (const prop in targetObj) {\r\n if (!sourceObj.hasOwnProperty(`${prop}`)) {\r\n targetObj[prop] = undefined;\r\n\r\n }\r\n else {\r\n for (const v in sourceObj[prop]) {\r\n\r\n if (!sourceObj[prop].hasOwnProperty(v)) {\r\n targetObj[prop][v] = undefined;\r\n }\r\n }\r\n }\r\n }\r\n return targetObj;\r\n} */\r\n\r\nfunction isObject(source, key) {\r\n return (\r\n source.hasOwnProperty(key) &&\r\n typeof source[key] === \"object\" &&\r\n source[key] !== RegExp &&\r\n !(source[key] instanceof Date) &&\r\n !(source[key] instanceof Error)\r\n );\r\n}\r\n\r\nexport function checkForFormUpdates(target, source) {\r\n if (Array.isArray(source)) {\r\n return Array.from(target);\r\n }\r\n const targetObj = Object.assign({}, target);\r\n for (const key in source) {\r\n if (isObject(source, key)) {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = deepClone(source[key]);\r\n } else {\r\n targetObj[key] = checkForFormUpdates(targetObj[key], source[key]);\r\n }\r\n } else {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = source[key];\r\n }\r\n }\r\n }\r\n return targetObj;\r\n}\r\n\r\nexport function checkForTemplateUpdates(target, source) {\r\n if (Array.isArray(source)) {\r\n /* if(target.length < 1) return Array.from(source);\r\n else return Array.from(target); */\r\n return;\r\n }\r\n const targetObj = Object.assign({}, target);\r\n for (const key in source) {\r\n if (isObject(source, key) && !Array.isArray(source[key])) {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = deepClone(source[key]);\r\n } else {\r\n targetObj[key] = checkForTemplateUpdates(targetObj[key], source[key]);\r\n }\r\n } else {\r\n if (!targetObj.hasOwnProperty(key)) {\r\n targetObj[key] = \"unset\";\r\n }\r\n }\r\n }\r\n return targetObj;\r\n}\r\nexport function deepClone(source) {\r\n if (Array.isArray(source)) {\r\n return Array.from(source);\r\n }\r\n\r\n let target = Object.assign({}, source);\r\n for (const key in source) {\r\n if (\r\n source.hasOwnProperty(key) &&\r\n source[key] &&\r\n typeof source[key] === \"object\" &&\r\n source[key] !== RegExp &&\r\n !(source[key] instanceof Date) &&\r\n !(source[key] instanceof Error) &&\r\n key !== 'editor'\r\n ) {\r\n target[key] = deepClone(source[key]);\r\n }\r\n }\r\n return target;\r\n}\r\n\r\nexport function toCamelCase(input) {\r\n return input[0].toLowerCase() + input.substr(1, input.length);\r\n}\r\n","export const securityHelper = {\r\n createGuid\r\n}\r\n\r\nfunction createGuid(){\r\n return Math.random().toString(36).substring(2) + (new Date()).getTime().toString(36);\r\n}","import React from \"react\";\r\nimport { Container, Row, Col, Spinner } from \"reactstrap\";\r\nimport { connect } from \"react-redux\";\r\nimport '../../style/PageView.css';\r\nimport { renderElement } from \"../../../../../helpers/renderElement\";\r\n\r\nclass PageViewContent extends React.Component {\r\n render() {\r\n const { pageElements } = this.props.page;\r\n const { template } = this.props;\r\n \r\n return (\r\n
\r\n {pageElements &&\r\n pageElements.filter(el => el.parentId === null).map((el, index) => {\r\n return (\r\n \r\n \r\n \r\n \r\n {renderElement(el.type, el)}\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.element.elements,\r\n alert: state.alert,\r\n page: state.page,\r\n template: state.template.template\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps)(PageViewContent);\r\n","import React, { Component, Suspense } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { templateActions } from \"../../../../../../store/actions/cms/template/template.action\";\r\nimport { DragDropContext } from \"react-beautiful-dnd\";\r\nimport { Container } from \"reactstrap\";\r\nimport TemplateWrapper from \"../../../../template/containers/TemplateLayout/TemplateWrapper\";\r\nimport { sourceTypes } from \"../../../../../../constants/cms/sourceType\";\r\nimport { cmsActions } from \"../../../../../../store/actions/cms/cms.action\";\r\nimport { pageActions } from \"../../../../../../store/actions/cms/page/page.action\";\r\nimport { SplashScreen } from \"../../../../../components/UI/SplashScreen/SplashScreen\";\r\nimport PageViewContent from \"../Content/PageViewContent\";\r\nimport { getKey } from \"../../../../../../helpers/UrlHelper\";\r\nimport { attendeeActions } from \"../../../../../../store/actions/attendee/attendee.action\";\r\nimport { NotAuthourized } from \"../../../../../components/NotAuthorized\";\r\nimport SystemLabel from \"../../../../../../system/SystemLabel/SystemLabel\";\r\n\r\nclass PageViewLayout extends React.Component {\r\n state = {\r\n loaded: false,\r\n disabled: false,\r\n badgeNo: \"\",\r\n notAuthourized: false,\r\n };\r\n componentDidMount() {\r\n const { dispatch, match, history } = this.props;\r\n let id = match.params.id;\r\n const { location } = match;\r\n if (id) {\r\n dispatch(pageActions.get(parseInt(id, 36), true));\r\n }\r\n let badgeNo = null;\r\n let lang = null;\r\n if (this.props.location.search) {\r\n const params = new URLSearchParams(this.props.location.search);\r\n if (params.get(getKey(\"badgeno\", params))) badgeNo = params.get(getKey(\"badgeno\", params));\r\n else if (params.get(getKey(\"clientkey\", params))) badgeNo = params.get(getKey(\"clientkey\", params));\r\n lang = params.get(getKey(\"languagecode\", params));\r\n if (!lang) lang = params.get(getKey(\"lang\", params));\r\n let searchParam = new URLSearchParams({}).toString();\r\n let searchParamObj = {};\r\n if (lang) {\r\n searchParamObj.lang = lang;\r\n this.setState({ lang: lang });\r\n }\r\n if (badgeNo) {\r\n searchParamObj.badgeNo = badgeNo;\r\n this.setState({ badgeNo });\r\n }\r\n if (lang || badgeNo) {\r\n searchParam = new URLSearchParams(searchParamObj).toString();\r\n history.push({\r\n pathname: match.url,\r\n search: \"?\" + searchParam,\r\n });\r\n }\r\n dispatch(attendeeActions.getOrdersByBadgeNo(badgeNo));\r\n }\r\n dispatch(cmsActions.setEnviroment(sourceTypes.PAGE, false, null, lang || \"swe\"));\r\n /* dispatch(cmsActions.setEnviromentLang(lang)); */\r\n }\r\n componentDidUpdate(prevProps) {\r\n const { page, template, dispatch,match, history } = this.props;\r\n const { loaded } = this.state;\r\n if (page !== undefined && prevProps.page !== page) {\r\n if (page.googleAnalyticsId) {\r\n var script1 = document.createElement(\"script\");\r\n script1.src = `https://www.googletagmanager.com/gtag/js?id=${page.googleAnalyticsId.replace(\" \", \"\")}`;\r\n script1.async = true;\r\n document.head.appendChild(script1);\r\n\r\n var script2 = document.createElement(\"script\");\r\n script2.text = `window.dataLayer = window.dataLayer || [];\r\n function gtag(){dataLayer.push(arguments);}\r\n gtag('js', new Date());\r\n gtag('config', '${page.googleAnalyticsId.replace(\" \", \"\")}');`;\r\n\r\n document.head.appendChild(script2);\r\n }\r\n if (page.facebookId) {\r\n var script2 = document.createElement(\"script\");\r\n script2.text = `\r\n !function(f,b,e,v,n,t,s)\r\n {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\r\n n.callMethod.apply(n,arguments):n.queue.push(arguments)};\r\n if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\r\n n.queue=[];t=b.createElement(e);t.async=!0;\r\n t.src=v;s=b.getElementsByTagName(e)[0];\r\n s.parentNode.insertBefore(t,s)}(window, document,'script',\r\n 'https://connect.facebook.net/en_US/fbevents.js');\r\n fbq('init', '${page.facebookId.replace(\" \", \"\")}');\r\n fbq('track', 'PageView');\r\n `;\r\n\r\n document.head.appendChild(script2);\r\n }\r\n const templateId = page.templateId;\r\n if (templateId) {\r\n dispatch(templateActions.get(templateId));\r\n }\r\n dispatch(cmsActions.setEnviroment(sourceTypes.PAGE, false, page.eventId));\r\n const params = new URLSearchParams(this.props.location.search);\r\n var lang = params.get(getKey(\"lang\", params));\r\n if (lang) {\r\n page.languageCode = lang;\r\n }\r\n if (page.eventId > 0 && !lang && page.languageCode) {\r\n let badgeNo = null;\r\n if (params.get(getKey(\"badgeno\", params))) badgeNo = params.get(getKey(\"badgeno\", params));\r\n else if (params.get(getKey(\"clientkey\", params))) badgeNo = params.get(getKey(\"clientkey\", params));\r\n let searchParamObj = { lang: page.languageCode };\r\n if (badgeNo) {\r\n searchParamObj.badgeNo = badgeNo;\r\n }\r\n let searchParam = new URLSearchParams(searchParamObj).toString();\r\n history.push({\r\n pathname: match.url,\r\n search: \"?\" + searchParam,\r\n });\r\n }\r\n console.log(lang, page.languageCode, params);\r\n dispatch(cmsActions.setEnviromentLang(lang || page.languageCode));\r\n\r\n document.title = page.title || page.eventName;\r\n }\r\n if (\r\n this.state.badgeNo &&\r\n this.props.attendee &&\r\n this.props.attendee.loading == false &&\r\n this.props.attendee.orders &&\r\n this.props.attendee.orders[0] &&\r\n !this.props.attendee.orders[0].badgeNo &&\r\n this.state.notAuthourized == false\r\n ) {\r\n this.setState({ notAuthourized: true });\r\n }\r\n if (\r\n page.pageId > 0 &&\r\n /* language.loading === false && */\r\n template !== undefined &&\r\n loaded === false\r\n ) {\r\n console.log(page);\r\n dispatch(cmsActions.setEnviromentLang(page.languageCode));\r\n this.setState({ loaded: true });\r\n }\r\n }\r\n render() {\r\n const { page, template } = this.props;\r\n const { loaded, notAuthourized } = this.state;\r\n if (notAuthourized) {\r\n return (\r\n \r\n

\r\n \r\n

\r\n

\r\n \r\n

\r\n
\r\n );\r\n }\r\n\r\n if (!this.state.badgeNo && page.onlyAuthorizedUsers) {\r\n return (\r\n \r\n

\r\n \r\n

\r\n

\r\n \r\n

\r\n
\r\n );\r\n }\r\n return (\r\n \r\n {!loaded && }\r\n {page && template ? (\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n ) : null}\r\n
\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n alert: state.alert /* \r\n language: state.language, */,\r\n template: state.template.template,\r\n page: state.page,\r\n attendee: state.attendee,\r\n };\r\n}\r\nexport default connect(mapStateToProps)(PageViewLayout);\r\n","\r\n\r\nconst containerA = ['100%'];\r\nconst containerB = ['50%', '50%'];\r\nconst containerC = ['25%', '25%', '25%', '25%'];\r\nconst containerD = ['25%', '75%'];\r\nconst containerE= ['75%', '25%'];\r\nconst containerF = ['33.3%', '33.3%', '33.3%'];\r\nconst containerG = ['33.5%', '66.5%'];\r\nconst containerH = ['66.5%', '33.5%'];\r\nconst containerJ = ['25%', '50%', '25%'];\r\n\r\nexport const containers = [\r\n { id: 'A', type: containerA },\r\n { id: 'B', type: containerB },\r\n { id: 'C', type: containerC },\r\n { id: 'D', type: containerD },\r\n { id: 'E', type: containerE },\r\n { id: 'F', type: containerF },\r\n { id: 'G', type: containerG },\r\n { id: 'H', type: containerH },\r\n { id: 'J', type: containerJ },\r\n\r\n]","export const formSettings = {\r\n submit: {\r\n labels: [],\r\n alignment: 'center',\r\n defaultLabel: 'Register'\r\n },\r\n navigation:{\r\n next:{\r\n labels: [],\r\n defaultLabel: 'Next'\r\n },\r\n previous:{\r\n labels: [],\r\n defaultLabel: 'Back'\r\n }\r\n },\r\n authorizedFormMode: false\r\n \r\n}","import React from \"react\";\r\n\r\nconst Form = React.lazy(() => import(\"./cms/areas/form/containers/FormLayout/FormLayout\"));\r\nconst FormPost = React.lazy(() => import(\"./cms/areas/form/containers/PostFormLayout/PostFormLayout\"));\r\nconst PageEdit = React.lazy(() => import(\"./cms/areas/page/container/Editor/Layout/PageEditorLayout\"));\r\nconst PageView = React.lazy(() => import(\"./cms/areas/page/container/View/Layout/PageViewLayout\"));\r\n/* const OrganizationSettings = React.lazy(() => import(\"./organization/OrganizationSettings/OrganizationSettings\")); */\r\n/* const SystemLabelHandler = React.lazy(() => import(\"./system/SystemLabelHandler/SystemLabelHandler\")); */\r\nconst Template = React.lazy(() => import(\"./cms/areas/template/containers/TemplateLayout/TemplateLayout\"));\r\nconst ArticlesEditor = React.lazy(() => import(\"./cms/areas/page/plugins/article/containers/ArticleEditor/ArticleEditor\"));\r\nconst DibsPayment = React.lazy(() => import(\"./payments/CardPayment/Dibs/Dibs\"));\r\nconst EmailEditor = React.lazy(() => import(\"./cms/areas/email/containers/EmailEditor/EmailEditor\"));\r\nconst MeetingEditor = React.lazy(() => import(\"./cms/areas/meeting/container/EditorLayout/MeetingEditorLayout\"));\r\nconst Layout = React.lazy(() => import(\"./cms_2.0/Layout\"));\r\n// https://github.com/ReactTraining/react-router/tree/master/packages/react-router-config\r\n\r\n\r\nconst routes = [\r\n { path: \"/cms/email/:id\", name: \"Email Editor\", component: EmailEditor, labelGroup: \"Email.Edit\" },\r\n { path: \"/cms/form/:id\", name: \"Form\", component: Form, labelGroup: \"Form.Edit\" },\r\n/* { path: \"/organization/settings\", name: \"Organization Settings\", component: OrganizationSettings, labelGroup: \"Account.Organization\" }, */\r\n/* { path: \"/system/labelhandler\", name: \"Label Handler\", component: SystemLabelHandler, labelGroup: \"System.LabelHandler\" }, */\r\n { path: \"/cms/template\", name: \"Template Editor\", component: Template, labelGroup: \"Template.Edit\" },\r\n { path: \"/p/:id\", name: \"Event Page\", component: FormPost, labelGroup: \"Page.Edit\" },\r\n { path: \"/register/:id\", name: \"Register Form\", component: FormPost, labelGroup: \"Form.Post\" },\r\n { path: \"/register/dibs/:id\", name: \"Dibs Payment\", component: DibsPayment, labelGroup: \"Dibs.Paywindow\" },\r\n { path: \"/survey/:id\", name: \"Register Survey\", component: FormPost, labelGroup: \"Form.Post\" },\r\n { path: \"/articles/edit\", name: \"Article Editor\", component: ArticlesEditor, labelGroup: \"Article.Edit\" },\r\n { path: \"/cms/page/:id\", name: \"Page Editor\", component: PageEdit, labelGroup: \"Page.Edit\" },\r\n { path: \"/page/:id\", name: \"Page View\", component: PageView, labelGroup: \"Page.Edit\" },\r\n { path: \"/web/:id\", name: \"Page View\", component: Layout, labelGroup: \"Page.Edit\" },\r\n { path: \"/register2/:id\", name: \"Page View\", component: Layout, labelGroup: \"Page.Edit\" },\r\n /* { path: '/cms/meeting/:id', name: 'Meeting Editor', component: MeetingEditor, labelGroup: \"Meeting.Edit\" }, */\r\n];\r\n\r\nexport default routes;\r\n","\r\nexport const getKey = (searchString, searchParams) => {\r\n for (var key of searchParams.keys()) {\r\n if(searchString.toLowerCase() === key.toLowerCase()){\r\n return key;\r\n }\r\n }\r\n return searchString;\r\n}","import React from 'react';\r\nimport { Input, Row, Col } from 'reactstrap';\r\nimport SystemLabel from '../../system/SystemLabel/SystemLabel';\r\nimport { labelHelper } from '../../helpers/labelHelper';\r\n\r\n\r\nexport class ArchiveFilterBar extends React.Component {\r\n handleInput = (e) => {\r\n const { filterFiles } = this.props;\r\n filterFiles(e.target.value);\r\n }\r\n render() {\r\n const { result } = this.props;\r\n return (\r\n \r\n \r\n

: {result}

\r\n \r\n \r\n \r\n \r\n
\r\n
)\r\n }\r\n\r\n}","export const cssReset = `\r\n\r\n \r\n\r\n \r\n\r\n \r\n`\r\n\r\nexport const cssResetInnerContent = `\r\n\r\n /* What it does: Remove spaces around the email design added by some email clients. */\r\n /* Beware: It can remove the padding / margin and add a background color to the compose a reply window. */\r\n html,\r\n body {\r\n margin: 0 auto !important;\r\n padding: 0 !important;\r\n height: 100% !important;\r\n width: 100% !important;\r\n }\r\n\r\n /* What it does: Stops email clients resizing small text. */\r\n * {\r\n -ms-text-size-adjust: 100%;\r\n -webkit-text-size-adjust: 100%;\r\n }\r\n\r\n /* What it does: Centers email on Android 4.4 */\r\n div[style*=\"margin: 16px 0\"] {\r\n margin: 0 !important;\r\n }\r\n\r\n /* What it does: forces Samsung Android mail clients to use the entire viewport */\r\n #MessageViewBody, #MessageWebViewDiv{\r\n width: 100% !important;\r\n }\r\n\r\n /* What it does: Stops Outlook from adding extra spacing to tables. */\r\n table,\r\n td {\r\n mso-table-lspace: 0pt !important;\r\n mso-table-rspace: 0pt !important;\r\n border-collapse: collapse;\r\n padding: 0px;\r\n }\r\n\r\n /* What it does: Replaces default bold style. */\r\n th {\r\n \tfont-weight: normal;\r\n }\r\n\r\n /* What it does: Fixes webkit padding issue. */\r\n table {\r\n border-spacing: 0 !important;\r\n border-collapse: collapse !important;\r\n table-layout: fixed !important;\r\n margin: 0 auto !important;\r\n }\r\n\r\n /* What it does: Prevents Windows 10 Mail from underlining links despite inline CSS. Styles for underlined links should be inline. */\r\n a {\r\n text-decoration: none;\r\n }\r\n\r\n /* What it does: Uses a better rendering method when resizing images in IE. */\r\n img {\r\n -ms-interpolation-mode:bicubic;\r\n }\r\n\r\n /* What it does: A work-around for email clients meddling in triggered links. */\r\n a[x-apple-data-detectors], /* iOS */\r\n .unstyle-auto-detected-links a,\r\n .aBn {\r\n border-bottom: 0 !important;\r\n cursor: default !important;\r\n text-decoration: none !important;\r\n font-size: inherit !important;\r\n font-family: inherit !important;\r\n font-weight: inherit !important;\r\n line-height: inherit !important;\r\n }\r\n\r\n /* What it does: Prevents Gmail from changing the text color in conversation threads. */\r\n .im {\r\n color: inherit !important;\r\n }\r\n\r\n /* What it does: Prevents Gmail from displaying a download button on large, non-linked images. */\r\n .a6S {\r\n display: none !important;\r\n opacity: 0.01 !important;\r\n\t\t}\r\n\t\t/* If the above doesn't work, add a .g-img class to any image in question. */\r\n\t\timg.g-img + div {\r\n\t\t display: none !important;\r\n\t\t}\r\n\r\n /* What it does: Removes right gutter in Gmail iOS app: https://github.com/TedGoas/Cerberus/issues/89 */\r\n /* Create one of these media queries for each additional viewport size you'd like to fix */\r\n\r\n /* iPhone 4, 4S, 5, 5S, 5C, and 5SE */\r\n @media only screen and (min-device-width: 320px) and (max-device-width: 374px) {\r\n u ~ div .email-container {\r\n min-width: 320px !important;\r\n }\r\n }\r\n /* iPhone 6, 6S, 7, 8, and X */\r\n @media only screen and (min-device-width: 375px) and (max-device-width: 413px) {\r\n u ~ div .email-container {\r\n min-width: 375px !important;\r\n }\r\n }\r\n /* iPhone 6+, 7+, and 8+ */\r\n @media only screen and (min-device-width: 414px) {\r\n u ~ div .email-container {\r\n min-width: 414px !important;\r\n }\r\n }\r\n\r\n`","export const progressiveEnhancement = `\r\n\r\n \r\n \r\n\r\n`\r\n\r\nexport const progressiveEnhancementInnerContent = `\r\n/* What it does: Hover styles for buttons */\r\n.button-td,\r\n.button-a {\r\n transition: all 100ms ease-in;\r\n}\r\n.button-td-primary:hover,\r\n.button-a-primary:hover {\r\n background: #555555 !important;\r\n border-color: #555555 !important;\r\n}\r\n\r\n/* Media Queries */\r\n@media screen and (max-width: 480px) {\r\n\r\n /* What it does: Forces table cells into full-width rows. */\r\n .stack-column,\r\n .stack-column-center {\r\n display: block !important;\r\n width: 100% !important;\r\n max-width: 100% !important;\r\n direction: ltr !important;\r\n }\r\n /* And center justify these ones. */\r\n .stack-column-center {\r\n text-align: center !important;\r\n }\r\n\r\n /* What it does: Generic utility class for centering. Useful for images, buttons, and nested tables. */\r\n .center-on-narrow {\r\n text-align: center !important;\r\n \r\n float: none !important;\r\n }\r\n table.center-on-narrow {\r\n\r\n }\r\n\r\n /* What it does: Adjust typography on small screens to improve readability */\r\n .email-container p {\r\n font-size: 17px !important;\r\n }\r\n}\r\n\r\n`","import { defaultTemplate } from \"../models/defaultTemplate\";\r\nimport { getValueFromNestedObject, getValueFromNestedObjectByParam, deepClone } from \"../../../../helpers/objectHelper\";\r\nimport { templateActions } from \"../../../../store/actions/cms/template/template.action\";\r\nimport { store } from \"../../../../store/configureStore\";\r\nimport { elementConstants } from \"../../../../constants/cms/form/element/element.constants\";\r\nimport { containerHelper } from \"../../../helpers/containerHelper\";\r\nimport { content } from \"../../../models/content\";\r\nimport { sourceTypes } from \"../../../../constants/cms/sourceType\";\r\nimport { contentHelper } from \"../../../helpers/contentHelper\";\r\nimport { securityHelper } from \"../../../../helpers/securityHelper\";\r\n\r\nexport const templateHelper = {\r\n checkForUpdates,\r\n handleElementUpdates,\r\n formatToResponsivePath,\r\n getUnit,\r\n getValueFromInput,\r\n getValueWithoutUnit,\r\n assignResponsiveStyle,\r\n parseColorToRgba,\r\n getTemplatesColors,\r\n parseRgbaToHex,\r\n convertRgbStringToHex,\r\n onDragEnd,\r\n moveElement,\r\n nestledFind,\r\n};\r\n\r\nfunction nestledFind(path, base) {\r\n let pathArr = path.split(\".\");\r\n let val = \"\";\r\n let obj = base;\r\n for (let index = 0; index < pathArr.length; index++) {\r\n val = obj[pathArr[index]];\r\n if (typeof obj[pathArr[index]] == \"object\") {\r\n obj = obj[pathArr[index]];\r\n }\r\n }\r\n return val;\r\n}\r\nfunction sortElements(result) {\r\n const { destination, source, draggableId } = result;\r\n const { template } = store.getState();\r\n const dispatch = store.dispatch;\r\n const newTemplate = deepClone(template.template);\r\n let target = destination.droppableId;\r\n\r\n if (!Array.isArray(newTemplate.content[target].content)) return;\r\n const sourceEl = newTemplate.content[target].content.find((el) => {\r\n return el.contentId === draggableId;\r\n });\r\n\r\n if (destination.index > source.index) {\r\n //if moved down\r\n newTemplate.content[target].content.map((el) => {\r\n if (el.page === sourceEl.page && el.parentId === sourceEl.parentId && el.sortOrder > source.index && el.sortOrder <= destination.index) {\r\n el.sortOrder -= 1;\r\n }\r\n\r\n if (el.contentId === sourceEl.contentId) {\r\n el.sortOrder = destination.index;\r\n }\r\n });\r\n } else if (destination.index < source.index) {\r\n newTemplate.content[target].content.map((el) => {\r\n if (el.page === sourceEl.page && el.parentId === sourceEl.parentId && el.sortOrder <= source.index && el.sortOrder >= destination.index) {\r\n el.sortOrder += 1;\r\n }\r\n if (el.contentId === sourceEl.contentId) {\r\n el.sortOrder = destination.index;\r\n }\r\n });\r\n }\r\n\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n}\r\n\r\nfunction moveElement(result, destinationContainer, parentName) {\r\n const { destination, source, draggableId } = result;\r\n const elementInfo = draggableId.split(\":\");\r\n\r\n let newDestinationContainer = Array.from(\r\n destinationContainer.sort((a, b) => {\r\n let x = a.sortOrder;\r\n let y = b.sortOrder;\r\n return y < x ? 1 : y > x ? -1 : 0;\r\n })\r\n );\r\n if (parseInt(elementInfo[0]) === elementConstants.CONTAINER) {\r\n newDestinationContainer.map((el) => {\r\n if (el.sortOrder > destination.index && el.parentId === null) el.sortOrder += 1;\r\n });\r\n let newContainerElements = containerHelper.create(newDestinationContainer, sourceTypes.TEMPLATE, elementInfo[1], destination.index + 1, securityHelper.createGuid() + \"_TEMPLATE\");\r\n newDestinationContainer = newDestinationContainer.concat(newContainerElements);\r\n newDestinationContainer.map((el) => {\r\n el.parentName = parentName;\r\n });\r\n }\r\n if (parseInt(elementInfo[0]) === elementConstants.CONTENT) {\r\n const selectedEl = content.find((el) => {\r\n return el.id === elementInfo[1];\r\n });\r\n newDestinationContainer.map((el) => {\r\n if (el.sortOrder > destination.index && el.parentId === null) el.sortOrder += 1;\r\n });\r\n let newEl = contentHelper.create(newDestinationContainer, sourceTypes.TEMPLATE, selectedEl, destination, securityHelper.createGuid() + \"_TEMPLATE\");\r\n newDestinationContainer.push(newEl);\r\n newDestinationContainer.map((el) => {\r\n el.parentName = parentName;\r\n });\r\n }\r\n return newDestinationContainer;\r\n}\r\n\r\nfunction onDragEnd(result) {\r\n const { destination, source, draggableId } = result;\r\n const { template } = store.getState();\r\n const dispatch = store.dispatch;\r\n if (!destination) {\r\n return;\r\n }\r\n if (destination.droppableId === source.droppableId && destination.index === source.index) {\r\n return;\r\n }\r\n if (destination.droppableId === \"header\" && source.droppableId.includes(\"sidebar\")) {\r\n const newTemplate = deepClone(template.template);\r\n let destinationContainer = Array.from(newTemplate.content.header.content);\r\n destinationContainer = moveElement(result, destinationContainer, \"HEADER\");\r\n newTemplate.content.header.content = destinationContainer;\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n if (destination.droppableId === \"footer\" && source.droppableId.includes(\"sidebar\")) {\r\n const newTemplate = deepClone(template.template);\r\n let destinationContainer = Array.from(newTemplate.content.footer.content);\r\n destinationContainer = moveElement(result, destinationContainer, \"FOOTER\");\r\n newTemplate.content.footer.content = destinationContainer;\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n if (destination.droppableId.includes(\"HEADER\") && source.droppableId.includes(\"sidebar\")) {\r\n const newTemplate = deepClone(template.template);\r\n let destinationContainer = Array.from(newTemplate.content.header.content);\r\n destinationContainer = containerHelper.addTo(destinationContainer, \"TEMPLATE\", undefined, result);\r\n destinationContainer.map((h) => {\r\n h.parentName = \"HEADER\";\r\n });\r\n newTemplate.content.header.content = destinationContainer;\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n }\r\n if (destination.droppableId.includes(\"FOOTER\") && source.droppableId.includes(\"sidebar\")) {\r\n const newTemplate = deepClone(template.template);\r\n let destinationContainer = Array.from(newTemplate.content.footer.content);\r\n destinationContainer = containerHelper.addTo(destinationContainer, \"TEMPLATE\", undefined, result);\r\n destinationContainer.map((h) => {\r\n h.parentName = \"FOOTER\";\r\n });\r\n newTemplate.content.footer.content = destinationContainer;\r\n dispatch(templateActions.softUpdate(newTemplate));\r\n /* dispatch(cmsActions.containerToUpdate(newTemplate)); */\r\n }\r\n if (destination.droppableId.toUpperCase().includes(\"FOOTER\") && source.droppableId.includes(\"footer\")) {\r\n sortElements(result);\r\n }\r\n if (destination.droppableId.toUpperCase().includes(\"HEADER\") && source.droppableId.includes(\"header\")) {\r\n sortElements(result);\r\n }\r\n}\r\n\r\nfunction parseColorToRgba(color) {\r\n const { r, g, b, a } = color.rgb;\r\n return `rgba(${r},${g},${b},${a})`;\r\n}\r\n\r\nfunction parseRgbaToHex(color) {\r\n const { r, g, b, a } = color.rgb;\r\n var red = hexCode(r);\r\n var green = hexCode(g);\r\n var blue = hexCode(b);\r\n\r\n return \"#\" + red + green + blue;\r\n}\r\n\r\nfunction convertRgbStringToHex(rgb, param = null) {\r\n if (rgb == \"white\") return \"#ffffff\";\r\n if (rgb == \"black\") return \"#000000\";\r\n\r\n if (!rgb.toString().includes(\"rgb\")) return rgb;\r\n var a = rgb.split(\"(\")[1].split(\")\")[0];\r\n a = a.split(\",\");\r\n let hex = \"#\";\r\n for (let index = 0; index < a.length; index++) {\r\n let x = parseInt(a[index]).toString(16); //Convert to a base16 string\r\n hex += x.length == 1 ? \"0\" + x : x;\r\n }\r\n if (hex.length > 7) hex = hex.substring(0, 7);\r\n return hex;\r\n}\r\n\r\nfunction hexCode(rgb) {\r\n var hex = Number(rgb).toString(16);\r\n if (hex.length < 2) {\r\n hex = \"0\" + hex;\r\n }\r\n return hex;\r\n}\r\nfunction getValueFromInput(e, color) {\r\n if (e === null) return \"unset\";\r\n\r\n if (parseInt(e) || (typeof e === \"string\" && e.length > 0)) return e;\r\n else if (color) return parseColorToRgba(color);\r\n else if (e.target && e.target.value) return e.target.value;\r\n}\r\n\r\nfunction assignResponsiveStyle(source) {\r\n const responsiveNames = [\"content\", \"header\", \"footer\", \"menu\"];\r\n const devices = [\"tablet\", \"smartphone\"];\r\n const newStyle = Object.assign({}, source);\r\n for (let x = 0; x < responsiveNames.length; x++) {\r\n for (let y = 0; y < devices.length; y++) {\r\n const defaultStyle = defaultTemplate.responsive[devices[y]][responsiveNames[x]];\r\n const mainStyle = defaultTemplate[responsiveNames[x]];\r\n for (const key in newStyle.responsive[devices[y]][responsiveNames[x]]) {\r\n if (defaultStyle[key] !== \"unset\" && newStyle.responsive[devices[y]][responsiveNames[x]][key] === \"unset\") {\r\n newStyle.responsive[devices[y]][responsiveNames[x]][key] = defaultStyle[key];\r\n } else if (defaultStyle[key] === \"unset\" && newStyle.responsive[devices[y]][responsiveNames[x]][key] === \"unset\") {\r\n newStyle.responsive[devices[y]][responsiveNames[x]][key] = mainStyle[key];\r\n }\r\n }\r\n }\r\n }\r\n return newStyle;\r\n}\r\n\r\nfunction getTemplatesColors(template) {\r\n const colors = [];\r\n getValueFromNestedObjectByParam([\"color\", \"backgroundColor\"], template.content, colors);\r\n return colors;\r\n}\r\n\r\nfunction getUnit(template, names) {\r\n let value = undefined;\r\n let unit = \"\";\r\n if (!Array.isArray(names)) names = names.split(\".\");\r\n if (names.includes(\"boxShadow\")) return unit;\r\n value = getValueFromNestedObject(names, template.content ? template.content : template, value);\r\n if (value !== undefined && value) {\r\n if (value === \"unset\") unit = \"px\";\r\n else if (parseFloat(value)) unit = value.replace(/[0-9/^d.-]/g, \"\");\r\n else unit = \"px\";\r\n }\r\n return unit;\r\n}\r\n\r\nfunction getValueWithoutUnit(template, names) {\r\n let value = 0;\r\n if (!Array.isArray(names)) names = names.split(\".\");\r\n value = getValueFromNestedObject(names, template.content, value);\r\n try {\r\n if (value.includes(\"rgb\") || value.includes(\"#\") || value.includes(\"white\")) return value;\r\n else if (value === \"unset\") value = 0;\r\n if (value === \"unset\") value = 0;\r\n else value = value.replace(/[^0-9\\d.-]/g, \"\");\r\n value = parseFloat(value);\r\n } catch (error) {}\r\n\r\n return value;\r\n}\r\n\r\nfunction formatToResponsivePath(parent, prop, device) {\r\n if (device === \"desktop\") return `${parent}.${prop}`;\r\n return `responsive.${device}.${parent}.${prop}`;\r\n}\r\n\r\n/*DEPRECATED*/\r\nfunction checkForUpdates(target, source) {\r\n const sourceObj = Object.assign({}, source);\r\n let targetObj = Object.assign({}, target);\r\n\r\n //* Loops two levels of an object*/\r\n for (const prop in sourceObj) {\r\n if (!targetObj.hasOwnProperty(`${prop}`)) {\r\n targetObj[prop] = { ...sourceObj[prop] };\r\n if (targetObj.hasOwnProperty(`${prop}`)) {\r\n }\r\n } else {\r\n for (const v in sourceObj[prop]) {\r\n if (!targetObj[prop].hasOwnProperty(v)) {\r\n targetObj[prop][v] = sourceObj[prop][v];\r\n if (targetObj[prop].hasOwnProperty(`${v}`)) {\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction handleElementUpdates(element, template) {\r\n //Move this code to reducer\r\n if (element.parentName === \"HEADER\") {\r\n let el = template.content.header.content.find((f) => {\r\n return f.contentId === element.contentId;\r\n });\r\n var indexOfRemovedEl = template.content.header.content.indexOf(el);\r\n if (indexOfRemovedEl > -1) {\r\n template.content.header.content.splice(indexOfRemovedEl, 1);\r\n template.content.header.content.push(element);\r\n }\r\n }\r\n if (element.parentName === \"FOOTER\") {\r\n let el = template.content.footer.content.find((f) => {\r\n return f.contentId === element.contentId;\r\n });\r\n var indexOfRemovedEl = template.content.footer.content.indexOf(el);\r\n if (indexOfRemovedEl > -1) {\r\n template.content.footer.content.splice(indexOfRemovedEl, 1);\r\n template.content.footer.content.push(element);\r\n }\r\n }\r\n return template;\r\n}\r\n","export const formConstants = {\r\n ATTACH_SUCCESS: \"ATTACH_SUCCESS\",\r\n SELECT_SUCCESS: \"SELECT_SUCCESS\",\r\n DESELECT_SUCCESS: \"DESELECT_SUCCESS\",\r\n DELETE_SUCCESS: \"DELETE_SUCCESS\",\r\n TRANSFER_SUCCESS: \"TRANSFER_PAGE_SUCCESS\",\r\n SOFT_UPDATE_SUCCESS: \"SOFT_UPDATE_SUCCESS\",\r\n SELECT_OPTION: \"SELECT_OPTION\",\r\n UPDATE_FORM_SUCCESS: \"UPDATE_FORM_SUCCESS\",\r\n UPDATE_FORM_REQUEST: \"UPDATE_FORM_REQUEST\",\r\n UPDATE_FORM_FAILURE: \"UPDATE_FORM_FAILURE\",\r\n\r\n GET_FORM_REQUEST: \"GET_FORM_REQUEST\",\r\n GET_FORM_SUCCESS: \"GET_FORM_SUCCESS\",\r\n GET_FORM_FAILURE: \"GET_FORM_FAILURE\",\r\n\r\n GETALL_FORM_REQUEST: \"GETALL_FORM_REQUEST\",\r\n GETALL_FORM_SUCCESS: \"GETALL_FORM_SUCCESS\",\r\n GETALL_FORM_FAILURE: \"GETALL_FORM_FAILURE\",\r\n\r\n GET_ALL_FORM_PATHS: 'GET_ALL_FORM_PATHS',\r\n\r\n CLEAR_DND_CONFLICTS: \"CLEAR_DND_CONFLICTS\",\r\n CREATE_FORM_REQUEST: \"CREATE_FORM_REQUEST\",\r\n CREATE_FORM_SUCCESS: \"CREATE_FORM_SUCCESS\",\r\n CREATE_FORM_FAILURE: \"CREATE_FORM_FAILURE\",\r\n\r\n DELETE_FORM_SUCCESS: \"DELETE_FORM_SUCCESS\",\r\n DELETE_FORM_REQUEST: \"DELETE_FORM_REQUEST\",\r\n DELETE_FORM_FAILURE: \"DELETE_FORM_FAILURE\",\r\n IS_CROPPING: \"IS_CROPPING\",\r\n POST_FORM_REQUEST: \"POST_FORM_REQUEST\",\r\n POST_FORM_SUCCESS: \"POST_FORM_SUCCESS\",\r\n POST_FORM_FAILURE: \"POST_FORM_FAILURE\",\r\n\r\n UPDATE_FORM_ELEMENT: \"UPDATE_FORM_ELEMENT\",\r\n\r\n FORM_IS_VALID: \"FORM_IS_VALID\",\r\n RESTORE_FORM: \"RESTORE_FORM\",\r\n\r\n ADD_PAGE: \"ADD_PAGE\",\r\n REMOVE_PAGE: \"REMOVE_PAGE\",\r\n SCROLL_PAGE: \"SCROLL_PAGE\",\r\n SET_STATE_ERROR: \"SET_STATE_ERROR\",\r\n FORM_VERSION_CONFLICT: \"FORM_VERSION_CONFLICT\",\r\n\r\n\r\n //ERROR MESSAGE\r\n\r\n\r\n JX_FORM_VERSION_CONFLICT: \"JX_FORM_VERSION_CONFLICT\"\r\n\r\n\r\n};\r\n","import React from 'react';\r\nimport './ImageOverlay.css'\r\n\r\nexport const ImageOverlay = ({ toggleMediaVault, isCroppable, toggleCroppie, isEditing = false, toggleTextEdit = null }) => {\r\n return (
\r\n \r\n \r\n {isCroppable ? : null}\r\n {isEditing ? : null}\r\n \r\n
)\r\n}","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { SketchPicker } from \"react-color\";\r\nimport {\r\n Row,\r\n Col,\r\n Label,\r\n Input,\r\n InputGroup\r\n} from \"reactstrap\";\r\nimport Select from 'react-select';\r\nimport EditorSlider from \"../../../../components/editor/tools/EditorSlider\";\r\nimport { AlignmentButtonGroup } from \"../../../../components/editor/tools/AlignmentButtonGroup/AlignmentButtonGroup\";\r\nimport { templateHelper } from \"../../../template/helpers/templateHelper\";\r\nimport { emailActions } from \"../../../../../store/actions/cms/email/email.action\";\r\nimport { setValueToNestedObject, deepClone } from \"../../../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../../../system/SystemLabel/SystemLabel\";\r\nimport ColorPickerFacade from \"../../../../../components/UI/Buttons/ColorPickerFacade\";\r\nimport { UseTemplateButton, SetStyleToAllOfItsType, SetToAuto } from \"../../components/UseTemplateButton\";\r\nimport ListExpansion from \"../../../../../components/UI/ListExpansion/ListExpansion\";\r\nimport { UrlMultiInput } from \"../../../../components/editor/tools/UrlMultiInput/UrlMultiInput\";\r\nimport { emailFonts } from \"../../models/emailFonts/emailFonts\";\r\nimport { simpleButtonHandler } from \"./SimpleButton.handler\";\r\n\r\n\r\nclass SimpleButtonSettings extends React.Component {\r\n state = {\r\n spreadActiveSet: []\r\n }\r\n handleSoftUpdate = element => {\r\n const { dispatch } = this.props;\r\n dispatch(emailActions.updateEmailElement(element, null, true, this.props.inherit));\r\n }\r\n useTemplateStyle = (stylePath, templatePath) => {\r\n const { selectedElement, template } = this.props;\r\n let elementCopy = deepClone(selectedElement);\r\n let templateCopy = deepClone(template)\r\n const styleParts = stylePath.split(\".\");\r\n const templateParts = templatePath.split(\".\");\r\n\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n elementCopy.style = setValueToNestedObject(\r\n styleParts,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.style.inheritedStyles.push({ templatePath, stylePath });\r\n\r\n this.handleSoftUpdate(elementCopy);\r\n\r\n if (this.state.spreadActiveSet.includes(styleParts[styleParts.length - 1]) || this.state.spreadActiveSet.includes(styleParts[styleParts.length - 2] + styleParts[styleParts.length - 1])) {\r\n this.spreadStyle(elementCopy.type, styleParts, value, templatePath)\r\n }\r\n\r\n }\r\n inheritedStylesControl = (selectedElement, val, templatePath, stylePath) => {\r\n const { template } = this.props;\r\n if (!selectedElement.style.inheritedStyles ||\r\n selectedElement.style.inheritedStyles.length === 0) {\r\n return;\r\n }\r\n let templateCopy = deepClone(template)\r\n const newElement = deepClone(selectedElement);\r\n const templateParts = templatePath.split(\".\");\r\n let unit = templateHelper.getUnit(templateCopy, templateParts);\r\n let value = templateHelper.getValueWithoutUnit(templateCopy, templateParts);\r\n if (parseInt(value) && unit.length < 4) {\r\n value += unit;\r\n }\r\n\r\n if (value !== val) {\r\n newElement.style.inheritedStyles = newElement.style.inheritedStyles.filter(s => s !== templatePath);\r\n }\r\n else {\r\n\r\n newElement.style.inheritedStyles.push({ templatePath: templatePath, stylePath: stylePath })\r\n }\r\n return newElement;\r\n }\r\n spreadStyle = (type, parts, value, templatePath = null) => {\r\n const { selectedElement } = this.props;\r\n const elementsCopy = Array.from(this.props.elements);\r\n if (elementsCopy.length === 0) return;\r\n const typeFamily = elementsCopy.filter(el => el.type === type);\r\n if (typeFamily.length > 0) {\r\n typeFamily.map(tf => {\r\n let newEl = deepClone(tf);\r\n newEl.style = setValueToNestedObject(\r\n parts,\r\n value,\r\n newEl.style\r\n );\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n parts.join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n });\r\n }\r\n if (selectedElement.families.length > 0) {\r\n const typeFamilyTree = elementsCopy.filter(el => el.families && el.families.length > 0 && el.id !== selectedElement.id);\r\n if (typeFamilyTree.length === 0) return;\r\n selectedElement.families.map(f => {\r\n typeFamilyTree.map(tf => {\r\n if (tf.families.includes(f)) {\r\n let newEl = deepClone(tf);\r\n if (tf.families.length > 1) {\r\n if (newEl.style[f + 'Style'] !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n [f + 'Style', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n else {\r\n if (newEl.style.styleProps !== undefined) {\r\n newEl.style = setValueToNestedObject(\r\n ['styleProps', parts[parts.length - 1]],\r\n value,\r\n newEl.style\r\n );\r\n }\r\n }\r\n if (templatePath && Array.isArray(newEl.style.inheritedStyles)) {\r\n newEl = this.inheritedStylesControl(\r\n newEl,\r\n value,\r\n templatePath,\r\n tf.families.length > 1 ?\r\n [f + 'Style', parts[parts.length - 1]].join('.') :\r\n ['styleProps', parts[parts.length - 1]].join('.'))\r\n }\r\n this.handleSoftUpdate(newEl);\r\n }\r\n })\r\n })\r\n\r\n }\r\n }\r\n handleChange = (e, val, path, templatePath = null) => {\r\n const { selectedElement } = this.props;\r\n const names = path.split(\".\");\r\n let elementCopy = deepClone(selectedElement);\r\n let value = val;\r\n if (val && val.hex !== undefined) {\r\n value = templateHelper.parseRgbaToHex(val)\r\n }\r\n if (templatePath !== null) {\r\n elementCopy = this.inheritedStylesControl(elementCopy, value, templatePath, path)\r\n }\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n value,\r\n elementCopy.style\r\n );\r\n elementCopy.content = simpleButtonHandler.elementEditor(elementCopy.style);\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, value, templatePath)\r\n }\r\n }\r\n spreadToggler = (name) => {\r\n let spreadActiveSet = Array.from(this.state.spreadActiveSet);\r\n if (spreadActiveSet.includes(name)) {\r\n spreadActiveSet = spreadActiveSet.filter(n => { return n !== name });\r\n }\r\n else {\r\n spreadActiveSet.push(name)\r\n }\r\n this.setState({ spreadActiveSet });\r\n }\r\n handleSpaceOnChange = (e, path, dir) => {\r\n const names = path.split(\".\");\r\n const elementCopy = deepClone(this.props.selectedElement);\r\n const spaceValue = elementCopy.style[names[0]][names[1]];\r\n let value = e.target.value;\r\n let splitted = spaceValue.toString().split(' ')\r\n let baseValue = '';\r\n if (splitted.length > 1) {\r\n splitted[dir] = value + 'px';\r\n splitted = splitted.join(' ')\r\n baseValue = splitted;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n splitted,\r\n elementCopy.style\r\n );\r\n }\r\n else {\r\n let newString = `${splitted[0]}px ${splitted[0]}px ${splitted[0]}px ${splitted[0]}px`;\r\n newString = newString.split(' ');\r\n newString[dir] = value + 'px';\r\n baseValue = newString;\r\n elementCopy.style = setValueToNestedObject(\r\n names,\r\n newString,\r\n elementCopy.style\r\n );\r\n }\r\n this.handleSoftUpdate(elementCopy);\r\n if (this.state.spreadActiveSet.includes(names[names.length - 1]) || this.state.spreadActiveSet.includes(names[names.length - 2] + names[names.length - 1])) {\r\n this.spreadStyle(elementCopy.type, names, baseValue)\r\n }\r\n }\r\n convertSpaceValue = (value, index) => {\r\n let splitted = value.toString().split(' ')\r\n if (splitted.length > 1) {\r\n return parseInt(splitted[index]);\r\n }\r\n else {\r\n return parseInt(splitted[0]);\r\n }\r\n }\r\n render() {\r\n const { selectedElement, template } = this.props;\r\n const selectStyles = {\r\n option: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n padding: \"0 10px\",\r\n };\r\n },\r\n container: styles => ({\r\n ...styles,\r\n minWidth: \"100%\",\r\n borderRight: '1px solid gainsboro'\r\n }),\r\n /* control: styles => ({\r\n borderWidth: '1px'\r\n }), */\r\n singleValue: (styles, { data }) => {\r\n return {\r\n ...styles,\r\n fontSize: '12px',\r\n fontFamily: data.value,\r\n };\r\n }\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n this.handleChange(e, color, \"wrapper.backgroundColor\", 'content.backgroundColor')\r\n }\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n {template.content.content.backgroundColor !== 'unset' ? this.useTemplateStyle(\r\n \"wrapper.backgroundColor\",\r\n \"content.backgroundColor\"\r\n )}\r\n active={(selectedElement.style.wrapper.backgroundColor === template.content.content.backgroundColor)}\r\n /> : null}\r\n this.spreadToggler('wrapperbackgroundColor')}\r\n active={this.state.spreadActiveSet.includes('wrapperbackgroundColor')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n this.handleChange(e, color, \"styleProps.background\", 'button.backgroundColor')\r\n }\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n {template.content.button.backgroundColor !== 'unset' ? this.useTemplateStyle(\r\n \"styleProps.background\",\r\n \"button.backgroundColor\"\r\n )}\r\n active={(selectedElement.style.styleProps.background === template.content.button.backgroundColor)}\r\n /> : null}\r\n this.spreadToggler('background')}\r\n active={this.state.spreadActiveSet.includes('background')}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(e, color, \"styleProps.color\", 'button.color')\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n {template.content.button.color !== 'unset' ? this.useTemplateStyle(\r\n \"styleProps.color\",\r\n \"button.color\"\r\n )}\r\n active={(selectedElement.style.styleProps.color === template.content.button.color)}\r\n /> : null}\r\n this.spreadToggler('color')}\r\n active={this.state.spreadActiveSet.includes('color')}\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={680}\r\n min={1}\r\n path={'styleProps.minWidth'}\r\n label=\"ButtonWidth\"\r\n />\r\n \r\n \r\n this.spreadToggler('minWidth')}\r\n active={this.state.spreadActiveSet.includes('minWidth')}\r\n />\r\n
\r\n \r\n
\r\n null}\r\n onChange={this.handleChange}\r\n units={[\"px\"]}\r\n activeUnit={'px'}\r\n attachUnit={true}\r\n steps={1}\r\n max={100}\r\n min={1}\r\n extraParam=\"button.borderRadius\"\r\n path={'styleProps.borderRadius'}\r\n label=\"BorderRadius\"\r\n />\r\n \r\n \r\n this.useTemplateStyle(\r\n \"styleProps.borderRadius\",\r\n \"button.borderRadius\"\r\n )}\r\n active={(selectedElement.style.styleProps.borderRadius === template.content.button.borderRadius)}\r\n />\r\n this.spreadToggler('borderRadius')}\r\n active={this.state.spreadActiveSet.includes('borderRadius')}\r\n />\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(null, selectedOption.value, 'styleProps.fontFamily')\r\n }\r\n styles={selectStyles}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n this.spreadToggler('fontFamily')}\r\n active={this.state.spreadActiveSet.includes('fontFamily')}\r\n />\r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n return {\r\n elements: state.email.elements,\r\n template: state.template.template,\r\n inherit: state.email.inherit,\r\n selectedElement: state.email.selectedElement\r\n };\r\n}\r\nexport default connect(mapStateToProps)(SimpleButtonSettings);\r\n","import { handleResponse } from \"../../../helpers/handleresponse\";\r\nimport { authHeader } from \"../../../helpers/authHeader\";\r\n\r\nexport const pageService = {\r\n update,\r\n get,\r\n checkForUpdates,\r\n getAllPaths,\r\n screenshot\r\n};\r\n\r\nasync function get(pageId, viewMode) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n return fetch(`./api/page/${pageId}/?viewMode=${viewMode}`, requestOptions)\r\n .then(handleResponse)\r\n .then(page => {\r\n return page;\r\n });\r\n}\r\nasync function getAllPaths(eventId) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n return fetch(`./api/page/getAllPaths/${eventId}`, requestOptions)\r\n .then(handleResponse)\r\n .then(pages => {\r\n return pages;\r\n });\r\n}\r\nasync function screenshot(pageId){\r\n const requestOptions = {\r\n method: \"POST\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n };\r\n\r\n return fetch(`/files/pagescreenshot/${pageId}`, requestOptions)\r\n .then(handleResponse);\r\n}\r\nasync function checkForUpdates(pageId, lastModified) {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" })\r\n };\r\n return fetch(`./api/page/checkforupdates/${pageId}/?lastModified=${lastModified}`, requestOptions)\r\n .then(handleResponse)\r\n .then(lastModified => {\r\n return lastModified;\r\n });\r\n}\r\n\r\nasync function update(page) {\r\n\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: authHeader({ \"Content-Type\": \"application/json\" }),\r\n body: JSON.stringify(page)\r\n };\r\n\r\n return fetch(`./api/page`, requestOptions)\r\n .then(handleResponse)\r\n .then(page => {\r\n return page;\r\n });\r\n}\r\n","import { alertActions } from \"../../alert.action\";\r\n\r\nimport { pageConstants } from \"../../../../constants/cms/page/page.constants\";\r\nimport { pageService } from \"../../../../services/cms/page/page.service\";\r\nimport { history } from \"../../../../helpers/history\";\r\nimport { cmsActions } from \"../cms.action\";\r\nexport const pageActions = {\r\n attach,\r\n update,\r\n get,\r\n select,\r\n removePage,\r\n softUpdate,\r\n remove,\r\n addPage,\r\n deselect,\r\n updatePageElement,\r\n restore,\r\n checkForUpdates,\r\n getAllPaths,\r\n};\r\n\r\nfunction attach(element) {\r\n return (dispatch) => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: pageConstants.PAGE_ATTACH, element };\r\n }\r\n}\r\nfunction restore() {\r\n return (dispatch) => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: pageConstants.RESTORE_PAGE };\r\n }\r\n}\r\nfunction addPage() {\r\n return (dispatch) => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: pageConstants.ADD_VIEW_PAGE };\r\n }\r\n}\r\nfunction removePage() {\r\n return (dispatch) => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: pageConstants.REMOVE_VIEW_PAGE };\r\n }\r\n}\r\nfunction checkForUpdates(page, allowOverWrite = false) {\r\n return (dispatch) => {\r\n dispatch(alertActions.clear());\r\n\r\n /* if (allowOverWrite) {\r\n return dispatch(update(page));\r\n }\r\n \r\n \r\n \r\n pageService.checkForUpdates(page.pageId, page.updated).then(\r\n data => {\r\n if (data.isModified === true) {\r\n return dispatch(cmsActions.alertNewModifications(data.isModified, 'PAGE'));\r\n }\r\n else { */\r\n return dispatch(update(page));\r\n /* }\r\n },\r\n error => {\r\n \r\n dispatch(alertActions.error(error));\r\n }\r\n ); */\r\n };\r\n}\r\nfunction updatePageElement(element, id, page) {\r\n return (dispatch) => {\r\n if ((element.props && element.props.inherit !== null) || page.inherit == true) {\r\n dispatch(cmsActions.inheritageAffected(true));\r\n }\r\n dispatch(success({ ...element, hasChanged: true }), id);\r\n };\r\n function success(element) {\r\n return { type: pageConstants.UPDATE_PAGE_ELEMENT, element, id };\r\n }\r\n}\r\nfunction deselect() {\r\n return (dispatch) => {\r\n dispatch(success());\r\n };\r\n function success() {\r\n return { type: pageConstants.DESELECT_PAGE_ELEMENT };\r\n }\r\n}\r\nfunction remove(element) {\r\n return (dispatch) => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: pageConstants.DELETE_PAGE_ELEMENT, element };\r\n }\r\n}\r\nfunction select(element) {\r\n return (dispatch) => {\r\n dispatch(success(element));\r\n };\r\n function success(element) {\r\n return { type: pageConstants.PAGE_SELECT, element };\r\n }\r\n}\r\nfunction softUpdate(page) {\r\n return (dispatch) => {\r\n if (page && page.inherit === true) {\r\n dispatch(cmsActions.inheritageAffected(true));\r\n }\r\n dispatch(success(page));\r\n };\r\n function success(page) {\r\n return { type: pageConstants.SOFT_UPDATE_PAGE, page };\r\n }\r\n}\r\nfunction update(page) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n const newPage = Object.assign({}, page);\r\n const pageElements = Array.from(newPage.pageElements);\r\n\r\n newPage.pageElements = pageElements.map((el) => {\r\n const pageElement = Object.assign({}, el);\r\n pageElement.data = JSON.stringify(pageElement.data);\r\n return pageElement;\r\n });\r\n newPage.settings = JSON.stringify(newPage.settings);\r\n newPage.content = JSON.stringify(newPage.pageElements);\r\n const { pageId, eventId, templateId, name, content, settings, inherit, title, facebookId, googleAnalyticsId, onlyAuthorizedUsers } = newPage;\r\n\r\n pageService\r\n .update({\r\n pageId,\r\n eventId,\r\n templateId,\r\n name,\r\n facebookId,\r\n content,\r\n title,\r\n settings,\r\n googleAnalyticsId,\r\n inherit,\r\n onlyAuthorizedUsers\r\n })\r\n .then(\r\n (p) => {\r\n dispatch(success(p));\r\n if (page.pageId != p.pageId) {\r\n history.push(\"/cms/page/\" + p.pageId);\r\n }\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: pageConstants.UPDATE_PAGE_REQUEST };\r\n }\r\n function success(page) {\r\n return { type: pageConstants.UPDATE_PAGE_SUCCESS, page };\r\n }\r\n function failure(error) {\r\n return { type: pageConstants.UPDATE_PAGE_FAILURE, error };\r\n }\r\n}\r\nfunction get(pageId, viewMode = false) {\r\n return (dispatch) => {\r\n dispatch(request());\r\n dispatch(alertActions.clear());\r\n pageService.get(pageId, viewMode).then(\r\n (page) => {\r\n dispatch(success(page));\r\n },\r\n (error) => {\r\n dispatch(failure(error));\r\n if (error === \"JX_PAGE_NOTALLOWED\") {\r\n history.push(\"/\");\r\n }\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n\r\n function request() {\r\n return { type: pageConstants.GET_PAGE_REQUEST };\r\n }\r\n function success(page) {\r\n return { type: pageConstants.GET_PAGE_SUCCESS, page };\r\n }\r\n function failure(error) {\r\n return { type: pageConstants.GET_PAGE_FAILURE, error };\r\n }\r\n}\r\n\r\nfunction getAllPaths(eventId) {\r\n return (dispatch) => {\r\n dispatch(alertActions.clear());\r\n pageService.getAllPaths(eventId).then(\r\n (pages) => {\r\n dispatch(set(pages));\r\n },\r\n (error) => {\r\n dispatch(alertActions.error(error));\r\n }\r\n );\r\n };\r\n function set(pages) {\r\n return { type: pageConstants.GET_ALL_PAGE_PATHS, pages };\r\n }\r\n}\r\n","import React from 'react';\r\nimport './FloatingChecklist.css'\r\nimport { Col, Row } from 'reactstrap';\r\nimport SystemLabel from '../../../../../system/SystemLabel/SystemLabel';\r\n\r\nexport const FloatingChecklist = ({ list, onCheck }) => {\r\n return
\r\n {list.map((a, i) => {\r\n return
onCheck(a.address)} key={i}>{a.address}
\r\n })}\r\n
\r\n}\r\n\r\nexport const FloatingGenericList = ({ list, onCheck }) => {\r\n return
\r\n {list.map((a, i) => {\r\n return onCheck(a.id, a.type)} key={i}>\r\n \r\n {a.name == 'Survey' ? : a.name}\r\n \r\n \r\n \r\n \r\n \r\n })}\r\n
\r\n}","import React from 'react';\r\nimport FormGroup from '@material-ui/core/FormGroup';\r\n\r\nimport { AppSwitch } from '@coreui/react';\r\nimport './JirangoSwitch.css'\r\n\r\nexport default function JirangoSwitch({onChange,isChecked}) {\r\n return (\r\n \r\n );\r\n}","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Button } from \"reactstrap\";\r\nimport { attendeeActions } from \"../../../../store/actions/attendee/attendee.action\";\r\nimport { formActions } from \"../../../../store/actions/cms/form/form.action\";\r\nimport SystemLabel from \"../../../../system/SystemLabel/SystemLabel\";\r\nimport PersonAddIcon from \"@material-ui/icons/PersonAdd\";\r\nimport { IconButton, List, ListItem, ListItemIcon, ListItemSecondaryAction, ListItemText, ListSubheader, Button as MuiButton, Tooltip } from \"@material-ui/core\";\r\nimport PersonIcon from \"@material-ui/icons/Person\";\r\nimport Badge from \"@material-ui/core/Badge\";\r\nimport { withStyles } from \"@material-ui/core/styles\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport useMediaQuery from \"@material-ui/core/useMediaQuery\";\r\nimport { useTheme } from \"@material-ui/core/styles\";\r\nimport CreateIcon from \"@material-ui/icons/Create\";\r\nimport DeleteIcon from \"@material-ui/icons/Delete\";\r\nimport AccountCircleIcon from \"@material-ui/icons/AccountCircle\";\r\nimport VerifiedUserIcon from \"@material-ui/icons/VerifiedUser\";\r\n\r\nconst StyledBadge = withStyles((theme) => ({\r\n badge: {\r\n right: -3,\r\n top: 13,\r\n border: `2px solid ${theme.palette.background.paper}`,\r\n padding: \"0 4px\",\r\n },\r\n}))(Badge);\r\n\r\nexport const FloatingCartButton = ({ attendee, dispatch }) => {\r\n const [open, setOpen] = React.useState(false);\r\n const theme = useTheme();\r\n const fullScreen = useMediaQuery(theme.breakpoints.down(\"sm\"));\r\n const handleClickOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n >\r\n {attendee.orders.map((o, i) => {\r\n console.log(o)\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n dispatch(attendeeActions.setActivePersonNo(i));\r\n handleClose();\r\n }}\r\n >\r\n }>\r\n \r\n \r\n \r\n {!o.orderId ? (\r\n dispatch(attendeeActions.removeOrder(i))}>\r\n }>\r\n \r\n \r\n \r\n ) : null}\r\n {attendee.orders.length > 1 ? (\r\n o.leader == true).length == 0) ? 1 : 0.5 }}\r\n onClick={() => dispatch(attendeeActions.setLeader(i))}\r\n >\r\n }>\r\n \r\n \r\n \r\n ) : null}\r\n \r\n \r\n );\r\n })}\r\n\r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nconst GroupRegistration = (props) => {\r\n const { dispatch, cms, element, allowAdd } = props;\r\n const { button } = props.template;\r\n return (\r\n <>\r\n {\r\n if (allowAdd()) {\r\n dispatch(attendeeActions.createOrder({}));\r\n dispatch(formActions.scrollPage(element.data.returnPage || 1));\r\n }\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nfunction mapStateToProps(state) {\r\n return {\r\n cms: state.cms,\r\n attendee: state.attendee,\r\n template: state.template && state.template.template ? state.template.template.content : {},\r\n };\r\n}\r\nexport default connect(mapStateToProps)(GroupRegistration);\r\n","import { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\nimport { defaultPaymentElement } from \"../models/defaultElements\";\r\nimport { securityHelper } from \"../../helpers/securityHelper\";\r\n\r\nexport const paymentHelper = {\r\n create\r\n};\r\n\r\nfunction getNewId(elements) {\r\n const payments = \r\n elements.filter(el => el.type === elementConstants.PAYMENT_OPTIONS)\r\n ;\r\n\r\n if (!payments.length || payments.length < 0) {\r\n return 0;\r\n }\r\n\r\n return payments.length * -1;\r\n}\r\n\r\nfunction create(\r\n source,\r\n sourceType,\r\n selectedEl,\r\n sortOrder\r\n) {\r\n \r\n let eventId = source.eventId;\r\n let langCode = source.languageCode;\r\n let elements = source.formElements;;\r\n let currentPage = source.currentPage;\r\n let formId = source.formId;\r\n let pageId = null;\r\n\r\n let newEl = Object.assign({}, defaultPaymentElement);\r\n newEl.sortOrder = sortOrder;\r\n newEl.formId = formId;\r\n newEl.eventId = eventId;\r\n newEl.parentId = null;\r\n newEl.pageId = pageId;\r\n newEl.id = getNewId(elements);\r\n newEl.languageCode = langCode;\r\n newEl.contentId = securityHelper.createGuid();\r\n newEl.page = currentPage;\r\n newEl.isValid = true;\r\n ;\r\n return newEl;\r\n}","import { elementConstants } from \"../../constants/cms/form/element/element.constants\";\r\nimport { defaultPreConfirmationElement } from \"../models/defaultElements\";\r\nimport { securityHelper } from \"../../helpers/securityHelper\";\r\n\r\nexport const preConfirmationHelper = {\r\n create\r\n};\r\n\r\nfunction getNewId(elements) {\r\n const preConfirmations = \r\n elements.filter(el => el.type === elementConstants.PRE_CONFIRMATION)\r\n ;\r\n\r\n if (!preConfirmations.length || preConfirmations.length < 0) {\r\n return 0;\r\n }\r\n\r\n return preConfirmations.length * -1;\r\n}\r\n\r\nfunction create(\r\n source,\r\n sourceType,\r\n selectedEl,\r\n sortOrder\r\n) {\r\n \r\n let eventId = source.eventId;\r\n let langCode = source.languageCode;\r\n let elements = source.formElements;;\r\n let currentPage = source.currentPage;\r\n let formId = source.formId;\r\n let pageId = null;\r\n\r\n let newEl = Object.assign({}, defaultPreConfirmationElement);\r\n newEl.sortOrder = sortOrder;\r\n newEl.formId = formId;\r\n newEl.eventId = eventId;\r\n newEl.parentId = null;\r\n newEl.pageId = pageId;\r\n newEl.id = getNewId(elements);\r\n newEl.languageCode = langCode;\r\n newEl.contentId = securityHelper.createGuid();\r\n newEl.page = currentPage;\r\n newEl.isValid = true;\r\n \r\n return newEl;\r\n}","import React from 'react';\r\nimport './ArticleMedia.css'\r\nimport { lazyLoad } from '../../helpers/imageLoader.lazy';\r\nclass ArticleMedia extends React.Component {\r\n state = {\r\n media: [],\r\n editMode: false,\r\n headerImage: \"\"\r\n }\r\n componentDidMount() {\r\n document.addEventListener(\"scroll\", lazyLoad);\r\n }\r\n componentDidUpdate(prevProps) {\r\n if (this.props.media !== undefined && prevProps.media !== this.props.media) {\r\n this.setState({ media: this.props.media }, () => {\r\n lazyLoad();\r\n });\r\n }\r\n if (this.props.headerImage !== undefined && prevProps.headerImage !== this.props.headerImage) {\r\n this.setState({ headerImage: this.props.headerImage });\r\n }\r\n if (this.props.editMode !== undefined && prevProps.editMode !== this.props.editMode) {\r\n this.setState({ editMode: this.props.editMode });\r\n }\r\n }\r\n render() {\r\n const { media, editMode, headerImage } = this.state;\r\n const { onDelete } = this.props;\r\n return (\r\n
\r\n {media.length > 0 && media.filter(m => { return m.url !== headerImage }).map((v, i) => {\r\n if (v.url !== undefined) {\r\n return v.type.includes('image/') ?\r\n
\r\n {!editMode ? :\r\n }\r\n {editMode && onDelete(v.name)} />}\r\n
:\r\n
\r\n \r\n {editMode && onDelete(v.name)} />}\r\n
\r\n }\r\n return
\r\n \r\n {v.name}\r\n
\r\n })}\r\n
\r\n )\r\n }\r\n}\r\n\r\n\r\nexport default ArticleMedia;\r\n","import React from \"react\";\r\nimport { Spinner } from \"reactstrap\";\r\nimport \"./Spinner.css\";\r\nimport { DragDropContext } from \"react-beautiful-dnd\";\r\nimport TemplateWrapper from \"../../../cms/areas/template/containers/TemplateLayout/TemplateWrapper\";\r\nconst spinnerStyle = {\r\n position: \"absolute\",\r\n top: \"45%\",\r\n left: \"45%\"\r\n};\r\n\r\nexport const MobileLoader = template => {\r\n if (template) {\r\n return (\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n \r\n
\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n Row,\r\n Col,\r\n Container,\r\n FormGroup,\r\n Spinner,\r\n Label,\r\n Input,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Button\r\n} from \"reactstrap\";\r\n\r\nimport axios from \"axios\";\r\nimport SystemLabel from \"../../../../../../../system/SystemLabel/SystemLabel\";\r\nimport { systemLabelActions } from \"../../../../../../../store/actions/system/systemLabel/systemLabel.action\";\r\nimport \"./ArticleEditor.css\";\r\nimport ArticleMedia from \"../../components/ArticleMediaUploader/ArticleMedia\";\r\nimport { history } from \"../../../../../../../helpers/history\";\r\nimport Notifier from \"../../../../../../../components/UI/Notifier/Notifier\";\r\nimport { MobileLoader } from \"../../../../../../../components/UI/Spinner/MobileLoader\";\r\nimport { arrayHelper } from \"../../../../../../../helpers/arrayHelper\";\r\nimport {\r\n resetOrientation,\r\n dataURLtoFile\r\n} from \"../../../../../../../helpers/imageHelper\";\r\nclass ArticleEditor extends React.Component {\r\n state = {\r\n headerImage: \"\",\r\n title: \"\",\r\n subtitle: \"\",\r\n content: \"\",\r\n likes: 0,\r\n publishDate: null,\r\n media: [],\r\n mediaVm: [],\r\n headerImageFd: null,\r\n errorMessage: \"\",\r\n article: null,\r\n previewHeaderImage: \"\",\r\n alert: null,\r\n loading: false,\r\n prevHeaderImage: null,\r\n prevMediaLength: 0,\r\n published: false,\r\n mediaUploaded: false,\r\n count: 0,\r\n headerRotation: 0,\r\n headerFile: null\r\n };\r\n componentDidMount() {\r\n const { user, dispatch } = this.props;\r\n window.scrollTo(0, 0);\r\n const userLang = user && user.userLang === undefined ? user.token.userLang : user.userLang;\r\n if (user && userLang) {\r\n dispatch(systemLabelActions.getGroup(user.userLang, \"Article.Edit\"));\r\n }\r\n if (this.checkIfEdit()) {\r\n this.getArticle();\r\n }\r\n }\r\n\r\n validate = () => {\r\n const { article } = this.state;\r\n if (article) {\r\n if (article.title.length < 1) {\r\n this.setState(\r\n { alert: { message: /* 'adawd' */ \"Titel saknas!\", type: \"error\" } },\r\n () => {\r\n setTimeout(() => {\r\n this.setState({ alert: null });\r\n }, 2000);\r\n }\r\n );\r\n return false;\r\n }\r\n } else {\r\n const { publishDate, content, title } = this.state;\r\n\r\n if (title.length < 1) {\r\n this.setState(\r\n { alert: { message: /* 'adawd' */ \"Titel saknas!\", type: \"error\" } },\r\n () => {\r\n setTimeout(() => {\r\n this.setState({ alert: null });\r\n }, 2000);\r\n }\r\n );\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n checkIfEdit = () => {\r\n const { match } = this.props;\r\n if (match.params.id) {\r\n return true;\r\n }\r\n return false;\r\n };\r\n getArticle = () => {\r\n this.setState({ loading: true });\r\n const { match } = this.props;\r\n const articleId = match.params.id;\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" }\r\n };\r\n fetch(`./api/article/getbyarticleid/${articleId}`, requestOptions)\r\n .then(res => res.json())\r\n .then(article => {\r\n this.setState({\r\n article,\r\n loading: false,\r\n alert: null\r\n });\r\n\r\n this.getMedia();\r\n })\r\n .catch(err => {\r\n this.setState({ errorMessage: err, media: [] });\r\n });\r\n };\r\n previewImage = res => {\r\n this.setState({ previewHeaderImage: res });\r\n };\r\n onUpload = (event, headerImage = false) => {\r\n event.preventDefault();\r\n const files = Array.from(event.target.files);\r\n let f = new FormData();\r\n if (headerImage) {\r\n if (this.state.article && this.state.article.headerImage) {\r\n const prevHeaderImage = this.state.mediaVm.find(m => {\r\n return m.url === this.state.article.headerImage;\r\n });\r\n if (prevHeaderImage) {\r\n this.onMediaDelete(prevHeaderImage.name);\r\n }\r\n }\r\n f.append(\"File\", files[0]);\r\n const reader = new FileReader();\r\n let url = reader.readAsDataURL(files[0]);\r\n reader.onloadend = () => {\r\n this.setState({\r\n previewHeaderImage: reader.result\r\n });\r\n };\r\n this.setState({ headerImageFd: f, headerFile: files[0] });\r\n return;\r\n }\r\n let mediaVm = Array.from(this.state.mediaVm);\r\n let mediaF = Array.from(event.target.files);\r\n for (let index = 0; index < files.length; index++) {\r\n mediaF.push(files[index]);\r\n mediaVm.push({\r\n name: files[index].name,\r\n type: files[index].type\r\n });\r\n }\r\n\r\n let media = Array.from(this.state.media);\r\n media = arrayHelper.concat(media, mediaF);\r\n this.setState({ media, mediaVm });\r\n };\r\n onUpload2 = (event, headerImage = false) => {\r\n event.preventDefault();\r\n const files = Array.from(event.target.files);\r\n let f = new FormData();\r\n\r\n if (headerImage) {\r\n if (this.state.article && this.state.article.headerImage) {\r\n const prevHeaderImage = this.state.mediaVm.find(m => {\r\n return m.url === this.state.article.headerImage;\r\n });\r\n if (prevHeaderImage) {\r\n this.onMediaDelete(prevHeaderImage.name);\r\n }\r\n }\r\n const reader = new FileReader();\r\n reader.readAsDataURL(files[0]);\r\n reader.onloadend = () =>\r\n this.parseImageUpload(\r\n {\r\n name: files[0].name,\r\n size: files[0].size,\r\n type: files[0].type,\r\n file: reader.result\r\n },\r\n true\r\n );\r\n f.append(\"File\", files[0]);\r\n\r\n this.setState({ headerImageFd: f });\r\n return;\r\n }\r\n let mediaVm = Array.from(this.state.mediaVm);\r\n let mediaF = Array.from(event.target.files);\r\n for (let index = 0; index < files.length; index++) {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(files[index]);\r\n if (files[0].name.includes(\"image.jpg\")) {\r\n reader.onloadend = () =>\r\n this.parseImageUpload({\r\n name: files[index].name,\r\n size: files[index].size,\r\n type: files[index].type,\r\n file: reader.result\r\n });\r\n } else {\r\n mediaF.push(files[index]);\r\n mediaVm.push({\r\n name: files[index].name,\r\n type: files[index].type\r\n });\r\n }\r\n }\r\n let media = Array.from(this.state.media);\r\n media = arrayHelper.concat(media, mediaF);\r\n this.setState({ media, mediaVm });\r\n return;\r\n };\r\n\r\n parseImageUpload = (res, headerImage = false) => {\r\n if (headerImage) {\r\n if (res.name.includes(\"image.jpg\")) {\r\n let srcOrientation = 6;\r\n resetOrientation(res.file, srcOrientation, resetBase64Image => {\r\n const file = dataURLtoFile(resetBase64Image, res.name);\r\n this.setState({\r\n headerImageFd: file,\r\n previewHeaderImage: resetBase64Image\r\n });\r\n });\r\n }\r\n\r\n if (res.type.includes(\"video\")) {\r\n this.setState({\r\n previewHeaderImage: \"https://i.stack.imgur.com/PtbGQ.png\"\r\n });\r\n } else {\r\n this.setState({ previewHeaderImage: res.file });\r\n }\r\n } else {\r\n let mediaVm = Array.from(this.state.mediaVm);\r\n let media = Array.from(this.state.media);\r\n const result = Object.assign({}, res);\r\n\r\n let srcOrientation = 6;\r\n resetOrientation(res.file, srcOrientation, resetBase64Image => {\r\n const file = dataURLtoFile(resetBase64Image, res.name);\r\n /* result.file = file; */\r\n media.push(file);\r\n this.setState({ media });\r\n });\r\n\r\n media.push(result);\r\n mediaVm.push({\r\n name: res.name,\r\n type: res.type\r\n });\r\n this.setState({ media, mediaVm });\r\n }\r\n };\r\n\r\n deleteArticle = () => {\r\n const articleId = this.state.article.articleId;\r\n const requestOptions = {\r\n method: \"DELETE\",\r\n headers: /* authHeader( */ { \"Content-Type\": \"application/json\" } /* ) */\r\n };\r\n fetch(`./api/article/${articleId}`, requestOptions)\r\n .then(res => {\r\n this.setState(\r\n {\r\n article: null,\r\n media: [],\r\n mediaVm: [],\r\n alert: {\r\n message: /* 'adawd' */ \"Artikeln togs bort!\",\r\n type: \"warning\"\r\n }\r\n },\r\n () => {\r\n setTimeout(() => {\r\n this.setState({ alert: null }, () => {\r\n history.push(\"/articles/edit\");\r\n });\r\n }, 2000);\r\n }\r\n );\r\n })\r\n .catch(err => {\r\n this.setState({ errorMessage: err, media: [] });\r\n });\r\n };\r\n update = (callback = false) => {\r\n if (callback === false && !this.validate()) {\r\n return;\r\n }\r\n this.setState({ loading: true });\r\n if (this.state.headerImageFd && callback === false) {\r\n this.uploadHeaderImage(this.state.article.articleId);\r\n }\r\n if (this.state.media.length > 0 && callback === false) {\r\n this.uploadToStorage(this.state.article.articleId);\r\n }\r\n let articleToUpdate = Object.assign({}, this.state.article);\r\n const requestOptions = {\r\n method: \"PUT\",\r\n headers: /* authHeader( */ { \"Content-Type\": \"application/json\" } /* ) */,\r\n body: JSON.stringify(articleToUpdate)\r\n };\r\n fetch(`./api/article/`, requestOptions)\r\n .then(res => res.json())\r\n .then(newArticle => {\r\n this.setState(\r\n {\r\n article: newArticle,\r\n loading: false,\r\n media: []\r\n },\r\n () => { }\r\n );\r\n })\r\n .catch(err => {\r\n this.setState({ errorMessage: err });\r\n });\r\n };\r\n getMedia = () => {\r\n const article = this.state.article;\r\n if (!article) {\r\n return;\r\n }\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" }\r\n };\r\n fetch(\r\n `./api/files/article/${article.eventId}/?articleId=${article.articleId}`,\r\n requestOptions\r\n )\r\n .then(res => res.json())\r\n .then(files => {\r\n const newMedia = Array.from(files);\r\n const headerFile = newMedia.find(m => {\r\n return m.url === this.state.article.headerImage;\r\n });\r\n this.setState({\r\n mediaVm: newMedia,\r\n media: [],\r\n headerFile: headerFile\r\n });\r\n })\r\n .catch(err => {\r\n this.setState({ errorMessage: err });\r\n });\r\n };\r\n onMediaDelete = fileName => {\r\n const article = this.state.article;\r\n if (!article) {\r\n return;\r\n }\r\n if (!fileName) {\r\n return;\r\n }\r\n\r\n const requestOptions = {\r\n method: \"DELETE\",\r\n headers: /* authHeader( */ { \"Content-Type\": \"application/json\" } /* ) */\r\n };\r\n fetch(\r\n `./api/files/article/${article.articleId}/?fileName=${fileName.substring(\r\n fileName.lastIndexOf(\"/\") + 1\r\n )}`,\r\n requestOptions\r\n )\r\n .then(res => {\r\n let newMedia = Array.from(this.state.mediaVm);\r\n\r\n const indexOf = newMedia.indexOf(\r\n newMedia.find(m => {\r\n return m.name === fileName;\r\n })\r\n );\r\n newMedia.splice(indexOf, 1);\r\n this.setState({ mediaVm: newMedia });\r\n })\r\n .catch(err => {\r\n this.setState({ errorMessage: err });\r\n });\r\n };\r\n /* hadHeaderImage */\r\n publish2 = () => {\r\n if (!this.validate()) {\r\n return;\r\n }\r\n this.setState({ loading: true });\r\n const article = Object.assign({}, this.state);\r\n axios\r\n .post(`./api/article/`, article, {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n const newArticle = res.data;\r\n this.setState({ article: newArticle, loading: false });\r\n\r\n if (this.state.headerImageFd) {\r\n var apiBaseUrl = `./api/files/?articleId=${newArticle.articleId}`;\r\n\r\n axios\r\n .post(apiBaseUrl, this.state.headerImageFd, {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n const articleToUpdate = this.state.article;\r\n articleToUpdate.headerImage = data.url;\r\n this.setState({\r\n article: articleToUpdate,\r\n previewHeaderImage: \"\",\r\n headerImageFd: null,\r\n headerImage: data.url\r\n });\r\n\r\n axios\r\n .put(\"./api/article/\", articleToUpdate, {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n const newArticle = res.data;\r\n const media = [...new Set(this.state.media)];\r\n let apiBaseUrl = `./api/files/?articleId=${newArticle.articleId}`;\r\n\r\n for (let index = 0; index < media.length; index++) {\r\n /* let f = new FormData();\r\n f.append(\"File\", media[index]); */\r\n axios\r\n .post(apiBaseUrl, media[index], {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n\r\n const media = Array.from(this.state.mediaVm);\r\n const indexOf = media.indexOf(\r\n media.find(m => {\r\n return (\r\n m.name === data.name ||\r\n m.name.includes(\"image.jpg\")\r\n );\r\n })\r\n );\r\n media.splice(indexOf, 1);\r\n media.push(data);\r\n\r\n this.setState({\r\n mediaVm: media\r\n });\r\n if (index === media.length - 1) {\r\n this.setState({\r\n mediaUploaded: true\r\n });\r\n this.setState(\r\n {\r\n /* alert: { message: 'Artikeln är publicerad!', type: 'success' }, */\r\n published: true,\r\n loading: false\r\n },\r\n () => {\r\n history.push(\r\n \"/articles/edit/\" + this.state.article.articleId\r\n );\r\n /* this.publishAlert(); */\r\n }\r\n );\r\n }\r\n })\r\n .catch(err => this.setState({ loading: false }));\r\n }\r\n })\r\n .catch(err => this.setState({ loading: false }));\r\n })\r\n .catch(err => this.setState({ loading: false }));\r\n } else {\r\n const media = [...new Set(this.state.media)];\r\n var apiBaseUrl2 = `./api/files/?articleId=${newArticle.articleId}`;\r\n for (let index = 0; index < media.length; index++) {\r\n axios\r\n .post(apiBaseUrl2, media[index], {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n\r\n const media = Array.from(this.state.mediaVm);\r\n const indexOf = media.indexOf(\r\n media.find(m => {\r\n return m.name === data.name || m.name.includes(\"image.jpg\");\r\n })\r\n );\r\n media.splice(indexOf, 1);\r\n media.push(data);\r\n\r\n this.setState({\r\n mediaVm: media\r\n });\r\n if (index === media.length - 1) {\r\n this.setState({\r\n mediaUploaded: true\r\n });\r\n this.setState(\r\n {\r\n /* alert: { message: 'Artikeln är publicerad!', type: 'success' }, */\r\n published: true,\r\n loading: false\r\n },\r\n () => {\r\n history.push(\r\n \"/articles/edit/\" + this.state.article.articleId\r\n );\r\n /* this.publishAlert(); */\r\n }\r\n );\r\n }\r\n });\r\n }\r\n }\r\n })\r\n .catch(err => this.setState({ loading: false }));\r\n };\r\n publish = () => {\r\n if (!this.validate()) {\r\n return;\r\n }\r\n this.setState({ loading: true });\r\n const article = Object.assign({}, this.state);\r\n\r\n axios\r\n .post(`./api/article/`, article, {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n const newArticle = res.data;\r\n this.setState({ article: newArticle });\r\n\r\n if (this.state.headerImageFd) {\r\n var apiBaseUrl = `./api/files/basic/?articleId=${newArticle.articleId}`;\r\n\r\n axios\r\n .post(apiBaseUrl, this.state.headerImageFd, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n const articleToUpdate = this.state.article;\r\n articleToUpdate.headerImage = data.url;\r\n this.setState({\r\n article: articleToUpdate,\r\n previewHeaderImage: \"\",\r\n headerImageFd: null,\r\n headerImage: data.url\r\n });\r\n\r\n axios\r\n .put(\"./api/article/\", articleToUpdate, {\r\n headers: { \"Content-Type\": \"application/json\" }\r\n })\r\n .then(res => {\r\n this.setState({ loading: false });\r\n const newArticle = res.data;\r\n const media = [...new Set(this.state.media)];\r\n var apiBaseUrl = `./api/files/basic/?articleId=${newArticle.articleId}`;\r\n for (let index = 0; index < media.length; index++) {\r\n let f = new FormData();\r\n f.append(\"File\", media[index]);\r\n axios\r\n .post(apiBaseUrl, f, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n\r\n const media = Array.from(\r\n this.state.mediaVm.filter(m => {\r\n return m.url !== undefined;\r\n })\r\n );\r\n /* const indexOf = media.indexOf(\r\n media.find(m => {\r\n return m.name.includes(data.name) || m.name.includes('image.jpg');\r\n })\r\n ); */\r\n /* media.splice(indexOf, 1); */\r\n media.push(data);\r\n\r\n this.setState({\r\n mediaVm: media\r\n });\r\n if (index === media.length - 1) {\r\n this.setState(\r\n {\r\n published: true,\r\n\r\n mediaUploaded: true\r\n },\r\n () => {\r\n history.push(\r\n \"/articles/edit/\" + this.state.article.articleId\r\n );\r\n }\r\n );\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n this.setState({ loading: false });\r\n });\r\n }\r\n });\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n this.setState({ loading: false });\r\n });\r\n } else {\r\n this.setState({ loading: false });\r\n const media = [...new Set(this.state.media)];\r\n /* const */\r\n var apiBaseUrl2 = `./api/files/basic/?articleId=${newArticle.articleId}`;\r\n for (let index = 0; index < media.length; index++) {\r\n let f = new FormData();\r\n f.append(\"File\", media[index]);\r\n axios\r\n .post(apiBaseUrl2, f, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n\r\n const media = Array.from(\r\n this.state.mediaVm.filter(m => {\r\n return m.url !== undefined;\r\n })\r\n );\r\n\r\n media.push(data);\r\n\r\n this.setState({\r\n mediaVm: media\r\n });\r\n if (index === media.length - 1) {\r\n this.setState(\r\n {\r\n mediaUploaded: true,\r\n published: true\r\n },\r\n () => {\r\n history.push(\r\n \"/articles/edit/\" + this.state.article.articleId\r\n );\r\n /* this.publishAlert(); */\r\n }\r\n );\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n this.setState({ loading: false });\r\n });\r\n }\r\n }\r\n });\r\n };\r\n\r\n publishAlert = () => {\r\n setTimeout(() => {\r\n this.setState({ alert: null }, () => { });\r\n }, 2000);\r\n };\r\n uploadHeaderImage = articleId => {\r\n var apiBaseUrl = `./api/files/basic/?articleId=${articleId}`;\r\n if (this.state.headerImageFd) {\r\n axios\r\n .post(apiBaseUrl, this.state.headerImageFd, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n const articleToUpdate = this.state.article;\r\n articleToUpdate.headerImage = data.url;\r\n\r\n /* if (this.state.headerImageFd.type.includes('video')) {\r\n let videoHeader = 'thumbnail-' + this.state.headerImageFd;\r\n axios\r\n .post(apiBaseUrl, this.state.headerImageFd, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n });\r\n }\r\n */\r\n this.setState({\r\n article: articleToUpdate,\r\n previewHeaderImage: \"\",\r\n headerImageFd: null,\r\n headerImage: data.url,\r\n headerFile: data\r\n });\r\n this.update(true);\r\n /* return data.url; */\r\n })\r\n .catch(err => console.error(err));\r\n }\r\n };\r\n uploadToStorage = (articleId, publish = false) => {\r\n var apiBaseUrl = `./api/files/basic/?articleId=${articleId}`;\r\n const media = [...new Set(this.state.media)];\r\n for (let index = 0; index < media.length; index++) {\r\n let f = new FormData();\r\n f.append(\"File\", media[index]);\r\n axios\r\n .post(apiBaseUrl, f, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n })\r\n .then(res => {\r\n const data = Object.assign({}, res.data);\r\n const media = Array.from(\r\n this.state.mediaVm.filter(m => {\r\n return m.url !== undefined;\r\n })\r\n );\r\n /* const indexOf = media.indexOf(\r\n media.find(m => {\r\n return m.name.includes(data.name) || m.name.includes('image.jpg');\r\n })\r\n );\r\n\r\n media.splice(indexOf, 1); */\r\n media.push(data);\r\n\r\n this.setState({\r\n mediaVm: media\r\n });\r\n if (index === media.length - 1) {\r\n this.setState({\r\n mediaUploaded: true\r\n });\r\n }\r\n })\r\n .catch(err => console.error(err));\r\n }\r\n };\r\n onChange = e => {\r\n const { name, value } = e.target;\r\n\r\n if (this.state.article) {\r\n const article = Object.assign({}, this.state.article);\r\n article[name] = value;\r\n this.setState({ article });\r\n return;\r\n }\r\n this.setState({\r\n [name]: value\r\n });\r\n };\r\n backToFeedView = () => {\r\n if (this.state.article) {\r\n history.push(\"/news/articles/\" + this.state.article.eventId);\r\n } else {\r\n history.push(\"/news/articles/\" + this.props.user.eid);\r\n }\r\n };\r\n createView = () => {\r\n this.setState({\r\n headerImage: \"\",\r\n title: \"\",\r\n subtitle: \"\",\r\n content: \"\",\r\n likes: 0,\r\n publishDate: null,\r\n media: [],\r\n mediaVm: [],\r\n headerImageFd: null,\r\n errorMessage: \"\",\r\n article: null,\r\n previewHeaderImage: \"\",\r\n alert: null,\r\n loading: false,\r\n prevMediaLength: 0,\r\n published: false,\r\n mediaUploaded: false\r\n });\r\n history.push(\"/articles/edit\");\r\n };\r\n render() {\r\n const {\r\n media,\r\n article,\r\n title,\r\n subtitle,\r\n publishDate,\r\n content,\r\n headerImage,\r\n mediaVm,\r\n loading,\r\n headerFile\r\n } = this.state;\r\n return (\r\n \r\n {loading === true && }\r\n \r\n {article &&\r\n article.headerImage &&\r\n !this.state.previewHeaderImage &&\r\n headerFile &&\r\n (headerFile.type.includes(\"image\") ? (\r\n
\r\n \"blank\"\r\n
\r\n ) : (\r\n
\r\n \r\n
\r\n ))}\r\n {this.state.previewHeaderImage && (\r\n
\r\n \"blank\"\r\n
\r\n )}\r\n
\r\n \r\n \r\n this.onUpload(e, true)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.onUpload(e)}\r\n />\r\n \r\n {/* \r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n \r\n
*/}\r\n \r\n \r\n \r\n \r\n {!this.state.loaded && article ? (\r\n \r\n \r\n \r\n \r\n this.update(false)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {this.state.alert && (\r\n \r\n )}\r\n
\r\n );\r\n }\r\n}\r\nfunction mapStateToProps(state) {\r\n const { user } = state.authentication;\r\n return {\r\n user,\r\n alert: state.alert,\r\n systemLabel: state.systemLabel\r\n };\r\n}\r\nexport default connect(mapStateToProps)(ArticleEditor);\r\n","import React from \"react\";\r\n\r\nexport const Space = (props) => {\r\n const { settings } = props;\r\n const { divider } = settings;\r\n return (\r\n
\r\n {divider ?
: null}\r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState, Fragment, useRef, useMemo, useCallback } from \"react\";\r\nimport clsx from \"clsx\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport MenuIcon from \"@material-ui/icons/Menu\";\r\nimport MuiMenu from \"@material-ui/core/Menu\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport { ListItemSecondaryAction, MenuItem, StylesProvider, Tooltip } from \"@material-ui/core\";\r\nimport axios from \"axios\";\r\nimport { getKey } from \"../../helpers/url.helper\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport ExpandMoreIcon from \"@material-ui/icons/ExpandMore\";\r\nimport { history } from \"../../../helpers/history\";\r\nimport { runInAction } from \"mobx\";\r\nimport { Space } from \"../Space/Space\";\r\n\r\nfunction Menu({ cssId, settings, environment, current, configureValidation, isSmartphone, posY, setRenderSticky, renderSticky, width: moduleWidth, orders, contentLayout, ...rest }) {\r\n const [layouts, setLayouts] = useState([]);\r\n const [menuItems, setMenuItems] = useState([]);\r\n const logoRef = useRef();\r\n const { fixedOnScroll, menuGroup = \"\", showLogo = false, logoSource = \"\", menuLayout = \"L1:M*\", mobileMenuPos = \"LEFT\", showLinkTooltip = false, logoLink } = settings;\r\n\r\n const menuLayoutArray = useMemo(() => menuLayout.split(\":\").filter((x) => x != \"\"), [menuLayout]);\r\n\r\n console.log(menuItems);\r\n\r\n useEffect(() => {\r\n if (!menuItems || menuItems.length === 0) {\r\n fetchMenuItems();\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n const layout = document.querySelector(\".body\");\r\n if (layout && fixedOnScroll) layout.addEventListener(\"scroll\", isInViewport);\r\n return () => {\r\n if (layout && fixedOnScroll) layout.removeEventListener(\"scroll\", isInViewport);\r\n };\r\n });\r\n\r\n const isInViewport = useCallback(\r\n (event) => {\r\n const scrollYPos = event.target.scrollTop;\r\n if (scrollYPos > posY) {\r\n if (!renderSticky) setRenderSticky(true);\r\n } else {\r\n if (renderSticky) setRenderSticky(false);\r\n }\r\n },\r\n [posY, renderSticky]\r\n );\r\n\r\n const fetchLayouts = useCallback(\r\n async (mItems) => {\r\n try {\r\n const response = await axios.get(`./api/cms/getall?eventId=${environment.eventId}`);\r\n setLayouts(response.data);\r\n if (mItems[0]?.layoutCode && current.hasContentView) {\r\n const layout = response.data.find((l) => l.layoutCode == mItems[0].layoutCode);\r\n if (layout) {\r\n return runInAction(() => {\r\n current.scopedLayout = layout;\r\n });\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n },\r\n [current.hasContentView, environment.eventId]\r\n );\r\n\r\n const fetchMenuItems = useCallback(async () => {\r\n try {\r\n const response = await axios.get(`./api/menu/${environment.eventId}`);\r\n const newMenuItems = Array.from(response.data);\r\n if (newMenuItems && Array.isArray(newMenuItems)) {\r\n debugger;\r\n const mI = newMenuItems\r\n ?.filter((x) => x.languageCode === environment.lang && (x.menuGroupName?.toLowerCase() ?? \"\") === menuGroup.toLowerCase())\r\n ?.map((nm) => {\r\n nm.url = replaceUrlTags(nm.url);\r\n return nm;\r\n });\r\n //fetch layout based on id\r\n setMenuItems(mI);\r\n\r\n if (newMenuItems.filter((nm) => nm.layoutCode != null).length > 0) {\r\n fetchLayouts(newMenuItems);\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }, [environment.eventId, fetchLayouts, replaceUrlTags, setMenuItems, environment, menuGroup]);\r\n\r\n const replaceUrlTags = (url) => {\r\n // const { orders } = props;\r\n\r\n let path = url.toString();\r\n let badgeNo = \"\";\r\n let lang = \"\";\r\n\r\n let hasOrder = orders && orders.length > 0 && orders[0].orderId !== undefined;\r\n if (window.location && window.location.search) {\r\n const paramProps = new URLSearchParams(window.location.search);\r\n if (paramProps.get(getKey(\"badgeno\", paramProps))) badgeNo = paramProps.get(getKey(\"badgeno\", paramProps));\r\n else if (paramProps.get(getKey(\"clientkey\", paramProps))) badgeNo = paramProps.get(getKey(\"clientkey\", paramProps));\r\n\r\n if (paramProps.get(getKey(\"lang\", paramProps))) lang = paramProps.get(getKey(\"lang\", paramProps));\r\n }\r\n if (/\\[BadgeNo\\]/gi.test(path)) {\r\n if (hasOrder && badgeNo) {\r\n path = path.replace(/\\[BadgeNo\\]/gi, badgeNo);\r\n } else {\r\n path = path.replace(/&*badgeno=\\[BadgeNo\\]/gi, \"\");\r\n path = path.replace(/&*clientkey=\\[BadgeNo\\]/gi, \"\");\r\n }\r\n }\r\n if (/\\[ClientKey\\]/gi.test(path)) {\r\n if (hasOrder && badgeNo) {\r\n path = path.replace(/\\[ClientKey\\]/gi, badgeNo);\r\n } else {\r\n path = path.replace(/&*badgeno=\\[ClientKey\\]/gi, \"\");\r\n path = path.replace(/&*clientkey=\\[ClientKey\\]/gi, \"\");\r\n }\r\n }\r\n\r\n if (/lang=.{3}/gi.test(path) && lang) {\r\n path = path.replace(/lang=.{3}/gi, \"lang=\" + lang);\r\n }\r\n return path;\r\n };\r\n\r\n const navigate = (url, target) => {\r\n if (current.hasContentView) {\r\n const menuItem = menuItems.find((mi) => mi.url == url);\r\n\r\n if (menuItem) {\r\n const layout = layouts.find((l) => l.layoutCode == menuItem.layoutCode);\r\n if (layout) {\r\n configureValidation();\r\n return runInAction(() => {\r\n current.scopedLayout = layout;\r\n });\r\n }\r\n }\r\n }\r\n if (/lang=[a-z]{3}/i.test(url)) {\r\n var langString = /[\\?\\&]{1}lang=[a-z]{3}/i.exec(url);\r\n url.replace(langString, `lang=${environment.lang}`);\r\n } else if (url.includes(\"?\")) {\r\n url += `&lang=${environment.lang}`;\r\n } else {\r\n url += `?lang=${environment.lang}`;\r\n }\r\n if (target == \"_self\" && !url.includes(\"http\")) {\r\n history.push(url, { scrollToTop: true });\r\n } else {\r\n window.open(url, target);\r\n }\r\n };\r\n\r\n if (isSmartphone) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n return menuLayoutArray.map((ml, i) => {\r\n let cols = ml.replace(/\\D+/, \"\");\r\n if (ml.includes(\"*\")) {\r\n let fixedCols = 0;\r\n menuLayoutArray.map((x) => {\r\n if (x.startsWith(\"L\") && (!showLogo || !logoSource)) return;\r\n var numString = x.replace(/\\D+/, \"\");\r\n if (numString) {\r\n fixedCols += parseInt(numString);\r\n }\r\n });\r\n cols = moduleWidth - fixedCols;\r\n }\r\n if (ml.startsWith(\"S\")) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n } else if (ml.startsWith(\"L\") && showLogo && logoSource) {\r\n const imageStyle = {\r\n height: logoRef.current?.naturalHeight > logoRef.current?.naturalWidth ? \"100%\" : undefined,\r\n width: logoRef.current?.naturalHeight < logoRef.current?.naturalWidth ? \"100%\" : undefined,\r\n aspectRatio: `${logoRef.current?.naturalWidth} / ${logoRef.current?.naturalHeight}`,\r\n };\r\n const wrapStyle = {\r\n aspectRatio: `${logoRef.current?.naturalWidth} / ${logoRef.current?.naturalHeight}`,\r\n width: `calc((100vw) * (${cols} / 12))`,\r\n };\r\n return (\r\n
\r\n {logoLink ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n );\r\n } else if (ml.startsWith(\"M\")) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n });\r\n}\r\n\r\nexport default observer(Menu);\r\n\r\nconst DesktopMenu = ({ menuItems = [], navigate, contentLayout, showLinkTooltip }) => {\r\n const [anchorEl, setAnchorEl] = React.useState({});\r\n\r\n const handleClick = (event, menuId) => {\r\n setAnchorEl({ ...anchorEl, [menuId]: event.currentTarget });\r\n };\r\n\r\n const handleClose = (menuId) => {\r\n setAnchorEl({ ...anchorEl, [menuId]: null });\r\n };\r\n\r\n if (!menuItems?.length) return

None

;\r\n\r\n return (\r\n
\r\n {menuItems\r\n ?.filter((m) => !m.parentMenuId)\r\n .sort((a, b) => a.sortOrder - b.sortOrder)\r\n .map((m) => {\r\n const { url, label, target, menuId } = m;\r\n return (\r\n \r\n \r\n {menuItems.find((mi) => mi.parentMenuId == menuId) ? (\r\n <>\r\n handleClick(e, menuId)}\r\n >\r\n {label}\r\n \r\n
\r\n handleClose(menuId)}\r\n >\r\n {menuItems\r\n .filter((mi) => mi.parentMenuId == menuId)\r\n .sort((a, b) => a.sortOrder - b.sortOrder)\r\n .map((mi) => (\r\n \r\n navigate(mi.url, mi.target)}>\r\n {mi.label}\r\n \r\n \r\n ))}\r\n \r\n \r\n ) : (\r\n
navigate(url, target)} className={`cms-menu-item ${contentLayout.layoutCode == m.layoutCode ? \"active\" : \"\"}`}>\r\n {label}\r\n
\r\n )}\r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst MobileMenu = ({ menuItems = [], match, navigate, cssId, contentLayout, scopedLayout, logoLink, mobileMenuPos, showLogo, logoSrc }) => {\r\n const [drawerOpen, setDrawerOpen] = useState(false);\r\n const [openMenuOptionId, setOpenMenuOptionId] = useState(null);\r\n\r\n const toggleMenuOption = (id) => setOpenMenuOptionId(openMenuOptionId != id ? id : null);\r\n\r\n const toggleDrawer = (event) => {\r\n setDrawerOpen(!drawerOpen);\r\n };\r\n\r\n const logoRef = useRef();\r\n const imageStyle = {\r\n height: logoRef.current?.naturalHeight > logoRef.current?.naturalWidth ? \"100%\" : undefined,\r\n width: logoRef.current?.naturalHeight < logoRef.current?.naturalWidth ? \"100%\" : undefined,\r\n aspectRatio: `${logoRef.current?.naturalWidth} / ${logoRef.current?.naturalHeight}`,\r\n };\r\n const wrapStyle = {\r\n aspectRatio: `${logoRef.current?.naturalWidth} / ${logoRef.current?.naturalHeight}`,\r\n };\r\n\r\n return (\r\n \r\n {mobileMenuPos === \"RIGHT\" ? (\r\n
\r\n {showLogo && logoSrc ? (\r\n
\r\n {logoLink ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n ) : null}\r\n
\r\n ) : null}\r\n toggleDrawer()} aria-haspopup=\"true\">\r\n \r\n \r\n {mobileMenuPos === \"LEFT\" ? (\r\n
\r\n {showLogo && logoSrc ? : null}\r\n
\r\n ) : null}\r\n toggleDrawer()}>\r\n
toggleDrawer()} onKeyDown={() => toggleDrawer()}>\r\n \r\n {menuItems\r\n ?.filter((m) => !m.parentMenuId)\r\n ?.map((item, index) => {\r\n const { url, target } = item;\r\n return menuItems.find((mi) => mi.parentMenuId == item.menuId) ? (\r\n \r\n {\r\n e.stopPropagation();\r\n toggleMenuOption(item.menuId);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {openMenuOptionId == item.menuId ? (\r\n
\r\n {menuItems\r\n .filter((mi) => mi.parentMenuId == item.menuId)\r\n .map((mi) => {\r\n return (\r\n navigate(mi.url, mi.target)}\r\n className={`cms-menu-item ${scopedLayout ? scopedLayout.layoutCode == mi.layoutCode : contentLayout.layoutCode == mi.layoutCode ? \"active\" : \"\"}`}\r\n button\r\n key={`mobile_${mi.url}}_${mi.menuId}`}\r\n >\r\n \r\n \r\n );\r\n })}\r\n
\r\n ) : null}\r\n
\r\n ) : (\r\n navigate(url, target)} className={`cms-menu-item ${contentLayout.contentLayoutId == item.layoutId ? \"active\" : \"\"}`} button key={`mobile_${item.url}}_${item.menuId}`}>\r\n \r\n \r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}; //#BTHAEEO.content-wrapper .cms-menu .cms-menu-item\r\n","import React from \"react\";\r\n\r\nexport const Asterisk = (props) => *;\r\n","import { useEffect } from \"react\";\r\n\r\nexport default function useOnClickOutside(refs, handler, bool) {\r\n useEffect(() => {\r\n if (bool !== undefined && !bool) return () => null;\r\n const listener = (event) => {\r\n if (refs.some((r) => !r.current) || refs.some((r) => r.current.contains(event.target))) {\r\n return;\r\n }\r\n handler(event);\r\n };\r\n document.addEventListener(\"mousedown\", listener);\r\n document.addEventListener(\"touchstart\", listener);\r\n return () => {\r\n document.removeEventListener(\"mousedown\", listener);\r\n document.removeEventListener(\"touchstart\", listener);\r\n };\r\n }, [refs, handler, bool]);\r\n}\r\n","import React, { useState, useEffect, useRef, useMemo, Fragment, useCallback } from \"react\";\r\nimport axios from \"axios\";\r\nimport ArrowDownIcon from \"@material-ui/icons/KeyboardArrowDown\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { Combobox, Transition } from \"@headlessui/react\";\r\nimport SystemLabel from \"../../components/SystemLabel\";\r\nimport useOnClickOutside from \"../../hooks/onClickOutside\";\r\n\r\nconst includes = (source, target) => source?.toLowerCase()?.includes(target.toLowerCase());\r\n\r\nexport const CountrySelect = observer((props) => {\r\n const containerRef = useRef(null);\r\n const [countries, setCountries] = useState([]);\r\n const [query, setQuery] = useState(\"\");\r\n const [open, setOpen] = useState(false);\r\n const { lang, eventId, selectGrid, value, onChange, useCode = false, countryCode, loaded, valid = undefined, preselected } = props;\r\n\r\n useOnClickOutside([{ current: containerRef.current }], () => setOpen(false), open);\r\n\r\n useEffect(() => {\r\n if (lang && eventId) getCountries();\r\n }, [lang, eventId]);\r\n\r\n useEffect(() => {\r\n if (typeof loaded === \"function\") {\r\n if (countries.length > 0 && loaded) loaded(true);\r\n if (countries.length > 0 && (value || countryCode) && value) {\r\n const country = countries.find((t) => t.countryCode === countryCode || t.value == value);\r\n onChange(country?.value, country);\r\n }\r\n }\r\n }, [value, countries, countryCode, loaded]);\r\n\r\n const getCountries = useCallback(async () => {\r\n try {\r\n const requestOptions = {\r\n method: \"GET\",\r\n headers: { \"Content-Type\": \"application/json\" },\r\n };\r\n const { data } = await axios.get(`./api/country/getselection/${eventId}/${lang}`, requestOptions);\r\n const countryList = [{ value: 0, label: \"\", europeCountry: null, nordicCountry: null, countryId: 0 }, ...data].map((c, index) =>\r\n index > 0\r\n ? {\r\n value: c.countryId,\r\n label: lang == \"swe\" || lang === undefined ? c.nameSwe : c.nameInt,\r\n europeCountry: c.europeCountry === null ? false : c.europeCountry,\r\n nordicCountry: c.nordicCountry === null ? false : c.nordicCountry,\r\n swedishCountry: c.nameInt == \"Sweden\" ? true : false,\r\n countryCode: c.code,\r\n name: c.nameInt,\r\n }\r\n : c\r\n );\r\n setCountries(countryList);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }, [useCode]);\r\n\r\n const filteredCountries = useMemo(() => {\r\n if (selectGrid && selectGrid?.only?.length) {\r\n return countries.filter(({ name }) => includes(name, query) && includes(selectGrid.exceptions, name));\r\n }\r\n if (query === \"\") return [...countries]?.splice(0, 10);\r\n return countries.filter(({ label }) => includes(label, query));\r\n }, [selectGrid, countries, query]);\r\n\r\n const selectedCountry = useMemo(() => {\r\n let found = countries?.find(({ value: _value }) => _value === value);\r\n if (!found && preselected) {\r\n let precountry = countries.find((x) => x.value == preselected);\r\n if (!precountry) return found;\r\n found = precountry.value;\r\n //console.log(\"pciutn\", precountry, found, value);\r\n //onChange(precountry.value, precountry, false);\r\n }\r\n return found;\r\n }, [countries, value, preselected]);\r\n\r\n useEffect(() => {\r\n if (preselected && selectedCountry && (preselected==selectedCountry || preselected==selectedCountry?.value)) {\r\n let precountry = countries.find((x) => x.value == preselected);\r\n if (precountry && precountry.value) {\r\n //console.log(precountry.value, selectedCountry);\r\n onChange(precountry.value, precountry, false);\r\n }\r\n } else {\r\n }\r\n }, [selectedCountry, preselected]);\r\n\r\n const handleChange = useCallback(\r\n (country) => {\r\n onChange(country.value, country, false);\r\n setOpen(false);\r\n },\r\n [onChange]\r\n );\r\n\r\n return (\r\n
\r\n \r\n
\r\n
\r\n setOpen((prev) => !prev)}\r\n onChange={(event) => setQuery(event.target.value)}\r\n displayValue={(props) => props?.label ?? \"\"}\r\n className=\"cms-field person form-control\"\r\n style={{ marginLeft: 0, border: valid === false ? \"1px solid #d53443\" : undefined }}\r\n />\r\n setOpen((prev) => !prev)}>\r\n \r\n \r\n
\r\n setQuery(\"\")}>\r\n \r\n {filteredCountries?.length === 0 ? (\r\n
\r\n \r\n
\r\n ) : (\r\n filteredCountries?.map((country) => (\r\n \r\n {({ selected }) =>
  • {country.label}
  • }\r\n
    \r\n ))\r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n});\r\n","import Axios from \"axios\";\r\nimport { runInAction } from \"mobx\";\r\nimport React, { useContext, useEffect } from \"react\";\r\nimport Store from \"../store/Store\";\r\nimport { observer } from \"mobx-react-lite\";\r\n\r\nconst EventLabel = observer(({ name, groupName, textOnly = false }) => {\r\n const store = useContext(Store);\r\n groupName = groupName.toUpperCase();\r\n /* name = name.toUpperCase(); */\r\n const label = store.eventLabels[groupName] ? store.eventLabels[groupName][name] : null;\r\n const { eventId, lang } = store.environment;\r\n useEffect(() => {\r\n if (typeof store.eventLabels[groupName] !== \"object\" && store.eventLabels[groupName] !== \"Loading\") {\r\n getGroup();\r\n } else if (typeof store.eventLabels[groupName] === \"object\") {\r\n if (!label) createLabel();\r\n }\r\n }, [store.eventLabels[groupName], label]);\r\n function getGroup() {\r\n runInAction(() => {\r\n store.eventLabels[groupName] = \"Loading\";\r\n });\r\n Axios.get(`./api/eventLabel/getGroup/${eventId}?groupName=${groupName}&languageCode=${lang}`).then(({ data }) => {\r\n runInAction(() => {\r\n const groups = { ...store.eventLabels };\r\n const groupData = {};\r\n data.map((d) => {\r\n groupData[d.name] = d;\r\n });\r\n groups[groupName] = groupData;\r\n store.eventLabels = groups;\r\n });\r\n });\r\n }\r\n function createLabel() {\r\n runInAction(() => {\r\n store.eventLabels[groupName][name] = \"Loading\";\r\n });\r\n if (!name) return;\r\n Axios.get(`./api/eventLabel/getLabel/${eventId}?groupName=${groupName}&labelName=${name}&languageCode=${lang}`).then(({ data }) => {\r\n runInAction(() => {\r\n const groups = { ...store.eventLabels };\r\n if (groups[groupName] !== \"Loading\") {\r\n groups[groupName][name] = data;\r\n store.eventLabels = groups;\r\n }\r\n });\r\n });\r\n }\r\n if (textOnly) return label || label === \"Loading\" ? label.value : `#${name}#`;\r\n if (!label || label === \"Loading\") return {`#${name}#`};\r\n return {label.value};\r\n});\r\nexport default EventLabel;\r\n\r\nexport const GetEventLabelValueFn = ({ name = \"\", groupName = \"\" }, eventLabels, environment, updateEventLabels) => {\r\n groupName = groupName.toUpperCase();\r\n const label = eventLabels[groupName] ? eventLabels[groupName][name] : null;\r\n const { eventId, lang } = environment;\r\n if (typeof eventLabels[groupName] !== \"object\" && eventLabels[groupName] !== \"Loading\") {\r\n getGroup();\r\n } else if (typeof eventLabels[groupName] === \"object\") {\r\n if (!label && label !== \"Loading\") createLabel();\r\n }\r\n function getGroup() {\r\n runInAction(() => {\r\n eventLabels[groupName] = \"Loading\";\r\n });\r\n Axios.get(`./api/eventLabel/getGroup/${eventId}?groupName=${groupName}&languageCode=${lang}`).then(({ data }) => {\r\n const groupData = {};\r\n data.map((d) => {\r\n groupData[d.name] = d;\r\n });\r\n if (typeof updateEventLabels === \"function\") {\r\n updateEventLabels(groupName, groupData);\r\n }\r\n });\r\n }\r\n function createLabel() {\r\n runInAction(() => {\r\n eventLabels[groupName][name] = \"Loading\";\r\n });\r\n if (!name) return;\r\n Axios.get(`./api/eventLabel/getLabel/${eventId}?groupName=${groupName}&labelName=${name}&languageCode=${lang}`).then(({ data }) => {\r\n const groupData = eventLabels[groupName];\r\n groupData[name] = data;\r\n if (typeof updateEventLabels === \"function\") {\r\n updateEventLabels(groupName, groupData);\r\n }\r\n });\r\n }\r\n return label && label !== \"Loading\" ? label.value : `#${name}#`;\r\n};\r\n","import { Combobox, Transition } from \"@headlessui/react\";\r\nimport { SearchOutlined } from \"@material-ui/icons\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React, { useState, useContext, useMemo, Fragment, useRef, useEffect } from \"react\";\r\nimport { useCallback } from \"react\";\r\nimport { Input, InputGroup, InputGroupAddon, InputGroupText } from \"reactstrap\";\r\nimport { labelHelper } from \"../../helpers/labelHelper\";\r\nimport Store from \"../store/Store\";\r\nimport SystemLabel from \"./SystemLabel\";\r\n\r\nfunction PhoneNumberField(props) {\r\n const inputRef = useRef(null);\r\n const [countryCode, setCountryCode] = useState(\"se\");\r\n const [prefix, setPrefix] = useState(\"46\");\r\n const [countryCodeSelectOpen, setCountryCodeSelectOpen] = useState(false);\r\n const { settings, valid, invoice, ...inputProps } = props;\r\n\r\n const handleChange = useCallback(\r\n (e) => {\r\n if (settings?.showCountryCodeSelector) {\r\n if (!e.target.value?.startsWith(`+${prefix}`) && inputProps?.value) {\r\n const newValue = e.target.value?.split(\" \");\r\n return inputProps.onChange(`+${prefix} ${newValue?.[1] ?? \"\"}`);\r\n }\r\n const newValue = e.target.value?.replace(`+${prefix}`, \"\").replace(/[^0-9_ +-]/g, \"\");\r\n inputProps.onChange(`+${prefix} ${newValue.trimStart()}`);\r\n } else if (invoice) {\r\n inputProps.onChange(e.target.value);\r\n } else {\r\n const newValue = e.target.value?.replace(/[^0-9_ +-]/g, \"\");\r\n inputProps.onChange(newValue);\r\n }\r\n },\r\n [prefix, inputProps, settings?.showCountryCodeSelector]\r\n );\r\n\r\n useEffect(() => {\r\n if (!inputProps?.value && settings?.showCountryCodeSelector) {\r\n inputProps.onChange(`+${prefix}`);\r\n }\r\n }, [inputProps?.value, inputProps?.onChange, prefix, settings?.showCountryCodeSelector]);\r\n\r\n const handleCodeChange = useCallback(\r\n ({ value, code }) => {\r\n inputProps.onChange(inputProps.value.replace(/\\+[^\\s]+/g, `+${value}`));\r\n setPrefix(value);\r\n setCountryCode(code);\r\n setCountryCodeSelectOpen(false);\r\n },\r\n [inputProps]\r\n );\r\n\r\n const inputStyle = inputRef.current ? window.getComputedStyle(inputRef.current) : {};\r\n\r\n if (settings?.showCountryCodeSelector) {\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n }\r\n return ;\r\n}\r\n\r\nexport default observer(PhoneNumberField);\r\n\r\nconst includes = (source, target) => source?.toLowerCase()?.includes(target.toLowerCase());\r\n\r\nconst CountryCodeSelector = ({ open, code, onChange }) => {\r\n const [query, setQuery] = useState(\"\");\r\n const { countries } = useContext(Store);\r\n\r\n const countryCodeList = useMemo(() => countries?.map(({ alpha2Code, nameInt, phonePrefix }) => ({ code: alpha2Code, label: nameInt, value: phonePrefix })), [countries]);\r\n const filteredCountries = useMemo(() => countryCodeList.filter(({ label, value }) => includes(label, query) || includes(`+${value}`, query)), [countryCodeList, query]);\r\n\r\n return (\r\n open && (\r\n
    \r\n onChange(country)}>\r\n
    \r\n
    \r\n \r\n setQuery(event.target.value)} style={{ border: 0, background: \"#fff\", width: \"100%\" }} />\r\n
    \r\n setQuery(\"\")}>\r\n \r\n {filteredCountries?.length === 0 ? (\r\n
    \r\n \r\n
    \r\n ) : (\r\n filteredCountries?.map(({ code, value, label }) => (\r\n \r\n {({ selected }) => (\r\n
  • \r\n \r\n (+{value}) {label}\r\n
  • \r\n )}\r\n
    \r\n ))\r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n )\r\n );\r\n};\r\n","import { Asterisk } from \"./Asterisk\";\r\nimport React, { useContext, useLayoutEffect, useRef, useState, useMemo } from \"react\";\r\nimport { FormGroup, Label, Input } from \"reactstrap\";\r\nimport { CountrySelect } from \"../modules/CountrySelect/CountrySelect\";\r\nimport EventLabel, { GetEventLabelValueFn } from \"./EventLabel\";\r\nimport Store from \"../store/Store\";\r\nimport PhoneNumberField from \"./PhoneNumberField\";\r\n\r\nconst CustomInput = (props) => {\r\n const {\r\n onChange,\r\n type,\r\n noMargin = false,\r\n prefixClassName = undefined,\r\n staticLabel = false,\r\n displayType = \"short\",\r\n label,\r\n cssId,\r\n value,\r\n subLabel,\r\n disabled = false,\r\n noLabel = false,\r\n noInputField = false,\r\n lang,\r\n readonly,\r\n valid,\r\n required,\r\n onKeyDown,\r\n eventId,\r\n appendButton = null,\r\n validationError = false,\r\n validationErrorMessage = \"\",\r\n onBlur,\r\n onFocus,\r\n onClick,\r\n placeholder,\r\n showConfirmInput = false,\r\n confirmInputValue = \"\",\r\n confirmInputOnChange,\r\n autocomplete = null,\r\n settings,\r\n invoice = false,\r\n } = props;\r\n\r\n const store = useContext(Store);\r\n const inputRef = useRef(null);\r\n const btnWrapRef = useRef(null);\r\n const [btnPos, setBtnPos] = useState(0);\r\n\r\n const { validations } = store;\r\n\r\n useLayoutEffect(() => {\r\n if (inputRef.current && btnWrapRef.current) {\r\n let inputWidth = inputRef.current.getBoundingClientRect().width;\r\n let marginLeft = parseFloat(getComputedStyle(inputRef.current).marginLeft.replace(\"px\", \"\"));\r\n let btnWidth = btnWrapRef.current.getBoundingClientRect().width;\r\n let pos = inputWidth + (marginLeft ?? 0) - btnWidth - 5;\r\n if (Math.abs(btnPos - pos) > 1) {\r\n setBtnPos(pos);\r\n }\r\n }\r\n });\r\n\r\n const ariaLabel = useMemo(() => {\r\n return GetEventLabelValueFn({ name: type, groupName: \"Content.StaticLabels\" }, store.eventLabels, store.environment, store.updateEventLabels);\r\n });\r\n\r\n const autoCompleteType = autocomplete || type;\r\n const inputProps = {\r\n type: noInputField ? \"hidden\" : displayType == \"long\" ? \"textarea\" : \"text\",\r\n disabled,\r\n readOnly: readonly,\r\n className: prefixClassName + `${validationError ? \" validation-error\" : \"\"}`,\r\n [\"aria-label\"]: ariaLabel,\r\n name: label,\r\n autoComplete: autoCompleteType,\r\n value,\r\n onChange,\r\n onKeyDown: typeof onKeyDown === \"function\" ? (e) => onKeyDown({ ...e }) : undefined,\r\n onBlur: typeof onBlur === \"function\" ? (e) => onBlur({ ...e }) : undefined,\r\n onFocus: typeof onFocus === \"function\" ? (e) => onFocus({ ...e }) : undefined,\r\n placeholder: placeholder ? placeholder : undefined,\r\n onClick: typeof onClick === \"function\" ? (e) => onClick({ ...e }) : undefined,\r\n settings,\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {!noLabel && !settings?.hideLabel ? (\r\n
    \r\n {staticLabel ? (\r\n \r\n ) : (\r\n \r\n )}\r\n {subLabel ? (\r\n \r\n ) : null}\r\n
    \r\n ) : null}\r\n {appendButton ? (\r\n <>\r\n \r\n  \r\n {appendButton}\r\n \r\n ) : type == \"CountryCode\" || type == \"CountryId\" ? (\r\n \r\n ) : type == \"Telephone1\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
    \r\n {showConfirmInput ? : null}\r\n \r\n );\r\n};\r\n\r\nconst ConfirmationInput = ({ disabled, readOnly, valid, prefixClassName, parentLabel, confirmInputOnChange, confirmInputValue }) => {\r\n return (\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n );\r\n};\r\nexport default CustomInput;\r\n","export const calculateModules11 = (id) => {\r\n var to = 10;\r\n var multiply = [4, 3, 2, 7, 6, 5, 4, 3, 2, 1];\r\n var sum = 0;\r\n var pos = 0;\r\n var i;\r\n for (i = 0; i < to; i++) {\r\n var x = id.substring(pos, pos + 1);\r\n var intValue = parseInt(x, 10);\r\n sum += intValue * multiply[i];\r\n if (i === 5) {\r\n pos++; //Ignore dash\r\n }\r\n pos++;\r\n }\r\n return sum;\r\n }\r\n export const getFullYear = (id) => {\r\n var year = parseInt(id.substring(4, 6), 10);\r\n var digit8 = parseInt(id.substring(7, 8), 10);\r\n var fullYear = 0;\r\n switch (digit8) {\r\n case 0:\r\n case 1:\r\n case 2:\r\n case 3:\r\n fullYear = 1900 + year; \r\n break;\r\n case 4:\r\n if (year < 37) {\r\n fullYear = 2000 + year;\r\n }\r\n else {\r\n fullYear = 1900 + year;\r\n }\r\n break;\r\n case 5:\r\n case 6:\r\n case 7:\r\n case 8:\r\n if (year > 57) {\r\n fullYear = 1800 + year;\r\n }\r\n else {\r\n fullYear = 2000 + year;\r\n }\r\n break;\r\n case 9:\r\n if (year > 36) {\r\n fullYear = 1900 + year;\r\n }\r\n else {\r\n fullYear = 2000 + year;\r\n }\r\n break;\r\n }\r\n return fullYear+\"-\"+ id.substring(2, 4) +\"-\"+ id.substring(0,2);\r\n };","import { calculateModules11, getFullYear } from \"./inputValidator.dnk.helper\";\r\n\r\nexport const invoiceFieldValidator = (input, type, countryCode = null, data = null) => {\r\n let isValid = true;\r\n if (!input) input = \"\";\r\n switch (type) {\r\n case \"Name\":\r\n case \"Address1\":\r\n if (input.length === 0) isValid = false;\r\n break;\r\n case \"Telephone1\":\r\n case \"Ref\":\r\n // if(!data || input.length===0) isValid = false;\r\n // else if (input.length>0){\r\n // isValid = data.test(String(input));\r\n // }\r\n break;\r\n case \"Zip\":\r\n if (input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = inputValidator(input, \"zip\");\r\n }\r\n break;\r\n case \"City\":\r\n if (input.length === 0) isValid = false;\r\n break;\r\n case \"OrgNo\":\r\n if (input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = validateOrgno(input, countryCode);\r\n }\r\n break;\r\n case \"GLN\":\r\n if (input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = validateGln(input);\r\n }\r\n break;\r\n case \"Email\":\r\n if (input.length === 0) isValid = false;\r\n else if (input.length > 0) {\r\n isValid = inputValidator(input, \"email\");\r\n }\r\n break;\r\n case \"CountryCode\":\r\n if (input.length === 0) isValid = false;\r\n break;\r\n default:\r\n isValid = true;\r\n }\r\n return isValid;\r\n};\r\n\r\nconst emailPattern = /^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{1,4}$/;\r\nconst phonePattern = /[^0-9+ \\-()]/;\r\nconst zipPatten = /^[\\d\\s]*$/;\r\n\r\nexport function inputValidator(input, type) {\r\n switch (type) {\r\n case \"zip\":\r\n return true;\r\n case \"numeric\":\r\n return !isNaN(input);\r\n case \"email\":\r\n return emailPattern.test(String(input).toLowerCase());\r\n case \"telephone\":\r\n case \"phone\":\r\n return !phonePattern.test(String(input).toLowerCase());\r\n default:\r\n return true;\r\n }\r\n}\r\n\r\nexport function validateGln(input) {\r\n // Test string for correct length\r\n if (!input) {\r\n return false;\r\n }\r\n input = input.replace(/[\\s\\-]/g, \"\");\r\n if (isNaN(input)) {\r\n return false;\r\n }\r\n // let data = input.split(\"\");\r\n if (input.length != 13) {\r\n return false;\r\n }\r\n // Test string for being numeric\r\n for (let i = 0; i < input.length; i++) {\r\n if (input.charCodeAt(i) < 0x30 || input.charCodeAt(i) > 0x39) return false;\r\n }\r\n let weight = 1;\r\n let sum = 0;\r\n for (let i = 0; i < input.length - 1; i++) {\r\n sum += parseInt(input.charAt(i), 10) * weight;\r\n weight = (weight + 2) % 4;\r\n }\r\n let remainder = (10 - (sum % 10)) % 10;\r\n return input.charAt(input.length - 1) == 0 + remainder;\r\n}\r\n\r\nexport function validateOrgno(input, countryCode, company = true) {\r\n if (!input) {\r\n return false;\r\n }\r\n input = input.replace(/[\\s\\-]/g, \"\");\r\n if (isNaN(input)) {\r\n return false;\r\n }\r\n switch (countryCode) {\r\n case \"NOR\":\r\n //norweigan company\r\n if (input.length == 9) {\r\n let gyldig = false;\r\n let kontrollsiffer = 0;\r\n let o = input.split(\"\").map((i) => {\r\n return parseInt(i, 10);\r\n });\r\n if (input.length == 9) {\r\n let sum = o[0] * 3 + o[1] * 2 + o[2] * 7 + o[3] * 6 + o[4] * 5 + o[5] * 4 + o[6] * 3 + o[7] * 2;\r\n let rest = sum % 11;\r\n let kontrollsiffer = rest === 0 ? 0 : 11 - rest;\r\n\r\n return rest != 1 && kontrollsiffer == o[8];\r\n } else {\r\n return false;\r\n }\r\n }\r\n //norweigan person\r\n else if (input.length == 11) {\r\n if (input.length != 11) return false;\r\n const staticSequenceFirstCheckDigit = [3, 7, 6, 1, 8, 9, 4, 5, 2, 1];\r\n const staticSequenceSecondCheckDigit = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2, 1];\r\n const elevenDigitsArray = input.split(\"\").map((x) => parseInt(x));\r\n\r\n const isValidCheckDigit = (staticSequence, digits) => {\r\n var productSum = staticSequence.reduce((acc, value, index) => acc + value * digits[index], 0);\r\n\r\n return productSum % 11 === 0;\r\n };\r\n\r\n return isValidCheckDigit(staticSequenceFirstCheckDigit, elevenDigitsArray) && isValidCheckDigit(staticSequenceSecondCheckDigit, elevenDigitsArray);\r\n } else {\r\n return false;\r\n }\r\n case \"SWE\":\r\n //swedish person and company\r\n // Check valid length & form\r\n let numdigits = input.length;\r\n if (input.indexOf(\"-\") === -1) {\r\n if (input.length === 10) {\r\n input = input.slice(0, 6) + \"-\" + input.slice(6);\r\n } else {\r\n input = input.slice(0, 8) + \"-\" + input.slice(8);\r\n }\r\n }\r\n if (!input.match(/^(\\d{2})(\\d{2})(\\d{2})\\-(\\d{4})|(\\d{4})(\\d{2})(\\d{2})\\-(\\d{4})$/)) {\r\n return false;\r\n }\r\n // Clean input\r\n input = input.replace(\"-\", \"\");\r\n if (input.length === 12) {\r\n input = input.substring(2);\r\n }\r\n let sum = 0;\r\n // Check luhn algorithm\r\n for (let i = 0; i < input.length; i = i + 1) {\r\n let digit = parseInt(input.charAt(i), 10);\r\n if (i % 2 === input.length % 2) {\r\n digit *= 2;\r\n }\r\n if (digit > 9) {\r\n digit -= 9;\r\n }\r\n sum += digit;\r\n }\r\n return sum % 10 === 0;\r\n default:\r\n return true;\r\n }\r\n}\r\n\r\nexport function hasOrgNoValidation(countryCode) {\r\n switch (countryCode) {\r\n // case \"DNK\":\r\n case \"NOR\":\r\n case \"SWE\":\r\n return true;\r\n default:\r\n return false;\r\n }\r\n}\r\n","import React, { useEffect, useMemo, useRef, useState } from \"react\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport CustomInput from \"../../components/CustomInput\";\r\nimport { deepClone, toCamelCase } from \"../../../helpers/objectHelper\";\r\nimport { inputValidator } from \"../../helpers/inputValidator.helper\";\r\nimport { runInAction, toJS } from \"mobx\";\r\nimport Axios from \"axios\";\r\nimport { usePrevious } from \"../../helpers/usePrevious\";\r\n\r\nconst Field = observer((props) => {\r\n const inputTimerRef = useRef(null);\r\n const { settings, environment, fields, activePersonNo, updateOrder, contentModuleId, pages, validations, checkConditions, contentLayoutModuleId, conditions, current, validate } = props;\r\n const { fieldId, prefixClassName, type, readonly, required, hidden, validationType, fieldType, minLength, confirmInput, requireUniqueEmail = false, disableChangeLock = false } = settings;\r\n\r\n const orders = toJS(props.orders);\r\n\r\n const field = fields.find((f) => f.fieldId === settings.fieldId);\r\n\r\n const validity = useMemo(() => validations.find((v) => v.id == contentModuleId), [validations]);\r\n\r\n const [isConfirmValid, setIsConfirmValid] = useState(!confirmInput);\r\n const [isEmailUnique, setIsEmailUnique] = useState(true);\r\n\r\n const fValue = useMemo(() => {\r\n if (field?.type) {\r\n const val = toJS(orders)[activePersonNo]?.[toCamelCase(field?.type)]?.[toCamelCase(field.name == \"CountryCode\" ? \"CountryId\" : field.name)];\r\n return val ?? \"\";\r\n }\r\n return \"\";\r\n }, [orders, activePersonNo]);\r\n\r\n const [confirmInputValue, setConfirmInputValue] = useState(fValue);\r\n const previousValue = usePrevious(fValue);\r\n\r\n useEffect(() => {\r\n if (previousValue !== fValue) {\r\n if (inputTimerRef.current) {\r\n clearTimeout(inputTimerRef.current);\r\n inputTimerRef.current = null;\r\n }\r\n inputTimerRef.current = setTimeout(checkRegisteredEmail, 500);\r\n }\r\n if (confirmInput) compareConfirmInput();\r\n validateField();\r\n }, [confirmInputValue, fValue, activePersonNo, isConfirmValid, isEmailUnique]);\r\n\r\n useEffect(() => {\r\n setConfirmInputValue(fValue ?? \"\");\r\n }, [activePersonNo]);\r\n\r\n const handleValueChange = (value) => {\r\n let newValue = value;\r\n\r\n if (!field?.type) return;\r\n\r\n let order = orders[activePersonNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(field.type)];\r\n let newType = undefined;\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n if (field.name == \"CountryCode\") newType[toCamelCase(\"CountryId\")] = newValue;\r\n else newType[toCamelCase(field.name)] = newValue;\r\n newOrder[toCamelCase(field.type)] = newType;\r\n updateOrder(newOrder);\r\n checkConditions(contentLayoutModuleId);\r\n };\r\n\r\n const compareConfirmInput = () => {\r\n if (fValue.toLowerCase().trim() === confirmInputValue.toLowerCase().trim()) {\r\n if (!isConfirmValid) setIsConfirmValid(true);\r\n } else {\r\n if (isConfirmValid) setIsConfirmValid(false);\r\n }\r\n };\r\n\r\n const checkRegisteredEmail = async () => {\r\n if (requireUniqueEmail && fieldType.toLowerCase() == \"email\" && fValue.length > 0) {\r\n try {\r\n const { data } = await Axios.get(`./api/attendee/emailcheck/${environment.eventId}?email=${encodeURIComponent(fValue.toLowerCase().trim())}`);\r\n if (data.success) setIsEmailUnique(!data.regExists);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n } else {\r\n setIsEmailUnique(true);\r\n }\r\n };\r\n\r\n const validateField = () => {\r\n let input = fValue;\r\n let isValid = true;\r\n let reason = \"\";\r\n if ([\"FIRSTNAME\", \"LASTNAME\", \"EMAIL\"].includes(fieldType.toUpperCase()) && fValue.length === 0) {\r\n isValid = false;\r\n reason = \"required\";\r\n } else if (readonly || hidden) {\r\n isValid = true;\r\n reason = \"\";\r\n } else if (required === true && input.length === 0) {\r\n isValid = false;\r\n reason = \"required\";\r\n } else if (minLength > 0 && input.length < minLength) {\r\n isValid = false;\r\n reason = \"minLength\";\r\n } else if (!isConfirmValid) {\r\n isValid = false;\r\n reason = \"confirmNotMatching\";\r\n } else if (!isEmailUnique) {\r\n isValid = false;\r\n reason = \"emailNotUnique\";\r\n } else if (validationType !== \"none\") {\r\n isValid = inputValidator(input, validationType);\r\n reason = validationType;\r\n }\r\n\r\n runInAction(() => {\r\n if (validity) {\r\n validity.valid = isValid;\r\n validity.reason = reason;\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (orders[activePersonNo]?.badgeNo) {\r\n validateField();\r\n }\r\n }, [orders, validateField]);\r\n\r\n const isValid = useMemo(() => {\r\n if ([\"email\", \"firstname\", \"lastname\"].includes(fieldType.toLowerCase()) && !disableChangeLock) return true;\r\n if (fValue.length > 0 && validity?.valid === false) return false;\r\n else if (fValue.length > 0 && validity?.valid === true) return true;\r\n else if (validate && validations.find((v) => v.id === contentModuleId)?.valid === false) return false;\r\n return undefined;\r\n }, [validity, validate, validations, disableChangeLock, fValue, validateField, contentModuleId, fieldType]);\r\n\r\n const isChangeLocked = useMemo(() => {\r\n if ([\"email\", \"firstname\", \"lastname\"].includes(fieldType.toLowerCase()) && !disableChangeLock && orders?.[0]?.badgeNo) return true;\r\n return false;\r\n }, [disableChangeLock, orders, fieldType]);\r\n\r\n if (hidden) return null;\r\n return (\r\n 0 || required || [\"email\", \"firstname\", \"lastname\"].includes(fieldType.toLowerCase())}\r\n lang={environment.lang}\r\n eventId={environment.eventId}\r\n showConfirmInput={confirmInput}\r\n settings={settings}\r\n confirmInputValue={confirmInputValue}\r\n confirmInputOnChange={(e) => setConfirmInputValue(e.target.value)}\r\n valid={isValid}\r\n onChange={(e) => handleValueChange(e.target ? e.target.value : e)}\r\n label={fields.find((f) => f.fieldId == fieldId)?.fieldLanguage?.find((fl) => fl.languageCode == environment.lang)?.label || settings.defaultLabel}\r\n subLabel={fields.find((f) => f.fieldId == fieldId)?.fieldLanguage?.find((fl) => fl.languageCode == environment.lang)?.subLabel}\r\n />\r\n );\r\n});\r\n\r\nexport default Field;\r\n","export function getTimeDiff(date1, timeSpan) {\r\n var startDate = new Date(date1);\r\n var seconds = (startDate.getTime() + timeSpan - startDate.getTime()) / 1000;\r\n return seconds;\r\n}\r\n\r\nexport function compareDates(time) {\r\n var endTime = new Date(time);\r\n if (+endTime <= +new Date()) return true;\r\n return false;\r\n}\r\n","import { observer } from \"mobx-react-lite\";\r\nimport React, { useEffect, useState, useRef } from \"react\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nexport const Countdown = observer((props) => {\r\n const [time, setTime] = useState(\"\");\r\n const [clear, setClear] = useState(false);\r\n\r\n const timerRef = useRef();\r\n const { settings, environment, small, active } = props;\r\n const { datetime, timerShadow = false, showZeroes = false, showTitle = false } = settings;\r\n const { eventId, lang } = environment;\r\n useEffect(() => {\r\n const t = new Date();\r\n timerRef.current = setInterval(() => countdown(t.setSeconds(t.getSeconds() + 1)), 1000);\r\n return () => clearInterval(timerRef.current);\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (timerRef.current) clearInterval(timerRef.current);\r\n const t = new Date();\r\n timerRef.current = setInterval(() => countdown(t.setSeconds(t.getSeconds() + 1)), 1000);\r\n return () => clearInterval(timerRef.current);\r\n }, [settings.datetime]);\r\n\r\n useEffect(() => {\r\n if (clear) {\r\n props.checkHeights();\r\n }\r\n }, [clear]);\r\n\r\n const countdown = (currentTime) => {\r\n if (clear) return;\r\n let secondsLeft = (new Date(datetime) - new Date(currentTime)) / 1000;\r\n var delta = Math.abs(datetime - currentTime) / 1000;\r\n var days = Math.floor(delta / 86400);\r\n delta -= days * 86400;\r\n var hours = Math.floor(delta / 3600) % 24;\r\n delta -= hours * 3600;\r\n var minutes = Math.floor(delta / 60) % 60;\r\n delta -= minutes * 60;\r\n var seconds = Math.floor(delta % 60);\r\n\r\n if (secondsLeft <= 0) {\r\n setTime(null);\r\n setClear(true);\r\n return;\r\n }\r\n setTime({\r\n days: days < 10 && days > 0 ? \"0\" + days : days,\r\n hours: hours < 10 && hours > 0 ? \"0\" + hours : hours,\r\n minutes: minutes < 10 && minutes > 0 ? \"0\" + minutes : minutes,\r\n seconds: seconds < 10 && seconds > 0 ? \"0\" + seconds : seconds,\r\n });\r\n };\r\n\r\n if (clear) return null;\r\n\r\n if (!time) return null;\r\n const { days, hours, minutes, seconds } = time;\r\n\r\n if (small)\r\n return (\r\n \r\n {days} {hours}:{minutes}:{seconds}\r\n \r\n );\r\n return (\r\n \r\n {showTitle ? (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n
    \r\n {showZeroes || days ? (\r\n
    \r\n
    {days}
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n {showZeroes || days || hours ? (\r\n
    \r\n
    {hours}
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n {showZeroes || days || hours || minutes ? (\r\n
    \r\n
    {minutes}
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n {showZeroes || days || hours || minutes || seconds ? (\r\n
    \r\n
    {seconds}
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n
    \r\n
    \r\n );\r\n});\r\n","import { Tooltip } from \"@material-ui/core\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { compareDates } from \"../../helpers/date.helper\";\r\nimport { convertUrl } from \"../../helpers/url.helper\";\r\nimport { Countdown } from \"../Countdown/Countdown\";\r\n\r\nexport const Button = observer((props) => {\r\n const [disabled, setDisabled] = useState(true);\r\n const { settings, environment, orders } = props;\r\n const { link, texts, target, useTimer, startDateTime, endDateTime, timerShadow, showZeroes, showTitle, hidden, showTooltip = false } = settings;\r\n const timerRef = useRef();\r\n useEffect(() => {\r\n buttonTimeHandler();\r\n return () => {\r\n if (timerRef.current) {\r\n clearInterval(timerRef.current);\r\n }\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n buttonTimeHandler();\r\n }, [startDateTime, endDateTime]);\r\n\r\n const navigate = () => (link ? window.open(convertUrl(link, orders !== undefined && orders.length > 0 ? orders[0] : null), target || \"_blank\") : null);\r\n const buttonTimeHandler = () => {\r\n if (!useTimer) {\r\n return setDisabled(false);\r\n }\r\n\r\n if (timerRef.current) clearInterval(timerRef.current);\r\n\r\n if (startDateTime || endDateTime) {\r\n if (startDateTime && disabled && compareDates(startDateTime)) {\r\n if (!endDateTime || (endDateTime && +new Date() < +new Date(endDateTime))) {\r\n setDisabled(false);\r\n }\r\n } else if (endDateTime && +new Date() > +new Date(endDateTime)) {\r\n setDisabled(true);\r\n } else {\r\n timerRef.current = setInterval(() => {\r\n if (startDateTime && disabled && compareDates(startDateTime)) {\r\n if (!endDateTime || (endDateTime && +new Date() < +new Date(endDateTime))) {\r\n setDisabled(false);\r\n if (!endDateTime) clearInterval(timerRef.current);\r\n }\r\n }\r\n if (endDateTime && +new Date() > +new Date(endDateTime)) {\r\n setDisabled(true);\r\n clearInterval(timerRef.current);\r\n }\r\n }, 10000);\r\n }\r\n } else {\r\n setDisabled(false);\r\n }\r\n };\r\n if (hidden) return null;\r\n return (\r\n <>\r\n
    \r\n {useTimer && startDateTime ? (\r\n
    \r\n \r\n
    \r\n ) : null}\r\n
    \r\n {showTooltip ?\r\n 0 ? orders[0] : null)}>\r\n \r\n \r\n :\r\n }\r\n
    \r\n
    \r\n \r\n );\r\n});\r\n","import React, { useMemo, Fragment, useState, useRef } from \"react\";\r\nimport ArrowDownIcon from \"@material-ui/icons/KeyboardArrowDown\";\r\nimport { Combobox, Transition } from \"@headlessui/react\";\r\nimport SystemLabel from \"../../components/SystemLabel\";\r\nimport useOnClickOutside from \"../../hooks/onClickOutside\";\r\n\r\nconst includes = (source, target) => source?.toLowerCase()?.includes(target.toLowerCase());\r\nconst filterDeleted = (qo) => !qo.status || (qo.status && qo.status != \"deleted\");\r\nconst sort = (a, b) => a.sortOrder - b.sortOrder;\r\n\r\nexport const OptionSelector = (props) => {\r\n const containerRef = useRef(null);\r\n const [query, setQuery] = useState(\"\");\r\n const [open, setOpen] = useState(false);\r\n const { settings, environment, activePersonNo, question, handleChange, options, orders, valid = undefined } = props;\r\n const { showPlaceholder = false, placeholderText = null } = settings;\r\n\r\n useOnClickOutside([{ current: containerRef.current }], () => setOpen(false), open);\r\n\r\n const questionOptions = useMemo(\r\n () =>\r\n options?.map(({ questionOptionLanguage, ...rest }) => ({\r\n ...rest,\r\n label: questionOptionLanguage?.find(({ languageCode }) => languageCode === environment.lang)?.label,\r\n })),\r\n [question, environment, options]\r\n );\r\n\r\n const filteredOptions = useMemo(() => {\r\n if (!query) return questionOptions?.filter(filterDeleted).sort(sort);\r\n return questionOptions?.filter((qo) => filterDeleted(qo) && includes(qo.label, query)).sort(sort);\r\n }, [query, questionOptions]);\r\n\r\n const selectedOption = useMemo(() => {\r\n return questionOptions?.find(({ questionOptionId: _questionOptionId }) => _questionOptionId === orders[activePersonNo]?.answer?.find((a) => a.questionId == question.questionId)?.answerRow[0]?.questionOptionId);\r\n }, [orders, activePersonNo, questionOptions]);\r\n\r\n return (\r\n
    \r\n {\r\n handleChange(true, option.questionOptionId);\r\n setOpen(false);\r\n }}\r\n >\r\n
    \r\n
    \r\n setOpen((prev) => !prev)}\r\n onChange={(event) => setQuery(event.target.value)}\r\n displayValue={(prop) => prop?.label}\r\n className=\"selector-menu form-control\"\r\n style={{ border: valid === false ? \"1px solid #d53443\" : undefined }}\r\n placeholder={showPlaceholder ? placeholderText : \"\"}\r\n />\r\n setOpen((prev) => !prev)}>\r\n \r\n \r\n
    \r\n setQuery(\"\")}>\r\n \r\n {filteredOptions?.length === 0 ? (\r\n
    \r\n \r\n
    \r\n ) : (\r\n filteredOptions?.map((option) => (\r\n \r\n {({ selected }) =>
  • {option?.label}
  • }\r\n
    \r\n ))\r\n )}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n};\r\n","import React, { useEffect, useMemo, useState } from \"react\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport { Checkbox, FormGroup, makeStyles } from \"@material-ui/core\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { OptionSelector } from \"./OptionSelector\";\r\nimport { runInAction, toJS } from \"mobx\";\r\nimport { deepClone } from \"../../../helpers/objectHelper\";\r\nimport CheckBoxIcon from \"@material-ui/icons/CheckBox\";\r\nimport CheckboxDefaultIcon from \"@material-ui/icons/CheckBoxOutlineBlank\";\r\nimport RadioButtonDefaultIcon from \"@material-ui/icons/RadioButtonUncheckedOutlined\";\r\nimport RadioButtonCheckedIcon from \"@material-ui/icons/RadioButtonChecked\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n \"&:hover\": {\r\n backgroundColor: \"transparent !important\",\r\n },\r\n marginLeft: 0,\r\n marginRight: 0,\r\n },\r\n label: {\r\n \"&.Mui-disabled\": {\r\n color: \"inherit !important\",\r\n },\r\n color: \"inherit\",\r\n fontWeight: \"inherit\",\r\n fontSize: \"inherit\",\r\n fontFamily: \"inherit\",\r\n },\r\n}));\r\n\r\nexport const Option = observer((props) => {\r\n const classes = useStyles();\r\n const [initValidation, setInitValidation] = useState(true);\r\n const [runValidation, setRunValidation] = useState(false);\r\n\r\n const orders = toJS(props.orders);\r\n const { settings, environment, updateOrder, activePersonNo, validity, question, validate, contentLayoutModuleId, checkConditions } = props;\r\n const { prefixClassName, displayType, hidden, readonly, required } = settings;\r\n\r\n const options = Array.from(question.questionOption);\r\n const answer = (orders[activePersonNo] && orders[activePersonNo].answer && orders[activePersonNo]?.answer?.find((a) => a.questionId == question.questionId)) || {};\r\n\r\n useEffect(() => {\r\n if (orders && orders[activePersonNo]?.badgeNo && initValidation) {\r\n setInitValidation(false);\r\n validateOptions();\r\n }\r\n }, [orders, activePersonNo, initValidation]);\r\n\r\n useEffect(() => {\r\n if (answer?.answerRow) {\r\n validateOptions();\r\n }\r\n }, [answer]);\r\n\r\n useEffect(() => {\r\n if (runValidation) {\r\n setRunValidation(false);\r\n validateOptions();\r\n }\r\n }, [runValidation]);\r\n\r\n const handleChange = (value, optionId) => {\r\n let order = deepClone(orders[activePersonNo]);\r\n\r\n if (!order.answer) {\r\n order.answer = [];\r\n }\r\n let answer = order.answer.find((a) => a.questionId == question.questionId);\r\n if (!answer) {\r\n answer = {\r\n answerId: 0,\r\n interactionKey: null,\r\n orderId: 0,\r\n questionId: question.questionId,\r\n answerRow: [],\r\n };\r\n order.answer.push(answer);\r\n }\r\n if (!answer.answerRow) {\r\n answer.answerRow = [];\r\n }\r\n if (value === true && question.requiredMax === 1) {\r\n answer.answerRow.map((ar) => {\r\n ar.deleted = true;\r\n });\r\n }\r\n let row = answer.answerRow.find((ar) => ar.questionOptionId == optionId);\r\n if (row) {\r\n row.deleted = !value;\r\n } else {\r\n answer.answerRow.push({\r\n answerId: answer.answerId,\r\n answerRowId: 0,\r\n questionOptionId: optionId,\r\n text: null,\r\n deleted: false,\r\n });\r\n }\r\n answer.answerRow = answer.answerRow.filter((ar) => {\r\n return !ar.deleted;\r\n });\r\n order.answer[order.answer.indexOf(order.answer.find((a) => a.questionId == question.questionId))] = { ...answer };\r\n\r\n updateOrder(order);\r\n setRunValidation(true);\r\n checkConditions(contentLayoutModuleId);\r\n };\r\n\r\n const validateOptions = () => {\r\n let isValid = true;\r\n let reason = \"\";\r\n let { requiredMax, requiredMin } = question;\r\n const checkedCount = getCheckedCount();\r\n if (readonly || hidden) {\r\n isValid = true;\r\n return isValid;\r\n } else if (required && checkedCount == 0) {\r\n isValid = false;\r\n reason = \"required\";\r\n } else if (requiredMin > 0 && checkedCount > 0 && checkedCount < requiredMin) {\r\n isValid = false;\r\n reason = \"minLengthOption\";\r\n } else if (requiredMax > 0 && checkedCount > 0 && checkedCount > requiredMax) {\r\n isValid = false;\r\n reason = \"maxLengthOption\";\r\n }\r\n runInAction(() => {\r\n validity.valid = isValid;\r\n validity.reason = reason;\r\n });\r\n };\r\n\r\n const getCheckedCount = () => {\r\n if (orders.length > 0) {\r\n let order = orders[activePersonNo];\r\n if (order.answer) {\r\n let answer = order.answer.find((a) => a.questionId == question.questionId);\r\n if (answer && answer.answerRow && answer.answerRow.length > 0) {\r\n let rows = answer.answerRow.filter((ar) => ar.questionOptionId != 0 && !ar.deleted);\r\n return rows.length;\r\n }\r\n }\r\n }\r\n return 0;\r\n };\r\n\r\n useEffect(() => {\r\n if (orders[activePersonNo]?.badgeNo) {\r\n validateOptions();\r\n }\r\n }, [orders, validateOptions]);\r\n\r\n const isValid = useMemo(() => {\r\n const checkedCount = getCheckedCount();\r\n if (checkedCount.length > 0 && validity?.valid === false) return false;\r\n else if (checkedCount.length > 0 && validity?.valid === true) return true;\r\n else if (validate && validity?.valid === false) return false;\r\n return undefined;\r\n }, [validity, validate, getCheckedCount]);\r\n\r\n if (displayType == \"radio\") {\r\n return (\r\n {\r\n handleChange(true, parseInt(e.target.value));\r\n }}\r\n >\r\n {options\r\n .sort((a, b) => a.sortOrder - b.sortOrder)\r\n .map((qo) => (\r\n ar.questionOptionId == qo.questionOptionId))}\r\n key={qo.questionOptionId}\r\n control={\r\n }\r\n checkedIcon={}\r\n />\r\n }\r\n value={qo.questionOptionId.toString()}\r\n label={qo?.questionOptionLanguage?.find((fl) => fl.languageCode == environment.lang)?.label}\r\n />\r\n ))}\r\n \r\n );\r\n } else if (displayType == \"select\") {\r\n return ;\r\n } else {\r\n return (\r\n \r\n {options\r\n .sort((a, b) => a.sortOrder - b.sortOrder)\r\n .map((qo) => (\r\n handleChange(e.target.checked, qo.questionOptionId)}\r\n checked={Boolean(answer?.answerRow?.find((ar) => ar.questionOptionId == qo.questionOptionId))}\r\n control={\r\n }\r\n checkedIcon={}\r\n />\r\n }\r\n label={

    {qo?.questionOptionLanguage?.find((fl) => fl.languageCode == environment.lang)?.label || \"-\"}

    }\r\n />\r\n ))}\r\n
    \r\n );\r\n }\r\n});\r\n","import { runInAction, toJS } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React, { useEffect, useCallback, useMemo } from \"react\";\r\nimport { deepClone } from \"../../../helpers/objectHelper\";\r\nimport CustomInput from \"../../components/CustomInput\";\r\nimport { inputValidator } from \"../../helpers/inputValidator.helper\";\r\n\r\nexport const Text = observer((props) => {\r\n const { settings, environment, subLabel, label, orders, updateOrder, activePersonNo, validity, question, validate } = props;\r\n const { required, prefixClassName, type, displayType, validationType, hidden, readonly } = settings;\r\n\r\n const orderList = useMemo(() => toJS(orders), [orders]);\r\n\r\n const getTextValue = () => {\r\n const activeOrder = orderList[activePersonNo];\r\n const activeAnswer = activeOrder?.answer?.find((a) => a.questionId === question.questionId);\r\n const activeRow = activeAnswer?.answerRow?.find((ar) => !ar.questionOptionId && !ar.deleted);\r\n return activeRow?.text || \"\";\r\n };\r\n\r\n const answerText = getTextValue();\r\n\r\n const validateText = useCallback(() => {\r\n const { requiredMin, requiredMax } = question;\r\n\r\n let isValid = true;\r\n let reason = \"\";\r\n\r\n if (readonly || hidden) {\r\n isValid = true;\r\n } else if (required && answerText.length == 0) {\r\n isValid = false;\r\n reason = \"required\";\r\n } else if (requiredMin > 0 && answerText.length > 0 && answerText.length < requiredMin) {\r\n isValid = false;\r\n reason = \"minLengthText\";\r\n } else if (requiredMax > 0 && answerText.length > requiredMax) {\r\n isValid = false;\r\n reason = \"maxLengthText\";\r\n } else if (validationType) {\r\n isValid = inputValidator(answerText, validationType);\r\n reason = validationType;\r\n }\r\n\r\n runInAction(() => {\r\n validity.valid = isValid;\r\n validity.reason = reason;\r\n });\r\n }, [answerText, question, validity, validate]);\r\n\r\n useEffect(() => {\r\n validateText();\r\n }, [orderList, activePersonNo, validateText]);\r\n\r\n const handleChange = (value, optionId) => {\r\n let order = deepClone(orderList[activePersonNo]);\r\n if (!order.answer) {\r\n order.answer = [];\r\n }\r\n let answer = order.answer.find((a) => a.questionId == question.questionId);\r\n if (!answer) {\r\n answer = {\r\n answerId: 0,\r\n interactionKey: null,\r\n orderId: 0,\r\n questionId: question.questionId,\r\n answerRow: [],\r\n };\r\n order.answer.push(answer);\r\n }\r\n if (!answer.answerRow) {\r\n answer.answerRow = [];\r\n }\r\n if (value === true && question.requiredMax === 1) {\r\n answer.answerRow.map((ar) => {\r\n ar.deleted = true;\r\n });\r\n }\r\n let row = answer.answerRow.find(() => true);\r\n if (row) {\r\n row.text = value;\r\n } else {\r\n answer.answerRow.push({\r\n answerId: answer.answerId,\r\n answerRowId: 0,\r\n questionOptionId: optionId,\r\n text: value,\r\n deleted: false,\r\n });\r\n }\r\n answer.answerRow = answer.answerRow.filter((ar) => {\r\n return !ar.deleted;\r\n });\r\n order.answer[order.answer.indexOf(order.answer.find((a) => a.questionId == question.questionId))] = answer;\r\n updateOrder(order);\r\n validateText();\r\n };\r\n\r\n const isValid = useMemo(() => {\r\n if (answerText.length > 0 && validity?.valid === false) return false;\r\n else if (answerText.length > 0 && validity?.valid === true) return true;\r\n else if (validate && validity?.valid === false) return false;\r\n return undefined;\r\n }, [validity?.valid, validate, answerText]);\r\n\r\n return (\r\n handleChange(e.target.value)}\r\n displayType={displayType}\r\n settings={settings}\r\n label={label}\r\n value={getTextValue()}\r\n subLabel={subLabel}\r\n />\r\n );\r\n});\r\n","import { observer } from \"mobx-react-lite\";\r\nimport React, { useMemo } from \"react\";\r\nimport { Label, FormGroup } from \"reactstrap\";\r\nimport { Asterisk } from \"../../components/Asterisk\";\r\nimport { Option } from \"./Option\";\r\nimport { Text } from \"./Text\";\r\n\r\nexport const Question = observer((props) => {\r\n const { settings, environment, questions, validations, contentModuleId, contentLayoutModuleId } = props;\r\n const { questionId, prefixClassName, type, validation, groupTransfer, hidden } = settings;\r\n\r\n const question = questions.find((q) => q.questionId == questionId);\r\n if (!question) return null;\r\n\r\n const label = question?.questionLanguage?.find((fl) => fl.languageCode == environment.lang)?.label;\r\n const subLabel = question?.questionLanguage?.find((fl) => fl.languageCode == environment.lang)?.subLabel;\r\n\r\n const validity = useMemo(() => validations.find((v) => v.id == contentModuleId), [validations, contentModuleId]);\r\n\r\n if (hidden) return null;\r\n return (\r\n <>\r\n {type == \"option\" ? (\r\n \r\n {!settings?.hideLabel && (\r\n
    \r\n \r\n {subLabel ? : null}\r\n
    \r\n )}\r\n
    \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n});\r\n","export function preciseRound(value, decPlaces) {\r\n var val = value * Math.pow(10, decPlaces);\r\n var fraction = Math.round((val - parseInt(val)) * 10) / 10;\r\n\r\n //this line is for consistency with .NET Decimal.Round behavior\r\n // -342.055 => -342.06\r\n if (fraction == -0.5) fraction = -0.6;\r\n\r\n val = Math.round(parseInt(val) + fraction) / Math.pow(10, decPlaces);\r\n return val;\r\n}\r\n\r\nexport function displayMoney(amount, vat) {\r\n let price = 0;\r\n if (!isNaN(amount)) {\r\n if (isNaN(vat) || vat === 0) {\r\n price = amount;\r\n } else {\r\n price = (amount + amount * (vat / 100)).toFixed(4);\r\n }\r\n }\r\n return preciseRound(price, 2);\r\n}\r\n\r\nexport function removeZerosFromNumber(num) {\r\n if (num % 1 != 0) {\r\n let numString = num.toString();\r\n let newNumString = \"\";\r\n for (let index = numString.length - 1; index >= 0; index--) {\r\n let v = numString.charAt(index);\r\n if (v !== \"0\" || newNumString.includes(\".\")) newNumString = v + newNumString;\r\n }\r\n\r\n newNumString = parseFloat(newNumString);\r\n return newNumString;\r\n }\r\n return num;\r\n}\r\n","import React from 'react'\r\n\r\nexport const EventDates = ({ displayEventSettings, event, lang }) => {\r\n return

    \r\n {displayEventSettings[\"ShowEventStartDateTime\"] ? new Date(event.startDateTime).toLocaleDateString(lang === \"swe\"? \"sv-SE\" : \"en-GB\") : null}\r\n {displayEventSettings[\"ShowEventStartTime\"] ? (displayEventSettings[\"ShowEventStartDateTime\"] ? \" \" : \"\") + new Date(event.startDateTime).toLocaleTimeString(lang === \"swe\"? \"sv-SE\" : \"en-GB\", { timeStyle: 'short' }) : null}\r\n {(displayEventSettings[\"ShowEventStartDateTime\"] || displayEventSettings[\"ShowEventStartTime\"]) &&\r\n (displayEventSettings[\"ShowEventEndDateTime\"] || displayEventSettings[\"ShowEventEndTime\"]) ?\r\n ' - ' : null}\r\n {displayEventSettings[\"ShowEventEndDateTime\"] ? new Date(event.endDateTime).toLocaleDateString(lang === \"swe\"? \"sv-SE\" : \"en-GB\") : null}\r\n {displayEventSettings[\"ShowEventEndTime\"] ? (displayEventSettings[\"ShowEventEndDateTime\"] ? \" \" : \"\") + new Date(event.endDateTime).toLocaleTimeString(lang === \"swe\"? \"sv-SE\" : \"en-GB\", { timeStyle: 'short' }) : null}\r\n

    \r\n}\r\n\r\n","import React from 'react'\r\n\r\nexport const EventLocation = ({ displayEventSettings, event }) => {\r\n return

    \r\n {displayEventSettings[\"ShowEventVenue\"] && event.venue ? event.venue:null}\r\n {(displayEventSettings[\"ShowEventVenue\"] && event.venue) && \r\n (displayEventSettings[\"ShowEventCity\"] && event.city) ? \", \" : null}\r\n {displayEventSettings[\"ShowEventCity\"] && event.city ? event.city:null}\r\n

    \r\n}","import { observer } from \"mobx-react-lite\";\r\nimport React, { useEffect, useState, useMemo, useCallback } from \"react\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport { displayMoney } from \"../../helpers/money.helper\";\r\nimport Axios from \"axios\";\r\nimport { usePrevious } from \"../../helpers/usePrevious\";\r\nimport { Spinner } from \"reactstrap\";\r\nimport { Asterisk } from \"../../components/Asterisk\";\r\nimport { runInAction, toJS } from \"mobx\";\r\nimport RadioButtonUncheckedIcon from \"@material-ui/icons/RadioButtonUnchecked\";\r\nimport RadioButtonCheckedIcon from \"@material-ui/icons/RadioButtonChecked\";\r\nimport CheckBoxOutlineBlankIcon from \"@material-ui/icons/CheckBoxOutlineBlank\";\r\nimport CheckBoxIcon from \"@material-ui/icons/CheckBox\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nimport { EventDates } from \"./components/EventDates\";\r\nimport { EventLocation } from \"./components/EventLocation\";\r\nimport { toCamelCase } from \"../../helpers/objectHelper\";\r\nimport { getUrlParam } from \"../../helpers/url.helper\";\r\nimport { is } from \"core-js/core/object\";\r\n\r\nexport const Event = observer((props) => {\r\n const [isFetching, setIsFetching] = useState(false);\r\n const [isFullBooked, setIsFullbooked] = useState(false);\r\n const [isNoVouchersAvailable, setIsNoVouchersAvailable] = useState(false);\r\n const [isReadonly, setIsReadonly] = useState(false);\r\n const [isFetchingVouchers, setIsFetchingVouchers] = useState(false);\r\n\r\n const {\r\n settings,\r\n environment,\r\n breakouts,\r\n contentLayoutModuleId,\r\n displayEventSettings,\r\n checkConditions,\r\n current,\r\n updateOrder,\r\n activePersonNo,\r\n contentLayout,\r\n validations,\r\n contentModuleId,\r\n hasParent,\r\n updateOrderRow,\r\n setBreakoutFullbooked,\r\n checkEventAvailability,\r\n validate: vdate,\r\n parentValid,\r\n } = props;\r\n\r\n const orders = toJS(props.orders);\r\n const { eventId, readonly, hidden, prechecked, allowOverbooking, escape, required, overrideDisplay, displayType = \"checkbox\", displayYesNo = false, voucherCheck, showAlternativeName = false } = settings;\r\n const validity = validations.find((v) => v.id == contentModuleId);\r\n const prevProps = usePrevious(props);\r\n\r\n //const order = orders[activePersonNo];\r\n const order = useMemo(() => {\r\n return orders[activePersonNo];\r\n }, [props.orders, orders, activePersonNo]);\r\n const breakout = breakouts.find((q) => q.eventId == eventId);\r\n const eventRejected = useMemo(() => {\r\n return Boolean(order?.orderExtra?.find((oe) => oe.name === \"EventRejected\" && oe.value == eventId));\r\n }, [order, order?.orderExtra]);\r\n const activeDisplaySettings = useMemo(() => {\r\n if (overrideDisplay) {\r\n const o = {};\r\n for (const key in displayEventSettings) {\r\n if (Object.hasOwnProperty.call(displayEventSettings, key)) {\r\n o[key] = settings[toCamelCase(key)] === true;\r\n }\r\n }\r\n return o;\r\n } else {\r\n return displayEventSettings;\r\n }\r\n }, [\r\n overrideDisplay,\r\n displayEventSettings,\r\n settings?.showEventStartDateTime,\r\n settings?.showEventStartTime,\r\n settings?.showEventEndDateTime,\r\n settings?.showEventEndTime,\r\n settings?.showEventCity,\r\n settings?.showEventVenue,\r\n settings?.showEventDescription,\r\n settings?.showEventPrice,\r\n settings?.showEventName,\r\n settings?.showEventIncVat,\r\n settings?.showEventVatPrecentage,\r\n settings?.showEventVatSum,\r\n ]);\r\n\r\n if (!breakout) return null;\r\n\r\n const { name, startDateTime, endDateTime, description, amount, vatPercent, eventDisplayLanguage, deadline } = breakout;\r\n\r\n const displayLang = eventDisplayLanguage.find((x) => x.languageCode === environment.lang && x.alternative === showAlternativeName);\r\n\r\n const isDue = useMemo(() => (deadline ? +new Date(deadline) < +new Date() : false), [deadline]);\r\n\r\n useEffect(() => {\r\n if (prechecked) {\r\n checkAvailableStatus(true, true);\r\n } else {\r\n checkAvailableStatus();\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n validate();\r\n checkForOverbooking();\r\n }, [order, order?.orderRow, isFullBooked]);\r\n\r\n useEffect(() => {\r\n if (!orders?.[activePersonNo]?.badgeNo) {\r\n validate();\r\n }\r\n }, [orders, validate, activePersonNo]);\r\n\r\n useEffect(() => {\r\n if (prevProps && activePersonNo !== prevProps.activePersonNo && prechecked && orders?.length > 0) {\r\n checkAvailableStatus(true, true);\r\n }\r\n }, [activePersonNo]);\r\n\r\n const validate = useCallback(() => {\r\n let row = order?.orderRow?.find((or) => or.eventId == breakout.eventId);\r\n let isValid = true;\r\n let reason = \"\";\r\n\r\n if (isDue) {\r\n isValid = true;\r\n reason = \"due\";\r\n } else if (!isFullBooked && (readonly || hidden)) {\r\n isValid = true;\r\n return isValid;\r\n } else if (required && !row && !eventRejected) {\r\n isValid = false;\r\n reason = \"required\";\r\n }\r\n\r\n if (hasParent && typeof props.validateGroup === \"function\") {\r\n props.validateGroup({ isValid, reason });\r\n } else if (validity) {\r\n runInAction(() => {\r\n validity.valid = isValid;\r\n validity.reason = reason;\r\n });\r\n }\r\n }, [isFullBooked, readonly, hidden, required, isDue, eventRejected, hasParent, validity, order, breakout.eventId]);\r\n\r\n const checkForOverbooking = () => {\r\n const events = contentLayout.contentLayoutModules.filter((fe) => {\r\n return fe.contentModule && fe.contentModule.type === \"EVENT\" && fe.contentModule.settings.eventId !== breakout.eventId;\r\n });\r\n\r\n events.map((e) => {\r\n if (!allowOverbooking && e.pages === current.page) {\r\n let matchedEvent = breakouts.find((q) => q.eventId == e.contentModule.settings.eventId);\r\n if (matchedEvent) {\r\n if (\r\n (+new Date(matchedEvent.startDateTime) > +new Date(startDateTime) && +new Date(matchedEvent.startDateTime) < +new Date(endDateTime)) ||\r\n (+new Date(matchedEvent.endDateTime) > +new Date(startDateTime) && +new Date(matchedEvent.endDateTime) <= +new Date(endDateTime))\r\n ) {\r\n setIsReadonly(true);\r\n }\r\n }\r\n }\r\n });\r\n };\r\n\r\n const handleCheckboxChange = (value, preChecked) => {\r\n if (value === undefined) return;\r\n if (props.hasParent && settings.onlySelectOne) {\r\n props.uncheckGroupActivities(breakout.eventId);\r\n }\r\n\r\n var update = true;\r\n if (preChecked && order && order.orderRow && order.orderRow.filter((x) => x.eventId == breakout.eventId).length > 0) {\r\n update = false;\r\n }\r\n if (update) {\r\n updateOrderRow({\r\n amount: breakout.amount ?? 0,\r\n comment: \"\",\r\n discount: 0,\r\n eventId: breakout.eventId,\r\n orderId: -1,\r\n orderRowId: ((order?.orderRow?.length ?? 0) + 1) * -1,\r\n quantity: 1,\r\n status: null,\r\n vatPercent: breakout.vatPercent || 0,\r\n deleted: !value,\r\n groupId: props.hasParent ? props.parentId : null,\r\n });\r\n }\r\n checkConditions(contentLayoutModuleId);\r\n };\r\n\r\n const checkAvailableStatus = async (value, preChecked = false) => {\r\n if (value === false) {\r\n handleCheckboxChange(false);\r\n setIsFullbooked(false);\r\n } else {\r\n if (isFetching === false) {\r\n setIsFetching(true);\r\n const available = await checkEventAvailability(breakout.eventId, orders.length > 0 && orders[activePersonNo].orderId ? orders[activePersonNo].orderId : null, props.sqlStateNo, true);\r\n\r\n if (available) {\r\n checkVoucherAvailable(value, preChecked);\r\n setIsFullbooked(false);\r\n } else {\r\n setBreakoutFullbooked(breakout.eventId, true);\r\n setIsFullbooked(true);\r\n }\r\n setIsFetching(false);\r\n }\r\n }\r\n };\r\n\r\n const checkVoucherAvailable = (value, preChecked = false) => {\r\n const exhibitorId = order?.orderExtra?.find((x) => x.name == \"ExhibitorInvite\")?.value || getUrlParam(\"exi\");\r\n if (!exhibitorId && getUrlParam(\"exi\")) {\r\n exhibitorId = parseInt(getUrlParam(\"exi\"));\r\n }\r\n\r\n const personTypes = order?.personTypes?.map((x) => x.personTypeId) ?? [];\r\n if (getUrlParam(\"pti\") && (personTypes.length === 0 || !personTypes.some((x) => x == getUrlParam(\"pti\")))) {\r\n personTypes.push(parseInt(getUrlParam(\"pti\")));\r\n }\r\n if (!exhibitorId || !voucherCheck) {\r\n handleCheckboxChange(value);\r\n } else {\r\n if (isFetchingVouchers === false) {\r\n setIsFetchingVouchers(true);\r\n\r\n Axios.get(\r\n `./api/exhibitor/availableVouchers/${breakout.eventId}${orders.length > 0 && orders[activePersonNo].orderId ? \"/\" + orders[activePersonNo].orderId : \"\"}?sqlStateNo=${\r\n props.sqlStateNo\r\n }&exi=${exhibitorId}&ptis=${personTypes.join(\",\")}`\r\n )\r\n .then(({ data }) => {\r\n if (data.available) {\r\n handleCheckboxChange(value, preChecked);\r\n setIsNoVouchersAvailable(false);\r\n } else {\r\n setIsNoVouchersAvailable(true);\r\n }\r\n setIsFetchingVouchers(false);\r\n })\r\n .catch((err) => {\r\n setIsFetchingVouchers(false);\r\n\r\n console.error(err);\r\n });\r\n }\r\n }\r\n };\r\n\r\n const price = (asNumber = false) => {\r\n let discountAmount = 0;\r\n\r\n let discounts = order?.discounts || [];\r\n if (order && order.orderId > 0 && order?.orderRow?.find((o) => o.eventId == breakout.eventId)) {\r\n discountAmount = order?.orderRow?.find((o) => o.eventId == breakout.eventId)?.discount;\r\n }\r\n\r\n discounts\r\n .filter((d) => (d.targetEventId == breakout.eventId && d.value != 0) || (d.targetEventId == null && d.valueType == \"Percent\" && d.value != 0))\r\n .sort((a, b) => {\r\n return a.value - b.value;\r\n })\r\n .map((d) => {\r\n discountAmount += d.valueType == \"Percent\" ? (amount - discountAmount) * (d.value / 100) : d.value;\r\n });\r\n\r\n const oldPrice = parseFloat(displayEventSettings[\"ShowEventIncVat\"] == true ? displayMoney(parseFloat(amount), vatPercent) : amount);\r\n\r\n const price = parseFloat(displayEventSettings[\"ShowEventIncVat\"] ? displayMoney(parseFloat(amount - discountAmount), vatPercent) : amount - discountAmount);\r\n\r\n if (asNumber) {\r\n return discountAmount;\r\n }\r\n\r\n if (!discountAmount) return

    {`${price} ${environment.currency}`}

    ;\r\n\r\n return (\r\n <>\r\n

    {`${oldPrice} ${environment.currency}`}

    \r\n

    {`${price > 0 ? price : 0} ${environment.currency}`}

    \r\n \r\n );\r\n };\r\n\r\n const isChecked = useMemo(\r\n () => Boolean(orders.length >= activePersonNo + 1 && orders[activePersonNo]?.orderRow?.find((or) => or.eventId == breakout.eventId && !or.deleted)),\r\n [orders, activePersonNo, breakout.eventId]\r\n );\r\n\r\n const isValid = useMemo(() => {\r\n if (vdate && (validations.find((v) => v.id === contentModuleId)?.valid === false || parentValid === false)) return false;\r\n return undefined;\r\n }, [vdate, validations, contentModuleId]);\r\n\r\n const statusLabel = useMemo(() => {\r\n if (isFullBooked) {\r\n return ;\r\n } else if (isNoVouchersAvailable) {\r\n return ;\r\n } else if (isDue) {\r\n return ;\r\n }\r\n return null;\r\n }, [isFullBooked, isNoVouchersAvailable, isDue]);\r\n\r\n if (hidden) return null;\r\n\r\n return (\r\n <>\r\n
    \r\n {displayYesNo ? (\r\n <>\r\n \r\n  \r\n \r\n \r\n ) : !isFetching && !isFetchingVouchers ? (\r\n checkAvailableStatus(e.target.checked)}\r\n icon={\r\n props.hasParent && settings.displayType === \"radio\" ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n checkedIcon={props.hasParent && settings.displayType === \"radio\" ? : }\r\n checked={isChecked}\r\n className=\"checkbox\"\r\n name=\"checkedA\"\r\n />\r\n ) : (\r\n \r\n )}\r\n
    \r\n\r\n
    \r\n {statusLabel &&

    {statusLabel}

    }\r\n
    \r\n {activeDisplaySettings[\"ShowEventName\"] && (\r\n

    \r\n {displayLang?.name ? displayLang.name : name}\r\n {required ? : null}\r\n

    \r\n )}\r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n {activeDisplaySettings[\"ShowEventDescription\"] ?

    {displayLang?.description ? displayLang.description : description}

    : null}\r\n
    \r\n
    \r\n
    \r\n {activeDisplaySettings[\"ShowEventPrice\"] ? price() : null}\r\n {activeDisplaySettings[\"ShowEventVatSum\"] ? (\r\n

    \r\n {`${Math.round(vatPercent ? amount * (vatPercent / 100) : 0, 2)} ${environment.currency}`}\r\n

    \r\n ) : null}\r\n {activeDisplaySettings[\"ShowEventVatPrecentage\"] ? (\r\n

    \r\n {`${vatPercent || 0}%`}\r\n

    \r\n ) : null}\r\n
    \r\n \r\n );\r\n});\r\n","import { Tooltip } from \"@material-ui/core\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React, { useState, useRef, useEffect } from \"react\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\n\r\n\r\nexport const SubmitButton = observer((props) => {\r\n const [disableButton, setDisableButton] = useState(false);\r\n const { validations, register, environment, settings, current, triggerValidation, activePersonNo, orders, checkInvoiceValidation, getFilteredValidations, grpRegDisabled = false } = props;\r\n const { texts } = settings;\r\n const registerCallbackRef = useRef();\r\n let isValid = getFilteredValidations() == 0;\r\n\r\n useEffect(() => {\r\n registerCallbackRef.current = registerCallback;\r\n // props.checkMainEventBookingStatus()\r\n })\r\n useEffect(() => {\r\n if (props.mainEventFullbooked && !disableButton) {\r\n setDisableButton(true);\r\n }\r\n }, [props?.mainEventFullbooked])\r\n const registerCallback = () => {\r\n setDisableButton(false);\r\n }\r\n return (\r\n }\r\n disableHoverListener={!grpRegDisabled}\r\n >\r\n {\r\n //this code is repeated in 3 modules, change it\r\n if (isValid) {\r\n if (!grpRegDisabled) {\r\n register(() => registerCallbackRef.current());\r\n setDisableButton(true);\r\n }\r\n } else {\r\n triggerValidation();\r\n }\r\n }}\r\n >\r\n {texts ? texts[environment.lang] : settings.register[environment.lang]}\r\n \r\n \r\n\r\n );\r\n});\r\n","import { Button } from \"@material-ui/core\";\r\nimport { runInAction } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React from \"react\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\n\r\nexport const PreviousPage = observer(({ current, text, setActivePage }) => {\r\n return (\r\n
    \r\n \r\n // runInAction(() => {\r\n // current.activePage -= 1;\r\n // })\r\n setActivePage(current.activePage-1)\r\n }\r\n >\r\n {text || }\r\n \r\n
    \r\n );\r\n});\r\n","import { Button, Tooltip } from \"@material-ui/core\";\r\nimport { runInAction } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React from \"react\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\n\r\nexport const ForwardPage = observer(({ current, contentLayout, text, triggerValidation, validations, checkInvoiceValidation, grpRegDisabled = false, setActivePage, getFilteredValidations }) => {\r\n let isValid = getFilteredValidations().length == 0;\r\n return (\r\n }\r\n disableHoverListener={!grpRegDisabled}\r\n >\r\n
    \r\n \r\n runInAction(() => {\r\n isValid = checkInvoiceValidation(isValid);\r\n if (isValid) {\r\n triggerValidation(false);\r\n if (!grpRegDisabled) {\r\n setActivePage(current.activePage+1)\r\n }\r\n } else {\r\n triggerValidation();\r\n }\r\n })\r\n }\r\n >\r\n {text || }\r\n \r\n
    \r\n \r\n );\r\n});\r\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\r\nimport { defaultInvoiceFields } from \"../../constants/invoiceFields.constants\";\r\nimport CustomInput from \"../../components/CustomInput\";\r\nimport { deepClone, toCamelCase } from \"../../helpers/objectHelper\";\r\nimport { runInAction } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { invoiceFieldValidator } from \"../../helpers/inputValidator.helper\";\r\n\r\nexport const InvoiceFields = observer((props) => {\r\n const { activePersonNo, orders, updateOrder, validations, environment, validate } = props;\r\n const [initValidation, setInitValidation] = useState(true);\r\n\r\n useEffect(() => {\r\n if (orders && orders[activePersonNo]?.badgeNo && initValidation) {\r\n setInitValidation(false);\r\n defaultInvoiceFields.map((di) => {\r\n let value = getFieldValue(di);\r\n handleValueChange(value, di);\r\n });\r\n }\r\n }, [orders]);\r\n\r\n const handleValueChange = (value, t) => {\r\n const validity = validations.find((v) => v.id == `INVOICE_${t}`);\r\n\r\n let order = orders[activePersonNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[\"invoice\"];\r\n let newType = undefined;\r\n\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n newType[toCamelCase(t)] = value;\r\n newOrder[\"invoice\"] = newType;\r\n\r\n updateOrder(newOrder);\r\n\r\n //validate\r\n let isValid = invoiceFieldValidator(value, t, newType.countryCode ?? null);\r\n if (t == \"CountryCode\") {\r\n const orgNoValidity = validations.find((v) => v.id == `INVOICE_OrgNo`);\r\n runInAction(() => {\r\n orgNoValidity.valid = invoiceFieldValidator(newType[toCamelCase(\"OrgNo\")], \"OrgNo\", newType.countryCode);\r\n });\r\n }\r\n\r\n runInAction(() => {\r\n validity.valid = isValid;\r\n });\r\n\r\n //validate\r\n };\r\n\r\n const getFieldValue = (name) => {\r\n if (orders.length > 0) {\r\n let order = orders[activePersonNo];\r\n let type = order[\"invoice\"];\r\n if (type) {\r\n let val = type[toCamelCase(name)];\r\n if (val) {\r\n return val;\r\n }\r\n }\r\n }\r\n return \"\";\r\n };\r\n\r\n const isRequired = (type) => {\r\n switch (type) {\r\n case \"Email\":\r\n case \"Telephone1\":\r\n case \"Address2\":\r\n return false;\r\n default:\r\n return true;\r\n }\r\n };\r\n\r\n const invoiceFields = useMemo(() => {\r\n return defaultInvoiceFields.map((di) => {\r\n const validity = validations.find((v) => v.id == `INVOICE_${di}`);\r\n if (validate && validity?.valid === false) {\r\n return { type: di, valid: false };\r\n }\r\n if (validity?.valid === false && getFieldValue(di)?.length > 0) {\r\n return { type: di, valid: false };\r\n }\r\n return { type: di, valid: undefined };\r\n });\r\n }, [validations, validate, getFieldValue]);\r\n\r\n console.log(invoiceFields);\r\n\r\n return invoiceFields.map(({ type, valid }) => (\r\n \r\n (type == \"CountryCode\" ? handleValueChange(val, type) : handleValueChange(val.target.value, type))}\r\n label={type}\r\n valid={valid}\r\n staticLabel={true}\r\n type={type}\r\n lang={environment.lang}\r\n eventId={environment.eventId}\r\n />\r\n \r\n ));\r\n});\r\n","import React, { useState, useEffect } from \"react\";\r\nimport ReceiptIcon from \"@material-ui/icons/Receipt\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormGroup from \"@material-ui/core/FormGroup\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\r\nimport { runInAction } from \"mobx\";\r\nimport { InvoiceFields } from \"../InvoiceFields/InvoiceFields\";\r\nimport CreditCardIcon from \"@material-ui/icons/CreditCard\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\n\r\nconst PaymentOptions = (props) => {\r\n const [showInvoiceFields, setShowInvoiceFields] = useState(false);\r\n const [showPaymentOptions, setShowPaymentOptions] = useState(false);\r\n const [selectedOption, setSelectedOption] = useState(null);\r\n\r\n const { settings, addOrUpdate, activePersonNo, orders, updateOrder, current, contentModuleId, validations, checkHeights } = props;\r\n\r\n useEffect(() => {\r\n configureOptions();\r\n }, []);\r\n\r\n useEffect(() => {\r\n configureOptions();\r\n }, [settings.paymentMethods]);\r\n\r\n const configureOptions = () => {\r\n if (settings.paymentMethods.length > 1 && selectedOption != \"invoice\") {\r\n setShowPaymentOptions(true);\r\n } else if (settings && settings.paymentMethods && settings.paymentMethods.length === 1 && settings.paymentMethods.includes(\"invoice\")) {\r\n setShowInvoiceFields(true);\r\n runInAction(() => {\r\n current.payMethod = \"invoice\";\r\n });\r\n } else if (settings && settings.paymentMethods && settings.paymentMethods.length === 1 && settings.paymentMethods.includes(\"dibs\")) {\r\n setShowInvoiceFields(false);\r\n runInAction(() => {\r\n current.payMethod = \"dibs\";\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n checkHeights();\r\n }, [current.payMethod]);\r\n\r\n const expand = (option) => {\r\n const module = props.contentLayout.contentLayoutModules.find((clm) => clm.contentLayoutModuleId == props.contentLayoutModuleId);\r\n const validity = validations.find((v) => v.id == contentModuleId);\r\n\r\n if (!module) return;\r\n\r\n runInAction(() => {\r\n current.payMethod = option;\r\n validity.valid = true;\r\n });\r\n };\r\n\r\n if (settings.hidden) return null;\r\n if (settings.paymentMethods.length == 1 && showInvoiceFields == true) {\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n } else if (settings.paymentMethods.length > 1) {\r\n return (\r\n
    \r\n \r\n \r\n \r\n {settings.paymentMethods.map((p) => {\r\n return (\r\n \r\n {\r\n expand(p);\r\n setSelectedOption(p);\r\n },\r\n }}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n {selectedOption == \"invoice\" || current.payMethod == \"invoice\" ? : null}\r\n
    \r\n );\r\n }\r\n\r\n return null;\r\n};\r\n\r\nexport default observer(PaymentOptions);\r\n\r\nconst PaymentOptionButton = ({ option, selectOption, selectedOption, isInvoice }) => {\r\n const selectedColor = \"#2196f3\";\r\n switch (option) {\r\n case \"dibs\":\r\n return (\r\n
    \r\n {selectedOption == option ? (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n );\r\n case \"invoice\":\r\n return (\r\n
    \r\n {selectedOption == option || isInvoice ? (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n ) : null}\r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n );\r\n\r\n default:\r\n return null;\r\n }\r\n};\r\n","import React, { useState } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Dialog, DialogTitle, DialogContent, DialogActions, Button } from \"@material-ui/core\";\r\nimport EventLabel from \"./EventLabel\";\r\n\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\n\r\n\r\nexport const GLNPopup = ({ onSuccess, list }) => {\r\n const [inputValue, setInputValue] = useState(\"\");\r\n const glnList = list;\r\n const [selectedValue, setSelectedValue] = useState(glnList[0])\r\n\r\n\r\n const handleInput = (e) => {\r\n setInputValue(e.target.value);\r\n };\r\n\r\n const onClick = () => {\r\n onSuccess(selectedValue);\r\n };\r\n const onCancel = () => {\r\n onSuccess(-1);\r\n };\r\n\r\n const dropdownOnChange = (e, value) => {\r\n setSelectedValue(value);\r\n value != null ? onSuccess(value) : onSuccess(null);\r\n }\r\n\r\n\r\n //need to disable maxWidth on form-dialog-title\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n\r\n {glnList.length > 0 ?\r\n glnList.map((qo) => {\r\n return (\r\n dropdownOnChange(e, qo)} value={qo} style={{width: \"100%\"}}>\r\n
      \r\n {qo.name}\r\n
    \r\n
      \r\n {qo.gln}\r\n
    \r\n
    \r\n );\r\n }) : null}\r\n\r\n
    \r\n \r\n {/* */}\r\n \r\n \r\n
    \r\n );\r\n};\r\n","import { toCamelCase } from \"../../helpers/objectHelper\"; // deepClone,\r\nimport { invoiceFieldValidator } from \"../../helpers/inputValidator.helper\";\r\n\r\nexport function getFieldValue(name, orders, activePersonNo) {\r\n if (orders?.length > 0) {\r\n const order = orders[activePersonNo];\r\n const type = order[\"invoice\"];\r\n if (type) {\r\n const val = type[toCamelCase(name)];\r\n if (val) {\r\n return val;\r\n }\r\n }\r\n }\r\n return \"\";\r\n}\r\n\r\nexport function isValid(type, value, countryCode = null, data = null, company = true) {\r\n let generalValidity = !invoiceFieldValidator(value, type, countryCode, type == \"Telephone1\" ? data : \"\", company);\r\n return generalValidity;\r\n}\r\n\r\nexport function unpush(list, target) {\r\n return list.splice(list.indexOf(target), 1);\r\n}\r\n\r\nexport function glnSuccess() {}\r\n\r\nexport function isGovernment(orgno, countryCode = null) {\r\n let compareTo = orgno.substring(0, 1);\r\n if (!countryCode || countryCode == \"SE\" || countryCode == \"SWE\") {\r\n return compareTo == \"2\";\r\n } else {\r\n return compareTo == \"2\";\r\n }\r\n}\r\n\r\nexport function convertAutocomplete(value) {\r\n try {\r\n switch (value.toLowerCase()) {\r\n case \"name\":\r\n return \"CompanyName\";\r\n case \"telephone1\":\r\n return \"RefNo\";\r\n case \"address1\":\r\n case \"address2\":\r\n return \"Address\";\r\n case \"zip\":\r\n return \"Zip code\";\r\n default:\r\n break;\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n return value;\r\n }\r\n}\r\n","import React, { useEffect, useState, useRef, useMemo, useCallback } from \"react\";\r\nimport CustomInput from \"../../components/CustomInput\";\r\nimport { deepClone, toCamelCase } from \"../../helpers/objectHelper\";\r\nimport { runInAction, toJS } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { invoiceFieldValidator, hasOrgNoValidation } from \"../../helpers/inputValidator.helper\";\r\nimport Axios from \"axios\";\r\nimport { Button } from \"reactstrap\";\r\nimport { GLNPopup } from \"../../components/GLNPopup\";\r\nimport { isValid, getFieldValue, isGovernment, convertAutocomplete } from \"./InvoiceFieldHelpers\"; //unpush, glnSuccess,\r\nimport EventLabel, { GetEventLabelValueFn } from \"../../components/EventLabel\";\r\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\r\n\r\nexport const InvoiceFieldsNew = observer((props) => {\r\n const {\r\n activePersonNo,\r\n orders,\r\n updateOrder,\r\n environment,\r\n settings,\r\n currentType,\r\n selectedCountry,\r\n selectedOption,\r\n checkHeights,\r\n invoiceAnchor,\r\n mainEvent,\r\n validatePaymentFields,\r\n eventLabels,\r\n validations,\r\n validate,\r\n updateEventLabels,\r\n } = props;\r\n\r\n const [showGLNWindow, setShowGLNWindow] = useState(false);\r\n const [glnOrgFields, setGlnOrgFields] = useState([]);\r\n const [invoiceFields, setInvoiceFields] = useState([]);\r\n const initialRegex = /^[a-zA-Z0-9\\-\\s]{1,25}$/;\r\n const [currentRegex, setCurrentRegex] = useState(initialRegex);\r\n const [currentInfo, setCurrentInfo] = useState(null);\r\n const [GLNList, setGLNList] = useState([]);\r\n const [validFields, setValidFields] = useState(false);\r\n const paymentType = currentType;\r\n const [lastValidVatNo, setLastValidVatNo] = useState(\"\");\r\n const [showEmail, setShowEmail] = useState(false);\r\n const [refNoWarning, setRefNoWarning] = useState(false);\r\n const [currentLeaderNo, setCurrentLeaderNo] = useState(activePersonNo);\r\n const [lockGLN, setLockGLN] = useState(true);\r\n const [applySweVat, setApplySweVat] = useState(false);\r\n const [applyEuVat, setApplyEuVat] = useState(false);\r\n const [vatNoStatus, setVatNoStatus] = useState(false);\r\n const [timerExpired, setTimerExpires] = useState(false);\r\n const [orgNoValid, setOrgNoValid] = useState(null);\r\n const [showVatField,setShowVatField] = useState(false);\r\n\r\n const orgNoRef = useRef(\"\");\r\n const glnFieldPlaceholder = useMemo(() => GetEventLabelValueFn({ name: \"GLNPlaceholder\", groupName: \"CMS.Payment\" }, eventLabels, environment, updateEventLabels), [eventLabels]);\r\n\r\n useEffect(() => {\r\n checkHeights();\r\n finalValid();\r\n }, [validations, validations?.length, selectedOption, currentType, selectedCountry, validatePaymentFields]);\r\n\r\n useEffect(() => {\r\n var fono = 0;\r\n let o = orders[currentLeaderNo]?.invoice?.orgNo;\r\n if (o && o.length > 1) {\r\n fono = o.substring(0, 2);\r\n }\r\n if (currentType != \"person\" && settings.swevat && selectedCountry.swedishCountry && (fono == 20 || fono == 21 || fono == 23) && validations.find((v) => v.id == \"INVOICE_OrgNo\")?.valid) {\r\n //we know we're a swedish country, and that the settings is active, and that we're an applicable type.\r\n setApplySweVat(true);\r\n if (orders[currentLeaderNo]?.orderExtra && orders[currentLeaderNo]?.orderExtra?.length == 0) {\r\n applyVat();\r\n }\r\n } else {\r\n setApplySweVat(false);\r\n }\r\n if (!validations.find((v) => v.id == \"INVOICE_OrgNo\")?.valid && orders[currentLeaderNo]?.invoice?.orgNo && orgNoRef.current != orders[currentLeaderNo]?.invoice?.orgNo) {\r\n orgNoRef.current = orders[currentLeaderNo].invoice.orgNo;\r\n handleValueChange(orders[currentLeaderNo].invoice.orgNo, \"orgNo\");\r\n }\r\n }, [orders, validations, currentLeaderNo]);\r\n\r\n useEffect(() => {\r\n if (glnOrgFields.length > 1) {\r\n checkHeights();\r\n setTimeout(scrollToAnchor, 500);\r\n }\r\n }, [invoiceFields.length, glnOrgFields.length]);\r\n\r\n const scrollToAnchor = () => {\r\n invoiceAnchor.current?.scrollIntoView({ behavior: \"smooth\", block: \"end\", inline: \"nearest\" });\r\n };\r\n\r\n useEffect(() => {\r\n let current = orders.filter((a) => a.leader)[0];\r\n let index = -1;\r\n if (current) {\r\n index = orders.indexOf(current);\r\n }\r\n if (index != -1) {\r\n setCurrentLeaderNo(index);\r\n } else {\r\n setCurrentLeaderNo(activePersonNo);\r\n if (!validations.find((v) => v.label == \"PaymentOption\").valid) {\r\n finalValid();\r\n }\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n if (timerExpired) {\r\n handleValueChange(orders[currentLeaderNo].invoice.name, \"Name\");\r\n setTimerExpires(false);\r\n }\r\n }, [timerExpired]);\r\n\r\n const applyVat = () => {\r\n if (orders.length == 0) {\r\n return;\r\n }\r\n var newOrder = deepClone(orders[currentLeaderNo]);\r\n var type = newOrder[\"orderExtra\"];\r\n var newType = undefined;\r\n if (!type) {\r\n newType = [];\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n if (applySweVat || applyEuVat) {\r\n let vatno = newOrder[\"invoice\"]?.vatNo;\r\n newType = vatno\r\n ? [\r\n { name: \"vatExempt\", value: true, value2: \"\" },\r\n { name: \"vatNo\", value: vatno, value2: \"\" },\r\n ]\r\n : [\r\n { name: \"vatExempt\", value: true, value2: \"\" },\r\n { name: \"sweVat\", value: true, value2: \"\"},\r\n ];\r\n newOrder[\"orderExtra\"] = newType;\r\n runInAction(() => {\r\n updateOrder(newOrder, currentLeaderNo);\r\n });\r\n } else {\r\n newType = [];\r\n newOrder[\"orderExtra\"] = newType;\r\n runInAction(() => {\r\n updateOrder(newOrder, currentLeaderNo);\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n applyVat();\r\n }, [applySweVat, applyEuVat]);\r\n\r\n useEffect(() => {\r\n if(props.breakouts && props.contentLayout){\r\n const layoutIds = props.contentLayout.contentLayoutModules.filter(x => x.contentModule.type==\"EVENT\").map(x => x.contentModule.settings.eventId)\r\n const breakouts = props.breakouts.filter(x => layoutIds.includes(x.eventId));\r\n console.log(breakouts.some(x => x.allowReverseCharge))\r\n setShowVatField(breakouts.some(x => x.allowReverseCharge));\r\n }\r\n },[props.breakouts,props.contentLayout]);\r\n\r\n //when it's loaded\r\n useEffect(() => {\r\n if (selectedOption != \"\" && currentType != \"\") {\r\n //find if we're comgov/pers here, and then display the correct fields\r\n if (selectedOption != \"dibs\" && selectedOption != \"stripe\") {\r\n setLastValidVatNo(\"\");\r\n setVatNoStatus(\"\");\r\n let f = [];\r\n if (currentType == \"person\") {\r\n f = [\"Name\", \"Address1\", \"Address2\", \"Zip\", \"City\", \"Email\"];\r\n setInvoiceFields(f);\r\n setGlnOrgFields([]);\r\n runInAction(() => {\r\n validations.find((v) => v.id == \"INVOICE_Telephone1\").valid = true;\r\n validations.find((v) => v.id == \"INVOICE_OrgNo\").valid = true;\r\n });\r\n checkHeights();\r\n } else {\r\n orgNoRef.current = \"\";\r\n var shouldValidateOrgNo = hasOrgNoValidation(selectedCountry?.countryCode);\r\n if (!glnOrgFields.includes(\"GLN\")) {\r\n setGlnOrgFields([\"OrgNo\"]);\r\n }\r\n if (invoiceFields.length > 0 && shouldValidateOrgNo) {\r\n setInvoiceFields([]);\r\n }\r\n if (!shouldValidateOrgNo) {\r\n var newFields = [\"Name\", \"Telephone1\", \"Address1\", \"Address2\", \"Zip\", \"City\", \"Email\"];\r\n if (showVatField && europeVAT()) {\r\n newFields.push(\"vatNo\");\r\n }\r\n setInvoiceFields(newFields);\r\n }\r\n if (orders[currentLeaderNo]?.invoice?.orgNo && orders[currentLeaderNo].invoice.orgNo.length > 0) {\r\n handleValueChange(orders[currentLeaderNo].invoice.orgNo, \"OrgNo\");\r\n }\r\n }\r\n } else {\r\n setGlnOrgFields([]);\r\n setInvoiceFields([]);\r\n setLastValidVatNo(\"\");\r\n setVatNoStatus(\"\");\r\n }\r\n\r\n checkHeights();\r\n\r\n const tempOrders = deepClone(orders[currentLeaderNo]);\r\n\r\n runInAction(() => {\r\n updateOrder(tempOrders, currentLeaderNo);\r\n });\r\n }\r\n }, [selectedOption, currentType, selectedCountry, showVatField]);\r\n\r\n useEffect(() => {\r\n var currentVatNo = getFieldValue(\"vatNo\", orders, currentLeaderNo);\r\n if (currentVatNo == lastValidVatNo && lastValidVatNo != \"\") {\r\n if (mainEvent.allowReverseCharge || true) {\r\n setApplyEuVat(true);\r\n setVatNoStatus(\"ok\");\r\n }\r\n } else if (currentVatNo != lastValidVatNo && lastValidVatNo != \"\" && currentVatNo.length > 0) {\r\n setApplyEuVat(false);\r\n setVatNoStatus(\"error\");\r\n } else {\r\n setApplyEuVat(false);\r\n setVatNoStatus(\"\");\r\n }\r\n }, [lastValidVatNo, orders]);\r\n\r\n const loadVatNo = (no) => {\r\n let key = \"26e46901d1bb903a5b69fc1eba05046f\";\r\n var lastValid = \"!\";\r\n\r\n Axios.get(`https://euvatapi.com/api/v1/validate?access_key=${key}&vat_number=${no}`)\r\n .then((res) => {\r\n if ((res.status = 200)) {\r\n if (res.data.valid) {\r\n setLastValidVatNo(no);\r\n return;\r\n } else {\r\n console.error(\"VAT failed validation\");\r\n }\r\n } else {\r\n console.error(\"VAT failed validation\");\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(err);\r\n });\r\n setLastValidVatNo(lastValid);\r\n };\r\n\r\n const finalValid = () => {\r\n runInAction(() => {\r\n let filteredValidations = validations.filter((v) => !String(v.id).includes(\"Telephone1\"));\r\n if (currentType != \"person\") {\r\n filteredValidations = validations;\r\n }\r\n let fails = filteredValidations.filter((v) => v.valid == false && String(v.id).includes(\"INVOICE_\"));\r\n filteredValidations.find((v) => v.label == \"PaymentOption\").valid = fails.length == 0 || selectedOption == \"dibs\" || selectedOption === \"stripe\" ? true : false;\r\n });\r\n if (selectedOption != \"\") {\r\n var order = orders[currentLeaderNo];\r\n var newOrder = deepClone(order);\r\n var type = newOrder[\"invoice\"];\r\n var newType = undefined;\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n var p = true;\r\n if (selectedOption == \"dibs\") {\r\n newType = {};\r\n p = true;\r\n } else if (selectedOption === \"stripe\") {\r\n newType = {};\r\n p = true;\r\n } else if (selectedOption == \"invoice\" && validFields) {\r\n let em = newType[\"email\"] == undefined ? \"\" : newType[\"email\"];\r\n if (invoiceFieldValidator(em, \"Email\")) {\r\n newType[\"inExchangeRecipentId\"] = \"\";\r\n }\r\n p = true;\r\n }\r\n if (p) {\r\n runInAction(() => {\r\n let filteredValidations = validations.filter((v) => !String(v.id).includes(\"Telephone1\"));\r\n if (currentType != \"person\") {\r\n filteredValidations = validations;\r\n }\r\n let fails = filteredValidations.filter((v) => v.valid == false && String(v.id).includes(\"INVOICE_\"));\r\n let willBeValid = fails == 0;\r\n\r\n if (currentType != \"person\") {\r\n if ((!orders[currentLeaderNo]?.invoice?.orgNo || orders[currentLeaderNo]?.invoice?.orgNo.length < 1) && ognRequired(\"OrgNo\")) {\r\n filteredValidations.find((v) => v.id == \"INVOICE_OrgNo\").valid = false;\r\n willBeValid = false;\r\n } else {\r\n filteredValidations.find((v) => v.id == \"INVOICE_OrgNo\").valid = true;\r\n }\r\n }\r\n\r\n if (willBeValid && !order.isActive) orders[currentLeaderNo].isActive = \"temp\";\r\n filteredValidations.find((v) => v.label == \"PaymentOption\").valid = willBeValid || selectedOption == \"dibs\" || selectedOption === \"stripe\" ? true : false;\r\n });\r\n }\r\n }\r\n };\r\n\r\n //final validation\r\n useEffect(() => {\r\n finalValid();\r\n }, [selectedOption, paymentType, orders, validFields, showGLNWindow]);\r\n\r\n // This component has grown to complex, because of the many different states and effects that are needed to make it work.\r\n // I can not understand why this component is so complex, and I think it should be refactored to be more simple.\r\n // This effect checks if the orgnNo is valid based on if there is fields generated based on the input, if valid there will be invoice fields.\r\n // This is a work around and it is not a good solution.\r\n useEffect(() => {\r\n if (hasOrgNoValidation(selectedCountry.countryCode) && orgNoRef?.current?.length >= 4 && invoiceFields.length === 0) {\r\n setOrgNoValid(false);\r\n } else setOrgNoValid(true);\r\n }, [ognRequired, orgNoRef, selectedCountry, invoiceFields]);\r\n\r\n const handleValueChange = (v, t) => {\r\n let order = orders[currentLeaderNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[\"invoice\"];\r\n let newType = undefined;\r\n let value = v;\r\n\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n if (t === \"OrgNo\") {\r\n value = value.replace(/[^0-9.]/g, \"\");\r\n }\r\n\r\n let isValid = invoiceFieldValidator(value, t, selectedCountry.countryCode, t == \"Telephone1\" ? currentRegex : \"\", currentType);\r\n\r\n if (!newType[\"countryId\"]) {\r\n newType[\"countryId\"] = selectedCountry.value;\r\n }\r\n\r\n if (t == \"OrgNo\" && isValid && currentType != \"person\") {\r\n if (orgNoRef.current != value) {\r\n if (orgNoRef.current != \"\" && hasOrgNoValidation(selectedCountry.countryCode)) {\r\n newType = {};\r\n }\r\n }\r\n orgNoRef.current = value;\r\n }\r\n\r\n if (t == \"OrgNo\" && isValid && currentType != \"person\") {\r\n let d = \"\";\r\n if (settings.paymentGrid[selectedCountry?.name?.toLowerCase()] != undefined) {\r\n d = settings.paymentGrid[selectedCountry.name.toLowerCase()];\r\n } else {\r\n d = settings.paymentGrid[\"global\"];\r\n }\r\n if (!glnOrgFields.includes(\"GLN\")) {\r\n let fieldsToAdd = [\"OrgNo\"];\r\n if (selectedCountry.swedishCountry) {\r\n fieldsToAdd.push(\"GLN\");\r\n }\r\n\r\n setGlnOrgFields(fieldsToAdd);\r\n }\r\n if (hasOrgNoValidation(selectedCountry.countryCode)) {\r\n Axios.get(`./api/invoice/testexchange/${value}?eventId=${environment.eventId}`)\r\n .then((res) => {\r\n if ((res.status = 200)) {\r\n if (res.data.parties.length > 0) {\r\n if (res.data.parties.length > 1) {\r\n setLockGLN(true);\r\n var cGLN = orders[currentLeaderNo]?.invoice?.gLN;\r\n if (!cGLN) {\r\n cGLN = orders[currentLeaderNo]?.invoice?.gln;\r\n }\r\n if (cGLN) {\r\n let r = res.data.parties.find((a) => a.gln == cGLN);\r\n setGLNList([r]);\r\n onSuccess(r);\r\n } else {\r\n setGLNList(res.data.parties.sort((a, b) => a.name > b.name && (1 || -1)));\r\n }\r\n } else {\r\n setGLNList([res.data.parties[0]]);\r\n setLockGLN(true);\r\n onSuccess(res.data.parties[0]);\r\n }\r\n } else {\r\n setGLNList([]);\r\n onSuccess(null);\r\n setLockGLN(false);\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n setLockGLN(false);\r\n console.error(err);\r\n });\r\n\r\n let on = value.replace(\"-\", \"\").replace(\" \", \"\");\r\n Axios.get(`./api/invoice/GetOrgRegex/${on.slice(0, 6) + \"-\" + on.slice(6)}`)\r\n .then((res) => {\r\n if ((res.status = 200)) {\r\n if (res.data) {\r\n setCurrentRegex(RegExp(res.data));\r\n } else {\r\n setCurrentRegex(initialRegex);\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(err);\r\n setCurrentRegex(initialRegex);\r\n });\r\n\r\n Axios.get(`./api/invoice/GetOrgInfo/${on.slice(0, 6) + \"-\" + on.slice(6)}`)\r\n .then((res) => {\r\n if ((res.status = 200)) {\r\n if (res.data) {\r\n setCurrentInfo(res.data);\r\n } else {\r\n setCurrentInfo(null);\r\n }\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(err);\r\n setCurrentInfo(null);\r\n });\r\n } else {\r\n if (invoiceFields.length < 3) {\r\n setGLNList([]);\r\n setLockGLN(false);\r\n onSuccess(null);\r\n }\r\n }\r\n } else if (t == \"OrgNo\" && !isValid && currentType != \"person\") {\r\n if (glnOrgFields.includes(\"GLN\")) {\r\n setGlnOrgFields([\"OrgNo\"]);\r\n }\r\n var shouldValidateOrgNo = hasOrgNoValidation(selectedCountry?.countryCode);\r\n if (shouldValidateOrgNo) {\r\n setInvoiceFields([]);\r\n }\r\n newType = {};\r\n }\r\n\r\n newType[toCamelCase(t)] = value;\r\n newOrder[\"invoice\"] = newType;\r\n updateOrder(newOrder, currentLeaderNo);\r\n\r\n runInAction(() => {\r\n var tempV = validations.find((v) => v.id == \"INVOICE_\" + t);\r\n if (tempV) {\r\n tempV.valid = isValid;\r\n }\r\n\r\n let filteredValidations = validations.filter((v) => !String(v.id).includes(\"Telephone1\"));\r\n if (currentType != \"person\") {\r\n filteredValidations = validations;\r\n }\r\n let fails = filteredValidations.filter((v) => v.valid == false && String(v.id).includes(\"INVOICE_\") && !String(v.id).includes(t));\r\n fails = fails + (isValid ? 0 : 1);\r\n filteredValidations.find((v) => v.label == \"PaymentOption\").valid = fails == 0 || selectedOption == \"dibs\" || selectedOption === \"stripe\" ? true : false;\r\n });\r\n\r\n if (isValid) {\r\n //full validation\r\n var allAreValid = true;\r\n let toValidate = validations.filter((v) => v.id.toString().includes(\"INVOICE_\"));\r\n for (let i = 0; i < toValidate.length; i++) {\r\n let tar = toValidate[i].id.split(\"_\")[1];\r\n let val = newType[toCamelCase(tar)];\r\n let v = invoiceFieldValidator(val == undefined ? \"\" : val, tar, selectedCountry.countryCode, tar == \"Telephone1\" ? currentRegex : \"\", currentType);\r\n if (!v) {\r\n if (currentType == \"person\" && (tar == \"Telephone1\" || tar == \"OrgNo\")) {\r\n //currently this validates ALL REF NOs but we still warn if incorrect\r\n v = true;\r\n } else if ((tar == \"Email\" && newType[\"electronicInvoice\"]) || newType[\"inExchangeRecipentId\"]?.length > 0) {\r\n v = true;\r\n } else if (tar == \"GLN\") {\r\n if (selectedCountry.countryCode != \"SWE\" || GLNList.length == 0) {\r\n v = true;\r\n }\r\n } else if (tar == \"GLN\" && paymentType == \"person\") {\r\n v = true;\r\n } else if (tar == \"Address2\" || tar == \"Address1\") {\r\n v = true;\r\n } else if (tar == \"CountryCode\" && paymentType == \"person\") {\r\n v = true;\r\n }\r\n if (!v) {\r\n allAreValid = false;\r\n }\r\n }\r\n runInAction(() => {\r\n toValidate[i].valid = v;\r\n });\r\n }\r\n setValidFields(allAreValid);\r\n if (allAreValid) {\r\n finalValid();\r\n }\r\n }\r\n };\r\n\r\n //selected a GLN number\r\n const onSuccess = (obj) => {\r\n setShowGLNWindow(false);\r\n if (obj == -1) {\r\n return;\r\n }\r\n\r\n let f = [\"Name\", \"Telephone1\", \"Address1\", \"Address2\", \"Zip\", \"City\"]; //,\"InExchangeRecipentId\",\"ElectronicInvoice\"\r\n\r\n let cc = obj ? (obj.countryCode == \"SE\" ? \"SWE\" : obj.countryCode) : selectedCountry.countryCode;\r\n if (obj != null && cc == selectedCountry.countryCode) {\r\n let order = orders[currentLeaderNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[\"invoice\"];\r\n let newType = undefined;\r\n\r\n if (!type) {\r\n newType = {};\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n newType[toCamelCase(\"InExchangeRecipentId\")] = obj.companyId;\r\n newType[toCamelCase(\"vatNo\")] = obj.vatNo;\r\n newType[toCamelCase(\"ElectronicInvoice\")] = obj.receiveElectronicInvoiceCapability == \"ReceivingElectronicInvoices\" ? true : false;\r\n newType[toCamelCase(\"Address1\")] = obj.streetName;\r\n newType[toCamelCase(\"Zip\")] = obj.postalZone;\r\n newType[toCamelCase(\"City\")] = obj.city;\r\n newType[toCamelCase(\"Name\")] = obj.name;\r\n newType[toCamelCase(\"GLN\")] = obj.gln;\r\n newType[toCamelCase(\"Telephone1\")] = newType[\"telephone1\"] ? newType[\"telephone1\"] : \"\";\r\n newType[toCamelCase(\"CountryId\")] = selectedCountry.value; // obj.countryCode == \"SE\" ? \"SWE\" : obj.countryCode;\r\n newType[toCamelCase(\"Email\")] = newType[toCamelCase(\"ElectronicInvoice\")] ? \"\" : obj.email;\r\n\r\n if (obj.receiveElectronicInvoiceCapability != \"ReceivingElectronicInvoices\") {\r\n f.push(\"Email\");\r\n }\r\n\r\n newOrder[\"invoice\"] = newType;\r\n runInAction(() => {\r\n updateOrder(newOrder, currentLeaderNo);\r\n });\r\n } else {\r\n checkHeights();\r\n setGlnOrgFields([\"OrgNo\"]);\r\n f.push(\"Email\");\r\n runInAction(() => {\r\n updateOrder(orders[currentLeaderNo], currentLeaderNo);\r\n });\r\n }\r\n if (showVatField && europeVAT()) {\r\n f.push(\"vatNo\");\r\n }\r\n setInvoiceFields(f);\r\n scrollToAnchor();\r\n\r\n setTimeout(() => {\r\n finalValid();\r\n setTimerExpires(true);\r\n }, 500);\r\n };\r\n\r\n const toggleWindow = () => {\r\n setShowGLNWindow(!showGLNWindow);\r\n };\r\n\r\n const ivfRequired = (di) => {\r\n if (di == \"vatNo\") {\r\n return !applyEuVat;\r\n }\r\n if (di == \"Address1\") {\r\n return false;\r\n } else if (di == \"OrgNo\" && paymentType == \"person\") {\r\n //SSN check here\r\n return isValid(di, getFieldValue(di, orders, currentLeaderNo), selectedCountry.countryCode, di == \"Telephone1\" ? currentRegex : \"\", currentType);\r\n } else if (di == \"Telephone1\") {\r\n if (getFieldValue(di, orders, currentLeaderNo).length > 0 && currentRegex) {\r\n return !currentRegex.test(String(getFieldValue(di, orders, currentLeaderNo)));\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return isValid(di, getFieldValue(di, orders, currentLeaderNo), selectedCountry.countryCode, di == \"Telephone1\" ? currentRegex : \"\", currentType);\r\n }\r\n };\r\n\r\n const ognRequired = (di) => {\r\n if (selectedCountry?.countryCode?.toUpperCase() !== \"SWE\" || selectedCountry?.countryCode?.toUpperCase() !== \"NOR\") {\r\n return false;\r\n }\r\n\r\n if (di == \"GLN\" && GLNList.length == 0) {\r\n return false;\r\n } else if (di == \"OrgNo\" && paymentType == \"comgov\") {\r\n let c = isGovernment(getFieldValue(di, orders, currentLeaderNo), selectedCountry.countryCode) ? \"government\" : \"company\";\r\n c = \"comgov\";\r\n let d = \"\";\r\n if (settings.paymentGrid[selectedCountry?.name?.toLowerCase()] != undefined) {\r\n d = settings.paymentGrid[selectedCountry?.name?.toLowerCase()];\r\n } else {\r\n d = settings.paymentGrid[\"global\"];\r\n }\r\n if (!d.includes(c)) {\r\n return true;\r\n } else {\r\n return isValid(di, getFieldValue(di, orders, currentLeaderNo), selectedCountry.countryCode, null, currentType);\r\n }\r\n } else {\r\n return isValid(di, getFieldValue(di, orders, currentLeaderNo), selectedCountry.countryCode, null, currentType);\r\n }\r\n };\r\n\r\n const onEmail = () => {\r\n let b = !showEmail;\r\n setShowEmail(b);\r\n\r\n let f = [...invoiceFields];\r\n\r\n if (b) {\r\n if (!invoiceFields.includes(\"Email\")) {\r\n f.push(\"Email\");\r\n }\r\n } else {\r\n if (invoiceFields.includes(\"Email\")) {\r\n f.splice(f.indexOf(\"Email\"), 1);\r\n handleValueChange(\"\", \"Email\");\r\n }\r\n }\r\n if (f.includes(\"vatNo\")) {\r\n f.splice(f.indexOf(\"vatNo\"), 1);\r\n f.push(\"vatNo\");\r\n }\r\n\r\n setInvoiceFields(f);\r\n };\r\n\r\n const emailBool = () => {\r\n let b = true;\r\n if (\r\n invoiceFields.length < 1 ||\r\n selectedOption == \"\" ||\r\n (paymentType == \"person\" && selectedOption == \"dibs\") ||\r\n (paymentType == \"person\" && selectedOption == \"stripe\") ||\r\n (paymentType == \"person\" && selectedOption == \"invoice\") ||\r\n isGovernment(getFieldValue(\"orgNo\", orders, currentLeaderNo), selectedCountry.countryCode) ||\r\n ((paymentType == \"comgov\" || paymentType == \"company\") && GLNList.length == 0) ||\r\n (getFieldValue(\"electronicInvoice\", orders, currentLeaderNo), selectedCountry.countryCode)\r\n ) {\r\n b = false;\r\n }\r\n return b;\r\n };\r\n\r\n const vatNoBlur = (e) => {};\r\n\r\n const refNoBlur = (e) => {\r\n if (ivfRequired(\"Telephone1\") && String(currentRegex) != String(initialRegex)) {\r\n setRefNoWarning(true);\r\n } else {\r\n setRefNoWarning(false);\r\n }\r\n };\r\n\r\n const refNoFocus = (e) => {\r\n checkHeights();\r\n setRefNoWarning(false);\r\n };\r\n\r\n const infoPaneIsLink = (info) => {\r\n const l = info.toLowerCase();\r\n if (info && (l.startsWith(\"http\") || l.startsWith(\"www\") || l.endsWith(\".com\") || l.endsWith(\".net\") || l.endsWith(\".se\"))) {\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n const europeVAT = () => {\r\n const eventCountry = environment.eventCountry;\r\n return selectedCountry && selectedCountry?.europeCountry && eventCountry?.europeCountry && (selectedCountry.value !=eventCountry?.countryId)\r\n }\r\n\r\n const validateVatNo = () => loadVatNo(getFieldValue(\"vatNo\", orders, currentLeaderNo));\r\n\r\n const runtimeValidation = useCallback(\r\n (type) => {\r\n const valitypety = validations.find((v) => v.id == `INVOICE_${type}`);\r\n if (validate && valitypety?.valid === false) {\r\n return false;\r\n }\r\n if (valitypety?.valid === false && getFieldValue(type, orders, currentLeaderNo)?.length > 0) {\r\n return false;\r\n }\r\n return undefined;\r\n },\r\n [currentLeaderNo, orders, validate, getFieldValue, validations]\r\n );\r\n\r\n const validatedInvoiceFields = useMemo(() => (invoiceFields ?? [])?.map((type) => ({ type, valid: runtimeValidation(type) })), [invoiceFields, runtimeValidation]);\r\n const validatedglnOrgFields = useMemo(() => (glnOrgFields ?? [])?.map((type) => ({ type, valid: runtimeValidation(type) })), [glnOrgFields, runtimeValidation]);\r\n\r\n if (settings.hidden) {\r\n return null;\r\n } else {\r\n return (\r\n <>\r\n {validatedglnOrgFields.length > 0\r\n ? validatedglnOrgFields.map(({ type, valid }) => {\r\n return (\r\n \r\n {showGLNWindow && type == \"GLN\" ? : null}\r\n 1 ? \" pointer\" : \"\")}\r\n value={getFieldValue(type, orders, currentLeaderNo)}\r\n readonly={type == \"GLN\" ? lockGLN : false}\r\n onChange={(val) => (type == \"CountryCode\" ? handleValueChange(val, type) : handleValueChange(val?.target?.value ?? val, type))}\r\n label={type}\r\n valid={valid}\r\n staticLabel={true}\r\n type={type}\r\n invoice={true}\r\n lang={environment.lang}\r\n eventId={environment.eventId}\r\n onClick={type == \"GLN\" && GLNList.length > 1 ? toggleWindow : undefined}\r\n placeholder={type == \"GLN\" && GLNList.length > 1 ? glnFieldPlaceholder : undefined}\r\n autocomplete={convertAutocomplete(type)}\r\n />\r\n {type == \"OrgNo\" && !ognRequired(\"OrgNo\") && currentInfo ? (\r\n \r\n {infoPaneIsLink(currentInfo) ? (\r\n \r\n {currentInfo}\r\n \r\n ) : (\r\n {currentInfo}\r\n )}\r\n \r\n ) : null}\r\n {type == \"OrgNo\" && orgNoValid === false ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n );\r\n })\r\n : null}\r\n {(validatedInvoiceFields.length > 0 && selectedOption == \"invoice\") || (selectedOption == \"typebs\" && showVatField)\r\n ? validatedInvoiceFields.map(({ type, valid }) => {\r\n return (\r\n \r\n (type == \"CountryCode\" ? handleValueChange(val, type) : handleValueChange(val?.target?.value ?? val, type))}\r\n label={type == \"OrgNo\" && paymentType == \"person\" ? \"SSN\" : type == \"Name\" && paymentType == \"person\" ? \"PersonName\" : type}\r\n staticLabel={true}\r\n type={type}\r\n valid={valid}\r\n invoice={true}\r\n lang={environment.lang}\r\n eventId={environment.eventId}\r\n noLabel={type == \"InExchangeRecipentId\" || type == \"ElectronicInvoice\" || (type == \"vatNo\" && !showVatField) ? true : false}\r\n noInputField={type == \"InExchangeRecipentId\" || type == \"ElectronicInvoice\" || (type == \"vatNo\" && !showVatField) ? true : false}\r\n onBlur={type == \"vatNo\" ? vatNoBlur : type == \"Telephone1\" ? refNoBlur : null}\r\n onFocus={type == \"Telephone1\" ? refNoFocus : null}\r\n autocomplete={convertAutocomplete(type)}\r\n appendButton={\r\n type == \"vatNo\" && showVatField ? (\r\n vatNoStatus == \"ok\" ? (\r\n \r\n ) : (\r\n \r\n )\r\n ) : null\r\n }\r\n />\r\n {type == \"Telephone1\" && refNoWarning && getFieldValue(type, orders, currentLeaderNo).length > 0 ? (\r\n
    \r\n \r\n
    \r\n ) : null}\r\n
    \r\n );\r\n })\r\n : null}\r\n {selectedOption == \"dibs\" ? : null}\r\n {selectedOption == \"stripe\" ? : null}\r\n {showVatField && europeVAT() && (selectedOption == \"dibs\" || selectedOption == \"stripe\") ?\r\n <>\r\n (handleValueChange(val?.target?.value ?? val, \"vatNo\"))}\r\n label={\"vatNo\"}\r\n staticLabel={true}\r\n type={\"vatNo\"}\r\n //valid={valid}\r\n invoice={true}\r\n lang={environment.lang}\r\n eventId={environment.eventId}\r\n noLabel={!showVatField}\r\n noInputField={!showVatField}\r\n onBlur={vatNoBlur}\r\n appendButton={showVatField ? (\r\n vatNoStatus == \"ok\" ? (\r\n \r\n ) : (\r\n \r\n )\r\n ) : null\r\n }\r\n />\r\n \r\n : null}\r\n {emailBool() ? : null}\r\n \r\n );\r\n }\r\n});\r\n","import React, { useMemo } from \"react\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nimport EventLabel from \"../../../components/EventLabel\";\r\n\r\nexport const getCalculatedOrderRow = (orderRow, breakouts, orders, orderId, mainEvent, modules) => {\r\n const targetBreakout = orderRow.eventId == mainEvent.eventId ? mainEvent : breakouts.find((b) => b.eventId == orderRow.eventId);\r\n\r\n const getVatExempt = () => {\r\n const order = orders?.find((a) => a.leader) || orders?.[0];\r\n if (!order?.[\"orderExtra\"] || !targetBreakout?.allowReverseCharge) return false;\r\n return order[\"orderExtra\"].find((a) => a.name == \"vatExempt\")?.value;\r\n };\r\n\r\n const calculateRowDiscount = () => {\r\n let discounts = orders.find((o) => o.orderId === orderId)?.discounts || [];\r\n let discountAmount = 0;\r\n\r\n const amount = orderRow.amount;\r\n const fullDiscount = discounts.find((x) => x.targetEventId === null && x.valueType === \"Percent\" && x.value === 100);\r\n\r\n if (fullDiscount != null) {\r\n return amount;\r\n }\r\n\r\n if (orderId > 0 && orders.find((o) => o.orderId === orderId)?.orderRow?.find((o) => o.eventId === orderRow.eventId)) {\r\n discountAmount = orders.find((o) => o.orderId === orderId)?.orderRow?.find((o) => o.eventId === orderRow.eventId)?.discount;\r\n }\r\n\r\n if (orderId > 0) {\r\n discounts = orders.find((o) => o.orderId === orderId)?.discounts || [];\r\n }\r\n\r\n discounts\r\n .filter((d) => (d.targetEventId === orderRow.eventId && d.value != 0) || (d.targetEventId === null && d.value != 0))\r\n .sort((a, b) => a.sortOrder - b.sortOrder)\r\n .forEach((d) => {\r\n const decrementValue = d.valueType === \"Percent\" ? (amount - discountAmount) * (d.value / 100) : d.value;\r\n\r\n if (!d?.allowNegative && (discountAmount + decrementValue < 0 || discountAmount + decrementValue > amount)) {\r\n discountAmount = amount;\r\n } else {\r\n discountAmount += decrementValue;\r\n }\r\n });\r\n return discountAmount;\r\n };\r\n\r\n const calculateVatAmount = () => {\r\n const discountAmount = calculateRowDiscount();\r\n const amount = orderRow.amount;\r\n\r\n if (getVatExempt() || !orderRow.vatPercent) {\r\n return 0;\r\n }\r\n\r\n return (amount - discountAmount) * (orderRow.vatPercent / 100);\r\n };\r\n\r\n const calculateRowSum = () => {\r\n const discountAmount = calculateRowDiscount();\r\n const vatAmount = calculateVatAmount();\r\n const amount = orderRow.amount;\r\n return amount - discountAmount + vatAmount;\r\n };\r\n\r\n if (targetBreakout)\r\n return {\r\n orderId: orderId,\r\n eventId: orderRow.eventId,\r\n orderRowId: orderRow.orderRowId,\r\n amount: orderRow.amount,\r\n vatAmount: calculateVatAmount(),\r\n discountAmount: calculateRowDiscount(),\r\n rowTotal: calculateRowSum(),\r\n vatPercent: getVatExempt() ? 0 : orderRow.vatPercent,\r\n status: orderRow.status?.trim() ?? \"Booked\",\r\n };\r\n};\r\n\r\nexport const ConfirmationOrderRow = ({ orderRow, breakouts, displayConfirmationSettings, environment, mainEvent }) => {\r\n const { amount, vatAmount, discountAmount, rowTotal, vatPercent, status } = orderRow;\r\n\r\n const targetBreakout = useMemo(() => {\r\n if (orderRow.hotelAllotmentPricingId) return orderRow;\r\n if (orderRow.eventId == mainEvent.eventId) return mainEvent;\r\n return breakouts.find((b) => b.eventId == orderRow.eventId);\r\n }, [orderRow?.eventId, mainEvent?.eventId, breakouts]);\r\n\r\n const name = useMemo(() => {\r\n const eds = targetBreakout?.eventDisplayLanguage?.find((eds) => eds.languageCode == environment.lang && eds.alternative == false);\r\n return eds?.name ?? targetBreakout?.name;\r\n }, [targetBreakout, environment]);\r\n\r\n const description = useMemo(() => {\r\n const eds = targetBreakout?.eventDisplayLanguage?.find((eds) => eds.languageCode == environment.lang && eds.alternative == false);\r\n return eds?.description ?? targetBreakout?.description;\r\n }, [targetBreakout, environment]);\r\n\r\n if (!targetBreakout && !orderRow?.hotelAllotmentPricingId) return null;\r\n if (!orderRow?.hotelAllotmentPricingId && environment.eventId == orderRow.eventId && !displayConfirmationSettings[\"ShowConfMainEvent\"]) return null;\r\n if (!orderRow?.hotelAllotmentPricingId && environment.eventId !== targetBreakout.eventId && !displayConfirmationSettings[\"ShowConfFreeRows\"] && !rowTotal) return null;\r\n if (!displayConfirmationSettings[\"ShowConfCancelledRows\"] && (status == \"Cancelled\" || status == \"Rejected\")) return null;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {name}\r\n \r\n \r\n {displayConfirmationSettings[\"ShowConfRowStatus\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfStartDate\"] || displayConfirmationSettings[\"ShowConfStartTime\"] ? (\r\n \r\n {displayConfirmationSettings[\"ShowConfStartDate\"] ? new Date(targetBreakout.startDateTime).toLocaleDateString() : null}\r\n {displayConfirmationSettings[\"ShowConfStartTime\"] && !orderRow?.hotelAllotmentPricingId\r\n ? (displayConfirmationSettings[\"ShowConfStartDate\"] ? \" \" : \"\") + new Date(targetBreakout.startDateTime).toLocaleTimeString([], { timeStyle: \"short\" })\r\n : null}\r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfEndDate\"] || displayConfirmationSettings[\"ShowConfEndTime\"] ? (\r\n \r\n {displayConfirmationSettings[\"ShowConfEndDate\"] ? new Date(targetBreakout.endDateTime).toLocaleDateString() : null}\r\n {displayConfirmationSettings[\"ShowConfEndTime\"] && !orderRow?.hotelAllotmentPricingId\r\n ? (displayConfirmationSettings[\"ShowConfEndDate\"] ? \" \" : \"\") + new Date(targetBreakout.endDateTime).toLocaleTimeString([], { timeStyle: \"short\" })\r\n : null}\r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfAmount\"] ? (\r\n \r\n {Math.round(amount, 2)} {` ${environment.currency}`}\r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfDiscount\"] ? (\r\n \r\n {Math.round(discountAmount, 2)} {` ${environment.currency}`}\r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfVatAmount\"] ? (\r\n \r\n {Math.round(vatAmount, 2)} {` ${environment.currency}`}\r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfVatPercent\"] ? (\r\n \r\n {vatPercent}\r\n {`%`}\r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfQuantity\"] ? {1} : null}\r\n {displayConfirmationSettings[\"ShowConfRowTotal\"] ? (\r\n \r\n {Math.round(rowTotal, 2)} {` ${environment.currency}`}\r\n \r\n ) : null}\r\n \r\n {displayConfirmationSettings[\"ShowConfDescription\"] && description ? (\r\n \r\n {description}\r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n","import React, { useState, useEffect, useMemo } from \"react\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormGroup from \"@material-ui/core/FormGroup\";\r\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\r\nimport { runInAction } from \"mobx\";\r\nimport { InvoiceFieldsNew } from \"../InvoiceFieldsNew/InvoiceFieldsNew\";\r\nimport { toJS } from \"mobx\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nimport { CountrySelect } from \"../CountrySelect/CountrySelect\";\r\nimport PersonOutline from \"@material-ui/icons/PersonOutline\";\r\nimport Ballot from \"@material-ui/icons/Ballot\";\r\nimport ReceiptIcon from \"@material-ui/icons/Receipt\";\r\nimport CreditCardIcon from \"@material-ui/icons/CreditCard\";\r\nimport { deepClone } from \"../../helpers/objectHelper\";\r\nimport { getCalculatedOrderRow } from \"../OrderSummary/components/ConfirmationOrderRow\";\r\nimport { useRef } from \"react\";\r\n\r\nconst PaymentOptionsNew = (props) => {\r\n const invoiceAnchor = useRef();\r\n const [selectedCountry, setSelectedCountry] = useState(\"\");\r\n const [regionGroup, setRegionGroup] = useState(\"\");\r\n const [currentOptions, setCurrentOptions] = useState([\"\"]);\r\n const [currentType, setCurrentType] = useState(\"\");\r\n const [ix, setIx] = useState(\"\");\r\n const [selectedCountryCode, setSelectedCountryCode] = useState(\"\");\r\n const [fixedCountry, setFixedCountry] = useState(false);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n\r\n const { settings, addOrUpdate, activePersonNo, orders, updateOrder, current, contentModuleId, validations, checkHeights, environment, eventId, mainEvent, setValidatePaymentFields, validatePaymentFields } = props;\r\n\r\n const [paymentMethods, setPaymentMethods] = useState([]);\r\n const [selectedOption, setSelectedOption] = useState(\"\");\r\n\r\n const orderList = useMemo(() => toJS(orders), [orders]);\r\n\r\n const setLoad = (b) => setIsLoaded(b);\r\n const findLeader = () => {\r\n var v = orderList.find((o) => o.leader);\r\n if (!v) {\r\n v = orderList.find((o) => o.orderId == o.orderGroupId);\r\n }\r\n if (v) {\r\n return orderList.indexOf(v);\r\n } else {\r\n return 0;\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (validatePaymentFields) {\r\n var val = validations.find((v) => v.label == \"PaymentOption\");\r\n if (val) {\r\n runInAction(() => {\r\n val.valid = false;\r\n });\r\n }\r\n }\r\n }, [validatePaymentFields]);\r\n\r\n //Test loading with different Leader and different ActivePersonNo, both were they're == and !=\r\n //also useMemo on countryselect\r\n useEffect(() => {\r\n var no = findLeader();\r\n var no2 = findLeader();\r\n let isTemp = orderList.find((o) => o.isActive == \"temp\") ? true : false;\r\n if ((orderList[no]?.orderId || isTemp) && orderList[no]?.invoice) {\r\n if (!orderList[no].invoice) {\r\n no = no2;\r\n }\r\n var orderInvoiceArray = Object.keys(orderList[no].invoice).map((key) => ({\r\n name: key,\r\n value: orderList[no].invoice[key],\r\n }));\r\n var empty = orderInvoiceArray.filter((a) => a.value == null);\r\n var pt = orderList[no].invoice == {} || empty.length > 10 ? \"dibs\" : \"invoice\";\r\n var pm = orderList[no].invoice.telephone1 ? \"comgov\" : \"person\";\r\n\r\n if (no != no2) {\r\n runInAction(() => {\r\n props.activePersonNo = no2;\r\n });\r\n }\r\n if (pt != \"dibs\" || pt != \"stripe\") {\r\n setCurrentType(pm);\r\n setSelectedOption(pt);\r\n }\r\n\r\n if (orderList[no]?.invoice?.countryCode) {\r\n setSelectedCountryCode(orderList[no].invoice.countryCode);\r\n }\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (selectedOption != \"\") {\r\n runInAction(() => {\r\n current.payMethod = selectedOption;\r\n });\r\n }\r\n }, [selectedOption]);\r\n\r\n useEffect(() => {\r\n if (orderList[activePersonNo]?.orderId || orderList[activePersonNo]?.isActive) {\r\n return;\r\n }\r\n\r\n setCurrentType(\"\");\r\n setSelectedOption(\"\");\r\n setPaymentMethods([]);\r\n if (settings.paymentGrid[\"only\"] && settings.paymentGrid[\"only\"].length == 1) {\r\n let t = settings.paymentGrid[\"only\"][0].countries[0];\r\n onCountry(t.value, t);\r\n setLoad(true);\r\n setFixedCountry(true);\r\n } else {\r\n setFixedCountry(false);\r\n }\r\n }, [selectedCountry]);\r\n\r\n useEffect(() => {\r\n if (orderList[activePersonNo]?.orderId || orderList[activePersonNo]?.isActive) {\r\n return;\r\n } //test\r\n if (currentOptions.length == 1) {\r\n if (selectedCountry != \"\") {\r\n setRegionGroup(regionGroup);\r\n setSelectedCountry(selectedCountry);\r\n setCurrentType(currentOptions[0]);\r\n setCurrentOptions([]); //test\r\n }\r\n }\r\n }, [selectedCountry, currentOptions]);\r\n\r\n const onCountry = (target, a, r = false) => {\r\n if (a == selectedCountry) {\r\n return;\r\n }\r\n\r\n let prefix = a?.name?.toLowerCase();\r\n\r\n setRegionGroup(prefix);\r\n setSelectedCountry(a);\r\n setIx(target);\r\n\r\n var val = validations.find((v) => v.label == \"PaymentOption\");\r\n if (val && val?.valid) {\r\n runInAction(() => {\r\n val.valid = false;\r\n });\r\n }\r\n\r\n let data = toJS(settings.paymentGrid);\r\n let opts = data[prefix];\r\n if (opts == undefined) {\r\n opts = data[\"global\"];\r\n prefix = \"global\";\r\n }\r\n if (opts !== undefined) {\r\n let options = [];\r\n if (opts.includes(\"comgov\")) {\r\n if (data[prefix + \" dibs comgov\"] || data[prefix + \" invoice comgov\"] || data[prefix + \" stripe comgov\"]) {\r\n options.push(\"comgov\");\r\n }\r\n }\r\n if (opts.includes(\"person\")) {\r\n if (data[prefix + \" dibs person\"] || data[prefix + \" invoice person\"] || data[prefix + \" stripe person\"]) {\r\n options.push(\"person\");\r\n }\r\n }\r\n\r\n setCurrentOptions(options);\r\n } else {\r\n setCurrentOptions([]);\r\n }\r\n\r\n if ((!orderList[activePersonNo]?.orderId && !orderList[activePersonNo]?.isActive) || r) {\r\n setSelectedOption(\"\");\r\n setCurrentType(\"\");\r\n }\r\n if (r) {\r\n runInAction(() => {\r\n orderList[activePersonNo].invoice = {};\r\n // delete orders[activePersonNo].orderId;\r\n updateOrder(orderList[activePersonNo]);\r\n });\r\n }\r\n };\r\n //what happens when we select dibs/invoice\r\n const onPaymentMethod = (m, d = null) => {\r\n setSelectedOption(m);\r\n var no = activePersonNo;\r\n var no2 = findLeader();\r\n if (!orderList[no]?.orderId) {\r\n no = no2;\r\n }\r\n if (!orderList[no]?.orderId) {\r\n runInAction(() => {\r\n let tempOrder = deepClone(orderList[no]);\r\n tempOrder.invoice = {};\r\n updateOrder(tempOrder, no);\r\n });\r\n }\r\n\r\n var currentPT = currentType;\r\n var data = settings.paymentGrid;\r\n var prefix = \"\";\r\n if (data[\"exceptions\"].includes(selectedCountry?.name)) {\r\n prefix = selectedCountry.name.toLowerCase();\r\n } else {\r\n prefix = \"global\";\r\n }\r\n\r\n if (currentType == \"comgov\") {\r\n let pms = [];\r\n if (data[prefix + \" \" + m + \" comgov\"]) {\r\n pms.push(\"comgov\");\r\n }\r\n if (pms.length == 1) {\r\n currentPT = pms[0];\r\n setCurrentType(currentPT);\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (currentType == \"\" || selectedCountry == \"\") {\r\n return;\r\n }\r\n\r\n if (!orderList[activePersonNo]?.orderId && !orderList[activePersonNo]?.isActive) {\r\n setSelectedOption(\"\");\r\n }\r\n\r\n var data = settings.paymentGrid;\r\n var prefix = \"\";\r\n\r\n if (data[\"exceptions\"].includes(selectedCountry?.name?.toLowerCase())) {\r\n prefix = selectedCountry.name.toLowerCase();\r\n } else {\r\n prefix = \"global\";\r\n }\r\n\r\n if (currentType == \"person\") {\r\n let l = [];\r\n if (data[prefix + \" dibs person\"]) {\r\n l.push(\"dibs\");\r\n }\r\n if (data[prefix + \" invoice person\"]) {\r\n l.push(\"invoice\");\r\n }\r\n if (data[prefix + \" stripe person\"]) {\r\n l.push(\"stripe\");\r\n }\r\n\r\n setPaymentMethods(l);\r\n if (l.length == 1) {\r\n onPaymentMethod(l[0]);\r\n }\r\n } else if (currentType == \"comgov\") {\r\n let l = [];\r\n if (data[prefix + \" dibs comgov\"]) {\r\n l.push(\"dibs\");\r\n }\r\n if (data[prefix + \" invoice comgov\"]) {\r\n l.push(\"invoice\");\r\n }\r\n if (data[prefix + \" stripe comgov\"]) {\r\n l.push(\"stripe\");\r\n }\r\n setPaymentMethods(l);\r\n if (l.length == 1) {\r\n onPaymentMethod(l[0]);\r\n }\r\n }\r\n\r\n const module = props.contentLayout.contentLayoutModules.find((clm) => clm.contentLayoutModuleId == props.contentLayoutModuleId);\r\n var newOrders = deepClone(toJS(orderList));\r\n if (newOrders.length > 0) {\r\n var targetOrder = newOrders.find((a) => a.leader);\r\n if (!targetOrder) {\r\n targetOrder = newOrders[0];\r\n }\r\n var index = newOrders.indexOf(targetOrder);\r\n if (targetOrder.invoice) {\r\n if (targetOrder.invoice.countryId) {\r\n setIx(targetOrder.invoice.countryId);\r\n delete targetOrder.invoice.countryId;\r\n }\r\n if (targetOrder.invoice.countryCode) {\r\n setSelectedCountryCode(targetOrder.invoice.countryCode);\r\n }\r\n }\r\n runInAction(() => {\r\n module.height = 150;\r\n updateOrder(targetOrder, index);\r\n });\r\n }\r\n }, [currentType, currentOptions]);\r\n\r\n const expand = (option) => {\r\n const module = props.contentLayout.contentLayoutModules.find((clm) => clm.contentLayoutModuleId == props.contentLayoutModuleId);\r\n const validity = validations.find((v) => v.id == contentModuleId);\r\n if (!module) return;\r\n let optionChanged = Boolean(current.payMethod !== option);\r\n runInAction(() => {\r\n current.payMethod = option;\r\n validity.valid = true;\r\n });\r\n if (optionChanged) {\r\n checkHeights();\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n //make stuff work if selecting only 'free' events\r\n var flatOrderRowsList = orderList\r\n .map((o) => {\r\n if (o.orderRow) return [...o.orderRow.map((or) => getCalculatedOrderRow(or, props.breakouts, orderList, o.orderId, props.mainEvent, props.modules))];\r\n })\r\n .flat();\r\n\r\n const total =\r\n flatOrderRowsList\r\n ?.filter((item) => item?.orderRowId < 0 && item?.amount > 0)\r\n ?.map((item) => item?.amount - item?.discountAmount)\r\n ?.reduce((prev, next) => prev + next, 0) || 0;\r\n\r\n const shouldValidate = !(total === 0);\r\n if (validatePaymentFields !== shouldValidate) {\r\n setValidatePaymentFields(shouldValidate);\r\n }\r\n checkHeights();\r\n });\r\n\r\n if (settings.hidden) return null;\r\n if (!validatePaymentFields) return
    ;\r\n\r\n return (\r\n <>\r\n
    \r\n {!fixedCountry ? (\r\n <>\r\n
    \r\n \r\n
    \r\n setLoad(b)}\r\n value={ix}\r\n eventId={environment.eventId}\r\n lang={environment.lang}\r\n onChange={(e, a, t) => onCountry(e, a, true)}\r\n selectGrid={settings.paymentGrid}\r\n useCode\r\n countryCode={selectedCountry?.countryCode}\r\n preselected={props?.defaultSelectedCountry || 206}\r\n />\r\n \r\n ) : null}\r\n
    \r\n \r\n {selectedCountry != \"\" && currentOptions.length > 0 ? (\r\n \r\n {currentOptions.length > 0 &&\r\n currentOptions\r\n .slice()\r\n .sort()\r\n .map((p) => {\r\n return (\r\n \r\n {\r\n setRegionGroup(regionGroup);\r\n setSelectedCountry(selectedCountry);\r\n setCurrentType(p);\r\n },\r\n }}\r\n />\r\n \r\n );\r\n })}\r\n {/* {currentType === \"\" && } */}\r\n \r\n ) : null}\r\n\r\n {selectedCountry != \"\" && currentOptions.length == 0 && paymentMethods.length == 0 ? (\r\n \r\n ) : null}\r\n\r\n {paymentMethods.length > 1 ? (\r\n \r\n {paymentMethods\r\n .slice()\r\n .sort()\r\n .map((pm) => {\r\n return (\r\n \r\n {\r\n expand(pm);\r\n onPaymentMethod(pm);\r\n },\r\n }}\r\n />\r\n \r\n );\r\n })}\r\n \r\n ) : null}\r\n \r\n {currentType != \"\" && selectedOption != \"\" && isLoaded ? (\r\n
    \r\n \r\n
    \r\n ) : null}\r\n\r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default observer(PaymentOptionsNew);\r\n\r\nconst PaymentOptionButton = ({ option, selectOption, selectedOption }) => {\r\n switch (option) {\r\n case \"person\":\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n\r\n case \"comgov\":\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\nconst PaymentMethodButton = ({ option, selectOption, selectedOption }) => {\r\n switch (option) {\r\n case \"invoice\":\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n\r\n case \"stripe\":\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n\r\n case \"dibs\":\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n\r\n default:\r\n return ;\r\n }\r\n};\r\n","import { IconButton, List, ListItem, ListItemIcon, ListItemSecondaryAction, ListItemText } from \"@material-ui/core\";\r\nimport Axios from \"axios\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React, { Fragment, useState, useEffect } from \"react\";\r\nimport CustomInput from \"../../components/CustomInput\";\r\nimport CheckCircleOutlineIcon from \"@material-ui/icons/CheckCircleOutline\";\r\nimport { deepClone } from \"../../helpers/objectHelper\";\r\nimport { Alert } from \"@material-ui/lab\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nimport { toJS } from \"mobx\";\r\n\r\nexport const Discount = observer((props) => {\r\n const [code, setCode] = useState(\"\");\r\n const [isValid, setIsValid] = useState(null);\r\n const [validCodes, setValidCodes] = useState([]);\r\n const [earlyBirdLoaded, setEarlyBirdLoaded] = useState(false);\r\n const [orderDiscountsLoaded, setOrderDiscountsLoaded] = useState(false);\r\n const [showMaxDiscountValidationMessage, setShowMaxDiscountValidationMessage] = useState(false);\r\n const { orders, activePersonNo, settings, updateOrder, environment, sqlStateNo } = props;\r\n const { hideOnChangeLink, maxDiscounts, hidden, showEarlyBird = false, autoCodes, showAutoCodes = true } = settings;\r\n\r\n useEffect(() => {\r\n fetchEarlyBird();\r\n fetchOrderDiscounts();\r\n }, []);\r\n\r\n useEffect(() => {\r\n fetchEarlyBird();\r\n fetchOrderDiscounts();\r\n }, [activePersonNo]);\r\n\r\n useEffect(() => {\r\n if (earlyBirdLoaded && orderDiscountsLoaded) applyAutoCodes();\r\n }, [earlyBirdLoaded, orderDiscountsLoaded]);\r\n\r\n const fetchEarlyBird = () => {\r\n if (earlyBirdLoaded) setEarlyBirdLoaded(false);\r\n Axios.get(`./api/discount/${environment.eventId}`).then(({ data }) => {\r\n if (data) {\r\n let order = deepClone(orders[activePersonNo]);\r\n if (!Array.isArray(order.discounts)) {\r\n order.discounts = [];\r\n }\r\n let codesToAdd = data.filter((d) => {\r\n if (!order.discounts.find((o) => o.discountId == d.discountId)) {\r\n return true;\r\n }\r\n });\r\n if (codesToAdd.length > 0) {\r\n order.discounts = [...order.discounts, ...codesToAdd];\r\n setValidCodes([...order.discounts]);\r\n updateOrder(order);\r\n } else {\r\n setValidCodes([...order.discounts]);\r\n }\r\n setEarlyBirdLoaded(true);\r\n }\r\n });\r\n };\r\n\r\n const fetchOrderDiscounts = () => {\r\n if (orderDiscountsLoaded) setOrderDiscountsLoaded(false);\r\n if (orders && orders.length > 0 && orders[activePersonNo].badgeNo) {\r\n Axios.get(`./api/discount/mydiscounts/${orders[activePersonNo].orderId}`).then(({ data }) => {\r\n if (data) {\r\n setValidCodes([...validCodes, ...data]);\r\n }\r\n setOrderDiscountsLoaded(true);\r\n });\r\n } else {\r\n setOrderDiscountsLoaded(true);\r\n }\r\n };\r\n\r\n const applyAutoCodes = async () => {\r\n if (autoCodes && Array.isArray(autoCodes)) {\r\n const codesToApply = [];\r\n for (const discount of autoCodes) {\r\n const { data } = await Axios.get(`./api/discount/validate/${environment.eventId}?code=${discount.value}`);\r\n if (data) {\r\n if(Array.isArray(data)){\r\n data.forEach((discount) => {\r\n if (!codesToApply.find((d) => d.code == discount.code && d.targetEventId == discount.targetEventId)) {\r\n codesToApply.push(discount);\r\n }\r\n });\r\n }\r\n else{\r\n codesToApply.push(data);\r\n }\r\n }\r\n }\r\n if (codesToApply.length > 0) {\r\n let order = deepClone(orders[activePersonNo]);\r\n if (!Array.isArray(order.discounts)) {\r\n order.discounts = [];\r\n }\r\n codesToApply.forEach((discount) => {\r\n if (!order.discounts.find((d) => d.code == discount.code && d.targetEventId == discount.targetEventId)) order.discounts.push(discount);\r\n });\r\n setValidCodes([...order.discounts]);\r\n updateOrder(order, activePersonNo);\r\n }\r\n }\r\n };\r\n\r\n const validateCode = () => {\r\n const orderDiscounts = orders.reduce((acc, o) => [...acc, ...(o.discounts ?? [])], []).filter(({ code: _code }) => _code === code)?.length;\r\n if (maxDiscounts != null && maxDiscounts > 0 && orders[activePersonNo] && Array.isArray(orders[activePersonNo].discounts) && orders[activePersonNo].discounts.length == maxDiscounts) {\r\n return setShowMaxDiscountValidationMessage(true);\r\n }\r\n setShowMaxDiscountValidationMessage(false);\r\n Axios.get(`./api/discount/validate/${environment.eventId}?code=${code}&sqlStateNo=${sqlStateNo}&count=${orderDiscounts}`)\r\n .then(({ data }) => {\r\n const discounts = data;\r\n if (discounts?.length) {\r\n const order = deepClone(orders[activePersonNo]);\r\n\r\n if (!Array.isArray(order.discounts)) {\r\n order.discounts = [];\r\n }\r\n\r\n if (order.discounts.find((d) => discounts.some((discount) => d.code == discount.code))) return;\r\n\r\n order.discounts = [...order.discounts, ...discounts];\r\n\r\n setCode(\"\");\r\n setIsValid(true);\r\n setValidCodes([...validCodes, ...discounts]);\r\n\r\n updateOrder(order, activePersonNo);\r\n } else {\r\n setIsValid(false);\r\n }\r\n })\r\n .catch((e) => {\r\n setShowMaxDiscountValidationMessage(true);\r\n });\r\n };\r\n\r\n const inputOnChange = (code) => {\r\n setIsValid(null);\r\n setShowMaxDiscountValidationMessage(false);\r\n setCode(code);\r\n };\r\n\r\n const deleteDiscount = (code) => {\r\n let order = deepClone(orders[activePersonNo]);\r\n\r\n if (!order.discounts.find((d) => d.code == code)) return;\r\n\r\n order.discounts = order.discounts.filter((d) => d.code != code);\r\n\r\n const newCodes = validCodes.filter((v) => v.code != code);\r\n\r\n setValidCodes(newCodes);\r\n updateOrder(order, activePersonNo);\r\n };\r\n\r\n const onKeyDown = (e) => {\r\n if (e.key === \"Enter\" && code) {\r\n validateCode();\r\n }\r\n };\r\n\r\n if (orders[activePersonNo] && orders[activePersonNo]?.badgeNo && hideOnChangeLink) return null;\r\n if (hidden) return null;\r\n\r\n return (\r\n
    \r\n inputOnChange(e.target.value)}\r\n onKeyDown={onKeyDown}\r\n noMargin={true}\r\n noLabel={true}\r\n appendButton={\r\n \r\n }\r\n />\r\n
    \r\n {isValid == false || showMaxDiscountValidationMessage ? (\r\n {showMaxDiscountValidationMessage ? : }\r\n ) : null}\r\n
    \r\n \r\n {validCodes.map((v, i) => {\r\n const { code, value, name, valueType } = v;\r\n if (!showEarlyBird && !code) return null;\r\n if (!showAutoCodes && autoCodes.some((ac) => ac.value == code)) return null;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {code || name}\r\n \r\n }\r\n secondary={\r\n \r\n {`${value}${valueType == \"Percent\" ? \"%\" : \" \" + (environment.currency || \"SEK\")}`}\r\n \r\n }\r\n />\r\n \r\n {code ? (\r\n deleteDiscount(code)}>\r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n
    \r\n );\r\n});\r\n","import { Grid } from \"@material-ui/core\";\r\nimport { toJS } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport React, { useMemo } from \"react\";\r\nimport { v4 } from \"uuid\";\r\nimport EventLabel from \"../../../components/EventLabel\";\r\nexport const PersonDetailsSummary = observer((props) => {\r\n const { showPersonDetails = true, showCompanyDetails = true, showInvoiceDetails = true, showQuestionDetails = true } = props.settings;\r\n return (\r\n <>\r\n {showPersonDetails ? : null}\r\n {showCompanyDetails ? : null}\r\n {showInvoiceDetails ? : null}\r\n {showQuestionDetails ? : null}\r\n \r\n );\r\n});\r\n\r\nconst CountryChoice = ({ countries, value, key, environment }) => {\r\n const country = countries.find((c) => (key === \"countryCode\" ? c.code === value.toUpperCase() : c.countryId === value));\r\n if (!country) return null;\r\n if (environment.lang == \"swe\") {\r\n return <>{country.nameSwe};\r\n }\r\n\r\n return <>{country.nameInt};\r\n};\r\n\r\nconst InvoiceDetails = ({ order, countries, environment, orders, validations }) => {\r\n if (!order || (order && !order.invoice)) return null;\r\n return (\r\n <>\r\n \r\n
    \r\n <>\r\n {Object.entries(order.invoice).map((oi) => {\r\n if (!oi[1]) return null;\r\n if (oi[0] == \"companyId\" || oi[0] == \"countryId\" || oi[0] == \"gln\" || oi[0] == \"vatNo\") return null;\r\n const label = `${oi[0]}`;\r\n if (label == \"inExchangeRecipentId\" || label == \"electronicInvoice\") return null;\r\n const value = oi[0] == \"countryCode\" ? : oi[1];\r\n return (\r\n \r\n \r\n {label && (\r\n

    \r\n \r\n

    \r\n )}\r\n
    \r\n \r\n

    {value}

    \r\n
    \r\n
    \r\n );\r\n })}\r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nconst PersonDetails = ({ order, countries, environment, fields }) => {\r\n const fieldList = useMemo(() => {\r\n return fields.filter((f) => f.type === \"Person\").sort((a, b) => {\r\n return a.sortOrder - b.sortOrder;\r\n });\r\n }, [fields]);\r\n\r\n if (!order || (order && !order.person) || Object.entries(order?.person)?.length === 0 || !Object.entries(order?.person ?? {})?.some(([_, value]) => value)) return null;\r\n return (\r\n <>\r\n \r\n
    \r\n {Object.entries(order.person).map((oi) => {\r\n const field = fieldList.find((f) => f.name.toLowerCase() === oi[0].toLowerCase());\r\n if (!oi[1] || !field) return null;\r\n const label = field?.fieldLanguage.find((fl) => fl.languageCode === environment.lang)?.label || `${oi[0]}`;\r\n const value = oi[0] === \"countryCode\" || oi[0] === \"countryId\" ? : oi[1];\r\n return (\r\n \r\n \r\n

    {label}

    \r\n
    \r\n \r\n

    {value}

    \r\n
    \r\n
    \r\n );\r\n })}\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nconst CompanyDetails = ({ order, fields, environment, countries }) => {\r\n const fieldList = useMemo(() => {\r\n return fields.filter((f) => f.type === \"Company\").sort((a, b) => {\r\n return a.sortOrder - b.sortOrder;\r\n });\r\n }, [fields]);\r\n if (!order || (order && !order.company) || Object.entries(order?.company)?.length === 0 || !Object.entries(order?.person ?? {})?.some(([_, value]) => value)) return null;\r\n return (\r\n <>\r\n \r\n
    \r\n {Object.entries(order.company).map((oi) => {\r\n const field = fieldList.find((f) => f.name.toLowerCase() === oi[0].toLowerCase());\r\n if (!oi[1] || !field) return null;\r\n const label = field?.fieldLanguage.find((fl) => fl.languageCode === environment.lang)?.label || `${oi[0]}`;\r\n const value = oi[0] == \"countryCode\" ? : oi[1];\r\n return (\r\n \r\n \r\n

    {label}

    \r\n
    \r\n \r\n

    {value}

    \r\n
    \r\n
    \r\n );\r\n })}\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nconst QuestionDetails = (props) => {\r\n const { order, questions, environment, conditions } = props;\r\n\r\n const showQuestionModule = (id) => {\r\n var foundModule = true;\r\n var specificModule = props.contentLayout.contentLayoutModules.find((x) => x.contentModule.type == \"QUESTION\" && x.contentModule.settings.questionId == id);\r\n if (specificModule) {\r\n let isHidden = conditions[specificModule.contentLayoutModuleId]?.hidden;\r\n if (isHidden) {\r\n foundModule = false;\r\n }\r\n }\r\n return foundModule;\r\n };\r\n\r\n var questionList = useMemo(() => {\r\n return Array.from(questions).sort((a, b) => a.sortOrder - b.sortOrder);\r\n }, [questions, order?.answer]);\r\n if (!order || (order && !order.answer) || !order?.answer?.some(({ answerRow }) => answerRow?.length > 0)) return null;\r\n return (\r\n <>\r\n \r\n
    \r\n {questionList.map((question) => {\r\n const answer = order.answer.find((a) => a.questionId == question.questionId);\r\n let show = showQuestionModule(question.questionId);\r\n if (!answer || !show) return null;\r\n const questionName = question?.questionLanguage?.find((fl) => fl.languageCode == environment.lang)?.label;\r\n if (answer.answerRow.length > 0) {\r\n if (question.type == \"Option\") {\r\n return (\r\n \r\n \r\n

    {questionName}

    \r\n
    \r\n \r\n {answer.answerRow.map((o) => {\r\n return (\r\n

    \r\n {question.questionOption?.find((qo) => qo.questionOptionId == o.questionOptionId)?.questionOptionLanguage?.find((fl) => fl.languageCode == environment.lang)?.label}\r\n

    \r\n );\r\n })}\r\n
    \r\n
    \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n

    {questionName}

    \r\n
    \r\n \r\n

    {answer.answerRow[0].text}

    \r\n
    \r\n
    \r\n );\r\n }\r\n }\r\n })}\r\n
    \r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport EventLabel from \"../../../components/EventLabel\";\r\n\r\n//pepetest\r\n\r\nexport const OrderTotalSummary = ({ flatOrderRows, environment, events, orders, breakouts, mainEvent }) => {\r\nconst isVatExempt = (orderRow) => {\r\n const targetBreakout = orderRow?.eventId === mainEvent?.eventId ? mainEvent : breakouts?.find((b) => b.eventId === orderRow?.eventId);\r\n const order = orders?.find((a) => a.leader) || orders?.[0];\r\n if (!order?.[\"orderExtra\"] || !targetBreakout?.allowReverseCharge) return false;\r\n if (order[\"orderExtra\"].some((a) => a.name == \"vatExempt\") && order[\"orderExtra\"].some((a) => a.name == \"sweVat\")) return true;\r\n return order[\"orderExtra\"].find((a) => a.name == \"vatExempt\")?.value;\r\n};\r\n\r\n const calcTotalExVat = () => {\r\n var totalExVat = 0;\r\n flatOrderRows.map((or) => {\r\n totalExVat += or.amount - or.discountAmount;\r\n });\r\n return totalExVat;\r\n };\r\n const calcTotalVat = () => {\r\n var totalVat = 0;\r\n flatOrderRows.map((or) => {\r\n totalVat += or.vatAmount;\r\n });\r\n return totalVat;\r\n };\r\n const calcTotalSum = () => {\r\n var rowTotal = 0;\r\n flatOrderRows.map((or) => {\r\n rowTotal += isVatExempt(or) ? or.amount - or.discountAmount : or.rowTotal;\r\n });\r\n return rowTotal;\r\n };\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {Math.round(calcTotalVat(), 2) > 0 ? (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n {Math.round(calcTotalExVat(), 2)}\r\n {` ${environment.currency}`}\r\n
    \r\n \r\n \r\n {Math.round(calcTotalVat(), 2)}\r\n {` ${environment.currency}`}\r\n
    \r\n \r\n \r\n {Math.round(calcTotalSum(), 2)}\r\n {` ${environment.currency}`}\r\n
    \r\n \r\n \r\n {Math.round(calcTotalSum(), 2)}\r\n {` ${environment.currency}`}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import React, { useCallback, useEffect, useMemo } from \"react\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { PersonDetailsSummary } from \"./components/PersonDetailsSummary\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nimport { OrderTotalSummary } from \"./components/OrderTotalSummary\";\r\nimport { ConfirmationOrderRow, getCalculatedOrderRow } from \"./components/ConfirmationOrderRow\";\r\nimport { toCamelCase } from \"../../helpers/objectHelper\";\r\n\r\nconst TableHeader = ({ displayConfirmationSettings }) => {\r\n return (\r\n \r\n \r\n \r\n \r\n {displayConfirmationSettings[\"ShowConfRowStatus\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfStartDate\"] || displayConfirmationSettings[\"ShowConfStartTime\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfEndDate\"] || displayConfirmationSettings[\"ShowConfEndTime\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfAmount\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfDiscount\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfVatAmount\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfVatPercent\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfQuantity\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n {displayConfirmationSettings[\"ShowConfRowTotal\"] ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport const OrderSummary = observer((props) => {\r\n const { displayConfirmationSettings, breakouts, orders, settings, mainEvent, loadHotels, hotelAllotments, hotels } = props;\r\n const { overrideDisplay = false, showOrderDetails = true, showOnlyHotelOrderRows = false, showPersonDetails = false } = settings;\r\n\r\n useEffect(() => {\r\n if (orders.some((o) => o.orderRow.some((or) => or.hotelGroupId)) && hotelAllotments?.length === 0) {\r\n loadHotels();\r\n }\r\n }, [orders, hotelAllotments]);\r\n\r\n const overridenDisplaySettings = useMemo(() => {\r\n const o = {};\r\n for (const key in displayConfirmationSettings) {\r\n if (Object.hasOwnProperty.call(displayConfirmationSettings, key)) {\r\n o[key] = settings[toCamelCase(key)] === true;\r\n }\r\n }\r\n return o;\r\n }, [\r\n settings?.showConfStartDate,\r\n settings?.showConfStartTime,\r\n settings?.showConfEndDate,\r\n settings?.showConfEndTime,\r\n settings?.showConfAmount,\r\n settings?.showConfDiscount,\r\n settings?.showConfVatAmount,\r\n settings?.showConfVatPercent,\r\n settings?.showConfQuantity,\r\n settings?.showConfRowTotal,\r\n settings?.showConfFreeRows,\r\n settings?.showConfOrderTotalSum,\r\n settings?.showConfMainEvent,\r\n settings?.showConfDescription,\r\n settings?.showConfRowStatus,\r\n settings?.showConfCancelledRows,\r\n settings?.showOnlyHotelOrderRows,\r\n ]);\r\n\r\n const showCancelledRows = (overrideDisplay && overridenDisplaySettings[\"ShowConfCancelledRows\"]) || (!overrideDisplay && displayConfirmationSettings[\"ShowConfCancelledRows\"]);\r\n const flatOrderRowsList = orders\r\n .filter((o) => o.orderRow)\r\n .map((o) => [\r\n ...o.orderRow\r\n .filter((or) => (showCancelledRows ? true : or.status != \"Cancelled\"))\r\n .map((or) => getCalculatedOrderRow(or, breakouts, orders, o.orderId, mainEvent))\r\n .filter((or) => Boolean(or)),\r\n ])\r\n .flat();\r\n\r\n const hotelAllotmentRows = useMemo(() => {\r\n const orderRows = orders.flatMap((o) => o.orderRow);\r\n if (hotels?.length === 0 || hotelAllotments?.length === 0) return [];\r\n\r\n const result = orderRows\r\n .filter((o) => o.hotelGroupId)\r\n .reduce((acc, orderRow) => {\r\n const hotelAllotment = hotelAllotments.find((ha) => ha.hotelAllotmentPricing?.some((hap) => hap.allotmentPricingId === orderRow?.hotelAllotmentPricingId));\r\n\r\n\r\n if (!hotelAllotment) return acc;\r\n\r\n const hotel = hotels.find((h) => h.hotelRoomType.some((y) => y.hotelRoomTypeId == hotelAllotment.hotelRoomTypeId));\r\n const roomType = hotel.hotelRoomType.find((hr) => hr.hotelRoomTypeId == hotelAllotment.hotelRoomTypeId);\r\n\r\n const pricingIds = orderRows.filter((or) => or.hotelGroupId === orderRow.hotelGroupId).map((or) => or.hotelAllotmentPricingId);\r\n\r\n const dateValues = hotelAllotments.filter((ha) => ha.hotelAllotmentPricing?.some((hap) => pricingIds.includes(hap.allotmentPricingId))).map((ha) => +new Date(ha.date));\r\n const allotmentStartDate = Math.min(...dateValues);\r\n const allotmentEndDate = Math.max(...dateValues);\r\n\r\n if (!hotelAllotment) return acc;\r\n\r\n const index = acc.findIndex((a) => a.hotelGroupId === orderRow.hotelGroupId);\r\n\r\n if (index !== -1) {\r\n acc[index].amount += orderRow.amount;\r\n acc[index].rowTotal += orderRow.amount;\r\n return acc;\r\n }\r\n return [\r\n ...acc,\r\n {\r\n ...orderRow,\r\n rowTotal: orderRow.amount,\r\n name: ` ${hotel.name} - ${roomType.name}`,\r\n startDateTime: new Date(allotmentStartDate).toLocaleDateString(),\r\n endDateTime: new Date(allotmentEndDate).toLocaleDateString(),\r\n },\r\n ];\r\n }, []);\r\n\r\n console.log(result);\r\n\r\n return result;\r\n }, [hotelAllotments, orders, hotels]);\r\n\r\n if (showOnlyHotelOrderRows) {\r\n\r\n console.log(hotelAllotmentRows)\r\n return (\r\n
    \r\n {orders.map((o, i) => (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {hotelAllotmentRows\r\n ?.filter((or) => or.orderId === o.orderId)\r\n .map((row) => (\r\n \r\n ))}\r\n \r\n
    \r\n
    \r\n ))}\r\n \r\n
    \r\n );\r\n }\r\n\r\n return (\r\n
    \r\n {orders.map((o, i) => {\r\n return (\r\n
    \r\n {((Object.entries(o?.person ?? {})?.length > 0 && Object.entries(o?.person ?? {})?.some(([_, value]) => value)) ||\r\n Object.entries(o?.invoice ?? {})?.length > 0 ||\r\n (Object.entries(o?.company ?? {})?.length > 0 && Object.entries(o?.company ?? {})?.some(([_, value]) => value)) ||\r\n (o?.answer?.length > 0 && o?.answer?.some(({ answerRow }) => answerRow?.length > 0))) &&\r\n showPersonDetails ? (\r\n
    \r\n \r\n
    \r\n ) : null}\r\n <>\r\n {o?.orderRow ? (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {flatOrderRowsList\r\n ?.filter((x) => x.orderId === o.orderId)\r\n ?.sort((a, b) => a.sortOrder - b.sortOrder)\r\n ?.map((row) => (\r\n \r\n ))}\r\n\r\n {hotelAllotmentRows\r\n .filter((or) => or.orderId === o.orderId)\r\n .map((row) => (\r\n \r\n ))}\r\n \r\n
    \r\n
    \r\n ) : null}\r\n \r\n
    \r\n );\r\n })}\r\n {showOrderDetails &&\r\n flatOrderRowsList &&\r\n flatOrderRowsList.length > 0 &&\r\n ((overrideDisplay && overridenDisplaySettings[\"ShowConfOrderTotalSum\"]) || (!overrideDisplay && displayConfirmationSettings[\"ShowConfOrderTotalSum\"])) ? (\r\n \r\n ) : null}\r\n
    \r\n );\r\n});\r\n","import React, { useEffect, useState } from \"react\";\r\nimport PersonAddIcon from \"@material-ui/icons/PersonAdd\";\r\nimport { runInAction, toJS } from \"mobx\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nexport const GroupRegistration = observer((props) => {\r\n const { validations, settings, triggerValidation, checkConditions, createOrder, current, environment, orders, checkEventAvailability,getFilteredValidations } = props;\r\n const [showEventFull, setShowEventFull] = useState(false);\r\n let isValid = getFilteredValidations() == 0;\r\n const { hidden, maxCount = 0 } = settings;\r\n useEffect(() => {\r\n (async () => {\r\n setShowEventFull(!await checkEventAvailability(environment.eventId));\r\n })()\r\n }, [])\r\n if (hidden) return null;\r\n return (\r\n <>\r\n 0 && orders.length >= maxCount) || showEventFull}\r\n onClick={async () => {\r\n if (isValid) {\r\n let isAvailable = await checkEventAvailability(environment.eventId)\r\n if (isAvailable) {\r\n runInAction(() => {\r\n triggerValidation(false);\r\n let shouldFocus = false;\r\n if (current.activePage == settings.returnPage) shouldFocus = true;\r\n current.activePage = settings.returnPage;\r\n createOrder();\r\n checkConditions();\r\n if (shouldFocus)\r\n document.querySelector(\".react-grid-layout input:not(readonly):not(disabled), .react-grid-layout textarea:not(readonly):not(disabled), .react-grid-layout select:not(readonly):not(disabled)\")?.focus();\r\n });\r\n }\r\n else {\r\n setShowEventFull(!isAvailable);\r\n }\r\n } else {\r\n triggerValidation();\r\n }\r\n }}\r\n >\r\n \r\n {\r\n maxCount > 0 && orders.length >= maxCount ?\r\n \r\n :\r\n (showEventFull ?\r\n \r\n :\r\n )\r\n }\r\n \r\n \r\n );\r\n});\r\n","export default __webpack_public_path__ + \"static/media/doc.bbce7705.svg\";","export default __webpack_public_path__ + \"static/media/jpg.6ca0b6ea.svg\";","export default __webpack_public_path__ + \"static/media/mp.a52dc8f2.svg\";","export default __webpack_public_path__ + \"static/media/png.046434e7.svg\";","export default __webpack_public_path__ + \"static/media/svg.2568c680.svg\";","export default __webpack_public_path__ + \"static/media/txt.9122a637.svg\";","export default __webpack_public_path__ + \"static/media/xls.6834159c.svg\";","export default __webpack_public_path__ + \"static/media/pdf.1e356d53.svg\";","export default __webpack_public_path__ + \"static/media/ppt.ac3be26a.svg\";","import React, { useEffect, useRef, useState } from \"react\";\r\nimport \"croppie/croppie.css\";\r\nimport { Avatar, IconButton, LinearProgress, List, ListItem, ListItemAvatar, ListItemSecondaryAction, ListItemText } from \"@material-ui/core\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport AlertTitle from \"@material-ui/lab/AlertTitle\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\nimport DeleteForeverIcon from \"@material-ui/icons/DeleteForever\";\r\nimport styled from \"styled-components\";\r\nimport docIcon from \"./FiletypeIcons/doc.svg\";\r\nimport jpgIcon from \"./FiletypeIcons/jpg.svg\";\r\nimport mpIcon from \"./FiletypeIcons/mp.svg\";\r\nimport pngIcon from \"./FiletypeIcons/png.svg\";\r\nimport svgIcon from \"./FiletypeIcons/svg.svg\";\r\nimport txtIcon from \"./FiletypeIcons/txt.svg\";\r\nimport xlsIcon from \"./FiletypeIcons/xls.svg\";\r\nimport pdfIcon from \"./FiletypeIcons/pdf.svg\";\r\nimport pptIcon from \"./FiletypeIcons/ppt.svg\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { usePrevious } from \"../../helpers/usePrevious\";\r\nimport { deepClone, toCamelCase } from \"../../helpers/objectHelper\";\r\nimport Axios from \"axios\";\r\nimport FolderIcon from \"@material-ui/icons/Folder\";\r\nimport EventLabel from \"../../components/EventLabel\";\r\nconst FileIcon = styled.img`\r\n width: 50px;\r\n maxwidth: 50px;\r\n max-height: 50px;\r\n height: auto;\r\n`;\r\n\r\nexport const FileUploader = observer((props) => {\r\n const [source, setSource] = useState(\"\");\r\n const [sourceFilename, setSourceFilename] = useState(\"\");\r\n const [sourceType, setSourceType] = useState(\"\");\r\n const [showConflictPopper, setShowConflictPopper] = useState(false);\r\n const [uploading, setUploading] = useState(false);\r\n const [showDeleteDialog, setShowDeleteDialog] = useState(false);\r\n const [deleteTarget, setDeleteTarget] = useState(null);\r\n const [fileUploadTriggered, setFileUploadTriggered] = useState(false);\r\n const fileInputRef = useRef(null);\r\n const prevProps = usePrevious(props);\r\n\r\n const { activePersonNo, orders, contentLayout, updateOrder, allowedFiletypes, environment } = props;\r\n\r\n const toBase64 = (file) =>\r\n new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = (error) => reject(error);\r\n });\r\n\r\n useEffect(() => {\r\n if (orders && prevProps && orders[activePersonNo]?.uploadedFiles?.length != prevProps.orders[prevProps.activePersonNo]?.uploadedFiles?.length) {\r\n setUploading(false);\r\n }\r\n });\r\n useEffect(() => {\r\n if (fileUploadTriggered) {\r\n setFileOnOrder();\r\n setFileUploadTriggered(false);\r\n }\r\n }, [fileUploadTriggered]);\r\n\r\n const onFileSelected = async (e) => {\r\n const file = e.target.files[0];\r\n if(!orders[activePersonNo]){\r\n updateOrder({});\r\n }\r\n const order = orders[activePersonNo];\r\n const key = order.sqlStateNo;\r\n\r\n const hasNameConflict = order[toCamelCase(\"UploadedFiles\")]?.find((u) => u.name?.replace(`${key}_`, \"\") == file?.name);\r\n\r\n if (hasNameConflict) return setShowConflictPopper(true);\r\n\r\n const result = await toBase64(file).catch((e) => Error(e));\r\n\r\n if (result instanceof Error) {\r\n /* this.setState({ errorMessage: result.message }); */\r\n return;\r\n }\r\n if (orders) {\r\n let order = orders[activePersonNo];\r\n if (!order.sqlStateNo || order.sqlStateNo != contentLayout.sqlStateNo) updateOrder(order);\r\n }\r\n setSource(result);\r\n setSourceType(file.type);\r\n setSourceFilename(file.name);\r\n setShowConflictPopper(false);\r\n\r\n setFileUploadTriggered(true);\r\n /* setTimeout(() => setFileOnOrder(), 1000); */\r\n };\r\n\r\n const setFileOnOrder = () => {\r\n if (orders) {\r\n let order = orders[activePersonNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"UploadedFiles\")];\r\n let newType = undefined;\r\n if (!type) {\r\n newType = [];\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n setUploading(true);\r\n\r\n Axios.post(`./api/files/fileUploadTemp/${environment.eventId}`, {\r\n file: source,\r\n name: `${order.sqlStateNo + \"_\" + activePersonNo}_${sourceFilename}`,\r\n type: sourceType,\r\n }).then(({ data }) => {\r\n newType.unshift(data);\r\n newOrder[toCamelCase(\"UploadedFiles\")] = newType;\r\n\r\n updateOrder(newOrder);\r\n\r\n setSource(\"\");\r\n setSourceType(\"\");\r\n setSourceFilename(\"\");\r\n\r\n setUploading(false);\r\n\r\n if (fileInputRef) fileInputRef.current.value = \"\";\r\n });\r\n }\r\n };\r\n\r\n const removeUploadedFile = (file) => {\r\n if (orders) {\r\n let order = orders[activePersonNo];\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"UploadedFiles\")];\r\n let newType = type.filter((f) => f.url !== file.url);\r\n newOrder[toCamelCase(\"UploadedFiles\")] = newType;\r\n\r\n updateOrder(newOrder);\r\n\r\n Axios.post(`./api/files/removeUploadedFile/${order.eventId}`, file);\r\n }\r\n setDeleteTarget(null);\r\n };\r\n\r\n const confirmDelete = (confirmed) => {\r\n if (confirmed == true && deleteTarget) {\r\n removeUploadedFile(deleteTarget);\r\n setShowDeleteDialog(false);\r\n } else {\r\n setShowDeleteDialog(false);\r\n setDeleteTarget(null);\r\n }\r\n };\r\n\r\n let order = null;\r\n if (orders) {\r\n order = orders[activePersonNo];\r\n }\r\n\r\n const key = order ? order.badgeNo || order.sqlStateNo : \"\";\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n {source ? sourceFilename.replace(`${key}_`, \"\") : }\r\n
    \r\n onFileSelected(e)} />\r\n {/* \r\n \r\n */}\r\n
    \r\n {showConflictPopper ? (\r\n <>\r\n
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n ) : null}\r\n\r\n {uploading ? :
    }\r\n {showDeleteDialog && deleteTarget ? : null}\r\n \r\n {order && order[toCamelCase(\"UploadedFiles\")]\r\n ? order[toCamelCase(\"UploadedFiles\")].map((f, i) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {f.name.includes(`${order.sqlStateNo}_${activePersonNo}_`) ? f.name.replace(`${order.sqlStateNo}_${activePersonNo}_`, \"\") : f.name.replace(`${key}_`, \"\")}\r\n

    \r\n }\r\n />\r\n \r\n {\r\n setShowDeleteDialog(true);\r\n setDeleteTarget(f);\r\n }}\r\n >\r\n \r\n \r\n \r\n
    \r\n );\r\n })\r\n : null}\r\n
    \r\n
    \r\n );\r\n});\r\n\r\nconst FileType = ({ type, source }) => {\r\n switch (type) {\r\n case \"pdf\":\r\n return ;\r\n case \"doc\":\r\n case \"docx\":\r\n return ;\r\n case \"jpg\":\r\n return ;\r\n case \"gif\":\r\n case \"jif\":\r\n return ;\r\n case \"mp4\":\r\n return ;\r\n case \"png\":\r\n return ;\r\n case \"svg\":\r\n return ;\r\n case \"txt\":\r\n return ;\r\n case \"xls\":\r\n case \"xlsx\":\r\n return ;\r\n case \"ppt\":\r\n case \"pptx\":\r\n return ;\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport function ConfirmDialog({ action }) {\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n","import React, { useEffect, useMemo, useRef, useState } from \"react\";\r\nimport 'cropperjs/dist/cropper.css'\r\nimport { CircularProgress, Grid, IconButton, Popper, Slider } from \"@material-ui/core\";\r\nimport RotateLeftIcon from '@material-ui/icons/RotateLeft';\r\nimport RotateRightIcon from '@material-ui/icons/RotateRight';\r\nimport CircleIcon from \"@material-ui/icons/RadioButtonUnchecked\";\r\nimport CropLandscapeIcon from \"@material-ui/icons/CropLandscape\";\r\nimport CheckIcon from \"@material-ui/icons/Check\";\r\nimport ClearIcon from \"@material-ui/icons/Clear\";\r\nimport ZoomOutIcon from \"@material-ui/icons/ZoomOut\";\r\nimport ZoomInIcon from \"@material-ui/icons/ZoomIn\";\r\nimport Cropper from \"cropperjs\";\r\n\r\nexport const ProfileUploadCrop = ({ src, aspectRatio, shape, eventId, onCropped, onCancel }) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [cropperInstance, setCropperInstance] = useState(null);\r\n const [zoomLevel, setZoomLevel] = useState(0);\r\n const [minZoomLevel, setMinZoomLevel] = useState(0);\r\n const imageRef = useRef();\r\n const wrapperRef = useRef();\r\n const convertedAspectRatio = useMemo(() => {\r\n var aspectRatioRegex = /(\\d+) ?\\/ ?(\\d+)/i;\r\n if (aspectRatioRegex.test(aspectRatio)) {\r\n let matches = aspectRatioRegex.exec(aspectRatio);\r\n return matches[1] / matches[2];\r\n }\r\n else {\r\n return undefined;\r\n }\r\n }, [aspectRatio]);\r\n useEffect(() => {\r\n if (imageRef?.current) {\r\n imageRef.current.addEventListener(\"zoom\", onZoomChanged)\r\n }\r\n return () => {\r\n if (imageRef?.current) {\r\n imageRef.current.removeEventListener(\"zoom\", onZoomChanged)\r\n }\r\n }\r\n })\r\n useEffect(() => {\r\n initCropper();\r\n }, [])\r\n const onZoomChanged = ({ detail }) => {\r\n setZoomLevel(detail.ratio);\r\n }\r\n const initCropper = (movable, canvasData, rotation) => {\r\n setIsLoading(true);\r\n if (cropperInstance) cropperInstance.destroy();\r\n const cropInst = new Cropper(imageRef?.current, {\r\n viewMode: 0,\r\n dragMode: 'move',\r\n guides: true,\r\n autoCrop: true,\r\n autoCropArea: 1,\r\n cropBoxMovable: shape === \"circle\" ? true : false,\r\n initialAspectRatio: shape === \"circle\" ? 1 : (convertedAspectRatio ?? NaN),\r\n cropBoxResizable: false,\r\n toggleDragModeOnDblclick: false,\r\n minContainerHeight:10,\r\n minContainerWidth:10,\r\n responsive: false,\r\n ready: () => {\r\n if (canvasData) {\r\n cropInst.setCanvasData(canvasData);\r\n }\r\n if (rotation) {\r\n cropInst.rotateTo(rotation)\r\n }\r\n setMinZoomLevel(cropInst.getContainerData().height / cropInst.getCanvasData().naturalHeight)\r\n setIsLoading(false);\r\n }\r\n });\r\n setCropperInstance(cropInst);\r\n }\r\n \r\n const getCroppedImage = () => {\r\n if (shape === \"circle\") {\r\n const sourceCanvas = cropperInstance.getCroppedCanvas();\r\n var canvas = document.createElement('canvas');\r\n var context = canvas.getContext('2d');\r\n var width = sourceCanvas.width;\r\n var height = sourceCanvas.height;\r\n\r\n canvas.width = width;\r\n canvas.height = height;\r\n context.imageSmoothingEnabled = true;\r\n context.drawImage(sourceCanvas, 0, 0, width, height);\r\n context.globalCompositeOperation = 'destination-in';\r\n context.beginPath();\r\n context.arc(width / 2, height / 2, Math.min(width, height) / 2, 0, 2 * Math.PI, true);\r\n context.fill();\r\n return canvas.toDataURL();\r\n }\r\n else {\r\n return cropperInstance.getCroppedCanvas().toDataURL();\r\n }\r\n }\r\n \r\n const handleZoomSlider = (event, newValue) => {\r\n if (newValue - zoomLevel != 0) {\r\n cropperInstance.zoom(newValue - zoomLevel);\r\n }\r\n }\r\n const zoomIn = () => {\r\n cropperInstance.zoom(0.1);\r\n }\r\n const zoomOut = () => {\r\n cropperInstance.zoom(-0.1);\r\n }\r\n const handleSave = () => {\r\n setIsLoading(true);\r\n const imageData = getCroppedImage();\r\n onCropped(imageData);\r\n }\r\n return <>\r\n
    \r\n {isLoading ?
    : null}\r\n \r\n
    \r\n {wrapperRef?.current ?\r\n \r\n
    \r\n \r\n \r\n cropperInstance.rotate(-45)}>\r\n \r\n \r\n cropperInstance.rotate(45)}>\r\n \r\n \r\n {/* setShape(shape === \"circle\" ? \"normal\" : \"circle\")}>\r\n {shape != \"circle\" ? : }\r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n : null}\r\n \r\n}","import React, { useEffect, useRef, useState } from \"react\";\r\n// import \"croppie/croppie.css\";\r\nimport { deepClone, toCamelCase } from \"../../../helpers/objectHelper\";\r\nimport SystemLabel from \"../../../system/SystemLabel/SystemLabel\";\r\nimport CropTwoToneIcon from \"@material-ui/icons/CropTwoTone\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { usePrevious } from \"../../helpers/usePrevious\";\r\nimport Axios from \"axios\";\r\n// import { ImageCropper } from \"../../components/ImageCropper\";\r\nimport FolderIcon from \"@material-ui/icons/Folder\";\r\nimport { ProfileUploadCrop } from \"./components/ProfileUploadCrop\";\r\nexport const ProfileImageUploader = observer((props) => {\r\n const [source, setSource] = useState(\"\");\r\n const [isCropping, setIsCropping] = useState(false);\r\n const [imageLoaded, setImageLoaded] = useState(false);\r\n\r\n const prevProps = usePrevious(props);\r\n const imgRef = useRef();\r\n\r\n const { activePersonNo, orders, settings, environment, updateOrder, contentLayoutModuleId } = props;\r\n const { size, shape, viewport, defaultImage, hidden } = settings;\r\n\r\n useEffect(() => {\r\n loadImage();\r\n }, []);\r\n useEffect(() => {\r\n if (defaultImage && prevProps && prevProps.settings.defaultImage != settings.defaultImage) {\r\n setSource(defaultImage);\r\n }\r\n if (prevProps && activePersonNo != prevProps.activePersonNo) {\r\n loadImage();\r\n }\r\n });\r\n const toBase64 = (file) =>\r\n new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = (error) => reject(error);\r\n });\r\n const loadImage = () => {\r\n const { defaultImage } = settings;\r\n if (orders) {\r\n let order = orders[activePersonNo];\r\n\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"ProfileImage\")];\r\n\r\n let newType = undefined;\r\n if (!type) {\r\n newType = { source: \"\" };\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n if (newType.file) {\r\n return setSource(newType.file);\r\n }\r\n\r\n if (newType[toCamelCase(\"Source\")]) {\r\n setSource(newType[toCamelCase(\"Source\")]);\r\n } else {\r\n newType[toCamelCase(\"File\")] = defaultImage || null;\r\n setSource(defaultImage || \"https://www.xovi.com/wp-content/plugins/all-in-one-seo-pack/images/default-user-image.png\");\r\n }\r\n newOrder[toCamelCase(\"ProfileImage\")] = newType;\r\n updateOrder(newOrder);\r\n } else {\r\n setSource(defaultImage || \"https://www.xovi.com/wp-content/plugins/all-in-one-seo-pack/images/default-user-image.png\");\r\n }\r\n };\r\n const onImageUpload = async (e) => {\r\n const file = e.target.files[0];\r\n\r\n const result = await toBase64(file).catch((e) => Error(e));\r\n if (result instanceof Error) {\r\n console.error(\"Error: \", result.message);\r\n return;\r\n }\r\n \r\n setSource(result);\r\n setIsCropping(true);\r\n\r\n //You can not post when prop\r\n };\r\n const setImageOnOrder = (source) => {\r\n if (orders) {\r\n let order = orders[activePersonNo];\r\n\r\n let newOrder = deepClone(order);\r\n let type = newOrder[toCamelCase(\"ProfileImage\")];\r\n let newType = undefined;\r\n\r\n if (!type) {\r\n newType = { source: \"\" };\r\n } else {\r\n newType = deepClone(type);\r\n }\r\n\r\n Axios.post(`./api/files/profileimagetemp/${environment.eventId}`, {\r\n file: source,\r\n name: `${order.sqlStateNo + \"_\" + activePersonNo}_ProfileImage.png`,\r\n type: \"image/png\",\r\n }).then(({ data }) => {\r\n newType.file = data;\r\n newOrder[toCamelCase(\"ProfileImage\")] = newType;\r\n updateOrder(newOrder);\r\n });\r\n }\r\n };\r\n const onCropped = (source) => {\r\n setImageOnOrder(source);\r\n setSource(source);\r\n setIsCropping(false);\r\n };\r\n const setImageClassName = (type) => {\r\n switch (type) {\r\n case \"SQUARE\":\r\n return \"square--landscape\";\r\n case \"CIRCULAR\":\r\n return \"circular--landscape\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n const fuRef = useRef();\r\n const handleImageLoaded = () => setImageLoaded(true);\r\n if (hidden) return null;\r\n return (\r\n
    \r\n
    \r\n \r\n {isCropping ? (\r\n setIsCropping(false)} aspectRatio={`${viewport.width}/${viewport.height}`} />\r\n ) : (\r\n \r\n )}\r\n
    \r\n
    \r\n \r\n {/* {isCropping ? : null} */}\r\n\r\n {!isCropping ? (\r\n \r\n ) : null}\r\n {!isCropping ? (\r\n \r\n ) : null}\r\n \r\n onImageUpload(e)} />\r\n \r\n );\r\n});\r\n","import React from \"react\";\r\n\r\nconst PictureDisplay = ({ src, srcset, viewWidth, id, style, className, alt, link = \"\", target = \"\" }, ref) => {\r\n if (link && link !== \"https://\" && link !== \"123\") {\r\n return \r\n \r\n \r\n {alt}\r\n \r\n \r\n }\r\n return (\r\n \r\n \r\n {alt}\r\n \r\n );\r\n}\r\nexport default React.forwardRef(PictureDisplay) ","import { observer } from \"mobx-react-lite\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport PictureDisplay from \"../../../global/PictureDisplay\";\r\nimport { convertUrl } from \"../../helpers/url.helper\";\r\n\r\nexport const Image = observer((props) => {\r\n const imgRef = useRef();\r\n const { settings, width, setAspectRatio, orders } = props;\r\n\r\n const { shape, source, alt, link = \"\", target = \"\", rotation, filled, autoHeight = false, hidden, srcset } = settings;\r\n\r\n const [ignoreHeight, setIgnoreHeight] = useState(false);\r\n\r\n useEffect(() => {\r\n if (imgRef.current) {\r\n imgRef.current.addEventListener(\"load\", imgOnLoad);\r\n }\r\n return () => {\r\n if (imgRef.current) {\r\n imgRef.current.removeEventListener(\"load\", imgOnLoad);\r\n }\r\n };\r\n });\r\n\r\n function imgOnLoad() {\r\n const ratio = this.naturalWidth / this.naturalHeight;\r\n\r\n if (ratio < 1) {\r\n setAspectRatio(this.naturalWidth / this.naturalHeight);\r\n setIgnoreHeight(true);\r\n }\r\n setTimeout(() => props.checkHeights(), 100);\r\n }\r\n\r\n if (hidden) return null;\r\n\r\n return (\r\n
    \r\n 0 ? orders[0] : null)} target={target} style={{ width: \"100%\", height: \"auto\" }} />\r\n
    \r\n );\r\n});\r\n","import React from \"react\";\r\n\r\nexport function LoadSpinner({isModule}) {\r\n const domain = window.location.host.includes(\"localhost\") ? \"localhost:44331\" : window.location.host;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport { LoadSpinner } from \"../../components/LoadSpinner\";\r\n\r\nexport const TextContent = observer((props) => {\r\n const [text, setText] = useState(\"\");\r\n const [contentLoaded, setContentLoaded] = useState(false);\r\n const { settings, environment, replaceTags, checkHeights, orders } = props;\r\n const { content, hidden } = settings;\r\n const checkHeightsRef = useRef(null);\r\n const checkHeightsIntervalRef = useRef(null);\r\n const intervalCountRef = useRef(0);\r\n useEffect(() => {\r\n // setText(content[environment.lang]);\r\n // replaceTags(content[environment.lang]).then((replacedText) => setText(replacedText));\r\n if (checkHeightsIntervalRef.current == null) {\r\n checkHeightsIntervalRef.current = setInterval(() => {\r\n if (checkHeightsRef.current) {\r\n checkHeightsRef.current();\r\n intervalCountRef.current += 1;\r\n }\r\n if (intervalCountRef.current > 20) {\r\n if (checkHeightsIntervalRef.current) {\r\n clearInterval(checkHeightsIntervalRef.current);\r\n checkHeightsIntervalRef.current = null;\r\n }\r\n }\r\n }, 1000);\r\n }\r\n return () => {\r\n if (checkHeightsIntervalRef.current) {\r\n clearInterval(checkHeightsIntervalRef.current);\r\n checkHeightsIntervalRef.current = null;\r\n }\r\n }\r\n }, []);\r\n useEffect(() => {\r\n checkHeightsRef.current = checkHeights;\r\n })\r\n useEffect(() => {\r\n replaceTags(content[environment.lang]).then((replacedText) => {\r\n setText(replacedText)\r\n setContentLoaded(true);\r\n setTimeout(checkHeights, 50);\r\n });\r\n }, [content, environment.lang, orders]);\r\n\r\n if (hidden) return
    ;\r\n if (contentLoaded) {\r\n return
    ;\r\n }\r\n else {\r\n return \r\n }\r\n});\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\n\r\nexport const IframeModule = ( props ) => {\r\n const settings = { props };\r\n const frameRef = useRef(null);\r\n const [framedHeight,setFramedHeight] = useState(\"100%\")\r\n const [parsedSource,setParsedSource] = useState(null);\r\n\r\n const cb = () => {\r\n props.checkHeights();\r\n if(!frameRef || !frameRef.current)return;\r\n let l = frameRef.current.contentWindow;\r\n l.postMessage({\r\n embedHost:window.location.origin,\r\n embedPath:window.location.pathname,\r\n embedSearch:window.location.search,\r\n },\"*\");\r\n };\r\n\r\n useEffect(() => {\r\n cb();\r\n },[frameRef.current]);\r\n\r\n useEffect(() => {\r\n\r\n var query = window.location.search;\r\n if (query && query.length > 8 && query.substring(0, 8).toLowerCase() == \"?append=\") {\r\n setParsedSource(\"https://venue4you.net/\"+query.substring(8));\r\n }\r\n else{\r\n setParsedSource(props.settings.source);\r\n }\r\n\r\n var eventMethod = window.addEventListener ? \"addEventListener\" : \"attachEvent\";\r\n var reciever = window[eventMethod];\r\n var messageEvent = eventMethod === \"attachEvent\" ? \"onmessage\" : \"message\";\r\n reciever(messageEvent, (e) => {\r\n if(e.data){\r\n if(e.data.height){\r\n setFramedHeight(e.data.height+\"px\");\r\n let l = document.getElementById(props.cssId);\r\n if(l){\r\n l.style.display=\"block\";\r\n l.style.minHeight=e.data.height+\"px\";\r\n };\r\n setTimeout(() => {\r\n //let the frame adjust first\r\n props.checkHeights();\r\n },500);\r\n };\r\n if (e.data.revertUrl) {\r\n var url = window.location.origin + window.location.pathname;\r\n window.history.pushState({ 'page_id': 1, 'user_id': 5 }, \"\",url);\r\n }\r\n if(e.data.reqOverviewScroll) {\r\n let l = frameRef.current.contentWindow;\r\n let topOffset = document.querySelector(\"#body\")?.scrollTop ?? 0;\r\n\r\n let searchOffset = document.querySelector(\"#\"+settings.props.cssId)?.getBoundingClientRect()?.top ?? 0;\r\n l.postMessage({\r\n overviewScroll:topOffset,\r\n detailScroll:searchOffset,\r\n },\"*\");\r\n }\r\n if(e.data.setScroll) {\r\n document.querySelector(\"#body\").scrollTop=e.data.setScroll;\r\n }\r\n if(e.data.setScrollSmooth) {\r\n var offset = e.data.setScrollSmooth;\r\n var target = document.querySelector(\"#\"+settings.props.cssId);\r\n //target.scrollIntoView({behavior: \"smooth\", block: \"end\", inline: \"nearest\"});\r\n document.querySelector(\"#body\").scrollTo({\r\n top: offset,\r\n behavior: 'smooth'\r\n });\r\n }\r\n\r\n };\r\n });\r\n\r\n //should be waiting for an onload event or something. But since testing is today...\r\n setTimeout(() => {\r\n cb();\r\n },1500);\r\n setTimeout(() => {\r\n cb();\r\n },3500);\r\n setTimeout(() => {\r\n cb();\r\n },5500);\r\n\r\n \r\n\r\n\r\n\r\n const target = document.querySelector('.cms-iframe');\r\n function handleIntersection(entries) {\r\n entries.map((entry) => {\r\n if (entry.isIntersecting) {\r\n cb();\r\n entry.target.classList.add('visible')\r\n } else {\r\n entry.target.classList.remove('visible')\r\n }\r\n });\r\n }\r\n const observer = new IntersectionObserver(handleIntersection);\r\n observer.observe(target);\r\n\r\n\r\n },[]);\r\n\r\n\r\n\r\n\r\n\r\n if (settings.hidden || !parsedSource ) return null\r\n\r\n\r\n\r\n return (\r\n
    \r\n\r\n \r\n \r\n
    \r\n )\r\n};\r\n","import { observer } from \"mobx-react-lite\";\r\nimport React, { useEffect } from \"react\";\r\nimport Layout from '../../Layout'\r\n\r\nexport const ContentView = observer((props) => {\r\n \r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n});\r\n","import { observer } from \"mobx-react-lite\";\r\nimport React, { useMemo } from \"react\";\r\nimport { ForwardPage } from \"../ForwardPage/ForwardPage\";\r\nimport { PreviousPage } from \"../PreviousPage/PreviousPage\";\r\nimport { SubmitButton } from \"../SubmitButton/SubmitButton\";\r\nimport ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\n\r\nexport const Paginator = observer((props) => {\r\n const { current, contentLayout, settings, environment, orders, setActivePage } = props;\r\n const { next, back, showIcons } = settings;\r\n \r\n const checkMinGroupReg = () => {\r\n const grpModule = contentLayout?.contentLayoutModules?.filter(clm => clm.pages == current.activePage).find(clm => clm.contentModule.type === \"GROUP_REGISTRATION\");\r\n const minCount = grpModule?.contentModule?.settings?.minCount;\r\n return minCount && minCount > 0 && minCount > orders.length\r\n }\r\n\r\n const grpRegDisabled = useMemo(() => {\r\n let disabled = false;\r\n if (checkMinGroupReg()) disabled = true;\r\n return disabled;\r\n }, [orders, current?.activePage])\r\n\r\n if (contentLayout.pages == 1) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n return (\r\n
    1 ? \"space-between\" : \"flex-end\", width: \"100%\" }}>\r\n {current.activePage > 1 ? : back[environment.lang]} /> : null}\r\n {current.activePage == contentLayout.pages ? : : next[environment.lang]} />}\r\n
    \r\n );\r\n});\r\n","import React, { useRef, useState, useEffect, useMemo } from \"react\";\r\nimport { observer } from \"mobx-react-lite\";\r\nimport Vimeo from \"@vimeo/player\";\r\nimport YouTube from \"react-youtube\";\r\nimport Dailymotion from \"react-dailymotion\";\r\nimport \"video.js\";\r\nimport VideoThumbnail from \"react-video-thumbnail\";\r\n\r\nexport const VideoModule = observer(({settings, setAspectRatio}) => {\r\n useEffect(()=> {\r\n setAspectRatio(\"16 / 9\")\r\n },[])\r\n const [forceThumbnail,setForceThumbnail] = useState()\r\n const { style = {}, hidden} = settings;\r\n if(hidden) return null;\r\n return
    \r\n \r\n {(!settings.thumbnail && settings.source) && {\r\n if (forceThumbnail !== thumbnail)\r\n setForceThumbnail(thumbnail)\r\n }}\r\n width={0}\r\n height={0}\r\n style={{ display: \"none\" }}\r\n />}\r\n
    \r\n});\r\n\r\n\r\n\r\nexport const GenericPlayer = observer((settings) => {\r\n const url = settings.source;\r\n const thumbnail = settings.thumbnail;\r\n\r\n if (!url) return ;\r\n else if (url.includes(\"vimeo\")) return ;\r\n else if (url.includes(\"youtube\") || url.includes('youtu.be'))\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n else if (url.includes(\"dailymotion\") || url.includes(\"https://dai.ly/\"))\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n else if (url.includes(\"jirango\")) {\r\n return (\r\n \r\n );\r\n } \r\n else{\r\n if(thumbnail.includes('http')){\r\n return \r\n }\r\n return (\r\n \r\n \r\n );}\r\n});\r\nconst VimeoPlayer = ({ url,thumbnail }) => {\r\n const [played, setPlayed] = useState(false);\r\n const [videoId, setVideoId] = useState(null);\r\n const iframeRef = useRef(null);\r\n const playedRef = useRef();\r\n const playerUrl = `https://player.vimeo.com/video/${videoId}`\r\n const extractIdFromUrl = () => {\r\n if (/vimeo.com\\/(\\d+)/i.test(url)) {\r\n setVideoId(/vimeo.com\\/(\\d+)/i.exec(url)[1]);\r\n } else if (/player.vimeo.com\\/video\\/(\\d+)/i.test(url)) {\r\n setVideoId(/player.vimeo.com\\/video\\/(\\d+)/i.exec(url)[1]);\r\n }\r\n };\r\n useEffect(() => {\r\n extractIdFromUrl();\r\n }, [url]);\r\n useEffect(()=> {\r\n playedRef.current = played;\r\n },[played])\r\n useEffect(() => {\r\n const player = new Vimeo(iframeRef.current);\r\n player.on(\"play\", function () {\r\n if (playedRef.current) return;\r\n setPlayed(true);\r\n });\r\n return () => {\r\n iframeRef.current = null;\r\n };\r\n }, []);\r\n return